
MATLAB模拟银行单服务台排队模型.doc
6页计算机仿真报告指导教师: 潘劲松 学生班级: 计科 1001 学生姓名: 刘雄 学 号: 201003647 班内序号: 22 MATLAB 模拟银行单服务台排队模型模型假设1在银行只有一个服务窗口,客户陆续来到,服务窗口逐个地接待客户.当到来的客户较多时,一部分客户便须排队等待,被接待后的客户便离开银行 客户到达的间隔时间服从指数分布(均值为 10 分钟) ;每个客户的服务时间服从均匀分布 U[10,15] 客户到达时刻、客户服务完毕并离去时刻等均视为随机事件(瞬间完成) 排队按先到先服务规则符号说明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]内的平均值,计算公式为TdtL0)(12)客户的平均等待时间 指每个客户平均等待的时间长度,记作 W.3) 服务利用率 指服务员工作时间在 T 中的比例, TdtSU0)(1为了简化问题,假设在上述模型下,系统的性能指标只有一个,即客户的平均等待时间.考虑用模拟方法来求 W,若系统能模拟出每位客户的等待时间序列 },,{21nD ,则 niiD1具体模拟步骤如下:第 1 步 调查并收集和处理数据,记录客户到达时刻、等待时间和服务时间.假定客户到达的间隔时间服从指数分布(均值为 10 分钟) ;每个客户的服务时间服从均匀分布 U[10,15]第 2 步 构造模拟模型.输人因素:客户的到达间隔时间和服务时间;排队规则:先到先服务;一个服务机构第 3 步 模拟实验设置模拟时钟及总的运行时间 T,如 8 小时等。
推进原则按下次事件推进或均匀间隔推进用 MATLAB 编制程序如下(paidui.m):for n=1:10arrive=zeros(1,n);for i=2:narrive(i)=arrive(i-1)+exprnd(0.1);endwait=zeros(1,n);for i=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. 运行程序计算的一组结果如下表:客户数目 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实验小结计算机仿真是应用电子计算机对系统的结构、功能和行为以及参与系统控制的人的思维过程和行为进行动态性比较逼真的模仿。
而作为计算机仿真的主要虚拟工具 MATLAB软件,不仅可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面,还可以连接其他编程语言的程序等通过本次上机了解了遗传算法和 MATLAB软件。
