非线性规划中的序列二次规划-代理模型-信赖域-自适应屏障混合算法基础题
题目描述
考虑非线性规划问题:
\[\min f(x) = (x_1 - 2)^2 + (x_2 - 1)^2 \]
满足约束:
\[g_1(x) = x_1^2 - x_2 \le 0, \quad g_2(x) = x_1 + x_2 - 2 \le 0 \]
初始点 \(x^{(0)} = (0, 0)\),试用序列二次规划-代理模型-信赖域-自适应屏障混合算法求解该问题。要求详细展示迭代过程,包括代理模型的构建、信赖域调整、屏障参数更新等步骤。
解题过程
1. 算法框架概述
该混合算法结合以下组件:
- 代理模型:用二次模型近似目标函数和约束(例如拉格朗日函数),减少计算成本。
- 信赖域:限制每一步迭代的搜索范围,保证模型可靠性。
- 自适应屏障:将不等式约束转化为屏障项,通过参数调整逐步逼近可行边界。
2. 初始设置
- 初始点 \(x^{(0)} = (0, 0)\),目标函数值 \(f(x^{(0)}) = 4\)。
- 约束违反度:\(g_1(x^{(0)}) = 0\),\(g_2(x^{(0)}) = -2\)(满足约束)。
- 屏障参数 \(\mu = 0.1\),信赖域半径 \(\Delta = 0.5\)。
3. 构建代理模型
在 \(x^{(0)}\) 处构建拉格朗日函数的二次近似:
\[L(x, \lambda) = f(x) + \lambda_1 g_1(x) + \lambda_2 g_2(x) \]
初始拉格朗日乘子 \(\lambda^{(0)} = (0, 0)\)。计算梯度:
\[\nabla f(x^{(0)}) = (-4, -2), \quad \nabla g_1(x^{(0)}) = (0, -1), \quad \nabla g_2(x^{(0)}) = (1, 1) \]
Hessian 矩阵用拟牛顿法(BFGS)初始化,设为 \(H^{(0)} = I\)(单位矩阵)。
代理模型为:
\[Q(p) = f(x^{(0)}) + \nabla L(x^{(0)})^T p + \frac{1}{2} p^T H^{(0)} p \]
其中 \(p = x - x^{(0)}\),\(\nabla L(x^{(0)}) = \nabla f(x^{(0)}) = (-4, -2)\)。
4. 自适应屏障项处理约束
将不等式约束转化为屏障函数:
\[B(x) = f(x) - \mu \sum_{i=1}^2 \ln(-g_i(x)) \]
注意:\(g_2(x^{(0)}) < 0\) 满足屏障条件,但 \(g_1(x^{(0)}) = 0\) 导致屏障项未定义!因此需调整初始点至严格可行内点。
修正:取 \(x^{(0)} = (0.5, 0.5)\),则 \(g_1 = -0.25 < 0\),\(g_2 = -1 < 0\),屏障函数可计算:
\[B(x^{(0)}) = 2.5 - 0.1[\ln(0.25) + \ln(1)] \approx 2.5 + 0.14 = 2.64 \]
5. 信赖域子问题求解
在 \(x^{(0)} = (0.5, 0.5)\) 处求解:
\[\min_p Q(p) = 2.5 + (-3, -1)^T p + \frac{1}{2} p^T I p \quad \text{s.t.} \ \|p\| \le \Delta \]
梯度为 \(\nabla Q = (-3, -1)\),最优步长 \(p^* = -\Delta \cdot \frac{\nabla Q}{\|\nabla Q\|} \approx (-0.46, -0.15)\)。
新点 \(x^{(1)} = x^{(0)} + p^* \approx (0.04, 0.35)\)。
6. 接受性检验与信赖域调整
计算实际下降量:
\[\text{Actual Reduction} = B(x^{(0)}) - B(x^{(1)}) \]
预测下降量:
\[\text{Predicted Reduction} = Q(0) - Q(p^*) \]
比值 \(\rho = \frac{\text{Actual Reduction}}{\text{Predicted Reduction}}\)。
若 \(\rho > 0.75\),扩大信赖域(\(\Delta \leftarrow 2\Delta\));若 \(\rho < 0.25\),缩小信赖域(\(\Delta \leftarrow \Delta/2\))。
7. 屏障参数自适应更新
每迭代一次,按 \(\mu \leftarrow \mu / 2\) 更新,使屏障项逐渐减弱,逼近原始约束。
8. 迭代收敛
重复步骤 3–7,直至 \(\|p\| < 10^{-3}\) 且约束违反度小于容差。最终解趋近于理论最优解 \(x^* = (1, 1)\)(满足 \(g_1(x^*) = 0\) 且 \(g_2(x^*) = 0\))。
关键点总结
- 代理模型降低计算复杂度,信赖域保证稳定性。
- 自适应屏障处理不等式约束,初始点需严格可行。
- 参数(\(\mu, \Delta\))动态调整平衡收敛速度与精度。