您好,欢迎访问三七文档
非线性规划模型0:引言:1:如果目标函数和约束条件有一个或多个变量为非线性函数,则称这种规划问题为非线性规划问题。其模型为:ljxgmixhtsRxxfzjin,,2,1,01.,,2,1,0..),(min2:如果仅有等式约束hi,则可以用lagrange乘子法构造L(x,)=f(x)+ihi(x)(i为参数),化为无约束优化问题,然后利用无约束优化最优解必要条件来求解。3:故求解时主要考虑只有不等式约束模型:2,,2,1,0..),(minljxgtsRxxfzjn一:一些非线性规划模型:1:供应与选址问题:某公司有6个建筑工地要开工,每个工地的位置(用平面坐标a,b表示,距离单位:千米)及水泥日用量d(吨)由下表给出。目前有两个临时料场位于A(5,1),B(2,7),日储量各有20吨,假设从料场到工地之间均有直线道相连;试制定每天的供应计划,即从A,B两料场分别向各工地运多少吨水泥,使总的吨千米数最小。为了进一步减少吨千米数,打算舍弃两个临时料场,改建两个新的,日储量仍各有20吨,问应建在何处,节省的吨千米数有多大?123456a1.258.750.55.7537.25b1.250.754.7556.57.25c3547611工地位置(a,b)及水泥日用量d解:(1):这是双目标规划问题:一个是收益,一个是风险,一般不能同时满足。将两个函数合并成一个函数,从而使问题简化。(2)该投资的决策问题的数学模型为:(3)参数意义:=0时,表示不考虑风险;=1时,表示不考虑收益,主要考虑风险。……(7)(4)取=1进行求解。非线性规划问题。3:武器分配问题(p110)4:1995年数学模型竞赛A题:飞行管理问题(p110)60,0500021620)(max2121221222121xxxxzgxxxxxxzf约束条件目标函数二:二次规划及有效集法:1:二次规划的标准形式:8..,21)(minbAxtsRHcxHxxxfnnT对称2:如果(8)式中约束条件Ax=b,则可用lagrange乘子法求解:……(9)构造)的最优解。即为(其中解出求导得对9,,00,,21,xxbAxAcHxxRbAxcxHxxxLmTT3:对有不等式约束的(8);可讨论其约束条件mmmmbxabxabbxaabAx1111把其中起约束的不等式改为不等式,不起约束的不等式去掉,化为等式约束的二次规划求解。称为有效集法。三:用MATLAB优化工具箱解二次规划。1:解法:(1)化的标准形。(2)输入H,c,A,b;(3)用qp程序求解。bAxtsRHcxHxxxfnnT..,21)(min对称2:常见的qp程序:•X=qp(H,c,A,b)•x=qp(H,c,A,b,v1)•x=qp(H,c,A,b,v1,v2,x0,ne,dis,1)%解H非正定的QP•[x,lag]=qp(H,c,A,b,……,)qp中的参数除H,c,A,b同lp.3:例:求解:0,32222..12422),(min212121212122212121xxxxxxxxtsxxxxxxxxf解:(1)将这个二次规划化为标准形:322,12211112,4,2111,21bAcHxxx(2)编程计算:toMATLABerciguihua.m结果:x=(0.6667,1.3333)f=-17.5556三:带约束非线性规划的解法:1:通常解法有:•可行方向法•罚函数法•梯度投影法(参考《运筹学》清华大学出版社;《最优化理论》袁亚湘,科学出版社。•逐步二次规划法(MATLAB中采用)2:逐步二次规划法思想:(解模型(1))(1)构造lagrange函数,,2,,11xLxgxhxfxLljjjmiii用二次函数逼近化为二次规划问题,求解。(3)实际中是迭代法求解。四:用MATLAB优化工具箱解带约束非线性规划:1:解法程序:'',2,1,,0,'',0,''0,''gradvvoptxfunconstrxoptxfunconstrxxfunconstrxFun.m文件要同时给出目标函数f和约束条件g。形式为[f,g]=fun(x);x0为迭代初值;opt为算法选择;v1为下界;v2为上界;grad.m文件要(用分析法)同时给出目标函数f和约束条件g的梯度,形式为[df,dg]=fun(x);g和dg的表达形式请见下例:2:例:研究:的极小值问题。带约束0,5.11100,212221212212xxxxxxxxxf解:分不给出梯度和给出梯度两种情况。不给出梯度:toMATlABnotidu.m给出梯度时:toMATLAByestidu.m五:供应与选址问题求解:1:用旧料场时:是一线性规划问题:计算结果如下:toMATLABliaochxxml.m(调用了liaochxx.m函数)i123456Ci1(料场A)350701Ci2(料场B)0040610总吨千米数为liaochxx(x)为136。2。2:改建新料场的计算:非线性规划问题:toMATLABliaochml.m结果为:总吨千米数为liaoch(x)为89.9,比使用原料场减少了46.3.i123456新料场位置Ci1(料场A)354710(5.6348,4.8687)Ci2(料场B)0000511(7.2497,7.7499)下图:画出了工地,原料场,新料场的位置(‘+’为工地,‘*’为原料场,‘o’为新料场。)新料场建于用料最大的工地边,你预计到了吗?0123456789012345678六:任务:•求解投资决策问题;•武器分配问题;
本文标题:非线性规划模型
链接地址:https://www.777doc.com/doc-5254467 .html