応答曲面法 RSM シミュレーター 戻る
実験計画・最適化

応答曲面法 RSM シミュレーター

プロセス条件や配合を「少ない実験回数で最適化する」ための定番手法、応答曲面法(RSM)のシミュレーターです。線形項・2次項・交互作用項のスライダーを動かすと、応答 y(x₁, x₂) の停留点・固有値・最適応答がリアルタイムで更新され、最大点・最小点・鞍点を自動で見分けられます。

パラメータ設定
線形係数 β₁
x₁ 方向の1次勾配
線形係数 β₂
x₂ 方向の1次勾配
2次項 β₁₁
x₁² の係数。負=上に凸(最大点候補)
2次項 β₂₂
x₂² の係数。負=上に凸
交互作用 β₁₂
x₁·x₂ の係数。0でない=因子が独立でない
残差 σ
回帰誤差の標準偏差(推定 R² に影響)
設計範囲 r
|x₁|, |x₂| ≤ r の関心領域。停留点が外なら NG
計算結果
停留点 X₁*
停留点 X₂*
停留点 Y値
固有値 λ₁
固有値 λ₂
停留点タイプ
R2 estimate
応答曲面コンター — X₁-X₂ 平面と停留点

色は応答 y の高さ(赤=高い/青=低い)。白丸が停留点 (X₁, X₂)、矢印が原点からの最急上昇方向。点線の枠が設計範囲 |x|≤r。

X₁軸断面 — y(x₁, x₂=0)
X₂軸断面 — y(x₁=0, x₂)
理論・主要公式

$$y = \beta_0 + \mathbf{x}^T \beta + \mathbf{x}^T B \mathbf{x},\quad \nabla y = 0 \Rightarrow x_0 = -\frac{1}{2}B^{-1}\beta$$

x₀ は応答曲面の停留点。B は 2次項の対称行列 [[2β₁₁, β₁₂],[β₁₂, 2β₂₂]]。停留点での応答 y₀ は β₀ + xᵀβ + xᵀBx に x₀ を代入して得る。

$$\det(B-\lambda I)=0\Rightarrow \lambda_{1,2}=\tfrac{1}{2}\!\left[\tfrac{a_{11}+a_{22}}{2}\pm\sqrt{\bigl(\tfrac{a_{11}-a_{22}}{2}\bigr)^{2}+a_{12}^{2}}\right]$$

B の固有値 λ₁, λ₂(a₁₁=2β₁₁, a₂₂=2β₂₂, a₁₂=β₁₂)。両方が負→最大、両方が正→最小、符号が異なる→鞍点(saddle)。

$$R^{2}\approx\frac{\lVert\beta\rVert}{\lVert\beta\rVert+3\sigma}\quad(\text{signal-to-noise estimate})$$

線形項の大きさ ‖β‖ と残差 σ の比から推定する決定係数の概算。残差を大きくすると R² が下がり、モデルの当てはまりが悪化する。

応答曲面法 (RSM) と最適化

🙋
「応答曲面法」って、聞いたことはあるんですが…要するに何をする手法ですか?
🎓
ざっくり言うと「少ない実験で、入力と出力の関係を2次関数として近似して、その上で最適点を探す」手法だよ。例えば化学プラントで「温度」「触媒量」を振ったときの「収率」を最大化したい、なんてとき、実験は1回1回コストがかかるから全パターン試せない。そこで CCD(中心複合計画)や Box-Behnken のような実験計画で 10〜20 点くらい打って、y = β₀ + Σβᵢxᵢ + Σβᵢᵢxᵢ² + Σβᵢⱼxᵢxⱼ という 2次多項式をフィットする。あとは数学で停留点を解けば最適条件が出てくる、という流れだ。
🙋
2次関数なら、頂点を求めれば最適って単純な話ですか?
🎓
そう、原理は高校数学の「平方完成」と同じ。多変数だと行列で書いて x₀ = −(1/2)B⁻¹β を解くだけ。ただし要注意なのが「頂点が必ずしも最大点ではない」こと。B の固有値が両方マイナスなら上に凸の山=最大点、両方プラスなら下に凸の谷=最小点、符号が違うと鞍点(saddle point)になる。馬の鞍みたいに、ある方向には最大で別の方向には最小という点なんだ。左の β₁₁ と β₂₂ で符号を変えてみて。判定が「最大点」「最小点」「鞍点」と切り替わるよ。
🙋
鞍点だと最適化できないんですよね? 実際の現場ではどう対処するんですか?
🎓
うん、鞍点が出たら「この関心領域内に局所最適はない」というサイン。よくあるのは、関心領域がまだ最適から遠くて、その近傍がほぼ「斜面」になっているケース。そういう時は最急上昇法(Steepest Ascent)で、勾配方向に実験を追加して領域を移動させるんだ。RSM の出発点は1次モデル+最急上昇で「山に近づく」フェーズで、近づいたら 2次モデルで「頂上を絞り込む」フェーズに切り替える、という2段階運用が定石。本ツールも、停留点が設計範囲の外に出たら NG 判定にして「領域を動かしましょう」と促す仕組みになっている。
🙋
交互作用項 β₁₂ がゼロでないと、何が変わるんですか?
🎓
交互作用は「x₁ の効き目が x₂ の値で変わる」ことを表す。例えば温度と触媒量の組み合わせで、温度が高い時だけ触媒が効くとか。β₁₂ がゼロなら因子が独立に分離できるので、各因子を別々に最適化していい。ゼロでないと、コンター(等高線)が斜めに傾いて、楕円の主軸が x₁ 軸・x₂ 軸と一致しなくなる。可視化パネルのコンターを見ながら β₁₂ を動かしてごらん。等高線がぐるっと回転するはずだよ。これが「同時に最適化しないとダメ」というシグナルなんだ。
🙋
残差 σ が大きいと R² が下がりますが、その時はモデルそのものを疑うべきですか?
🎓
いい質問。R² が低い時の犯人は3つに分けられる。(1) 純粋な測定ノイズが大きい — これは実験を増やすか測定系を改善するしかない。(2) 2次モデルでは表現できない複雑な応答(高次の効果や不連続)— このときは Lack-of-Fit テストで検出して、必要なら 3次項を入れたり、領域を狭めたり、Kriging のような別モデルに切り替える。(3) 実は重要な因子を見落としている — スクリーニング計画(Plackett-Burman など)に戻って因子選定をやり直す。RSM はあくまで「2次で十分に近似できる範囲」を扱う手法、というのを忘れないことだよ。

よくある質問

応答曲面法(Response Surface Methodology, RSM)は実験計画法と2次回帰モデルを組み合わせて、入力変数(プロセス条件・配合・寸法など)から応答(収率・強度・コストなど)を最大化/最小化する条件を効率的に探す手法です。Box-Wilson が 1951 年に化学プロセス最適化のために提案しました。少ない実験回数で局所最適を求められるため、化学工学・材料開発・薬品処方・機械加工条件・CAEの設計探索など、実験コストが高い分野で標準ツールとして使われます。
2次モデル y = β0 + xᵀβ + xᵀBx の勾配を 0 とおいて、x₀ = −(1/2)B⁻¹β を解くことで停留点 x₀ を得ます(B は 2次項の対称行列)。停留点の性質は B の固有値で判定します:両方が負なら最大点、両方が正なら最小点、符号が異なれば鞍点です。鞍点は「ある方向には最大、別の方向には最小」になる点で、最適化問題としては局所最適になりません。本ツールでは λ₁, λ₂ の符号から自動判定して表示します。
どちらも2次モデルを推定するための実験計画です。中心複合計画(CCD, Central Composite Design)は2水準要因計画+軸点(±α)+中心点で構成され、軸点が領域外に出るため変数範囲を広めに取れます。Box-Behnken 計画は3水準で各因子が最大・最小に同時に出ない(角点を含まない)ため、極端な条件で実験できない化学プロセスに向きます。一般に、CCD は精度と回転可能性が高く、Box-Behnken は実験点数が少なめでコスト効率が良い、というトレードオフです。
本ツールでは |x₁| または |x₂| が設計範囲 r を超えた場合に NG 判定(領域外)を出します。実務での対処は2つあります:(1) 関心領域そのものを停留点の方向にシフトして実験を追加する(最急上昇法 Steepest Ascent / Descent 法)、(2) 制約付き最適化として領域境界上の最適点を求める(Lagrange 乗数または数値的探索)。応答曲面はあくまでも局所近似なので、停留点が遠くにある時は外挿せず、新しい実験点で再フィットするのが正しい流れです。

実世界での応用

化学プロセス最適化:RSM 発祥の領域。温度・圧力・触媒濃度・滞留時間などのプロセス条件を変えて、収率や選択率を最大化します。例えば医薬中間体の合成では、CCD で 15〜20 点の実験を打ち、2次モデルから「収率 92% を実現する温度 78°C/触媒 1.2 mol%」のような最適条件を求めます。フルファクトリアル設計なら数百点必要なところを、RSM なら 1/10 以下の実験で済むのが強みです。

材料配合・薬品処方:食品・化粧品・塗料・接着剤などの配合最適化に使われます。Mixture Design という、配合比の合計が 100% になる制約付きのRSMが標準ツール。例えば3成分混合物の応答曲面は三角形(Simplex)座標で表現し、最適配合点を求めます。錠剤の崩壊時間と硬度のトレードオフを同時に最適化する「望ましさ関数(Desirability Function)」もここで使います。

機械加工・成形条件最適化:切削加工の送り速度・切込み量・回転数、射出成形の樹脂温度・射出速度・保圧圧力など、加工条件と仕上がり品質(表面粗さ・寸法精度・サイクルタイム)の関係を RSM でモデル化します。Taguchi 法と組み合わせて、ばらつきも同時に最小化するロバスト設計に発展させるのが現代の流れです。

CAE シミュレーション設計(DACE):計算コストの高い FEM・CFD 解析を「実験」と見なし、応答曲面で全体傾向を捉えて最適形状を探す手法を Design and Analysis of Computer Experiments(DACE)と呼びます。自動車の衝突安全設計、航空機翼の空力最適化、半導体パッケージの熱設計などで標準的に使われます。CAE では Kriging(ガウス過程回帰)や Radial Basis Function を使うことが多いですが、2次 RSM は最初の感度把握として今も基本ツールです。

よくある誤解と注意点

第一の落とし穴は、「2次モデルが万能だと思い込む」こと。RSM は応答が「ある程度なめらかで、関心領域内で2次関数で近似できる」前提に立っています。応答が不連続(材料の相変化など)、強い高次の効果がある、多峰性(局所最適が複数)の場合は破綻します。必ず Lack-of-Fit テストで2次モデルの妥当性を検証し、十分でなければモデル形式を変える(Kriging、Neural Network、3次モデル)か、領域を狭めるかを判断してください。R² が高くても外挿はしない、というのが鉄則です。

第二は、「停留点=最適点だと無条件に信じる」誤解。本ツールが NG を返す通り、停留点が設計範囲の外にあれば、その外挿は信用できません。また停留点が領域内でも、Hessian の固有値が両方同符号でなければ単なる鞍点で、目的の最大/最小ではありません。最大化したいのに固有値が片方プラスなら、「その方向にはまだ上がる余地がある」サイン。Steepest Ascent でその方向に領域を移動させ、新しい実験で再フィットしましょう。「鞍点を最適と勘違いして報告」する事故は実は珍しくありません。

第三は、「実験点をモデルが当てはまるかどうかだけで評価する」こと。RSM では計画段階で「回転可能性(rotatability)」「直交性」「最小実験数」のバランスを取って実験点を配置します。手元の実験データに無理やり2次モデルをフィットさせると、回帰係数の標準誤差が大きく、ANOVA で個々の β の有意性が判定できない状態になります。CCD の軸点距離 α や中心点繰り返し数は、ノイズ推定と曲率検出の両方を担う重要な設計パラメータです。「とりあえず取ったデータで RSM」は失敗の元、計画段階こそが RSM の生命線、と覚えてください。

使い方ガイド

  1. linearCoeff1Num、linearCoeff2Numに1次項の回帰係数を入力(例:β₁=2.5、β₂=-1.8)
  2. quadCoeff11Num、quadCoeff22Numに2次項係数を設定(例:β₁₁=-0.6、β₂₂=-0.4で応答曲面の曲率を定義)
  3. 各Rangeパラメータで入力値の許容範囲を指定し、シミュレータが停留点座標と固有値をリアルタイム計算
  4. 停留点タイプ判定結果(最大値/最小値/鞍点)から実験領域内での最適条件を確認

具体的な計算例

触媒合成プロセスで温度X₁と圧力X₂を最適化する場合:linearCoeff1Num=3.2(温度の1次効果)、linearCoeff2Num=1.8(圧力の1次効果)、quadCoeff11Num=-0.5、quadCoeff22Num=-0.3を入力。停留点X₁*≈3.2°C、X₂*≈3.0 bar、停留点Y値≈8.5%収率が得られ、固有値λ₁=-0.52、λ₂=-0.31より最大値型の応答曲面と判定。R²=0.94で回帰モデル信頼度を確認し、実験15回程度で最適条件に収束

実務での注意点