我们给出了求函数在某种限制条件下的条件极值。这种方法叫做拉格朗日乘子法(Lagrange multiplier)。假如函数 \(w=f(x,y,z)\),限制条件是 \(g(x,y,z)=0\), 则函数取到极值的必要条件是 \(\nabla f=\lambda \nabla g\),其中 \(\lambda\) 是一个参数。
笔记下载:拉格朗日条件极值 Lagrange multiplier
我们来解这样的问题,求函数 \(z=f(x,y)\) 在限制条件 \(\phi(x,y)=0\) 下的极值问题。我们来看看 \(f\) 和 \(\phi\) 应该满足什么样的条件。
1,条件极值的求法:我们知道 \(\phi(x,y)=0\) 一般可以确定一个隐函数 \(y=y(x)\),若 \(\phi(x,y\) 可微而且 \(\frac{\partial \phi}{\partial y}\ne0\)。
我们设 \((x_0,y_0)\) 是极值,则 \(\frac{dz}{dx}\Big|_{(x_0,y_0)}=0\)。因为
\[\frac{dz}{dx}=f_x+f_y\frac{dy}{dx}=\frac{\partial f}{\partial x}+\frac{\partial f}{\partial y}\cdot (-\frac{\phi_x}{\phi_y})=0\]所以
\[f_x=f_y\cdot \frac{\phi_x}{\phi_y}\quad \Longrightarrow\quad \frac{f_x}{\phi_x}=\frac{f_y}{\phi_y}=\lambda\]
最后一个等式是因为是四个量都是函数,两边相等,只能是常数。上式意味着 \[\begin{cases}f_x=\lambda \phi_x\\ f_y=\lambda \phi_y\end{cases}\]
更一般的,我们有下列等式\[\nabla f=\lambda \nabla \phi\]这个等式对于一般的多元函数成立,而不光是二元函数。
这个条件只是给出了条件极值可能的点。用这个等式求出来的是不是极值,我们需要代入函数值,以及端点处的值来确定。所有这些点处的值,最大的为最大值,最小的为最小值。
我们来看两个例子。
例1:用 \(12 cm^2\) 的纸壳制作一个无盖的长方体盒子问长、宽、高各为多少,体积最大?
解:如果设长、宽、高各为 \(x,y,z\),则我们有如下的等式:
\[V=xyz, \phi(x,y,z)=xy+2yz+2xz-12=0\]
由题意,我们求的是 \(V\) 的最大值,限制条件是第二个等式(表面积固定)。由条件极值的条件,我们有 \(\nabla V=\lambda \nabla\phi\),也就是
\[\begin{cases}V_x=\lambda \phi_x\\ V_y=\lambda \phi_y\\ V_z=\lambda \phi_z\end{cases}\quad \Longrightarrow\quad \begin{cases}yz=\lambda(y+2z)\\ xz=\lambda(x+2z)\\ xy=\lambda(2\lambda(x+y))\end{cases}\]
三个方程分别乘以 \(x,y,z\), 我们得到了
\[\begin{cases}xyz=\lambda(xy+2xz)\\ xyz=\lambda(xy+2yz)\\ xyz=\lambda(2\lambda(xz+yz))\end{cases}\]
用第一个方程除以第二个方程,我们得到 \(2xz=2yz\),我们得到 \(x=y\) 或者 \(z=0\); 用第二个方程减去第三个方程,我们得到 \(y=2z\) 或者 \(x=0\)。
不管是 \(x=0\) 还是 \(z=0\),体积都是 \(0\),肯定是最小值。 所以我们得到 \(x=y=2z\),代入到限制条件 \(xy+2yz+2xz-12=0\),也就是
\[4z^2+4z^2+4z^2-12=0\quad \Longrightarrow\quad z=1\]所以 \(x=2, y=2, z=1\) 而体积 \[v=4\] 为最大值。
我们来看一个需要考虑边界的例子。例 1 其实也默认考虑了边界,只是在边界上体积为 0,那就是 \(x,y,z\) 有一个变量取到最大值,那么其它两个变量只能取 \(0\),从而体积为 \(0\)。
例2:求函数 \(z=x^2+2y^2\) 在圆 \(x^2+y^2\le 1\) 内的最大、最小值。
我们需要先求在圆内的无条件极值。因为我们看到的是一个区域,这个区域的表达式是一个不等式,它不是一个等式。
(1)区域内的极值。\(f_x=2x, f_y=4y\),令它们等于 \(0\),我们得到一个临界点 \((0,0)\)。又因为 \(f_{xx}=2, f_{yy}=4, f_{xy}=0\),所以 \(f_{xx}f_{yy}-f^2_{xy}=8>0\),所以 \(f(0,0)=0\) 是极小值。
(2)在边界上, \((x, y)\) 满足限制条件 \(x^2+y^2=1\)。所以求的是条件极值。
\[\begin{cases}f_x=\lambda \phi_x\\ f_y=\lambda\phi_y\\ x^2+y^2=1\end{cases}\quad \Longrightarrow\quad \begin{cases}2x=\lambda(2x)\\4y=\lambda(2y)\\ x^2+y^2=1\end{cases}\]
由第一个方程,我们得到 \(x=0\) 或者 \(\lambda=1\)。
若 \(x=0\),则 \(y=\pm1\);若 \(\lambda=1\),则 \(y=0, x=\pm 1\)。所以我们得到四个点 \((0,1)\), \((0,-1)\),\((1,0)\) 和 \((-1,0)\)。
\(f(0,1)=2, f(0,-1)=2, f(1,0)=1, f(-1,0)=1\), 而 \(f(0,0)=0\)。所以圆内的最大值为 \(f(0,1)=f(0,-1)=4\),最小值 为\(f(0,0)=0\)。