3. Markovské řetězce s diskrétním časem 3.1. Definice: Definice markovského řetězce s diskrétním časem Nechť ( )P,,ΑΩ je pravděpodobnostní prostor, N0 = {0, 1, 2, ...} je indexová množina, jejíž prvky nazveme okamžiky a J = {..., -2, -1, 0, 1, 2, ...} je nejvýše spočetná množina stavů (bez újmy na obecnosti lze předpokládat, že J = {0, 1, 2, ...} nebo J = {0,1, ..., n}). Stochastický proces { }0n Nn;X ∈ definovaný na měřitelném prostoru ( )ΑΩ, , jehož složky nabývají hodnot z množiny stavů J, se nazývá markovský řetězec (s diskrétním časem), jsou-li splněny následující podmínky: a) ( ) 0jXP:NnJj n0 >=∈∃∈∀ (vyloučení nepotřebných stavů) b) ( ) ( )1n1nnn002n2n1n1nnnn100 jX/jXPjXjXjX/jXP:Jj,,j,jNn −−−−−− ====∧∧=∧==∈∀∈∀ KK za předpokladu, že ( ) 0jXjXjXP 002n2n1n1n >=∧∧=∧= −−−− K . (markovská vlastnost – budoucí chování markovského řetězce závisí pouze na přítomném stavu a nikoliv na stavech minulých) Vysvětlení: Nejčastější interpretací markovských řetězců je nějaká soustava, která se může nacházet ve stavech a0, a1, … V průběhu času soustava mění svoje stavy. Tyto stavy pozorujeme v diskrétních časových okamžicích n = 0, 1, … Náhodná veličina Xn nabývá hodnoty j, když v okamžiku n je soustava ve stavu aj. Markovská vlastnost znamená, že všechny dosavadní stavy soustavy mají vliv na budoucí stav pouze prostřednictvím stavu přítomného. Příklady situací, které lze popsat markovským řetězcem Nákupy pracích prášků Zákazník má tři oblíbené druhy pracích prášků, označme je A, B, C. Pro jednoduchost předpokládáme, že změnu pracího prášku provádí pouze na konci měsíce. Dynamiku nákupů pracích prášků můžeme popsat markovským řetězcem { }0n Nn;X ∈ s množinou stavů J = {1,2,3}, kde Xn = 1 (resp. 2 resp. 3), když n-tý měsíc zákazník kupuje prášek A (resp. B resp. C). Studium na střední škole Student čtyřleté střední školy může: - úspěšně ukončit ročník a postoupit do dalšího ročníku - opakovat ročník - zanechat studia. Průběh studia lze popsat markovským řetězcem { }0n Nn;X ∈ s množinou stavů J = {1,2,3,4,5,6}, kde Xn = 1, když v roce n student studuje 1. ročník, Xn = 2, když v roce n student studuje 2. ročník, Xn = 3, když v roce n student studuje 3. ročník, Xn = 4, když v roce n student studuje 4. ročník, Xn = 5, když v roce n student úspěšně ukončil studium, Xn = 6, když v roce n student zanechal studia. Soustruh ve výrobní dílně Ve výrobní dílně se nachází soustruh, který sledujeme s časovým krokem 1 týden. Soustruh může být - v provozu - v opravě - určen k prodeji - určen do šrotu. Činnost soustruhu popíšeme markovským řetězcem { }0n Nn;X ∈ s množinou stavů J = {1,2,3,4}, kde Xn = 1, když v n-tém týdnu je soustruh v provozu, Xn = 2, když v n-tém týdnu je soustruh v opravě, Xn = 3, když v n-tém týdnu je soustruh určen k prodeji, Xn = 4, když v n-tém týdnu je soustruh určen do šrotu. Křížení jedince s hybridem Máme populaci diploidních cizosprašných rostlin, v níž sledujeme gen se dvěma alelami a, A. Má-li rostlina dvojici alel A, A, nazývá se dominantní. Má-li rostlina dvojici alel a, a, nazývá se recesivní. Má-li rostlina dvojici alel A, a (resp. a, A) nazývá se hybridní. Z populace náhodně vybereme rostlinu, zkřížíme ji s hybridem a počkáme na potomstvo. V dalším kroku náhodně vybereme jedince z těchto potomků, opět ho zkřížíme s hybridem atd. Takto popsaný proces množení rostlin lze popsat řetězcem { }0n Nn;X ∈ s množinou stavů J = {1,2,3}, kde Xn = 1, když po n-tém křížení vybereme dominantní rostlinu (tj. s dvojicí alel A, A), Xn = 2, když po n-tém křížení vybereme recesivní rostlinu (tj. s dvojicí alel a, a), Xn = 3, když po n-tém křížení vybereme hybridní rostlinu (tj. s dvojicí alel A, a resp. a, A). 3.2. Věta: Věta o simultánní pravděpodobnostní funkci markovského řetězce s diskrétním časem Je-li { }0n Nn;X ∈ markovský řetězec, pak platí: ( ) ( ) ( ) ( )1n1nnn001100nn1100 jX/jXPjX/jXPjXPjXjXjXP −− ==⋅⋅=====∧∧=∧= KK pokud ( ) 0jXjXjXP 1n1n1100 >=∧∧=∧= −−K , = 0 jinak. Důkaz: Podle věty o násobení pravděpodobností a podle markovské vlastnosti dostáváme: ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )1n1nnn1122001100 002n2n1n1nnn001122001100 nn1100 jX/jXPjX/jXPjX/jXPjXP jXjXjX/jXPjXjX/jXPjX/jXPjXP jXjXjXP −− −−−− ==⋅⋅==⋅==⋅== ==∧∧=∧==⋅⋅=∧==⋅==⋅== ==∧∧=∧= K KK K Věta o násobení pravděpodobností: Nechť (Ω, A, P) je pravděpodobnostní prostor, A1, A2, ..., An takové jevy, že P(A1∩ ... ∩ An-1) ≠0. Pak P(A1 ∩ A2 ∩ ... ∩ An) = P(A1) P(A2/A1) P(A3/A1∩ A2) ... P(An/A1∩ ... ∩ An-1). Markovská vlastnost: ( ) ( )1n1nnn002n2n1n1nnn jX/jXPjXjXjX/jXP −−−−−− ====∧∧=∧== K 3.3. Příklad: Nechť Y1, Y2, ... jsou stochasticky nezávislé náhodné veličiny, které nabývají hodnot z množiny {..., -2, -1, 0, 1, 2, ...} (jde o tzv. celočíselné náhodné veličiny). Položme 1n,YX,0X n 1i in0 ≥== ∑= . Dokažte, že stochastický proces { }0n Nn;X ∈ je markovský řetězec. Řešení: Dokážeme, že levá strana v markovské vlastnosti se rovná pravé straně. Levá strana: ( ) ( ) ( ) ( ) ( ) ( )0XjXjXP 0XjXjXP BP BAP B/AP0XjX/jXP 02n2n1n1n 01n1nnn 01n1nnn =∧∧=∧= =∧∧=∧= = ∩ ===∧∧== −−−− −− −− K K K . Jevy zapsané pomocí náhodných veličin X0, X1, ..., Xn se budeme snažit zapsat pomocí náhodných veličin Y1, Y2, ..., Yn, které jsou stochasticky nezávislé. X0 = 0, X1 = X0 + Y1 ⇒ Y1 = X1 - X0, X2 = X1 + Y2 ⇒ Y2 = X2 – X1, ..., Xn = Xn-1 + Yn ⇒ Yn = Xn – Xn-1, tedy { } { }112n1n1n1nnn0111n1nnn jYjjYjjY0XjXjXjX =∧∧−=∧−===∧=∧∧=∧= −−−−−− KK Dále { } { }112n1n1n0111n1n jYjjY0XjXjX =∧∧−===∧=∧∧= −−−−− KK . Po dosazení do levé strany: ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )1nnn 112n1n1n 112n1n1n1nnn 02n2n1n1n 01n1nnn jjYP jYPjjYP jYPjjYPjjYP 0XjXjXP 0XjXjXP − −−− −−−− −−−− −− −== =⋅⋅−= =⋅⋅−=−= = =∧∧=∧= =∧∧=∧= K K K K Pravá strana: ( ) ( ) ( ) ( ) ( ) ( ) ( )1nnn 2n1n1n 2n1n1n1nnn 1n1n 1n1nnn 1n1nnn jjYP jjYP jjYPjjYP jXP jXjXP jX/jXP − −−− −−−− −− −− −− −== −= −=−= = = =∧= === Protože levá strana se rovná pravé straně, je daný stochastický proces { }0n Nn;X ∈ markovský řetězec. 3.4. Příklad: Nechť Y1, Y2, … jsou stochasticky nezávislé náhodné veličiny, které mají rovnoměrné diskrétní rozložení na množině G = {-1, 1} (tj. nabývají hodnot ±1 s pravděpodobností 1/2). Položme X0 = 0 a zavedeme náhodnou veličinu ∑= = n 1i in YX . Tato náhodná veličina udává polohu částice na přímce, kterou částice zaujme po n krocích, když na počátku je v bodě 0 a pohybuje se v obou možných směrech se stejnou pravděpodobností. Markovský řetězec { }0n Nn;X ∈ se nazývá symetrická náhodná procházka na přímce. Náhodnou procházku lze simulovat v MATLABu pomocí funkce np: function [poloha]=np(N) %funkce na simulaci symetricke nahodne prochazky po primce %syntaxe: poloha=np(N) %vstupni parametry: N ... delka nahodne prochazky %vystupni parametr: poloha ... vektor souradnic bodu, v nichz se castice nachazi v jednotlivych krocich %funkce nakresli trajektorii nahodne prochazky %funkce poskytne tabulku rozlozeni cetnosti souradnic castice na primce, v nichz se nahodna prochazka nachazi NC=unidrnd(2,N,1);poloha(1)=0; for i=2:N if NC(i)==1 poloha(i)=poloha(i-1)-1; else poloha(i)=poloha(i-1)+1; end end t=[0:N-1]; plot(t,poloha) tabulate(poloha) 0 2 4 6 8 10 12 14 16 18 20 -1 -0.5 0 0.5 1 1.5 2 2.5 3 3.5. Označení Jev {Xn = j} – markovský řetězec je v okamžiku n ve stavu j. P(Xn = j) = pj(n) – absolutní pravděpodobnost stavu j v okamžiku n. p(n) = (...., pj(n), ...) – vektor absolutních pravděpodobností. P(Xn+1 = j / Xn = i) = pij(n,n+1) – pravděpodobnost přechodu ze stavu i v okamžiku n do stavu j v okamžiku n+1 (pravděpodobnost přechodu 1. řádu).           +=+ M LL M )1n,n(p)1n,n( ijP - matice pravděpodobností přechodu 1. řádu. P(Xn+m = j / Xn = i) = pij(n,n+m) – pravděpodobnost přechodu ze stavu i v okamžiku n do stavu j v okamžiku n+m (pravděpodobnost přechodu m-tého řádu).           +=+ M LL M )mn,n(p)mn,n( ijP - matice pravděpodobností přechodu m-tého řádu. P(X0 = j) = pj(0) – počáteční pravděpodobnost stavu j. p(0) = (...., pj(0), ...) – vektor počátečních pravděpodobností. 3.6. Věta: Věta o vlastnostech markovského řetězce s diskrétním časem Nechť { }0n Nn;X ∈ je markovský řetězec. Pokud dále uvedené podmíněné pravděpodobnosti existují, platí pro Jj,iNm,m,m,n 021 ∈∀∈∀ : a) P(Xn+m = j / Xn = i) ≥ 0, tj. pij(n,n+m) ≥ 0 ( )    ≠ = === jipro0 jipro1 iX/jXP nn , tj.    ≠ = = jproi0 jipro1 )n,n(pij . b) ( )∑∈ + === Jj nmn 1iX/jXP , tj. ∑∈ =+ Jj ij 1)mn,n(p . (Přechod ze stavu i v okamžiku n do nějakého stavu j v okamžiku n+m je jev s pravděpodobností 1.) c) ( ) ( ) ( )kX/jXPiX/kXPiX/jXP 121121 mnmmn Jk nmnnmmn ======= +++ ∈ +++ ∑ , tj. ∑∈ ++++=++ Jk 211kj1ik21ij )mmn,mn(p)mn,n(p)mmn,n(p (Chapmanovy – Kolmogorovovy rovnice) d) ( ) ( ) ( )kX/jXPkXPjXP nmn Jk nmn ===== + ∈ + ∑ , tj. ∑∈ +=+ Jk kjkj )mn,n(p)n(p)mn(p (Zákon evoluce) Důkaz: ad a) ( ) ( ) ( ) 0 iXP iXjXP iX/jXP n nmn nmn ≥ = =∧= === + + , protože ( ) 0iXjXP nmn ≥=∧=+ a ( ) 0iXP n >= podle (a) z definice 3.1. ( ) ( ) ( )    ≠ = = = =∧= === jipro0 jipro1 iXP iXjXP iX/jXP n nn nn ad b) ( ) { } { }( ) ( ) 1 iXP iXP iX/jXPiX/jXP n n n Jj mn Jj nmn = = =∩Ω =      ===== ∈ + ∈ +∑ U ad c) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )kX/jXPiX/kXP iXP kX/jXPiX/kXPiXP iXP iXkX/jXPiX/kXPiXP iXP jXkXiXP iXP }iX{}kX{}jX{P iXP }iX{}jX{P iXP iXjXP iX/jXP 1211 12111211 211121 2121 21 mnmmn Jk nmn n mnmmn Jk nmnn n nmnmmn Jk nmnn n Jk mmnmnn n n Jk mnmmn n nmmn n nmmn nmmn ===== = ===== = = =∧===== = = = =∧=∧= = =       =∩=∩= = = = =∩Ω∩= = = =∧= === +++ ∈ + +++ ∈ ++++ ∈ + ∈ +++ ∈ +++ ++++ ++ ∑ ∑∑ ∑U ad d) ( ) ( ) ( ) ( ) ( )kX/jXPkXPjXkXP}jX{}kX{P}jX{PjXP nmn Jk n Jk mnn Jk mnnmnmn =====∧==      =∩===∩Ω== + ∈∈ + ∈ +++ ∑∑U 3.7. Poznámka: Zápis vlastností markovského řetězce s diskrétním časem v maticovém tvaru a) P(n,n+m) ≥ 0, kde 0 je nulová matice, P(n,n) = I, kde I je jednotková matice. b) P(n,n+m)e = e, kde e je sloupcový vektor ze samých jedniček. c) P(n,n+m1+m2) = P(n,n+m1) P(n+m1,n+ m1+m2). d) p(n+m) = p(n) P(n,n+m). 3.8. Příklad: Nechť je dán markovský řetězec { }0n Nn;X ∈ s množinou stavů J = {0,1}. Pravděpodobnosti přechodu 1. řádu jsou dány maticí           =+ 3 1 3 2 4 3 4 1 )1n,n(P . Vektor absolutních pravděpodobností v okamžiku n je p(n) =       2 1 , 2 1 . Jaká je pravděpodobnost, že po jednom kroku bude řetězec ve stavu 0 (resp. 1)? Řešení: Podle zákona evoluce máme: p(n+1) = p(n) P(n,n+1) = ( )5417,0;4583,0 24 13 , 24 11 6 1 8 3 , 3 1 8 1 3 1 2 1 4 3 2 1 , 3 2 2 1 4 1 2 1 3 1 3 2 4 3 4 1 2 1 , 2 1 =      =      ++=      ⋅+⋅⋅+⋅=                 = Po jednom kroku tedy bude řetězec ve stavu 0 s pravděpodobností 0,4583 a ve stavu 1 s pravděpodobností 0,5417. 3.9. Definice: Definice stochastického vektoru a stochastické matice a) Řádkový vektor s nejvýše spočetným počtem nezáporných složek, jejichž součet je roven 1, se nazývá stochastický vektor. b) Čtvercová matice, jejímž každým řádkem je stochastický vektor, se nazývá stochastická matice. c) Řekneme, že markovský řetězec, stochastický vektor a stochastická matice jsou odpovídající dimenze, když počet stavů markovského řetězce, počet složek stochastického vektoru a řád stochastické matice jsou stejné. 4. Homogenní markovské řetězce s diskrétním časem 4.1. Definice: Definice homogenního markovského řetězce (s diskrétním časem) Řekneme, že markovský řetězec { }0n Nn;X ∈ s množinou stavů J je homogenní, jestliže jeho pravděpodobnosti přechodu 1. řádu pij(n,n+1) nezávisí na okamžiku n, tj. pro ( ) ijn1n0 piX/jXP:Jj,iNn ===∈∀∈∀ + . Matice pravděpodobností přechodu 1. řádu je pak rovna P(1) a značí se P. Matice P se nazývá matice přechodu homogenního markovského řetězce. Vysvětlení homogenity: Pravděpodobnostní chování HMŘ se sice může s časem měnit, ale náhodný mechanismus, který tyto změny způsobuje – matice přechodu P – je sám časově neproměnný. 4.2. Příklad: Na okružní trase je umístěno 2m bodů. Mezi nimi převáží auto náklady. Náklad se z každého bodu převáží do následujícího s pravděpodobností p nebo do předchozího s pravděpodobností q = 1 – p. Zavedeme stochastický proces { }0n Nn;X ∈ , kde Xn = j, když v okamžiku n je auto v bodě j, j = 1, 2, ..., 2m. Ukažte, že tento stochastický proces je homogenní markovský řetězec a najděte jeho matici přechodu. Řešení: Daný stochastický proces je markovský řetězec, protože jeho budoucí stav závisí pouze na stavu přítomném a nikoliv na stavech minulých. Je to homogenní markovský řetězec, protože pravděpodobnosti přechodu 1. řádu nezávisí na okamžiku n. Grafické znázornění situace: Matice přechodu:                 = 0q000p p0q000 000p0q q000p0 K K KKKKKKK K K P . 4.3. Věta: Nechť { }0n Nn;X ∈ je stochastický proces s množinou stavů J, p je stochastický vektor odpovídající dimenze a P stochastická matice odpovídající dimenze. Pak { }0n Nn;X ∈ je homogenní markovský řetězec s vektorem počátečních pravděpodobností p(0) = p a maticí přechodu P, právě když všechny marginální pravděpodobnostní funkce tohoto procesu jsou tvaru: ( ) ( ) n1n100 jjjjjnn1100n100 pp0pjXjXjXP:Jj,,j,jNn − ⋅⋅==∧∧=∧=∈∀∈∀ KKK . Důkaz: Plyne z věty 3.2. a markovské vlastnosti. 4.4. Věta: Vlastnosti homogenního markovského řetězce v maticovém tvaru Nechť { }0n Nn;X ∈ je markovský řetězec s vektorem počátečních pravděpodobností p(0) a maticí přechodu P. Pak pro 1n,Nm,n 0 ≥∈∀ platí: a) P(n,n+m) = P(m) = Pm . b) p(m) = p(0)Pm . Důkaz: ad a) Z Ch – K rovnice plyne: P(m) = P(m-1+1) = P(m-1)P = P(m-2+1)P = P(m-2)P2 = ... = P(0)Pm = Pm . ad b) Ze zákona evoluce plyne: p(m) = p(m-1+1) = p(m-1)P = p(m-2+1)P = p(m-2)P2 = ... = p(0)Pm . 4.5. Poznámka: Z věty 4.4. plyne, že k určení pravděpodobnostního chování homogenního markovského řetězce stačí znát vektor počátečních pravděpodobností p(0) a matici přechodu P. 4.6. Příklad: Je dán homogenní markovský řetězec { }0n Nn;X ∈ s množinou stavů J = {0,1,2}, vektorem počátečních pravděpodobností p(0) = (1/2, 1/6, 1/3) a maticí přechodu               = 0 2 1 2 1 100 0 2 1 2 1 P . Určete vektor absolutních pravděpodobností po čtyřech krocích. Řešení:       =                     == 96 34 96 31 96 31 0 2 1 2 1 100 0 2 1 2 1 3 1 6 1 2 1 )0()4( 4 4 ,,,,Ppp 4.7. Poznámka: Přechodový diagram v rozvinutém a nerozvinutém tvaru. Homogenní markovský řetězec lze graficky znázornit pomocí přechodového diagramu, a to buď v rozvinutém nebo nerozvinutém tvaru. Je to ohodnocený orientovaný graf, kde vrcholy jsou stavy, orientované hrany se zakreslují pro kladné pravděpodobnosti přechodu za jeden krok a ohodnocení hran (váhy) jsou dána kladnými pravděpodobnostmi přechodu. 4.8. Příklad: Nechť { }0n Nn;X ∈ je homogenní markovský řetězec s množinou stavů J = {0,1,2} a maticí přechodu                 = 3 2 0 3 1 2 1 2 1 0 010 P . Nakreslete přechodový diagram. Řešení: 4.9. Poznámka: Pomocí přechodového diagramu v rozvinutém tvaru lze získat vektor absolutních pravděpodobností v okamžiku n. Postupuje se tak, že se pro každý možný stav v okamžiku n sečtou součiny vah těch hran, které v okamžiku n v daném stavu končí. 0 1 1/3 1 2 2/3 1/2 1/2 4.10. Příklad: Pro HMŘ z př. 4.8. vypočtěte pomocí přechodového diagramu v rozvinuté podobě vektor absolutních pravděpodobností pro n = 3. Přitom p(0) = (1, 0, 0). Řešení: Přechodový diagram v rozvinutém tvaru pro první tři kroky: ( ) 6 1 3 1 2 1 13p0 =⋅⋅= , ( ) 4 1 2 1 2 1 13p1 =⋅⋅= , ( ) 12 7 3 1 4 1 3 2 2 1 1 2 1 2 1 13p2 =+=⋅⋅+⋅⋅= ( )       = 12 7 , 4 1 , 6 1 3p 4.11. Příklad: Model havarijního pojištění Počet výskytů pojistné události v n-tém pojistném období je náhodná veličina Yn, n = 1, 2, …. Předpokládáme, že náhodné veličiny Yn jsou stochasticky nezávislé a všechny se řídí rozložením Po(λ). Existují tři kategorie pojistného: 0 … základní pojistné, 1 … pojistné s bonusem 30 %, 2 … pojistné s bonusem 50 %. V prvním pojistném období platí klient základní pojistné. Jestliže pojistné období má bezeškodní průběh, je klient v dalším pojistném období zařazen o kategorii výše. Pokud uplatní jeden pojistný nárok, je v příštím období zařazen o kategorii níže. Při uplatnění dvou a více pojistných událostí je zařazen o dvě kategorie níže. Nechť náhodná veličina Xn značí kategorii pojistného v n-tém pojistném období. Lze snadno odvodit, že platí { } { }      ≥ =− =+ =+ 2Ypro0 1Ypro0,1Xmax 0Ypro2,1Xmin X n nn nn 1n Stochastický proces { }0n Nn;X ∈ s množinou stavů J = {0, 1, 2} je markovský řetězec, protože jeho budoucí stav závisí pouze na stavu přítomném a nikoliv na stavech minulých. Protože pravděpodobnosti přechodu 1. řádu nezávisí na okamžiku n, jde o homogenní markovský řetězec. a) Najděte vektor počátečních pravděpodobností a matici přechodu. (Návod: využijte toho, že matice přechodu je stochastická matice. b) Nakreslete přechodový diagram. Řešení: Ad a) Vektor počátečních pravděpodobností: p(0) = (1, 0, 0). Stanovíme jednotlivé prvky matice přechodu. ( ) ( ) ( ) λ−λ− + −= λ −==−=≥==== e1e !0 10YP11YP0X/0XPp 0 nnn1n00 ( ) ( ) λ−λ− + = λ ====== ee !0 0YP0X/1XPp 0 nn1n01 ( ) 0pp1p 010002 =+−= ( ) ( ) ( ) λ−λ− + −= λ −==−=≥==== e1e !0 10YP11YP1X/0XPp 0 nnn1n10 ( ) 01X/1XPp n1n11 ==== + ( ) ( ) λ−λ− + = λ ====== ee !0 0YP1X/2XPp 0 nn1n12 ( ) ( ) ( ) ( ) λ−λ−λ−λ− + λ−−= λ − λ −==−=−=≥==== ee1e !1 e !0 11YP0YP12YP2X/0XPp 10 nnnn1n20 ( ) ( ) λ− + λ====== e1YP2X/1XPp nn1n21 ( ) ( ) λ− + ====== e0YP2X/2XPp nn1n22           λλ−− − − = λ−λ−λ−λ− λ−λ− λ−λ− eeee1 e0e1 0ee1 P Přechodový diagram: 4.12. Poznámka: Uvažme homogenní markovský řetězec, který má množinu stavů J = {0, 1, 2}, vektor počátečních pravděpodobností p(0) = (1/2, 1/3, 1/6) a matici přechodu                 = 4 1 4 3 0 4 1 4 1 2 1 0 3 2 3 1 P . Ukážeme si, jak lze simulovat realizace tohoto řetězce pomocí MATLABu. Nejprve získáme počáteční stav řetězce: Vygenerujeme náhodné číslo u z intervalu (0,1). Interval (0,1) rozdělíme na tři podintervaly podle kumulativních součtů vektoru počátečních pravděpodobností. Je-li       ∈ 2 1 ,0u , pak X(0)=0. Je-li    ∈ 6 5 , 2 1 u , pak X(0)=1. Je-li )1, 6 5 u ∈ , pak X(0)=2. Při simulaci dalších realizací i = 1, 2, …, n postupujeme podle kumulativních součtů v jednotlivých řádcích matice P: Vždy vygenerujeme náhodné číslo u z intervalu (0,1). Je-li X(i-1)=0 ∧       ∈ 3 1 ,0u , pak X(i)=0. Je-li X(i-1)=0 ∧ )1, 3 1 u ∈ , pak X(i)=1. Je-li X(i-1)=1 ∧       ∈ 2 1 ,0u , pak X(i)=0. Je-li X(i-1)=1 a ∧    ∈ 4 3 , 2 1 u , pak X(i)=1. Je-li X(i-1)=1 a ∧ )1, 4 3 u ∈ , pak X(i)=2. Je-li X(i-1)=2 ∧       ∈ 4 3 ,0u , pak X(i)=1. Je-li X(i-1)=0 ∧ )1, 4 3 u ∈ , pak X(i)=2. function realizace = simulovani_MR(P,p0,n) % funkce generuje prvnich n realizaci MR % syntaxe: [realizace]=simulace_MR(P,p0,n) % vstupni parametry: % P ... matice prechodu % p0 ... vektor pocatecnich pravdepodobnosti (radkovy) % n ... pocet kroku simulace % vystupni parametr: realizace ... vektor realizaci MR realizace = zeros(n, 1); realizace(1) = randomQ(p0); for i=2:n realizace(i) = randomQ(P(realizace(i-1), :)); end plot(realizace, 'o'); axis([-1 n+2 0.8 size(p0,2)+0.2]); end function q = randomQ(prob) % funkce vygeneruje nahodny stav q dle vektoru pravdepobnosti % syntaxe: q=randomQ(prob) % vstupni parametr: % prob ... radkovy vektor pravdepodobnosti (napr. [0.5 0.4 0.1]) % vystupni parametr: % q: nahodny index vstupniho vektoru %napr. 1 s pravd. 0.5, 2 s pravd. 0.4, 3 s pravd. 0.1 r = random('unif', 0, 1); leng = size(prob, 2); sum = 0; for q = 1:leng sum = sum+prob(q); if(r <= sum) break; end end end