开发者学堂课程【机器学习算法 :不等式约束条件下求极值3】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/535/detail/7266
不等式约束条件下求极值3
内容介绍
一、拉格朗日对偶
二、原始问题和对偶问题得关系
一、拉格朗日对偶
构造拉格朗日对偶函数(Lagrangian Dual Function)求解不等式。某些条件下,把原始的约束问题通过拉格朗日函数转化为无约束问题,如果原始问题求解棘手,在满足 KKT 的条件下用求解对偶问题来代替求解原始问题,使得问题求解更加容易。
基本问题:求 f(x)最小值,
约束条件为 h(x)=0,g(x)≤0
构造拉格朗日函数:L(x,)=f(x)+h(x)+g(x)
构造拉格朗日对偶函数:
拉格朗日对偶问题即为:
对q()求最大值,>0
如果原始问题棘手,就将原始问题该求拉格朗日的对偶问题。
如果 x 不满足已知约束时,h(x)≠0或者 g(x)>0;那么 L 的最大值则为无穷大
如果 x 满足已知约束,h(x)=0且 g(x)≤0,则:
只有 h(x)和 g(x)都等于0时,f(x)才是最大值,所以最后得出结论就是对 f(x)求最大值等于 f(x)
因此得到:
考虑满足约束的情况:
已知中间部分 L 得 f(x),所以最后得到结果就是求 f(x)最小值。
二、原始问题和对偶问题得关系
如果都有最优解
则有:
即原始问题的最优值不小于对偶问题中的最优值。如果想通过求解对偶问题来解决原始问题,就必须要求等号成立: d*=p*。换言之,如果有 d*=p*,则满足对偶问题的最优解也是原始问题的最优解。
满足 KKT 条件即可保证 d*=p*