本文部分内容来自罚函数法
一,约束优化问题
约束优化问题:
约束优化问题相比于无约束问题的困难:
- 约束优化问题中x不能随便取值,梯度下降法所得点不一定在可行域内
- 最优解处目标函数的梯度不一定为零向量。
二,罚函数法
罚函数法的思想是将约束优化问题转化为无约束优化问题来进行求解.
无约束优化问题的目标函数为原约束优化问题的目标函数加上与约束函数有关的惩罚项。
对于可行域外的点,惩罚项为正,即对该点进行惩罚;对于可行 域内的点,惩罚项为0,即不做任何惩罚。
三,二次罚函数法
约束优化问题:
无约束优化问题:
无约束优化问题类似于求鞍点,但又不太一样,因为鞍点问题是静态的,而带罚函数的无约束优化问题是动态的。
表面上,我们要求x使得P最小,求σ使得P最大,像是个鞍点。
实际上,σ是无限制的,那σ直接取正无穷不就好了吗?或者至少取一个非常非常大的值?但是这样整体求解会比较困难。
所以,带罚函数的无约束优化问题是动态迭代的,σ可以自行控制逐渐增大,从而约束条件逐渐趋近于满足。
求解算法:
四,增广拉格朗日函数法
约束优化问题:
增广拉格朗日函数:
求解算法: