不等式约束条件下求极值2| 学习笔记

简介: 快速学习不等式约束条件下求极值2。

开发者学堂课程【机器学习算法 :不等式约束条件下求极值2】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/535/detail/7265


不等式约束条件下求极值2

 

内容介绍

一、不等式约束条件求极值

二、KKT 条件

三、不等式约束条件下求极值详细过程

 

一、不等式约束条件求极值

对拉格朗日乘子法进行推广,使得其不但能对等式约束进行求极值,还能对小于等于的不等式求极值(如果是大于等于要想办法将其转化成小于等于),即 KKT 条件(Karush-Kuhn-Tucker)。简单讲,只要满足 KKT 条件,就可以构造对应的拉格朗日函数L,求出极值所在的位置。

image.png

hi(x)其中的i存在意义是有可能有多个约束条件。同理k也是相同意义,可以有多个不等值约束条件。若满足 KKT

条件就可以构造拉格朗日函数。

 

二、KKT 条件

KKT 条件(Karush-Kuhn-Tucker):用来判断一个解是否属于一个非线性优化问题的最优解,主要是用于带有不等式约束条件求最优解的情况,利用 KKT 条件,把不等式约束转化为等式约束,然后再把约束条件想办法加到目标函数中,利用求导的方法求出极值。

KKT 条件主要包括:

image.png

1. l 对 x 求偏导,如果 x 所在的值,就是所求的最优值,那么这个式子等于0,对拉格朗日函数取极值时候带来的一个必要条件.

2. 求出满足极值的 x,他的等式约束为0,原有约束

3. g(x)≤0,原有约束

4. image.png≠0,等式约束系数

5. image.png≥0,不等式约束系数

6. image.pngg(x)=0,互补松弛条件,意思为二者结合在一起,会比单独要求其中一个条件松弛一些,只要其中一个等于0就可以了。

 

三、不等式约束条件下求极值详细过程

当全局极值落在不等式约束内时,实际上不等式约束等于没有效果,和无约束求极值是一样的。如果全局极值不满足不等式约束时,则符合条件的极值会出现在不等式约束的边界上。

image.png

1. 若中间黑色点是我们想要的极值点,白色部分是满足约束条件的区域,如果实际全局极值就落在约束条件中,就不会对求极值产生任何影响,极值满足约束条件。

2. 如果真正的极值不满足约束条件,那么要求的极值就是一个新的值,这个新的值肯定不如原来极值好,不是全局来看最优,但是是在满足约束条件下的最有值了。通常极值会出现在不等式约束的边界上。

本例中不等式约束的条件图示如下:

image.png

1. 本例不等式约束 x4<C,当 c 值较大时,极值有可能本来就满足约束条件,没影响。

2. 当 C 值较小时,白色区域变小了,有可能原来全局极值不在约束范围内,这时就对求极值有影响,需要求边界上满足当前约束条件的极值 。

回归本例:

image.png

KKT 条件为:

image.png

接下来只需要解 KKT 条件组成的方程组即可:

image.png

由①得到:2x1+image.png=0、2x2+image.png=0、2x3+image.png=0、2x4+image.png+image.png=0,由于 x4 多了一项不等式约束条件,所以多加一个image.png。整理得到⑦。

代入到②后,再带到⑦中,再带到③

得到结果并整理得到

image.png

C 取值不同,极值的求法不同,所以需要对 C 进行判断,首先将 c 分成三段。

image.png

第一种情况会得出-C-image.png<0,利用 KKT 条件求解。

image.png

第二种情况会得出-C-image.png=0,利用 KKT 条件求解。

image.png

第三种情况会得出-C-image.png>0,利用 KKT 条件求解。

相关文章
|
机器学习/深度学习 算法
专题六数值微积分与方程求解-2
专题六数值微积分与方程求解
99 0
|
算法 Serverless
专题六数值微积分与方程求解-1
专题六数值微积分与方程求解
113 0
|
机器学习/深度学习 决策智能
约束最优化方法 (四) 乘子法
约束最优化方法 (四) 乘子法
203 0
罗尔(Rolle)、拉格朗日(Lagrange)和柯西(Cauchy)三大微分中值定理的定义
罗尔(Rolle)、拉格朗日(Lagrange)和柯西(Cauchy)三大微分中值定理的定义
罗尔(Rolle)、拉格朗日(Lagrange)和柯西(Cauchy)三大微分中值定理的定义
最优化--凸函数--拉格朗日乘子法
最优化--凸函数--拉格朗日乘子法
|
机器学习/深度学习 算法 开发者
不等式约束条件下求极值1| 学习笔记
快速学习不等式约束条件下求极值1。
不等式约束条件下求极值1| 学习笔记
|
机器学习/深度学习 算法 开发者
不等式约束条件下求极值3| 学习笔记
快速学习不等式约束条件下求极值3。
不等式约束条件下求极值3| 学习笔记
|
人工智能 开发者
切比雪夫不等式 | 学习笔记
快速学习切比雪夫不等式
切比雪夫不等式 | 学习笔记
|
人工智能 开发者
马尔科夫不等式 | 学习笔记
快速学习马尔科夫不等式
马尔科夫不等式 | 学习笔记
|
人工智能 开发者
求解拉格朗日乘子法 | 学习笔记
快速学习求解拉格朗日乘子法
求解拉格朗日乘子法 | 学习笔记