【摘要】:拉格朗日乘子法是一种古典的求约束极值的间接解法。现用一个简单的例子来说明拉格朗日乘子法的计算方法。例5-3 用拉格朗日乘子法求问题minf=60-10x1-4x2+x21+x22-x1x2s.t.h=x1+x2-8=0的约束最优解。因此,拉格朗日乘子法用来求解一般的约束优化问题不是一种有效的方法。
拉格朗日乘子法是一种古典的求约束极值的间接解法。它是将具有等式约束的优化问题
转化成拉格朗日函数
用解析法求解式(5-54),即令▽L(X,λ)=0可求得函数L(X,λ)的极值。在函数L(X,λ)中,λ=(λ1,λ2,…,λl)称为拉格朗日乘子,也是变量,因此可以列出(n+l)个方程。
联立求解后,可得(n+l)个变量:X*=(x1*,x2*,…,xn*)T,λ*=(λ1*,λ2*,…,λn*)T,其中,X*为极值点,λ*为相应的拉格朗日乘子向量。
现用一个简单的例子来说明拉格朗日乘子法的计算方法。
例5-3 用拉格朗日乘子法求问题
minf(X)=60-10x1-4x2+x21+x22-x1x2
s.t.h(X)=x1+x2-8=0的约束最优解。(www.xing528.com)
解:按式(5-54)构造拉格朗日函数
L(X,λ)=60-10x1-4x2+x21+x22-x1x2+λ(x1+x2-8)
令▽L=0,得方程组
联立求解,得约束最优解
X*=(5,3)T,f(X*)=17
拉格朗日乘子法求解上例,看起来似乎很简单,实际上这种方法存在着许多问题,例如,对于非凸问题容易失败;对于大型的非线性优化问题,需求解高次联立方程组,其数值解法几乎和求解优化问题同样困难;此外,还必须分离出方程组的重根。因此,拉格朗日乘子法用来求解一般的约束优化问题不是一种有效的方法。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。