资源描述
运筹学-第8次实验
精品文档
《运筹学》实验8
一、实验名称:排队论模拟
二、实验目的:
了解模拟的概念及计算机实现方法,服从不同分布的随机数产生方法,通过模拟求解排队论问题。
三、实验内容
1、随机数产生方法
2、计算机模拟实例
四、实验步骤
1、 (1)产生m´n阶[a,b]均匀分布U(a,b)的随机数矩阵的Matlab的命令格式:
unifrnd (a,b,m, n)
(2)产生一个[a,b]均匀分布的随机数的命令格式:unifrnd (a,b)
(3)产生mn阶均值为,方差为的正态分布的随机数矩阵:
normrnd (,,m, n)
(4)产生mn阶期望值为的指数分布的随机数矩阵:
exprnd (,m, n )
(5)产生mn阶参数为的帕松分布的随机数矩阵:
poissrnd (,m, n)
2、示例1:(单服务员的排队模型)在某商店有一个售货员,顾客陆续来到,售货员逐个地接待顾客.当到来的顾客较多时,一部分顾客便须排队等待,被接待后的顾客便离开商店.设:
(1)顾客到来间隔时间服从参数为0.1的指数分布.
(2)对顾客的服务时间服从[4,15]上的均匀分布.
(3)排队按先到先服务规则,队长无限制.
假定一个工作日为8小时,时间以分钟为单位。
[1]模拟一个工作日内完成服务的个数及顾客平均等待时间t.
[2]模拟100个工作日,求出平均每日完成服务的个数及每日顾客的平均等待时间。
[1] 系统的假设:
(1) 顾客源是无穷的;
(2) 排队的长度没有限制;
(3) 到达系统的顾客按先后顺序依次进入服务, 即“先到先服务”。
[2] 符号说明
w:总等待时间;ci:第i个顾客的到达时刻;
bi:第i个顾客开始服务时刻; ei:第i个顾客服务结束时刻.
xi:第i-1个顾客与第i个顾客之间到达的间隔时间
c1
b1
c3
c4
c5
c2
e1
b2
e2
b3
e3
b4
e4
b5
t
yi:对第i个顾客的服务时间
ci=ci-1+ xi
ei=bi+yi
bi=max(ci,ei-1)
[3]模拟框图
初始化:令i=1,ei-1=0,w=0
产生间隔时间随机数xi~参数为0.1的指数分布ci=xi , bi=xi
产生服务时间随机数yi~[4,15]的均匀分布
ei=bi+yi
累计等待时间:w=w+bi-ci
准备下一次服务:i=i+1
产生间隔时间随机数xi~参数为0.1的指数分布
ci=ci-1+ xi
确定开始服务时间:bi=max(ci,ei-1)
bi>480
Y
N
i=i-1,t=w/i
输出结果:完成服务个数:m=i
平均等待时间:t
停止
(一)对问题1进行模拟的程序:
clear
i=1; %输出第一次标号的结果
w=0;
x(i)=exprnd(10);
c(i)=x(i);
b(i)=x(i);
while b(i)<=480
y(i)=unifrnd(4,15); %第I个顾客的服务时间
e(i)=b(i)+y(i); %第I个顾客的服务结束时刻
w=w+b(i)-c(i); %总等待时间
i=i+1;
x(i)=exprnd(10); %第I个顾客与第I-1个顾客的间隔时间
c(i)=c(i-1)+x(i); %第I个顾客的到达时刻t
b(i)=max(c(i),e(i-1)); %第I个顾客开始服务时刻
end
i=i-1;
t=w/i %顾客平均等待时间t
m=i %一个工作日内完成服务的顾客数W
(二)对问题2进行模拟的程序:
clear
cs=100;
for j=1:cs
w(j)=0;
i=1;
x(i)=exprnd(10);
c(i)=x(i);
b(i)=x(i);
while b(i)<=480
y(i)=unifrnd(4,15);
e(i)=b(i)+y(i);
w(j)=w(j)+b(i)-c(i);
i=i+1;
x(i)=exprnd(10);
c(i)=c(i-1)+x(i);
b(i)=max(c(i),e(i-1));
end
i=i-1;
t(j)=w(j)/i;
m(j)=i;
end
pt=0;
pm=0;
for j=1:cs
pt=pt+t(j);
pm=pm+m(j);
end
pt=pt/cs
pm=pm/cs
五、实验题目
1、某火车站的售票处设有一个窗口,若购票者是以最简单流(即泊松分布)到达,平均每分钟到达1人,假定售票时间服从负指数分布,平均每分钟可服务2人,试求在上午6:00到下午6:00之间的来购票的人数和平均排队时间。
[1]模拟某天在上午6:00到下午6:00之间的来购票的人数及购票者平均等待时间.
[2]模拟100天在上午6:00到下午6:00之间,求出平均每日来购票的人数及购票者平均等待时间
2、某单人理发店,顾客到达服从最简单流(即泊松分布),平均每小时到达3人,理发时间服从负指数分布,平均15分钟,试求在上午8:00到下午8:00之间的来理发的人数和平均等待时间。
[1]模拟某天在上午8:00到下午8:00之间的来理发的人数及理发人的平均等待时间.
[2]模拟100天在上午8:00到下午8:00之间,求出平均每日来理发的人数及理发人的平均等待时间
收集于网络,如有侵权请联系管理员删除
展开阅读全文