最优化方法——乘子法和外点罚函数法
此题摘自文件 最优化方法 第三章(乘子法) 13/24
【题目】分别用外点法和乘子法求等式约束问题
min12x21+16x22s.t.x1+x2=1【解】(外点罚函数法)① 构造罚函数
F(x,Mk)=12x21+16x22+Mk(x1+x2−1)2② 求偏导
∂F∂x1=x1+2Mk(x1+x2−1)=0
∂F∂x1=13x2+2Mk(x1+x2−1)=0
③ 联立两个偏导式,求驻点,并得到x1和x2的表达式
联立(1)和(2),得到
x2=3x1将(3)代回(1),得到
x1+2Mk(4x1−1)=0⇒(1+8Mk)x1=2Mk⇒x1=2Mk1+8Mk根据(3),得到
x2=3x1=6Mk1+8Mk将x1和x2的表达式改写为
x∗=[22Mk+862Mk+8]T④ 令Mk→∞,得到结果
x∗=[1434]T【总结】
解题步骤如下:
① 构造罚函数;
② 求出对x1和x2的罚函数偏导;
③ 联立两个偏导式,求出驻点,并代回偏导式,得到xk1和xk2的表达式;
④ 令Mk趋近无穷,得到x∗。
【解】(乘子法)
① 写出增广Lagrange函数;
φ(x,vk)=12x21+16x22+vk(x1+x2−1)+ck2(x1+x2−1)2② 用解析法求驻点;
∂φ∂x1=x1+vk+c(x1+x2−1)=0
∂φ∂x2=13x1+vk+c(x1+x2−1)=0
联立(5)和(6),得到
x2=3x1将(7)代入(5)中,得到
x1+vk+c(x1+3x1−1)=0⇒(4c+1)x1+(vk−c)=0⇒x1=c−vk4c+1那么,x2为
x1=3(c−vk)4c+1③ 根据乘子迭代公式求下一步的vk+1
根据乘子迭代公式,有
vk+1=vk+c(x1+x2−1)=vk+c(4c−4vk4c+1+4c+14c+1)=vk+c(1+4vk4c+1)④ c取任意值,解出vk的值;
令c=1,且vk→∞,得到
v∗=v∗−1+4v∗5⇒v∗=−0.25⑤ 将c和vk代入点xk中,得出结果
xk1=1+145=14,xk2=3xk1=34即
x∗=[1434]T【总结】
解题步骤如下:
① 写出增广Lagrange函数;
② 用解析法求驻点;
③ 根据乘子迭代公式求下一步的vk+1
④ c 取任意值,解出 vk 的值;
⑤ 将 c 和 vk 代入点 xk 中,得出结果。