References

本章讨论内点法中最基础的 barrier method. 核心思想是用一个在约束边界处发散的光滑函数替代不等式约束, 从而把含不等式约束的凸优化问题转化为一系列只含等式约束的光滑优化问题.

1. Inequality Constrained Optimization

考虑如下含约束凸优化问题:

其中 是凸函数且二阶连续可微, 行满秩, 即 .

  • 许多标准问题都可以写成这种形式, 例如 LP, QP, QCQP (quadratically constrained quadratic program).

  • 一些看似不同的问题也可以通过引入辅助变量转化为上述形式. 例如

    可以等价写成

  • SOCP 和 SDP 也可以在更一般的锥规划框架下用类似的内点法思想处理.

假设最优解 存在, 并记 . 此外假设 Slater 条件成立, 即存在 使得

因此该问题严格可行. 根据 Slater 定理, 强对偶成立, 原问题最优值等于对偶问题最优值.

原问题的 Lagrangian 为

对应的 dual function 为

对偶问题为

在强对偶和适当正则性条件下, 最优解满足 KKT 条件:

因此, 求解原问题可以等价地看作寻找满足 KKT 条件的三元组 .

2. Logarithmic Barrier Function and Central Path

等式约束可以用 equality-constrained Newton method 相对直接地处理, 参见 Newton Method. Barrier method 的主要目标是处理不等式约束.

忽略等式约束的困难后, 我们可以把不等式约束写入目标函数:

其中

这个 hard indicator 精确表达了可行性, 但不可微, 难以直接用 Newton 方法优化. Barrier method 用光滑近似替代它.

2.1 Logarithmic Barrier

Definition (Logarithmic barrier). 对 , 定义

该函数只在严格可行区域 内有定义, 且当 时发散到 . 因此它会把迭代点限制在可行域内部, 这也是 interior-point method 名称的来源.

Logarithmic barrier approximation

Figure: Log barrier 对 hard indicator 的光滑近似.

定义原问题的 log-barrier 函数

则原问题可以近似为如下只含等式约束的问题:

为了后续使用 Newton 方法, 计算 的梯度和 Hessian:

参数 控制近似精度. 当 越大时, barrier 项 对目标函数的扰动越小, 近似越接近原问题; 但对应问题也越病态, 因为最优点会更靠近约束边界. 实践中通常取一列递增参数

先求解较容易的低精度问题, 再用 warm start 逐步求解高精度问题.

2.2 Central Path

Definition (Central path). 对每个 , 令 是如下 barrier subproblem 的最优解:

则

称为 central path. 这里把目标函数乘以 与最小化 是等价的.

给定原问题 , 我们可以构造一族 barrier subproblem . 对 写出 Lagrangian:

由于 是该问题的最优解, 其满足 KKT 条件:

注意 stationarity 条件中第二项来自 .

2.3 Central Path and KKT Conditions

观察 central path 的 KKT 条件, 可以发现它与原问题 KKT 条件之间只差一个被扰动的 complementary slackness 条件.

对 stationarity 条件两边同时除以 , 得到

也即

其中

逐项比较:

  • Primal feasibility. Central path 上的 满足 且 , 因此也满足原问题的 primal feasibility.

  • Dual feasibility. 因为 且 , 所以 , 自动满足 dual feasibility.

  • Stationarity. 式 正是原问题 Lagrangian 对 的 stationarity 条件.

  • Complementary slackness. 原问题要求 , 而 central path 上有

    这是一个 perturbed complementary slackness 条件. 当 时, , 因而逐渐逼近原问题的 complementary slackness.

因此, barrier method 可以理解为求解一系列 perturbed KKT systems. 随着 增大, 扰动逐渐消失, central path 逐渐逼近原问题最优解.

2.4 Dual Feasibility and Duality Gap

下面说明 central path 诱导出的

是原问题对偶问题 的一个可行解.

首先 已经由严格可行性得到. 还需要说明

由式 可知, 是

关于 的 stationary point. 又因为 关于 是凸函数, 所以 是其 global minimizer. 因此

接着计算 duality gap:

由于 是 dual feasible, 弱对偶给出

又因为 是 primal feasible, 所以 . 于是

这给出了 barrier method 的关键停止准则:

当 时, 上界趋于 , 因而 central path 的目标值收敛到原问题最优值.

3. Barrier Method Algorithm

3.1 Algorithm Details

由上一节可知, 若希望得到 -optimal 解, 只需使

即 . 直接取很大的 通常不高效, 因为对应 barrier subproblem 可能非常难解. 实践中更常用 warm start: 从较小的 开始, 逐步放大 .

给定 和增大因子 , 令

依次求解

每一步都用上一个问题的解作为 Newton 初始点. 当 时停止, 此时 是 -optimal 解.

Algorithm (Barrier method).

  • Input: 严格可行初始点 , 初始 barrier 参数 , 增大因子 , 精度要求 .
  • Repeat:
    1. 对当前 , 用 equality-constrained Newton method 求解

    2. 更新 , 作为下一个子问题的 warm start.

    3. 若 , 停止并输出 .

    4. 否则更新 .

该算法有内外两层迭代结构. 外层迭代更新 , 每次定义一个新的 barrier subproblem; 内层迭代用 Newton 方法求解当前 barrier subproblem.

3.2 Implementation Considerations

Centering accuracy. 理论推导常假设每个 centering step 都精确求得 . 实际数值计算中只能得到近似解 . 只要每次求解足够精确, barrier method 仍可在渐近意义下保持收敛; 但近似误差会影响 stationarity 判断和 gap 估计, 因此实现中通常需要同时监控 Newton residual.

Choice of . 若 过小, 外层迭代次数会增加; 若 过大, 相邻 barrier subproblem 差异太大, 内层 Newton 迭代可能变多. 经验上 barrier method 对 并不极端敏感, 常见选择是 或 . 若做 worst-case complexity 分析, 往往取 接近 , 使相邻子问题更接近.

Choice of . 若 过小, 初始子问题容易求解但 gap 较大; 若 过大, 第一个 centering step 可能很难. 如果已有 primal feasible 点 和 dual feasible 点 , 可用初始 duality gap 选择

如果只有严格可行的 , 但没有对偶可行点, 可以尝试选择 使 尽量接近 的 central path. 一个启发式做法是求解

即让 尽量满足对应 barrier subproblem 的 stationarity 条件. 范数也可用 Hessian 诱导范数度量, 以更好反映局部曲率.

Initial point. 传统 barrier method 需要严格可行初始点:

其中不等式严格可行性通常不可违反, 因为 log barrier 在边界外无定义. 对等式约束 , 可以使用 infeasible-start Newton method 从不满足等式约束的点开始, 逐步把迭代拉回等式可行域.

3.3 Convergence

若每个 centering step 都精确求解, 则第 次外层迭代后

为了达到 , 只需

因此外层 centering steps 的数量是

在 self-concordance 条件下, 可以进一步证明每个 centering step 所需 Newton 迭代数近似为常数级, 因而总 Newton 迭代数也保持对 的对数依赖.

4. Feasibility and Phase I Problem

Barrier method 的一个关键前提是存在严格可行初始点. 因此在进入 Phase II 的原问题求解前, 通常需要先解决一个 Phase I feasibility problem.

4.1 Basic Phase I Problem

为了寻找严格可行点, 考虑辅助问题

直观上, 是所有不等式约束的最大 violation 上界. 若能找到 , 则有

从而 是原问题的严格可行点.

对 Phase I 问题应用 barrier method, 得到 centering problem:

初始时可以选择足够大的 使

从而 log barrier 有定义. 迭代过程中, 一旦得到 , 就可以提前停止; 此时 已经是 Phase II 可用的严格可行初始点, 不需要把 Phase I 问题高精度求到最优.

设 Phase I 最优值为 , 则:

  • 若 , 原问题严格可行.
  • 若 , 原问题不可行.
  • 若 , 则处于边界情形. 如果最优解可达, 原问题可行但没有严格可行点; 如果最优值不可达, 则不能得到可行点.

4.2 Sum-of-Infeasibilities Variant

Basic Phase I 使用一个共享 slack , 它度量最大 violation. 另一种常见变体是为每个不等式引入单独的 slack variable:

相比共享一个 , 该形式能更细致地反映每个约束的违背程度. 当原不等式系统不可行时, 非零的 可以提示哪些约束无法同时满足.

Comparison of Phase I infeasibility patterns

Figure: Basic Phase I 与 sum-of-infeasibilities variant 的 violation 分布比较.

在图示例子中, basic Phase I 只满足 100 个约束中的 39 个; sum-of-infeasibilities variant 满足 79 个约束, 说明单独 slack 能诱导更稀疏、更有解释性的 violation pattern.

4.3 Termination Near the Phase II Central Path

Basic Phase I 的目标只是找到严格可行点. 但即使已经得到

该点也可能离 Phase II 的 central path 很远, 导致后续 barrier method 需要较多 Newton 迭代才能回到 central path 附近.

一种改造方式是在 Phase I 中加入目标函数上界约束:

其中 是足够大的常数, 例如满足

对该问题使用 log barrier, 给定 , 得到

其 stationarity 条件为

当 时, 第二个条件变为

对比 Phase II barrier subproblem 的 stationarity:

只要令

两者形式一致. 因此, 加入 后, Phase I 在接近 时能更自然地靠近 Phase II central path, 从而减少后续 centering 的代价.

4.4 Phase I via Infeasible-Start Newton Method

若一开始难以找到满足 的点, 可以对 Phase I centering problem 使用 infeasible-start Newton method.

考虑

只要能找到某个 , 就可以取

从而保证所有 log barrier 项都有定义. 即使此时 , infeasible-start Newton method 也可以同时降低 residual 并逼近等式可行域.

如果连公共定义域中的初始点都难以构造, 还可以引入 shift variables :

这些 shift variables 允许每个函数先在自己的定义域内启动, 再通过等式约束逐步把 推回 . 最终 后, 求得的 才是原问题的可行点.