Multiple Response Optimization in DOE: Desirability Functions for Competing Goals

July 2026 13 min read Bioprocess Engineering

Key Takeaways

Contents

  1. Why one response is never enough
  2. Individual desirability: maximize, minimize, target
  3. The composite desirability (geometric mean)
  4. Worked mAb example: titer vs %monomer
  5. Overlaid contour plots and the sweet spot
  6. Weighting responses (and being honest about it)
  7. Model your responses free
  8. Frequently Asked Questions

Almost no real bioprocess has one goal. You need titer and monomer purity, or yield and host-cell-protein clearance, or potency and viability and cost per gram. Run a response surface design, optimize each response on its own, and you get three different recommended setpoints that cannot all be true at once. Multiple response optimization is the machinery for resolving that: a desirability function converts every response to a common 0 to 1 scale, a composite score combines them, and an overlaid contour plot shows you the region where everything is simultaneously acceptable. This guide walks through the arithmetic with a worked monoclonal antibody example, then shows what the resulting number does and does not mean. The models behind it can be fitted for free in the DOE generator.

Why one response is never enough

Responses in a bioprocess almost always conflict, so a single-response optimum is usually a recommendation to make something else worse. Raising culture temperature lifts specific productivity but accelerates aggregation. Extending the feed raises titer but drives lactate and osmolality up. Loading a column harder improves throughput but costs you resolution.

This is not a modern complication. Antony's plating-thickness case study in Design of Experiments for Engineers and Scientists sets four objectives for a single experiment, including both "what is the best setting of factors to minimize variability in thickness?" and "how to achieve a target plating thickness of 120 units?" — a mean goal and a variability goal that pull in different directions from the same data. Bioprocess DOEs simply have more of these, and the stakes are regulatory as well as economic.

There are two established ways to resolve competing responses, and they complement rather than replace each other:

Best practice is to run the numerical optimization for the point, then plot the overlay around it to see how much room you have. The two methods agree when the limits are set consistently, and the overlay is what tells you whether your optimum sits comfortably in the middle of a wide window or perched on the edge of a cliff.

Individual desirability: maximize, minimize, target

An individual desirability d maps one response onto the interval 0 to 1, where 0 means completely unacceptable and 1 means the goal is fully met. Derringer and Suich set out the three standard transforms in their 1980 paper, and they remain the form implemented in essentially every DOE package.

The three Derringer-Suich desirability transforms Maximize 1 0 L U titer, yield, potency Minimize 1 0 L U aggregate, HCP, cost Target 1 0 L T U pH, osmolality, glycan %
Figure 1. The three individual desirability transforms. All three map the response onto 0 to 1; only the shape differs. Shown with exponent r = 1 (linear ramps), the default in most tools.
Table 1. The Derringer-Suich individual desirability transforms. L = lower limit, U = upper limit, T = target, r/s/t = shape exponents (1 = linear).
GoalBelow LBetween limitsAbove UTypical bioprocess response
Maximized = 0d = [(y − L)/(U − L)]rd = 1Titer, step yield, potency
Minimized = 1d = [(U − y)/(U − L)]rd = 0Aggregate %, HCP, cost/g
Target (T)d = 0rises to 1 at T, falls afterd = 0pH, osmolality, glycan profile

The exponent controls how hard the transform pushes. With r = 1 the ramp is linear and every unit of improvement counts equally. With r > 1 the score stays low until you are close to the target, which makes the optimizer strain hard for the last increment. With r < 1 almost any value above the lower limit scores well, so the optimizer treats the response as a loose constraint. Most tools default to r = 1, and unless you have a strong reason, leaving it there keeps the result interpretable.

Choosing L and U is where the real judgement sits, and it is not a statistical decision. L should be the value below which the batch is genuinely unacceptable, not merely disappointing. If you set L for monomer purity at 94% because that is your release specification, then 93.9% scores zero and the optimizer will refuse to go there — which is the behaviour you want. Set it at 90% "to be safe" and you have quietly told the algorithm that a batch you would reject is fine.

The composite desirability (geometric mean)

The composite desirability D is the geometric mean of the individual desirabilities, and the recommended settings are those that maximize it. For m responses:

D = (d1 × d2 × … × dm)1/m

The choice of a geometric rather than arithmetic mean is the single most important design decision in the whole method, and it encodes a hard practical rule: if any one response is unacceptable, the whole condition is unacceptable. Because the individual desirabilities are multiplied, a single d = 0 drives the product to 0, and D to 0, regardless of how good everything else looks.

Consider two candidate setpoints, each with two responses:

Table 2. Why the geometric mean matters. Setpoint A fails one response outright; only the geometric mean says so.
Setpointd1 (titer)d2 (purity)Arithmetic meanComposite D (geometric)Correct verdict
A — titer chased hard0.950.000.4750.00Reject — out of spec on purity
B — balanced0.550.500.5250.52Viable candidate

Under an arithmetic average the two setpoints look almost identical (0.475 vs 0.525), which would be a serious misdirection: setpoint A produces material you cannot release. The geometric mean scores it 0.00 and takes it off the table entirely. This zeroing property is why the desirability approach maps so naturally onto specification-driven work, and why it slots neatly into the ICH Q8 design space logic, where a design space is precisely the region in which all critical quality attributes are simultaneously assured.

Worked mAb example: titer vs %monomer

Here is the whole method on a two-factor, two-response CHO fed-batch case. A central composite design on culture temperature (A) and feed rate (B), both in coded units over −1 to +1, produces these fitted models for day-14 harvest titer and %monomer by SEC:

The two fitted models

Titer (g/L): ŷ1 = 4.20 + 0.60·A + 0.35·B − 0.45·A² − 0.25·B² %Monomer: ŷ2 = 96.00 − 1.40·A − 0.50·B − 0.60·A²

Temperature helps titer up to a point (positive linear, negative quadratic) but monotonically hurts monomer purity. That is the conflict, written as coefficients.

Acceptance limits (the judgement step):

Titer: maximize, L = 3.0 g/L (below this the batch is uneconomic), U = 5.0 g/L %Monomer: maximize, L = 94.0% (release specification), U = 98.0%

Candidate 1 — optimize titer alone. The titer surface peaks at A = +0.665, B = +0.700:

ŷ1 = 4.52 g/L ŷ2 = 94.45% d1 = (4.52 − 3.0)/2.0 = 0.761 d2 = (94.45 − 94.0)/4.0 = 0.113 D = √(0.761 × 0.113) = 0.294

The best titer in the design region sits 0.45 percentage points above the release limit for monomer. One bad day of variability and you are out of specification.

Candidate 2 — optimize purity alone. Monomer is maximized at the A = −1, B = −1 corner:

ŷ1 = 2.55 g/L ŷ2 = 97.30% d1 = 0 (titer below the 3.0 g/L limit) d2 = (97.30 − 94.0)/4.0 = 0.825 D = √(0 × 0.825) = 0.000

Beautiful material, uneconomic process. The zeroing property rejects it without argument.

Candidate 3 — maximize composite desirability. Searching the coded region for the largest D gives A = −0.115, B = +0.140:

ŷ1 = 4.17 g/L ŷ2 = 96.08% d1 = (4.17 − 3.0)/2.0 = 0.585 d2 = (96.08 − 94.0)/4.0 = 0.521 D = √(0.585 × 0.521) = 0.552

The trade in plain numbers. Relative to chasing titer alone, you give up 0.35 g/L of titer (7.8%) and gain 1.63 percentage points of monomer, moving from 0.45 points above the release limit to 2.08 points above it. That is the sort of exchange most process teams would take without hesitating — but nobody would have found it by optimizing either response on its own.

Table 3. Three ways to pick setpoints from the same two models. Only the third is defensible.
StrategyA (coded)B (coded)Titer (g/L)%Monomerd1d2D
Maximize titer only+0.665+0.7004.5294.450.7610.1130.294
Maximize %monomer only−1.000−1.0002.5597.300.0000.8250.000
Maximize composite D−0.115+0.1404.1796.080.5850.5210.552

Plotting the two individual desirabilities against temperature makes the trade visible. As A rises, d1 climbs and d2 falls; their geometric mean rises, peaks, and then collapses when d2 hits zero at the design edge:

Figure 2. Individual and composite desirability vs coded temperature (feed rate held at B = +0.14). The composite peaks well short of either individual optimum — that peak is the multi-response answer.

Fit the models behind the optimization

Build a response-surface design, enter as many responses as you need, and get fitted models, per-response optima, and a Derringer-Suich multi-response compromise. Free, in the browser.

Open the free DOE generator →

Overlaid contour plots and the sweet spot

An overlaid contour plot draws each response's acceptance contour on the same two factor axes and shades the region where all of them hold at once. That shaded region is the operating window, and it answers a question the single optimum cannot: how much room do I have?

The single point A = −0.115, B = +0.140 is a recommendation with no tolerance attached. If the true optimum sits on a knife edge, a half-degree of temperature control error takes you out of specification. If it sits in the middle of a broad plateau, you have room to define a normal operating range around it. Only the overlay shows which world you are in.

Overlaid contour plot: the titer and purity constraints and their sweet spot −1 0 +1 Culture temperature, A (coded) −1 0 +1 Feed rate, B (coded) D = 0.552 (−0.115, +0.140) titer-only optimum D = 0.294, purity fails Titer ≥ 4.0 g/L Monomer ≥ 96.0% Sweet spot (both) The optimum sits inside the window with room on both sides — not on a cliff edge.
Figure 3. Overlaid contour plot for the worked example. The teal ellipse is where predicted titer clears 4.0 g/L; left of the amber curve is where monomer clears 96.0%. Their overlap (green) is the operating window, and the composite desirability optimum sits comfortably inside it.

Note that the contours in Figure 3 are drawn at deliberately tighter thresholds than the bare acceptance limits used in the desirability transforms: titer ≥ 4.0 g/L rather than the 3.0 g/L economic floor, and monomer ≥ 96.0% rather than the 94.0% release specification. Overlaying the high-performing core rather than the merely-passing region is the more useful picture, because it shows where you would actually want to sit. Two things are worth reading off it. First, the composite desirability optimum lands inside that tighter window with clearance on both sides, so it is not a knife-edge recommendation. Second, the titer-only optimum falls well outside the purity contour at 94.45% — the visual version of its D = 0.294.

The overlay's real limitation is dimensional. It shows two factors at a time, so with four or five factors you must fix the others at chosen values and generate a plot per slice. That is why the numerical desirability search does the optimizing and the overlay does the explaining. For how to read contour plots generally, and how the underlying quadratic surface is fitted, see response surface methodology DOE; for interpreting the effects and ANOVA that produced these coefficients, see how to read your DOE results.

Weighting responses (and being honest about it)

Weights raise each individual desirability to a power before the geometric mean is taken, letting a more important response pull the optimum toward its own preference. With weights wi:

D = ( d1w1 × d2w2 × … × dmwm )1/Σwi

Applying a 3:1 weighting in favour of monomer purity to the worked example moves the recommendation from A = −0.115 to A = −0.360, and from B = +0.140 to B = −0.260. The predicted outputs shift from 4.17 g/L at 96.08% to 3.82 g/L at 96.56%: another 0.35 g/L traded for another half a percentage point of monomer.

That number is the point. Weighting is a commercial and regulatory judgement dressed as a parameter, and the only honest way to use it is to expose the sensitivity rather than hide it. Run the optimization at two or three defensible weightings and report how far the settings move:

Table 4. Weighting sensitivity for the worked example. Report this, not a single D.
Weighting (titer : monomer)A (coded)B (coded)Titer (g/L)%Monomer
1 : 3 — purity-led−0.360−0.2603.8296.56
1 : 1 — equal−0.115+0.1404.1796.08
3 : 1 — titer-led+0.150+0.4054.3895.57

Across a 9-fold swing in relative weighting, titer moves only 0.56 g/L and monomer only 0.99 percentage points, and all three settings clear both acceptance limits (titer ≥ 3.0 g/L, monomer ≥ 94.0%) with room to spare. That is a robust answer: the weighting shifts the emphasis but never changes the decision. The tighter Figure 3 contours do separate them — only the equal-weighted setting clears both 4.0 g/L and 96.0% — which is exactly the kind of nuance worth putting in front of the process team. If instead the three rows had landed in three different corners of the design, you would know that the recommendation is really an opinion about priorities, and it should go to the people who own that decision rather than being settled inside a statistics package.

One caution on comparing D values. The composite is a function of your chosen limits, exponents, and weights, so a D of 0.60 under one weighting is not "better" than 0.55 under another. Always report the predicted individual responses alongside it. The same scepticism applies to multi-attribute scores generally, which is why a clone scorecard that ranks candidates on several attributes at once should also expose the underlying per-attribute values, not just the headline rank.

Model your responses free

Multi-response optimization needs a fitted model per response, which means a design capable of estimating curvature. A screening design cannot do it: with only linear terms you get planes, and planes have no interior optimum to compromise over. Start from a central composite or Box-Behnken design, or a definitive screening design if run budget is tight, then fit each response separately over the same run set. If you are unsure which design fits your factor count and budget, work through the DOE design decision guide first.

The free DOE software on this site handles the whole chain: build the design, enter multiple responses with a goal each (maximize, minimize, or target), get fitted models with effects and significance, per-response optima, a Derringer-Suich multi-response best compromise, and a contour plot of any two factors with the optimum marked. It implements the linear (r = 1) one-sided transforms and the unweighted geometric mean described above, and it keeps the search inside the tested region rather than extrapolating past it.

Whatever tool produces the number, the last step is not optional: the optimum is a model prediction, not a result. Run confirmation experiments at the recommended settings and check that both responses land where the models said they would, before the settings go anywhere near a batch record.

Find your own multi-response compromise

Enter two or more responses with a goal each and get the best-compromise setpoint plus a contour plot of the region around it. No install, no licence.

Build a multi-response design →

Frequently Asked Questions

What is multiple response optimization in DOE?

Multiple response optimization is finding the one set of factor settings that performs acceptably on every response at once, rather than optimizing each response separately and hoping the answers agree. In a bioprocess DOE the responses usually conflict: settings that maximize titer often reduce product quality or viability. The two standard methods are overlaid contour plots, which shade the region where all responses meet their limits, and desirability functions, which convert each response to a 0 to 1 score and combine those scores into a single composite value that can be maximized numerically.

How does the Derringer-Suich desirability function work?

Each response is transformed onto an individual desirability d between 0 and 1, where 0 means completely unacceptable and 1 means fully satisfies the goal. For a maximize goal, d ramps from 0 at the lower acceptable limit to 1 at the upper target. For a minimize goal it ramps the other way. For a target goal it rises to 1 at the target and falls off on both sides. The individual desirabilities are then combined into a composite desirability D as their geometric mean, and the factor settings that maximize D are reported as the optimum.

Why is composite desirability a geometric mean and not an average?

Because the geometric mean goes to zero if any single response is unacceptable. If one individual desirability is 0, the product is 0 and the composite D is 0 no matter how good the other responses look. An arithmetic average would let a spectacular titer paper over an out-of-specification purity and still report a decent overall score. The geometric mean enforces the practical rule that a set of conditions failing any one requirement is not a candidate optimum at all.

What is an overlaid contour plot?

An overlaid contour plot draws the acceptance contour for each response on the same pair of factor axes and shades the region where all of them are satisfied simultaneously. That shaded region is the operating window, or sweet spot. It is more informative than a single optimum point because it shows how much room you have around the optimum, which matters for setting proven acceptable ranges. Its limitation is that it only displays two factors at a time, so with more factors the remaining ones must be held fixed at chosen values.

How do you weight responses in multi-response optimization?

Weights raise each individual desirability to a power before the geometric mean is taken, so the composite becomes the product of d raised to w, all raised to the power of one over the sum of the weights. A response with a higher weight pulls the optimum toward its own preference. Weighting is a business and regulatory judgement rather than a statistical one, so the honest approach is to run the optimization at two or three weightings and report how much the recommended settings move. If they barely move, the answer is robust; if they move a lot, the weighting is doing the deciding.

Is a high composite desirability the same as a good process?

No. Composite desirability is only as good as the models and the acceptance limits behind it, and its numerical value depends on the limits and weights you chose, so D values are not comparable across different settings of those choices. A D of 0.55 with sensible limits can describe a better process than a D of 0.9 with limits set so loosely that everything passes. Always report the predicted values of the individual responses alongside D, and confirm the recommended settings with confirmation runs before acting on them.

Related Tools

References

  1. Derringer, G. & Suich, R. (1980). Simultaneous optimization of several response variables. Journal of Quality Technology, 12(4), 214–219. doi:10.1080/00224065.1980.11980968
  2. Harrington, E.C. (1965). The desirability function. Industrial Quality Control, 21(10), 494–498. (The original single-response desirability transform that Derringer and Suich generalised.)
  3. Antony, J. (2003). Design of Experiments for Engineers and Scientists. Butterworth-Heinemann/Elsevier. ISBN 0-7506-4709-4. (Ch. 6, a single experiment with simultaneous mean, variability, and target objectives.)
  4. Montgomery, D.C. (2017). Design and Analysis of Experiments, 9th ed. Wiley. ISBN 978-1119113478. (Ch. 11, multiple response optimization and overlaid contour plots.)
  5. NIST/SEMATECH (2012). e-Handbook of Statistical Methods, Section 5.5.3.2.2: Multiple responses, the desirability approach. itl.nist.gov

Resources & Further Reading