1.关于拉格朗日函数的定义
仅以含等式约束的最优化问题为例,对于最优化问题:
定义拉格朗日函数:
其中,λj为拉格朗日乘子,则求解该拉格朗日函数的无约束问题等价于求解等式约束问题。不等式约束问题的形式也可以类似推广(如下方函数),其与等式约束问题不同的是,最优化问题的可行解需要满足的条件不一致(不等式约束的拉格朗日乘子法的条件就是后面要提到的KKT条件)。
,
转化为:
2.拉格朗日乘子法
(1)对于等式约束问题:
其最优性必要条件为:
至于为什么是这样,在这里推荐文献[2]对于该部分的推倒,如下。
(2)对于不等式约束问题:
其最优性必要条件为:
其中,第二项的互补松弛条件的推倒文献[2]提供了一个很好的思路,如下。
3.拉格朗日乘子法的对偶问题
在说明什么是对偶问问题之前,要说明什么是原始问题。对于不等式约束问题:
显然满足(这搁谁也满足啊,注意下式把乘子向量化了下):
对于上式最右侧函数的最大化问题来说,根据约束条件:
也就是说,最大化的求解使得本节第2个不等式最右侧函数中只有f函数起作用,那本节第2个不等式实际可以转化为:
如此,对于本节所述的含不等式约束的最优化问题也就自然形成了如下关系:
*(不等式)
也就说明:含不等式约束的最小最大问题等价于原始优化函数的最小化问题,我们就称其为原始问题吧,并且假设该原始问题的解是P*。
那现在,我们定义原始问题的对偶问题为:
假设该对偶问题的解是d*,那我们再把上面*(不等式)的左边加上1项,有:
该式说明,对于任意的取值,都能形成以下函数关系:
即便取值令左侧取到最大值,同时令右侧函数取得其最小值:
也就是说原始问题的最优解必然大于等于对偶问题的最优解,这就是所谓的弱对偶性。
而当满足:
就称之为强对偶性,即原始问题的最优解等于对偶问题的最优解。而巧的是,强对偶成立的充要条件就是前面所说的KKT条件。
以上,无约束最优化问题就可以通过其对偶问题解决了。
参考文献:
【1】拉格朗日乘子法与对偶问题_Pylady的博客-CSDN博客