

[ML Notes] 拉格朗日函数:不等式约束
source link: https://blog.nex3z.com/2021/03/14/ml-notes-%e6%8b%89%e6%a0%bc%e6%9c%97%e6%97%a5%e5%87%bd%e6%95%b0%ef%bc%9a%e4%b8%8d%e7%ad%89%e5%bc%8f%e7%ba%a6%e6%9d%9f/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

[ML Notes] 拉格朗日函数:不等式约束
Author: nex3z 2021-03-14
Contents [show]
1. 直观解释
以二元函数为例,要寻找 f(x,y) 在约束条件 h(x,y)≤0 下的极值,即
minf(x,y)s.t.h(x,y)≤0
令 f(x,y)=x2+y2,h(x,y)=x+y–1,此时的优化问题为
minx2+y2s.t.x+y–1≤0

如图 1 所示,f(x,y) 在原点取得最小值,而此时约束条件 h(x,y)≤0 包含了原点,因此该约束不生效,只需求解
解得 x=y=0,f(0,0)=0。
优化目标 f(x,y) 不变,令 h(x,y)=x+y+1,此时的优化问题为
minx2+y2s.t.x+y+1≤0

如图 2 所示,此时 f(x,y) 在其与 h(x,y) 相切处取得极值,约束条件 h(x,y)≤0 相当于 h(x,y)=0,即
minx2+y2s.t.x+y+1=0
使用拉格朗日乘数,求解
{∇f+μ∇g=0h(x,y)=0
解得 x=y=−0.5,f(−0.5,−0.5)=0.5。注意 f 和 h 在切点处的梯度方向相反,应有 μ=−∇f∇h>0。实际上,通过上面的方程组可以解出 μ=1,此时 ∇f∇h=−μ=−1。
2. KKT 条件
对于结合了等式约束 g 和不等式约束 h 的优化问题
minfs.t.gi=0,i=1,2,…,nhi≤0,i=1,2,…,m
综合以上两种情况,可以通过如下方程组,即 KKT 条件(Karush-Kuhn-Tucker condition)来求解
{∇f+n∑i=1λi∇gi+m∑j=1μj∇hj=0(i)gi=0,i=1,2,…,n(ii)hj≤0,j=1,2,…,m(iii)μj≥0,j=1,2,…,m(iv)μjhj=0,j=1,2,…,m(v)
- 条件 (i) 是优化目标和约束条件的梯度的线性组合;
- 条件 (ii)、(iii) 是是约束条件本身;
- 条件 (iv) 结合条件 (v) 存在两种情况:
- 如果 μj=0,此时自然满足 μjhj=0,hi 只需满足约束条件 hj≤0 即可;
- 如果 μj>0,此时在极值点处,不等式约束和目标函数的梯度方向相反,由 μjhj=0,则应有 hj=0,不等式约束变成等式约束。
Recommend
-
28
-
52
点击上方“ 大数据与人工智能 ”,“星标或置顶公众号” 第一时间获取好内容
-
10
[ML Notes] 拉格朗日函数:对偶性 Author: nex3z 2021-03-14 Contents [
-
3
[ML Notes] 拉格朗日函数:直观解释 Author: nex3z 2021-03-14 以二元函数为例,要寻找 f(x,y) 在约束条件 g(x,y)=0 下的极值,如
-
7
[ML Notes] 拉格朗日函数:推导过程 Author: nex3z 2021-03-14 Contents [
-
4
Hoeffding 不等式(霍夫丁不等式)简介 发表于 2021-04-23 09:04:00...
-
8
柯西不等式的若干证明方法 发表于 2021-03-23 分类于
-
13
授人于鱼 不如授人以渔作为一个运筹学数学规划(Math Programming)领域的博士该问题属于数学规划问题答主可能需要先了解数学建模和算法设计的区别一、数学规划模型的通用解法我研究一个问题通常的步骤是:建...
-
8
【约束非线性优化】拉格朗日法与KKT 2017年10月30日 Author: Guofei 文章归类: 5-6-最优化 ,文章编号: 7210 版权声明:本文作者是郭飞。转载随...
-
7
参考 肖然的博客 四边形不等式 有一个双变量函数 f(x,y)f(x,y)f(x,y),如果对于 ∀a≤b≤c≤d\forall a\le b\le c\le d∀a≤b≤c≤...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK