打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
约束优化的拉格朗日乘子(KKT)
  • 拉格朗日乘数法
  • 约束条件的集中形式
  • 求解不同约束条件问题的最优方法


本文讨论带有约束条件的最优化问题,约束条件分为两种,一种是等式约束;另一种是不等式约束。对于第一种等式约束的优化问题,可以直接利用拉格朗日乘子法去获得最优解;对于不等式约束的优化问题,可以转化未Karush–Kuhn–Tucker conditions(KKT条件)下去应用拉格朗日乘子法求解。也就是说都是应用拉格朗日乘数法求解。

一、拉格朗日乘数法

拉格朗日乘数法是一种优化算法,主要运用于解决优化问题,它的基本思想就是用过拉格朗日乘子来把含有m个变量和l个约束条件的约束优化问题转换成含有(m+l)个变量的无约束优化问题。

二、约束条件的集中形式




三、求解不同约束条件问题的最优方法

(1)等式条件下求最优解:

其实,高中的时候已经接触过等式条件机制求最优解的问题,都知道用拉格朗日乘数法可以求得最优解。首先构建一个Lagrange multiplier:




构建出 L(x,y,λ) 后,跟原来的问题对比一下,构建出的Lagrange multiplier把原来的等数条件约束情况变成含三个参数 (x,y,λ) 无条件极值的问题,最后可以通过求导数,令极值为零可以求出可行解 x 。




(拉格朗日乘子求的解不一定是最优解,其实只是局部最优解,这里称作可行解,只有在凸函数中才能保证最优解)至于为什么可以把原始的等式条件极值问题转化成求 L(x,y,λ) 的极值问题?可以观察一下下面的二维图:



图一


蓝色虚线是目标函数 f(x,y) 的等高线,绿色实现 g(x,y)=c 是约束条件。图中,目标函数和条件函数有三种情况:

1、相离

对于相离的情况,我们以前学过,两个函数有交点才说明是两个函数的解,所以相离明显不行。

2、相交

两个函数相交的才是两个函数的解,但是相交得到的一定不是最优值,因为相交意味着肯定还存在其它的等高线在该条等高线的内部或者外部,使得新的等高线与目标函数的交点的值更大或者更小。

3、相切

图中,等高线与条件函数相切时候,只有一个交点,是可行解。

当等高线与条件函数在可行解处(相切时候)的梯度平行有下式:




对上式子移项后,可得到:




该式子恰好与令Lagrange multiplier的导数为零是式子相同。

举一个小栗子:




根据上式子可知是一个典型的约束优化问题,约束条件是等式,可以用拉格朗日乘子。




原来的条件约束问题,转化为无约束方程组问题。



(2)不等式条件下求最优解

上述都是等式条件约束的优化问题,但事实上,很多时候等式约束很难覆盖我们显示的问题,计算成本时候,通常说不能超过多少资金,不能超多多少时间,都是一个范围内,通常面对更多的是不等式条件约束的情况,面对这种情况,可以通过增加KKT条件后,通过拉格朗日乘子求解不等式约束的优化问题。

可以把目标函数和所有的约束条件写成一个式子:




对于不等式条件的情况有两种:即可行解在 g(x)<0 或者 g(x)=0 区域内取得(如下图)


图二










本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
MOMOAN
【整理】深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件
支持向量机(三):图解KKT条件和拉格朗日乘子法
关于拉格朗日乘子法与KKT条件
解密SVM系列(一):关于拉格朗日乘子法和KKT条件
KKT 条件
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服