Vous décrivez une expérience Taguchi où le réseau interne est composé de facteurs de contrôle et le réseau externe est composé de facteurs de bruit. Chaque formulation est utilisée plusieurs fois. L'approche de conception croisée permet d'estimer tout le contrôle par les interactions de bruit. Celles-ci sont importantes pour créer un processus robuste car vous souhaitez trouver des paramètres de contrôle où les changements dans les facteurs de bruit ont un effet minimal sur la réponse. Premièrement, il n'est pas nécessaire de croiser deux plans factoriels pour y parvenir. Vous pouvez rendre vos facteurs de contrôle difficiles à modifier et votre facteur de bruit facile à modifier dans le concepteur personnalisé. Dans le modèle, vous ajoutez tous les contrôles par interactions de bruit au modèle. Le nombre de parcelles entières que vous choisissez est le nombre de formulations que vous souhaitez créer. Le nombre total d'exécutions divisé par le nombre de parcelles entières est le nombre d'exécutions de sous-parcelles dans chaque parcelle entière.
Vous pouvez utiliser Fit Model pour analyser ces données. Ensuite, utilisez le menu du triangle rouge pour enregistrer une colonne avec une formule de prédiction. Amenez cette colonne dans Prediction Profiler dans le menu Graph. Désignez vos facteurs de bruit dans la boîte de dialogue. Vous obtenez un tracé avec votre réponse plus une ligne pour la dérivée partielle de la réponse par rapport à chacun des facteurs de bruit. Le but est d'obtenir la valeur de réponse souhaitée tout en rendant simultanément les dérivées partielles aussi proches de zéro que possible.
Copiez et exécutez le script de table ci-dessous pour créer une table avec un exemple de votre type de problème. Il y a un script Profiler dans le tableau avec le graphique que j'ai décrit ci-dessus.
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 )
)
)