ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:78.91KB ,
资源ID:16035942      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16035942.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数学模型程序代码Matlab姜启源第一章建立数学模型Word下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数学模型程序代码Matlab姜启源第一章建立数学模型Word下载.docx

1、Dx=-a*x,Dy=a*x-b*yx(0)=1100y(0)=0); disp(x,y) 1100*exp(-a*t), exp(-a*t)*exp(-b*t)*(1100*a*exp(a*t)/(a - b) - (1100*a*exp(b*t)/(a - b) disp(simplify(x,y); 1100*exp(-a*t), (1100*a*exp(-t*(a + b)*(exp(a*t) - exp(b*t)/(a - b)(编程)结果分析p11已知=, =,将上题中得到x(t)和y(t)两条曲线画在同一个图形窗口内。参考图形如下。MATLAB命令plot, fplot, hol

2、d on/off, grid on/off, xlabel, ylabel, text。 编写的程序和运行结果:程序1:用plotclc;clear;a=; b=;t=0:25;x=1100./exp(a*t);y=-(1100*a*(1./exp(a*t) -1./exp(b*t)/(a - b);plot(t,x,t,y);grid on;xlabel(itt /h ylabel(itx,ity /mgtext(2,1100/exp(a*2), itx(itt)text(3,-(1100*a*(1/exp(a*3) - 1/exp(b*3)/(a - b), ity(itt)程序2:用fp

3、lot和匿名函数fplot(t)1100/exp(a*t),-(1100*a*(1/exp(a*t) - 1/exp(b*t)/(a - b),0 25);2.(编程,验证)商人们怎样安全过河p89三名商人各带一个随从乘船渡河,一只小船只能容纳二人,由他们自己划行。随从们密约,在河的任一岸,一旦随从的人数比商人多,就杀人越货。但是如何乘船的大权掌握在商人们手中。商人们怎样才能安全渡河呢模型构成决策: 每一步(此岸到彼岸或彼岸到此岸)船上的人员。在安全的前提下(两岸的随从数不比商人多),经有限步使全体人员过河。xk 第k次渡河前此岸的商人数yk 第k次渡河前此岸的随从数 xk , yk=0,1,

4、2,3; k=1,2, 过程的状态 sk=(xk , yk)允许状态集合 S=(x, y) x=0, y=0,1,2,3; x=3, y=0,1,2,3; x=y=1,2uk 第k次渡船上的商人数vk 第k次渡船上的随从数 uk , vk=0,1,2;决策 dk=(uk , vk)允许决策集合 D=(u , v) u+v =1, 2状态转移律 sk+1=sk+(-1)kdk多步决策问题求dk D(k=1, 2, , n), 使sk S, 并按转移律由 s1=(3,3) 到达sn+1=(0,0)。(编程)求允许决策集合D和允许状态集合SD是2行多列矩阵,每一列是一个决策。S是2行多列矩阵,每一列

5、是一种状态。 编写程序求D和S,并输出。 S的第一列是3,3,最后一列是0,0 。程序: clc;%求允许决策集合D(2n1,n1种决策)D=;for u=0:2 for v=0: if u+v=1|u+v=2 D=D,u;v; endend%求允许状态集合S(2n2,n2种状态)S=;for x=3:-1: for y=3: if x=0|x=3|x=y S=S,x;y;end%首列状态 ( 商人数, 仆从数) = ( 3, 3 ),末列为( 0, 0 )D, S运行结果:(验证)求动态允许状态集合SS和状态转移矩阵A上面允许状态集合S没有指明当时船是在此岸还是在彼岸,应该将S中的每一种状态

6、再分为两种状态,需增加一个元素(值为-1或1)放在第三行。定义动态允许状态集合 SS=(x, y, z) x=0, y=0,1,2,3; x=y=1,2;z=-1,1(x, y, -1),表示从此岸渡河前此岸的允许状态(x, y)。(x, y, 1),表示从彼岸渡河前此岸的允许状态(x, y)。SS是三行多列矩阵,每一列表示一种状态,列下标为其编号。定义状态转移矩阵A,其中,A(i, j)=1表示D中存在决策使状态i转到j,否则A(i, j)=0。程序如下(输入时,不必把注释也输入):程序运行结果(参考): 将程序接在上题的程序之后(去掉最后多余的输出语句),程序最后给出显示SS和A的语句。

7、运行程序,输出SS和A。对照参考答案,如数值不一致,请检查程序。MATLAB函数all的用法见提示。 运行的完整程序和运行结果:%动态允许状态集合SS(3n3,n3种状态)%-1,从此岸渡河前此岸的允许状态%1,从彼岸渡河前此岸的允许状态SS=S;-ones(1,size(S,2),S;ones(1,size(S,2);SSnum=size(SS,2);%状态总数,SS中的列下标对应状态的编号%SS(:,1)=3,3,-1(起点),SS(:,end)=0,0,1(终点)%状态转移矩阵A,A(i,j)=1表示存在决策使状态i转到j,其它为0A=zeros(SSnum);for i=1:SSnum

8、 for j=1: for d=D%顺序取D的每一列给d s=SS(1:2,i)+SS(3,i)*d;-SS(3,i); if all(s=SS(:,j)%所有元素不为0时为真 A(i,j)=1; break;SS, A(验证)给出一个商人们安全过河的方案程序运行结果: 读懂以上程序,掌握all和any函数的应用。 将程序接在之前的程序后(去掉最后多余的输出语句),运行程序。对照答案,如不一致,请检查程序。MATLAB函数any的用法见提示。 给出运行的完整程序和运行结果:%SK为多行SSnum列的矩阵,第i列对应SS的第i列的状态。%第i行表示第i次渡河前有那些状态,1表示有对应下标列号的状

9、态,0则无。%第i+1行是第i行状态转移过来的状态%当第SSnum状态出现时停止,表示有解。%或者新行的元素全0时停止,表示无解。%新行不允许出现之前出现过的状态。s=1,zeros(1,SSnum-1);%从状态3,3,-1开始SK=s;while any(s) & s(SSnum)=1 k=find(s);%求最后一行为1的列下标 s=any(A(k,:),1);%得到新行,元素值为1或0 s=s&any(SK,1);%去掉新行中之前出现的状态 SK=SK;s;%新行加入,作为SK的末行end%多步决策,直到找到目标。有难度!if any(s)=0 %新行全0 disp(无解! return;%最后一行的第SSnum状态(j)开始往回找转换到它的状态(i),直到状态1。%得到一个状态号的顺序sk(行向量),为一个解。sk=zeros(1,size(SK,1)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1