数学建模8-动态规划及目标规划.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数学建模8-动态规划和目标规划动态规划动态规划是求解决策过程最优化的数学方法,主要用于求解以时间划分阶段的动态过程的优化问题。但是一些与时间无关的静态规划(如线性规划、非线性规划),只要人为地引进时间因素,把它视为多阶段决策过程,也可以用动态规划方法方便地求解。基本概念、基本方程:阶段状态决策策略状态转移方程:指标函数和最优值函数:最优策略和最优轨线递归方程:3.计算方法和逆序解法(此处较为抽象,理解较为困难,建议结合例子去看)4.动态规划与静态规划的关系:一些静态规划只需要引入阶段变量、状态、决策等就可以用动态规划方法求解(详见书中例4)5.若干典型问题的动态规划模型:(1)最短路线问题:(2)生产计划问题:状态定义为每阶段开始时的储存量xk,决策为每个阶段的产量,记每个阶段的需求量(已知量)为dk,则状态转移方程为(3)资源分配问题:详见例5状态转移方程:最优值函数:自有终端条件:(4)具体应用实例:详见例6、例7。目标规划实际问题中,衡量方案优劣要考虑多个目标,有主要的,有主要的,也有次要的;有最大值的,也有最小值的;有定量的,也有定性的;有相互补充的,也有相互对立的,这时可用目标规划解决。其求解思路有加权系数法、优先等级法、有效解法等。基本概念:正负偏差变量:绝对(刚性)约束和目标约束优先因子(优先等级)与权系数:凡要求第一位达到的目标赋予优先因子P1,次位赋予P2……以此类推。目标规划的目标函数:一般数学模型:求解目标规划的解法:序贯式算法(用LINGO软件求解,有编程模板可以使用,下面以书中例3说明,具体还可以参考书中例6-例8):model:sets:level/1..3/:p,z,goal;variable/1..2/:x;h_con_num/1..1/:b;s_con_num/1..4/:g,dplus,dminus;h_con(h_con_num,variable):a;s_con(s_con_num,variable):c;obj(level,s_con_num)/1 1,2 2,3 3,3 4/:wplus,wminus;endsetsdata:ctr=?;goal=? ? 0;b=12;g=1500 0 16 15;a=2 2;c=200 300 2 -1 4 0 0 5;wplus=0 1 3 1; wminus=1 1 3 0;enddatamin=@sum(level:p*z);p(ctr)=1;@for(level(i)|i#ne#ctr:p(i)=0);@for(level(i):z(i)=@sum(obj(i,j):wplus(i,j)*dplus(j)+wminus(i,j)*dminus(j)));@for(h_con_num(i):@sum(variable(j):a(i,j)*x(j))b(i));@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i)=g(i));@for(level(i)|i #lt# @size(level):@bnd(0,z(i),goal(i)));end多目标规划的MATLAB解法:以书中例5详细说明如下:a=[-1 -1 0 00 0 -1 -13 0 2 00 3 0 2];b=[-30 -30 120 48];c1=[-100 -90 -80 -70];c2=[0 3 0 2];[x1,g1]=linprog(c1,a,b,[],[],zeros(4,1)) %求第一个目标函数的目标值[x2,g2]=linprog(c2,a,b,[],[],zeros(4,1)) %求第二个目标函数的目标值g3=[g1;g2]; %目标goal的值[x,fval]=fgoalattain(Fun,rand(4,1),g3,abs(g3),a,b,[],[],zeros(4,1))

文档评论(0)

moon8888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档