在数学最优化问题中,拉格朗日乘数法(以数学家约瑟夫·路易斯·拉格朗日命名)是一种寻找变量受一个或多个条件所限制的多元函数的极值的方法。这种方法将一个有n 个变量与k 个约束条件的最优化问题转换为一个有n + k个变量的方程组的极值问题,其变量不受任何约束。这种方法引入了一种新的标量未知数,即拉格朗日乘数:约束方程的梯度(gradient)的线性组合里每一个向量的系数。php
此方法的证实牵涉到偏微分,全微分或链法,从而找到能让设出的隐函数的微分为零的未知数的值。html
先看一个二维的例子:假设有函数:f(x,y),要求其极值(最大值/最小值),且函数
c 为常数。对不一样dn的值,不难想像出优化
的等高线。而方程g的等高线正好是g(x,y) = c。想像咱们沿着g = c的等高线走;由于大部分状况下f和g的等高线不会重合,但在有解的状况下,这两条线会相交。想像此时咱们移动g = c上的点,由于f是连续的方程,咱们所以能走到更高或更低的等高线上,也就是说dn能够变大或变小。只有当g = c和
相切,也就是说,此时,咱们正同时沿着g = c和
走。这种状况下,会出现极值或鞍点。spa
气象图中就很常出现这样的例子,当温度和睦压两列等高线同时出现的时候,切点就意味着约束极值的存在。htm
用向量的形式来表达的话,咱们说相切的性质在此意味着f和g的斜率在某点上平行。此时引入一个未知标量λ,并求解:blog
且λ ≠ 0.ip
一旦求出λ的值,将其套入下式,易求在无约束极值和极值所对应的点。get
新方程F(x,y)在达到极值时与f(x,y)相等,由于F(x,y)达到极值时g(x,y) − c总等于零。数学
如f定义为在Rn上的方程,约束为gk(x)= ck(或将约束左移获得gk(x) − ck = 0)。定义拉格朗日Λ为
注意极值的条件和约束如今就都被记录到一个式子里了:
和
拉格朗日乘数常被用做表达最大增加值。缘由是从式子:
中咱们能够看出λk是当方程在被约束条件下,可以达到的最大增加率。拉格朗日力学就使用到这个原理。
拉格朗日乘数法在Karush-Kuhn-Tucker最优化条件被推广。
求此方程的最大值:
同时未知数知足
由于只有一个未知数的限制条件,咱们只须要用一个乘数λ.
将全部Φ方程的偏微分设为零,获得一个方程组,最大值是如下方程组的解中的一个:
全部几率的总和是1,所以咱们获得的约束是g(p)= 1即
可使用拉格朗日乘数找到最高熵(几率的函数)。对于全部的k 从1到n,要求
由此获得
计算出这n个等式的微分,咱们获得:
这说明pi都相等 (由于它们都只是λ的函数). 解出约束∑k pk = 1,获得
所以,使用均匀分布可获得最大熵的值。
约束最优化在经济学占有很重要的地位。例如一个消费者的选择问题能够被视为一个求效用方程在预算约束下的最大值问题。拉格朗日乘数在经济学中被解释为影子价格,设定在某种约束下,在这里即收入的边际效用。
拉格朗日乘数就是效用函数在最优解出对收入的偏导数,也就是在最优解处增长一个单位收入带来的效用增长,或者说在最优解处有效用衡量收入的价值,称之为收入的边际效用。
在企业生产问题中,拉格朗日乘数用来衡量要素投入变更所带来的收入变更,du/dm=λ,u表示效用函数或生产函数,m表示收入或要素投入。
在具体数学推导中还能够运用包络定理的内容。
原文转自:http://www.cnblogs.com/yysblog/archive/2011/10/23/2221987.html