# Mixture Design (pt 2)¶

## Part 2 – Optimization¶

## Introduction¶

This tutorial demonstrates the use of Design-Expert^{®} software for
optimization of mixture experiments. It’s based on the data from the preceding
tutorial (Part 1 – The Basics). You should go back to that section if you’ve not
already completed it. Much of what’s detailed in this Mixture Design Tutorial
(Part 2 – Optimization) is a repeat of the Multifactor RSM Tutorial (Part 2 –
Optimization). If you’ve already completed that RSM tutorial, simply skip over
the areas in this tutorial that you find redundant.

Note

For details about optimization, use the software’s extensive on-screen program Help. Also, Stat-Ease provides in-depth training in its workshop titled Mixture Designs for Optimal Formulations. Call for information on content and schedules, or better yet, visit our web site at www.statease.com.

Start the program by finding and double clicking the Design-Expert
icon. Use the **Help, Tutorial Data** menu and select **Detergent
(Analyzed)** from the list.

The data you just loaded includes analyzed models as well as raw data for each response. Recall that the formulators chose a three-component simplex lattice design to study their detergent formulation. The components are water, alcohol, and urea. The experimenters held all other ingredients constant. They measured two responses: viscosity and turbidity. You will now optimize this mixture using their analyzed models.

Note

To see a description of the file contents, click the **Summary** node
under the Design branch at the left of your screen. Drag the left border and
open the window to see the report better. You can also re-size columns with
your mouse. Now look at the bottom lines on responses R1 (viscosity) and R2
(turbidity). Observe under the “Model” column that these are fitted to
quadratic and special cubic; respectively. That is good to know.

P.S. For complete details on the models fitted, go down to the bottom of the tree and click the Coefficients Table node under the Post Analysis branch.

## Numerical Optimization¶

Design-Expert’s numerical optimization maximizes, minimizes, or targets:

- A single response
- A single response, subject to upper and/or lower boundaries on other responses
- Combinations of two or more responses.

We will lead you through the last above case: a multiple-response optimization.
Under the Optimization branch of the program, click the **Numerical** node to
start the process.

### Setting the Optimization Criteria¶

Design-Expert allows you to set criteria for all variables, including components and propagation of error (POE). (We will get to POE later.) The limits for the responses default to the observed extremes.

Note

Now you reach the crucial phase of numerical optimization: assigning “Optimization Parameters.” The program provides five possibilities for a “Goal” to construct desirability indices (di): none (to disregard any given response), maximize, minimize, target, in range (simple constraint) and equal to (components only).

Desirabilities range from zero to one for any given response. The program
combines individual desirabilities into a single number and then searches for
the greatest overall desirability. A value of one represents the case where all
goals are met perfectly. A zero indicates that one or more responses fall outside
desirable limits. Design-Expert uses an optimization method developed by
Derringer and Suich, described by Myers, Montgomery and Anderson-Cook in
*Response Surface Methodology*, 3rd edition, John Wiley and Sons, New York, 2009.

In this case, components are allowed to range within their pre-established constraints, but be aware they can be set to desired goals. For example, because water is cheap, you could set its goal to maximize.

Notice that components can be set equal to specified levels. Leave water at its
“in range” default and click the first response – **Viscosity**. Set its
**Goal** to **target->** of **43**. Enter **Limits** as **Lower** of **39** and
**Upper** of **48**. Press **Tab** to set your entries.

These limits indicate it is most desirable to achieve the targeted value of 43, but values in the range of 39-48 are acceptable. Values outside that range have no (zero) desirability.

Now click the second response — **Turbidity**. Select its **Goal** to
**minimize**, with **Limits** set at **Lower** of **800** and **Upper** of
**900**. Press **Tab** to set your entries. You must provide both these thresholds
to get the desirability equation to work properly. By default they are set at the
observed response range, in this case 323 to 1122. However, evidently in this case
there’s no advantage to getting the detergent’s turbidity below 800 – it already
appears as clear as can be to the consumer’s eye. On the other hand, when
turbidity exceeds 900, it looks as bad as it gets (too cloudy).

These settings create the following desirability functions:

- Viscosity:

- if less than 39, desirability (di) equals zero
- from 39 to 43, di ramps up from zero to one
- from 43 to 48, di ramps back down to zero
- if greater than 48, di equals zero.

- Turbidity:

- if less than 800, di equals one
- from 800 to 900, di ramps down from one to zero
- if over 900, di equals zero.

### Changing Desirability Weights and the (Relative) Importance of Variables¶

The user can select additional parameters, called “weights,” for each response. Weights give added emphasis to upper or lower bounds, or emphasize a target value. With a weight of 1, di varies from 0 to 1 in linear fashion. Weights greater than 1 (maximum weight is 10) give more emphasis to goals. Weights less than 1 (minimum weight is 0.1) give less emphasis to goals. Weights can be quickly changed by ‘grabbing’ (via left mouse-click and drag) the handles (the squares ▫) on the desirability ramps. Try pulling the handle on the ramp down as shown below.

Notice that Weight now reads 10. You’ve made it much more desirable to get near
the turbidity goal of 800. Before moving on, re-enter **Upper Weights** to its
default value of **1** and press the **Tab key**. This straightens the
desirability ramp. “Importance” is a tool for changing relative priorities for
achieving goals you establish for some or all of the variables. If you want to
emphasize one variable over the rest, set its importance higher. Design-Expert
offers five levels of importance ranging from 1 plus (+) to 5 pluses (+++++). For
this study, leave **Importance** at **+++**, a medium setting. By leaving all
importance criteria at their defaults, none of the goals is favored over any
other.

### Running the optimization¶

Start the optimization by clicking the **Solutions** tab. Design-Expert brings up
the Ramps view by default.

The ramp display combines individual graphs for easier interpretation. The dot
on each ramp reflects the factor setting or response prediction for that solution.
The height of the dot shows how desirable it is. Select different solutions from
the drop-down menu on the **Factors Tool** (1, 2, 3,…) and watch the dots. The red
ones representing the component levels move around quite a bit, but do the
responses remain within their goals (desirability of 1)? Near the graph’s top,
select the last solution (solution 17 in this case) on your screen. Does your
solution look something like the one below?

If your search also uncovered the above local optimum, note that viscosity falls off target and turbidity becomes excessive, thus making it less desirable than the option for higher temperature.

Move your mouse up to the top of your screen and select **Report**.

The report starts with a recap of your optimization specifications. Then it lists solutions in order of desirability. It ends with detailing of the starting points for the search.

Note

Scroll down this report to see how where the program starts its empirical searches for desirable results. Multiple cycles improve the odds of finding multiple local optimums, some of which will be higher in desirability than others. In this case Design-Expert grinds through 110 cycles of optimization, starting from the 10 design points plus 100 more at random.

Go back top of the screen and select **Bar Graph**.

The above bar graph shows how well each variable satisfies the criteria and the overall combined desirability: Values near one are good. This is not the best solution!

### Optimization Graphs¶

Pressing the **Graphs** tab brings up the graphs of “All Responses”, including the
desirability function. Select **Desirability** from the droplist to view a contour
graph of overall desirability. It now becomes obvious that at least somewhat
desirable formulations fall with three distinct ‘sweet spots’ as indicated by the
three graduated color areas within the blue background.

The screen shot above came from a graph done showing graduated colors — cool blue for lower desirability and warm yellow for higher. Design-Expert sets a flag at the optimal point for the current solution.

Now select solution 1 from the drop-down until the flag relocates to the largest
sweet spot (the one with the largest area) at the top of the triangular mixture
space. To view the responses associated with this desirability (sweet spot), press
the droplist arrow for **Response** and select **Viscosity**.

Note

Right-click the graph and select **Graph preferences**, go to the
**Surface Graphs** section and check on **Show 2D grid lines**. The gridlines
appear in the plot above. There are many other options on this and other Graph
preferences tabs. Look them over if you like and then press **OK** to see how
options specified by this tutorial affect your contour plot. If you like, look
at the optimal turbidity response as well.

P.S. For tutorial purposes, go back and press **Default** at the bottom of the
window to re-set the original layouts.

To view the desirability surface in three dimensions, again click **Response** and
choose **Desirability**. Then from the Graphs Toolbar select **3D Surface**.

Now you can see one high ridge (1) where desirability can be maintained at a maximum level over a range of compositions. Another high point (2) can be achieved, but it requires sharp control of the composition. The other peak (3) is less desirable (lower).

Note

Design-Expert defaults short of maximum resolution. Try smoothing out
the 3D desirability surface via a right-click over the graph, selecting **Graph
Preferences** and then on the **Surface Graphs** section changing the **Graph
resolution** to **Very High**. Press **OK** for the new graph preferences. The
go back and re-set things to the **Default**.

## Adding Propagation of Error (POE) to the Optimization¶

If you have prior knowledge of the variation in your component amounts, this information can be fed into Design-Expert. Then you can generate propagation of error (POE) plots showing how that error transmits to the response. Look for compositions that minimize transmitted variation, thus creating a formula that’s robust to slight variations in the measured amounts.

Start by clicking the **Design** node on the left side of the screen to get back
to the design layout. Select **Column Info** from the **Design Toolbar**.

Enter the following information into the **Std. Dev.** column: Water: **0.08**,
Alcohol: **0.06**, Urea: **0.06**, as shown on the screen below.

Now you can calculate propagation of error by generating graphs for each
response. First, click the **Viscosity** analysis node and press the **Model
Graphs** tab. Next, select **View, Propagation of Error**, which previously was
grayed out. Also choose **3D Surface** view. Now your screen should match what’s
shown below.

The surface reaches a minimum where the least amount of error is transmitted (propagated) to the viscosity response. These minima occur at flat regions on model graphs where formulations are most robust to varying amounts of components.

Click the **Turbidity** node, press the **Model Graphs** button and select **View,
Propagation of Error** and look at its **3D Surface**. Rotate it so you can see
the surface best.

Now that you’ve found optimum conditions for the two responses, let’s go back
and add criteria for the propagation of error. Click the **Numerical** optimization
node. Select **POE (Viscosity)** and establish a **Goal** to **minimize** with
**Limits** of **Lower** at **5** and **Upper** of **8**.

Select **POE (Turbidity)** and set its **Goal** also to **minimize** with
**Limits** of **Lower** at **90** and **Upper** of **120**.

Now click the **Solutions** tab to generate new solutions with the additional
criteria. (You may need to press Ramps on the Solutions Toolbar to get the view
shown below.)

The number 1 solution represents the formulation that best achieves the target value of 43 for viscosity and minimizes turbidity, while at the same time finds the spot with the minimum POE (most robust to slight variations in the component amounts).

Note

If you can take the time, review the alternative solutions, which may be nearly as good based on the criteria you entered. There may be some alternative solutions that make better tradeoffs among the mutual goals.

### Viewing Trace Plots from Optimal Point¶

Continue on to the numerical optimization **Graphs** and select **All
Responses** from the drop-down. Here, you get a bird’s eye view of all of the
responses and how the solution was arrived at. Note that the Desirability plot
does not look much different from before because adding POE criteria had only a
small impact on the result. However, this is a good time to get a feel for the
sensitivity of responses around the optimum point. Observe this by changing
**Response** to **Turbidity**. Then select **Trace** from the **Graphs Tool**
palette.

Now you see that changing component A (water) and B (Alcohol) makes little difference on this response, whereas its very dependent on C (urea).

Take a look at the trace for the other response — viscosity. It looks even more interesting!

## Graphical Optimization¶

By shading out regions that fall outside of specified contours, you can identify desirable sweet spots for each response – windows of opportunity where all specifications can be met. In this case, response specifications are:

- 39 < Viscosity < 48
- POE (Viscosity) < 8
- Turbidity < 900
- POE (Turbidity) < 120

To overlay plots of all these responses, click the **Graphical** optimization
node. For the **Viscosity** response, if the following values are not already
pre-set, enter a **Lower limit** of **39** and an **Upper limit** of **48**.

Click the **POE(Viscosity)** response. If the following value is not already
pre-set, enter an **Upper limit** of **8**. Do not enter a lower limit — it will
not be needed for the graphical optimization when simply minimizing.

Press forward to the **Turbidity** response and, if the following value is not
already pre-set, enter an **Upper limit** of **900**. This again is a
minimization, so don’t enter a **lower limit**.

Click the **POE(Turbidity)** response and, if the following value is not already
preset, enter an **Upper limit** of **120**.

Press the **Graphs** tab to produce the “overlay” plot.

Notice that regions not meeting your specifications are grayed out, leaving (hopefully!) an operating window or “sweet spot.”

Notice the flag remains planted at the optimum. That’s handy! This Design-Expert display may not look as fancy as 3D desirability, but it is very useful to show windows of operability where requirements simultaneously meet critical properties. Grayed areas on the graphical optimization plot do not meet selection criteria. The yellow “window” shows where you can set factors to satisfy requirements for both responses.

The lines that mark the high or low boundaries on the responses can be identified with a mouse-click. Notice that the contour and its label change color for easy identification. Click outside the graph to reset the contour and its label to the original color.

Let’s say someone wonders whether the 900 maximum for turbidity can be
decreased. What will this do to the operating window? Find out by clicking the
900 turbidity contour line – you know you’ve got it when it turns red. Then drag
the contour until it reaches a value of approximately **750**. Finally right-click
over this contour, select **Set contour value** and enter **750**.

Press **OK** to get the **750** contour level. Notice the smaller sweet spot has
disappeared and the medium one considerably reduced in area. To reset the
original sweet spot, go back to Criteria and reset Turbidity to an Upper limit
of 900.

Note

**Adding uncertainty intervals around your window of operability**:
From the Criteria tab, for **Turbidity**, click **Show Interval (onesided)**
and then press forward to **Graphs**. This pushes in the boundary
by the confidence interval, thus accounting for uncertainty in the mean
prediction based on the model derived from this mixture experiment.

If you are subject to FDA regulation and participate in their quality by design (QBD) initiative, the CI-bounded window provides a relatively safe operating region — a functional design space — for any particular unit operation. Manufacturing design space requires tolerance intervals. This tutorial experiment provided too few runs to support adding the CI for viscosity, much less the imposition of TIs. Learn how to size designs properly for manufacturing QBD by attending our Designed Experiments for Pharma workshop.

Graphical optimization works great for three components, but as the number increases, it becomes more and more tedious. Once you find solutions much more quickly by using the numerical optimization feature, return to the graphical optimization and produce outputs for presentation purposes.

### Response Prediction at the Optimum¶

Click the **Confirmation** node (near bottom left on your screen). Notice it
defaults to your first solution.

This defaults to the prediction interval (PI) for a single point.

Note

You had best replicate the optimal formulation six or so times and then click the Enter Data option to type these into Design-Expert. It then computes the Data Mean and puts this in the middle of the PI values for evaluation. Try entering some numbers for yourself and see what happens.

### Save the Data to a File¶

Now that you’ve invested all this time into setting up the optimization for this
design, it is wise to save your work. Click the **File** menu item and select
**Save As**. You can now specify the **File name** (we suggest **tut-MIX-opt**)
to **Save as** type “*.dxpx” in the Data folder for Design-Expert (or wherever
you want to Save in).

## Final Comments¶

We feel that numerical optimization provides powerful insights when combined with graphical analysis. Numerical optimization becomes essential when investigating many components with many responses. However, computerized optimization does not work very well in the absence of subject-matter knowledge.

For example, a naïve user may define impossible optimization criteria. The result will be zero desirability everywhere! To avoid this, try setting broad, acceptable ranges. Narrow down the ranges as you gain knowledge about how changing factor levels affect responses. Often, you will need to make more than one pass to find the “best” factor levels that satisfy constraints on several responses simultaneously.

Using Design-Expert allows you to explore the impact of changing multiple components on multiple responses — and to find maximally desirable solutions quickly via numerical optimization. For your final report, finish up with a graphical overlay plot at the optimum “slice.” (Don’t forget you can set goals on the components themselves. For example, in this case it might be wise to try maximizing the amount of cheap water.)

Learn more about mixture design methods at our workshop titled Mixture Designs for Optimal Formulations. To get the latest class schedule, go to the Training link at www.statease.com.

### Postscript: Adding a Cost Equation¶

In the comments above, we suggested you consider maximizing the cheapest ingredient – water in this case. Conversely, you may have an incredibly expensive material in your formulation that obviously needs to be minimized. With only a small amount of effort, you can set up cost as a response to be included in Design-Expert’s numerical optimization.

Re-open the **Mix-a.dxpx** file. In the **Design** branch, right-click the last
response column. From the menu, select **Insert Response, After This Column**.

Next, right-click the new untitled response header and select **Simulate**. Then
choose **Use equation in analysis**.

Press **Next** and enter the **Response Name** as **Cost** and **Response units**
in **$/kg**. Then enter **.5b+.2c** (alcohol at $0.50 per kilo and urea at $0.20
cents – assume water costs practically nothing) into the area provided.

Press **Finish** to accept the equation and calculate costs for all formulations
in this mixture design. To make these more presentable, right-click the
**Response 3** column header, select **Edit Info**, and in the droplist change
**Format** to **0.00**. Press **OK**.

Now, under the Analysis branch, click the **Cost** node to bring up the model
graph directly — no modeling is necessary because you already entered the
deterministic equation.

The water shows blue due to it being so cheap.

This sets the stage to include cost in your multiple response optimization. As
pictured below, go to **Optimization** node **Numerical**, select **Cost** and
set its **Goal** to **minimize**.

Pressing Solutions at this stage only tells you what you already know: The lowest cost formula is at the greatest amount of water within the specified constraints. Reenter the goals for viscosity and turbidity and their POEs if you like, but it really isn’t necessary now. Wait until you do your own mixture design and then make use of this postscript tip to take costs into account.