本周原 PDF 是 Lee 的手算,前半是 Powell 直接法,后半是线性约束下的可行方向与 KKT 判断。
题 11-4:Powell 方法
目标函数为
f(x)=23x12+21x22−x1x2−2x1,
从 x(1,0)=(−2,4)T 和坐标方向开始。
第一轮沿 e1 精确搜索得到步长 4:
x(1,1)=(2,4)T.
再沿 e2 搜索得到步长 −2:
x(1,2)=(2,2)T.
净位移方向为
d(1,3)=x(1,2)−x(1,0)=(4,−2)T.
沿净位移方向作精确搜索。把
x(λ)=(2,2)T+λ(4,−2)T
代入目标并令一阶导数为零,得到
λ3=−172.
因此源作答记录
x(2,0)=(26/17,38/17)T.
第二轮更新方向组并重复,最终得到
x∗=(1,1)T,f∗=−1.
直接代入梯度
∇f=(3x1−x2−2,x2−x1)T
可验证该点为驻点;Hessian
[3−1−11]≻0,
故它是唯一全局最优点。
题 12-2:在边界点找可行下降方向
这一页没有完整抄录原题,只能可靠辨认目标梯度、活动约束的一阶方向条件和最后选择的方向。源作答先写出
∇f(x)=(2x1+x2−6, x1+4x2−2, −12)T,
并在题目给定点 x^ 算得
∇f(x^)=(−3,3,−12)T.
活动约束给出可行方向条件
d1+d2+d3≤0,d3≥0.
手写稿选择
d=(0,−1,0)T.
逐项核对:
d1+d2+d3=−1≤0,d3=0≥0,
且
∇f(x^)Td=(−3,3,−12)(0,−1,0)T=−3<0.
所以它既满足扫描中可辨认的线性化可行条件,又是严格下降方向。由于源页没有完整题面,这里不反推缺失的目标常数或约束表达式。
题 12-3:Zoutendijk 方向子问题
源页没有完整抄录原约束,但两轮梯度、方向与步长均可辨认。目标梯度写为
∇f(x)=(2x1−34, 8x2−32)T.
第一轮从
x(1)=(1,2)T
出发,得到
∇f(x(1))=(−32,−16)T,d(1)=(1,0)T.
手写方向子问题旁还能辨认出系数记录
a^=(−2,1,0)T,b^=(−2,−1,−2)T,
但缺少原题上下文,不能据此重新编造完整约束。扫描明确给出的最大可行步长为
dmax=1.
于是取一步到
x(2)=x(1)+1⋅d(1)=(2,2)T.
第二轮重新计算
∇f(x(2))=(−30,−16)T,
再解方向子问题得到
d(2)=(0,0)T.
这里完整梯度并不为零;停止的原因是约束下的方向子问题已找不到非零可行下降方向。源作答据此记录
x∗=(2,2)T,f∗=−112.
正规流程是:
- 识别当前活动约束;
- 解 min∇fTd,并用盒约束归一化;
- 方向目标为负则前进;
- 先算最大可行步长,再在区间内做一维搜索;
- 方向子问题最优值为零时,用其对偶乘子验证 KKT。
作业自检
- Powell 每轮的新方向是净位移,不是最后一次坐标方向。
- 可行方向只由活动约束的一阶条件决定。
- 最大可行步长还要检查当前非活动约束何时碰到边界。
- 得到 d=0 后应说明它与 KKT 的联系,而不是只写“停止”。