最优化理论(二)拉格朗日乘子法

简介: 最优化理论(二)拉格朗日乘子法

引入: 优化问题通常是指对于给定的某一函数,求其在指定作用域上的全局最小值(因为最小值与最大值可以很容易转化,即最大值问题可以转化成最小值问题)

一:无约束条件

这是最简单的情况,解决方法通常是函数对变量求导,令求导函数等于0的点可能是极值点。将结果带回原函数进行验证即可。


二:等式约束条件–拉格朗日乘子

2.1拉格朗日乘子法的定义以及推导

0.png这种方法可以将一个有n个变量与k个约束条件的最优化问题转换为一个解有n + k个变量的方程组的解的问题。这种方法中引入了一个或一组新的未知数,即拉格朗日乘数,又称拉格朗日乘子,或拉氏乘子,它们是在转换后的方程,即约束方程中作为梯度(gradient)的线性组合中各个向量的系数。

1.png


注:上面的拉格朗日乘子的-或+没有关系;并且拉格朗日乘数法所得的极点会包含原问题的所有极值点,但并不保证每个极值点都是原问题的极值点。

2.png

注:绿线标出的是约束g(x,y) = c的点的轨迹。蓝线是f的等高线。箭头表示梯度,和等高线的法线平行。

从上面的图出发:

3.png

注:其实就是约束和方程在某一点相切,此时两者的梯度方向是平行的,相向或者是反向,求出参数,然后带到原方程即可,这里为什么此时的梯度就是原函数的梯度!!

见下面的证明

4.png


注:这里主要利用了全微分的概念,

2.2一个简单的例子:

5.png


目录
相关文章
|
数据采集 算法 Python
[模型]拉格朗日插值法
[模型]拉格朗日插值法
最优化--凸函数--拉格朗日乘子法
最优化--凸函数--拉格朗日乘子法
|
人工智能 开发者
拉格朗日乘子法 | 学习笔记
快速学习拉格朗日乘子法
拉格朗日乘子法 | 学习笔记
|
人工智能 开发者
求解拉格朗日乘子法 | 学习笔记
快速学习求解拉格朗日乘子法
求解拉格朗日乘子法 | 学习笔记
雅克比迭代法求解线性方程组
雅克比迭代法求解线性方程组
123 0
|
机器学习/深度学习
拉格朗日对偶
拉格朗日对偶
拉格朗日对偶
|
机器学习/深度学习
拉格朗日乘数法
拉格朗日乘数法
拉格朗日乘数法