在数学中的最优化问题中,拉格朗日乘数法(以数学家约瑟夫·拉格朗日命名)是一种寻找多元函数在其变量受到一个或多个条件的约束时的极值的方法。这种方法可以将一个有个变量与个约束条件的最优化问题转换为一个解有 + 个变量的方程组的解的问题。这种方法中引入了一个或一组新的未知数,即拉格朗日乘数,又称拉格朗日乘子,或拉氏乘子,它们是在转换后的方程,即约束方程中作为梯度(gradient)的线性组合中各个向量的系数。
比如,要求个变量和个约束的情况,有:
拉格朗日乘数法所得的极点会包含原问题的所有极值点,但并不保证每个极值点都是原问题的极值点。拉格朗日乘数法的正确性的证明牵涉到偏微分,全微分或链法。
微积分中最常见的问题之一是求一个函数的极大极小值(极值)。但是很多时候找到极值函数的显式表达是很困难的,特别是当函数有先决条件或约束时。拉格朗日乘数则提供了一个非常便利方法来解决这类问题,而避开显式地引入约束和求解外部变量。
先看一个三维的例子:假设有函数:为常数。对不同定义为在R上的方程,约束为(x)= (或将约束左移得到(x) − = )。定义拉格朗日为
注意极值的条件和约束现在就都被记录到一个式子里了:
和
拉格朗日乘数常被用作表达最大增长值。原因是从式子:
中我们可以看出是当方程在被约束条件下,能够达到的最大增长率。拉格朗日力学就使用到这个原理。
拉格朗日乘数法在卡罗需-库恩-塔克条件被推广。
求此方程的最小值:
同时未知数满足
因为只有一个未知数的限制条件,我们只需要用一个乘数(p)= 1即
可以使用拉格朗日乘数找到最高熵(概率的函数)。对于所有的从1到,要求
由此得到
计算出这个等式的微分,我们得到:
这说明都相等(因为它们都只是λ的函数)。解出约束∑ = 1,得到
因此,使用均匀分布可得到最大熵的值。
约束最优化在经济学占有很重要的地位。例如一个消费者的选择问题可以被视为一个求效用方程在预算约束下的最大值问题。拉格朗日乘数在经济学中被解释为影子价格,设定在某种约束下,在这里即收入的边际效用。
拉格朗日乘数就是效用函数在最优解处对收入的偏导数,也就是在最优解处增加一个单位收入带来的效用增加,或者说在最优解处有效用衡量收入的价值,称之为收入的边际效用。
在企业生产问题中,拉格朗日乘数用来衡量要素投入变动所带来的收入变动,du/dm=λ,u表示效用函数或生产函数,m表示收入或要素投入。
在具体数学推导中还可以运用包络定理的内容。
参考拉格朗日原作或方法的命名:
更深入的介绍和互动applet: