单个约束下的条件极值
当我们想要计算函数$f(x_1,x_2\cdots x_n)$在超等势面$g(x_1,x_2\cdots x_n)=k$的约束下的极值,则其计算步骤为
-
解方程组
$$
\begin{equation}
\begin{cases}
\nabla f(x_1,x_2\cdots x_n) &= \lambda \nabla g(x_1,x_2\cdots x_n)\\
g(x_1,x_2\cdots x_n) &= k
\end{cases}
\end{equation}
$$求出$x_1,x_2,\cdots,x_n,\lambda$ .
-
将求解得到的$x_1,x_2,\cdots,x_n,y,\lambda$代入函数$f(x_1,x_2\cdots x_n)$,比较最大值与最小值。
需要注意的是,拉格朗日乘数法得到的解并不一定是极值点,判断得到的点是否为极值点需要根据实际情况具体分析
多个约束下的条件极值
当我们想要计算函数$f(x_1,x_2\cdots x_n)$在超等势面$g_1(x_1,x_2\cdots x_n)=k_1,g_2(x_1,x_2\cdots x_n)=k_2,\cdots g_m(x_1,x_2\cdots x_n)=k_m,(m<n)$的约束下的极值,则其计算步骤为:
- 解方程组
$$
\begin{equation}
\begin{cases}
\nabla f(x_1,x_2\cdots x_n) &= \lambda_1 \nabla g_1(x_1,x_2\cdots x_n)+\cdots +\lambda_m \nabla g_m(x_1,x_2\cdots x_n) \\
g_1(x_1,x_2\cdots x_n) &= k_1\
&\vdots\\
g_m(x_1,x_2\cdots x_n) &= k_m\\
\end{cases}
\end{equation}
$$
求出$x_1,x_2,\cdots,x_n,\lambda_1,\cdots \lambda_m$ .
- 将求解得到的$x_1,x_2,\cdots,x_n,\lambda_1,\cdots \lambda_m$代入函数$f(x_1,x_2\cdots x_n)$,比较最大值与最小值。
参考教材章节
- 《Calculus》 14.8 Lagrange Multipliers
课后作业
- 求函数$f(x,y)=x^2+2y^2$在约束条件$x^2+y^2=1$下的条件极值。
- 求球面$x^2+y^2+z^2=4$上距离点$P(3,1,-1)$最近和最远的点。
- 求函数$f(x,y,z)=x+2y+3z$满足如下方程组的约束条件下的极值
$$
\begin{equation*}
\begin{cases}
x-y+z&=1\\
x^2+y^2&=1
\end{cases}
\end{equation*}
$$