- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程设计题目超市收费系统目的与意义练习模拟模型的建立过程;进一步熟悉模拟算法的设计、编程问题。要求熟练应用 Matlab的随机变量的模拟函数; 加强离散系统模拟算法的分析和设计训练; 提高 Matlab的编程应用技能。一小超级市场有 4 个付款柜,每个柜台为一位顾客计算货款数的时间与顾客所购商品件数成正比(大约每件费时1s),20%的顾客用支票或信用卡支付,这需要1.5min,付款则仅需0.5min 。有人倡议设一个快速服务台专为购买8个或8个以下商品的顾客服务,指定另外两个为“现金支付柜”。 请你建立一个模拟模型,用于比较现有系统和倡议的系统的运转。假设顾客到达平均间隔时间是 0.5min ,顾客购买商品件数按如下频率表分布。
件数 9~19 20~29 30~39 40~49 相对频率 0.12 0.10 0.18 0.28 0.20 0.12 【设计任务】 根据题目要求建立模型并求解。
(2)建立模拟模型,编制模拟程序。按照一般的建模方法,对问题进行适当的假设。也就是说,模拟模型未必要将被模拟系统的每个细节全部考虑。模拟模型的优劣将通过与实际系统有关资料的比较来评价。如果一个“粗糙”的模拟模型已经比较符合实际系统的情况,也就没有必要建立费时、复杂的模型。当然,如果开始建立的模型比较简单,与实际系统相差较大,那么可以在建立了简单模型后,逐步加入一些原先没有考虑的因素,直到模型达到预定的要求为止。编写模拟程序之前,要现画出程序框图或写出算法步骤。然后选择合适的计算机语言,编写模拟程序。
(3)运行模拟程序,计算结果。为了减小模拟结果的随机性偏差,一般要多次运行模拟程序,还有就是增加模拟模型的时段次数。
(4)分析模拟结果,并检验。模拟结果一般说来反映的是统计特性,结果的合理性、有效性,都需要结合实际的系统来分析,检验。以便提出合理的对策、方案。
以上步骤是一个反复的过程,在时间和步骤上是彼此交错的。比如模型的修改和改进,都需要重新编写和改动模拟程序。模拟结果的不合理,则要求检查模型,并修改模拟程序。
2.控制模拟时间的方法:
(1)固定时间增量法,是选用一段合适的时间作单位,然后每隔一个单位时间就计算一次有关参数的值,到达预定的模拟时间后,模拟程序结束。在编写这种程序时,一般可以建立一个“模拟时钟”变量。程序的主体框架一般是个大的循环,循环变量,则为模拟时间;在每个循环体内,就是对每个时段作处理。例如,有些排队论模型,可能就是以每隔一段时间(一天或者一个月)进行处理。
(2)可变时间增量法,模拟也有一个“模拟时钟”变量,但它是在一个事件发生时,“模拟时钟”才向前推进。需要注意的是,该模拟方法每一步经过的时间是可变的,而且会自动寻找下一个最早使系统状态发生变化的事件。整个模拟直到“模拟时钟”到达指定的时间长度为止。可以参考有关离散系统仿真的内容。
参考案例:渡口模型
一个渡口的渡船营运者拥有一只甲板长32米,可以并排停放两列车辆的渡船。他在考虑怎样在甲板上安排过河车辆的位置,才能安全地运过最多数量的车辆。
分析:怎样安排过河车辆,关心一次可以运多少辆各类车。
准备工作: 观察数日,发现每次情况不尽相同,得到下列数据和情况:
(1) 车辆随机到达,形成一个等待上船的车列;
(2) 来到车辆,轿车约占40%,卡车约占55%,摩托车约占5%;
(3) 轿车车身长为3.5~5.5米,卡车车身长为8~10米。
?
问题分析
这是一个机理较复杂的随机问题,是遵循“先到先服务”的随机排队问题。
解决方法:采用模拟模型方法。因此需考虑以下问题:
(1) 应该怎样安排摩托车?
(2) 下一辆到达的车是什么类型?
(3) 怎样描述一辆车的车身长度?
(4) 如何安排到达车辆加入甲板上两列车队中的哪一列中去?
?
本实验主要模拟装载车辆的情况,暂时不考虑渡船的安全。
?
模型建立
设到达的卡车、轿车长度分别为随机变量。结合实际,这里不妨假设卡车、轿车的车身长度均服从正态分布。
由于卡车车身长为8~10m,所以卡车车长的均值为m,由概率知识中的“”原则,其标准差为,所以得到。同理可得。
?
模拟程序设计
由以上的分析,程序设计时的应划分的主要模块(函数)如下:
确定下一辆到达车辆的类型;
根据车的类型确定到达车辆的长度;
根据一定的停放规则,确定放在哪一列。
?
模拟程序
function sim_dukou %渡口模型的模拟
n=input(输入模拟次数:);
if isempty(n) | (n500)
n=500;
end
N=zeros(1,3);%依次为摩托车数量、卡车数量、轿车数量
for i=1:n
isfull=0;
L=[0 ,0]; %第一列长度,第二列长度
文档评论(0)