← All Use Cases
Central Composite Design

Injection Molding Quality

Central composite design for 4-response multi-objective injection molding optimization with custom bounds on all responses

Summary

This experiment investigates injection molding quality. Central composite design for 4-response multi-objective injection molding optimization with custom bounds on all responses.

The design varies 3 factors: melt temp (C), ranging from 200 to 280, injection pressure (MPa), ranging from 50 to 120, and cooling time (s), ranging from 10 to 30. The goal is to optimize 4 responses: surface finish (Ra_um) (maximize), dimensional accuracy (%) (maximize), cycle time (s) (minimize), and warpage (mm) (minimize). Fixed conditions held constant across all runs include mold material = P20_steel, part weight = 45g.

A Central Composite Design (CCD) was selected to fit a full quadratic response surface model, including curvature and interaction effects. With 3 factors this produces 22 runs including center points and axial (star) points that extend beyond the factorial range.

Quadratic response surface models were fitted to capture potential curvature and factor interactions. The RSM contour plots below visualize how pairs of factors jointly affect each response.

Key Findings

For surface finish, the most influential factors were injection pressure (68.6%), cooling time (17.2%), melt temp (14.2%). The best observed value was 1.856 (at melt temp = 200, injection pressure = 120, cooling time = 30).

For dimensional accuracy, the most influential factors were injection pressure (43.6%), melt temp (43.0%), cooling time (13.5%). The best observed value was 99.62 (at melt temp = 240, injection pressure = 148.901, cooling time = 20).

For cycle time, the most influential factors were melt temp (52.9%), injection pressure (26.2%), cooling time (20.9%). The best observed value was 17.8 (at melt temp = 280, injection pressure = 120, cooling time = 10).

For warpage, the most influential factors were melt temp (52.7%), cooling time (25.7%), injection pressure (21.6%). The best observed value was 0.12 (at melt temp = 280, injection pressure = 50, cooling time = 10).

Recommended Next Steps

Experimental Setup

Factors

FactorLowHighUnit
melt_temp200280C
injection_pressure50120MPa
cooling_time1030s

Fixed: mold_material = P20_steel, part_weight = 45g

Responses

ResponseDirectionUnit
surface_finish↑ maximizeRa_um
dimensional_accuracy↑ maximize%
cycle_time↓ minimizes
warpage↓ minimizemm

Configuration

use_cases/306_injection_molding/config.json
{ "metadata": { "name": "Injection Molding Quality", "description": "Central composite design for 4-response multi-objective injection molding optimization with custom bounds on all responses" }, "factors": [ { "name": "melt_temp", "levels": [ "200", "280" ], "type": "continuous", "unit": "C" }, { "name": "injection_pressure", "levels": [ "50", "120" ], "type": "continuous", "unit": "MPa" }, { "name": "cooling_time", "levels": [ "10", "30" ], "type": "continuous", "unit": "s" } ], "fixed_factors": { "mold_material": "P20_steel", "part_weight": "45g" }, "responses": [ { "name": "surface_finish", "optimize": "maximize", "unit": "Ra_um" }, { "name": "dimensional_accuracy", "optimize": "maximize", "unit": "%" }, { "name": "cycle_time", "optimize": "minimize", "unit": "s" }, { "name": "warpage", "optimize": "minimize", "unit": "mm" } ], "settings": { "operation": "central_composite", "test_script": "use_cases/306_injection_molding/sim.sh" } }

Experimental Matrix

The Central Composite Design produces 22 runs. Each row is one experiment with specific factor settings.

Runmelt_tempinjection_pressurecooling_time
12408520
22805030
320012010
4240148.90120
52408520
6166.978520
7240851.74258
82408520
928012010
10313.038520
112408520
1224021.09920
132408520
142005030
152408520
162805010
172408538.2574
1828012030
192408520
202005010
2120012030
222408520

Step-by-Step Workflow

1

Preview the design

Terminal
$ doe info --config use_cases/306_injection_molding/config.json
2

Generate the runner script

Terminal
$ doe generate --config use_cases/306_injection_molding/config.json \ --output use_cases/306_injection_molding/results/run.sh --seed 42
3

Execute the experiments

Terminal
$ bash use_cases/306_injection_molding/results/run.sh
4

Analyze results

Terminal
$ doe analyze --config use_cases/306_injection_molding/config.json
5

Get optimization recommendations

Terminal
$ doe optimize --config use_cases/306_injection_molding/config.json
6

Multi-objective optimization

With 4 competing responses, use --multi to find the best compromise via Derringer–Suich desirability.

Terminal
$ doe optimize --config use_cases/306_injection_molding/config.json --multi
7

Generate the HTML report

Terminal
$ doe report --config use_cases/306_injection_molding/config.json \ --output use_cases/306_injection_molding/results/report.html

Features Exercised

FeatureValue
Design typecentral_composite
Factor typescontinuous (all 3)
Arg styledouble-dash
Responses4 (surface_finish ↑, dimensional_accuracy ↑, cycle_time ↓, warpage ↓)
Total runs22

Analysis Results

Generated from actual experiment runs using the DOE Helper Tool.

Response: surface_finish

Top factors: injection_pressure (68.6%), cooling_time (17.2%), melt_temp (14.2%).

ANOVA

SourceDFSSMSFp-value
SourceDFSSMSFp-value
melt_temp40.09770.02440.2960.8734
injection_pressure41.03030.25763.1210.0720
cooling_time40.11420.02850.3460.8405
LackofFit20.87900.4395
PureError70.5776
Error91.45660.0825
Total212.69870.1285

Response: dimensional_accuracy

Top factors: injection_pressure (43.6%), melt_temp (43.0%), cooling_time (13.5%).

ANOVA

SourceDFSSMSFp-value
SourceDFSSMSFp-value
melt_temp46.57851.64462.1270.1596
injection_pressure46.90551.72642.2320.1458
cooling_time42.79090.69770.9020.5018
LackofFit22.83801.4190
PureError75.4136
Error98.25160.7734
Total2124.52651.1679

Response: cycle_time

Top factors: melt_temp (52.9%), injection_pressure (26.2%), cooling_time (20.9%).

ANOVA

SourceDFSSMSFp-value
SourceDFSSMSFp-value
melt_temp4511.4092127.85233.3670.0603
injection_pressure4356.719289.17982.3480.1322
cooling_time4324.041781.01042.1330.1587
LackofFit2350.6357175.3178
PureError7265.8200
Error9616.455737.9743
Total211808.625986.1250

Response: warpage

Top factors: melt_temp (52.7%), cooling_time (25.7%), injection_pressure (21.6%).

ANOVA

SourceDFSSMSFp-value
SourceDFSSMSFp-value
melt_temp40.90570.22642.2010.1497
injection_pressure40.55340.13831.3450.3258
cooling_time40.77690.19421.8880.1968
LackofFit20.00000.0000
PureError70.7200
Error90.30650.1029
Total212.54250.1211

Multi-Objective Optimization

When responses compete, Derringer–Suich desirability finds the best compromise. Each response is scaled to a 0–1 desirability, then combined via a weighted geometric mean.

Overall Desirability
D = 0.6615

Per-Response Desirability

ResponseWeightDesirabilityPredictedDir
surface_finish 1.5
0.8474
1.71 0.8474 1.71 Ra_um
dimensional_accuracy 2.0
0.9240
99.62 0.9240 99.62 %
cycle_time 1.0
0.1578
52.90 0.1578 52.90 s
warpage 1.5
0.8600
0.21 0.8600 0.21 mm

Recommended Settings

FactorValue
melt_temp240 C
injection_pressure85 MPa
cooling_time20 s

Source: from observed run #17

Trade-off Summary

Sacrifice = how much worse than single-objective best.

ResponsePredictedBest ObservedSacrifice
dimensional_accuracy99.6299.62+0.00
cycle_time52.9017.80+35.10
warpage0.210.12+0.09

Top 3 Runs by Desirability

RunDFactor Settings
#180.6356melt_temp=240, injection_pressure=85, cooling_time=20
#220.6307melt_temp=200, injection_pressure=50, cooling_time=10

Model Quality

ResponseType
dimensional_accuracy0.1482linear
cycle_time0.2237linear
warpage0.2377linear

Full Multi-Objective Output

doe optimize --multi
============================================================ MULTI-OBJECTIVE OPTIMIZATION Method: Derringer-Suich Desirability Function ============================================================ Overall desirability: D = 0.6615 Response Weight Desirability Predicted Direction --------------------------------------------------------------------- surface_finish 1.5 0.8474 1.71 Ra_um ↑ dimensional_accuracy 2.0 0.9240 99.62 % ↑ cycle_time 1.0 0.1578 52.90 s ↓ warpage 1.5 0.8600 0.21 mm ↓ Recommended settings: melt_temp = 240 C injection_pressure = 85 MPa cooling_time = 20 s (from observed run #17) Trade-off summary: surface_finish: 1.71 (best observed: 1.86, sacrifice: +0.15) dimensional_accuracy: 99.62 (best observed: 99.62, sacrifice: +0.00) cycle_time: 52.90 (best observed: 17.80, sacrifice: +35.10) warpage: 0.21 (best observed: 0.12, sacrifice: +0.09) Model quality: surface_finish: R² = 0.6617 (quadratic) dimensional_accuracy: R² = 0.1482 (linear) cycle_time: R² = 0.2237 (linear) warpage: R² = 0.2377 (linear) Top 3 observed runs by overall desirability: 1. Run #17 (D=0.6615): melt_temp=240, injection_pressure=85, cooling_time=20 2. Run #18 (D=0.6356): melt_temp=240, injection_pressure=85, cooling_time=20 3. Run #22 (D=0.6307): melt_temp=200, injection_pressure=50, cooling_time=10

Full Analysis Output

doe analyze
=== Main Effects: surface_finish === Factor Effect Std Error % Contribution -------------------------------------------------------------- injection_pressure 1.1820 0.0764 68.6% cooling_time 0.2967 0.0764 17.2% melt_temp 0.2450 0.0764 14.2% === ANOVA Table: surface_finish === Source DF SS MS F p-value ----------------------------------------------------------------------------- melt_temp 4 0.0977 0.0244 0.296 0.8734 injection_pressure 4 1.0303 0.2576 3.121 0.0720 cooling_time 4 0.1142 0.0285 0.346 0.8405 Lack of Fit 2 0.8790 0.4395 5.326 0.0393 Pure Error 7 0.5776 0.0825 Error 9 1.4566 0.0825 Total 21 2.6987 0.1285 === Summary Statistics: surface_finish === melt_temp: Level N Mean Std Min Max ------------------------------------------------------------ 166.97 1 1.4800 0.0000 1.4800 1.4800 200 4 1.2833 0.5905 0.4100 1.7100 240 12 1.3832 0.3493 0.6740 1.8560 280 4 1.2508 0.2663 0.8970 1.5360 313.03 1 1.2350 0.0000 1.2350 1.2350 injection_pressure: Level N Mean Std Min Max ------------------------------------------------------------ 120 4 1.4390 0.2050 1.2410 1.7100 148.901 1 1.8560 0.0000 1.8560 1.8560 21.099 1 0.6740 0.0000 0.6740 0.6740 50 4 1.0950 0.5472 0.4100 1.5370 85 12 1.3986 0.2420 0.8320 1.6570 cooling_time: Level N Mean Std Min Max ------------------------------------------------------------ 1.74258 1 1.5430 0.0000 1.5430 1.5430 10 4 1.2463 0.5788 0.4100 1.7100 20 12 1.3563 0.3473 0.6740 1.8560 30 4 1.2877 0.2901 0.8970 1.5370 38.2574 1 1.4940 0.0000 1.4940 1.4940 === Main Effects: dimensional_accuracy === Factor Effect Std Error % Contribution -------------------------------------------------------------- injection_pressure 2.8400 0.2304 43.6% melt_temp 2.8000 0.2304 43.0% cooling_time 0.8775 0.2304 13.5% === ANOVA Table: dimensional_accuracy === Source DF SS MS F p-value ----------------------------------------------------------------------------- melt_temp 4 6.5785 1.6446 2.127 0.1596 injection_pressure 4 6.9055 1.7264 2.232 0.1458 cooling_time 4 2.7909 0.6977 0.902 0.5018 Lack of Fit 2 2.8380 1.4190 1.835 0.2287 Pure Error 7 5.4136 0.7734 Error 9 8.2516 0.7734 Total 21 24.5265 1.1679 === Summary Statistics: dimensional_accuracy === melt_temp: Level N Mean Std Min Max ------------------------------------------------------------ 166.97 1 98.1200 0.0000 98.1200 98.1200 200 4 98.0375 1.3876 96.2400 99.6200 240 12 97.3200 0.9730 95.8500 98.8500 280 4 97.5150 0.7653 96.5800 98.2700 313.03 1 95.3200 0.0000 95.3200 95.3200 injection_pressure: Level N Mean Std Min Max ------------------------------------------------------------ 120 4 98.1775 1.2444 96.5800 99.6200 148.901 1 98.8500 0.0000 98.8500 98.8500 21.099 1 96.0100 0.0000 96.0100 96.0100 50 4 97.3750 0.8458 96.2400 98.0500 85 12 97.2017 0.9922 95.3200 98.1900 cooling_time: Level N Mean Std Min Max ------------------------------------------------------------ 1.74258 1 98.0000 0.0000 98.0000 98.0000 10 4 97.6075 1.5408 96.2400 99.6200 20 12 97.1225 1.1235 95.3200 98.8500 30 4 97.9450 0.4931 97.2200 98.2700 38.2574 1 97.8100 0.0000 97.8100 97.8100 === Main Effects: cycle_time === Factor Effect Std Error % Contribution -------------------------------------------------------------- melt_temp 23.6000 1.9786 52.9% injection_pressure 11.7000 1.9786 26.2% cooling_time 9.3167 1.9786 20.9% === ANOVA Table: cycle_time === Source DF SS MS F p-value ----------------------------------------------------------------------------- melt_temp 4 511.4092 127.8523 3.367 0.0603 injection_pressure 4 356.7192 89.1798 2.348 0.1322 cooling_time 4 324.0417 81.0104 2.133 0.1587 Lack of Fit 2 350.6357 175.3178 4.617 0.0527 Pure Error 7 265.8200 37.9743 Error 9 616.4557 37.9743 Total 21 1808.6259 86.1250 === Summary Statistics: cycle_time === melt_temp: Level N Mean Std Min Max ------------------------------------------------------------ 166.97 1 35.3000 0.0000 35.3000 35.3000 200 4 41.4000 9.4998 33.6000 52.9000 240 12 33.3417 6.1364 20.0000 42.3000 280 4 37.1750 14.2860 18.1000 49.1000 313.03 1 17.8000 0.0000 17.8000 17.8000 injection_pressure: Level N Mean Std Min Max ------------------------------------------------------------ 120 4 38.4250 15.9151 18.1000 52.9000 148.901 1 42.3000 0.0000 42.3000 42.3000 21.099 1 30.6000 0.0000 30.6000 30.6000 50 4 40.1500 7.1389 33.6000 47.1000 85 12 31.6917 7.0010 17.8000 38.9000 cooling_time: Level N Mean Std Min Max ------------------------------------------------------------ 1.74258 1 38.4000 0.0000 38.4000 38.4000 10 4 37.7250 15.1319 18.1000 52.9000 20 12 31.5333 7.2951 17.8000 42.3000 30 4 40.8500 8.4113 33.6000 49.1000 38.2574 1 36.4000 0.0000 36.4000 36.4000 === Main Effects: warpage === Factor Effect Std Error % Contribution -------------------------------------------------------------- melt_temp 0.9278 0.0742 52.7% cooling_time 0.4520 0.0742 25.7% injection_pressure 0.3805 0.0742 21.6% === ANOVA Table: warpage === Source DF SS MS F p-value ----------------------------------------------------------------------------- melt_temp 4 0.9057 0.2264 2.201 0.1497 injection_pressure 4 0.5534 0.1383 1.345 0.3258 cooling_time 4 0.7769 0.1942 1.888 0.1968 Lack of Fit 2 0.0000 0.0000 0.000 1.0000 Pure Error 7 0.7200 0.1029 Error 9 0.3065 0.1029 Total 21 2.5425 0.1211 === Summary Statistics: warpage === melt_temp: Level N Mean Std Min Max ------------------------------------------------------------ 166.97 1 0.7250 0.0000 0.7250 0.7250 200 4 0.5052 0.2187 0.2100 0.6760 240 12 0.8472 0.2821 0.5180 1.5000 280 4 0.6012 0.4539 0.1200 1.1940 313.03 1 1.4330 0.0000 1.4330 1.4330 injection_pressure: Level N Mean Std Min Max ------------------------------------------------------------ 120 4 0.5475 0.4928 0.1200 1.1940 148.901 1 0.8010 0.0000 0.8010 0.8010 21.099 1 0.9280 0.0000 0.9280 0.9280 50 4 0.5590 0.1306 0.4250 0.6760 85 12 0.8829 0.3316 0.5180 1.5000 cooling_time: Level N Mean Std Min Max ------------------------------------------------------------ 1.74258 1 0.5180 0.0000 0.5180 0.5180 10 4 0.6348 0.4170 0.2100 1.1940 20 12 0.9238 0.3073 0.6350 1.5000 30 4 0.4718 0.2616 0.1200 0.6760 38.2574 1 0.7210 0.0000 0.7210 0.7210

Optimization Recommendations

doe optimize
=== Optimization: surface_finish === Direction: maximize Best observed run: #18 melt_temp = 200 injection_pressure = 120 cooling_time = 30 Value: 1.856 RSM Model (linear, R² = 0.0307, Adj R² = -0.1308): Coefficients: intercept +1.3386 melt_temp -0.0271 injection_pressure +0.0434 cooling_time -0.0551 RSM Model (quadratic, R² = 0.2831, Adj R² = -0.2546): Coefficients: intercept +1.3282 melt_temp -0.0271 injection_pressure +0.0434 cooling_time -0.0551 melt_temp*injection_pressure -0.2756 melt_temp*cooling_time -0.0226 injection_pressure*cooling_time -0.0181 melt_temp^2 -0.0389 injection_pressure^2 +0.0302 cooling_time^2 +0.0242 Curvature analysis: melt_temp coef=-0.0389 negligible curvature injection_pressure coef=+0.0302 negligible curvature cooling_time coef=+0.0242 negligible curvature Predicted optimum (from linear model, at observed points): melt_temp = 200 injection_pressure = 120 cooling_time = 10 Predicted value: 1.4642 Surface optimum (via L-BFGS-B, linear model): melt_temp = 200 injection_pressure = 120 cooling_time = 10 Predicted value: 1.4642 Model quality: Weak fit — consider adding center points or using a different design. Factor importance: 1. melt_temp (effect: 0.5, contribution: 38.0%) 2. injection_pressure (effect: 0.4, contribution: 34.4%) 3. cooling_time (effect: 0.4, contribution: 27.6%) === Optimization: dimensional_accuracy === Direction: maximize Best observed run: #17 melt_temp = 240 injection_pressure = 148.901 cooling_time = 20 Value: 99.62 RSM Model (linear, R² = 0.0437, Adj R² = -0.1157): Coefficients: intercept +97.4314 melt_temp -0.0559 injection_pressure +0.2598 cooling_time -0.0487 RSM Model (quadratic, R² = 0.4725, Adj R² = 0.0769): Coefficients: intercept +97.2024 melt_temp -0.0559 injection_pressure +0.2598 cooling_time -0.0487 melt_temp*injection_pressure -0.9575 melt_temp*cooling_time +0.1900 injection_pressure*cooling_time +0.4725 melt_temp^2 +0.0005 injection_pressure^2 +0.1880 cooling_time^2 +0.1550 Curvature analysis: injection_pressure coef=+0.1880 convex (has a minimum) cooling_time coef=+0.1550 convex (has a minimum) melt_temp coef=+0.0005 negligible curvature Notable interactions: melt_temp*injection_pressure coef=-0.9575 (antagonistic) injection_pressure*cooling_time coef=+0.4725 (synergistic) Predicted optimum (from quadratic model, at observed points): melt_temp = 200 injection_pressure = 120 cooling_time = 30 Predicted value: 99.0528 Surface optimum (via L-BFGS-B, quadratic model): melt_temp = 200 injection_pressure = 120 cooling_time = 30 Predicted value: 99.0528 Model quality: Weak fit — consider adding center points or using a different design. Factor importance: 1. injection_pressure (effect: 3.0, contribution: 60.6%) 2. melt_temp (effect: 1.1, contribution: 22.9%) 3. cooling_time (effect: 0.8, contribution: 16.5%) === Optimization: cycle_time === Direction: minimize Best observed run: #16 melt_temp = 280 injection_pressure = 120 cooling_time = 10 Value: 17.8 RSM Model (linear, R² = 0.1291, Adj R² = -0.0160): Coefficients: intercept +34.8864 melt_temp +0.0643 injection_pressure +3.9024 cooling_time +0.8303 RSM Model (quadratic, R² = 0.4390, Adj R² = 0.0183): Coefficients: intercept +33.1798 melt_temp +0.0643 injection_pressure +3.9024 cooling_time +0.8303 melt_temp*injection_pressure -4.2625 melt_temp*cooling_time +1.8875 injection_pressure*cooling_time +6.5375 melt_temp^2 +0.3683 injection_pressure^2 +1.0733 cooling_time^2 +1.1183 Curvature analysis: cooling_time coef=+1.1183 convex (has a minimum) injection_pressure coef=+1.0733 convex (has a minimum) melt_temp coef=+0.3683 convex (has a minimum) Notable interactions: injection_pressure*cooling_time coef=+6.5375 (synergistic) melt_temp*injection_pressure coef=-4.2625 (antagonistic) melt_temp*cooling_time coef=+1.8875 (synergistic) Predicted optimum (from quadratic model, at observed points): melt_temp = 200 injection_pressure = 120 cooling_time = 30 Predicted value: 49.3206 Surface optimum (via L-BFGS-B, quadratic model): melt_temp = 200 injection_pressure = 50 cooling_time = 30 Predicted value: 19.9157 Model quality: Weak fit — consider adding center points or using a different design. Factor importance: 1. injection_pressure (effect: 34.8, contribution: 79.8%) 2. cooling_time (effect: 4.7, contribution: 10.7%) 3. melt_temp (effect: 4.2, contribution: 9.6%) === Optimization: warpage === Direction: minimize Best observed run: #21 melt_temp = 280 injection_pressure = 50 cooling_time = 10 Value: 0.12 RSM Model (linear, R² = 0.0236, Adj R² = -0.1391): Coefficients: intercept +0.7614 melt_temp -0.0084 injection_pressure -0.0633 cooling_time -0.0040 RSM Model (quadratic, R² = 0.3091, Adj R² = -0.2091): Coefficients: intercept +0.8792 melt_temp -0.0084 injection_pressure -0.0633 cooling_time -0.0040 melt_temp*injection_pressure +0.1705 melt_temp*cooling_time -0.1032 injection_pressure*cooling_time -0.1690 melt_temp^2 -0.0692 injection_pressure^2 -0.0552 cooling_time^2 -0.0524 Curvature analysis: melt_temp coef=-0.0692 negligible curvature injection_pressure coef=-0.0552 negligible curvature cooling_time coef=-0.0524 negligible curvature Predicted optimum (from linear model, at observed points): melt_temp = 240 injection_pressure = 21.099 cooling_time = 20 Predicted value: 0.8769 Surface optimum (via L-BFGS-B, linear model): melt_temp = 280 injection_pressure = 120 cooling_time = 30 Predicted value: 0.6856 Model quality: Weak fit — consider adding center points or using a different design. Factor importance: 1. injection_pressure (effect: 1.0, contribution: 76.4%) 2. melt_temp (effect: 0.2, contribution: 14.5%) 3. cooling_time (effect: 0.1, contribution: 9.1%)
← Previous: Essential Oil Therapeutic Blend Next: Wine Tasting Panel →