§7条件极值问题与 Lagrange乘数法 Lagrange乘数法 在考虑函数的极值或最值问题时,经常需要对函数的自变量附加 定的条件。例如,求原点到直线 x+y+2= x+2y+3z=6 的距离,就是在限制条件x+y+z=1和x+2y+3z=6的情况下,计算函 数∫(x,y)=√x2+y2+2的最小值。这就是所谓的条件极值问题
Lagrange 乘数法 在考虑函数的极值或最值问题时,经常需要对函数的自变量附加 一定的条件。例如,求原点到直线 ⎩⎨⎧ =++ =++ 632 ,1zyx zyx 的距离,就是在限制条件 + + zyx = 1和 + + zyx = 632 的情况下,计算函 数 222 ),,( ++= zyxzyxf 的最小值。这就是所谓的条件极值问题。 §7 条件极值问题与Lagrange乘数法
以三元函数为例,条件极值问题的提法是:求目标函数 f(x, y, 2) 在约束条件 G(x,y,z)=0 H(x,y,z)=0 下的极值。 假定∫,F,G具有连续偏导数,且 Jacobi矩阵 GGG HH H 在满足约束条件的点处是满秩的,即 rankJ=2
以三元函数为例,条件极值问题的提法是:求目标函数 zyxf ),,( 在约束条件 ⎩ ⎨ ⎧ = = 0),,( ,0),,( zyxH zyxG 下的极值。 假定 ,, GFf 具有连续偏导数,且 Jacobi 矩阵 ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = zyx zyx HHH GGG J 在满足约束条件的点处是满秩的,即 J = 2rank
先考虑条件极值点所满足的必要条件。上述约束条件可看成是空 间曲线的方程。设曲线上一点(x0,y,x)为条件极值点,由于在该点 mkJ=2,不妨假设在(x,y:)点CH≠0,则由隐函数存在定理, (y,z) 在(xy,x)附近由该方程可以唯一确定 y=y(x),z=2(x),x∈O(x02,p)(y0=y(x0),0=z(x)) 它是曲线方程的参数形式。 将它们代入目标函数,原问题就转化为函数 Φ(x)=f(x,y(x),x(x),x∈O(x0,p) 的无条件极值问题,x是函数Φ(x)的极值点,因此Φ(x)=0,即 dz fx(x0,y0,-=0)+f,(x0,y0,=0)x+f(x0,y0,-0)x=0
先考虑条件极值点所满足的必要条件。上述约束条件可看成是空 间曲线的方程。设曲线上一点 ),,( 000 zyx 为条件极值点,由于在该点 J = 2rank ,不妨假设在 ),,( 000 zyx 点 0 ),( ),( ≠ ∂ ∂ zy HG ,则由隐函数存在定理, 在 ),,( 000 zyx 附近由该方程可以唯一确定 ),(),(),( = = ∈ xOxxzzxyy 0 ρ ( )(),( 0 00 0 = = xzzxyy )。 它是曲线方程的参数形式。 将它们代入目标函数,原问题就转化为函数 ),()),(),(,()( Φ = ∈ xOxxzxyxfx 0 ρ 的无条件极值问题, 0 x 是函数 Φ x)( 的极值点,因此 0)( Φ′ x0 = ,即 0),,(),,(),,( 000 + 000 + 000 = dx dz zyxf dxdy zyxfzyxf x y z
这说明向量 grad f(x0,y2=0)=f2(x,y,=0)i+f,(x0,y2=0)j+f:(x,y0,=0)k 与向量=[出正交,即与曲线在xny1:5)点的切向量正交,因 dx d 此 grad ft(x0,yo,x0)可看作是曲线在(xn,yn,)点处的法平面上的向量。由 定理1251,这个法平面是由 gradS(x0,y0,=0)与 grad H(x0,yo,=0)张成的, 因此 grad f(x0,yo,=0)可以由 gradE(xn,ybn2)和 gradE(xny20)线性表出, 或者说,存在常数λn,A,使得 grad f(o,yo, =o)=no gradG(ro, yo, =0)+Ho grad H(o,yo 20), 这就是点(xa2y,=)为条件极值点所满足的必要条件
这说明向量 i j ),,(),,(),,(),,(grad k 000 000 000 000 zyxfzyxfzyxfzyxf = x + y + z 与向量 ⎟⎠⎞ ⎜⎝⎛ = dxdz dxdy τ ,,1 正交,即与曲线在 ),,( 000 zyx 点的切向量正交,因 此 zyxf 000 ),,(grad 可看作是曲线在 ),,( 000 zyx 点处的法平面上的向量。由 定理 12.5.1,这个法平面是由 zyxG 000 ),,(grad 与 zyxH 000 ),,(grad 张成的, 因此 zyxf 000 ),,(grad 可以由 zyxG 000 ),,(grad 和 zyxH 000 ),,(grad 线性表出, 或者说,存在常数 00 λ ,μ ,使得 zyxf 000 ),,(grad =λ0 zyxG 000 ),,(grad + μ 0 zyxH 000 ),,(grad , 这就是点 ),,( 000 zyx 为条件极值点所满足的必要条件
将这个方程按分量写出就是 f2(x0,y,20)-G2(x0,yo,=0)-oH2(x0,y0,20)=0, f,(x0,y0,=0)-2G,(x0,y2=0)-1fH,(x0,y0,=0)=0 f:(x0,y02,=0)-A0G2(x0,y0,20)-/0H2(x0,y0,0)=0 于是,如果构造 Lagrange函数 L(x,y, 2=f(x,y,2-nG(x,y, 2)-uH(x,y, 3) (,称为 Lagrange乘数),则条件极值点就在方程组 Lr=f-AG f -nG,-uH,=0, L:=f2-1G2-HH2=0, H=0 的所有解(x23y0,=040,40)所对应的点(x0,y0,=)中。用这种方法来求可 能的条件极值点的方法,称为 Lagrange乘数法
将这个方程按分量写出就是 ⎪ ⎩ ⎪ ⎨ ⎧ − − = − − = − − = .0),,(),,(),,( ,0),,(),,(),,( ,0),,(),,(),,( 00000000000 00000000000 00000000000 zyxHzyxGzyxf zyxHzyxGzyxf zyxHzyxGzyxf z z z y y y x x x λ μ λ μ λ μ 于是,如果构造 Lagrange 函数 = − λ − μ zyxHzyxGzyxfzyxL ),,(),,(),,(),,( ( ,μλ 称为 Lagrange 乘数),则条件极值点就在方程组 ⎪ ⎪ ⎪ ⎩ ⎪ ⎪ ⎪ ⎨ ⎧ = = =−−= =−−= =−−= 0 ,0 ,0 ,0 ,0 H G HGfL HGfL HGfL zzz z yy y y xx x x μλ μλ μλ 的所有解 ),,,,( μλ 00000 zyx 所对应的点 ),,( 000 zyx 中。用这种方法来求可 能的条件极值点的方法,称为 Lagrange 乘数法
作为一个例子,现在用 Lagrange乘数法来解决本节开始提出的 问题,即求函数 F(x,y,=) y 在约束条件 x+y+z=1, +2y+3z=6 下的最小值(最小值的平方根就是距离)。为此,作 Lagrange函数 L(x,y,z,A,p)=x2+y2+2-(x+y+2-1)-(x+2y+32-6), 在方程组 L=2x-1-H=0, 2y-2-21=0, L.=2x-2-3=0, x+y+z-1=0 +2y+32-6=0 中,把方程组中的第一、第二和第三式相加,再利用第四式得 32+6=2
作为一个例子,现在用 Lagrange 乘数法来解决本节开始提出的 问题,即求函数 222 ),,( ++= zyxzyxF 在约束条件 ⎩ ⎨ ⎧ =++ =++ 632 ,1 zyx zyx 下的最小值(最小值的平方根就是距离)。为此,作 Lagrange 函数 ),,,,( ( )632()1 222 μλ λ μ zyxzyxzyxzyxL −++−−++−++= , 在方程组 ⎪ ⎪ ⎪ ⎩ ⎪ ⎪ ⎪ ⎨ ⎧ =−++ =−++ =−−= =−−= =−−= .0632 ,01 ,032 ,022 2 ,0 zyx zyx zL yL xL z y x μλ μλ μλ 中,把方程组中的第一、第二和第三式相加,再利用第四式得 λ + μ = 263
把第一式、第二式的两倍和第三式的三倍相加,再利用第五式得 6+14=12。 从以上两个方程解得 22 由此可得唯一的可能极值点x=-5,y=1:z=7。 由于点到直线的距离,即这个问题的最小值必定存在,因此这个 唯一的可能极值点512必是最小值点,也就是说,原点到直线 333 x+y+2 的距离为 x+2y+3z=6
把第一式、第二式的两倍和第三式的三倍相加,再利用第五式得 λ + μ = 12146 。 从以上两个方程解得 4, 3 22 μλ =−= , 由此可得唯一的可能极值点 3 7 , 3 1 , 3 5 zyx ==−= 。 由于点到直线的距离,即这个问题的最小值必定存在,因此这个 唯一的可能极值点 ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − 3 7 , 3 1 , 3 5 必是最小值点,也就是说,原点到直线 ⎩ ⎨ ⎧ =++ =++ 632 ,1 zyx zyx 的距离为 3 25 3 7 , 3 1 , 3 5 ⎟ = ⎠ ⎞ ⎜ ⎝ ⎛ F − = 3 5
般地,考虑目标函数f(x1,x2…,x)在m个约束条件 8(x1,x2,…,xn)=0(i=1,2,…,m,m<m) 下的极值,这里∫g,(=12,…,m)具有连续偏导数,且 Jacobi矩阵 agi ag agI J 在满足约東条件的点处是满秩的,即 rankJ=m。那么我们有下述类似 的结论: 定理12.7.1(条件极值的必要条件)若点x=(x,x2…,x)为函数 f(x)满足约束条件的条件极值点,则必存在m个常数λ1,2…,n,使 得在xn点成立 grad f=n, grad g+n2 grad g2+. +Am grad g m
一般地,考虑目标函数 ),,,( 21 n " xxxf 在 m 个约束条件 );,,2,1(0),,,( 21 nmmixxxgi " n == " < 下的极值,这里 migf ),,2,1(, i = " 具有连续偏导数,且 Jacobi 矩阵 ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ = n m m m n n x g x g x g x g x g x g x g x g x g J " ### " " 1 2 2 2 2 1 2 1 2 1 1 1 在满足约束条件的点处是满秩的,即rank = mJ 。那么我们有下述类似 的结论: 定理 12.7.1(条件极值的必要条件)若点 x0 ),,,( 00 2 0 1 n = " xxx 为函数 f x)( 满足约束条件的条件极值点,则必存在 m 个常数 λλλ m ,,, 21 " ,使 得在 0 x 点成立 m m grad f grad g grad g grad g = λ1 + λ21 2 "++ λ
于是可以将 Lagrange乘数法推广到一般情形。同样地构造 Lagrange函数 xn,1,12,…,n)=f( 152 181(x1 那么条件极值点就在方程组 OL_of ∑428=0, (k=1,2,…,m,l=1,2,…,m) 的所有解(x1,x2…,xn,1,2,…,n所对应的点(x,x2…,x)中
于是可以将 Lagrange 乘数法推广到一般情形。同样地构造 Lagrange 函数 ∑= = − m i n m n ii n xxxL xxxgxxxf 1 21 21 21 21 " " λλλ " λ " ),,,(),,,(),,,,,,,( , 那么条件极值点就在方程组 ( * ) ),,2,1;,,2,1( ,0 ,0 1 mlnk g x g x f x L l m i k i i kk = " = " ⎪ ⎩ ⎪ ⎨ ⎧ = = ∂ ∂ − ∂ ∂ = ∂ ∂ ∑= λ 的所有解 ),,,,,,,( 21 n 21 m " xxx λ λ " λ 所对应的点 ),,,( 21 n " xxx 中
判断如上所得的点是否为极值点有以下的一个充分条件,我们不 加证明地给出。 定理127.2设点x0=(x,x2…,x)及m个常数λ,42…,满足方 程组(*),则当方阵 02L (x02A1,2…,n nxn 为正定(负定)矩阵时,x为满足约束条件的条件极小(大)值点, f(x)为满足约束条件的条件极小(大)值
判断如上所得的点是否为极值点有以下的一个充分条件,我们不 加证明地给出。 定理 12.7.2 设点 0 x ),,,( 00 2 0 1 n = " xxx 及 m 个常数 λ λ λ m ,,, 21 " 满足方 程组( * ),则当方阵 nn m lk xx L × ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ∂∂ ∂ ),,,( 210 2 x " λλλ 为正定(负定)矩阵时, 0 x 为满足约束条件的条件极小(大)值点, )( 0 f x 为满足约束条件的条件极小(大)值