您正在描述Taguchi實驗,其中內部陣列由控制因子組成,外部陣列由噪聲因子組成。每個配方都使用多次。交叉設計方法允許通過噪聲相互作用來估計所有控制。這些對於創建魯棒的過程非常重要,因為您想找到控制設置,使噪聲因子的變化對響應的影響最小。首先,沒有必要交叉兩個因子設計來完成此任務。您可以在Custom Designer中使控制係數難以更改,而噪聲係數則易於更改。在模型中,將所有通過噪聲交互作用的控制添加到模型中。您選擇的整個圖的數量就是您要創建的配方的數量。總運行數除以整個圖的數量即為每個整個圖內的子圖運行數。
您可以使用擬合模型來分析這些數據。然後,使用紅色三角形菜單保存帶有預測公式的列。將此列轉到“圖形”菜單上的“預測分析器”。在對話框中指定您的噪音係數。您將得到一個帶有響應的圖,並加上一行以表示每個噪聲因子的響應偏導數。目標是在使偏導數盡可能接近零的同時獲得所需的響應值。
複製並運行下面的表腳本,以創建帶有此類問題示例的表。上面有我描述的圖形的表中有一個Profiler腳本。
New Table( "Bill Ross Example",
Add Rows( 32 ),
New Table Variable( "Design", "Custom Design" ),
New Table Variable( "Criterion", "D Optimal" ),
New Script(
"Model",
Fit Model(
Effects(
:Whole Plots & Random,
:X1,
:X2,
:X3,
:X4,
:X5,
:X1 * :X4,
:X2 * :X4,
:X3 * :X4,
:X1 * :X5,
:X2 * :X5,
:X3 * :X5
),
Y( :Y )
)
),
New Script(
"Evaluate Design",
DOE( Evaluate Design, X( Whole Plots, :X1, :X2, :X3, :X4, :X5 ) )
),
New Script(
"DOE Dialog",
DOE(
Custom Design,
{Add Response( Maximize, "Y", ., ., . ),
Add Factor( Continuous, -1, 1, "X1", 1 ),
Add Factor( Continuous, -1, 1, "X2", 1 ),
Add Factor( Continuous, -1, 1, "X3", 1 ),
Add Factor( Continuous, -1, 1, "X4", 0 ),
Add Factor( Continuous, -1, 1, "X5", 0 ), Set Random Seed( 596612307 ),
Number of Starts( 1361 ), Add Term( {1, 0} ), Add Term( {1, 1} ),
Add Term( {2, 1} ), Add Term( {3, 1} ), Add Term( {4, 1} ),
Add Term( {5, 1} ), Add Term( {1, 1}, {4, 1} ),
Add Term( {2, 1}, {4, 1} ), Add Term( {3, 1}, {4, 1} ),
Add Term( {1, 1}, {5, 1} ), Add Term( {2, 1}, {5, 1} ),
Add Term( {3, 1}, {5, 1} ), Add Alias Term( {1, 1}, {2, 1} ),
Add Alias Term( {1, 1}, {3, 1} ), Add Alias Term( {2, 1}, {3, 1} ),
Add Alias Term( {4, 1}, {5, 1} ), Set N Whole Plots( 8 ),
Set Sample Size( 32 ), Simulate Responses( 1 ), Save X Matrix( 0 ),
Make Design}
)
),
New Script(
"Profiler of Pred Formula Y",
Profiler(
Noise Factors( :X4, :X5 ),
Y( :Pred Formula Y ),
Profiler(
1,
Desirability Functions( 1 ),
Pred Formula Y << Response Limits(
{Lower( 25, 0.066 ), Middle( 45, 0.5 ), Upper( 65, 0.9819 ),
Goal( "Maximize" ), Importance( 1 )}
),
Name( "∂Pred Formula Y/∂X4" ) <<
Response Limits(
{Lower( -30, 0.066 ), Middle( 0, 0.99 ), Upper( 30, 0.066 ),
Goal( "Match Target" ), Importance( 1 )}
),
Name( "∂Pred Formula Y/∂X5" ) <<
Response Limits(
{Lower( -30, 0.066 ), Middle( 0, 0.99 ), Upper( 30, 0.066 ),
Goal( "Match Target" ), Importance( 1 )}
),
Term Value(
X1( 0, Lock( 0 ), Show( 1 ) ),
X2( 0, Lock( 0 ), Show( 1 ) ),
X3( 0, Lock( 0 ), Show( 1 ) ),
X4( 0, Lock( 0 ), Show( 1 ) ),
X5( 0, Lock( 0 ), Show( 1 ) )
)
)
)
),
New Column( "Whole Plots",
Character( 1 ),
"Nominal",
Set Property( "Design Role", DesignRole( Random Block ) ),
Set Property( "Value Ordering", {"1", "2", "3", "4", "5", "6", "7", "8"} ),
Set Values(
{"1", "1", "1", "1", "2", "2", "2", "2", "3", "3", "3", "3", "4", "4",
"4", "4", "5", "5", "5", "5", "6", "6", "6", "6", "7", "7", "7", "7",
"8", "8", "8", "8"}
),
Set Display Width( 83 )
),
New Column( "X1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Property( "Coding", {-1, 1} ),
Set Property( "Design Role", DesignRole( Continuous ) ),
Set Property( "Factor Changes", Hard ),
Set Values(
[-1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1,
-1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 1]
),
Set Display Width( 53 )
),
New Column( "X2",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Property( "Coding", {-1, 1} ),
Set Property( "Design Role", DesignRole( Continuous ) ),
Set Property( "Factor Changes", Hard ),
Set Values(
[-1, -1, -1, -1, -1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 1, -1, -1, -1, -1,
1, 1, 1, 1, 1, 1, 1, 1, -1, -1, -1, -1]
),
Set Display Width( 53 )
),
New Column( "X3",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Property( "Coding", {-1, 1} ),
Set Property( "Design Role", DesignRole( Continuous ) ),
Set Property( "Factor Changes", Hard ),
Set Values(
[1, 1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1,
1, 1, 1, 1, -1, -1, -1, -1, 1, 1, 1, 1]
),
Set Display Width( 53 )
),
New Column( "X4",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Property( "Coding", {-1, 1} ),
Set Property( "Design Role", DesignRole( Continuous ) ),
Set Property( "Factor Changes", Easy ),
Set Values(
[-1, 1, -1, 1, -1, 1, -1, 1, 1, -1, 1, -1, -1, -1, 1, 1, 1, 1, -1, -1, 1,
-1, 1, -1, 1, 1, -1, -1, 1, -1, -1, 1]
),
Set Display Width( 53 )
),
New Column( "X5",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Property( "Coding", {-1, 1} ),
Set Property( "Design Role", DesignRole( Continuous ) ),
Set Property( "Factor Changes", Easy ),
Set Values(
[1, 1, -1, -1, 1, -1, -1, 1, -1, 1, 1, -1, -1, 1, 1, -1, 1, -1, -1, 1,
-1, -1, 1, 1, 1, -1, -1, 1, -1, -1, 1, 1]
),
Set Display Width( 53 )
),
New Column( "Y",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Property(
"Response Limits",
{Goal( Maximize ), Lower( . ), Upper( . ), Importance( . )}
),
Set Values(
[42.7348146566894, 36.189171429355, 44.769471482189, 36.4898442411795,
59.6102462984316, 46.7297051797999, 57.9866542713854, 49.6693424137701,
41.4532268569068, 58.2950993674576, 40.3899254847144, 59.4779147187221,
43.1501858743337, 52.738367825711, 64.6706839593882, 55.2433411262629,
29.5924301117279, 37.4165044593035, 61.3682127043, 54.2129864134781,
45.9055183728695, 45.7025946700622, 49.1320040241035, 48.758181908546,
60.4851311417976, 54.5913985758853, 58.0309758072772, 64.0774047982442,
48.810716536316, 44.6394149127264, 48.1420425851012, 54.4952535477709]
),
Set Display Width( 93 )
),
New Column( "Pred Formula Y",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Property( "Notes", "Prediction Formula" ),
Formula(
49.842461429869 + 4.09946762351868 * :X1 + 2.7889107271487 * :X2 +
-2.24423598283116 * :X3 + -2.888449088547 * :X4 + 0.982106443023965 *
:X5 + :X1 * :X4 * 3.28346659528326 + :X2 * :X4 * 1.74098062427039 + :X3
* :X4 * 4.15729029616492 + :X1 * :X5 * 1.81202357486527 + :X2 * :X5 *
1.20487121370369 + :X3 * :X5 * 1.0272331020214
),
Set Property(
"Response Limits",
{Lower( 25, 0.066 ), Middle( 45, 0.5 ), Upper( 65, 0.9819 ),
Goal( "Maximize" ), Importance( 1 )}
),
Set Property( "Predicting", {:Y, Creator( "Fit Least Squares" )} ),
Set Selected,
Set Display Width( 105 )
)
)