拉格朗日乘子法

拉格朗日乘数

 
详细的解释见wiki,
 

例子

[编辑]很简单的例子

求此方程的最大值:

f(x,y) = x2y

同时未知数满足

x2 + y2 = 1

因为只有一个未知数的限制条件,我们只需要用一个乘数λ.

g(x,y) = x2 + y2 − 1
Φ(x,y,λ) = f(x,y) + λg(x,y) = x2y + λ(x2 + y2 − 1)

将所有Φ方程的偏微分设为零,得到一个方程组,最大值是以下方程组的解中的一个:

2xy + 2λx = 0
x2 + 2λy = 0
x2 + y2 − 1 = 0

[编辑]另一个例子

求此离散分布的最大

f(p_1,p_2,\ldots,p_n) = -\sum_{k=1}^n p_k\log_2 p_k.

所有概率的总和是1,因此我们得到的约束是gp)= 1即

g(p_1,p_2,\ldots,p_n)=\sum_{k=1}^n p_k=1.

可以使用拉格朗日乘数找到最高熵(概率的函数)。对于所有的k 从1到n,要求

\frac{\partial}{\partial p_k}(f+\lambda (g-1))=0,

由此得到

\frac{\partial}{\partial p_k}\left(-\sum_{k=1}^n p_k \log_2 p_k + \lambda (\sum_{k=1}^n p_k - 1) \right) = 0.

计算出这n个等式的微分,我们得到:

-\left(\frac{1}{\ln 2}+\log_2 p_k \right) + \lambda = 0.

这说明pi都相等 (因为它们都只是λ的函数). 解出约束∑k pk = 1,得到

p_k = \frac{1}{n}.

因此,使用均匀分布可得到最大熵的值。





原文地址:https://www.cnblogs.com/kidoln/p/2311893.html