Univerzita Jana Evangelisty Purkynˇe v Ústí nad Labem Pˇrírodovˇedecká fakulta
Poˇcítaˇcová simulace a analýza vybraných frontových systému˚ ˇ BAKALÁ RSKÁ PRÁCE Vypracovala: Markéta Temkoviˇcová Vedoucí práce: RNDr. Jiˇrí Škvor, Ph.D.
Studijní program: Aplikovaná informatika Studijní obor: Informaˇcní systémy
Ú STÍ NAD L ABEM 2014
zde vložte zadání!!!
Prohlášení Prohlašuji, že jsem tuto bakaláˇrskou práci vypracovala samostatnˇe a použila jen pramenu, ˚ které cituji a uvádím v pˇriloženém seznamu literatury. Byla jsem seznámena s tím, že se na moji práci vztahují práva a povinnosti vyplývající ze zákona c. 121/2000 Sb., ve znˇení zákona c. 81/2005 Sb., autorský zákon, zejména se skuteˇcností, že Univerzita Jana Evangelisty Purkynˇe v Ústí nad Labem má právo na uzavˇrení licenˇcní smlouvy o užití této práce jako školního díla podle § 60 odst. 1 autorského zákona, a s tím, že pokud dojde k užití této práce mnou nebo bude poskytnuta licence o užití jinému subjektu, je Univerzita Jana Evangelisty Purkynˇe v Ústí nad Labem oprávnˇena ode mne požadovat pˇrimˇeˇrený pˇríspˇevek na úhradu nákladu, ˚ které na vytvoˇrení díla vynaložila, a to podle okolností až do jejich skuteˇcné výše.
V Teplicích dne 30. dubna 2014
Podpis: . . . . . . . . . . . . . . . . . .
Podˇekování Na tomto místˇe bych ráda podˇekovala vedoucímu práce RNDr. Jiˇrímu Škvorovi, Ph.D. za neocenitelné rady, vˇecné pˇripomínky, nápady, trpˇelivost a pomoc pˇri tvorbˇe této bakaláˇrské práce. Dále bych také chtˇela podˇekovat svým kamarádum ˚ za jejich rady pˇri ˇrešení nˇekterých problému, ˚ které se vyskytly bˇehem zpracovávání této práce.
Abstrakt Tématem pˇredložené práce jsou vybrané kapitoly z teorie front, která nachází uplatnˇení pˇri ˇrešení ˇrady manažerských i technických úloh. Díky technickému pokroku se poˇcítacˇ ové simulace frontových systému ˚ stávají stále vyhledávanˇejším nástrojem pro tyto typy úloh. V úvodní cˇ ásti práce je prezentována rešerše systému ˚ hromadné obsluhy a existujícího programového vybavení. V praktické cˇ ásti práce jsou pˇredstaveny vybrané modely, jejich programová implementace a statistická analýza simulaˇcních dat. Porovnání tˇechto dat s teoretickým pˇredpokladem poukázalo na správnou funkˇcnost aplikací pˇriložených na CD. Za hlavní praktický pˇrínos práce lze pokládat pˇrípadovou studii provedenou pro poboˇcku ˇ Ceské pošty v Ústí nad Labem. Na základˇe analýzy poskytnutých dat bylo provedeno zhodnocení celého systému vˇcetnˇe jeho nedostatku. ˚ Klíˇcová slova: Markovovy ˇretˇezce, stochastické modelování, systémy hromadné obsluhy, Kendallova klasifikace
Abstract The thesis is focused on selected chapters from queuing theory, which can be applied for solving various managerial or technical problems. Due to the technological progress, computer simulations of queueing systems are constantly becoming sought-after tool for these tasks. The research of queueing systems and existing software is presented in the introductory part of the thesis. The practical part introduces selected models, their software implementations and the statistical analysis of simulation data. The comparison between these data and theoretical assumptions pointed to the correct functionality of applications on the enclosed CD. As the main contribution of the thesis can be considered the case study performed for the branch of Czech Post in Ústí nad Labem. Based on the analysis of the data provided, an evaluation of the entire system was executed, including its imperfections. Key words: Markov chains, stochastic modelling, queueing systems, Kendall classification
Obsah Úvod
13
ˇ 1. Teoretická cást
15
1.1. 1.2. 1.3. 1.4. 1.5.
Stochastické modely . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Markovovy ˇretˇezce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Poissonuv ˚ proces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Poissonovo a exponenciální rozdˇelení pravdˇepodobnosti . . . . . . . . . . . . Statistická analýza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.1. Popisná statistika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.2. Matematická statistika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6. Systémy hromadné obsluhy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6.1. Charakteristika SHO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6.2. Kendallova klasifikace SHO . . . . . . . . . . . . . . . . . . . . . . . . . . 1.7. Jednotlivé modely SHO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.7.1. Exponenciální model jednoduché obsluhy M/M/1 . . . . . . . . . . . . . 1.7.2. Exponenciální model vícenásobné obsluhy M/M/c . . . . . . . . . . . . 1.7.3. Model M/D/1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.7.4. Model D/M/1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.7.5. Model jednoduché obsluhy s omezenou kapacitou M/M/1/K . . . . . . 1.7.6. Uzavˇrený exponenciální model jednoduché obsluhy M/M/1/./N . . . . . 1.7.7. Exponenciální model vícenás. obsluhy s omezenou kapacitou M/M/c/K 1.8. Optimalizace SHO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.9. Generování náhodných cˇ ísel a simulace metodou Monte Carlo . . . . . . . . . 1.10.Simulaˇcní software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.10.1. Simul8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.10.2. Witness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.10.3. Arena . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.10.4. Free software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
2. Simulace vybraných modelu˚ systému˚ hromadné obsluhy 2.1. 2.2. 2.3. 2.4.
Simulace modelu M /M /1 Simulace modelu M /D/1 Simulace modelu D/M /1 Simulace modelu M /M /c
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
11
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
15 16 17 18 19 19 19 20 21 22 24 24 25 26 26 27 28 29 30 31 32 33 33 33 38
41 . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
41 43 44 45
Obsah 2.5. Simulace modelu M /M /1/K . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.6. Simulace modelu M /M /c/K . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.7. Simulace modelu M /M /1/./N . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3. Pˇrípadová studie
55
3.1. Analýza pˇríchodu zákazníku ˚ . . . . . . . . . . . . . . 3.1.1. Test dobré shody na Poissonovo rozložení . . 3.1.2. Test dobré shody na exponenciální rozdˇelení 3.1.3. Další hypotézy . . . . . . . . . . . . . . . . . . . 3.2. Analýza využití služeb . . . . . . . . . . . . . . . . . . 3.3. Analýza obsluhy . . . . . . . . . . . . . . . . . . . . . . 3.3.1. Test rozdˇelení doby obsluhy . . . . . . . . . . . ˇ 3.3.2. Cekání ve frontˇe . . . . . . . . . . . . . . . . . . 3.4. Analýza pˇrepážek . . . . . . . . . . . . . . . . . . . . . 3.5. Výsledky analýzy . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
57 57 61 63 65 67 68 69 71 72
ˇ 4. Záver
77
Seznam obrázku˚
81
Seznam tabulek
84
A. Obsah pˇriloženého CD
85
12
Úvod Tématem této bakaláˇrské práce je analýza a modelování systému hromadné obsluhy. Se sysˇ témy hromadné obsluhy se setkáváme v každodenním životˇe neustále. Cekáme v bankách, na úˇradech nebo na svˇetelných kˇrižovatkách. Každý z nás si nˇekdy položil otázku, proˇc v tom supermarketu mají tolik pokladen, ale obsluhuje jen cˇ ást z nich. Pro zákazníka by bylo pˇreci výhodnˇejší, kdyby obsluhovalo více pokladen, nejlépe všechny. To však nemusí platit pro provozovatele, který má na situaci zcela jiný pohled. Pro nˇej je nejduležitˇ ˚ ejší, aby mˇel co nejvˇetší zisky, tedy co nejvˇetší poˇcet obsloužených zákazníku, ˚ ale zároven ˇ se snaží dostat provozní náklady na minimum. Proto je nutné systémy hromadné obsluhy navrhnout tak, aby vyhovoval obˇema stranám. U jednoduchých modelu ˚ mužeme ˚ využívat i analytické ˇrešení. To spoˇcívá v tom, že na základˇe známých vstupních parametru ˚ modelu odhadneme pomocí teorie pravdˇepodobnosti jeho charakteristiky, které nás zajímají (napˇr. prumˇ ˚ ernou cˇ ekací dobu ve frontˇe). Pˇri analýze chování složitˇejších systému ˚ se neobejdeme bez simulace. V simulaˇcních modelech mužeme ˚ zkoumat, jak se systém bude v cˇ ase vyvíjet, a lze tak navrhnout optimální ˇrešení bez potˇreby testovat chod systému v reálném experimentu. Teoreticky se touto problematikou zabývá teorie front. Jako cíle práce si klademe následující body: • provést rešerši modelu ˚ systému ˚ hromadné obsluhy • vybrané modely naprogramovat • testovat funkˇcnost tˇechto programu ˚ – analýzou vybraných charakteristik daných modelu ˚ ve smyslu porovnání simulaˇcních dat s analytickým ˇrešením – v rámci testování demonstrovat chování daných modelu ˚ prostˇrednictvím ˇrešení modelových úloh • realizovat pˇrípadovou studii pro reálný systém – provést statistickou analýzu dat – zhodnotit chování daného systému V úvodní cˇ ásti práce jsou pˇredstaveny základní poznatky o stochastických modelech, nˇekterých speciálních náhodných procesech a jsou v ní popsány obecné vlastnosti systému ˚
13
Úvod hromadné obsluhy. Dále jsou popsány jednotlivé modely se svými charakteristikami, je nastínˇena problematika optimalizace tˇechto systému ˚ a je provedena rešerše existujícího programového vybavení. V praktické cˇ ásti je práce zamˇeˇrena na simulaci jednotlivých modelu ˚ a jejich analýzu. V poslední cˇ ásti práce je provedena analýza cˇ asového pokrytí pˇrepážek ˇ a služeb spolu s hodnocením vyvolávacího systému na poboˇcce Ceské pošty, s.p., jakožto složitého systému hromadné obsluhy.
14
ˇ 1. Teoretická cást 1.1. Stochastické modely Stochastické modely jsou založeny na teorii pravdˇepodobnosti - rozsáhlé matematické disciplínˇe, jejíž hlavním cílem je studium zákonu ˚ popisujících náhodu. Základním pojmem, s kterým pracuje teorie pravdˇepodobnosti, je pravdˇepodobnostní prostor. Dalším duležitým ˚ pojmem je náhodná veliˇcina (též nazývaná náhodná promˇenná cˇ i stochastická veliˇcina). Se zkoumáním množiny tˇechto náhodných veliˇcin souvisí pojem náhodný proces. Obecnˇe lze náhodný proces definovat jako množinu náhodných veliˇcin, závislých na urˇcitém poˇctu parametru. ˚ [1]
ˇ Pravdepodobnostní prostor (Ω, A, P ) pˇredstavuje trojici pojmu˚ [1]: • Ω – neprázdná množina, tzv. prostor elementárních jevu ˚ • A – systém vytvoˇrený z podmnožin prostoru elementárních jevu ˚ Ω, tzv. systém náhodných jevu ˚ • P – normovaná míra definovaná na A, tzv. pravdˇepodobnostní míra (pravdˇepodobnost)
ˇ Náhodná velicina
X je veliˇcina [1], která muže ˚ obecnˇe nabývat více hodnot {x}, a to každou s nˇejakou pravdˇepodobností. Jakou hodnotu z {x} náhodná veliˇcina X bude mít, je ovlivnˇeno náhodnými vlivy.
Stochastický proces X = {X (t ), t ∈ T } je soubor náhodných veliˇcin na pravdˇepodobnostním prostoru (Ω, A, P ). Tedy pro každé t z indexové množiny T je X (t ) náhodná velicˇ ina. Obvykle t oznaˇcuje cˇ as. Každá realizace náhodného procesu X se nazývá trajektorie. X (t ) popisuje stav procesu v cˇ ase t . Stochastickým procesem mužeme ˚ obecnˇe rozumˇet posloupnost náhodných promˇenných. [2] Definiˇcní obor T definovaného stochastické procesu budeme chápat jako množinu cˇ asových okamžiku ˚ (ˇcasových indexu). ˚ Na základˇe charakteru této množiny lze rozdˇelit stochastické procesy na dva typy. Jestliže je množina T koneˇcnou nebo spoˇcetnou množinou, mlu-
15
1. Teoretická cˇ ást víme o tzv. stochastickém procesu s diskrétním cˇ asem. V pˇrípadˇe, kdy definiˇcní obor T je nespoˇcetnou množinou, se jedná o stochastické procesy se spojitým cˇ asem. Stochastické procesy mužeme ˚ rozdˇelit dle charakteru stavového prostoru, neboli oboru hodnot stochastického procesu, na dva typy. Stavovˇe diskrétním stochastickým procesem se rozumí proces, jehož obor hodnot je spoˇcetná (diskrétní) množina, v opaˇcném pˇrípadˇe se jedná o stavovˇe spojitý stochastický proces. [3]
ˇ 1.2. Markovovy rˇetezce Markovovy ˇretˇezce jsou speciálním pˇrípadem stochastických procesu. ˚ Markovovým ˇretˇezcem (nebo též markovský ˇretˇezec) nazveme takový stochastický proces, kde výskyt stavu v urcˇ itém cˇ asovém okamžiku t ∈ T je závislý pouze na pˇredchozím cˇ asovém okamžiku (t −1) ∈ T a zároven ˇ je množina T diskrétní. Jestliže je množina T spojitá, hovoˇrí se o Markovovˇe procesu se spojitým cˇ asem. Tyto dva procesy jsou užiteˇcným nástrojem pro zkoumání stochastických systému, ˚ tedy i pro systémy hromadné obsluhy.
Definice: [4] Uvažujme o stochastickém procesu {X n , n = 0, 1, 2, . . . } se spoˇcetnou nebo koneˇcnou množinou hodnot.1 Jestliže X n = i , pak se proces nachází ve stavu i v cˇ ase n. Pˇredpokládáme, že pokud je proces ve stavu i , tak se s urˇcitou pravdˇepodobností P i j dostane do stavu j :
P {X n+1 = j |X n = i , X n−1 = i n−1 , . . . , X 1 = i 1 , X 0 = i 0 } = P i j
(1.1)
pro všechny stavy i 0 , i 1 , . . . , i n−1 , i , j a pro všechna n ≥ 0. Takovýto stochastický proces nazveme Markovovým ˇretˇezcem. Hodnota P i j vyjadˇruje pravdˇepodobnost toho, že se proces ze stavu i dostane do stavu j . Vzhledem k tomu, že pravdˇepodobnosti jsou nezáporné a proces musí provést pˇrechod do nˇejakého stavu tak platí: P i j ≥ 0,
i , j ≥ 0;
∞ X
P i j = 1,
i = 0, 1, . . .
j =0
Poznámky: [1] • okamžik (n − 1), ve kterém nastal stav X n−1 = i a v nˇemž se stochastický proces ted’ nachází, pˇredstavuje souˇcasnost • okamžiky (n − 2), . . . , 1, ve kterých nastaly stavy X n−2 = k, . . . , X 1 a jimiž proces prošel, pˇredstavují minulost • okamžik 0 je okamžikem startu pro proces, a to z poˇcáteˇcního stavu X 0 = m, patˇrí do minulosti 1
Pokud není uvedeno jinak, rozumíme tím množinu nezáporných celých cˇ ísel.
16
1. Teoretická cˇ ást • okamžik n pˇredstavuje budoucnost pro proces, a to bezprostˇrednˇe následnou budoucnost, ve která nastane stav X n = j právˇe podle uvedené podmínˇené pravdˇepodobnosti • Markovov˚uv ˇretˇezec je diskrétní náhodná posloupnost, u které výskyt stavu v bezprostˇrednˇe následné budoucnosti dané podmínˇenou pravdˇepodobností závisí na stavu, ve kterém se tento stochastický proces nalézá v souˇcasnosti • podmínˇená pravdˇepodobnost výskytu stavu j v okamžiku n závisí jen na stavu, který se vyskytuje v okamžiku (n-1), neboli nezávisí na tom, ve kterých stavech proces byl v krocích pˇredcházejících – mužeme ˚ tedy ˇríct, že Markovovuv ˚ ˇretˇezec udává budoucnost jen na základˇe souˇcasnosti a nezná minulost • podmínˇená pravdˇepodobnost splnuje ˇ Markovovu podmínku (vlastnost), když platí: Je-li Markovovuv ˚ ˇretˇezec ve stavu n, tak jeho budoucí vývoj stavu ˚ je urˇcen pouze jeho okamžitým stavem n a nezáleží na tom, jak se do tohoto stavu dostal. [3]
1.3. Poissonuv ˚ proces Poissonuv ˚ proces je speciální stochastický proces, pˇri nˇemž jsou zmˇeny možné pouze pˇrechodem do nejblíže vyššího stavu. Za urˇcitých pˇredpokladu ˚ vyjadˇruje napˇríklad pravdˇepodobnost jistého poˇctu událostí, které se odehrají bˇehem fixního cˇ asového intervalu, známeli intenzitu výskytu ˚ tˇechto událostí a je-li tento poˇcet nezávislý na délce cˇ asového intervalu. V praxi vyvstává také pˇri zkoumání takzvaných poissonovských procesu ˚ a modeluje množství pˇrirozených jevu, ˚ které za urˇcitých pˇredpokladu ˚ nastávají vícekrát bˇehem jistého cˇ asového intervalu, nebo prostorového výseku. Muže ˚ se jednat napˇríklad o poˇcet klientu, ˚ kteˇrí pˇrijdou do banky za den nebo poˇcet pˇrístupu ˚ k webovému serveru za hodinu. [5]
Definice: Uvažujme událost, která se vyskytuje v krátkém cˇ ase (t ; t + ∆t ) (napˇr. poˇcet pˇrístupu ˚ k danému serveru za nˇejaký cˇ asový okamžik). V cˇ asovém intervalu (t ; t + ∆t ) nastane právˇe jedna událost s pravdˇepodobností λ∆t + o(∆t ) a více než jedna s pravdˇepodobností o(∆t ) nezávisle na t a na poˇctu událostí nastalých v intervalu (0; t ). Necht’ náhodná velicˇ ina X t je poˇcet výskytu urˇcitých událostí (napˇr. poˇcet pˇrístupu) ˚ v cˇ asovém intervalu (0; t ), pak {X t }t ≥0 je spoˇcetný Markovovuv ˚ proces s množinou stavu ˚ S = {0, 1, 2, . . . } a s poˇcáteˇcním rozdˇelením p 0 (0) = 1 a p i (0) = 0 pro stav i 6= 0. Poissonuv ˚ proces pˇredstavuje napˇríklad pˇríchody zákazníku ˚ do nˇejakého systému obsluhy, tok poruch zaˇrízení atd. [3] Pro Poissonuv ˚ proces jsou charakteristické následující znaky: 1. Nezávislost – poˇcet jevu ˚ pˇripadající na urˇcitý cˇ asový interval nezávisí na poˇctu jevu ˚ v libovolném jiném cˇ asovém intervalu.
17
1. Teoretická cˇ ást 2. Intenzity pravdˇepodobnosti pˇrechodu (nezávisí na cˇ ase) µi j = λ
pro
j = i +1
µi j = 0
pro
j 6= i , i + 1
µi j = −λ pro
(1.2)
j =i
3. Pˇri dostateˇcnˇe malém ∆ a konstantní hodnotˇe λ se pravdˇepodobnosti pˇrechodu ze stavu n do stavu n + 1 v intervalu (t ; t + ∆t ) rovnají p n,n+1 (t ; t + ∆t ) = λ∆t + o(∆t )
(1.3)
Pro pravdˇepodobnost setrvání ve stejném stavu v cˇ asovém intervalu (t ; t + ∆t ) platí p n,n (t ; t + ∆t ) = 1 − λ∆t + o(∆t )
(1.4)
Pravdˇepodobnost ostatních pˇrechodu ˚ je v porovnání s pˇredešlými zanedbatelná a je ∞ X
p i j (t + ∆t ) = o(∆t )
(1.5)
j =i +2
ˇ 1.4. Poissonovo a exponenciální rozdelení ˇ pravdepodobnosti ˇ Rekneme, že diskrétní náhodná veliˇcina X má Poissonovo rozdˇelení [6] s parametrem λ > 0, nabývá-li hodnot k = 0, 1, 2, . . . , každou z nich s pravdˇepodobností f k = P (X = k) = e −λ
λk k!
k = 0, 1, 2, . . .
(1.6)
Distribuˇcní funkce je F (x) =
X
fk
(1.7)
k<x
Stˇrední hodnota náhodné veliˇciny s Poissonovým rozdˇelením je E (x) = λ
(1.8)
D 2 (X ) = λ
(1.9)
a rozptyl D 2 (X ) je
Hustota spojité náhodné veliˇciny X s exponenciálním rozdˇelením s parametrem λ > 0, je dána pˇredpisem: 0 prox ≤ 0 f (x) = (1.10) λ · e −λ(x) prox > 0
18
1. Teoretická cˇ ást Distribuˇcní funkce F je dána vztahem
F (x) =
0
prox ≤ 0
1 − e −λ(x)
prox ≥ 0
(1.11)
Stˇrední hodnota je: E (X ) =
1 λ
(1.12)
D 2 (X ) =
1 λ2
(1.13)
rozptyl je pak roven
Tato dvˇe rozdˇelení se v systémech hromadné obsluhy vyskytují nejˇcastˇeji. Pro další podrobnosti a jiná rozdˇelení je možno nahlédnout napˇríklad do kapitoly 3 v [6].
1.5. Statistická analýza 1.5.1. Popisná statistika Popisná statistika se zabývá popisem stavu nebo vývojem hromadných jevu. ˚ Nejprve se vymezí soubor prvku, ˚ na nichž se bude uvažovaný jev zkoumat. Následnˇe se všechny prvky vyšetˇrí z hlediska studovaného jevu. Výsledky šetˇrení, vyjádˇreny pˇredevším cˇ íselným popisem, tvoˇrí obraz studovaného hromadného jevu vzhledem k vyšetˇrovanému souboru. Pro zpracování velkého množství dat je vhodné využívat nástroje popisné statistiky. Pˇredevším se jedná o grafy cˇ etností, histogramy, tabulky a cˇ íselné charakteristiky, napˇríklad prumˇ ˚ er a rozptyl. ˇ Cetnosti dˇelíme na absolutní a relativní. Absolutní cˇ etnosti udávají poˇcet výskytu ˚ daného prvku a jejich souˇcet je roven poˇctu dat. Relativní cˇ etnosti odkazují na relativní zastoupení prvku vzhledem k celkovému množství dat (tj. jedná se o cˇ etnosti prvku ˚ dˇelených poˇctem dat), suma tˇechto cˇ etností je rovna jedné. Histogram je sloupcový graf, kde se na vodorovné ose x vyskytují tzv. tˇrídy (intervaly), do kterých tˇrídíme data a na svislé ose y zachycuje cˇ etnosti výskytu ˚ prvku. ˚ Takovýto graf znázornuje ˇ rozložení dané veliˇciny.
1.5.2. Matematická statistika Máme-li statisticky zpracovat velký soubor existujících, resp. možných výsledku ˚ nˇejakého náhodného pokusu (pro nˇejž pˇrijmeme nˇejaký pravdˇepodobnostní model), zjistíme pomˇery
19
1. Teoretická cˇ ást jen v relativnˇe malé cˇ ásti souboru výsledku, ˚ tzv. výbˇerovém souboru, a získanou informaci zobecníme na puvodní ˚ velký soubor.[7] Jednou z duležitých ˚ statistik je výbˇerový prumˇ ˚ er: X¯ =
n 1 X · xi n i =1
Testování statistických hypotéz Pro srovnání získaných dat s pˇredpoklady slouží mimo jiné statistické hypotézy a jejich testování. Postup je následující: 1. stanovení nulové a alternativní hypotézy, 2. provedení náhodného výbˇeru, 3. zvolení hladiny významnosti α, která udává pravdˇepodobnost, že nesprávnˇe zamítneme nulovou hypotézu (tzv. chyba prvního druhu), 4. volba testovacího kritéria, 5. výpoˇcet hodnoty testovacího kritéria, 6. urˇcení kritické hodnoty testovacího kritéria, 7. rozhodnutí – zamítnutí cˇ i nezamítnutí nulové hypotézy Pro další statistické metody je možno nahlédnout do odborné literatury, napˇríklad do [6] nebo [7].
1.6. Systémy hromadné obsluhy Systémem hromadné obsluhy (SHO) mužeme ˚ obecnˇe chápat takový systém, ve kterém existují jistá zaˇrízení (kanály), na kterých dochází k obsluze vstupního proudu požadavku ˚ (zákazníku) ˚ vstupujících do systému v náhodných okamžicích (tzv. stochastický vstupní proud). Možnosti obsluhy mohou být omezeny, napˇr. poˇctem kanálu, ˚ dochází tak k hromadˇení požadavku. ˚ Následnˇe se bud’ tvoˇrí fronty požadavku ˚ nebo požadavek odejde ze systému bez obsloužení (rezignuje na obsluhu).[1] Místo pojmu teorie hromadné obsluhy se lze setkat s pojmem teorie front. Protože existují i systémy hromadné obsluhy, které frontu neobsahují, je první termín obecnˇejší. Teorie hromadné obsluhy si klade za cíl analýzu a následnou optimalizaci SHO s ohledem na jeho efektivní fungování, tzn. aby se pˇred obslužnými linkami nevytváˇrely pˇríliš velké fronty cˇ ekajících požadavku ˚ a na druhé stranˇe nedocházelo k neefektivním prostojum ˚ pˇri práci obslužných linek. [8] Se systémy hromadné obsluhy se setkáváme dennˇe v bˇežném životˇe. Typickými pˇríklady jsou zákazníci v supermarketech cˇ ekající u pokladen, svˇetelná signalizace
20
1. Teoretická cˇ ást na kˇrižovatce, cˇ i komunikace poˇcítaˇcu ˚ po síti – poslání paketu a cˇ ekání paketu na volný komunikaˇcní kanál.
Obrázek 1.1.: Schéma základních pojmu ˚ systému hromadné obsluhy (vlastní zpracování)
1.6.1. Charakteristika SHO Základní pojmy Základními prvky, které charakterizují SHO jsou (viz také obr. 1.1): [1] • Vstupní proud požadavk˚u – intenzita vstupu požadavku ˚ spoleˇcnˇe s intenzitou jejich obsluhy urˇcují základní charakteristiky SHO. Nejjednodušší modely pˇredpokládají, že vstupní proud charakterizovaný poˇctem požadavku ˚ vstupujících do systému za jistý cˇ asový interval vyhovuje Poissonovˇe procesu. Exponenciální systém je takový systém, u kterého platí tvrzení: Mají-li poˇcty požadavku, ˚ které vstupují do SHO bˇehem doby t Poissonovo rozdˇelení, pak mají doby mezi dvˇema po sobˇe následujícími vstupujícími požadavky (chápané jako náhodné veliˇciny) exponenciální rozdˇelení. Vstupní proud muže ˚ být popsán i jinými procesy, u nichž doby mezi pˇríchody dvou následných požadavku ˚ mají jiná rozdˇelení. Zdroje požadavku ˚ urˇcují, zda se jedná o systém otevˇrený cˇ i uzavˇrený. Jestliže máme neomezený zdroj požadavku, ˚ jedná se o systém otevˇrený. Uzavˇrený systém má zdroje s koneˇcným resp. omezeným poˇctem požadavku. ˚ V praxi považujeme za otevˇrený systém i takový pˇrípad, kdy jsou zdroje v principu omezené, avšak nelze pˇresnˇe urˇcit, kolik požadavku ˚ z takového zdroje bude požadovat obsluhu. • Fronta - množina cˇ ekajících požadavku ˚ na obsluhu. • Doba obsluhy - neboli intenzita obsluhy. Nejjednodušší modely opˇet pˇredpokládají dobu obsluhy za náhodnou veliˇcinu s exponenciální rozdˇelením. Existují i modely SHO s dobou obsluhy ˇrídící se jinými rozdˇeleními.
21
1. Teoretická cˇ ást • Disciplína cˇekání ve frontˇe – typ chování požadavku ˚ po nˇejaké dobˇe cˇ ekání ve frontˇe. Nejjednodušším typem je trpˇelivé cˇ ekání na obsluhu, tedy cˇ ekání s nekoneˇcnou mírou trpˇelivosti. Jestliže nejsou z jakéhokoli duvodu ˚ obslouženy všechny požadavky, pak v SHO vznikají ztráty. Duvodem ˚ muže ˚ být netrpˇelivost požadavku ˚ na obsluhu nebo omezený poˇcet míst v SHO, a to bud’ celkový v systému nebo ve frontˇe. Speciálním pˇrípadem jsou systémy bez cˇ ekání. Pokud je obsluha plnˇe obsazena, tak požadavek do systému ani nevstoupí. • Režim fronty – urˇcuje typ ˇrazení požadavku ˚ do fronty. – FIFO – First In, First Out – nejˇcastˇejší výskyt, založena na principu "kdo dˇrív pˇrijde, ten bude dˇríve obsloužen." – LIFO – Last In, First Out – první bude obsloužen požadavek, který pˇrišel do systému jako poslední. – SIRO – Selection In Random Order – dochází k náhodnému výbˇeru požadavku ˚ na obsluhu. – PRIO – Priority – obsluha ˇrízená prioritou požadavku. ˚ Priorita muže ˚ být absolutní nebo relativní. Absolutní priorita znamená, že požadavek je obsloužen okamžitˇe, bez ohledu na eventuální probíhající obsluhu jiného požadavku, zatímco relativní muže ˚ mít obecnˇe i nˇekolik stupn ˇ u, ˚ umožnuje ˇ nastoupit obsluhu jakmile se uvolní nˇejaké místo v obsluze. Pokud známe prioritu požadavku pˇred vstupem do SHO, pak jde o tzv. apriorní prioritu. Jestliže je priorita stanovena bˇehem cˇ ekání na obsluhu, mluvíme o aposteriorní prioritˇe. Režimy SIRO a PRIO jsou systémy s neuspoˇrádanou frontou. • Režim obsluhy – popisuje uspoˇrádání a poˇcet obslužných míst. V nejjednodušším pˇrípadˇe je jen jedno uspoˇrádání. Podle poˇctu obslužných míst se rozlišují SHO na tzv. jednokanálové (s jednoduchou) a vícekanálové (s vícenásobnou obsluhou), popˇr. adaptabilní, u kterých je poˇcet aktivních obslužných míst urˇcován bˇehem fungování SHO, napˇr. délkou fronty. Podle uspoˇrádání se rozlišují paralelnˇe nebo sériovˇe uspoˇrádané obsluhy. U paralelních systému ˚ se pˇredpokládá, že každé místo je stejné jako jiné v témže systému, tzn. každé místo je schopné plnˇe poskytnout požadovanou obsluhu, zatímco sériové uspoˇrádání vzniká u tzv. vícefázové obsluhy, kdy požadavek muže ˚ cˇ i dokonce musí projít jednotlivými fázemi obsluhy v nˇejakém poˇradí.
1.6.2. Kendallova klasifikace SHO V roce 1951 vytvoˇril D. G. Kendall klasifikaci pro jednotný systematický popis systému ˚ hromadné obsluhy a jejich roztˇrídˇení. Klasifikace má ve zkratce zakódované základní informace o systému hromadné obsluhy. Obvykle se uvádˇejí tˇri typy standardního oznaˇcování SHO -
22
1. Teoretická cˇ ást
Obrázek 1.2.: SHO s paralelním uspoˇrádáním obslužných linek a netrpˇelivostí zákazníku, ˚ zdroj [9] tˇrí-, pˇeti- a šestisymbolové. Tˇrí- a pˇetisymbolové jsou jen zvláštními pˇrípady šestisymbolového znaˇcení. A/B/C/D/E/F • A – charakterizuje vstupní tok, oznaˇcuje rozdˇelení intervalu ˚ mezi pˇríchody požadavku, ˚ • B – charakterizuje pravdˇepodobnostní rozdˇelení dob trvání obsluhy Symboly A a B mohou nabývat ruzných ˚ znakových hodnot: – D – deterministický proud vstupních požadavku, ˚ tj. pˇríchody jsou konstantní, – M – exponenciální rozdˇelení mající Markovovu vlastnost, – E k – Erlangovo k-fázové rozdˇelení, – G – obecné rozdˇelení, doba mezi pˇríchody je dána svou distribuˇcní funkcí, • C – poˇcet paralelnˇe uspoˇrádaných obslužných míst, • D – kapacita, tj. celkový poˇcet míst v systému (není-li ˇreˇceno jinak, pˇredpokládáme ∞, tedy neomezenou kapacitu), • E – poˇcetnost zdroje požadavku, ˚ není-li dána, pˇredpokládá se, že je ∞ a jde o tzv. otevˇrený systém, v opaˇcném pˇrípadˇe, je-li dána koneˇcným cˇ íslem, pak jde o uzavˇrený (cyklický) systém, • F – režim fronty Nejjednodušším oznaˇcením je tˇrísymbolové A/B/C a nejjednodušším stochastickým modelem je M/M/1 (viz. kapitola 1.7.1). Jestliže nejsou uvedeny další symboly, pˇredpokládá se, že D a E jsou ∞ a F charakterizuje FIFO, tj. pˇrirozené poˇradí. [1]
23
1. Teoretická cˇ ást
1.7. Jednotlivé modely SHO V této kapitole jsou pˇrevzaté a upravené vztahy podle [1, 12, 13]. Pro popis jednoduchých modelu ˚ systému ˚ hromadné obsluhy nám postaˇcí následující základní charakteristiky: 1. λ (intenzita vstupního procesu, tj. prumˇ ˚ erný poˇcet vstupujících požadavku ˚ za jed1 notku cˇ asu), resp. λ (prumˇ ˚ erná délka cˇ asového intervalu mezi vstupy požadavku) ˚ 2. µ (intenzita obsluhy, tj. prumˇ ˚ erný poˇcet požadavku, ˚ které mohou být obslouženy 1 za jednotku cˇ asu), resp. µ (prumˇ ˚ erný cˇ as strávený požadavkem v obsluze) Níže uvedená tabulka zavádí znaˇcení dalších základních charakteristik a vztahu ˚ mezi nimi za obvykle splnˇených podmínek. prumˇ ˚ erný cˇ as strávený požadavkem
poˇcet požadavku ˚
v obsluze
To = µ1
No = λTo
ve frontˇe
Tf
N f = λT f
v systému
T s = To + T f
N s = λT s = No + N f
Tabulka 1.1.: Vztahy mezi nˇekterými charakteristikami systému ˚ hromadné obsluhy.
Pravdˇepodobnost, že v systému není žádný požadavek oznaˇcme p 0 (resp. pravdˇepodobnosti p n vyjadˇrují, že v systému je právˇe n požadavku). ˚ Jestliže limitní (ˇcas t → ∞) neboli stacionární pravdˇepodobnost p 0 existuje a je koneˇcná, pak ˇríkáme, že je splnˇena podmínka stabilizace systému a systém se tak nezahlcuje cˇ ekajícími požadavky. V odborné literatuˇre zabývající se pravdˇepodobnostními modely nebo teorií front je možno najít ruzné ˚ vztahy (napˇr. pro prumˇ ˚ erný poˇcet požadavku ˚ v systému) a jejich analytické odvození.
1.7.1. Exponenciální model jednoduché obsluhy M/M/1 Systém M/M/1 je základní a také nejduležitˇ ˚ ejší model systému ˚ hromadné obsluhy, který se cˇ asto využívá ve srovnání s modely ostatními. Jedná se zároven ˇ o nejjednodušší a nejobecnˇejší model SHO, kde rozdˇelení dob mezi pˇríchody a dob obsluhy mají charakter exponenciálního rozdˇelení. Jedná se o otevˇrený systém, tzn. zdroj požadavku ˚ je neomezený. Velikost fronty není nijak omezena a zároven ˇ všechny požadavky trpˇelivˇe cˇ ekají ve frontˇe na obsluhu, i když nedostaˇcuje kapacita systému. Požadavky do systému vstupují v pˇrirozeném poˇradí, tzn. systém pracuje v režimu FIFO. Podmínka stabilizace systému má tvar λ < µ. Oznaˇcíme-li podíl
24
λ µ
jako intenzitu provozu ρ,
1. Teoretická cˇ ást
Obrázek 1.3.: Exponenciální model M/M/1 lze podmínku stabilizace systému vyjádˇrit ve tvaru ρ<1
(1.14)
p0 = 1 − ρ
(1.15)
Potom platí
a Tf =
λ µ(µ − λ)
(1.16)
K výpoˇctum ˚ nˇekterých dalších užiteˇcných veliˇcin lze snadno použít vztahy v tabulce 1.1.
1.7.2. Exponenciální model vícenásobné obsluhy M/M/c Jedná se o model s paralelnˇe uspoˇrádanými kanály. U takového modelu pˇredpokládáme[8]: • v systému se nachází c stejných obslužných kanálu ˚ • intervaly mezi pˇríchody požadavku ˚ lze popsat exponenciálním rozdˇelením s parametrem λ • doba obsluhy na každém kanálu je náhodná veliˇcina s exponenciálním rozdˇelením s parametrem µ • systém má neomezenou kapacitu, neomezený zdroj požadavku ˚ a funguje v režimu FIFO • požadavky mají nekoneˇcnou trpˇelivost, tzn. cˇ ekají ve frontˇe až do momentu obsloužení λ Celková intenzita provozu celého systému je rovna výrazu cµ . Tato charakteristika pˇredstavuje zároven ˇ prumˇ ˚ erné využití všech obslužných kanálu ˚ v systému. Aby fronta neomezenˇe nenarustala ˚ nad všechny meze, je potˇreba splnit podmínku stabilizace systému, podobnˇe jako u jednoduchého exponenciálního modelu. V tomto pˇrípadˇe musí platit: cµ > λ, tedy:
ρ λ = <1 cµ c
25
(1.17)
1. Teoretická cˇ ást
Obrázek 1.4.: Pˇrechodový graf systému M/M/c, pˇrevzato z [12, str.419] Potom platí Ã p0 =
ρc 1 + i! c! 1 − ρc
c−1 X ρi i =0
a p0 Tf = λ
¡ ρ ¢c+1
cc
c
c!
!−1
¡
ρ ¢2
(1.18)
(1.19)
1− c
1.7.3. Model M/D/1 Jedná se o jednoduchý model, kde intervaly mezi pˇríchody požadavku ˚ pocházejí z exponenciální rozdˇelení a doba obsluhy je dána deterministicky, tedy je pro všechny požadavky stejná. Podmínka stabilizace systému má tvar λ <1 µ
(1.20)
p0 = 1 − ρ
(1.21)
ρ= Potom platí a Tf =
λ 2µ(µ − λ)
(1.22)
1.7.4. Model D/M/1 V tomto modelu jsou intervaly mezi pˇríchody požadavku ˚ do systému konstantní, tj. mají deterministický charakter. Podmínka stabilizace systému má tvar λ <1 µ
(1.23)
p0 = 1 − ρ
(1.24)
ρ= Potom platí
26
1. Teoretická cˇ ást a Tf =
x µ(1 − x)
(1.25)
kde x je koˇren rovnice x −1 x = exp ρ µ
¶ (1.26)
¡ ¢ hledaný na intervalu 0, 1 + ρ ln ρ , kde ρ ∈ (0, 1).
1.7.5. Model jednoduché obsluhy s omezenou kapacitou M/M/1/K V tomto pˇrípadˇe se jedná o exponenciální model s jedním kanálem obsluhy a omezenou kapacitou požadavku ˚ v systému. Jejich maximální poˇcet je roven cˇ íslu K , z toho jeden požadavek je obsluhován a ve frontˇe je maximálnˇe (K − 1) požadavku. ˚ V pˇrípadˇe, že se do plnˇe obsazeného systému snaží dostat další požadavek, je odmítnut a dochází ke ztrátám. Systém je stabilní pro libovolné kladné λ a µ, což platí pro jakýkoli systém s omezenou kapacitou systému, protože se nemuže ˚ zahltit cˇ ekajícími požadavky. Opˇet oznaˇcíme ρ = λµ . Potom platí, že 1−ρ pro ρ 6= 1 1−ρ K +1 p0 = (1.27) 1 pro ρ = 1 K +1 a pn = p0ρn Dále platí, že Nf =
ρ 2 (1−ρ K )−(1−ρ)K ρ K +1 (1−ρ)(1−ρ K +1 ) K (K −1) 2(K +1)
pro ρ 6= 1 pro ρ = 1
(1.28)
Nezapomínejme, že v tomto modelu s omezenou kapacitou se nám vyskytují dvˇe intenzity pˇríchodu, ˚ ponˇevadž požadavku, který se snaží vstoupit do systému v dobˇe, kdy je naplnˇena jeho kapacita K, není dovoleno vstoupit. λ znaˇcí intenzitu, s jakou se požadavky do systému snaží vstoupit, λ∗ pak oznaˇcuje intenzitu, s jakou požadavky do systému skuteˇcnˇe vstupují. Platí, že λ∗ = λ(1 − p K ) Ve vztazích v tabulce 1.1 je tˇreba dosazovat intenzitu skuteˇcných pˇríchodu ˚ do systému, ∗ tedy λ .
Jednoduchý exponenciální model M/M/1/1 Jedná se o speciální pˇrípad systému M/M/1/K, kde k = 1. V takovém systému neexistuje fronta a vyskytuje se v nˇem maximálnˇe jeden požadavek, a to v obslužném kanále. Pro popis SHO slouží také tzv. graf pˇrechodu ˚ mezi stavy systému. Za stav systému považujeme poˇcet
27
1. Teoretická cˇ ást požadavku ˚ nacházejících se v daném okamžiku v systému. Pˇríchod nového požadavku zvýší poˇcet požadavku ˚ o jeden a realizuje pˇrechod systému do vyššího stavu. Naopak ukonˇcení obsluhy snižuje poˇcet požadavku ˚ v systému a pˇredstavuje pˇrechod do nižšího stavu SHO. Jinak SHO zustává ˚ v aktuálním stavu. Graf pˇrechodu ˚ v tomto systému obsahuje pouze dva stavy - prázdný systém (stav 0) nebo obsazený obslužný kanál (stav 1).[11]
Obrázek 1.5.: Graf pˇrechodu ˚ systému M/M/1/1, zdroj: [11, str. 57] Graf pˇrechodu ˚ je charakterizován maticí pˇrechodu ˚ P (t , t + (∆t )). 1 − λ∆t P (t , t + (∆t )) = µ∆t
λ∆t
1 − µ∆t
S využitím této matice lze odvodit napˇríklad rozložení pravdˇepodobností stavu ˚ SHO pro libovolný cˇ as, matici intenzity pˇrechodu ˚ nebo pravdˇepodobnost odmítnutí. Více napˇríklad v [11, str. 57].
1.7.6. Uzavˇrený exponenciální model jednoduché obsluhy M/M/1/./N V tomto modelu charakterizuje N maximální poˇcet požadavku ˚ ve zdroji vstupních požadavku. ˚ Po ukonˇcení obsluhy požadavky systém opouštˇejí a stávají se znovu prvky množiny potenciálních požadavku ˚ ve zdroji, jde tedy o uzavˇrený (cyklický) SHO. Intenzita obsluhy v tomto pˇrípadˇe ovlivnuje ˇ intenzitu vstupu ˚ požadavku. ˚ V rámci uzavˇreného systému není velikost fronty omezena a všechny požadavky v ní trpˇelivˇe cˇ ekají na obsluhu, i když nedostaˇcuje kapacita obslužné linky. V tomto modelu se tedy celkovˇe nachází N požadavku, ˚ z nichž každý je bud’ v systému (ˇceká na obsluhu, nebo je obsluhován), nebo mimo nˇej (ve zdroji vstupních požadavku). ˚ λ je v tomto pˇrípadˇe parametr exponenciálního rozdˇelení, ze kterého pochází cˇ asové intervaly, po kterou je každý z požadavku ˚ mimo systém. Opˇet tedy platí, že toto λ není tím ve vztazích v tabulce 1.1. Namísto nˇej je tak tˇreba dosazovat λ∗ , které má požadovaný význam
28
1. Teoretická cˇ ást prumˇ ˚ erného poˇctu vstupujících požadavku ˚ za jednotku cˇ asu a pro které platí λ∗ = µ(1 − p 0 ) kde Ã
N X ρi N ! p0 = i =0 (N − i )!
!−1 (1.29)
pˇriˇcemž jsme opˇet oznaˇcili ρ = λµ . Potom platí ¡
N f = N − 1 − p0
¢
µ
1 1+ ρ
¶ (1.30)
1.7.7. Exponenciální model vícenásobné obsluhy s omezenou kapacitou M/M/c/K Jedná se o systém hromadné obsluhy, ve kterém je kapacita SHO omezena poˇctem požadavku. ˚ V systému se jich vyskytuje maximálnˇe K , pˇriˇcemž muže ˚ být souˇcasnˇe obsluhováno nejvýše c požadavku ˚ a zbývajících maximálnˇe (K − c) cˇ eká ve frontˇe na obsluhu. Jedná se tedy o systém se ztrátami. Každá obslužná linka má stejnou intenzitu obsluhy µ, požadavky, které vstoupily do fronty, trpˇelivˇe cˇ ekají na obsluhu, do které postupují v pˇrirozeném poˇradí (FIFO). Pro tento model platí stejnˇe jako pro jeho výše uvedený speciální pˇrípad, kdy c = 1, že systém je stabilní pro libovolné kladné λ a µ. Stejnˇe pak také ze stejných duvod ˚ u ˚ platí, že ∗ K ve vztazích v tabulce 1.1 je tˇreba dosazovat λ = λ(1 − p ) namísto λ. Tentokrát oznaˇcíme ρ prumˇ ˚ ernou intenzitu provozu à p0 =
c−1 X i =0
¡
cρ i!
¢i +
λ . Potom platí µc
¡ ¢i !−1 K X cρ i =c
c! c i −c
(1.31)
a c c ρK pK = p0 c!
(1.32)
Dále platí N f = p0
¤ c c ρ c+1 £ K −c+1 − (1 − ρ)(K − c + 1)ρ K −c ¡ ¢2 1 − ρ c! 1 − ρ
(1.33)
Modelu ˚ hromadné obsluhy existuje celá ˇrada. Z ostatních mužeme ˚ jmenovat napˇríklad systém M /E r /1/∞. Jedná se o systém s jedním obslužným kanálem, kde pˇríchody jsou ˇrízeny Poissonovým procesem s parametrem λ a doba obsluhy je náhodná veliˇcina s Erlangovo rozdˇelením s parametry k a µ. V naší práci jsme popsali pouze takové modely, které mají analytické ˇrešení a zároven ˇ je budeme v další kapitole simulovat.
29
1. Teoretická cˇ ást
1.8. Optimalizace SHO Modely SHO mají za úkol, kromˇe popisu chování celého systému, sloužit jako nástroj pro rozhodování a optimalizaci celého systému podle urˇcených kritérií. Abychom systém mohli optimalizovat, je nutné mít možnost ovlivnit nˇekteré jeho prvky a souˇcasnˇe s tím i základní charakteristiky efektivnosti. Vedle toho ještˇe pˇredpokládáme, že mužeme ˚ explicitnˇe formulovat kvantitativní kriteriální funkci, která vyjadˇruje jistý zamýšlený cíl. Budeme-li uvažovat o jednoduchém exponenciálním modelu, zjistíme, že zmenšováním intenzity obsluhy bude narustat ˚ fronta, prumˇ ˚ erný cˇ as ve frontˇe se prodlouží a muže ˚ docházet ke ztrátám u požadavku ˚ s netrpˇelivostí. Jestliže intenzitu obsluhy pˇríliš zvýšíme, bude docházet k prostojum ˚ linky. Vznikají zde náklady na provoz, ale bezprostˇrednˇe jim neodpovídají žádné tržby. Z pohledu zákazníka muže ˚ být cílem optimalizace zkrácení cˇ ekací doby, avšak z pohledu provozovatele systému je duležité ˚ mít co nejmenší ztráty na zákaznících, pˇrípadnˇe optimalizovat vytížení a poˇcet obslužných linek. V rozhodovacích úlohách je tedy nutné najít kompromis, který bude vyhovovat obˇema stranám. Kriteriální funkce muže ˚ být orientována nákladovˇe, ziskovˇe nebo tak, že kritérium bude pˇredstavovat kritickou hodnotu nˇekteré ze základních charakteristik efektivnosti systému obsluhy, kterou nelze pˇrekroˇcit (napˇr. omezení prumˇ ˚ erné cˇ ekací doby, prumˇ ˚ erné využití cˇ i prostoje obslužných kanálu). ˚ Jestliže cílem optimalizace je dosažení minima oˇcekávaných celkových nákladu ˚ na provoz SHO, pak kriteriální funkce zpravidla zahrnuje následující druhy ztrát [13]: 1. Náklady prostoje obslužné linky v hodnotovém vyjádˇrení vztažené na jednotku cˇ asu. 2. Náklady cˇ ekání na obsluhu, popˇr. náklady setrvání požadavku v systému, vztažené na jeden požadavek za jednotku cˇ asu. 3. Náklady na obsluhu jednoho požadavku za cˇ asovou jednotku. 4. Náklady vyvolané ztrátou jednoho požadavku v SHO se ztrátami. V pˇrípadˇe stabilizovaného exponenciálního systému M/M/c mužeme ˚ vyjádˇrit kriteriální funkci takto: ¯ N (S) = c n N f + c z S,
(1.34)
kde • c n – hodnotovˇe vyjádˇrené náklady cˇ ekání jednoho požadavku na obsluhu za zvolenou cˇ asovou jednotku, • c z – ztráty v penˇežních jednotkách vznikající v dusledku ˚ nevyužití jednoho zaˇrízení obsluhy za jednotku cˇ asu, • N f – prumˇ ˚ erná délka fronty, ˚ erný poˇcet nevyužitých zaˇrízení obsluhy. • S¯ - prumˇ
30
1. Teoretická cˇ ást Ze vztahu 1.34 plyne, že hodnota kriteriální funkce závisí pˇri konstantních c n a c z na poˇctu zaˇrízení obsluhy S, popˇr. na provozních podmínkách systému. Pˇri optimalizaci uvedeného systému je zpravidla cílem urˇcit takový poˇcet obslužných kanálu, ˚ abychom minimalizovali celkovˇe oˇcekávané náklady. Více napˇríklad v [1, kapitola 7.12] nebo [13, kapitola 9.10].
ˇ 1.9. Generování náhodných císel a simulace metodou Monte Carlo Základní charakteristiky reálných systému ˚ hromadné obsluhy zpravidla nelze analyticky odvodit. Toto ˇrešení je dostupné jen pro nejjednodušší modely. Vytvoˇrení simulaˇcního modelu je tak jediným zpusobem, ˚ jakým mužeme ˚ tyto charakteristiky daného systému získat, resp. odhadnout. Simulace se charakterizuje jako experimentování s modelem reálného systému, tedy napodobování jeho chování v cˇ ase. V operaˇcním výzkumu se cˇ asto význam termínu "simulace" zužuje na simulaci chování stochastických (nˇekdy však i deterministických) systému ˚ (modelu) ˚ metodou Monte Carlo (MC). Tato simulace probíhá tak, že reálný systém nahradíme jeho simulaˇcním modelem se stejnými pravdˇepodobnostními charakteristikami, a chování reálného systému mnohonásobnˇe simulujeme na zkonstruovaném modelu. K pˇresnému odhadu dané pravdˇepodobnostní charakteristiky potˇrebujeme obvykle velmi mnoho ˇ pokusu. ˚ Cím více pokusu ˚ provedeme, tím pˇresnˇejší odhad získáme. [6]
ˇ Generování náhodných císel Základem pro naší simulaci je generování náhodných cˇ ísel2 , resp. pˇri simulaci metodou MC slouží vygenerované hodnoty náhodných cˇ ísel ke generování hodnot náhodných veliˇcin s daným rozdˇelením. Metod pro transformaci náhodných cˇ ísel na hodnoty náhodných veliˇcin s daným rozdˇelením existuje nˇekolik, napˇr. vyluˇcovací(zamítací) metoda, metoda inverzní transformace, tabulková metoda.
Metoda inverzní transformace V našem pˇrípadˇe potˇrebujeme generovat dobu mezi pˇríchody jednotlivých požadavku ˚ a dobu trvání obsluhy. V obou pˇrípadech se bude jednat o náhodné veliˇciny s exponenciálním rozdˇelením s pˇríslušným parametrem. Pro generování hodnot této veliˇciny použijeme metodu inverzní funkce (transformace). 2
mechanismy pro generování náhodných cˇ ísel jsou popsány napˇr. v kapitole 5.4 v [6]
31
1. Teoretická cˇ ást K aplikaci této metody musíme znát distribuˇcní funkci F náhodné veliˇciny X . Pˇritom distribuˇcní funkce F musí být rostoucí na intervalu 〈a, b〉, a musí zobrazovat interval 〈a, b〉 na interval 〈0, 1〉 [6]. Postup je následující: vygenerujeme náhodné cˇ íslo y z rovnomˇerného rozdˇelení na intervalu 〈0, 1〉 a cˇ íslo y považujeme za hodnotu distribuˇcní funkce v dosud neznámém bodˇe x: F (x) = y. Z tohoto vztahu vypoˇcteme hodnotu x: x = F −1 (y)
(1.35)
kde F −1 oznaˇcuje inverzní funkci k funkci F . Pokud máme náhodnou veliˇcinu X s exponenciálním rozdˇelením, pak její distribuˇcní funkce je dána vztahem: F (x) = 1 − e−λx
(1.36)
Vztah pro generování náhodných hodnot s exponenciálním rozdˇelením pak mužeme ˚ odvodit následovnˇe: y = F (x) = 1 − e−λx e−λx = 1 − y −λx = ln(1 − y)
x =−
1 ln y ln(1 − y) = − λ λ
(1.37)
ˇ Zachycení casu v simulacích Pˇri simulaˇcních experimentech je nutné rozhodnout, jak vyjádˇríme dynamické vlastnosti modelu, tj. jakou strategii zvolíme pro zachycení cˇ asu. Existují dvˇe možnosti – metoda pevného cˇ asového kroku a metoda promˇenného cˇ asového kroku. V prvním pˇrípadˇe se vždy po uplynutí pevného cˇ asového intervalu zjišt’uje, k jakým zmˇenám došlo. V metodˇe promˇenného cˇ asového kroku hranice cˇ asových kroku ˚ pˇredstavují právˇe ty okamžiky, kdy dojde ke zmˇenˇe v systému, napˇr. pˇrijde nový požadavek do systému nebo se ukonˇcí obsluha požadavku a požadavek systém opustí. [9]
ˇ software 1.10. Simulacní Simulaˇcní software pro dynamickou diskrétní simulaci procesu ˚ je v dnešní dobˇe schopen pˇredpovˇedˇet chování systému dle pˇredem stanovených podmínek. Software zahrnuje návrh 2
Jestliže y je náhodné cˇ íslo z rovnomˇerného rozdˇelení, pak i (1-y) je náhodné cˇ íslo z rovnomˇerného rozdˇelení a vztah 1.37 lze takto upravit.
32
1. Teoretická cˇ ást a modelování s nejruznˇ ˚ ejšími aspekty výroby, vˇcetnˇe plánování, výbˇeru vybavení, strategie ˇrízení, manipulaci s materiálem atd. V závislosti na zvolených cílech muže ˚ být simulaˇcní model složitý a datovˇe nároˇcný. Na druhé stranˇe, simulaˇcní software je pouze analytický nástroj, optimalizovat nebo racionalizovat široký rozsah výrobních systému ˚ vyžaduje odborný zásah. Výstupní parametry, jako napˇríklad celková produkce, prostoje a využití pˇrístroje, následnˇe využívají odborníci pro hodnocení chování systému a urˇcují oblasti pro možná zdokonalení. Základem simulování je generování náhodných cˇ ísel. [14] K výhodám patˇrí jednoduché grafické rozhraní a intuitivní ovládání programu. K prezentaci výsledku ˚ modelování slouží ˇrada grafických výstupu, ˚ at’ už jednotlivé grafy, tabulky nebo celý model. Nejvˇetším záporem je vysoká poˇrizovací cena. Ta se pohybuje v ˇrádech desetitisícu, ˚ nˇekdy i statisícu. ˚ K nejpoužívanˇejšímu softwaru patˇrí Simul8, Witness a Arena.
1.10.1. Simul8 Simul8 je jedním z nejrozšíˇrenˇejších softwarových produktu ˚ pro dynamickou diskrétní simulaci podnikových procesu. ˚ Lze ho použít napˇríklad pro modelování výrobních systému, ˚ logistických systému ˚ cˇ i systému ˚ obsluhy zákazníku ˚ nebo poskytování služeb, zvláštˇe pak pro modely obsluhy klientu ˚ na bankovních pˇrepážkách, volajících klientu ˚ v call-centrech nebo zákazníku ˚ u pokladen v supermarketu. Generátor v Simul8 obsahuje 30 000 sekvencí náhodných cˇ ísel. Od roku 2006 podporuje software nahrazení vestavˇeného generátoru generátorem vlastním, vytvoˇreným v dynamické knihovnˇe.
1.10.2. Witness Witness je simulaˇcní balíˇcek pro simulaci diskrétních událostí spoleˇcnosti Lanner Group Ltd. Modelovací prostˇredí je objektovˇe orientované a je založené na teorii front. Ke generování náhodných cˇ ísel využívá šesti sekvencí, které se dají uživatelem zmˇenit. Witness využívá vygenerované cˇ íslo mezi 0 a 1 jako vzorek ze statistického rozložení pro cˇ asování a cˇ lenˇení cˇ innosti apod.
1.10.3. Arena Arena využívá implementaci simulaˇcního prostˇredí SIMAN, které je zamˇeˇreno pˇredevším na modelování výrobních procesu. ˚ Nejvˇetší pˇredností tohoto softwaru je jednoduchý grafický vzhled modelu. Model se vytváˇrí pomocí umístˇení jednotlivých ikon na kreslící plochu a pomocí propojení ikon nebo bloku ˚ uživatel definuje vztahy mezi nimi. Pro generování náhodných cˇ ísel lze použít pˇrednastavenou sekvenci cˇ ísel, nebo si uživatel muže ˚ vybrat z dalších 10 sekvencí. Všechny distribuce programu generují cˇ ísla pomocí rovnomˇerného rozložení
33
1. Teoretická cˇ ást v rozsahu 0 až 1. Studentská verze Areny je dostupná na webových stránkách vydavatele http://www.arenasimulation.com/. V tomto softwaru si ukážeme pˇríklad jednoduché fronty s jedním rozhodovacím procesem.
Obrázek 1.6.: Prostˇredí simulaˇcního programu Arena Model bude generovat pˇríchody zákazníku ˚ jako náhodnou veliˇcinu s exponenciálním rozdˇelením a prumˇ ˚ erem 0,5 zákazníka za minutu. Následnˇe se zákazník rozhodne, zda-li pujde ˚ do fronty, nebo ze systému odejde bez obsloužení. Jako podmínku stanovíme napˇríklad délku fronty o velikosti 4, tzn. pokud ve frontˇe bude menší poˇcet lidí jak 5, zákazník si stoupne do fronty. Pokud ve frontˇe bude 5 a více lidí, zákazník odejde neobsloužen. Toto budeme simulovat po dobu 8 hodin. Statistickou analýzu modelu nám software vytvoˇrí sám do formátu pdf.
Obrázek 1.7.: Vývojový diagram modelu
34
1. Teoretická cˇ ást
Obrázek 1.8.: Nastavení generování pˇríchodu ˚ zákazníku ˚
Obrázek 1.9.: Nastavení rozhodovacího procesu
35
1. Teoretická cˇ ást
Obrázek 1.10.: Nastavení obsluhy
Obrázek 1.11.: Výsledky simulace
36
1. Teoretická cˇ ást
Obrázek 1.12.: Analýza simulace - obsluha
Obrázek 1.13.: Analýza simulace - fronta
37
1. Teoretická cˇ ást
1.10.4. Free software Simulaˇcního softwaru lze najít pomˇernˇe velké množství, málokterý z nich je ovšem volnˇe dostupný. Jednou z dalších možností je také využití doplnk ˇ u ˚ ve standardních kanceláˇrských balících. Napˇríklad pro tabulkový kalkulátor Calc v sadˇe OpenOffice existuje volnˇe šiˇritelný doplnˇek QtdPlus4Calc (ke stažení zde: http://qtsplus4calc.sourceforge.net/). Obsahuje nˇekolik modelu, ˚ kde si uživatel muže ˚ vyzkoušet, jak se projeví zmˇena parametru ˚ v ruzných ˚ modelech na výsledcích zkoumaných veliˇcin. Na druhé stranˇe, nˇekteré z modelu ˚ ještˇe nemají 100% funkˇcnost, stejnˇe jako simulace.
Obrázek 1.14.: Náhled na simulaci v doplnku ˇ QtdPlus4Calc
Storm Systém STORM (Simulation TOol for Real-time Multiprocessor scheduling) je soubor programu, ˚ který obsahuje nˇekolik modelu, ˚ vˇcetnˇe modelu Queueing Analysis. Lze v nˇem zpracovávat jednoduché úlohy z teorie front, které mají analytické ˇrešení a jejichž charakteristiky lze získat dosazením do odpovídajících vztahu. ˚ Konkrétnˇe se jedná o modely: M /M /c,
38
1. Teoretická cˇ ást M /M /c/K , M /M /c/K /K , M /D/c a M /G/c. STORM umožnuje ˇ i optimalizace systému ˚ hromadné obsluhy. [13] Ovládá se pomocí jazyka Java, samotná simulace se provádí pomocí souboru ˚ XML. Její výsledky jsou zpracovány do diagramu, ˚ tabulek a dalších souboru ˚ pro následnou analýzu. STORM je volnˇe šiˇritelný software pod licencí Creative Commons, je dostupný na webových stránkách http://storm.rts-software.org/.
39
2. Simulace vybraných modelu˚ systému˚ hromadné obsluhy Všechny simulaˇcní modely, které budou pˇredstaveny na následujících stránkách práce, jsou napsány v jazyce C#. Každý model má v sobˇe obsažené výpoˇcty duležitých ˚ charakteristik systému, které se poˇcítají jak ze samotné simulace, tak analyticky dle zavedených vzorcu ˚ v teoretické cˇ ásti. Výsledkem simulace je právˇe srovnání takto získaných hodnot. V simulacích nejsou zavedeny podmínky stabilizace jednotlivých modelu. ˚ Ukonˇcovací podmínkou pro každý model je urˇcený cˇ as, po jehož uplynutí požadavky nejsou vpuštˇeny do systému. V tabulkách s výsledky je používáno znaˇcení zavedené v teoretické cˇ ásti.
2.1. Simulace modelu M /M /1 Jak bylo zmínˇeno v teoretické cˇ ásti práce, model M /M /1 znaˇcí jeden kanál obsluhy, který pracuje v režimu FIFO a fronta požadavku ˚ je neomezená. Intenzitu pˇríchodu ˚ pˇredstavuje Poissonuv ˚ proces s parametrem λ, v tomto pˇrípadˇe doby mezi jednotlivými pˇríchody mají exponenciální rozdˇelení s parametrem λ1 a doba obsluhy je také náhodná veliˇcina s exponenciálním rozdˇelením s parametrem µ. V systému jsou pouze dvˇe hlavní události - pˇríchod nového požadavku do systému a odchod požadavku, který dokonˇcil obsluhu. Listing 2.1: Ukázkový kód pro model M/M/1 Random rnd = new Random ( DateTime .Now. Millisecond ); / / g e n e r a t o r nahodnych c i s e l
double tgen; / / g e n e r o v a n y c a s double lambda =1.0; / / i n t e n z i t a p r i c h o d u double lambda_rec =1/ lambda ; / / p r e v r a c e n a hodnota i n t e n z i t y p r i c h o d u = s t r e d n i doba mezi p r i c h o d y
double mu =1.25; / / i n t e n z i t a o b s l u h y double mu_rec =1/ mu; / / p r e v r a c e n a hodnota i n t e n z i t y o b s l u h y = s t r e d n i doba o b s l u h y double tp =0; / / c a s p r i c h o d u d a l s i h o z a k a z n i k a ( uvazujeme , z e do s y s t e mu v s t u p u j e 1 . z a k a z n i k v ~ c a s e 0 ) double to; / / c a s odchodu p o s l e d n i h o o b s l u h o v a n e h o z a k a z n i k a
41
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
int i=1; / / p o c e t o b s l o u z e n y c h z a k a z n i k u double tp_sum =0, to_sum =0, tf_sum =0, te_sum =0; / / pro v y p o c e t prumerne doby mezi p r i c h o d y , doby o b s l u h y , doby c e k a n i ve f r o n t e a doby , po k t e r o u j e s y s t e m p r a z d n y / / g e n e r u j e m e c a s odchodu 1 . z a k a z n i k a
tgen=-Math.Log(rnd. NextDouble ())* mu_rec ; to_sum += tgen; to=tgen; while (true){ // generujeme cas prichodu d a l s i h o z a k a z n i k a
tgen=-Math.Log(rnd. NextDouble ())* lambda_rec ; tp_sum += tgen; tp+= tgen; if(tp >1000000) break ; i++; if(tp
tgen=-Math.Log(rnd. NextDouble ())* mu_rec ; to_sum += tgen; to += tgen; } else{ / / do syste mu v c h a z i d a l s i z a k a z n i k , k t e r y j d e o k a m z i t e k~ volne prepazce ( generujeme cas jeho odchodu ) te_sum +=tp -to; / / v y p o c e t doby , po k t e r o u j e s y s t e m p r a z d n y tgen=-Math.Log(rnd. NextDouble ())* mu_rec ; to_sum += tgen; to=tp+tgen; } }
Model jsme otestovali se vstupními parametry λ = 1,0 a µ = 1,25 s koneˇcnými cˇ asy 1 000, 10 000, 100 000, 1 000 000. Výsledky jsou v tabulce 2.1. Se zvyšující se hodnotou koneˇcného cˇ asu je vidˇet, že se výsledky v souladu s pˇredpokladem pˇribližují analytickému ˇrešení. Další výsledky s jinými testovanými vstupními parametry jsou v tabulce 2.2. Klasickým pˇríkladem tohoto modelu muže ˚ být napˇríklad fronta u lékaˇre. Pacienti jsou obsluhováni jeden po druhém a trpˇelivˇe cˇ ekají, až pˇrijdou na ˇradu.
42
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
Testovaný cˇ as
Obslouženo
λ−1
To
Tf
p0
1 000
1 031
0,9709
0,8141
3,8666
0,1646
10 000
10 064
0,9937
0,8067
3,3043
0,1882
100 000
100 285
0,9972
0,8027
3,2298
0,1951
1 000 000
997 793
1,0022
0,7997
3,1695
0,2021
10 000 000
10 003 431
0,9997
0,7999
3,2030
0,1997
Analyticky:
—
1,0
0,8
3,2
0,2
Tabulka 2.1.: Porovnání analytického a simulaˇcního ˇrešení modelu M /M /1 ˇ simulace Cas
λ = 1, 5
λ = 1, 1
λ=1
1 000 000
µ=3
µ = 1, 5
µ = 1, 1
Výsledky:
simulace
analyt.
simulace
analyt.
simulace
analyt.
Obslouženo:
1 498 623
——-
1 101 566
——-
998 729
——-
−1
λ :
0,66728
0,66667
0,90780
0,90909
1,00127
1,00000
To :
0,33325
0,33333
0,66732
0,66667
0,90926
0,90909
Tf :
0,33238
0,33333
1,85575
1,83333
8,97006
9,09091
p0:
0,50059
0,50000
0,26490
0,26667
0,09191
0,09091
Tabulka 2.2.: Testování modelu M /M /1
2.2. Simulace modelu M /D/1 Tento model se liší od pˇredchozího jen v tom, že negenerujeme dobu obsluhy pro jednotlivé požadavky, ale pˇriˇradíme jim konstantu. Všechny požadavky budou obsluhovány stejnou dobu. Volíme µ = 1.75, doba obsluhy každého požadavku je µ−1 . Test. cˇ as
Obslouženo
λ−1
Tf
T
p0
1 000
1 512
0,6620
1,7938
2,3653
0,1372
10 000
14 797
0,6758
1,4115
1,9830
0,1544
100 000
150 261
0,6655
1,8429
2,4143
0,1414
1 000 000
1 499 800
0,6667
1,6830
2,2544
0,1430
10 000 000
14 993 647
0,6667
1,7003
2,2717
0,1432
Analyticky:
—
0,6667
1,7143
2,2857
0,1429
Tabulka 2.3.: Porovnání analytického a simulaˇcního ˇrešení modelu M /D/1
43
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
ˇ simulace Cas
λ=3
λ = 2, 8
λ = 2, 85
1 000 000
µ = 10
µ=5
µ=3
Výsledky:
simulace
analyt.
simulace
analyt.
simulace
analyt.
Obslouženo:
2 997 622
—
2 800 850
—
2 847 274
—
λ−1 :
0,33360
0,33333
0,35703
0,35714
0,35121
0,35088
Tf :
0,02131
0,02143
0,12736
0,12727
3,15909
3,16667
T:
0,12131
0,12143
0,32736
0,32727
3,49242
3,50000
p0:
0,70024
0,70000
0,43983
0,44000
0,05091
0,05000
Tabulka 2.4.: Testování modelu M /D/1
Tento model si lze pˇredstavit jako ústní zkoušení studentu. ˚ Zkoušející zde hraje roli obslužné linky a je zpravidla jen jeden. Doba obsluhy, tedy samotné zkoušení studenta, je konstantní.
2.3. Simulace modelu D/M /1 Tento model je stejný jako model M /M /1, jen místo generování cˇ asu ˚ pˇríchodu ˚ zákazníku ˚ zvolíme konstantní rozdíl mezi jednotlivými pˇríchody (λ = 1). Navíc ještˇe potˇrebujeme vyhledat koˇren rovnice 1.26. V našem pˇrípadˇe jsme zvolili vyhledání koˇrene pomocí metody pulení ˚ intervalu (viz. [15]). Listing 2.2: Ukázka kódu metody bisekce static double KorenBisekci ( double lambda , double mu) { double rho = lambda / mu; double a = -0.000001 , b = 1 + rho * Math.Log(rho); double stred = (a + b) / 2; while (!( stred . Equals (a) || stred . Equals (b))) { if (f(a, rho) * f(stred , rho) < 0) b = stred ; else a = stred ; stred = (a + b) / 2; } return stred ; }
44
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
Test. cˇ as
Obslouženo
To
Tf
T
p0
1 000
1 500
0,5606
0,9816
1,5422
0,1596
10 000
15 000
0,5618
1,2748
1,8366
0,1574
100 000
150 000
0,5721
1,5180
2,0900
0,1420
1 000 000
1 500 000
0,5716
1,5298
2,1015
0,1425
10 000 000
15 000 000
0,5713
1,5354
2,1067
0,1431
Analyticky:
—–
0,5714
1,5339
2,1054
0,1429
Tabulka 2.5.: Porovnání analytického a simulaˇcního ˇrešení modelu D/M /1 ˇ simulace Cas
λ=3
λ = 0, 5
λ = 10
1 000 000
µ=8
µ = 0, 8
µ = 12
Výsledky:
simulace
analyt.
simulace
analyt.
simulace
analyt.
Obslouženo:
3 000 000
——-
500 000
——-
10 000 000
——-
To :
0,12500
0,12500
1,24918
1,25000
0,08332
0,08333
Tf :
0,01198
0,01203
0,69705
0,69701
0,18214
0,18231
T:
0,13698
0,13703
1,94624
1,94710
0,26547
0,26565
p0:
0,62499
0,62500
0,37541
0,37500
0,16678
0,16667
Tabulka 2.6.: Testování modelu D/M /1
2.4. Simulace modelu M /M /c Simulace probíhá obdobnˇe jako v pˇrípadˇe jednoduché obsluhy modelu M/M/1. Jediným rozdílem je poˇcet obslužných míst. Pro tento pˇrípad si potˇrebujeme uchovávat informace o odchodu jednotlivých zákazníku ˚ nacházejících se v sytému, podle kterých pak rozhodujeme, ke kterému kanálu pˇristoupí další požadavek. V našem pˇrípadˇe požadavek vstoupí do kanálu, který je nejdéle volný (hledáme minimum v dobách odchodu). Uvažujme exponenciální systém hromadné obsluhy se dvˇema obslužnými linkami, neomezeným zdrojem požadavku, ˚ jež trpˇelivˇe vyˇckávají ve frontˇe, která funguje v režimu FIFO. Tabulka 2.7 pak znázornuje ˇ prubˇ ˚ eh simulace se vstupními parametry λ = 1, 5 a µ = 1.2 a cˇ asový úsek 20 minut. V tabulce 2.8 je vidˇet znaˇcné odchýlení simulaˇcních a analytických výsledku. ˚ To je zpuso˚ beno krátkým testovaným cˇ asem (20 minut). Proto model otestujeme v ruzných ˚ cˇ asových úsecích, stejnˇe jako modely ostatní.
45
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
cˇ as
doba
1. kanál
1. kanál
2. kanál
2.kanál
doba,
doba
vstupu
obsluhy
obsluhy
obsluhy
obsluhy
obsluhy
po kterou
cˇ ekání
zaˇcátek
konec
zaˇcátek
konec
v systému
na
není žádný
obsluhu
požadavku
požadavek 08:00:00
00:49
08:00:00
08:00:49
08:00:04
01:42
08:00:52
00:16
08:00:52
08:01:08
08:02:00
00:11
08:02:00
08:02:11
08:03:01
00:05
08:03:17
01:23
08:03:46
00:05
08:03:46
08:03:51
08:05:00
00:19
08:05:00
08:05:19
08:05:21
00:28
08:05:32
00:41
08:07:02
01:51
08:08:49
00:07
08:09:59
00:19
08:10:28
00:49
08:10:58
01:04
08:11:27
01:38
08:11:38
00:04
08:12:02
08:12:06
00:24
08:12:03
01:38
08:12:06
08:13:44
00:03
08:12:11
00:22
08:13:05
08:13:27
00:54
08:12:16
01:26
08:13:27
08:14:53
01:11
08:13:12
02:14
08:14:52
01:12
08:15:24
01:15
08:15:46
00:45
08:16:05
08:16:50
08:17:37
00:40
08:17:37
08:18:17
08:18:22
00:08
08:19:14
00:18
08:00:04
00:14 08:03:01
08:03:17
08:05:21
08:10:58
08:13:44
08:05:49
08:18:22
00:20 00:02
08:06:13
08:08:53
00:49 08:08:56
08:10:18
01:03 08:10:28
08:11:17
08:11:27
08:13:05
00:10
08:12:02
08:15:58
00:32 08:14:53
08:15:58
00:50 00:11
08:08:49 08:09:59
08:03:06
08:04:40
08:05:32 08:07:02
08:01:46
08:16:05
00:01
08:17:13
00:34
08:18:30
00:19 00:24 00:05
08:19:14
08:19:32
00:44
Tabulka 2.7.: Ukázka simulace modelu M /M /c systému hromadné obsluhy
46
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
Srovnání výsledku: ˚
simulaˇcní
analytické
Prumˇ ˚ erná doba mezi pˇríchody:
0,76234568
0,66666667
Prumˇ ˚ erná doba obsluhy:
0,80802469
0,83333333
Prumˇ ˚ erná doba cˇ ekání v systému:
0,14691358
0,53418803
Pravdˇepodobnost, že systém je prázdný:
0,24914676
0,23076923
Tabulka 2.8.: Výsledky simulace modelu M /M /c pro krátký cˇ asový úsek Test. cˇ as
Obslouženo
λ−1
To
Tf
T
p0
1 000
1 531
0,6535
0,8178
0,4752
1,2930
0,2330
10 000
15 116
0,6616
0,8417
0,5588
1,4005
0,2230
100 000
149 966
0,6668
0,8340
0,5279
1,3619
0,2305
1 000 000
1 500 130
0,6666
0,8321
0,5295
1,3616
0,2314
10 000 000
14 999 173
0,6667
0,8332
0,5346
1,3678
0,2308
Analyticky:
—
0,6667
0,8333
0,5342
1,3675
0,2308
Tabulka 2.9.: Porovnání analytického a simulaˇcního ˇrešení modelu M /M /c ˇ simulace Cas
λ = 3.05
λ = 0, 8
1 000 000
µ = 1.2
µ=1
Poˇcet pˇrepážek:
3
5
10
3
5
10
Obslouženo:
3 051 129
3 052 113
3 052 390
798 396
799 187
800 128
λ−1 :
0,32775
0,32764
0,32762
1,25251
1,25128
1,24980
To :
0,83362
0,83282
0,83324
0,99973
0,99979
1,00238
Tf :
1,32991
0,04645
0,00004
0,02316
0,00032
0,00000
T:
2,16353
0,87929
0,83328
1,02289
1,00011
1,00238
p0:
0,04042
0,07671
0,07894
0,44794
0,44978
0,44863
Tabulka 2.10.: Simulaˇcní výsledky pro model M /M /c s ruznými ˚ poˇcty pˇrepážek Položme si nyní otázku: Máme dva systémy hromadné obsluhy. První z nich je jednokanálový systém M /M /1, v nˇemž má kanál obsluhy intenzitu 3µ, druhý systém je systém M /M /3, kde jednotlivé kanály mají intenzitu obsluhy µ. Který z nich je výhodnˇejší pro zákazníka? V tabulce 2.11 na následující stranˇe vidíme, že pokud zvýšíme poˇcet pˇrepážek a rozdˇelíme intenzitu obsluhy mezi nˇe, tak to ještˇe neznamená, že se nám zrychlí celý proces požadavku v systému. Sice se nám sníží cˇ as strávený ve frontˇe, na druhou stranu intenzita obsluhy muže ˚
47
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy λ = 0, 8
ˇ simulace Cas
λ=3
λ = 1, 5
1 000 000
µ=3
µ=1
µ = 3, 6
µ = 1, 2
µ = 2, 1
µ = 0, 7
Poˇcet pˇrepážek:
1
3
1
3
1
3
Obslouženo:
800 515
800 587
2 999 571
3 002 020
1 500 733
1 500 021
λ−1 :
1,24919
1,24908
0,33338
0,33311
0,66634
0,66666
To :
0,33310
1,00126
0,27780
0,83291
0,47603
1,42750
Tf :
0,12115
0,02410
1,38012
1,18357
1,19962
0,85389
T:
0,45425
1,02536
1,65796
2,01648
1,67566
2,28129
p0:
0,73336
0,44685
0,16672
0,04495
0,28560
0,08967
Tabulka 2.11.: Srovnání modelu M /M /1 a M /M /3 být tak pomalá, že celkový cˇ as strávený v systému bude nakonec vˇetší, než v pˇrípadˇe s jednou pˇrepážkou. S tímto modelem se mužeme ˚ setkat napˇríklad v bankách nebo v supermarketech.
2.5. Simulace modelu M /M /1/K U tohoto modelu máme omezenou kapacitu požadavku ˚ v systému. Všechny požadavky, které se snaží do systému vstoupit pˇri naplnˇení kapacity K , jsou odmítnuty a do systému vu˚ bec nevstoupí. I v tomto pˇrípadˇe si potˇrebujeme uchovávat údaje o odchodech požadavku ˚ v systému. V momentˇe, kdy se vygeneruje pˇríchod požadavku, odstraníme ze seznamu ty, které už v systému nejsou a následnˇe mužeme ˚ rozhodnout, zda požadavek bude vpuštˇen do systému cˇ i nikoliv na základˇe naplnˇení kapacity systému. Listing 2.3: Rozdíl kódu pro model M/M/1/K oproti modelu M/M/1 int K~= 5; / / k a p a c i t a syste mu LinkedList <double > Lto = new LinkedList <double >(); / / seznam c a s u odchodu / / g e n e r u j e m e c a s odchodu 1 . z a k a z n i k a
tgen = -Math.Log(rnd. NextDouble ()) * mu_rec ; to_sum += tgen; to = tgen; Lto. AddLast (to); while (true) { // generujeme cas prichodu d a l s i h o z a k a z n i k a
48
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
.... / / v y r a d i m e z e seznamu z a k a z n i k u t y , s ystemu n e j s o u p r i t o m n i
k t e r i v ~danem c a s e
j i z v~
for (int j = 0; j < Lto. Count ; j++) { if (Lto. First . Value < tp) Lto. RemoveFirst (); else break; } if (Lto. Count < K) { / / k a p a c i t a syste mu n e n i n a p l n e n a i++; if (tp < to) { / / do syste mu v c h a z i d a l s i z a k a z n i k , k t e r y s e r a d i do f r o n t y ( prepazka j e obsazena ) a ceka ( generujeme cas j e h o odchodu )
.... Lto. AddLast (to); } else { / / do syste mu v c h a z i d a l s i z a k a z n i k , k t e r y j d e o k a m z i t e k ~ v o l n e p r e p a z c e ( g e n e r u j e m e c a s j e h o odchodu )
.... Lto. AddLast (to); } } }
Testujeme se vstupními parametry: λ = 1, 5, µ = 1, 75 a kapacita systému K = 5. Test. cˇ as
Obslouženo
λ∗
To
Tf
T
p0
1 000
1 322
0,7566
0,5801
0,9847
1,5648
0,2349
10 000
13 504
0,7406
0,5706
0,9516
1,5222
0,2296
100 000
133 342
0,7499
0,5734
0,9812
1,5546
0,2354
1 000 000
1 336 658
0,7481
0,5710
0,9652
1,5362
0,2368
10 000 000
13 357 286
0,7487
0,5714
0,9678
1,5398
0,2367
Analyticky:
—
0,7487
0,5714
0,9685
1,5399
0,2367
Tabulka 2.12.: Porovnání analytického a simulaˇcního ˇrešení modelu M /M /1/K Typickým pˇríkladem tohoto systému, jak je uvedeno napˇríklad i v [13], je situace, kdy v továrnˇe máme nˇekolik stroju ˚ a na starosti je má právˇe jeden údržbáˇr. Délka intervalu ˚ bezporuchového provozu jednotlivých stroju ˚ odpovídá intenzitˇe vstupu ˚ požadavku do systému,
49
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
ˇ simulace Cas
λ = 1, 5
λ=3
λ = 1, 2
1 000 000
µ=2
µ=5
µ = 1, 3
Kapacita K :
5
10
2
20
8
15
Obslouženo:
1 391 518
1 477 876
2 447 844
2 999 519
1 106 264
1 161 603
λ∗ :
0,71864
0,67665
0,40852
0,33338
0,90395
0,86094
To :
0,49905
0,50034
0,20013
0,20003
0,76875
0,76923
Tf :
0,71936
1,20194
0,07503
0,29941
2,36976
4,26210
T:
1,21841
1,70228
0,27516
0,49944
3,13851
5,03133
p0:
0,30557
0,26056
0,51011
0,40000
0,14955
0,10652
Tabulka 2.13.: Testování modelu M /M /1/K
doba oprav každého stroje je pak dobou obsluhy.
2.6. Simulace modelu M /M /c/K V tomto modelu, stejnˇe jako v pˇredchozím máme omezený poˇcet požadavku ˚ v systému. Speciálním pˇrípadem tohoto modelu je model, kdy c = K . V systému se tedy nachází takový poˇcet požadavku, ˚ který je roven poˇctu obslužných linek. V takovém systému požadavky nemusí cˇ ekat na obsluhu, jedná se tedy o systém s nulovým cˇ asem stráveným ve frontˇe. Listing 2.4: Rozdíl kódu pro model M /M /c/K oproti modelu M /M /1/K LinkedList <double > Lto = new LinkedList <double >(); / / seznam c a s u odchodu
LinkedListNode <double > Ln; while (true) { if (Lto.Count < K) / / n e j p r v e v y r a d i m e z e seznamu z a k a z n i k u t y , j i z v ~ systemu n e j s o u p r i t o m n i
k t e r i v ~danem c a s e
{ / / k a p a c i t a syste mu n e n i n a p l n e n a i++; i_to_min = IndexMin (to , c, out to_min ); / / hledame prepazku , k t e r a j e v o l n a r e s p . bude j a k o p r v n i v o l n a
if (tp < to_min )
50
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
{ / / do sy ste mu v c h a z i d a l s i z a k a z n i k , k t e r y s e r a d i do f r o n t y ( vsechny prepazky j s o u obsazene ) a ceka
} else { / / do sy ste mu v c h a z i d a l s i z a k a z n i k , k t e r y j d e o k a m z i t e k ~ v o l n e p r e p a z c e ( g e n e r u j e m e c a s j e h o odchodu )
} / / z a r a z u j e m e v y g e n e r o v a n y c a s u odchodu p r i c h o z i h o z a k a z n i k a na s e r a z e n y seznam c a s u odchodu
if (Lto. Count == 0 || Lto. First . Value >= to[ i_to_min ]) Lto. AddFirst (to[ i_to_min ]); else { Ln = Lto.Last; for (int j = 0; j < Lto. Count ; j++) { if (Ln. Value < to[ i_to_min ]) { Lto. AddAfter (Ln , to[ i_to_min ]); break ; } Ln = Ln. Previous ; } } } }
Vstupní parametry pro první test zvolíme: λ = 1, 5, µ = 0, 75, c = 3, K = 10. Test. cˇ as
Obslouženo
λ∗
To
Tf
T
p0
1 000
1 437
0,6959
1,3977
0,4303
1,8281
0,0996
10 000
14 788
0,6763
1,3314
0,4826
1,8140
0,1170
100 000
148 469
0,6735
1,3386
0,4963
1,8350
0,1134
1 000 000
1 485 831
0,6730
1,3321
0,4859
1,8180
0,1139
10 000 000
14 873 881
0,6723
1,3338
0,4912
1,8250
0,1128
Analyticky:
—
0,6726
1,3333
0,4897
1,8231
0,1131
Tabulka 2.14.: Porovnání analytického a simulaˇcního ˇrešení modelu M /M /c/K Pˇríkladem tohoto systému muže ˚ být benzinová cˇ erpací stanice, kde je poˇcet obslužných míst dán poˇctem pump a maximální poˇcet míst v systému je omezen prostorem, do kterého se vejde právˇe K aut.
51
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
ˇ simulace Cas
λ = 1, 5
λ = 10
1 000 000
µ=2
µ=5
Poˇcet pˇrepážek c:
2
9
15
Kapacita K :
7
10
15
Obslouženo:
1 497 403
1 498 234
10 000 839
λ∗ :
0,66782
0,66745
0,09999
To :
0,49933
0,50057
0,19993
Tf :
0,07918
0,00102
0,00000
T:
0,57850
0,50057
0,19993
p0:
0,45570
0,47230
0,13548
Tabulka 2.15.: Testování modelu M /M /c/K
2.7. Simulace modelu M /M /1/./N V tomto pˇrípadˇe máme jednoduchý exponenciální systém a k dispozici je omezený poˇcet požadavku, ˚ které cyklicky do systému vstupují (ne však nutnˇe ve stejném poˇradí), jsou obslouženi a vystupují ze systému. Po každém obsloužení požadavku je vygenerován jeho nový pˇríchod do systému a tato hodnota uložena. Minimum z tˇechto hodnot pak udává, který požadavek pˇrijde k obsluze jako další. Vstupními parametry modelu jsou: λ = 1.5, µ = 13, poˇcet požadavku ˚ N = 15. Test. cˇ as
Obslouženo
λ∗
To
Tf
T
p0
1 000
12 704
0,0787
0,0776
0,4355
0,5131
0,0151
10 000
128 370
0,0779
0,0767
0,4264
0,5031
0,0154
100 000
1 278 654
0,0785
0,0771
0,4282
0,5051
0,0155
1 000 000
12 796 378
0,0782
0,0769
0,4288
0,5057
0,0155
10 000 000
127 985 907
0,0781
0,0769
0,4284
0,5054
0,0156
Analyticky:
—
0,0781
0,0769
0,4286
0,5055
0,0156
Tabulka 2.16.: Porovnání analytického a simulaˇcního ˇrešení modelu M /M /1/./N
52
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy Listing 2.5: Ukázka kódu pro model M /M /1/./N ... int j; / / i n d e x a k t u a l n i h o z a k a z n i k a int N = 15; / / p o c e t z a k a z n i k u // generujeme casy prichodu zakazniku
for (j = 0; j < N; j++) tp[j] = -Math.Log(rnd. NextDouble ()) * lambda_rec ; j = IndexMin (tp , N, out t); tp_sum = -t; while (true) { // z j i s t u j e m e cas prichodu d a l s i h o zakaznika
j = IndexMin (tp , N, out t); if (t < to) { / / do sy ste mu v c h a z i d a l s i z a k a z n i k , k t e r y s e r a d i do f r o n t y ( prepazka j e obsazena ) a ceka
.... } else { / / do sy stemu v c h a z i d a l s i z a k a z n i k , k t e r y j d e o k a m z i t e k ~ volne prepazce
..... } } j = IndexMin (tp , N, out t); static int IndexMin ( double [] pole , int N, out double min) / / v r a c i i n d e x p r v k u s ~ n e j m e n s i hodnotou v ~ p o l i
{ int IMin = 0; min = pole[IMin ]; for (int i = 1; i < N; i++) { if (pole[i] < min) { IMin = i; min = pole[IMin ]; } } return IMin; }
53
2. Simulace vybraných modelu ˚ systému ˚ hromadné obsluhy
ˇ simulace Cas
λ = 1, 5
λ=5
λ = 1, 3
1 000 000
µ = 13
µ = 13
µ = 1, 5
Poˇcet požadavku ˚ N:
5
15
5
15
5
15
Obslouženo:
635 904
1 279 529
1 200 470
1 299 983
149 301
150 249
λ∗ :
0,15723
0,07815
0,08330
0,07692
0,66980
0,66557
To :
0,07695
0,07693
0,07684
0,07692
0,66610
0,66560
Tf :
0,04203
0,42796
0,13950
0,87674
1,91135
8,55114
T:
0,11897
0,50489
0,21634
0,95367
2,57745
9,21674
p0:
0,51069
0,01565
0,07760
0,00010
0,00525
0,00000
Tabulka 2.17.: Testování modelu M /M /1/./N Pˇríkladem tohoto modelu muže ˚ být opˇet továrna s nˇekolika stroji, u nichž dochází k poruchám, které spravuje nˇekolik opraváˇru. ˚ Všechny výše uvedené modely, resp. jejich zdrojové kódy, jsou pˇriloženy na CD ve složce Simulace.
54
3. Pˇrípadová studie ˇ Pro konkrétní analýzu systému hromadné obsluhy byla vybrána poboˇcka Ceské pošty, s.p., která se nachází v Ústí nad Labem, a její vyvolávací systém. Tento systém lze charakterizovat jako otevˇrený, nebot’ poˇcet požadavku ˚ je nekoneˇcný a velikost fronty není kapacitnˇe omezena. Jelikož zákazníci do systému vstupují v náhodných cˇ asových intervalech, mužeme ˚ klasifikovat vstupní tok jako stochastickou veliˇcinu. ˇ Ceská pošta, s.p. pro naší práci poskytla údaje z vyvolávacího systému jedné poboˇcky za roˇcní období od dubna 2013 do bˇrezna roku 2014. V datech nejsou zaznamenány údaje ze dnu ˚ 17. - 21. ˇríjna 2013, nebot’ došlo k poruše systému. Tato poboˇcka má standardní provozní dobu ve všední dny 8 - 18 hod., v soboty 8 - 12 hod. Data ze systému jsou exportována do formátu CSV. Puvodní ˚ data, ze kterých byla vyjmuta jména pracovníku, ˚ se nachází v pˇríloze ve složce 1 Data VS. Vyvolávací systém poskytuje podniku údaje o cˇ asech pˇríchodu ˚ jednotlivých požadavku, ˚ dobu trvání obsluhy a dobu cˇ ekání ve frontˇe. V tomto pˇrípadˇe lze disciplínu cˇ ekání ve frontˇe charakterizovat jako cˇ ekání s mírou netrpˇelivosti. Ta je však u každého zákazníka jiná, jedná se tedy o náhodnou veliˇcinu. Klient, který opustí systém dˇríve, než je obsloužen, zustává ˚ v systému zaregistrován jako cˇ ekající požadavek. Po jeho vyvolání, kdy se klient k pˇrepážce opakovanˇe nedostaví, je oznaˇcen za obslouženého zákazníka s minimální dobou obsluhy. Muže ˚ tak docházet ke zkreslení údaju ˚ o poˇctu obsloužených klientu ˚ a jejich dobˇe obsluhy. Informace o tom, jak se z fronty vybírá klient, který pˇrijde na ˇradu v momentˇe, kdy se uvolní pˇrepážka, jsme nezískali, resp. nebylo možné nám je poskytnout jakožto tˇretí stranˇe. Víme jen obecné informace, napˇríklad to, že systém umožnuje ˇ pracovat s relativní prioritou požadavku, ˚ která se obˇcas využívá pro duchodovou ˚ službu, v závislosti na výplatních dnech duchod ˚ u. ˚
1
ˇ V rámci dohody s Ceskou poštou o využití dat v bakaláˇrské práci, nesmí být zveˇrejnˇena jména zamˇestnancu, ˚ ani informace o tom, ze které poboˇcky data pochází.
55
3. Pˇrípadová studie V každém souboru najdeme data zpracovaná pro jeden mˇesíc, a to vždy s následujícími údaji: • Datum ˇ - konkrétní cˇ as ve formátu hh:mm:ss • Cas • Událost - urˇcuje, co se dˇeje v systému, pˇrípadnˇe se systémem. Narazíme tu na položky: – Inicializace jednotky – Aktivace systému – Diagnostika - Automatické smazání fronty – Pˇrihlášení obsluhujícího – Zaˇrazení do fronty, tisk.2, odhad cˇ ekání [s] - systém dokáže pˇredpovídat dobu cˇ ekání klienta v závislosti na souˇcasném vytížení pˇrepážek – Vyvolání klienta – Opakované vyvolání klienta – Ukonˇcení obsluhy – Vyvolání klienta mimo poˇradí – Odhlášení obsluhujícího – Deaktivace systému • Klient - oznaˇcení klienta poˇradovým cˇ íslem, pod kterým vystupuje v celém systému ˇ • Cinnost - oznaˇcení pro službu, kterou klient požaduje (služby jsou oznaˇceny T01 T09) • Pˇrepážka - poˇradová cˇ ísla pro pˇrepážky P01 - P11 • Doba cˇ ekání klienta • Doba obsluhy klienta ˇ Pro zpracování dat od Ceské pošty,s.p. byla vytvoˇrena jednoduchá aplikace v jazyce C#, která zpracovává údaje do grafu ˚ a vygeneruje potˇrebná data do souboru ˚ CSV. Následná statistická analýza byla provádˇena v tabulkovém kalkulátoru.
56
3. Pˇrípadová studie
3.1. Analýza pˇríchodu zákazníku˚ Testy dobré shody Test χ2 dobré shody užíváme v pˇrípadˇe, kdy chceme na základˇe jednoho náhodného výbˇeru o rozsahu n rozhodnout o tom, jestli zamítnout nebo naopak nezamítnout hypotézu, zda náhodný výbˇer pochází ze zcela konkrétního rozdˇelení.
3.1.1. Test dobré shody na Poissonovo rozložení V našem prvním pˇrípadˇe budeme zkoumat, zda pˇríchody zákazníku ˚ do systému mají Poissonovo rozdˇelení. Zvolíme hypotézy: • nulová hypotéza H0 - namˇeˇrená data se ˇrídí pˇredpokládaným Poissonovo rozdˇelením, • alternativní hypotéza - H1 data se Poissonovo rozdˇelením neˇrídí. Za náhodný výbˇer budeme považovat poˇcet pˇríchodu ˚ zákazníku ˚ ze dne 30. záˇrí 2013 a to v desetiminutových intervalech za celý den, tedy od cˇ asu 7:58 do 17:58. Poslední klient dorazil na poštu v cˇ ase 17:51:07. Poˇcet klientu ˚ v jednotlivých intervalech si necháme vygenerovat naší aplikací do souboru ve formátu csv. Zvolení hladiny významnosti. Standardnˇe se volí α z intervalu (0.01, 0.10). V našem pˇrípadˇe otestujeme více variant, zvolíme "tradiˇcní" hladiny: α0 = 0, 10
α1 = 0, 05
α2 = 0, 025
α3 = 0, 01
Testovací kritérium je ve tvaru:
χ2 =
k (m − n · p )2 X i i i =0
n · pi
,
[6]
(3.1)
kde n znaˇcí rozsah výbˇeru, m i empirické cˇ etnosti, p i jsou teoretické pravdˇepodobnosti. Nejprve je nutné spoˇcítat empirické cˇ etnosti. Maximum klientu, ˚ kteˇrí pˇrišli v 10 minutovém intervalu, je 30, staˇcí nám tedy zkoumat cˇ etnosti 0 - 30. Pro výpoˇcet hodnoty testovacího kritéria potˇrebujeme nejdˇríve získat parametr teoretického rozdˇelení pravdˇepodobnosti. Poissonovo rozdˇelení má jen jeden parametr - λ. Odhad tohoto parametru získáme metodou
57
3. Pˇrípadová studie maximální vˇerohodnosti. V tomto pˇrípadˇe odhadneme stˇrední hodnotu jako výbˇerový pru˚ mˇer: k 1 X E (X ) = X¯ = · xi (3.2) n i =0 v našem pˇrípadˇe: E (X ) =
0 · 0 + 1 · 1 + 2 · 0 + 3 · 0 + 4 · 0 + ... + 28 · 0 + 29 · 0 + 30 · 1 = 15,76666667 60
Získali jsme odhad parametru λ, protože pro Poissonovo rozdˇelení pravdˇepodobnosti platí E (X ) = λ. λ = 15,76666667 klientu ˚ / 10 minut. Nyní potˇrebujeme získat teoretické pravdˇepodobnosti. Ty získáme ze vzorce 1.6 p i = P (X = i ) =
λ2 −λ ·e i!
pro i = 0, 1, 2, .., 45 a λ = 15,76666667
Následnˇe vypoˇcítáme teoretické cˇ etnosti n · p i .
58
3. Pˇrípadová studie
Tˇrída
Poˇcet klientu ˚i
ˇ Cetnost mi
pi
n · pi
1
0
0
1,4211E-07
8,5266E-06
2
1
1
2,2406E-06
0,00013444
3
2
0
1,76634E-05
0,0010598
4
3
0
9,28308E-05
0,00556985
5
4
0
0,000365908
0,02195448
6
5
0
0,00115383
0,0692298
7
6
0
0,003032009
0,18192054
8
7
1
0,006829239
0,40975436
9
8
0
0,013459293
0,80755755
10
9
4
0,023578687
1,4147212
11
10
3
0,037175729
2,23054375
12
11
5
0,053285212
3,19711271
13
12
4
0,070010848
4,20065087
14
13
4
0,084910592
5,09463554
15
14
3
0,0956255
5,73753002
16
15
7
0,100513026
6,03078156
17
16
5
0,099047211
5,94283266
18
17
2
0,091861433
5,51168598
19
18
4
0,080463811
4,82782864
20
19
3
0,066770846
4,00625079
21
20
2
0,052637684
3,15826104
22
21
2
0,039520039
2,37120233
23
22
2
0,028322695
1,69936167
24
23
2
0,019415412
1,16492474
25
24
3
0,012754847
0,76529084
26
25
0
0,008044057
0,48264342
27
26
1
0,004877999
0,29267992
28
27
1
0,00284851
0,17091062
29
28
0
0,001603983
0,09623896
30
29
0
0,00087205
0,05232302
31
30
1
0,000458311
0,02749865
suma n
60
Tabulka 3.1.: První cˇ ást tabulkové metody
59
3. Pˇrípadová studie Tento test vyžaduje, aby všechny teoretické cˇ etnosti n · p i byly vˇetší než 5. Pokud toto není dodrženo, je nutno slouˇcit tˇrídy tak, aby podmínka byla dodržena. V našem pˇrípadˇe tedy slouˇcíme tˇrídy 1 - 11, 12 + 13, 19 + 20 a 21 - 31. Nové empirické cˇ etnosti, teoretické pravdˇepodobnosti a teoretické cˇ etnosti získáme jako sumy tˇechto puvodních ˚ parametru ˚ z tabulky 3.1. Vznikne nám nová tabulka: tˇrída
i
mi
pi
n · pi
mi − n · p i
(m i − n · p i )2
(m i −n·p i )2 n·p i
1-11
0-10
9
0,0857075
5,14245430
3,85754569
14,8806588
2,89368809
12-13
11-12
9
0,1232960
7,39776357
1,60223642
2,56716154
0,34701859
14
13
4
0,0849105
5,09463554
-1,0946355
1,19822696
0,23519385
15
14
3
0,0956255
5,73753002
-2,7375300
7,49407063
1,30614926
16
15
7
0,1005130
6,03078155
0,96921844
0,93938438
0,15576495
17
16
5
0,0990472
5,94283266
-0,9428326
0,88893342
0,14958076
18
17
2
0,0918614
5,51168597
-3,5116859
12,3319384
2,23741678
19-20
18-19
7
0,1472346
8,83407943
-1,8340794
3,36847359
0,38078074
21-31
20-30
14
0,1713555
10,2813352
3,71866478
13,8284678
1,34500699
Tabulka 3.2.: Tabulková metoda pro testování hypotéz Nyní mužeme ˚ vypoˇcítat hodnotu testovacího kritéria podle vzorce 3.1. χ2 = 9,05059997 Podle hladin významnosti urˇcíme kritické hodnoty testovacího kritéria. Ty jsou závislé na pocˇ tu stupn ˇu ˚ volnosti. V našem pˇrípadˇe je poˇcet stupn ˇu ˚ volnosti v = r − k − 1 = 7. Parametr r pˇredstavuje poˇcet tˇríd (ten nám po slouˇcení tˇríd klesl na 9), k znaˇcí poˇcet odhadovaných (neznámých) parametru ˚ (v tomto pˇrípadˇe byl jeden - λ). Kritické hodnoty mužeme ˚ najít ve statistických tabulkách nebo v Excelu pomocí funkce CHIINV(hladina významnosti; poˇcet stupn ˇu ˚ volnosti). hladina významnosti α
kritická hodnota χ2kr i t
0,01
18,47530691
0,025
16,01276427
0,05
14,06714045
0,1
12,01703662
Tabulka 3.3.: Kritické hodnoty testovacího kritéria Poissonova rozdˇelení Zjistili jsme, že χ2 < χ2kr i t pro jakékoli námi zvolené α. Závˇerem je, že nezamítáme nulové hypotézy o tom, že poˇcty pˇríchodu ˚ klientu ˚ do systému se ˇrídí Poissonovým rozdˇelením.
60
3. Pˇrípadová studie
ˇ 3.1.2. Test dobré shody na exponenciální rozdelení Jak bylo zmínˇeno v teoretické cˇ ásti, cˇ asto se vyskytují tzv. exponenciální systémy hromadné obsluhy, jejichž poˇcty požadavku, ˚ které vstupují do systému bˇehem doby t , mají Poissonovo rozdˇelení a doby mezi následujícími vstupujícími požadavky mají rozdˇelení exponenciální. Otestujeme, zda doby mezi pˇríchody klientu ˚ analyzovaného systému mají exponenciální rozložení. Postup je analogický s postupem testování Poissonova rozdˇelení. H0 : data se ˇrídí exponenciálním rozdˇelením, H1 : data se exponenciálním rozdˇelením neˇrídí. Za náhodný výbˇer budeme považovat cˇ asové úseky mezi jednotlivými pˇríchody zákazníku ˚ ze dne 30. záˇrí 2013. Hladiny významnosti zvolíme stejné, jako v pˇredchozím pˇrípadˇe: α0 = 0, 10 α1 = 0, 05 α2 = 0, 025 α3 = 0, 01 Pro tento test je nutné rozdˇelit výbˇer do k-tˇríd s krajními body a i , v posledním intervalu pak položíme a k = ∞. Rozdˇelení na tˇrídy vypadá: < 0, a 1 ), < a 1 , a 2 ), < a 2 , a 3 ), ..., < a k−2 , a k−1 ), < a k−1 , ∞). ˇ Cetnosti tˇechto tˇríd oznaˇcíme m i a
Pk
i =1 m i
= n. Stˇred tˇrídy (tzv. tˇrídní znak) oznaˇcme z i . x
Distribuˇcní funkce exp. rozdˇelení je dána vztahem F (x) = 1−e − λ . Potom mužeme ˚ p i vyjádˇrit takto: ai
p i = F (a i ) − F (a i −1 ) = 1 − e − λ − 1 + e −
a i −1 λ
= e−
a i −1 λ
ai
− e− λ
pro i = 1, 2, ..., k
(3.3)
Testovací kritérium je ve tvaru: χ2 =
k (m − n · p )2 X i i i =1
n · pi
.
(3.4)
1 Exponenciální rozdˇelení má jeden parametr - λ, pro který platí: E (X ) = λ1 , tedy λ = E (X . ) I v tomto pˇrípadˇe potˇrebujeme nejprve získat jeho odhad. Opˇet použijeme metodu maximální vˇerohodnosti a odhadneme stˇrední hodnotu jako výbˇerový prumˇ ˚ er.
E (X ) =
k 1 X 1 = X¯ = · mi · zi λ i =1 n
(3.5)
V našem pˇrípadˇe získáme hodnoty: X¯ = 42, 883068, což znamená, že prumˇ ˚ ernˇe pˇrijde jeden zákazník za 43 sekund. Z této hodnoty odhadneme parametr rozdˇelení, cˇ ili λ = 0, 023319. Následnˇe mužeme ˚ vypoˇcítat teoretické pravdˇepodobnosti p i a teoretické cˇ etnosti n · p i .
61
3. Pˇrípadová studie
Tˇrída
Hranice intervalu
mi
zi
pi
n · pi
1
0
50
718
25
0,688377
650,5163
2
50
100
145
75
0,214514
202,7158
3
100
150
62
125
0,066848
63,1709
4
150
200
14
175
0,020831
19,6855
5
200
250
5
225
0,006491
6,134454
6
250
300
0
275
0,002023
1,911637
7
300
350
0
325
0,00063
0,59571
8
350
∞
1
374,5
0,000285
0,269673
Tabulka 3.4.: Test exponenciálního rozdˇelení I v tomto pˇrípadˇe potˇrebujeme, aby platilo n · p i ≥ 5. Slouˇcíme tˇrídy 5 - 8 do jedné. Nyní mu˚ žeme vypoˇcítat hodnoty testovací kritéria pro pˇríslušné tˇrídy. Jejich souˇcet nám dá hodnotu testovacího kritéria tohoto výbˇeru. Tˇrída
Hranice intervalu
mi
zi
pi
n · pi
Test. kritérium
1
0
50
718
25
0,688377
650,5163
7,000665992
2
50
100
145
75
0,214514
202,7158
16,43243695
3
100
150
62
125
0,066848
63,1709
0,021703059
4
150
200
14
175
0,020831
19,6855
1,642067613
5-8
200
∞
6
225
0,00943
8,911473
0,951209444
1
945
χ2 = 26,048083
n = 945
Tabulka 3.5.: Upravená tabulka pro test exponenciálního rozdˇelení Hodnota testovacího kritéria: χ2 = 26,04808305. Následnˇe zjistíme kritické hodnoty testovacího kritéria pro ruzné ˚ hladiny významnosti a porovnáme. V tomto pˇrípadˇe hledáme hodnoty pro tˇri stupnˇe volnosti. hladina významnosti α
kritická hodnota χ2kr i t
0,01
11,34487
0,025
9,348404
0,05
7,814728
0,1
6,251389
Tabulka 3.6.: Kritické hodnoty testovacího kritéria exponenciálního rozdˇelení
62
3. Pˇrípadová studie Zjistili jsme, že χ2 > χ2kr i t pro jakékoli námi zvolené α. Mužeme ˚ ˇríci, že nulové hypotézy pro jednotlivé hladiny významnosti o tom, že doba mezi jednotlivými pˇríchody klientu ˚ se ˇrídí exponenciálním rozdˇelením, zamítáme. Analyzovaný systém není exponenciální. Že je náš výsledek správný, si mužeme ˚ potvrdit grafem cˇ etností pˇríchodu klientu ˚ v jednotlivých cˇ asových pásmech bˇehem celého roku.
Obrázek 3.1.: Návštˇevnost v jednotlivých cˇ asových pásmech bˇehem roku
3.1.3. Další hypotézy Za zdroj hypotézy mužeme ˚ považovat pˇredchozí zkušenost. Jedna z nejjednodušších hypotéz muže ˚ napˇríklad znít: V prosinci na poštu dorazí nejvíce klientu. ˚ Naše úvaha vychází ˇ z toho, že v tomto období zákazníci využívají pˇrepravních spoleˇcností, a tedy i Ceské pošty, pro zasílání vánoˇcních dárku. ˚ Z grafu 3.2 na následující stránce je zˇrejmé, že naše hypotéza byla špatná. Nejvíce klientu ˚ dorazilo v kvˇetnu. Duvodem ˚ muže ˚ být vyplácení vrácených daní pˇres poštovní složenky cˇ i placení nedoplatku ˚ / vrácení pˇreplatku z bytových družstev. Dále také vidíme, že v období letních mˇesícu, ˚ kdy lidé nejˇcastˇeji odjíždí na dovolenou, se poˇcet klientu ˚ výraznˇe nemˇení. Další hypotézou, kterou otestujeme je následující pˇredpoklad: V období mezi 11. a 20. dnem v mˇesíci pˇrijde na poštu nejvíce klientu ˚ z celého mˇesíce. Naše tvrzení mužeme ˚ opˇrít o znalosti z poštovního provozu. V tomto období dochází pˇredevším k vyplácení duchod ˚ u, ˚ rodicˇ ovských pˇríspˇevku ˚ a placení SIPO. Naše hypotéza platí pro vˇetšinu mˇesícu ˚ v roce, jak dokazuje graf 3.3 na další stranˇe. Výjimky tvoˇrí mˇesíce kvˇeten 2013, ˇríjen 2013 a leden 2014. Naopak v únoru 2014 pˇrišlo v tomto období 50% klientu ˚ tohoto mˇesíce. Vztáhneme-li tuto hypotézu na celý rok, pak jsme se nemýlili a hypotézu mužeme ˚ potvrdit (viz tabulka 3.7).
63
3. Pˇrípadová studie
ˇ Obrázek 3.2.: Cetnost pˇríchodu ˚ klientu ˚ bˇehem roku
ˇ Obrázek 3.3.: Cetnost pˇríchodu ˚ klientu ˚ v prubˇ ˚ ehu mˇesíce
Období
Poˇcet klientu ˚
1. - 10.
59 450
11. - 20.
79 117
21. - 31.
65 726
Tabulka 3.7.: Poˇcet klientu ˚ v jednotlivých obdobích za celý rok
64
3. Pˇrípadová studie
3.2. Analýza využití služeb Naše zkoumaná poboˇcka poskytuje všechny základní poštovní služby a nˇekteré speciální. Zákazník si pˇri pˇríchodu na poboˇcku vybere z nabídky, kterou službu požaduje. Systém jej pak zaˇradí podle zvolené služby k odpovídající pˇrepážce. Oznaˇcení služby
Poskytovaná služba
T01
Listovní služby - výdej, jednotlivé podání max. do 5 položek
T02
Listovní služby - hromadné podání
T03
Balíková služba - pˇríjem a výdej balíku ˚ a cenných psaní, pˇríjem a výdej EMS (Express Mail Service)
T04
Penˇežní služby, SIPO Poštovní spoˇritelna (vklady a výplaty)
T05
Duchodová ˚ služba
T06
Poštovní spoˇritelna (vklady a výplaty) - specializovaná pˇrepážka
T07
CZECHPOINT, DINO 3
T08
Ostatní služby
T09
Služba pro osoby se sníženou schopností pohybu a orientace Tabulka 3.8.: Pˇrehled poskytovaných služeb
Každá služba je v systému rozdˇelena ještˇe na konkrétní služby, napˇríklad u podání balíkových zásilek pošta eviduje, zda klient využil službu Balík do ruky, Balík na poštu, Obyˇcejný balík atd. Data s tˇemito informacemi nám bohužel nebyla poskytnuta. V grafu 3.4 na následující stranˇe vidíme, že nejvíce využívaná je listovní služba pro podání jednotlivých zásilek a výdej uložených zásilek, hojnˇe využívaná je i balíková služba spoleˇcnˇe s penˇežními službami, kam spadá napˇríklad vyplácení poštovních poukázek. Naopak nejménˇe využívanou službou, kromˇe služby pro osoby se sníženou schopností pohybu a orientace, je služba kontaktního místa veˇrejné správy.
3
CZECHPOINT - jedná se o tzv. kontaktní místo veˇrejné správy. Klienti zde mohou získat napˇr. výpis z Katastru nemovitostí, Obchodního rejstˇríku, Rejstˇríku trestu, ˚ Živnostenského rejstˇríku, cˇ i z bodového hodnocení ˇridiˇce, DINO - Dluhové inkaso obyvatelstva - Služba je urˇcena pro vˇeˇritele jako nástroj pro ˇrešení vzniklých penˇežních pohledávek prostˇrednictvím mimosoudního oslovení dlužníka a inkasa pohledávky. Pˇrevzato z http://www.ceskaposta.cz/sluzby/platebni-a-financni-sluzby-cr/dino
65
3. Pˇrípadová studie
Obrázek 3.4.: Využití služeb bˇehem roku U služeb si otestujeme napˇríklad hypotézu: V posledním týdnu v mˇesíci bude využití du˚ chodové služby (T05) požadovat maximálnˇe 5% klientu ˚ ze všech, kteˇrí službu za daný mˇesíc využijí.
Obrázek 3.5.: Využití duchodové ˚ služby bˇehem jednotlivých dní za cˇ tvrtletí Naši hypotézu o tom, že službu v posledním týdnu využívá maximálnˇe 5% všech klientu ˚ zamítáme (viz tabulka 3.9).
66
3. Pˇrípadová studie
Datum
Poˇcet klientu ˚
%
1. - 6.
3313
16,82
7. - 12.
5364
27,22
13. - 18.
5002
25,4
19. - 24.
4973
25,24
25. - 31.
1048
5,32
celkem
19700
100
Tabulka 3.9.: Využití duchodové ˚ služby
3.3. Analýza obsluhy Mezi nejvýznamnˇejší vlastnosti, které popisují systém, se ˇradí prumˇ ˚ erná doba cˇ ekání poˇ žadavku ve frontˇe a prumˇ ˚ erná doba obsluhy. Ceská pošta, s.p. se snaží dostat prumˇ ˚ ernou dobu obsluhy na každé poboˇcce, stejnˇe jako dobu cˇ ekání, pod 5 minut pro co nejvˇetší poˇcet klientu ˚ (oˇcekávají se cˇ ísla kolem 75 - 85 % zákazníku). ˚ Oba parametry se liší pro jednotlivé služby. Napˇríklad pro službu specializované pˇrepážky Poštovní spoˇritelny se oˇcekává nejvyšší doba cˇ ekání ve frontˇe. Je to dáno tím, že tuto službu zpracovává pouze jedna pˇrepážka a klienti musí vyˇckat, než je pˇrepážka uvolnˇená. Naopak u služby T07 (Czechpoint, DINO) se dá oˇcekávat nejdelší prumˇ ˚ erná doba obsluhy. Žádá-li klient výpis z jakéhokoli rejstˇríku, pracovník pošty musí zkontrolovat totožnost dotyˇcného v databázi neplatných dokladu, ˚ vyplnit s klientem žádost o výpis a poslat ji na pˇríslušné pracovištˇe. Poté je bud’ zaslán elektronický výpis nebo informace o tom, že žádost nemohla být vyˇrízena elektronicky.
Obrázek 3.6.: Prumˇ ˚ erná doba obsluhy v minutách podle jednotlivých služeb
67
3. Pˇrípadová studie
ˇ 3.3.1. Test rozdelení doby obsluhy U doby obsluhy se standardnˇe pˇredpokládá, že bude mít exponenciální rozdˇelení. Otestujeme ho pomocí testování hypotéz, stejnˇe jako doby mezi pˇríchody zákazníku. ˚ Jako náhodný výbˇer použijeme data z 15. ledna 2014, kdy na poštu dorazilo celkem 721 klientu ˚ v dobˇe mezi 8. - 18. hodinou. Za nulovou hypotézu zvolíme pˇredpoklad: Doba obsluhy se ˇrídí exponenciálním rozdˇelením. Naše hypotéza vychází i z následujícího grafu.
Obrázek 3.7.: Doba obsluhy a cˇ ekání 15. ledna 2014 Doby obsluhy jednotlivých zákazníku ˚ pˇrevedeme na sekundy, poté výbˇerový prumˇ ˚ er E ( X¯ ) = 178, 4119. Z toho vyplývá, že parametr exponenciálního rozdˇelení λ = 0, 005605. A dopoˇcteme vše ostatní viz. následující tabulka 3.10. Tˇrída
Hranice intervalu
mi
zi
pi
n · pi
Test. kritérium
1
0
130
379
65
0,51744
373,0745
0,094113
2
130
260
200
195
0,249696
180,0307
2,215029
3
260
390
80
325
0,120493
86,87554
0,544147
4
390
520
29
455
0,058145
41,92263
3,983393
5
520
650
14
585
0,028058
20,23017
1,918668
6
650
780
6
715
0,01354
9,762261
1,449931
7
780
∞
113
845
0,012627
9,104184
1,667077
1
721
χ2 = 11,87236
n = 721
Tabulka 3.10.: Hodnoty pro test exponenciálního rozdˇelení doby obsluhy Nyní nalezneme kritické hodnoty testovacího kritéria pro stupen ˇ volnosti 5 a rozhodneme o zamítnutí / nezamítnutí nulové hypotézy.
68
3. Pˇrípadová studie hladina významnosti α
kritická hodnota χ2kr i t
0,01
15,08627
0,025
12,8325
Zjistili jsme, že χ2 < χ2kr i t pro námi zvolené α. Mužeme ˚ ˇríci, že nulové hypotézy nezamítáme a doba obsluhy se ˇrídí exponenciálním rozdˇelením. Tuto informaci mužeme ˚ následnˇe využít i pro simulaci.
ˇ 3.3.2. Cekání ve fronteˇ Doba cˇ ekání ve frontˇe je nejduležitˇ ˚ ejším ukazatelem spokojenosti zákazníka. Doba cˇ ekání vyjadˇruje cˇ as od zaˇrazení klienta do vyvolávacího systému (tj. okamžik, kdy zákazník stiskne tlaˇcítko pro požadovanou službu) až po jeho vyvolání k pˇrepážce.
Obrázek 3.8.: Prumˇ ˚ erná doba cˇ ekání v minutách podle jednotlivých služeb Jako další si zvolíme hypotézu o dobˇe cˇ ekání ve frontˇe. Podle grafu 3.9 si položme hypotézu HO : V dopoledních hodinách klient stráví ve frontˇe více cˇ asu než odpoledne. Postupovat budeme následovnˇe. Zjistíme, zda-li rozložení doby cˇ ekání ve frontˇe je stejné (v našem pˇrípadˇe pˇredpokládáme exponenciální) pro oba cˇ asové intervaly a následnˇe porovnáme jejich stˇrední hodnoty. Z tabulky 3.12 vidíme, že náš odhad testovacího kritéria vyhovuje kritickému oboru, nebot’ χ2 < χ2kr i t pro námi zvolené hladiny významnosti. Doba cˇ ekání v dopoledních hodinách se ˇrídí exponenciálním rozložení s prumˇ ˚ erem E (X d op ) = 181, 4658. Dle tabulky 3.14 mužeme ˚ tvrdit, že i odpolední doby cˇ ekání ve frontˇe se ˇrídí exponenciálním rozdˇelením. Prumˇ ˚ er E (X od p ) = 145,1554.
69
3. Pˇrípadová studie
Obrázek 3.9.: Doba cˇ ekání 15. ledna 2014 v intervalu 130s
Tˇrída
Hranice intervalu
mi
zi
pi
n · pi
Test. kritérium
1
0
130
199
65
0,511487
186,6927
0,811338
2
130
260
92
195
0,249868
91,20184
0,006985
3
260
390
34
325
0,122064
44,55331
0,499755
4
390
520
23
455
0,05963
21,76488
0,070091
5
520
650
4
585
0,02913
10,63243
4,137264
6
650
∞
13
715
0,027822
10,15488
0,797126
1
365
χ2 = 8, 322558
n = 365
Tabulka 3.11.: Test exponenciálního rozložení pro dopolední dobu cˇ ekání
hladina významnosti α
kritická hodnota χ2kr i t
0,01
13,2767
0,025
11,14329
0,05
9,487729
Tabulka 3.12.: Kritické hodnoty kritéria pro dopoledne
Jelikož platí E (X d op ) > E (X od p ), tak nulovou hypotézu o cˇ ekání ve frontˇe nezamítáme.
70
3. Pˇrípadová studie
Tˇrída
Hranice intervalu
mi
zi
pi
n · pi
Test. kritérium
1
0
130
236
65
0,591634
228,3708
0,254872
2
130
260
98
195
0,241603
93,25883
0,241035
3
260
390
32
325
0,098663
38,08373
0,971852
4
390
520
12
455
0,04029
15,5521
0,811299
5
520
∞
8
585
0,02781
10,73459
0,696623
1
386
χ2 = 2, 975681
n = 386
Tabulka 3.13.: Test exponenciálního rozložení pro odpolední dobu cˇ ekání
hladina významnosti α
kritická hodnota χ2kr i t
0,01
11,34487
0,025
9,348404
0,05
7,814728
Tabulka 3.14.: Kritické hodnoty kritéria pro odpoledne
3.4. Analýza pˇrepážek Jedním z duležitých ˚ ukazatelu ˚ celého systému je vytíženost kanálu, ˚ se kterou souvisí prostoje a efektivita práce. V našich získaných datech z vyvolávacího systému se nacházejí informace o pˇrihlášení a odhlášení obsluhujících na jednotlivé pˇrepážky. Z toho mužeme ˚ zjistit vytíženost jednotlivých pˇrepážek. V tomto systému pˇrepážky P01 - P10 mohou obsluhovat všechny dostupné služby na poboˇcce s výjimkou služby T06, pro kterou je vyhrazena specializovaná pˇrepážka P11 pro služby Poštovní spoˇritelny. Zpravidla to tak nebývá. Každá pˇrepážka má urˇceny napˇr. tˇri až cˇ tyˇri služby, které bude bˇehem dne obsluhovat. Z tabulky 3.15 vidíme, že specializovaná pˇrepážka P11 je znaˇcnˇe nevytížená. Obecnˇe se doporuˇcuje, aby vytíženost systému byla na hranici 80 %. Je-li vyšší, muže ˚ a také dochází k prodloužení cˇ asu doby cˇ ekání požadavku ˚ ve frontˇe. Naopak cˇ ísla kolem 60 - 70% znaˇcí krátké doby cˇ ekání. Mezi neaktivní cˇ as u pˇrepážky se v našem pˇrípadˇe zapoˇcítává i doba, kdy obsluhující plní své povinnosti vnitˇrní služby (napˇríklad pˇrijímá zásilky k uložení od doruˇcovatelu ˚ a ty následnˇe tˇrídí a rovná do skladu, vypravuje novˇe podané zásilky na kurzy). Ze systému se totiž neodhlašuje. Údaje o tom, kolik cˇ asu zamˇestnanec stráví tˇemito službami nemáme k dispozici, muže ˚ tedy docházet ke zkreslení údaju. ˚
71
3. Pˇrípadová studie
Obrázek 3.10.: Ukázkový graf vytíženosti pˇrepážky P03 a P11 bˇehem roku Pˇrepážka
Poˇcet aktivních hodin
Poˇcet neaktivních hodin
Využití [%]
P01
1086,735
332,5992
76,56653
P02
1152,358
326,7628
77,90831
P03
818,3806
131,3067
86,17369
P04
873,9994
224,8331
79,53891
P05
1291,919
275,5244
82,42205
P06
950,3192
487,2603
66,10551
P07
549,6428
268,3614
67,19315
P08
558,8389
192,1331
74,41201
P09
683,5844
223,1869
75,38664
P10
824,0906
328,9214
71,47286
P11
557,5633
1890,383
22,77678
Tabulka 3.15.: Vytíženost jednotlivých pˇrepážek v období 04/2013 - 03/2014
3.5. Výsledky analýzy Ve zkoumaném období na poštu pˇrišlo celkem 204 297 klientu, ˚ kteˇrí byli obslouženi ve 296 dnech, což je prumˇ ˚ ernˇe 690 klientu ˚ za den. Mˇesíˇcní prumˇ ˚ erná návštˇevnost cˇ inila 17 025 klientu ˚ obsloužených ve 25 dnech (pˇresnˇeji 24,6667 dne). Byla zjištˇena prumˇ ˚ erná doba obsluhy klienta 2 minuty a 41 sekund, prumˇ ˚ erná doba cˇ ekání ve frontˇe 6 minut a 9 sekund a prumˇ ˚ erná doba, kterou zákazník strávil v systému (ˇcas od jeho pˇríchodu, resp. zaˇrazení do fronty do ukonˇcení jeho obsluhy). Její hodnota je 8 minut a 48 vteˇrin. Ve sledovaném období bylo z celkového poˇctu 204 297 klientu ˚ obslouženo, nebo zaˇcalo být
72
3. Pˇrípadová studie obsluhováno, do 5 minut po pˇríchodu na poboˇcku 114 691 klientu, ˚ což je 56,14% ze všech klientu. ˚ Do 10 minut to bylo celkem 160 752 klientu, ˚ tedy 78,69% ze všech. Tato cˇ ísla se ˇradí ˇ mezi nejhorší v regionu Severní Cechy, pod které spadá 22 poboˇcek s vyvolávacím systémem. Prumˇ ˚ ernˇe bývá do 5 minut vyvoláno k obsluze 75% klientu, ˚ do 10 minut je to pak 90%. U doby obsluhy naopak poboˇcka patˇrí v regionu k lepšímu prumˇ ˚ eru. Do 5 minut od vyvolání klienta bylo obslouženo 179 929 klientu, ˚ což je 87,5%, do 10 minut pak celkovˇe 200 081 klient (97,3%). Další intervaly jsou rozepsány v tabulce 3.16. Prumˇ ˚ ernˇe je otevˇreno 6 obsluhujících kanálu, ˚ které musí pokrýt všechny služby. ˇ Casový interval
Poˇcet klientu ˚
%
(doba cˇ ekání)
Poˇcet klientu ˚
%
(doba obsluhy)
0 - 5 minut
114 691
56,14
179 929
87,5
5 - 10 minut
46 061
22,55
20 152
9,8
10 - 15 minut
23 737
11,62
3 715
1,8
15 - 20 minut
11 594
5,67
1 060
0,5
20 - 25 minut
4 731
2,32
393
0,2
25 - 30 minut
2 093
1,02
178
0,1
30 minut a více
1 386
0,68
192
0,1
Tabulka 3.16.: Pˇrehled doby cˇ ekání ve frontˇe a doby obsluhy za celý rok
Obrázek 3.11.: Porovnání prumˇ ˚ erných dob cˇ ekání, obsluhy a doby strávené v systému bˇehem dne
73
3. Pˇrípadová studie
Obrázek 3.12.: Poˇcet aktivních pˇrepážek bˇehem cˇ asových intervalu ˚
Obrázek 3.13.: Porovnání prumˇ ˚ erných dob cˇ ekání, obsluhy podle jednotlivých služeb
Služba
Doba cˇ ekání
Doba obsluhy
Doba strávená v systému
T01
06m 07s
02m 30s
08m 37s
T02
05m 55s
02m 55s
08m 49s
T03
06m 29s
03m 08s
09m 37s
T04
06m 04s
02m 00s
08m 04s
T05
06m 40s
02m 48s
09m 28s
T06
05m 59s
04m 04s
10m 03s
T07
05m 28s
05m 47s
11m 14s
T08
05m 22s
02m 42s
08m 04s
T09
02m 13s
02m 37s
04m 50s
Tabulka 3.17.: Prumˇ ˚ erné doby cˇ ekání, obsluhy a doby strávené v systému dle služeb
74
3. Pˇrípadová studie Také jsme zkoumali, zda-li systém funguje v režimu FIFO alespon ˇ v rámci jednotlivých služeb. Bylo zjištˇeno, že z celkových 204 297 klientu, ˚ kteˇrí pˇrišli za zkoumané období na poštu, celkem 21 175 klientu ˚ (10,365 %) v systému pˇredbˇehlo. Tedy byli vyvoláni k odbavení dˇríve, než klient, který dorazil do systému pˇred nimi a požadoval tutéž službu. Režimem FIFO se tedy vyvolávací systém neˇrídí. V takto obsáhlém systému hromadné obsluhy je možné vymyslet nepˇreberné množství hypotéz. V naší analýze jsme otestovali jen nˇekteré. Námˇetem k dalšímu zkoumání mohou být napˇríklad tyto hypotézy: • V sudé datum chodí více klientu ˚ než v liché (v sudé dny mezi 2. - 24. se jedná o výplatní termíny duchod ˚ u). ˚ Ovšem tato hypotéza muže ˚ být ztížena mimoˇrádnými situacemi, napˇríklad vyjde-li termín na sobotu, duchodci ˚ si mohou pˇrijít již v pátek pˇred termínem, naopak vyjde-li na nedˇeli, musí poˇckat do pondˇelí. K podobným zmˇenám dochází i pˇri státních svátcích. • V prosinci je prumˇ ˚ erná doba strávená ve frontˇe vˇetší než v ostatních mˇesících. • V pracovních dnech v odpoledních hodinách chodí na poštu více lidí než dopoledne. • Intenzita obsluhy je vyšší v zátˇežových obdobích (tzn. období svátku) ˚ • Jestliže v pátek pˇrijde výraznˇe ménˇe klientu, ˚ než je denní prumˇ ˚ er, naroste jejich poˇcet v sobotu, resp. v pondˇelí?
75
ˇ 4. Záver V pˇredložené bakaláˇrské práci jsme cˇ tenáˇre seznámili s problematikou systému ˚ hromadné obsluhy nejen prostˇrednictvím teoretického popisu v rešeršní cˇ ásti, ale také pomocí ˇrešení modelových úloh v rámci testování vytvoˇrených aplikací v praktické cˇ ásti. Zároven ˇ jsme v praktické cˇ ásti pˇredstavili systém hromadné obsluhy, o nˇemž pˇredpokládáme, že do nˇejaké jeho varianty (poboˇcky) vˇetšina cˇ tenáˇru ˚ za svuj ˚ život vstoupila. Poskytnutá data o tomto systému v práci zevrubnˇe zkoumáme. Jedním z pˇrínosu ˚ naší práce je právˇe jednoduchý popis vybraných modelu ˚ hromadné obsluhy spolu s jejich programovou implementací, která zámˇernˇe nepˇrekraˇcuje obsah úvodních kurzu ˚ výuky programování. Zdrojové kódy, jež jsou doprovázeny komentáˇri, mohou poskytnout úvod do této problematiky i ménˇe zdatným programátorum, ˚ napˇr. z ˇrad studentu. ˚ Druhý pˇrínos práce je samotná pˇrípadová studie. Poukázala na chování složitého reálného ˇ (vyvolávacího) systému, používaného na poboˇckách Ceské pošty, s.p. Oproti jednoduchým modelum, ˚ jimiž jsme se zabývali v kapitole o simulaci, má ˇradu svých specifik. Prvním z nich je množství poskytovaných služeb, tedy už samotné požadavky vstupující do systému se od sebe navzájem liší. Kanály obsluhy také nemužeme ˚ považovat za homogenní, nebot’ každá pˇrepážka obsluhuje jiné služby. Navíc jsme zjistili, že pro každou službu existuje rozdílná intenzita obsluhy, cˇ ímž se model znaˇcnˇe komplikuje. V momentˇe, kdy do analýzy zahrneme ještˇe ruznou ˚ výkonnost pracovníku, ˚ naroste nám opˇet poˇcet neznámých parametru ˚ modelu. Analýza také vyvrátila, že by systém fungoval v režimu FIFO. Systém funguje v atypickém režimu fronty, jež se nám nepodaˇrilo rozluštit. V systému, jak jsme zjistili z poskytnutých údaju, ˚ je možno vyvolávat klienty napˇríklad podle priority služeb, podle priority pˇrepážek nebo zcela mimo poˇradí. Bohužel nevíme, cˇ ím pˇresnˇe je to zpusobeno, ˚ nebot’ nám nebylo umožnˇeno nahlédnout ani do manuálu k ovládání, ani do nastavení samotného softwaru vyvolávacího systému. Poboˇcka pomˇernˇe dobˇre reaguje na ranní špiˇcku pˇríchodu klientu. ˚ Nejvíce lidí dochází v rozmezí od 8 do 11 hodin a od 15 do 17 hodin. V ranním provozu dosahuje poˇcet otevˇrených pˇrepážek prumˇ ˚ ernˇe poˇctu sedmi, v odpolední špiˇcce naopak jen šesti, jako je to v prumˇ ˚ eru celého dne. V odpoledních hodinách tedy dochází ke zvýšení prumˇ ˚ erné cˇ ekací doby klientu. ˚ Toto považujeme za nedostatek, který by mˇela pošta urˇcitˇe zlepšit. Všeobecnˇe ˇreˇceno, prumˇ ˚ erná cˇ ekací doba na této poboˇcce je vysoká. Zákazník má témˇeˇr 20 % pravdˇepodobnost, že ve frontˇe bude cˇ ekat déle než 10 minut. V systému se nám také nelíbí zminované ˇ pˇredbíhání klientu ˚ v rámci služeb.
77
4. Závˇer Nad rámec formulovaných cílu ˚ práce jsme se pokoušeli navrhnout model, který by odpovídal našim požadavkum, ˚ tj. model, v nˇemž bychom dosáhli snížení doby cˇ ekání klientu ˚ pˇri zachování stejného poˇctu pˇrepážek v provozu a dodržení režimu FIFO alespon ˇ v rámci služeb. Model není bohužel úplný, nicménˇe jeho ukázka se nachází na pˇriloženém CD. Pro kompletní zhodnocení a návrh ˇrešení nového vyvolávacího systému nemáme dostatek žádoucích informací. Pro optimalizaci nákladu ˚ by bylo potˇreba získat nákladové charakteristiky na provoz systému, které nám nebyly poskytnuty. Také nemáme k dispozici data o pˇresné pracovní dobˇe obsluhujících. V systému totiž dochází k situacím, kdy nevíme, zda se obsluhující zapomnˇel ze systému odhlásit pˇri konci své pracovní doby, nebo je stále v pracovním nasazení na poboˇcce, ale neobsluhuje další zákazníky a plní si své povinnosti vnitˇrní služby. Z dat také není zˇrejmé, kolik klientu ˚ rezignuje bˇehem doby cˇ ekání na obsluhu a ze systému odcházejí neobslouženi. V systému zcela chybí informace o tom, kolik zákazníku ˚ rezignuje na obsluhu ještˇe pˇred tím, než stihne do systému vstoupit. Pokud bychom chtˇeli maximalizovat spokojenost zákazníku ˚ (podle teze, že nejlepší marketing je spokojený zákazník), bylo by tˇreba provést studii zákaznického chování a marketingový výzkum spokojenosti zákazníku, ˚ protože spokojený zákazník nemusí být vždy ten, který stráví v systému nejkratší dobu. Maximalistickým cílem do budoucna by bylo navrhnout jednak vyvolávací systém a jednak systém cˇ asového pokrytí pˇrepážek a služeb s využitím simulaˇcního modelu ku prospˇechu jak podniku, tak zákazníku. ˚
78
Seznam použité literatury [1] L UKÁŠ, Ladislav, Pravdˇepodobnostní modely v managementu: Markovovy ˇretˇezce a systémy hromadné obsluhy. Vydání 1., Praha: Academia, 2009, 135 s. ISBN 978-80-2001704-8. [2] KOLÁ Rˇ , Martin, Uˇcební text ze Stochastické analýzy [online]. Uˇcební materiál, Masarykova Univerzita Brno. [cit. 2014-01-28]. Dostupné také z: http://www.math.muni.
cz/~mkolar/skripta002.pdf [3] V ETCHÝ, Josef, Teorie hromadné obsluhy a její aplikace na model kˇrižovatky. Olomouc: Diplomová práce, Univerzita Palackého v Olomouci, Pˇrírodovˇedecká fakulta, Katedra matematické analýzy a aplikací matematiky, 2010. [cit. 2014-03-01]. Dostupné také z:
http://theses.cz/id/jjbh7h/122406-679142669.pdf [4] R OSS, Sheldon M., Introduction to probability models. 9th ed. Boston: Academic Press, c2007, xviii, 782 p. ISBN 01-237-3635-8. [5] Š VUB, Miroslav, Poissonovo rozložení pravdˇepodobnosti. Brno: Bakaláˇrská práce, Masarykova univerzita, Pˇrírodovˇedecká fakulta, 2007. [cit. 2014-03-03]. Dostupné z: http:
//is.muni.cz/th/60478/prif_b/poissonovo_rozlozeni_svub.pdf ˇ ˇ , Jaroslav, Modelování 20: operaˇ [6] K LVA NA cní výzkum 2. Vyd. 3. Vydavatelství CVUT. 2005c1993, 246 s. ISBN 80-010-3263-9. [7] C IHLÁ Rˇ , Jiˇrí, Statistika, Pedagogická fakulta Ústí nad Labem, 1982. [8] J ABLONSKÝ, Josef, Operaˇcní výzkum: kvantitativní modely pro ekonomické rozhodování 2. vyd. Praha: Professional Publishing, 2002, 323 s. ISBN 80-864-1942-8. ˇ [9] Š EDA, Miloš, Modely hromadné obsluhy [online]. Clánek, Vysoké uˇcení technické v Brnˇe, Fakulta strojního inženýrství. [cit. 2014-02-20]. Dostupné z: http://web2.
vslg.cz/fotogalerie/acta_logistica/2011/2_cislo/3_seda.pdf [10] Z IMOLA, Bedˇrich, Operaˇcní výzkum. 2. vyd. Zlín: VUT v Brnˇe, 2000, 168 s. ISBN 80-2141664-5. [11] R ÁLEK, Petr, N OVÁK, Josef, C HUDOBA, Josef, Metody užívané v logistice [online]. Uˇcební materiál, Technická univerzita v Liberci, Fakulta mechatroniky, informatiky a mezioborových studií. [cit. 2014-03-08]. Dostupné z: http://www.nti.tul.cz/cz/images/
79
Seznam použité literatury
0/0a/Mul_skripta_101101.pdf. [12] S TEWART, William J., Probability, Markov chains, queues, and simulation: the mathematical basis of performance modeling, Princeton: Princeton University Press, 2009, xviii, 758 s. ISBN 978-0-691-14062-9. ˇ ˇ , Václav, Stochastické procesy. 2. pˇreprac. vyd. Praha: Vysoká škola ekono[13] KO RENÁ R mická v Praze, 2010, 228 s. ISBN 978-80-245-1646-2.
[14] S EMANCO, Pavel, M ARTON, David, Simulation Tools Evaluation using Theoretical Manufacturing Model [online]. Acta Polytechnica Hungarica - Journal of Applied Sciences, 2013. [cit. 2014-02-18]. Dostupné z: http://www.uni-obuda.hu/journal/Semanco_
Marton_40.pdf [15] QUARTERONI, Alfio, SACCO, Riccardo a SALERI, Fausto. Numerical mathematics. New York: Springer, c2000, xx, 654 p. ISBN 03-879-8959-5.
80
Seznam obrázku˚ 1.1. Schéma základních pojmu ˚ systému hromadné obsluhy (vlastní zpracování) 1.2. SHO s paralelním uspoˇrádáním obslužných linek a netrpˇelivostí zákazníku ˚ 1.3. Exponenciální model M/M/1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4. Pˇrechodový graf systému M/M/c . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5. Graf pˇrechodu ˚ systému M/M/1/1 . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6. Prostˇredí simulaˇcního programu Arena . . . . . . . . . . . . . . . . . . . . . . 1.7. Vývojový diagram modelu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.8. Nastavení generování pˇríchodu ˚ zákazníku ˚ . . . . . . . . . . . . . . . . . . . . 1.9. Nastavení rozhodovacího procesu . . . . . . . . . . . . . . . . . . . . . . . . . 1.10.Nastavení obsluhy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.11.Výsledky simulace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.12.Analýza simulace - obsluha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.13.Analýza simulace - fronta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.14.Náhled na simulaci v doplnku ˇ QtdPlus4Calc . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
21 23 25 26 28 34 34 35 35 36 36 37 37 38
3.1. Návštˇevnost v jednotlivých cˇ asových pásmech bˇehem roku . . . . . . . . . . . ˇ 3.2. Cetnost pˇríchodu ˚ klientu ˚ bˇehem roku . . . . . . . . . . . . . . . . . . . . . . . . ˇ 3.3. Cetnost pˇríchodu ˚ klientu ˚ v prubˇ ˚ ehu mˇesíce . . . . . . . . . . . . . . . . . . . . 3.4. Využití služeb bˇehem roku . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5. Využití duchodové ˚ služby bˇehem jednotlivých dní za cˇ tvrtletí . . . . . . . . . . 3.6. Prumˇ ˚ erná doba obsluhy v minutách podle jednotlivých služeb . . . . . . . . . 3.7. Doba obsluhy a cˇ ekání 15. ledna 2014 . . . . . . . . . . . . . . . . . . . . . . . . 3.8. Prumˇ ˚ erná doba cˇ ekání v minutách podle jednotlivých služeb . . . . . . . . . . 3.9. Doba cˇ ekání 15. ledna 2014 v intervalu 130s . . . . . . . . . . . . . . . . . . . . 3.10.Ukázkový graf vytíženosti pˇrepážky P03 a P11 bˇehem roku . . . . . . . . . . . . 3.11.Porovnání prumˇ ˚ erných dob cˇ ekání, obsluhy a doby strávené v systému bˇehem dne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.12.Poˇcet aktivních pˇrepážek bˇehem cˇ asových intervalu ˚ . . . . . . . . . . . . . . . 3.13.Porovnání prumˇ ˚ erných dob cˇ ekání, obsluhy podle jednotlivých služeb . . . .
. . . . . . . . . .
63 64 64 66 66 67 68 69 70 72
81
. 73 . 74 . 74
Seznam tabulek 1.1. Vztahy mezi nˇekterými charakteristikami systému ˚ hromadné obsluhy. . . . . . 24 2.1. Porovnání analytického a simulaˇcního ˇrešení modelu M /M /1 . . 2.2. Testování modelu M /M /1 . . . . . . . . . . . . . . . . . . . . . . . . 2.3. Porovnání analytického a simulaˇcního ˇrešení modelu M /D/1 . . . 2.4. Testování modelu M /D/1 . . . . . . . . . . . . . . . . . . . . . . . . 2.5. Porovnání analytického a simulaˇcního ˇrešení modelu D/M /1 . . . 2.6. Testování modelu D/M /1 . . . . . . . . . . . . . . . . . . . . . . . . 2.7. Ukázka simulace modelu M /M /c systému hromadné obsluhy . . 2.8. Výsledky simulace modelu M /M /c pro krátký cˇ asový úsek . . . . 2.9. Porovnání analytického a simulaˇcního ˇrešení modelu M /M /c . . 2.10.Simulaˇcní výsledky pro model M /M /c s ruznými ˚ poˇcty pˇrepážek 2.11.Srovnání modelu M /M /1 a M /M /3 . . . . . . . . . . . . . . . . . . 2.12.Porovnání analytického a simulaˇcního ˇrešení modelu M /M /1/K . 2.13.Testování modelu M /M /1/K . . . . . . . . . . . . . . . . . . . . . . 2.14.Porovnání analytického a simulaˇcního ˇrešení modelu M /M /c/K . 2.15.Testování modelu M /M /c/K . . . . . . . . . . . . . . . . . . . . . . 2.16.Porovnání analytického a simulaˇcního ˇrešení modelu M /M /1/./N 2.17.Testování modelu M /M /1/./N . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
43 43 43 44 45 45 46 47 47 47 48 49 50 51 52 52 54
3.1. První cˇ ást tabulkové metody . . . . . . . . . . . . . . . . . . . . . 3.2. Tabulková metoda pro testování hypotéz . . . . . . . . . . . . . . 3.3. Kritické hodnoty testovacího kritéria Poissonova rozdˇelení . . . 3.4. Test exponenciálního rozdˇelení . . . . . . . . . . . . . . . . . . . . 3.5. Upravená tabulka pro test exponenciálního rozdˇelení . . . . . . 3.6. Kritické hodnoty testovacího kritéria exponenciálního rozdˇelení 3.7. Poˇcet klientu ˚ v jednotlivých obdobích za celý rok . . . . . . . . . 3.8. Pˇrehled poskytovaných služeb . . . . . . . . . . . . . . . . . . . . 3.9. Využití duchodové ˚ služby . . . . . . . . . . . . . . . . . . . . . . . 3.10.Hodnoty pro test exponenciálního rozdˇelení doby obsluhy . . . 3.11.Test exponenciálního rozložení pro dopolední dobu cˇ ekání . . . 3.12.Kritické hodnoty kritéria pro dopoledne . . . . . . . . . . . . . . 3.13.Test exponenciálního rozložení pro odpolední dobu cˇ ekání . . . 3.14.Kritické hodnoty kritéria pro odpoledne . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
59 60 60 62 62 62 64 65 67 68 70 70 71 71
83
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
Seznam tabulek 3.15.Vytíženost jednotlivých pˇrepážek v období 04/2013 - 03/2014 . . . . . . . . . . . 72 3.16.Pˇrehled doby cˇ ekání ve frontˇe a doby obsluhy za celý rok . . . . . . . . . . . . . 73 3.17.Prumˇ ˚ erné doby cˇ ekání, obsluhy a doby strávené v systému dle služeb . . . . . . 74
84
A. Obsah pˇriloženého CD soubor/adresáˇr
obsah
bakalarska_prace.pdf
originální text bakaláˇrské práce
Data_VS/
ˇ , s.p. složka s daty vyvolávacího systému CP
Analyza_VS/
složka s projektem vytvoˇreným pro analýzu dat
Simulace/
složka s vytvoˇrenými simulaˇcními modely
Simulace/MMc/
složka se simulací modelu M /M /c
Simulace/MMc/MMc.cs
zdrojový kód k modelu M /M /c
Simulace/MMc/Tex/Main.cs zdrojový kód k modelu M /M /c, který následnˇe vygeneruje prubˇ ˚ eh simulace do souboru txt
Simulace/DM1.cs
zdrojový kód k modelu D/M /1
Simulace/MD1.cs
zdrojový kód k modelu M /D/1
Simulace/MM1.cs
zdrojový kód k modelu M /M /1
Simulace/MM1.N.cs
zdrojový kód k modelu M /M /1/./N
Simulace/MM1K.cs
zdrojový kód k modelu M /M /1/K
Simulace/MMcK.cs
zdrojový kód k modelu M /M /c/K
Navrh_modelu/
složka s projektem navrhovaného modelu
85