数学建模报童问题.docVIP

  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文档。上传文档
查看更多
计算机模拟 实验目的: 1.学习计算机模拟的基本过程与方法; 2.会做简单的计算机模拟。 实验内容: 一、了解什么是模拟 模拟就是利用物理的、数学的模型来类比、模仿现实系统及其演变过程,以寻求过程规律的一种方法。 模拟的基本思想是建立一个试验模型,这个模型包含所研究系统的主要特点.通过对这个实验模型的运行,获得所要研究系统的必要信息 模拟的方法: 1、物理模拟: 对实际系统及其过程用功能相似的实物系统去模仿。例如,军事演习、船艇实验、沙盘作业等。 物理模拟通常花费较大、周期较长,且在物理模型上改变系统结构和系数都较困难。而且,许多系统无法进行物理模拟,如社会经济系统、生态系统等。 2、数学模拟 在一定的假设条件下,运用数学运算模拟系统的运行,称为数学模拟。现代的数学模拟都是在计算机上进行的,称为计算机模拟。计算机模拟可以反复进行,改变系统的结构和系数都比较容易。 在实际问题中,面对一些带随机因素的复杂系统,用分析方法建模常常需要作许多简化假设,与面临的实际问题可能相差甚远,以致解答根本无法应用。这时,计算机模拟几乎成为唯一的选择。 二、报童问题 某报童以每份0.03元的价格买进报纸,以0.05元的价格出售. 根据长期统计,报纸每天的销售量及百分率为 销售量 200 210 220 230 240 250 百分率 0.10 0.20 0.40 0.15 0.10 0.05 已知当天销售不出去的报纸,将以每份0.02元的价格退还报社.试用模拟方法确定报童每天买进报纸数 量,使报童的平均总收入为最大? [1] 系统的假设: (1) 模拟时间充分大; (2) 报童购买报纸量介于销售量最小值与最大值之间; (3)不考虑有重大事件发生时卖报的高峰期,也不考虑风雨天气时卖报的低谷期。 [2] 问题分析 报童购进数量应根据需求量确定,但需求量是随机的,所以报童每天如果购进的报纸太少,不够买的,会少赚钱;如果购进太多,卖不完就要赔钱,这样由于每天报纸的需求量是随机的,致使报童每天的收入也是随机的,因此衡量报童的收入,不能是报童每天的收入,而应该是他长期(几个月、一年)卖报的日平均收入。我们可以应用计算机模拟的方法 在模拟时间充分大的条件下(例如10000天),模拟每天的销售量,因而确定每天应买进多少报纸才能使平均总收入达到最大值。 设该问题的销售量为离散型随机变量,有分布列。所谓对离散型随机变量的模拟, 其实质就是通过计算机上的模拟试验来取得在真实试验下的样本值 ,由分布列知只取数值,中的某一个.对离散型随机变量的一般模拟方法如下: (1) 在直线上将[0 ,1]区间划分成若干个子区间, 其分点记为,,分点 的坐标 如下图所示: (2)在计算机上取伪随机数 ; (3)判定在轴上所落的位置,若,则可以认为的一次真实试验样本值取。 [3] 符号假设 BUYMIN:每天的最小购买量BUYMAX:每天的最大购买量SIMUDAY:模拟时间sell_amount:报童销售量buy_amount: 报童购买量 percentage:销售百分率 ave_profit:总平均利润 loop_buy :当天购买量 loop_day :当天时间 [4] 模拟框图 [5] 计算机程序:在Matlab软件包中编程,共需两个M-文件:main.m, Getprofit.m, 主程序为main.m. % 主文件: BUYMIN=200;?? %? 每天的最小购买量 BUYMAX=250;?? %? 每天的最大购买量 SIMUDAY=1.0e+5;? % 模拟时间 sell_amount=200:10:250;?????? %销售量 percentage=[0.1 0.3 0.7 0.85 0.95 1];? %? 百分率 buy_amount=0; ave_profit=0; for loop_buy=BUYMIN:BUYMAX ??? sum_profit=0; ??? for loop_day=1:SIMUDAY ??????index=find(percentage=rand); ??????sum_profit=sum_profit+GetProfit(loop_buy,sell_amount(index(1))); ??? end ??? buy_amount=[buy_amount,loop_buy]; % 循环嵌套 ??? ave_pr

文档评论(0)

考试教学资料 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档