拉格朗日乘子基本概念

通常我们遇到的求极值的问题是求函数f(x1,x2,...,xn)在什么条件下取得极值,一般的求解法就是求导、令导数等于0。

另一种常见情况是求函数f(x1,x2,...,xn)在g(x1,x2,...,xn)=0的约束下取得极值的情况,这种时候就要用到拉格朗日乘子法(Lagrange multiplier)。

基本思想:

引入一个新的参数λ(即拉格朗日乘子),将约束条件函数与原函数联系到一起,使能配成与变量数量相等的等式方程,求这个新等式方程的极值点,从而求出得到原函数极值的各个变量的解。

具体实现:

假设需要求极值的目标函数 (objective function) 为 f(x,y),限制条件为 φ(x,y)=M

  设g(x,y)=M-φ(x,y)

  定义一个新函数

  F(x,y,λ)=f(x,y)+λg(x,y)

  则用偏导数方法列出方程:

  ∂F/∂x=0

  ∂F/∂y=0

  ∂F/∂λ=0

  求出x,y,λ的值,代入即可得到目标函数的极值

  扩展为多个变量的式子为:

  F(x1,x2,...λ)=f(x1,x2,...)+λg(x1,x2...)

  则求极值点的方程为:

  ∂F/∂xi=0(xi即为x1、x2……等自变量)

  ∂F/∂λ=g(x1,x2...)=0

原文地址:https://www.cnblogs.com/plwang1990/p/2104945.html