制約条件のもとで関数の極値を求める手法です。グラフで図示しやすいので2変数関数を考えます。
という制約条件のもとで
を最大にする
を求めることが目標です。
まずは問題の前提を再確認。は曲面、
は曲線で表されます。つまりこの問題は、曲線
上で
が最大となる点
を求めると言い換えられます。そのような点
では、
で表される等高線と
が接しているはずです。もし等高線と接しておらず、交差していれば、
を微小量移動した点では
の値が変化しているはずなので、極値にはなりません。そして点
で
と
が接しているときは、
と
が平行であるはずです。なぜなら
は等高線
の法線ベクトルであり、
は曲線
の法線ベクトルですから、接点では
と
は平行です。(参考:法線ベクトルと勾配)
図示すれば、
のようになります。
左図は曲面上を
で表される直線が通っている図です。(図の作りやすさで曲線ではなく直線にしました)*1 右図は曲面の等高線と直線、および接点における法線ベクトルを図示しています。これを見れば、等高線と接する点が極値になっていることは直感的にわかりますね。なお極値では等高線と
が必ず接していますが、接していても必ず極値であるとは限りません。ある方向から曲線が等高線に近づき接し、その後反対方向に抜けていけば極値にはなりません。*2 以上の説明は数学的な厳密性には欠けるでしょうが、直感的な理解には足りるかと思います。
さて、接点においてと
は平行であるため、ある定数
が存在し
と書けます。平行であっても大きさや向きが等しいは限らないので定数倍が必要です。これを変形すれば
です。*3 この式(2)から解が求められます。ここで
とおけば、式(2)は
であることに等しいです。さらに制約条件は
とも書けますので、まとめると式(3)において
となるが求める解です。
のみが求めたい場合
は求める必要がないため、未定乗数法と呼ばれるそうです。
さて簡単のために2変数関数、1つの制約条件を考えましたが、一般的にn変数、m個の制約条件を考えることができ、の制約条件
における極値は
をとして解が求められます。*4 今回は制約条件が等式の場合でしたが、不等式の場合は不等式制約におけるラグランジュの未定乗数法(KKT条件)を参照ください。