Úvod do SHO. Výkonnost a spolehlivost programových systémů KIV/VSS. Richard Lipka

Podobné dokumenty
Kendallova klasifikace

Teorie front. Systém hromadné obsluhy

Exponenciální modely hromadné obsluhy

4EK201 Matematické modelování. 8. Modely hromadné obsluhy

SYSTÉMY HROMADNÉ OBSLUHY. Teorie front

4EK311 Operační výzkum. 8. Modely hromadné obsluhy

Teorie hromadné obsluhy (Queuing Theory)

Teorie hromadné obsluhy (Queuing Theory)

Stochastické modely Informace k závěrečné zkoušce

Základy teorie hromadné obsluhy

SIMULACE SPOLEHLIVOSTI SYSTÉMŮ HROMADNÉ OBSLUHY. Michal Dorda. VŠB - TU Ostrava, Fakulta strojní, Institut dopravy

Markovské metody pro modelování pravděpodobnosti

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

1 Teorie hromadné obsluhy

7. Rozdělení pravděpodobnosti ve statistice

Diskrétní náhodná veličina

Západočeská univerzita v Plzni

VYBRANÁ ROZDĚLENÍ. DISKRÉTNÍ NÁH. VELIČINY Martina Litschmannová

Stochastické procesy - pokračování

LIMITNÍ VĚTY DALŠÍ SPOJITÁ ROZDĚLENÍ PR. 8. cvičení

Charakterizace rozdělení

Pearsonůvχ 2 test dobré shody. Ing. Michal Dorda, Ph.D.

Téma 22. Ondřej Nývlt

Náhodné signály. Honza Černocký, ÚPGM

KGG/STG Statistika pro geografy

Výběrové charakteristiky a jejich rozdělení

Pravděpodobnost, náhoda, kostky

Pravděpodobnost a statistika (BI-PST) Cvičení č. 4

intenzitu příchodů zákazníků za čas t intenzitu obsluhy (průměrný počet obsloužených) za čas t

1. Přednáška. Ing. Miroslav Šulai, MBA

Přednáška. Další rozdělení SNP. Limitní věty. Speciální typy rozdělení. Další rozdělení SNP Limitní věty Speciální typy rozdělení

Simulační software Witness. Ing. Michal Dorda, Ph.D.

A6M33SSL: Statistika a spolehlivost v lékařství Teorie spolehlivosti

Časové řady, typy trendových funkcí a odhady trendů

U Úvod do modelování a simulace systémů

Pravděpodobnost a aplikovaná statistika

y = 0, ,19716x.

PSY117/454 Statistická analýza dat v psychologii přednáška 8. Statistické usuzování, odhady

1. Číselné posloupnosti - Definice posloupnosti, základní vlastnosti, operace s posloupnostmi, limita posloupnosti, vlastnosti limit posloupností,

JAK MODELOVAT VÝSLEDKY NÁH. POKUSŮ? Martina Litschmannová

SIGNÁLY A LINEÁRNÍ SYSTÉMY

VYUŽITÍ TEORIE HROMADNÉ OBSLUHY PŘI NÁVRHU A OPTIMALIZACI PAKETOVÝCH SÍTÍ

Časové řady, typy trendových funkcí a odhady trendů

ROVNICE NA ČASOVÝCH ŠKÁLÁCH A NÁHODNÉ PROCESY. Michal Friesl

Vícekanálové čekací systémy

Detekce interakčních sil v proudu vozidel

NÁHODNÁ ČÍSLA. F(x) = 1 pro x 1. Náhodná čísla lze generovat některým z následujících generátorů náhodných čísel:

Minikurz aplikované statistiky. Minikurz aplikované statistiky p.1

ANALÝZA DAT V R 3. POPISNÉ STATISTIKY, NÁHODNÁ VELIČINA. Mgr. Markéta Pavlíková Katedra pravděpodobnosti a matematické statistiky MFF UK

KMA/P506 Pravděpodobnost a statistika KMA/P507 Statistika na PC

Analytické pravděpodobnostní modely, Markovské procesy

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA DOPRAVNÍ

SIGNÁLY A LINEÁRNÍ SYSTÉMY

ÚVOD. Rozdělení slouží: K přesnému popisu pravděpodobnostního chování NV Střední hodnota, rozptyl, korelace atd.

Fyzikální korespondenční seminář MFF UK

4EK311 Operační výzkum. 1. Úvod do operačního výzkumu

Náhodné (statistické) chyby přímých měření

Počítačová simulace a analýza vybraných frontových systémů

Chyby měření 210DPSM

E(X) = np D(X) = np(1 p) 1 2p np(1 p) (n + 1)p 1 ˆx (n + 1)p. A 3 (X) =

Vybraná rozdělení náhodné veličiny

Základy teorie pravděpodobnosti

PDV /2018 Detekce selhání

Úvod do zpracování signálů

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Matematika III. 4. října Vysoká škola báňská - Technická univerzita Ostrava. Matematika III

Definice spojité náhodné veličiny zjednodušená verze

SPOJITÉ ROZDĚLENÍ PRAVDĚPODOBNOSTI. 7. cvičení

Modelování a simulace Lukáš Otte

Náhodné chyby přímých měření

Biofyzikální ústav LF MU Brno. jarní semestr 2011

Pravděpodobnost, náhoda, kostky

AVDAT Náhodný vektor, mnohorozměrné rozdělení

A6M33SSL: Statistika a spolehlivost v lékařství Teorie spolehlivosti Přednáška 2

Poznámky k předmětu Aplikovaná statistika, 5.téma

Statistická analýza dat v psychologii. Věci, které můžeme přímo pozorovat, jsou téměř vždy pouze vzorky. Alfred North Whitehead

Návrh a vyhodnocení experimentu

Modely selektivní interakce a jejich aplikace

Pravděpodobnost a matematická statistika Doc. RNDr. Gejza Dohnal, CSc.

Stochastické signály (opáčko)

8.1. Definice: Normální (Gaussovo) rozdělení N(µ, σ 2 ) s parametry µ a. ( ) ϕ(x) = 1. označovat písmenem U. Její hustota je pak.

Pravděpodobnost a statistika I KMA/K413

z Matematické statistiky 1 1 Konvergence posloupnosti náhodných veličin

Neuronové časové řady (ANN-TS)

Studijní program Matematika Obor Pravděpodobnost, matematická statistika a ekonometrie

TECHNICKÁ UNIVERZITA V LIBERCI

Všechno, co jste chtěli vědět z teorie pravděpodobnosti, z teorie informace a

Statistika. Regresní a korelační analýza Úvod do problému. Roman Biskup

1. Náhodný vektor (X, Y ) má diskrétní rozdělení s pravděpodobnostní funkcí p, kde. p(x, y) = a(x + y + 1), x, y {0, 1, 2}.

Lékařská biofyzika, výpočetní technika I. Biostatistika Josef Tvrdík (doc. Ing. CSc.)

MATEMATICKÁ STATISTIKA - XP01MST

2 Hlavní charakteristiky v analýze přežití

STATISTICKÝ SOUBOR. je množina sledovaných objektů - statistických jednotek, které mají z hlediska statistického zkoumání společné vlastnosti

PRAVDĚPODOBNOST A STATISTIKA

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

Základy biostatistiky II. Veřejné zdravotnictví 3.LF UK - II

Někdy lze výsledek pokusu popsat jediným číslem, které označíme X (nebo jiným velkým písmenem). Hodíme dvěma kostkami jaký padl součet?

Diskrétní náhodná veličina. November 12, 2008

Úvod Modely zásob Shrnutí. Teorie zásob. Kristýna Slabá. 9. ledna 2009

Vlastnosti a zkoušení materiálů. Přednáška č.4 Úvod do pružnosti a pevnosti

Transkript:

Úvod do SHO Výkonnost a spolehlivost programových systémů KIV/VSS Richard Lipka

Systémy hromadné obsluhy (Queueing theory) Modelování systémů, které obsluhují větší množství požadavků Telekomunikační systémy Řízení dopravy Plánování procesů v OS Návrh výrobních linek Krizový management Návrh míst, kde se čeká (obchody, úřady, nemocnice ) Predikce výkonu takových systémů Zásadní pro jejich dimenzování První modely ze začátku 20. století (telefonní ústředna v Kodani Erlang, 1909) podobně staré jako Markovské modely Řada vztahů odvozena právě přes markovské modely 2

Stockholm, kolem roku 1910 3

SHO - základy Základní koncept: Systém poskytuje službu Realizována kanálem obsluhy / serverem Klienti posílají požadavky / zahajují transakce (zátěž systému) Požadavky jsou buď obsluhovány, nebo čekají ve frontách Teorie založena na statistice funguje jen pro dostatečný počet požadavků Abstrahuje od konkrétní realizace služby Sleduje jen časové posloupnosti příchodů požadavků a jejich obsluh lze určit základní výkonové charakteristiky Zjednodušení umožňuje konstruovat SHO model v uzavřeném tvaru (jako vzoreček) (složité SHO je třeba řešit simulačně, ne vždy je možné nebo praktické najít uzavřený tvar) 4

Příklady Systém Klient Server Požadavek Dopravní síť Vozidlo Křižovatka Průjezd křižovatkou Google Hledající Vyhledávací stroj a DB Vyhledání stránky Letiště Letadlo Vzletová dráha Odlet nebo přílet Úřad Občan Přepážka Vydání dokladu Menza Hladový student Výdejní okénko / pult / kasa Vydání jídla / zaplacení jídla Myčka aut Vozidlo Mycí linka Umytí vozidla 5

Základní problémy Příliš mnoho požadavků na systém Požadavky čekají ve frontě příliš dlouho (pokud může fronta narůstat do nekonečna) Požadavky nemají kde čekat a jsou zahazovány (pokud není dost místa nebo jsou požadavky netrpělivé ) potřebuji zvýšit kapacitu systému (přidat zdroje) relativně snadné v cloudových řešeních Příliš málo požadavků na systém Systém není vytížen většinu času nic nedělá (ale stále spotřebovává zdroje) mohu zdroje využít nějak jinak (nebo zrušit) 6

Vstupní proud Elementární SHO 1 Výstupní proud Fronta m Kanály obsluhy Stav systému: počet požadavků v něm Potřebujeme znát: Charakteristiku vstupního proudu Chování fronty Charakteristiku obsluhy požadavků Předpokládáme stacionární režim činnosti Charakteristiky se nemění v čase (podobně jako u Markovských modelů) modelujeme ustálený provoz, ne přechodový děj 7

Zdroje požadavků Vkládají požadavky do fronty Abstraktní, často bez ekvivalentu v reálném světě, hodí se hlavně pro simulace Lze dělit podle počtu požadavků Omezené zdroje Předem omezená množina požadavků vstupní proud závisí na stavu SHO Např. modelování procesů v kritické sekci, požadavky z pevného množství terminálů Neomezené zdroje Nekonečné množství požadavků vstupní proud nezávisí na stavu SHO Např. požadavky na webový server 8

Jmenné konvence Vstupní proud - a (arrival), λ Doby obsluh - s (service), μ Fronta - w (waiting) Celý systém - q (queuing system) Doba - T, t (velká písmena pro střední hodnoty, malá pro konkrétní hodnoty) Počet požadavků - L (length) Zátěž systému - ρ = střední doba obsluhy střední doba mezi příchody 9

Vstupní proud Časová posloupnost s jakou požadavky do systému vstupují - t 1 < t 2 < t 3 Popsán jako τ k = t k t k 1 pro k 1 interval mezi příchody (inter-arrival time) Pokud jsou jednotlivé hodnoty τ k statisticky nezávislé a mají stejné rozdělení, považovány za realizaci veličiny τ Obvyklý popis: F a t = P τ t nebo odpovídající f a t = F a t Typické vstupní proudy: Poissonovský exponenciální rozdělení pro doby mezi příchody požadavků (v každém okamžiku stejná pravděpodobnost příchodu dalšího požadavku nezáleží na tom jak dlouhá doba uběhla od posledního) Gaussovský Rovnoměrný bez náhody, stejné intervaly 10

Vstupní proud další charakteristiky Homogenní (stacionární) chování v čase se nemění (formálně P y t 0 + t y t 0 = k = P k t 0, t = P k t ) Pravděpodobnost příchodu požadavku závisí jen na době čekání Ordinární nikdy nepřijde víc než jeden požadavek najednou (pro dostatečně krátkou dobu) 1 p (formálně lim 0 t p 1 (t) t 0 t = 0, ) Homogenní diskrétní markovský proces, poissonovský proces (pokud se reálný systém chová jinak, simulace) 11

Poissonovo rozdělení Diskrétní rozdělení Kolik požadavků přijde za jednotku času, jestliže doby mezi příchody mají exponenciální rozdělení (= čas příchodu následujícího požadavku nezávisí na předchozím) Typické pro velmi náhodné jevy Poprvé 1837 při odhadech neprávem odsouzených, ověřeno 1898 na smrtících kopajících koních 12

Charakteristika vstupního proudu F a t - distribuční funkce pro doby mezi příchody požadavků Pro poissonovský proud F a t = 1 e λt Lze ho popsat jedním parametrem λ E τ = T a = 1 λ - střední doba mezi příchody (λ střední frekvence příchodů požadavků) C a = σ τ T a - koeficient variance jak moc je proud náhodný Pravidelné příchody - C a = 0, poissonovský proud C a = 1, reálně někde v intervalu 0; 1 pro poissonovo rozdělení σ τ = T a Pokud se objevují shluky požadavků může být C a > 1 13

Fronta požadavků Pro popis potřebuji znát Maximální možno délku w max (může být i 0 nebo ) Frontovou disciplínu Prioritní nebo bez priority FIFO / LIFO / náhodné / něco jiného Cyklické střídání se zadaným časovým kvantem (obsluha dávkových procesů) Reakce na překročení kapacity ( netrpělivá analytické modely očekávají trpělivé chování) Zahazování požadavků Opuštění fronty při dlouhém čekání Střídání front Spolupráce ke zkrácení času ve frontách Výpočty snadné pro FIFO, bez omezení a bez priorit 14

Charakteristika fronty w aktuální (okamžitý) počet požadavků ve frontě (w t - funkce času nebo náhodná veličina) E w = L w střední počet požadavků ve frontě (střední délka) t w doba čekání jednoho konkrétního požadavku (náhodná veličina) E t w = T w - střední doba čekání požadavku ve frontě 15

Kanály obsluhy Modelují skutečné obslužné prvky Pro jedno elementární SHO jich může být obecně m (např. server se 4 jádry a jednou frontou), nejčastěji m = 1 Doba obsluhy t s chápána jako náhodná veličina pro charakteristiku kanálu F s = P t s < t V reálném případě lze odvodit aproximací z histogramu Jak výkonnost kanálu tak specifika požadavků na dobu obsluh Stejné pravděpodobnostní rozdělení pro všechny požadavky (jinak nejde spočítat) 16

Charakteristika kanálu obsluhy Podobná jako charakteristika zdroje požadavků F s (t s ) distribuční funkce pro doby obsluh Pro exponenciální rozdělení F s t s = 1 e μt, kde μ je střední frekvence obsluh (za předpokladu že kanál je stále zatížený!) E τ = T s = 1 μ C s = σ t s T s náhodné - střední doba obsluhy - koeficient variance - jak moc jsou doby obsluh 17

Exponenciální rozdělení Spojité rozdělení Doba mezi dvěma požadavky, jejichž příchody jsou na sobě nezávislé a mohou v každém okamžiku nastat se stejnou pravděpodobností Parametr je frekvence Diskrétní varianta geometrické rozdělení (ne Poissonovo!) 18

Celkové charakteristiky SHO ρ = 1 m λ μ = 1 m T s T a koeficient časového využití kanálu (pro stejné kanály s exponenciálními dobami příchodů) (ρ = 0 nic nedělá, ρ = 1 plně vytížený ) Pokud vyjde ρ 1 systém je přetížený nestíhá a není ve stacionárním režimu fronta neustále narůstá Odpovídá pravděpodobnosti obsazenosti kanálu q okamžitý počet požadavků v systému (náhodná veličina) L q = E q střední počet požadavků v celém SHO Náhodné vzorkování a průměrování za celou dobu t q doba průchodu jednoho konkrétního požadavku = doba jeho odezvy T q = E t q střední doba odezvy 19

Základní vztahy středních hodnot L q = L w + L s = L w + m λ μ - v systému je to co je ve frontě a v kanálech obsluhy T q = T w + T s = T w + 1 - průchod systémem je složen z čekání a obsluhy μ Littleovy vzorce (stacionární režim, FIFO, žádná preempce!) L q = λ T q L w = λ T w T w = L w T a Nezávisí na pravděpodobnostním rozdělení vstupního proudu, lze uplatnit i na složený systém z jedné z hodnot L q, T q, L w a T w a znalosti λ lze dopočítat ostatní 20

Výstupní proud Charakteristika závisí na režimu práce Stacionární režim (ρ < 1) stejná perioda a frekvence jako vstupní proud Pro ρ 0 se rozdělení výstupního proudu blíží F a (t), pro ρ 1 se rozdělení výstupního proudu blíží F s t Nestacionární režim (ρ 1) Všechny kanály stále pracují frekvence výstupního proudu musí být m μ a rozdělení má stejný charakter jako F s t 21

Výstupní proud - zpoždování Pro ρ < 1 bych měl stíhat obsluhovat Platí v synchronizovaném systému (stejné doby mezi příchody a doby obsluh) Náhoda způsobuje hromadění požadavků (víc náhody delší fronty platí pro příchody i doby obsluh) Nejhorší jsou dávkové příchody kapacity na čekání! 1 2 3 4 1 2 3 1 2 3 4 5 4 t t 1 2 3 4 1 2 3 4 t 1 2 3 4 5 22

Základní úloha Znám charakteristiku vstupního proudu a kanálu obsluhy (F a (t), F s (t)) Chci určit vlastnosti systému (L q, T q, L w a T w ) 23

Kendallova klasifikace Charakteristika různých typů SHO, podle vlastností vstupních proudů, obsluh, front (z 50. let) Systém je popsán trojicí (pěticí) X prvd. rozdělení vstupního proudu Y prvd. rozdělení dob obsluh m počet kanálů obsluhy X / Y / m/ l / disc. l maximální délka fronty (obvykle - pak se neuvádí) disc. frontová disciplína (obvykle FIFO, pak se neuvádí) 24

Kendallova klasifikace Typické charakteristiky proudů: GI obecné náhodné rozdělení, intervaly příchodů statisticky nezávislé G obecné náhodné rozdělení M exponenciální rozdělení dob obsluh nebo příchodů požadavků (?Markovské, Memoryless?) D deterministické intervaly (konstantní nebo jinak pravidelné) Typické příklady: M/M/1, M/M/m, M/M/1/n/FIFO, M/G/1 25

M/M/1 (/ /FIFO) Nejjednodušší varianta Poissonovský vstupní proud, exponenciální doby obsluhy lze charakterizovat 2 parametry: λ, μ λ střední frekvence vstupního proudu (F a t = 1 e λt ) μ střední podmíněná frekvence obsluh pro ρ < 1 bude skutečná frekvence nižší ρ = λ pro stacionární režim λ < μ μ Lze modelovat jako markovský process Pouze pokud jde o stacionární proces ověřit hodnotu ρ! 26

0 λ μ Markovský model M/M/1 λ 1 μ λ λ...... μ k μ 0 = λp 0 + μp 1 p 1 = λ μ p 0 = ρp 0 0 = λp 0 λp 1 μp 1 + μp 2 p 2 = λ μ p 1 = ρρp 0 = ρ 2 p 0 p k = ρ k p 0 = ρ k 1 ρ Prvd. funkce rozložení náhodné veličiny k (počet požadavků v SHO) 27

0 λ μ Markovský model M/M/1 λ 1 μ λ λ...... μ k μ E k = σ k=0 p k = ρ k p 0 = ρ k 1 ρ kp k = 1 ρ σ k=0 = ρ 1 ρ = L q (pro (ρ < 1)) T q, L w a T w lze určit z Littleových vzoců kρ k = 1 ρ ρ 1 ρ 2 28

0 λ Markovský model M/M/m λ λ 1 2 3 λ λ λ...... m-1 m μ Existuje m obslužných kanálů pro jednu vstupní frontu podobné chování jako M/M/1, ale s bufferem ρ = 1 m 2μ 3μ λ μ = λt s m (T s = 1 μ ) (m-1)μ mμ mμ 29

Markovský model M/M/m λ λ λ λ λ λ 0 1 2 3...... m-1 m μ 2μ Existuje obecné (složité řešení), pro přibližný odhad (nebo m 1,2 ): L q mρ 1 ρ m 3μ (m-1)μ mμ mμ Řešení v Probability, Statistics, and Queuing Theory (Second Edition) nebo na T q T s 1 ρ m http://irh.inf.unideb.hu/~jsztrik/education/16/sor_main _Angol.pdf (http://irh.inf.unideb.hu/user/jsztrik/) 30

M/M/m s omezenou délkou fronty Konečná fronta některé požadavky zahozeny Zjišťujeme jak často se to stane Nelze použít vzorce pro nekonečnou délku fronty ne všechny požadavky do systému vstoupí λ reálné < λ teoretické Markovský model konečný nemusíme se snažit najít limitní přechod Obecné vzorce složité, ale konkrétní se dají snadno odvodit 31

M/M/2/2/FIFO 0 λ λ 1 μ 2μ λ 2 3 2μ λ 2μ 2 servery, fronta pro 2 požadavky Lze sestavit soustavu lineárních rovnic a najít p 0, p 1, p 2, p 3, p 4 p 0 - pravděpodobnost že systém nic nedělá p 4 - pravděpodobnost že žádný další požadavek nemůže vstoupit (p 4 100% - podíl odmítnutých požadavků) 4 λ L q = 0 p 0 + 1 p 1 + 2 p 2 + 3 p 3 + 4 p 4 32

M/M/2/2/FIFO 0 λ λ 1 μ 2μ λ 2 3 2μ ρ = p 1 + p 2 2 + p 3 + p 4 Vážený průměr zatížení v jednotlivých stavech L w = p 3 + 2p 4 Vážený průměr možných délek front Střední frekvence zahození požadavku: λp 4 Frekvence přijetí: λ 1 p 4 - skutečná frekvence příchodů požadavků T q = L q λ 1 p 4 (Little - L q = λt q ) λ 2μ 4 λ 2 servery, fronta pro 2 požadavky 33

M/G/1 Nemarkovský model, může být bližší realitě Poissonovské doby příchodů jsou obvykle realistické Doby obsluh často jiné než exponenciální Pro popis systému potřebuji λ střední frekvence příchodů požadavků F s (t) nebo f s (t) popisující doby obsluhy a příslušné parametry Lze určit ρ = λt s, kde T s je střední hodnota rozdělení F s (t) Pro další výpočty je třeba znát koeficient variace C s (pro rozdělení dob obsluh) 34

M/G/1 L w = L w(m/m/1) 1+C s 2 2 = ρ2 1 ρ 1+C s 2 2 (střední délka fronty) L q = L w + L s = L w + λ μ = L w + ρ T q = L q λ T w = L w λ, T w = T q T s 35

Význam C s C s = σ(x) E(X) = σ τ T a - koeficient variace Jak moc jsou příchody náhodné Exponenciální rozdělení dob obsluh (parametr μ) M/G/1 je M/M/1 1 μ 1 μ E X = 1 μ, σ = E S = 1 μ C s = Shodné (stejné) doby obsluh C s = 0 (stejné hodnoty σ = 0) = 1, L w = ρ2 1+1 = ρ2 1 ρ 2 1 ρ L w = ρ2 1+0 = ρ2 - poloviční fronty než pro M/M/1 při stejném zatížení 1 ρ 2 2(1 ρ) Většina ostatních rozdělení někde mezi Markovské modely jako odhad nejhoršího průběhu Může nastat C s > 1 (shluky požadavků, některá diskrétní rozdělení) Délka fronty horší než pro M/M/1 36

GI/G/1 Předpokládáme statistickou nezávislost dob příchodů ve vstupním proudu Potřebujeme znát navíc F a (t) nebo f a (t) Zatížení: ρ = T s T a Lze přibližně odhadnout délku front L w = ρ2 C 2 a + C2 s 1 ρ 2 Pro D/D/1 vyjde L w = 0, pokud je T a > T s Pro M/M/1 bude C a 2 +C2 s = 1 2 37

Děkuji za pozornost Příště SHO 2 složené SHO 38