有约束优化,拉格朗日乘子的意义,KKT条件

拉格朗日乘子法的引入

一个典型的带约束条件优化问题:
minxf(x) min_xf(x) s.t.g(x)=0 s.t. g(x)=0
xx为二维变量为例,设:f(x,y)=df(x,y)=dg(x,y)=cg(x,y)=c,如下图:
最优化笔记:有约束优化,拉格朗日乘子的意义,KKT条件
由图中可以看得出来,椭圆形的f(x,y)f(x,y)符合约束条件的最小值在椭圆与红色曲线的切线处,在切线相交处两边的法向量刚好互为相反,即:
最优化笔记:有约束优化,拉格朗日乘子的意义,KKT条件
由此引入拉格朗日函数:
最优化笔记:有约束优化,拉格朗日乘子的意义,KKT条件

KKT条件

以上是g(x,y)=0g(x,y)=0的条件,下面是g(x,y)<=0g(x,y)<=0的情况,
在不等式情况下,要求λg(x,y)=0\lambda g(x^*,y^*)=0的约束,此即KKT条件。

下图阴影部分即g(x,y)<0g(x,y)<0的情况,依据等式λg(x,y)=0\lambda g(x^*,y^*)=0,当g(x,y)<0g(x,y)<0时得λ=0\lambda=0意味着约束条件不起作用,此时的优化问题等同于无约束优化。
而在g(x,y)=0g(x,y)=0时,一般情况下λ\lambda不等于0,此时x,yx,y的值落在曲线边界上,意味着约束条件起作用。
KKT的本质意义是帮助我们去理解哪些约束条件是真正起作用的。

最优化笔记:有约束优化,拉格朗日乘子的意义,KKT条件

多个约束条件的情况

最小化f(x)f(x),多个约束条件gi(x)>=0g_i(x)>=0
最优化笔记:有约束优化,拉格朗日乘子的意义,KKT条件
此时拉格朗日函数写作:
最优化笔记:有约束优化,拉格朗日乘子的意义,KKT条件
xx求导得方程:
f(x)=i=1Nλigi(x) \nabla f(x)=\sum_{i=1}^N\lambda_i\nabla g_i(x) KKTλigi(x)=0KKT条件:\lambda_i\nabla g_i(x) =0
最优化笔记:有约束优化,拉格朗日乘子的意义,KKT条件

相关文章:

  • 2021-12-29
  • 2021-06-01
  • 2021-12-02
  • 2021-09-10
  • 2021-10-26
猜你喜欢
  • 2021-08-10
  • 2021-06-12
  • 2021-11-06
  • 2021-05-27
  • 2021-11-11
  • 2021-07-25
相关资源
相似解决方案