このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
rowexch
行交換
構文
dRE = rowexch(nfactors,nruns)
[dRE,X] = rowexch(nfactors,nruns)
[dRE,X] = rowexch(nfactors,nruns,model)
[dRE,X] = rowexch(___,param1,val1,param2,val2,...)
説明
dRE = rowexch(nfactors,nruns) は、行交換アルゴリズムを使用して、nfactors 因子 (dRE の列) をもつ線形加法モデルのnruns の実行 (dRE の行) をもつ D 最適計画 dRE を生成します。モデルには、定数項が含まれています。
[dRE,X] = rowexch(nfactors,nruns) は、関連する計画行列 X も返します。この行列の列は dRE の各処理 (行) で評価されるモデル項です。
[dRE,X] = rowexch(nfactors,nruns, は、model)model で指定される線形回帰モデルを使用します。model は以下のいずれかです。
'linear'— 定数項および線形項。これは既定の設定です。'interaction'— 定数項、線形項および交互作用項'quadratic'— 定数項、線形項、交互作用項および 2 乗項'purequadratic'— 定数項、線形項および 2 乗項
n 項をもつ完全 2 次モデルの X の列の順序は次のとおりです。
定数項
線形項 (1, 2, ..., n の順)
交互作用項 ((1, 2), (1, 3), ..., (1, n), (2, 3), ..., (n–1, n) の順)
2 乗項 (1, 2, ..., n の順)
他のモデルでは、これらの項のサブセットが同じ順序で使用されます。
あるいは、model が、任意の順序の多項式の項を指定する行列である場合もあります。この場合、model は、因子ごとに 1 つの列とモデルの項ごとに 1 つの行をもつ必要があります。model のすべての行のエントリは列の因子のべき乗です。たとえば、モデルに因子 X1、X2、および X3 が含まれている場合、model の行 [0 1 2] によって (X1.^0).*(X2.^1).*(X3.^2) 項が指定されます。model のすべてがゼロの行は定数項を示しますが、省略可能です。
[dRE,X] = rowexch(___, は、前の構文におけるいずれかの入力引数の組み合わせに加えて、1 つ以上のパラメーターと値のペアを使用して計画のオプションを指定します。有効なパラメーターとその値を次の表に示します。param1,val1,param2,val2,...)
| パラメーター | 値 |
|---|---|
'AvoidDuplicates' |
|
'Bounds' | 各因子の上限および下限によって、 |
'CategoricalVariables' | カテゴリカル予測子のインデックス。 |
'Display' |
|
'ExcludeFcn' | 不要な実行を除外する関数ハンドル。関数が f の場合、b = f(S) という構文に対応しなければなりません。ここで、S は列数が |
'InitialDesign' |
|
'MaxIterations' | 最大反復回数。既定の設定は |
'NumLevels' | 各因子の水準の数を示すベクトル。 |
'NumTries' | 新しい開始点から計画の生成を試行する回数。このアルゴリズムでは、最初の試行を除いて、各試行で無作為な点を使用します。既定の設定は |
'Options' | 並列実行するかどうかを指定し、乱数ストリームを指定する構造体。
|
例
以下の 3 因子、7 項の交互作用モデルにおいて、パラメーターを推定する計画を得るものとします。
rowexch を使用して、実行回数が 7 回の D 最適計画を作成します。
nfactors = 3;
nruns = 7;
[dRE,X] = rowexch(nfactors,nruns,'interaction','NumTries',10)
dRE =
-1 -1 1
1 -1 1
1 -1 -1
1 1 1
-1 -1 -1
-1 1 -1
-1 1 1
X =
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 1 1 1
1 -1 1 -1 -1 1 -1
1 -1 1 1 -1 -1 1計画行列 X の列は、計画 dRE の各行で評価されたモデル項です。これらの項は、左から右への順で現れます。定数項、線形項 (1、2、3)、交互作用項 (12、13、23)。線形回帰で説明したように、X を使って、dRE の計画点において測定された応答データにモデルを当てはめます。
アルゴリズム
cordexch と rowexch は、反復探索アルゴリズムを使用します。これらは、各ステップで D = |XTX| を増加させるように、初期計画行列 X を増加するように変更して操作します。これら両方のアルゴリズムには、初期の計画の選択と、漸進的変化の選択に組み込まれるランダム性があります。結果として、両方のアルゴリズムは、グローバルにではなくローカルに D 最適計画を返すことがあります。各アルゴリズムを複数回実行し、最終的な計画に対する最適な結果を選択します。両方の関数は、この反復と比較を自動化する 'NumTries' パラメーターをもちます。
各ステップにおいて、行交換アルゴリズムは、X の行全体を、実行可能な処理の候補セットにおいて評価された計画行列 C の行と交換します。関数 rowexch は、関数 candgen と関数 candexch を順に呼び出すことによって 2 ステップで動作し、指定したモデルに適切な C を自動的に作成します。candexch を直接呼び出すことによって、ユーザー独自の C を提供します。いずれの場合も、計画行列 C が大きければ、そのメモリにおいて静的に存在することが、計算に影響を及ぼすことがあります。