非线性约束最优化

CanChen [email protected]


讲完了二次线性规划,这节课主要是讲了一般的非线性约束最优化怎么解。

 

等式约束-Lagrange-Newton

先列Lagrange方程:
Lag.png-5.7kB
然后用牛顿法求方程的根(这个迭代又被称为Newton-Raphson迭代):
非线性约束最优化_第1张图片

 

Sequential Quadratic Programming

这个问题是最泛化的优化问题了,先看看怎么根据KT条件写出原始优化问题
非线性约束最优化_第2张图片
这一步实际上是把一般的优化问题,转化成了多个二次函数优化问题,循环求解。对于每个子问题,需要采用active set方法,每次只考虑等式约束,根据具体情况添加或者删除约束。
非线性约束最优化_第3张图片

 

罚函数法

非线性约束最优化_第4张图片
实际中总是逐渐增大罚因子,求解无约束问题。这种通过求解一系列无约束问题来获得约束最优化问题的最优解,称之为序贯无约束极小化技术。
罚函数经典三引理:
非线性约束最优化_第5张图片
这里的引理1是关键,其实也很好证明,就是根据两个x分别是最优解,得到两个不等式,简单处理一下就行了。
三个引理刻画了罚函数法动态变化的过程。
其中,第三个引理就是说,我迭代到一步,不想迭代了,这个时候实际上得到的解是把定义域扩大了之后的解。

 

乘子罚函数

这里实际上就是目标函数,加朗格朗日项,加罚项。使用罚函数,必须要求罚因子趋于无穷大,然而这在实际中很难办到。这里引入朗格朗日项,让罚因子不用趋于无穷,就能得到结果。本质是就是将乘子罚函数在迭代中寻找和拉格朗日函数的关系,从而将带约束问题转化为无约束问题。
这里给出了带约束问题的二阶充分条件,非常牛逼,之前只是必要条件。

 

障碍函数法

这个实际上通过无限限制边界,将有约束问题转化为无约束问题。

 

内点法

这个实际上是改变互补松弛条件,sz=u>0, 所以s>0,所以一定是内点。本质上还是在求解KT系统,把不等式改造成等式,还在内部,这个比较野蛮。后面凸优化就是干这个。
障碍函数法和内点法本质是一样的。

 

你可能感兴趣的:(非线性约束最优化)