一、拉格朗日乘子法和KKT的介绍
拉格朗日乘子法 | 拉格朗日乘子λ代表当约束条件变动时,目标函数极值的变化。是一种经典的求解条件极值的解析方法,求函数f(x1,x2,…)在约束条件g(x1,x2,…)=0下的极值的方法。这种引进待定乘子,将有等式约束的寻优问题转化为无约束的寻优问题的做法,称为拉格朗日乘子法,又叫升维法。 |
---|
- 等式约束条件
设目标函数为f(x),约束条件为hk(x),形如
s.t. 表示subject to ,“受限于”的意思,l表示有l个约束条件。
定义拉格朗日函数F(x)
其中λk是各个约束条件的待定系数
然后解变量的偏导方程:
如果有n个约束条件,就应该有n+1个方程;求出的方程组的解就是最优化值,将结果带回原方程验证就可得到解。
KKT条件 | KKT条件在约束条件下求解非线性规划问题很有用,是确 |
---|