View
2
Download
0
Category
Preview:
Citation preview
1
OBSAH
6 MODELOVÁNÍ SYSTÉMŮ HROMADNÉ OBSLUHY ........................... 2
6.1 Obslužný systém ...................................................................................... 2
6.2 Kendallova klasifikace .............................................................................. 3
6.2.1 Vstupní tok .................................................................................................. 3
6.2.2 Délka obsluhy .............................................................................................. 4
6.2.3 Počet obslužných linek ................................................................................ 4
6.2.4 Kapacita zásobníku ..................................................................................... 4
6.2.5 Frontový režim............................................................................................. 4
6.3 Sledované charakteristiky systémů hromadné obsluhy ........................... 5
6.3.1 Vstupní parametry ....................................................................................... 5
6.3.2 Výstupní parametry ..................................................................................... 5
6.4 Systémy s poissonovským vstupem ......................................................... 6
6.4.1 Littleho vztahy ............................................................................................. 7
6.4.2 Vlastnost PASTA ( Poisson Arrivals See Time Averages) .......................... 7
6.5 Metody teorie hromadné obsluhy ............................................................. 7
6.6 Analytické metody markovovských systémů M/M/n/r ............................... 8
Vstup zákazníků do systému M/M/n/r .................................................................. 9
Výstup zákazníků ze systému M/M/n/r ................................................................. 9
6.6.1 M/M/1/0 – jednolinkový systém se ztrátami ............................................... 10
6.6.2 M/M/1/r ...................................................................................................... 12
6.6.3 M/M/1/ ..................................................................................................... 14
6.6.4 M/M/2/ ..................................................................................................... 16
6.6.5 M/M/n/ ..................................................................................................... 18
6.7 Výpočetní nástroje markovských systémů ............................................. 21
2
6 MODELOVÁNÍ SYSTÉMŮ HROMADNÉ OBSLUHY
Teorie hromadné obsluhy je odvětví aplikované matematiky, které zkoumá činnost systémů, v
nichž se opakovaně vyskytují požadavky vykonat posloupnost operací, které jsou co do
vzniku a okamžiku výskytu zpravidla náhodné
Cílem teorie hromadné obsluhy je návrh a optimalizace systému nebo sítí systémů
hromadné obsluhy a v neposlední řadě analýza stávajících systémů a návrh jejich
optimalizace. Analytickými, nebo simulačními metodami získáme sledované charakteristiky,
jako např. průměrná délka fronty, ztracený čas zákazníků, kteří čekají ve frontě, průměrná
doba setrvání zákazníka v systému, vytíženost linky atd.
Obslužný systém je klasickým příkladem procesu, ve kterém se vyskytují
synchronizační komunikační a zdroje sdílející procesy, které je možné elegantně modelovat
nástroji Petřino sítí. Pro simulaci systému hromadné obsluhy lze s výhodou využít zobecněné
stochastické Petřino sítě (GSPN), nebo přímo frontové Petřino sítě (QPN).
6.1 Obslužný systém
Systémy hromadné obsluhy jsou schematicky znázorněny na Obr. 6.1. Do systému
přicházejí zákazníci opakovaně v čase (tedy ne nutně titíž) a buď jsou přijati do obslužného
systému a zařazeny do fronty, nebo jsou odmítnuti z důvodu naplnění kapacity zásobníku.
Systém obsahuje jednu či několik paralelních obslužných linek, ve kterých je obsluhováno
vždy pouze určité množství zákazníků. Způsob řazení do fronty a výběr zákazníků
k obsluze(tzv. frontový režim) může být různý.
Obr. 6.1:Schéma obslužného systému
Teorie hromadné obsluhy vychází především ze statistiky a teorie pravděpodobnosti.
Patří do odvětví operačního výzkumu, matematického modelování a optimalizace. Základní
jednotkou systémů hromadné obsluhy je obslužný systém. Ten je složen z trojice zákazník-
linka-obsluha.
• zákazník je subjekt, který požaduje vyřízení svého požadavku
• obslužná linka je místo, osoba, nebo zařízení, kde se zakázky zpracovávají
• obsluha je činnost vedoucí k uspokojení zakázky
3
zákazník linka obsluha
letadlo přistávací dráha přistání
kupující pokladna placení nákupu
telefonní účastník centrála spojení
stroj seřizovač seřízení
cestující autobus doprava
počítač tiskárna vytisknutí úlohy
automobil SSZ průjezd křižovatkou
6.2 Kendallova klasifikace
Pro roztřídění a jednotný systematický popis systémů hromadné obsluhy byla v roce 1951
vytvořena D.G. Kendallem1 klasifikace, která má ve zkratce zakódované základní informace o
systému hromadné obsluhy. Původně byla používaná ve formě tří uspořádaných znaků ale
postupně se ukázalo, že je to nedostatečné a klasifikace byla rozšířena na pět znaků.
A. Popis zákonitostí vzniku a příchodu požadavku do systému (vstupní tok)
B. Délka obsluhy zákazníka – délka obsluhy je většinou náhodná veličina zadaná distribuční
funkcí
C. Počet obslužných linek – počet zákazníků, kteří můžou být obsluhováni současně
D. Kapacita zásobníků – omezení délky fronty
E. Frontový režim
Při popisu reálných systémů mnohdy není třeba určovat všech pět charakteristik.
Zkoumáme-li např. systém z pohledu provozovatele a nezajímá-li nás pravděpodobnostní
funkce ztrátového času zákazníků, nemusíme specifikovat frontový režim. Můžeme tedy dle
konkrétní potřeby vynechat pátý, někdy i čtvrtý znak Kendallovy klasifikace.
6.2.1 Vstupní tok
Zákazníci přicházejí se svými požadavky do systému opakovaně. Okamžiky příchodu
zákazníků do systému mohou být deterministické nebo náhodné, závislé, či nezávislé, se
známým rozdělením pravděpodobnosti, nebo s rozdělením, které neznáme. Navíc zakázky
mohou být děleny do několika typů, lišících se jak v rozložení doby příchodů, tak i v dalších
parametrech. Okamžiky příchodů zákazníků tvoří posloupnost událostí, které nastávají
1 David Georgie Kendall (1918-2007) – britský statistik, jeden z průkopníků stochastické geometrie
4
náhodně v čase – tvoří stochastický proces. Příkladem mohou být příjezdy vozidel k celnici,
příchody cestujících do stanice metra, nebo porucha nějakého zařízení, která vyžaduje opravu.
Rozdělení intervalů mezi příchody označujeme jedním písmenem tabulka 1.
6.2.2 Délka obsluhy
Většinou předpokládáme, že trvání obsluhy jsou nezávislé náhodné proměnné, se stejným
rozdělením. Stejně jako u vstupního toku, rozdělení intervalů mezi příchody označujeme
jedním písmenem tabulka 1
A – Vstupní tok požadavků B – Hustota rozdělení délky obsluhy
M Poissonův proces příchodů Exponenciální rozložení doby obsluhy
Ek Erlangovo rozložení intervalů mezi příchody Erlangovo rozložení doby obsluhy (s
parametry a k)
Kn rozložení 2n intervalů mezi příchody rozložení 2
n doby obsluhy
D pravidelné deterministické příchody konstantní doba obsluhy
G obecné rozložení (žádné předpoklady o
procesu příchodů)
obecné, tj. jakékoliv rozložení doby
obsluhy
GI rekurentní proces příchodů
tabulka 1: Symboly používané v Kendallovu klasifikaci
6.2.3 Počet obslužných linek
Maximální počet požadavků, které se mohou v systému vyskytovat současně určuje třetí znak
Kendallovy notace. Většinou je určen přirozeným číslem udávající maximální počet
dostupných linek systému, ale obecně může nabývat i hodnoty ∞ pro neomezený počet
současně obsluhovaných zákazníků, nebo může být zadán pravděpodobnostní funkcí.
6.2.4 Kapacita zásobníku
Čtvrtým znakem je přirozené číslo udávající maximální počet zákazníků ve frontě.
V některých publikacích čtvrtý parametr udává celkovou kapacitu systému, tj maximální
počet zákazníku ve frontě sečtený s počtem obslužných linek.
Pokud jsou všechny linky obsazeny, jsou zákazníci řazeni dle frontového režimu do
fronty. Při naplnění kapacity fronty jsou další zákazníci odmítnuti a odcházejí ze systému
neobslouženi. Pokud je zásobník neomezen, tj. jeho kapacita je nekonečná, napíšeme na čtvrté
místo Kendallovy klasifikace znak .
6.2.5 Frontový režim
Frontový režim určuje popis osudu vstoupivších zákazníků v případě, že nemohou být hned
obslouženi. Frontový režim značíme zkratkou anglického názvu. V praxi mezi
nejpoužívanější frontové režimy patří:
• FIFO (First In – First Out) - Zákazníci se řadí do fronty v tom pořadí, v jakém do fronty
5
přišli a dle tohoto pořadí jsou i obslouženi.
• P-FIFO – frontový režim s předností. Zákazníky dělíme na dva, nebo více typů. Zákazníci
s prioritou se řadí na začátek fronty, obyčejní zákazníci přijdou na řadu jen v případě, že
je fronta zákazníků s vyšší prioritou prázdná
• LIFO (Last In – First Out) – Zákazníci jsou obsluhováni v opačném pořadí, než v jakém
do systému přicházeli. Praktické uplatnění má tento režim v teorii zásob
• SIRO (Search in Random Order) – Zákazníci jsou vybíráni náhodně. Tento režim je také
někdy označován zkratkou RS (Random Selection)
• SJF (Shortest Job First) – Nejdříve je obsluhován požadavek, jehož obsluha je
nejrychlejší.
I když označení systému pětiznakovou Kendallovou klasifikací poskytuje všechny
základní informace o systému, nepopisuje systém jednoznačně. Nejsou v něm zahrnuty
systémy s nastavitelnou trpělivostí zákazníků, systém s předbíhajícími zákazníky, systém
s proměnnou dostupností obsluhy, režim obsazování linek apod..
6.3 Sledované charakteristiky systémů hromadné obsluhy
Cílem teorie hromadné obsluhy je určit vztah mezi známými parametry systému a
charakteristikami ovlivňujícími kvantitu a kvalitu systému. Na základě těchto funkcí potom
můžeme systém analyzovat a navrhnout optimální řešení. Je účelné používat pro parametry
systémů jednotné značení. V následujících dvou kapitolách zavedeme značení běžně
používané (s mírnými odchylkami) ve většině českých i zahraničních publikací.
6.3.1 Vstupní parametry
Předpokládejme, že vstupní i výstupní tok požadavků je homogenní proces, intervaly mezi
příchody tvoří posloupnost náhodných veličin se stejným rozdělením pravděpodobnosti.
Trvání obsluhy, nechť jsou nezávislé náhodné proměnné se stejným rozdělením
pravděpodobnosti.
intenzita vstupního toku – střední hodnota počtu vstupujících zákazníků za
časovou jednotku
intenzita obsluhy – střední počet zákazníků obsloužených jednou linkou (pokud je
linka plně vytížená)
= intenzita provozu (Service utilization)
Zdá se, že zavedení další značky pro poměr intenzit je zbytečné plýtvání, ale když se
zamyslíme nad chováním systému, nahlédneme, že je toto označení velmi užitečné. Ve
skutečnosti nejsou důležité samotné hodnoty intenzit vstupu a obsluhy, ale jejich vzájemný
poměr. To, jestli obsluha průměrně zvládá nápor zákazníků, s jakou pravděpodobností se tvoří
fronty, nebo naopak je systém prázdný, to vše je určeno poměrem / = . Jak se později
ukáže, u většiny systémů má tento poměr velký význam, určuje totiž vytíženost systému.
6.3.2 Výstupní parametry
Stav systém hromadné obsluhy ohodnotíme aktuálním počtem zákazníků v systému. Počet
zákazníků v systému je součtem počtu zákazníků ve frontě a všech právě obsluhovaných
zákazníků. Zákazníci přicházejí většinou náhodně, délka intervalu mezi příchody je spojitá
6
náhodná veličina, stejně jako délka obsluhy. Jedná se tedy o stochastický proces spojitý v čase
a diskrétní v úrovni.
Obecně zkoumáme dynamiku procesu, tj. všechny náhodné veličiny jsou funkcí času t,
ale pro většinu praktických aplikací se spokojíme s výstupními hodnotami stabilizovaného
stavu (za předpokladu, že systém stabilizovaný je). Charakteristiky ve stabilizovaném
(ustáleném) stavu označíme stejným písmenem, jen s tím rozdílem, že je nebudeme psát jako
funkci času t. Zkoumání dynamiky je výpočetně náročné, pro rozsáhlé množiny stavů
většinou nemožné. My ji předvedeme v jediném příkladě, pro frontu M/M/1/0.
X(t) počet zákazníků v systému
pi(t) pst, že v čase t je v systému i zákazníků
pi pst , že v systému je i zákazníků – stabilizovaný stav lim ( )i it
p p t→
=
F(t) délka fronty v čase t
S(t) počet obsazených linek v čase t
WF doba čekání náhodného požadavku ve frontě
WX doba strávená náhodným požadavkem v systému
U všech systémů bude našim cílem určit ustálené rozdělení pravděpodobnosti počtu
zákazníků v systému pi. Samozřejmě musí platit, že součet pravděpodobností všech možných
stavů je 1.
1i
i
p = .
Většina sledovaných výstupních charakteristik se snadno odvozuje z ustáleného
rozdělení pi. Zajímá-li nás průměrný počet zákazníků v systému, určíme střední hodnotu
teoretického rozdělení pi přímo z definice.
[ ] i
i
E X i p=
Z rozdělení X odvodíme rozdělení náhodné veličiny F pro délku fronty (nepočítáme
zákazníka v lince) a náhodné veličiny S pro průměrný počet pracujících linek. Průměrné
ztrátové časy WX a WF získáme použitím Littleho vztahů.
Důležitými charakteristikami pro provozovatele obslužné linky je pravděpodobnost, že
linka nepracuje p0 vytíženost systému. Protože u většiny systémů je to přímo poměr intenzit
/ = , není třeba zavádět novou značku.
U jednolinkových systému je vytíženost dána pravděpodobností, že linka pracuje, u
vícelinkových je to průměrný počet pracujících linek vydělený celkovým počtem linek n.
[ ]Vytíženost
E S
n=
6.4 Systémy s poissonovským vstupem
Je zřejmé, že čím více informací o systému máme, tím konkrétnější a kvalitnější popis
zkoumaných charakteristik získáme. Jak je zjevné z tabulka 1, je možné zkoumat i systémy
hromadné obsluhy, u nichž neznáme hustotu pravděpodobnosti délky obsluhy ani intervalů
mezi vstupy.
Pro speciální třídy procesů můžeme s výhodou využít speciální vztahy mezi parametry
systému, které výrazně usnadní analýzu takovýchto procesů. Je třeba ale mít na paměti
předpoklady, za jakých je možné takovéto vztahy použít. V praxi lze většinou přijmout, za
jistých omezení, předpoklad poissonovského vstupního toku. Pro tyto systémy hromadné
obsluhy dokázal John Little tzv. Littleho vzorce a vlastnost PASTA
7
6.4.1 Littleho vztahy
Základní vztahy popisující vztah mezi vstupním tokem, střední hodnotou počtu
požadavků ve frontě a střední dobou strávenou požadavkem ve frontě formuloval v roce 1961
John Little2. Ve všech systémech s neomezeným zásobníkem a homogenním vstupem
zákazníků platí:
[ ] [ ]E F E W=
Intenzita vstupního toku
E[F] Střední počet požadavků ve frontě
E[W] Střední doba čekání ve frontě
Littleho vztahy jsme formulovali pro počet požadavků ve frontě, ale vztah platí obecně,
i pro střední počet požadavků v systému. Myšlenka je jednoduchá, intuitivně ji věříme –
průměrné čekání je třeba rozdělit mezi všechny přicházející zákazníky. Formální důkaz je
mnohem složitější, Littleho důkaz je rozepsán na deset stránek.
Platnost Littleho formule můžeme rozšířit i na ztrátové systémy. Místo vstupního toku
zákazníků s intenzitou budeme uvažovat jen ty, kteří neodešli, tj. Poissonův tok s intenzitou
(1–p0).
6.4.2 Vlastnost PASTA ( Poisson Arrivals See Time Averages)
Vlastnost PASTA platí jen pro systémy s poissonovským vstupem, tedy pro systémy, značené
v Kendallovu notaci jakýmkoliv řetězcem typu(M / . / . / . / .). Pro pochopení této vlastnosti je
nutné, abychom si uvědomili rozdílnost v různých způsobech pozorování systému. Pokud
popisujeme systém jako vnější, nezávislý pozorovatel obdržíme jiné hodnoty než vstupující
zákazník, který sám svým vstupem stav systému mění.
Ukažme si tento rozdíl na příkladě. Uvažujme systém D / D / 1. Do systému vstupují
zákazníci pravidelně po 1 minutě. Obsluha zákazníků trvá vždy přesně 30 sekund. Z pohledu
vstupujících zákazníků je pravděpodobnost, že systém bude prázdný rovna jedné, tj. 0 1p = .
Z pohledu provozovatele systému je pst, že linka nepracuje 50 %, tj. 0 0,5p = .
Pro systémy s poissonovským vstupním tokem není třeba tyto dva pohledy rozlišovat.
Vlastnost PASTA bychom mohli volně formulovat následovně: Procento zákazníků, kteří při
svém vstupu naleznou systém ve stavu A je stejné, jako procento času, v němž se systém ve
stavu A nachází.
Tedy, např. je-li p0 pst, že při náhodném vstupu zákazníka je systém prázdný, potom
100.p0 je procento prostoje systému.
6.5 Metody teorie hromadné obsluhy
Cílem THO je vyhledávání závislostí mezi charakterem vstupu požadavků,
produktivitou linek a efektivností obsluhy. Na základě těchto znalostí můžeme zlepšit činnost
systému pomocí účelných změn. Při optimalizaci systému stojí vždy proti sobě dva cíle: co
nejvyšší využití linky a minimalizace ztráty času zákazníků. Pokud známe závislost nastavení
systému a výsledných zkoumaných charakteristik, pak se z pohledu provozovatele, ale i
z pohledu zákazníka můžeme správně rozhodnout a optimalizovat své chování.
2 John. D. C. Little – profesor na Massachusetts Institute of Technology, USA, jeden z nejvýznamnějších
odborníků v oblasti operačního výzkumu
8
V zásadě existují dvě různé metody zkoumání systémů hromadné obsluhy:
1. Analytické metody – výsledkem je funkční závislost vstupních a výstupních požadavků.
Nevýhodou je, že analytické metody je možné použít pro úzkou třídu specifických
procesů. Pokud jsou významně narušeny předpoklady matematického modelu, je třeba
přistoupit k simulačním metodám.
2. Simulační metody – Systém nahradíme simulačním modelem se stejnými
pravděpodobnostními charakteristikami a chování mnohonásobně simulujeme na modelu.
Jednotlivé charakteristiky výstupu nahradíme bodovým odhadem, střední hodnotu
průměrem, pravděpodobnost stavu relativní četností atd. Simulační modely používáme pro
analýzu komplexních systémů
Výhody – Umožňují analýzu systémů, pro něž neexistují analytické modely, umožňují
modelovat neobvyklé situace, studovat dynamiku systémů. Modelování systémů může
pomoci porozumět skrytým procesům.
Nevýhody – Mohou existovat jednodušší techniky pro řešení daného problému, simulace
komplexních systémů vyžadují značné množství vstupních dat. Pro správné použití
simulačních programů musíme porozumět jejich principům a předpokladům.
Simulace může být buď orientovaná na čas – simulace s pevným časovým krokem,
nebo orientovaná na událost – simulace s proměnným časovým krokem. Pro jednoduché
modely volíme většinou simulaci orientovanou na událost, zatímco komplexnější modely se
spoustou nastavitelných parametrů jsou simulace s pevným (velmi malým) časovým krokem.
6.6 Analytické metody markovovských systémů M/M/n/r
Je-li vstupní tok je homogenní ordinární proces s nezávislými přírůstky – poissonovský
proces s intenzitou a je-li doba obsluhy exponenciální náhodná veličina s intenzitou obsluhy
, pak je stochastický proces popisující počet zákazníků v systému markovovský řetězec se
spojitým časem CTMC. Tyto třídy procesů jsou dobře popsány aparátem markovských
modelů a většinou je možné použít analytické metody. Mezi základní sledované ukazatele
efektivnosti systému hromadné obsluhy pro ustálený režim (stabilizovaný stav) patří kvalita
(rychlost) obsluhy měřená délkou čekání na obsluhu, případně časem stráveným v systému,
využití kanálů obsluhy, střední hodnota počtu volných kanálů, pravděpodobnost odmítnutí
zákazníka atd.
Podrobně popíšeme analytický postup a odvození stabilizovaného stavu pro
nejjednodušší systémy. Použijeme analýzu stochastických Petriho sítí, které popisují příslušný
Markovovský řetězec CTMC. Pro pochopení této kapitoly je vhodné nejprve prostudovat
kapitolu „Markovovské stochastické procesy“.
Připomeňme, že aby byl stochastický proces markovský, musí být doba setrvání
systému ve stavu vždy náhodná veličina s exponenciálním rozdělením, protože to je jediná
spojitá náhodná veličina bez paměti. Tuto vlastnost dokážeme jednoduše určením podmíněné
pravděpodobnosti, že v procesu nenastane v intervalu délky T = t+u žádná událost, víme-li že
od poslední změny už uplynul čas t.
( )P( ) e
P( / ) = = e = P( )P( ) e
t u
u
t
t ut u t u
t
− +
−
−
+ + =
Vidíme, že naše budoucí vyhlídky na změnu v intervalu délky u jsou zcela nezávislé na
uplynulém intervalu t, tedy na historii procesu. Možné změny mohou nastat jen příchodem
zákazníka nebo ukončením obsluhy zákazníka, který systém opouští a snižuje stav procesu.
9
Vstup zákazníků do systému M/M/n/r
Intervaly mezi příchody zákazníků jsou vždy náhodné veličiny s exponenciálním
rozdělením, tj. pro hustotu pravděpodobnosti f(t) a distribuční funkce F(t) platí vztah
( ) 1
( ) , F 1 ,t tf t e t e E t
− −= = − =
Je to rozdělení určené jediným parametrem který je roven převrácené hodnotě střední
délky intervalu E[t]. Střední hodnotu teoretického rozdělení odhadujeme aritmetickým
průměrem. Počet zákazníků N(t), kteří přijdou za pevný časový interval t je náhodná veličina
s Poissonovým rozdělením.
( )( ( ) )
!
k
tt
P N t k ek
−
= =
Abychom mohli určit graf diferenciálních přechodů CTMC, musíme uvažovat
nekonečně malé časové přírůstky t a možné změny. Pravděpodobnosti, které jsou menší než
druhé mocniny t zanedbáme, všechny zanedbané členy, jejichž hodnota je nekonečněkrát
menší než hodnota lineární funkce, nahradíme symbolem o(t). Exponenciální funkce
nahradíme lineárními, místo grafu funkce budeme uvažovat jeho tečnu v bodě t = 0.
Výsledkem infinitesimálních úvah je, že se možné změny stavů a jejich pravděpodobnosti
podstatně zjednoduší:
Pravděpodobnost, že v intervalu t nepřijde žádný zákazník:
( )( ) 0 e 1 ( )tP N t t o t − = = = − +
Pravděpodobnost, že v intervalu t přijde jeden zákazník:
( )( ) 1 e ( )tP N t t t o t − = = = +
Pravděpodobnost, že v intervalu t přijde víc než jeden zákazník
( )( ) 1 ( )P N t o t =
Za krátký časový interval t tedy může s nezanedbatelnou pravděpodobností jen přijít
jeden zákazník a tím se změní stav procesu na stav sousední. Podobně to platí i pro výstup
zákazníků ze systému, protože ten je dán exponenciální délkou obsluhy.
Výstup zákazníků ze systému M/M/n/r
Průměrný počet zákazníků obsloužených za časovou jednotku jednou linkou je intenzita
obsluhy . S nezanedbatelnou pravděpodobností je možná za čas t jediná změna stavu:
Pravděpodobnost, že během krátkého časového intervalu bude obsloužen jeden zákazník:
( ) ( )1 tP t e t o t − = − = +
S doplňkovou pravděpodobností obsluha ukončena nebude.
Oba dva právě odvozené vztahy použijeme ve všech markovských systémech M/M/n/r.
Pokuste se odvodit, jaká bude pravděpodobnost, že za krátký časový interval t přijde jeden
zákazník a současně bude ukončena jeho obsluha. Asi nikoho nepřekvapí, že vám vyjde
hodnota závislá na mocnině t, tedy zanedbatelná.
10
6.6.1 M/M/1/0 – jednolinkový systém se ztrátami
Systém s jednou linkou bez čekání, fronta se nevytváří, a proto také jsou možné pouze 2
stavy: M0 – systém je volný a M1 – v systému je jeden požadavek, který je právě obsluhován.
Příkladem tohoto systému je volání na telefonní linku, buď je linka volná a volající je spojen
anebo je obsazená a ke spojení hovoru nedojde. Je to nejjednodušší markovský model fronty,
proto si u něj podrobně popíšeme postup odvození vzorců pro rozdělení pravděpodobností
stavů i jejich časové změny, tzv. dynamiky systému. Zkoumat pravděpodobnosti v čase pi(t)
je u komplikovanějších stochastických procesů mnohdy nemožné, protože to vyžaduje
výpočet exponenciály exp(Qt) od matice intenzit Q, jejíž velikost je rovna počtu stavů.
Obr. 6.2
Na Obr. 6.2 je stochastická Petriho síť (SPN) systému M/M/1/0. Zpoždění
časovaného přechodu T1 je exponenciální náhodná veličina s intenzitou .
Stručně budeme zapisovat T1~exp(). Časovaný přechod T2 generuje dobu
obsluhy zákazníka. T2~exp(). Systém má dva stavy, buď je v lince P1
zákazník, linka pracuje a žádný další zákazník nemůže vstoupit do systému,
nebo je systém prázdný. Množina ohodnocení má tedy dva prvky M0=(0),
M1=(1). Stavový graf je izomorfní s grafem diferenciálních přechodů CTMC.
Vektor ohodnocení má jednu složku, protože Petriho síť má jedno
místo. Odpálením přechodu T1 přejdeme z počátečního ohodnocení
M0=(0) do ohodnocení M1=(1).
Obr. 6.3– Stavový graf
Matice intenzit je tvořena intenzitami přechodů T1, T2
Q
− =
−
Protože systém je jednoduchý, je možné zjistit i matici přechodu ( )( )( ) expP t Q t= a zkoumat
změnu pravděpodobnosti p(t) =p(0)P
:= P
+ e( )−( ) + t
+ −
( ) − e( )−( ) + t
1
+
− ( ) − e
( )−( ) + t1
+
+ e( )−( ) + t
+ Například, pokud v čase t=0 s jistotou víme, že je systém prázdný, tedy p(0) = (1,0),
bude pravděpodobnost prázdného systému začínat v jedničce a postupně konvergovat ke své
ustálené pravděpodobnosti (červená funkce na obrázku 6.4)
11
Obr. 6.4– Pravděpodobnost p0(t) pro různé počáteční stavy X = 0 červeně, X = 1 zeleně
Vyzkoušejte si nakreslit funkci p0(t)i pro jiné počáteční rozložení, např.(0,5; 0,5). Zjistíte, že
ať je počáteční stav jakýkoliv, vždy pravděpodobnost prázdného stavu konverguje k hodnotě
0
1lim ( )
1tp t
→= =
+ +
Podobně, pravděpodobnost, že linka je obsazena konverguje k doplňkové hodnotě.
1lim ( )1t
p t
→= =
+ +
Stabilizovaný stav. Pro tento systém jsme právě dokázali, že je stabilizovaný (ustálený),
ostatní markovské fronty mají větší matici intenzit i přechodu. Odkazuji na větu z teorie teorie
grafů, že pokud je stavový graf procesu silně souvislý bez absorpčních stavů, je systém
stabilizovaný.
Pokud víme, že systém stabilizovaný je, můžeme jeho limitní hodnoty vypočítat jednoduše ze
soustavy lineárních rovnic daných maticí intenzit Q. Pro stabilizovaný stav ( )0 1,p p p= platí
0 1; 1pQ o p p= + =
Řešením soustavy lineárních rovnic je vektor ,p
=
+ + . Tedy pravděpodobnost, že
je systém prázdný a zákazník je přijat do obsluhy 0p
=
+, doplňkem je pravděpodobnost,
že je linka obsazená a příchozí zákazník je odmítnut 1p
=
+. Z pravděpodobností stavů
systému odvodíme další sledované charakteristiky systému.
Pravděpodobnost odmítnutí nového požadavku ............................. p1
Pravděpodobnost přijetí požadavku................................................ p0
Absolutní kapacita – počet obsloužených za jednotku času ........... .p0
Vytíženost systému ......................................................................... p1.100%
Průměrná doba čekání .................................................................... 0
Střední hodnota počtu požadavků v systému ................................. [ ]E X
=
+
Úloha: Telefonní aparát v informačním středisku zaznamenává volání v průměru každých 12
minut, přičemž hovor trvá v průměru 6 min. Za předpokladu elementárního vstupního proudu
a exponenciálního času doby obsluhy je třeba určit:
• Jaké procento volání bude odbaveno (relativní kapacita)
12
• Kolik hovorů se uskuteční za hodinu (absolutní kapacita)
• Pravděpodobnost odmítnutí
Řešení: Za časovou jednotku zvolíme hodinu, pak 0,2 5; 10hod = = = . Dosazením
do vzorců pro ustálené pravděpodobnosti dostáváme
0 1
2 1;
3 3p p
= = = =
+ +.
Zákazník je odmítnut, pokud je systém plný, tedy s pravděpodobností p1. Relativní kapacita je
dána pravděpodobností, že bude zákazník přijat do obsluhy p0. Za hodinu přijde 5 zákazníků,
ale jen 2/3 z nich bude obslouženo, tedy absolutní kapacita je přibližně 3,33 zákazníků.
Úloha: Low speed CAN sběrnice z asistenčních systémů automobilu zpracovává data ze 4
řídících jednotek, každá řídící jednotka vysílá zprávu průměrně jednou za 20 ms. Přenesení
datového rámce u low speed sběrnice trvá přibližne 2 ms. Určete procento ztracených zpráv,
nemá-li sběrnice vyrovnávací paměť.
Řešení: Kendallova klasifikace systému: M/M/1/0, intenzita vstupu = 4/20, intenzita
obsluhy = 0,5, poměr intenzit . Pravděpodobnost ztráty datové zprávy
1
0.4 20.285
1 1.4 7p
= = = =
+
6.6.2 M/M/1/r
Číslem r označme počet zákazníků, kteří můžou stát ve frontě. Stav systému je definován jako
celkový počet zákazníků v systému. Pro plně obsazený systém máme jednoho zákazníka
v lince a r zákazníků ve frontě, celkem 2+r stavy. Každý stav je prezentován uzlem grafu
diferenciálních přechodů. Za krátký časový okamžik t s nezanedbatelnou pravděpodobností
t přijde jeden zákazník, nebo jeden zákazník odejde s pravděpodobností t. Existují tedy
jen hrany mezi sousedními uzly a smyčky pro setrvání v daném stavu.
Obr. 6.5 - Graf diferenciálních přechodů pro M/M/1/r
Matice intenzit Q je čtvercová, nad diagonálou jsou koeficienty pro příchod, pod diagonálou
jsou koeficienty pro odchod. Diagonální prvky jsou doplněny tak, aby byl řádkový součet 0.
0 ...
...
0 ...
...
0 0
Q
−
− − = − − −
13
Řešením soustavy p Q o = dostáváme r+2 lineárních rovnic pro neznámé p1, p2, …, pr+1.
0 1
0 1 2
1 1
1
0
( ) 0
...
( ) 0
0
r r r
r r
p p
p p p
p p p
p p
− +
+
− + =
− + + =
− + + =
− =
Když si pozorně prohlédnete rovnice ustálených pravděpodobností, vidíte, že mají stejnou
strukturu, liší se vždy jen zvýšeným indexem. Zavedeme substituce
1; 0k k kz p p k r += − + =
Dosazením okamžitě dostáváme, že všechny nové proměnné zk jsou rovny 0. Odtud
1 1 ; 0k k k kp p p p k r
+ += = =
Ve skutečnosti máme ještě o jednu rovnici navíc, nesmíme zapomenout na tzv. normalizační
podmínku, že součet všech pravděpodobností je jedna. Díky ní vypočítáme p0.
( )1
2 1
0 0 0 0
0 1 2
0
; ; ; ...;
1 1
1
k k
r
r ri
i
p p
p p p p p
p
+
+
+ +
=
=
=
−= =
−
Pro aplikaci právě odvozených vzorců si stačí pamatovat rekurentní vztah. Povšimněte
si, že všechny pk jsou vyjádřeny v závislosti na p0. Tak tomu bude ve všech markovských
frontách. Výpočet provádíme ve dvou krocích, nejprve vypočítáme koeficienty 2 11; ; ; ...; r + , převrácená hodnota jejich součtu je pravděpodobnost p0. Ve druhém kroku
vypočítáme zbývající pravděpodobnosti 0
k
kp p = . Pro kontrolu správného postupu použijte
kalkulačku na webskriptu, kapitola M/M/n/r. Applet zobrazí i pomocné koeficienty výpočtu,
aby vám usnadnil nalézt případnou chybu.
Mezi nejdůležitější charakteristiky systému sledované provozovatelem patří
pravděpodobnost ztráty zákazníka. Ta je dána pravděpodobností pr+1, že je fronta plně
obsazena. Je zřejmé, že čím větší je kapacita fronty, tím menší je pravděpodobnost odmítnutí
zákazníka. Překvapující je exponenciální závislost, s níž tato pravděpodobnost rychle klesá.
V případě M/M/1/r nemá smysl se snažit odvodit vzorce pro průměrnou délku fronty
E[F] nebo pro průměrný počet zákazníků v systému E[X]. Vzorce jsou komplikovanější než
přímý výpočet z definice střední hodnoty. Průměrné ztrátové časy Wx a WF získáme z Littleho
vzorců.
Z rozdělení pravděpodobnosti počtu zákazníků můžeme odvodit případné další náhodné
veličiny, jako jsou počet zákazníku ve frontě (F = X – 1), nebo počet pracujících linek S.
Využití systému neboli provozní zatížení je dáno pravděpodobností (1 – p0), že linka pracuje.
14
i Počet zákaz. P(X=i) Délka fronty P(F=i) Počet v obsluze P(S=i)
0 p0 p0 + p1 p0
1 p1 p2 p1 + p2 + …+ pr+1
…
r pr pr+1 …
r+1 pr+1 … …
Příklad: Telefonní aparát v informačním středisku zaznamenává volání v průměru každých 12
minut, přičemž hovor trvá v průměru 6 min. Je-li linka obsazena, můžou na spojení čekat
maximálně 2 zákazníci. Určete:
• Kolik hovorů se uskuteční za hodinu (absolutní kapacita)
• Pravděpodobnost odmítnutí
Řešení: Za časovou jednotku zvolíme hodinu, pak 0,2 5; 10; 1/ 2hod = = = = . Pro
výpočet ustálených pravděpodobností si připravíme tabulku. Každý řadek slouží pro výpočet
jednoho stavu. My máme celkem čtyři stavy 0,1,2,3. V prvním sloupci budou koeficienty qk
ve tvaru 2 11; ; ; ...; r + , ve druhém pravděpodobnosti pk. Převrácená hodnota ze součtu
prvního slouce je p0. Zbývající pravděpodobnosti vypočítáme vynásobením p0.qk.
0
80 1
15
1 41
2 15
1 22
4 15
1 13
8 15
k k
kk p p =
Zákazník je odmítnut, pokud je systém plný, tedy s pravděpodobností p3 = 0,067.
Relativní kapacita je pravděpodobnost, že bude zákazník přijat do obsluhy 1 – p3 = 0,93.
Za hodinu přijde 5 zákazníků, ale jen 93,3% z nich bude obslouženo, tedy absolutní kapacita
je přibližně 4,67 zákazníků.
6.6.3 M/M/1/
Jednolinkový systém s neomezenou délkou fronty můžeme modelovat Petriho sítí na Chyba!
Nenalezen zdroj odkazů.. Zpoždění časovaného přechodu vstup je exponenciální náhodná
veličina s intenzitou , tj. vstup~exp(). Časovaný přechod „obsluha“ generuje dobu obsluhy
zákazníka. obsluha~exp(). Systém má nekonečně mnoho stavů, množina ohodnocení je
nekonečná ( ) ( ) ( ) 0 10 , 1 , ,iM M M i= = = . Stavový graf je izomorfní s grafem
diferenciálních přechodů příslušného CTMC.
15
Obr. 6.6 - Graf diferenciálních přechodů pro M/M/1/∞
Stacionární stav ( )0 1, ,p p p= získáme jako řešení homogenní soustavy lineárních rovnic
pQ o= , kde Q je matice intenzit.
0
0
0 0
Q
−
− − = − −
0 1
0 1 2
1 1
0
( ) 0
( ) 0k k k
p p
p p p
p p p
− +
− + =
− + + =
− + + =
Substituce 1, 0,1,k k kz p p k += − + = dává řešení 0 1 0z z= = = , tedy přejdeme –li
k původním neznámým pi, dostáváme jednoduchý rekurentní vztah
1k kp p
+ = .
Využijeme-li, že podíl intenzit vstupu a obsluhy je dle definice intenzita provozu
= ,
dostáváme vektor pravděpodobností stavů systému ve tvaru.
( )2
0 0 0 0; ; ; ; ;...kp p p p p =
Pravděpodobnost p0 vypočítáme z normalizační podmínky 1
1i
i
p
=
= .
Po dosazení má platit, že součet nekonečné geometrické řady je jedna, tj
0
0
1i
i
p
=
= .
V případě všech nekonečných systémů musíme zkontrolovat, že fronta neporoste nade
všechny meze. K takovému závěru není třeba zdlouhavého odvozování, je zřejmé, že pokud
průměrně bude přicházet více zákazníků, než kolik je obsluha schopna zvládnout, fronta bude
s časem narůstat. Na rozdíl od reálné situace zde máme i nekonečně trpělivé zákazníky, kteří
ze systémy nikdy neodejdou, ať je fronta sebedelší.
Geometrická řada konverguje jen pro 1 . Pro intenzitu provozu menší než jedna je
systém stabilizovaný a pro jeho ustálený stavový vektor jsme právě odvodili nejznámější
vzorec teorie front.
(1 ) , pro 1k
kp
= − =
0 1 k … …
t t t
t t t t
t
1 t−
( )1 t − + ( )1 t − +
16
Pro intenzity provozu 1 je systém nestabilní, tedy nelze určit stabilizovaný stav a
naše úvahy je nutné omezit jen na možné zkoumání dynamiky procesu. Můžeme si klást
otázku, za jak dlouho bude fronta delší než 50, jaká bude průměrná doba čekání za dvě hodiny
apod.
Na obrázku níže jsou zobrazeny pravděpodobnosti p0, p1, …, p5 pro různé hodnoty
intenzit. Čím více se intenzita provozu blíží 1, tím pomaleji funkce pi , i = 1… 5 klesá.
Rozdělení pravděpodobnosti počtu zákazníků v systému
0
0,2
0,4
0,6
počet zákazníků
pra
vd
ěp
od
ob
no
st
0,4
0,9
0,99
0,4 0,6 0,24 0,096 0,0384 0,01536 0,006144
0,9 0,1 0,09 0,081 0,0729 0,06561 0,059049
0,99 0,01 0,0099 0,009801 0,009703 0,009606 0,0095099
p0 p1 p2 p3 p4 p5
Obr. 6.7- Stabilizovaný stav M/M/1/ pro různé intenzity provozu
Ze stabilizovaného vektoru jednoduše odvodíme základní charakteristiky systému M/M/1/.
Při výpočtech čekacích dob využijeme Littleho vzorce.
Střední hodnota počtu požadavků v systému ......... [ ]1
E X
= =
− −
Rozptyl počtu zákazníků v systému ....................... ( )
2[ ]
1D X
=
−
Průměrný počet zákazníků ve frontě ...................... 2
[ ]1
E F
=
−
Využití linky .......................................................... %
Průměrná čekací doba ............................................ ( )
[ ][ ]F
E FE W
= = =
− −
6.6.4 M/M/2/
Pro vícelinkové neomezené systémy bude mít Petriho síť více míst, tím pádem bude mít
stochastický proces více stavů a vzorce pro výpočet stabilizovaného stavu (pokud systém je
stabilní) budou komplikovanější. Podrobně budeme postupovat u dvoulinkového systému,
zobecnění pro n linek je pak už jen rutinní záležitost. Na Obr. 6.8 je Petriho síť GSPN
systému M/M/2/. Síť má dva typy přechodů – okamžité T1, T2 a časované T0~exp(),
T3~exp(), T4~exp(). Počáteční ohodnocení ( )0 0,0,0M = je skutečným stavem procesu,
ale všechny stavy typu ( ) ( ),0,1 , ,1,0 , 1k k k = jsou fiktivní. Síť popisuje
semimarkovovský proces, ale v našem případě bude jednoduché psát stavový graf jen pro
skutečné stavy.
17
Obr. 6.8-GSPN
Obr. 6.9-Stavový graf
Matice intenzit pro pořadí ohodnocení ( )0 0,0,0M = , ( )1 0,1,0M = , ( )1* 0,0,1M = ,
( )2 0,1,1M = , ( )3 1,1,1M = , ( )4 2,1,1M = , … ( )2,1,1kM k= − ,…
( )
( )
( )
( )
1 1
2 2
1 2 1 2
1 2 1 2
0 02 2
0 0
0 0
0 0
0 0 0
Q
−
− +
− +=
+ − + + + − + +
dává stacionární stav ( )0 1 1* 2 3, , , , ,p p p p p p= , který je řešením soustavy rovnic
( )
( )
( )
0 1 1 2 1*
0 1 1
0 2 1* 1 2 2
1 1* 1 2 2 1 2 3
1 2 1 1 2 2
0
( ) 02
( ) 02
( ) 0
( ) 0 2, 3...k k k
p p p
p p
p p p
p p p p
p p p k
+ +
− + + =
− + =
− + + + =
+ − + + + + =
− + + + + = =
Od páté rovnice soustavy už je struktura rovnic jednotná a dává řešení
2
22
k
kp p
−
=
z prvních čtyř rovnic můžeme vyjádřit 1 1* 2, ,p p p jako funkce p0. Pravděpodobnost prázdného
systémy vypočítáme nakonec z normalizační podmínky0
1i
i
p
=
= . Explicitní vzorce jsou
nepřehledné a nemá význam je na tomto místě uvádět. Pokusíme se popis systém zjednodušit.
Obslužnou linku obsazují zákazníci náhodně, zřejmě nás nezajímá pravděpodobnost, že bude
obsazena 1. linka, nebo 2. linka. Většinou se spokojíme s ohodnocením stavu systému počtem
zákazníků v systému. Potom splynou stavy ( )1 0,1,0M = a ( )1* 0,0,1M = a matice intenzit
odvozená z grafu diferenciálních přechodů Obr. 6.10 bude ve tvaru
18
( )
( )
( )
0 0
0
0 2 2
0 0 2 2
Q
−
− + = − +
− +
.
Vzorce pro pravděpodobnosti stavů ve stabilizovaném stavu ( )0 1 2 3, , , ,p p p p p= vyjádřené
v závislosti na p0. 2
01 0 2
0
2
2
2;
,2
pro 2
22
,2
k
k
k
k k
pp p
pp
p
k pp
−
−
= =
=
=
.
Nakonec vypočítáme z podmínky0
1i
i
p
=
= pravděpodobnost prázdného systému p0.
11
0
0 2
1 12
! 2
k kn
kk k
pk
−−
= =
= +
Podmínka stabilizace systému 2 1 22
=
Obr. 6.10 – Graf diferenciálních přechodů
6.6.5 M/M/n/
Přístup z předchozího příkladu můžeme zobecnit pro n linek. Výsledné vzorce nebudeme
odvozovat, protože postup je analogický postupu pro M/M/2/. Z grafu diferenciálních
přechodů systému M/M/ n/
Odvodíme vektor stabilizovaného stavu ( )0 1, ,..., ,np p p p= :
0 1 2 3 …
t
t t2
t t
t2
0 1 n+1 … 2 n …
t
t t2 n t n t n t
t t tt
19
1
0
0
0
1
1
0
0 ,
; ,
1 1
! !
;!
!
k
k
k
k k
kk
k n
k n
k knn
kk n
n
k
pp
k
p pn
np
pk n p
k
pn k p
n n
k n n
−
−
−−
= =
−
=
=
= +
=
=
Podmínka stabilizace systému 1n nn
= .
Výpočet je komplikovaný tím, že máme dva různé vzorce pro výpočet koeficientů. Zvlášť,
když pro stavy 0…n, kdy s přicházejícími zákazníky zapojujeme jednotlivé linky a zvyšujeme
pravděpodobnost ukončení obsluhy, a zvlášť pro zákazníky přicházející do fronty, protože ti
nám již intenzitu obsluhy neovlivňují. Je třeba udělat si ve výpočtech pořádek.
Pro aplikaci právě odvozených vzorců je nejpřehlednější použití rekurentního vztahu.
Porovnáme-li jejich zápisy, snadno odhalíme původ komplikovaných vzorců výše.
( )1
1
pro 0,1, , 11
pro 1, ,
k k
k k
p p k nk
p p k n nn
+
+
= = −+
= = −
Opět platí, že všechny pk jsou vyjádřeny v závislosti na p0. V prvním sloupci tabulky
zvlášť vypočítáme koeficienty pro stavy 0…n: ( )
0 11; pro 0,1, , 11
k kq q q k nk
+= = = −
+
a pro zbývajících nekonečně stavů: 1 pro 1, ,k kq q k n nn
+ = = −
Převrácená hodnota součtu všech koeficientů je pravděpodobnost p0. Jeden čitatel je
součet nekonečné geometrické řady. Buď použijeme vzorec, nebo se uchýlíme k přibližnému
odhadu. Vypočítáme dostatečné množství koeficientů, ty se s vyššími stavy zmenšují, až
prohlásíme další členy za zanedbatelné.
1
1
0
11
0
0
1 1 1
!!
! !
n
kn
k
k knn
kk k n
np
k n n
n
kn n
−−
= =
−
−
=
= + =
+ −
Ve druhém kroku vypočítáme zbývající pravděpodobnosti 0k kp p q= . Pro kontrolu
správného postupu použijte kalkulačku na webskriptu, kapitola M/M/n/r. Applet zobrazí i
pomocné koeficienty výpočtu, aby vám usnadnil nalézt případnou chybu.
Sledované charakteristiky systému
U nekonečných systému jsou pro nás vzorce důležitější, protože jinak jsme odkázáni na
přibližné odhady zanedbáním nekonečně mnoha malých hodnot. Pro M/M/n/∞ stojí za to si
zapsat průměrný počet pracujících linek E[S] a z něj odvozené využití systému.
20
Průměrný počet obsazených linek
1
0 0 0
0 1 1 1 0
[ ]! ! ! !
kk k n k k nn n n
k k
k k n k k n k k n
n nE S kp np p k p n p
k n k n n
− −
= = + = = + = =
= + = + = + = =
Využití systému
[ ]n
E S
n n n
= = =
Střední počet zákazníků ve frontě:
( )2
0 0 0
[ ]1
k
k n nn k n n n n
k k k n
pE F kp k p p k kde
n n
+
= = =
= = = = =
−
Úloha: K 5 pokladnám pro vjezd na dálnici přijíždí průměrně 15 vozidel za minutu. Střední
doba obsluhy je 10 sekund. Určete:
- průměrnou délku fronty,
- průměrný prostoj vozidla způsobený placením mýtného,
- pst, že náhodné vozidlo bude čekat na obsluhu
- vytížení systému
Řešení: Poměr intenzit 5
2
= = zaručuje pro n = 5 ustálený systém, a tedy má smysl
pokračovat. V tabulce vypočítáme zvlášť koeficienty pro stavy 0–5 a zvlášť pro následujících
6–15 stavů. Zbývající koeficienty jsou tak malé, že jsem se rozhodla je zanedbat. Jsou
vloženy řádky pro částečné součty sloupců (červeně).
Součet nekonečně členů q6 + q7 +, … = 1,628 je vypočítán vzorcem, přibližný součet členů q6
+ q7 +, …+ q15 je jenom 0,813.
k qk pk ES EF EX
0 1,000 0,0752 0,000 0,000 0,000
1 2,500 0,1880 0,188 0,000 0,188
2 3,125 0,2350 0,470 0,000 0,470
3 2,604 0,1958 0,587 0,000 0,587
4 1,628 0,1224 0,490 0,000 0,490
5 0,814 0,0612 0,306 0,000 0,306
11,671 0,878 2,041 2,041
6 0,407 0,0306 0,031 0,184
7 0,203 0,0153 0,038 0,107
8 0,102 0,0076 0,024 0,061
9 0,051 0,0038 0,010 0,034
10 0,025 0,0019 0,003 0,019
11 0,013 0,0010 0,001 0,011
12 0,006 0,0005 0,006 0,006
13 0,003 0,0002 0,000 0,003
14 0,002 0,0001 0,000 0,002
15 0,001 0,0001 0,000 0,001
S 1,628 0,0611 0,306 0,112 0,427
přibl. výsledky 0,9387 2,347 0,112 2,468
Náhodná veličina představující délku fronty má jiné rozdělení než celkový počet zákazníků
v systému. Fronta je prázdná s pravděpodobností p0 + p1 + … + p5, P(F = 1) = p6, atd.
Při výpočtu průměrná délky fronty ve sloupci EF vypočítáme nenulové členy sumy jako
součin (k–5).pk pro k > 5. Střední délka fronty je zde přibližně odhadnuta součtem 0,112,
skutečná hodnota se liší až na 4. des. místě. Zbývající hodnoty jistě sami zvládnete.
21
6.7 Výpočetní nástroje markovských systémů
Na trhu existuje celá řada online kalkulaček pro analýzu markovských front. Zatím se mi
nepodařilo najít jedinou, která by počítala alespoň přibližně správné výpočty, Tak nezbývá,
než doporučit online kalkulačku zakomponovanou do webskripta v kapitolách 7–10.
Neposkytuje všechny důležité sledované charakteristiky systému, pracuje jen s omezeným
počtem linek a vypisuje jen 12 hodnot ustáleného pravděpodobnostního rozdělení. Slouží
studentům ke kontrole, že jsou jejich procedury naprogramované správně, že pochopili
počítání rozdělení pravděpodobnosti počtu zákazníků v příslušném systému.
Všechny vzorce je velmi jednoduché naprogramovat v jakémkoliv jazyce.
Ukázku programového kódu v Matlabu můžete stáhnout jako m-file ze stránek
předmětu THO.
Ačkoliv tabulková metoda ručního výpočtu jen s pomocí kalkulačky přímo vybízí
k použití Excelu, musíme být obezřetní a zkontrolovat, zda jsou splněny podmínky
pro stabilní systém a zda je počet vypočítávaných hodnot přizpůsoben počtu stavů
dle příslušného zadání. Samotné zadávání vztahů v rekurentním tvaru je
bezproblémové, sešity pro jednolinkové systémy zvládnete připravit během několika minut.
U vícelinkových systémů je problém s různými vzorci pro prvních n stavů, kdy postupně
zvyšujeme intenzitu obsluhy a pro další stavy, kdy už přicházející zákazníci jen sedí ve frontě
a žádnou další linku nezapojujeme, protože ji prostě už nemáme. Při opětovném použití sešitu
pro jiný počet linek musíme změnit rozhraní mezi hodnotami počítanými různými vzorci.
Z profesionálních freeware doporučujeme Queueing Toolpack QTP. Má
naprogramované jedno i vícelinkové markovské systémy a umí vypočítat většinu důležitých
charakteristik.
Operativa: Queuing Theory, ALVAREZ technologies
Velmi jednoduchá aplikace vytvořená v roce 2017 pro operační systém Android
programátorem daniel@alvarez.tech. Ovládání je intuitivní, výpočty jsou rychlé, ale
ne ve všech systémech spolehlivé. Oproti frontovým systémům zkoumaným v předmětu
Teorie hromadné obsluhy vyhodnocuje navíc i systém s omezenou populací M/M/1/C a
M/M/S/C.
Na obrázku vlevo je úvodní menu s výběrem systému. Lze se
spolehnout na výsledky v modelech M/N/1 a M/M/S
s nekonečnou frontou. Písmeno S zde označuje počet linek
(Service). Aplikace vrací ustálené rozdělení pravděpodobnosti,
průměrný počet jednotek v systému i ve frontě, průměrnou dobu
čekání ve frontě a využití systému (Find the systém is busy).
Bohužel, už nekontroluje, zda systém stabilní je. I pokud
vstupuje průměrně více zákazníků, než kolik jsou schopny linky
obsloužit, dostáváme (nesmyslné) výsledky. Varovat nás může
jen závorka okolo čísel.
M/M/1/K – jednolinkový systém s omezenou frontou M/M/1/r.
Zadáváme pouze tři parametry intenzitu vstupu , intenzitu
obsluhy a celkový počet jednotek v systému K = 1+ r.
Bohužel, aplikace dává správné výsledky jen pro a vypočítá
i pravděpodobnosti neexistujících stavů. Dalším omezením je, že
celkový počet zákazníků nesmí být větší než 7.
M/M/S/K – Systém má S linek a maximálně K zákazníků. Aplikace vrací jen
22
pravděpodobnost p0, že je systém prázdný. Vzpomenete-li ale, jak pravděpodobnosti u tohoto
nejzáludnějšího systému počítáme, není to málo. Druhá vypočítaná hodnota v rozporu se
svým označením Find the systém is busy žádný význam nemá. U všech ostatních systému
ano, zde je přiřazení chybné.
Situace na trhu se vyvíjí velmi rychle, s rozvojem digitalizace výuky se dá očekávat, že další
aplikace přibydou. Pokud něco objevíte, prosím, dejte mi vědět (voracova@fd.cvut.cz).
Recommended