形式陈述
对约束优化问题公理库优化问题Optimization problem在可行解集合上最小化或最大化目标函数的计算问题。
定义总违约量及罚目标
“精确”表示某个有限参数之后,罚问题保留原问题的最优解。必须说明是在某个点附近保留局部解,还是两个全局解集相同;这两个结论需要不同条件。
先给一个完整的全局版本。设 为连续可微凸函数、 仿射,原问题存在最优点 与KKT 乘子公理库KKT 条件Karush–Kuhn–Tucker conditions · KKT conditions用可行性、乘子符号、互补松弛与驻点方程刻画约束最优性的条件。 ,其中 ,Lagrangian 采用
令 ,空乘子块按零处理。若 ,则 的全局最优解集恰等于原约束问题的全局最优解集。若只取 ,原最优点仍是罚目标的最小点,但可能出现额外的不可行最小点。
尖角是这一性质的核心。在 处,绝对值不能用普通导数处理。上述凸版本可用凸次梯度公理库次梯度与次微分Subgradient · Subdifferential以全局仿射下界刻画凸函数在不可微点的支撑斜率集合。;非凸约束产生的复合罚项则不能直接套用凸次微分演算,应采用方向导数或另行定义的广义导数。
直觉
二次罚靠离开约束一定距离来产生反向斜率;绝对值罚在约束上就能提供一整段斜率。只要这段斜率足以抵消目标在约束法向上的推动,最优点就能准确停在约束上,不必等参数趋于无穷。
乘子衡量放松约束带来的边际收益。罚率超过这一收益时,微小违约赚到的目标改善不足以付罚金。ℓ1 违约对应乘子的 ℓ∞ 阈值,来自不等式 ;更换违约范数,也会更换相应的对偶范数。
有限罚率与精确可行
例子与边界
阈值恰好是二
考虑 、约束 。原解为零,驻点式 给出 。罚目标为
在 分支,导数为 ,所以候选 只有在 时适用。在 分支,导数为 ,其零点不在负半轴。最后检查尖点:
因此唯一最小点是 。例如 时为一, 和三时均为零。严格凸的平方项使本例在临界参数处仍唯一。
对比二次罚公理库二次罚函数法与病态性Quadratic penalty method将等式违背的平方加入目标,通过增大罚参数逼近可行解,并量化有限罚参数的偏差与内层 Hessian 的病态性。: 的最小点为 ,对所有有限 都大于零。这是不同的法向斜率机制,不是求解器容差造成的区别。
为什么一般定理要求严格超过阈值
取 、约束 。最优乘子为一。当 时, 在整个 上都等于零,所以包含无数不可行最小点;当 时,两侧斜率都指向零,才只留下原解。
精确罚也不是“所有驻点都可行”。对非凸约束,罚目标仍可能有不可行驻点;对 ,任何有限 的罚目标在远处都趋于负无穷,虽然零附近存在精确的局部最低点。局部精确性不能替代全局可解性。
推论与应用
全局解集相同的短证明
凸性和 KKT 保证 对所有 成立。逐项比较有
第二式在 时左侧为 ,在 时直接成立。相加得到
原问题的任意最优点可行,罚目标等于 ;而 时,任何不可行点都有严格更大的罚目标。于是两个最优解集一致。证明同时给出违约证书:若 ,则 。数值近似最小化仍只得到近似可行,精确性定理没有消除求解误差。
非凸等式问题中的局部版本
设仅有光滑等式 , 满行秩, 满足驻点式,而且
这是约束切空间上的二阶充分条件。可选一个足够大的有限 ,使 正定:罚项控制法向,原来的二阶条件控制切向。因此 是 的严格局部最小点。
当 时,在充分小的邻域内,
因为线性违约项压过二次小量。把这项加回前述严格局部最小关系,便证明 也是 的严格局部最小点。这里的局部结论由明确的正则性和二阶条件支撑,没有使用非凸问题的全局对偶下界。
怎样把精确罚用于算法
罚率往往未知,可以用当前 QP 或 KKT 乘子估计作线索,再检查约束是否改善。固定点处的绝对值尖角不宜直接交给假设处处二阶光滑的 Newton 程序。对仿射约束,可以引入 与 ,最小化 ;这样用额外变量显式表示非光滑项。
序列二次规划公理库序列二次规划Sequential quadratic programming · SQP将非线性约束线性化,以 Lagrangian 的曲率构造局部 QP,并通过乘子更新和罚函数验收控制真实约束误差。常把 用作步长验收函数,同时计入目标与违约。它在此是一种求解工具。Lasso公理库Lasso 的最优性与对偶间隙Lasso optimality conditions · Lasso duality gap · Lasso primal-dual certificate从残差相关性核验 Lasso 的零与非零坐标,并用可行对偶值认证剩余优化误差。中的 ℓ1 则是希望保留的建模惩罚;虽然某些一维子问题都出现软阈值公理库近端算子Proximal operator · Proximity operator在降低凸函数值与保持靠近输入点之间取得精确平衡的单值算子。,两者对参数和最终目标的含义不同。
参考资料