【统计学习方法】不等式约束,拉格朗日对偶函数,KKT条件

1 基本概念 

1.1 不等式约束

 

1.2 广义拉格朗日函数

定义如下拉个朗日函数:

\large L(x,\alpha, \beta) = f(x) + \sum_{i=1}^{m} \alpha {_i}c{_i}(x) + \sum_{i=1}^{m} \beta {_i}h{_i} (x)

\large z(x) = \underset{\alpha>0,\beta}{max}L(x,\alpha,\beta)

如果x满足1.1中的约束条件\large c_i(x) \leq 0,h_i(x) = 0,则

\large z(x) = \underset{\alpha \geq 0,\beta}{max}L(x,\alpha,\beta) = f(x)

则原不等式约束优化问题\large \underset{x}{min}f(x)等价于:

\large {\color{Red} \underset{x}{min}\, z(x) = \underset{x}{min} \,\underset{\alpha \geq 0,\beta}{max}L(x,\alpha,\beta)},两个取得的值是完全一样的,称为原始问题。

1.3 拉格朗日对偶函数

\large g(\alpha,\beta) = \underset{x}{min}L(x,\alpha,\beta) ,是原始问题(变量是x)的一个下界,称为拉格朗日对偶函数(变量是\large \alpha,\beta)。

则对于所有\large \alpha \geq 0,\beta,成立:

 \large g(\alpha,\beta) \leq \underset{x}{min}f(x)

\large \underset{\alpha \leq 0, \beta}{max}\, g(\alpha,\beta)是原始问题的最大下界:

\large \underset{\alpha \leq 0, \beta}{max}\, g(\alpha,\beta) \leq \underset{x}{min}f(x)

当满足一定条件时,等号成立,这个条件就是下面的KKT条件。

2 KKT条件(原问题和对偶问题相等的充分必要条件)

2.1 KKT

我们要解决的问题是求有不等式约束函数的最优解

\large \begin{aligned} &\min_x \ f(x) \\ &s.t. \ \ \ h_i(x) = 0 , \ i = 1,2,...,m \ \\ & \ \ \ \ \ \ \ \ \ \ g_j(x) \le 0, \ j = 1,2,...,n \end{aligned}

上面为推广式,简化版本为

\large \begin{aligned} &\min_x \ f(x) \\ & \ s.t. \ \ g(x) \le 0 \end{aligned}

对应的拉格朗日函数式为:

\large L(x, \lambda) = f(x) + \lambda g(x)

函数取得可行解的必要条件是梯度为0(所有偏导数为0),则得到KKT条件的第一个

\large \nabla_xL(x,\lambda) = 0    ................................................................................      (1)

如图,可行解x只能在\large g(x) \leq 0区域内取得,

  • 当原目标函数的可行解x落在\large g(x) \leq 0的区域内,此时约束条件不起作用,取\large \lambda = 0直接极小化\large f(x)即可;
  • 当原目标函数的可行解落在\large g(x) = 0,即边界上,此时等价于等式约束优化问题;

合并上面两种情况,\large \lambda\large g(x)为0,我们得到KKT条件的第二个

\large \lambda g(x) = 0   ...............................................................................................      (2)

如上图的右图,当原目标函数的不在\large g(x) \leq 0取得时,这时约束条件是有效的,也就是\large \lambda不能为0。在等式约束优化中,可行域是一条线(约束条件),只需要约束条件\large g(x)和目标函数\large f(x)的梯度平行即可(不需要方向一样);但是在不等式约束中,可行域是一个区域,当区域边界与等值线相切时,与目标函数负梯度平行的出了切点处的梯度外,边界另一边点的梯度也与目标函数负梯度平行(方向相反),如图

可行域是一个圆,左边指示的非可行解,右边指示的是可行解。用公式表示:

\large \nabla_xL(x,\lambda) =\nabla_xf(x)+\nabla_x \lambda g(x) = 0 ==> \large -\nabla_x f(x) = \lambda \nabla_xg(x)

这样我们得到KKT条件的第三个

\large \lambda > 0 ...............................................................................................      (3)

和原始约束条件一起则有

\large \left\{\begin{aligned}\nabla_xL(x,\lambda) = 0 \\\lambda g(x) = 0 \\\lambda > 0 \\ g(x) \le 0 \\ \end{aligned}\right.

推广式为:

\large \left\{\begin{aligned} \LARGE \nabla L(x,\alpha, \beta) = 0 \\\beta{_j}g{_j}(x) = 0, j=1,2,3...n \\\beta{_j} \geq 0, j=1,2,3...n \\ h{_i}(x) = 0,i=1,2,3...m \\g{_j}(x) \leq 0,j=1,2,3...n \end{aligned}\right.

 

参考:

一文理解拉格朗日对偶和KKT条件

拉格朗日对偶性(Lagrange duality)

 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值