MATLAB模拟银行单服务台排队模型

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MATLAB模拟银行单服务台排队模型摘要:运筹学就是专门研究对各种经营做出优化决策的科学,也称为最优化理论。排队论是运筹学的重要组成部分。排队论又称随机服务系统理论,它是通过对各种服务系统在排队等待现象中概率特性的研究,来解决服务系统最优设计与最优控制一门学科。具有排队等候现象的服务系统通称为排队系统。任何一个服务系统总是由两个相辅相成的要素:顾客和服务员(或服务台)所构成。凡是要求接受服务的人与物统称为顾客;凡是给予顾客服务的人与物统称为服务员(或服务台)。MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。使用MATLAB可以较使用传统的编程语言(如C、C++和Fortran)更快地解决技术计算问题。关键词:程序化模拟;单服务台;等待时间;排队论一、问题叙述众所周知,近年来我国大学大举扩招,学生人数大幅增加,而大学校园往往距离城市中心较远,银行数量较少,这就导致了银行业务繁忙时大量学生在银行窗口前排起长队等待的情况。这种现象长期困扰着广大学生,浪费了同学们的大量时间。为此,我们建立银行单服务台排队模型,并用MATLAB进行模拟,以计算学生在银行窗口前的平均排队时间。二、模型假设1。在银行只有一个服务窗口,客户陆续来到,服务窗口逐个地接待客户.当到来的客户较多时,一部分客户便须排队等待,被接待后的客户便离开银行。2。客户到达的间隔时间服从指数分布(均值为10分钟);每个客户的服务时间服从均匀分布U[10,15]。3。客户到达时刻、客户服务完毕并离去时刻等均视为随机事件(瞬间完成)。4。排队按先到先服务规则。三、符号说明arrive(i):第i个客户到达的时刻;wait(i):第i个客户的排队等待时间;servetime(i):第i个客户接受服务的时间;meantime(i):客户的平均等待时间n:客户数目四、模型的建立与求解在任意时刻t,系统的状态可以用排队等候的客户数目和服务员是否在工作来描述。排队等候的客户数目称为队长,记作L(t),为非负整数。服务员的状态用S(t)表示,当服务员工作时,令S(t)=1;服务员空闲时,令S(t)=0。系统的性能指标通常用排队长度、等待时间和服务利用率等来衡量。由于它们随时间改变,一般用一段时间内的平均值作为数量指标。有以下三个指标:1)平均队长指队长L(t)在[0,T]内的平均值,计算公式为TdttLTL0)(12)客户的平均等待时间指每个客户平均等待的时间长度,记作W.3)服务利用率指服务员工作时间在T中的比例,TdttSTU0)(1为了简化问题,假设在上述模型下,系统的性能指标只有一个,即客户的平均等待时间.考虑用模拟方法来求W,若系统能模拟出每位客户的等待时间序列},,,{21nDDD,则niiDnW11具体模拟步骤如下:第1步调查并收集和处理数据,记录客户到达时刻、等待时间和服务时间.假定客户到达的间隔时间服从指数分布(均值为10分钟);每个客户的服务时间服从均匀分布U[10,15]。第2步构造模拟模型.输人因素:客户的到达间隔时间和服务时间;排队规则:先到先服务;一个服务机构。第3步模拟实验。设置模拟时钟及总的运行时间T,如8小时等。推进原则按下次事件推进或均匀间隔推进。用MATLAB编制程序如下(paidui.m):forn=1:10arrive=zeros(1,n);fori=2:narrive(i)=arrive(i-1)+exprnd(0.1);endwait=zeros(1,n);fori=1:nif(i==1)wait(i)=0;elseservetime=unifrnd(10,15);if(arrive(i-1)+servetime+wait(i-1)arrive(i))wait(i)=arrive(i-1)+servetime+wait(i-1)-arrive(i);elsewait(i)=0;endendendmeantime=mean(wait)end1.打开MATLAB软件,创m文件paidui.m2.编写程序3.运行程序计算的一组结果如下表:客户数目01234平均等待时间05.575314.183818.932928.0946客户数目56789平均等待时间28.132038.270040.883350.594259.3735

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功