| Speaker |
Transcript |
| |
Hello, I'm Chris Gotwalt and |
| |
today I'm going to be |
| |
presenting with Markus Schafheutle |
| |
and Laura Castro-Schilo |
| |
on an industrial application of |
| |
structural equations models, or |
| |
SEM. This talk showcases one of |
| |
the things I enjoy most about |
| |
my work with JMP. In JMP |
| |
statistical development, we have a |
| |
bird's eye view of what is |
| |
happening in data analysis |
| |
across many fields, which gives |
| |
us the opportunity to cross |
| |
fertilize best practices across |
| |
disciplines. |
| |
In JMP Pro 15, we added a new |
| |
structural equations modeling |
| |
platform. This is the dominant |
| |
data analytic framework in a |
| |
lot of social sciences because |
| |
it flexibly models complex |
| |
relationships in multivariant |
| |
settings. One of the key |
| |
features is that variables may |
| |
be used as both regressors and |
| |
responses at the same time as a |
| |
part of the same model. |
| |
Furthermore, it occurred to me |
| |
that with these complicated |
| |
models they are represented with |
| |
diagrams that, at least on the |
| |
surface, look like diagrams |
| |
representing manufacturing |
| |
processes. I wasn't the only one |
| |
to make this connection. Markus, |
| |
who was working with a |
| |
chemical company, thought the |
| |
same thing. He was working on a |
| |
problem with a chemical company |
| |
with a two column twin |
| |
distillation manufacturing |
| |
process where they wanted to |
| |
minimize energy costs which were |
| |
largely going to steam |
| |
production, while still making |
| |
product that stayed within |
| |
specification. He reached out to |
| |
his JMP sales engineer, |
| |
Martin Demel, who then connected |
| |
Markus to Laura and I. |
| |
We had a series of meetings |
| |
where he showed and described |
| |
the data, the problem and the |
| |
goals of the company. We were |
| |
able to model the data |
| |
remarkably well. Our model was |
| |
validated by sharing the results |
| |
as communicated with the JMP |
| |
profiler to the company's |
| |
internal experts and then with |
| |
the first principle simulator |
| |
and then with new physical data |
| |
from the plant. This was a clear |
| |
success as a data science |
| |
project. However, I would like |
| |
to add a caveat. The success |
| |
required the joint effort of |
| |
Laura, who is a top tier expert |
| |
in structural equations |
| |
modeling. Prior to joining JMP, |
| |
she was faculty in quantitative |
| |
psychology at the University of |
| |
North Carolina, Chapel Hill, one |
| |
of the top departments in the |
| |
US. She is also the inventor of |
| |
the SEM platform in JMP Pro. |
| |
This exercise was challenging |
| |
even for her. She had to write a |
| |
JSL program that itself wrote |
| |
a JSL program that specified |
| |
this model, for example. |
| |
The model we fit was perhaps |
| |
the largest and most |
| |
sophisticated SEM model of all |
| |
time. I want to call out the |
| |
truly outstanding and |
| |
groundbreaking work that |
| |
Laura's done both with the SEM |
| |
platform generally and in this |
| |
case study in particular. Now |
| |
I'm going to hand it over to |
| |
Markus, who is going to give |
| |
background to the problem the |
| |
customer wanted to solve, then |
| |
Laura is going to talk about |
| |
SEM and her model for this |
| |
problem. I'll do a brief |
| |
discussion of how we set up the |
| |
profiler and then Markus will |
| |
wrap up and talk about the |
| |
takeaways from the project and |
| |
the actions that the customer |
| |
took based on our results. |
| |
Thank you, Chris, for the |
| |
introduction. |
| |
Before I start with the problem, |
| |
I want to make you familiar with |
| |
the principles of distillation. |
| |
Distillation is a process which |
| |
separates a mixture of liquids |
| |
most of the time and separates |
| |
them into their individual |
| |
components. So how does this |
| |
work? Here, you see a schematic |
| |
view of a lab distillation |
| |
equipment. You see here is a |
| |
flask where the crude mixture, |
| |
which has to be separated, is |
| |
inside. You heat this up, here |
| |
in this case, with an oil bath |
| |
and stir it and then it starts |
| |
boiling. So the lowest boiling |
| |
material starts first and then the |
| |
vapor goes up here and pauses |
| |
here the thermometer to reach |
| |
the boiling temperature and then |
| |
further goes into these cooler |
| |
here where it condensates and |
| |
then the condensates drop here |
| |
into the other little flask. |
| |
So as I said, it's built |
| |
from...for separating a mixture |
| |
of liquids with different |
| |
boiling points, and those are |
| |
separated by boiling point. |
| |
For example, everybody knows |
| |
that perhaps if you want to make |
| |
schnapps from a mash, you just |
| |
make the mash inside of this |
| |
flask, heat it up, and then you |
| |
distill the alcohol over here |
| |
and get the schnapps. |
| |
As it looks very simple |
| |
here in the lab, in the |
| |
industry it's a bit more |
| |
complicated. Because let's |
| |
say the equipment is not |
| |
only bigger but more |
| |
complex and mainly because |
| |
of of the engineering part |
| |
of of the story. |
| |
So in this study, the |
| |
distillation was not done |
| |
batchwise as you've seen before, |
| |
but in a continuous manner. This |
| |
means the crude mixture is |
| |
pumped somewhere in the middle of |
| |
the column and then the low |
| |
boiling material goes up as a |
| |
vapor to the top of the column |
| |
and there it leaves the column |
| |
and the other higher boiling |
| |
material flows downward and |
| |
leaves the column on the bottom. |
| |
And to make it a bit more |
| |
complicated, in our case the |
| |
bottom stream is then pumped |
| |
into a second column and |
| |
distilled again, so to |
| |
separate another material |
| |
from the main..from... |
| |
from the residual stuff. So |
| |
actually we separated the |
| |
original crude mixture into |
| three parts |
Distillate 1, |
| |
Distillate 2 and what's |
| |
left, then the bottom stream |
| |
of the second still. |
| |
And to make it even more |
| |
complex, we used the heat of the |
| |
distillate of this second column |
| |
to heat the first column in |
| |
order to save energy for this. |
| |
So in a schematic view, |
| |
this looks like this. |
| |
Here you have Still 1 and |
| |
there's Still 2. And here we |
| |
have the raw material mix which |
| |
is actually assembly of |
| |
distillates from the |
| |
manufacturing and what we want |
| |
to do is to separate the value |
| |
material from the rest. So we |
| |
pumped this crude mix into the |
| |
first stills. As I said somewhere |
| |
in the middle it separates in |
| |
the low boiling point, which is the |
| |
first value material we want to |
| |
have, and the rest leaves the |
| |
first still on the bottom. Then |
| |
it's stored immediately here in |
| |
a tank and then from here it's |
| |
pumped again into the second |
| |
still, again somewhere in the |
| |
middle, and it separates into |
| |
the second value material and |
| |
away stream, which was then |
| |
redeposited. To heat the stuff, |
| |
we start on this side because |
| |
this is the higher boiling |
| |
material, so we need higher |
| |
temperatures and this means also |
| |
more energy. So we pump in the |
| |
steam here, heat this still here, |
| |
and the material leaving here on |
| |
the top has the temperature of |
| |
the boiling of this material, so |
| |
we used the residual heat to |
| |
heat the first still. And if |
| |
there's a little gap between |
| |
what's coming up from here and |
| |
what we need for for |
| |
distillation here in the first |
| |
still, we can add a little |
| |
extra steam to keep |
| |
everything running. |
| |
So this is a very high level |
| |
view of the things, and if you |
| |
want to go a bit more into the |
| |
details, here it's kind of the |
| |
same picture. But here I show |
| |
you with all the different tags |
| |
which we have here for all the |
| |
readouts and quality control and |
| |
temperature control and so on |
| |
and so forth. So what you see |
| |
here? We start here, for feed one |
| |
into the first still. |
| |
And then we separate into the top |
| |
stream where we control the |
| |
density, which is a quality |
| |
characteristic. And in the |
| |
bottom stream, the bottom stream |
| |
goes in this intermediate tank. |
| |
And then from here it's fitted |
| |
again into the second still and |
| |
also and separated here in the |
| |
bottom stream for top stream. |
| |
And again we are testing here |
| |
density for quality control. |
| |
Here also we add the steam to |
| |
heat all these things up and |
| |
the top flow then goes via heat |
| |
exchanger into the first still |
| |
and heat that up again. And here |
| |
we have the possibility to add |
| |
some extra steam to have |
| |
everything in balance here. |
| |
So what we see is on a local |
| |
basis you have a lot of |
| |
correlation, so this is done |
| |
here with the color code of the |
| |
arrows. So for example, the feed |
| |
here together with the feed |
| |
density, which is a measure for |
| |
the composition here of this |
| |
feed. So together with these two |
| |
are defining the top stream and |
| |
quality here, and that |
| |
bottom stream more or less. So you |
| |
have some local predictions. Also |
| |
over here the material going in |
| |
here and here defines stuff over |
| |
here. But if you want to have a |
| |
total description of the entire |
| |
equipment, then it gets tricky |
| |
because you can do local least square |
| |
correlations here. You can do it |
| |
here. You can do it separately |
| |
for the steam or also here. But |
| |
as you see, we have a start of |
| |
the mass stream coming here, going |
| |
through first still, through the |
| |
second still, to here and we have |
| |
an energy stream which starts |
| |
more or less here, going through |
| |
here via the heat exchanger also |
| |
down here. So it's a kind of a |
| |
circuit, which we have here, and |
| |
all these things are correlating |
| |
more or less in a kind |
| |
of circuit and this gives gives |
| |
us the difficulty that we |
| |
actually didn't know what the Xs |
| |
and the Ys were. |
| |
And that was the reason where we |
| |
started to think about other |
| |
possibilities to model this. |
| |
So the target for this study was |
| |
to find the optimal flow and |
| |
steam settings for all these |
| |
varying incoming factors |
| |
here, and in a way that we |
| |
are able to stay everything |
| |
in spec. So the distillate |
| |
quality should stay in spec but |
| |
also internal operational |
| |
specs and also the spec for |
| |
the final waste stream. |
| |
And the most interesting part, |
| |
at least money |
| |
wise, we want to minimize |
| |
the consumption of the |
| |
speed...sorry, of the steam. |
| |
So what we actually needed |
| |
was first of all, a good model |
| |
which describes this and that |
| |
was the point where Laura came |
| |
into the game here and developed |
| |
this structural equation model. |
| |
And we also need the kind of |
| |
profiler which enables us to |
| |
figure out what are the best |
| |
settings, the optimal settings |
| |
for all these incoming |
| |
variations, which we may have |
| |
here in order to stay within all |
| |
these specs. And that was the |
| |
point where Chris came in, |
| |
building on the model from Laura, |
| |
a profiler, which we can use for |
| |
doing all the predictions we |
| |
need. So now I want to pass |
| |
over to Laura to describe the |
| |
model she built from this |
| |
data here. Laura, please. |
| |
Thank you, Markus. I'm Laura |
| |
Castro-Schilo and I'm going |
| |
to tell you about the steps |
| |
we followed to model the |
| |
distillation process using |
| |
the structural equation |
| |
models platform. |
| |
So when Markus first came and |
| |
talked to us about his project, |
| |
there were three specific |
| |
features that made me realize |
| |
that SEM would be a good tool |
| |
for him. The first is that |
| |
there was a very specific |
| |
theory of how the processes |
| |
affect each other, and we saw |
| |
that on the diagram that he |
| |
showed. |
| |
An important feature of that |
| |
diagram is that all variables |
| |
had dual roles. In other words, |
| |
you can see that arrows point at |
| |
the nodes of the diagram, but |
| |
those nodes also point at other |
| |
variables, so there wasn't a |
| |
clear distinction between what |
| |
was an input and what was an |
| |
output. Rather, variables had |
| |
both of those roles. |
| |
Lastly, it was important to |
| |
realize that we were dealing |
| |
with processes that were |
| |
measured repeatedly. In other |
| |
words, we had time series data |
| |
and so all of these features |
| |
made me realize that SEM would |
| |
be a good tool for Markus. Now, |
| |
if you're not familiar with SEM, |
| |
might wonder why. SEM is a very |
| |
general framework that affords |
| |
lots of flexibility for dealing |
| |
with these types of problems. |
| |
I've listed in this slide a |
| |
number of different features |
| |
that make SEM a good tool, but |
| |
since we're not going to be able |
| |
to go through all of these, I |
| |
also included a link where you |
| |
can go with learn more about SEM |
| |
if you're interested. Now I'm |
| |
going to focus on two of the |
| |
points I have here. The first |
| |
is that SEM allows us to test |
| |
theories of multivariate |
| |
relations among variables, |
| |
which was exactly what Markus |
| |
wanted to do. |
| |
Also, there are very useful |
| |
tools in SEM called path |
| |
diagrams. These diagrams are |
| |
very intuitive and they |
| |
represent the statistical models |
| |
that we're fitting. |
| |
So let's talk about that point a |
| |
little more. Here is an example |
| |
of a path diagram that we could |
| |
draw in the SEM platform to |
| |
represent a simple linear |
| |
regression, and the diagram is |
| |
drawn with very specific |
| |
features. For example, we're |
| |
using rectangles to represent |
| |
the variables that we have |
| |
measured. Here, it's X and Y. We |
| |
also have a one-headed arrow to |
| |
represent regression effects. And |
| |
notice the double-headed arrows |
| |
that start and end on the same |
| |
variables represent variances. |
| |
Now, if these were to start and |
| |
end on a different variable, |
| |
those double-headed arrows would |
| |
then represent a covariance. In |
| |
this case, we just have the |
| |
variance of X and the residual |
| |
variance of Y, which is the part |
| |
that's not explained by the |
| |
prediction of X. |
| |
So this is the path diagram |
| |
representation of a simple |
| |
linear regression. But of course |
| |
we could also look at the |
| |
equations that are represented |
| |
by that diagram. And notice that |
| |
for Y, this equation is that of |
| |
simply a linear regression. And |
| |
I've omitted here the means and |
| |
intercepts just for simplicity. |
| |
It's important to note that |
| |
all of the parameters in |
| |
the equations are |
| |
represented in the path |
| |
diagram, so these diagrams |
| |
really do convey the |
| |
precise statistical model |
| |
that we're fitting. |
| |
Now in SEM, the diagrams or |
| |
models that we specify imply a |
| |
very specific covariance |
| |
structure. This is the |
| |
covariance structure that we |
| |
would expect given the simple |
| |
linear regression model. So you |
| |
can see we have epsilon X as the |
| |
variance of X. We also have the |
| |
variance of Y, which is a |
| |
function of both the variance of |
| |
X and the residual variance of |
| |
Y, and we also have an |
| |
expression for the covariance of |
| |
X and Y. And generally speaking, the |
| |
way that model fit is assessed |
| |
in SEM is by comparing the model |
| |
implied covariance structure to |
| |
the actual observed sample |
| |
covariance of the data, and if |
| |
these two are fairly close to |
| |
each other, we would then say |
| |
that the model fits very well. |
| |
So a number of different models |
| |
can be fit in SEM. |
| |
And today our focus is |
| |
going to be specifically |
| |
on time series models. |
| |
When we talk about time series, |
| |
we're speaking specifically about |
| |
a collection of data where there |
| |
is dependence on previous data |
| |
points, and these data are |
| |
usually collected across equally |
| |
spaced time intervals. |
| |
And the way that time series |
| |
analysis deals with the |
| |
dependencies in the data is by |
| |
regressing on the past. So one |
| |
type of these models are called |
| |
autoregressive processes or |
| |
ARP. And you can see here, where |
| |
Y represents a process that is |
| |
measured at time T, the auto |
| |
regressive models consist on |
| |
regressing that process on |
| |
previous observations of that |
| |
process up to time T minus P. |
| |
So if we're talking |
| |
specifically about an |
| |
autoregressive one process, |
| |
then you can see we have the |
| |
process YT regressed on its |
| |
immediately adjacent past YT |
| |
minus one. |
| |
And the way that we would |
| |
implement this in SEM is simply |
| |
by specifying, as we saw before, |
| |
the regression of YT on YT minus |
| |
one. So notice that here the |
| |
regression equation is very |
| |
similar to what we saw in |
| |
the previous slide, and so |
| |
it's no surprise that the |
| |
path diagram looks the same. |
| |
And we can extend this AR(1) |
| |
model to one that includes two |
| |
lags, in other words, an |
| |
autoregressive of order two. And |
| |
here we see we have the process |
| |
YT that is being regressed on |
| |
both T minus 1 and T minus 2. |
| |
And if we look at the path |
| |
diagram that represents that |
| |
model, we see that we have an |
| |
explicit representation for the |
| |
process at the current time, but |
| |
also at the lag one and lag two. |
| |
A very specific aspect of this |
| |
diagram is that the paths for |
| |
adjacent time points are set to |
| |
be equal to each other, and this |
| |
is an important part of the |
| |
specification that allows us to |
| |
specify the model correctly. So |
| |
notice here we're using beta 1 |
| |
to represent this lag 1 |
| |
effects and we also have to |
| |
set equality constraints on |
| |
the residual variances. |
| |
Lastly, we also have the effect |
| |
of YT minus 2 as it's |
| |
predicting YT, and so here's the |
| |
lag 2 effects. |
| |
Now all of these models are |
| |
univariate time series models, |
| |
and you can fit them using the |
| |
structural equation modeling |
| |
platform in JMP or you could |
| |
also use the time series |
| |
platform that we have available. |
| |
However, the problem we were |
| |
dealing with with Markus' data |
| |
require more complexity. It |
| |
required us to look at |
| |
multivariate time series models |
| |
and a type of these models are |
| |
called vector autoregressive |
| |
models. And what I'd like to |
| |
show you is one of these models |
| |
of order two. |
| |
So we have a process for X and |
| |
another one for Y, and the same |
| |
autoregressive effects that we |
| |
saw before are included here. |
| |
Notice we have our equality |
| |
constraints which are really |
| |
important for proper |
| |
specification. But we also have |
| |
the cross lagged effects which |
| |
tell us how the processes |
| |
influence each other. And notice |
| |
here gamma 1 and gamma 1 and |
| |
also gamma 3, gamma 3, |
| |
suggesting here that we have to |
| |
put equality constraints on |
| |
those lag 1 effects across |
| |
processes. |
| |
We also have to incorporate the |
| |
covariances across the processes |
| |
so we have their covariance at |
| |
time T minus 2. But we also have |
| |
the residual covariances at time |
| |
T minus 1 and T and notice these |
| |
have to have equality |
| |
constraints again to have proper |
| |
specification. So I'm going |
| |
to show you in this video how |
| |
we would fit a bivariate time |
| |
series model just like the |
| |
one I showed you, using JMP |
| |
Pro. We're going to start by |
| |
manipulating our data so that |
| |
they're ready for SEM. First, |
| |
we standardize these two |
| |
processes because they are in |
| |
very different scales. |
| |
Then we create lagged variables |
| |
to represent explicitly the time |
| |
points prior to time T. So we're |
| |
going to have |
| |
T minus 1 and T minus 2. |
| |
We launched the SEM platform and |
| |
we're going to input the Xs |
| |
then the Ys so that it's |
| |
easier to specify our models. |
| |
And now I sped up the video |
| |
so that you can quickly see |
| |
how the model is specified. |
| |
Here we're adding the |
| |
cross lagged effects |
| |
for team 1. |
| |
And then directly using the |
| |
interactivity of the diagram, we |
| |
add the lag 2 effects. |
| |
And what remains is to |
| |
specify all the equality |
| |
constraints that are required |
| |
for these models within |
| |
process and across processes. |
| |
We name our model. |
| |
And lastly, we're |
| |
going to run it. |
| |
As you could see, even just a |
| |
bivariate time series model that |
| |
only incorporates two processes |
| |
requires a number of equality |
| |
constraints and nuances in the |
| |
specification that make it |
| |
relatively challenging. However, |
| |
in the case of the distillation |
| |
process data, we had a lot more |
| |
than two processes. We were |
| |
actually dealing with 26 of |
| |
these processes and in total we |
| |
had about 45,000 |
| |
measurements, which were taken |
| |
at 10 minute intervals. |
| |
And so our first approach was |
| |
to explore the univariate |
| |
time series models using the |
| |
time series platform in JMP. |
| |
And when we did this, we |
| |
realized that for most |
| |
processes an AR(1) or AR(2) |
| |
model fit best, and so this |
| |
made me realize that really |
| |
at the very least we needed |
| |
to fit multivariate models in |
| |
SEM that incorporated at |
| |
least two lags. |
| |
We also had to follow a number |
| |
of preprocessing steps for |
| |
getting the data ready into SEM. |
| |
On the one hand, we had a lot of |
| |
missing data, and even though |
| |
SEM can handle missing data just |
| |
fine, with models that are as |
| |
complex as these ones, it became |
| |
computationally very very |
| |
intensive. And so we decided to |
| |
select a subset of data where we |
| |
had complete data for all of the |
| |
processes and that left us with |
| |
about 13,000 observations. |
| |
Also, as we saw in the video, we |
| |
had large scale differences |
| |
across the processes, so we had |
| |
to standardize all of them. And |
| |
lastly we created lag variables |
| |
to make sure that we could |
| |
specify the models in SEM. |
| |
Now for model specification, |
| |
equality constraints in |
| |
particular are very very big |
| |
challenge because it would take |
| |
a lot of time to specify them |
| |
manually and it would be, of |
| |
course, tedious and error-prone. |
| |
So our approach for dealing with |
| |
this was to generate a JSL |
| |
script that would then generate |
| |
another JSL script for launching |
| |
the SEM platform. |
| |
And what you see here is the |
| |
final model that we fit in the |
| |
platform and thankfully, after |
| |
estimating this model, we are |
| |
able to obtain a covariance |
| |
structure that is implied by the |
| |
model and that was the piece of |
| |
information that I could pass |
| |
over to Chris Gotwalt, who |
| |
then used the information from |
| |
that matrix in order to create a |
| |
profiler that Markus could use |
| |
for his purposes. |
| |
So Chris, why don't you tell us |
| |
how you created that profiler? |
| |
Thank you, Laura. Now I'm going |
| |
to show the highlights of how |
| |
I was able to take the model |
| |
results and turn them into a |
| |
profiler that the company |
| |
could easily work with. |
| |
So Laura ran her model on the |
| |
standardized data and sent me a |
| |
table containing the same model |
| |
intercepts and she also included |
| |
the original means and standard |
| |
deviations that were used to |
| |
standardize the data. On the |
| |
right we have the sim model |
| |
implied covariance matrix, which |
| |
includes the covariances between |
| |
the present values and the |
| |
lagged values from the immediate |
| |
past. This information describes |
| |
how all the variables relate to |
| |
one another. In this form, |
| |
though the model is not ready to |
| |
be used for prediction. To see |
| |
how certain variables change |
| |
as a function of others, we have |
| |
to use this information to |
| |
derive the conditional |
| |
distribution of the response |
| |
variables, given the variables |
| |
that we want to use as inputs. |
| |
So essentially we need the |
| |
conditional mean of the |
| |
responses given the inputs. So |
| |
to do that, we need to implement |
| |
this formula right here. |
| |
And to do that, we use the SWEEP |
| |
Operator in JSL, the SWEEP |
| |
Operator is a mathematical tool |
| |
that was created by SAS CEO and |
| |
co-founder Jim Goodnight. It's |
| |
was published in the American |
| |
Statistician in 1979. The SWEEP |
| |
Operator is probably the single |
| |
most important contribution to |
| |
computational statistics in the |
| |
last 100 years. Most JMP users |
| |
don't know that the SWEEP |
| |
Operator is used by every single |
| |
JMP statistical platform in |
| |
many ways. We use it for matrix |
| |
inversion, the calculations that |
| |
sums of squares and also can be |
| |
exploited as simple and elegant |
| |
way to compute conditional |
| |
distributions if you know |
| |
how to use it properly. |
| |
I created a table with columns |
| |
for all the variables. The two |
| |
rows in the table are the |
| |
minimums and maximums of the |
| |
original data, which lets the |
| |
profiler know how to set up the |
| |
ranges. I added formula columns |
| |
for the response variables using |
| |
the swept version of the |
| |
variance matrix from Laura's |
| |
model and put those formulas |
| |
into the back here in the data |
| |
table or the far right. |
| |
Here's what one of the formulas |
| |
looked like. I pulled in the |
| |
results from the analysis as |
| |
matrices. Laura's model included |
| |
the estimated covariance between |
| |
the current Ys in the last two |
| |
preceding values because it was |
| |
a large multivariate |
| |
autoregressive model of order 2. |
| |
Predicting the present by |
| |
controlling the two previous |
| |
values of the input variables |
| |
was going to be very cumbersome |
| |
to operationalize. So I made |
| |
a simplifying assumption that |
| |
these two values were to be |
| |
the same, which collapsed the |
| |
model into a form that was |
| |
easier to use. To do this, I |
| |
simply use the same column |
| |
label when I was addressing |
| |
into the lag one, and |
| |
lag two entries for term. |
| |
Without machinery in place, |
| |
I created a profiler for the |
| |
response columns of |
| |
interest. I set up |
| |
desirability functions that |
| |
reflected the company's |
| |
goals. So they wanted to |
| |
match a target on on |
| |
A2TopTemp, maximize A2BotTemp, |
| |
and so on, ultimately |
| |
wanting to minimize the sum |
| |
of the steam that came out |
| |
of the two columns. |
| |
So you can lock certain |
| |
variables in the profiler by |
| |
control clicking on a pain. The |
| |
lock variables will have their |
| |
value drawn via a solid red |
| |
line, and then once we've done |
| |
that we can enter values for |
| |
them, and when we run the |
| |
optimizer or maximize |
| |
desirability, the locked |
| |
variables will be held fixed. |
| |
This way we find settings of the |
| |
variables that we can control |
| |
that keep the product being made |
| |
to specification while |
| |
minimizing energy costs. |
| |
It's fair to say that it would |
| |
be difficult for someone else to |
| |
repeat Laura's modeling approach |
| |
on a new problem, and it would |
| |
be difficult for another person |
| |
to set up a profiler like I did |
| |
here. If enough people see this |
| |
presentation and want us to add a |
| |
platform that makes this kind of |
| |
analysis easier in the future, |
| |
you should let us know by |
| |
reaching out to Technical |
| |
Support via support@JMP.com. |
| |
Now I'm going to hand it back |
| |
over to Markus who will talk |
| |
about what the customer did with |
| |
the model and our conclusions. |
| |
Thank you, Chris. |
| |
So with the prediction Profiler, |
| |
which Chris just presented, we |
| |
used that to, let's say, make a |
| |
predictive landscape, which |
| |
makes us understanding how |
| |
the best settings should be in |
| |
order to achieve all the |
| |
necessary quality specs. And so |
| |
what the three factors which |
| |
are, let's say, are varying with |
| |
limited extent to our influence, |
| |
and what's the |
| |
feed for the Still 1 and the |
| |
feed for the Still 2 and also |
| |
the quality or the composition |
| |
of the feed into one. |
| |
And what we've turned out as in |
| |
their model as well, is the |
| |
cooling water temperature was |
| |
also playing an important role |
| |
in this scenario. All the other |
| |
variables are of smaller importance |
| |
so that we neglected them in |
| |
this first approach. |
| |
Here you see the landscape. |
| |
It's kind of a variability |
| |
chart, so to say, so we have |
| |
here the feed density for the |
| |
Still 1, the feed into Still 1 |
| |
and the feed into Still 2 |
| |
and all possible combinations, |
| |
more or less. And here you see then |
| |
the settings which are predicted |
| |
to be best in order to stay |
| |
within the specifications. And |
| |
here are some of these I have |
| |
specifications as well, so we |
| |
have to stay inside them. |
| |
So it's, for example, it's the |
| |
steam flow for Still 2, the |
| |
reflux there, the boiler up and |
| |
the same things for the |
| |
Still 1. And here on the right |
| |
side, you see the |
| |
predicted outcomes, so the |
| |
quality specs, so to say. So the |
| |
temperature of the top flow in |
| |
Still 1 that the density |
| |
of the distillate, the density |
| |
of the distillate of Still 2, |
| |
and so on and so forth. So what |
| |
you see is here, if you have a |
| |
look here on the desirability, |
| |
which is the bottom row here, |
| |
there's big areas where |
| |
we cannot really achieve a good |
| |
performance of our system. And if |
| |
you have a look into the details |
| |
you see, OK, here we are off spec, |
| |
here we are off spec, here on |
| |
some points, we are off spec, and so on |
| |
and so forth. But what else it sees |
| |
is that this in spec/off spec thing |
| |
is also governed not only by |
| |
these three components down |
| |
here, but also by the river |
| |
temperature, and for the moment |
| |
it's highlighted the lowest |
| |
river temperature; it's 1 |
| |
degree. So this you see here |
| |
with it, we are staying most of |
| |
the time in specs, though there |
| |
only are rare |
| |
combinations of these three |
| |
factors where we aren't. But if |
| |
we are increasing the river |
| |
temperature, for example for 24 |
| |
degrees, then the areas where we |
| |
are off spec are...become much |
| |
more predominant. Also here it's |
| |
very hard to stay within this |
| |
specifications. So what we |
| |
learned from the model |
| |
is that we have problems to stay |
| |
in our specifications when the |
| |
river temperature is above 7 |
| |
degrees C. So then then the |
| |
the question was why is |
| |
that? And the engineers |
| |
often...suspected is that |
| |
this was because of the |
| |
cooling capacity of the |
| |
coolant. But before we went |
| |
into the real trial, we |
| |
compared our SEM model versus a |
| |
thermodynamic model based |
| |
on ChemCAD. |
| |
And what it pointed out was |
| |
that both models are |
| |
pointing in the same |
| |
direction, so there were no |
| |
no real discrepancies |
| |
between the both. |
| |
OK, this made us in an |
| |
optimistic mood and so we did |
| |
some real trials |
| |
and with the best |
| |
settings, and let's say, |
| |
approved the the predicted |
| |
things from the models. |
| |
And so it turned out, as I said |
| |
already, that what the engineer |
| |
suspected that the cooling |
| |
capacity of the cooler is not |
| |
sufficient. And so when you have |
| |
at higher river temperature, |
| |
then the heat transfer is too |
| |
small, and so the equipment... |
| |
equipment doesn't really run |
| |
anymore. So the next step now is |
| |
to use these data from from this |
| |
study here to justify another |
| |
investment which builds |
| |
a cooler here with a better |
| |
heat exchange capacity. |
| |
So thanks to Laura and Chris, we |
| |
could set up here the investment. |
| |
If you have questions so |
| |
please feel free to ask now. |
| |
Thank you. |