拉格朗日乘子法小记🐤
拉格朗日乘子法:计算多变量函数最值
设要优化的函数为 \(f(x_1,x_2,\dots,x_n)\),有限制 \(g(x_1,x_2,\dots,x_n)=0\)。
凭空引入拉格朗日乘子 \(\lambda\) ,令 \(h(x_1,x_2,\dots,x_n)=f(x_1,x_2,\dots,x_n)+\lambda g(x_1,x_2,\dots,x_n)\),则显然 \(h(x_1,x_2,\dots,x_n)=f(x_1,x_2,\dots,x_n)\)。
但是就有——
\[\begin{equation}
\begin{cases}
0={\vartheta h (x_1,x_2,\dots,x_n) \over \vartheta x_1 }={\vartheta f (x_1,x_2,\dots,x_n) \over \vartheta x_1 }+\lambda {\vartheta g (x_1,x_2,\dots,x_n) \over \vartheta x_1 }\\
0={\vartheta h (x_1,x_2,\dots,x_n) \over \vartheta x_2 }={\vartheta f (x_1,x_2,\dots,x_n) \over \vartheta x_2 }+\lambda {\vartheta g (x_1,x_2,\dots,x_n) \over \vartheta x_2 }\\
\dots\\
0={\vartheta h (x_1,x_2,\dots,x_n) \over \vartheta x_n }={\vartheta f (x_1,x_2,\dots,x_n) \over \vartheta x_n }+\lambda {\vartheta g (x_1,x_2,\dots,x_n) \over \vartheta x_n }\\
g(x_1,x_2,\dots,x_n)=0
\end{cases}
\end{equation}
\]
一共 \(n+1\) 个方程,\(n+1\) 个变量,解出来就行了。
至于正确性可以参考这里