はじめよう実験計画

実験を早く終わらせるための技術

【実践問題1】分割法を理解する

分割法について

以前、分割法のまとめ記事を書いたのですが...かなり難解な説明になってしまったと反省しています。そこで、今回は実際に問題を解きながら分割法の理解を目指していこうと考えています。

さて、分割法の問題を解く前に「分割法のまとめ記事」を読んでいただいても、もちろん良いのですが、下にポイントだけまとめてみました。

■分割法のポイント■
  • 変更が困難な因子(Whole Plot=1次因子)ごとに、変更が容易な因子(Split Plot=2次因子)を一斉に実験する。
  • 分散分析は、Whole Plot誤差(1次誤差)とSplit Plot誤差(2次誤差)に分けて行う。
  • Whole Plot誤差は「反復×Whole Plot因子の交互作用」から計算する。
  • Split Plot誤差は3因子間の相互作用や、プーリングする項など、効果がないと考えられる項から計算する。

 

以上のことはすべて、まとめ記事の内容ですので、詳しくは以下の記事をご参照ください。

www.doe-get-started.com

 

では問題に行ってみよう!

問題1

L8直交表を使って4つの因子α, β, γ, δを下図のように割り付ける。ここで、αをWhole Plot(1次因子)、β, γ, δをSplit Plot(2次因子)とすると、L8直交表の「a列」と「d列」が表すのは何の効果か?

表1 L8直交表

 

※ちなみにL8直交表の作り方はこちらの記事で解説しています。

www.doe-get-started.com

 

問1の答え

(答え)a列は反復、d列は反復×Whole Plot因子の交互作用(Whole Plot誤差)を表す。

(解説)表1を分割法のスタイルに直したものを表2に示します。

表2 表1を分割法のスタイルに直して書き直しただけ. 反復の列は表1の「a列」に対応することがわかる。

表2を見ると、Whole Plot因子であるαに関してはNo.1~4とNo.5~8で2セットになっていることが分かります。したがって、分割法の「反復」は表2の一番右の列に示したようになります。

さらに表1に戻ると、d列 = a列(反復)×b列(Whole Plot)ですから、d列は反復とWhole Plotとの交互作用であり、これはWhole Plot誤差という重要な意味をもちます。

 

問2

実験は次の(ア)~(ウ)のうち、どのように行えばよいか?

(ア)Whole Plot因子であるbの水準が-1のものすべて(No.1,2,5,6)を一斉に行い、次に、bの水準が+1のものすべて(No.3,4,7,8)を一斉に行う。

(イ)No.1~4をランダムに実施した後、No.5~6をランダムに実施する。

(ウ)反復1のうち、bの水準が-1のもの(①: No.1,2)を一斉に行い、次にbの水準が+1のもの(②: No.3,4)を一斉に実施する。反復2の③④も同様。

 

問2の答え

分割法の基本は、変更が難しいWhole Plotごとに、Split Plot因子を一斉に実験するというものでした。したがって、実験は例えば表2の「実験順序」①~④で行います。したがって答えは(ウ)。

選択肢(ア)だと反復なしの一部実施要因配置計画になります。選択肢(イ)だとWhole Plotをまとめて実験していないので、ただ前半と後半をブロックとして考えただけになります(乱塊法ですね)。

 

問3

表2の実験を実施したところ、測定結果yは表3のようになった。表4の分散分析表を埋め、どの効果が有意水準5%で有意か?

表3 分割法の実験結果

表4 分散分析表

分散分析ってなんだっけ?という方は、こちらを読んでみてください。

www.doe-get-started.com

 

問3の答え

データを記入した"solve_split_plot1.csv"というファイルを用意して、Rで読み込んで分散分析を行いました。

#---------------"solve_split_plot1.csv"--------------------#
α	β	γ	δ	rep	y
-1	-1	-1	-1	-1	6
-1	1	1	1	-1	10
1	-1	-1	1	-1	1
1	1	1	-1	-1	4
-1	-1	1	1	1	3
-1	1	-1	-1	1	8
1	-1	1	-1	1	0.5
1	1	-1	1	1	2
#----------------------------------------------------------#

#データの読み込み
X <- read.csv("solve_split_plot1.csv")
#Whole-plot×反復の列は作る(表1のa列と同じ)
X <- cbind(X, "α*rep"=X$α*X$rep)
#分散分析
summary(aov(y~., X))

#---------------実行結果(分割法でない)---------------------------# Df Sum Sq Mean Sq F value Pr(>F) α 1 66.125 66.125 529 0.0277 * β 1 28.13 28.13 225 0.0424 * γ 1 1.13 1.13 9 0.2048 δ 1 3.13 3.13 25 0.1257 rep 1 0.12 10.12 81 0.0704 . `α*rep` 1 1.12 1.12 9 0.2048 Residuals 1 0.125 0.125

実行結果のP値を見るとαが0.0277, βが0.0424ですからαとβが有意水準5%で有意!と思ってしまいそうですが、いやいや、ちょっと待ってください。分散分析は分割法のスタイルでやる必要があります。

本記事の最初に示した分割法のポイントを復讐すると、

  • 分散分析は、Whole Plot誤差(1次誤差)とSplit Plot誤差(2次誤差)に分けて行う。
  • Whole Plot誤差は「反復×Whole Plot因子の交互作用」から計算する。

でした。したがって、分割法のスタイルに直すと、下の表5のようになります。

表5 分割法のスタイルに則った分散分析表

表5において、F valueの列は、Whole Plotに属する効果αと反復repは、Whole Plot誤差α×repとの平均平方の比でF値を計算します。また、Split Plotに属する効果β, γ, δは、Split Plot誤差(Residuals)との平均平方の比でF値を計算しました。分割法のスタイルを考慮しなかった分散分析では、効果αのP値は0.0277とかなり小さな値でしたが、表5では0.082になっていることに注意してください。(問4へ)

 

(問3の答え)因子βが有意水準5%で有意。因子αの効果は有意水準5%では有意ではない。

 

問4

問3において、分割法のスタイルを考慮しなかった分散分析と、分割法の分散分析(表5)で、因子αの効果のF値(P値)が異なるのはなぜか?

 

問4の答え

最初の(分割法のスタイルを考慮しなかった)分散分析では、効果αのF値は66.125/(Residuals=0.125)=529で計算されています。これは、実験をランダムな順番で実施した場合には正しい計算になります。

しかし、今回は分割法で実験しています。分割法では因子αの水準を決めたら、ほかの因子のパターンを一斉に実施します。これにより、因子αの水準が-1のときと+1のときの結果 y には、因子αの効果だけでなく、因子αを設定するたびに生じるWhole Plot誤差が含まれています。

このWhole Plot誤差に対して因子αの効果を評価するため、F値の計算結果は通常の分散分析の結果と異なります。具体的な計算としては、Whole Plot誤差の平均平方が1.12なので、66.125/1.12=59.04となります。

 

以下、蛇足ですが...

まとめ記事では、ケーキを焼くオーブンの温度の話をしました。ケーキの実験では、例えば、水分量、粉の量、など他の因子があります。オーブンの温度は何度も変えるのが大変なので、例えば160℃のとき他の因子の全パターン実験し、次に180℃のときに他の因子を一斉に実施する、というように実験をします。この場合、オーブンの温度がWhole Plot因子になります。

しかし、オーブン温度は例えば前加熱の時間などで変動するため、160度と180度の差は、温度自体の差だけではなく、温度を設定するたび生じる誤差(Whole Plot誤差)を含んでいます。

そのため、通常の分散分析を行うと、温度の効果が過大評価される恐れがあります。

そこで、分割法では(基本的には)反復を導入し、反復×Whole Plot因子(温度)の交互作用としてWhole Plot誤差を個別に見積もり、Whole Plot因子(温度)の効果をより正確に評価しよう、というモチベーションがあります。

 

 

最後に

問題を通して分割法の理解を深めようと思いましたが、やっぱり難しくなってしまいました... わかりやすい説明ができるまで、いろいろと試行錯誤してみますので、大目にみてください!(笑)