capitolul 10 procese nastere moarte np final cpp 2013 lb romana

22
C A P I T O L U L 10 Procese aleatoare de Naştere şi Moarte Model matematic. Model Informatic. Program Sursă Aplicaţie. Proces aleator generat de o linie telefonică 10.1 Introducere. Notaţii Lucrarea reprezintă un studiu unitar legat de procesele aleatoare de naştere şi moarte (stingere). Astfel, sunt prezentate modele matematice, care conţin sistemele de ecuaţii diferenţiale ale proprietăţilor de stare, soluţiile acestor sisteme şi proprietăţile lor. Ca aplicaţie este studiat un process aleator generat de o linie telefonică, cu stările ocupat sau liber [27]. Aplicaţia este transpusă în model informatic, pentru care este elaborat programul sursă C++ şi este dat print screen-ul rezultatelor numerice. 10.1.1 Notaţii generale. Clasificarea proceselor. Dintr-un punct de vedere destul de general există următoarea incluziune de procese aleatoare: PA PM PM r PM 1 PNM (PSN, PSM) , unde am notat PA=Procese Aleatoare; PM=Procese Markov; PM r=Procese Markov de ordinul r; PM 1=Procese Markov de ordinul 1; PNM=Procese de Naştere şi Moarte; PSN=Procese Simple de Naştere; PSM=Procese Simple de Moarte (Stingere). Stările sitemului sunt notate prin 0, 1, 2, …, n-1, n, n+1, …,N-1, N. Variabila t reprezintă timpul. O variabilă aleatoare este notată prin X ,iar un process aleator prin . Orice proces aleator este descris matematic prin probabilităţile de stare şi probabilităţile de tranziţie , unde este probabiliatea ca sistemul să fie în starea n la momentul de timp t;

Upload: cristian-banica

Post on 26-Jan-2016

238 views

Category:

Documents


0 download

DESCRIPTION

Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

TRANSCRIPT

Page 1: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

C A P I T O L U L 10

Procese aleatoare de Naştere şi Moarte Model matematic. Model Informatic. Program Sursă

Aplicaţie. Proces aleator generat de o linie telefonică

10.1 Introducere. Notaţii Lucrarea reprezintă un studiu unitar legat de procesele aleatoare de naştere şi moarte (stingere). Astfel, sunt prezentate modele matematice, care conţin sistemele de ecuaţii diferenţiale ale proprietăţilor de stare, soluţiile acestor sisteme şi proprietăţile lor. Ca aplicaţie este studiat un process aleator generat de o linie telefonică, cu stările ocupat sau liber [27]. Aplicaţia este transpusă în model informatic, pentru care este elaborat programul sursă C++ şi este dat print screen-ul rezultatelor numerice.

10.1.1 Notaţii generale. Clasificarea proceselor. Dintr-un punct de vedere destul de general există următoarea incluziune de procese aleatoare: PA PM PM r PM 1 PNM (PSN, PSM) , unde am notat PA=Procese Aleatoare; PM=Procese Markov; PM r=Procese Markov de ordinul r; PM 1=Procese Markov de ordinul 1; PNM=Procese de Naştere şi Moarte; PSN=Procese Simple de Naştere; PSM=Procese Simple de Moarte (Stingere). Stările sitemului sunt notate prin 0, 1, 2, …, n-1, n, n+1,…,N-1, N. Variabila t reprezintă timpul. O variabilă aleatoare este notată prin X ,iar un process aleator prin . Orice proces aleator este descris matematic prin probabilităţile de stare şi probabilităţile de tranziţie , unde este probabiliatea ca sistemul să fie în starea n la momentul de timp t; este probabilitatea initial pentru starea n; este probabiliatea ca sistemul din starea n la momentul t să treacă în starea k la momentul t+1. Starea de început este n (pe prima poziţie), iar starea de sfârşit este k (pe ultima poziţie). Legătura dintre cele două feluri de probabilităţi este

.

Proprietăţi. ;

; pentru (suma pe linia n).

Matricea pătrată de tipul , notată se numeşte matrice de tranziţie. Această matrice este matrice stochastică, deoarece suma pe fiecare linie este egală cu 1. Dacă şi pe fiecare coloană suma este egală cu 1, atunci matricea se numeşte dublu stochastică.

10.1.2 Sumar legat de aparatul matematic folosit la demonstraţiile teoretice. [14] a) La studierea proceselor aleatoare se folosesc ecuaţii diferenţiale (în general liniare) omogene sau neomogene. Cu notaţiile generale din teoria ecuaţiilor diferenţiale reamintim că ecuaţia diferenţială liniară, neomogenă, de ordinul 1

Page 2: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

are soluţia generală

(1)

unde C este o constantă oarecare. Se spune că soluţia se obţine prin două cvadraturi. Dacă funcţiile sunt constante, atunci ecuaţia diferenţială este cu coeficienţi constanţi. Aceasă situaţie se întâlneşte des la studierea proceselor aleatoare. Singura deosebire constă în faptul că variabila independent este t şi nu x . b) Suma unei progresii geometrice infinite cu raţia subunitară q este

; .

c) Analiză combinatorie. (formula de exprimare a factorialului mare cu un factorial mic)

; ,

d) Seria exponenţială. , .

e) Scrierea sumelor înainte şi înapoi.

;

.

f) Procesele aleatoare conduc la repartiţii de probabilitate cunoscute. Cele mai întâlnite repartiţii sunt repartiţia exponenţială (continuă) şi repartiţia Poisson (discretă). Notăm variabila aleatoare prin v.a. şi reamintim:

v.a. X de tip exponenţial , , , ,

, , , .

v.a. X de tip Poisson , , ,

, , . este valoarea medie a v.a. X .

este dispersia v.a. X . Funcţia poate să aibă unul sau mai mulţi parametri.

10.2 Procese de naştere şi moarte (stingere) [3] 10.2.1 Schema grafică a procesului de naştere şi moarte. Sistemul are N+1 stări posibile. În fiecare moment de timp t sistemul se află într-o stare n din cele N+1 stări posibile. Schema care urmează prezintă cazul general al unui process de naştere şi moarte (PNM).

Page 3: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

Trecerea dintr-o stare în alta a unui PNM se face după următoarea regulă: dacă în momentul t starea este n, atunci în momentul t+1 starea este n-1 sau n+1. Deci tranziţia se face numai în stări adiacente. Aceata arată că evoluţia se face după un lanţ Markov.

10.2.2 Evoluţia dinamică a unui PNM . Evoluţia dinamică a unui PNM se controlează printr-un sistem (recurent) de ecuaţii diferenţiale de ordinul întâi, de forma , Prin rezolvarea acestui sistem de ecuaţii diferenţiale liniare se obţin probabilităţile de stare

. Sistemul conţine ecuaţiile viitorului. Rezolvarea (integrarea) acestui sistem diferenţial este, în general, destul de dificilă.

10.2.3 Cazuri particulare. Clasificare. Există două cazuri particulare de procese aleatoare. Acestea sunt procese Poisson. 1) Proces simplu se naştere (sau proces de naştere pură P) de tip a) omogen, când . Este notat X(t)=PPON(t). b) liniar, când . Este notat X(t)=PPLN(t).

2) Proces simplu se moarte (sau process de moarte (stingere) pură P) de tip a) omogen, când . Este notat X(t)=PPOM(t). b) liniar, când . Este notat X(t)=PPLM(t).

10.3 Proces simplu de naştere [3] Prezentăm în detaliu procesele simple de naştere.

10.3.1 Procesul simplu omogen de naştere X(t)=PPON(t). Pentru sistemul diferenţial al probabilităţilor de stare este ; (ecuaţie omogenă) ; ; (ecuaţie neomogenă) Acest sistem diferenţial se rezolvă în sensul înainte. Propoziţia 3.1. Sistemul diferenţial pentru procesul X(t)=PPON(t) are soluţia ;

; ; .

Demonstraţie. Metoda 1. Dăm valori lui n şi folosim formula (1). ; ; ; .

; ;

; ;

Page 4: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

.

; ;

; ;

.

Demonstraţia se continuă prin inducţie completă. Metoda 2. [3]. Construim o funcţie auxiliară şi rescriem sistemul diferenţial cu ajutorul acestei funcţii. Obţinem succesiv ; ; ; ; .

Explicităm; ; derivăm; . Înlocuim în ecuaţia diferenţială recurentă iniţilală şi rezultă o ecuaţie diferţială mai simplă ; .

Varianta 1. Integrăm definit ; .

Dăm valori lui n

; ; ; ; ; .

.

Varianta 2. Integrăm nedefinit: . Dăm valori lui n şi obţinem ; ; ;

; ; ; . Se continuă prin inducţie completă.

(End). Consecinţa 1. Legea de probabilitate a procesului Poisson X(t)=PPON(t) este

X(t)= ; ; .

Propoziţia 3.2. Proprietăţi ale procesului X(t)=PPON(t)

a) pentru orice .

b) ; c) .

Demonstraţie. a) .

b) = =

= = .

c) Metoda 1. Folosim definiţia teoretică a dispersiei. Se fac multe artificii (izolăm valoarea n =0 sau n =1; adaptăm factorialul etc.) şi obţinem succesiv:

Page 5: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

= =

= = + = .

Metoda 2. Folosim formula de calcul . Folosim artificii: izolăm valori, dedublăm sau punem -1+1=0.

= = =

= = + =

= = =

= . (End).

10.3.2 Procesul simplu liniar de naştere X(t)=PPLN(t). Pentru sistemul diferenţial al probabilităţilor de stare este ; ; constant ; ; Propoziţia 3.3. Sistemul diferenţial pentru procesul X(t)=PPLN(t) are soluţia constant

; Demonstraţie. Metoda 1. Dăm valori lui n şi folosim formula (1). ; ; ; ;

.

; ;

; ;

.

; ;

; ;

.

Se continuă prin metoda inducţiei complete şi rezultă ; .

Metoda 2. [3]. Construim o funcţie auxiliară şi rescriem sistemul diferenţial cu

ajutorul acestei funcţii. Întâi tratăm separat cazul şi rezultă ; .

Definim funcţia auxiliară şi obţinem succesiv:

; . Deoarece este cunoscut, atunci .

Page 6: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

Rămâne ,

Explicităm; ; derivăm; . Înlocuim în ecuaţia diferenţială recurentă iniţilală şi rezultă o ecuaţie diferţială mai simplă ; .

Varianta 1. Integrăm definit ; ; .

Dăm valori lui n şi obţinem ; ; ; ; ; . = . (End). Consecinţa 2. Legea de probabilitate a procesului Poisson X(t)=PPLN(t) este

X(t)= ; ; .

Propoziţia 3.4. Proprietăţi ale procesului X(t)=PPLN(t)

a) pentru orice .

b) ; c) . Demonstraţie. a) Folosim suma progresiei geometrice cu un număr infinit de termeni şi cu raţiea şi obţinem

.

b) = = , unde

. Apariţia factorului n complică evaluarea sumei. De aceea

se pleacă de la suma cunoscută . Derivăm în raport cu

t şi prelucrăm până când apare suma . Obţinem succesiv:

; ;

izolăm

; sub sumă deplasăm indicele de sumare în jos

, adică = ;

asamblăm rezultatele

= = .

c) = ; calculăm separat .

= =

urmărim folosirea sumei cunoscute = ;

artificiul 1: ; artificiul 2:

= =

Page 7: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

= + =

= + = +

artificiul 3: derivăm şi obţinem

artificiul 4: înmulţim ultima egalitate cu factotul

; înlocuil în ultima expresie a lui

= = ; asamblare = . (End).

10.4 Proces simplu de moarte (stingere) [2] Prezentăm în detaliu procesele simple de moarte (stingere).

10.4.1 Procesul simplu omogen de moarte X(t)=PPOM(t). Pentru sistemul diferenţial al probabilităţilor de stare este ; ; (ecuaţie neomogenă)

, , , , , . Spre deosebire de sistemul diferenţial de la procesul simplu de naştere, la procesul de stingere, sistemul diferenţial se rezolvă în sensul înapoi. Propoziţia 4.1. Sistemul diferenţial pentru procesul X(t)=PPOM(t) are soluţia

; ;

; ; n este număr natural oarecare fixat.

Demonstraţie. Dacă la momentul t sistemul este în starea oarecare atunci . Dăm valori lui k pentru rezolvare înapoi. ; ; ;

; ; ;

; ;

; ; ;

; ;

; ;

;

; ; .

Generalizare. ; ;

Page 8: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

, . (End). Consecinţa 3. Legea de probabilitate a procesului Poisson X(t)=PPOM(t) este

X(t)= ; ; .

.

Propoziţia 4.2. .

Demonstraţie. .

10.4.2 Procesul simplu liniar de moarte X(t)=PPLM(t). Pentru sistemul diferenţial al probabilităţilor de stare este ; ;

, , , , , . Propoziţia 4.3. Sistemul diferenţial pentru procesul X(t)=PPLM(t) are soluţia ; ;

; . Demonstraţie. Facem rezolvare înapoi. Începem cu o stare oarecare . Dăm valori lui k . ; ; ; ;

; ;

;

;

; .

; ;

;

;

; ; .

Generalizare. sau echivalent

;

; ; ; ; ; . (End). Consecinţa 4. Legea de probabilitate a procesului Poisson X(t)=PPLM(t) este

X(t)= ; ; .

Page 9: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

Propoziţia 4.4. Proprietăţi ale procesului X(t)=PPLM(t)

a) pentru orice .

b) ; c) .

Demonstraţie. a) = =

= =

= .

b) = = =

= = =

= = . c) = ; calculăm separat .

= = = ;

dedublare;

factorial mare; = ; izolăm ;

= ; 0= -1+1;

= +

+ ]; calcul independent;

=

= +

+ ]

= +

= +

= + = = = . (End).

10.5 Aplicaţie. Proces aleator generat de o linie telefonică [27]

10.5.1. Modelul matematic. Formularea problemei. Linia telefonică a unui abonat generează un proces aleator notat . Procesul are numai două stări posibile: linie liberă- notată prin starea 0 şi linie ocupată- notată prin starea 1. Fiecare stare generează o variabilă aleatoare, care descrie durata de viaţă a stării respective. V.a. X descrie durata în timp a stării libere 0. V.a. Y descrie durata în timp a stării ocupate 1. Procesul nu are memorie, adică procesul de îmbătrânire nu aduce schimbări în starea iniţială. De aceea ambele variabile aleatoare X şi Y au repartiţii exponenţiale.

Page 10: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

Notăm , ; ,

; .

Se ştie că ; , adică şi

S-au făcut măsurători pe linia telefonică şi a rezultat şi .

Ştiind că probabilităţile (absolute) iniţiale de stare sunt şi să se determine probabilitţile de stare şi la orice moment de timp

, , unde .

10.5.2. Algoritm pentru rezolvarea matematică a problemei.

Pasul 1. Aflăm parametrii variabilelor aleatoare X şi Y : ; .

Pasul 2. Scriem sistemul diferenţial al probabilităţilor de atare. Deoarece procesul poate trece numai din starea 0 în starea 1 şi invers, ecuaţiile diferenţiale ale procesului (numite şi ecuaţiile diferenţiale ale viitorului) sunt de forma (2)

, şi condiţia de normare .

Pasul 3. Obţinem o ecuaţie diferenţială numai în funcţia necunoscută sau . Propoziţia 5.1. Ecuaţia diferenţială în este

; (3) Aceasta este o problemă Cauchy. Demonstraţie. Folosim prima ecuaţie din sistemul (2) , eliminăm = şi rezultă

(3). Dacă folosim a doua ecuaţie din (2) şi , se obţine aceeaşi ecuaţie (3). (End). Pasul 4. Integrăm ecuaţia (3) prin folosirea formulei (1) din secţiunea 1.2. Avem , şi rezultă soluţia generală

(4)

Pasul 5. Înlocuim cu valorile numerice şi rezultă .

Pasul 6. Determinăm constanta reală din problema Cauchy. Rezultă soluţia ; ; (5)

Consecinţa 5. (6)

; ; ; .

Pasul 7. Se dau valori variabilei timp t în intervalul [t=1, tmax] şi se tabelează funcţiile şi .

10.5.3. Modelul informatic. Modelul informatic are ca scop tabelarea funcţiilor şi . Folosim identificatorii de variabile din tabelul care urmează.

________________ __________________

Page 11: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

Notaţii matematice Notaţii informatice ________________ __________________ alfa beta p00 p10 p0[t] p1[t] t t maxim tmax alfapbeta

vmsp0 (valoare medie)

vmsp1 (valoare medie)

Variabila timp t variază în intervalul [1,tmax]. p0[t]=0.2+0.1*exp(-t), pentru t=1.tmax. p1[t]=1- p0[t], pentru t=1,tmax. Se tabelează p0[t] şi p1[t].

10.5.4. Programul sursa C++ pentru calcularea probabilităţilor de stare.

// Program 67 Cpp:Proces de Nastere si Moarte pentru Linia Telefonica // Sectiunea 1.Descrierea programului

// Procesul are numai 2 stari: liber= neocupat=notat 0 // ocupat=notat 1 // Durata de stare 0 este o variabila aleatoare exponentiala X: x>0;f(x)>0 // f(x)=alfa*exp(-alfa*x); M(X)=1/alfa; D2(X)=1/alfa^2 // Durata de stare 1 este o variabila aleatoare exponentiala Y: y>0;g(y)>0 // g(y)=beta*exp(-beta*y); M(Y)=1/beta; D2(Y)=1/beta^2

// p0(0)=p00 si p1(0)=p10 sunt probabilitatile initiale;acestea sunt cunoscute // p0(t) si p1(t) sunt probabilitatile de stare;acestea trebuie calculate // p0(0)+p1(0)=1; p0(t)+p1(t)=1 pentru t=1,tmax // Pasul 1.Se determina p0(t) prin rezolvarea Problemei Cauchy: // p0'(t)+(alfa+beta)p0(t)=beta; p0(0)=a=p00 // Pasul 2.Se detremina p1(t) prin p1(t)=1-p0(t)

// Notatii: p0(0)=a=p00; p1(0)=b=p10; a+b=1 // p0(t)=p0t;p1(t)=p1t; acestea sunt vectori de dimensiune tmax // Solutia Problemei Cauchy este // p0(t)=C2*exp[-(alfa+beta)*t]+C1 , unde // C1=beta/(alfa+beta); C2=a-C1=p00-C1 // // Sectiunea 2.Fisiere C++ //

Page 12: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

#include<iostream.h> #include<conio.h> #include<math.h>

// Sectiunea 3.Declararea variabilelor // int nrprobdorit,probl,t,tmax; float p00,p10,sproba,C1,C2,alfa,beta,p0t[30],p1t[30]; float alfapbeta,sp0,sp1,vmsp0,vmsp1;

// Sectiunea 4.Proceduri.Functii // Programul nu contine proceduri

// Sectiunea 5.START PROGRAM //void main()

{ // Imceputul programului cout<<endl<<endl; cout<<" Proces Aleator de Nastere si Moarte pentru Linia Telefonica \n"; cout<<" Program pentru determinarea Probabilitatilor de Stare p0(t) si p1(t)"; cout<<endl<<endl; cout<<" Introduceti nr de probleme dorit nrprobdorit= ";cin>>nrprobdorit; for(probl=1;probl<=nrprobdorit;probl++) { // Inceputul ciclului nrprobdorit cout<<endl; cout<<" PROBLEMA "<<probl<<": \n"; cout<<endl; cout<<" Introduceti Probabilitatile Initiale de stare p0(0) si p1(0)\n"; cout<<" ";cin>>p00;cout<<" ";cin>>p10; cout<<" p0(0)= "<<p00<<" p1(0)= "<<p10; //cout<<" p1(0)= ";cin>>p10;

sproba=p00+p10;cout<<" PROBA: p0(0) + p1(0)= "<<sproba; cout<<endl<<endl; cout<<" Introduceti parametrul alfa pentru starea 0 alfa= ";cin>>alfa; cout<<endl; cout<<" Introduceti parametrul beta pentru starea 1 beta= ";cin>>beta;

alfapbeta=alfa+beta; cout<<" alfa + beta= "<<alfapbeta; cout<<endl; cout<<" Introduceti valoarea maxima pentru timpul t tmax= "; cin>>tmax; cout<<endl; // Calculam coeficientii C1 si C2 C1=beta/(alfa+beta);C2=p00-C1;

Page 13: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

cout<<" C1= "<<C1<<" C2="<<C2; cout<<endl; // Rezolva Problema Cauchy=calculeaza prob. de stare p0(t) for(t=1;t<=tmax;t++) {p0t[t]=0.0;p1t[t]=0.0;} for(t=1;t<=tmax;t++) {p0t[t]=C2*exp(-(alfa+beta)*t)+C1;} // Calculeaza p1(t)=1-p0(t) for(t=1;t<=tmax;t++) {p1t[t]=1-p0t[t];}

// Sectiunea 7.Print rezultate finale

cout<<endl; cout<<" Probabilitatile de stare p0(t) si p1(t) pentru t>0 sunt: \n"; cout<<endl; for(t=1;t<=tmax;t++) {cout<<" p0("<<t<<")= "<<p0t[t];} cout<<endl; for(t=1;t<=tmax;t++) {cout<<" p1("<<t<<")= "<<p1t[t];} cout<<endl; // Calculam suma pribabilitatilir sp0=suma pot(t); sp1=suma p1t(t) sp0=0.0;sp1=0.0; for(t=1;t<=tmax;t++) {sp0=sp0+p0t[t];} for(t=1;t<=tmax;t++) {sp1=sp1+p1t[t];} // Nu se adauga si p0(0); p1(0) // sp0=p00+sp0;sp1=p10+sp1; cout<<endl; cout<<" Proba sumei probabilitatilor de stare: sp0= "<<sp0<<" sp1= "<<sp1; cout<<endl<<endl; // Calculeaza valoarea medie a prob de stare,pe intervalul [1,tmax] vmsp0=sp0/tmax; vmsp1=sp1/tmax; cout<<" Valoarea medie pentru prob de stare p0(t) este vmps0= "<<vmsp0; cout<<endl; cout<<" Valoarea medie pentru prob de stare p1(t) este vmps0= "<<vmsp1; cout<<endl; } // Sfarsitul ciclului nrprobdorit cout<<endl<<endl; cout<<" END of JOB "; getch (); } // Sfarsitul programului

Page 14: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

5.5. Print screen pentru rezultatele numerice ale programului sursă.

Page 15: Capitolul 10 Procese Nastere Moarte NP FINAL Cpp 2013 Lb Romana

10.6 Concluzii

Procesele de naştere şi moarte sunt procese fără memorie. Ele conduc la procese Poisson cu un parametru. Sistemul diferenţial al probabilităţilor de stare (numit şi ecuaţiile diferenţiale ale viitorului [27] ) este format din ecuaţii diferenţiale de ordinul întâi, liniare, neomogene (mai puţin cazul n=0), cu coeficienţi constanţi. Rezolvarea sisemului se face recurent, prin ataşarea unei problem Cauchy şi folosirea metodei variaţiei constantei sau folosirea formulei (1) care dă direct soluţia generală. În aplicaţii, transpunerea modelului matematic în model informatic, şi apoi elaborarea unui program într-un limbaj de programare reprezintă o necesitate. Lucrarea de faţă prezintă o asemenea eşalonare unitară a ideilor prin studierea unui process aleator generat de o linie telefonică obişnuită, cu stările ocupat sau liber. Programul C++ a fost validat pe mai multe exemple numerice, dintre care se prezintă print screen- ul pentru două problem numerice.