非线性规划问题-数学建模市公开课一等奖省赛课获奖课件_第1页
非线性规划问题-数学建模市公开课一等奖省赛课获奖课件_第2页
非线性规划问题-数学建模市公开课一等奖省赛课获奖课件_第3页
非线性规划问题-数学建模市公开课一等奖省赛课获奖课件_第4页
非线性规划问题-数学建模市公开课一等奖省赛课获奖课件_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

非线性规划问题天津理工大学理学院赵瑞第1页非线性规划第2页

1.首先建立M文件fun.m,定义目标函数F(X):functionf=fun(X);f=F(X);普通非线性规划

其中X为n维变元向量,G(X)与Ceq(X)均为非线性函数组成向量,其它变量含义与线性规划、二次规划中相同.用Matlab求解上述问题,基本步骤分三步:第3页3.建立主程序.非线性规划求解函数是fmincon,命令基本格式以下:

(1)x=fmincon(‘fun’,X0,A,b)

(2)x=fmincon(‘fun’,X0,A,b,Aeq,beq)

(3)x=fmincon(‘fun’,X0,A,b,Aeq,beq,VLB,VUB)

(4)x=fmincon(‘fun’,X0,A,b,Aeq,beq,VLB,VUB,’nonlcon’)(5)x=fmincon(‘fun’,X0,A,b,Aeq,beq,VLB,VUB,’nonlcon’,options)

(6)[x,fval]=fmincon(...)

(7)[x,fval,exitflag]=fmincon(...)(8)[x,fval,exitflag,output]=fmincon(...)输出极值点M文件迭代初值参数说明变量上下限第4页1.先建立M文件fun4.m,定义目标函数:

functionf=fun4(x);f=exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1);x1+x2=0s.t.1.5+x1x2-x1-x20-x1x2–10

0例2.再建立M文件mycon.m定义非线性约束:function[g,ceq]=mycon(x)g=[1.5+x(1)*x(2)-x(1)-x(2);-x(1)*x(2)-10];ceq=[];第5页3.主程序youh3.m为:x0=[-1;1];A=[];b=[];Aeq=[11];beq=[0];vlb=[];vub=[];[x,fval]=fmincon('fun4',x0,A,b,Aeq,beq,vlb,vub,'mycon')3.运算结果为:

x=-1.22471.2247fval=1.8951第6页第7页第8页第9页例

1.先建立M-文件fun.m定义目标函数:functionf=fun(x);f=-2*x(1)-x(2);2.再建立M文件mycon2.m定义非线性约束:function[g,ceq]=mycon2(x)g=[x(1)^2+x(2)^2-25;x(1)^2-x(2)^2-7];ceq=[];第10页第11页第12页3.主程序fxx.m为:x0=[3;2.5];VLB=[00];VUB=[510];[x,fval]=fmincon('fun',x0,[],[],[],[],VLB,VUB,'mycon2')第13页4.运算结果为:x=4.00003.0000fval=-11.0000第14页第15页第16页作业:1.供给与选址

某企业有6个建筑工地要开工,每个工地位置(用平面坐标系a,b表示,距离单位:千米)及水泥日用量d(吨)由下表给出。当前有两个暂时料场位于A(5,1),B(2,7),日储量各有20吨。假设从料场到工地之间都有直线道路相连。(1)试制订天天供给计划,即从A,B两料场分别向各工地运输多少吨水泥,使总吨千米数最小。(线性规划作业)(2)为了深入降低吨千米数,打算舍弃两个暂时料场,改建两个新,日储量各为20吨,问应建在何处,节约吨千米数有多大?(此次作业)第17页无约束问题Matlab函数中只有处理极小值指令。求是局部极值1.一元函数极值[x,fval]=fminbnd(fun,x1,x2)%x1、x2表示被研究区间左右边界。%x返回极小值点,fval返回该点函数值。2.多元函数极值[x,fval]=fminsearch(fun,x0)%求多元函数极值点指令,x0为初始值[x,fval]=fminunc(fun,x0)%拟牛顿法求多元函数极值点指令,x0为初始值%fun均是用字符串表示函数第18页[x,fval]=fminbnd('sin(x)',-pi,pi)%求sinx在[-π,π]极小值点x=-1.5708fval=-1.0000第19页[x,fval]=fminsearch('(x(1)-1)^2+(x(2)-x(1)^2)^2',[0,0])x=1.00001.0000fval=2.6131e-010第20页[x,fval]=fminunc('x(1)^2+x(2)^2-x(1)*x(2)+2*x(1)-4*x(2)',[2,2])

温馨提示

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

评论

0/150

提交评论