前言

如果你对这篇文章可感兴趣,可以点击「【访客必读 - 指引页】一文囊括主页内所有高质量博客」,查看完整博客分类与对应链接。

文章目录

  • 前言
  • 五、对偶性
    • 定义
    • 对偶函数性质
    • 对偶问题性质
      • 强 / 弱对偶 - 对偶间隙
      • KKT 条件
        • 互补松弛条件 (Complementary Slackness)
        • 稳定性条件 (Stationarity)
        • KKT 条件适用范围
      • KKT 举例
      • 总结
    • 敏感性分析

五、对偶性

定义

原问题 P (Primal Problem):

  • x∈Rn,D=⋂i=1mdom(fi)∩⋂i=1pdom(hi)x\in R^n,D=\bigcap^m_{i=1}dom(f_i)\cap\bigcap^p_{i=1}dom(h_i)x∈Rn,D=⋂i=1m​dom(fi​)∩⋂i=1p​dom(hi​)
    min⁡f0(x)s.t.fi(x)≤0,i=1,...,Mhi(x)=0,i=1,...,P\begin{aligned} \min \ & f_0(x) \\ s.t. \ & f_i(x)\leq 0, i=1,...,M \\ & h_i(x)=0,i=1,...,P \end{aligned} min s.t. ​f0​(x)fi​(x)≤0,i=1,...,Mhi​(x)=0,i=1,...,P​

拉格朗日函数 (Lagrangian Function / Lagrangian):

  • λ、v\lambda、vλ、v 为拉格朗日乘子 (Lagrange Multiplier / Multiplier)
    L(x,λ,v)=f0(x)+∑i=1mλifi(x)+∑i=1pvihi(x)L(x,\lambda,v)=f_0(x)+\sum\limits_{i=1}^m \lambda_i f_i(x)+\sum\limits_{i=1}^p v_i h_i(x) L(x,λ,v)=f0​(x)+i=1∑m​λi​fi​(x)+i=1∑p​vi​hi​(x)

拉格朗日对偶函数 (Lagrange Dual Function / Dual Function):
g(λ,v)=inf⁡x∈DL(x,λ,v)g(\lambda,v)=\inf_{x\in D}L(x,\lambda,v) g(λ,v)=x∈Dinf​L(x,λ,v)

对偶问题 D (Dual Problem / Lagrange Dual Problem):

  • 若对偶函数有部分情况为负无穷,则写对偶问题时可以直接忽略负无穷的部分
    max⁡g(λ,v)s.t.λ≥0\begin{aligned} \max \ & g(\lambda,v) \\ s.t. \ & \lambda\geq 0 \end{aligned} max s.t. ​g(λ,v)λ≥0​

对偶函数性质

  • 对偶函数一定是凹函数
  • ∀λ≥0,∀v,g(λ,v)≤p∗\forall \lambda \geq 0,\forall v,g(\lambda,v)\leq p^*∀λ≥0,∀v,g(λ,v)≤p∗,p∗p^*p∗ 为原问题最优值

对偶问题性质

  • 对偶问题一定是凸优化问题
  • d∗、p∗d^*、p^*d∗、p∗ 分别为对偶问题、原问题的最优值,其中 d∗≤p∗d^*\leq p^*d∗≤p∗
  • λ∗、v∗\lambda^*、v^*λ∗、v∗ 为最优拉格朗日乘子 (Optimal Lagrange Multiplier)

强 / 弱对偶 - 对偶间隙

对偶概念:

  • 弱对偶 (Weak Duality):d∗≤p∗d^*\leq p^*d∗≤p∗
  • 强对偶 (Strong Duality):d∗=p∗d^*=p^*d∗=p∗
  • 对偶间隙 (Duality Gap):p∗−d∗p^*-d^*p∗−d∗

D 的相对领域 (Relative Interior):

  • Relint D={x∈D∣B(x,r)∩affD≤D,∃r>0}D=\{x\in D|B(x,r)\cap aff\ D\leq D,\exists r>0\}D={x∈D∣B(x,r)∩aff D≤D,∃r>0}
  • 其中 affDaff\ Daff D 表示 DDD 的仿射包,B(x,r)B(x,r)B(x,r) 表示以 xxx 为中心,rrr 为半径的小球
  • D 的相对领域即是去除 D 边缘后的区域

Slater’s Condition (充分条件):

  • 若有如下凸问题存在,其中 fi(x),∀if_i(x),\forall ifi​(x),∀i 为凸,则当 ∃x∈relintD\exists x\in relint \ D∃x∈relint D 使 fi(x)<0,i=1,...,m,Ax=bf_i(x)<0,i=1,...,m,Ax=bfi​(x)<0,i=1,...,m,Ax=b 满足时,p∗=d∗p^*=d^*p∗=d∗
    min⁡f0(x)s.t.fi(x)≤0,i=1,...,mAx=b\begin{aligned} \min \ & f_0(x) \\ s.t. \ & f_i(x)\leq 0,i=1,...,m\\ & Ax=b \end{aligned} min s.t. ​f0​(x)fi​(x)≤0,i=1,...,mAx=b​

A weaker Slater’s Condition:

  • 若不等式约束为仿射时,只要可行域非空,必有 p∗=d∗p^*=d^*p∗=d∗
  • 推论:线性规划问题若有可行解,则 p∗=d∗p^*=d^*p∗=d∗

鞍点的解释 (Saddle Point):

  • 使得下式成立的 x∗、λ∗x^*、\lambda^*x∗、λ∗ 即为鞍点
    p∗=inf⁡x∈Dsup⁡λ≥0L(x,λ)=sup⁡λ≥0inf⁡x∈DL(x,λ)=d∗p^*=\inf_{x\in D}\sup_{\lambda\geq 0}L(x,\lambda)=\sup_{\lambda\geq 0}\inf_{x\in D}L(x,\lambda)=d^* p∗=x∈Dinf​λ≥0sup​L(x,λ)=λ≥0sup​x∈Dinf​L(x,λ)=d∗

鞍点定理:

  • 若 (x~,λ~)(\tilde{x},\tilde{\lambda})(x~,λ~) 为 L(x,λ)L(x,\lambda)L(x,λ) 的鞍点 ⇔\Leftrightarrow⇔ 强对偶存在,且 x~,λ~\tilde{x},\tilde{\lambda}x~,λ~ 为 Primal 与 Dual 最优解

KKT 条件

p∗=f0(x∗)=d∗=g(λ∗,v∗)=inf⁡x{f0(x)+∑i=1mλi∗fi(x)+∑i=1pvi∗hi(x)}≤f0(x∗)+∑i=1mλi∗fi(x∗)+∑i=1pvi∗hi(x∗)≤f0(x∗)\begin{aligned} p^*=f_0(x^*)=d^*=&g(\lambda^*,v^*)\\ =&\inf_x\{f_0(x)+\sum\limits_{i=1}^m \lambda_i^* f_i(x)+\sum\limits_{i=1}^p v_i^* h_i(x)\}\\ \leq & f_0(x^*)+\sum\limits_{i=1}^m \lambda_i^* f_i(x^*)+\sum\limits_{i=1}^p v_i^* h_i(x^*) \\ \leq & f_0(x^*) \end{aligned} p∗=f0​(x∗)=d∗==≤≤​g(λ∗,v∗)xinf​{f0​(x)+i=1∑m​λi∗​fi​(x)+i=1∑p​vi∗​hi​(x)}f0​(x∗)+i=1∑m​λi∗​fi​(x∗)+i=1∑p​vi∗​hi​(x∗)f0​(x∗)​

由此中间的不等号应改为等号,进而推出以下两个条件。

互补松弛条件 (Complementary Slackness)

若 p∗=d∗p^*=d^*p∗=d∗,则 λi∗fi(x∗)=0\lambda_i^*f_i(x^*)=0λi∗​fi​(x∗)=0,即如果 λi∗>0\lambda_i^*>0λi∗​>0 则 fi(x∗)=0f_i(x^*)=0fi​(x∗)=0;如果 fi(x∗)<0f_i(x^*)<0fi​(x∗)<0 则 λi∗=0\lambda_i^*=0λi∗​=0

稳定性条件 (Stationarity)

inf⁡xL(x,λ∗,v∗)=inf⁡x{f0(x)+∑i=1mλi∗fi(x)+∑i=1pvi∗hi(x)}=L(x∗,λ∗,v∗)\inf_xL(x,\lambda^*,v^*)= \inf_x\{f_0(x)+\sum\limits_{i=1}^m \lambda_i^* f_i(x)+\sum\limits_{i=1}^p v_i^* h_i(x)\}=L(x^*,\lambda^*,v^*) xinf​L(x,λ∗,v∗)=xinf​{f0​(x)+i=1∑m​λi∗​fi​(x)+i=1∑p​vi∗​hi​(x)}=L(x∗,λ∗,v∗)

因此 L(x,λ∗,v∗)L(x,\lambda^*,v^*)L(x,λ∗,v∗) 在 x∗x^*x∗ 处取到最小值,即 x∗x^*x∗ 处导数为 0,即
∇f0(x∗)+∑i=1mλi∗∇fi(x∗)+∑i=1pvi∗∇hi(x∗)=0\nabla f_0(x^*)+\sum\limits_{i=1}^m \lambda_i^* \nabla f_i(x^*)+\sum\limits_{i=1}^p v_i^* \nabla h_i(x^*)=0 ∇f0​(x∗)+i=1∑m​λi∗​∇fi​(x∗)+i=1∑p​vi∗​∇hi​(x∗)=0

KKT 条件适用范围

KKT 条件从强对偶性质出发进行推导,共得到以下五个条件:

  • 原问题可行性

    • fi(x∗)≤0,i=1,...,mf_i(x^*)\leq 0,i=1,...,mfi​(x∗)≤0,i=1,...,m
    • hi(x∗)=0,i=1,...,ph_i(x^*)=0,i=1,...,phi​(x∗)=0,i=1,...,p
  • 对偶问题可行性
    • λ∗≥0\lambda^*\geq 0λ∗≥0
  • 互补松弛条件
    • λi∗fi(x∗)=0,i=1,...,m\lambda_i^* f_i(x^*)=0,i=1,...,mλi∗​fi​(x∗)=0,i=1,...,m
  • 稳定性条件
    • ∂L(x,λ∗,v∗)∂x∣x=x∗=∇f0(x∗)+∑i=1mλi∗∇fi(x∗)+∑i=1pvi∗∇hi(x∗)=0\displaystyle\frac{\partial L(x,\lambda^*,v^*)}{\partial x}|_{x=x^*}=\nabla f_0(x^*)+\sum\limits_{i=1}^m \lambda_i^* \nabla f_i(x^*)+\sum\limits_{i=1}^p v_i^* \nabla h_i(x^*)=0∂x∂L(x,λ∗,v∗)​∣x=x∗​=∇f0​(x∗)+i=1∑m​λi∗​∇fi​(x∗)+i=1∑p​vi∗​∇hi​(x∗)=0

定理:

  • 对任意问题,若各个函数可微,对偶间隙为零,则 KKT 条件为 (x∗,λ∗,v∗)(x^*,\lambda^*,v^*)(x∗,λ∗,v∗) 为最优解时的必要条件
  • 若原问题为凸问题,各个函数可微,对偶间隙为零,则 KKT 条件为充分条件
  • 若原问题为凸问题且满足 Slater 条件,则 KKT 条件为充要条件

KKT 举例

总结

一般的优化问题(不一定凸):

  • 若拉格朗日函数 L(x,λ,v)L(x,\lambda,v)L(x,λ,v) 有鞍点 ⇔\Leftrightarrow⇔ 鞍点为原 / 对偶函数的最优解

一般的可微优化问题(不一定凸):

  • 若对偶间隙为零,则 KKT 条件是 (x∗,λ∗,v∗)(x^*,\lambda^*,v^*)(x∗,λ∗,v∗) 为最优解的必要条件

可微的凸优化问题:

  • 若对偶间隙为零,则 KKT 条件是 (x∗,λ∗,v∗)(x^*,\lambda^*,v^*)(x∗,λ∗,v∗) 为最优解的充要条件

敏感性分析

原问题:
min⁡f0(X)s.t.fi(X)≤0,i=1,...,Mhi(x)=0,i=1,...,P\begin{aligned} \min \ & f_0(X) \\ s.t. \ & f_i(X)\leq 0, i=1,...,M \\ & h_i(x)=0,i=1,...,P \end{aligned} min s.t. ​f0​(X)fi​(X)≤0,i=1,...,Mhi​(x)=0,i=1,...,P​

干扰问题:

  • P∗(u,w)P^*(u,w)P∗(u,w) 为干扰问题的最优值函数,其中 P∗(0,0)P^*(0,0)P∗(0,0) 为原问题最优值
    min⁡f0(X)s.t.fi(X)≤ui,i=1,...,Mhi(x)=wi,i=1,...,P\begin{aligned} \min \ & f_0(X) \\ s.t. \ & f_i(X)\leq u_i, i=1,...,M \\ & h_i(x)=w_i,i=1,...,P \end{aligned} min s.t. ​f0​(X)fi​(X)≤ui​,i=1,...,Mhi​(x)=wi​,i=1,...,P​

性质:

  • 若原问题为凸,则 P∗(u,w)P^*(u,w)P∗(u,w) 为 (u,w)(u,w)(u,w) 的凸函数
  • 若原问题为凸,对偶间隙为零,λ∗,v∗\lambda^*,v^*λ∗,v∗ 为原问题对偶最优解,则 P∗(u,w)≥P∗(0,0)−(λ∗)Tu−(v∗)TwP^*(u,w)\geq P^*(0,0)-(\lambda^*)^Tu-(v^*)^TwP∗(u,w)≥P∗(0,0)−(λ∗)Tu−(v∗)Tw
    • 若 λi∗\lambda_i^*λi∗​ 很大,且加紧第 iii 次不等式约束,即 ui<0u_i<0ui​<0 则 P∗(u,w)P^*(u,w)P∗(u,w) 可能会急剧上升
    • 若 vi∗v_i^*vi∗​ 很大正值,且 wi<0w_i<0wi​<0;或 vi∗v_i^*vi∗​ 为负值,即绝对值很大,且 wi>0w_i>0wi​>0,则 P∗(u,w)P^*(u,w)P∗(u,w) 可能会急剧上升
    • 若 λi∗\lambda_i^*λi∗​ 很小,且 ui>0u_i>0ui​>0,则最优值变化不大
    • 若 vi∗v_i^*vi∗​ 为很小正值,且 wi>0w_i>0wi​>0 或 vi∗v_i^*vi∗​ 为绝对值很小的负值,且 wi<0w_i<0wi​<0,则最优值变化不大
  • 若原问题为凸,对偶间隙为零,且 P∗(u,w)P^*(u,w)P∗(u,w) 在 (u,w)=(0,0)(u,w)=(0,0)(u,w)=(0,0) 处可微,则 λi∗=−∂P∗(0,0)∂ui,vi∗=−∂P∗(0,0)∂wi\lambda_i^*=-\displaystyle\frac{\partial P^*(0,0)}{\partial u_i},v_i^*=-\displaystyle\frac{\partial P^*(0,0)}{\partial w_i}λi∗​=−∂ui​∂P∗(0,0)​,vi∗​=−∂wi​∂P∗(0,0)​,即根据泰勒展开,得到 P∗(u,w)≈P∗(0,0)−(λ∗)Tu−(v∗)TwP^*(u,w)\approx P^*(0,0)-(\lambda^*)^Tu-(v^*)^TwP∗(u,w)≈P∗(0,0)−(λ∗)Tu−(v∗)Tw

凸优化学习笔记(四):对偶性、KKT 条件、敏感性分析相关推荐

  1. 凸优化学习笔记 15:梯度方法

    前面的章节基本上讲完了凸优化相关的理论部分,在对偶原理以及 KKT 条件那里我们已经体会到了理论之美!接下来我们就要进入求解算法的部分,这也是需要浓墨重彩的一部分,毕竟我们学习凸优化就是为了解决实际当 ...

  2. 凸优化学习笔记 11:对偶原理 拉格朗日函数

    前面讲了凸优化问题的定义,以及一些常见的凸优化问题类型,这一章就要引入著名的拉格朗日函数和对偶问题了.通过对偶问题,我们可以将一些非凸问题转化为凸优化问题,还可以求出原问题的非平凡下界,这对复杂优化问 ...

  3. 数学不好是原罪——凸优化学习笔记(个人学习记录汇总)

    中科大凸优化课程学习笔记 中科大凌青老师的课(现中山大学教授):中科大-凸优化 形而上学,不行退学,共勉!博客为个人手写笔记整理存档,不喜勿看. 凸优化学习笔记(一) 持续更新--

  4. 凸优化学习笔记:QP及SOCP问题

    凸优化学习笔记:QP及SOCP问题 QP问题 定义 是什么 几何意义 QP.QCQP.LP之间的关系 例子 最小二乘及回归问题 多面体间距离 方差定界问题 基于随机费用的线性规划(考虑随机变量的优化问 ...

  5. 凸优化学习笔记 10:凸优化问题

    前面讲了那么多关于凸集.凸函数的知识,然而都是铺垫,现在我们才来到了这门课的重头戏部分--凸优化问题! 文章目录 1. 一般优化问题 2. 凸优化问题 2.1 凸优化问题定义 2.2 凸优化问题的最优 ...

  6. 凸优化学习笔记(一)

    文章目录 写在前面 仿射/凸/凸锥(集/组合/包) 几种重要的凸集:超平面与半空间/球和椭球/多面体/单纯形/对称(半)正定矩阵 凸集的交集,保凸运算:仿射函数/缩放和移位/透视函数/线性分段函数 凸 ...

  7. 【凸优化学习笔记3】几种重要的凸集

    参考资料: 1.凌青老师的凸优化课(b站) 2.Stephen Boyd的<凸优化>中译本(清华大学出版社) 全部使用LaTex公式书写 文章目录 仿射集.凸集.凸锥总结 几种重要的凸集 ...

  8. 【凸优化学习笔记1】什么是优化、优化的数学表达形式、优化问题的分类

    参考资料: 1.凌青老师的凸优化课(b站) 2.Stephen Boyd的<凸优化>中译本(清华大学出版社) 文章目录 什么是优化(Optimization) 优化问题的数学表达形式 举例 ...

  9. 凸优化学习笔记 6:共轭函数

    个人博客地址 Glooow,欢迎光临~~~ 文章目录 1. 共轭函数 1.1 定义 1.2 性质 1.3 例子 1. 共轭函数 1.1 定义 一个函数 fff 的共轭函数(conjugate func ...

  10. 凸优化学习笔记6.3

    在正则化逼近的基本形式中,我们的目标是寻找向量x使得其值比较小(如果可能的话),同时使得残差Ax-b小,自然地,这可以描述为双目标的凸向量问题,这两个目标是||Ax-b||和||x||: 这两个范数可 ...

最新文章

  1. 企业 - php nginx memcache
  2. 在学习一门编程语言时要特别注意以下三个方面
  3. Linux命令:sed
  4. FD.io/VPP — L3 vRouter
  5. 【转】IT名企面试:腾讯笔试题(2)
  6. VC++ 中 try-catch-finally 语句 如何在获取正常信息是写一些操作语句
  7. 云电脑是什么_云电脑为什么发布新1代5G无影?带你了解PC
  8. java mysql lru_Java集合详解5:深入理解LinkedHashMap和LRU缓存
  9. 仅用38天 2021年快递业务量已超100亿件
  10. ElasticDL:首个基于 TensorFlow 实现弹性深度学习的开源系统
  11. FreeBSD 查看USB
  12. Julia : 类型别名
  13. python + opencv 中值滤波器、最大值滤波器和最小值滤波器
  14. 【笔记】统计pdf文件中的字数
  15. kindle paper write1 kindle pw1 安装多看系统 or 原本是多看双系统,升级kindle系统后多看系统消失,解决方法降级kindle系统+重装kindle系统
  16. 大数据相关各职位解析
  17. 基于数字证书的windows安全登录
  18. 小白快速体验之爬虫抓取新浪热搜
  19. 学会吊打面试官之set
  20. 【5G NR】CSI-RS

热门文章

  1. 利用HttpOnly来防御xss攻击
  2. MYSQL 查看表定义的 4 种方法
  3. 垂直型与水平型电子商务网站的理解
  4. Javasript中Date日期常用用法(正则、比较)
  5. 给“大学生IT博客大赛”参赛博主的一封信
  6. [转载] 中华典故故事(孙刚)——19 万岁
  7. 数据结构实验1-线性表的顺序实现
  8. c语言程序设计与算法,程序设计与算法(一)C语言程序设计
  9. 中常用的数据结构_代码面试需要知道的8种数据结构(附面试题及答案链接)
  10. 高斯混合模型聚类_高斯混合模型的解释及Python实现