等式约束优化(可行点)

《Convex Optimization》

之前,讲的下降方法以及Newton方法都是在无约束条件的前提下的。这里讨论的是在等式约束(线性方程)的前提下讨论的。我们研究的是下面的凸优化问题:

minimizef(x)s.t.Ax=b

其中f:RnR,ARp×n,rankA=p<n
请不要怀疑rankA=p<n条件的可靠性,否则,只需找出其线性无关组即可。而且,显然,如果Ax=b如果无解,那么优化问题同样无解。
通过对对偶问题,及KKT条件的分析,可以知道,该优化问题存在最优解的充要条件是,存在vRp满足:

Ax=b,f(x)+ATv=0

策略一 消除等式约束

我们首先确定矩阵FRn×(np)和向量x^Rn,用以参数化可行集:

{x|Ax=b}={Fz+x^|zRnp}

只需,x^Ax=b的一个特解即可。F是值域为A的零空间的任何矩阵(满足A(Fz)=0,即Fz可以取得所有Ax=0的解)。于是等式约束问题就可以变为无约束问题:

minimizef~(z)=f(Fz+x^)

我们也可以为等式约束构造一个最优的对偶变量v:

v=(AAT)1Af(x)

在这里插入图片描述
另外需要注意的是,如果F是一个消除矩阵,那么任意的FT同样也是合适的消除矩阵,其中TR(np)×(np)是非奇异的。

策略二 Newton方向

我们希望导出等式约束问题:

minimizef(x)s.t.Ax=b

在可行点x处䣌Newton方向Δxnt,将目标函数换成在x附近的二阶泰勒近似:

minimizef^(x+v)=f(x)+f(x)Tv+12vT2f(x)vs.t.A(x+v)=b

注意上述问题时关于v的优化问题。
根据我们在文章开头提到的最优性条件,可以得到:
最优性条件
其中Δxnt表示Newton方向,w是该二次问题的最优对偶变量。

另外一种解释

我们可以将Newton方向Δxnt及其相关向量w解释为最优性条件

Ax=b,f(x)+ATv=0

的线性近似方程组的解。
我们用x+Δxnt代替x,用w代替v,并将第二个方程中的梯度项换成其在x附近的线性近似,从而得到:

A(x+Δxnt)=b,f(x+Δxnt)+ATwf(x)+2f(x)Δxnt+ATw=0

利用Ax=b,以上方程变成:

AΔxnt=0,2f(x)Δxnt+ATw=f(x)

这上面定义的一样。

Newton减量——停止准则

我们将等式约束问题的Newton减量定义为:

λ(x)=(ΔxntT2f(x)Δxnt)1/2

这和无约束情况表示的是一样的,因此也可以进行同样的解释。
fx处的二阶泰勒近似为:

f^(x+v)=f(x)+f(x)Tv+(1/2)vT2f(x)v

f(x)与二次模型之间的差值满足:

f(x)inf{f^(x+v)|A(x+v)=b}=λ(x)2/2

从上面可以看出,λ2(x)/2x处的f(x)p给出了基于二次模型的一个估计,这可以作为设计好的停止准则的基础。

可行下降方法的算法

注意,下面的算法初始点为可行点。
等式约束的Newton方法

Newton方法和消除法

对原始问题采用Newton方法的迭代过程和对利用消除法简化后采用Newton方法过程完全一致,证明翻阅《凸优化》。

posted @   馒头and花卷  阅读(1971)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示