📜  拉格朗日乘数

📅  最后修改于: 2021-09-23 04:45:19             🧑  作者: Mango

工程师面临的主要问题之一是某个函数的优化问题。数学为我们提供了解决此类问题的绝妙方法。这种方法被称为拉格朗日乘数法

那么如何以及何时申请?有一定的条件。假设您有以下问题:
在平面 2x + 3y – 5z = 1 上找到与原点距离最小的点的坐标。

所以你要优化的函数是,

√(x2 + y2 + z2),
Let this be f(x, y, z) 

但是我们有一个约束;点应该位于给定的平面上。因此这个“约束函数”通常用 g(x, y, z) 表示。但是在应用拉格朗日乘数方法之前,我们应该确保 g(x, y , z) = c 其中 ‘c’ 是一个常数。在这个情况下,

g(x, y, z) = 2x + 3y - 5z

它确实等于一个常数“1”。因此我们可以应用该方法。

现在的程序是解这个方程:

∇f(x, y, z) = λ∇g(x, y, z)

其中 λ 是实数。

这给了我们 3 个方程,第四个方程当然是我们的约束函数g(x, y, z)。求解 x, y, z 和 λ。

举个例子就清楚了。

例子:
f(x, y, z) = 3x 2 + y受约束的最大值和最小值,

4x - 3y = 9 
and x2 + z2 = 9

.

这个例子是故意用来教你在有多个约束函数的情况下怎么做的。在这种情况下,假设任意常数与约束函数的数量一样多,并将方程写为以下形式:

∇f(x, y, z) = c1∇g(x, y, z) + c2∇h(x, y, z) + c3∇p(x, y, z) ... ...

其中 i=1, 2, 3… 的 c i只是实数,g、h、p 是约束函数。

现在,如果您得到多个三元组,通过在要优化的函数满足它并比较值,找出哪个代表最大值,哪个代表最小值。在这个问题中,答案是:

Maximum for (-2/√13, 3/√13, -2 - 7/√13) and 
Minimum for (2/√13, -3/√13, -2 + 7/√13)