Worksheets/Week6
Part 1
Case study: Achieve a stability value of 50 days or more, for a new product. We had a full factorial set of experiments in 3 factors:
Factor name | Description | Low value | High value | Type of factor |
---|---|---|---|---|
A | Enzyme strength | 20% | 30% | Numeric factor |
B | Feed concentration | 75% | 85% | Numeric |
C | Mixer type | R | W | Categorical |
We will show what we loose out if we pretend we only did half the experiments. In other words, we actually have 8 experiments, but we will see what happens if we only use 4 of them.
# This is the half-fraction, when C = A*B
A = c(-1, +1, -1, +1)
B = c(-1, -1, +1, +1)
C = A * B
# The response: stability [units=days]
y = ...
model_stability_poshalf
model_stability_poshalf = lm(y ~ A*B*C)
summary(model_stability_poshalf)
# Uncomment this line if you run the code in RStudio
#library(pid)
# Comment these 2 lines if you run this code in RStudio
source('https://yint.org/paretoPlot.R')
source('https://yint.org/contourPlot.R')
paretoPlot(model_stability_poshalf)
# This is the other half-fraction, when C = -A*B
A = c(-1, +1, -1, +1)
B = c(-1, -1, +1, +1)
C = -1 * A * B
# The response: stability [units=days]
y = ...
model_stability_neghalf = lm(y ~ A*B*C)
summary(model_stability_neghalf)
Part 2
Data from a bioreactor experiment is available, were we were investigating four factors:
Factor name | Description | Low value | High value | Type of factor |
---|---|---|---|---|
A | Feed rate | 5 g/min | 8 g/min | Numeric factor |
B | Initial inoculant amount | 300 g | 400 g | Numeric |
C | Feed substrate concentration | 40 g/L | 60 g/L | Numeric |
D | Dissolved oxygen set-point | 4 mg/L | 5 mg/L | Numeric |
See the link full case study, and to help you, there is a table you can fill out.
The 16 experiments from a full factorial, 2^4 = 16, were randomly run, and the yields, y, the outcome variable were given in standard order: [60, 59, 63, 61, 69, 61, 94, 93, 56, 63, 70, 65, 44, 45, 78, 77]
base = c(-1, +1)
design = expand.grid(A=base, B=base, C=base)
A = design$A
B = design$B
C = design$C
D = A * B * C
# These are correct, but confirm that you can find these 8 runs yourself:
y = c(60, 63, 70, 61, 44, 61, 94, 77)
model_bio = lm(y ~ A*B*C*D)
summary(model_bio)
# Uncomment this line if you run the code in RStudio
#library(pid)
# Comment these 2 lines if you run this code in RStudio
source('https://yint.org/paretoPlot.R')
source('https://yint.org/contourPlot.R')
paretoPlot(model_bio)