En statistik försöksplan måste innehålla åtminstone två nivåer på en försöksvariabel (X), annars kan man inte göra en jämförelse av variabelns inverkan på mätresultatet (Y).
Den vanligaste försöksplanen innehåller två nivåer och en plan för tre X-variabler innehåller då minst åtta mätvärden om huvud- och alla samspelseffekter skall analyseras (2^3 = 8).
Men antag att man vill utvärdera t.ex. sex variabler vilket leder till 2^6 = 64 olika inställningar vilket alltså ger 64 mätresultat. Detta är i de flesta fall en ganska omöjlig plan att administrera och övervaka.
Det är dock möjligt att reducera detta utan att förlora någon större mängd information, mer om det nedan. (Ordet ‘faktor’ används internationellt synonymt med ‘försöksvariabel’, ‘obereoende variabel’, etc.)


Något om reducering. Nedan visar försöksplanen för ett 2-faktorförsök med tre variabler (A-C) där låg- respektive hög nivå är i standardformat (-1, 1). (Bara de fyra första raderna visas):

   A   B   C   AB   AC … ABC
  -1  -1  -1   1    1   -1
   1  -1  -1  -1   -1    1
  -1   1  -1  -1    1    1
   1   1  -1   1   -1   -1
   .   .   .   .    .    .

I försöksplanen finns det alltså en kolumn för varje X-variabel men också en kolumn för varje samspelseffekt. Dessa kolumner visas dock aldrig utan hanteras av datorprogrammet internt.
Men i allmänhet anses samspelseffekter mellan tre eller fler variabler inte existera. Eller om de existerar är effekterna så små att de inte lyser igenom i analysen. Detta kan nu utnyttjas så att en fjärde förklaringsvariabel (D) kan nu läggas till och då ha låg- och hög-inställningarna enligt kolumn ABC. Alltså får man en försöksplan med fyra variabler i endast åtta mätningar.
Denna sammanblandning mellan försöksvariabel D och samspelet ABC kallas på engelska för ‘confounding’ eller ‘aliasing’. Naturligtvis är man intresserad av hur denna sammanblandning ser ut i en vald försöksplan, detta visas längre ned.


Skärmdumpen visar en försöksplan med sju faktorer (A-G) på två nivåer. Det finns 128 rutor (mätningar) men endast 64 är ifyllda. Exemplet är alltså en ‘halvfraktion’ och det syns tydligt att de mätningar som inte utförs ligger i en viss struktur (denna struktur är egentligen inte intressant, visas bara som en illustration). I denna simulering har data skapats med funktionen i överkant - endast variabel A påverkar Y.


























Illustration av sammanblandning. FrF2-kommandot skapar en försöksplan med nruns = 16 rader och nfactors = 6 faktorer (A-F) i icke-slumpmässig ordning. För att visa en tabell över sammanblandningar behöver programmet en y-kolumn som indata och skapas här som 16 slumptal i intervallet [0, 1] (En dylik försöksplan används i punkt “2. Reducering av exempel 1 - 16 mätningar (1/4)” nedan):

library(FrF2)                                                        # Funktioner för att skapa försöksplaner.
minPlan <- FrF2(nruns = 16, nfactors = 6, randomize = FALSE)         # Lagrar planen i 'minPlan'.
minPlan                                                              # Skriver ut försöksplanen.
##     A  B  C  D  E  F
## 1  -1 -1 -1 -1 -1 -1
## 2   1 -1 -1 -1  1  1
## 3  -1  1 -1 -1  1  1
## 4   1  1 -1 -1 -1 -1
## 5  -1 -1  1 -1  1 -1
## 6   1 -1  1 -1 -1  1
## 7  -1  1  1 -1 -1  1
## 8   1  1  1 -1  1 -1
## 9  -1 -1 -1  1 -1  1
## 10  1 -1 -1  1  1 -1
## 11 -1  1 -1  1  1 -1
## 12  1  1 -1  1 -1  1
## 13 -1 -1  1  1  1  1
## 14  1 -1  1  1 -1 -1
## 15 -1  1  1  1 -1 -1
## 16  1  1  1  1  1  1
## class=design, type= FrF2
y <- runif(16, 0, 1)                                                 # Skapar en slumpkolumn.
aliases(lm(y ~ (.)^4, data = minPlan))                               # '4' är 'ange t.o.m. 4-faktorsamspel'.
##                               
##  A = B:C:E = B:D:F            
##  B = A:D:F = A:C:E            
##  C = D:E:F = A:B:E            
##  D = C:E:F = A:B:F            
##  E = C:D:F = A:B:C            
##  F = C:D:E = A:B:D            
##  A:B = C:E = D:F              
##  A:C = A:D:E:F = B:C:D:F = B:E
##  A:D = A:C:E:F = B:C:D:E = B:F
##  A:E = A:C:D:F = B:D:E:F = B:C
##  A:F = A:C:D:E = B:C:E:F = B:D
##  C:D = A:B:C:F = A:B:D:E = E:F
##  C:F = A:B:C:D = A:B:E:F = D:E
##  A:C:D = A:E:F = B:C:F = B:D:E
##  A:C:F = A:D:E = B:C:D = B:E:F

I ‘minPlan’ ser man att kolumnerna A-D är kodade i ‘standardordning’ medan kolumnerna E och F är i en annan ordning. Dessa 16 rader är alltså de 16 olika inställningarna av processen men skall göras i slumpmässig ordning (kommandot randomize = TRUE ger en slumpmässig ordning).
Kommandot ‘aliases’ ger en lista över alla sammanblandningar. Det framgår att samtliga huvudeffekter (A-F) är ‘confounded’ med 3-faktorsamspel. (‘E = C:D:F = A:B:C’ betyder att variabel E erhålles vid radvis multiplikation av ABC och variabel F vid radvis multiplikation av ABD).
Man ser också att samspelet AB inte kan skiljas från samspelet CE eller DF. Alla dessa samanblandningar är priset då man väljer att genomföra bara 16 av 128 mätningar, dvs en åttondel. Ett alternativ är att göra en 1/4-fraktion dvs 32 mätvärden. Då försvinner dessa problem (visas inte här).


Två analyser:


   1. Ett verkligt fall - sex förklaringsvariabler, 64 olika mätningar

   2. Reducering av exempel 1 - 16 mätningar (1/4)





 1. Ett verkligt fall - sex förklaringsvariabler, 64 olika mätningar

Vid tillverkning av s.k. tryckta kretsar (PCB, Printed Circuit Board) skall mönstret skyddas av ett lackskikt - applicerat med screentryckning - och som täcker alla ledare förutom lödpunkterna).
Problemet var att få ett jämnt och tillräckligt tjockt skikt och tekniker och produktionsansvariga valde ut de sex faktorerna. Skärmdumpen nedan visar faktorerna samt de 64 mätvärdena.






























Indata och analys. De 64 värdena lagras i Y som sedan läggs som en kolumn intill försöksplanen. En enkel analys sker med lm-kommandot (‘linear model’) och resultatet visas med ‘summary’-kommandot:

Y <- c(34, 32, 31, 40, 38, 35, 32, 40, 25, 23, 21, 20, 34, 21, 21, 23, 39, 34, 34, 31, 27, 41, 34, 39, 23,  
       19, 24, 22, 27, 18, 26, 27, 35, 36, 39, 33, 37, 29, 35, 31, 22, 22, 22, 23, 24, 25, 20, 23, 39, 37,  
       33, 36, 32, 37, 27, 36, 23, 26, 21, 26, 26, 22, 20, 26)

library(FrF2)                                                    # Funktioner för att skapa försöksplaner.
minPlan <- FrF2(nruns = 64, nfactors = 6, randomize = FALSE)     # Lagrar planen i 'minPlan'.

allData <- data.frame(minPlan, Y)

analys  <- lm(formula = Y ~ (.)^2, data = allData)               # Alla variabler samt 2-faktor samspel.
summary(analys)
## 
## Call:
## lm.default(formula = Y ~ (.)^2, data = allData)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -7.7500 -1.7969  0.0312  1.7344  6.5625 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  2.903e+01  4.368e-01  66.462   <2e-16 ***
## A1           1.250e-01  4.368e-01   0.286   0.7762    
## B1          -4.062e-01  4.368e-01  -0.930   0.3577    
## C1           1.250e-01  4.368e-01   0.286   0.7762    
## D1          -5.750e+00  4.368e-01 -13.164   <2e-16 ***
## E1           9.375e-02  4.368e-01   0.215   0.8311    
## F1          -1.875e-01  4.368e-01  -0.429   0.6699    
## A1:B1        1.000e+00  4.368e-01   2.289   0.0272 *  
## A1:C1        2.812e-01  4.368e-01   0.644   0.5232    
## A1:D1       -5.312e-01  4.368e-01  -1.216   0.2307    
## A1:E1        5.625e-01  4.368e-01   1.288   0.2049    
## A1:F1        2.813e-01  4.368e-01   0.644   0.5232    
## B1:C1       -3.621e-16  4.368e-01   0.000   1.0000    
## B1:D1       -6.250e-02  4.368e-01  -0.143   0.8869    
## B1:E1        1.563e-01  4.368e-01   0.358   0.7224    
## B1:F1       -2.500e-01  4.368e-01  -0.572   0.5701    
## C1:D1        5.313e-01  4.368e-01   1.216   0.2307    
## C1:E1       -1.875e-01  4.368e-01  -0.429   0.6699    
## C1:F1       -8.438e-01  4.368e-01  -1.932   0.0602 .  
## D1:E1        1.250e-01  4.368e-01   0.286   0.7762    
## D1:F1        9.375e-02  4.368e-01   0.215   0.8311    
## E1:F1        2.500e-01  4.368e-01   0.572   0.5701    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.494 on 42 degrees of freedom
## Multiple R-squared:  0.819,  Adjusted R-squared:  0.7285 
## F-statistic: 9.051 on 21 and 42 DF,  p-value: 1.082e-09

Kommentar. Utskriften ovan blir ganska lång även om analysen begränsats att bara ta med tvåfaktorsamspel. Kolumnen längst till höger pekar ut vilka faktorer (låga p-värden) som kan anses signifikanta, dvs som bör ingå i modellen.
Det är egentligen bara interceptet och D-faktorn som är intressanta. Samspelet A:B har ett lågt p-värden men varken A eller B är signifikanta, därför utelämnas samspelet i nästa analys.


Bara D-faktorn. Följande analys är samma som ovan men nu ingår bara D-faktorn:

analys <- lm(formula = Y ~ D, data = allData)     # Den linjära modellen.
summary(analys)
## 
## Call:
## lm.default(formula = Y ~ D, data = allData)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -7.7813 -2.2812 -0.2812  2.3437 10.7188 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  29.0312     0.4254   68.25   <2e-16 ***
## D1           -5.7500     0.4254  -13.52   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.403 on 62 degrees of freedom
## Multiple R-squared:  0.7467, Adjusted R-squared:  0.7426 
## F-statistic: 182.7 on 1 and 62 DF,  p-value: < 2.2e-16

Tolkning av resultatet. Igen är det interceptet och D-faktorn som är signifikanta. (Den erhållna modellen återges nedan.) ’R-squared’ är 0.75 och visar att cirka 75% av all variation i data består av D-faktorn, resten är mätfel och övriga faktorer - kända och okända:


\[ \begin{align} \large Y = 29 - 5.8D \end{align} \]



 2. Reducering av exempel 1 - 16 mätningar (1/4)

Det kan verka underligt att göra en reducerad analys av ovanstående 64 värden. Men anledningen till att alla 64 mätningar genomfördes var okunskap. Vid tidpunkten för genomförandet var man okunnig om möjligheten att genomföra en reducerad DoE.
DoE-metodik understryker att börja enkelt med två nivåer och senare gå vidare med de faktorer som är betydelsefulla. DoE med många variabler på två nivåer kallas ibland för ‘screening’.
(Det finns naturligtvis situationer då detta är mindre betydelsefullt - om man undersöker t.ex. svarstider i mjukvara är det antagligen möjligt att ha många faktorer i mjukvaran och låta en dator både ändra inställningar och lagra mätdata, utan att detta ökar kostnaderna mer än marginellt.)


En reducerad försöksplan. Nedan anges en försöksplan som är 1/4 av en full plan, dvs 16 mätvärden. För varje kombination plockas motsvarande mätvärde bland de 64 ovan. Mätvärdena lagras som tidigare i en Y-kolumn och utskriften omfattar 2-faktorsamspel:

design <- FrF2(16, 6, randomize = FALSE)                                    # En reducerad plan (1/4)
design
##     A  B  C  D  E  F
## 1  -1 -1 -1 -1 -1 -1
## 2   1 -1 -1 -1  1  1
## 3  -1  1 -1 -1  1  1
## 4   1  1 -1 -1 -1 -1
## 5  -1 -1  1 -1  1 -1
## 6   1 -1  1 -1 -1  1
## 7  -1  1  1 -1 -1  1
## 8   1  1  1 -1  1 -1
## 9  -1 -1 -1  1 -1  1
## 10  1 -1 -1  1  1 -1
## 11 -1  1 -1  1  1 -1
## 12  1  1 -1  1 -1  1
## 13 -1 -1  1  1  1  1
## 14  1 -1  1  1 -1 -1
## 15 -1  1  1  1 -1 -1
## 16  1  1  1  1  1  1
## class=design, type= FrF2
Y <- c(34, 37, 33, 40,  27, 29, 35, 39,  22, 19, 24, 23,  26, 21, 21, 26)   # Mätdata

res <- lm(Y ~ (.)^2, data = design)                                         # Alla faktore inkl 2-faktorsamspel.
summary(res)
## 
## Call:
## lm.default(formula = Y ~ (.)^2, data = design)
## 
## Residuals:
##      1      2      3      4      5      6      7      8      9     10     11 
##  0.875  1.875 -1.875 -0.875 -0.875 -1.875  1.875  0.875 -0.875 -1.875  1.875 
##     12     13     14     15     16 
##  0.875  0.875  1.875 -1.875 -0.875 
## 
## Coefficients: (8 not defined because of singularities)
##               Estimate Std. Error t value Pr(>|t|)   
## (Intercept)  2.850e+01  1.035e+00  27.548  0.00132 **
## A1           7.500e-01  1.035e+00   0.725  0.54383   
## B1           1.625e+00  1.035e+00   1.571  0.25684   
## C1          -5.000e-01  1.035e+00  -0.483  0.67662   
## D1          -5.750e+00  1.035e+00  -5.558  0.03088 * 
## E1           3.750e-01  1.035e+00   0.362  0.75172   
## F1           3.750e-01  1.035e+00   0.362  0.75172   
## A1:B1        1.125e+00  1.035e+00   1.087  0.39044   
## A1:C1       -6.457e-16  1.035e+00   0.000  1.00000   
## A1:D1       -1.250e+00  1.035e+00  -1.208  0.35043   
## A1:E1        6.250e-01  1.035e+00   0.604  0.60716   
## A1:F1       -8.750e-01  1.035e+00  -0.846  0.48674   
## B1:C1               NA         NA      NA       NA   
## B1:D1               NA         NA      NA       NA   
## B1:E1               NA         NA      NA       NA   
## B1:F1               NA         NA      NA       NA   
## C1:D1        1.250e+00  1.035e+00   1.208  0.35043   
## C1:E1               NA         NA      NA       NA   
## C1:F1        6.250e-01  1.035e+00   0.604  0.60716   
## D1:E1               NA         NA      NA       NA   
## D1:F1               NA         NA      NA       NA   
## E1:F1               NA         NA      NA       NA   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.138 on 2 degrees of freedom
## Multiple R-squared:  0.9523, Adjusted R-squared:  0.6422 
## F-statistic: 3.071 on 13 and 2 DF,  p-value: 0.2722

Alla 2-faktorsamspel ovan är betydelselösa därför görs ytterligare en analys - denna gång bara med huvudeffekterna:

# Analys utan samspeleffekter

res <- lm(Y ~ (.), data = design)                    # Analys med bara huvudeffekter.
summary(res)
## 
## Call:
## lm.default(formula = Y ~ (.), data = design)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -4.375 -2.812  0.375  2.375  5.375 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  28.5000     0.9474  30.082 2.42e-10 ***
## A1            0.7500     0.9474   0.792 0.448931    
## B1            1.6250     0.9474   1.715 0.120445    
## C1           -0.5000     0.9474  -0.528 0.610429    
## D1           -5.7500     0.9474  -6.069 0.000186 ***
## E1            0.3750     0.9474   0.396 0.701457    
## F1            0.3750     0.9474   0.396 0.701457    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.79 on 9 degrees of freedom
## Multiple R-squared:   0.82,  Adjusted R-squared:    0.7 
## F-statistic: 6.833 on 6 and 9 DF,  p-value: 0.005797

Återigen är det bara interceptet och D-faktorn som är signifikanta. En sista analys med bara D-faktorn ger följande:

# Analys med bara D-faktorn

res <- lm(Y ~ D, data = design)
summary(res)
## 
## Call:
## lm.default(formula = Y ~ D, data = design)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -7.250 -1.750  0.000  2.875  5.750 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  28.5000     0.9186   31.03 2.62e-14 ***
## D1           -5.7500     0.9186   -6.26 2.09e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.674 on 14 degrees of freedom
## Multiple R-squared:  0.7368, Adjusted R-squared:  0.718 
## F-statistic: 39.19 on 1 and 14 DF,  p-value: 2.092e-05

För låg repektive hög nivå på faktor D erhålles då följande:


\[ \begin{align} \large Y = 29 -5.8 D =29-5.8\cdot (-1)= 34.8 & \phantom{litet tomt ut} \large Y = 29 -5.8 D =29-5.8\cdot 1= 23.2 \end{align} \]


Faktor D är (enligt skärmdumpen längre upp) screendukens täthet som anges i ‘antal maskor per tum’, 38 - 54. En lägre siffra (kodad med ‘-1’) ger större öppningar vilket ger ett tjockare skikt. Detta är egentligen ingen överraskning, snarare att det är den enda faktorns som blev signifikant. (Större öppningar i duken ger dock en något mer taggig kant t.ex. för öppningar runt lödpunkter o.d.)


OBS Viktigt! I en DoE med 16 rader och 6 faktorer blir det en sammanblandning av 2-faktorsamspel (AB = CE = DF), se ovan. Antag att samspelet AB blivit signifikant, men inte huvudfaktorerna A och B. Då brukar man eliminera tvåfaktorsamspelet från modellen.
I detta exempel är D-faktorn signifikant. Eftersom det är möjligt att det signifikanta samspelet egentligen är DF borde man undersöka en modell med D, F och DF. Det är alltså nödvändigt att i reducerade försök uppmärksamma listan med sammanblandade effekter.


Avslutningsvis
En mycket stor fördel med DoE är att modeller kan ändras, t.ex. man kan ta bort eller lägga till faktorer, utan att den större bilden förändras nämnvärt. Om man i stället plockar både faktorer och respons från t.ex. data som samlats i någon databas, riskerar man en väldigt instabil analys. Några faktorer kanske blir signifikanta men då man tar bort någon annan eller något samspel så kanske sambandet faller ihop.
Ofta beor detta på beroende strukturer (både kända och okända) mellan faktorerna vilket skapar osäkerhet i matematiken. Naturligtvis finns det tillfällen då man inte kan välja och bestämma nivåer på faktorer, utan man är hänvisad till data som samlas in vid t.ex. forskning om sjukdomar.

Ovanstående analyser och texter avser inte att ge en uttömmande diskussion om analys av data från en försöksplan. Det finns många kommando som kan ge mer information och flera sätt att automatisera en analys. Även graferna kan göras mer utförliga med t.ex. textinformation, färger m.m. Men här har framställningen poängterat enkelhet.

(Analyserna har gjorts med datorprogrammet ‘R’ och med det grafiska gränssnittet ‘R-studio’ och bägge är gratis tillgängliga på nätet. Se https://www.indstat.se och knappen [Statistikprogram - R] för installation.)

(Se https://www.indstat.se för många andra simuleringsövningar.)