写在前面:貌似在网上找不到一些比较容易懂的讲究,所以蒟蒻就来自己写一篇好了(应该是我太弱了,大佬们写的都看不懂)
极值问题有两类:一个是对变量有限制的,叫做条件极值;一个是没有限制的,叫做非条件极值
拉格朗日乘数法是用来把条件极值的变成非条件极值的,没有限制就可以乱搞求解了
设 f(x1,…,xn) f ( x 1 , … , x n ) 是要去求最值的, g(x1,…,xn) g ( x 1 , … , x n ) 是限制
既然要求 f f 的最值,理论上只要求出在满足限制下的导数零点就可以了
设 fxi f x i 表示 ∂f∂xi ∂ f ∂ x i 也就是 f f 对求偏导数
本质上其实和导数一样,就是把 xi x i 当做变量,其他的当做常量求导就好了
设 p p 为关于 x2,…,xn x 2 , … , x n 的函数,这个可以从 g g 里面解出来
因为 λ λ 是一个定值,也就是说 f+λg f + λ g 对任意的 xi x i 求偏导都为 0 0
这类题目一般的做法就是先求出
然后求出 xi x i 关于 λ λ 的函数,通常这个函数是可以 O(1) O ( 1 ) 或者 O(logn) O ( log n ) 求出并且具有单调性的
所以就可以二分 λ λ ,然后求出 xi x i ,然后通过判断所有的 xi x i 是否满足 g g 的限制来确定新的二分边界
几道用到拉格朗日乘数法的题目