队列的应用 之 M/D/1队列
2011-06-24 01:33
85 查看
说明:参考内容 :http://introcs.cs.princeton.edu/java/43stack/
很有幸结识排队行业,由于工作的原因,平时会多多关注排队,关注排队对列的问题。今天就跟大家分享我所结识的队列。
在过去的一个世纪中,已经证明在各种各样的广泛的应用中FIFO是准确并有用的模型,应用的范围从制造业程序到电话网络,到交易模拟。称为排队论(quecing theory)的数学领域已经成功的帮助理解和控制所有这类复杂的系统。FIFO在计算中也扮演这一个重要的角色。当你使用计算机时,经常会遇到队列:队列可能是播放列表上的歌曲,正在等待打印的文档甚至是游戏机中的事件。
或许最终的队列应用是因特网本身,它是基于在数量庞大的队列中移动的大量的信息,这些队列具有各种不同的属性,并且他们以各种不同的复杂方式相连。理解并控制这样的复杂系统包括队列抽象,排队论数学成果的应用,还涉及两个模拟的研究。下面我们分析一个经典的实例体会这个与众不同的过程。
M/D/1 队列
一个最简单的队列模型成为M/D/1队列。
M表明到达服从Markov过程,在这个文本中,泊松过程到达服从特定的概率分布,此分布以准确表明了许多真实世界的模拟;
D表明离开是确定的并以固定的速度发生;
1表明只有一台服务器。
它是像单行汽车等待进行收费所这类情况的合适模拟:他们以随机的间隔时间到达,但是以固定的时间间隔离开。
M/D/1队列由它的到达率(arrival rate)λ和离开率(departure rate)μ参数化。
对于到达率λ,举个例子,每分钟到达收费所的汽车的数量;
对于离开率μ,举个例子,每分钟通过收费所的汽车数量;可通过3个属性对其进行描述:
· 这有一台服务器(FIFO队列)
· 到达使用λ的泊松过程来描述,到达来自指数分布
· 当队列非空时,以固定的速率μ离开
注意,队列将没有边界的增长,除非μ>λ。否则,顾客以蛮有兴趣的动态过程进入或留在队列中。也要注意到达之间的时间是1/λ分钟,当队列非空时,平均的离开之间的时间是1/μ分钟。
分析
在实际应用中,人们对参数值队列的不同属性的影响感兴趣。如果你是顾客,你可能想要知道你在队列中必须等待的时间;如果你设计系统,你可能想要知道在队列中可能有多少名顾客,有时候会更加复杂,例如有这种可能性,队列大小将超过了给定的最大值。为了简化模拟,概率论使用公式来表示这些量作为μ和λ的函数。对于M/D/1队列,我们知道:
· 平均队列长度L是(λ平方)/(2μ(μ-λ))+λ/μ。
· 平均等待时间W是λ/(2μ(μ-λ))+1/μ。
例如,如果汽车以每分钟为10的平均率到达,而服务费率是每分钟15,那么在队列中汽车的平均数将是4/3,而平均等待时间将是2/15Min或8S。这些公式证实当λ逼近μ时,等待时间和队列增长没有边界。它们也服从为利特尔定律(little' law)的通用规则:对于许多队列类型,平均队列长度类型,平均队列长度是λ乘以平均等待时间(L=λW)。
时间原因,先写这些,有关模拟的部分稍后待续。。。
于2011年/6月/24日 01:32
很有幸结识排队行业,由于工作的原因,平时会多多关注排队,关注排队对列的问题。今天就跟大家分享我所结识的队列。
在过去的一个世纪中,已经证明在各种各样的广泛的应用中FIFO是准确并有用的模型,应用的范围从制造业程序到电话网络,到交易模拟。称为排队论(quecing theory)的数学领域已经成功的帮助理解和控制所有这类复杂的系统。FIFO在计算中也扮演这一个重要的角色。当你使用计算机时,经常会遇到队列:队列可能是播放列表上的歌曲,正在等待打印的文档甚至是游戏机中的事件。
或许最终的队列应用是因特网本身,它是基于在数量庞大的队列中移动的大量的信息,这些队列具有各种不同的属性,并且他们以各种不同的复杂方式相连。理解并控制这样的复杂系统包括队列抽象,排队论数学成果的应用,还涉及两个模拟的研究。下面我们分析一个经典的实例体会这个与众不同的过程。
M/D/1 队列
一个最简单的队列模型成为M/D/1队列。
M表明到达服从Markov过程,在这个文本中,泊松过程到达服从特定的概率分布,此分布以准确表明了许多真实世界的模拟;
D表明离开是确定的并以固定的速度发生;
1表明只有一台服务器。
它是像单行汽车等待进行收费所这类情况的合适模拟:他们以随机的间隔时间到达,但是以固定的时间间隔离开。
M/D/1队列由它的到达率(arrival rate)λ和离开率(departure rate)μ参数化。
对于到达率λ,举个例子,每分钟到达收费所的汽车的数量;
对于离开率μ,举个例子,每分钟通过收费所的汽车数量;可通过3个属性对其进行描述:
· 这有一台服务器(FIFO队列)
· 到达使用λ的泊松过程来描述,到达来自指数分布
· 当队列非空时,以固定的速率μ离开
注意,队列将没有边界的增长,除非μ>λ。否则,顾客以蛮有兴趣的动态过程进入或留在队列中。也要注意到达之间的时间是1/λ分钟,当队列非空时,平均的离开之间的时间是1/μ分钟。
分析
在实际应用中,人们对参数值队列的不同属性的影响感兴趣。如果你是顾客,你可能想要知道你在队列中必须等待的时间;如果你设计系统,你可能想要知道在队列中可能有多少名顾客,有时候会更加复杂,例如有这种可能性,队列大小将超过了给定的最大值。为了简化模拟,概率论使用公式来表示这些量作为μ和λ的函数。对于M/D/1队列,我们知道:
· 平均队列长度L是(λ平方)/(2μ(μ-λ))+λ/μ。
· 平均等待时间W是λ/(2μ(μ-λ))+1/μ。
例如,如果汽车以每分钟为10的平均率到达,而服务费率是每分钟15,那么在队列中汽车的平均数将是4/3,而平均等待时间将是2/15Min或8S。这些公式证实当λ逼近μ时,等待时间和队列增长没有边界。它们也服从为利特尔定律(little' law)的通用规则:对于许多队列类型,平均队列长度类型,平均队列长度是λ乘以平均等待时间(L=λW)。
时间原因,先写这些,有关模拟的部分稍后待续。。。
于2011年/6月/24日 01:32
相关文章推荐
- 输入一个字符串表达式,输出计算结果(队列、栈的应用)
- 队列和栈的应用、单链表的创建、模拟链表
- [arm驱动]linux等待队列阻塞中断IO的应用 推荐
- 双端队列的应用
- 消息队列应用场景解析
- 栈与队列的简单应用(C++)
- 优先级队列几个应用详解(friend bool operator)
- 挨踢部落坐诊第四期:Java消息队列的应用场景和作用
- C++ STL 优先队列 及其 霍夫曼编码应用示例
- 验证性实验三 栈、队列的实现及应用
- Net环境下消息队列(MSMQ)对象的应用
- . Net环境下消息队列(MSMQ)对象的应用
- C#基础---Queue(队列)的应用
- 数据结构 栈和队列的一些应用
- ACboy needs your help again! 队列和栈的应用
- 消息队列应用场景
- gevent queue应用2 队列设置了最大数量限制
- 有关队列在php中的应用
- 【学习点滴-数据结构-栈&队列】 栈的应用--递归的实现-汉诺塔
- 数据结构与算法(Java描述)-10、链式队列以及优先级队列的应用