使用者:Alexander Misel/沙盒

排隊網絡是一種由多個單獨隊列通過路由網絡互連形成的複雜系統。在相關示意圖中,我們用圓形符號表示服務台,用連續的矩形表示隊列,用箭頭標示路由網絡。雖然排隊網絡研究的主要目標是確定網絡的平衡分布狀態,但在實際應用中,對系統瞬態特性的研究往往更具有基礎性意義。

排隊論(英語:Queueing theory)是一門研究等待現象的數學理論。[1] 它通過建立數學模型來預測排隊長度和等待時間。[1] 由於其研究成果對服務資源配置的決策具有重要指導意義,排隊論已成為運籌學中的重要分支學科。

這門學科可以追溯到阿格納·克拉魯普·厄蘭英語Agner Krarup Erlang的開創性研究。他最初為解決哥本哈根電話交換公司的來電問題建立了理論模型。[1] 這些理論不僅為電信流量工程奠定了基礎,還逐步拓展到電信、交通、計算機[2]專案管理等眾多領域。目前,排隊論在工業工程領域應用尤為廣泛,已成為工廠、商店、辦公室和醫院等場所規劃設計的重要工具。[3][4]

描述

編輯

排隊論是管理科學領域中的重要研究方向之一。管理科學為企業提供了多種科學和數學方法來解決各類問題。[5] 排隊分析主要研究等待隊列的概率特性,因此其分析結果(即運行特徵)具有概率性而非確定性。這些運行特徵包括:系統內顧客數量的概率分布、系統內平均顧客數、隊列中平均等待人數、顧客在系統內的平均停留時間、顧客的平均等待時間,以及服務台忙碌或空閒的概率等。[5] 排隊分析的核心目標是通過計算現有系統的這些特徵,並測試各種可能的改進方案。通過對比當前系統與替代方案的運行特徵,管理者可以清晰地評估每個方案的利弊得失。這些分析能夠幫助管理者做出最終決策,實現成本節約、縮短等待時間、提升效率等目標。常用的排隊模型主要包括單服務台和多服務台兩種基本類型,具體會在後文詳細討論。這些模型還可以根據服務時間是否固定、隊列長度是否受限、源群體是否有限等因素進行細分。[5]

單排隊節點

編輯

排隊系統可以簡單理解為一個近似的黑盒模型任務(在不同場景中也稱為顧客請求)進入系統後,可能需要等待,接受處理,最後離開系統。

 
A black box. Jobs arrive to, and depart from, the queue.

不過,這個系統並不是一個完全的黑盒,因為我們需要了解它的一些內部運作機制。系統中設有一個或多個服務窗口(server),每個窗口都可以受理一個新到達的任務。當某個任務處理完畢離開後,對應的服務窗口就能繼續接待下一個任務。

 
A queueing node with 3 servers. Server a is idle, and thus an arrival is given to it to process. Server b is currently busy and will take some time before it can complete service of its job. Server c has just completed service of a job and thus will be next to receive an arriving job.

舉個常見的例子:超市收銀台就是一個典型的排隊系統(雖然還有其他例子,但這個是文獻中最常用的)。顧客來到超市,在收銀台辦理結帳,然後離開。由於每個收銀員同一時間只能服務一位顧客,所以這是一個單服務窗口的排隊系統。如果規定顧客看到收銀員正忙就直接離開,這種情況就是無等待空間的排隊系統;如果設置了可容納 n 位顧客的等候區,則稱為具有 n 個等待空間的排隊系統。

出生-死亡過程

編輯

單個隊列(也稱為排隊節點)的行為可以用出生-死亡過程來描述。該過程刻畫了隊列中任務的到達和離開動態,以及系統中實時的任務數量。如果用 k 表示系統中的任務數量(包括正在處理的和在緩衝區等待的),那麼每當有新任務到達時 k 值加1,任務完成離開時 k 值減1。

系統通過「出生」和「死亡」兩種事件在不同的 k 值之間轉換。對於每個任務 ,這些轉換分別以到達率 和離開率 發生。在隊列系統中,這些速率通常被認為是穩定的,不會隨隊列中任務數量的變化而改變,因此我們可以採用單位時間內的平均到達率和離開率。基於這一假設,該過程的平均到達率 ,平均離開率 

 
A birth–death process. The values in the circles represent the state of the system, which evolves based on arrival rates λi and departure rates μi.
 
A queue with 1 server, arrival rate λ and departure rate μ

Balance equations

編輯

The steady state equations for the birth-and-death process, known as the balance equations, are as follows. Here   denotes the steady state probability to be in state n.

 
 
 

The first two equations imply

 

and

 .

By mathematical induction,

 .

The condition   leads to

 

which, together with the equation for    , fully describes the required steady state probabilities.

Kendall's notation

編輯

Single queueing nodes are usually described using Kendall's notation in the form A/S/c where A describes the distribution of durations between each arrival to the queue, S the distribution of service times for jobs, and c the number of servers at the node.[6][7] For an example of the notation, the M/M/1 queue is a simple model where a single server serves jobs that arrive according to a Poisson process (where inter-arrival durations are exponentially distributed) and have exponentially distributed service times (the M denotes a Markov process). In an M/G/1 queue, the G stands for "general" and indicates an arbitrary probability distribution for service times.

Example analysis of an M/M/1 queue

編輯

Consider a queue with one server and the following characteristics:

  •  : the arrival rate (the reciprocal of the expected time between each customer arriving, e.g. 10 customers per second)
  •  : the reciprocal of the mean service time (the expected number of consecutive service completions per the same unit time, e.g. per 30 seconds)
  • n: the parameter characterizing the number of customers in the system
  •  : the probability of there being n customers in the system in steady state

Further, let   represent the number of times the system enters state n, and   represent the number of times the system leaves state n. Then   for all n. That is, the number of times the system leaves a state differs by at most 1 from the number of times it enters that state, since it will either return into that state at some time in the future ( ) or not ( ).

When the system arrives at a steady state, the arrival rate should be equal to the departure rate.

Thus the balance equations

 
 
 

imply

 

The fact that   leads to the geometric distribution formula

 

where  .

Simple two-equation queue

編輯

A common basic queueing system is attributed to Erlang and is a modification of Little's Law. Given an arrival rate λ, a dropout rate σ, and a departure rate μ, length of the queue L is defined as:

 .

Assuming an exponential distribution for the rates, the waiting time W can be defined as the proportion of arrivals that are served. This is equal to the exponential survival rate of those who do not drop out over the waiting period, giving:

 

The second equation is commonly rewritten as:

 

The two-stage one-box model is common in epidemiology.[8]

History

編輯

In 1909, Agner Krarup Erlang, a Danish engineer who worked for the Copenhagen Telephone Exchange, published the first paper on what would now be called queueing theory.[9][10][11] He modeled the number of telephone calls arriving at an exchange by a Poisson process and solved the M/D/1 queue in 1917 and M/D/k queueing model in 1920.[12] In Kendall's notation:

  • M stands for "Markov" or "memoryless", and means arrivals occur according to a Poisson process
  • D stands for "deterministic", and means jobs arriving at the queue require a fixed amount of service
  • k describes the number of servers at the queueing node (k = 1, 2, 3, ...)

If the node has more jobs than servers, then jobs will queue and wait for service.

The M/G/1 queue was solved by Felix Pollaczek in 1930,[13] a solution later recast in probabilistic terms by Aleksandr Khinchin and now known as the Pollaczek–Khinchine formula.[12][14]

After the 1940s, queueing theory became an area of research interest to mathematicians.[14] In 1953, David George Kendall solved the GI/M/k queue[15] and introduced the modern notation for queues, now known as Kendall's notation. In 1957, Pollaczek studied the GI/G/1 using an integral equation.[16] John Kingman gave a formula for the mean waiting time in a G/G/1 queue, now known as Kingman's formula.[17]

Leonard Kleinrock worked on the application of queueing theory to message switching in the early 1960s and packet switching in the early 1970s. His initial contribution to this field was his doctoral thesis at the Massachusetts Institute of Technology in 1962, published in book form in 1964. His theoretical work published in the early 1970s underpinned the use of packet switching in the ARPANET, a forerunner to the Internet.

The matrix geometric method and matrix analytic methods have allowed queues with phase-type distributed inter-arrival and service time distributions to be considered.[18]

Systems with coupled orbits are an important part in queueing theory in the application to wireless networks and signal processing.[19]

Modern day application of queueing theory concerns among other things product development where (material) products have a spatiotemporal existence, in the sense that products have a certain volume and a certain duration.[20]

Problems such as performance metrics for the M/G/k queue remain an open problem.[12][14]

Service disciplines

編輯

Various scheduling policies can be used at queueing nodes:

First in, first out
 
First in first out (FIFO) queue example
Also called first-come, first-served (FCFS),[21] this principle states that customers are served one at a time and that the customer that has been waiting the longest is served first.[22]
Last in, first out
This principle also serves customers one at a time, but the customer with the shortest waiting time will be served first.[22] Also known as a stack.
Processor sharing
Service capacity is shared equally between customers.[22]
Priority
Customers with high priority are served first.[22] Priority queues can be of two types: non-preemptive (where a job in service cannot be interrupted) and preemptive (where a job in service can be interrupted by a higher-priority job). No work is lost in either model.[23]
Shortest job first
The next job to be served is the one with the smallest size.[24]
Preemptive shortest job first
The next job to be served is the one with the smallest original size.[25]
Shortest remaining processing time
The next job to serve is the one with the smallest remaining processing requirement.[26]
Service facility
  • Single server: customers line up and there is only one server
  • Several parallel servers (single queue): customers line up and there are several servers
  • Several parallel servers (several queues): there are many counters and customers can decide for which to queue
Unreliable server

Server failures occur according to a stochastic (random) process (usually Poisson) and are followed by setup periods during which the server is unavailable. The interrupted customer remains in the service area until server is fixed.[27]

Customer waiting behavior
  • Balking: customers decide not to join the queue if it is too long
  • Jockeying: customers switch between queues if they think they will get served faster by doing so
  • Reneging: customers leave the queue if they have waited too long for service

Arriving customers not served (either due to the queue having no buffer, or due to balking or reneging by the customer) are also known as dropouts. The average rate of dropouts is a significant parameter describing a queue.

排隊網絡

編輯

Queue networks are systems in which multiple queues are connected by customer routing. When a customer is serviced at one node, it can join another node and queue for service, or leave the network.

For networks of m nodes, the state of the system can be described by an m–dimensional vector (x1, x2, ..., xm) where xi represents the number of customers at each node.

The simplest non-trivial networks of queues are called tandem queues.[28] The first significant results in this area were Jackson networks,[29][30] for which an efficient product-form stationary distribution exists and the mean value analysis[31] (which allows average metrics such as throughput and sojourn times) can be computed.[32] If the total number of customers in the network remains constant, the network is called a closed network and has been shown to also have a product–form stationary distribution by the Gordon–Newell theorem.[33] This result was extended to the BCMP network,[34] where a network with very general service time, regimes, and customer routing is shown to also exhibit a product–form stationary distribution. The normalizing constant can be calculated with the Buzen's algorithm, proposed in 1973.[35]

Networks of customers have also been investigated, such as Kelly networks, where customers of different classes experience different priority levels at different service nodes.[36] Another type of network are G-networks, first proposed by Erol Gelenbe in 1993:[37] these networks do not assume exponential time distributions like the classic Jackson network.

Routing algorithms

編輯

In discrete-time networks where there is a constraint on which service nodes can be active at any time, the max-weight scheduling algorithm chooses a service policy to give optimal throughput in the case that each job visits only a single-person service node.[21] In the more general case where jobs can visit more than one node, backpressure routing gives optimal throughput. A network scheduler must choose a queueing algorithm, which affects the characteristics of the larger network.[38]

Mean-field limits

編輯

Mean-field models consider the limiting behaviour of the empirical measure (proportion of queues in different states) as the number of queues m approaches infinity. The impact of other queues on any given queue in the network is approximated by a differential equation. The deterministic model converges to the same stationary distribution as the original model.[39]

Heavy traffic/diffusion approximations

編輯

In a system with high occupancy rates (utilisation near 1), a heavy traffic approximation can be used to approximate the queueing length process by a reflected Brownian motion,[40] Ornstein–Uhlenbeck process, or more general diffusion process.[41] The number of dimensions of the Brownian process is equal to the number of queueing nodes, with the diffusion restricted to the non-negative orthant.

Fluid limits

編輯

Fluid models are continuous deterministic analogs of queueing networks obtained by taking the limit when the process is scaled in time and space, allowing heterogeneous objects. This scaled trajectory converges to a deterministic equation which allows the stability of the system to be proven. It is known that a queueing network can be stable but have an unstable fluid limit.[42]

Queueing Applications

編輯

Queueing theory finds widespread application in computer science and information technology. In networking, for instance, queues are integral to routers and switches, where packets queue up for transmission. By applying queueing theory principles, designers can optimize these systems, ensuring responsive performance and efficient resource utilization. Beyond the technological realm, queueing theory is relevant to everyday experiences. Whether waiting in line at a supermarket or for public transportation, understanding the principles of queueing theory provides valuable insights into optimizing these systems for enhanced user satisfaction. At some point, everyone will be involved in an aspect of queuing. What some may view to be an inconvenience could possibly be the most effective method. Queueing theory, a discipline rooted in applied mathematics and computer science, is a field dedicated to the study and analysis of queues, or waiting lines, and their implications across a diverse range of applications. This theoretical framework has proven instrumental in understanding and optimizing the efficiency of systems characterized by the presence of queues. The study of queues is essential in contexts such as traffic systems, computer networks, telecommunications, and service operations. Queueing theory delves into various foundational concepts, with the arrival process and service process being central. The arrival process describes the manner in which entities join the queue over time, often modeled using stochastic processes like Poisson processes. The efficiency of queueing systems is gauged through key performance metrics. These include the average queue length, average wait time, and system throughput. These metrics provide insights into the system's functionality, guiding decisions aimed at enhancing performance and reducing wait times. References: Gross, D., & Harris, C. M. (1998). Fundamentals of Queueing Theory. John Wiley & Sons. Kleinrock, L. (1976). Queueing Systems: Volume I - Theory. Wiley. Cooper, B. F., & Mitrani, I. (1985). Queueing Networks: A Fundamental Approach. John Wiley & Sons

See also

編輯

References

編輯
  1. ^ 1.0 1.1 1.2 Sundarapandian, V. 7. Queueing Theory. Probability, Statistics and Queueing Theory. PHI Learning. 2009. ISBN 978-81-203-3844-9. 
  2. ^ Lawrence W. Dowdy, Virgilio A.F. Almeida, Daniel A. Menasce. Performance by Design: Computer Capacity Planning by Example. [2009-07-08]. (原始內容存檔於2016-05-06). 
  3. ^ Schlechter, Kira. Hershey Medical Center to open redesigned emergency room. The Patriot-News. March 2, 2009 [March 12, 2009]. (原始內容存檔於June 29, 2016). 
  4. ^ Mayhew, Les; Smith, David. Using queuing theory to analyse completion times in accident and emergency departments in the light of the Government 4-hour target. Cass Business School. December 2006 [2008-05-20]. ISBN 978-1-905752-06-5. (原始內容存檔於September 7, 2021). 
  5. ^ 5.0 5.1 5.2 Taylor, Bernard W. Introduction to management science 13th. New York: Pearson. 2019. ISBN 978-0-13-473066-0. 
  6. ^ Tijms, H.C, Algorithmic Analysis of Queues, Chapter 9 in A First Course in Stochastic Models, Wiley, Chichester, 2003
  7. ^ Kendall, D. G. Stochastic Processes Occurring in the Theory of Queues and their Analysis by the Method of the Imbedded Markov Chain. The Annals of Mathematical Statistics. 1953, 24 (3): 338–354. JSTOR 2236285. doi:10.1214/aoms/1177728975 . 
  8. ^ Hernández-Suarez, Carlos. An application of queuing theory to SIS and SEIS epidemic models. Math. Biosci. 2010, 7 (4): 809–823. PMID 21077709. doi:10.3934/mbe.2010.7.809 . 
  9. ^ Agner Krarup Erlang (1878-1929) | plus.maths.org. Pass.maths.org.uk. 1997-04-30 [2013-04-22]. (原始內容存檔於2008-10-07). 
  10. ^ Asmussen, S. R.; Boxma, O. J. Editorial introduction. Queueing Systems. 2009, 63 (1–4): 1–2. S2CID 45664707. doi:10.1007/s11134-009-9151-8. 
  11. ^ Erlang, Agner Krarup. The theory of probabilities and telephone conversations (PDF). Nyt Tidsskrift for Matematik B. 1909, 20: 33–39. (原始內容 (PDF)存檔於2011-10-01). 
  12. ^ 12.0 12.1 12.2 Kingman, J. F. C. The first Erlang century—and the next. Queueing Systems. 2009, 63 (1–4): 3–4. S2CID 38588726. doi:10.1007/s11134-009-9147-4. 
  13. ^ Pollaczek, F., Ueber eine Aufgabe der Wahrscheinlichkeitstheorie, Math. Z. 1930
  14. ^ 14.0 14.1 14.2 Whittle, P. Applied Probability in Great Britain. Operations Research. 2002, 50 (1): 227–239. JSTOR 3088474. doi:10.1287/opre.50.1.227.17792 . 
  15. ^ Kendall, D.G.:Stochastic processes occurring in the theory of queues and their analysis by the method of the imbedded Markov chain, Ann. Math. Stat. 1953
  16. ^ Pollaczek, F., Problèmes Stochastiques posés par le phénomène de formation d'une queue
  17. ^ Kingman, J. F. C.; Atiyah. The single server queue in heavy traffic. Mathematical Proceedings of the Cambridge Philosophical Society. October 1961, 57 (4): 902. Bibcode:1961PCPS...57..902K. JSTOR 2984229. S2CID 62590290. doi:10.1017/S0305004100036094. 
  18. ^ Ramaswami, V. A stable recursion for the steady state vector in markov chains of m/g/1 type. Communications in Statistics. Stochastic Models. 1988, 4: 183–188. doi:10.1080/15326348808807077. 
  19. ^ Morozov, E. Stability analysis of a multiclass retrial system withcoupled orbit queues. Proceedings of 14th European Workshop. Lecture Notes in Computer Science 17. 2017: 85–98. ISBN 978-3-319-66582-5. doi:10.1007/978-3-319-66583-2_6 . 
  20. ^ Carlson, E.C.; Felder, R.M. Simulation and queueing network modeling of single-product production campaigns. Computers & Chemical Engineering. 1992, 16 (7): 707–718. doi:10.1016/0098-1354(92)80018-5. 
  21. ^ 21.0 21.1 Manuel, Laguna. Business Process Modeling, Simulation and Design. Pearson Education India. 2011: 178 [6 October 2017]. ISBN 978-81-317-6135-9 (英語). 
  22. ^ 22.0 22.1 22.2 22.3 Penttinen A., Chapter 8 – Queueing Systems, Lecture Notes: S-38.145 - Introduction to Teletraffic Theory.
  23. ^ Harchol-Balter, M. Scheduling: Non-Preemptive, Size-Based Policies. Performance Modeling and Design of Computer Systems. 2012: 499–507. ISBN 978-1-139-22642-4. doi:10.1017/CBO9781139226424.039. 
  24. ^ Andrew S. Tanenbaum; Herbert Bos. Modern Operating Systems. Pearson. 2015. ISBN 978-0-13-359162-0. 
  25. ^ Harchol-Balter, M. Scheduling: Preemptive, Size-Based Policies. Performance Modeling and Design of Computer Systems. 2012: 508–517. ISBN 978-1-139-22642-4. doi:10.1017/CBO9781139226424.040. 
  26. ^ Harchol-Balter, M. Scheduling: SRPT and Fairness. Performance Modeling and Design of Computer Systems. 2012: 518–530. ISBN 978-1-139-22642-4. doi:10.1017/CBO9781139226424.041. 
  27. ^ Dimitriou, I. A Multiclass Retrial System With Coupled Orbits And Service Interruptions: Verification of Stability Conditions. Proceedings of FRUCT 24. 2019, 7: 75–82. 
  28. ^ Archived copy (PDF). [2018-08-02]. (原始內容存檔 (PDF)於2017-03-29). 
  29. ^ Jackson, J. R. Networks of Waiting Lines. Operations Research. 1957, 5 (4): 518–521. JSTOR 167249. doi:10.1287/opre.5.4.518. 
  30. ^ Jackson, James R. Jobshop-like Queueing Systems. Management Science. Oct 1963, 10 (1): 131–142. JSTOR 2627213. doi:10.1287/mnsc.1040.0268. 
  31. ^ Reiser, M.; Lavenberg, S. S. Mean-Value Analysis of Closed Multichain Queuing Networks. Journal of the ACM. 1980, 27 (2): 313. S2CID 8694947. doi:10.1145/322186.322195 . 
  32. ^ Van Dijk, N. M. On the arrival theorem for communication networks. Computer Networks and ISDN Systems. 1993, 25 (10): 1135–2013 [2019-09-24]. S2CID 45218280. doi:10.1016/0169-7552(93)90073-D. (原始內容存檔於2019-09-24). 
  33. ^ Gordon, W. J.; Newell, G. F. Closed Queuing Systems with Exponential Servers. Operations Research. 1967, 15 (2): 254. JSTOR 168557. doi:10.1287/opre.15.2.254. 
  34. ^ Baskett, F.; Chandy, K. Mani; Muntz, R.R.; Palacios, F.G. Open, closed and mixed networks of queues with different classes of customers. Journal of the ACM. 1975, 22 (2): 248–260. S2CID 15204199. doi:10.1145/321879.321887 . 
  35. ^ Buzen, J. P. Computational algorithms for closed queueing networks with exponential servers (PDF). Communications of the ACM. 1973, 16 (9): 527–531 [2015-09-01]. S2CID 10702. doi:10.1145/362342.362345. (原始內容存檔 (PDF)於2016-05-13). 
  36. ^ Kelly, F. P. Networks of Queues with Customers of Different Types. Journal of Applied Probability. 1975, 12 (3): 542–554. JSTOR 3212869. S2CID 51917794. doi:10.2307/3212869. 
  37. ^ Gelenbe, Erol. G-Networks with Triggered Customer Movement. Journal of Applied Probability. Sep 1993, 30 (3): 742–748. JSTOR 3214781. S2CID 121673725. doi:10.2307/3214781. 
  38. ^ Newell, G. F. Applications of Queueing Theory. SpringerLink. 1982. ISBN 978-94-009-5972-9. doi:10.1007/978-94-009-5970-5 (英語). 
  39. ^ Bobbio, A.; Gribaudo, M.; Telek, M. S. Analysis of Large Scale Interacting Systems by Mean Field Method. 2008 Fifth International Conference on Quantitative Evaluation of Systems. 2008: 215. ISBN 978-0-7695-3360-5. S2CID 2714909. doi:10.1109/QEST.2008.47. 
  40. ^ Chen, H.; Whitt, W. Diffusion approximations for open queueing networks with service interruptions. Queueing Systems. 1993, 13 (4): 335. S2CID 1180930. doi:10.1007/BF01149260. 
  41. ^ Yamada, K. Diffusion Approximation for Open State-Dependent Queueing Networks in the Heavy Traffic Situation. The Annals of Applied Probability. 1995, 5 (4): 958–982. JSTOR 2245101. doi:10.1214/aoap/1177004602 . 
  42. ^ Bramson, M. A stable queueing network with unstable fluid model. The Annals of Applied Probability. 1999, 9 (3): 818–853. JSTOR 2667284. doi:10.1214/aoap/1029962815 . 

Further reading

編輯
編輯


Template:Queueing theory