考虑凸优化问题:
min⁡f0(x)s.t.fi(x)≤0,i=1,...,kgi(x)≤0,i=1,...,m\begin{aligned} &\quad \min f_0(x) &\,\\ &\quad s.t.\,\,\,\, f_i(x) \le 0,i=1,...,k\\ &\qquad \,\,\,\,\,\, g_i(x) \le 0,i=1,...,m \end{aligned}​minf0​(x)s.t.fi​(x)≤0,i=1,...,kgi​(x)≤0,i=1,...,m​
其中fif_ifi​是凸函数,ggg是仿射函数(等式仿射约束可以转化为两个仿射不等式约束)
Slater条件:如果存在一个x~∈relintD(定义域相对内部)\tilde{x} \in relint\, \mathcal{D}(定义域相对内部)x~∈relintD(定义域相对内部),使得
fi(x)<0,i=1,⋯k,gj(x)≤0,j=1,⋯,mf_i(x) <0,i=1,\cdots k,g_j(x)\le 0,j=1,\cdots,mfi​(x)<0,i=1,⋯k,gj​(x)≤0,j=1,⋯,m
则强对偶成立
先贴一个Stephen Boyd凸优化上的简化证明


这个证明做了如下的简化:第一,优化目标没有仿射不等式约束;第二,假设内部非空,而

Slater条件只假设点在相对内部中;第三,假设仿射等式约束中AAA行满秩
第三个简化是无关紧要的,只不过做了这个假设后证明简单

AAA行满秩的假设可以去掉,只需要证明如果不是行满秩(存在冗余等式),那么可以通过一个线性变换,使得约束行满秩,且经过变换之后Lagrange函数的最优值不变,即强对偶性不变

而第一和第二是属于条件的变化,放宽了条件,使得它适用范围更窄

如果不存在仿射约束,有一个简单的证明:见简化版Slater条件证明
如果不存在仿射不等式约束,相对内点这个条件可以去掉

相对内点这个假设的作用在于,仿射函数hhh如果在一个凸集上C的一个相对内点的值为0,那么它在这个凸集上的值要么为恒值0,要么有正也有负
证:设f(a)=0f(a)= 0f(a)=0,f(b)>0f(b) > 0f(b)>0,(<0同理)
则aaa存在一个邻域UUU,使得V=U∩CV=U\cap CV=U∩C是吸收的,
当r>0r>0r>0足够大的时候,a+b−ar∈Va+\frac{b-a}{r} \in Va+rb−a​∈V,这时候a−b−ar∈Va-\frac{b-a}{r}\in Va−rb−a​∈V,
f(a−b−ar)=−1rf(b)<0f(a-\frac{b-a}{r}) = -\frac{1}{r}f(b)<0f(a−rb−a​)=−r1​f(b)<0
证毕

要完整的证明,但靠书上的分离定理是不够的,需要一个加强版的分离定理
正常分离定理:设A,BA,BA,B为两个非空凸集,AAA为多面体(多个半平面的交),则存在一个超平面HHH分离A,BA,BA,B,且HHH不包含BBB的充分必要条件是A∩relintB=∅A \cap relint \,B=\varnothingA∩relintB=∅

利用这个定理可以证明

利用上面的定理就可以证明Slater条件
考虑最前面的优化问题,定义α\alphaα为其最优值,则由α\alphaα的定义,不等式组
f0(x)−α<0,fi(x)<0,gj(x)≤0f_0(x) - \alpha < 0,f_i(x)<0,g_j(x)\le0f0​(x)−α<0,fi​(x)<0,gj​(x)≤0
无解
由上面定理知道,存在非负实数λ0,⋯,λk,ν1,⋯,νm\lambda_0,\cdots,\lambda_k,\nu_1,\cdots,\nu_mλ0​,⋯,λk​,ν1​,⋯,νm​且某个λi>0,\lambda_i>0,λi​>0,使得
λ0(f0(x)−α)+⋯+λkfk(x)+ν1g1(x)+⋯νmgm(x)≥0,∀x∈D(∗)\lambda_0(f_0(x)-\alpha)+\cdots+\lambda_kf_k(x)+\nu_1 g_1(x) +\cdots \nu_mg_m(x) \ge 0,\forall x\in \mathcal{D} \quad (*)λ0​(f0​(x)−α)+⋯+λk​fk​(x)+ν1​g1​(x)+⋯νm​gm​(x)≥0,∀x∈D(∗)
首先λ0>0\lambda_0>0λ0​>0,否则的话,设其为0,则某个λt>0,t>0\lambda_t >0,t>0λt​>0,t>0,
由条件存在一个x~∈reintD\tilde{x} \in reint \, \mathcal{D}x~∈reintD(这里相对内部不是必要的,相对内部在上面的不等式的证明中才是必要的 )使得fi<0,gi≤0f_i<0,g_i\le0fi​<0,gi​≤0得到
λ1f1(x~)+⋯+λkfk(x~)+ν1g1(x~)+⋯νmgm(x~)=λ1f1(x~)+⋯+λkfk(x~)<0\lambda_1 f_1(\tilde{x} )+\cdots+\lambda_kf_k(\tilde{x} )+\nu_1 g_1(\tilde{x} ) +\cdots \nu_mg_m(\tilde{x} ) = \lambda_1 f_1(\tilde{x} )+\cdots+\lambda_kf_k(\tilde{x} ) < 0λ1​f1​(x~)+⋯+λk​fk​(x~)+ν1​g1​(x~)+⋯νm​gm​(x~)=λ1​f1​(x~)+⋯+λk​fk​(x~)<0
产生矛盾

所以λ0>0\lambda_0 > 0λ0​>0,不妨设其为1,(两边除以λ0\lambda_0λ0​),设
h(x)=f0(x)+⋯+λkfk(x)+ν1g1(x)+⋯νmgm(x)h(x)=f_0(x)+\cdots+\lambda_kf_k(x)+\nu_1 g_1(x) +\cdots \nu_mg_m(x) h(x)=f0​(x)+⋯+λk​fk​(x)+ν1​g1​(x)+⋯νm​gm​(x)
由上知h(x)≥α,∀x∈Dh(x) \ge \alpha,\forall x\in \mathcal{D}h(x)≥α,∀x∈D,故
inf⁡x∈Dh(x)≥α\inf_{x\in \mathcal{D}} h(x)\ge \alphax∈Dinf​h(x)≥α
而对于任意可行解,有h(x)≤f0(x)h(x) \le f_0(x)h(x)≤f0​(x),因此
inf⁡x∈Dh(x)=α\inf_{x\in \mathcal{D}} h(x) = \alphax∈Dinf​h(x)=α
即Lagrange 函数g(λ,ν)g(\lambda,\nu)g(λ,ν)在λ1,⋯λk,ν1,⋯,νm\lambda_1,\cdots \lambda_k,\nu_1,\cdots,\nu_mλ1​,⋯λk​,ν1​,⋯,νm​点取到最大值,且等于原问题最小值,也就是强对偶成立
证毕

参考:Convex Analysis

Slater条件理解和证明相关推荐

  1. Conditional Guassian Distribution 条件高斯分布及其证明

    Conditional Guassian Distribution 条件高斯分布及其证明 1. 写在前面 2. 高斯分布 2.1 一元高斯分布 2.2 多元高斯分布 3. 条件高斯分布 3.1 准备工 ...

  2. lotus - 深入理解时空证明的 golang 实现部分(PoSt)

    lotus - 深入理解时空证明的 golang 实现部分(PoSt) 参考文章:https://www.chainnews.com/articles/836343087401.htm lotus 的 ...

  3. paxos协议的理解及证明推导

    文章目录 导读 历史 解决的问题 理论分析 只有一个Acceptor 两个Acceptor 结果到原因的推进 如何预测未来 理论到工程的缺陷 根本问题在哪里 算法提出 FAQ 导读 paxos算法为什 ...

  4. 【数学】拉格朗日乘子法(Lagrange Multiplier) 和KKT条件理解

    转载 目录 动机 简介 一. 拉格朗日乘子法(Lagrange Multiplier) 和KKT条件 (a) 拉格朗日乘子法(Lagrange Multiplier) (b) KKT条件 二. 为什么 ...

  5. prim算法直观理解与证明

    今天刚学完最小生成树,乘着知识还在脑袋里热乎着,便写下来记录下,也便日后复习回忆.prim算法是用来求解最小生成树的. 总的来说算法步骤就是: 1.将距离集合(即最小生成树)的距离最近的点加入到集合中 ...

  6. 从小故事带你理解零知识证明 | 区块链一千零一问

    开胃小故事 阿里巴巴证明 阿里巴巴被强盗抓住,为了保命,他需要向强盗证明自己拥有打开石门的密码,同时又不能把密码告诉强盗.他想出一个解决办法,先让强盗离开自己一箭之地,距离足够远让强盗无法听到口令,足 ...

  7. Step1. 理解零知识证明算法之Zk-stark

    Concept:zk-stark vs zk-snark 谈到ZKP算法,大伙可能听过一些,比如zk-snark,zk-stark, bulletproof, aztec, plonk等等.今天,咱就 ...

  8. 拉格朗日函数、拉格朗日对偶问题、KKT条件个人理解

    最近学习SVM的相关内容时,接触到了拉格朗日函数及其对偶问题,于是就学习了一些相关内容,在此整理总结一下.文章内容为个人理解,如有错误,欢迎指正! 文章目录 1. 引言 1.1 在约束条件下求函数的极 ...

  9. 一文理解拉格朗日对偶和KKT条件

    一. 最优化问题求解 1. 等式约束的极值求法 $$ \begin{gather*} \underset{t}{min} f(t) \; s.t.\; h_i(t)=0,i=1,\cdots,p \e ...

最新文章

  1. C++ queue 详细介绍
  2. flux读取不到数据_【Java】spring-webflux两种开发模式,获取不到使用ajax的post提交的数据?...
  3. 赵方庆 北京生科院Computational strategies in exploring circular RNAs 探索环状rna的计算策略
  4. python画图简单代码-简单画图 - python代码库 - 云代码
  5. Struts2的properties配置文件详解
  6. linux下 open() write() read() close函数
  7. php 比较数组中的元素,php – 比较多维数组中的元素
  8. monkey 运行时间怎么计算_基于STM32F103C8T6工控板利用定时器计算某段代码的运行时间...
  9. LQ训练营(C++)学习笔记_广度优先搜索
  10. 微服务跨数据库联合查询_MySQL数据库联合查询
  11. C++——面向对象设计原则
  12. Linux和window写python,搭建Python环境(window和linux)
  13. java通过密钥得到谷歌验证码
  14. Python巨型文字游戏开发(带源码(1))
  15. Android6.0之AMS启动App下篇
  16. ubuntu修改IP后无法正常上网的解决
  17. python node.js ruby_Python/Ruby/Node.js/Perl - 随笔分类 - bluefrog - 博客园
  18. Linux:安装ruby
  19. 基于Linux平台上的外文文献阅读软件—需求分析
  20. iperf测试工具使用方法

热门文章

  1. 【资料合集】2017云栖大会·苏州峰会回顾合集:PDF下载
  2. http端口映射(80 port mapping)
  3. html列表横向变纵向,word横向表格变竖向 word文档怎么把横向表格变成竖向
  4. matlab实验答案第三章,matlab第三章答案
  5. mysql 配置vip_数据库学习之十三:mysql高可用配置
  6. 8代cpu安装linux系统吗,8代cpu装win7系统及bios设置教程(支持usb驱动)
  7. 怎么让APP应用的用户体验更流畅
  8. C++学习(四四二)cmake ninja build.ninja rules.ninja
  9. c语言宏定义的连接符##和#转字符串
  10. diy金丝楠木嵌宝耳机