非线性规划中的增广拉格朗日法
字数 1125 2025-11-18 10:48:52

非线性规划中的增广拉格朗日法

  1. 问题背景与动机
    非线性规划(NLP)的目标是在约束条件下最小化目标函数。对于问题:

\[ \min f(x) \quad \text{s.t.} \quad h_i(x) = 0, \, i \in \mathcal{E}, \quad g_j(x) \leq 0, \, j \in \mathcal{I} \]

拉格朗日法通过引入乘子处理约束,但需在无约束优化中平衡可行性与最优性。传统拉格朗日法对非凸问题可能收敛失败,需改进。

  1. 增广拉格朗日函数构造
    针对等式约束 \(h(x) = 0\),定义增广拉格朗日函数:

\[ \mathcal{L}_A(x, \lambda; \rho) = f(x) + \lambda^\top h(x) + \frac{\rho}{2} \|h(x)\|^2 \]

其中 \(\rho > 0\) 为惩罚参数,\(\lambda\) 为拉格朗日乘子。附加的二次项 \(\frac{\rho}{2} \|h(x)\|^2\) 在偏离可行域时加大惩罚,促进约束满足。

  1. 不等式约束的处理
    通过引入松弛变量 \(s_j \geq 0\),将不等式约束 \(g_j(x) \leq 0\) 转化为等式:

\[ g_j(x) + s_j = 0, \quad s_j \geq 0 \]

或使用一次近似函数(如二次罚函数结合投影)。另一种常见方法是仅对活动约束施加二次惩罚。

  1. 算法流程与乘子更新
    • 步骤1:给定初始乘子 \(\lambda^k\) 和参数 \(\rho^k\),求解无约束子问题:

\[ x^{k+1} = \arg\min_x \mathcal{L}_A(x, \lambda^k; \rho^k) \]

  • 步骤2:更新乘子以强化约束满足:

\[ \lambda^{k+1} = \lambda^k + \rho^k h(x^{k+1}) \]

该更新基于对偶上升思想,当 \(h(x) \neq 0\) 时调整乘子。

  • 步骤3:自适应调整 \(\rho^k\)(例如根据约束违反程度增大)。
  1. 收敛性与优势分析

    • 在适当条件下(如目标函数与约束光滑、满足二阶充分条件),算法收敛至局部最优解。
    • 相比纯罚函数法,二次项的存在允许在有限 \(\rho\) 下收敛,避免数值病态。
    • 对比拉格朗日松弛法,增广项使子问题更易求解且稳定性更高。
  2. 扩展与变体

    • 交替方向乘子法(ADMM):处理可分离结构的分布式优化。
    • 自适应惩罚参数:根据迭代进度动态调整 \(\rho\) 以平衡精度与速度。
    • 非精确求解:子问题无需精确优化,节省计算成本。
非线性规划中的增广拉格朗日法 问题背景与动机 非线性规划(NLP)的目标是在约束条件下最小化目标函数。对于问题: \[ \min f(x) \quad \text{s.t.} \quad h_ i(x) = 0, \, i \in \mathcal{E}, \quad g_ j(x) \leq 0, \, j \in \mathcal{I} \] 拉格朗日法通过引入乘子处理约束,但需在无约束优化中平衡可行性与最优性。传统拉格朗日法对非凸问题可能收敛失败,需改进。 增广拉格朗日函数构造 针对等式约束 \( h(x) = 0 \),定义增广拉格朗日函数: \[ \mathcal{L}_ A(x, \lambda; \rho) = f(x) + \lambda^\top h(x) + \frac{\rho}{2} \|h(x)\|^2 \] 其中 \(\rho > 0\) 为惩罚参数,\(\lambda\) 为拉格朗日乘子。附加的二次项 \(\frac{\rho}{2} \|h(x)\|^2\) 在偏离可行域时加大惩罚,促进约束满足。 不等式约束的处理 通过引入松弛变量 \( s_ j \geq 0 \),将不等式约束 \( g_ j(x) \leq 0 \) 转化为等式: \[ g_ j(x) + s_ j = 0, \quad s_ j \geq 0 \] 或使用一次近似函数(如二次罚函数结合投影)。另一种常见方法是仅对活动约束施加二次惩罚。 算法流程与乘子更新 步骤1 :给定初始乘子 \(\lambda^k\) 和参数 \(\rho^k\),求解无约束子问题: \[ x^{k+1} = \arg\min_ x \mathcal{L}_ A(x, \lambda^k; \rho^k) \] 步骤2 :更新乘子以强化约束满足: \[ \lambda^{k+1} = \lambda^k + \rho^k h(x^{k+1}) \] 该更新基于对偶上升思想,当 \( h(x) \neq 0 \) 时调整乘子。 步骤3 :自适应调整 \(\rho^k\)(例如根据约束违反程度增大)。 收敛性与优势分析 在适当条件下(如目标函数与约束光滑、满足二阶充分条件),算法收敛至局部最优解。 相比纯罚函数法,二次项的存在允许在有限 \(\rho\) 下收敛,避免数值病态。 对比拉格朗日松弛法,增广项使子问题更易求解且稳定性更高。 扩展与变体 交替方向乘子法(ADMM) :处理可分离结构的分布式优化。 自适应惩罚参数 :根据迭代进度动态调整 \(\rho\) 以平衡精度与速度。 非精确求解 :子问题无需精确优化,节省计算成本。