数学建模之超市收费系统问题.docx

上传人:牧羊曲112 文档编号:3559366 上传时间:2023-03-13 格式:DOCX 页数:8 大小:40.19KB
返回 下载 相关 举报
数学建模之超市收费系统问题.docx_第1页
第1页 / 共8页
数学建模之超市收费系统问题.docx_第2页
第2页 / 共8页
数学建模之超市收费系统问题.docx_第3页
第3页 / 共8页
数学建模之超市收费系统问题.docx_第4页
第4页 / 共8页
数学建模之超市收费系统问题.docx_第5页
第5页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《数学建模之超市收费系统问题.docx》由会员分享,可在线阅读,更多相关《数学建模之超市收费系统问题.docx(8页珍藏版)》请在三一办公上搜索。

1、数学建模之超市收费系统问题课程设计题目超市收费系统 一、课程设计的目的与意义 1. 练习模拟模型的建立过程; 2. 进一步熟悉模拟算法的设计、编程问题。 二、要求 1. 熟练应用 Matlab 的随机变量的模拟函数; 2. 加强离散系统模拟算法的分析和设计训练; 3. 提高 Matlab 的编程应用技能。 三、题目 一小超级市场有 4 个付款柜,每个柜台为一位顾客计算货款数的时间与顾客所购 商品件数成正比,20%的顾客用支票或信用卡支付,这需要 1.5min, 付款则仅需 0.5min 。有人倡议设一个快速服务台专为购买 8 个或 8 个以下商品的顾客 服务,指定另外两个为“现金支付柜”。 请

2、你建立一个模拟模型,用于比较现有系统和倡议的系统的运转。假设顾客到达平均间 隔时间是 0.5min ,顾客购买商品件数按如下频率表分布。 件数 相对频率 0.12 919 0.10 2029 0.18 3039 0.28 4049 0.20 0.12 根据题目要求建立模型并求解。 附录 计算机模拟方法介绍 1步骤 分析问题,收集资料。需要搞清楚问题要达到的目标,根据问题的性 质收集有关随机性因素的资料。这里用得较多的知识为概率统计方面。在这个阶 段,还应当估计一下待建立的模拟系统的规模和条件,说明哪些是可以控制的变 量,哪些是不可控制的变量。 建立模拟模型,编制模拟程序。按照一般的建模方法,对

3、问题进行适 当的假设。也就是说,模拟模型未必要将被模拟系统的每个细节全部考虑。模拟 模型的优劣将通过与实际系统有关资料的比较来评价。如果一个“粗糙”的模拟模 型已经比较符合实际系统的情况,也就没有必要建立费时、复杂的模型。当然, 如果开始建立的模型比较简单,与实际系统相差较大,那么可以在建立了简单模 型后,逐步加入一些原先没有考虑的因素,直到模型达到预定的要求为止。编写 模拟程序之前,要现画出程序框图或写出算法步骤。然后选择合适的计算机语言, 编写模拟程序。 运行模拟程序,计算结果。为了减小模拟结果的随机性偏差,一般要 多次运行模拟程序,还有就是增加模拟模型的时段次数。 分析模拟结果,并检验。

4、模拟结果一般说来反映的是统计特性,结果 的合理性、有效性,都需要结合实际的系统来分析,检验。以便提出合理的对策、 方案。 以上步骤是一个反复的过程,在时间和步骤上是彼此交错的。比如模型的修 改和改进,都需要重新编写和改动模拟程序。模拟结果的不合理,则要求检查模 型,并修改模拟程序。 2控制模拟时间的方法: 固定时间增量法,是选用一段合适的时间作单位,然后每隔一个单位时间 就计算一次有关参数的值,到达预定的模拟时间后,模拟程序结束。在编写这种 程序时,一般可以建立一个“模拟时钟”变量。程序的主体框架一般是个大的循环, 循环变量,则为模拟时间;在每个循环体内,就是对每个时段作处理。例如,有 些排队

5、论模型,可能就是以每隔一段时间进行处理。 可变时间增量法,模拟也有一个 “模拟时钟”变量,但它是在一个事件发生 时,“模拟时钟”才向前推进。需要注意的是,该模拟方法每一步经过的时间是可 变的,而且会自动寻找下一个最早使系统状态发生变化的事件。整个模拟直到“模 拟时钟”到达指定的时间长度为止。可以参考有关离散系统仿真的内容。 参考案例:渡口模型 一个渡口的渡船营运者拥有一只甲板长 32 米,可以并排停放两列车辆的渡 船。他在考虑怎样在甲板上安排过河车辆的位置,才能安全地运过最多数量的车 辆。 分析:怎样安排过河车辆,关心一次可以运多少辆各类车。 准备工作: 观察数日,发现每次情况不尽相同,得到下

6、列数据和情况: (1) 车辆随机到达,形成一个等待上船的车列; (2) 来到车辆,轿车约占 40,卡车约占 55,摩托车约占 5; (3) 轿车车身长为 3.55.5 米,卡车车身长为 810 米。 问题分析 这是一个机理较复杂的随机问题,是遵循“先到先服务”的随机排队问题。 解决方法:采用模拟模型方法。因此需考虑以下问题: (1) 应该怎样安排摩托车? (2) 下一辆到达的车是什么类型? (3) 怎样描述一辆车的车身长度? (4) 如何安排到达车辆加入甲板上两列车队中的哪一列中去? 本实验主要模拟装载车辆的情况,暂时不考虑渡船的安全。 模型建立 设到达的卡车、轿车长度分别为随机变量 L1,

7、L2 。结合实际,这里不妨假设卡 车、轿车的车身长度 L1, L2 均服从正态分布。 由于卡车车身长为 810m,所以卡车车长 L1 的均值为 8 + 10 = 9 m,由概率知 2 1 1识中的 “ 3 ”原则,其标准差为 9 - 8 = ,所以得到L1N(9,)同理可得 3 3 9 L2N(4.5, 19) 模拟程序设计 由以上的分析,程序设计时的应划分的主要模块如下: 确定下一辆到达车辆的类型; 根据车的类型确定到达车辆的长度; 根据一定的停放规则,确定放在哪一列。 模拟程序 function sim_dukou %渡口模型的模拟 n=input(输入模拟次数:); if isempty

8、(n) | (n500) n=500; end N=zeros(1,3);%依次为摩托车数量、卡车数量、轿车数量 for i=1:n isfull=0; L=0 ,0; %第一列长度,第二列长度 while isfull t=rand; %模拟下一辆到达车的类型 if t=0.55, id=1; %到达卡车 elseif tL(2) if L(1)+newlen32 pos=1; elseif L(2)+newlen32 pos=2; else full=1; end else if L(2)+newlen32 pos=2; elseif L(1)+newlen32 pos=1; else f

9、ull=1; end end 模型求解结果及分析 运行结果 程序名为 sim_dukou,运行程序,输出结果如下: sim_dukou 输入模拟次数:1000 平均每次渡船上的车数 mean_n = 5.4840 3.9180 0.5160 结果分析 上面为运行一次模拟程序,模拟次数为 1000 次的模拟结果。从模拟结果, 你能得出什么结论? 发现摩托车的平均数量不到 1 辆,因此从另外一方面看,忽略摩托车的长度 是合理的。统计结果显示平均每次渡口时船上卡车、轿车、摩托车数量分别为 5.484、3.918、0.516 辆。 参考代码: clear gds(1)=ceil(exprnd(30);

10、 fw(1)=time; fwjs=zeros(4,3000); fwjs(1,1)=gds(1)+fw(1); dh(1)=fw(1); for i=2:4 gds(i)=gds(i-1)+ceil(exprnd(30);fw(i)=time; fwjs(i,1)=gds(i)+fw(i); dh(i)=fw(i); end i=5; gds(i)=gds(i-1)+ceil(exprnd(30); while gds(i)=8*60*60 fw(i)=time; dh(i),fwjs2=paidui(fwjs,gds(i),fw(i); fwjs=fwjs2; i=i+1; gds(i)=

11、gds(i-1)+ceil(exprnd(30); end js1.m 文件: t=rand; if t0.12 a=randperm(8); js=a(1); elseif t0.22 a=randperm(11); js=a(1)+8; elseif t0.4 a=randperm(10); js=a(1)+19; elseif t0.68 a=randperm(10); js=a(1)+29; elseif t0.88 a=randperm(10); js=a(1)+39; else t1=rand; if t10.5 js=50; elseif t10.5+0.52; js=51; elseif t10.5+0.52+0.53; js=52; elseif t10.5+0.52+0.53+0.54; js=53; elseif t10.5+0.52+0.53+0.54+0.55; js=54; elseif t10.5+0.52+0.53+0.54+0.55+0.56; js=55;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号