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

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

M A T L A B模拟银行单服务台排队模型

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]内的平均值,计算公式为

⎰=T

dt t L T L 0

)(1

2)客户的平均等待时间 指每个客户平均等待的时间长度,记作W .

3) 服务利用率 指服务员工作时间在T 中的比例,⎰=T

dt t S T U 0

)(1

为了简化问题,假设在上述模型下,系统的性能指标只有一个,即客户的平均等待时间.考虑用模拟方法来求W ,若系统能模拟出每位客户的等待时间序列},,,{21n D D D ,则

∑==n

i i D n W 1

1

具体模拟步骤如下:

第1步 调查并收集和处理数据,记录客户到达时刻、等待时间和服务时间.假定客户到达的间隔时间服从指数分布(均值为10分钟);每个客户的服务时间服从均匀分布U[10,15]。

第2步 构造模拟模型.输人因素:客户的到达间隔时间和服务时间;排队规则:先到先服务;一个服务机构。

第3步模拟实验。设置模拟时钟及总的运行时间T,如8小时等。推进原则按下次事件推进或均匀间隔推进。

用MATLAB编制程序如下(paidui.m):

for n=1:10

arrive=zeros(1,n);

for i=2:n

arrive(i)=arrive(i-1)+exprnd(0.1);

end

wait=zeros(1,n);

for i=1:n

if (i==1)

wait(i)=0;

else

servetime=unifrnd(10,15);

if (arrive(i-1)+servetime+wait(i-1)>arrive(i))

wait(i)=arrive(i-1)+servetime+wait(i-1)-arrive(i);

else

wait(i)=0;

end

end

end

meantime=mean(wait)

end

1.打开MATLAB软件,创m文件paidui.m

2.编写程序

3.运行程序

计算的一组结果如下表:

客户数目0 1 2 3 4

0 5.5753 14.1838 18.9329 28.0946 平均等待时

客户数目 5 6 7 8 9

28.1320 38.2700 40.8833 50.5942 59.3735 平均等待时

相关文档
最新文档