← All Use Cases
Central Composite Design

Party Planning Optimization

Central composite design to maximize guest satisfaction and minimize cost per person by tuning venue size, food budget ratio, and entertainment hours

Summary

This experiment investigates party planning optimization. Central composite design to maximize guest satisfaction and minimize cost per person by tuning venue size, food budget ratio, and entertainment hours.

The design varies 3 factors: sqft per guest (sqft), ranging from 15 to 40, food budget pct (%), ranging from 30 to 60, and entertainment hrs (hrs), ranging from 1 to 4. The goal is to optimize 2 responses: satisfaction (pts) (maximize) and cost per person (USD) (minimize). Fixed conditions held constant across all runs include guests = 50, event type = birthday.

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 satisfaction, the most influential factors were food budget pct (44.0%), entertainment hrs (39.3%), sqft per guest (16.7%). The best observed value was 7.8 (at sqft per guest = 27.5, food budget pct = 45, entertainment hrs = -0.238613).

For cost per person, the most influential factors were food budget pct (37.6%), sqft per guest (32.8%), entertainment hrs (29.6%). The best observed value was 25.0 (at sqft per guest = 40, food budget pct = 30, entertainment hrs = 4).

Recommended Next Steps

Experimental Setup

Factors

FactorLowHighUnit
sqft_per_guest1540sqft
food_budget_pct3060%
entertainment_hrs14hrs

Fixed: guests = 50, event_type = birthday

Responses

ResponseDirectionUnit
satisfaction↑ maximizepts
cost_per_person↓ minimizeUSD

Configuration

use_cases/198_party_planning/config.json
{ "metadata": { "name": "Party Planning Optimization", "description": "Central composite design to maximize guest satisfaction and minimize cost per person by tuning venue size, food budget ratio, and entertainment hours" }, "factors": [ { "name": "sqft_per_guest", "levels": [ "15", "40" ], "type": "continuous", "unit": "sqft" }, { "name": "food_budget_pct", "levels": [ "30", "60" ], "type": "continuous", "unit": "%" }, { "name": "entertainment_hrs", "levels": [ "1", "4" ], "type": "continuous", "unit": "hrs" } ], "fixed_factors": { "guests": "50", "event_type": "birthday" }, "responses": [ { "name": "satisfaction", "optimize": "maximize", "unit": "pts" }, { "name": "cost_per_person", "optimize": "minimize", "unit": "USD" } ], "settings": { "operation": "central_composite", "test_script": "use_cases/198_party_planning/sim.sh" } }

Experimental Matrix

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

Runsqft_per_guestfood_budget_pctentertainment_hrs
127.5452.5
240304
315601
427.572.38612.5
527.5452.5
64.67823452.5
727.545-0.238613
827.5452.5
940601
1050.3218452.5
1127.5452.5
1227.517.61392.5
1327.5452.5
1415304
1527.5452.5
1640301
1727.5455.23861
1840604
1927.5452.5
2015301
2115604
2227.5452.5

Step-by-Step Workflow

1

Preview the design

Terminal
$ doe info --config use_cases/198_party_planning/config.json
2

Generate the runner script

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

Execute the experiments

Terminal
$ bash use_cases/198_party_planning/results/run.sh
4

Analyze results

Terminal
$ doe analyze --config use_cases/198_party_planning/config.json
5

Get optimization recommendations

Terminal
$ doe optimize --config use_cases/198_party_planning/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/198_party_planning/config.json --multi
7

Generate the HTML report

Terminal
$ doe report --config use_cases/198_party_planning/config.json \ --output use_cases/198_party_planning/results/report.html

Features Exercised

FeatureValue
Design typecentral_composite
Factor typescontinuous (all 3)
Arg styledouble-dash
Responses2 (satisfaction ↑, cost_per_person ↓)
Total runs22

Analysis Results

Generated from actual experiment runs using the DOE Helper Tool.

Response: satisfaction

Top factors: food_budget_pct (44.0%), entertainment_hrs (39.3%), sqft_per_guest (16.7%).

ANOVA

SourceDFSSMSFp-value
SourceDFSSMSFp-value
sqft_per_guest43.23580.80900.3890.8112
food_budget_pct48.66252.16561.0430.4371
entertainment_hrs46.57581.64400.7910.5593
LackofFit21.54580.7729
PureError714.5400
Error916.08582.0771
Total2134.56001.6457

Pareto Chart

Pareto chart for satisfaction

Main Effects Plot

Main effects plot for satisfaction

Normal Probability Plot of Effects

Normal probability plot for satisfaction

Half-Normal Plot of Effects

Half-normal plot for satisfaction

Model Diagnostics

Model diagnostics for satisfaction

Response: cost_per_person

Top factors: food_budget_pct (37.6%), sqft_per_guest (32.8%), entertainment_hrs (29.6%).

ANOVA

SourceDFSSMSFp-value
SourceDFSSMSFp-value
sqft_per_guest4445.1742111.29361.0920.4165
food_budget_pct4400.9242100.23110.9830.4633
entertainment_hrs4241.924260.48110.5930.6763
LackofFit2255.0682127.5341
PureError7713.5000
Error9968.5682101.9286
Total212056.590997.9329

Pareto Chart

Pareto chart for cost_per_person

Main Effects Plot

Main effects plot for cost_per_person

Normal Probability Plot of Effects

Normal probability plot for cost_per_person

Half-Normal Plot of Effects

Half-normal plot for cost_per_person

Model Diagnostics

Model diagnostics for cost_per_person

Response Surface Plots

3D surfaces fitted with quadratic RSM. Red dots are observed data points.

cost per person food budget pct vs entertainment hrs

RSM surface: cost per person food budget pct vs entertainment hrs

cost per person sqft per guest vs entertainment hrs

RSM surface: cost per person sqft per guest vs entertainment hrs

cost per person sqft per guest vs food budget pct

RSM surface: cost per person sqft per guest vs food budget pct

satisfaction food budget pct vs entertainment hrs

RSM surface: satisfaction food budget pct vs entertainment hrs

satisfaction sqft per guest vs entertainment hrs

RSM surface: satisfaction sqft per guest vs entertainment hrs

satisfaction sqft per guest vs food budget pct

RSM surface: satisfaction sqft per guest vs food budget pct

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

Per-Response Desirability

ResponseWeightDesirabilityPredictedDir
satisfaction 1.5
0.7418
6.70 0.7418 6.70 pts
cost_per_person 1.0
0.6435
38.00 0.6435 38.00 USD

Recommended Settings

FactorValue
sqft_per_guest27.5 sqft
food_budget_pct45 %
entertainment_hrs2.5 hrs

Source: from observed run #5

Trade-off Summary

Sacrifice = how much worse than single-objective best.

ResponsePredictedBest ObservedSacrifice
cost_per_person38.0025.00+13.00

Top 3 Runs by Desirability

RunDFactor Settings
#80.7008sqft_per_guest=40, food_budget_pct=30, entertainment_hrs=1
#130.6684sqft_per_guest=4.67823, food_budget_pct=45, entertainment_hrs=2.5

Model Quality

ResponseType
cost_per_person0.6310quadratic

Full Multi-Objective Output

doe optimize --multi
============================================================ MULTI-OBJECTIVE OPTIMIZATION Method: Derringer-Suich Desirability Function ============================================================ Overall desirability: D = 0.7008 Response Weight Desirability Predicted Direction --------------------------------------------------------------------- satisfaction 1.5 0.7418 6.70 pts ↑ cost_per_person 1.0 0.6435 38.00 USD ↓ Recommended settings: sqft_per_guest = 27.5 sqft food_budget_pct = 45 % entertainment_hrs = 2.5 hrs (from observed run #5) Trade-off summary: satisfaction: 6.70 (best observed: 7.80, sacrifice: +1.10) cost_per_person: 38.00 (best observed: 25.00, sacrifice: +13.00) Model quality: satisfaction: R² = 0.6453 (quadratic) cost_per_person: R² = 0.6310 (quadratic) Top 3 observed runs by overall desirability: 1. Run #5 (D=0.7008): sqft_per_guest=27.5, food_budget_pct=45, entertainment_hrs=2.5 2. Run #8 (D=0.7008): sqft_per_guest=40, food_budget_pct=30, entertainment_hrs=1 3. Run #13 (D=0.6684): sqft_per_guest=4.67823, food_budget_pct=45, entertainment_hrs=2.5

Full Analysis Output

doe analyze
=== Main Effects: satisfaction === Factor Effect Std Error % Contribution -------------------------------------------------------------- food_budget_pct 3.2500 0.2735 44.0% entertainment_hrs 2.9000 0.2735 39.3% sqft_per_guest 1.2333 0.2735 16.7% === ANOVA Table: satisfaction === Source DF SS MS F p-value ----------------------------------------------------------------------------- sqft_per_guest 4 3.2358 0.8090 0.389 0.8112 food_budget_pct 4 8.6625 2.1656 1.043 0.4371 entertainment_hrs 4 6.5758 1.6440 0.791 0.5593 Lack of Fit 2 1.5458 0.7729 0.372 0.7021 Pure Error 7 14.5400 2.0771 Error 9 16.0858 2.0771 Total 21 34.5600 1.6457 === Summary Statistics: satisfaction === sqft_per_guest: Level N Mean Std Min Max ------------------------------------------------------------ 15 4 6.1750 0.9777 4.8000 7.1000 27.5 12 5.4667 1.5341 3.1000 7.8000 4.67823 1 6.0000 0.0000 6.0000 6.0000 40 4 6.1500 0.9256 4.8000 6.8000 50.3218 1 6.7000 0.0000 6.7000 6.7000 food_budget_pct: Level N Mean Std Min Max ------------------------------------------------------------ 17.6139 1 3.1000 0.0000 3.1000 3.1000 30 4 6.3500 1.0472 4.8000 7.1000 45 12 5.8000 1.3731 3.6000 7.8000 60 4 5.9750 0.7890 4.8000 6.5000 72.3861 1 5.6000 0.0000 5.6000 5.6000 entertainment_hrs: Level N Mean Std Min Max ------------------------------------------------------------ -0.238613 1 3.6000 0.0000 3.6000 3.6000 1 4 6.2250 1.0046 4.8000 7.1000 2.5 12 5.6833 1.4326 3.1000 7.8000 4 4 6.1000 0.8907 4.8000 6.8000 5.23861 1 6.5000 0.0000 6.5000 6.5000 === Main Effects: cost_per_person === Factor Effect Std Error % Contribution -------------------------------------------------------------- food_budget_pct 21.0000 2.1099 37.6% sqft_per_guest 18.3333 2.1099 32.8% entertainment_hrs 16.5000 2.1099 29.6% === ANOVA Table: cost_per_person === Source DF SS MS F p-value ----------------------------------------------------------------------------- sqft_per_guest 4 445.1742 111.2936 1.092 0.4165 food_budget_pct 4 400.9242 100.2311 0.983 0.4633 entertainment_hrs 4 241.9242 60.4811 0.593 0.6763 Lack of Fit 2 255.0682 127.5341 1.251 0.3431 Pure Error 7 713.5000 101.9286 Error 9 968.5682 101.9286 Total 21 2056.5909 97.9329 === Summary Statistics: cost_per_person === sqft_per_guest: Level N Mean Std Min Max ------------------------------------------------------------ 15 4 44.2500 11.3541 36.0000 61.0000 27.5 12 39.6667 10.1742 25.0000 63.0000 4.67823 1 52.0000 0.0000 52.0000 52.0000 40 4 41.0000 5.3541 38.0000 49.0000 50.3218 1 58.0000 0.0000 58.0000 58.0000 food_budget_pct: Level N Mean Std Min Max ------------------------------------------------------------ 17.6139 1 25.0000 0.0000 25.0000 25.0000 30 4 46.0000 11.5181 36.0000 61.0000 45 12 43.0833 10.6725 28.0000 63.0000 60 4 39.2500 1.2583 38.0000 41.0000 72.3861 1 44.0000 0.0000 44.0000 44.0000 entertainment_hrs: Level N Mean Std Min Max ------------------------------------------------------------ -0.238613 1 28.0000 0.0000 28.0000 28.0000 1 4 44.5000 11.0905 38.0000 61.0000 2.5 12 43.0833 11.0738 25.0000 63.0000 4 4 40.7500 5.6789 36.0000 49.0000 5.23861 1 41.0000 0.0000 41.0000 41.0000

Optimization Recommendations

doe optimize
=== Optimization: satisfaction === Direction: maximize Best observed run: #18 sqft_per_guest = 27.5 food_budget_pct = 45 entertainment_hrs = -0.238613 Value: 7.8 RSM Model (linear, R² = 0.2308, Adj R² = 0.1026): Coefficients: intercept +5.8000 sqft_per_guest -0.0771 food_budget_pct -0.0136 entertainment_hrs -0.7333 RSM Model (quadratic, R² = 0.6828, Adj R² = 0.4449): Coefficients: intercept +6.0079 sqft_per_guest -0.0771 food_budget_pct -0.0136 entertainment_hrs -0.7333 sqft_per_guest*food_budget_pct +0.1250 sqft_per_guest*entertainment_hrs -0.2500 food_budget_pct*entertainment_hrs +1.3250 sqft_per_guest^2 -0.0489 food_budget_pct^2 -0.0489 entertainment_hrs^2 -0.2139 Curvature analysis: entertainment_hrs coef=-0.2139 concave (has a maximum) food_budget_pct coef=-0.0489 negligible curvature sqft_per_guest coef=-0.0489 negligible curvature Notable interactions: food_budget_pct*entertainment_hrs coef=+1.3250 (synergistic) Predicted optimum (from quadratic model, at observed points): sqft_per_guest = 40 food_budget_pct = 30 entertainment_hrs = 1 Predicted value: 7.8159 Surface optimum (via L-BFGS-B, quadratic model): sqft_per_guest = 33.6207 food_budget_pct = 30 entertainment_hrs = 1 Predicted value: 7.8287 Model quality: Moderate fit — use predictions directionally, not precisely. Factor importance: 1. entertainment_hrs (effect: 3.7, contribution: 55.4%) 2. sqft_per_guest (effect: 1.6, contribution: 24.0%) 3. food_budget_pct (effect: 1.4, contribution: 20.6%) === Optimization: cost_per_person === Direction: minimize Best observed run: #20 sqft_per_guest = 40 food_budget_pct = 30 entertainment_hrs = 4 Value: 25.0 RSM Model (linear, R² = 0.3185, Adj R² = 0.2049): Coefficients: intercept +42.1364 sqft_per_guest -2.2526 food_budget_pct -0.8301 entertainment_hrs -6.2365 RSM Model (quadratic, R² = 0.7608, Adj R² = 0.5815): Coefficients: intercept +41.3206 sqft_per_guest -2.2526 food_budget_pct -0.8301 entertainment_hrs -6.2365 sqft_per_guest*food_budget_pct +3.0000 sqft_per_guest*entertainment_hrs +0.7500 food_budget_pct*entertainment_hrs +9.2500 sqft_per_guest^2 +1.3579 food_budget_pct^2 -1.6421 entertainment_hrs^2 +1.5079 Curvature analysis: food_budget_pct coef=-1.6421 concave (has a maximum) entertainment_hrs coef=+1.5079 convex (has a minimum) sqft_per_guest coef=+1.3579 convex (has a minimum) Notable interactions: food_budget_pct*entertainment_hrs coef=+9.2500 (synergistic) sqft_per_guest*food_budget_pct coef=+3.0000 (synergistic) sqft_per_guest*entertainment_hrs coef=+0.7500 (synergistic) Predicted optimum (from quadratic model, at observed points): sqft_per_guest = 15 food_budget_pct = 30 entertainment_hrs = 1 Predicted value: 64.8634 Surface optimum (via L-BFGS-B, quadratic model): sqft_per_guest = 40 food_budget_pct = 30 entertainment_hrs = 4 Predicted value: 23.3852 Model quality: Good fit — general trends are captured, some noise remains. Factor importance: 1. entertainment_hrs (effect: 29.0, contribution: 53.4%) 2. sqft_per_guest (effect: 18.8, contribution: 34.5%) 3. food_budget_pct (effect: 6.6, contribution: 12.1%)
← Previous: Moving Day Logistics Next: Wood Glue Joint Strength →