数学模型程序代码-Matlab-姜启源-第三章-简单的优化模型_第1页
数学模型程序代码-Matlab-姜启源-第三章-简单的优化模型_第2页
数学模型程序代码-Matlab-姜启源-第三章-简单的优化模型_第3页
数学模型程序代码-Matlab-姜启源-第三章-简单的优化模型_第4页
数学模型程序代码-Matlab-姜启源-第三章-简单的优化模型_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、第3章 简单的优化模型1. 生猪的出售时机p6365目标函数(生猪出售纯利润,元):Q(t) = ( 8 gt )( 80 + rt ) 4t 640其中,t 0为第几天出售,g为每天价格降低值(常数,元/公斤),r为每天生猪体重增加值(常数,公斤)。求t使Q(t)最大。1.1(求解)模型求解p63(1) 图解法绘制目标函数Q(t) = ( 8 gt )( 80 + rt ) 4t 640的图形(0 t 20)。其中, g=0.1, r=2。从图形上可看出曲线Q(t)的最大值。(2) 代数法对目标函数Q(t) = ( 8 gt )( 80 + rt ) 4t 640用MATLAB求t使Q(t)

2、最大。其中,r, g是待定参数。(先对Q(t)进行符号函数求导,对导函数进行符号代数方程求解)然后将代入g=0.1, r=2,计算最大值时的t和Q(t)。要求: 编写程序绘制题(1)图形。 编程求解题(2).对照教材p63相关内容。相关的MATLAB函数见提示。 要求的程序和运行结果:程序:t=0:1:30;g=0.1;r=2;Q=(8-g.*t).*(80+r.*t)-4.*t-640;plot(t,Q)图形: 要求的程序和运行结果:程序:syms g t r ;Q=(8-g.*t).*(80+r.*t)-4.*t-640;q=diff(Q,t);q=solve(q);g=0.1;r=2;t

3、m=eval(q)Q=(8-g.*tm).*(80+r.*tm)-4.*tm-640运行结果:1.2(编程)模型解的的敏感性分析p6364对1.1中(2)所求得的符号表达式t(r,g),分别对g和r进行敏感性分析。(1) 取g=0.1,对t(r)在r=1.5:0.1:3上求r与t的关系数据,绘制r与t的关系图形(见教材p65)。(2) 取r=2,对t(g)在g=0.06:0.01:0.15上求g与t的关系数据,绘制g与t的关系图形(见教材p65)。要求:分别编写(1)和(2)的程序,调试运行。 给出(1)的程序及运行结果:程序:syms g t r ;Q=(8-g.*t).*(80+r.*t)

4、-4.*t-640;q=diff(Q,t);q=solve(q);g=0.1;r=1.5:0.1:3;t=eval(q);plot(r,t)r;t数值结果:图形结果: 给出(2)的程序及运行结果:程序:syms g t r;Q=(8-g.*t).*(80+r.*t)-4.*t-640;q=diff(Q,t);q=solve(q);r=2;g=0.06:0.01:0.15;t=eval(q);plot(g,t)g;t数值结果:图形结果:2.(编程)冰山运输模型求解p7781按函数调用顺序。(1) 每立方米水所需费用u为船速,V0为冰山的初始体积。(2) 冰山运抵目的地后可获得水的体积为冰山抵达目

5、的地所需天数。(3) 第t天冰山球面半径融化速率:(4) 运送冰山费用为冰山抵达目的地所需天数。(5) 船的日租金参照教材p81的表4,求不同V0,u下每立方米水的费用。下面是不完整的MATLAB程序:function y=mainfun()clc;VV0=107 5*106 106;%冰山的初始体积,3种uu=3 3.5 4 4.5 5;%船速,5种y=zeros(length(VV0), length(uu);%初始化for i=1:length(VV0) for j=1:length(uu) y(i,j)=Y(uu(j),VV0(i); endendy=round(10000*y)/10

6、000;%四舍五入取整。取小数点后4位数字%以下函数的输入输出均为标量function y=Y(u,V0) %(1)y=S(u,V0)/W(u,V0);function y=W(u,V0)%(2) 编写该程序function y=r(t,u)%(3)if t=0&t1000/6/u y=0.2*(1+0.4*u);else error(k不能小于0!);%显示出错信息并退出运行endfunction y=S(u,V0)%(4)T=400/u;y=0;for t=1:T rr=(3*V0/4/pi)(1/3); for k=1:t rr=rr-r(k,u); end y=y+log10(rr);

7、endy=400*f(V0)/u+7.2*u*(u+6)*(3*y-151/u);function y=f(V0)%(5) 编写该程序要求: 编写所要求的程序。 运行。注:第一个函数为主函数,没有输入参数,可直接执行 结果与教材p81表4比较。 完整的程序:function y=mainfun()VV0=107 5*106 106;uu=3 3.5 4 4.5 5;y=zeros(length(VV0), length(uu);for i=1:length(VV0) for j=1:length(uu) y(i,j)=Y(uu(j),VV0(i); endendy=round(10000*y)

8、/10000;function y=Y(u,V0) %(1)y=S(u,V0)/W(u,V0);function y=W(u,V0)%(2) 编写该程序T=400/u;rr=0;for t=1:T rr=rr+r(t,u);endy=3.4*pi/3*(3*V0)/(4*pi)(1/3)-rr)3;function y=r(t,u)%(3)if t=0&t1000/6/u y=0.2*(1+0.4*u);else error(k不能小于0!)endfunction y=S(u,V0)%(4)T=400/u;y=0;for t=1:T rr=(3*V0/4/pi)(1/3); for k=1:t rr=rr-r(k,u); end y=y+log10(rr);endy=400*f(V0)/u+7.2*u*(u+6)*(3*y-151/u);function y=f(V0)%(5) 编写该程序if V05*105&V0106&V0=107 y=8.0;else error( k超出取值范围!);end 程序运行结果:附1:实验提示第1.1题MATLAB函数:,fplot,syms,sym,diff,solve,eval创建函数句柄符号绘制函数图函数fpl

温馨提示

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

评论

0/150

提交评论