手打推导拉格朗日乘子算法Lagrange Multiplier

用新学习的convex optimazation来重新推导

优化问题的标准形式

标准形式有一个Lagrangian duality和Lagrangian function分别是

其中因为namuda大于等于0,因此很明显得到以下不等关系

若原问题不是凸的,那么只满足weak duality,否则满足strong duality。weak和strong分别为d*<=p*和d*=p*,d*表示g的最大值,p*表示f的最小值。

通过kkt条件,计算最优值,kkt如下:

第三行namda>=0是因为自己设定的;第四行是因为

第五行等于0是因为强对偶条件下

而强对偶条件下原问题和对偶问题一般都是凸问题,因此极值时导数为0.

 

 

———————————————————————————————————————————————————————

(旧)

拉格朗日乘子公式我就不给了,网上有很多,主要是原理,虽然网上页有,但是不直观甚至不完全。分为几个断言,根据上一个断言继续进行下一个。

1,最优值是在梯度相等的点

z=f(x,y)是目标函数,要求z的极值。而给定一个g(x,y)=0,为约束条件。目标函数是3维的,可以认为z变量是高度,那么固定一个高度z,f(x,y)就是x,y平面的一条线,当z变化时,x、y平面的投影线会移动,移动的方向我们不管,反正其可以移动,假如没有约束的话,那么z的最大值可以是无穷大。但是有一个额外要求就是最优点不仅要在f(x,y)上,还要求在g(x,y)上。g(x,y)这条直线是固定的,你可以沿一个方向移动f(x,y),那么你就一直移动f(x,y),直到无法与g(x,y)相交时就不能满足条件了,所以那个点必然是相切的或者是达到了g(x,y)这条线的极点,你只要在脑中想想就可以想明白了。所以极值点必然发送在一个位置,这个位置要让z=f(x,y)的投影线与g(x,y)相切。

相切就导致了在此处的斜率相等。

2,最后的乘子公式由1断言如何推导出来

网上有很多推导我认为是错误或模糊的。

梯度相等是在x,y平面的梯度相等,所以是dy/dx=dy/dx。假设前面的dy/dx是目标函数的梯度,它等于-(df/dx)/(df/dy);后面的是约束函数的梯度,一般由g(x,y)计算是:-(dg/dx)/(dg/dy),注意这里是偏导数。然后两者相等,为-(df/dx)/(df/dy)=-(dg/dx)/(dg/dy),等式右边分子分母同时乘以一个namda,让左右两边相等即得到了拉格朗日乘子的标准公式。这是我自己推导的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值