优化问题原问题P,P不一定是凸问题
⎧⎨⎩min f(x)s.t. gi(x)≤0,i=1,...,l hi(x)=0,i=1,...,m
一.计算对偶问题流程
1.写出拉格朗日函数
L(x)=f(x)+∑li=1λigi(x)+∑mi=1μihi(x)
2.写出拉格朗日对偶函数
d(λ,μ)=infx∈X{f(x)+∑li=1λigi(x)+∑mi=1μihi(x)|x∈X},X是函数f(x)的定义域(求解的时候定义域不要漏了),inf是求下确界的意思
3.求解拉格朗日对偶函数
这一步具体问题具体分析
4.写出对偶问题问题
对偶问题标准格式
{max d(λ,μ)s.t. λi≥0,μi无约束
二.案例分析
1.最小二乘问题
{min f(x)=||x||22=xTxs.t. Ax=b,x∈Rn
写出拉格朗日函数和对偶函数
L(x)=f(x)+∑li=1λigi(x)+∑mi=1μihi(x)=xTx+μT(Ax−b)
d(λ,μ)=infx∈X{f(x)+∑li=1λigi(x)+∑mi=1μihi(x)|x∈X}
=infx∈X{xTx+μT(Ax−b)|x∈Rn}
d对x求偏导,求最小值,也就是下确界
∂d∂x=2x+ATμ=0
即x=−ATμ2时,对偶函数d(λ,μ)有下确界
d(λ,μ)=xTx+μT(Ax−b)=(−ATμ2)T(−ATμ2)+μT(A(−ATμ2)−b)
=14μTAATμ−12μTAATμ−μTb
=−14μTAATμ−μTb
写出对偶问题
{max −14μTAATμ−μTbμ无约束
2.线性规划问题
{min f(x)=cTxs.t. Ax=b,x∈Rn
写出拉格朗日函数和对偶函数
L(x)=f(x)+∑li=1λigi(x)+∑mi=1μihi(x)=cTx+μT(Ax−b)
d(λ,μ)=infx∈X{f(x)+∑li=1λigi(x)+∑mi=1μihi(x)|x∈X}
=infx∈X{cTx+μTAx−μTb|x∈Rn}
求最小值,也就是下确界
这里没法像上面一样求导,注意观察cTx+μTAx−μTb是一个线性函数,怎么可能取到最小值呢?
显然必须cT+μTA=0,则最小值/下确界=−μTb
则
d(λ,μ)={−μTbcT+μTA=0−∞otherwise
写出对偶问题
⎧⎨⎩max −μTbcT+μTA=0μ无约束
三.总结
写对偶问题是可以按照套路来的,切记不要偷工减料,μ都是无约束的,但是建议还是写上,求d(λ,μ)的时候注意定义域
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)