§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
先考虑条件极值点所满足的必要条件。上述约束条件可看成是空 间曲线的方程。设曲线上一点(x,yn=0)为条件极值点,由于在该点 rakJ=2,不妨假设在(xn,1,=)点aC,B≠0,则由隐函数存在定理, a(, 2) 在(x,υ,=)附近由该方程可以唯一确定 y=y(x),2=z(x), XEO(o, p) 它是曲线方程的参数形式。 将它们代入目标函数,原问题就转化为函数 p (x=f(x,y(x)=(x)), xEO(xo, p) 的无条件极值问题,x是函数Φ(x)的极值点,因此(x)=0,即 f(xn2y0,0)+f、(xNf(x,1,0 dz 0
先考虑条件极值点所满足的必要条件。上述约束条件可看成是 空 间曲线的方程。设曲线上一点 ),,( 000 zyx 为条件极值点,由于在该点 J = 2rank ,不妨假设在 ),,( 000 zyx 点 0 ),( ),( ≠ ∂ ∂ zy HG ,则由隐函数存在定理, 在 ),,( 000 zyx 附近由该方程可以唯一确定 ),(),(),( = = ∈ xOxxzzxyy 0 ρ ( )(),( 0 00 0 = = xzzxyy )。 它是曲线方程的参数形式。 将它们代入目标函数,原问题就转化为函数 0 Φ ( ) ( , ( ), ( )), ( , ) x f xyx zx x Ox = ∈ ρ 的无条件极值问题, 0 x 是函数 Φ ( ) x 的极值点,因此 0 Φ′()0 x = ,即 0 00 0 00 0 00 d d (, ,) (, ,) (, ,) 0 d d xy z y z fxyz fxyz fxyz x x + + =
这说明向量 gradf(xo, yo, 2o)=f(o,yo, =o)i+f,(o,yo =o)j+f(ro, yo, ro k 与向量r=[1出正交,即与曲线在(x,,)点的切向量正交,因 此 gradf(x0,yn,x0)可看作是曲线在(x0,y0,=0)点处的法平面上的向量。由 定理1251,这个法平面是由 grad(x0,y,x0)与 grad(xn,y,)张成的, 因此grad(xn,yn,=)可以由 grad(xn,y,=)和 grad(xyn,z)线性表出, 或者说,存在常数λn,山,使得 gradf(xo, yo, 2o)=no gradG(o, yo, 2o)+Ho grad(o, yo, =o) 这就是点(xn3y0,=)为条件极值点所满足的必要条件
这说明向量 0 00 0 00 0 00 0 00 (, ,) (, ,) (, ,) (, ,) xy z gradf x y z = f x y z i + + f x y z j f x y z k 与向量 d d 1, , d d y z x x τ ⎛ ⎞ = ⎜ ⎟ ⎝ ⎠ 正交,即与曲线在 ),,( 000 zyx 点的切向量正交,因 此 0 00 gradf (, ,) xyz 可看作是曲线在 ),,( 000 zyx 点处的法平面上的向量。由 定理 12.5.1,这个法平面是由 0 00 gradGx y z (, ,) 与 0 00 gradHx y z (, ,)张成的, 因此 0 00 gradf (, ,) xyz 可以由 0 00 gradGx y z (, ,) 和 0 00 gradHx y z (, ,) 线性表出, 或者说,存在常数 00 λ ,μ ,使得 0 00 gradf (, ,) xyz =λ0 0 00 gradGx y z (, ,) + μ 0 0 00 gradHx y z (, ,), 这就是点 ),,( 000 zyx 为条件极值点所满足的必要条件
将这个方程按分量写出就是 f2(x,y,=0)-A0G2(x0,y0,=0)-40H2(x0,yo,=0)=0 f(x0,y0,=0)-4G2(x0,y0,20)-0H,(x0,y=0)=0, f:(x0,y2=0)-A0G2(x0,y0,0)-10H2(x0,y0,0)=0 于是,如果构造 Lagrange函数 L(, y, z,n, u=f(x,y, 2)-nG(x, y, =)-uH(x,, 2) (λ,μ称为 Lagrange乘数),则条件极值点就在方程组 f2-G2-HHx2=0, fy -,-uHy L:=f:-1G2-HH2=0, G=0, H=0 的所有解(x,y,=0,40,)所对应的点(x0,y0,=0)中。用这种方法来求可 能的条件极值点的方法,称为 Lagrange乘数法
将这个方程按分量写出就是 ⎪ ⎩ ⎪ ⎨ ⎧ − − = − − = − − = .0),,(),,(),,( ,0),,(),,(),,( ,0),,(),,(),,( 00000000000 00000000000 00000000000 zyxHzyxGzyxf zyxHzyxGzyxf zyxHzyxGzyxf z z z y y y x x x λ μ λ μ λ μ 于是,如果构造 Lagrange 函数 Lxyz f xyz Gxyz Hxyz (, ,, , ) (, ,) (, ,) (, ,) λ μ λμ = − − ( λ,μ 称为 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,,2)=x+y 在约束条件 x+y+2= x+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 x+2y+3z-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、~。 由于点到直线的距离,即这个问题的最小值必定存在,因此这个 唯一的可能极值点51.2必是最小值点,也就是说,原点到直线 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个约束条件 )=0(=1,2,…,m, 下的极值,这里f,g,(=1,2,…,m)具有连续偏导数,且 Jacobi矩阵 ig ag dg 1 g2 0g 2 J 在满足约束条件的点处是满秩的,即 rank j=m。那么我们有下述类似 的结论: 定理12.7.1(条件极值的必要条件)若点x0=(x,x2…,x)为函数 f(x)满足约束条件的条件极值点,则必存在m个常数λ1,2…,λ,使 得在x点成立 gradf=ngradg, mgradg2 +.+Angradg
一般地,考虑目标函数 ),,,( 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 " ,使 得在 x0点成立 1 12 2 m m grad grad grad grad f = λ gg g + ++ λ λ "
于是可以将 Lagrange乘数法推广到一般情形。同样地构造 Lagrange函数 )∑4、(x 那么条件极值点就在方程组 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个常数λ,2…,满足方 程组(*),则当方阵 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 为满足约束条件的条件极小(大)值