前置知识

概述

拉格朗日乘数(Lagrange multiplier,又称 拉格朗日乘数法)用来解决 存在关系的多变量中的最值问题。

其实感觉在 OI 中使用得比较少。但是在数学填空题里或许可以发挥一些作用。还有可以在朋友面前装逼。

公式

众所周知,函数微分之后可以求出极值,但很多时候找到该函数的显式表达是很困难的,特别是当函数有先决条件或约束时。此时,拉格朗日乘数 可能可以比较快速地求解。

我们求函数 在满足所有 的局部最值。

接下来对 都分别求偏微分,并且令每个导数都等于 ,满足条件的 都有可能成为最值(很抽象,看不懂很正常,看看例子就懂了)。

拉格朗日乘数法所得的临界点会包含原问题的所有临界点,但并不保证每个拉格朗日乘数法所得的临界点都是原问题的临界点。

原理

这不是证明。

图炸了,建议刷新重试

红线标出的是约束函数 的点的轨迹。蓝线是函数 的等高线。箭头表示梯度,和等高线的法线平行。

它们相切的时候,就会出现极值。取偏微分等于 的解即可求出。

例子

先看几个例子,再看证明。

一个二维的例子

求函数 在满足 时的最值。

满足上述条件的只有:

一个三维的例子

求函数 在满足 时的最小值。

将所有变量的偏微分设为 ,得到一个方程组,最值在以下方程组的解中:

证明

若函数 点处有极值 ,且在 点的邻域内连续,则在 处有:

另有一常值函数

两函数在 点处的全微分为

在区段内有极值的时候由于 是任取的无穷小量,故该线性方程组的系数成比例,有

将上二式分别乘以 ,再相加并积分,得到一新函数

那么,求原函数极值的问题就转化为求该函数极值的问题。

参考

https://ksmeow.moe/method_of_lagrange_multiplier/
https://www.luogu.com.cn/blog/s-r-f/oi-bi-ji-li-yong-la-ge-lang-ri-sheng-shuo-fa-qiu-han-shuo-di-zui-zhi
https://en.wikipedia.org/wiki/Lagrange_multiplier