假设目标函数是求解f(x,y)=x2+y2的最小问题。
(1)假设约束条件是h(x,y)=x+y⩽1,即
⎧⎩⎨⎪⎪minf(x,y)=x2+y2s.th(x,y)=x+y⩽1
这个不等式约束实际上包含了原点,而原点是最小的值,所以这个约束条件等价于没有约束条件的求解,其求解过程是一样的

(2)假设约束条件是h(x,y)=x+y⩽−2,即
⎧⎩⎨⎪⎪minf(x,y)=x2+y2s.th(x,y)=x+y⩽−2
这个情况下,与约束条件是g(x,y)=x+y=−2进行约束的求解过程是一样的

即求解
⎧⎩⎨⎪⎪▽f+μ▽h=0s.th(x,y)=x+y+2=0
(3)新增的条件
不等式实际上带来了新的条件,因为梯度指向了函数增长的方向如图,所以目标函数的梯度如下图所示,而约束函数的梯度则是相反的方向(可以理解为对h(x,y)而言,对x,y的偏导都需要使得x,y变大,所以梯度为▽f的相反方向)(因为梯度下降法w=w−α▽w使得w值变小)

所以,有
▽f+μ▽h=0,μ⩾0
其中,μ⩾0表示▽f,▽h方向相反.
完整的方程组如下:
⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪▽f+μ▽h=0h(x,y)=x+y+2=0μ⩾0
综合以上,可以把求极值问题:
⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪minfs.tgi=0,i=1,2,...,nhi⩽0,i=1,2,...,m
通过解下面这个方程组来得到:
⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪▽f+∑niλi▽gi+∑mjμj▽hj=0gi=0,i=1,2,...,nhi⩽0,j=1,2,...,mμj⩾0μjhj=0
这个方程组也就是所谓的KKT条件
参考非线性优化中的 KKT 条件该如何理解?