Kuyruk teorisi

Vikipedi, özgür ansiklopedi
Gezinti kısmına atla Arama kısmına atla

Kuyruk teorisi, bekleme sıraları ve kuyrukların matematiksel çalışmasıdır.[1]. Kuyruk teorisinde, model inşa ederek kuyruğun uzunluğu ve bekleme zamanı tahmin edilebilir.[1] Kuyruk teorisi genellikle yöneylem araştırmasının bir branşı olarak kabul edilebilir. Çünkü sonuçlar genellikle bir hizmet sunmak için gerekli kaynaklar hakkında karar verirken kullanılır.

Agner Krarup Erlang tarafından ilk araştırma ve modelleme ile açıklanan Kopenhang telefon santrali olmuştur.[1] Bu fikirler eski zamanlardan beri telekomünikasyon, trafik mühendisliği, bilgisayarlar[2] ve fabrikalar, mağazalar, ofisler ve hastanelerin tasarımına dahil olmuştur.[3][4]

Yazım[değiştir | kaynağı değiştir]

Akademik araştırma alanında genellikle “Kuyruğa girmek” yerine “Kuyruk” ifadesi yazılır. Aslında iş alanının amiral gemisinden biri olan dergi Kuyruk Teorisi olarak adlandırmıştır.

Tek kuyruk düğümleri[değiştir | kaynağı değiştir]

Tek kuyruk düğümleri genellikle A/S/C biçimindeki Kendall’ın gösterimini kullanarak tanımlanır. Burada A, sıraya gelenler arasındaki süreyi, S işlemlerin boyutunu ve C düğümü sunucu sayısını tanımlar.[5][6] Kuyruk teorisindeki pek çok teorem, kuyrukları Markov zincirleri olarak bilinen matematiksel sistemlere indirgenerek ispatlanabilir. Bu ilk önce Andrey Markov tarafından 1906 tarihli makalesinde açıklanmıştır.[7]

Kopenhang Telefon Santrali için çalışan Danimarkalı bir Mühendis olan Agner Krarup Erlang 1909’da kuyruk teorisi diye adlandırılan ilk belgeyi yayınladı.[8][9][10] Telefon santraline gelen telefon görüşmelerinin sayısını Poisson süreciyle modelledi ve 1917’de M/D/1 sırasını ve 1920’de M/D/k kuyruk modelini çözdü.[11] Kendall’ın gösteriminde:

  • M, Markov veya hafızasız anlamına gelir ve varışlar Poisson sürecine göre gerçekleşir.
  • D, deterministik anlamındadır ve sıraya çıkan işlerin sabit bir miktarda servis gerektirdiği anlamına gelir.
  • k, kuyruk için servis veren sunucu sayısını gösterir (k=1, 2,….). Düğüm noktasında sunuculardan daha fazla iş varsa, işler sıraya girecek ve hizmet için beklenecektir.

M/M/1 kuyruğu, Poisson sürecine göre tek bir sunucunun ulaşan işlere hizmet ettiği üssel olarak dağıtılan hizmet gereksinimlerinin bulunduğu basit bir modeldir. Bir M/G/1 sırasındaki G, genel anlamındadır ve rastgele olasılık dağılımını gösterir. M/G/1 modeli Fellix Pollaczek tarafından 1930’da çözüldü.[12] Bu çözüm Aleksandr Khinchin tarafından olasılık açısından tekrarlanan olarak adlandırılmıştır. Artık bu formül Pollaczek-Khinchine formülü olarak bilinmektedir.[11][13]

Kuyruk teorisi 1940’lardan sonra matematikçiler için ilginç bir araştırma alanı olmuştur.[13] 1953’te David George Kendall, GI/M/k sırasını[14] çözdü ve Kendall’ın gösterimi olarak bilinen sıralar için modern gösterimi sundu. 1957 yılında Pollaczek çalışmalarında GI/G/1 integral denklemini kullandı.[15] John Kigman, G/G/1 sırasındaki ortalama bekleme süresine ilişkin bir formül verdi: Kingman’ın Formülü.[16]

Matris geometrik metodu ve matris analitik metodları faz-tipi dağılmış varışlar arası ve servis edilmesine izin verilmiştir.[17]

M/G/k sırası için performans metrikleri gibi sorunlar halen açık bir sorundur.[11][13]

Servis disiplinleri[değiştir | kaynağı değiştir]

Düğümleri kuyruklamak için çeşitli zaman ilkeleri kullanılabilir.

İlk Giren İlk Çıkar[değiştir | kaynağı değiştir]

Bu ilke, müşterilere birer birer hizmet verildiğini ve en uzun süre bekleyen müşteriye öncelik verildiğini belirtir.[18]

İlk Giren Son Çıkar[değiştir | kaynağı değiştir]

Bu ilke, müşterilere birer birer hizmet verildiğini ve en kısa bekleme süresine sahip müşteriye önce servis edildiğini gösterir.[18] Yığın olarak da bilinir.

İşlemci Paylaşımı[değiştir | kaynağı değiştir]

Hizmet kapasitesi müşteriler arasında eşit olarak paylaşıldığını belirtir.[18]

Öncelik[değiştir | kaynağı değiştir]

Yüksek önceliği olan müşterilere ilk hizmet sunulur.[18] Öncelik kuyrukları, önlemez (görevdeki bir işin kesilemediği) ve önleyici (görevdeki bir işin daha yüksek öncelikli bir iş tarafından kesilebileceği) olmak üzere iki türden oluşur. Her iki modelde de hiçbir çalışma kaybolmaz.[19]

Kısa İş İlk[değiştir | kaynağı değiştir]

Sunulacak bir sonraki iş, en küçük boyuta sahip olan.

Öncelikli En Kısa İş[değiştir | kaynağı değiştir]

Sunulacak bir sonraki iş, orijinal en küçük boyuta sahip olan.[20]

En Kısa Kalan İşlem Süresi[değiştir | kaynağı değiştir]

Sunulacak bir sonraki iş, kalan işleme gereksinimin en ısa olanıdır.[21]

Servis Tesisi[değiştir | kaynağı değiştir]

  • Tek sunucu: Müşterilerin sırayla tek sunucudan hizmet alması.
  • Paralel sunucu: Müşterilerin sırayla birçok sunucudan hizmet alması.
  • Tandem sırası: Birçok sayaç vardır ve müşteriler nereye sıraya gireceğine karar verebilirler.

Bekleyen Müşterinin Davranışları[değiştir | kaynağı değiştir]

  • Kaçınmak: Müşteriler çok uzunsa sıraya katılmamaya karar veriyorlar.
  • Kandırmak: Müşteriler daha hızlı servis alacaklarını düşünüyorlarsa sıralar arasında geçiş yaparlar.
  • Dönmek: Müşteriler hizmet için çok uzun süre beklediyse sıradan ayrılıyorlar.

Kuyruk ağları[değiştir | kaynağı değiştir]

Kuyruk ağları, müşterilerin yönlendirmesi yoluyla bir dizi kuyruk bağlantı sistemleridir. Bir müşteriye bir düğümde hizmet verildiğinde, başka bir düğüme katılabilir, hizmet için sıraya girebilir veya şebekeyi terk edebilir. Bir m ağında sistemin durumu m-boyutlu vektör (x1,x2,...,xm) ile tanımlanabilir. Buradaki xi, her düğümdeki müşteri sayısını temsil eder.

Bu alandaki ilk önemli sonuç, etkin bir ürün biçimi sabit dağılımın bulunduğu Jackson ağları[22][23] ve ortalama değer analizi[24], iş hacmi ve süre gibi ortalama metriklerin hesaplanmasına izin verir[25]. Şebekedeki toplam müşteri sayısı sabit kalırsa, şebekeye kapalı bir şebeke adı verilir ve Gordon-Newell teoreminde sabit bir ürün formunda olduğu da gösterilmiştir[26]. Bu sonuç çok genel hizmet süresi, rejimleri ve müşteri yönlendirme ağına sahip bir ağında ürün biçiminde sabit bir dağıtım sergilediği gösterilen BCMP ağına[27] genişletildi. Normalleştirme sabiti 1973’te önerilen Buzen algoritması ile hesaplanabilir.[28]

Farklı sınıf müşterilerin farklı servis düğümlerinde farklı öncelik düzeyleri yaşadığı Kelly şebekeleri müşteri ağlarında araştırıldı[29]. Başka bir ağ türü de 1993 yılında Erol Gelenbe tarafından ilk kez önerilen G-ağlarıdır[30]. Bu ağlar klasik Jackson Ağı gibi üstel zaman dağılımlarını varsaymaz.

M/M/1 örneği[değiştir | kaynağı değiştir]

Doğum ve Ölüm Süreci[değiştir | kaynağı değiştir]

  • A/B/C
A: varış zamanı dağılımı
B: hizmet zamanı dağılımı
C: paralel sunucu sayısı
Varıl zamanı ve hizmet süresi arasındaki bir sistem üstel dağılım gösterdi. M olarak belirttik.
λ: ortalama varış zamanı
µ: tek bir hizmetin ortalama hizmete oranı
P: sistemdeki n kadar müşterinin olasılığı
n: sistemdeki müşteri sayısı
  • E, durum n’ye girme sayısı ve L, durum n’den çıkma sayısı olarak temsil etsin. . t zamanında sistem kararlı bir duruma gelmiş oluyor. Dolayısıyla varış oranı=ayrılış oranı
  • Denge denklemi
Durum 0:
Durum 1:
Durum n:
Denge denklemi ile,
Matematiksel tümevarım,
Çünkü
alıyoruz

Yönlendirme algoritmaları[değiştir | kaynağı değiştir]

Hizmet düğümlerinin herhangi bir zamanda aktif olabileceği bir kısıt bulunduğu ayrı zamanlı ağlarda, maksimum ağırlık çizelgeleme algoritması, her bir işin yalnızca tek bir servis düğümünü ziyaret ettiği durumlarda optimum verim sağlamak için bir hizmet politikası seçer. işlerin birden fazla düğümü ziyaret edebileceği daha genel durumlarda, geri basınç yönlendirmesi optimum verim sağlar.

Bir zamanlayıcı, daha büyük ağın özelliklerini etkileyen bir kuyruk algoritması seçmelidir.

Ortalama alan sınırları[değiştir | kaynağı değiştir]

Ortalama alan modelleri, kuyruk sayısı (m) sonsuzluğa geçtiği için ampirik ölçümün (çeşitli durumdaki kuyrukların oranı) sınırlayıcı davranışını göz önüne alır. Ağdaki herhangi bir sıra üzerindeki diğer sıraların etkisi, bir diferansiyel denklem ile yaklaştırılır. Deterministtik model, orijinal model ile aynı durağan dağılıma yakınsar[31].

Sıvı sınırları[değiştir | kaynağı değiştir]

Sıvı modelleri, süreç, zaman ve mekan ölçekli olduğunda heterojen nesnelere izin vererek, limit olarak elde edilen kuyruk ağlarının sürekli deterministtik analoglarıdır. Bu ölçeklendirilmiş yörünge, sistemin kararlılığının kanıtlanmasına izin veren deterministtik bir denklemle yakınsar. Bir kuyruk ağının dengeli olabileceği, ancak dengesiz bir sıvı sınırına sahiptir[32].

Yoğun trafik/difüzyon yaklaşımlar[değiştir | kaynağı değiştir]

Yüksek doluluk oranları olan bir sistemde (1’e yakın kullanım) Brownian hareket[33], Ornstein-Uhlenbeck süreci veya daha genel difüzyon işlemi ile yaklaşık kuyruk uzunluğu süreci için ağır bir trafik yaklaşımı kullanır[34]. RBM’nin boyutlarının sayısı, kuyruklama düğümlerinin sayısına eşittir ve difüzyon negatif olmayan ortanca ile sınırlandırılmıştır.

Similasyon ve analiz programları[değiştir | kaynağı değiştir]

  • Java Modelling Tools,[35] a GPL suite of queueing theory tools written in Java[36]
  • Queueing Package for GNU Octave[37][38]
  • Discrete Event Simulation for Python[39][40]
  • Queueing Process Models in the Wolfram Language[41]
  • PDQ software package for R statistical computing[42]
  • SimEvents for MATLAB[43]

Kaynakça[değiştir | kaynağı değiştir]

  1. ^ a b c Sundarapandian, V. (2009). "7. Queueing Theory". Probability, Statistics and Queueing Theory. PHI Learning. ISBN 8120338448. 
  2. ^ Lawrence W. Dowdy, Virgilio A.F. Almeida, Daniel A. Menasce. "Performance by Design: Computer Capacity Planning by Example". 6 Mayıs 2016 tarihinde kaynağından arşivlendi. http://web.archive.org/web/20160506025515/http://cs.gmu.edu/~menasce/perfbyd/ 
  3. ^ Schlechter, Kira (March 2, 2009). "Hershey Medical Center to open redesigned emergency room". The Patriot-News. http://www.pennlive.com/midstate/index.ssf/2009/03/hershey_med_to_open_redesigned.html 
  4. ^ Mayhew, Les; Smith, David (December 2006). Using queuing theory to analyse completion times in accident and emergency departments in the light of the Government 4-hour target. Cass Business School. ISBN 978-1-905752-06-5. http://www.cass.city.ac.uk/media/stories/story_96_105659_69284.html. Erişim tarihi: 2008-05-20. 
  5. ^ Tijms, H.C, Algorithmic Analysis of Queues", Chapter 9 in A First Course in Stochastic Models, Wiley, Chichester, 2003
  6. ^ Kendall, D. G. (1953). "Stochastic Processes Occurring in the Theory of Queues and their Analysis by the Method of the Imbedded Markov Chain". The Annals of Mathematical Statistics 24 (3): 338. DOI:10.1214/aoms/1177728975. JSTOR 2236285. http://projecteuclid.org/euclid.aoms/1177728975. 
  7. ^ A.A. Markov, Extension of the law of large numbers to dependent quantities, Izvestiia Fiz.-Matem. Obsch. Kazan Univ., (2nd Ser.), 15(1906), pp. 135–156 [Also [37], pp. 339–361].
  8. ^ "Agner Krarup Erlang (1878 - 1929) | plus.maths.org". Pass.maths.org.uk. 7 Ekim 2008 tarihinde kaynağından arşivlendi. http://web.archive.org/web/20081007225944/http://pass.maths.org.uk/issue2/erlang/index.html. Erişim tarihi: 2013-04-22. 
  9. ^ Asmussen, S. R.; Boxma, O. J. (2009). "Editorial introduction". Queueing Systems 63: 1. DOI:10.1007/s11134-009-9151-8. 
  10. ^ Erlang, Agner Krarup (1909). "The theory of probabilities and telephone conversations". Nyt Tidsskrift for Matematik B 20: 33–39. 2011-10-01 tarihinde kaynağından arşivlendi. https://web.archive.org/web/20111001212934/http://oldwww.com.dtu.dk/teletraffic/erlangbook/pps131-137.pdf. 
  11. ^ a b c Kingman, J. F. C. (2009). "The first Erlang century—and the next". Queueing Systems 63: 3–4. DOI:10.1007/s11134-009-9147-4. 
  12. ^ Pollaczek, F., Ueber eine Aufgabe der Wahrscheinlichkeitstheorie, Math. Z. 1930
  13. ^ a b c Whittle, P. (2002). "Applied Probability in Great Britain". Operations Research (journal) 50: 227–177. DOI:10.1287/opre.50.1.227.17792. JSTOR 3088474. 
  14. ^ 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
  15. ^ Pollaczek, F., Problèmes Stochastiques posés par le phénomène de formation d'une queue
  16. ^ Kingman, J. F. C.; Atiyah (October 1961). "The single server queue in heavy traffic". Mathematical Proceedings of the Cambridge Philosophical Society 57 (4): 902. DOI:10.1017/S0305004100036094. JSTOR 2984229. 
  17. ^ Ramaswami, V. (1988). "A stable recursion for the steady state vector in markov chains of m/g/1 type". Communications in Statistics. Stochastic Models 4: 183–188. DOI:10.1080/15326348808807077. 
  18. ^ a b c d Penttinen A., Chapter 8 – Queueing Systems, Lecture Notes: S-38.145 - Introduction to Teletraffic Theory.
  19. ^ Harchol-Balter, M. (2012). "Scheduling: Non-Preemptive, Size-Based Policies". Performance Modeling and Design of Computer Systems. ss. 499. DOI:10.1017/CBO9781139226424.039. ISBN 9781139226424. 
  20. ^ Harchol-Balter, M. (2012). "Scheduling: Preemptive, Size-Based Policies". Performance Modeling and Design of Computer Systems. ss. 508. DOI:10.1017/CBO9781139226424.040. ISBN 9781139226424. 
  21. ^ Harchol-Balter, M. (2012). "Scheduling: SRPT and Fairness". Performance Modeling and Design of Computer Systems. ss. 518. DOI:10.1017/CBO9781139226424.041. ISBN 9781139226424. 
  22. ^ Jackson, J. R. (1957). "Networks of Waiting Lines". Operations Research 5 (4): 518–521. DOI:10.1287/opre.5.4.518. JSTOR 167249. 
  23. ^ Jackson, James R. (Oct 1963). "Jobshop-like Queueing Systems". Management Science 10 (1): 131–142. DOI:10.1287/mnsc.1040.0268. JSTOR 2627213. 
  24. ^ Reiser, M.; Lavenberg, S. S. (1980). "Mean-Value Analysis of Closed Multichain Queuing Networks". Journal of the ACM 27 (2): 313. DOI:10.1145/322186.322195. 
  25. ^ Van Dijk, N. M. (1993). "On the arrival theorem for communication networks". Computer Networks and ISDN Systems 25 (10): 1135–2013. DOI:10.1016/0169-7552(93)90073-D. 
  26. ^ Gordon, W. J.; Newell, G. F. (1967). "Closed Queuing Systems with Exponential Servers". Operations Research 15 (2): 254. DOI:10.1287/opre.15.2.254. JSTOR 168557. 
  27. ^ Baskett, F.; Chandy, K. Mani; Muntz, R.R.; Palacios, F.G. (1975). "Open, closed and mixed networks of queues with different classes of customers". Journal of the ACM 22 (2): 248–260. DOI:10.1145/321879.321887. 
  28. ^ Buzen, J. P. (1973). "Computational algorithms for closed queueing networks with exponential servers". Communications of the ACM 16 (9): 527. DOI:10.1145/362342.362345. http://www-unix.ecs.umass.edu/~krishna/ece673/buzen.pdf. 
  29. ^ Kelly, F. P. (1975). "Networks of Queues with Customers of Different Types". Journal of Applied Probability 12 (3): 542–554. DOI:10.2307/3212869. JSTOR 3212869. 
  30. ^ Gelenbe, Erol (Sep 1993). "G-Networks with Triggered Customer Movement". Journal of Applied Probability 30 (3): 742–748. DOI:10.2307/3214781. JSTOR 3214781. 
  31. ^ Bobbio, A.; Gribaudo, M.; Telek, M. S. (2008). "Analysis of Large Scale Interacting Systems by Mean Field Method". 2008 Fifth International Conference on Quantitative Evaluation of Systems. ss. 215. DOI:10.1109/QEST.2008.47. ISBN 978-0-7695-3360-5. 
  32. ^ Bramson, M. (1999). "A stable queueing network with unstable fluid model". The Annals of Applied Probability 9 (3): 818. DOI:10.1214/aoap/1029962815. JSTOR 2667284. 
  33. ^ Chen, H.; Whitt, W. (1993). "Diffusion approximations for open queueing networks with service interruptions". Queueing Systems 13 (4): 335. DOI:10.1007/BF01149260. 
  34. ^ Yamada, K. (1995). "Diffusion Approximation for Open State-Dependent Queueing Networks in the Heavy Traffic Situation". The Annals of Applied Probability 5 (4): 958. DOI:10.1214/aoap/1177004602. JSTOR 2245101. 
  35. ^ Java Modelling Tools
  36. ^ Bertoli, Marco; Casale, Giuliano; Serazzi, Giuseppe (2009). "JMT: performance engineering tools for system modeling". SIGMETRICS Perform. Eval. Rev. 36: 10–15. DOI:10.1145/1530873.1530877. 
  37. ^ Queueing Package for GNU Octave
  38. ^ Marzolla, Moreno. "The queueing Package". 8 Ağustos 2014 tarihinde kaynağından arşivlendi. http://web.archive.org/web/20140808040804/http://www.cs.unibo.it/~donat/octave-queueing-package.pdf. Erişim tarihi: 31 July 2014. 
  39. ^ Discrete Event Simulation for Python
  40. ^ Müller, Klaus; Vignaux, Tony. "SimPy Acknowledgements". 23 Haziran 2016 tarihinde kaynağından arşivlendi. http://web.archive.org/web/20160623210920/http://simpy.readthedocs.io/en/latest/about/acknowledgements.html. Erişim tarihi: 24 May 2016. 
  41. ^ "Queueing Processes—Wolfram Language Documentation". 7 Aralık 2016 tarihinde kaynağından arşivlendi. http://web.archive.org/web/20161207172553/https://reference.wolfram.com/language/guide/QueueingProcesses.html. Erişim tarihi: 2016-06-23. 
  42. ^ "PDQ-R: {\em Pretty Damn Quick} for R Statistical Computing". 13 Mart 2016 tarihinde kaynağından arşivlendi. http://web.archive.org/web/20160313133324/http://www.perfdynamics.com/Tools/PDQ-R.html. Erişim tarihi: 2016-06-23. 
  43. ^ "Queuing - MATLAB & Simulink". 17 Mayıs 2016 tarihinde kaynağından arşivlendi. http://web.archive.org/web/20160517191541/http://www.mathworks.com:80/help/simevents/queuing.html. Erişim tarihi: 2016-06-23. 

Konuyla ilgili yayınlar[değiştir | kaynağı değiştir]

Dış bağlantılar[değiştir | kaynağı değiştir]