1 / 4
文档名称:

深入理解拉格朗日乘子法 和KKT条件.docx

格式:docx   大小:9KB   页数:4页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

深入理解拉格朗日乘子法 和KKT条件.docx

上传人:likuilian1 2022/8/5 文件大小:9 KB

下载得到文件列表

深入理解拉格朗日乘子法 和KKT条件.docx

文档介绍

文档介绍:【整理】深入理解拉格朗日乘子法(Lagrange Multiplier)和
KKT条件
在求解最优化问题中,拉格朗日乘子法(Lagrange Multiplier)和 KKT( Karush Kuhn Tucker)条件是两种最常 用的【整理】深入理解拉格朗日乘子法(Lagrange Multiplier)和
KKT条件
在求解最优化问题中,拉格朗日乘子法(Lagrange Multiplier)和 KKT( Karush Kuhn Tucker)条件是两种最常 用的方法。在有等式约束时使用拉格朗日乘子法,在有不等 约束时使用KKT条件。 我们这里提到的最优化问题通常 是指对于给定的某一函数,求其在指定作用域上的全局最小 值(因为最小值与最大值可以很容易转化,即最大值问题可以 转化成最小值问题)。提到KKT条件一般会附带的提一下拉 格朗日乘子。对学过高等数学的人来说比较拉格朗日乘子应 该会有些印象。二者均是求解最优化问题的方法,不同之处 在于应用的情形不同。 一般情况下,最优化问题会碰
到一下三种情况:(1)无约束条件 这是最简单的情况, 解决方法通常是函数对变量求导,令求导函数等于0的点可 能是极值点。将结果带回原函数进行验证即可。(2)等式约 束条件 设目标函数为f(x),约束条件为h_k(x),形如:
to,"受限于”的意思,l表示有l个约束条 件。 则解决方法是消元法或者拉格
朗日法。消元法比较简单不在赘述,这里主要讲拉格朗日法, 因为后面提到的KKT条件是对拉格朗日乘子法的一种泛化。 例如给定椭球: 求这个椭
球的内接长方体的最大体积。这个问题实际上就是条件极值 问题,即在条件 下,求的最大值。 当然这个问
题实际可以先根据条件消去z (消元法),然后带入转化为无 条件极值问题来处理。但是有时候这样做很困难,甚至是做 不到的,这时候就需要用拉格朗日乘数法了。 首先
定义拉格朗日函数F(x): (其中入k是
各个约束条件的待定系数。)
然后解变量的偏导方程: ……, 如果有
l个约束条件,就应该有1+1个方程。求出的方程组的解就可 能是最优化值(高等数学中提到的极值),将结果带回原方 程验证就可得到解。 回到上面的题目,通过拉格朗日
乘数法将问题转化为 对求偏导得到
联立前面三个方程得到和,带入第四个方程解之 带入解得最大体积为: 至于为什么
这么做可以求解最优化?维基百科上给出了一个比较好的 直观解释。 举个二维最优化的例子:
min f(x,y) . g(x,y) = c 这里画
出z=f(x,y)的等高线(函数登高线定义见百度百科): 绿线标出的是约束g(x,y)=c的点的轨迹。蓝线是f(x,y)的等 高线。箭头表示斜率,和等高线的法线平行。从梯度的方向 上来看,显然有d1>d2。绿色的线是约束,也就是说,只要 正好落在这条绿线上的点才可能是满足要求的点。如果没有
这条约束,f(x,y)的最小值应该会落在最小那圈等高线内部的 某一点上。而现在加上了约束,最小值点应该在哪里呢?显 然应该是在f(x,y)的等高线正好和约束线相切的位置,因为 如果只是相交意味着肯定还存在其它的等高线在该条等高 线的内部或者外部,使得新的等高线与目标函数的交点的值 更大或者更小,只有到等