Lagrange Multiplier and KKT(Karush-Kuhn-Tucker)

1.Lagrange Multiplier and KKT的使用条件

Lagrange Multiplier and KKT是求解优化问题的重要方法,在等式约束时使用Lagrange Multiplier,在不等式约束时使用KKT。需要注意的是,这两个方法求得的结果只是必要条件,只有当目标函数是凸函数的情况下,才能保证是充分必要条件。

最优化问题可以分为以下3类:

(i)无约束优化问题,比如说求解f(X)的最小值,公式表达为:


求解此类问题,经常使用的方法是Fermat定理(费马定理):求取f(X)的导数,然后令其为0,可以求得最优值,再从这些候选值中验证;如果是凸函数,可以保证是最优解。

(ii)有等式约束的优化问题,比如求解f(X)的最小值,同时使得h(X)=c成立,公式表达为:

求解此类问题,经常使用Largrange multiplier(拉格朗日乘子法):

 

通过对各个变量求导,令其为零,可以求得候选值集合,然后验证求得最优值。

(iii)有不等式约束的优化问题,比如求解f(X)的最小值,同时使得h(X)=c,g(X)<=0,公式表达为:


求解此类问题,经常使用KKT(Karush Kuhn Tucker)



2  Lagrange multiplier

现在举例一个二维优化的问题:


那么Lagrange function可以写为:


假如f(x,y)的图形(来自wiki)为:


f(x,y)的等高线图为:


其中红色线标出的是约束g(x,y)=c的轨迹。蓝色线标出的是等高线,蓝色箭头是等高线梯度的方向,等高线的梯度方向就是某条等高线(如f(x,y)=d1)的法线方向,由等高线的梯度方向可知,d1>d2>d3。因为红色线表示约束,也就是说,只有正好落在这条红色线上点才能满足要求,如果没有这个约束,最小值应该在最外围等高线。现在有了g(x,y)=c的约束条件,那么最小值应该是在g(x,y)=c与等高线相切的位置,因为如果相交,就意味着有更外围的等高线,使得f(x,y)取得更小的值。

注:为什么由等高线的方向可知,d1>d2>d3,在同济大学《高等数学》第六版中有提到,


因为θ=0,方向导数:


即沿梯度方向的方向导数>0,再加上方向导数中定义t→0+,也就是函数在梯度方向的变化率是正的,所以函数值沿梯度要变大,即从低等高线指向高等高线。






参考文献:

1.https://zhidao.baidu.com/question/150290823.html

2.https://en.wikipedia.org/wiki/Lagrange_multiplier

3.http://www.cnblogs.com/mo-wang/p/4775548.html

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值