← All Use Cases
🎨
Taguchi Orthogonal Array

Ceramic Glaze Firing Optimization

Taguchi orthogonal array with mixed-level factors for ceramic glaze quality

Summary

This experiment investigates ceramic glaze firing optimization. Taguchi orthogonal array with mixed-level factors for ceramic glaze quality.

The design varies 5 factors: clay type, ranging from porcelain to earthenware, glaze thickness, ranging from thin to thick, peak temperature (°C), ranging from 1100 to 1250, hold time (min), ranging from 30 to 90, and cooling rate, ranging from slow to fast. The goal is to optimize 2 responses: surface smoothness (score) (maximize) and color accuracy (deltaE) (minimize). Fixed conditions held constant across all runs include kiln type = electric.

The Taguchi Orthogonal Array produces 16 experimental runs.

Key Findings

For surface smoothness, the most influential factors were glaze thickness (33.0%), hold time (27.7%), peak temperature (20.7%). The best observed value was 86.91 (at clay type = porcelain, glaze thickness = thin, peak temperature = 1100).

For color accuracy, the most influential factors were hold time (32.9%), glaze thickness (21.9%), cooling rate (21.1%). The best observed value was 4.46 (at clay type = porcelain, glaze thickness = thin, peak temperature = 1250).

Recommended Next Steps

Experimental Setup

Factors

FactorLowHighUnit
clay_typeporcelainearthenware
glaze_thicknessthinthick
peak_temperature11001250°C
hold_time3090min
cooling_rateslowfast

Fixed: kiln_type = electric

Responses

ResponseDirectionUnit
surface_smoothness↑ maximizescore
color_accuracy↓ minimizedeltaE

Configuration

use_cases/302_ceramic_glaze_firing/config.json
{ "metadata": { "name": "Ceramic Glaze Firing Optimization", "description": "Taguchi orthogonal array with mixed-level factors for ceramic glaze quality" }, "factors": [ { "name": "clay_type", "levels": [ "porcelain", "stoneware", "earthenware" ], "type": "categorical", "unit": "" }, { "name": "glaze_thickness", "levels": [ "thin", "medium", "thick" ], "type": "ordinal", "unit": "" }, { "name": "peak_temperature", "levels": [ "1100", "1250" ], "type": "continuous", "unit": "\u00b0C" }, { "name": "hold_time", "levels": [ "30", "60", "90" ], "type": "continuous", "unit": "min" }, { "name": "cooling_rate", "levels": [ "slow", "fast" ], "type": "categorical", "unit": "" } ], "fixed_factors": { "kiln_type": "electric" }, "responses": [ { "name": "surface_smoothness", "optimize": "maximize", "unit": "score" }, { "name": "color_accuracy", "optimize": "minimize", "unit": "deltaE" } ], "settings": { "operation": "taguchi", "test_script": "use_cases/302_ceramic_glaze_firing/sim.sh" } }

Experimental Matrix

The Taguchi Orthogonal Array produces 16 runs. Each row is one experiment with specific factor settings.

Runclay_typeglaze_thicknesspeak_temperaturehold_timecooling_rate
1stonewarethin110060slow
2earthenwaremedium125090slow
3stonewaremedium110030slow
4stonewarethick125030fast
5porcelainthick125030slow
6earthenwarethick110060fast
7porcelainthin125060slow
8earthenwarethin110030fast
9porcelainmedium125060fast
10porcelainthick110090slow
11porcelainmedium110030fast
12porcelainthin110090fast
13stonewarethin125090fast
14earthenwarethin125030slow
15porcelainthin110030slow
16porcelainthin125030fast

Step-by-Step Workflow

1

Preview the design

Terminal
$ doe info --config use_cases/302_ceramic_glaze_firing/config.json
2

Generate the runner script

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

Execute the experiments

Terminal
$ bash use_cases/302_ceramic_glaze_firing/results/run.sh
4

Analyze results

Terminal
$ doe analyze --config use_cases/302_ceramic_glaze_firing/config.json
5

Get optimization recommendations

Terminal
$ doe optimize --config use_cases/302_ceramic_glaze_firing/config.json
6

Multi-objective optimization

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

Terminal
$ doe optimize --config use_cases/302_ceramic_glaze_firing/config.json --multi
7

Generate the HTML report

Terminal
$ doe report --config use_cases/302_ceramic_glaze_firing/config.json \ --output use_cases/302_ceramic_glaze_firing/results/report.html

Features Exercised

FeatureValue
Design typetaguchi
Factor typescontinuous (2), categorical (2)
Arg styledouble-dash
Responses2 (surface_smoothness ↑, color_accuracy ↓)
Total runs16

Analysis Results

Generated from actual experiment runs using the DOE Helper Tool.

Response: surface_smoothness

Top factors: glaze_thickness (33.0%), hold_time (27.7%), peak_temperature (20.7%).

ANOVA

SourceDFSSMSFp-value
SourceDFSSMSFp-value
clay_type2189.424894.71243.0010.1249
glaze_thickness2725.7416362.870811.4990.0089
peak_temperature1395.1150395.115012.5210.0122
hold_time2376.2926188.14635.9620.0375
cooling_rate12.84772.84770.0900.7740
peak_temperature*cooling_rate1121.2752121.27523.8430.0976
Error6189.336931.5561
Total152000.0337133.3356

Response: color_accuracy

Top factors: hold_time (32.9%), glaze_thickness (21.9%), cooling_rate (21.1%).

ANOVA

SourceDFSSMSFp-value
SourceDFSSMSFp-value
clay_type20.69330.34670.0550.9470
glaze_thickness24.52822.26410.3590.7126
peak_temperature13.44103.44100.5450.4881
hold_time213.06436.53221.0350.4110
cooling_rate16.96966.96961.1040.3338
peak_temperature*cooling_rate11.45201.45200.2300.6484
Error637.86466.3108
Total1568.01314.5342

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.7417

Per-Response Desirability

ResponseWeightDesirabilityPredictedDir
surface_smoothness 1.0
0.5081
66.47 0.5081 66.47 score
color_accuracy 1.5
0.9545
4.46 0.9545 4.46 deltaE

Recommended Settings

FactorValue
clay_typeearthenware
glaze_thicknessthin
peak_temperature1100 °C
hold_time30 min
cooling_ratefast

Source: from observed run #10

Trade-off Summary

Sacrifice = how much worse than single-objective best.

ResponsePredictedBest ObservedSacrifice
color_accuracy4.464.46+0.00

Top 3 Runs by Desirability

RunDFactor Settings
#70.7143clay_type=porcelain, glaze_thickness=thin, peak_temperature=1250, hold_time=60, cooling_rate=slow
#50.6669clay_type=stoneware, glaze_thickness=medium, peak_temperature=1100, hold_time=30, cooling_rate=slow

Model Quality

ResponseType
color_accuracy0.3525linear

Full Multi-Objective Output

doe optimize --multi
============================================================ MULTI-OBJECTIVE OPTIMIZATION Method: Derringer-Suich Desirability Function ============================================================ Overall desirability: D = 0.7417 Response Weight Desirability Predicted Direction --------------------------------------------------------------------- surface_smoothness 1.0 0.5081 66.47 score ↑ color_accuracy 1.5 0.9545 4.46 deltaE ↓ Recommended settings: clay_type = earthenware glaze_thickness = thin peak_temperature = 1100 °C hold_time = 30 min cooling_rate = fast (from observed run #10) Trade-off summary: surface_smoothness: 66.47 (best observed: 86.91, sacrifice: +20.44) color_accuracy: 4.46 (best observed: 4.46, sacrifice: +0.00) Model quality: surface_smoothness: R² = 0.4908 (linear) color_accuracy: R² = 0.3525 (linear) Top 3 observed runs by overall desirability: 1. Run #10 (D=0.7417): clay_type=earthenware, glaze_thickness=thin, peak_temperature=1100, hold_time=30, cooling_rate=fast 2. Run #7 (D=0.7143): clay_type=porcelain, glaze_thickness=thin, peak_temperature=1250, hold_time=60, cooling_rate=slow 3. Run #5 (D=0.6669): clay_type=stoneware, glaze_thickness=medium, peak_temperature=1100, hold_time=30, cooling_rate=slow

Full Analysis Output

doe analyze
=== Main Effects: surface_smoothness === Factor Effect Std Error % Contribution -------------------------------------------------------------- glaze_thickness 15.8550 2.8868 33.0% hold_time 13.3075 2.8868 27.7% peak_temperature -9.9388 2.8868 20.7% clay_type 8.1450 2.8868 16.9% cooling_rate 0.8438 2.8868 1.8% === ANOVA Table: surface_smoothness === Source DF SS MS F p-value ----------------------------------------------------------------------------- clay_type 2 189.4248 94.7124 3.001 0.1249 glaze_thickness 2 725.7416 362.8708 11.499 0.0089 peak_temperature 1 395.1150 395.1150 12.521 0.0122 hold_time 2 376.2926 188.1463 5.962 0.0375 cooling_rate 1 2.8477 2.8477 0.090 0.7740 peak_temperature*cooling_rate 1 121.2752 121.2752 3.843 0.0976 Error 6 189.3369 31.5561 Total 15 2000.0337 133.3356 === Interaction Effects: surface_smoothness === Factor A Factor B Interaction % Contribution ------------------------------------------------------------------------ peak_temperature cooling_rate 5.5063 100.0% === Summary Statistics: surface_smoothness === clay_type: Level N Mean Std Min Max ------------------------------------------------------------ earthenware 4 73.6375 11.6386 62.7400 86.9100 porcelain 8 65.4925 13.0390 45.2900 85.6800 stoneware 4 66.1650 8.4486 59.8400 78.3700 glaze_thickness: Level N Mean Std Min Max ------------------------------------------------------------ medium 4 79.3575 9.3822 66.4700 86.9100 thick 4 63.5025 3.6233 61.2000 68.8300 thin 8 63.9637 11.7767 45.2900 79.8200 peak_temperature: Level N Mean Std Min Max ------------------------------------------------------------ 1100 8 72.6663 8.7369 59.8400 85.6800 1250 8 62.7275 12.3669 45.2900 86.9100 hold_time: Level N Mean Std Min Max ------------------------------------------------------------ 30 8 68.8725 13.1456 45.2900 85.6800 60 4 59.8675 6.8581 50.4200 66.4700 90 4 73.1750 9.5394 65.2100 86.9100 cooling_rate: Level N Mean Std Min Max ------------------------------------------------------------ fast 8 67.2750 12.3137 45.2900 85.6800 slow 8 68.1188 11.5623 50.4200 86.9100 === Main Effects: color_accuracy === Factor Effect Std Error % Contribution -------------------------------------------------------------- hold_time 2.0600 0.5323 32.9% glaze_thickness 1.3700 0.5323 21.9% cooling_rate 1.3200 0.5323 21.1% peak_temperature -0.9275 0.5323 14.8% clay_type 0.5875 0.5323 9.4% === ANOVA Table: color_accuracy === Source DF SS MS F p-value ----------------------------------------------------------------------------- clay_type 2 0.6933 0.3467 0.055 0.9470 glaze_thickness 2 4.5282 2.2641 0.359 0.7126 peak_temperature 1 3.4410 3.4410 0.545 0.4881 hold_time 2 13.0643 6.5322 1.035 0.4110 cooling_rate 1 6.9696 6.9696 1.104 0.3338 peak_temperature*cooling_rate 1 1.4520 1.4520 0.230 0.6484 Error 6 37.8646 6.3108 Total 15 68.0131 4.5342 === Interaction Effects: color_accuracy === Factor A Factor B Interaction % Contribution ------------------------------------------------------------------------ peak_temperature cooling_rate -0.6025 100.0% === Summary Statistics: color_accuracy === clay_type: Level N Mean Std Min Max ------------------------------------------------------------ earthenware 4 9.4575 1.7940 7.9000 11.2000 porcelain 8 9.7238 2.5640 4.4600 13.0600 stoneware 4 10.0450 1.9702 9.0400 13.0000 glaze_thickness: Level N Mean Std Min Max ------------------------------------------------------------ medium 4 8.8325 3.5855 4.4600 13.0000 thick 4 10.2025 1.0820 9.1000 11.4000 thin 8 9.9575 1.7487 7.9000 13.0600 peak_temperature: Level N Mean Std Min Max ------------------------------------------------------------ 1100 8 10.2012 1.7312 7.9000 13.0000 1250 8 9.2737 2.4955 4.4600 13.0600 hold_time: Level N Mean Std Min Max ------------------------------------------------------------ 30 8 10.6150 1.8406 7.9000 13.0600 60 4 8.5550 2.8240 4.4600 10.8100 90 4 9.1650 1.5609 7.9200 11.4000 cooling_rate: Level N Mean Std Min Max ------------------------------------------------------------ fast 8 9.0775 2.4767 4.4600 13.0600 slow 8 10.3975 1.6083 7.9200 13.0000

Optimization Recommendations

doe optimize
=== Optimization: surface_smoothness === Direction: maximize Best observed run: #7 clay_type = porcelain glaze_thickness = thin peak_temperature = 1100 hold_time = 30 cooling_rate = slow Value: 86.91 RSM Model (linear, R² = 0.1937, Adj R² = -0.2095): Coefficients: intercept +68.1761 clay_type -2.2088 glaze_thickness +1.9202 peak_temperature -0.7744 hold_time +3.8370 cooling_rate +2.9181 Predicted optimum (from linear model, at observed points): clay_type = porcelain glaze_thickness = thick peak_temperature = 1100 hold_time = 90 cooling_rate = slow Predicted value: 75.7056 Surface optimum (via L-BFGS-B, linear model): clay_type = porcelain glaze_thickness = 1.0000 peak_temperature = 1100 hold_time = 60 cooling_rate = fast Predicted value: 79.8346 Model quality: Weak fit — consider adding center points or using a different design. Factor importance: 1. glaze_thickness (effect: 11.9, contribution: 34.3%) 2. hold_time (effect: 11.0, contribution: 31.7%) 3. cooling_rate (effect: 5.8, contribution: 16.8%) 4. clay_type (effect: 4.4, contribution: 12.7%) 5. peak_temperature (effect: -1.5, contribution: 4.5%) === Optimization: color_accuracy === Direction: minimize Best observed run: #10 clay_type = porcelain glaze_thickness = thin peak_temperature = 1250 hold_time = 60 cooling_rate = slow Value: 4.46 RSM Model (linear, R² = 0.4404, Adj R² = 0.1605): Coefficients: intercept +9.9327 clay_type +0.6212 glaze_thickness -1.1718 peak_temperature -0.2962 hold_time -0.3909 cooling_rate -0.7362 Predicted optimum (from linear model, at observed points): clay_type = porcelain glaze_thickness = medium peak_temperature = 1100 hold_time = 30 cooling_rate = fast Predicted value: 12.5280 Surface optimum (via L-BFGS-B, linear model): clay_type = porcelain glaze_thickness = 1.0000 peak_temperature = 1250 hold_time = 60 cooling_rate = fast Predicted value: 6.7163 Model quality: Weak fit — consider adding center points or using a different design. Factor importance: 1. glaze_thickness (effect: 2.2, contribution: 31.0%) 2. clay_type (effect: 1.6, contribution: 23.0%) 3. cooling_rate (effect: -1.5, contribution: 20.7%) 4. hold_time (effect: 1.2, contribution: 16.9%) 5. peak_temperature (effect: -0.6, contribution: 8.3%)
← Previous: Laser Cutting Parameter Optimization Next: Pharmaceutical Tablet Compression →