ラグランジュ乗数法
ラグランジュ乗数法とは、等式で表される制約条件のもとで関数の極値を求める数学的手法である。制約式に未知の係数(ラグランジュ乗数λ)を掛けて目的関数と1つにまとめ、制約のない問題として解く。18世紀にジョゼフ=ルイ・ラグランジュが体系化したもので、構造設計や電力系統の運用、機械学習まで、条件付きの最適化が必要な場面で広く使われている。
解析力学から生まれた手法
ラグランジュは1736年にトリノで生まれ、1788年に主著『解析力学(Mécanique analytique)』を出版した。この本は図を1枚も使わず、力学を代数と微積分だけで書き直したことで知られる。拘束を受けて動く質点の運動、たとえば糸につながれた振り子を扱うとき、拘束力を直接求めずに運動方程式を立てる道具として乗数が導入された。もとは変分法の研究から出た発想で、のちに有限次元の極値問題にも使われるようになり、現在のラグランジュ乗数法の形が定まった。物理学の解析力学では、今も拘束系を扱う基本手法として教えられている。
ラグランジュ関数と停留条件
目的関数を f(x, y)、制約条件を g(x, y) = 0 とする。このとき次のラグランジュ関数を定義する。
L(x, y, λ) = f(x, y) − λ g(x, y)
L を各変数で偏微分し、すべてを0とおく。∂L/∂x = 0、∂L/∂y = 0、∂L/∂λ = 0 の3式を連立させると、極値の候補点が得られる。3つ目の式は制約 g = 0 そのものである。変数が n 個、制約が m 本ある問題なら、未知数は n + m 個になり、同じ数の方程式を解けばよい。
幾何学的な意味
停留条件は ∇f = λ∇g と書き直せる。つまり極値点では、目的関数の勾配ベクトルと制約曲線の法線ベクトルが平行になる。2変数なら、f の等高線が制約曲線にちょうど接する点と考えればイメージしやすい。接していなければ、曲線に沿って少し動くだけで f の値はまだ増減できるからである。
計算例:容積350 mLの円筒容器
容積 V = 350 cm3 の円筒缶で、材料(表面積)を最も少なくする寸法を求める。半径を r、高さを h とすると、表面積は S = 2πr2 + 2πrh、制約は πr2h − V = 0 となる。ラグランジュ関数を偏微分すると、h に関する式から λ = 2/r が出る。これを r に関する式 4πr + 2πh − 2λπrh = 0 に代入すると h = 2r となり、高さと直径が等しい缶が最適と分かる。数値を入れると r ≈ 3.82 cm、h ≈ 7.64 cm である。
ところが市販の350 mL飲料缶は直径約66 mm、高さ約122 mmで、計算結果よりずっと細長い。製缶の現場では、胴部の板厚が約0.1 mmであるのに対し、蓋は内圧に耐えるため2倍以上の厚さがある。蓋の材料単価も高いので、「表面積」ではなく「材料コスト」を目的関数にすると、蓋を小さくする方向に解がずれる。持ちやすさや自動販売機の寸法といった制約も加わる。モデル化で何を目的関数に選ぶかによって、答えは大きく変わるのである。
乗数λが示す感度
λは計算を進めるための補助変数にとどまらない。λは「制約の値を1単位ゆるめたとき、最適値がどれだけ変わるか」を示す感度係数である。上の缶の例では λ = 2/r ≈ 0.52 cm−1 となる。容積を1 cm3 増やすと、最小表面積が約0.52 cm2 増えるという意味になる。経済学ではこれをシャドープライス(潜在価格)と呼び、予算や資源をもう1単位増やす価値を測る指標として使う。
不等式制約への拡張とKKT条件
実際の設計では「応力は許容値以下」「温度は150 ℃以下」のような不等式制約がほとんどである。これに対応したのがKKT条件で、1939年のW.カルーシュの修士論文と、1951年のH.W.クーンとA.W.タッカーの論文に由来する。不等式制約 h(x) ≤ 0 に対する乗数μには、μ ≥ 0 と μh(x) = 0(相補性条件)が課される。制約が効いていない点ではμが0になり、効いている点では等式制約と同じ扱いになる。
| 手法 | 扱える制約 | 特徴 | 主な用途 |
|---|---|---|---|
| ラグランジュ乗数法 | 等式のみ | 解析的に解ける場合が多い | 力学、手計算での設計検討 |
| KKT条件 | 等式・不等式 | 最適性の必要条件を与える | 非線形計画法の理論基盤 |
| ペナルティ法 | 等式・不等式 | 制約違反に罰則項を加える、実装が簡単 | 汎用の数値最適化ソフト |
| 拡張ラグランジュ法 | 等式・不等式 | 乗数と罰則を併用し収束が安定 | 大規模構造解析、接触解析 |
工学分野での活用例
製造業や工学の現場では、名前を意識しないままラグランジュ乗数法の考え方に触れていることが多い。代表的な例を挙げる。
- 電力系統の経済負荷配分:総需要を満たすという等式制約のもとで燃料費を最小化すると、各発電機の増分燃料費がλに等しくなる「等増分燃料費則」が得られる。
- トポロジー最適化:体積制約付きのSIMP法では、OC法の内部で二分法によってλを調整し、材料の配置を更新する。
- 有限要素法の接触解析:部品同士がめり込まない条件を乗数で課し、λは接触反力として読み取れる。
- サポートベクターマシン:マージン最大化の双対問題を導く過程でKKT条件が使われる。
- 最小二乗法の制約付き版:校正曲線を特定の点に必ず通したいとき、その条件を等式制約として加える。
市販のCAEソフト(Abaqus、ANSYSなど)では、接触アルゴリズムとしてペナルティ法と拡張ラグランジュ法を選べることが多い。ペナルティ法は計算が速い反面、わずかなめり込みが残る。ボルト締結部の面圧分布のように精度が必要な解析では、計算時間が1.5〜2倍程度かかっても拡張ラグランジュ法を選ぶ、という使い分けが実務ではよく見られる。
適用時の落とし穴
停留条件を満たす点は「候補」であり、最大か最小か、あるいは鞍点かは別に確かめる必要がある。判定には縁付きヘッセ行列を使う。制約の勾配が0になる特異点では乗数が定義できず、解を見落とすこともある。数値計算では変数のスケールが103倍以上離れると収束が悪化しやすいので、無次元化してから解くのが制御工学や構造最適化でも定石となっている。
コメント(β版)