数学建模非线性规划_第1页
数学建模非线性规划_第2页
数学建模非线性规划_第3页
数学建模非线性规划_第4页
数学建模非线性规划_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、7.3 非线性规划非线性规划第七章第七章 最优化问题数学模型最优化问题数学模型实验目的实验目的实验内容实验内容2 2、掌握用、掌握用Matlab求解优化问题。求解优化问题。1 1、直观了解非线性规划的基本内容、直观了解非线性规划的基本内容。1 1、非线性规划的基本理论。、非线性规划的基本理论。2 2、用、用Matlab求解非线性规划。求解非线性规划。 如果目标函数或约束条件中至少有一个如果目标函数或约束条件中至少有一个是非线性函数时的最优化问题就叫做是非线性函数时的最优化问题就叫做非线性非线性规划问题规划问题( (NLP问题问题) )非线性规划的一般形式为:非线性规划的一般形式为:min (

2、), (1)s.t. ( )0, 1, , ( )0, 1, (2)jizf xgxjlh xim非线性规划的基本解法非线性规划的基本解法 非线性规划的解法较多,有可行方向法、非线性规划的解法较多,有可行方向法、罚函数法、梯度投影法罚函数法、梯度投影法. Matlab优化工具包中采用的是优化工具包中采用的是逐步二次逐步二次规划法规划法:(SQP, Sequential Quadratic Programming ).1 1、二次规划、二次规划Matlab求解非线性规划求解非线性规划标准形式:标准形式:. , , .,min 21221121vxvbxAbxAtsxcHxxzTT用用MATLAB

3、求解求解, 其输入格式如下其输入格式如下: 1.x=quadprog(H,c,A1,b1) 2.x=quadprog(H,c,A1,b1,A2,b2) 3.x=quadprog(H,c,A1,b1,A2,b2,v1,v2) 4.x=quadprog(H,c,A1,b1, A2,b2 ,v1,v2, x0) 5.x=quadprog(H,c,A1,b1, A2,b2 ,v1,v2, x0,opt) 6.x,fv=quaprog(.) 7.x,fv,ef=quaprog(.) 8.x,fv,ef,out=quaprog(.)解解: :(1)(1)首先写成标准形式首先写成标准形式2212121122

4、min ( ,)2622,f x xxxxx xx 例1:. 0, , 22 , 2 . .212121xxxxxxts1112221212 1 12min ( ,),1 26 1 12. . ,1 220 .0Txxzx xxxxstxxx (2)(2)输入命令:输入命令: H=2*1 -1; -1 2; c=-2, -6; A1=1 1; -1 2; b1=2, 2; A2= ; b2= ; V1=0; 0; V2= ; x,fv=quadprog(H,c,A1,b1,A2,b2,V1,V2)2 2、一般非线性规划、一般非线性规划标准形式:标准形式:11221212min ( ),s.t.

5、 , , , ( )0, ( )0. zf xA xbA xbvxvc xcx非线性等式非线性等式非线性不等式非线性不等式 第第1 1步步:首先建立目标函数首先建立目标函数f(xf(x) )的函数的函数M M文件文件fun.m, , function f=fun(X) f= ; 其中其中c1(x)c1(x)和和c2(x)c2(x)均为非线性函数组成的向量,均为非线性函数组成的向量,其它变量的含义与线性规划、二次规划中相同。用其它变量的含义与线性规划、二次规划中相同。用MatlabMatlab求解上述问题,基本步骤分三步:求解上述问题,基本步骤分三步:第第2 2步步:若约束条件中有非线性不等式约

6、束和非线性若约束条件中有非线性不等式约束和非线性等式约束等式约束, ,则则建立建立M M文件文件c.m来定义函数来定义函数c1(x)c1(x)和和c2(x)c2(x), , function c1,c2=c(x) c1=; c2=;第第3 3步步:建立主程序:建立主程序: 非线性规划求解的函数是非线性规划求解的函数是fmincon,命令的基本格式有命令的基本格式有 (1) x=fmincon(fun,x0,A1,b1) (2) x=fmincon(fun,x0,A1,b1,A2,b2) (3) x=fmincon(fun,x0,A1,b1, A2,b2,V1,V2) (4) x=fmincon

7、(fun,x0,A1,b1,A2,b2,V1,V2,c) (5) x=fmincon(fun,x0,A1,b1,A2,b2,V1,V2,c,opt) (6) x,fval= fmincon(.) (7) x,fval,ef= fmincon(.) (8) x,fval,ef,out= fmincon(.) 注1: fmincon函数提供了大型优化算法和中型优化算法。默认时,若在fun函数中提供了梯度(options参数的GradObj设置为on),并且只有上下界存在或只有等式约束,fmincon函数将选择大型算法。当既有等式约束又有梯度约束时,使用中型算法。 注2: fmincon函数的中型算

8、法使用的是逐步二次规划法。在每一步迭代中求解二次规划子问题,并用BFGS法更新拉格朗日Hessian矩阵。 注3: fmincon函数可能会给出局部最优解,这与初值x0的选取有关。解解: :(1)(1)首先写成标准形式首先写成标准形式例2:. 0, , 54 , 632 . .212121xxxxxxts,2min2221212121xxxxf,2min2221212121xxxxf,56 4 13 2 . .21xxts.0021xx(2)建立建立M文件文件eg2.m function f=eg2(x) f=-x(1)-2*x(2)+(1/2)*x(1)2+(1/2)*x(2)2;(3)(3

9、)主程序主程序 x0=1;1; A1=2 3 ;1 4; b1=6;5; A2= ;b2= ; V1=0;0; V2= ; x, fv=fmincon(eg2,x0,A1,b1,A2,b2,V1,V2)(4)运行结果运行结果 x = 0.7647 1.0588 fv = -2.0294解解: :(1)(1)首先写成标准形式首先写成标准形式例3:1212121.5s.t. 0, 10 x xxxx x212121212s.t. 10, 1.50, 100.xxx xxxx x 212 10.xx ),12424(min22122211xxxxxefx),12424(min22122211xxxx

10、xefx(2)建立函数建立函数M文件文件eg3.m, ,用来定义用来定义目标函数目标函数 function f=eg3(x) f=exp(x(1)*(4*x(1)2+2*x(2)2+4*x(1)*x(2)+2*x(2)+1);(3)(3)再建立函数再建立函数M文件文件c. m,用来,用来定义定义非线性约束非线性约束 function c1, c2=c(x) c1=1.5+x(1)*x(2)-x(1)-x(2); -x(1)*x(2)-10; c2= x(1)2+ x(2)-1;(4)(4)主程序主程序 x0=1; -1; A1= ;b1= ; A2= ;b2= ; v1= ;v2= ; x, fv=f

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论