Modele de simulare [626768]

0
Universitatea din Bucure¸ sti
Facultatea de Matematic˘ a ¸ si
Informatic˘ a
Modele de simulare
Autor Prof. Dr. Ion V˘ aduva
BUCURES ¸TI 2004

1
Prefat ¸˘ a
Lucrarea constituie suportul de curs pentru disciplina Modele de
simulare predat˘ a student ¸ilor de la sect ¸iile de Informatic˘ a ¸ siMate-
matic˘ a-Informatic˘ a din universit˘ at ¸i, ca disciplin˘ a obligatorie.
Materialul cuprinde un volum de not ¸iuni mai mare dacˆ at s-a r cuveni
pentru num˘ arul de ore afectate disciplinei respective (un semestru), dar
el aste indestul˘ ator pentru un curs de un an. Lucrarea poate fi utilizat˘ a
¸ si de c˘ atre student ¸ii de la unele specializ˘ ari de Master in informatic˘ a,
precum ¸ si ca material documentar pentru lucr˘ ari de licent ¸˘ a. Ea poate
servi ¸ si ca suport de curs opt ¸ional, mai ales ca material de init ¸iere, fiind
completat˘ a la nevoie cu bibliografie suplimentar˘ a pentru capitolele de
aplicat ¸ii, sau pentru unele perobleme noi ce nu au fost trat ate aici.
Structurat˘ a pe ¸ sapte capitole, lucrarea prezint˘ a mai in tˆ ai problemele
generale ale construct ¸iei modelelor de simulare a sisteme lor de orice fel,
precum ¸ si o introducere in limbajul specializat de simular e GPSS (Gen-
eral Purpose Simulation System), interesant mai ales pentr u student ¸ii
de la specializ˘ arile de informatic˘ a . Se prezint˘ a ¸ si o introducere formal˘ a
in studiul sistemelor cu evenimente externe discrete, pe baza c˘ arora se
construiesc modelele de simulare cu calculatorul, precum ¸ si alte aplicat ¸ii
informatice.
Capitolele 2-4 se ocup˘ a de simularea numerelor aleatoare, variabilelor
aleatoare ¸ si vectorilor aleatori, construind ¸ si analizˆ and algoritmi pentru
simularea principalelor repartit ¸ii de probabilitate, un idimensionale sau
multidimensionale, intˆ alnite in practic˘ a.
Capitolul al cincilea prezint˘ a proceduri de simulare a tra iectoriilor
lant ¸urilor Markov sau a unor procese stochastice particul are.
Capitolul al ¸ saselea trateaz˘ a cˆ ateva probleme de calcul numeric
rezolvate cu ajutorul metodei Monte Carlo cum sunt: calculu l inte-
gralelor, rezolvarea sistemelor de ecuat ¸ii liniare ¸ si a e cuat ¸iilor integrale,
rezolvarea numeric˘ a a problemei Dirichlet.
Intrucˆ at o problem˘ a important˘ a a aplic˘ arii simul˘ arii estevalidarea
modelului construit, ultimul capitol prezint˘ a cˆ ateva mo dele de simulare
pentru sisteme de a¸ steptare sau sisteme de stocuri, aceste a prilejuind
¸ si o scurt˘ a introducere matematic˘ a in teoria firelor de a¸ steptare ¸ si in
teoria stocurilor. Modelele matematice corespunz˘ atoare se folosesc de
regul˘ a la validarea modelelor de simulare.

2
Toate capitolele cont ¸in ¸ si cˆ ateva exert ¸it ¸ii menite s˘ a antreneze citi-
torul in int ¸elegerea mai aprofundat˘ a a materialului trat at in lucrare.
Pentru fiecare exercit ¸iu se dau indicat ¸ii de rezolvare sau se prezint˘ a
chiar solut ¸ia.
Cˆ and este cazul, prezentarea not ¸iunilor ¸ si rezultatelo r este insot ¸it˘ a
de figuri sau grafice ¸ si este pres˘ arat˘ a cu exemple menite s˘ a u¸ sureze
int ¸elegerea unor tehnici sau metode teoretice. Pentru sin tetizarea unor
rezultate sunt alc˘ atuite uneori tabele.
Bibliografia cuprinde de regul˘ a c˘ art ¸i sau lucr˘ ari ce pot fi g˘ asite de
c˘ atre student ¸i sau alt ¸i cititori in biblioteci.
Consider˘ am c˘ a aceast˘ a lucrare poate fi util˘ a ca document at ¸ie de
init ¸iere ¸ si lucr˘ atorilor din informatic˘ a ce abordeaz˘ a teme de proiectare
asistat˘ a de calculator sau de modelare.
Prin cont ¸inutul s˘ au, cartea de fat ¸˘ a constituie numai un material
de init ¸iere. Elaborarea modelelor de simulare pentru sist emele reale
este un demers dificil care implic˘ a colaborarea unor echipe specializate.
Totu¸ si, un curs de init ¸iere ca cel de fat ¸˘ a poate contribu i la acumularea
unei experient ¸e minimale pentru inceput.
Autorul
Bucure¸ sti, iunie 2004.

3
Cuprins
Cap.1. Generalit˘ at ¸i despre simulare . ………………….. 7
1.1 Introducere. ……………………………… ……….7
(•Model matematic, p.8; •Clasific˘ ari ale modelelor
matematice, p.10)
1.2 Construct ¸ia unui model de simulare. ……………. …..11
1.2.1 Structura unui model de simulare. …………….. …12
(•Ceasul simul˘ arii, p.12; •Agenda simul˘ arii, p.13)
1.2.2 Concepte de baz˘ a in modelarea sistemelor ………. .. 19
(•Nivele de reprezentare a sistemelor, p.20;
•Reprezentarea la nivel de comportare, p.20;
•Reprezentarea la nivel de structur˘ a de stare, p.20;
•Reprezentarea modular˘ a, p.21)
1.2.3 Modelul sistemului cu evenimente externe discrete . . .. 22
1.2.4 Metodologia de realizare a experimentelor de simular e
(Metodologia simul˘ arii). ……………………… ……..23;
(•Utilitatea simul˘ arii, p.26)
1.3. Generalit˘ at ¸i despre limbajul GPSS…………… …….27
(•Entit˘ at ¸ile limbajului GPSS, p.27;
•Structura instruct ¸iunii GPSS, p.29)
1.3.1 Exemple de programe GPSS ……………………. . 33
(•E1.Model de simulare pentru un sistem de a¸ steptare
cu o stat ¸ie, p.33;•E2.Model de simulare pentru un sistem
de a¸ steptare cu stat ¸ii paralele, p.33; •E3.Model cu stat ¸ii
paralele ¸ si preferint ¸e, p.34; •E4.Un model cpmplex, p.35)
Cap 2. Numere aleatoare . …………………………….39
2.1 Not ¸iuni introductive. ……………………… ………39
(•Repartit ¸ia uniform˘ a, p.40)
2.2 Necesitatea simul˘ arii numerelor aleatoare ……… ……. 42
2.3 Metode congruent ¸iale liniare. ……………….. ……..44
2.4 Alt ¸i generatori de numere aleatoare uniforme . ……. …. 47
(•Generatorul aditiv congruent ¸ial sau Fibonacci decalat, p .48;
•Generatorul congruent ¸ial inversiv, p.48;
•Generatorul matricial congruent ¸ial, p.49;
•Generatori bazat ¸i pe registre de deplasare, p.49;

4
•Amestecarea de generatori, p.49)
Exercit ¸ii . …………………………………. …….. 50
Cap.3. Simularea variabilelor neuniforme . …………….53
3.1 Metoda invers˘ a. …………………………… ……..53
3.2 Metoda compunerii sau amestec˘ arii. ……………. …..55
3.3 Metoda respingerii. ………………………… ……..59
3.4 Alte metode. ………………………………. …….67
3.4.1 Simularea repartit ¸iilor inrudite cu repartit ¸ia no rmal˘ a..72
(•Familia de variabile de tip Johnson, p.74)
3.5 Simularea unor variabile aleatoare particulare…… ……74
3.5.1 Repartit ¸ia exponent ¸ial˘ a………………… ……….74
3.5.2 Repartit ¸ia Gama …………………………. …… 76
(•O metod˘ a de compunere-respingere pt. cazul 0 <ν < 1,p.76;
•Metode pentru simularea variabilei Gamma (0,1,ν),ν >1, p.79)
3.5.3 Repartit ¸ia Beta…………………………. ……..81
3.5.4 Repartit ¸ia normal˘ a ……………………… …….. 84
(•O metod˘ a de compunere-respingere, p.84)
(•Metoda polar˘ a, p.86)
3.6 Simularea unor variabile discrete. …………….. …….88
3.6.1 Simularea unor repartit ¸ii bazate pe probe Bernoulli … 89
(•Repartit ¸ia binomial˘ a, p.89; Repartit ¸ia Pascal, p.91;
•Repartit ¸ia geometric˘ a, p.91)
3.6.2 Repartit ¸ia hipergeometric˘ a ………………. …….. 92
3.6.3 Repartit ¸ia Poisson. ……………………… ……..93
3.7 Validarea generatorilor …………………….. …….. 95
(•Construct ¸ia histogramei, p.95; •Testul χ2,p.99;
•Un test simplu, p.99)
Exercit ¸ii . …………………………………. …….. 99
Cap.4. Simularea vectorilor aleatori 103
4.1 Generalit˘ at ¸i . …………………………… ………. 103
4.2 Simulartea vectorilor uniformi . ………………. …… 107
4.3 Simularea vectorilor normali. ………………… ……109
(•O metod˘ a special˘ a, p. 112)
4.4 Simularea repartit ¸iei Cauchy multidimensionale. … …..113
4.5 Simularea repartit ¸iei multinomiale. ………….. …….114

5
4.6 Simularea repartit ¸iei Dirichlet . …………….. …….. 115
Exercit ¸ii. …………………………………. …….116
Cap. 5. Simularea proceselor stochastice ……………. 121
5.1 Generalit˘ at ¸i . …………………………… ………. 121
5.2 Lant ¸uri ¸ si procese Markov. ………………….. ……122
5.3 Simularea unui lant ¸ Markov . ………………….. …. 124
5.4 Simularea unor procese gaussiene particulare …….. … 125
5.4.1 Procesul gaussian cu funct ¸ie de autocorelat ¸ie exponent ¸ ial˘ a126
5.4.2 Procesul gausian cu funct ¸ie de autocorelat ¸ie linia r˘ ap. 126
(•Simularea procesului de zgomot alb pur, p.128)
5.5 Simularea procesului Poisson,. ……………….. ……129
Cap. 6. Metoda Monte Carlo ………………………..131
6.1 Generalit˘ at ¸i . …………………………… ………. 131
6.1.1 Calculul integralelor …………………….. ……. 133
6.2 Metoda Monte Carlo brut˘ a …………………….. … 134
6.3 Metode de reducere a dispersiei. ……………….. ….136
6.3.1 Metoda Monte Carlo dup˘ a important ¸˘ a…………. ..136
(••Observat ¸ii, p.137)
6.3.2 Metoda variabilei de control ………………… …. 139
6.3.3 Metoda variabilelor corelate ……………….. ….. 140
6.3.4 Metoda variabilelor antitetice. …………….. ……140
6.3.5 Metoda select ¸iei stratificate………………. …….141
6.3.6 Reducerea dimensiunii de integrare …………… … 142
6.4 Rezolvarea unor ecuat ¸ii operatoriale ………….. …… 143
6.4.1 Rezolvarea sistemelor de ecuat ¸ii liniare ……… ….. 143
6.4.2 Rezolvarea ecuat ¸iilor integrale . …………… ……. 145
6.5 Rezolvarea ecuat ¸iilor cu derivate part ¸iale . ……. ……. 148
Exercit ¸ii. …………………………………. …….152
(G6.4 Problema lui Buffon , p.154)
Cap. 7. Cˆ ateva modele de simulare . ………………… 157
7.1 Generalit˘ at ¸i despre modelele de a¸ steptare. ……. …….157
7.1.1 Procese de na¸ stere ¸ si deces ………………… ….. 159
(•Teorema de baz˘ a, p.159)
7.1.2 Calculul unor caracteristici ale modelului de a¸ step tare162
7.2 Simularea unui sistem cu o stat ¸ie ………………. …. 162

6
7.2.1 Modelul cu ceas variabil ……………………. …. 162
7.2.2 Modelul cu ceas constant . …………………… … 165
7.2.3 Validarea modelului cu o stat ¸ie . …………….. …. 167
7.3 Simularea unui sistem cu Nstat ¸ii paralele . …………. 170
(•Validarea modelului cu Nstat ¸ii paralele, p. 171)
7.4 Modele de simulare pentru stocuri. ……………… …174
7.4.1 Introducere in teoria matematic˘ a a stocurilor . …. … 174
7.4.2 Modele deterministe pentru stocarea unui produs …. 177
(•Modelul clasic al lotului economic, p.177;
•Modelul clasic al lipsei de stoc, p.179)
7.4.3 Modele de simulare particulare ………………. … 181
(•Primul model, p.181;
•Al doilea model, p.184)
Exercit ¸ii. …………………………………. …….186
Bibliografie . ………………………………………….1 89

Cap. 1
Generalit˘ at ¸i despre simulare
1.1 Introducere
Cuvantul simulare este de origine latina si inseamna capacitatea de
a reproduce ceva .In informatica, termenul de simulare a fost intro-
dus de John von Neumann la inceputul anilor ‘40, odata cu apar itia
primelor calculatoare electronice.J.von Neumann impreun a cu grupul
de savanti de la Scoala Los Alamos (Ulam, Metropolis, etc) au dez-
voltat primele aplicatii ale calculatoarelor. Tot ei au int rodus cuvintele
Cercetari operat ¸ionale (pentru a desemna aplicat ¸iile legate de dirijarea
operat ¸iilor militare pe arii geografice mari ale globului p amnantesc!)
precum ¸ si metoda Monte-Carlo (pentru a desemna aplicat ¸ii ale calcu-
latoarelor bazate pe utilizarea numerelor aleatoare). In a ccept ¸iunea
actuala a informaticii, simularea cuprinde o serie de aplic at ¸ii care real-
izeaz˘ a imitarea comportamentului unor part ¸i ale lumii reale (simularea
stochastica), luand in considerare si comportamentul alea tor al aces-
teia.Din domenul simularii face parte ¸ si metoda Monte Carl o.
Lucrarea de fat ¸a trateaza simularaea sub acest aspect gene ral, pornind
de la urm˘ atarea definit ¸ie mai putin formalizat˘ a [10].
Definit ¸ia 1.1 Simularea este o tehnic˘ a de realizare a experimentelor
cu calculatorul, care implic˘ a utilizarea unor modele mate matice ¸ si logice
care descriu comportarea unui sistem real (sau a unor compon ente ale
sale) de-alungul unor perioade mari de timp.
Deci simularea se realizeaza pe baza unui model special, num itmodel
7

8 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
de simulare, cu ajutorul c˘ aruia se realizeaz˘ a experimentele prin inte r-
mediul calculatorului. Modelul de simulare se construie¸ s te pe scheletul
unui model matematic ¸ si se finalizeaz˘ a intr-un algoritm. D e aceea in
cele ce urmeaz˘ a vom prezenta schema general˘ a a unui model d e sim-
ulare, pornind de la descrierea principalelor elemente ale unui model
matematic.
•Model matematic. Prin definit ¸ie, un model [10] este un ana-
logce reprezinta o parte a lumii inconjuratoare intr-un mod u¸ s or de
perceput de catre noi. Modelul ne reprezint˘ a uneori realit atea prin
scheme, figuri geometrice sau alte obiecte ce ne sunt familia re ¸ si pe
care le intelegem u¸ sor (i.e. la fel de bine cum le ”vedem” sau le
”pip˘ aim”). Modelul matematic ne reprezinta realitatea fo losind ele-
mente sau abstract ¸iuni matematice.
Elementele constitutive ale unui model matematic sunt urmatoarele
[10]:
a)Variabile (V) ¸ siParametri (P) care pot fi de intrare (V I, PI ),
dac˘ a pot fi percepute (masurate sau int ¸elese u¸ sor), sau de ie¸ sire
(V E, PE ), daca dimpotriv˘ a, masurarea sau perceperea lor este dific il˘ a.
Variabilele ¸ si parametri pot lua valori numerice sau logic e. Deosebirea
dintre variabile ¸ si parametri consta in aceea c˘ a parametr ii nu i¸ si schimb˘ a
valorile pe perioade mari de timp, in timp ce variabilele i¸ s i schimba val-
orile chiar pe intervale mici de timp. Scopul modelului este de a exprima
variabilele ¸ si parametri de ie¸ sire in funct ¸ie de variabi lele ¸ si parametri de
intrare, cu eventuala satisfacere a unor condit ¸ii de perfo rmant ¸˘ a de c˘ atre
sistem (de ex. condit ¸ii de optim). Unele V Ipot fialeatoare , caz in care
¸ si unele variabile sau parametri de ie¸ sire vor fi de asemene a aleatoare.
b)Relat ¸iile funct ¸ionale constituie o alt˘ a categorie de elemente ale
unui model matematic. Ele sunt de forma
Fi(V I, PI, V E, PE ) = 0
(adic˘ a implicite) ¸ si pot fi la randul lor de dou˘ a tipuri:
– ecuat ¸ii, care sunt satisf˘ acute numai de anumite valori a le vari-
abilelor sau parametrilor, ¸ si ;
– identit˘ at ¸i, care sunt satisf˘ acute de orice valori ale v ariabilelor ¸ si
parametrilor; ele exprima condit ¸ii de echilibru saulegi de conservare.

1.1. INTRODUCERE 9
Ecuat ¸iile si identitat ¸ile pot fi relat ¸ii algebrice sau tr anscendente,
diferent ¸iale sau integrale, detrministe sau stochastice , etc.
c)Caracteristicile operative constituie o alt˘ a categorie de elemente
ce compun un model matematic ¸ si ele pot fi:
– ipoteze de lucru (referitoare la relat ¸iile funct ¸ionale );
– ipoteze statistice (referitoare la VI-aleatoare).
d)Tehnica de rezolvare este un alt element constitutiv al unui model
matematic. Ea este o tehnic˘ a matematic˘ a ce realizeaz˘ a se pararea ele-
mentelor de ie¸ sire in funct ¸ie de elementele de intrare, ad ic˘ a:
(V, P)E=fj(VI, PI).
Cu alte cuvinte, tehnica de rezolvare a modelului exprim˘ a s ub forma
explicit˘ a variabilele ¸ si parametri de ie¸ sire in funct ¸ie de variabi lele ¸ si
parametri de intrare.
Tehnicile matematice de rezolvare a modelelor sunt ins˘ a s˘ arace atˆ at
ca varietate cˆ at ¸ si ca performant ¸˘ a. De exemplu, ecuat ¸i ile modelului se
pot reazolva numai dac˘ a sunt liniare sau uneori p˘ atratice , iar daca sunt
de grad superior ele se pot rezolva numai daca au forme partic ulare.
La fel, ecuat ¸iile diferent ¸iale sau cu derivate part ¸iale se pot rezolva cu
metode matematice deductive numai in anumite cazuri partic ulare. De
aceea in construct ¸ia modelelor matematice se fac de multe o riipoteze
simplificatoare care permit aplicarea tehnicilor de care dispune matem-
atica. (Acesta este scopul utiliz˘ arii de c˘ atre model a car acteristicilor
operative!). Din aceste motive, modelarea matematic˘ a est e aproxima-
tiv˘ a ¸ si ea nu permite rezolvarea realist˘ a a problemelor practice. Uti-
lizarea calculatorului permite imbun˘ at˘ at ¸irea perform ant ¸elor modelelor
matematice prin utilizarea metodelor numerice. Dar ¸ si in aceste condi-
tii modelele matematice nu pot descrie corect realitatea in toat˘ a com-
plexitatea ei deoarece nu toate relat ¸iile dintre obiectel e lumii reale se
pot exprima prin formule matematice. Intr-o atare situat ¸i e modelul
matematic trebuie completat cu descrieri care s˘ a imite anumite com-
portari ale lumii reale. Acestea se realizeaz˘ a prin descri eri algoritmice
de tipul if-then-else- sauif-then- combinate cu alte structuri algo-
ritmce (cicluri,secvent ¸e, etc.). In acest fel, modelul ma tematic se com-
pleteaz˘ a ¸ si extinde sub form˘ a de algoritm ¸ si devine model de simulare.
Simularea m˘ are¸ ste deci mult posibilitatea de tratare rea list˘ a

10 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
a problemelor aplicative . Construct ¸ia unui model de simulare, care
in fapt este un algoritm complex, dezvoltat pe scheletul unui model
matematic, este o sarcin˘ a nu prea u¸ soar˘ a; o vom trata mai j os.
•Clasific˘ ari ale modelelor matematice. Mai intai s˘ a vedem
ins˘ a cum pot fi clasificate modelele matematice?
(i). Clasificarea modelelor matematice dupa natura variabi lelor uti-
lizate de model: continue/discrete ; statice/ dinamice (daca timpul
nu intervine sau dac˘ a apare explicit ca variabil˘ a a modelu lui); determin-
iste/stochastice (dupa cum nu cont ¸ine sau cont ¸ine m˘ acar o variabil˘ a
de intrare ca variabil˘ a aleatoare).
(ii). Clasificare topologic˘ a, dup˘ a structura determinat ˘ a de part ¸ile in
care se descopune modelul (cˆ and este cazul): cu o component˘ a /cu mai
multe componente in serie , in paralel, in ret ¸ea. (Tipurile de
modele scrise cu caractere ingro¸ sate sunt importante c˘ ac i sunt realiste
¸ si se construiesc cu dificultate. Modelele de simulare sunt de aceste
tipuri).
Un model, fie el matematic sau de simulare, constitue de fapt o
clas˘ a de modele .
Pentru a ilustra caracteristicile componente ale unui mode l matem-
atic vom da un exemplu.
Exemplul 1.1 [10,11]. Sistemul de a¸ steptare este o parte a
lumii reale in care se produc aglomer˘ ari . Un astfel de sistem const˘ a
din una sau mai multe stat ¸ii de serviciu care servesc (dupa a numite re
guli) client ¸i care sosesc in sistem. Dac˘ a sosesc mult ¸i client ¸i ¸ si stat ¸iile de
servire nu pot s˘ a-i serveasc˘ a repede, atunci se formeaz˘ a cozi de a¸ steptare
in sistem. Proprietarul sau administratorul sistemului tr ebuie s˘ a diri-
jeze sistemul astfel incˆ at nici client ¸ii s˘ a nu a¸ stepte mult pˆ an˘ a primesc
serviciul, dar nici stat ¸iile de serviciu s˘ a nu leneveasc˘ a prea mult, c˘ aci
lenevirea lor aduce pierderi administratorului sistemulu i.
Modelarea matematic˘ a a sistemelor de a¸ steptare are deci c ascopre-
alizarea unui echilibru intre pierderile cauzate client ¸i lor prin a¸ steptari ¸ si
pierderile cauzate administratorului prin leneviri. Mode lele matematice
de acest tip sunt cunoscute sub numele de teoria matematic˘ a a cozilor
sau teoria a¸ stept˘ arii. Ele sunt utilizate in diverse situat ¸ii practice: in
comert ¸, in managementul sistemelor de comunicat ¸ii ¸ si de transport,

1.2. CONSTRUCT ¸IA UNUI MODEL DE SIMULARE 11
dar ¸ si in dirijarea ¸ si controlul funct ¸ion˘ arii in timp re al a ret ¸elelor de
calculatoare.
Un model de asteptare contine de regula urmatoarele element e:
Variablele de intrare (cunoscute) VI: AT= timp de intersosire
(al client ¸ilor); ST= timp de serviciu al unui client ( caracteristic˘ a
a stat ¸iilor); aceste variabile sunt de regul˘ a aleatoare, fapt ce m˘ are¸ ste
dificultatea model˘ arii. Sosirile se pot m˘ asura ¸ si prin NA=num˘ ar de
client ¸i sosit ¸i pe unitatea de timp iar serviciile se pot m˘ asura ¸ si prin
NS=num˘ ar de client ¸i servit ¸i pe unitatea de timp. Acestea sunt deci
variable aleatoare discrete.
Variabilele de ie¸ sire (necunoscute) V Esunt:WT= timp de a¸ steptare
(sauWL= lungimea cozii, variabil˘ a discret˘ a);
TID= timp de lenevire (sau NID= num˘ arul de stat ¸ii de servire
carelenevesc , variabil˘ a discret˘ a);
Scopul modelului: cunoscˆ and repartit ¸iile de probabilit ate ale lui AT
¸ siSTs˘ a se determine informat ¸ii despre WT(WL) sauTID(NID) ¸ si
s˘ a se stabileasc˘ a cum trebuie s˘ a se realizeze STastfel incˆ at o anume
funct ¸ie de eficient ¸˘ a ( sau cost) s˘ a fie optim˘ a sau convena bil˘ a pentru
administratorul sistemului.
Construct ¸ia modelelor de simulare se bazeaz˘ a pe studiere a (in funct ¸ie
de ipotezele f˘ acute asupra variabilelor de intrare AT, ST ) a procesului
stochastic discret N(t) = num˘ arul de client ¸i in sistemul de a¸ steptare
la momentul de timp t.Acest proces este proces de na¸ stere ¸ si deces.
Nu vom studia aceste procese deocamdat˘ a. (Acest lucru va fi f ˘ acut in
ultimul capitol!). Vom prezenta mai intai construct ¸ia unui model de
simulare.
1.2 Construct ¸ia unui model de simulare
Modelul de simulare (MS) presupune utilizarea calculatorului ¸ si el
se construie¸ ste pe baza/scheletul unui model matematic; m ai precis el
completeaz˘ a modelul matematic descriind unele relat ¸ii prin algoritmi,
deci in final MS este un algoritm. Acest algoritm trebuie s˘ a d escrie
corect evolut ¸ia sistemului ¸ si s˘ a permit˘ a efectuarea de experi ent ¸e (prin
rul˘ ari pe calculator), care s˘ a inlocuiasc˘ a experient ¸e le ce ar trebui real-
izate asupra sistemului real.

12 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
1.2.1 Structura unui model de simulare
Construct ¸ia unui MS utilizeaz˘ a dou˘ a concepte de baz˘ a: ceasul simu-
larii¸ siagenda simul˘ arii
•Ceasul simul˘ arii. Ceasul asigur˘ a e¸ salonarea corect˘ a in timp a
evenimentelor create de model ¸ si uneori ajut˘ a la implemen tarea condit ¸iei
de terminare a simul˘ arii. El este de dou˘ a feluri:
a) ceas cu cre¸ stere constant˘ a;
b) ceas cu cre¸ stere variabil˘ a;
Not˘ a: Evenimentele corespund unor modific˘ ari in sistem adica
modificari ale valorilor unor variabile care se calculeaz˘ a sau se genereaz˘ a
prin instruct ¸iuni ale modelului (chiar ¸ si dac˘ a sunt aleatoare! ).
In Figura 1.1 sunt prezentate cele dou˘ a modalit˘ at ¸i de cre ¸ stere a
ceasului. Ceasul porne¸ ste cu valoarea zero la inceputul si mul˘ arii. Dac˘ a
modelul se bazeaz˘ a pe ceasul cu cre¸ stere variabil˘ a, atun ci ceasul este
crescut cu valoarea ce corespunde aparit ¸iei primului eveniment urm˘ ator ;
apoi programul prelucreaz˘ a evenimentul , dupa care ceasul cre¸ ste din
nou reluˆ andu-se ciclul simul˘ arii , pˆ ana cˆ and ceasul atinge o valoare data
init ¸ial, Tmaxcare corespunde perioadei pe care se realizeaz˘ a simularea .
Ceasul cu cre¸ stere constant˘ a presupune c˘ a de fiecare dat˘ a cre¸ sterea
se realizeaz˘ a cu o cuant˘ a de timp cconstant˘ a; apoi se prelucreaz˘ a toate
evenimentele ap˘ arute pe intervalul de timp de lungime c, dup˘ a care
se reia ciclul simul˘ arii. Simularea se termin˘ a de asemene a cˆ and ceasul
atinge valoarea Tmax.
Terminarea simul˘ arii se poate realiza ¸ si impunˆ and condi t ¸ia ca mo-
delul s˘ a prelucreze un anumit num˘ ar dat de evenimente de un tip pre-
cizat. (De exemplu, in cazul unui model de simulare a unui sis tem de
a¸ steptare, se poate impune condit ¸ia ca simularea s˘ a se te rmine cˆ and s-a
simulat servirea unui num˘ ar dat de client ¸i).

1.2. CONSTRUCT ¸IA UNUI MODEL DE SIMULARE 13
h h h hx x x x
T1 T2 T3T4
c 2c 3cE1 E2 E3E4
E1 E2 E3E4
c c c00
TT
(a)
(b)–
–  –  – x x x x
Fig. 1.1. Variat ¸ia ceasului.
a) Cazul ceasului cu cre¸ stere variabilˇ a. Ti= valorile ceasului.
b) Cazul ceasului cu cre¸ stere constantˇ a c.
A r˘ amas oarecum ne precizat ce se int ¸elege prin prelucrare a unui
eveniment.Acest fapt se int ¸elege u¸ sor dac˘ a preciz˘ am ¸ s i conceptul de
agend˘ a a simul˘ arii.
•Agenda simul˘ arii. Agenda se compune din elementele memo-
ratede modelul de simulare. Variabilele modelului iau diverse v alori pe
parcursul simul˘ arii; de aici rezulta c˘ a pe parcursul simu l˘ arii apar multe
evenimente. Memorarea in totalitate a acestor evenimente, impreun˘ a
cu caracteristicile lor, nu este nici recomandat˘ a dar nici necesar˘ a daca
simularea se realizeaz˘ a pe perioade mari de timp. De aceea, se memo-
reaz˘ a (in agend˘ a) numai ceea ce este strict necesar. Eveni mentele sunt
dediverse tipuri ; unele variabile descriu ¸ si st˘ ariale sistemului (sau ale
unor componente ale acestuia). Evenimentele sunt creiate s au gener-
ate la momente de timp ulterioare valorii ceasului. De aceea agenda
se compune din dou˘ a p˘ art ¸i: agenda evenimentelor curente AEC ¸ si
agenda evenimentelor viitoare.
Deciagenda A=AEC⊕AEV,unde:
AEC = agenda evenimentelor curente (care au timpul de aparit ¸ie
egal cu valoarea ceasului); iar
AEV = agenda evenimentelor viitoare (care au timpul de aparit ¸i e
ulterior valorii curente a ceasului).
Algoritmul simularii prelucreaz˘ a deci numai evenimentel e dinAEC;
prelucrarea unui eveniment inseamn˘ a fie determinarea apar it ¸iei unui
nou eveniment (ce se memoreaz˘ a in AEV) sau modificarea unei st˘ ari,

14 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
fie distrugerea unui eveniment (“stergerea”) lui din agend˘ a. Prelucr˘ arile
evenimentelor t ¸in seama ¸ si de st˘ arile sistemului la acel moment.
Algoritmul simul˘ arii gestioneaz˘ a/actualizeaz˘ a agend a prin interac-
t ¸iunea acesteia cu ceasul; intr-un ciclu al simul˘ arii ceasul este acualizat,
dupa care se selecteaz˘ a din agenda Aevenimentele care fac parte din
AEC ¸ si se prelucreaza aceste evenimente pana cand AEC devine vida.
Atunci, ceasul este cresut din nou ¸ si se reia ciclul simul˘ arii . Deci
agenda simul˘ arii se modific˘ a pe parcursul simul˘ arii conf orm urm˘ atoarei
relat ¸ii de dinamic˘ a
A=A⊕AEgen/circleminusAEelim
undeAgensunt evenimentele generate pe parcursul unui ciclu, iar Aelim
sunt evenimentele eliminate cu ocazia prelucr˘ arii AEC. (Semnele⊕¸ si
/circleminusse autexplic˘ a).
Structura general˘ a a unui MS este descris˘ a in schema logic˘ a
din Figura 1.2, pentru a c˘ arei int ¸elegere este necesar˘ a ¸ si urm˘ arirea
schemelor ajut˘ atoare din Fig. 1.3, a)-g). Descrierea stru cturii MS este
prezentat˘ a structurat.
In Figura 1.3 a) se prezint˘ a schema logic˘ a general˘ a a rutinei prin-
cipale; MS este conceput ca un jocconstituit din mut˘ ari. Se urm˘ are¸ ste
ca jocul s˘ a conduc˘ a la o performant ¸˘ a a sistemului prin ef ectuarea a
mai multe mut˘ ari, fiecare mutare fiind aleas˘ a astfel incˆ at s˘ a conduc˘ a
in final la satisfacerea jocului . In blocul central al Fig.1.3 a) (rutina
principal˘ a!) se execut˘ a ciclul de baz˘ a al simul˘ arii (in teract ¸iunea ceas-
agend˘ a!).Rutina de comutat ¸ie alege evenimentul ce urmea z˘ a a fi pre-
lucrat din AEC si transfer˘ a controlul la rutina eveniment care-l va
prelucra.
Rutina eveniment prelucreaz˘ a evenimente dup˘ a schema:
A→B, A…….. > B
care inseamn˘ a c˘ a Ail detrmin˘ a sigurpeB,respectiv Ail poate deter-
mina peB(cu o probabilitate); sau,
A→/B, A…./…… > B
care inseamn˘ a c˘ a Aildistruge (elimin˘ a) pe Bsigur, respectiv Ail
poate distruge peBcu o probabilitate dat˘ a. Prelucrarea evenimentului

1.2. CONSTRUCT ¸IA UNUI MODEL DE SIMULARE 15
t ¸ine seama de regulile de prelucrare ale acelui tip de eveni ment ¸ si de
starea/st˘ arile sistemului.
  
SFARSIT?
AAAA

AAAA?
AAAA

AAAA?  
RUTINA PRINCIPALA???  
INCEPUT
66-

? 6 

& %' $
COMUTATIERUTINA DEB
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
BB N@
@
@
@
@@R
  

B
B
B
B
B
B
B
B
B
B
B
B
B
BB N
TERMINATETOATE JOCURILEJOC COMPLETCOMPLETAMUTARE
JOCREZUMATRUTINAMUTAREREZUMATRUTINAA MUTARIIINITIALIZARERUTINA DEA JOCULUIINITIALIZARERUTINA DE
EVENIMENTRUTINAULTIMAEVENIMENTRUTINAA DOUAEVENIMENTRUTINAPRIMA
Fig. 1.2. Schema logica globalˇ a a unui program
de simulare bazat pe ceas cu cre¸ stere variabilˇ a.

16 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
& %' $
MUTAREREZUMATLA RUTINATRANSFER
a)Da??????
@@

@
@-Nu
& %' $
COMUTATIELA RUTINA DETRANSFER
CLOCK>TMAXCEASUL CLOCKREACTUALIZEAZAEVENIMENT CURENTURMATOR INEVENIMENTULTRANSFORMADIN AEVEVENIMENTALEGE PRIMULDa@@

@
@-Nu
MENTE VIITOAREAGENDA DE EVENI-EXISTA O
& %' $
INTRARE LA
RUTINA
REZUMAT
MUTARE& %' $
INTRARE DIN
RUTINA DE
INITIALIZARE
A MUTARII
b)& %' $
PRINCIPALALA RUTINATRANSFER??????

SCRIE EFECTUL
ACESTUI EVENIMENTCU ACEST EVENIMENTCARE AU LEGATURASTATISTICILEREACTUALIZEAZADE ACEST EVENIMENTEVENIMENTELE ANULATEAGENDASCOATE DININ AGENDA (AEV)SI LE MEMOREAZAEVENIMENTE VIITOARENOILEGENEREAZAMODIFICA ELEMENTELE
AFECTATE DE
ACEST EVENIMENT& %' $
COMUTATIERUTINA DEINTRARE DIN
Fig. 1.3. Schemele logice ale rutinelor programului de simu lare.
a) Rutina principala
b) Rutina eveniment

1.2. CONSTRUCT ¸IA UNUI MODEL DE SIMULARE 17
& %' $
JOCULUIREZUMATULLA RUTINATRANSFER
c)Da ????& %' $
PRINCIPALADIN RUTINAINTRARE
REZUMATUL JOCULUISTATISTICILE PENTRUREACTUALIZEAZA
@@

@
@-Nu
& %' $
A MUTARIIINITIALIZARELA RUTINA DETRANSFER
ESTE ULTIMA
MUTARE ?



MUTARIIREZUMATELECALCULEAZA 
SFARSIT
d)Da???
@@

@
@-Nu
& %' $
A JOCULUIINITIALIZARELA RUTINA DETRANSFER
ESTE
ULTIMUL JOC ?



JOCULUIREZUMATELEDETERMINA& %' $
MUTAREREZUMATDIN RUTINAINTRARE
Fig.1.3(continuare) Schemele logice ale rutinelor
programului de simulare.
c) Rutina rezumat mutare;
d) Rutina rezumat joc;

18 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
& %' $
ZATOARECORESPUN-EVENIMENTLA RUTINATRANSFER
e)?CURENTEVENIMENTULUIDETERMINA TIPUL?& %' $
PRINCIPALADIN RUTINAINTRARE
& %' $
PRINCIPALPROGRAMULLATRANSFER
f)?REZUMATUL MUTARIIINITIALIZEAZANECESARA MUTARIIINFORMATIAJOCULUI INITIALIZEAZAFOLOSIND INFORMATIA
??& %' $
A JOCULUIINITIALIZARERUTINA DEINTRARE DIN
& %' $
A MUTARIIINITIALIZARELA RUTINA DETRANSFER
g)?REZUMATUL JOCULUIINITIALIZEAZANECESARA JOCULUIINFORMATIAINTRARE
??  
INCEPUT
Fig.1.3(continuare) Schemele logice ale rutinelor progra mului de
simulare.
e) Rutina de comutat ¸ie;
f) Rutina de init ¸ializare a mutˇ arii;
g) Rutina de init ¸ializare a jocului.

1.2. CONSTRUCT ¸IA UNUI MODEL DE SIMULARE 19
1.2.2 Concepte de baz˘ a in modelarea sistemelor
Descrierea unui MS prezentat˘ a mai sus poate fi realizat˘ a in tr-un cadru
formal general folosind concepte din teoria matematic˘ a a sistemelor [8,
12, 13].
Prin sistem [8] se int ¸elege, sub forma cea mai vag˘ a, o mult ¸ ime de
obiecteOinterconectate prin intermediul unei relat ¸ii R, adica Sis-
tem= (O,R), unde
R⊂O×O .
Definit ¸ia formala generala a unui sistem este [8]:
Definit ¸ia 1.2 Un sistem este urm˘ atoarea structur˘ a de mult ¸imi:
S= (T, X,Ω,Σ, Y, δ, λ )
unde:
T=timpul de baz˘ a al sistemului (ceasul sistemului) ;
X=mult ¸imea intr˘ arilor ;
Ω = mult ¸imea segmentelor de intrare (forma intr˘ arilor!)
segment= ω: (t0, t1)/mapsto→X,=ω(t0,t1)= grafic={(t, ω(t)), t0≤t≤
t1}.
Se foloseste de regul˘ a notat ¸ia ω(t,t1)={(τ, ω(τ)), t < τ≤t1}¸ si
notat ¸iile ω=ω(t0,t1), ωt)=ω(t0,t), ω(t=ω(t,t1);ω=ωt)ω(t;
Σ =mult ¸imea st˘ arilor interne ale sistemului =memoria sis-
temului;
Conceptul de stareeste esent ¸ial in modelarea sistemelor; el descrie
structura intern˘ a (intim˘ a!) a sistemului;
δ=funct ¸ia de tranzit ¸ie a st˘ arilor definit˘ a ca
δ: Σ×Ω/mapsto→Σ.
Ea satisface relat ¸ia
δ(σ, ω) =δ(δ(σ, ωt)), ω(t),∀t, ω=ωt)ω(t,
care este axioma semigrupului sau proprietatea de separabilitate a st˘ arilor.
Mult ¸imea (graficul) ( ω, σ) se nume¸ ste traiectorie a st˘ arilor ;

20 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
Y=mult ¸imea ie¸ sirilor (Sistemul este presupus deschis , intr˘ arile
si ie¸ sirile fiind exterioare sistemului).
Mult ¸imea Ycont ¸ine r˘ aspunsul sistemului la intrarea de forma ω
cˆ and la momentul init ¸ial t0sistemul sa afl˘ a in starea σ.
λ=funct ¸ia de r˘ aspuns, de forma λ: Σ×X×T/mapsto→Y;
λ(σ, x, t) conduce la un segment de ie¸ sire ce reprezint˘ a forma r˘ aspun-
sului sistemului la intrarea x, la momentul tcˆ and starea la momentul
init ¸ial t0, t0< t,esteσ.
Nota: din definit ¸ie rezult˘ a c˘ a pentru o stare init ¸ial˘ a σ, (la momentul
t0) cˆ and are loc intrarea de forma ωse realizeaz˘ a o traiectorie unic˘ a a
st˘ arilor . Cu alte cuvinte, traiectoria st˘ arilor satisface relat ¸i ile:
STRAJ σ,ω: (t0, t1)/mapsto→Σ, a.i.STRAJ σω(t0) =σ
STRAJ σ,ω(t) =δ(σ, ωt)),∀t∈(t0, t1).
Proiect ¸ia STRAJ obtinut˘ a prin funct ¸ia de tranzit ¸ie a st˘ arilor compus˘ a
cu funct ¸ia de r˘ aspuns, este traiectoria de ie¸ sire
OTRAJ σ,ω: (t0, t1)/mapsto→Y.
Dac˘ a λ=λ(σ) (ie¸ sirea depinde numai de σ) atunci rezulta relat ¸ia
simpl˘ a
OTRAJ σ,ω(t) =λ(STRAJ σ,ω(t)).
•Nivele de reprezentare a sistemelor. Exist˘ a mai multe nivele
de reprezentare a sistemelor ¸ si anume [8]:
•Reprezentarea la nivel de comportare. Sistemul este o cutie
neagr˘ a ( black box ), exprimat formal prin relat ¸ia
Rs={(ω, ρ)|ω∈Ω, ρ=OTRAJ σ,ω, σ∈Σ}.
Acest nivel de reprezentare este cel mai vag. El descrie numa i relat ¸iile
de intrare/ie¸ sire ce se pot observa dinafara sistemului (c are deci se
comport˘ a ca o cutie neagra ).
•Reprezentarea la nivel de structur˘ a de stare. La acest nivel
seintr˘ a in structra intern˘ a ( intim˘ a ) a sistemului, adic˘ a se stabilesc
elementele acestuia : ( T, X,Ω,Σ, Y, δ, λ ) , definite ca mai sus.

1.2. CONSTRUCT ¸IA UNUI MODEL DE SIMULARE 21
•Reprezentarea modular˘ a (ca structur˘ a compus˘ a). Dac˘ a sis-
temul este complex, atunci se identific˘ a subsisteme ale acestuia precum
si interconexiunile dintre ele in sensul c˘ a ie¸ sirile unor subsisteme sunt
int˘ ari in alte subsisteme, intr˘ arile unor subsisteme fiin d intr˘ ari ale sis-
temului ¸ si iesirile unor subsisteme fiind ie¸ siri ale siste mului. Cele trei
nivele de reprezentare ale unui sistem sunt ilustrate grafic in Fig.1.4.
&%'$&%'$
&%'$&%'$
c)- – – – – –
– –
66 6b)-
6-a)- -BLACK BOX
ω2(t)δ2 λ2 ρ2(t)ω1(t)δ1 λ1ρ1(t)ω3(t)δ3 λ3ρ3(t)S1(t) S3(t)S(t)
S2(t)ω(t)δ λ ρ (t)ω(t) ρ(t)
RS={ω,ρ}
ω(t) ρ2
Fig. 1.4. Descrierea sistemului
a) Sistem la nivel de comportare
b) Sistem la nivel de structurˇ a de stare
c) Sistem la nivel de structurˇ a compusˇ a.
Nivelele de reprezentare a sistemelor, pornind de la forma c ea mai
vag˘ a si continuˆ and pan˘ a la forma detaliat˘ a legitimeaza Metodologia

22 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
”TOP DOWN” de proiectare a sistemelor de orice fel, in particu-
lar, metodologia de proiectare a sistemelor informatice si in general
metodologia de proiectare ierarhic˘ a, descendent˘ a a programelor.
1.2.3 Modelul sistemului cu evenimente externe discrete
Modelul de simulare se incadreaz˘ a in categoria modelului de sistem
cu evenimente externe discrete (DEVS=Discrete EVent System), [8,
12,13]. Acesta este un sistem particular de forma
SM= (XM, SM, YM, δM, λM, τM)
in care timpul Teste considerat implicit iar elementele au urmatoarea
semnificat ¸ie:
XM= mult ¸imea (discret˘ a) de evenimente externe ; (int ¸elegem eveni-
mentele ca ni¸ ste entitat ¸i oarecari);
SM= mult ¸imea secvent ¸elor discrete de st˘ ari interne pe care le pot
parcurge evenimentele externe cˆ and acestea intr˘ a in sist em;
YM= mult ¸imea ie¸ sirilor, sau r˘ aspunsurilor sistemului;
δM= funct ¸ia de quasi-tranzit ¸ie exprimat˘ a prin dou˘ a componente:
δ∅
M:SM/mapsto→SMcare spune ce st˘ ari parcurg evenimentele externe
cˆ andnu g˘ asesc alte evenimente intrate in sistem;
δex
M:XM×SM×T/mapsto→SM-adic˘ a δex
M(x, s, e) care spune cum se
transform˘ a starea cˆ and intr˘ a in sistem x, dac˘ a starea init ¸ial˘ a era s¸ si
dac˘ aeeste timpul scurs de la aparit ¸ia ultimei tranzit ¸ii de star e;
λM=funct ¸ia de ie¸ sire (de r˘ aspuns), λM:SM/mapsto→YM,λM(s)∈YM;
τM=funct ¸ia de intˆ arziere (decalaj), τM:SM/mapsto→R+, care spune cˆ at
intˆ arzie sistemul in starea s(intˆ arzierea este τM(s));
Sa ar˘ at˘ am acum de ce SMeste un sistem in sensul general definit
mai sus.
SMeste un S= (T, X,Ω,Σ, Y, δ, λ ) deoarece
T= [t0,∞), t0−initial ¸ si el este subint ¸eles in mod implicit;
X=XM/uniontext∅; (∅= nu este eveniment);
Ω = mult ¸imea segmentelor; segmentele sunt secvent ¸e discr ete, finite
de evenimente asociate cu momentele (ordonate) de timp cˆ an d acestea
intr˘ a in sistem;
Σ = mult ¸imea st˘ arilor,adic˘ a
Σ ={(s, e)|s∈SM,0≤e≤τM(s)}.

1.2. CONSTRUCT ¸IA UNUI MODEL DE SIMULARE 23
δse construie¸ ste din δMastfel
δ: Σ×X/mapsto→Σ;
δ(s, e,∅) = (s, e)∈Σ, daca e < τ M(s)
δ(s, τM(s),∅) = (δ∅
M(s), τM(s))
δ(s, e, x) = (δex
M(x, s, e), e);
Funct ¸ia de ie¸ sire esteλ=λM.
O formalizare a teoriei modelelor de simulare discret˘ a se g ˘ ase¸ ste in
c˘ art ¸ile lui ZEIGLER [12,13].
Ea poate servi ca metodologie de construct ¸ie a modelelor de simulare
si conduce la construct ¸ia modelelor de simulare OO (=Orientate
Obiect), [13].
1.2.4 Metodologia de realizare a experimentelor de simu-
lare (Metodologia simul˘ arii) , [10, 11].
Etapele realiz˘ arii unui experiment de simulare sunt:
10Formularea problemei , care const˘ a in a preciza intreb˘ arile la
care trebuie s˘ a r˘ aspunda modelul ¸ si a preciza domeniul lu mii reale ce
trebuie analizat. Aici se precizeaz˘ a si forma r˘ aspunsulu i la intreb˘ ari
(de ex. dac˘ a se vor produce grafice, tabele sau chiar texte sc rise).
20Realizarea unor experimente preliminare ; in aceast˘ a etap˘ a
se stabilesc, pe baza observat ¸iilor sau datelor culese din lumea real˘ a,
sau existente, referitoare la aceasta (istorice), variabilele ¸ si parametri
¸ si care din acestea sunt de intrare sau de ie¸ sire.
30Prelucrarea (interpretarea) primar˘ a a datelor prelim-
inare ; acum se disting variabilele aleatoare, se estimeaz˘ a parametri ¸ si
se testeaz˘ a ipoteze statistice. (Statistica matematic˘ a joac˘ a un rol im-
portant in simulare).
40Formularea unui model matematic preliminar, incom-
plet; in aceast˘ a etap˘ a se precizeaz˘ a relat ¸ii funct ¸ionale, ipoteze de lucru
(care s˘ a concorde cu datele existente, colectate) ¸ si se in dentifica ce
relat ¸ii nu pot fi exprimate matematic ¸ si care sunt dificult˘ at ¸ile ce ar
trebui inl˘ aturate pentru a r˘ aspunde la intreb˘ arile form ulate.

24 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
50Evaluarea modelului (etap˘ a de decizie !); se urm˘ are¸ ste s˘ a se
evalueze complexitatea modelului, daca el poate r˘ aspunde in timp real
¸ sicomplet la intreb˘ ari; in aceast˘ a etap˘ a se pot eventual reizui une le din
etapele precedente f˘ acandu-se simplific˘ ari sau complet˘ ari ale modelului
matematic propus.
60Construct ¸ia modelului de simulare (sub form˘ a de algo-
ritm detaliat); modelul se construie¸ ste conform celor pre cizate anterior
urm˘ arindu-se ca el sa fie general . La construct ¸ia algoritmului simul˘ arii
se va avea in vedere ¸ si cum se va realiza programarea: intr-u nlim-
baj evoluat sau int-un limbaj specializat de simulare . Exist˘ a un
num˘ ar mare de limbaje de simulare toate avˆ and la baz˘ a, mai mult sau
mai put ¸in, filozofia DEVS. Un astfel de limbaj (ce va fi prezent at in
sect ¸iunea urm˘ atoare) este GPSS= General Purpose Simulat ion System
[1, 14]. O versiune romˆ aneasc˘ a a acestui limbaj este SIMUB (limbajul
de SIMulare al Universitat ¸ii din Bucure¸ sti) ¸ si el a fost i mplementat la
sfˆ ar¸ situl anilor ‘70 pe sistemele de calcul FELIX C-256 de cercet˘ atori
ai Centrului de calcul al Universit˘ at ¸ii din Bucure¸ sti (C CUB).
In anii ‘60-70 au fost construite [10] ¸ si implementate mult e limbaje
de simulare pentru sistemele de calcul de generatia a III-a.
Printre limbajele de simulare introduse atunci mention˘ am limba-
jul SIMULA, care introduce conceptul de clas˘ a pentru a desemna o
mult ¸ime de obiecte ale unui program care au anumite proprie tati ¸ si
care se supun unui tratament comun; acest concept a generat p e cel
deobiect ¸ si este deci premerg˘ ator program˘ arii orientat˘ a spere obiecte.
Un alt limbaj, care se baza de fapt pe o subrutina complex˘ a FO R-
TRAN, ce putea fi combinat˘ a cu alte subprograme in acest limb aj ¸ si
care prezint˘ a din aceast˘ a cauz˘ a mult˘ a flexibilitate in s crierea de pro-
grame de simulare este limbajul GASP IV; o versiune a acestui limbaj,
numit˘ a GASP-SIMPATIC a fost implementata la inceputul ani lor ‘80
pe sistemele de calcul FELIX C-256 ¸ si pe minicalculatoarel e CORAL
¸ si INDEPENDENT, de c˘ atre cercetatori ai CCUB.
Limbajele de simulare sunt atˆ at limbaje de programere cat ¸ si instru-
mente care faciliteaz˘ a construct ¸ia modelelor de simular e. Utilizˆ and un
astfel de limbaj, analistul-programator va fi scutit de grij a construct ¸iei
instrumentelor specifice simul˘ arii (organizarea agendei , manipularea ¸ si
controlul ceasului al AEC sau AEV, etc.), el putˆ andu-se ast fel con-
centra numai asupra definirii elementelor specifice sistemu lui pe care-l

1.2. CONSTRUCT ¸IA UNUI MODEL DE SIMULARE 25
modeleaz˘ a (tipurile de evenimente, componentele ¸ si st˘ a rile sistemului,
definirea r˘ aspunsurilor la intreb˘ ari, etc).
Avantajele utiliz˘ arii limbajelor de simulare : modelele se con-
struiesc rapid, experiment ¸ele de simulare se realizeaz˘ a repede (sunt
experient ¸e artificiale ce nu au nevoie de scurgerea timpulu i fizic pen-
tru a fi observate). Dezavantajele constau in faptul c˘ a modelele de
simulare realizate in limbaj specializat sunt supuse unor r estrict ¸ii de-
terminate de posibilit˘ at ¸ile limitate ale acestora.
De regul˘ a modelele de simulare genereaz˘ a valori ale varia bilelor de
intrare si produc select ¸ii statistice de valori asupra variabilelor de ie¸ sire.
Pentru formularea r˘ aspunsurilor la intreb˘ ari ar trebui p relucrate in mod
cˆ at mai evoluat aceste select ¸ii. Limbajele de simulare nu dispun de
regul˘ a de astfel de facilit˘ at ¸i, mai ales presupunˆ and (c eea ce este un fapt
real!), c˘ a valorile de select ¸ie produse de simulare nu sun t independente
stochastic.
Avantajele modelelor dezvoltate in limbaje evoluate sunt:
acuratet ¸ea rezulatelor, flexibilitatea modelelor (adic˘ a pot fi extinse cu
noi tehnici numerice de calcul, pot fi mai generale, etc). Dezavan-
tajele constau in faptul c˘ a se constriuesc mult mai greu (utilizat orul
trebuie s˘ a implementeze tehnicile de manipulare a ceasulu i ¸ si de ges-
tionare a agendei).
70Validarea modelului este de asemenea o etap˘ a important˘ a. In
afar˘ a de validarea formal˘ a (testare sintactic˘ a ¸ si logi c-formal˘ a a pro-
gramului), trebuie s˘ a se decid˘ a dac˘ a modelul rezolv˘ a corect prob-
lema formulat˘ a. Acest lucru se realizeaz˘ a prin comparare a rezultatelor
simul˘ arii fie cu rezultate practice cunoscute, fie prin comp ararea cu
solut ¸ia obt ¸inut˘ a cu ajutorul unui model matematic. (De e x.inteoria
cozilor se cunoa¸ ste soult ¸ia matematic˘ a a modelului in anumite ip oteze
restrictive; se va obt ¸ine solut ¸ia prin simulare pe baza un ei select ¸ii de
volum mare a variabilelor de ie¸ sire. Daca solut ¸ia simulat ˘ a se apropie
de solut ¸ia matematic˘ a, atunci, in virtutea legii numerelor mari , rezult˘ a
corectitudinea modelului de simulare, acesta fiind deci valid¸ si in ipoteze
diferite de cele cosiderate la validare).
80Planificarea experient ¸elor de simulare este urm˘ atoarea etap˘ a
necesar˘ a. A¸ sa cum am precizat, simularea este un experime nt real-
izat cu calculatorul pe baza unui model ce descrie sistemul r eal. Orice

26 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
experiment (cu caracter statistic ca in cazul simularii) tr ebuie s˘ a se
desfa¸ soare pe baza unui plan experimental. Pentru planific area exper-
imentelor de simulare se folosesc metode ale statisticii matematice
(a¸ sa zisele experimental design ).
90Prelucrarea ¸ si interpretarea experient ¸elor de simulare
este o etap˘ a la fel de important˘ a ca ¸ si cele precedente. Pr ogramul de
simulare rulat pe calculator produce de regul˘ a valori de se lect ¸ie asupra
variabilelorde ie¸ sire, dar care nu definesc select ¸ii stat istice in sensul
obi¸ snuit (nu sunt select ¸ii bernouliene deoarece valoril e de select ¸ie sunt
de regul˘ a dependente). De aceea prelucrarea experimentel or de simu-
lare se face cu mijloace statistice din cele mai sofisticate ( prelucrarea
seriilor dinamice). Toate limbajele de simulare posed˘ a un minim de
facilit˘ at ¸i pentru prelucr˘ ari statistice simple (calcu le de medii, dispersii,
coeficient ¸i de corelat ¸ie, histograme, etc,).
•Utilitatea simul˘ arii. Orice sistem complex, se proiecteaz˘ a pe
baza simul˘ arii. Alegerea parametrilor de proiectare se re alizeaz˘ a (ca
intr-un joc!) pe baza unor experient ¸e bazate pe modelul de s imulare.
Aceste experient ¸e sunt mult mai put ¸in costisitoare decat cele reale.
Cand experient ¸ele reale sunt costisitoare este intotdeau na recomand-
abil ca experient ¸ele s˘ a se realizeze prin simulare. (De ex emplu, inainte
de aconstrui un baraj, mai intˆ ai simul˘ am comportarea lui pentru a
alege cea mai buna variant˘ a de proiectare ¸ si construct ¸ie ).
In anumite situatii practice experient ¸ele dureaz˘ a mult s i de aseme-
nea este nevoie s˘ a se recurg˘ a la simulare.(De exemplu simu lareadu-
ratei de viat ¸˘ a a unei comete se realizeaz˘ a cu modelul de simulare
in cel mult cˆ ateva minute sau zeci de minute). Experient ¸el e legate
de fiabilitatea sistemelor se realizeaz˘ a de asemenea mai de grab˘ a prin
simulare.
Cˆ and se construiesc sisteme mari noi, ne mai intˆ alnite se e fectueaz˘ a
mai intˆ ai simularea lor. (De exemplu zborurile interplanetare , sis-
temele hidroenergetice mari cu implicat ¸ii ecologice, etc . se proiecteaz˘ a
pe baza unor variante alese cu ajutorul simul˘ arii).
Cˆ and se proiecteaz˘ a politici complexe de dezvoltare econ omico-social˘ a
de asemenea se utilizeaz˘ a simularea. (De exemplu sistemel e de product ¸ie
complexe, politicile de dezvoltare regional˘ a, proiecte m acroeconomice,
evolut ¸ia mediului ambiant,etc).

1.3. GENERALIT ˘AT ¸I DESPRE LIMBAJUL GPSS 27
Simularea joac˘ a un rol important in dezvoltarea tehnologiei GRID
un domeniu nou al informaticii in plin˘ a dezvoltare, care se bazeaz˘ a atˆ at
pe simulare cˆ at ¸ si pe pe calcul performant, pe inteligent ¸ ˘ a artificial˘ a, pe
ret ¸ele de comunicat ¸ie, etc.
1.3 Generalit˘ at ¸i despre limbajul GPSS
Limbajele de simulare sunt in acela¸ s timp limbaje de programare
¸ silimbaje de modelare; ele implementeaz˘ a elementele esent ¸iale ale
simul˘ arii: manipularea ceasului ¸ sigestionarea memoriei. Utiliza-
torul are numai grija descrierii evenimentelor ¸ si aprelucr˘ arii lor.
Programele in limbaj de simulare sunt mai scurte dar ¸ si mai put ¸in
flexibile. Sunt limitate in privint ¸a prelucr˘ arii ¸ si interpret˘ ari i experi-
mentelor de simulare.
Vom face o foarte scurta prezentare a limbajului GPSS (General
Purpose System Simulator), urmand ca cititorul interesat s ˘ a recurg˘ a
la un manual detaliat sau s˘ a foloseasc˘ a facilitatea helpexistent˘ a in
implementarea GPSS/PC [1, 14]. Acest limbaj a fost dezvolta t pentru
prima data de firma IBM la inceputul anilor ’60.
•Entit˘ at ¸ile limbajului GPSS. Limbajul GPSS se compune din
16tipuri de entit˘ at ¸i (elemente de abstractizare).
La fiecare entitate se asociaz˘ a un numar de propriet˘ at ¸i sa uatribute
in majoritatea lor adresabile intern (de c˘ atre GPSS), dar unele sunt
adresabile si de c˘ atre utilizator ;
Atributele sunt: standard numerice (numere) sau standard lo-
gice(valori logice);
Entit˘ at ¸ile de baz˘ a sunt:
1)Blocuri (entit˘ at ¸i care descriu activit˘ at ¸i);
2)Tranzact ¸ii (elemente circulante );ele sunt creiate (printr-un bloc
special GENERATE) ¸ si circul˘ a prin model (sistem!), ca urm are a act ¸iunii
altor blocuri. Blocurile au asociate caracteristici numer ice sau logice si
posed˘ a argumente necesare descrierii activit˘ at ¸ilor. T ranzact ¸iile posed˘ a
un num˘ ar de parametri standard dar ¸ si psrametri introdu¸ s i de utiliza-
tor. Prin programul de simulare utilizatorul poate accesa p arametrii
tranzact ¸iilor.

28 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
Entit˘ at ¸i de echipament:
3)Stat ¸ii de serviciu saufacilit˘ at ¸i ; (ele corespund subsistemelor
cu o component˘ a care trateaz˘ a de regul˘ a o singura tranzac t ¸ie!);
4)Multistat ¸ii de serviciu sau depozite ; acestea trateaz˘ a de regul˘ a
mai multe tranzact ¸ii (de ex. liftul, autobuzul, pot transp orta mai multi
clienti considerati ca tranzactii, etc!);
5)Comutatorii logici sunt variabile logice care permit utiliza-
torului s˘ a realizeze ramificarea dup˘ a dorint ¸˘ a a fluxului de execut ¸ie in
programul de simulare.
Entit˘ at ¸i de calcul ce permit efectuarea (limitat!) a unor calcule:
6)Variabile aritmetice ; permit evaluarea unor expresii aritme-
tice, iar rezultatul este memorat de o variabil˘ a aritmetic ˘ a;
7)Variabile booleene ; permit evaluarea unor expresii booleene,
iar rezultatul este memorat de o variabil˘ a booleean˘ a;
8)Funct ¸ii descrise prin tabele sau prin segmente de dreapt˘ a (liniare
pe port ¸iuni);
9)Funct ¸ii analitice descrise prin expresii mai complicate; (ele
exist˘ a numai in SIMUB ¸ si au rolul de a facilita simularea di verselor
variabile aleatoare prin metoda inversa );
Entit˘ at ¸ile statistice , permit colectarea unor statistici sauestima-
t ¸iiprivind VE sau PE; printre acestea se remarc˘ a :
10)Cozile care sunt entit˘ ati statistice ce memoreaz˘ a tranzact ¸iil e
intˆ arziate in sistem;
11)Tabele de frecvent ¸e care descriu histograme ale VE;
12)Tabele de frecventa bidimensionale, sautabele de contin-
gent ¸˘ a ; (acestea sunt disponibile numai in SIMUB);
Entit˘ at ¸i de referint ¸˘ a care memoreaz˘ a anumite informat ¸ii pe care
le dore¸ ste utilizatorul ¸ si anume:
13)Cuvinte de salvare care memoreaz˘ a valori ce corespund cˆ ate
unui cuvˆ ant de memorie al calculatorului;
14)Matrice de cuvinte de salvare care memoreaz˘ a matrici;
Entit˘ at ¸i de tip lant ¸ ,care sunt de dou˘ a tipuri:
15)Lant ¸uri ale utilizatorilor in care se pot depune sau scoate
tranzat ¸ii dup˘ a dorint ¸a utilizatorului; (Exist˘ a ¸ si la nt ¸uri ale sistemului,
manipulate intern de c˘ atre GPSS, care nu pot fi accesate de ut ilizator).

1.3. GENERALIT ˘AT ¸I DESPRE LIMBAJUL GPSS 29
16)Grupuri caresepar˘ a tranzact ¸ii (cu anume scopuri de prelu-
crare dorite de utilizator, sau cu anumite propriet˘ at ¸i).
NOTA. Toate entit˘ at ¸ile trebuie definite/identificate ¸ si decla rate de
c˘ atre utilizator la inceputul programului. Pentru fiecare entitate se
aloc˘ a memorie; la instalarea limbajului se aloc˘ a ¸ si un num˘ ar maxim
de entit˘ at ¸i care se pot utiliza intr-un program.
Entit˘ at ¸ile se invoc˘ a prin instruct ¸iuni cu structur˘ a fix˘ a. (Limbajul
este un interpreter ).
Limbajul permite descrierea modular˘ a a unui model de simul are
general (vezi schema general˘ a 1.1); cel mai important este modulul
principal ( ciclul de baz˘ a ). Ie¸ sirile sunt standard; se afi¸ seaz˘ a/scriu
valori ale atributelor, statistici, tabele de frecvent ¸˘ a , etc.
Limbajul GPSS este un interpreter , ceeace inseamn˘ a c˘ a fiecare
instruct ¸iune scris˘ a corect (¸ si recunoscut˘ a ca atare de c˘ atre GPSS) se
execut˘ a imediat.
•Structura instruct ¸iunii GPSS. Instruct ¸iunea GPSS are un for-
mat fix (vezi Figura 1.5).
1) Blocurile descriu act ¸iuni (sunt entit˘ at ¸i active spre deosebire de
tranzact ¸ii care sunt entit˘ at ¸i pasaive, in sensul c˘ a ele suntmi¸ scate prin
model ca urmare a act ¸iunii blocurilor.
Nume simbolic Numele blocului Argumente/parametri
(Etichet˘ a) (Cunˆ ant cheie) (separate prin virgul˘ a)
Opt ¸ional Verb imperativ care A,B,C,…
pt.referiri desemneaz˘ a act ¸iunea blocului
Fig 1.5. Structura instruct ¸iunii GPSS.
Tipurile de blocuri sunt:
1a)Blocuri de actiune : SEIZE/RELEASE (tranzact ¸ia curent˘ a ocup˘ a
sau elibereaz˘ a o facilitate); PREEMPT (tranzact ¸ia intra t˘ a in acest bloc
poate ocupa o stat ¸ie de serviciu indicat˘ a de parametrul-a rgument sau o
poateprelua dac˘ a este ocupat˘ a de alt˘ a tranzact ¸ie); ENTER/LEAVE
(ocup˘ a sau elibereaz˘ a o pozit ¸ie dintr-o multistat ¸ie); QUEUE/DEPART
(intr˘ a in coad˘ a sau pleac˘ a din coad˘ a); LINK/UNLINK (int roduce sau

30 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
scoate tranzact ¸ia dintr-un lant ¸ al utilizatorului); SPL IT (descompune
tranzact ¸ia in mai multe tranzact ¸ii care formeaz˘ a o familie ); ASSEM-
BLE/GATHER (unific˘ a tranzact ¸iile dintr-o familie f˘ ar˘ a , sau cu p˘ astrarea
atributelor de baz˘ a din familie); MATCH (sunt 2 blocuri con jugate;
ele sincronizeaz˘ a deplasarea tranzact ¸iilor care intˆ al nesc aceste blocuri);
ADVANCE (intˆ arzie tranzact ¸iile; simuleaz˘ a de ex. durata de ser-
viciu a tranzact ¸iei); BUFFER (inseamn˘ a prelucrarea tranzact ¸ iilor in
ordinea priorit˘ at ¸ilor); JOIN/REMOVE (introduc sau scot tranzact ¸ia
intr-un grup); SCAN (verific˘ a dac˘ a exist˘ a o tranzact ¸ie i n grup cu o
anumit˘ a proprietate);
1b)Blocuri de creare ¸ si distrugere de tranzact ¸ii: GENERATE/TER-
MINATE (generarea se face cu generatori specializat ¸i de numere
aleatoare , tranzact ¸ia putˆ and fi prev˘ azut˘ a cu priorit˘ at ¸i);
1c)Blocuri de control logic al tranzact ¸iilor: TEST (controleaz˘ a dac˘ a
2 atribute ale tranzact ¸iei satisfac o condit ¸ie); TRANSFE R (asigur˘ a
transfer condit ¸ionat sau nu al fluxului de execut ¸ie la bloc ul indicat
prin argument); GATE (modific˘ a drumul tranzact ¸iilor in fu nct ¸ie de
condit ¸ii referitoare la atribute ale facilitat ¸ilor, mul tistat ¸iilor, comutato-
rilor logici sau tranzact ¸iilor); EXAMINE (modific˘ a fluxul in funct ¸ie de
apartenent ¸a la un grup); LOOP (repet˘ a execut ¸ia de la bloc ul ment ¸ionat
ca argument pˆ an˘ a la blocul LOOP);
ATENT ¸IE: fluxul tranzact ¸iei se modific˘ a ¸ si prin blocuril e:PREEMPT,
LINK/UNLINK, REMOVE, ALTER, SCAN, SELECT.
1d)Blocuri de modificare a caracteristicilor tranzact ¸iilor ¸ si a va-
lorilor unor entit˘ at ¸i de referint ¸˘ a: ASSIGN (atribuie valori numerice
parametrilor tranzact ¸iilor ¸ si/sau le modifica; cˆ and se g enereaz˘ a o tranzac-
t ¸ie poate fi prev˘ azut˘ a cu ”locuri” pentru un num˘ ar de maxi mum 12
parametri referibili de c˘ atre utilizator; num˘ arul param etrilor poate fi
standard sau precizat de utilizator la generare); INITIAL ( init ¸ializeaz˘ a
cuvintele sau matricile de cuvinte p˘ astrate); PRIORITY (m odific˘ a pri-
orit˘ at ¸ile; lucreaz˘ a in leg˘ atur˘ a cu blocul BUFFER); LO GIC (pozitioneaz˘ a
petruesaufalseun comutator logic ce poate juca rol de semafor );
MARK (utilizat pentru a marca intr-un cuvˆ ant special asoci at fiec˘ arei
tranzact ¸ii, valoarea ceasului);
SAVEVALUE/MSAVEVALUE (memoreaz˘ a intr-un cuvˆ ant/matri ce val-
oarea unui atribut standard numeric precizat); COUNT (dete rmin˘ a
num˘ arul de entit˘ at ¸i ce satisfac o anumit˘ a condit ¸ie ¸ si -l memoreaz˘ a intr-

1.3. GENERALIT ˘AT ¸I DESPRE LIMBAJUL GPSS 31
un parametru al tranzact ¸iei specificat ca argument al lui CO UNT);
SELECT (selecteaz˘ a prima entitate dintr-o gam˘ a de entit˘ at ¸i ce satisfac
o anumit˘ a condit ¸ie); ALTER (modific˘ a condit ¸ionat sau nu , parametri
sau prioritatea uneia sau mai multor tranzact ¸ii dintr-un g rup putˆ and
modifica opt ¸ional ¸ si drumul tranzact ¸iei); HELP (permite includerea
unor proceduri de calcul ale utilizatorului; este un bloc pr etent ¸ios c˘ aci
necesit˘ a interfat ¸a intre GPSS ¸ si limbajul in care este sc ris˘ a procedura;
in SIMUB se foloseau subrutine FORTRAN!);
1e)Blocuri pentru obt ¸inerea de statistici: TABULATE (pentru con-
struirea histogramei);(In SIMUB se folose¸ ste si BTABULAT E pentru
construirea tabelelor de contingent ¸˘ a, adic˘ a histograme bidimensionale ).
1f)Blocuri pentru list˘ ari: PRINT (permite scrierea part ¸ial˘ a a unor
statistici; cele mai multe statistici se scriu automat de GP SS la sfˆ ar¸ situl
simul˘ arii);
2a)Tranzact ¸iile se genereaz˘ a cu GENERATE ¸ si se distrug cu TER-
MINATE. La generare tranzat ¸iile primesc automat ni¸ ste pa rametri in-
terni ¸ si un num˘ ar de parametri (limitat de ex la 100) declar at ¸i ¸ si care pot
fi accesat ¸i de utilizator; in funct ¸ie de implementare, un p rogram GPSS
poate utiliza un num˘ ar maxim de tranzact ¸ii (acesta este un dezavan-
taj al limbajelor de simulare datorat faptului c˘ a limbajul gestioneaz˘ a
agenda , GPSS rezolvˆ and astfel el insu¸ si detaliile de programare pe care
intr-un limbaj evoluat le rezolv˘ a utilizatorul).
3a)Stat ¸iile de serviciu pot fi ocupate de o singur˘ a tranzact ¸ie la un
moment dat.
4a)Depozitele sau multistat ¸iilec au o capacitate declarat˘ a in prea-
labil ¸ si in ele pot intra mai multe tranzact ¸ii (cˆ at permit e capacitatea).
5a)Comutatorii logici sunt de fapt variabile booleene, ce trebuie
init ¸ializate (precizeaz˘ a condit ¸ii satisf˘ acute de ”ec hipoamente”).
Toate entit˘ at ¸ile de echipament sunt identificate printr- un num˘ ar (in-
treg). Ele posed˘ a atribute standard numerice sau logice.
6a)Variabilele au cuvˆ antul cheie VARIABLE, au un nume ¸ si o ex-
presie aritmetic˘ a (de dimensiune limitat˘ a) care cont ¸in e atribute stan-
dard numerice, cuvinte de salvare, parametri, etc.
7a)Variabilele booleene BVARIABLE, sunt construite analog (de
c˘ atre utilizator) folosind atribute standard logice, inc lusiv comutatori
logici).

32 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
8a) 9a) Funct ¸ia (FUNCTION) desemneaz˘ a o funct ¸ie de o variabil˘ a
dat˘ a printr-o list˘ a sau functie liniar˘ a precizˆ andu-se argumentul prin
care aceasta este referit˘ a.
10a)Coada este o entitate statistic˘ a pentru care se ret ¸ine automat
lungimea medie ¸ silungimea maxim˘ a care se listeaz˘ a la sfˆ ar¸ situl simul˘ arii.
11a) 12a) Tabela de frecvent ¸˘ a se define¸ ste la inceputul programului
cu TABLE ¸ si reprezint˘ a o histogram˘ a a unei variabile de ie ¸ sire din
model, de regul˘ a atribut numeric.La definire se precizeaz˘ a argumentul
tabelat ¸ si num˘ arul de clase de frecxvent ¸e.
13a) 14a) Cuvintele saumatricile de cuvinte p˘ astrate sunt invo-
cate prin INITIAL, SAVEVALUE sau MSAVEVALUE ¸ si ele se folos esc
pentru a ret ¸ine anumite valori pe parcursul simul˘ arii. Su nt referite
printr-un num˘ ar de identificare.
15a)Lant ¸urile sistemului sunt: lant ¸ul evenimentelor curente (LEC),
lant ¸ul evenimentelor viitoare (LEV), lant ¸uri ale tranza ct ¸iilor intrerupte,
lant ¸uri ale tranzact ¸iilor in a¸ steptare pentru sincroni z˘ ari, lant ¸uri de
intˆ arziere (asociate echipamentelor). Orice tranzact ¸i eactiv˘ a la un mo-
ment dat se g˘ ase¸ ste intr-un lant ¸. Tranzact ¸iile care se d eplaseaz˘ a in
sistem se g˘ asesc in lant ¸ul evenimentelor curente. Mecani smul de ac-
tualizare a lant ¸ului evenimentelor curente ¸ si al celor vi itoare este cel
cunoscut (descris prin relat ¸ia dintre A, AEC ¸ siAEV din sectiunea 2.1).
Tranzat ¸iile terminate (prin blocul TERMINATE) sunt distr use; blocul
START precizeaz˘ a printr-un argument al sau cˆ ate tranzact ¸ii se vor pre-
lucra (termina).Prelucrarea tranzact ¸iilor din LEC insea mn˘ a transferul
lor in alt lant ¸ sau distrugerea. Tranzact ¸iile intˆ arziat e ( de ex prin AD-
VANCE) sunt introduse in LEV.
Lant ¸urile sistemului sunt controlate automat de c˘ atre si stemul GPSS.
Lant ¸urile utilizatorului (LU) sunt definite de acesta ¸ si ele (sau atribu-
te ale lor) pot fi referite in programul GPSS. Tranzact ¸iile p ot fi intro-
duse sau scoase din LU prin LINK ¸ si UNLINK ¸ si ele se folosesc la
implementarea unor discipline de serviciu (in cazul prelucrarii tranzac-
tiilor din cozi).
16a)Grupurile ofer˘ a utilizatorului un instrument de clasificare a
tranzact ¸iilor care au anume propriet˘ at ¸i. De ex. toate st at ¸iile care la un
moment dat dep˘ a¸ sesc un anumit grad de utilizare pot fi f˘ acu te membre
ale unui grup.

1.3. GENERALIT ˘AT ¸I DESPRE LIMBAJUL GPSS 33
Un program GPSS este o list˘ a ordonat˘ a de BLOCURI ale
c˘ aror argumente se refer˘ a la diverse entit˘ at ¸i.
In cele ce urmeaz˘ a sunt prezentate patru programe GPSS care se
bazeaz˘ a pe cˆ ateva din entit˘ at ¸ile ¸ si instruct ¸iunile u zuale ale acestui lim-
baj.
1.3.1 Exemple de programe GPSS.
•E1. Model de simulare pentru un sistem de a¸ steptare cu
o stat ¸ie.
Programul GPSS pentru acest model este:
001 GENERATE 10,2 ;Sosiri aleatoare la 10 ±2 minute
003 SEIZE FRIZER ;Ocup˘ a stat ¸ia de serviciu ”FRIZER”
005 ADVANCE 12,3 ; Durata servirii 12 ±3 minute
007 RELEASE FRIZER ; Elibereaz˘ a stat ¸ia
009 TERMINATE 1 ; Ie¸ sire din sistem un client
Comentariu. Cifrele din fat ¸a tabelului reprezint˘ a etichetele instru c-
t ¸iunilor/blocurilor, iar textele de la terminarea liniil or reprezint˘ a co-
mentarii. Dup˘ a denumirile blocurilor apar parametri aces tora.
Modelul nu este complet deoarece in fat ¸a blocului SEIZE pot s˘ a
apar˘ a a¸ stept˘ ari de aceea inaintea acestui bloc trebuie i ntrodus un bloc
QUEUE ¸ si dup˘ a el un bloc DEPART ca mai jos (etichetele indic ˘ a locul
unde se introduc aceste blocuri respectˆ and ordinea).
002 QUEUE COADA1 ; Tranzact ¸ia ocup˘ a COADA1
003 SEIZE …….
004 DEPART COADA1 ;Tranzact ¸ia pleac˘ a,se actualizeaz˘ a a ¸ stept˘ arile;
Pentru a prelucra 200 tranzact ¸ii se va da la inceput comanda
000START 200
La sfˆ ar¸ situl simul˘ arii apelˆ and procedura GPSSREPT.EX E se va
afi¸ sa un raport final privind simularea care cont ¸ine:
– durata total˘ a a prelucr˘ arii tranzact ¸iilor(durata sim ul˘ arii);
– gradul de ocupare a stat ¸iei de serviciu (media ¸ si maxima) ;
– durata medie a a¸ stept˘ arilor, etc.
•E2. Model de simulare pentru un sistem de a¸ steptare cu
stat ¸ii paralele.

34 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
Modelul de mai jos simuleaz˘ a un sistem de a¸ steptare cu 3 sta t ¸ii
paralele (ghi¸ see ale unei b˘ anci) in care serviciul se real izeaz˘ a cu disci-
plina FIFO (First In First Out) adic˘ a serviciul se execut˘ a in ordinea
sosirii client ¸ilor ¸ si nu se consider˘ a priorit˘ at ¸i ale u nor client ¸i. Clientul
va trece pe la stat ¸ia multipl˘ a de servire (depozit), dar el va ocupa o
singur˘ a stat ¸ie care-l serve¸ ste (STORAGE 3). In final el va trece ¸ si la
stat ¸ia CASIER unde prime¸ ste un alt serviciu (prime¸ ste sa u pl˘ ate¸ ste
banii pe baza formelor elaborate de ghi¸ seul parcurs anteri or!). De-
sigur, pentru executarea modelului care urmeaz˘ a ar trebui ad˘ augat˘ a
comanda START corespunz˘ atoare ¸ si apelat in final modulul d e ie¸ sire
GPSSREPT.EXE. Modelul este dat de programul:
GHISEE STORAGE 3 ; Declararea dimensiunii multistat ¸iei
001 GENERATE 4,1 ;Sosesc client ¸i
002 QUEUE COADA ;Clientul in coada c˘ aci dorim statistici
003 ENTER GHISEE Ocup˘ a un loc in GHISEE (dac˘ a esist˘ a!)
004 DEPART COADA ;Clientul pleac˘ a din coada (spre servire! )
005 ADVANCE 15,3 ;Clientul este servit (durata de servire!)
006 LEAVE GHISEE Se elibereaz˘ a un log (un ghi¸ seu)
007 SEIZE CASIER ; ocup˘ a locul la casier;
007 ADVANCE 2 ; Servirea clientului este 2 minute
008 RELEASE CASIER ; Elibereaz˘ a casierul(clientul pleac˘ a)
009 TERMINATE 1 ;Plecare client.
•E3. Model cu stat ¸ii paralele ¸ si preferint ¸e. Se modeleaz˘ a ser-
viciul la o frizerie unde lucreaz˘ a 3 frizeri (trei stat ¸ii d e serviciu!):Figaro,
Gic˘ a ¸ si Tic˘ a. Client ¸ii care sosesc sunt primit ¸i in prop ort ¸ie de 60% de
Figaro (care este preferat!) iar restul de 40% sunt servit ¸i de ceilalt ¸i doi,
dar din ace¸ stia 50% merg la Gic˘ a ¸ si 50% merg la Tic˘ a. Model ul nu
cont ¸ine comenzile de START ¸ si cele de ie¸ sire.
001 GENERATE 6,1 ;Sosesc client ¸i
002 TRANSFER .4,,ALTII ;60% client ¸i merg la Figaro
003 QUEUE COADAFIG ;Intr˘ a in coada lui Figaro
004 SEIZE COADAFIG ; Clientul se duce la Figaro
005 DEPART COADAFIG ;Se culeg date despre ac.coad˘ a
006 ADVANCE 8,1 ;Clientul e servit
007 RELEASE FIGARO ;Figaro devine liber
008 TRANSFER ,CASA ; Clientul merge s˘ a pl˘ ateasc˘ a
ALTII TRANSFER ,LAGICA ;Tic˘ a ¸ si Gic˘ a sunt la fel
010 SEIZE TICA ; 50% din client ¸i merg la Gic˘ a
011 ADVANCE 12,2 ; Tic˘ a serve¸ ste mai incet ca Figaro
012 RELEASE TICA ; Tica este eliberat

1.3. GENERALIT ˘AT ¸I DESPRE LIMBAJUL GPSS 35
013 TRANSFER ,CASA ;Clientul pl˘ ate¸ ste
LAGICA SEIZE GICA ;50% din 40% client ¸i merg la Gica
015 ADVANCE 12,2 ; Gic˘ a serve¸ ste ca ¸ si Tic˘ a
016 RELEASE GICA ; Se elibereaz˘ a Gica
CASA SEIZE CASIERA ; Se ocup˘ a stat ¸ia CASIERA
018 ADVANCE 1 ;Plata intr-un minut
019 RELEASE CASIERA ; Se elibereaz˘ a CASIERA
020 TERMINATE 1 ;Tranzact ¸ia pleac˘ a
Nota. Cele trei stat ¸ii sunt folosite explicit, nu ca multistat ¸i e.
Folosim coada numai la Figaro c˘ aci numai acolo (presupunem !) ne
intereseaz˘ a statistici finale.
In programele GPSS etichetele sunt opt ¸ionale ¸ si ele pot fi m nemon-
ice (care denumesc obiecte modelate ca de ex. LAGICA sau ALTI I), sau
pot fi constante intregi care sugereaz˘ a ordinea instruct ¸i unilor; sunt obli-
gatorii etichet˘ arile blocurilor la care se refer˘ a alte bl ocuri (vezi TRANS-
FER mai sus).
Parametri unor entit˘ at ¸i pot desemna nume simbolice (de ex. stat ¸ia
GICA sau coada COADAFIG).
•E4. Un Model complex. Acest model este de complexitate
ridicat˘ a ¸ si instruct ¸iunile ce descriu peogramul de simu lareGPSS sunt
prezentate mai jos.. El simuleaz˘ a in GPSS/PC activit˘ at ¸ile de reparat ¸ie
a unui automobil intr-un service care are ateliere separate de reparat ¸ii
motor, caroserie ¸ si tinichigerie. Unitatea de timp este oraiar repartit ¸ia
de probabilitate a duratelor de reparat ¸ie este exponent ¸i al˘ a ¸ si funct ¸ia
de repartit ¸ie este derscris˘ a de funct ¸ia continu˘ a numit˘ a XPDIS dat˘ a
prin instruct ¸iunea ’50’ de mai jos care are ca argument gene ratorul
de numere aleatoare RN2, este de tip continuu ¸ si este descris˘ a prin
coordonatele a 24 puncte, C24. Instruct ¸iunea 60 descrie o histogram˘ a
a timpului M1 petrecut de tranzact ¸ii (automobilele ce se repar˘ a) in
sistem. Blocul GENERATE 70 simuleaz˘ a sosiri exponent ¸ial e cu media
48 folosind metoda invers˘ a (vezi capitolul urm˘ ator) apli cat˘ a funct ¸iei de
repartit ¸ie definit˘ a in preambulul programului. (Funct ¸i a este descris˘ a
prin coordonatele unor puncte prin care trece graficul ei ¸ si care puncte
sunt date prin perechile de coordomate, desp˘ art ¸ite prin slash/.
In continuare programul descrie activit˘ at ¸ile ce au loc in sistem:
blocul 80 include in coad˘ a automobilul sosit (prin GENERAT E); blocul

36 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
90 simuleaz˘ a ocuparea stat ¸iei SEFATELIER ; blocul 100 simuleaz˘ a (prin
100ADV ANCE ) activitatea de constatare a ¸ sefului de atelier care
are repartit ¸ie uniform˘ a de medie 2 ±1; apoi blocul 110 RELEASE
simuleaz˘ a eliberarea ¸ sefului de atelier, dup˘ a care bloc ul 120 SEIZE
ocup˘ a mecanicul MEC 1 care realizeaz˘ a demontarea blocului motor
de pe caroserie. In continuare blocul 150 SPLIT trimite motorul
la mecanici denumit ¸i in model ATELMEC (blocul SPLIT ramific˘ a
traseul tranzact ¸iilor). In continuare comentariul 160 ∗traseulcaroseriei
indic˘ a faptul c˘ a blocurile 170-400 descriu traseul caros eriei prin in-
treprinderea de service,traseu care se termin˘ a la blocul
410ATELMEC SEIZE MEC 1 care prin eticheta ATELMEC in-
dic˘ a faptul c˘ a motorul (desprins de caroserie prin blocul 130) a fost
transferat in atelierul mecanic. In secvent ¸a de instruct ¸ iuni 170−400
( care simuleaz˘ a activit˘ at ¸ile din sect ¸ia Caroserie, se remarc˘ a blocurile
230 ¸ si 290 care sunt blocuri MATCH conjugate ¸ si care semnific˘ a fap-
tul c˘ a trebuie sincronizate activit˘ at ¸ile lui OM2 (ajutor de sudor care
demonteaz˘ a u¸ sile) cu cele ale lui OM1 (care realizeaz˘ a sudura propri-
uzis˘ a). In secvent ¸a de instruct ¸iuni referitoare la caro serie activit˘ at ¸ile
descrise sunt explicate prin comentarii ¸ si prin etichet˘ a rile cu mnemo-
nice ale blocurilor; majoritatea blocurilor au fost deja in tˆ alnite ¸ si in
cadrul celorlalte exemple de programe GPSS. Ment ¸ion˘ am ca deosebite
blocurile 260 (transfer necondit ¸ionat la blocul 320 ASSEMBLE care
asambleaz˘ a u¸ sile de corpul caroseriei) ¸ si 400 (transfer necondit ¸ionat
la blocul 450 MONFINAL care realizeaz˘ a montajul final al motoru-
lui ¸ si caroseriei). In instruct ¸iunile finale ale programu luiGPSS re-
marc˘ am secvent ¸a 410 −440 care descrie traseul motorului ¸ si secvent ¸a
450−500 care descrie asamblarea final˘ a a componentelor automob ilu-
lui. O instruct ¸iune nou˘ a aici este 490 TABULATE care inregistreaz˘ a
(pe parcursul simul˘ arii) frecvent ¸ele in tabela TABCLASE definit˘ a la
inceput.
Descriem in continuare programul surs˘ a GPSS. La inceput sunt de-
scrise instruct ¸iunile de definire a funct ¸iei, dup˘ a care u rmeaz˘ a blocurile
ce simuleaz˘ a activit˘ at ¸ile in service-ul auto.
; GPSS/PC Program File E4.GPS. ( V2,#39399) 08-02-2003 04:13:29
10∗Modelul reparatiei unui automobil, in ateliere separate
20∗pentru motor si pentru tinichigerie(, urmata de vopsire).
30∗-Unitatea de timp a modelului este ora.-

1.3. GENERALIT ˘AT ¸I DESPRE LIMBAJUL GPSS 37
40∗Repartitia exponentiala standard
50 XPDIS FUNCTION RN3,C24
0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915/.7,1.2/.75,1.38
.8,1.6/.84,1.83/.88,2.12/.9,2.3/.92,2.52/.94,2.81/.95,2.99/.96,3.2
.97,3.5/.98,3.9/.99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8
60 TABCLASE TABLE M1,40,20,20 ;Pt.histogr. timp in sistem.
70 GENERATE 48,FN$XPDIS ;Sosiri expon., cu media 48 ore.
80 QUEUE DURATA ;Incepe inregistrarea.
90 SEIZE SEFATELIER ;Pt.diagnostic & eval.cost.
100 ADVANCE 2,1 ;Durata constatarii.
110 RELEASE SEFATELIER
120 SEIZE MEC1 ;Demont.motor de pe caroserie.
130 ADVANCE 3,1 ;Durata demont. de catre Mec1
140 RELEASE MEC1
150 SPLIT 1,ATELMEC ;Trimitere motor la mecanici
160 *Tras.caroserie:
170 SEIZE SUD2 ;Ajutorul de tinichigiu (sudor)
180 ADVANCE 2,1 ;demonteaza usi, capote, aripi.
190 RELEASE SUD2
200 SPLIT 1,USI ;La ajutor (Sud2), pt.usi, etc.
210 SEIZE SUD1
220 ADVANCE 14,FN$XPDIS ;Durata suduri corp (cu Sud1)
230 OM1 MATCH OM2 ;Verificare potriviri balamale
240 ADVANCE 8,FN$XPDIS ;Alte suduri corp (Sud1)
250 RELEASE SUD1
260 TRANSFER ,MONCAROS
270 USI SEIZE SUD2 ;Traseul usilor demontate:
280 ADVANCE 12,FN$XPDIS ;Durata suduri usi+capote(Sud2)
290 OM2 MATCH OM1 ;Verific la balamale cu corpul.
300 ADVANCE 9,FN$XPDIS ;Alte suduri usi (Sud2).
310 RELEASE SUD2 ;Ajutorul tinichigiu a terminat.
320 MONCAROS ASSEMBLE 2 ;Usile cu corpul caroseriei.
330 SEIZE SUD1
340 ADVANCE 2 ;Mont.la loc caroserie + reglaj
350 RELEASE SUD1 ;usi de catre tinich.principal
360 SEIZE VOPSITOR ;Secventa de vopsire.
370 ADVANCE 24,3
380 RELEASE VOPSITOR
390 ADVANCE 1 ;Transportul il face altcineva.
400 TRANSFER ,MONFINAL ;Pt.asamblare cu motorul.
410 * Traseu motor:
420 ATELMEC SEIZE MEC1
430 ADVANCE 20,FN$XPDIS ;Reparatii, facute de Mec1.

38 CAP. 1. GENERALIT ˘AT ¸I DESPRE SIMULARE
440 RELEASE MEC1
445 * Reasambl.finala
450 MONFINAL ASSEMBLE 2 ;Motorul cu caroseria.
460 SEIZE MEC1 ;El face asamblarea.
470 ADVANCE 2
480 RELEASE MEC1
490 TABULATE TABCLASE ;Timp in sistem, pe clase
500 DEPART DURATA ;Inchei inreg.timpului
510 TERMINATE 1 ;Iesire din sistem.
Exemplele prezentate sunt simple, alese gradual, de la simp lu la
complex ¸ si au desigur un scop didactic. Ele ilustreaz˘ a uti lizarea celor
mai importante blocuri ¸ si instruct ¸iuni ale imbajului GPSS. Pentru re-
zolvarea unor probleme practice complexe este necesar˘ a co nsultarea
unor decumetat ¸ii complete privind limbajul [14].
In ultimul capitol vor fi prezentate modele de simulare asem˘ an˘ atoare
primelor dou˘ a de mai sus, dar care sunt implementabile intr -un limbaj
evoluat; scopul trat˘ arii acelor modele va fi acela de a se ilu stra cum se
face validarea unui model de simulare, ceea ce nu s-a f˘ acut a ici, in cazul
modelelor implementate in GPSS.

Cap. 2
Numere aleatoare
2.1 Not ¸iuni introductive
Vom aminti mai intˆ ai cˆ ateva notiuni de baz˘ a. Presupunem c ˘ aXeste o
variabil˘ a aleatoare ¸ si fie F(x) =P(X < x )funct ¸ia sa de repartit ¸ie.
Densitatea de repartit ¸ie, cˆ and aceasta exist˘ a, este der ivata funct ¸iei
de repartit ¸ie, adic˘ a f(x) =F/prime(x).Funct ¸ia Fsatisface propriet˘ at ¸ile:
F(−∞) = 0, F(+∞) = 1, F(a)≤F(b) dac˘ a a < b. IntreF(x) ¸ sif(x)
are loc relat ¸ia
F(x) =x/integraldisplay
−∞f(u)du.
De obicei Xreprezint˘ a o caracteristic˘ a a unei mult ¸imi de obiecte ca re
variaz˘ a aleator de la un obiect la altul; acea mult ¸ime se nu me¸ ste populat ¸ie
statistic˘ a. Dac˘ a lu˘ am la intˆ amplare un num˘ ar nde obiecte din populat ¸ie
si consider˘ am valorile X1, X2, …, X nale caracteristicii Xce corespund
acestor obiecte spunem c˘ a aceste valori determin˘ a o select ¸ie de volum
nasupra lui X.In statistica matematic˘ a select ¸ia X1, X2, …, X neste
considerat˘ a ca fiind o mult ¸ime de variabile aleatoare inde pendente ¸ si
identic repartizate ca ¸ si X(aceasta numindu-se select ¸ie bernoulian˘ a ).
Independent ¸a a dou˘ a variabile aleatoare se define¸ ste astfel: Xeste o
variabil˘ a aleatoare independent˘ a deYdac˘ aP(X < x, Y < y ) =P(X <
x)P(Y < y ) sau, dac˘ a not˘ am F(x, y) =P(X < x, Y < y ) funct ¸ia de
repartit ¸ie comun˘ a a variabilelor X¸ siY¸ si not˘ am F1(x) =P(X < x ),
F2(y) =P(Y < y ) funct ¸iile de repartit ¸ie marginale, ale lui Xrespectiv
39

40 CAP. 2. NUMERE ALEATOARE
Y,atunci condit ¸ia de independent ¸˘ a se scrie
F(x, y) =F1(x)F2(y). (2.1)
S˘ a observ˘ am c˘ a se face distinct ¸ie intre variabila aleat oareX¸ si o
valoare xa acesteia (care reprezint˘ a un num˘ ar real fixat!).
Valorile efectiv obt ¸inute prin procesul de select ¸ie cons tituie o mult ¸ime
de n numere care se spune c˘ a reprezint˘ a o realizare a select ¸iei bernuliene.
Deoarece fiecare din aceste numere pot s˘ a reprezinte oricar e valoare a
luiXse considera c˘ a valorile de select ¸ie (numite ¸ si variabil e de select ¸ie)
sunt independente si identic repartizate ca ¸ si X.
Cˆ and pentru o variabil˘ a aleatoare Xse cunoa¸ ste Fsaufspunem c˘ a
se cunoa¸ ste repartit ¸ia de probabilitate saurepartit ¸ia statistic˘ a a luiX.
Exsist˘ a multe tipuri de repartit ¸ii de probabilitate. Cel e mai importante
vor fi introduse in acest capitol, dar ¸ si in capitolele urm˘ a toare.
•Repartit ¸ia uniform˘ a. Una din repartit ¸iile de probabilitate im-
portante, dar care este natural˘ a, esterepartit ¸ia uniform˘ a pe un interval
[a, b] (vezi [2, 3, 5, 6, 7, 10, 11]) care are densitatea de repartit ¸ie de
forma
g(x) =/braceleftbiggk, daca x∈[a, b]
0, in rest,∞/integraldisplay
−∞g(x)dx= 1→k=1
b−a.(2.2)
Variabila Vavˆ and densitatea de repartit ¸ie (2.2) se spune c˘ a este rep arti-
zat˘ auniform pe [a, b].Deci toate valorile variabilei Vsuntegal probabile.
Funct ¸ia de repartit ¸ie corespunzˆ and densit˘ at ¸ii (2.2) este
G(x) =x/integraldisplay
−∞g(u)du=

0, daca x < a
x−a
b−adaca x∈[a, b]
1, daca x > b.(2.3)
O repartit ¸ie uniform˘ a interesant˘ a este repartit ¸ia uni form˘ a pe [0 ,1] a¸ sa
cum se va vedea in continuare.
S˘ a not˘ am cu Uvariabila aleatoare uniform˘ a pe [0 ,1],pe care o
vom numi pe scurt variabil˘ a uniform˘ a 0 −1.Densitatea de repartit ¸ie ¸ si
funct ¸ia de repartit ¸ie a lui Usunt respectiv
f(x) =/braceleftbigg1, daca x∈[0,1]
0, in rest,F(x) =

0, daca x < 0,
x, daca x∈[0,1]
1, daca x > 1.(2.4)

2.1. NOT ¸IUNI INTRODUCTIVE 41
In Fig. 2.1 se prezint˘ a graficele densit˘ at ¸ilor ¸ si funct ¸ iilor de repartit ¸ie
uniforme f, F, g, G. Graficele densit˘ at ¸ilor uniforme ilustreaz˘ a intuitiv
faptul c˘ a valorile variabilelor uniforme sunt egal probabile, adic˘ a au
acelea¸ si ¸ sanse de aparit ¸ie intr-un experiment.
– -6 66 6
– –
c) d)a) b)
0 00 0 1 1
b b ay=1
b−ay yy
y=1y
x xy=1
y=1
x x









Fig. 2.1. Repartit ¸ii uniforme
a) Densitatea uniformˇ a 0 −1
b) Funct ¸ia de repartit ¸ie uniformˇ a 0 −1
c) Densitatea uniformˇ a pe [ a,b]
d) Funct ¸ia de repartit ¸ie uniformˇ a pe [ a,b]
Valorile de select ¸ie asupra variabilelor aleatoare unifo rme se numesc [2, 5,
6, 7, 10, 11] numere aleatoare. A¸ sa cum se va vedea mai jos, nu este posibil s˘ a
se produc˘ a cu calculatorul, printr-un algoritm, secvent ¸ e de numere aleatoare
care s˘ a fie uniform repartizate pe intervalul [0 ,1] ¸ si care s˘ a fie independente
stochastic. De aceea numerele produse cu calculatorul, vor fi numite numere
pseudoaleatoare ¸ si ele vor putea fi folosite drept numere aleatoare dac˘ a au

42 CAP. 2. NUMERE ALEATOARE
un comportament cˆ at mai aleator (vezi $2.3). Un algoritm ca re produce
un num˘ ar aleator (pseudoaleator) se nume¸ ste generator de numere aleatoare
(pseudoaleatoare). Iterˆ and un generator se poate obt ¸ine o select ¸ie (secvent ¸˘ a)
de numere aleatoare. Cˆ and este nevoie de numere aleatoare c u cˆ at mai bune
calit˘ at ¸i se pot aplica metode care combin˘ a doi sau mai mul t ¸i generatori,
rezultˆ and un alt generator care produce secvent ¸e de numer e pseudoaleatoare
mai bune. In multe aplicat ¸ii sunt ins˘ a suficient de bune num erele produse
de generatori simpli, a¸ sa cum se va vedea mai jos.
2.2 Necesitatea simul˘ arii numerelor alea-
toare
Urm˘ atoarea teorem˘ a [2, 3, 5, 10] stabile¸ ste leg˘ atura in tre repartit ¸ia uniform˘ a
0−1 ¸ si repartit ¸ia uniform˘ a pe un interval [ a,b] oarecare.
Teorema 2. 1 Dac˘ aUeste o variabil˘ a uniform˘ a 0−1atunciV=a+ (b−
a)Ueste o variabil˘ a uniform˘ a pe [a,b]¸ si reciproc, dac˘ a V este o variabil˘ a
aleatoare uniform˘ a pe [a,b]atunci variabila
U=V−a
b−a
este uniform˘ a 0−1.
S˘ a vedem acum dece sunt necesare numerele aleatoare in simu lare. Fiind
dat˘ a o variabil˘ a aleatoare oarecare X,pentru care se cunoa¸ ste funct ¸ia de
repartit ¸ieF,este adev˘ arat˘ a urm˘ atoarea propozit ¸ie [2, 3, 10] care ev ident ¸iaz˘ a
important ¸a repartit ¸iei uniforme 0 −1,adic˘ a important ¸a numerelor aleatoare.
Teorema 2. 2 Variabila aleatoare F(X)este uniform˘ a 0−1iar dac˘ a not˘ am
cuF−1inversa funct ¸iei FatunciF−1(U)are funct ¸ia de repartit ¸ie F(sau
cu alte cuvinte F−1(U) =X).
Demonstrat ¸ie. Demonstr˘ am partea a doua a teoremei deoarece aceasta
joac˘ a un rol esent ¸ial in simulare.
Funct ¸ia de repartit ¸ie a lui F−1(U) se scrie
P(F−1(U)<x) =P(F(F−1(U))<F(x)) =P(U <F (x)) =F(x).
Ultima egalitate rezult˘ a din (2.3) cu a= 0 ¸ sib= 1. Teorema este demon-
strat˘ a. Ea este cunoscut˘ a sub numele de teorema lui Hincin.

2.3. METODE CONGRUENT ¸IALE LINIARE 43
Din teorema 2 rezult˘ a urm˘ atoarea consecint ¸˘ a practic˘ a : dac˘ a am putea
produce valorile de select ¸ie U1,U2,…,U nasupra luiU¸ si am cunoa¸ ste funct ¸ia
de repartit ¸ie Fa luiX, atunci am putea produce valorile de select ¸ie X1,X2,…,X n
asupra luiXcu formulaXi=F−1(Ui),1≤i≤n.Dac˘ a funct ¸ia F−1se poate
calcula cu un algoritm atunci valorile de select ¸ie Xiar putea fi produse ( gen-
erate) cu calculatorul folosind urm˘ atorul algoritm
Metoda invers˘ a. (Algoritm)
repet˘ a de nori urm˘ atoarele instruct ¸iuni
genereaz˘ a o valoare de select ¸ie Uuniform˘ a 0−1;
calculeaz˘ a X=F−1(U);
Spunem c˘ a acest algoritm simuleaz˘ a oselect ¸ie de volum nasupra luiX.
Dar pa¸ sii cei mai important ¸i ai algoritmului sunt ultimii doi pa¸ si care produc
o valoare de select ¸ie X,c˘ aci dac˘ a putem genera numere Uuniforme 0−1 si
independente atunci prin iterare, conform primului pas, am produce valor ile
select ¸iei de volum nasupra luiX.Din aceast˘ a cauz˘ a, pentru simularea di-
verselor variabile ne vom concentra asupra problemei simul˘ arii unei singure
valori de select ¸ie care s˘ a foloseasc˘ a un algoritm astfel incˆ at prin iterare s˘ a
poat˘ a produce select ¸ia care ne intereseaz˘ a.
Revenind la metoda invers˘ a, dac˘ a am putea genera valori de select ¸ie
Ui,1≤i≤nuniforme 0−1 independente, atunci ¸ si Xi=F−1(Ui) ar fi
independente.
Un algoritm pentru generarea (simularea) unei select ¸ii Ui,1≤i≤nde
variabile uniforme 0 −1 va trebui deci s˘ a produc˘ a in primul rˆ and un num˘ ar
uniform 0−1, iar prin iter˘ ari acela¸ si algoritm s˘ a fie in m˘ asur˘ a s˘ a produc˘ a
select ¸ia de volum n; deci select ¸ia se va produce printr-o relat ¸ie iterativ˘ a
de formaUi+1=g(Ui),iar algoritmul trebuie s˘ a permit˘ a producerea de
numereUiindependente stochastic. Valorile de select ¸ie Uise numesc numere
aleatoare uniforme sau simplu numere aleatoare.
2.3 Metode congruent ¸iale liniare
FieXo variabil˘ a aleatoare discret˘ a repartizat˘ a uniform avˆ and repartit ¸ia
X:/parenleftBigg
1,2, …, m
1
m,1
m, …,1
m/parenrightBigg
, m<∞, (2.5)

44 CAP. 2. NUMERE ALEATOARE
undem∈N+.Conform teoremei 2.1, variabila Uuniform˘ a 0−1 se poate
obt ¸ine astfel
U=X
m∈(0,1) (2 .5/prime)
unde in ultima relat ¸ie imp˘ art ¸irea se execut˘ a in real.
Valori de select ¸ie asupra variabilei Xse pot obt ¸ine prin relat ¸ia congruent ¸ial˘ a
liniar˘ a [2, 5, 6, 7, 10]
Xi+1≡(aXi+c)(modm ), (2.6)
care spunem c˘ a define¸ ste generatorul mixt congruent ¸ial liniar (X0,a,c,m )
unde cele patru constante sunt numere naturale date.
Pentru ca generatorul (2.6) sa produc˘ a numere aleatoare, trebuie alese
constantele ( X0,a,c,m ) astfel incˆ at s˘ a satisfac˘ a condit ¸iile:
10.NumereleXis˘ a reprezinte o repartit ¸ie uniform˘ a de forma (2.5); aces t
lucru se realizeaz˘ a dac˘ a sirul {Xi}are operioad˘ aλmare adic˘ a dac˘ a cel mai
mic num˘ ar λpentru care Xi=Xi+λare loc pentru un λcˆ at mai mare.Acest
lucru se intˆ ampl˘ a dac˘ a cele patru constante se aleg astfe l incˆ at relat ¸ia (2.6)
s˘ a produc˘ a toate resturile modulo m, adic˘ a numerele 0 ,1,…,m−1,iarm
este mare.
20.NumereleXis˘ a fie independente stochastic; acest lucru nu este practic
posibil deoarece Xi+1depinde de Xiconform relat ¸iei (2.6); este ins˘ a posibil
ca numerele Xi,Xi+1s˘ a fieslab dependente stochastic. Aceast˘ a condit ¸ie in-
seamn˘ a c˘ a numerele respective au un coeficient serial de corelat ¸ie ρapropiat
de0, ρdefinit astfel
ρ=ρ1=Corr(Xi,Xi+1) =E[XiXi+1]−E[Xi]E[Xi+1]/radicalbig
Var[Xi]Var[Xi+1](2.7)
Var[Xi] =E[Xi−E[xi]]2=E[X2
i]−{E[Xi]}2
unde cuE[Y] se noteaz˘ a valoarea medie a variabilei aleatoare Y.
Din motive impuse de aritmetica sistemelor de calcul, modululmse ia
de formam=peundepeste un num˘ ar prim [10]. Urm˘ atoarea teorem˘ a [10]
precizeaz˘ a condit ¸ii pentru alegerea constantei acare define¸ ste generatorul
(2.6).
Teorema 2. 3 Perioada maxim˘ a a generatorului (2.6) este λ=pedac˘ a ¸ si
numai dac˘ a
a≡1(mod p )cand p> 2
a≡1(mod4)cand p = 2,1<a<p. (2.8)

2.3. METODE CONGRUENT ¸IALE LINIARE 45
O valoare a lui apoate fia=pk+1,2≤k≤e.Alegerea lui afolosind numai
aceast˘ a teorem˘ a poate ins˘ a s˘ a produc˘ a un ¸ sir de intreg iX0,X1,…,X λ−1care
s˘ a nu fie aleator; acest ¸ sir care cont ¸ine sigur num˘ arul 0 ,poate s˘ a cont ¸in˘ a
sub¸ siruri de lungime mare care s˘ a fie sau cresc˘ atoare, sau descresc˘ atoare,
sau s˘ a prezinte o periodicitate mare. Presupunˆ and c˘ a X0= 0 (ceea ce este
desigur permis) se observ˘ a c˘ a sirul {Xn}este de forma
Xn=(an−1)c
b(modm ), b=a−1. (2.6/prime)
Dac˘ a in relat ¸ia precedent˘ a lu˘ am a=b+ 1 atunci (2.6’) devine
Xn≡c(n+C2
nb+…+Cs
nbs−1)(mod m ) (2 .6/prime/prime)
undeseste cel mai mic num˘ ar natural care satisface relat ¸ia
bs≡0(modm ). (2.6/prime/prime/prime)
Num˘ arulsse nume¸ ste potent ¸a generatorului mixt congruent ¸ial. Din relat ¸ia
(2.6”) rezult˘ a c˘ a Xneste de forma unui polinom in bmodulom¸ si deci
generatorul este cu atˆ at mai bun cu cˆ at potent ¸a sa seste mai mare. S-a
constatat c˘ a din punct de vedere practic, potent ¸a trebuie s˘ a fie cel put ¸in 5 .
Un caz interesant este acela cˆ and m= 2eundeeeste apropiat de cuvˆ antul
calculatorului pe care se implementeaz˘ a generatorul (2.6 ). In acest caz se
arat˘ a c˘ a o alegere bun˘ a a lui aeste de forma a= 2f1+ 2f2+…+ 1, f1>
f2> …Deci un generator pentru care m¸ siasatisfac condit ¸iile teoremei
3 genereaz˘ a un sir de numere aleatoare intregi de perioada λmare ¸ si care
nu prezint˘ a regularit˘ at ¸i (nu cont ¸in sub¸ siruri periodice de lungimi mari sau
sub¸ siruri cu monotonii periodice). Constanta cpoate fi deocamdat˘ a arbitrar
aleas˘ a.
S˘ a vedem acum cum putem alege constantele generatorului (2 .6) astfel
incˆ atρs˘ a fie suficient de mic.
Numerele produse de (2.6) au o repartit ¸ie de forma (2.5) in c are valorile
luiXsunt 0,1,…,m−1.Deci in acest caz avem [10]
E[X] =m−1/summationtext
x=0x
m, Var [X] =m−1/summationtext
x=0x2
m−{E[X]}2
ρ1=ρ=mm−1/summationtext
x=0xs(x)−/parenleftbiggm−1/summationtext
x=0x/parenrightbigg2
mm−1/summationtext
x=0x2−/parenleftbiggm−1/summationtext
x=0x/parenrightbigg2, s(x) = (ax+c)(modm ).

46 CAP. 2. NUMERE ALEATOARE
Evaluarea lui ρse face cu dificultate. Se arat˘ a c˘ a
ρ≈1
a/parenleftBigg
1−6/parenleftbiggc
m/parenrightbigg
+ 6/parenleftbiggc
m/parenrightbigg2/parenrightBigg
±/epsilon1, /epsilon1≈a
m. (2.9)
O valoare conciliant˘ a a lui a, care s˘ a asigure o valoare mic˘ a a lui ρeste
a≈√miar din condit ¸ia ρ≈0 se deduce c˘ a c/mtrebuie s˘ a satisfac˘ a ecuat ¸ia
1−6x+ 6×2= 0adicac
m=1
2−1
6√
3 = 0.211324865. (2.10)
Ultima relat ¸ie d˘ a o condit ¸ie pentru alegerea lui c.
Notˆ andρk=Corr(Xi,Xi+k),se arat˘ a c˘ a ρk≤ρ1, k>1, ceea ce asigur˘ a
o dependent ¸˘ a slab˘ a a numerelor dep˘ artate din secvent ¸a X1,X2,…
In concluzie pentru ca generatorul (2.6) s˘ a fie bun trebuie s ˘ a alegem un
modulmcˆ at mai mare, s˘ a select˘ am un aastfel incˆ at s˘ a satisfac˘ a teorema
3 impreun˘ a cu o potent ¸˘ a mai mare decˆ at 5 ¸ si s˘ a ia o valoar e apropiat˘ a de√m, iarcs˘ a satisfac˘ a (2.10). Num˘ arul de startX0,care se mai nume¸ ste ¸ si
s˘ amˆ ant ¸a generatorului poate fi orice num˘ ar natural mai mic decˆ at m.
Pentru a produce un num˘ ar aleator intreg X,generatorul (2.6) necesit˘ a
deci efectuarea unei inmult ¸iri ¸ si a unei adun˘ ari ¸ si apoi calcularea restului
modulom.Dac˘ a am alege c= 0 atunci am obt ¸ine generatorul multiplicativ
congruent ¸ial (X0,a,0,m) care are avantajul c˘ a necesit˘ a numai operat ¸ia de
inmult ¸ire el fiind deci de forma
Xn+1≡(aXn)(modm ). (2.11)
In acest caz X0trebuie sa fie neap˘ arat pozitiv c˘ aci altfel sirul produs de
(2.11) ar avea toate elementele egale cu zero deci nu ar fi un si r de numere
aleatoare uniforme intregi. Condit ¸ia de perioad˘ a maxim˘ a se modific˘ a ¸ si ea ¸ si
intr-un caz interesant din punct de vedere practic se exprim ˘ a prin teorema
urm˘ atoare.
Teorema 2. 4 Perioada maxim˘ a a generatorului (X0,a,0,m)se obt ¸ine cˆ and:
(i)X0este un intreg pozitiv prim cu m;
(ii)aeste r˘ ad˘ acin˘ a primitiv˘ a modulo m,¸ si dac˘ api,1≤i≤tsunt
numere prime atunci perioada este
λ(2e) = 2e−2, daca e≥3,
λ(pe) =pe−1(p−1), daca p> 2,
λ(pe1
1…pet
t) =cmmmc (λ(pe1
1)…λ(pet
t)). (2.12)
Desigur, generatorul recomandabil este cel de forma (2.11) deoarece necesit˘ a
numai o operat ¸ie de inmult ¸ire. Exist˘ a ins˘ a ¸ si alti gene ratori de numere
aleatoare intregi. Enumer˘ am in continuare cˆ at ¸iva.

2.4. ALT ¸I GENERATORI DE NUMERE UNIFORME 47
2.4 Alt ¸i generatori de numere uniforme
Exist˘ a multe idei ce se folosesc pentru simularea de numere aleatoare uni-
forme 0−1.Uneori sunt necesari generatori cu calit˘ at ¸i statistice foarte bune;
ace¸ sti generatori au de regul˘ a complexitate de calcul mar e ¸ si necesit˘ a uti-
lizarea de calculatoare cu putere de calcul mare mai ales pri vind efectu-
area calculelor aritmetice (calculatoare cu cuvˆ ant mare! ). Alteori ins˘ a sunt
necesari generatori mai put ¸in performant ¸i, care produc n umere pseudo-
aleatoare cu propriet˘ at ¸i statistice mai s˘ arace; de exemplu, numer eUicare
sunt aproximativ independente stochastic ¸ si repartizate numai aproape uni-
form.
Exist˘ a un adev˘ arat arsenal de teste statistice [6, 10] cu care se verific˘ a
propriet˘ at ¸ile statistice ale secvent ¸elor de numere ale atoare (uniformitatea
repartit ¸iei, independent ¸a stochastic˘ a a numerelor suc cesiv generate, non-
periodicitatea secvent ¸elor, etc.). Printre acestea, un l oc important il ocup˘ a
testele de concordant ¸˘ a care verific˘ a ipoteza c˘ a numerele aleatoare U∈[0,1],
produse cu un generator, sunt uniform repartizate pe acel in terval;asemenea
teste sunt testele de tip Kolmogorov-Smirnov ¸ sitestul general χ2de concordant ¸˘ a.
Exist˘ a, de asemenea, multe teste care se refer˘ a la caracte rul aleator. Nu vom
prezenta detalii privind aceste teste (Vezi de ex. $ 3.7). Ci titorul interesat
in aprofundarea acestei probleme poate consulta de exemplu [10]. Preciz˘ am
numai faptul constatat experimental c˘ a generatorii care p roduc secvent ¸e de
perioadeλmari, au de regul˘ a, propriet˘ at ¸i statistice corespunz˘ a toare.
In cele ce urmeaz˘ a prezent˘ am cˆ at ¸iva generatori de numer e aleatoare care
sunt, de regul˘ a, implementat ¸i in limbajele de programare evoluate. Aproape
orice astfel de limbaj are o funct ¸ie (sau procedur˘ a) care, prin apel˘ ari succe-
sive, produce secvent ¸e de numere pseudoaleatoare de bun˘ a calitate. (De ex.
in Pascal ¸ si C este funct ¸ia random a c˘ arei s˘ amˆ ant ¸˘ a este init ¸ializat˘ a standard
la implementare sau care poate fi reinit ¸ializat˘ a prin randomize de c˘ atre uti-
lizator). F˘ ar˘ a s˘ a insist˘ am asupra detaliilor privind c alitatea generatorilor ¸ si
implementarea lor efectiv˘ a, in cele ce urmeaz˘ a vom trece i n revist˘ a cˆ ateva
metode ce se utilizeaz˘ a in construct ¸ia practic˘ a a unor as tfel de generatori
(problem˘ a care constituie mai degrab˘ a o tem˘ a de cercetare ¸ stiint ¸ific˘ a ).
•Generatorul aditiv congruent ¸ial, sau Fibonacci decalat notat
(k;X0,X1,…,X k;j;m) ¸ si bazat pe relat ¸ia
Xn= (Xn−j−Xn−k)(modm ) (2 .13)
iar o alegere bun˘ a a constantelor este j= 24, k= 55, m= 2e, e≥31 care
asigur˘ a o perioada λ≥255−1.

48 CAP. 2. NUMERE ALEATOARE
•Generatorul congruent ¸ial inversiv notat (X0,a,c,m )−1cum-
prim, definit de relat ¸ia
Xn= (aX−1
n−1+c)(modm ) (2 .14)
undeX−1
iesteinversul (mod m ) al luiXiin raport cu operat ¸ia de inmult ¸ire
a claselor de resturi, cˆ and acesta exist˘ a sau este zero alt fel. (Dac˘ am-prim
¸ siXi/negationslash= 0 atunci inversul exista!).
•Generatorul matricial congruent ¸ial care este de forma
Xn= (AXn−1+C)(modm ) (2 .15)
undeXn,Csunt vectori d−dimensionali iar Aeste matrice d×d.Inmult ¸irea
matriceal˘ a va produce vectori Xncu componente corelate. Acest tip de
generatori se utilizeaz˘ a pe calculatoare paralele.
•Generatori bazat ¸i pe registre de deplasare care utilizeaz˘ a reprezen-
tarea binar˘ a a numerelor intregi in calculator. Dac˘ a not˘ am cu ai,1≤i≤p
cifrele binare ale lui xn−1¸ si consider˘ am cifrele cinu toate egale cu zero,
atunci generarea cifrelor aiale lui luiXnse realizeaz˘ a prin relat ¸ia
ai= (cpai−p+cp−1ai−p+1+…+c1ai−1)(mod2). (2.16)
In practic˘ a se folose¸ ste forma mai simpl˘ a
ai= (ai−p+ai−p+q)(mod2), p>q> 0 (2 .16/prime)
sau dac˘ a not˘ am ⊕operat ¸ia binar˘ a or-exclusiv ca suma de bit ¸i modulo 2
atunci relat ¸ia precedent˘ a devine
ai=ai−p⊕ai−p+q. (2.16/prime/prime)
S˘ a observ˘ am c˘ a relat ¸ia de recurent ¸˘ a referitoare la bi t ¸iiaieste aceea¸ si cu
relat ¸ia de recurent ¸˘ a a numerelor aleatoare Xiinterpretate ca p−tupluri de
bit ¸i, adic˘ a
Xn=Xn−p⊕Xn−p+q. (2.17)
Un generator bun este de exemplu generatorul Xn=Xn−3p⊕Xn−3q, p=
521, q= 32,care are o perioad˘ a λ= 2521−1.Formula (2.17) se poate extinde
matricial sub forma
Xn=Xn−p⊕Xn−p+q. (2.17/prime)
•Amestecarea de generatori se obt ¸ine astfel: S˘ a presupunem c˘ a se
dau doi generatori G1,G2¸ si folosim o tabel˘ a T[1..k],(de exk= 64 sau
k= 128). Algoritmul de amestecare a celor doi generatori este

2.4. ALT ¸I GENERATORI DE NUMERE UNIFORME 49
Init ¸ializ˘ am T[i] =Uicu numere Uiproduse cu G1;
Gener˘ am cu G2un indice aleator j∈{1,2,…,k};
Lu˘ amY:=T[j]; Gener˘ am UcuG1¸ si lu˘ amT[j] :=U.
Generarea indicelui aleator j, care este un intreg uniform repartizat
cu valori in{1,2,…,k}se face astfel
Genereaz˘ aUcuG2;
Iaj=trunc(U×k) + 1.
Generatorul Grezultat din amestecare este mai aleator decˆ at p˘ arint ¸ii s˘ ai
G1,G2, iar perioadele satisfac relat ¸ia: λ(G) =cmmmc (λ(G1),λ(G2).
•In final, prezent˘ am cˆ ateva exemple concrete de generatori:
1. Generatorul ( X0,125,0,2796203);
2. Generatorul( x0,16807,0,231−1);
3. Generatorul de numere uniforme Uiobt ¸inute astfel:
Xi= 171Xi−1(mod30269),Yi= 172Yi−1(mod30307),
Zi= 170Zi−1(mod30323), Ui=/parenleftbiggXi
30269+Yi
30307+Zi
30323/parenrightbigg
(mod1).
Primii doi generatori sunt multiplicativ-congruent ¸iali ¸ si satisfac condi-
t ¸iile precizate anterior. Pentru cel de-al treilea se pres upun date semint ¸ele
(X0,Y0, Z0) ce corespund la trei generatori multiplicativ-congruent ¸iali ¸ si se
arat˘ a c˘ aUiau perioada de ordinul 1012.
In cele ce urmeaz˘ a vom presupune c˘ a dispunem de un generato r de nu-
mere aleatoare uniforme 0 −1,reprezentat generic de funct ¸ia random.
Exercit ¸ii.
E2.1 Demonstrat ¸i (2.6’) ¸ si (2.6”) pentru generatorul mixt con gruent ¸ial.
E2.2 FieV= (V1,V2,…,V k)/primeun vector aleator uniform pe intervalul
I= [a1,b1]×[a2,b2]×…×[ak,bk],−∞<ai<bi<∞,1≤i≤k.S˘ a se arate
c˘ aVisunt variabile aleatoare uniforme pe [ ai,bi] ¸ si independente stochastic.
Reciproca este de asemenea adev˘ arat˘ a.
Indicat ¸ie: Se consider˘ a densit˘ at ¸ile de repartit ¸ie ale lui V¸ siVi,adic˘ a
f(v) =

1
k/producttext
i=1(bi−ai), dacav∈I
0, inrest, f i(vi) =/braceleftbigg1
bi−ai,dacav i∈[ai,bi]
0, inrest
¸ si se observ˘ a c˘ a f(v) =k/producttext
i=1fi(vi).

50 CAP. 2. NUMERE ALEATOARE
E2.3 Ar˘ atat ¸i c˘ a dac˘ a Ueste uniform 0−1 atunciV=a+ (b−a)U, cu
−∞<a<b< +∞este uniform pe [ a,b] ¸ si reciproc.
Indicat ¸ie: Folosind funct ¸ia de repartit ¸ie Fa luiUdat˘ a de (2.4), se arat˘ a
c˘ a funct ¸ia de repartit ¸ie a lui VesteGdat˘ a de (2.3) ¸ si invers.
E2.4S˘ a se arate c˘ a dac˘ a Ueste o variabil˘ a uniform˘ a 0 −1 atunci ¸ si 1−U
este o variabil˘ a repartizat˘ a uniform pe [0 ,1].
Indicat ¸ie: se arat˘ a c˘ a P(1−U <x ) =x, x∈[0,1].
E2.5 Folosind metoda de simulare a indicelui aleator jdescris˘ a in ul-
tima sect ¸iune precizat ¸i in ce condit ¸ii metoda poate fi fol osit˘ a la simularea
arunc˘ arii cu zarul, la simularea tragerii la sort ¸i, sau la simularea unui semn
aleator?
Indicat ¸ie: La aruncarea cu zarul se ia k= 6,iar la tragerea la sort ¸i se ia
k= 2.
Simularea semnului aleator se realizeaz˘ a cu instrut ¸iune a:
ifU≤0.5thensemn := 1elsesemn :=−1;
Observat ¸ie: pentru o variabil˘ a aleatoare Xcontinu˘ a (care are densitate
de repartit ¸ie), avem P(X=x) = 0,deci in particular P(U=u) = 0,ceea ce
inseamn˘ a c˘ a semnul ≤poate fi inlocuit cu semnul ≥in cadrul instruct ¸iunii
ifprecedente.
E2.6 Fie (U,V)/primeun vector aleator uniform pe [0 ,1]×[0,1],undeUeste
independent de V.S˘ a se calculeze P(U+V <x ),x∈R.
Indicat ¸ie. In general avem P(U+V <x ) =/integraltext
Ddudv, D ={(u,v)|u+v <
x}.Pornind de aici ¸ si calculˆ and ariile unor triunghiuri obt ¸ inemP(U+V <
x) =x2/2, daca 0≤x≤1;P(U+V <x ) = 1−(2−x)2/2, daca 1≤x≤
2;P(U+V <x ) = 0, dacax< 0, P(U+V <x ) = 1, dacax> 2.
E2.7 Precizat ¸i cum se genereaz˘ a un indice aleator i∈{r,r+ 1,…,s}
under,s∈N(adic˘ ar,ssunt numere naturale).
Indicat ¸ie. Simularea se realizeaz˘ a cu instruct ¸iunea: i=r+trunc[(s−r)×
U] + 1,asem˘ an˘ ator exercit ¸iului 5.
E2.8 Construit ¸i un generator de numere Uuniforme pe [0 ,1] utilizˆ and
amestecarea a trei generatori G1,G2,G3.
Solut ¸ie. Se va folosi o idee asem˘ an˘ atoare aceleia care a condus la am este-
carea a doi generatori G1,G2,descris˘ a in ultimul algoritm de mai sus. S˘ a
consider˘ am un vector L[1..m] in care se vor memora numere uniforme U
generate cu G1.S˘ a consider˘ am un alt vector cu valori intregi L1[1..k] ale
c˘ arui valori sunt numere intregi L1[j]∈{1,2,…,m},1≤j≤k.Algoritmul
obt ¸inut prin amestecarea celor trei generatori este urm˘ a torul:
Pasul 0. Incarc˘ a vectorul Lcu secvent ¸a de numere aleatoare U1,U2,.
..,Um,uniforme pe [0 ,1],generate cu G1; incarc˘ a de asemenea vectorul L1

2.4. ALT ¸I GENERATORI DE NUMERE UNIFORME 51
cu secvent ¸a de numere intregi j1,j2,…,j kdin{1,2,…,m},generate cu G2;
Pasul 1. Genereaz˘ a cu G3un indice aleator jdin mult ¸imea{1,2,…,k};
iai:=L1[j]; genereaz˘ a cu G2un indice aleator i1in{1,2,…,m}¸ si ia
L1[j] :=i1;
Pasul 2. IaU:=L[i]; genereaz˘ a cu G1un num˘ ar aleator U1uniform pe
[0,1] ¸ si iaL[i] :=U1.
Num˘ arul aleator pe [0 ,1] nou generat este num˘ arul U¸ si el este obt ¸inut
prin amestecarea generatorilor G1,G2,G3.Este de asteptat ca numerele U
produse de acest algoritm s˘ a aib˘ a propriet˘ at ¸i de aleatorism mai bune decˆ at
numerele ce s-ar produce cu fiecare generator in parte. Print re altele se
arat˘ a c˘ a dac˘ a λieste perioada generatorului Gi,i= 1,2,3,atunci perioada
generatorului dat de algoritmul precedent este λ=cmmmc (λ1,λ2,λ3) care
poate fi (dac˘ a alegem convenabil generatorii Gi) mai mare decˆ at cel mai
mare dinλi.
Dac˘ a este necesar s˘ a se produc˘ a o secvent ¸˘ a U1,U2,…,U natunci se exe-
cut˘ a o singur˘ a dat˘ a pasul 0 ¸ si se repet˘ a de nori pa¸ sii 1 ¸ si 2 ai algoritmului.

52 CAP. 2. NUMERE ALEATOARE

Cap. 3
Simularea variabilelor
neuniforme
Teorema 2.2 din capitolul precedent ne spune c˘ a cel put ¸in t eoretic, putem
simula orice variabil˘ a aleatoare Xdac˘ a cunoa¸ stem funct ¸ia sa de repartit ¸ie
F¸ si putem calcula u¸ sor ¸ si f˘ ar˘ a erori funct ¸ia invers˘ a F−1.Pornind de la
acest fapt, precum ¸ si de la alte considerente ce vor fi ment ¸i onate la locul
potrivit, in literatura de specialitate s-au construit div erse metode, atˆ at
generale cˆ at ¸ si particulare, pentru simularea diverselor tipuri d e repartit ¸ii
de probabilitate ne uniforme. Schema general˘ a a acestor me tode este de
tipul urm˘ ator: se presupun cunoscute metode de simularea u nor variabile
aleatoare simpleS1,S2,…,S n¸ si se caut˘ a un algoritm (adic˘ a metoda!) care
s˘ a transforme aceste variabile in variabila Xcare trebuie generat˘ a. (In
particular de exemplu, variabila simpl˘ aUse transform˘ a in variabila X=
F−1(U)).
In cele ce urmeaz˘ a vom prezenta mai intˆ ai cˆ ateva metode ge nerale de sim-
ularea variabilelor aleatoare neuniforme. Toate aceste me tode presupun sim-
ularea unor variabile aleatoare simple (cele mai simple sun t cele uniforme),
iar prin transformarea/combinarea acestora se obt ¸in vari abilele dorite.
3.1 Metoda invers˘ a
Aceast˘ a metod˘ a a fost deja introdus˘ a ca o consecint ¸˘ a di rect˘ a a teoremei
lui Hincin. Ea se aplic˘ a, a¸ sa cum s-a precizat, in cazul in c are funct ¸ia de
repartit ¸ie se poate inversa u¸ sor. Dac˘ a funct ¸ia de repar tit ¸ie nu se inverseaz˘ a
u¸ sor, atunci ea se poate aproxima (pe intervale convenabil alese) cu o funct ¸ie
53

54 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
liniar˘ a pe port ¸iuni, cozile fiind aproximate cu exponent ¸iale convenabil alese.
In tabela urm˘ atoare se prezint˘ a cˆ ateva repartit ¸ii de pr obabilitate ce se pot
simula u¸ sor cu metoda invers˘ a (vezi ¸ si [10]).
Repartit ¸ia Densitatea f InversaF−1
Exp(λ),λ>0 f(x) =λe−λx,x>0x=−1
λln(u)
Weib(0,1,ν),ν >0 f(x) =νxν−1e−xνx= (−ln(u))1/ν
Cauchy f(x) =1
π1
1+x2,x∈Rx=tanπ(u−1
2)
PearsonXI,α∈R,ν > 0f(x) =να
(1+αx)ν+1,x>0 x=1
u1/ν
Arcsin f(x) =1
π1√
1−x2, x∈[−1,1]x=sinπ(u−1
2)
Logistica f(x) =e−x
(1+e−x)2,x∈Rx=log/parenleftBig
1−u
u/parenrightBig
Tabelul 3.1. Metoda invers˘ a
In formulele lui fdin tabel se precizeaz˘ a numai valorile lui xpentru care
f(x)>0,presupunˆ andu-se c˘ a f(x) = 0 in rest.
In ultima coloan˘ a se scrie direct formula cu care se simulea z˘ a variabila
aleatoareX,deoarece se t ¸ine cont de exercit ¸iul 4 din capitolul 2 (s-a i nlocuit
1−ucuu[10], economisindu-se in acest fel o operat ¸ie de sc˘ adere) . Inlocuirea
lui 1−ucuuse va face ori de cˆ ate ori se va ivi ocazia, dac˘ a este posibil .
Folosind metoda invers˘ a se poate construi u¸ sor un algoritm pentru sim-
ularea variabilei discrete
X:/parenleftBigg
a1, a2, …, a m
p1, p2, …, p m/parenrightBigg
,m/summationdisplay
i=1pi= 1. (3.1)
Pentru simularea variabilei aleatoare Xcalcul˘ am mai intˆ ai valorile funct ¸iei
de repartit ¸ie a acesteia.Avem
F(x) =

0, daca x<a 1
p1, dacaa 1≤x<a 2
p1+p2, daca a 2≤x<a 3
……..
p1+p2+…+pk, daca a k≤x<a k+1
……..
1daca a m≤x.(3.2)
Algoritmul pentru simularea lui Xconst˘ a deci in g˘ asirea lui aia.ˆ ı.F(ai) =U
si este urm˘ atorul:
Algoritmul SIMDISCRV [10]

3.2. METODA COMPUNERII SAU AMESTEC ˘ARII 55
Intrare tabela T[1..m],T[i] :=i/summationtext
j=1pj;Intrarea[1..m];
Genereaz˘ aUuniform 0−1; (cuU:=random ;);
i:= 1;whileU >F [i]doi:=i+ 1;
IaX:=a[i].
3.2 Metoda compunerii sau amestec˘ arii
Aceast˘ a metod˘ a se aplic˘ a variabilelor aleatoare Xa c˘ aror repartit ¸ie de prob-
abilitate satisface urm˘ atoarea definit ¸ie [2, 3, 10]:
Definit ¸ia 3. 1 Funct ¸ia de repartit ¸ie F(x)este o amestecare (sau compunere
sau mixtur˘ a) discret˘ a a mult ¸imii de funct ¸ii de repartit ¸ie
{Fi(x)}1≤i≤mcu repartit ¸ia disret˘ a
J:/parenleftBigg
1,2, …, m
p1, p2, …, p m/parenrightBigg
,m/summationdisplay
i=1pi= 1, (3.3)
dac˘ a
F(x) =m/summationdisplay
i=1piFi(x). (3.4)
Funct ¸ia de repartit ¸ie F(x)este o amestecare continu˘ a a familiei de funct ¸ii
de repartit ¸ie{G(x,Y)}Y∈R,cu funct ¸ia de repartit ¸ie continu˘ a H(y)a luiY
dac˘ a ea este de forma
F(x) =/integraldisplay
RG(x,y)dH(y) (3 .5)
ultima integral˘ a fiind integrala Stieltjes.
Dac˘ a not˘ am cu Xvariabila aleatoare care are funct ¸ia de repartit ¸ie F(x) ¸ si cu
Xivariabila aleatoare care are funct ¸ia de repartit ¸ie Fi(x) atunci amestecarea
discret˘ a poate fi interpretat˘ a astfel
X=Xicuprobabilitateap i
de unde rezult˘ a urm˘ atorul algoritm pentru simularea lui X
Algoritmul COMPDISCR
Genereaz˘ a un indice javˆ and repartit ¸ia (3.3);
Genereaz˘ aXjavˆ and funct ¸ia de repartit ¸ie Fj(x);
IaX:=Xj.

56 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
O interpretare analog˘ a are ¸ si amestecarea continu˘ a, de u nde se deduce
urm˘ atorul algoritm de simulare a variabilei aleatoare X;F(x)
Algoritmul COMPCONT
Genereaz˘ a variabila Ycare are funct ¸ia de repartit ¸ie H(y);
Genereaz˘ a variabila aleatoare ZYcare are funct ¸ia de repartit ¸ie G(x,Y);
IaX:=ZY.
Desigur, in algoritmii precedent ¸i se presupun cunoscute m etode de gener-
are a variabilelor aleatoare J,Xi,Y,Z Y.Dac˘ a in definit ¸ia compunerii se con-
sider˘ a in loc de funct ¸ii de repartit ¸ie, densit˘ at ¸i de re partit ¸ie atunci formulele
(3.4) ¸ si (3.5) se scriu respectiv [10,11]
f(x) =m/summationdisplay
i=1pifi(x) (3 .4/prime)
f(x) =/integraldisplay
Rg(x,y)h(y)dy. (3.5/prime)
Exemplul 3.1, [10]. Presupunem c˘ a la o stat ¸ie de benzin˘ a sosesc m
tipuri de autoturisme ¸ si se cunoa¸ ste pi= probabilitatea s˘ a soseasc˘ a un au-
toturism de tipul i,1≤i≤m.Presupunem c˘ a timpul Xide intersosire al
autoturismelor de tip iare repartit ¸ia Exp(λi) adic˘ a exponent ¸ial˘ a negativ˘ a
de parametru λi.Atunci timpul de intersosire Xal autoturismelor oarecare
(amestecate!) are o repartit ¸ie mixtexponent ¸ial˘ a (sau amestecat exponent ¸ial˘ a)
adic˘ a este o amestecare discret˘ a cu densitatea
f(x) =

0, daca x< 0
m/summationtext
i=1piλie−λixi, dacax≥0.
Deci simularea unui timp de intersosire a dou˘ a autoturisme oarecare se va
face cu algoritmul COMPDISCR.
Exemplul 3.1’. FieXvariabila avˆ and repartit ¸ia Laplace (λ) [5] a c˘ arei
densitate este
f(x) =λ
2e−λ|x|, x∈R, λ> 0.
Se observ˘ a c˘ a
f(x) =p1f1(x) +p2f2(x), p 1=p2=1
2= 0.5
f1(x) =/braceleftbiggλeλx, dacax≤0
0, dacax> 0, f2(x) =/braceleftbigg0, dacax≤0,
λe−λx, daca,x> 0.

3.2. METODA COMPUNERII SAU AMESTEC ˘ARII 57
Algoritmul de compunere pentru simularea lui Xeste
Algoritmul LAPCOMP pentru simularea variabilei Laplace
GenereazaU;uniform 0−1;
ifU≤0.5thens:=−1elses:= 1; (s= semn aleator );
Genereaz˘ a Y;Exp(λ);iaX:=sY.
Simularea variabilei Laplace (λ) se poate face u¸ sor ¸ si cu metoda invers˘ a.
Exemplul 3.2. Durata in funct ¸ionare X,X > 0 a unui aparat (de ex.
computer) este exponent ¸ial˘ a de parametru ηλundeλ>0 este un parametru
determinat de produc˘ ator (in laborator!) iar ηeste un parametru aleator care
indic˘ a influent ¸a mediului in care este exploatat calculatorul. Presupunˆ and
c˘ a repartit ¸ia de probabilitate a lui ηeste de tip Gamma (0,b,a) adic˘ a are
densitatea
h(η) =/braceleftBigg0, daca x< 0
ba
Γ(a)ηa−1e−bη,(3.6)
s˘ a se determine densitatea de repartit ¸ie a lui X.
Se observ˘ a [5,7] c˘ a este vorba de o amestecare continu˘ a a c ˘ arei densitate
este de forma (3.5’) adic˘ a pentru x≥0 avem
f(x) =∞/integraldisplay
0ηλe−ληxba
Γ(a)ηa−1e−bηdη=λba
Γ(a)∞/integraldisplay
0ηae−η(λx+b)dη=
=λbaΓ(a+ 1)
Γ(a)(λx+b)a+1=λa
bba+1
(λx+b)a+1=aθ
(θx+ 1)a+1,θ=λ
b.
Deci in final densitatea lui Xeste
f(x) =/braceleftBigg0, daca x< 0

(θx+1)a+1, daca x≥0,θ=λ
b. (3.7)
In calculele de mai sus s-a folosit urm˘ atoarea formul˘ a
Γ(ν)
aν=∞/integraldisplay
0xν−1e−axdx. (3.8)
Repartit ¸ia a c˘ arei densitate este de forma (3.7) se nume¸ s te repartit ¸ie Lomax
¸ si dˆ andu-se parametrii pozitivi λ,a,b simularea ei se realizeaz˘ a cu algorit-
mulCOMPCONT cu condit ¸ia de a cunoa¸ ste un algoritm de simulare a
variabileiGamma (0,b,a).
Exemplele de mai sus ilustreaz˘ a dou˘ a cazuri particulare c ˆ and se poate
aplica metoda compunerii. Totu¸ si urm˘ atoarea teorem˘ a ne asigur˘ a c˘ a metoda
compunerii discrete se poate aplica in general.

58 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Teorema 3. 1 FieXo variabil˘ a aleatoare care are densitatea f(x),x∈
∆,(∆⊆R)¸ si s˘ a consider˘ am o diviziune a lui ∆adic˘ a ∆ =∪m
i=1∆i,∆i∩
∆j=∅,∀i/negationslash=j.Presupunˆ and c˘ a pi=P(X∈∆i)>0,exist˘ a densit˘ at ¸ile
fi(x),nule pentru x /∈∆iastfel incˆ at
f(x) =m/summationdisplay
i=1pifi(x). (3.9)
Demonstrat ¸ie [10]. Deoarece pi=/integraltext
∆if(x)dxrezult˘ a c˘ a putem defini den-
sit˘ at ¸ile de repartit ¸ie
fi(x) =/braceleftBigg
f(x)
pi, daca x∈∆i,
0, daca x /∈∆i.(3.9/prime)
Fie unx∈∆,oarecare pentru care f(x)/negationslash= 0.Atunci exist˘ a un i,1≤i≤m
astfel incˆ at x∈∆i.Prin verificare direct˘ a se deduce c˘ a
f(x) =pifi(x) =f(x)
pipi=m/summationdisplay
j=1pjfj(x),(cacif j(x) = 0,∀j/negationslash=i)
¸ si teorema este demonstrat˘ a.
Metoda compunerii poate fi aplicat˘ a in combinat ¸ie cu metod a invers˘ a
(de ex. pentru simularea variabilelor Xidin exemplul 3.1) a¸ sa cum se va
vedea in multe cazuri ce vor fi tratate in continuare. Ea poate fi aplicat˘ a ¸ si
in combinat ¸ie cu metoda respingerii ce va fi tratat˘ a in continuare.
3.3 Metoda respingerii
Aceast˘ a metod˘ a (denumit˘ a in mod pesimistic ca metod˘ a a respingerii), ar
putea fi denumit˘ a ¸ si metoda accept˘ arii-respingerii. Ea are forma general˘ a
urm˘ atoare dac˘ a ne referim la simularea unei variabile ale atoareX.
Presupunem c˘ a se cunosc urm˘ atoarele elemente [10]:
– Se cunoa¸ ste un procedeu de simulare a unei variabile aleat oareNcare
ia valori naturale pozitive;
– Se cunosc metode pentru simularea unor variabile aleatoar eSi∈S,i≥
1,unde S este o familie de variabile aleatoare dat˘ a;
– Se cunoa¸ ste un predicat P(S1,S2,…,S n) care se poate calcula ∀Si,n;
(Acest predicat sau condit ¸ie trebuie s˘ a poat˘ a fi evaluat f ˘ ar˘ a calcule de mare
complexitate!);

3.3. METODA RESPINGERII 59
– Se cunoa¸ ste funct ¸ia Ψ astfel incˆ at X= Ψ({S1,S2,…,S n)},
P(S1,S2,…,S n) =true).
Cˆ and pentru o variabil˘ a aleatoare Xeste posibil s˘ a se construiasc˘ a cele
patru elemente cu propriet˘ at ¸ile precizate anterior, atu nci se poate construi
un algoritm pentru simularea lui Xsub forma general˘ a urm˘ atoare:
ALGRES=Algoritm General de Respingere
repeat
Simuleaz˘ a o valoare na luiN;
Simuleaz˘ a valorile de select ¸ie S1,S2,…,S ndinS;
untilP(S1,S2,…,S n) =true;
IaX= Ψ(S1,S2,…,S n).
S˘ a observ˘ am c˘ a dac˘ a P(S1,S2,…,S n) =false atunci mult ¸imea de vari-
abile aleatoare{S1,S2,…,S n}se respinge , de unde provine ¸ si numele de
metod˘ a de respingere. In aceea¸ si ordine de idei, se observ˘ a c˘ a dac˘ a pa=
P(P(S1,S2,…,S n) =true)),numit˘ a probabilitate de acceptare , este mare
(apropiat˘ a de 1), atunci algoritmul este bun;in caz contrar algoritmul este
lent.
Vom prezenta in continuare cˆ ateva propozit ¸ii care fundam enteaz˘ a algo-
ritmi de respingere pentru simularea unor variabile aleato are [2,10].
Teorema 3. 2 Fie dat˘ a o variabil˘ a aleatoare Xcare are densitatea de repartit ¸ie
f(x),x∈R,pe care dorim s˘ a o simul˘ am. Fie Yo alt˘ a variabil˘ a aleatoare ce
¸ stim s˘ a o simul˘ am ¸ si a c˘ arei densitate de repartit ¸ie es teh(x)astfel incˆ at den-
sit˘ at ¸ilef,hau acela¸ si suport S(adic˘ a iau valori diferite de zero pe aceea¸ si
mult ¸imeS⊂R). Presupunem c˘ a exist˘ a o constant˘ a α,0< α <∞,astfel
incˆ atf(x)≤αh(x),∀x∈S.In aceste condit ¸ii dac˘ a Ueste o variabil˘ a uni-
form˘ a 0−1independent˘ a de Y,atunci densitatea de repartit ¸ie a variabilei
Y, condit ¸ionat˘ a de 0≤U≤f(Y)/(αh(Y))este f.
Demonstrat ¸ie. Trebuie s˘ a demonstr˘ am c˘ a
P[(Y <x )|(0≤U≤f(Y)/(αh(Y))] =F(x) =/integraldisplayx
−∞f(v)dv.
Considerˆ and evenimentele A={Y < x},B={0≤U≤f(Y)/(αh(Y))},
ultima formul˘ a devine
P(A|B) =P(A∩B)
P(B)
unde
P(B) =∞/integraldisplay
−∞
f(v)/(αh(v))/integraldisplay
0du
h(v)dv=∞/integraldisplay
−∞f(v)
αh(v)h(v)dv=1
α, α> 1.

60 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
deci
P(A|B) =αx/integraldisplay
−∞
f(v)/(αh(v))/integraldisplay
0du
h(v)dv=αx/integraldisplay
−∞f(v)
αh(v)h(v) =x/integraldisplay
−∞f(v)dv.
Teorema este demonstrat˘ a. Aceast˘ a teorem˘ a este cunoscu t˘ a sub numele de
teorema inf˘ a¸ sur˘ atoarei deoarece condit ¸ia referitoare la αinseamn˘ a c˘ a graficul
densit˘ at ¸iif(x) se poate inf˘ a¸ sura cu graficul lui αh(x).
Din demonstrat ¸ie rezult˘ a c˘ a probabilitatea de acceptar e estepa= 1/α,
de unde rezult˘ a c˘ a pentru o metod˘ a a inf˘ a¸ sur˘ atoarei ne banal˘ a trebuie s˘ a
avemα>1.Procedura de respingere este format˘ a din urm˘ atoarele ele mente:
N= 2 (variabila aleatoare constant˘ a); S={U,Y};P(U,Y) =truedac˘ a
0≤U≤f(Y)/(αh(Y)); Ψ(U,Y) =Y,(adic˘ a proiect ¸ia ).
Exemplul 3.3 [10]. S˘ a consider˘ am densitatea de repartit ¸ie
Gamma (0,1,ν),0<ν < 1,numit˘ a repartit ¸ia gamma-standard cu νsubuni-
tar. S˘ a aplic˘ am metoda inf˘ a¸ sur˘ atoarei pentru simular ea variabilei gamma
notat˘ aX,folosind ca inf˘ a¸ sur˘ atoare densitatea Weib(0,1,ν).
Solut ¸ie. Densit˘ at ¸ile de repartit ¸ie sunt
f(x) =/braceleftBigg0, dacax< 0
1
Γ(ν)xν−1e−x, dacax> 0, h(x) =/braceleftbigg0, dacax< 0
νxν−1e−xν, dacax> 0.
(3.10)
In vederea determin˘ arii constantei αa inf˘ a¸ sur˘ atoarei analiz˘ am raportul
r(x) =f(x)
h(x)=1
νΓ(ν)e−x+xν.
Punctul de maxim al funct ¸iei r(x) estex0=ν1/(1−ν)de unde rezult˘ a
α=eζ(1−ν)
Γ(ν+ 1), ζ=νν
1−ν. (3.11)
Deci in final algoritmul pentru simularea lui Xeste
Algoritmul GAMRESM1 [10] (algoritm de respingere pentru vari-
abila gamma standard cu parametru subunitar)
Intrareν;Calculeaz˘ a c:= 1/ν, ζ:=νν
1−νa:=eζ(ν−1);
repeat
Genereaz˘ aUuniform 0−1;
Calculeaz˘ a Z:=−ln(U), Y:=Zc;{se genereaz˘ a Y;Weib(0,1,ν);}
Genereaz˘ a alt Uuniform 0−1;

3.3. METODA RESPINGERII 61
untilU≤aeZ−Y;
IaX:=Y.
Primul pas al algoritmului este un pas preg˘ atitor; in cazul cˆ and se simuleaz˘ a
o select ¸ie de volum n>1 asupra lui Xatunci acest pas se execut˘ a o singur˘ a
dat˘ a ¸ si numai ceilalt ¸i pa¸ si se execut˘ a de nori.
O alt˘ a metod˘ a de respingere se poate obt ¸ine din teorema ur m˘ atoare
[2,10].
Teorema 3. 3 FieXo variabil˘ a aleatoare care are funct ¸ia de repartit ¸ie de
forma
F(x) =cx/integraldisplay
−∞Q(φ(x))dR(x) (3 .12)
undeQ(z)este funct ¸ia de repartit ¸ie a unei variabile aleatoare Z,Z∈[0,M],
φ(x)este o funct ¸ie ce ia valori in [0,M](undeMpoate lua ¸ si valoarea ∞)
iarR(y)eate funct ¸ia de repartit ¸ie a unei variabile aleatoare Y,Y∈R,iar
variabileleZ,Ysunt independente stochastic. In aceste condit ¸ii funct ¸i a de
repartit ¸ie a variabilei Y,condit ¸ionat˘ a de Z≤φ(Y)esteF(x).
Demonstrat ¸ie [10]. Notˆ and ca in Teorema 3
A={Y <x},B={Z≤φ(Y)},P(A|B) =P(A∩B)
P(B), (3.12/prime)
ar trebui s˘ a demonstr˘ am c˘ a P(A|B) =F(x).S˘ a observ˘ am mai intˆ ai c˘ a
constantacdin (3.12) este o constant˘ a de normare adic˘ a
c=
+∞/integraldisplay
−∞Q(φ(x))dR(x)
−1
. (3.12/prime/prime)
S˘ a calcul˘ am acum numitorul din (3.12’). Avem
P(B) =+∞/integraldisplay
−∞
φ(x)/integraldisplay
0dQ(y)
dR(x) =∞/integraldisplay
−∞Q(φ(x))dR(x) =1
c.
In continuare avem
P(A|B) =cP(A∩B) =cx/integraldisplay
−∞
φ(t)/integraldisplay
0dQ(v)
dR(t) =cx/integraldisplay
−∞Q(φ(y))dR(y) =F(x).

62 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Teorema este demonstrat˘ a. Se observ˘ a din nou c˘ a probabil itatea de ac-
ceptare a algoritmului este pa=P(B).Este evident c˘ a teorema descrie un
procedeu de respingere ale c˘ arui elemente sunt u¸ sor de pre cizat.
Teorema r˘ amˆ ane valabil˘ a dac˘ a condit ¸ia (3.12) se scrie in termeni de den-
sit˘ at ¸i ¸ si anume
f(x) =cQ(φ(x))r(x), r(x) =R/prime(x). (3.13)
O form˘ a dual˘ a a teoremei se obt ¸ine dac˘ a F(x) este de forma [10]
F(x) =cx/integraldisplay
−∞(1−Q(φ(x)))dR(x);c=
+∞/integraldisplay
−∞(1−Q(φ(y))dR(y)
−1
(3.14)
cˆ and predicatul devine {Z≥φ(Y)}iar condit ¸ia (3.13) se scrie in termeni de
densit˘ at ¸i
f(x) =c(1−Q(φ(x))r(x). (3.13/prime)
S ¸i in acest caz avem pa=P(Z≥φ(Y)) = 1/c.
Exemplul 3.4 [5,7]. Fie Xvariabila aleatoare a c˘ arei densitate de
repartit ¸ie este
f(x) =c(1−e−λx)e−µx, x≥0 (3 .13/prime/prime)
adic˘ a de forma (3.13) ¸ si se cere s˘ a se precizeze un algorit m de respingere
pentru simularea lui X.
Solut ¸ie. Se observ˘ a c˘ a φ(x) =x¸ siQ(z) = 1−e−λz,z >0,deci
c=
+∞/integraldisplay
0(1−e−λx)e−µxdx
−1
= [λ
λ+µ]−1.
Algoritmul de respingere penru simularea lui Xeste
Algoritmul RESP34
repeat
Genereaz˘ aZ;Exp(λ);
Genereaz˘ aY;Exp(µ);
untilZ≤Y;
IaX:=Y.
Acest algoritm este rapid dac˘ a µ<<λ.
Dac˘ a se calculeaz˘ a in detalii funct ¸ia de repartit ¸ie F(x) a densit˘ at ¸ii (3,13”)
se poate constata c˘ a rezolvarea ecuat ¸iei F(X) =Unecesit˘ a o abordare
numeric˘ a ¸ si deci metoda invers˘ a nu este recomandabil˘ a.

3.3. METODA RESPINGERII 63
Urm˘ atoarea teorem˘ a [2, 10], ce va fi numit˘ a teorema ¸ sirului descendent,
datorat˘ a lui Forsythe, fundamenteaz˘ a un algoritm introd us de John von
Neumann pentru simularea exponent ¸ialei Exp(1), algoritm ce va fi prezentat
intr-o sect ¸iune urm˘ atoare.
Teorema 3. 4 Presupunem date variabilele aleatoare Zi;G(x),i≥1¸ si
Z0;G0(x),independente stochastic. Atunci, urm˘ atoarele afirmat ¸ii sunt
adev˘ arate
(1) Dac˘ axeste fixat ¸ si num˘ arul keste fixat, atunci
P(x≥Z1≥Z2≥…≥Zk−1<Zk) =[G(x)]k−1
(k−1)!−[G(x)]k
k!. (3.15)
(2) Dac˘ axeste fixat ¸ si Keste indicele aleator la care se ”rupe” sub¸ sirul
descendent (ca la pct (1)), atunci
P(K=nr.impar ) =P(K(mod2) = 1) =e−G(x). (3.15/prime)
(3) Dac˘ a sub¸ sirul descendent este Z0≥Z1≥…≥ZK−1<ZK(adic˘ a se
rupe la unKaleator ¸ si incepe cu Z0;G0(x)), atunci
P[Z0<x|K(mod2) = 1] =1
pax/integraldisplay
−∞e−G(t)dG0(t), (3.16)
undepaeste constanta de normare
pa=
+∞/integraldisplay
−∞e−G(X)dG0(x)
−1
. (3.16/prime)
Demonstrat ¸ie [10]. (1) Fie evenimentele A={x≥Z1≥Z2≥…≥Zk−1},
B={x≥Z1≥Z2≥…≥Zk}.Se observ˘ a c˘ a B⊂A¸ siP(Zi≤x) =G(x).
Deoarece sub¸ sirul care define¸ ste Acont ¸ine numai una din cele ( k−1)! ordini
relative in care se pot afla cele k−1 variabile aleatoare Zi,1≤i≤k−1,
rezult˘ a c˘ a
P(A) =(G(x))k−1
(k−1)!.
Pentru a demonstra (3.15) s˘ a observ˘ am c˘ a probabilitatea din membrul stˆ ang
se scrieP(A\B) ¸ si deoarece A⊂Bavem
P(A\B) =P(A)−P(B) =[G(x)]k−1
(k−1)!−[G(x)]k
k!

64 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
¸ si afirmat ¸ia (1) este demonstrat˘ a.
Afirmat ¸ia (2) rezult˘ a din urm˘ atoarele relat ¸ii:
P(K=nr.impar ) =P(K= 1) +P(K= 3) +…=
= 1−G(x)
1!+[G(x)]2
2!−[G(x)]3
3!+…=e−G(x).
Pentru a demonstra (3) s˘ a observ˘ am c˘ a atunci cˆ and Z0este aleator avem
P(K=nr.impar ) =P(Kmod 2 = 1) =∞/integraldisplay
−∞e−G(x)dG0(x)
de unde folosind padat de (3.16’) obt ¸inem
P(Z0<x|K=nr.impar ) =1
pax/integraldisplay
−∞e−G(t)dG0(t)
¸ si teorema este demonstrat˘ a.
Teorema reprezint˘ a un prototip complex de metod˘ a de respi ngere; se
atribuie ca valoare a lui XvaloareaZ0dinultimul sub¸ sir descendent care
este acceptat.
Algoritmul de respingere rezultat din teorem˘ a este urm˘ ar orul
Algoritmul RESPSIRD bazat pe siruri descendente.
repeat
Genereaz˘ aZ0;G0(x);IaZ∗=Z0,K:= 1;genereaz˘ aZ1;G(x);
whileZ0≥Z1do begin
K:=K+ 1;Z0:=Z1;
Genereaz˘ aZ1;G(x);
end;
untilKmod 2 = 1;
IaX:=Z∗.
S˘ a analiz˘ am acum performant ¸a algoritmului. Observ˘ am c ˘ apane d˘ a
informat ¸ie asupra vitezei algoritmului: cu cˆ at paeste mai mare, cu atˆ at mai
repede ajungem s˘ a accept˘ am un Z0(cˆ andK=nr.impar ). Darpa(prob-
abilitatea de acceptare) nu este de ajuns pentru a caracteri za performant ¸a
algoritmului; ar trebui s˘ a vedem ¸ si cˆ ate numere Zi,i≥0 sunt necesare pen-
tru a obt ¸ine un Z0−acceptat.Vom utiliza notat ¸iile:
preste probabilitatea de a respinge un Z0(de a respinge un sub¸ sir!);
avempr= 1−pa;

3.3. METODA RESPINGERII 65
Na= num˘ arul de valori Zi,i≥1 dintr-un sub¸ sir in care se accept˘ a un
Z0;
Nr= num˘ arul de valori Zi,i≥1 dintr-un sub¸ sir in care se respinge Z0;
N∗= Num˘ arul total de valori de select ¸ie Zi,i≥0 necesare pˆ an˘ a la
acceptarea unui Z0.
Folosind aceste notat ¸ii putem calcula valorile medii ale n umerelorN.
Avem
E(N∗) =paE(Na) +pr[E(Nr) +E(N∗)]
de unde
E(N∗) =1
pa[E(Na)pa+E(Nr)pr].
Dar
E(Na)pa+E(Nr)pr=E(K+ 1), deci E (N∗) =1
paE(K+ 1).
Se observ˘ a c˘ a
E(K+ 1) =∞/summationdisplay
k=1(k+ 1)+∞/integraldisplay
−∞/bracketleftBigg
(G(x))k−1
(k−1)!−(G(x))k
k!/bracketrightBigg
dG0(x) =
=∞/summationdisplay
k=0(k+ 2)+∞/integraldisplay
−∞(G(x))k
k!dG0(x)−∞/summationdisplay
k=1(k+ 1)+∞/integraldisplay
−∞(G(x))k
k!dG0(x) =
= 1 ++∞/integraldisplay
−∞∞/summationdisplay
k=0(G(x))k
k!dG0(x) = 1 ++∞/integraldisplay
−∞eG(x)dG0(x).
In concluzie
E(N∗) =1
pa
1 ++∞/integraldisplay
−∞eG(x)dG0(x)
. (3.17)
Exemplul 3.5 [10]. Presupunem c˘ a in Teorema 3.4, variabilele Zi,i≥0
sunt toate uniforme 0 −1 ¸ si independente, adic˘ a Zi=Ui,i≥0.Atunci,
conform teoremei avem
P(U0≤x|K=nr.impar ) =1
pax/integraldisplay
0e−xdx, p a=1/integraldisplay
0e−xdx= 1−e−1.

66 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Cu alte cuvinte U0−acceptat are funct ¸ia de repartit ¸ie
F(x) =

0, daca x< 0,
1−e−x
1−e−1, daca 0≤x≤1,
1, daca x> 1(3.18)
care este repartit ¸ia exponent ¸ial˘ a negativ˘ a de parametru 1, trun chiat˘ a pe in-
tervalul [0,1].Deci simularea variabilei care are funct ¸ia de repartit ¸ie F(x)
din (3.18) se poate face cu algoritmul RESPSIRD. De fapt, intr-un capitol
urm˘ ator vom ar˘ ata cum acest algoritm va fi completat astfel incˆ at s˘ a per-
mit˘ a simularea unei variabile exponent ¸iale negativ˘ a ne trunchiat˘ a. Num˘ arul
mediuE(N∗) de variabile{Zi}i≥0ce trebuie generate este conform formulei
(3.17)
E(N∗) =1
1−e−1(1 +1/integraldisplay
0exdx) =e
1−e−1=e2
e−1. (3.17/prime)
3.4 Alte metode
A¸ sa cum am ment ¸ionat, metodele de simulare a variabilelor aleatoare ne-
uniformeX, pot fi obt ¸inute fie prin transformarea unor variabile aleat oare
uniforme 0−1,fie sub forma
X=T(Y1,Y2,…,Y n) (3 .19)
unde variabilele Yipotfi simulate. De fapt, metodele prezentate in primele
trei subsect ¸iuni ale acestui capitol sunt toate de acela¸ s tip: simularea lui X
sereduce la simularea unor variabile mai simple Yi,1≤i≤n,unde ¸ sin
poate fi aleator.
In aceast˘ a sect ¸iune vom prezenta metode de simulare a unor variabile
aleatoare particulare care au tocmai astfel de propriet˘ at ¸i: repartit ¸iile lor
deriv˘ a din alte repartit ¸ii mai simple.
In tabelul 3.2. (vezi [10]) se dau cˆ ateva repartit ¸ii de pro babilitate a c˘ aror
simulare se realizeaz˘ a prin transform˘ ari simple de varia bileUuniforme 0−1
dar nu prin metoda invers˘ a. In ultima coloan˘ a se precizeaz ˘ a transformarea
T.

3.4. ALTE METODE 67
Nr. Numele Densitatea de Transformarea T
crt. repartit ¸iei repartit ¸ie
1 Normal˘ a f(x) =1√
2πe−x2/2X=/summationtext12
i=1Ui−6
N(0,1)−∞<x<∞
2 Modul f(x) =/braceleftbigg
1−|x|, x∈[−1,1]
0,altfelX=U1−U2
3 Repartit ¸ia f(x) =/braceleftbigg
nxn−1, x∈[0,1]
0,altfelX= max{U1,U2,…,U n}
maximului
4 Repartit ¸ia f(x) =/braceleftbigg
n(1−x)n−1, x∈[0,1]
0,altfelX= min{U1,U2,…,U n}
minimului
5 Repartit ¸ia f(x) =/braceleftbiggo, dacax< 0
1
Γ(k), dacax≥0X=−ln{/producttextk
i=1Ui}
Erlang (k)k∈N+
Tabelul 3.2. Repartit ¸ii simulate prin transform˘ ari de un iforme
Variabilele uniforme Uicare intervin in ultima coloan˘ a a tabelului sunt
presupuse independente. S˘ a vedem cum se justific˘ a metodel e prezentate
sintetic in tabel.
1. Aici se folose¸ ste teorema limit˘ a central˘ a intr-o forma simplificat˘ a ¸ si
anume: dac˘ a{Vn}n∈Neste un ¸ sir de variabile aleatoare independente ¸ si
identic distribuite care au momente de primele dou˘ a ordine ¸ si dac˘ a not˘ am
Sn=n/summationtext
i=1Vi,atunci
limn→∞P/parenleftBigg
Sn−E(Sn)/radicalbig
Var(Sn)<x/parenrightBigg
=1√
2π/integraldisplayx
−∞e−t2
2dt. (3.20)
In membrul al doilea este funct ¸ia de repartit ¸ie normal˘ a N(0,1).Dac˘ a con-
sider˘ am ca variabile Vivariabilele uniforme Uiavem
E(Ui) =1
2, Var (Ui) =1
12.
Viteza de convergent ¸˘ a in (3.20) depinde de viteza de gener are a variabilelor
Vi.In cazul cˆ and Vi=Uimembrul stˆ ang din (3.20) se apropie suficient
de mult de funct ¸ia de repartit ¸ie normal˘ a N(0,1) din membrul drept dac˘ a

68 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
n≥10.Luˆ andn= 12 se obt ¸ine expresia din ultima coloan˘ a a tabelului
(3.20) care are (aproximativ!) repartit ¸ia normal˘ a N(0,1).
Densitatea de repartit ¸ie normal˘ aN(m,σ) este
g(x) =1√
2πσe−(x−m)2
2σ2. (3.21)
Notˆ andYvariabilaN(m,σ) avem
m=E(Y), σ2=Var(Y). (3.21/prime)
Dac˘ a not˘ am Z;N(0,1) atunci se poate ar˘ ata cu u¸ surint ¸˘ a c˘ a intre Y¸ siZ
au loc relat ¸iile
Y=m+Zσ, Z =Y−m
σ(3.21/prime/prime)
de unde rezult˘ a c˘ a simularea lui Yse reduce la simularea lui Z,care la rˆ andul
s˘ au se simuleaz˘ a folosind teorema limit˘ a central˘ a ca in tabel˘ a.
2. Repartit ¸ia modul se obt ¸ine pe o cale analog˘ a celei folosite in exercit ¸iul
E2.6, Cap.2.
3. Justificarea este urm˘ atoarea
F(x) =P(max{U1,U2,…,U n}<x) =
=P(X1<x,…,U n<x) =

0, dacax< 0,
xn, dacax∈[0,1],
1, dacax> 1
¸ si derivˆ and F(x) se obt ¸ine densitatea din tabel.
4. Observ˘ am c˘ a
P(min{Ui,U2,…,U n}<x) = 1−P(max{U1,U2,…,U n}≥x) =
= 1−(1−x)n,∀x∈[0,1]
¸ si derivˆ and ultima expresie se obt ¸ine densitatea de repa rtit ¸ie din tabel.
5. Repartit ¸ia Erlang (k),k∈N+, este un caz particular al repartit ¸iei
Gamma (α,λ,ν ), α,λ,ν∈R+care are densitatea de repartit ¸ie [3, 6, 7, 10]
f(x) =/braceleftBigg0, dacax<α,
λν
Γ(ν)(x−α)ν−1e−λ(x−α), dacax≥α.(3.22)
S˘ a not˘ am cu YvariabilaGamma (α,λ,ν ).Relat ¸ia dintre Y¸ sivariabila gama
standardX;Gamma (0,1,ν) este
Y=α+X
λ, X = (Y−α)λ. (3.22/prime)

3.4. ALTE METODE 69
Pentru a ar˘ ata c˘ a variabila Erlang (k) (care este gamma standard
Gamma (0,1,k),k∈N+) se simuleaz˘ a ca in tabel˘ a, vom demonstra teorema
Terema 3. 5 Dac˘ aZi,1≤i≤ksunt variabile Exp(1)independente,
atunci variabila
X=k/summationdisplay
i=1Zi (3.23)
este o variabil˘ a Erlang (k).
Demonstrat ¸ie [10]. Vom folosi tehnica funct ¸iei caracteristice ¸ si vom a r˘ ata
c˘ a funct ¸ia caracteristic˘ a a variabilei Xdat˘ a de (3.23) este aceea¸ si cu funct ¸ia
caracteristic˘ a a variabilei Erlang (k) de unde se deduce c˘ a cele dou˘ a repartit ¸ii
coincid. Pentru variabila Erlang (k) funct ¸ia caracteristic˘ a este
ϕ(t) =E[eitX] =∞/integraldisplay
0eitx 1
(k−1)!xk−1e−xdx=
=1
(k−1)!/integraldisplay∞
0xk−1e−x(1−it)dx==1
(k−1)!Γ(k)
(1−it)k=1
(1−it)k.
Pe de-alt˘ a parte funct ¸ia caracteristic˘ a a variabilei Xdin (3.23) este
ϕX(t) =e[eit/summationtext
jZj] =k/productdisplay
j=1ϕZj(t) = (ϕZ(t))k.
Dar
ϕZ(t) =E[eitZ] =∞/integraldisplay
0e−(1−it)xdx=1
1−it
deci
ϕX(t) =/parenleftbigg1
1−it/parenrightbiggk
,
adic˘ a aceea¸ si cu ϕ(t), ceea ce demonstreaz˘ a teorema.
Folosind aceea¸ si tehnic˘ a de demonstrat ¸ie se poate demon stra ¸ si urm˘ atoarea
teorem˘ a [10].
Teorema 3. 6 Dac˘ aX;Gamma (0,1,ν),Y;Gamma (0,1,µ)¸ siX¸ si
Ysunt independente stochastic, atunci
(Z=X+Y);Gamma (0,1,ν+µ).

70 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Cˆ and o familie de variabile aleatoare are proprietatea c˘ a suma a dou˘ a vari-
abile independente este tot o variabil˘ a din aceea¸ si famil ie spunem c˘ a aceasta
este o familie stabil˘ a de variabile aleatoare. Teorema 3.6 spune deci c˘ a fa-
milia variabilelor aleatoare gamma standard este stabil˘ a .
Tot cu ajutorul funct ¸iei caracteristice se poate demonstr a teorema
Teorema 3. 7 Familia variabilelor normale este stabil˘ a.
Demonstrat ¸ie. Se folose¸ ste faptul c˘ a dac˘ a X;N(m,σ) atunci funct ¸ia sa
caracteristic˘ a este ϕX(t) =E[eitX] =eitm−t2σ2
2.Asem˘ an˘ ator dac˘ a Y;
N(p,λ) atunciϕY(t) =eitp−t2λ2
2, iar dac˘ aX,Y sunt independente atunci
ϕX+Y(t) =eit(m+p)−t2(σ2+λ2)
2,ceea ce inseamn˘ a c˘ a ( X+Y);N(m+
p,√
σ2+λ2).
3.4.1 Simularea repartit ¸iilor inrudite cu repartit ¸ia
normal˘ a
Vom defini acum o serie de variabile aleatoare care deriv˘ a di n alte variabile
aleatoare ¸ si care au important ¸˘ a in statistica matematic ˘ a.
Exemple 3.6. Repartit ¸ii inrudite cu repartit ¸ia normal˘ a [5, 7,
10].
Exemplul 3.6.1. Repartit ¸ia χ2.Dac˘ aZi,1≤i≤fsunt variabile
normaleN(0,1) independente atunci
χ2=f/summationdisplay
i=1Z2
i (3.24)
se nume¸ ste variabil˘ a hi patrat centrat˘ a cu fgrade de libertate notat˘ aχ2
f.
Dac˘ aZi;N(mi,1) atunci variabila (3.24) se nume¸ ste variabil˘ a hi patrat
necentrat˘ a cu f grade de libertate ¸ si cu parametrul de exce ntricitateδ,notat˘ a
χ2
f,δ,unde
δ2=f/summationdisplay
i=1m2
i. (3.24/prime)
Se arat˘ a c˘ a variabila χ2
fcentrat˘ a este o variabil˘ a de tip Gamma (0,1
2,f
2).For-
mula (3.24) permite simularea direct˘ a, pornind de la definit ¸ie a variabilelor
χ2
f,χ2
f,δ.

3.4. ALTE METODE 71
Exemplul 3.6.2. Dac˘ aZ;N(0,1) este independent˘ a de variabila hi
patratχ2
fatunci variabila
tf=Z/radicalbigg
χ2
f
f(3.25)
se nume¸ ste variabilata lui Student cu fgrade de libertate. Dac˘ a in (3.25)
in loc deχ2
fse introduce χ2
f,δatunci se obt ¸ine variabila notat˘ a tf,δcare
se nume¸ ste variabilatStudent ne centrat˘ a cu fgrade de libertate ¸ si cu
parametrul de excentricitate δ.Variabilele de tip tStudent se simuleaz˘ a deci
direct cu formule de tipul (3.25).
Exemplul 3.6.3. Dac˘ a variabilele χ2
f1,χ2
f2sunt independente atunci
variabila
Ff1,f2=f2χf1
f1χf2(3.26)
se nume¸ ste variabila Fa lui Snedecor centrat˘ a cu f1,f2grade de libertate (in
notat ¸ia indicilor conteaz˘ a ordinea!). Dac˘ a in (3.26) se folose¸ ste cˆ ate una din
χf1,δ1,χf2,δ2sau ambele, atunci se obt ¸in variabilele FSnedecor simplu ne-
centrateFf1,f2;δ1,0,Ff1,f2;0,δ2,cu parametri corespunz˘ atori de excentricitate,
sau variabila FSnedecor dublu necentrat˘ a Ff1,f2;δ1,δ2.Variabilele Fpot fi de
asemenea simulate direct prin formule de tipul (3.26).
In exemplele precedente mediile sunt m= 0 saum/negationslash= 0 iar dispersiile
suntσ=σ2= 1.
Exemplul 3.7 [10]. Variabila aleatoare pozitiv˘ a Yse nume¸ ste lognor-
mal˘ aLN(µ,σ) de parametri µ,σdac˘ a variabila X=log(Y) este normal˘ a
N(µ,σ).Avem deci densit˘ at ¸ile
X;f(x) =1√
2πσe−(x−µ)2
2σ2,x∈R;
Y;g(y) =1√
2πyσe−(log(y)−µ)2
2σ2,y∈R+.
Calculˆ and integralele corespunz˘ atoare, in care se fac sc himb˘ ari de variabile
potrivite, se obt ¸in urm˘ atoarele relat ¸ii
m=E[Y] =eµ+σ2/2, s2=Var[Y] =m2(eσ2−1) (3.27)
de unde prin rezolvarea acestui sistem se obt ¸in formulele
µ=log(m)−1
2log/bracketleftBigg
s2
m2+ 1/bracketrightBigg
, σ2=log/bracketleftBigg
s2
m2+ 1/bracketrightBigg
. (3.27/prime)

72 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Dac˘ a se dau media m¸ si dispersia s2pentru variabila lognormal˘ a Yatunci
mediaµ¸ si dispersia σ2pentruXse calculeaz˘ a cu formulele (3.27’); deci
simularea variabilei Yse realizeaz˘ a cu algoritmul simplu
Algoritmul LNORM pentru simularea lognormalei.
Intrarem,s2;calculeaz˘ aµ,σ; (acesta este un pas pregatitor!);
Genereaz˘ a Z;N(0,1); ( ca in tabelul 3.1);
Calculeaz˘ a X=µ+Zσ; (undeσ=√
σ2);
IaY=eX.(Y;LN(µ,σ)).
•Familia de variabile de tip Johnson [5, 7]. Din aceasta familie fac
parte o serie de variabile ce se obt ¸in prin transform˘ ari de variabile normale
X;N(m,σ).Aceste transform˘ ari sunt:
Y=λeX+ξ,-variabila lognormal˘ a;
Y=λ/bracketleftBig
1 +eX/bracketrightBig−1+ξ-variabila logit normal˘ a;
Y=λsinh (X) +ξ-VariabilaSinh−1normal˘ a ,
sinh(x) =ex−e−x
2,undeλ>0,ξ≥0,aceste constante alegˆ anduse de obicei
astfel incˆ at E{Y}= 0, Var{Y}= 1.
Variabila logonormal˘ a a fost studiat˘ a mai sus,variabila logit normal˘ a este
de tip logistic˘ a, iar variabila Sinh−1normal˘ a este de tip sinus hiperbolic.
3.5 Simularea unor variabile particulare
In sect ¸iunile precedente am prezentat diverse metode, une le generale, pen-
tru simularea variabilelor aleatoare ne uniforme. In aceas t˘ a sect ¸iune vom
prezenta metode pentru simularea tipurilor de variabile al eatoare particulare,
bazate fie pe metodele generale, fie pe anumite particularit˘ at ¸i, dar care con-
duc la algoritmi de regul˘ a mai buni decˆ at cei ilustrat ¸i in exemplele prezentate
pˆ an˘ a acum. (A se vedea [2, 3, 5, 6, 7, 10, 11]).
3.5.1 Repartit ¸ia exponent ¸ial˘ a
Este suficient s˘ a ne ocup˘ am de repartit ¸ia variabilei Z;Exp(1) a c˘ arei
densitate de repartit ¸ie este
f(x) =/braceleftbigg0, dacax≤0
e−x, dacax> 0,(3.28)
c˘ aci simularea variabilei X;Exp(λ) se realizeaz˘ a cu X=Z
λ.Metoda
invers˘ a pentru simularea lui Z,adic˘ aZ=−log(U),nu este recomandabil˘ a
deoarece dac˘ a Ueste apropiat de zero atunci log(U) nu se poate calcula. De

3.5. SIMULAREA UNOR VARIABILE PARTICULARE 73
aceea vom prezenta o metod˘ a de respingere datorat˘ a lui John von Newmann
care se bazeaz˘ a pe teorema urm˘ atoare.
Teorema 3. 8 S˘ a lu˘ am in teorema sub¸ sirului descendent (Teorema 3.4),
Z0=U0,Zi=Ui,i≥1,undeU0,Uisunt uniforme 0−1.Dac˘ a not˘ am cu N
num˘ arul aleator de sub¸ siruri descendente respinse pˆ an˘ a cˆ and se accept˘ a un
sub¸ sir, atunci X=N+Z0;Exp(1),undeZ0este cel acceptat (din ultimul
sub¸ sir descendent).
Demonstrat ¸ie [10]. Din Exemplul 3.5 de mai sus, ret ¸inem c˘ a pentru
x∈[0,1] avem
P(Z0≤x|K=nr.impar ) =1
pax/integraldisplay
0e−xdx=F(x) =1−e−x
pa, pa= 1−e−1,
unde F(x) este dat de (3.18). De aici rezult˘ a c˘ a probabilit atea de a respinge
un ¸ sir descendent (de forma Z0≥Z1≥…≥ZK−1<ZK) estepr= 1−pa=
e−1.Deci,P(N=n) =e−n(1−e−1).R˘ amˆ ane s˘ a ar˘ at˘ am c˘ a
P(N+Z0≤x) =/braceleftbigg0, dacax< 0
1−e−x, dacax≥0.(3.28/prime)
Intr-adev˘ ar, dac˘ a pentru un x>0 dat not˘ am x=k+z,k= [x],z∈[0,1)
(k= partea intreag˘ a) atunci avem
P(N+Z0≤x) =P(N+Z0≤k+z) =P(N <k ) +P(N=k,Z0≤z) =
=k−1/summationdisplay
j=0(1−e−1)e−j+ (1−e−1)e−k
1−e−1z/integraldisplay
0e−udu=
= 1−e−k+e−k(1−e−z) = 1−e−(k+z)= 1−e−x, x> 0
¸ si teorema este demonstrat˘ a.
De aici se deduce urm˘ atorul algoritm pentru simularea lui Z.
Algoritmul EXRJ de simulare a exponent ¸ilalei prin metoda respingerii
Init ¸ializeaz˘ a N:= 0;
repeat
genereaz˘ aU0,U1uniforme 0−1¸ si independente; Ia U∗:=U0,K:= 1;
whileU0≥U1do begin
K:=K+ 1, U0:=U1,genereaz˘ aU1uniform 0−1;
end;(s-a simulat un sub¸ sir descendent);

74 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
ifKmod 2 = 0thenN:=N+ 1; (se num˘ ar˘ a sub¸ sirurile respinse);
untilKmod 2 = 1;
IaZ:=N+U∗.
Pe lˆ ang˘ a probabilitatea de acceptare pa= 1−e−1,performant ¸a algorit-
mului este caracterizat˘ a ¸ si de num˘ arul N∗al variabilelor uniforme {Ui}i≥0
necesare a fi generate pˆ an˘ a cˆ and se obt ¸ine o valoare de sel ect ¸ie exponent ¸ial˘ a
Z.Conform (3.17) avem
E(N∗) =1
pa(1 +1/integraldisplay
0ezdz) =1
1−e−1(1 +e−1) =e2
e−1≈3.8,(3.17/prime)
adic˘ a trebuie simulate in medie aproape 4 numere uniforme p entru a obt ¸ine
o valoare de select ¸ie exponent ¸ial˘ a Z.
3.5.2 Repartit ¸ia Gama
Repartit ¸iaGamma (α,λ,ν ) are densitatea dat˘ a de formula (3.22) iar formula
(3.22’) spune c˘ a este necesar ¸ si esent ¸ial s˘ a construim m etode pentru simu-
larea unei repartit ¸ii Gamma standard, adic˘ aGamma (0,1,ν), ν∈R+.Dac˘ a
ν=k∈N+atunci repartit ¸ia gama devine repartit ¸ie Erlang ¸ si simu larea
acestei variabile (notat˘ a Ek) se face simplu prin insumare de exponent ¸iale,
conform Teoremei 3.5. Dac˘ a 0 <ν < 1 atunci t ¸inˆ and seama de Exemplul 3.3,
simularea variabilei Ganna (0,1,ν) se realizeaz˘ a cu o metod˘ a de respingere
bazat˘ a pe inf˘ a¸ surarea cu o densitate Weibull (0,1,ν).
In aceast˘ a subsect ¸iune vom prezenta ¸ si alte metode pentr u simularea
variabilelor gamma [10].
•O metod˘ a de compunere-respingere pentru cazul 0<ν < 1.
Vom scrie densitatea de repartit ¸ie Gamma (0,1,ν),0<ν < 1 dat˘ a de expre-
sia
f(x) =/braceleftBigg0, dacax< 0,
1
Γ(ν)xν−1e−x, dacax≥0,
sub forma
f(x) =p1f1(x) +p2f2(x),
f1(x) =/braceleftBigg
f(x)
p1, dacax∈[0,1],
0, altfel, f2(x) =/braceleftBigg
f(x)
p2, dacax∈(1,+∞),
0, altfel
(3.29)
p1=Γ(1;ν)
Γ(ν), p2= 1−p1=Γ(ν)−Γ(1;ν)
Γ(ν),

3.5. SIMULAREA UNOR VARIABILE PARTICULARE 75
Γ(ν) =∞/integraldisplay
0xν−1e−xdx,Γ(1;ν) =/integraldisplay1
0xν−1e−xdx.
S˘ a not˘ amX1;f1(x), X2;f2(x).Atunci are loc urm˘ atoarea teorem˘ a
Teorema 3. 9 VariabilaX1se simuleaz˘ a folosind Teorema 3.4 a sub¸ sirului
descendent unde Z0=U1/ν
0, Zi=Ui,cu{Ui}i≥0uniforme 0−1,iarX2
se simuleaz˘ a cu ajutorul Teoremei 3.3 duale unde densitate af2(x)este de
forma
f2(x) =c(1−Q(x))r(x), x> 0, c=1
e(Γ(ν)−Γ(1;ν)),
r(x) =/braceleftbigg0, dacax< 1
e−x+1, dacax≥1, Q(x) =/braceleftbigg0, dacax< 1,
1−xν−1, dacax≥1.
Demonstrat ¸ie [10]. Intr-adev˘ ar, din enunt ¸ul teoremei rezult˘ a c˘ a pen trux∈
[0,1], in Teorema 3.4 avem
G0(x) =P(U1/ν
0<x) =P(U0<xν) =xν,
H(x) =P(U0<x|K=nr.impar ) =1
pax/integraldisplay
0e−tdG0(t) =1
pax/integraldisplay
0e−tνtν−1dt
pa=1/integraldisplay
0e−tνtν−1dt=νΓ(1;ν),
de unde derivˆ and H(x) avem
H/prime(x) =h(x) =e−xxν−1
Γ(1;ν)=f1(x), x∈[0,1]
¸ si prima parte a teoremei este demonstrat˘ a.
Cea de-a doua parte a teoremei se demonstreaz˘ a dac˘ a scriem forma de-
taliat˘ a a lui f2(x) adic˘ a
f2(x) =/braceleftBigg0, dacax< 1,
xν−1e−x
Γ(ν)−Γ(1;ν), x≥1
care se observ˘ a c˘ a se reprezint˘ a sub forma din enunt ¸ul te oremei.
Demonstrat ¸ia este complet˘ a.

76 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Presupunˆ and c˘ a s-au calculat in prealabil
g= Γ(ν), g1= Γ(1;ν), p1=g1
g, p2=g−g1
g,
c=1
e(Γ(ν)−Γ(1;ν));a=1
ν, b=−1
1−ν
algoritmul de simulare al variabilei X;Gamma (0,1,ν),0<ν < 1,este
Algoritmul GAMCOMNL1 pentru simularea variabilei gamma de
parametru subunitar prin compunere ¸ si respingere:
Intrarep1,p2;
Genereaz˘ aU;uniform 0−1;
ifU≤p1then begin
Genereaz˘ aX1;f1(x); IaX:=X1;
end
else begin
Genereaz˘ aX2;f2(x); IaX:=X2;
end.
Variabilele X1¸ siX2se genereaz˘ a cu algoritmii de respingere prezentat ¸i
in continuare.
Algoritmul GAMRESNL1 pentru simularea variabilei X1:
repeat
Genereaz˘ aU:=random ; (U=uniform 0−1);
IaZ0:=Ua;Genereaz˘ aZ1:=random ;IaK:= 1;Z∗:=Z0;
WhileZ0≥Z1do begin
Z0:=Z1;Genereaz˘ aZ1:=random ;K:=K+ 1;
end;
untilKmod 2 = 1;
IaX1:=Z∗.
Pentru acest algoritm avem
pa=νΓ(1;ν);E(N∗
1) =1
pa(1 +/integraldisplay1
0νtν−1etdt)
ultima integral˘ a putˆ and fi calculat˘ a numeric (de ex ¸ si cu metoda Monte
Carlo, cf. Cap.6).
Algoritmul GAMRESNL2 pentru simularea variabilei X2:
repeat
Genereaz˘ aU:=random ;IaZ:=Ub;

3.5. SIMULAREA UNOR VARIABILE PARTICULARE 77
Genereaz˘ aX0;Exp(1);IaY:=X0+ 1; (Y;r(x));
untilY≤Z;
IaX2:=Y.
Pentru acest algoritm avem
p2= 1−p1;E(N∗
2) =2
p2
deci num˘ arul mediu de variabile Zi,i≥0,Z,Y necesare pentru a genera in
final unXeste
E(N∗) =p1E(N∗
1) +p2E(N∗
2) =p1E(N∗
1) + 2.
•Metode pentru simularea variabilei Gamma (0,1,ν), ν > 1.Vom
prezenta doi algoritmi de respingere bazat ¸i pe metoda inf˘ a¸ sur˘ atoarei.
G1.S˘ a consider˘ am X;f(x);Gamma (0,1,ν),ν > 1 ¸ si s˘ a lu˘ am ca
inf˘ a¸ sur˘ atoare densitatea h(x);Exp(1
ν) adic˘ a
h(x) =/braceleftbigg0, dacax< 0,
1
νe−x
ν, dacax≥0.(3.30)
Analizˆ and raportul
r(x) =f(x)
h(x)=νxν−1e−x
Γ(ν)e−x
ν, ν >1
se constat˘ a c˘ a acesta are ca punct de maxim x=ν, deci constanta αdin
Teorema 3.2 (a inf˘ a¸ sur˘ atoarei) este
α=r(ν) =ννe1−ν
Γ(ν).
Algoritmul de respingere in acest caz este simplu de constru it ¸ si nu-l mai
prezent˘ am. Probabilitatea de acceptare este deci
pa=Γ(ν)
ννe1−ν≈/radicalBigg
e22π√ν−1
unde in ultima relat ¸ie s-a folosit aproximarea lui Stirlin g pentruν→∞
adic˘ a
Γ(ν)≈(ν−1)ν−1e−(ν−1)/radicalBig
2π(ν−1),
deci aceast˘ a probabilitate scade de ordinul√ν.

78 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
G2Algoritmul precedent este lent pentru νfoarte mare. De aceea vom
prezenta in acest caz o alt˘ a metod˘ a de respingere, bazat˘ a pe inf˘ a¸ surarea cu
odensitate Cauchy nonstandard trunchiat˘ a pe [0,∞) de forma
h(x) =k
1 +(x−(ν−1))2
c, x≥0 (3 .31)
undekeste o constant˘ a de normare. Putem enunt ¸a teorema [10]
Teorema 3. 10 Dac˘ a inf˘ a¸ sur˘ am densitatea Gamma (0,1,ν), ν > 1,cu den-
sitateah(x)dat˘ a de (3.31) atunci pentru c≥2ν−1avem
r(x) =f(x)
h(x)≤α=1
kΓ(ν)(ν−1)ν−1e−(ν−1). (3.31/prime)
Demonstrat ¸ie. Avem
r(x) =1
kΓ(ν)ϕ(x), ϕ(x) =xν−1e−x/bracketleftBigg
1 +(x−(ν−1))2
c/bracketrightBigg
ϕ/prime(x) =−e−xxν−1
c[x−(ν−1)][(x−ν)2+c−(2ν−1)]
de unde rezult˘ a c˘ a ecuat ¸ia ϕ/prime(x) = 0 are solut ¸ia x0=ν−1>0 iar dac˘ a
c≥2ν−1 atuncix0este punct de maxim. Dac˘ a lu˘ am c= 2ν−1 atunci
avem
α=1
kΓ(ν)(ν−1)ν−1e−(ν−1)
ceeace demonstreaz˘ a teorema.
Pentru a descrie algoritmul dedus din teorema precedent˘ a p resupunem
calculate in prealabil constantele
b=ν−1, c=ν+b, s=√
2ν−1.
Atunci algoritmul pentru generarea variabilei X;Gamma (0,1,ν), ν > 1
este este
Algoritmul GAMCAUCHY (simularea variabilei Gamma (0,1,ν),
ν >1 prin inf˘ a¸ surarea cu o densitate Cauchy)
repeat
repeat
Genereaz˘ aU:=random ¸ si iaT=s.tg[π(U−0.5)]; (Teste Cauchy
standard pe (−∞,+∞));

3.5. SIMULAREA UNOR VARIABILE PARTICULARE 79
IaY=b+T; (Yeste Cauchy non standard pe ( −∞,+∞));
untilY >0; (Se aplica respingerea pentru a obt ¸ine Y-trunchiat˘ a);
Genereaz˘ aU1:=random ;
untilU1≤eblog(Y/b)−T+log(1+ T2/c);
IaX=Y.
Se observ˘ a c˘ a constanta knu intervine in construct ¸ia algoritmului dar
ea este necesar˘ a pentru a calcula pa=1
α.Un calcul simplu arat˘ a c˘ a
k=/bracketleftbiggπ
2+arctg(−ν−1√2ν−1)/bracketrightbigg−1
.
Referitor la repartit ¸ia Gamma (0,1,ν),ν >1 mai observ˘ am ¸ si faptul c˘ a dac˘ a
descompunem νsub forma ν=k+p, k= [ν]∈N+,p=ν−k∈[0,1)
¸ si consider˘ am variabilele X;Gamma (0,1,ν), Ek;Erlang (k), Y;
Gamma (0,1,p),atunci simularea lui Xse realizeaz˘ a cu relat ¸ia X=Ek+
Y,(Ek,Y)−independente.
3.5.3 Repartit ¸ia Beta
VariabilaXare repartit ¸ia Beta(a,b),a >0,b >0 [5, 7, 10, 11] dac˘ a densi-
tatea sa de repartit ¸ie este
f(x) =/braceleftbigg1
B(a,b)xa−1(1−x)b−1,dacax∈[0,1]
0, altfel(3.32)
unde
B(a,b) =1/integraldisplay
0xa−1(1−x)b−1dx, B (a,b) =Γ(a)Γ(b)
Γ(a+b). (3.32/prime)
Urm˘ atoarea teorem˘ a [10] permite simularea variabilei Beta(a,b).
Teorema 3. 11 Dac˘ aX1;Gamma (0,1,a), X2;Gamma (0,1,b), X1
independent de X2atunci variabila
X=X1
X1+X2(3.33)
este o variabil˘ a Beta(a,b).

80 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Demonstrat ¸ie. Densitatea comun˘ a de repartit ¸ie a lui ( X1,X2) este
f(x1,x2) =1
Γ(a)Γ(b)xa−1
1xb−1
2e−(x1+x2).
F˘ acˆ and in ultima integrala transformarea
u=x1
x1+x2, v=x2, J=∂(x1,x2)
∂(u,v)=v
1−u,0<u< 1,
avem
f(x1(u,v),x2(u,v)) =g(u,v) =1
Γ(a)Γ(b)ua−1va+b−1
(1−u)ae−v
1−u,0<v<∞.
Densitatea de repartit ¸ie a variabilei X1/(X1+X2) este
h(u) =/integraldisplay∞
0g(u,v)dv=1
Γ(a)Γ(b)/integraldisplay∞
0ua−1va+b−1
(1−u)a+1e−v
1−udv
adic˘ a dup˘ a calcule deducem
h(u) =Γ(a+b)
Γ(a)Γ(b)ua−1(1−u)b−1.
¸ si teorema este demonstrat˘ a.
Simularea variabilei Beta(a,b) poate fi deci f˘ acut˘ a cu (3.33). Dar deoarece
aceast˘ a formul˘ a presupune generarea prealabil˘ a a dou˘ a variabile gamma,
rezult˘ a c˘ a aceast˘ a metod˘ a are o complexitate mare. De ac eea, in cazuri
particulare se pot folosi urm˘ atoarele teoreme [5, 10]:
Teorema 3. 12 Fiea,b∈N+¸ sin=a+b−1¸ si s˘ a consider˘ am variabilele
U1,U2,…,U nuniforme 0−1.S˘ a construim statisticile de ordine U(1)<U(2)<
…<U (n)prin ordonarea valorilor {Ui}1≤i≤n.AtunciU(a);Beta(a,b).
Nu prezent˘ am demonstrat ¸ia acestei teoreme.
Teorema 3. 13 Dac˘ a 0<a< 1,0<b< 1¸ siU1,U2sunt variabile aleatoare
uniforme 0−1¸ si independente ¸ si dac˘ a V=U1
a
1,T=U1
b
2,atunci repartit ¸ia
variabileiX=V
V+Tcondit ¸ionat˘ a de V+T <1esteBeta(a,b).
Teorema 3. 14 Dac˘ a 0< a < 1,b >1¸ siU1,U2sunt variabile uniforme
0−1independente ¸ si consider˘ am V=U1
a
1,T=U1
b−1
2,atunci repartit ¸ia
variabileiVcondit ¸ionat˘ a de V+T <1esteBeta(a,b).

3.5. SIMULAREA UNOR VARIABILE PARTICULARE 81
Demonstrat ¸ie. Intrucˆ at demonstrat ¸iile ultimelor dou˘ a teoreme sunt as em˘ an˘ atoare,
vom prezenta numai demonstrat ¸ia ultimei teoreme, folosin d calea urmat˘ a cu
ocazia demonstrat ¸iei teoremei 3.11.
Mai intˆ ai observ˘ am c˘ a
F(x) =P(V <x ) =P(U1
a<x) =P(U <xa) =xa, x∈[0,1]
de unde rezult˘ a c˘ a densitatea de repartit ¸ie a lui Veste
f(x) =axa−1, x∈[0,1].
In mod asem˘ an˘ ator densitatea de repartit ¸ie a lui Teste
h(y) = (b−1)yb−2, y∈[0,1].
Rezult˘ a c˘ a densitatea comun˘ a de repartit ¸ie a variabile lorV,T-independente
este
g(x,y) =a(b−1)xa−1yb−2
iar
P(V+T <1) =a(b−1)/integraldisplay1
0(/integraldisplay1−x
0yb−2dy)xa−1dx=aB(a,b).
Deci densitatea comun˘ a a variabilelor ( V,T) condit ¸ionat˘ a de V+T <1 este
p(x,y) =b−1
B(a,b)xa−1yb−2,x∈[0,1],y∈[0,1].
De aici rezult˘ a c˘ a densitatea lui Vcondit ¸ionat˘ a de V+T <1 este
q(x) =/integraldisplay1−x
0p(x,y)dy=1
B(a,b)xa−1(1−x)b−1
¸ si teorema este demonstrat˘ a.
Algoritmii ce rezult˘ a din aceste ultime teoreme sunt u¸ sor de construit.
Vom prezenta algoritmul ce rezult˘ a din teorema 3.13.
Algoritmul BETA13 pentru simularea variabilei Beta(a,b),0<a,b<
1
repeat
Genereaz˘ aU1,U2uniforme 0−1¸ si independente;
IaV=U1
a
1,T=U1
b
2;
untilV+T <1;

82 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Calculeaz˘ a X=V
V+T.
Probabilitatea de acceptare a acestui algoritm de respinge re este
pa=ab
a+bB(a,b). (3.34)
Algoritmul de respingere construit pe baza teoremei 3.14 ar e probabilitatea
de acceptare
pa=aB(a,b). (3.34/prime)
3.5.4 Repartit ¸ia normal˘ a
Desigur, ne vom opri la simularea variabilei Z;N(0,1) c˘ aci dac˘ a ¸ stim s˘ a
simul˘ am aceast˘ a variabil˘ a atunci X;N(m,σ) se simuleaz˘ a cu formula X=
m+Zσ.In tabelul 3.2 este prezentat˘ a metoda de simulare a variabi leiN(0,1),
bazat˘ a pe teorema limit˘ a central˘ a, dar aceast˘ a metod˘ a este aproximativ˘ a.
De aceea in aceast˘ a subsect ¸iune vom prezenta alte metode, exacte.
•O metod˘ a de compunere-respingere. S˘ a consider˘ am variabila
normal˘ a standard N(0,1),notat˘ a cuX1,care are densitatea
f1(x) =/braceleftBigg0, dacax< 0/radicalBig
2
πe−x2
2, dacax≥0.(3.35)
De aici deducem c˘ a densitatea lui X2=−X1este
f2(x) =/braceleftBigg/radicalBig
2
πe−x2
2, dacax< 0
0,dacax≥0. (3.35/prime)
Deci densitatea lui Z;N(0,1) se scrie
f(x) =1
2f1(x) +1
2f2(x)
adic˘ a este o compunere discret˘ a a densit˘ at ¸ilor f1(x) ¸ sif2(x).Pentru a con-
strui un algoritm de simulare a lui Zva trebui s˘ a construim mai intˆ ai un
algoritm de simulare a lui X1.
Vom inf˘ a¸ sura densitatea f1(x) cuh(x);Exp(1).Rezult˘ a teorema
Teorema 3. 15 Dac˘ a inf˘ a¸ sur˘ am f1(x)cuh(x)avem
f1(x)
h(x)≤α=/radicalbigg2e
π(3.36)
¸ si deci putem aplica teorema de respingere a inf˘ a¸ sur˘ ato arei pentru simularea
variabileiX1.

3.5. SIMULAREA UNOR VARIABILE PARTICULARE 83
Demonstrat ¸ie. Observ˘ am c˘ a
r(x) =f1(x)
h(x)=/radicalbigg2
πe−x2
2+x
iar ecuat ¸iar/prime(x) = 0,are solut ¸iax0= 1 care este un punct de maxim pentru
r(x),adic˘ a,
r(x)≤r(x0) =/radicalbigg2e
π
ceea ce demonstreaz˘ a teorema.
Algoritmul pemtru simularea lui Z;N(0,1) este
Algoritmul RJNORM de compunere respingere pentru simularea nor-
maleiN(0,1)
repeat
Genereaz˘ aUuniform 0−1;
Genereaz˘ aY;Exp(1);
untilu≤e−Y2
2+Y−0.5;
IaX1:=Y;
Genereaz˘ aUuniform 0−1;
ifU≤0.5thens:= 1elses:=−1; (seste un semn aleator );
IaZ:=sX1.
Se observ˘ a c˘ a probabilitatea de acceptare este
pa=/radicalbiggπ
2e≈0.72 (3 .36/prime)
adic˘ a, in medie, din patru perechi ( U,Y),trei sunt acceptate pentru a pro-
duce unX1.
•Metoda polar˘ a. O alt˘ a metod˘ a interesant˘ a de simulare a variabilei
N(0,1) este metoda polar˘ a dat˘ a de urm˘ atoarea teorem˘ a [10] datorat˘ a lui Box
¸ si Muller.
Teorema 3. 16 Dac˘ a variabilele U1,U2sunt uniforme 0−1¸ si independente,
atunci variabilele aleatoare
Z1=V1/radicalBigg
−2logS
S, Z 2=V2/radicalBigg
−2logS
S(3.37)
unde
V1= 2U1−1, V 2= 2U2−1, S=V2
1+V2
2, S < 1
sunt variabile normale N(0,1)independente.

84 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Demonstrat ¸ie. S˘ a observ˘ am mai intˆ ai c˘ a ( V1,V2) este un vector aleator
uniform pe p˘ atratul I2= [−1,1]×[−1,1] iarVi,i= 1,2 sunt uniforme pe
[−1,1] ¸ si independente. Condit ¸ia S <1 face ca vectorul ( V1,V2)|{S <1}
(condit ¸ionat de S <1!) s˘ a fie vector uniform pe cercul unitate. De aceea s˘ a
exprim˘ amViincoordonate polare, adic˘ a
V1=Rcosθ, V 2=Rsinθ, 0≤R≤1,0≤θ≤2π.
Identificˆ and ultimele relat ¸ii cu (3.37) rezult˘ a c˘ a
S=R2, Z 1=/radicalbig
−2logScosθ, Z 2=/radicalbig
−2logSsinθ. (3.37/prime)
Pe de alt˘ a parte, ins˘ a¸ si Z1,Z2se pot exprima direct in coordonate polare ¸ si
anume
Z1=R/primecosθ/prime, Z 2=R/primesinθ/prime(3.38)
de unde identificˆ and (3.37’) cu (3.38) avem
θ/prime=θ, R/prime=/radicalbig
−2logS
¸ si deoarece ( V1,V2) independente pe I2, rezult˘ a c˘ a ¸ si ( R,θ) sunt indepen-
dente, precum ¸ si ( R/prime,θ/prime) sunt independente (dar nu pe cercul unitate!).
Deoarece (V1,V2) are o repartit ¸ie uniform˘ a pe cercul unitate, rezult˘ a c˘ aθ/prime
are o repartit ¸ie uniform˘ a pe [0 ,2π] adic˘ a are densitatea
ϕ(θ) =/braceleftbigg1
2π, dacaθ∈[0,2π]
0, altfel.(3.39)
S˘ a determin˘ am acum repartit ¸ia lui R/prime.Avem
F(r) =P(R/prime≤r) =P(/radicalbig
−2logS≤r).
Dar deoarece S=R2este uniform˘ a pe [0 ,1] rezult˘ a c˘ a
F(r) =P(S >e−r2
2) = 1−e−r2
2
deci densitatea de repartit ¸ie a lui R/primeeste
ψ(r) =re−r2
2, r∈[0,1]. (3.40)
Pentru a demonstra teorema trebuie s˘ a ar˘ at˘ am c˘ a funct ¸i a de repartit ¸ie a
variabilelor Z1,Z2date de (3.37) este produsul a dou˘ a funct ¸ii de repartit ¸ie
normaleN(0,1).Pentru aceasta s˘ a consider˘ am domeniile
D(r,θ)={(r,θ);rcosθ≤z1, rsinθ≤z2}

3.6. SIMULAREA UNOR VARIABILE DISCRETE 85
D(x,y)={(x,y);x≤z1, y≤z2}.
Avem
F(z1,z2) =P(Z1≤z1,Z2≤z2) =/integraldisplay /integraldisplay
D(r,θ)1
2πe−r2
2rdrdθ
¸ si dup˘ a efectuarea schimb˘ arilor de variabil˘ a
θ=arctg(x
y), r=/radicalBig
x2+y2
deducem
F(z1,z2) =1
2π/integraldisplay /integraldisplay
D(x,y)e−x2+y2
2dxdy=1√
2π/integraldisplayz1
−∞e−x2
2dx1√
2π/integraldisplayz2
−∞e−y2
2dy
¸ si teorema este demonstrat˘ a.
Algoritmul corespunz˘ ator metodei polare se deduce cu u¸ su rint ¸˘ a ¸ si el pro-
duce simultam dou˘ a valori de select ¸ie N(0,1),Z1¸ siZ2, independente.
Din demonstrat ¸ia teoremei rezult˘ a c˘ a variabilele Z1,Z2pot fi simulate ¸ si
cu formulele
Z1=/radicalbig
−2logU 1cos(2πU2), Z2=/radicalbig
−2logU 1sin(2πU2). (3.41)
In varianta bazat˘ a pe (3.37) se resping valorile pentru car eS≥1 si deci
probabilitatea de acceptare este
pa=π
4(3.41/prime)
in timp ce varianta bazat˘ a pe (3.41) nu presupune nicio resp ingere. Totu¸ si
complexitatea calculului expresiilor (3.41) poate s˘ a m˘ a reasc˘ a timpul de calcul
fat ¸˘ a de cazul (3.37), ceea ce poate da cˆ a¸ stig de cauz˘ a va riantei (3.37) (din
cauza funct ¸iilor sin,log ,etc., consumatoare de timp).
3.6 Simularea unor variabile discrete
Pentru simularea unei variabile discrete ce ia un num˘ ar fini t de valori se
poate folosi algoritmul SIMDISCRV din sect ¸iunea 3.1 bazat pe metoda
invers˘ a. Dac˘ a Xeste o variabil˘ a discret˘ a care ia ca valori ¸ sirul {an}1≤n≤∞
¸ si se cunoa¸ ste funct ¸ia de fracvent ¸˘ a f(i) =P(X=ai),f−calculabil˘ a, atunci
folosind proprietatea lim i→∞f(i) = 0,(dedus˘ a din/summationtext∞
i=1f(i) = 1) se poate
construi u¸ sor un algoritm bazat pe metoda respingerii (m˘ a car aproximativ!)
¸ si in acest caz.
In aceast˘ a sect ¸iune vom prezenta ins˘ a algoritmi pentru s imularea unor
repartit ¸ii particulare.

86 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
3.6.1 Simularea unor repartit ¸ii bazate pe probe
Bernoulli
Vom prezenta mai intˆ ai ce int ¸elegem prin probe Bernoulli [10].
Fie un eveniment aleator observabil Acare are probabilitatea constant˘ a
p=P(A)>0.Intr-o experient ¸˘ a intˆ ampl˘ atoare se poate produce Acu
probabilitatea psau evenimentul contrar Acu probabilitatea q= 1−p.
O astfel de experient ¸˘ a se nume¸ ste prob˘ a Bernoulli. Cˆ and se produce A
spunem c˘ a avem de-a face cu un succes, iar cˆ andanu se produce spunem c˘ a
se realizeaz˘ a un e¸ sec.S˘ a asociem unei probe Bernoulli variabila aleatoare Z
astfel incˆ at Z= 1 dac˘ a se produce A¸ siZ= 0 dac˘ a se produce A,adic˘ aZ
are repartit ¸ia
Z:/parenleftBigg
0 1
q p/parenrightBigg
, E(Z) =p, Var (Z) =pq=p(1−p). (3.42)
Funct ¸ia de repartit ¸ie a lui Zeste
F(x) =P(Z <x ) =

0, daca x< 0
q, daca 0≤x<1
1daca x≥1.(3.42/prime)
De aici rezult˘ a c˘ a algoritmul de simulare a lui Zprin metoda invers˘ a este
Algoritmul BERN de simulare a unei variabile (probe) Bernoulli
Genereaz˘ aU:=random ;
ifU >p thenZ:= 0elseZ:= 1.
S˘ a observ˘ am din nou c˘ a dac˘ a p=1
2atunci suntem in cazul particular al
arunc˘ arii la intˆ amplare cu banul (tragerea la sort ¸i).
•Repartit ¸ia binomial˘ a. Se spune c˘ a variabila aleatoare discret˘ a X∈
Neste ovariabil˘ a binomial˘ a Binom (n,p),n∈N+,0<p< 1 dac˘ aX=num˘ arul
de succese in nprobe Bernoulli independente, adic˘ a
X=n/summationdisplay
i=1Zi
undeZisunt variabile identic repartizate Bernoulli, independen te.
Simularea variabilei Xse face deci simplu, prin num˘ ararea de succese in
nprobe Bernoulli independente.
Se poate deduce cu u¸ surint ¸˘ a c˘ a
P(X=α) =Cα
npαqn−α, q= 1−p,

3.6. SIMULAREA UNOR VARIABILE DISCRETE 87
adic˘ aP(X=α) este termenul general al dezvolt˘ arii binomului ( p+q)n,de
unde deriv˘ a ¸ si denumirea de repartit ¸ie binomial˘ a.
Funct ¸ia caracteristic˘ a a variabilei binomiale este
ϕ(t) =E[eitX] =E[eit/summationtext
jZj] = (q+peit)n. (3.43)
Cu ajutorul funct ¸iei caracteristice se calculeaz˘ a u¸ sor media ¸ si dispersia lui
X,adic˘ a
EX=E(n/summationdisplay
i=1Zi) =n/summationdisplay
i=1E(Zi) =np,
Var(X) =Var(n/summationdisplay
i=1Zi) =n/summationdisplay
i=1Var(Zi) =npq (3.43/prime)
iar din teorema limit˘ a central˘ a se deduce c˘ a pentru nsuficient de mare ( n→
∞) variabila
Wn=X−np√npq;N(0,1).
De aici rezult˘ a urm˘ atorul algoritm simplu de generare a lu iX;Binom (n,p),n=
mare [10].
Algoritmul BINNORM
Genereaz˘ aW;N(0,1);
Calculeaz˘ aX:={np+W√npq}.(Notat ¸ia{E}inseamn˘ a ”cel mai apropiat
intreg deE”).
Observat ¸ie. VariabilaBinom (n,p) are ¸ si o interpretare in termeni de
experiment cu o urn˘ a. Astfel, s˘ a presupunem c˘ a intr-o urn ˘ a avemAbile albe
¸ siBbile negre,A+B=N.Presupunem c˘ a se realizeaz˘ a extract ¸ii succesive
din urn˘ a ¸ si dup˘ a fiecare extract ¸ie se introduce bila extr as˘ a la loc in urn˘ a
(experient ¸a cu bila ”intoars˘ a” ). Fiep=A/Nprobabilitatea de a extrage o
bil˘ a alb˘ a intr-o extract ¸ie. De aici rezult˘ a c˘ a X= num˘ arul de bile albe in n
extract ¸ii succesive cu intoarcere este o variabil˘ a binomial˘ a Binom (n,p).
•Repartit ¸ia Pascal [10]. Variabila Xarerepartit ¸iaPascal (k,p),k∈
N+,0< p < 1,dac˘ aX=num˘ arul de e¸ securi pˆ an˘ a la aparit ¸ia a ksuccese
intr-un ¸ sir oarecare de probe Bernoulli independente. De a ici rezult˘ a c˘ a
variabilaX;Pascal (k,p) se simuleaz˘ a cu urm˘ atorul algoritm care num˘ ar˘ a
e¸ securile realizate pˆ an˘ a la realizarea a ksuccese intr-un ¸ sir de probe Bernoulli
independente.
Algoritmul PASCAL

88 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Intrarek∈N+,p,0< p < 1;X:= 0;j:= 0; (Xnum˘ ar˘ a e¸ securile ¸ si
j-succesele);
repeat
Genereaz˘ aU:=random ;ifU <p thenj:=j+ 1elseX:=X+ 1;
untilj=k.(Xeste valoarea de select ¸ie generat˘ a).
S˘ a observ˘ am c˘ a
P(X=α) =Ck−1
α+k−1pkqα, α= 0,1,2,…
care este termenul general al dezvolt˘ arii in serie a expres ieipk(1−q)−kdin
care cauz˘ a repartit ¸ia Pascal (k,p) se mai nume¸ ste ¸ si repartit ¸ia binomial˘ a cu
exponent negativ. De aici se deduce ¸ si faptul c˘ a dac˘ a X1;Pascal (k1,p) ¸ si
X2;Pascal (k2,p),sunt variabile independente, atunci ( X=X1+X2);
Pascal (k1+k2,p),adic˘ a repartit ¸ia Pascal este stabil˘ a. (Demonstrat ¸ia se
poate face simplu utilizˆ and funct ¸ia caracteristic˘ a).
Se arat˘ a c˘ a
E(X) =kq
p, Var (X) =kq
p2, (3.44)
formule ce se folosesc la validarea algoritmului.
Observat ¸ie . Interpretarea cu urn˘ a din cazul repartit ¸iei Binom (n,p) se
poate adapta ¸ si in cazul repartit ¸iei Pascal (k,p).Astfel, num˘ arul Xde bile
negre extrase cu intoarcere pˆ an˘ a cˆ and se obt ¸in kbile albe, este o variabil˘ a
Pascal (k,p).
•Repartit ¸ia geometric˘ a Geom (p) [10] este un caz particular de repartit ¸ie
Pascal, cˆ and k= 1.Simularea variabilei X;Geom (p) se poate realiza cu
algoritmul PASCAL sau cu metoda invers˘ a dup˘ a cum urmeaz˘ a:
FieP(X=x) =pqx,x= 0,1,2,…¸ si s˘ a not˘ am
F(x) =P(X <x ) =x−1/summationdisplay
i=0pqi= 1−qx,x= 0,1,2,…
care este o funct ¸ie de repartit ¸ie discret˘ a. ( P(X=x) este termenul unei
progresii geometrice, de unde ¸ si numele de repartit ¸ie geometric˘ a). Simularea
variabilei geometrice se poate realiza prin metoda invers˘ a cu formula
X=/bracketleftbigglog(U)
log(q)/bracketrightbigg
. (3.45)
unde[a] este partea intreag˘ a a lui a.Din (3.44) se deduce c˘ a pentru variabila
geometric˘ a Xavem
E(X) =q
p, Var (X) =q
p2, (3.44/prime)

3.6. SIMULAREA UNOR VARIABILE DISCRETE 89
formule care de asemena se pot folosi la validarea algoritmu lui.
3.6.2 Repartit ¸ia hipergeometric˘ a
Aceast˘ a repartit ¸ie se introduce dup˘ a cum urmeaz˘ a [10].
S˘ a consider˘ am experimentul cu urn˘ a descris in leg˘ atur˘ a cu repartit ¸ia
binomial˘ a, cu deosebirea c˘ a aici cele nbile se extrag la intˆ amplare din urn˘ a,
f˘ ar˘ a intoarcere. In acest caz num˘ arul Xde bile albe extrase este o variabil˘ a
hipergeometric˘ a. S˘ a not˘ am cu uevenimentul care reprezint˘ a extragerea unei
bile albe ¸ si cu vevenimentul care const˘ a in extragerea unei bile negre; atu nci
probabilit˘ atile de a extrage in prima extragere o bil˘ a alb ˘ a respectiv neagr˘ a,
sunt respectiv p=P(u) =A/N, P (v) =B/N. Probabilit˘ at ¸ile de extragere a
unei bile albe sau negre in a doua extragere sunt condit ¸iona te de rezultatele
primei extrageri adic˘ a
P(u|u) =A−1
N−1, P(u|v) =A
N−1, P(v|u) =B
N−1, P(v|v) =B−1
N−1.
Se observ˘ a deci c˘ a la fiecare extragere compozit ¸ia urnei se schimba ¸ si prob-
abilitatea de a extrage o bil˘ a alb˘ a sau neagr˘ a este variab il˘ a in funct ¸ie de
extragerile anterioare. Variabila hipergeometric˘ a se no teaz˘ aH(N,p,n ),0<
p<1, n<N, de undeA={Np}({x},x∈Restecel mai apropiat intreg de
x),B=N−A.Se demonstreaz˘ a c˘ a probabilitatea ca in nextract ¸ii succesive
f˘ ar˘ a intoarcere, s˘ a se extrag˘ a abile albe este
P(X=a) =Ca
ACn−a
B
Cn
N,0≤a≤n, n<N. (3.46)
De asemenea se arat˘ a c˘ a
E(X) =np, E (X2) =np
N−1[n(Np−1) +N(1−p)],
Var(X) =np(1−p)N−n
N−1. (3.47)
Avˆ and in vedere cele ment ¸ionate, algoritmul de simulare a variabilei
hipergeometrice Xeste
Algoritmul HIPERGEOM
IntrareA,B,N, N =A+B, n;(Acesta este un pas preg˘ aritor);
Calculeaz˘ a p=A/N;Init ¸ializeaz˘ a j:= 0, X:= 0;
repeat
Genereaz˘ aU:=random ;Iaj:=j+ 1;

90 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
ifU <p then begin
X:=X+ 1;S:= 1 (S-a estras o bil˘ a alb˘ a);
end elseS:= 0; (S-a extras o bil˘ a neagr˘ a);
Calculeaz˘ a N:=N−1, A:=A−S, p:=A
N;
untilj=n.(X;H(N,p,n ));
Formulele (3.47) se pot folosi la validarea algoritmului.
3.6.3 Repartit ¸ia Poisson
Variabila aleatoare X, X∈Nare repartit ¸ia Poisson (λ), λ> 0 dac˘ a
P(X=α) =λα
α!e−λ, λ> 0. (3.48)
Funct ¸ia caracteristic˘ a a variabilei Poisson (λ) este
ϕ(t) =E(eitX) =∞/summationdisplay
α=0(eitλ)α
α!e−λ=eλeite−λ=eλ(eit−1)(3.49)
de unde deducem
E(X) =λ, E (X2) =λ2+λ Var (X) =E(X2)−λ2=λ. (3.49/prime)
Repartit ¸iaPoisson (λ) este repartit ¸ia evenimentelor rare in sensul urm˘ ator:
evenimentele sunt independente ¸ si se produc la intervale a leatoare de timp
astfel incˆ at un eveniment se produce pe intervalul de timp [ t,t+ ∆t] cu
probalilitatea λ∆t+O(δt) unde
lim
∆t→0O(∆t) = 0,lim
∆t→0O(∆t)
∆t= 0
(O(∆T) este neglijabil˘ a in raport cu ∆ t) iar probabilitatea ca pe acela¸ s
interval s˘ a se produc˘ a mai mult de un eveniment (condit ¸ia de raritate ) este
O(∆t) (adic˘ a este neglijabil˘ a). Num˘ arul de evenimente rare ce se produc
pe unitatea de timp este o variabil˘ a aleatoare Poisson (λ).Num˘ arulλeste
intensitatea cu care se produc evenimentele rare.
Se arat˘ a c˘ a intervalul de timp θla care se produc dou˘ a evenimente rare
consecutive are o repartit ¸ie Exp(λ),fapt care spune c˘ a X=j−1 dac˘ a/summationtextj−1
i=1θi≤λ</summationtextj
i=1θi.T ¸inˆ and acum seama de faptul c˘ a θi=−logU i/(λ), Ui
uniforme 0−1,atunci rezult˘ a c˘ a
X=j−1daca ,j−1/productdisplay
i=1Ui≥e−λ>j/productdisplay
i=1Ui. (3.50)

3.7. VALIDAREA GENERATORILOR 91
Pe baza relat ¸iei (3.50) se poate construi cu u¸ surint ¸˘ a un algoritm pentru sim-
ularea luiXiar cu formulele (3.49’) se poate realiza validarea algorit mului.
Repartrit ¸ia Poisson poate fi dedus˘ a din repartit ¸ia binom ial˘ aBin(n,p);
s˘ a not˘ amλ=np¸ si s˘ a presupunem c˘ a n→∞ ¸ sip→0, λr˘ amˆ anˆ and con-
stant. Tinˆ and seama de (3.43) rezult˘ a c˘ a funct ¸ia caract eristic˘ a a variabilei
Binom (n,p) se scrie sub forma
ϕ(t) =/parenleftBigg
1 +λ(eit−1)
n/parenrightBiggn
;eλ(eit−1)
care conform (3.49) este funct ¸ia caracteristic˘ a a variab ilei Poisson.
De aici rezult˘ a c˘ a simularea variabilei Poissonb (λ) se poate realiza (aprox-
imativ!) in felul urm˘ ator.
0. Se alege o probabilitate p≈0 (de exp= 0.001);
1. Se determin˘ a n=λ/pintreg (neste in acest caz mare);
Se simuleaz˘ a X;Binom (n,p).
(Simularea variabilei binomiale se poate face utilizˆ and c a mai sus teorema
limit˘ a central˘ a).
3.7 Validarea generatorilor
Vom prezenta in finalul acestui capitol cum se poate face validarea algorit-
milor cu care se simuleaz˘ a diversele tipuri de variabile aleatoa re. Validare in-
seamn˘ a nu numai verificarea corectitudinii formale a progr amelor ci in special
dac˘ a algoritmul implementat (programat) produce valori d e selectt ¸ie asupra
variabilei aleatoare in cauz˘ a, adic˘ a dac˘ a pe baza unei se lect ¸iiX1,X2,…,X n,
de volumnsuficient de mare se verific˘ a ipoteza statistic˘ a H:X;F(x),
care se mai nume¸ ste ¸ si ipotez˘ a de concordant ¸˘ a.
Mai intˆ ai ar trebui s˘ a verific˘ am intuitiv dac˘ a repartit ¸ia empiric˘ a sau
repartit ¸ia de select ¸ie se aseam˘ an˘ a cu cea teoretic˘ a. Mai precis trebuie s˘ a
construim grafic histograma ¸ si s˘ a vedem dac˘ a ea se aseam˘ an˘ a cu densitatea
de repartict ¸ie.
•Construct ¸ia histogramei se face astfel:
– se determin˘ a mai intˆ ai m= min(X1,X2,…,X n),
M= max(X1,X2,…,X n) care reprezint˘ a intervalul de variat ¸ie [m,M];
– se alege un intreg pozitiv k,(practica recomand˘ a 15 ≤k≤40) care
reprezint˘ a num˘ arul de intervale ale histogramei;
– se imparte intervalul [ m,M] inkintervaleIi= [ai−1,ai),1≤i≤
k,a0=m, a k=M;

92 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
– se determin˘ a fi= num˘ arul valorilor de select ¸ie ce cad in intervalul
[ai−1,ai),1≤i≤k;fise numesc frecvent ¸e absolute;
– se determin˘ a frecvent ¸ele relative ri=fi
n.
Repartit ¸ia empiric˘ a este
/parenleftBigg
I1, I2, …, I k
r1, r2, …, r k/parenrightBigg
. (3.51)
Acum s˘ a reprezent˘ am grafic (3.51) astfel: lu˘ am pe abscis˘ a intervalele Ii¸ si
construim dreptunghiuri care au ca baz˘ a aceste intervale ¸ si ca in˘ alt ¸imi ri.
Graficul obt ¸inut reprezint˘ a histograma select ¸ieiX1,X2,…,X ndate. (Ea
estehistograma frecvent ¸elor relative ; asem˘ an˘ ator se obt ¸ine ¸ si histograma
frecvent ¸elor absolute ).
-6
xy
0a0a1a2a3 ak−2ak−1akI1I2I3 Ik−1Ikr1r2r3
rk−1
rkf(x)
Fig.3.1. Histogramˇ a.
In Fig. 3.1 se prezint˘ a o histogram˘ a; ea sugereaz˘ a c˘ a lin ia punctat˘ a
reprezint˘ a forma densit˘ at ¸ii de repartit ¸ie. Din aceast˘ a reprezentare grafic˘ a
putem formula ipoteza Hcu privire la funct ¸ia de repartit ¸ie F(x) a variabilei
Xasupra c˘ areia s-a efectuat select ¸ia simulat˘ a X1,X2,…,X n.In Fig. 3.2
se prezint˘ a forma graficelor unor densit˘ at ¸i de repartit ¸ ie considerate in acest
capitol.
Cˆ and construim histograma unei select ¸ii obt ¸inut˘ a prin simulare nu putem
determina mai intˆ ai m,M ¸ si apoi s˘ a construim Ii¸ sifi,1≤i≤kdecˆ at dac˘ a
memor˘ am ad literam toat˘ a select ¸ia (ceea ce impune folosirea unei select ¸ii d e

3.7. VALIDAREA GENERATORILOR 93
volumnmic) sau dac˘ a repet˘ am simularea select ¸iei folosind aceea¸ si s˘ amˆ ant ¸˘ a
a generatorului (ceea ce impune consum de timp de calcul dubl u).
De aceea vom folosi urm˘ atoarele idei pentru construct ¸ia h istogramei:
– simul˘ am mai intˆ ai un num˘ ar mic n1de valori de select ¸ie X1,X2,…,X n1,
n1<<n pe care le memor˘ am;
– cu ajutorul acestei select ¸ii determin˘ am urm˘ atoarele l imite ale inter-
valelor histogramei: a1= min{X1,X2,…,X n1}, ak−1= max{X1,X2,…,X n1}
¸ si cu ajutorul lor determin˘ am intervalele I2,…,I k−1de lungimi egale cu
h= (ak−1−a1)/(k−2), adic˘ aIi= [ai−1,ai),2≤i≤k−1, ai=ai−1+hi;
– cu ajutorul select ¸iei de volum n1determin˘ am (part ¸ial!) frecvent ¸ele
absolutefi,2≤i≤k−1 (utilizˆ and pentru num˘ arare formula (3.52) de mai
jos ;deocamdat˘ a a0¸ siaknu sunt cunoscute!); lu˘ am a0=a1, ak=ak−1care
vor fi modificate ulterior; init ¸ializ˘ am f1= 0, fk= 0;
– simul˘ am pe rˆ and celelalte n−n1valori de select ¸ie ¸ si pentru fiecare X
astfel simulat efectu˘ am urm˘ atoarele operat ¸ii: dac˘ a X <a 1atunci lu˘ am a0=
min(a0,X) ¸ sif1:=f1+ 1; dac˘ aX >a k−1atunci lu˘ am ak=max(ak,X) ¸ si
fk:=fk+ 1; altfel dac˘ a a1≤X <a k−1atunci calcul˘ am
j:=/bracketleftbiggX−a1
h/bracketrightbigg
+ 2, fj:=fj+ 1; (3 .52)
Cˆ and s-au prelucrat toate cele n−n1valori de select ¸ie, s-au determinat
toate elementele histogramei, care dup˘ a reprezentarea ¸ s i interpretarea grafic˘ a
conduce la formularea ipotezei de concordant ¸˘ a.
S˘ a remarc˘ am c˘ a aceast˘ a ultim˘ a construct ¸ie conduce la o histogram˘ a cu
k−2 intervale egale, iar intervalele I1,Iksunt de lungimi oarecare.
Dac˘ a am fi ales arbitrar m,M ¸ si am fi construit apoi histograma ca in
construct ¸ia precedent˘ a, atunci histograma obt ¸inut˘ a a r fi putut avea multe
frecvent ¸efi= 0 ¸ si eventual frecvent ¸ele f1¸ si/saufkfoarte mari, fapt care nu
ne-ar fi putut conduce la o formulare corect˘ a a ipotezei de co ncordant ¸˘ aH.In
concluzie, algoritmul cel mai bun, de construct ¸ie al histo gramei unei select ¸ii
simulate asupra unei variabile aleatoare X, cu scopul de a valida algoritmul
de simulare, este urm˘ atorul:
Algoritmul HISTOGRAMA
Intraren,n1,k;Consider˘ am tabela f[1..k]¸ si init ¸ializ˘ am:
forj:= 1tokdof[j] := 0;
Consider˘ am tabela xi[1..n1];Consider˘ am tabela a[0..k];
fori:= 1ton1do begin Genereaz˘ aX¸ siiaxi[i] :=X;end;
Calculeaz˘ a a[1] := min(xi[1],xi[2],…,xi [n1]),
a[k−1] = max(xi[1],xi[2],…,xi [n1]), h:= (a[k−1]−a[1])/(k−2);

94 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
fori:= 1ton1doj:=trunc(xi[i]−a[1]
h) + 2, f[j] :=f[j] + 1;
Iaa[0] :=a[1], a[k] :=a[k−1];
fori:= 1ton−n1do begin
Genereaz˘ a un X;
ifa[1]<X <a [k−1]then begin
j:=trunc(X−a[1]
h) + 2, f[j] :=f[j] + 1;
end
else ifX≤a[1]then begin
a[0] := min{a[0],X}, f[1] :=f[1] + 1;
end
else begin
a[k] := max{a[k],X};f[k] :=f[k] + 1
end;
end.
– – –
66 6
6a) b)
c) d)(0,λ)
0 0
0 0x x
x xy yy y
m−σ m m +σ0<ν < 1ν >1

3.7. VALIDAREA GENERATORILOR 95
Fig. 3.2. Graficele unor densitˇ at ¸i de repartit ¸ie.
a) Densitatea exponent ¸ialˇ a Exp( λ).
b) Densitˇ at ¸i de tipul Gamma(0 ,1,ν), Weibull(0 ,1,ν).
c) Densitatea normala N(m,σ).
d) Densitatea de repartit ¸ie de tip Student.
•Testulχ2.Odat˘ a construit˘ a histograma putem aplica testul de conco rdant ¸˘ a
χ2pentru verificarea ipotezei H:X;F(x).
Pentru aceasta calcul˘ am intˆ ai probabilit˘ at ¸ile
p1=F(a1), pi=F(ai)−F(ai−1),2≤i≤k−2, pk= 1−F(ak−1).
Calcul˘ am apoi
χ2=k/summationdisplay
j=1(fi−npi)2
npi(3.53)
care se ¸ stie c˘ a are repartit ¸ia hi patrat cu k−1 grade de libertate, ( χ2
k−1este
variabila corespunz˘ atoare). Fiind dat riscul de genul I, α,( o probabilitate
mic˘ a, apropiat˘ a de zero) determin˘ am χ2
k−1,α(numit˘ aα-cuantil˘ a superioar˘ a)
astfel incˆ at
P(χ2
k−1>χ2
k−1,α) =α. (3.53/prime)
IpotezaHse accept˘ a dac˘ a
χ2<χ2
k−1,α (3.53/prime/prime)
¸ si se respinge in caz contrar.
•Un test simplu. Cel mai simplu mod de testare a unui generator
care simuleaz˘ a o variabil˘ a neuniform˘ a Xse poate realiza astfel:
– Se determin˘ a cˆ ateva momente teoretice ale lui Xca de ex.m=E[X]
¸ siσ2=Var[X];
– Cu ajutorul select ¸iei simulate X1,X2,…,X nse calculeaz˘ a momentele
empirice de select ¸ie
X=/summationtextn
i=1Xi
n, s2=/summationtextn
i=1X2
i
n−X2;
Se consider˘ a c˘ a generatorul este bun dac˘ a pentru nsuficient de mare ( n >
1000) valorile lui X¸ sis2sunt tot mai apropiate de m¸ siσ2, ca o consecint ¸˘ a
alegii numerelor mari. Se presupune c˘ a momentele teoretice m,σ2sunt
cunoscute.
Exercit ¸ii
E.3.1. Fie variabila X;f(x) unde
f(x) =kg(x)g(x) =/braceleftbiggx(2−x), dacax∈[0,2]
0,altfel.

96 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
Sa se determine constanta k¸ si s˘ a se precizeze o metod˘ a de simulare a lui X.
Solut ¸ie. Impunˆ and condit ¸ia/integraltext
Rf(x)dx= 1,se obt ¸inek= 4/3 ¸ si
F(x) =

0, daca x< 0
x2−x3
3,0≤x≤2
1daca x> 1
iar simularea se poate face prin metoda invers˘ a calculˆ and u-se numeric solut ¸ia
X∈[0,2] a ecuat ¸iei F(X) =U.
E.3.2. Variabila aleatoare Yare densitatea de repartit ¸ie
f(y) =/braceleftbigg0daca y< 0
2λye−λy2, daca y≥0.
Dac˘ aX;Exp(λ) s˘ a se arate c˘ a Y=√
Xde unde se deduce metoda de
simulare a lui Y.
Solut ¸ie Intr-adev˘ ar
P(Y <t) =P(√
X <t ) =P(X <t2) =/braceleftbigg0, daca t< 0
1−e−λt2daca t≥0.
E.3.3. FieX1;Binom (n1,p)X2;Binom (n2,p)X1,X2indepen-
dente. Ar˘ atat ¸i c˘ a ( X1+X2);Binom (n1+n2,p).
Solut ¸ie. Se folose¸ ste funct ¸ia caracteristic˘ a
ϕXj(t) = (q+peit)nj,j= 1,2
¸ siϕX1+X2(t) =ϕX1(t)ϕX2(t).(Repartit ¸ia binomial˘ a este stabil˘ a).
E.3.4. FieX;F(x), Y;G(x) independente. S˘ a se determine funct ¸ia
de repartit ¸ie a variabilei Z=max(X,Y). S˘ a se precizeze de aici cum se
poate simula variabila Z;H(x) unde
H(x) =/braceleftbigg(1−e−λx)(1−1
(1+θx)c)daca x≥0
0, daca x< 0.
Solut ¸ie. Se observ˘ a c˘ a Z;H(x) =F(x)G(x), X;Exp(λ), Y;
Lomax (θ,c) de undeZ=max(X,Y).
E.3.5. FieX;Poisson (λ), Y;Poisson (µ) independente.S˘ a se arate
c˘ a (X|X+Y=n);Binom (n,λ
λ+µ).
Solut ¸ie. Avem (X+Y);Poisson (λ+µ) ¸ si deci
P(X=r|X+Y=n) =P(X=r,X+Y=n)
P(X+Y=n)=

3.7. VALIDAREA GENERATORILOR 97
=e−λλre−µµr
r!(n−r)!n!
e−(λ+µ)(λ+µ)n=Cr
nλrµn−r
(λ+µ)n,r= 0,1,…,n.
E.3.6. FieX;f(x) unde
f(x) =/braceleftbigg0, daca x< 0
1
λexp{−ex−1
λ+x}daca x≥0,λ>0
numit˘ a repartit ¸ia valorii extreme . S˘ a se descrie o metod˘ a pentru simularea
luiX.
Solut ¸ie. Se aplic˘ a metoda invers˘ a.
E.3.7. FieY;Exp(1) ¸ siX=kexp (Y
a).S˘ a se determine repartit ¸ia lui
X.
Solut ¸ie. Se deduce prin calcul direct c˘ a
F(x) =P(X <x ) =/braceleftbigg0daca x< 0
1−/parenleftbigx
k/parenrightbig−adaca x≥0.
Se aplic˘ a metoda invers˘ a.
E.3.8. FieZ1,Z2variabile normale N(0,1),independente. S˘ a se arate
c˘ a
U=2
πarctgZ1
Z2;uniformaU (−1,1).
Solut ¸ie. Densitatea de repartit ¸ie comun˘ a a lui Z1,Z2este
f(x1,x2) =1
2πe−x2
1+x2
2
2.
Deci
P(U <y ) =P(Z1
Z2<tg(2πy)) =/integraldisplay /integraldisplay
x1/x2<tg(2πy)e−x2
1+x2
2
2dx1dx2=y.
E.3.9. FieX¸ siYdou˘ a variabile exponent ¸iale de parametru 1 ,indepen-
dente. S˘ a se determine repartit ¸ia variabilei T=X−Y.
Solut ¸ie. Densitatea comun˘ a de repartit ¸ie este
g(x,y) =e−x−y, x> 0, y>0.
Facem transformarea
t=x−y, v =y, J =D(x,y)
D(v,t)= 1

98 CAP. 3. SIMULAREA VARIABILELOR NEUNIFORME
¸ si calcul˘ am
h(t) =∞/integraldisplay
0g(x(t,v),y(v,t))|J|dv.
Se obt ¸ine in final
h(t) =/braceleftBigg1
2exdacax< 0,
1
2e−xdacax≥0.
Deci densitatea lui Teste de tip Laplace ; variabilaTse simuleaz˘ a deci ca
diferent ¸a de dou˘ a variabile Exp(1) independente.
E.3.10. Variabila aleatoare Xare densitatea f(x) =3
4(1−x2), x∈
[−1,1] ¸ sif(x) = 0, x /∈[−1,1].S˘ a se simuleze X.
Solut ¸ie. Se poate aplica metoda respingerii folosind inf˘ a¸ sur˘ aro areah(x) =
1
2, x∈[−1,1];h(x) = 0, x /∈[−1,1] (adic˘ ah(x)-uniform˘ a pe [−1,1]). Se
obt ¸ine
f(x)
h(x)≤α=3
2, etc.
Se poate folosi ¸ si metida invers˘ a. Avem
F(x) =

0, x< 0,
3x−x3+2
4, x∈[−1,1],
1, x> 1.
Se ia solut ¸ia x0∈[−1,1] a ecuat ¸iei F(x) =U.(Ecuat ¸ia poate avea trei
solut ¸ii!).

Cap. 4
Simularea vectorilor aleatori
4.1 Generalit˘ at ¸i
Un vector X= (X1,X2,…,X k)/prime(vector coloan˘ a) ale c˘ arui componente Xi
sunt variabile aleatoare, se nume¸ ste vector aleator. Cazul in care componen-
tele sunt independente stochastic este desigur banal de ace ea cazul cel mai
interesant este cˆ and componentele Xisunt dependente sau corelate.
Funct ¸ia de repartit ¸ie a vectorului Xeste
F(x) =F(x1,x2,…,x k) =P(X1<x1,X2<x2,…,X k<xk) (4.1)
si ea se mai nume¸ ste funct ¸ia de repartit ¸ie comun˘ a a lui{X1,X2,…,X k}sau
funct ¸ia de repartit ¸ie multidimensional˘ a. Desigur,
F(−∞,…,−∞) = 0, F(+∞,…,+∞) = 1, F(…,x i,…)≤F(…,yi,…), xi<yi
(adic˘ a F este monoton˘ a pe componente). Funct ¸ia f(x1,x2,…,x k) definit˘ a
de relat ¸ia
f(x) =f(x1,x2,…,x k) =∂kF(x1,x2,…,x k)
∂x1∂x2…∂x k(4.2)
cˆ and derivata part ¸ial˘ a exist˘ a, se nume¸ ste densitate de repartit ¸ie multidimen-
sional˘ a a luiX.
Funct ¸ia de repartit ¸ie P(Xi< xi) =F(+∞,…,+∞,xi,+∞,…,+∞) =
Fi(xi) se nume¸ ste funct ¸ie de repartit ¸ie marginal˘ a a lui Xi,iarfi(xi) =F/prime
i(xi)
( cˆ and derivata exist˘ a) se nume¸ ste densitate de repartit ¸ie marginal˘ a a luiXi.
Se pot defini funct ¸ii de repartit ¸ie marginale pentru 2 ,3,…,k−1 compo-
nente, etc. De exemplu funct ¸ia de repartit ¸ie marginal˘ a Fij(xi,xj) =P(Xi<
99

100 CAP. 4. SIMULAREA VECTORILOR ALEATORI
xi,Xj<xj) =F(+∞,…,x i,…,x j,…+∞),1≤i,j≤kcorespunde compo-
nentelorXi,Xjale vectorului X.Au loc relat ¸iile
F(x) =F(x1,…,x k) =/integraldisplayx1
−∞…/integraldisplayxk
−∞f(u1,…,u k)du1…du k=/integraldisplayx
−∞f(u)du.
(4.3)
Dac˘ a variabilele Xi,1≤i≤ksunt independente atunci
F(x1,x2,…,x k) =F1(x1)F2(x2)…Fk(xk) (4 .4)
sau analog pentru densit˘ at ¸i
f(x1,x2…,x k) =f1(x1)f(x2)…fk(xk). (4.4/prime).
Cˆ and exist˘ a integralele
mi=E(Xi) =/integraldisplay+∞
−∞xifi(xi)dxi,
mij=E(XiXj) =/integraldisplay+∞
−∞/integraldisplay+∞
−∞xixjfij(xixj)dxidxj
acestea se mumesc momente de ordinul I , respectiv de ordimul II . Expresiile
σij=E[(Xi−mi)(Xj−mj)] =/integraldisplay+∞
−∞/integraldisplay+∞
−∞(xi−mi)(xj−mj)fij(xi,xj)dxidxj
cˆ and integralele exist˘ a, se numesc momente centrate; in a cest caz,σijse
nume¸ ste covariant ¸a luiXicuXj¸ si se noteaz˘ a σij=Cov(Xi,Xj).Se observ˘ a
c˘ aσii=Cov(Xi,Xi) =Var(Xi) =σ2
i.Este u¸ sor de ar˘ atat c˘ a dac˘ a Xieste
independent de Xj, i/negationslash=j,atunci
mij=E(XiXj) =mimj=E(Xi)E(Xj), σ ij=Cov(Xi,Xj) = 0.
Este satisf˘ acut˘ a inegalitatea lui Schwarz, adic˘ a
|Cov(Xi,xj)|≤/radicalBig
Var(Xi)Var(Xj)sau|σij|≤σiσj.
Se nume¸ ste coeficient de corelat ¸ie al variabilelor Xi¸ siXjm˘ arimea
ρij=Corr(Xi,Xj) =Cov(Xi,Xj)/radicalBig
Var(Xi)Var(Xj). (4.5)
Se observ˘ a c˘ a ρ∈[−1,1] ¸ si el are urm˘ atoarea interpretare: ρij≈0⇒
XidepindefoarteputindeX j; dac˘ aρij<0,atunciXi¸ siXjsuntinvers

4.1. GENERALIT ˘AT ¸I 101
corelate iar dac˘ a ρij>0,atunciXi¸ siXjsuntdirect corelate; dac˘ a|ρij|≈1
atunciXi¸ siXjsuntputernic corelate.
Pentru un vector aleator mediile midefinesc un vector m= (m1,m2,
…,m k)/primenumit vectorul valoare medie notatE(X) iar covariant ¸ele σijdefinesc
o matrice Σ =||σij,||(care este pozitiv definit˘ a, Σ /follows0) ¸ si se noteaz˘ a Σ =
Cov(X,X/prime).
Vom defini acum not ¸iunea de repartit ¸ie condit ¸ionat˘ a. Pr esupunem c˘ a X
are densitatea de repartit ¸ie f(x) ¸ si s˘ a consider˘ am descopmunerea lui Xin
doi subvectori X= (X(1),X(2))/primeundeX(1)este un vector r−dimensional iar
X(2)este un vector q−dimensional, r <k, r +q=k.Definim densitatea de
repartit ¸ie condit ¸ionat˘ a f(x(1)|x(2)) a lui X(1)cˆ andX(2)=x(2)astfel
f(x(1)|x(2)) =f(x(1),x(2))/integraltext+∞
−∞f(y(1),x(2))dy(1), undef (x) =f(x(1),x(2)).(4.6)
Cu aceast˘ a densitate se definesc, cˆ and exist˘ a, E[X(1)|X(2)=x(2)],
Cov(X(1),X(1)/prime|X(2)=x(2)) adic˘ a media condit ¸ionat˘ a, respectiv matricea de
covariant ¸˘ a condit ¸ionat˘ a. Uneori este necesar s˘ a simul˘ am ( X(1)|X(2)=x(2)),
cˆ and se cunoa¸ ste repartit ¸ia condit ¸ionat˘ a.
Metoda invers˘ a este valabil˘ a ¸ si in cazul simul˘ arii vect orilor aleatori. Fie
F(x) =F(x1,x2,…,x k) =P(X1< x1,…,X k< xk),funct ¸ia de repartit ¸ie a
luiX¸ si fieF1(x1) =P(X1<x1) funct ¸ia de repartit ¸ie marginal˘ a a lui X1,¸ si
F1…i(x1,…,x i) =P(X1< x1,…,X i< xi) funct ¸ia de repartit ¸ie marginal˘ a
a lui (X1,…,X i)/prime. Fie de asemenea funct ¸iile de repartit ¸ie condit ¸ionate
F2(x1,x2) =P(X2<x2|X1=x1) =F(x2|x1),
F3(x1,x2,x3) =P(X3<x3|X1=x1,X2=x2) =F(x3|x1,x2),
Fi(x1,x2,…,x i) =P(Xi<xi|X1=x1,…,X i−1=xi−1) =F(xi|x1,…,x i−1),
2≤i≤k.S˘ a not˘ am cu F−1
iinversa funct ¸iei Fi(x1,x2,…,x i) in raport cu
xi.Atunci are loc urm˘ atoatea teorem˘ a (metoda invers˘ a pentr u vectori).
Teorema 4. 1 Dac˘ aUi,1≤i≤ksunt variabile aleatoare uniforme 0−1
independente atunvi vectorul aleator Y= (Y1,Y2,…,Y k)/primeale c˘ arui compo-
nente sunt
Y1=F−1
1(U1), Y2=F−1
2(Y1,U2), Yi=F−1
i(Yi,…,Y i−1,Ui),2≤i≤k
(4.6/prime)
are funct ¸ia de repartit ¸ie F(x).
Demonstrat ¸ie. Avem
P(Y1<x1) =P(F−1
1(U1)<x1) =P(U1<F(x1)) =F1(x1),

102 CAP. 4. SIMULAREA VECTORILOR ALEATORI
P(Y1<x1,Y2<x2) =P(Y2<x2|Y1=x1)P(Y1<x1) =
=P(F−1
2(Y1,U2)<x2|Y1=x1)F1(x1) =P(U2<F2(x1,x2))F1(x1) =
=F2(x1,x2)F1(x1) =F12(x1,x2).
Repetˆ and procedeul precedent obt ¸inem pentru ( Y1,…,Y i)/prime
P(Y1<x1,…,Y i−1<xi−1,Yi<xi) =
=P(Y1<x1,…,Y i−1<xi−1,F−1
i(Y1,…,Y i−1,Ui)<xi) =F1…i(x1,…,x i).
Dar
F1…k(x1,…,x k) =F(x1,…,x k)
ceeace trebuia demonstrat. De aici se deduce urm˘ atorul alg oritm pentru
simularea vectorului aleator Xcˆ and se cunosc inversele F−1
iale funct ¸iilor de
repartit ¸ie condit ¸ionate Fi(x1,…,x i−1,xi) in raport cu xi.
Algoritmul AIMULT pentru metoda invers˘ a multidimensional˘ a.
Genereaz˘ aU:=random ;Calculeaz˘ a Y1=F−1
1(U);
fori:= 2tokdo begin
Genereaz˘ aU:=random ;
Calculeaz˘ a Yi:=F−1
i(Y1,…,Y i−1,U);
end.
Vectorul Y= (Y1,Y2,…,Y k)/primeare funct ¸ia de repartit ¸ie F(x) conform teo-
remei 1.
Exemplul 4.1. Simularea repartit ¸iei Gumbel bidimensiona le.Presupunem
c˘ a vectorul aleator ( X,Y)/primeare funct ¸ia de repartit ¸ie
F(x,y) =/braceleftbigg1−e−x−e−y+e−(x+y+θxy, daca x> 0,y>0,
0, altfel,0<θ< 1.
Se observ˘ a c˘ a
F1(x) =/braceleftbigg1−e−x, daca x> 0,
0, altfel
adic˘ a repartit ¸ia marginal˘ a a lui XesteExp(1).
Prin calcule simple (utilizˆ and (4.6)) se deduce c˘ a
f2(y|x) =/braceleftbigge−y(1+θx){(1 +θx)(1 +θy)−θ}, daca y> 0,
0, altfel

4.2. SIMULAREA VECTORILOR UNIFORMI. 103
¸ si deci funct ¸ia de repartit ¸ie a lui Ycondit ¸ionat˘ a de X=xeste
F2(y|x) =/braceleftbigg[1−e−y(1+θx)][1 +θ(1 +x)], daca y> 0
0, altfel
Putem deci aplica teorema 1 pentru simularea lui ( X,Y)/primeastfel
Algoritmul GUMBEL
Intrareθ; (Acesta este un pas preg˘ atitor);
Genereaz˘ aX;Exp(1);
Genereaz˘ aU:=random ;Genereaz˘ aYrezolvˆ and ecuat ¸ia
[1−e−Y(1+θX)][1 +θ(1 +X)] =U;U∈(0,∞).
Teorema inf˘ a¸ sur˘ atoarei se poate aplica ¸ si in cazul vect orilor aleatori. (Vezi
exercit ¸iul E4.5).
4.2 Simularea vectorilor uniformi.
Vectorul aleator k−dimensional V= (V1,V2,…,V k)/primeare repartit ¸ie uniform˘ a
pe domeniul m˘ arginit D⊂Rkdac˘ a densitatea sa de repartit ¸ie este
f(v) =/braceleftbiggk, daca v∈D,
0, dacav/∈D, k=1
mesD, mesD =/integraldisplay
Ddv.(4.7)
Rezult˘ a c˘ a Vare repartit ¸ie uniform˘ a pe intervalul I= [a1,b1]×[a2,b2]×
…×[ak,bk]−∞<ai<bi<+∞,1≤i≤kdac˘ a
f(v) =

1
k/producttext
i=1(bi−ai), dacav∈I
0, dacav/∈I.(4.7/prime)
Din (4.7’) rezult˘ a c˘ a dac˘ a Veste uniform pe IatunciVisunt variabile
uniforme pe [ ai,bi] ¸ si independente deoarece
f(v1,v2,…,v k) =k/productdisplay
i=1fi(vi), f i(vi) =/braceleftbigg1
bi−ai, daca v i∈[ai,bi]
0,daca v i/∈[ai,bi].(4.7/prime/prime)
De aici se deduce urm˘ atorul algoritm simplu pentru simular ea vectorului
V;uniformpeI.
Algoritmul VUNIFINT de simulare a vectorului uniform pe interval

104 CAP. 4. SIMULAREA VECTORILOR ALEATORI
Intrareai,bi,1≤i≤k;
fori:= 1tokdo begin
Genereaz˘ a U:=random ;IaVi:=ai+ (bi−ai)U;
end.
Pentru a simula un vector aleator Wuniform pe D⊂Rk(Dfiind un
domeniu oarecare), nu mai este adev˘ arat˘ a (4.7”). Dar s˘ a o bserv˘ am c˘ a dac˘ a
D⊆I¸ siVe uniform pe Iatunci restrict ¸ia lui VlaD( vectorul notat W),
este un vector uniform pe D.
De aici rezult˘ a urm˘ atorul algoritm de respingere pentru simularea lui W.
Algoritmul VECTUNIFD de simulare a vectorului uniform pe dome-
niu oarecare:
Construie¸ ste un interval minimal I= [a1,b1]×…×[ak,bk]astfel incˆ at
D⊆I; (Acest interval exist˘ a deoarece Deste m˘ arginit).
repeat
Genereaz˘ a Vuniform pe I;
until V∈D;
IaW:=V.
Probabilitatea de acceptare a acestui algoritm este
pa=mesD
mesI=mesD
k/producttext
i=1[bi−ai]
de unde se deduce c˘ a pentru a obt ¸ine un interval Icˆ at mai bun, acesta
trebuie s˘ a fie minimal astfel incˆ at D⊆I.
4.3 Simularea vectorilor normali
Vectorul aleator k−dimensional Xare repartit ¸ia normal˘ a N(µ,Σ) dac˘ a den-
sitatea sa este
f(x;µ,Σ) =1
(2π)k/2[det(Σ)]1/2e−1
2(x−µ)/primeΣ−1(x−µ),x∈Rk. (4.8)
Se arat˘ a c˘ a
E(X) =µ,Cov(X,X/prime) = Σ. (4.8/prime)
Formulele precedente se deduc u¸ sor cu ajutorul funct ¸iei c aracteristice. In
cazul variabilei normale X;N(m,σ) conform teoremei 3.7 funct ¸ia carac-
teristic˘ a este
ϕ(t) =eitm−t2σ2
2.

4.3. SIMULAREA VECTORILOR NORMALI 105
Prin analogie, in cazul multidimensional funct ¸ia caracte ristic˘ a este
ϕ(t) =E[eit/primeX] =/integraldisplay
Rkeik/summationtext
j=1tjxj
f(x;µ,Σ)dx
care dup˘ a efectuarea unor calcule devine
ϕ(t) =eit/primeµ−t/primeΣt
2.
F˘ acˆ and deci analogie cu funct ¸ia caracteristic˘ a a varia bilei normale N(m,σ)
rezult˘ a c˘ aµ¸ si Σ au semnificat ¸ia din formulele (4.8’). S˘ a not˘ am cu Zvectorul
normalN(0,I) undeIeste matricea unitate k−dimensional˘ a iar 0este vec-
torul nul din Rk.Se constat˘ a cu u¸ surint ¸˘ a c˘ a densitatea f(z) a luiZsatisface
proprietatea
f(z) =k/productdisplay
i=1fi(zi), f i(zi) =1√
2πe−z2
i
2 (4.9)
adic˘ a componentele Ziale lui Zsunt independente ¸ si normale N(0,1).Deci,
simularea lui Z;N(0,I) se realizeaz˘ a simplu astfel
Algoritmul VECNORMSTD de generare a vectorului normal stan-
dard.
fori:= 1tokdo begin
Genereaz˘ aT;N(0,1);IaZi:=T;
end.
Pentru a simula X;N(µ,Σ) vom folosi mai intˆ ai teorema
Teorema 4. 2 Dac˘ aY;N(0,Σ)¸ siCeste o matrice k×kiarµeste un
vectork×1atunci
X=µ+CY;N(µ,CΣC/prime).
Demonstrat ¸ie. Deoarece Xeste o combinat ¸ie liniar˘ a de variabile normale
(componentele lui Y), el are tot o repartit ¸ie normal˘ a ¸ si deci avem
E(X) =µ+CE(Y) =µ+0=µ,
Cov(X,X/prime) =Cov[(CY),(CY)/prime] =CΣC/prime(4.10)
¸ si teorema este demonstrat˘ a.
Fiind dat˘ a matricea Σ /follows0 (pozitiv definit˘ a) se ¸ stie c˘ a exist˘ a o matrice
C=||cij||,C/follows0,inferior triunghiular˘ a (adic˘ acij= 0, i < j ), astfel incˆ at
CC/prime= Σ.MatriceaCestematricea Choleski. De aici deducem teorema

106 CAP. 4. SIMULAREA VECTORILOR ALEATORI
Teorema 4. 3 Dac˘ aZ;N(0,I),µeste un vector k×1¸ siCeste matricea
Choleski a lui Σ, atunci X=µ+CZ;N(µ,Σ).
Demonstrat ¸ie . Din teorema 4.1 avem E(X) =µ¸ siCov(X,X/prime) =CIC/prime=
CC/prime= Σ ¸ si teorema este demonstrat˘ a.
MatriceaCse determin˘ a cu ajutorul matricii Σ = ||σij||cu formulele lui
Choleski
ci1=σi1
σ11,1≤i≤k
cii=/radicaltp/radicalvertex/radicalvertex/radicalbtσii−i−1/summationdisplay
r=1c2
ir,1<i≤k
cij=σij−j−1/summationtext
r=1circjr
cjj,1<j <i≤k (4.11)
cij= 0,1<i<j <k.
Simularea vectorului X;N(µ,Σ), dup˘ a ce se calculeaz˘ a intr-un pas preg˘ atitor
matriceaCa lui Choleski se realizeaz˘ a cu urm˘ atorul algoritm
Algoritmul NORMMULT de simulare a vectorului normal
Intrareµ,C;
Genereaz˘ a Z;N(0,I)cu algoritmul VECNORMSTD;
Calculeaz˘ a X=µ+CZ.
Uneori este necesar s˘ a simul˘ am un subvector al unui vector normal cˆ and
se d˘ a cel˘ alalt subvector. Mai precis dac˘ a X= (X(1),X(2))/prime;N(µ,Σ), cu
X(1)vectorr−dimensional ¸ si X(2)vectorq−dimensional, r+q=k,se cere
s˘ a se simuleze X(1)condit ¸ionat de X(2)=x(2).
S˘ a consider˘ am scrierea celular˘ a a luiµ¸ si Σ,adic˘ a
µ=/parenleftBigg
µ(1)
µ(2)/parenrightBigg
,/parenleftBigg
Σ11Σ12
Σ21Σ22/parenrightBigg
. (4.12)
Dac˘ aµ¸ si Σ sunt cunoscute atunci este adev˘ arat˘ a urm˘ atoarea te orem˘ a
Teorema 4. 4 Repartit ¸ia condit ¸ionat˘ a a lui X(1)cˆ and se d˘ a X(2)=x(2)
este normal˘ a N(µ(1)
∗,Σ∗
11)unde
µ(1)
∗=µ(1)+ Σ12Σ−1
22(x(2)−µ(2)),Σ∗
11= Σ11−Σ12Σ−1
22Σ21.(4.13)

4.3. SIMULAREA VECTORILOR NORMALI 107
Nu prezent˘ am demonstrat ¸ia acestei teoreme.
De aici se deduce algoritmul de simulare a lui X(1)condit ¸ionat de X(2)=
x(2)¸ si anume
Algoritmul NORMCOND de simulare condit ¸ionat˘ a.
Intrare x(2), µ(i),Σij, i,j= 1,2;
Calculeaz˘ a µ(1)
∗,Σ∗
11;
Genereaz˘ a Z(1);N(0,Ir×r);
Calculeaz˘ a C∗astfel incˆ at C∗C∗/prime= Σ∗
11;
Calculeaz˘ a X(1)
∗=µ(1)
∗+C∗Z(1).
Rezultatul este X(1)
∗;N(µ(1)
∗,Σ∗
11).
•O metod˘ a special˘ a. Presupunem c˘ a matricea de covariant ¸˘ a Σ are
elementele de forma
σij=/braceleftbiggσ2
idaca i =j, σi>0
σiσjλiλjdaca i/negationslash=j, λi∈[−1,1].(4.13/prime)
Se arat˘ a simplu c˘ a dac˘ a Z;N(0,I) este un vector normal ( k+1)−dimensiolal,
Z= (Z0,Z1,Z2,…,Z k)/prime,atunci
Xi=µi+σi(/radicalBig
1−λ2
iZi+λiZ0),1≤i≤k (4.13/prime/prime)
este un vector normal N(µ,Σ), µ= (µ1,µ2,…,µ k)/prime.
Intr-adev˘ ar, deoarece Zi;N(0,1) rezult˘ a c˘ a Xisunt normale ¸ si deci
X= (X1,X2,…,X k)/primeare repartit ¸ie normal˘ a multidimensional˘ a. In plus
avem
E(Xi) =µi, Var(Xi) =σ2
i(1−λ2+λ2) =σ2
i, σij=Cov(Xi,Xj) =
E[(Xi−µi)(Xj−µj)] =E[σi(/radicalBig
1−λ2
iZi+λiZ0)σj(/radicalBig
1−λ2
jZj+λjZ0)] =
=σiσjE[/radicalBig
(1−λ2
i)(1−λ2
j)ZiZj+λj/radicalBig
1−λ2
iZ0Zj+
+λi/radicalBig
1−λ2
jZ0Zi+λiλjZ2
0] =σiσjλiλj, i/negationslash=j
adic˘ aσijeste dat de (4.13’). Simularea vectorului normal in acest ca z special
se face determinˆ and componentele sale cu formula (4.13”).

108 CAP. 4. SIMULAREA VECTORILOR ALEATORI
4.4 Simularea repartit ¸iei Cauchy multidi-
mensionale
In capitolul precedent s-a introdus repartit ¸ia Cauchy sta ndard a c˘ arei den-
sitate este
f(x) =1
π(1 +x2)(4.14)
¸ si care se poate simula cu ajutorul metodei inverse (vezi ta belul 3.1). Se
poate ar˘ at˘ a c˘ a dac˘ a Z1,Z2sunt variabile normale N(0,1) independente,
atunci variabila
X=Z1
Z2(4.15)
are repartict ¸ia Cauchy standard.
Din aceast˘ a proprietate rezult˘ a deci o metod˘ a simpl˘ a de simulare a vari-
abileiX-Cauchy standard unidimensionale ca raport de variabile no rmale
N(0,1) independente.
O variabil˘ a Yare repartit ¸ia Cauchy (c,σ) dac˘ a densitatea sa este
g(x) =1
σ.1
1 +(x−c)2
σ2, c∈R, σ> 0. (4.16)
Simularea lui Yse va face cu formula Y=c+σX.
In mod asem˘ an˘ ator se poate introduce repartit ¸ia Cauchy s tandard mul-
tidimensional˘ a. Vectorul aleator Xare repartit ¸ia Cauchy standard multidi-
mensional˘ a dac˘ a densitatea sa de repartit ¸ie este de forma
f(x) =Γ/parenleftBig
k+1
2/parenrightBig
πk+1
21
(1 +x/primex)k+1
2,x∈Rk. (4.15/prime)
Ca ¸ si in cazul unidimensional se arat˘ a c˘ a dac˘ a Zeste un vector k−dimensi-
onal normal N(0,I) ¸ siηeste o variabil˘ a normal˘ a N(0,1) independent˘ a de
Z,atunci Xse poate simula cu formula
X=Z
η. (4.15/prime/prime)
Se poate considera ¸ si repartit ¸ia multidimensional˘ a Cauchy (c,Σ) care are
densitatea de forma
g(x) =Γ(k+1
2)
πk+1
2(detΣ)1
21
[1 + (x−c)/primeΣ−1(x−c)]k+1
2. (4.16/prime)

4.5. SIMULAREA REPARTIT ¸IEI MULTINOMIALE 109
Relat ¸ia dintre vectorul Cauchy standard X¸ si vectorul Y;Cauchy (c,Σ)
este asem˘ an˘ atoare relat ¸iei dintre vectorul ZnormalN(0,I) ¸ si vectorul Ynor-
malN(c,Σ),adic˘ a dac˘ a Xare repartit ¸ie Cauchy standard ¸ si Y;Cauchy (c,Σ)
¸ si consider˘ am matricea Sinferior triunghiular˘ a astfel ca Σ = SS/prime,atunci Y
se poate genera cu formula
Y=SX+c. (4.16/prime/prime)
Combinˆ and (4.15’) cu (4.16”) rezult˘ a c˘ a Y;Cauchy (c,Σ) se simuleaz˘ a cu
formula
Y=Z∗
η(4.17)
undeZ;N(0,Σ),independent de η;N(0,1).
4.5 Simularea repartit ¸iei multinomiale
Aceast˘ a repartit ¸ie este generalizarea multidimensiona l˘ a a repartit ¸iei binomi-
ale. Vectorul aleator cu componente intregi nenegative X= (X1,X2,…,X k)/prime,
X1+X2+…+Xk=n,are repartit ¸ia multinomial˘ a Multinom (n,p1,p2,…,p k)
dac˘ a
P(X1=n1,X2=n2,…,X k=nk) =n!
n1!n2!…nk!pn1
1pn2
1…pnk
k,
n1+…+nk=n, p i>0,1≤i≤k, p 1+p2+…pk= 1. (4.18)
Se arat˘ a c˘ a
mi=E[Xi] =npi, σ2
i=Var[Xi] =npi(1−pi) =Cov(Xi,Xi),
σij=Cov(Xi,Xj) =E[XiXj]−E[Xi]E[Xj] = (4 .18/prime)
=n(n−1)pipj−n2pipj=−npipj, i/negationslash=j.
Vectorul Xare o interpretare asem˘ an˘ atoare variabilei binomiale in cazul
unui experiment cu urn˘ a dup˘ a cum urmeaz˘ a: s˘ a presupunem c˘ a intr-o urn˘ a
se g˘ asescNibile de culoarea i, 1≤i≤k,N=N1+N2+…Nk.Se presupune
c˘ a se extrag nbile din urn˘ a cu intoarcere , din careXisunt bile de culoarea
i, n=X1+X2+…Xk.Atunci vectorul aleator X= (X1,X2,…,X k)/primeare
repartit ¸iaMultinom (n,p1,…,p k), pi=Ni/N,/summationtext
ipi= 1.

110 CAP. 4. SIMULAREA VECTORILOR ALEATORI
Aceast˘ a interpretare ne conduce la urm˘ atorul algoritm pe ntru simularea
luiX
Algoritmul MULTINOM de simulare a repartit ¸iei multinomiale
Intraren,k,p 1,p2,…,p k¸ si calculeaz˘ a F[α] =α/summationtext
i=1pi,1≤i≤k; (Acesta
este un pas preg˘ atitor);
Init ¸ializeaz˘ a X[1] = 0,…,X [k] = 0;
fori:= 1tondo begin
Simuleaz˘ aU:=random ;Iai:= 1;
whileU≥F[i]doi:=i+ 1;
Insumeaz˘ a X[i] :=X[i] + 1;
end.
Testarea algoritmului se face in mod simplu astfel
– Se genereaz˘ a select ¸ia de volum T,X(α)= (X(α)
1,…,x(α)
k)/prime,1≤α≤T;
– Se calculeaz˘ a mediile aritmetice ¸ si dispersiile empiri ce
Xi=1
TT/summationdisplay
α=1X(α)
i, s2
i=1
TT/summationdisplay
i=1[X(α)
i]2−Xi2.
Pentru validarea algoritmului, trebuie, ca pentru un Tmare s˘ a avem mi≈
Xi, σ2
i≈s2
i,undemi¸ siσ2
isunt date de (4.18’).
4.6 Simularea repartit ¸iei Dirichlet.
Un vector aleator Xare repartit ¸ia Dirichlet (ν1,ν2,…,ν k+1) dac˘ a densitatea
sa de repartit ¸ie este
f(x1,x2,…,x k) =/braceleftBiggΓ(ν1+…+νk+1)
Γ(ν1)…Γ(νk+1)xν1
1…xνk
k(1−x1−…−xk)νk+1,x∈Sk
0, daca x /∈Sk
x= (x1,…,x k)/prime, Sk={(x1,…,x k)/prime∈Rk,xi≥0,1≤i≤k,/summationdisplay
ixi≤1}.
(4.19)
Se arat˘ a c˘ a dac˘ a Yi;Gamma (0,1,νi),1≤i≤k+ 1 sunt variabile gama
independente, atunci vectorul Xale c˘ arui componente sunt de forma
Xi=Yi
Y1+Y2+…+Yk+1,1≤i≤k, (4.20)

4.6. SIMULAREA REPARTIT ¸IEI DIRICHLET. 111
are o repartit ¸ie Dirichlet (ν1,ν2,…,ν k+1).Se observ˘ a deci c˘ a repartit ¸ia Dirich-
let este o extensie la cazul multidimensional a repartit ¸ie i Beta. Formulele
(4.16) simuleaz˘ a componentele unui vector Dirichlet, pre supunˆ andu-se de-
sigur c˘ a parametri νi,1≤i≤k+ 1 sunt cunoscut ¸i.
Exercit ¸ii
E4.1 S˘ a se prezinte o metod˘ a de simulare a unui vector V= (V1,V2)/prime,
uniform pe cercul C(O,r).
Solut ¸ie. Se simuleaz˘ a un vector W= (W1,W2)/primeuniform pe [−r,r]×
[−r,r] ¸ si se pune condit ¸ia ca el s˘ a apart ¸in˘ a cercului. Algori tmul este:
repeat
Genereaz˘ a: U1:=random ;U2:=random ;
W1:=−r+ 2rU1;W2:=−r+ 2rU2;
untilW2
1+W2
2≤r2;
IaV1:=W1;V2:=W2.
E4.2 S˘ a se prezinte o metod˘ a de simulare a unui vector W= (W1,W2)/prime
uniform pe elipsa de semiaxe a,b> 0.
Indicat ¸ie. Se simuleaz˘ a un vector V= (V1,V2)/primeuniform pe intervalul
[−a,a]×[−b,b] ¸ si se pune condit ¸ia ca V2
1/(a2) +V2
2/(b2)≤1.
E4.3 Se consider˘ a vectorul X= (X1,X2,…,X k)/primeundeXi;Exp(λiη)
sunt independente iar η;Gamma (0,b,a).S˘ a se determine densitatea de
repartit ¸ie a lui X¸ si s˘ a se indice un algoritm pentru simularea acestuia.
Solut ¸ie. S˘ a not˘ am
g(η) =/braceleftbiggba
Γ(a)ηa−1e−ηb, daca η> 0
0, η≥0.
Atunci densitatea de repartit ¸ie a lui Xeste
f(x1,x2,…,x k) =

(k/producttext
i=1λi)/integraltext∞
0ηk+a−1ba
Γ(a)e−k/summationtext
i=1xiλiη
e−bηdη, x i>0
o, altfel=
=

ba
Γ(a)(k/producttext
i=1λi)/integraltext∞
0ηa+b−1e−η(k/summationtext
i=1xiλi+b)
dη, daca x i>0
0, altfel=
=

ba
Γ(a)(k/producttext
i=1λi)Γ(a+k)
(b+k/summationtext
i=1λixi)a+k, xi>0
0, altfel=

112 CAP. 4. SIMULAREA VECTORILOR ALEATORI
=

(/producttextk
i=1θi)a(a+1)…(a+k−1)
(1+k/summationtext
i=1θixi)a+k, daca x i>0
0, altfel,θi=λi
b.
Simularea lui Xse poate face prin metoda compunerii.
Se poate ar˘ ata (folosind (4.6)) c˘ a pentru xi>0
f(xm|x1,…,x m−1) =θm(a+m−1)(1 +m−1/summationtext
i=1θixi)a+m−1
(1 +m−1/summationtext
i=1θixi+θmxm)a+m
de unde
F(xm|x1,…,x m−1) = 1−
1 +k−1/summationtext
i=1θixi
1 +m/summationtext
i=1θixi
a+m−1
.
Ultima formul˘ a permite simularea lui Xutilizˆ and teorema 4.1.
E4.4 Fie vectorul aleator ( X,Y)/primecu componente pozitive avˆ and densi-
tatea de repartit ¸ie
f(x,y) =/braceleftbiggα(α+β)e−(α+β)y, daca 0≤x<y
β(α+β)e−(α+β)xdaca 0≤y<x
(repartit ¸ia bidimensional˘ a a lui Freund). S˘ a se determi neE(X),E(Y),
Var(X),Var(Y) ¸ si s˘ a se g˘ aseasc˘ a o metod˘ a de simulare a vectorului ( X,Y)/prime.
Indicat ¸ie. Densit˘ at ¸ile marginale ¸ si sunt
fX(x) = [α+xβ(α+β)]e−(α+β)x, x> 0, f Y(y) = (α+β)e−(α+β)y, y>0
iar
Fx(x) = 1−(1 +βx)e−(α+β)x
de unde se pot calcula cu u¸ surint ¸˘ a mediile ¸ si dispersiil e.
Pentru simulare se aplic˘ a metoda invers˘ a (teorema 4.1) un deX;Fx(x)
iarf(y|x) este de forma
f(y|x) =

β(α+β)
α+β(α+β)xdaca 0<y<x
α(α+β)e−(α+β)(y−x)
α+β(α+β)xdaca y>x.
Se observ˘ a c˘ a
f(y|x) =p1
xI(0,x)+ (1−p)(α+β)e−(α+β)(y−x)I(x,∞), p=β(α+β)x
α+β(α+β)x

4.6. SIMULAREA REPARTIT ¸IEI DIRICHLET. 113
adicaf(y|x) este amestecarea densit˘ at ¸ii uniforme pe [0 ,x] cu densitatea
Exp(α+β)) trunchiat˘ a pe ( x,∞).(IA(x) este funct ¸ia indicator a lui A).
E4.5Enunt ¸at ¸i ¸ si demonstrat ¸i teorema de respingere a inf˘ a¸ sur˘ atoarei pen-
tru vectori aleatori. Aplicat ¸i aceast˘ a metod˘ a pentru si mularea vectorului
(X,Y)/primedin exemplul 4.4.
Solut ¸ie. Teorema inf˘ a¸ sur˘ atoarei in cazul multidimensional este
Teorema 4. 5 Fie vectorul aleator X;f(x)pe care dorim sa-l simul˘ am.
FieY;h(x)pe care ¸ stim sa-l simul˘ am. Presupundem c˘ a f(x)¸ sih(x)
au acela¸ s suport S⊆Rk¸ si c˘ a exist˘ a α,0< α <∞astfel incˆ at f(x)≤
αh(x),∀x∈Rk.Dac˘ aUeste o variabil˘ a uniform˘ a 0−1independent˘ a de
Y, atunci densitatea de repartit ¸ie a lui Ycondit ¸ionat˘ a de 0< U≤f(Y)
αh(Y)
estef(x).
Pentru a aplica aceast˘ a teorem˘ a in cazul exemplului 4.4 s˘ a observ˘ am c˘ a
densitatea de repartit ¸ie este
f(x,y) =/braceleftbigge−(x+y+θxy)[(1 +θx)(1 +θy)−θ], dacax,y > 0
0, altfel.
Pentru a aplica teorema inf˘ a¸ sur˘ atoarei vom lua
h(x,y) =/braceleftbigge−(x+y)dacax> 0, y>0
0altfel,
adic˘ a vectorul corespunzˆ and densit˘ at ¸ii inf˘ a¸ sur˘ at oare are componentele exponent ¸iale
Exp(1) independente.
E4.6. FieU1,U2,…,U nnumere aleatoare uniforme pe [0 ,1] independente
¸ si s˘ a consider˘ am aceste numere ordonate (adic˘ a statist ica de ordine) U(1)≤
U(2)≤…≤U(n).Not˘ amU(0)= 0.U(n+1)= 1.S˘ a se arate c˘ a vectorul aleator
(S1,S2,…,S n), Si=U(i)−U(i−1),1≤i≤n+ 1,are repartit ¸ie uniform˘ a pe
simplexul
An={(x1,x2,…,x n);xi≥0,n/summationdisplay
i=1xi≤1}.
Solut ¸ie. NumereleU(1),…,U (n)sunt uniform repartizate pe domeniul
(simplexul)
Bn={(x1,…,x n);0≤x1≤…≤xn≤1}.
S˘ a facem acum transformarea
s1=u1;s2=u2−u1, ,…,s n=un−un−1

114 CAP. 4. SIMULAREA VECTORILOR ALEATORI
a c˘ arei invers˘ a este
u1=s1, u2=s1+s2, ,…,u n=s1+s2+…+sn.
Jacobianul acestei transform˘ ari este J= 1.Deoarece repartit ¸ia lui ( U(1),…,U (n))
este uniform˘ a adic˘ a are densitatea
f(u1,…,u n) =/braceleftbigg1
mes B n,(u1,…,u n)∈Bn
0,(u1,…,u n)/∈Bn
rezult˘ a c˘ a ( S1,…,S n) are tot densitate uniform˘ a pe An(transformatul lui
Bn) adic˘ a
g(s1,…,s n) =/braceleftbigg1
mes A n(s1,…,s n)∈An
0 (s1,…,s n)/∈An,mesA n=mesB nJ.
Not˘ a. De aici rezult˘ a c˘ a simularea unui vector uniform pe domeni ul
An∈Rnse realizeaz˘ a simulˆ and U1,…,U nuniforme pe [0 ,1] independente,
¸ si calculˆ and apoi ( S1,…,S n) cu ajutorul statisticii de ordine U(1)≤U(2)≤
…≤U(n).
E4.7 Folosind teorema 4.1 construit ¸i un algoritm pentru simula rea vec-
toruluialeator discret ( X,Y)/primecuX¸ siYluˆ and mult ¸imi finite de valori.
Indicat ¸ie. Repartit ¸ia discret˘ a a lui ( X,Y)/primeeste dat˘ a de tabela de contingent ¸˘ a
Y=b1. . .brpi.
X=a1p11. . . . p1rp1.
a2p21 . . .p2rp2.
. . . .
asps1. . .psrps.
p.1. . .p.r
Repartit ¸ia marginal˘ a a lui Xeste
p1.p2….ps.
¸ si cu ajutorul ei se simuleaz˘ a X, iar repartit ¸ia lui Ycondit ¸ionat˘ a de X=ai
estepi1
pi.pi2
pi….pir
pi.
¸ si din ea se simuleaz˘ a Y.(In tabela ¸ si in formulele de mai sus, indicii inlocuit ¸i
cu punct (.) noteaz˘ a rezultatele insum˘ arilor pe coloane sau pe lin ii).

4.6. SIMULAREA REPARTIT ¸IEI DIRICHLET. 115
Not˘ a. Dac˘ a pentru un vector bidimensional ( X,Y) se d˘ a o select ¸ie
(X1,Y1),(X2,Y2),…,(Xn,Yn),cu ajutorul ei se poate construi o tabel˘ a de
frecvent ¸˘ a bidimensional˘ a asem˘ an˘ atoare histogramei. Ea va fi de forma tabelei
de mai sus unde in loc de pijse vor scrie frecvent ¸ele fij.Aceasta se nume¸ ste
tabel˘ a de contingent ¸˘ a.

116 CAP. 4. SIMULAREA VECTORILOR ALEATORI

Cap. 5
Simularea proceselor
stochastice
5.1 Generalit˘ at ¸i
O familie de variabile aleatoare, {Xt}t∈T,T⊂R, deprinzˆ and de parame-
trul realt(presupus a fi timpul ) se nume¸ ste proces stochastic. Dac˘ aTeste o
mult ¸ime discret˘ a (deobicei T={0,1,2,…}), atunci procesul se nume¸ ste lant ¸.
Dac˘ aTeste un interval I⊆Ratunci procesul este cu timp continuu. Valorile
luiXtse numesc st˘ ari. Fie Smult ¸imea valorilor unui proces stochastic. Dac˘ a
mult ¸imeaSeste discret˘ a spunem c˘ a procesul este cu st˘ ari discrete iar dac˘ a
Seste de puterea continuumului, spunem c˘ a procesul este cu st˘ ari continue.
Mult ¸imea{(t,Xt)|t∈T}se nume¸ ste traiectorie a procesului stochastic.
Procesul stochastic este cunoscut dac˘ a pentru ∀n,t1,t2,…,t neste cunos-
cut˘ a funct ¸ia de repartit ¸ie
Ft1,t2,…tn(x1,x2,…,x n) =P(Xt1<x1,…,X tn<xn).
Definit ¸ia 5. 1 Procesul stochastic {Xt}t∈Tse nume¸ ste stat ¸ionar tare dac˘ a
∀n,h∈R, t1<t2<…<t navem
Ft1+h,t2+h,…,t n+h(x1,x2,…,x n) =Ft1,t2,…,t n(x1,x2,…,x n). (5.1)
Procesul{Xt}t∈Tse nume¸ ste stat ¸ionar slab sau simplu stat ¸ionar dac˘ a
are momente de ordinul doi, adic˘ a exist˘ a ¸ si sunt finite mt=E[Xt], σst=
Cov[Xs,Xt], s<t ¸ simt=m=const, σ st=σ(t−s).
117

118 CAP. 5. SIMULAREA PROCESELOR STOCHASTICE
Observ˘ am c˘ a pentru un proces stat ¸ionar tare, avem in part icularFt+h(x) =
Ft(x),adic˘ a procesul are aceea¸ si funct ¸ie de repartit ¸ie la ori ce moment de
timpt, dar variabilele Xtpot s˘ a nu fie independente pentru diverse valori
ale luit.Dac˘ a variabilele Xtsunt independente atunci suntem in cazul banal
clasic, al unei familii de variabile aleatoare independent e.
Se poate observa cu u¸ surint ¸˘ a c˘ a dac˘ a {Xt}t∈Teste stat ¸ionar tare ¸ si
are momente de ordinul doi, atunci el este stat ¸ionar; recip roc nu este ins˘ a
adev˘ arat.
In ceeace prive¸ ste simularea proceselor stochastice, ne i ntereseaz˘ a s˘ a pro-
ducem cu calculatorul puncte ale unor traiectorii finite. In cazul unui lant ¸ de
exemplu este necesar s˘ a producem un num˘ ar finit de puncte al e traiectoriei
lant ¸ului. In cazul unui proces cu timp continuu simul˘ am di ntr-o traiectorie
numai un num˘ ar finit de puncte ale acesteia, deobicei coresp unzˆ and valorilor
discrete ale timpului t= 0,1,2,…,n. De fapt problema construirii unui algo-
ritm de simulare a unui proces revine la urm˘ atoarele: dˆ and u-se o valoare X0
a procesului (presupus˘ a a se afla pe o traiectorie a sa la mome ntult= 0),
se cere s˘ a se simuleze valoarea X1aflat˘ a pe aceea¸ si traiectorie la momentul
t= 1.
Desigur, problema simul˘ arii unui proces stochastic este m ult mai com-
plicat˘ a decˆ at a variabilelor aleatoare. In cele ce urmeaz ˘ a ne vom ocupa
de simularea lant ¸urilor ¸ si proceselor Markov ¸ si de simularea unor procese
stat ¸ionare care au repartit ¸ii de probabilitate cunoscute.
5.2 Lant ¸uri ¸ si procese Markov
Procesele ¸ si lant ¸urile Markov sunt acelea care satisfac proprietatea lui Markov.
Definit ¸ia 5. 2 Procesul{Xt}t∈Tdiscret, este un proces Markov dac˘ a satis-
face proprietatea
P(Xtn=xn|Xtn−1=xn−1,…,X t1=x1) =P(Xtn=xn|Xtn−1=xn−1)
(5.2)
adic˘ a procesul nu are memorie. Probabilit˘ at ¸ile P(Xtn=xn|Xtn−1=xn−1)
se numesc probabilit˘ at ¸i de tranzit ¸ie sau probabilit˘ at ¸i de trecere.
Dac˘ aT={0,1,2,…,n,}¸ siS={1,2,…,m},atunci avem de-a face cu un
lant ¸ Markov cu un num˘ ar finit de st˘ ari. Acest lant ¸ este car acterizat de
vectorulπ= (π1,π2,…,π n)/primecare reprezint˘ a repartit ¸ia init ¸ial˘ a a st˘ arilor ¸ si de
mult ¸imea probabilit˘ at ¸ilor de tranzit ¸ie Pij(s,t) =P(Xt=j|Xs=i), i,j∈
S, s<t, s,t∈N.

5.3. SIMULAREA UNUI LANT ¸ MARKOV 119
Se arat˘ a c˘ a probabilit˘ at ¸ile de tranzit ¸ie satisfac relat ¸ia lui Chapman-
Kolmogorov, adic˘ a
Pij(s,t) =/summationdisplay
k∈S/summationdisplay
s≤r≤tPik(s,r)Pkj(r,t). (5.2/prime)
Observ˘ am c˘ a Pij(s,t) definesc ni¸ ste matrici de probabilit˘ at ¸i de tranzit ¸ie care
au proprietatea/summationdisplay
j∈SPij(s,t) = 1. (5.3)
Dac˘ at−s= 1 atunci matricile ||Pij(s,s+ 1)||,s∈Nsuntmatrici de
probabilit˘ at ¸i de tranzit ¸ie intr-un pas ¸ si matricile||Pij(s,t)||,s,t∈Nsunt
matrici de tranzit ¸ie in t−spa¸ si. Dac˘ a Pij(s,s+ 1) =pij(adic˘ a aceste
probabilit˘ at ¸i nu depind de momentele scˆ and au loc tranzit ¸iile intr-un pas)
spunem c˘ a lant ¸ul Markov este omogen sau stat ¸ionar.
S˘ a not˘ am cu Pmatricea probabilit˘ at ¸ilor de tranzit ¸ie intr-un pas pen tru
un lant ¸ Markov omogen ¸ si cu P(n)matricea probabilit˘ at ¸ilor de trecere inn
pa¸ sipentru acela¸ s lant ¸. Atunci din (5.2’) se deduce cu u¸ surin t ¸˘ a c˘ a
P(n+1)=P(n)P=PP(n)=Pn+1. (5.2/prime/prime)
Dac˘ a repartit ¸ia init ¸ial˘ a π= (π1,π2,…,π m)/primeeste cunoscut˘ a atunci folosind
formula probabilit˘ at ¸ii totale
P(Xn=s) =m/summationdisplay
j=1P(n)
sjπj (5.3)
deducem, utilizˆ and ¸ si (5.2”) repartit ¸ia lant ¸ului omog en la momentul n,π(n),
astfel
π(n)=Pnπ, P=||pij||,m/summationdisplay
j=1pij= 1. (5.4)
Dac˘ a o stare ia unui lant ¸ omogen are proprietatea c˘ a exist˘ a un j, j/negationslash=iastfel
incˆ atpij>0,atunci starea iestestare de tranzit ¸ie, iar dac˘ apii= 1 atunci
stareaiestestare absorbant˘ a. (Cˆ and lant ¸ul intr˘ a intr-o stare absorbant˘ a, el
nu mai p˘ ar˘ ase¸ ste acea stare).
5.3 Simularea unui lant ¸ Markov
S˘ a presupunem c˘ a se cunoa¸ ste repartit ¸ia init ¸ial˘ a π= (π1,π2,…,π m)/prime¸ si ma-
tricea probabilit˘ at ¸ilor de tranzit ¸ie P=||pij||.Atunci starea init ¸ial˘ a I=ise

120 CAP. 5. SIMULAREA PROCESELOR STOCHASTICE
simuleaz˘ a ca variabila discret˘ a
I:/parenleftBigg
1,2,…,m
π1,π2,…,π m/parenrightBigg
. (5.5)
Dac˘ a lant ¸ul se afl˘ a in starea iatunci starea aleatoare urm˘ atoare in care trece
lant ¸ul se simuleaz˘ a ca variabila discret˘ a
J:/parenleftBigg
1,2,…,m
pi1,pi2,…,p im/parenrightBigg
. (5,5/prime)
Deci, algoritmul de simulare a unei traiectorii i1,i2,…,i ncˆ and se dau π,P
este
Algoritmul MARKOVOMOG de simulare a lant ¸ului omogen
Cite¸ steπ,P=||pij||;Citet ¸en;
calculeaz˘ afi=/summationtexti
α=1πα, Fij=/summationtextj
α=1piα,1≤i≤m; (Acestea sunt
calcule preg˘ atitoare);
genereaz˘ aU:=random ;i:= 1 :whileU≥fidoi:=i+ 1;
fork:= 1tondo
begin
Genereaz˘ aU:=random ;Iaj:= 1;
whileU≥Fijdoj:=j+ 1;
Iai:=j,ik=i;Scrieik;
end.
In mod asem˘ an˘ ator se poate face ¸ si simularea lant ¸ului ne omogen, dac˘ a
se cunosc probabilit˘ at ¸ile de tranzit ¸ie intr-un pas Pij(s,s+ 1),1≤s≤n.
In acest caz, probabilit˘ at ¸ile Pij(s,s+ 1) sunt citite in cadrul ciclului foral
algoritmului cˆ and se calcululeaz˘ a pe rˆ and ¸ si probabilit˘ at ¸ile cumulate Fij.
S˘ a mai observ˘ am c˘ a dac˘ a lant ¸ul Markov are o stare absorb ant˘ ai0,cele-
lalte fiind de tranzit ¸ie, atunci din orice stare init ¸ial˘ a iar porni procesul,
exist˘ a o traiectorie finit˘ a de lungime N(i)astfel incˆ at X1=i,…,X N(i)=i0,
adic˘ a lant ¸ul se opre¸ ste in starea absorbant˘ a i0.
Pentru un proces Markov cu o mult ¸ime continu˘ a Sde st˘ ari{Xt}t∈Tse
presupune dat˘ a densitatea de repartit ¸ie init ¸ial˘ a p(x)>0, x∈S¸ si densitatea
de probabilitate de tranzit ¸ie q(x,y)>0, x,y∈S,densit˘ at ¸i care satisfac
condit ¸iile /integraldisplay
Sp(x)dx= 1,/integraldisplay
Sq(x,y)dy= 1. (5.6)
Algoritmul in acest caz este

5.4. SIMULAREA UNOR PROCESE GAUSIENE STAT ¸IONARE 121
Algoritmul MARKOVCONT de simulare a unui proces Markov con-
tinuu
Intraren; (n=num˘ arul de puncte ale traiectoriei);
genereaz˘ a starea init ¸ial˘ a X0;p(x);
fori:= 1ton−1do
begin
Genereaz˘ aY;q(X0,y);
IaXi:=Y;X0:=Y;ScrieXi;
end.
Punctele traiectoriei generate sunt X0,X1,…,X n−1.
5.4 Simularea unor procese gausiene sta-
t ¸ionare
Fie procesul stat ¸ionar care are funct ¸ia de autocovariant ¸˘ a
φ(t) =Cov(Xs,Xs+t), t= 0,1,2,… φ (0) =Var(Xt) =σ2(4.7)
¸ si f˘ ar˘ a a pierde generalitatea consider˘ am mt=m= 0.Dac˘ a not˘ am ρ(Xs,Xt+s) =
Corr(Xs,Xt+s) rezult˘ a c˘ a ρ(Xs,Xt+s) =ρ(t), t= 1,2,…Funct ¸iaρ(t) este
funct ¸ia de autocorelat ¸ie a procesului.
Dac˘ a pentru orice t, repartit ¸ia lui Xteste normal˘ a N(0,σ),atunci pro-
cesul{Xt}t∈Teste un proces gausian.
5.4.1 Procesul gausian cu funct ¸ie de autocorelat ¸ie
exponent ¸ial˘ a
Acest proces are fun¸ ctia de autocorelat ¸ie
ρ(t) =φ(t)
φ(0)=θt, t= 1,2,…0<θ< 1 (5 .8)
¸ si s˘ a consider˘ am σ2dispersia sa. Acest proces se simuleaz˘ a cu formula de
recurent ¸˘ a
Z0;N(0,1), Z t+1=θZt+/radicalbig
1−θ2/epsilon1t, t= 1,2,…,X t+1=σZt+1(5.8/prime)
unde/epsilon1t,t= 1,2,…sunt variabile N(0,1) independente ¸ si independente de
Zt.Intr-adev˘ ar, Zt+1are repartit ¸ie normal˘ a ¸ si Var(Xt) =σ2¸ si
Cov(Zt,Zt+1) =Cov(Zt,Zt+1) =E[Zt,Zt+1] =E[Zt(θZt+/radicalbig
1−θ2/epsilon1t)] =

122 CAP. 5. SIMULAREA PROCESELOR STOCHASTICE
=E[θZ2
t]E[/radicalbig
1−θ2Zt/epsilon1t] =θ+/radicalbig
1−θ2E[Zt]E[/epsilon1t] =θ.
Asem˘ an˘ ator
Cov[Zt,Zt+2] =E[θZtZt+1] +E[Zt/radicalbig
1−θ2/epsilon1t] =
=θθ+E[Zt+1]E[/epsilon1t]/radicalbig
1−θ2=θ2.
Prin induct ¸ie se deduce c˘ a E[Z1Zt+1] =θt¸ si formula (5.8’) este justi-
ficat˘ a. Aceast˘ a formul˘ a iterativ˘ a permite deci simular ea unei traiectorii
X1,X2,…,X n.Se observ˘ a c˘ a σnu joac˘ a un rol important ¸ si de aceea putem
consideraσ= 1.
5.4.2 Procesul gausian cu funct ¸ie de autocorelat ¸ie
liniar˘ a
S˘ a presupunem c˘ a pentru un intreg mdat funct ¸ia de autocorelat ¸ie a proce-
sului gausian{Xt}este de forma
ρ(t) =/braceleftbigg1−t
m, daca 1≤t≤m
o,altfel, Cov(Xt,Xt+k) = Φ(k),(5.9)
ρ(k) =Φ(k)
Φ(0), Var (Xt) =σ2
∗= Φ(0)
¸ si dorim s˘ a simul˘ am un proces gausian {Xt}cu aceast˘ a funct ¸ie de autocorelat ¸ie
¸ si cuVar(Xt) =σ2
∗.
Vom simula Xtutilizˆ and teorema limit˘ a central˘ a. Pentru aceasta s˘ a
consider˘ am variabilele aleatoare Vi,i≥1,independente ¸ si uniform distribuite
pe [−a,a], a>0 cua−dat. Avem deci
E[V] = 0, Var [V] =a2
3=σ2. (5.10)
Pentru a genera procesul gausian {Xt}t∈Nde medie 0 ¸ si dispersie σ2
∗,alegem
mai intˆ aiN >10 (impus de teorema limit˘ a central˘ a) ¸ si un num˘ ar natura l
p, p> 0 a c˘ arui valoare va fi precizat˘ a mai jos. Simul˘ am valorile de select ¸ie
Xt,Xt+1,t∈N,astfel
Xt=n/summationdisplay
i=1Vi, X t+1=N+p/summationdisplay
i=p+1Vi, (5.11)

5.4. SIMULAREA UNOR PROCESE GAUSIENE STAT ¸IONARE 123
¸ si vom determina a,σ,p astfel incˆ at
Corr(Xt,Xt+k) =ρ(k). (5.12)
Deoarece in expresiile lui Xt,Xt+1aparN−pvariabileViindependente,
avem
Cov[Xt,Xt+k] =E{(Xt−Xt+k)2}=E{X2
t−2XtXt+k+X2
t+k}=
=E{(Xt−Xt+k)2}= 2Nσ2−2Φ(k). (5.12)
Dac˘ ak<N/p atunci in expresia E[(Xt−Xt+k)2] exist˘ a numai 2 kpvariabile
de select ¸ieViindependente stochastic, de unde
E[(Xt−Xt+k)2] = 2kp2= 2Nσ2−2Φ(k)→kp2=Nσ2−Φ(k).
Din ultima relat ¸ie deducem c˘ a
ρ(k) =Φ(k)
Nσ2= 1−kp
N
¸ si identificˆ and cu prima relat ¸ie (5.9) trebuie s˘ a lu˘ am
p=N
m
pentru a obt ¸ine expresia cerut˘ a a lui ρ(k).
Trebuie s˘ a determin˘ am acum valoarea lui a.DeoareceVar(Xt) =Nσ2=
σ2
∗¸ si conform (5.10) a=σ√
3,rezult˘ a c˘ a trebuie s˘ a avem
σ=σ∗√
Na=σ∗√
N√
3.
In concluzie, dˆ andu-se m,σ∗¸ siN(de ex.N= 12,) simularea procesului
gausian cu funct ¸ia de autocorelat ¸ie dat˘ a de prima formul ˘ a (5.9) se realizeaz˘ a
cu urm˘ atorul algoritm
Algoritmul PRGAUSLIN de simulare a procesului gausian cu funct ¸ie
de autocorelat ¸ie liniar˘ a
Intrarem,σ∗,N;Calculeaz˘ a a:=σ∗√
N√
3;Determin˘ a pintreg astfel incˆ at
p=N
m; (Dac˘ a pentru mdat ¸ siNinit ¸ial ales nu exist˘ a intregul pastfel incˆ at
N=mpatunci se alege alt N >10 pentru care s˘ a poat˘ a fi determinat p.
Calculele precedente sunt calcule preg˘ atitoare);
fori:= 1toNdo begin

124 CAP. 5. SIMULAREA PROCESELOR STOCHASTICE
X0:= 0;Genereaz˘ aU:=random ;
Calculeaz˘ a W:=−a+ 2aU;Vi:=W;X0:=X0+Vi;
end:
ScrieX0;X1:= 0; (*)
fori:= 1toN−pdo beginVi:=Vi+p;X1:=X1+Viend;
fori:=N−p+ 1toNdo begin
Genereaz˘ aU:=random ;W:=−a+ 2aU;Vi:=W;
X1:=X1+Vi;ScrieX1;
end.
Repetˆ and de Tori instruct ¸iunile algoritmului precedent ce incep cu cal –
culul sumei X1(instruct ¸iunea *) se obt ¸ine traiectoria X1,X2,…,X Ta pro-
cesului gausian.
•Simularea procesului de zgomot alb pur. Procesul zgomotului
alb{Xt}t∈Teste descris de urm˘ atoarele relat ¸ii de recurent ¸˘ a
X0=/radicalBigg
1−θ
1 +θV0, Xt=θXt−1+ (1−θ)Vt,0<θ< 1, (5.13)
undeVt,t= 0,1,2,…sunt variable aleatoare independente ¸ si identic repar-
rtizate avˆ and propriet˘ at ¸ile E(Vt) = 0, Var(Vt) =σ2.Se observ˘ a c˘ a
E(Xt) = 0, Var(Xt) =σ2
∗=1−θ
1 +θσ2. (5.14)
Se deduce apoi c˘ a
Corr(Xt,Xt+k) =ρ(k) =θk. (5.15)
Intr-adev˘ ar, deoarece Xt−1este independent de Vtrezult˘ a c˘ a
Φ(1) =Cov(Xt,Xt−1) =E[Xt,Xt−1)] =θE[X2
t−1] =θσ2
∗.
Prin induct ¸ie se arat˘ a c˘ a
Φ(k) =Cov(Xt,Xt+k) =θkσ2

¸ si (5.15) este demonnstrat˘ a.
Algoritmul pentru simularea zgomotului alb este u¸ sor de co nstruit.
Dac˘ aVt, t= 0,1,…sunt variabile unifirme pe [ −a,a] cuadat, atunci
procesul{Xt}t∈Tse nume¸ ste zgomot alb pur. Desigur, asem˘ an˘ ator celor de
mai sus se deduce c˘ a
E[Vt] = 0, Var(Vt) =σ2=a2
3, Var(Xt) =σ2
∗=1−θ
1 +θσ2

5.5. SIMULAREA PROCESULUI POISSON 125
de unde, dˆ andu-se θ¸ siσ∗avem
σ=σ∗/radicalBigg
1 +θ
1−θ, a=σ√
3.
Cu aceste elemente se construie¸ ste u¸ sor algoritmul de sim ulare al zgomo-
tului alb pur pe baza relat ¸iei (5.13).
5.5 Simularea procesului Poisson
Procesul Poisson este un caz particular de proces de na¸ ster e ¸ si deces (vezi
$ 7.1.1), mai precis este un proces de na¸ stere pur cu intensi tateaλn=λ, a
c˘ arui repartit ¸ie satisface eceat ¸iile diferent ¸iale
P/prime
0(t) =−λP0(t), P/prime
n(t) =−λPn(t) +λPn−1(t), n≥1. (5.16)
Dac˘ a se dau condit ¸iile init ¸iale naturale P0(0) = 1,Pi(0) = 0,i >0 atunci
solut ¸ia sistemului (5.16) este
Pn(t) =(λt)n
n!e−λt(5.16/prime)
iar dac˘ aλdepinde de t,(λ=λ(t)) atunci solut ¸ia este
Pn(t) =(Λ(t))n
n!e−Λ(t),Λ(t) =/integraldisplayt
0λ(u)du. (5.16/prime/prime)
Procesul avˆ and repartit ¸ia (5.16’) se nume¸ ste proces Poisson omogen (PPO)
iar procesul avˆ and repartit ¸ia (5.16”) se nume¸ ste proces Poisson neomogen
(PPNO).
Simularea unei valori de select ¸ie a PPO sau PPNO se poate rea liza cu
ajutorul metodei din $ 3.6.3. Pentru aceasta reamintim c˘ a o valoare de
select ¸ieN;Poisson (λ) satisface condit ¸ia
SN≤1<SN+1, S k=k/summationdisplay
i=1Zi, Z i;Exp(λ).
Conceptul de PPO poate fi generalizat astfel: se consider˘ a c ˘ a procesul are
drept parametru tot t=timpul , ¸ si ia ca valori puncte X∈A⊂Rk; procesul,
numit PPOU uniform pe Ade intensitate λ, ia ca valori Xi∈A,1≤i≤N
dac˘ aN;Poisson (λVol(A)) ¸ siXisunt puncte uniform repartizate in A.
Desigur, PPOU pe Ase simuleaz˘ a astfel

126 CAP. 5. SIMULAREA PROCESELOR STOCHASTICE
Algoritm PPOU
genereaz˘ aN;Poisson (λVol(A));
genereaz˘ aX1,X2,…,X kpuncte uniform repartizate in A.
PuncteleXireprezint˘ a valori aleatoare ale PPOU.
In mod analog se poate considera PPNOU peAcˆ and variabila aleatoare
Nare repartit ¸ia N;Poisson (Λ(t)Vol(A)).

Cap. 6
Metoda Monte Carlo
6.1 Generalit˘ at ¸i
Sub denumirea de metode Monte Carlo sunt cuprinse o serie de tehnici de re-
zolvare a diverse probleme utilizˆ and numere aleatoare, variabile aleatoare sau
procese stochastice simulate cu calculatorul. Mai precis se accept˘ a urm˘ atoar ea
definit ¸ie
Definit ¸ia 6. 1 Fie de rezolvat o problem˘ a numeric˘ a Pcare are solut ¸ia θ.
O metod˘ a Monte Carlo pentru rezolvarea lui Pconst˘ a in urm˘ atoarele:
– se asociaz˘ a in mod adecvat un proces stochastic ξproblemei astfel
incˆ at cu ajutorul lui ξs˘ a se poat˘ a estima θ;(de exemplu θ=E[τ(ξ)],sau
E[τ(ξ)]→θ,sauτ(ξ)converge intr-un sens probabilist c˘ atre θ, undeτeste
o funct ¸ie dat˘ a). S˘ a not˘ am deci τ=τ(ξ)estimatorul lui θ.(τ(ξ)se nume¸ ste
estimator primar. ).
– se simuleaz˘ a o select ¸ie ξ1,ξ2,…,ξ nasupra luiξ¸ si se calculeaz˘ a un es-
timatorτnal luiτ(ξ); dac˘ a de exemplu E[τ(ξ)] =θatunci estimatorul lui
τ(ξ)este
τn=1
nn/summationdisplay
i=1τ(ξi) (6 .1)
¸ si el se nume¸ ste estimator secundar.
– solut ¸ia problemei Pse aproximeaz˘ a cu τn.
Dac˘ a estimatorul primar τ(ξ) este nedeplasat, adic˘ aE[τ(ξ)] =θ,atunci
estimatorul secundar τnsatisface de regul˘ a legea numerelor mari ¸ si deci
τn→θin probabilitate.
127

128 CAP. 6. METODA MONTE CARLO
Desigur, nu exist˘ a o regul˘ a sau o tehnic˘ a matematic˘ a bin e precizat˘ a pen-
tru construct ¸ia unei metode Monte Carlo. Este mai degrab˘ a o art˘ a necesar˘ a
pentru construct ¸ia unei astfel de metode.
De cele mai multe ori, estimatorul primar este τ(ξ) astfel caE[τ(ξ)] =θ.
(Deocamdat˘ a consider˘ am c˘ a θeste un num˘ ar, dar el poate fi ¸ si vector sau o
funct ¸ie). Estimat ¸ia Monte Carlo aproximeaz˘ a solut ¸ia θ,a¸ sa cum s-a precizat.
S˘ a presupunem c˘ a exist˘ a σ2=Var{τ(ξ)}<∞¸ si c˘ a dorim s˘ a aproxim˘ am
θcu o anumit˘ a eroare dat˘ a /epsilon1.Darθeste determinist ¸ si τneste aleator. De
aceea eroarea /epsilon1trebuie considerat˘ a in probabilitate, adic˘ a
P(|τn−θ|</epsilon1) =p= 1−δ (6.2)
undeδeste o probabilitate mic˘ a (un riscmic). Deci conform legii numerelor
mari, trebuie s˘ a alegem nastfel incˆ at pentru /epsilon1¸ siδsuficient de mici dat ¸i s˘ a
fie satisf˘ acut˘ a relat ¸ia (6.2).
Teorema 6. 1 Volumulnal select ¸ieiξ1,ξ2,…,ξ nnecesar pentru a estima θ
prinτncu eroarea/epsilon1dat˘ a ¸ si cu riscul δadmis este
n≥n0, n 0=/bracketleftBigg
t2
δσ2
/epsilon12/bracketrightBigg
+ 1, tδ=1√
δ(6.3)
unde[x]este partea intreag˘ a a lui x.
Demonstrat ¸ie. DeoareceVar(τ(ξ)) =σ2rezult˘ a c˘ a
Var(τn) =Var1
nn/summationdisplay
i=1τ(ξi) =σ2
n.
Aplicˆ and inegalitatea lui Cebˆ a¸ sev variabileiτnavem
P(|τn−θ|<tσ√n)≥1−1
t2=p.
Deoarece dorim ca P(|τn−θ|</epsilon1)≥p= 1−δ,impunem condit ¸iile
1−1
t2= 1−δ, tσ√n≤/epsilon1
de unde deducem
t=tδ=1√
δ, n≥t2
δσ2
/epsilon12
de unde rezult˘ a (6.3) ¸ si teorema este demonstrat˘ a.

6.1. GENERALIT ˘AT ¸I 129
Cu ajutorul metodei Monte Carlo se rezolv˘ a multe tipuri de p robleme
cum sunt: calculul integralelor, rezolvarea sistemelor de ecuai ¸i l iniare ¸ si a
ecuat ¸iilor integrale, rezolvarea problemei Dirichlet pe ntru ecuat ¸ii cu derivate
part ¸iale de tip eliptic, rezolvarea problemelor de oprimi zare cu restrict ¸ii, etc.
O parte din astfel de probleme vor fi tratate in continuare.
6.1.1 Calculul integralelor
Calculul numeric al integralelor, a¸ sa zisele formule de cu adratur˘ a, consti-
tuie un domeniu bine studiat in cadrul analizei numerice cla sice, mai ales in
cazulunidimensional. In cazul multidimensional ins˘ a, calculul integralelor
prindiscretizare, (aproximare prin sume integrale) este dificil de realizat
practic. De aceea in cazul multidimensional mult mai bune su nt procedurile
Monte Carlo de calcul al integralelor. Totu¸ si, pentru u¸ su rarea expunerii, aici
vom prezenta unele metode Monte Carlo de calcul al integrale lor numai in
cazul unidimensional, avˆ and ca scop numai simplificarea sc rierii. Va trebui
ins˘ a s˘ a avem ca obiectiv utilizarea metodelor mai ales in c azul multidimen-
sional. Desigur, metodele Monte Carlo se aplic˘ a ¸ si la calc ulul integralelor
unidimensionale cˆ and formulele de cuadratur˘ a sunt ne apl icabile (de ex. in
cazul integralelor improprii) sau se aplic˘ a cu dificultate .
S˘ a presupunem deci, f˘ ara a restrˆ ange generalitatea, c˘ a avem de calculat
integrala
θ=/integraldisplay1
0f(x)dx. (6.4)
Dac˘ a am avea de calculat
I=/integraldisplayb
ag(t)dt,−∞<a<b< +∞
atunci prin transformarea
x=t−a
b−a, dt = (b−a)dx,
integrala cap˘ at˘ a forma
I= (b−a)/integraldisplay1
0f(x)dx= (b−a)θ, f(x) =g(a+ (b−a)x),
¸ si deci problema se reduce la calculul integralei de forma ( 6.4).

130 CAP. 6. METODA MONTE CARLO
6.2 Metoda Monte Carlo brut˘ a.
Dac˘ a considet˘ am Uvariabila aleatoare uniform˘ a 0 −1,atunciθse poate
scrie
θ=E[f(U)] =/integraldisplay1
0f(u)du
adic˘ aτ=f(U) este un estimator primar nedeplasat al luiθde unde rezult˘ a
c˘ a dac˘ a consider˘ am select ¸ia U1,U2,…,U natunciθse estimeaz˘ a cu media
aritmetic˘ a, adic˘ a cu estimatorul secundar
θn=1
nn/summationdisplay
i=1f(Ui). (6.5)
Metoda aceasta bazat˘ a pe formula (6.5) se nume¸ ste metoda Monte Carlo
brut˘ a (denumirea derivˆ and din faptul c˘ a se folose¸ ste repartit ¸ia uniform˘ a).
Exemplul 6.1 Calculul lui π.S˘ a presupunem c˘ a se d˘ a cercul de raz˘ a 1
cu centrul in origine x2+y2= 1,fieDdiscul m˘ arginit de acest cerc ¸ si s˘ a
consider˘ am χD(x,y) funct ¸ia indicator a acestui domeniu D.Atunci
a=aria(D) =/integraldisplay /integraldisplay
Ddxdy=π=/integraldisplay /integraldisplay
χD(x,y)dxdy.
S˘ a consider˘ am acum intervalul bidimensional (p˘ atratul )I2= [−1,1]×[−1,1]
¸ si vectorulV= (V1,V2)/primeuniform pe I2.Atunci
p=aria(D)
aria(I2)=π
4
se estimeaz˘ a cu
p=1
nn/summationdisplay
i=1χD(Vi) =χD,n
undeV1,V2,…,V neste o select ¸ie asupra lui V.Din ultima relat ¸ie rezult˘ a c˘ a
π≈4p=4
nn/summationdisplay
i=1χD(Vi) = 4χD,n (6.5/prime)
formul˘ a care d˘ a aproximarea lui π.Dac˘ a not˘ am σ2=Var(χD(V)) =p(1−p),
rezult˘ a c˘ a
Var(p) =1
np(1−p)≤1
n4. (6.5/prime/prime)
S˘ a revenim acum la analiza estimatorului (6.5).

6.3. METODE DE REDUCERE A DISPERSIEI 131
Dac˘ a se cere estimarea (aproximarea) lui θcu eroarea /epsilon1dat˘ a ¸ si cu coe-
ficientul de risc δdat, atunci volumul necesar al select ¸iei este dat de (6.3).
Pentru a aplica formula (6.3) ar trebui s˘ a cunoa¸ stem
σ2=Var[f(U)] =/integraldisplay1
0(f(u)−θ)2du=/integraldisplay1
0f2(u)du−θ2. (6.6)
Suntem deci in fat ¸a unui caz special ¸ si oarecum ciudat: pen tru a calcula θar
trebui sa-l cunoa¸ stem mai intˆ ai pe θ¸ si s˘ a cunoa¸ stem ¸ si integrala/integraltext1
0f2(x)dx
(presupunˆ and deci c˘ a f∈L2[0,1]). Dar nu putem abandona ideea. Putem
determina (estima) pe ncu (6.3) intr-unul din dou˘ a moduri ¸ si anume:
(1) Presupunem c˘ a f(x)≤M <∞, x∈[0,1]. Atunci avem σ2<M2si
deci in (6.3) putem inlocui σ2=M2obt ¸inˆ and un nmai mare dar care asigur˘ a
cu atˆ at mai mult precizia/epsilon1¸ si risculδ.In particular, in cazul exemplului 6.1
putem determina n0din (6.3) luˆ and σ2=p(1−p).
(2) Alt mod de a estima un nconst˘ a in a estima mai intˆ ai pe σ2folosind
o select ¸ie de volum k, U1,U2,…,U k¸ si anume
σ2≈s2=1
kk/summationdisplay
i=1(f(Ui)−θk)2
iar din (6.3) (luˆ and σ=s) determin˘ am n.
Din cele analizate, rezult˘ a c˘ a estimat ¸ia θna luiθare dispersia
Var(θn) =1
nσ2, σ2=Var(f(U)). (6.7)
Deci precizia metodei depinde in mod esent ¸ial de σ.Dar, din prima integral˘ a
din (6.6) rezult˘ a c˘ a σ2depinde direct de m˘ arimea variat ¸iei pe [0,1]a lui
f(x)−θ.Pentru a m˘ ari deci precizia metodei este necesar s˘ a mic¸ sor˘ am
dispersiaσ2=Var[f(U)].De aceea vom prezenta in continuare metode de
reducere a dispersiei.
6.3 Metode de reducere a dispersiei
Vom prezenta cˆ ateva metode de reducere a dispersiei estima torului primar
in calculul integralelor definite.
6.3.1 Metoda Monte Carlo dup˘ a important ¸˘ a.
Aceast˘ a metod˘ a deriv˘ a tocmai din cerint ¸a de a mic¸ sora v ariat ¸ia luif(x)−θpe
[0,1].Pentru aceasta s˘ a alegem o densitate de repartit ¸ie p(x), x∈[0,1] astfel

132 CAP. 6. METODA MONTE CARLO
incˆ at variat ¸ia funct ¸iei ( f(x)/p(x)−θ)2p(x) s˘ a fie mai mic˘ a decˆ at variat ¸ia lui
(f(x)−θ)2pe [0,1].(Acest lucru se obt ¸ine dac˘ a de exemplu se alege p(x)
astfel incˆ at graficele funct ¸iilor f(x) ¸ sip(x) s˘ a fie aproape paralele!).
Cu aceast˘ a alegere a lui p(x) integrala (6.4) se scrie
θ=/integraldisplay1
0f(x)
p(x)p(x)dx=E[f(X)
p(X)] (6 .8)
undeX;p(x).Deciτ(i)=f(X)/p(X) este un estimator primar pentru θ.
Simulˆ and o select ¸ie X1,X2,…,X na luiX,din (6.8) rezult˘ a c˘ a θse estimeaz˘ a
cu estimatorul secundar
θ(i)
n=1
nn/summationdisplay
i=1f(Xi)
p(Xi).
Datorit˘ a alegerii densita˘ at ¸ii p(x) ca mai sus rezult˘ a c˘ a
Var[f(U)]>Var/bracketleftbiggf(X)
p(X)/bracketrightbigg
,→Var[θn]>Var [θ(i)
n]
¸ si deci se realizeaz˘ a reducerea dispersiei. Densitatea p(x) se nume¸ ste funct ¸ie
de important ¸˘ a , de unde ¸ si denumirea de metoda Monte Carlo dup˘ a important ¸˘ a.
S˘ a observ˘ am c˘ a metoda dup˘ a important ¸˘ a se poate aplica cu succes la
calculul unor integrale pe interval necompact , chiar integ rale multiple.
Exemplul 6.2 S˘ a ne propunem s˘ a calcul˘ am integrala
I=/integraldisplay∞
0/integraldisplay∞
0e−x5/2−y3/2/radicalBig
x2+y2+ 1dxdy.
S˘ a alegem funct ¸ia de important ¸˘ a
p(x,y) =/braceleftbigge−x−y, daca x> 0,y>0
0, altfel.
Se observ˘ a c˘ a vectorul aleator T= (X,Y)/primecare are densitatea p(x,y), are
componentele sale X¸ siYrepartizate Exp(1) ¸ si independente, ele putˆ andu-
se simula cu u¸ surint ¸˘ a. Se poate deci aplica metoda Monte C arlo dup˘ a
important ¸˘ a pentru estimarea integralei I.
Exemplul 6.3. S˘ a consider˘ am integrala
θ=1/integraldisplay
0g(x)√xdx

6.3. METODE DE REDUCERE A DISPERSIEI 133
undeg(x) este cotinu˘ a pe [0 ,1].Metoda Monte Carlo brut˘ a conduce la esti-
matorul secundar
θn=1
nn/summationdisplay
i=1g(Ui)√Ui, U i;uniform [0,1].
DeoareceVar(g(U)√
U) =∞,rezult˘ a c˘ a metoda Monte Carlo brut˘ a nu este
bun˘ a. Dar dac˘ a lu˘ am ca funct ¸ie de important ¸˘ a densitatea pe [0 ,1]
p(x) =1
2√x, F(x) =P(X <x ) =

0, x< 0
1−√x, x∈[0,1]
1, x> 1
atunci dispersia estimatorului dup˘ a important ¸˘ a este finit˘ a ¸ si deci aceast˘ a
ultim˘ a metod˘ a este mai bun˘ a.
••Observat ¸ii. (1) S˘ a observ˘ am c˘ a metoda select ¸iei dup˘ a important ¸˘ a
se poate aplica la calculul oric˘ arei integrale, simpl˘ a sa u multipl˘ a de forma
θ=/integraldisplay
Df(x)p(x)dx=/integraldisplay
f(x)p(x)dx, D⊆Rk (6.8/prime)
undep(x) este densitate.Valoarea integralei θse aproximeaz˘ a cu estimatorul
secundar
θn=1
nn/summationdisplay
i=1f(Yi), Y i;p(x).
S˘ a alegem acum o alt˘ a densitate q(x), x∈D¸ si fieX;q(x).Scriind
θ=/integraldisplayf(x)p(x)
q(x)q(x)dz=E/bracketleftbiggf(X)p(X)
q(X)/bracketrightbigg
putem determina un estimator nedeplasat al lui θastfel
ˆθn=1
nn/summationdisplay
i=1f(Xi)p(Xi)
q(Xi), X i;q(x).
Se poate ar˘ ata c˘ a dispersia estimatorului ˆθnse mic¸ soreaz˘ a fat ¸˘ a de cea a lui θn
dac˘ a alegem ca densitate q(x) =q0(x)∼|f(x)|p(x),adic˘ a satisface aceast˘ a
relat ¸ie de proport ¸ionalitate. Utilizarea celor dou˘ a de nsit˘ at ¸ip(x),q0(x) pen-
tru calculul unei integrale, (cu q0(x) ales ca mai sus) poate deci conduce la
mic¸ sorarea dispersiei fat ¸˘ a de metoda brut˘ a.

134 CAP. 6. METODA MONTE CARLO
(2) S˘ a presupunem c˘ a avem de calculat mai multe integrale m ultiple pe
acela¸ s domeniu de forma (6.8’), adic˘ a
θi=/integraldisplay
Dfi(x)pi(x)dx=/integraldisplay
fi(x)p(x)dx, 1≤i≤s
¸ si pentru fiecare alegem o aceea¸ si densitate de important ¸˘ a q(x) ca la observat ¸ia
(1), precedent˘ a. Obt ¸inem atunci estimatorii secundari
ˆθ(i)
n=1
nn/summationdisplay
i=1fi(Xi)p(Xi)
q(Xi), X i;q(x).
Presupunem c˘ a se dau constantele ai,1≤i≤s,¸ si dorim s˘ a alegem q(x)
astfel incˆ at Var(/summationtext
iaiˆθ(i)
n) s˘ a fie minim˘ a. Avem
Var(ˆθn) =Var(/summationdisplay
iaiˆθ(i)
n) =/integraldisplays/summationdisplay
i=1a2
if2
i(x)p2(x)
q(x)dx−s/summationdisplay
i=1a2
iθ2
i
iar minimum acestei dispersii se obt ¸ine cˆ and este minim˘ a expresia
S=/integraldisplays/summationdisplay
i=1a2
if2
i(x)p2(x)
q(x)dx.
S˘ a consider˘ am variabila aleatoare
η=/parenleftBiggs/summationdisplay
i=1a2
if2
i(X)/parenrightBigg1
2p(X)
q(X), X;q(x)
¸ si s˘ a observ˘ am c˘ a Var(η) =S−I2,unde
I=/integraldisplay/parenleftBiggs/summationdisplay
i=1a2
if2
i(x)/parenrightBigg1
2
de unde
S≥
/integraldisplay/parenleftBiggs/summationdisplay
i=1a2
if2
i(x)/parenrightBigg1
2
p(x)dx
2
.
In concluzie dispersia Var(ˆθn) devine minim˘ a cˆ and
q(x) =q0(x) =1
I/parenleftBiggs/summationdisplay
i=1a2
if2
i(x)/parenrightBigg1
2
p(x), S=I
¸ si acest minim se atinge pentru q0(x) ¸ si el esteI2−s/summationtext
i=1a2
iθ2
i.

6.3. METODE DE REDUCERE A DISPERSIEI 135
6.3.2 Metoda variabilei de control
S˘ a presupunem c˘ a pentru a calcula integrala (6.6) cunoa¸ s tem o funct ¸ie ϕ
pentru care putem calcula u¸ sor integrala
µ=/integraldisplay1
0ϕ(u)du
¸ si presupunem c˘ a ϕeste selectat˘ a astfel incˆ at
Var[f(U)−ϕ(U)]<Var [f(U)]. (6.9)
Deoarece
θ=µ+/integraldisplay1
0[f(u)−ϕ(u)]du=µ+E[f(U)−ϕ(U)] (6.10)
rezult˘ a c˘ a putem estima θcu
µ+θ(c)
n=µ+1
nn/summationdisplay
i=1ψ(Ui), ψ(u) =f(u)−ϕ(u).
Dar din (6.9) avem
Var[µ+ψ(U)] =Var[ψ(U)]<Var [f(U)]
¸ si deci dispersia estimatorului µ+θ(c)
neste mai mic˘ a decˆ at cea a estimatorului
brutθn.Funct ¸iaϕse nume¸ ste funct ¸ie de control de unde deriv˘ a ¸ si denumirea
metodei.
6.3.3 Metoda variabilelor corelate
S˘ a presupunem c˘ a alegem o funct ¸ie ϕ(ca in cazul metodei variabilei de
control) astfel incˆ at
θ=/integraldisplay1
0ϕ(u)du+/integraldisplay1
0[f(u)−ϕ(u)]du
unde integrala µ=/integraltext1
0ϕ(u)duse poate calcula exact ¸ si u¸ sor. Dac˘ a in plus se
alegeϕastfel incˆ at
Var[ϕ(U)]−2Cov[ϕ(U),f(U)]<0, (6.11)
atunci, de asemenea se poate realiza reducerea dispersiei d eoarece
Var[ϕ∗(U)] =Var[f(U)−ϕ(U)] =
=Var[f(U)] +Var[ϕ(U)]−2Cov[f(U),ϕ(U)]<Var [f(U)].
Variabila aleatoare ϕ(U) care satisface (6.11) se nume¸ ste variabil˘ a corelat˘ a
(cuf(U)), de unde ¸ si denumirea metodei.

136 CAP. 6. METODA MONTE CARLO
6.3.4 Metoda variabilelor antitetice
S˘ a consider˘ am integrala (6.4) care se scrie
θ=E[τ] =E[f(U)],
s˘ a alegem un alt estimator primar f∗(U), θ=E[f∗(U)] ¸ si s˘ a consider˘ am
estimatorul primar
ϕ=f∗(1−U), E[ϕ(U)] =E[f∗(1−U)] =E[f∗(U)] =θ.
Atunci, putem considera estimatorul primar
ψ=1
2(τ+ϕ)
pentru care avem
Var(ψ) =1
4{Var(τ) +Var(ϕ) + 2Cov(τ,ϕ)}siCov (τ,ϕ)<0.
Dac˘ a se alege f∗astfel incˆ at
Var(ψ)<Var (τ) (6 .12)
atunci estimatorul ψrealizeaz˘ a reducerea dispersiei. Uneori puntem alege
simpluϕ=f(1−U) care satisface (6.12).
6.3.5 Metoda select ¸iei stratificate
Aceast˘ a metod˘ a deriv˘ a tot din ideea de a mic¸ sora dispers ia estimatorului
primar prin reducerea variat ¸iei funct ¸iei ce se integreaz ˘ a. Fie 0 =α0<α1<
…<α m= 1 o diviziune a intervalului [0 ,1].Atunci integrala (6.4) se scrie
θ=m/summationdisplay
i=1αj/integraldisplay
αj−1f(v)dv
de unde se deduce c˘ a fiecare din cele mintegrale ale sumei precedente se
poate estima prin metoda Monte Carlo brut˘ a, obt ¸inˆ andu-s e in final estima-
torul secundar
τ∗
m=m/summationdisplay
j=1kj/summationdisplay
i=1(αj−αj−1)1
kjf(αj−1+ (αj−αj−1)Uij) (6.13)

6.3. METODE DE REDUCERE A DISPERSIEI 137
undeUij,1≤j≤m,1≤i≤kjsunt select ¸ii de numere aleatoare inde-
pendente ¸ si uniforme 0 −1 de volume kj,iarn=m/summationtext
i=1kj.Cu select ¸iile de
volumekjde numere aleatoare uniforme 0 −1 se estimeaz˘ a integralele pe
intervalele [ αj−1,αj).Celemintervale se mai numesc (in limbaj statistic)
straturi iar select ¸ia format˘ a din cele mselect ¸ii ale straturilor se nume¸ ste
select ¸ie stratificat˘ a. F˘ acˆ and schimb˘ ari de variabile in integralele (6.13) se
deduce c˘ a
Var(τ∗
m) =m/summationdisplay
j=1(αj−αj−1)2
kjαj/integraldisplay
αj−1f2(u)du−m/summationdisplay
j=11
kj/bracketleftBigg/integraldisplayαj
αj−1f(u)du/bracketrightBigg2
.(6.14)
Notˆ and
θj=αj/integraldisplay
αj−1f(u)du,1≤j≤m
dispersia lui τ∗
mse mic¸ soreaz˘ a dac˘ a variat ¸iile funct ¸iilor f(u)−θjpe inter-
valele [αj−1,αj) sunt mult mai mici decˆ at variat ¸ia funct ¸iei f(u)−θ,u∈[0,1].
Din teoria statistic˘ a a sondajelor stratificate se ¸ stie c˘ a dac˘ a se fixeaz˘ a volu-
mul total al select ¸iei n,atunci volumele de select ¸ie ale straturilor kjse aleg
proport ¸ionale cu valorile
(αj−αj−1)αj/integraldisplay
αj−1f2(u)du−
αj/integraldisplay
αj−1f(u)du
2
. (6.15)
Punctele diviziunii αjse pot alege astfel incˆ at lungimile intervalelor s˘ a fie
egale cu1
m(adic˘ aαj=j
m) sau se aleg astfel incˆ at variat ¸ia funt ¸iei s˘ a fie
aceea¸ si pe fiecare interval.
DispersiaVar(τ∗
m) se calculeaz˘ a deobicei greu, dar ea se poate estima
astfel
Var(τ∗
m)≈s2
m=m/summationdisplay
j=1(αj−αj−1)2
kj(kj−1)kj/summationdisplay
i=1(fij−fj)2(6.16)
unde
fij=f(αj−1+ (αj−αj−1)Uij),fj=1
kjkj/summationdisplay
i=1fij. (6.16/prime)

138 CAP. 6. METODA MONTE CARLO
6.3.6 Reducerea dimensiunii de integrare
S˘ a presupunem c˘ a avem de calculat integrala multipl˘ a
θ=/integraldisplay
Df(x)p(x)dx, D∈Rk(6.4/prime)
undep(x) este densitate de repartit ¸ie. (Oricˆ and, o integral˘ a mu ltipl˘ a se
poate scrie a¸ sa). S˘ a not˘ am x= (y,z)/prime,y= (x1,x2,…,x s)/prime, s < k, z=
(xs+1,…,x k)/prime.Atunci, integrala (6.4’) se scrie, folosind notat ¸ii conve nabile
θ=/integraldisplay
(Y)/integraldisplay
(Z)f(y,z)p(y,z)dydz=/integraldisplay
(Y)˜f(y)p1(y)dy
p1(y) =/integraldisplay
(Z)p(y,z)dz,˜f(y) =/integraldisplay
(Z)f(y,z)p(y,z)dz
p1(y)
undep(y,z)
p1(y)este densitatea condit ¸ionat˘ a, iar p1(y) este densitate marginal˘ a.
S˘ a not˘ am ˜Yvectorul aleator care are densitatea p1(y) ¸ si cuX= (Y,Z)/prime,˜Y=
Yvectorul aleator corespunz˘ ator densit˘ at ¸ii p(x).Atunci putem estima inte-
gralaθin dou˘ a moduri ¸ si anume
θn=1
nn/summationdisplay
i=1f(Yi,Zi),˜θn=1
nn/summationdisplay
i=1˜f(Yi). (6.4/prime)
Se poate ar˘ ata c˘ a are loc relat ¸ia
Var(˜θn)≤Var(θn).
Intr-adev˘ ar, scriind in detaliu dispersiile avem
Var(θn)−Var(˜θn) =
=1
n/integraldisplay
(Y)

/integraldisplay
(Z)f2(y,z)p(y,z)
p1(y)dz−
/integraldisplay
(Z)f(y,z)p(y,z)
p1(y)dz
2

/integraldisplay
(Z)p(y,z)dy≥0.
Ultima inegalitate rezult˘ a din faptul c˘ a expresia din aco lade este dispersia
lui˜Y(care este pozitiv˘ a) iar p(x,y)≥0 fiind densitate de repartit ¸ie.
6.4 Rezolvarea unor ecuat ¸ii operatoriale
In aceast˘ a sect ¸iune ne vom ocupa de rezolvarea sistemelor de ecut ¸ii liniare
¸ si de rezolvarea unor ecuat ¸ii integrale.

6.4. REZOLVAREA UNOR ECUAT ¸II OPERATORIALE 139
6.4.1 Rezolvarea sistemelor de ecuat ¸ii liniare
S˘ a presupunem c˘ a sistemul de ecuat ¸ii liniare este scris s ub forma matricial˘ a
x=a+Hx,x∈Rn,a∈Rn, H= (hij),||H||= max
i(/summationdisplay
j|hij|)<1.(6.17)
(Dac˘ a sistemul este dat sub forma Ax=acux,a∈Rn,atunci el se scrie
sub forma (6.17) dac˘ a H= (I−A), I−matricea unitate n×n). Pentru
construirea metodei Monte Carlo de rezolvare a sistemului ( 6.17) asociem
problemei un lant ¸ Markov finit, absorbant ¸ si omegen cu n+ 1 st˘ ari astfel:
– la matricea Hn×nasociem matricea de probabilit˘ at ¸i Pn×n= (pij) cu
condit ¸ia
pij≥0,n/summationdisplay
j=1pij<1;pij/negationslash= 0⇔hij/negationslash= 0 (6 .18)
¸ si fiepi= 1−n/summationtext
j=1pij.Lant ¸ul Markov omogen ¸ si absorbant va avea matricea
probabilit˘ at ¸ilor de trecere
P∗=
p11p12… p 1np1
p21p22… p 2np2
. . … .
pn1pn2… p nnpn
0 0…0 1
; (6 .18/prime)
– in continuare definim ponderile
vij=/braceleftBigghij
pijdaca p ij>0
0altfel; (6 .19)
– pentru un i0,1≤i0≤ngener˘ am o traiectorie a lant ¸ului Markov
γ= (i0,i1,…,i m,im+1), im+1=n+ 1
adic˘ aim+1este stare absorbant˘ a; din construct ¸ia lant ¸ului rezult ˘ a c˘ a traiec-
toria este finit˘ a ( m<∞iarpim,im+1=pim);
– s˘ a consider˘ am acum expresia
Vm(γ) =vi0i1vi1i2…vim−1im, X(γ) =VM(γ)aim
pim. (6.20)
Pentru statistica X(γ) este adev˘ arat˘ a teorema

140 CAP. 6. METODA MONTE CARLO
Teorema 6. 2 StatisticaX(γ)este un estimator primar pentru componenta
xi0a solut ¸iei xa sistemului liniar (6.17).
Demonstrat ¸ie. Pentru traiectoria γdat˘ a avem
E[X(γ)|i0=i] =/summationdisplay
γP(γ)X(γ) =
=∞/summationdisplay
m=0/summationdisplay
i1i2…impii1pi1i2…pim−1impimvii1vi1i2…vim−1imaim
pim=
=∞/summationdisplay
m=0/summationdisplay
i1i2…imhii1hi1i2…him−1imaim=
=ai+ (Ha)i+ (H2a)i+… (6.20/prime)
Ultima formul˘ a reprezint˘ a componenta xi0=xia dezvolt˘ arii
x=a+Ha+H2a+… (6.21)
adic˘ a a solut ¸iei sistemului (6.17) ¸ si teorema este demon strat˘ a. Deoarece
||H||<1 rezult˘ a c˘ a (6.21) deci ¸ si (6.20’) converge.
Din cele de mai sus, rezult˘ a c˘ a dac˘ a consider˘ am o select ¸ ieγ1,γ2,…,γ N
de traiectorii independente ale lant ¸ului Markov construi t, pornind toate din
stareai0=iobt ¸inem estimatorul secundar al componentei xia sistemului
de forma
xi=1
NN/summationdisplay
i=1X(γi)
care este estimator nedeplasat ¸ si consistent pentru xi.Observ˘ am c˘ a metoda
Monte Carlo ne permite s˘ a determin˘ am o singur˘ a component˘ a a solut ¸iei,
(componenta xi, i=i0), ceea ce nu putem realiza cu nicio metod˘ a numeric˘ a
clasic˘ a. Acest fapt poate s˘ a prezinte un avantaj in cazul u nor probleme
inginere¸ sti, cˆ and de exemplu xi0reprezint˘ a o component˘ a important˘ a a unei
structuri de rezistent ¸˘ a ¸ si numai aceasta este necesar sa fie bine calculat˘ a,
celelalte putˆ and avea acela¸ s ordin de m˘ arime.
6.4.2 Rezolvarea ecuat ¸iilor integrale
S˘ a consider˘ am ecuat ¸ia integral˘ a de spet ¸a doua in funct ¸ia necunoscut˘ a f(x)
de forma
f(x) =g(x) +b/integraldisplay
aK(x,y)f(y)dy (6.22)

6.4. REZOLVAREA UNOR ECUAT ¸II OPERATORIALE 141
unde nucleul K¸ si funct ¸iile f,gsatisfac condit ¸ii astfel incˆ at solut ¸ia f(x) s˘ a
existe pentru orice x∈[a,b].Considerˆ and Kdrept un operator liniar ecuat ¸ia
(6.22) se poate scrie asem˘ an˘ ator lui (6.17) adic˘ a
f=g+Kf (6.17/prime)
care este tot o ecuat ¸ie operatorial˘ a. Considerˆ and normele
||g||=/integraldisplayb
a|g(u)|du,||K||= sup
x/integraldisplayb
a|K(x/prime,x)|dx
¸ si iterˆ and nucleul Kconform regulei
[K2f](x) =/integraldisplayb
a/integraldisplayb
af(x0)K(x0,x1)K(x1,x)dx0dx1
se arat˘ a c˘ a dac˘ a||K||<1 atunci exist˘ a un n0finit astfel incˆ at
f=n0/summationdisplay
i=1Kif+g
adic˘ a in acest caz exist˘ a solut ¸ie a ecuat ¸iei integrale.
Un mod direct de rezolvare numeric˘ a a ecuat ¸iei (6.22) cons t˘ a in a dis-
cretiza ecuat ¸ia . Adic˘ a, alegem o gril˘ ade puncte a=α0< α1< … <
αn=bsuficient de fin˘ aastfel incˆ at ne intereseaz˘ a s˘ a calcul˘ am valorile
fi=f(αi),1≤i≤n.Atunci, aproxim˘ and integralele prin sume core-
spunzˆ and fiec˘ arui punct αiajungem la un sistem liniar de forma
f=g+Kf (6.22/prime)
undef= (f1,f2,…,f n)/prime,g= (g1,g2,…,g n)/prime, gi=g(αi),K= (Kij),
Kij=K(αi,αj),1≤i,j≤n.Acest sistem se rezolv˘ a ca un sistem liniar ca
mai sus. S ¸i aici remarc˘ am avantajul metodei in a determina solut ¸ia numai
a unei componente fi0a luif.
Putem ins˘ a s˘ a construim o metod˘ a Monte Carlo asem˘ an˘ ato are celei
privind rezolvarea sistemelor de ecuat ¸ii liniare, folosi nd un lant ¸ Markov cu
o mult ¸ime continu˘ a de st˘ ari ¸ si absorbant. Vom presupune c˘ a dorim s˘ a es-
tim˘ am o funt ¸ional˘ aIh(definit˘ a de produsul scalar) ce depinde de solut ¸ia f
a ecuat ¸iei integrale (6.22) sau (6.17’) dat˘ a de relat ¸ia
Ih= (f,h) =/integraldisplay
Rf(x)h(x)dx, f =Kf+g. (6.23)

142 CAP. 6. METODA MONTE CARLO
Lant ¸ul Marcov se presupune c˘ a este determinat de o densitate de repartit ¸ie
init ¸ial˘ a a st˘ arilorπ(x) ¸ si de o densitate de tranzit ¸ie p(x/prime,x); vom nota cu N
num˘ arul aleator de st˘ ari finale ale lant ¸ului. (Lant ¸ul este absorbant!). Dac˘ a
x0,x1,…,x Neste o traiectorie a lant ¸ului s˘ a introducem ponderile
Q0=g(x0)
π(x0), Q n=Qn−1K(xn−1,xn)
p(xn−1,xn). (6.24)
Date fiindg,K,h, vrem s˘ a alegem densit˘ at ¸ile π(x),p(x/prime,x) astfel incˆ at esti-
matorul
ξ=N/summationdisplay
n=0Qnh(xn) (6 .24/prime)
s˘ a fie un estimator primar pentru funct ¸ionala ( f,h).Proced˘ am astfel:
– alegem funct ¸iile π(x), r(x/prime,x) cu condit ¸iile
π(x)/negationslash= 0⇔g(x)/negationslash= 0,/integraldisplayb
aπ(x)dx= 1,
r(x/prime,x)/negationslash= 0⇔K(x/prime,x)/negationslash= 0
¸ si construim densitatea de tranzit ¸ie a lant ¸ului absorba nt de forma
p(x/prime,x) =r(x/prime,x)[1−q(x/prime)],/integraldisplayb
ap(x/prime,x)dx= 1−q(x/prime)≤1
undeq(x/prime) este probabilitatea ca traiectoria lant ¸ului s˘ a se intre rup˘ a (lant ¸ul
absorbant!). Cu preciz˘ arile anterioare se poate demonstr a teorema urm˘ atoare,
asem˘ an˘ atoare teoremei 6.2.
Teorema 6. 3 Dac˘ a nucleul Ksatisface condit ¸ia c˘ a pentru un n0finit dat
are loc condit ¸ia||ˆKn0||<1unde ˆK(x/prime,x) =|K(x/prime,x)|¸ si dac˘ a densit˘ at ¸ile π
¸ sipsunt selectate ca mai sus, atunci
E[ξ] =E/bracketleftBiggN/summationdisplay
n=0Qnh(xn)/bracketrightBigg
=Ih= (f,h).
In plus, lungimea traiectoriei este finit˘ a, E(N)<∞.
Demonstrat ¸ia teoremei, cu except ¸ia relat ¸iei E(N)<∞este intru totul
asem˘ an˘ atoare teoremei precedente 6.2 ¸ si nu o prezent˘ am aici.
Pentru a estima funct ¸ia f(x) in punctul xeste suficient s˘ a observ˘ am c˘ a
f(x) = (f,hx) +g(x), h x(x/prime) =K(x/prime,x).

6.5. REZOLVAREA ECUAT ¸IILOR CU DERIVATE PART ¸IALE 143
Dac˘ ag(x)≥0 ¸ si
/integraldisplayb
ag(x)dx= 1, K(x/prime,x)≥0,/integraldisplayb
aK(x,x/prime)dx/prime≤1,
atunci putem lua
π(x) =g(x), p(x/prime,x) =K(x/prime,x), Qn= 1, ξ=N/summationdisplay
n=0h(xn)
undeNeste lungimea traiectoriei pˆ an˘ a la absorbt ¸ie.
6.5 Rezolvarea ecuat ¸iilor cu derivate part ¸iale
S˘ a consider˘ am ecuat ¸ia cu derivate part ¸iale de ordinul d oi
β11∂2V
∂x2+ 2β12∂2V
∂x∂y+β22∂2V
∂y2+ 2α1∂V
∂x+ 2α2∂V
∂y=F(x,y) (6.25)
cu condit ¸ia
V(x,y) =ϕ(x,y),(x,y)∈C, (6.25/prime)
undeV(x,y) este o funct ¸ie necunoscut˘ a pe domeniul m˘ arginit D ⊂R2,
coeficient ¸ii βij, αi, i,j= 1,2 sunt funct ¸ii reale cunoscute definite pe D,
funct ¸iaϕ(x,y) este de asemenea cunoscut˘ a, iar C=∂Deste frontiera luiD.
Problema rezolv˘ arii ecuat ¸iei (6.25) cu condit ¸ia pe contur (6.25’) este cunos-
cut˘ a sub numele de problema Dirichlet.
Etapele rezolv˘ arii prin metoda Monte Carlo a problemei Dir ichlet for-
mulat˘ a anterior sunt urm˘ atoarele:
1) Domeniul Deste acoperit de o ret ¸ea dreptunghiular˘ a de puncte ( sau
gril˘ a), puncte in care se vor calcula valorile funt ¸iei V.S˘ a not˘ am cu ( xi,yj)
nodurile ret ¸elei definite astfel
xi=x0+ih, y i=y0+ih, i = 0,±1,±2,±3,… (6,26)
unde (x0,y0) sunt fixate iar heste o constant˘ a suficient de mic˘ a ( pasul grilei ).
Orice punct ( x,y) al ret ¸elei are partu puncte vecine
P1= (x+h,y), P2= (x−h,y), P3= (x,y+h), P4= (x,y−h) (6.26/prime)
Consider˘ am de asemenea punctul vecin suplimentar P5= (x+h,y+h).
Unele puncte ale ret ¸elei sunt pe curba Csau sunt cele mai apropiate de
curbaC; s˘ a not˘ am Chmult ¸imea acestor puncte.

144 CAP. 6. METODA MONTE CARLO
2) Discretiz˘ am ecuat ¸ia (6.26) in punctul P= (x,y) in care dorim s˘ a
estim˘ amV(x,y).Discretizarea conduce la construirea unor diferent ¸e finite
∆x,∆y,∆xx,∆xy,∆yy,definite astfel:
∆x=V(x+h,y)−V(x,y)
h,∆y=V(x,y+h)−V(x,y)
h,∆xx= ∆(∆ x),etc.
∆xx=V(x+h,y) +V(x−h,y)−2V(x,y)
h2, (6.26/prime/prime)
∆xy=V(x+h,y+h)−V(x+h,y)−V(x,y+h) +V(x,y)
h2
∆yy=V(x,y+h) +V(x,y−h)−2V(x,y)
h2.
Folosind aceste diferent ¸e in (6.25) deducem expresia lui V(x,y) =V(P)
astfel
V(P) =5/summationdisplay
i=1pi(P)V(Pi)−h2F(P)
D(P)(6.27)
unde
p1(P) =1
D(β11−2β12), p2(P) =β11
D,
p3(P) =1
D(β22−2β12), p4(P) =β22
D(6.27/prime)
p5(P) =2β12
D, D(P) = 2β11+ 2β22−2β12+ 2h(α1+α2).
Se observ˘ a c˘ a dac˘ a ecuat ¸ia (6.25) este de tip eliptic atunciβ11β22−β2
12>0
¸ si decipi(P) din (6.27”) sunt probabilit˘ at ¸i (sunt pozitive) ¸ si
5/summationdisplay
i=1pi(P) = 1∀βij,αii= 1,2.
Se arat˘ a c˘ a dac˘ a in (6.27) lu˘ am h→0 atunci aceast˘ a expresie converge c˘ atre
V(x,y) care este solut ¸ie a ecuat ¸iei (6.25). Probabilit˘ at ¸ile pi(P),1≤i≤5
definesc un lant ¸ Markov particular numit mers la intˆ amplare in plan. Inter-
pretarea acestui lant ¸ este urm˘ atoarea: dac˘ a o particol˘ a porne¸ ste din punctul
P(x,y) atunci ea se deplaseaz˘ a pe gril˘ a in punctele vecine prin s alturi, cu
probabilit˘ at ¸ile pi(P).Dac˘ aβ12= 0 atunci particola nu se poate deplasa in
punctulP5= (x+h,y+h).Mersul la intˆ amplare construit este absorbant pe
frontieraCh;dac˘ a particola atinge un punct Q∈Chatunci probabilitatea
de a p˘ ar˘ asi acel punct este zero.

6.5. REZOLVAREA ECUAT ¸IILOR CU DERIVATE PART ¸IALE 145
3) Cu ajutorul mersului la intˆ amplare construit definim est imatorul pri-
mar asociat unei traiectorii
γ= (P,P(1),P(2),…,P(m),P(m+1)), P(m+1)=Qi∈Ch
astfel
Zi=−m/summationdisplay
j=1h2F(P(j))
D(P(j))+ϕ(Qi). (6.28)
Cu notat ¸iile ¸ si construct ¸iile de mai sus este adev˘ arat˘ a teorema
Teorema 6. 4 Estimatorul primar (6.28) este un estimator asimptotic ned e-
plasat pentru solut ¸ia V(P) =V(x,y)a ecuat ¸iei (6.25).
Demonstrat ¸ie. F˘ ar˘ a a restrˆ ange generalitatea vom presupune c˘ a F(P)>
0, ϕ(Qi)>0.S˘ a not˘ amWm(P) =E[Z∗
mi] cu
Z∗
mi=−m/summationdisplay
j=1h2F(P(j))
D(P(j))+ϕm(Qi), (6.28/prime)
unde
ϕm(Qi) =/braceleftbiggϕ(Qi),dacafrontieraC hesteatinsa inmpasi
0, inrest
T ¸inˆ and seama de (6.28) atunci deducem c˘ a Wm(P) verific˘ a relat ¸ia de recurent ¸˘ a
WM(P) =5/summationdisplay
i=1pi(P)Wm−1(Pi)−h2
D(P)F(P) (6 .28/prime/prime)
¸ si de aici se deduce Wm+1≥Wmadic˘ aWmeste monoton cresc˘ ator ¸ si
m˘ arginit (conform (6.28)) de
ϕmax+/bracketleftBigg
−h2
Df/bracketrightBigg
maxkm, cu ϕ max= max
Q∈Chϕ(Q).
Num˘ arulkmeste num˘ arul mediu de pa¸ si ai unei traiectorii, care oricu m are
cel mult un num˘ ar finit de pa¸ si dac˘ a domeniul inconjurat de curbaCeste
m˘ arginit. Deci, pentru un punct Pfixat, ¸ sirulWmeste convergent, de unde
rezult˘ a c˘ a estimatorul (6.28) este asimptotic nedeplasa t, deci teorema este
demonstrat˘ a.

146 CAP. 6. METODA MONTE CARLO
4) Un estimator secundar al lui V(P) se obt ¸ine dac˘ a se consider˘ a n
traiectoriiγ1,γ2,…,γ nce pornesc toate din punctul P= (x,y) astfel
V=1
nn/summationdisplay
i=1Zi. (6.28/prime/prime/prime)
Acest estimator este de asemenea asimptotic nedeplasat pen truV(x,y).
Un caz particular de ecuat ¸ie de tip eliptic este ecuat ¸ia Poisson , adic˘ a
/triangleinvV(P) =F(P), sau∂2V
∂x2+∂v
∂y2=F(x,y)
cu condit ¸ia pe contur
V(P) =ϕ(P), P∈C, C =D⊂R2.
Aici construct ¸ia este asem˘ an˘ atoare, dar desigur mai sim pl˘ a. Consider˘ am ca
si in cazul general o gril˘ a de puncte care acoper˘ a Ddar ca puncte vecine lui
P= (x,y) consider˘ am numai punctele P1,P2,P3,P4,(deoareceβ12= 0). In
acest caz prin discretizare obt ¸inem V(P) de forma
V(P) =1
44/summationdisplay
i=1V(Pi)−1
4h2F(P), p i(P) =pi=1
4, D = 4.(6.27/prime)
Deci mersul la intˆ amplare asociat are in acest caz probabil it˘ at ¸i egale de
tranzit ¸ie din Pin punctele vecine Pi,1≤i≤4.Teorema precedent˘ a este
desigur valabil˘ a ¸ si in acest caz ¸ si anume estimatorul pri mar este
Zi=−m/summationdisplay
j=11
4h2F(P(j)) +ϕ(Qi)
el fiind calculat cu ajutorul traiectoriei γca mai sus, iar estimatorul secundar
este tot de forma (6.28”’).
In final preciz˘ am un algoritm pentru simularea mersului la i ntˆ amplare
in cazul general al ecuat ¸iei (6.25). De fapt este necesar s˘ a preciz˘ am cum
gener˘ am punctul P(j+1)al traiectoriei cˆ and plec˘ am din punctul P(j).Algo-
ritmul pentru generarea acestui punct este
Algoritmul SALT pentru generarea unui salt de mers la intˆ amplare.
Intrarex(j),y(j)¸ sih; (Acesta este un pas preg˘ atitor);
Calculeaz˘ a pi=pi(P(j)),1≤i≤5cu formulele (6.27’);

6.5. REZOLVAREA ECUAT ¸IILOR CU DERIVATE PART ¸IALE 147
Calculeaz˘ a fi=p1+…+pi,1≤i≤5,f5= 1;
Genereaza˘ a U:=random ;i:= 1;
whileU >f idoi:=i+ 1;
Calculeaz˘ a coordonatele punctului Picu formulele (6.26’) in care x=
x(j),y=y(j);
IaP(j+1):=Picalculat anterior;
Dac˘ aP(j+1)/negationslash∈Chatunci iaP(j):=P(j+1),altfel traiectoria se termin˘ a.
Repetˆ and algoritmul precedent de la pasul
Genereaza U :=random ;
pˆ anˆ a cˆ and pentru prima dat˘ a P(j+1)∈Chse obt ¸ine traiectoria mersului
pˆ an˘ a la absorbt ¸ie. In final s˘ a observ˘ am c˘ a metodele num erice obi¸ snuite
pentru rezolvarea problemei Dirichlet se bazeaz˘ a tot pe di scretizare. Valorile
necunoscute ale funt ¸iei V(P) in puncte ale grilei sunt necunoscute ale unui
sistem de ecuat ¸ii liniare de dimensiune foarte mare. Prin r ezolvarea acestui
sistem liniar se obt ¸in toatevalorile necunoscute in punctele grilei interioare
luiD.Metoda Monte Carlo descris˘ a aici permite calculul separat al valorii
funct ¸ieiVin fiecare punct Pal grilei, f˘ ar˘ a a mai fi necesar calculul acesteia
in alte puncte. Acest fapt, de asemenea poate constitui un av antaj practic.
Exercit ¸ii
E6.1 S˘ a se calculeze mai intˆ ai direct, iar apoi utilizˆ and meto da Monte
Carlo brut˘ a integrala
I=/integraldisplay1
0/radicalbig
1−x2dx.
Indicat ¸ie. Facˆ and o schimbare potrivit˘ a de variabil˘ a se arat˘ a c˘ a I=π
4.
Acela¸ s fapt se constat˘ a dac˘ a observ˘ am c˘ a Ieste aria din primul cadran a
discului cu centrul in origine ¸ si de raz˘ a 1. Cu ajutorul met odei Monte Carlo
se obt ¸ine
π
4≈In=1
nn/summationdisplay
i=1/radicalBig
1−U2
i
undeUi,1≤i≤nsunt numere aleatoare uniforme 0 −1.Se observ˘ a c˘ a
π≈4In,ceea ce reprezint˘ a un alt mod de a aproxima constanta π.
E6.2 S˘ a se aplice metoda variabilelor antitetice la calculul integralei I
din exercit ¸iul precedent ¸ si dac˘ a Ia,neste estimat ¸ia lui Iin acest caz s˘ a se
arate c˘ aVar(Ia,n)<Var (In).

148 CAP. 6. METODA MONTE CARLO
Solut ¸ie. estimatorul Monte Carlo antitetic este
Ia,n=1
2nn/summationdisplay
i=1/bracketleftbigg/radicalbig
1−U2+/radicalBig
1−(1−U)2/bracketrightbigg
de unde
Var(Ia,n) =1
n[1
4{Var(/radicalbig
1−U2) +Var/radicalBig
1−(1−U2))+
+2Cov((/radicalBig
1−U2),/radicalBig
1−(1−U2)}] =
=1
2n/braceleftbigg
Var(/radicalbig
1−U2+Cov(/radicalbig
1−U2,/radicalBig
1−(1−U2))/bracerightbigg
=
=1
2n/parenleftBigg
2
3−π2
16/parenrightBigg
+1
2nE[/radicalBig
(U+ 1)U(U−1)(U−2)−π2
16],
Se poate ar˘ ata prin calcule relativ simple c˘ a media expres iei inUdin paran-
teza dreapt˘ a precedent˘ a este EU≈0.5806 de unde rezult˘ a c˘ a
Var(Ia,n)≈0.0052
n.
In mod direct se poate ar˘ ata c˘ a
Var(In) =1
n/parenleftBigg/integraldisplay1
0(1−x2)dx−π2
16/parenrightBigg
=1
n/parenleftBigg
2
3−π2
16/parenrightBigg
≈0.498
n
de unde rezult˘ a inegalitatea cerut˘ a.
E6.3O problem˘ a interesant˘ a in aplicat ¸ii este calculul funct ¸iei de repartit ¸ie
normal˘ aN(0,1) adic˘ a
L(x) =x/integraldisplay
−∞e−y2
2√
2πdx=1√
2πx/integraldisplay
−∞φ(y)dy.
S˘ a se construiasc˘ a un estimator dup˘ a important ¸˘ a pentruL(x) utilizˆ and ca
densitate de important ¸˘ a o densitate logistic˘ a trunchia t˘ a.
Solut ¸ie. S˘ a consider˘ am densitatea logistic˘ a
f(y) =πe−πy√
3

3(1 +e−πy√
3)2, y∈(−∞,+∞).

6.5. REZOLVAREA ECUAT ¸IILOR CU DERIVATE PART ¸IALE 149
Trebuie ins˘ a s˘ a consider˘ am densitatea logistica (aici n on-standard!) trunchiat˘ a
pe (−∞,x).Va trebui deci s˘ a o norm˘ am cu o constant˘ a k=k(x) in raport
cuy(care ins˘ a depinde de x), adic˘ a s˘ a lu˘ am ca densitate de important ¸˘ a
˜f(y) =f(y)k−1=πe−πy√
3(1 +e−πx√
3)

3(1 +e−πy√
3)2, y∈(−∞,x);˜f(y) = 0, y<x.
In acest caz avem estimatorul primar de important ¸˘ a
L(x) =1
1 +e−πx√
3E/bracketleftbiggφ(Y)
f(Y)/bracketrightbigg
, Y ;˜f(y).
Pentru a construi estimatorul secundar trebuie s˘ a g˘ asim u n generator pentru
Y.Se poate aplica metoda invers˘ a pentru funct ¸ia de repartit ¸ie
˜F(z) =z/integraldisplay
−∞˜f(y)dy=1 +e−πx√
3
1 +e−πz√
3, z <x
adic˘ aYse obt ¸ine rezolvˆ and ecuat ¸ia
˜F(Y) =U, Uuniform 0−1.
E6.4(Problema lui Buffon).Un ac de lungime leste aruncat pe o du¸ sumea
de parchet care are l˘ at ¸imea lamelelor edal˘ a cu d.Lamelele vecine determin˘ a
deci linii paralele la distant ¸a d.S˘ a se determine probabilitatea ca acul, dup˘ a
ce a c˘ azut pe parchet s˘ a ating˘ a o linie desp˘ art ¸itoare a l amelelor parchetului
¸ si de aici s˘ a se deduc˘ a un procedeu de estimare a num˘ arulu iπ.
Solut ¸ie. Fiel≤d.Pentru o pozit ¸ie dat˘ a a acului s˘ a not˘ am cu θunghiul
format de ac cu marginea lamelei. Distant ¸a de la ac la linie e stelcosθiar
probabilitatea ca in pozit ¸ia dat˘ a acul s˘ a atinga margine a lamelei este2lcosθ
2πd,
iar cumθpoate varia intre ( −π/2,+π/2) rezult˘ a c˘ a probabilitatea Pca acul
s˘ a ating˘ a marginea (indiferent de pozit ¸ia sa) este
P= 2π
2/integraldisplay
−π
2lcosθ
2πddθ=2l
πd.
Dac˘ al>d atunci printr-un rat ¸ionament asem˘ an˘ ator avem
P=π
2/integraldisplay
−π
2min(lcosθ,d)
2πddθ=2
πd

dcos−1d
l+l(1−/radicalBigg
1−d2
l2)

.

150 CAP. 6. METODA MONTE CARLO
Pentru estimarea lui πse folose¸ ste formula lui P(cazull≤d,) ¸ si se estimeaz˘ a
Pcu
Pn=α
n
undeαeste num˘ arul de cazuri cˆ and acul atinge o margine a lamelei din
narunc˘ ari independente.Simularea arunc˘ arii aleatoare a unui ac de lungine
l(l < d), presupunˆ and c˘ a cele dou˘ a lamele vecine au ca margine co mun˘ a
axaox, se realizeaz˘ a astfel: se simuleaz˘ a un punct Paleator intre 2 lamele
(P∈[−d,d];) apoi se simuleaz˘ a un θuniform in [0 ,+2π] ¸ si se determin˘ a
segmentul cu centrul in P, de lungime l, orientat pe direct ¸ia θ; se verific˘ a
apoi prin calcul dac˘ a segmentul construit intˆ alne¸ ste un a din dreptele y=
0,y=d,y=−dcare reprezint˘ a delimit˘ arile celor dou˘ a lamele vecine. De-
terminarea num˘ arului de arunc˘ ari ale acului care interse cteaz˘ a liniile ce de-
limiteaz˘ a cele 2 lamele vecine (din narunc˘ ari ) este acum evident˘ a. Desigur,
aceast˘ a cale de determinare a lui πnu este recomandabil a se face cu cal-
culatorul deoarece algoritmul are o complexitate ridicat˘ a. Metoda acului
lui Buffon are ins˘ a important ¸a ei istoric˘ a. (Simularea lu iθse poate face ¸ si
uniform pe [−π
2,+π
2]).
E6.5 S˘ a se precizeze o metod˘ a Monte Carlo de estimare a num˘ arul ui
πfolosind simularea de puncte aleatoare intr-un domeniu inc onjurat de o
elips˘ a cu centrul in origine ¸ si de semiaxe a>0,b>0.
Indicat ¸ie. Se folose¸ ste ideea de la Exemplul 6.1. Se simuleaz˘ a Npuncte
(V1,V2) aleatoare in dreptunghiul [ −a,a]×[−b,b] ¸ si se num˘ ar˘ a cele ce satisfac
relat ¸iaV2
1
a2+V2
2
b2≤1.
E6.6 Un lant ¸ Marcov cu st˘ ari continue are densitatea de reparti t ¸ie a
st˘ arilor init ¸iale π(x);N(2,√
2) ¸ si densitatea de tranzit ¸ie p(x,y);N(x,2),
undexeste starea de plecare. S˘ a se prezinte un algoritm de simula re a unei
st˘ ari a lant ¸ului.
Solut ¸ie. Avem deci
π(x) =1
2√πe−(x−2)2
4, p(x,y) =1
2√
2πe−(x−y)2
8.
Algoritmul este urm˘ atorul
Algoritmul MARKOV de simulare a unui lant ¸ Marcov gaussian
Genereaz˘ aX;N(2,√
2); (Xeste starea init ¸ial˘ a);
Genereaz˘ aY;N(X,2); (Yeste starea generat˘ a, in care se ajunge).
Acest lant ¸ se poate utiliza la rezolvarea ecuat ¸iei integr ale
f(x) =/integraldisplay
p(x,y)f(y)dy+g(x), x∈R.

6.5. REZOLVAREA ECUAT ¸IILOR CU DERIVATE PART ¸IALE 151
Pentru simularea unei traiectorii de Npuncte a lant ¸ului se continu˘ a algorit-
mul precedent cu instruct ¸iunile
X:=Y;genereaza Y ;N(X,2).

152 CAP. 6. METODA MONTE CARLO

Cap. 7
Cateva modele de simulare
In acest capitol vom prezenta cateva modele de simulare din d omeniul teoriei
a¸ stepat˘ arii ¸ si teoriei stocurilor, modele implementab ile in limbaje evoluate
(ca Pascal, C, C++, etc).
7.1 Generalit˘ at ¸i despre modele de a¸ steptare
Vom incepe cu cateva not ¸iuni despre modele de a¸ steptare. P entru inceput
vom introduce o notat ¸ie specific˘ a unui model de a¸ steptare si anume
A/S/c : (Lc;d)
unde:
Aeste o informat ¸ie despre repartit ¸ia de probabilitate a ti mpului de in-
tersosireATsau a sosirilor;
Seste o informat ¸ie despre repartit ¸ia de probabilitate a du ratei serviciului
ST;
cprecizeaz˘ a numarul de stat ¸ii de serviciu ¸ si topologia lo r, adic˘ a dac˘ a
sunt conectate in serie, in paralel, sau in ret ¸ea;
Lceste lungimea maxim˘ a a cozii, adic˘ a un num˘ ar natural pozi tiv dac˘ a
coada este finit˘ a, sau ∞dac˘ a coada poate avea lungime infinit˘ a;
deste disciplina de serviciu care precizeaz˘ a reguli de efec tuarea serviciu-
lui. De exemplu daca client ¸ii sunt servit ¸i in ordinea sosi rilor, atunci disciplina
esteFIFO (adica First In First Out ). Pot exista ¸ si reguli de tipul LIFO
(adic˘ a Last In First Out ) sau disciplina de serviciu cu prioritat ¸i in sensul
ca unii client ¸i, care au prioritat ¸i pot fi servit ¸i inainte a altora. Insfar¸ sit, pot
exista modele cu client ¸i nedisciplinat ¸i; o astfel de siutuat ¸ie se prezint˘ a in
153

154 CAP. 7. CATEVA MODELE DE SIMULARE
cazul cˆ and client ¸ii care asteapt˘ a mai mult de w0unitat ¸i de timp p˘ ar˘ asesc
sistemul f˘ ar˘ a s˘ a mai beneficieze de serviciu.
Modelele matematice sunt construite ¸ si rezolvate de regul a cˆ and repartit ¸iile
luiATsiSTsunt exponent ¸iale negative, cˆ and sistemele au o singur˘ a stat ¸ie
sau stat ¸ii paralele, cˆ and disciplina este FIFO, ¸ si cˆ and client ¸ii sunt disciplinat ¸i.
Toate celelelte tipuri de modele sunt greu de construit in ip oteze generale
privind repartit ¸iile sosirilor ¸ si serviciilor ¸ si de ace ea se recurge la simulare.
Noi am prezentat (in Cap.1) ¸ si cˆ ateva modele de simulare in GPSS, care de
regul˘ a au condus la programe scurte dar nu ¸ si flexibile. Mod elele ce vor fi
construite in acest capitol vor putea fi extinse la diverse re partit ¸ii ale lui AT
¸ siST.
Exemple de modele matematice de a¸ steptare sunt:
Exp(λ)/Exp(µ)/1 : (∞;FIFO ) (7 .1)
care este cel mai simplu model cu o stat ¸ie de serviciu;
Exp(λ)/Exp(µ)/N(paralele );(∞;FIFO ) (7 .2)
care este un model cu Nstat ¸ii paralele presupuse identice (adica au aceea¸ si
repartit ¸ie pentru ST-ul fiec˘ areia), coada poate fi infinit˘ a, iar disciplina este
standard ( primul venit primul servit ).
In cazul modelelor de simulare, pentru modelele anterioare , vom folosi
notat ¸iile:
•/•/1 : (∞;FIFO ) (7 .1/prime)
•/•/N: (∞;FIFO ) (7 .2/prime)
semnul•insemnˆ and ca putem folosi orice repartit ¸ii de probabilit ate pentru
AT¸ siST.De asemenea, in descrierea algoritmilor (sub forma de schem e
logice!) vom folosi in locul semnului de atribuire := semnul =. Modelele
matematice ale teoriei cozilor se bazeaz˘ a pe utilizarea un or procese Markov
particulare numite procese stochastice de na¸ stere ¸ si deces, procese ce vor fi
studiate mai intˆ ai. Num˘ arul de client ¸i N(t) in sistemul de a¸ steptare la un
moment dat de timp teste un astfel de proces stochastic. Aceste procese stau
la baza model˘ arii ¸ si a altor sisteme naturale cum sunt popu lat ¸iile biologice
(de unde ¸ si denumirea lor de procese de na¸ stere ¸ si deces ).
7.1.1 Procese de na¸ stere ¸ si deces
Definit ¸ia 7.1. Procesul stochastic discret N(t),cu cre¸ steri independente, se
nume¸ ste proces de na¸ stere ¸ si deces, dac˘ a satisface urm˘ atoarele propriet˘ at ¸i:
P([N(t+ ∆t) =n+ 1]/[N(t) =n]) =λn∆t+o(∆t);

7.1. GENERALIT ˘AT ¸I DESPRE MODELE DE AS ¸TEPTARE 155
P([N(t+ ∆t) =n−1]/[N(t) =n]) =µn∆t+o(∆t); (7.3)
P([N(t+ ∆t) =n±i]/[N(t) =n]) =o(∆t),i>1,
undeP(A/B)inseamn˘ a probabilitatea lui Acondit ¸ionat˘ a de B,constantele
{λn,n≥0},{µn,n≥1},sunt ¸ siruri de numere pozitive date, iar o(∆t)este
un element al unei clase de funct ¸ii ce satisfac condit ¸iile
lim
∆t→0o(∆t) = 0,lim
∆t→0o(∆t)
∆t= 0. (7.4)
Procesul este cu cre¸ steri indepentente in sensul c˘ a orica re ar fit1<t2<t3<
t4,variabileleN(t2)−N(t1)¸ siN(t4)−N(t3)sunt independente stochastic,
iarN(t+h)−N(t) =N(h),∀t,h> 0(adic˘ a procesul este de num˘ arare ).
Constantele λnse numesc intensit˘ at ¸i de natalitate iar constantele µn
se numesc intensit˘ at ¸i de mortalitate . Aceste constante sunt caracteristice
pentru procesul N(t).Funct ¸iileo(∆t) exprim˘ a cantit˘ at ¸i neglijabile in raport
cu ∆t,deci care tind la zero odat˘ a cu ∆ t, dar mai repede decˆ at acesta ¸ si
mult ¸imea lor este inchis˘ a fat ¸˘ a de operat ¸iile de adunar e ¸ si inmult ¸ire cu alte
funct ¸ii sau constante (adic˘ a sunt inchise la liniaritate ). Relat ¸iile (7.3) spun
c˘ a na¸ sterile ¸ si decesele evolueaz˘ a rarin timp. Intensit˘ at ¸ile de natalitate
¸ si cele de mortalitate corespund in cazul sistemelor de a¸ s teptare sosirilor,
respectiv serviciilor (adic˘ a plec˘ arilor ) din sistem.
•Teorema de baz˘ a. Cu ajutorul propriet˘ at ¸ilor (7.3) se pot determina
probabilit˘ at ¸ile Pn(t) =P[N(t) =n],care reprezint˘ a repartit ¸ia procesului de
na¸ stere ¸ si deces.
Teorema 7. 1 Probabilit˘ at ¸ile Pn(t)satisfac ecuat ¸iile diferent ¸iale
P/prime
0(t) =−λ0P0(t) +µ1P1(t) (7 .5)
P/prime
n(t) =−(λn+µn)Pn(t) +λn−1Pn−1(t) +µn+1Pn+1(t),n>0.(7.6)
Demonstrat ¸ie. Tinˆ and seama de relat ¸iile (7.3) ¸ si de regulile de calcul c u
probabilit˘ at ¸i condit ¸ionate, pentru n= 0 avem
P0(t+ ∆t) =P0(t)[1−λ0∆t−o(∆t)] +P1(t)[µ1∆t+o(∆t)] +o(∆t) (7.5/prime)
unde ultimul termen reprezint˘ a conform (7.3) probabilita tea ca pe intervalul
de timp [t,t+ ∆t] s˘ a se nasc˘ a sau s˘ a decedeze mai mult de un individ. Din
(7.5’) rezult˘ a
P0(t+ ∆t)−P0(t) =−λ0P0(t)∆t+µ1P1(t)∆t+o(∆t).

156 CAP. 7. CATEVA MODELE DE SIMULARE
Dac˘ a in ultima relat ¸ie imp˘ art ¸im cu ∆ t¸ si facem ∆ t→0,atunci obt ¸inem
ecuat ¸ia (7.5). Proced˘ am in mod asem˘ an˘ ator ¸ si pentru n>0 ¸ si avem
Pn(t+ ∆t) =Pn(t)[1−λn∆t−o(∆t)][1−µn∆t−o(∆t)]+
+Pn−1(t)[λn−1∆t+o(∆t)][1−µn−1∆t−o(∆t)]+
+Pn+1(t)[1−λn+1∆t−o(∆t)][µn+1∆t+o(∆t)] +o(∆t),
unde ultimul termen reprezint˘ a de asemenea probabilitate a ca pe intervalul
[t,t+ ∆t] s˘ a se nasc˘ a sau s˘ a decedeze mai mult de un individ.Din ult ima
relat ¸ie deducem
Pn(t+ ∆t)−Pn(t) =−(λn++µn)Pn(t)∆t) +λn−1Pn−1(t)∆t+
+µn+1Pn+1(t)∆t+o(∆t).
Imp˘ art ¸ind ultima relat ¸ie cu ∆ t¸ si f˘ acˆ and apoi ∆ t→oobt ¸inem relat ¸ia (7.6)
¸ si teorema este demonstrat˘ a.
Dˆ andu-se condit ¸ii init ¸iale pentru Pn(t) (de exemplu P0(0) = 1,Pi(0) =
0,i > 0),sistemul (7.5),(7.6) are solut ¸ie unic˘ a. Pe noi ne interes eaz˘ a ca
solut ¸ia s˘ a satisfac˘ a ¸ si condit ¸ia
∞/summationdisplay
n=0Pn(t) = 1,∀t, (7.7)
adic˘ a s˘ a reprezinte intr-adev˘ ar repartit ¸ia procesulu i.Teorema ce urmeaz˘ a d˘ a
o condit ¸ie suficient˘ a in acest sens.
Teorema 7. 2 Dac˘ a este satisf˘ acut˘ a condit ¸ia
∞/summationdisplay
k=1k/productdisplay
i=1µi
λi−1=∞. (7.7/prime)
atunci are loc relat ¸ia (7.7).
Nu prezent˘ am aici demonstrat ¸ia acestei teoreme.
Procesul de na¸ stere ¸ si deces este stat ¸ionar dac˘ a Pn(t) =pn=const.
adic˘ a repartit ¸ia sa nu depinde de timp. (Procesul se nume¸ steergodic dac˘ a
limt→∞Pn(t) =pn=const. ). S˘ a vedem care este solut ¸ia sistemului in acest
caz (stat ¸ionar sau ergodic). Desigur, sistemul (7.5),(7. 6) devine sistemul
liniar
−λ0p0+µ1p1= 0 (7 .5/prime/prime)

7.1. GENERALIT ˘AT ¸I DESPRE MODELE DE AS ¸TEPTARE 157
−(λn+µn)pn1λn−1pn−1+µn+1pn+1= 0,n>0. (7.6/prime/prime)
Pentru a rezolva sistemul s˘ a not˘ am
Zk=−λkpk+µk+1pk+1.
Atunci din (7.5”),(7.6”) rezult˘ a
−Zn−1+Zn= 0
adic˘ a
Zn=Zn−1,
iar deoarece din (7.5”) avem Z0= 0,avem ¸ siZn= 0,de unde
pn+1=µn+1
λnpn,n≥0.
Prin recurent ¸˘ a se deduce c˘ a
pn=∞/productdisplay
α=0λα
µα+1p0. (7.8)
Utilizˆ and (7.7) se g˘ ase¸ ste ¸ si constanta p0¸ si anume
p0=/bracketleftBigg
1 +∞/summationdisplay
n=1n−1/productdisplay
α=0λα
µα+1/bracketrightBigg−1
. (7.8/prime)
7.1.2 Calculul unor caracteristici ale modelului de
a¸ steptare.
Cunoscˆ and probabilit˘ at ¸ile pnse pot calcula cu u¸ surint ¸˘ a cˆ ateva caracteristici
(parametri de ie¸ sire) pentru sistemul de a¸ steptare cu cstat ¸ii de serviciu ¸ si
anume:
Num˘ arul mediu de client ¸i in sistem
E[N(t)] =∞/summationdisplay
n=0npn;
Lungimea medie a cozii
E[WL] =∞/summationdisplay
n=c(n−c)pn; (7 .9)

158 CAP. 7. CATEVA MODELE DE SIMULARE
Timpul mediu de a¸ steptare
E[WT] =E[WL]E[ST]; (7 .9/prime)
Num˘ arul mediu de stat ¸ii care lenevesc
E[NID] =c/summationdisplay
n=0(c−n)pn; (7 .10)
Timpul mediu de lenevire al celor cstat ¸ii
E[TID] =E[NID]E[AT]. (7.10/prime)
7.2 Simularea unui sistem cu o statie
Vom studia pentru inceput modele de simulare pentru un siste m de a¸ steptare
cu o singur˘ a stat ¸ie de serviciu de forma (7.1’).
7.2.1 Modelul cu ceas variabil
Prezent˘ am mai intˆ ai un model de simulare bazat pe ceasul cu cre¸ stere vari-
abil˘ a.
Variabilele ¸ si parametri modelului , in afar˘ a de cele deja cunoscute, adic˘ a,
AT,ST,WT (timpul de a¸ steptare curent al unui client), TID (timpul de
lenevire curent al stat ¸iei), sunt:
TWT = timpul total de a¸ steptare al client ¸ilor;
TTID = timpul total de lenevire al stat ¸iei;
ICOUNT = contor, care numa˘ r˘ a client ¸ii servit ¸i;
NS= numarul de client ¸i ce trebuie servit ¸i (parametru de intr are);
AWT = timpul mediu de a¸ steptare (parametru de ie¸ sire);
ATID = timpul mediu de lenevire (parametru de ie¸ sire al modelulu i).
Schema logic˘ a a modelului de simulare este prezentat˘ a in F ig.7.1.In
blocul (1) se fac init ¸ializarile:
TWT =TTID = 0;WT=TID= 0;ICOUNT = 0 (7 .11)
care sunt nesesare pentru calculul mediilor empirice AWT,ATID ; aici se
citesc parametri de intrare: NS,¸ si parametri repartit ¸iilor variabilelor AT,ST
necesari pentru simularea acestor variabile aleatoare. To t aici se init ¸ializeaz˘ a
contorulICOUNT care num˘ ar˘ a serviciile ¸ si care prin comparare cu NS
impune condit ¸ia de terminare a simul˘ arii. In blocul (2) se simuleaz˘ a sosirea

7.2. SIMULAREA UNUI SISTEM CU O STATIE 159
unui client. Pentru a int ¸elege mai departe algoritmul ment ion˘ am faptul c˘ a
in acest model ceasul variabil al simularii nu apare explici t (el este implicit ),
in sensul c˘ a de fapt pentru alegerea evenimentului ce trebu ie prelucrat se
folose¸ ste regula primului eveniment urmator, care este o consecint ¸˘ a a tehnicii
bazat˘ a pe ceasul cu cre¸ stere variabil˘ a. Blocul (3) reali zeaz˘ a o ajustare a
timpului de sosire, care permite alegerea evenimentului (u rmator) ce trebuie
prelucrat ¸ si care poate conduce fie la calculul timpului de a ¸ steptare (in blocul
(6)), fie la calculul timpului de lenevire a stat ¸iei (in bloc ul (7)). Este evident
ce face blocul (4) (care poate fi situat cu acela¸ s efect ¸ si in ainte de blocul (8)).
Blocul (5) este blocul care alege evenimentul urm˘ ator, t ¸i nˆ and seama ¸ si de
disciplinaFIFO, iar blocul (8) precizeaz˘ a condit ¸ia de terminare a simul˘ a rii;
el conduce la repetarea blocurilor (2)-(8) pˆ an˘ a cˆ and se s imuleaz˘ aNSservicii.

160 CAP. 7. CATEVA MODELE DE SIMULARE


START
(1)?
Initializari si citirea
parametrilor de intrare
?
Genereaza AT(2)
?
AT = AT – WT(3)
?
Genereaza ST
ICOUNT←ICOUNT + 1(4)
?!!!!aaaa
aaaa
!!!! ST>AT
?DA (5) NU
? ?
TWT = TWT+WTWT = ST – ATTID = 0
TTID = TTID+TIDTID = AT – STVT = 0(6) (7)
? ?
?!!!!!aaaaa
aaaaa
!!!!! ICOUNT<NS
?DA(8)
?
rezultatele utilede iesire si livreazaCalculeaza parametriiNU (9)
?


STOP-
Fig. 7.1. Schema logica a modelului ./1./1: ( ∞FIFO),
cu ceas variabil
ææææææææææææææææææææææææææææ
Insfˆ ar¸ sit, blocul (9) calculeaz˘ a parametri de ie¸ sire d up˘ a formulele
AWT =TWT
NS, ATID =TTID
NS. (7.12)

7.2. SIMULAREA UNUI SISTEM CU O STATIE 161
7.2.2 Modelul cu ceas constant.
Acest model, fat ¸˘ a de modelul precedent, folose¸ ste in plu s variabilele ¸ si parametri:
TAT= momentul ultimei sosiri (i.e. ceasul sosirilor );
TST= momentul termin˘ arii ultimului serviciu (i.e. ceasul servirilor );
CLOCK = ceasul simularii, cu cre¸ stere constant˘ a;
C=oraceasului (i.e. o constant˘ a cu care se incrementeaz˘ a ceasu l);
I= variabila intreag˘ a care reprezint˘ a lungimea curent˘ a a cozii;
NT= parametru de intrare care reprezint˘ a durata impusa a simu larii
(adica simularea se termina cˆ and CLOCK≥NT).
Init ¸ializ˘ arile in acest model sunt:
TWT =TTID =TAT=TST= 0, CLOCK = 0, I= 0. (7.11/prime)
Schema logic˘ a a modelului este dat˘ a in Fig.7.2. Blocurile (1)-(4) pre-
cizeaz˘ a condit ¸iile initiale ¸ si determin˘ a inceperea si mul˘ arii. In blocul (5) se
constat˘ a dac˘ a stat ¸ia este libera sau ocupat˘ a. Dac˘ a sta t ¸ia este ocupat˘ a cˆ and
sose¸ ste clientul (adic˘ a TAT≤TST), atunci se continu˘ a cu blocul (6):se
mare¸ ste coada cu o unitate, se calculeaz˘ a timpul curent de a¸ steptare ¸ si se
actualizeaz˘ a timpul total de a¸ steptare; in continuare bl ocul (7) decide dac˘ a
este necesar˘ a cre¸ sterea ceasului (in blocul (8), cˆ and CLOCK <TAT ), sau
dac˘ a se trece direct la blocul (9) cˆ and se genereaz˘ a un nou timp de sosire.
Dac˘ a in blocul (5) se decide c˘ a stat ¸ia este liber˘ a (adic˘ aTAT >TST ), atunci
se continu˘ a cu blocul (10) care constat˘ a dac˘ a coada este v ida sau nu; in caz
afirmativ (I= 0,) in blocul (11) se determin˘ a timpul curent de lenevire TID,
se actualizeaz˘ a TTID precum ¸ si ceasul serviciilor TSTcu valoarea ceasului
sosirilor; dac˘ a in blocul (10) se g˘ ase¸ ste coada nevid˘ a, atunci se extrage un
client din coad˘ a (conform disciplinei FIFO ). Mai departe, blocul (13) de-
cide dac˘ a ceasul trebuie actualizat (fapt ce se produce in b locul (14)), dup˘ a
care se continua cu blocul (15) in care se serve¸ ste fie client ul sosit (dac˘ a in
blocul (10) coada era vida), fie se serve¸ ste clientul extras din coada (in blocul
(12)). Blocul (16) decide dac˘ a simularea continu˘ a (cˆ and CLOCK < NT )
sau dac˘ a simularea se opre¸ ste, caz in care se execut˘ a bloc ul terminal (17)
care calculeaz˘ a parametri de ie¸ sire ai modelului ¸ si alte statistici interesante.

162 CAP. 7. CATEVA MODELE DE SIMULARE


START
(1)?
Initializari si citirea
parametrilor de intrare
?
Genereaza AT(2)
?
TAT=TAT+AT(3)
?
CLOCK=CLOCK+C(4)
?!!!!aaaa
aaaa
!!!! TAT≥TST
?DA(5)NU
??
?QQQ
QQQI = 0? ?
?
I= I−1(10)
NU DA
(11)(12)
(13)
NU(14)DA
(15)? ?
?!!!!!!aaaaaa
aaaaaa
!!!!!! CLOCK>TST-TID
? ?
?CLOCK=CLOCK+C
?
?TWT=TWT+WTWT=TST−TATI = I + 1
!!!!!aaaaa
aaaaa
!!!!! CLOCK>TAT
??
DA(7)
?
?
??
CLOCK=CLOCK+CNU (8)
?TST=TATTTID=TTID+TIDTID=TAT-TST(6)
TAT = TAT + ATGenereaza AT
TST = TST + STGenereaza ST(9)
? ??!!!!!aaaaa
aaaaa
!!!!! CLOCK<NT
?DA (16)
?
livreaza rezultatele utileiesire sau alte statistici siCalculeaza parametrii deNU (17)
?


STOP-
Fig. 7.2. Schema logica a modelului ./1./1: ( ∞FIFO);
cu ceas constant.
æææææææææææææææææææææææææææææææææææææææææææææææææææ ææææææææææ

7.2. SIMULAREA UNUI SISTEM CU O STATIE 163
Printre altele se poate calcula durata total˘ a a serviciilo r efectuate de sistem
SST=TST−TTID (7.13)
precum ¸ si timpul total petrecut de client ¸i in sistem
TCST =SST+TWT. (7.14)
Pentru a calcula AWT,ATID este necesar s˘ a introducem in model un con-
torICOUNT ce trebuie initializat cu zero ¸ si care se actualizeaz˘ a (se incre-
menteaz˘ a cu o unitate) in blocul (15) cˆ and se simuleaz˘ a se rvirea unui client.
Calculul parametrilor AWT,ATID se va realiza in acest caz tot cu formulele
(7.10) (in cazul ultimului model se ia NS=ICOUNT ). Aceasta formul˘ a
estimeaz˘ a de fapt valorile medii teoretice E(WT),E(TID) ale timpilor de
a¸ steptare ¸ si de lenevire. Pentru ca aceste estim˘ ari sa fie cˆ at mai bune, trebuie
cavolumele de select ¸ie NSsauICOUNT s˘ a fie suficient de mari, fapt ce se
realizeaz˘ a fie cˆ and NSeste mare, in cazul ceasuliui cu cre¸ stere variabil˘ a, fie
cˆ andNTeste mare, in cazul ceasului cu cre¸ stere constant˘ a.
7.2.3 Validarea modelelor cu o stat ¸ie
Cele dou˘ a modele simuleaz˘ a acela¸ s sistem de a¸ steptare, deci validarea lor se
face pe baza aceluia¸ s model matematic de a¸ steptare ¸ si anu me modelul
Exp(λ)/Exp(µ)/1 : (∞,FIFO ),
adic˘ a se consider˘ a c˘ a repartit ¸iile duratelor de sosire ¸ si de serviciu au repartit ¸ii
exponent ¸iale negative.
Trebuie s˘ a determin˘ am mai intˆ ai intensit˘ at ¸ile λn,n≥0,¸ siµn,n > 0.
Intensitatea unei sosiri va satisface deci relat ¸ia
P(0<AT < ∆t) = 1−e−λ∆t= 1−1+λ∆t+o(∆t) =λ∆t+o(∆t).(7.15)
Deoarece, conform definit ¸iei 7.1 trebuie s˘ a avem
λn∆t+o(∆t) =λ∆t+o(∆t),
rezult˘ a c˘ a
λn=λ,∀n≥0. (7.15/prime)
In mod asem˘ an˘ ator deducem c˘ a
µn=µ. (7.15/prime/prime)

164 CAP. 7. CATEVA MODELE DE SIMULARE
Deci conform formulei (7.8) avem
pn=ρnp0, ρ=λ
µ, (7.16)
iar din (7.8’) rezult˘ a
p0= [1 +∞/summationdisplay
n=1ρn]−1= 1−ρ, (7.16/prime)
adic˘ a
pn=ρn(1−ρ).
Conform relat ¸iei cunoscute dintre repartit ¸ia exponent ¸ ial˘ a negativa ¸ si repartit ¸ia
Poisson, rezult˘ a c˘ a λeste num˘ arul mediu de sosiri pe unitatea de timp, iar
µeste num˘ arul mediu de client ¸i servit ¸i pe unitatea de timp . De aceea ρ
reprezint˘ a intensitatea de trafic a client ¸ilor prin sistem.Pentru a avea sens p0
trebuie ca 0 <ρ< 1.(Deci un sistem de a¸ steptare cu λ>µ nu are sens! ).
Pentru validarea modelelor de simulare cu o stat ¸ie putem de ci folosi modelul
matematic anterior. Formulele (7.9),(7.9’),(7.10),(7.1 0’) devin respectiv
E[WL] =∞/summationdisplay
n=2(n−1)ρn(1−ρ) =
=ρ2(1−ρ)∞/summationdisplay
n=2(n−1)ρn−2=ρ2(1−ρ)∞/summationdisplay
n=1nρn−1=
=ρ2
1−ρ,
E[WT] =E[ST]E[WL] =1
µE[WL] =ρ2
µ(1−ρ). (7.17)
E[NID] =1/summationdisplay
n=0(1−n)pn=p0= 1−ρ,
E[TID] =E[AT]E[NID] =1−ρ
λ. (7.18)
Validarea modelelor de simulare se realizeaz˘ a cˆ and
AWT≈E[WT], ATID≈E[TID], (7.19)
sau dac˘ a
|E(WT)−AWT|≤/epsilon1 (7.19/prime)

7.3. SIMULAREA UNUI SISTEM CU NSTAT ¸II PARALELE 165
cu/epsilon1 >0 dat, suficient te mic ( /epsilon1=eroare ). Desigur in practic˘ a se poate
folosi pentru validare numai unul din parametri E[WT] sauE[TID].Dac˘ a
(7.19) are loc, atunci inseamn˘ a c˘ a in loc de repartit ¸ii ex ponent ¸iale se pot
folosi orice repartit ¸ii pentru AT¸ siST.
O caracteristic˘ a important˘ a a unui sistem de a¸ steptare e stefactorul de
eficient ¸˘ a al sistemului care se define¸ ste astfel
Ie=E(W)
E(ST),E(W) =E[N(t)]1
µ(7.20)
care spune de fapt in ce m˘ asur˘ a timpul petrecut de client in sistem a fost
folositor pentru el.(Clientul este interesat ca Ies˘ a fie cˆ at mai mic!). Factorul
de eficient ¸˘ a se estimeaz˘ a cu ajutorul simul˘ arii astfel
Ie=TWT +SST
SST(7.20/prime)
¸ si el poate fi utilizat ¸ si pentru validare.
Pentru un model de a¸ steptare cu o stat ¸ie, cu sosiri exponen t ¸iale ¸ si servicii
oarecare ( adic˘ a modelul Exp(λ)/B/1 : (∞;FIFO ),E(B) =E(ST) =1
µ,)
s-a ar˘ atat c˘ a
Ie=ρ
2(1−ρ)(1 +C2
s) (7 .20/prime/prime)
undeCseste coeficientul de variabilitate al timpului de serviciu d efinit astfel
Cs=/radicalbig
Var(ST)
E(ST).
Formula (7.20”), cunoscut˘ a sub numele de Formula lui Pollaczek , spune in
fapt c˘ a factorul de eficient ¸˘ a al sistemului de a¸ steptare depinde numai de
ρ=λ/µ¸ si deCs.
7.3 Simularea unui sistem cu Nstat ¸ii par-
alele
Vom prezenta aici modelul de simulare
././N : (∞,FIFO )
in care cele Nstat ¸ii sunt presupuse paralele. In practic˘ a un astfel de m odel
se intalne¸ ste la o stat ¸ie de service auto, la o stat ¸ie de benzin˘ a sau la o

166 CAP. 7. CATEVA MODELE DE SIMULARE
banc˘ a ( ghi¸ seele care servesc client ¸ii ), etc. Lista variabilelor ¸ si parametrilor
modelului este
AT= intervalul de timp (aleator) dintre dou˘ a veniri consecut ive;
ST(J) = durata unui serviciu (aleator) la stat ¸ia J,1≤J≤N,(Neste
parametru de intrare; tot parametri de intrare sunt paramet ri repartit ¸iilor
de probabilitate ale variabilelor aleatoare AT¸ siST(J));
WT= timpul de a¸ steptare in coad˘ a al unui client oarecare;
TID= timpul curent de lenevire al stat ¸iei care incepe un servic iu;
TAT= momentul sosirii ultimului client (clientul curent);
TT(J) = timpul stat ¸iei Jla plecarea din ea a ultimului client ( ceasul
stat ¸ieiJ);
TTMIN = ceasul simul˘ arii, cu cre¸ stere variabil˘ a (definit ca cel mai mic
dintre ceasurile TT(J));
L= stat ¸ia cu cel mai mic ceas, adic˘ a TTMIN =TT(L);
NS= num˘ arul de client ¸i ce trebuie servit ¸i pe parcursul simu l˘ arii, este
parametru de intrare;
ICOUNT = contur care num˘ ara serviciile;
SST(J) = suma duratelor de serviciu ale stat ¸iei J;
SWT(J) = suma timpilor de a¸ steptare ai client ¸ilor servit ¸i de st at ¸iaJ;
TTID (J) = timpul total de lenevire al stat ¸iei J;
DIF=TAT−TTMIN = variabil˘ a de lucru.
Schema logic˘ a a modelului de simulare este prezentat˘ a in F ig.7.3. In
blocul (1) sunt citit ¸i parametri de intrare ¸ si sunt f˘ acut e init ¸ializ˘ arile
TAT= 0,TT(J) =SST(J) =SWT(J) =TTID (J) = 0,1≤J≤N.
(7.21)
In continuare, ciclul definit de blocurile (2) ¸ si (3) genere az˘ aN−1 sosiri
(se presupune c˘ a la inceputul simul˘ arii un client se afl˘ a d eja in sistem).
Ciclul format din blocurile (5) ¸ si (6) simuleaz˘ a servirea primilorNclient ¸i
(specificat ¸i in blocul (4)) ¸ si actualizeaz˘ a variabilele TT(J),TTID (J),ST(J),SST (J),1≤
J≤N.Blocurile (7)-(15) realizeaz˘ a ciclul de simulare al servi rii celorNS
client ¸i. Astfel, blocul (7) determin˘ a ceasul (variabil) al simul˘ arii alegˆ and
stat ¸iaLla care se va efectua urm˘ atorul serviciu, num˘ arat de blocu l (8).
Blocul (9) controleaz˘ a ¸ si decide terminarea simul˘ arii. Blocul (10) simuleaz˘ a
o nou˘ a sosire, actualizeaz˘ a momentul ultimei sosiri TAT, ¸ si calculeaz˘ a vari-
abila de lucru DIF, al c˘ arei semn este testat de blocul (11). Dac˘ a semnul
luiDIFeste negativ atunci in blocul (12) se calculeaz˘ a timpul de a ¸ steptare
al clientului ce urmeaz˘ a s˘ a intre in serviciu ¸ si se actual izeaz˘ a timpul de
a¸ steptare al client ¸ilor servit ¸i de stat ¸ia L,altfel dac˘ aDIFin blocul (11) este
pozitiv, atunci in blocul (13) se calculeaz˘ a ¸ si actualize az˘ a timpul de lenevire

7.3. SIMULAREA UNUI SISTEM CU NSTAT ¸II PARALELE 167
al stat ¸ieiL.In continuare blocul (14) simuleaz˘ a servirea clientului ( sosit cel
mai de demult conform blocului (12) sau deja sosit conform bl ocului (10)),
conform disciplinei FIFO, de c˘ atre stat ¸ia L.Blocul (15) actualizeaz˘ a ceasul
stat ¸ieiLcare a terminat serviciul si se reia ciclul simul˘ arii din bl ocul (9).
Cˆ and simularea se termin˘ a, se execut˘ a blocul (16) care ca lculeaz˘ a ca deobicei
statisticile finale ¸ si alte elemente de interes.
•Validarea modelului cu Nstat ¸ii paralele. Pentru validare folosim
modelul matematic de a¸ steptare
Exp(λ)/Exp(µ)/N: (∞;FIFO ) (7 .22)
adic˘ a modelul cu Nstat ¸ii paralele identice, cu timp de intersosire exponent ¸ial
de parametru λ,cu timpul de servire al fiec˘ arii stat ¸ii repartizat exponen t ¸ial
de parametru µ,¸ si cu disciplina de serviciu FIFO.
Va trebui ¸ si in acest caz s˘ a determin˘ am intensit˘ at ¸ile λn,n≥0 ¸ siµn,n>
0.Ca ¸ si in cazul modelului cu o stat ¸ie, avem
λn=λ, n≥0. (7.23)
Deoarece intensitatea servirilor pentru fiecare stat ¸ie es teµ¸ si serviciul se
desf˘ a¸ soar˘ a in paralel, avem
µn=/braceleftbiggnµ, 1≤n≤N−1,
Nµ, n≥N.(7.24)

168 CAP. 7. CATEVA MODELE DE SIMULARE
m?
ATT(L)= TTMIN+ST(L)(15) ?SST(L)=SST(L)+ST(L)Genereaza ST(L)(14) ?? ?SWT(L)=SWTL(L)+WTWT=-DIF
TTID(L)=TTID(L)+TIDTID = DIF? ?!!!!aaaa
aaaa
!!!!
?DIF ?
(12) (13)
= 0+(11)?DIF = TAT – TTMINTAT = TAT + ATGenereaza AT (10)?≤NS!!!!aaaa
aaaa
!!!!?
ICOUNT ?(9)>NS
?
rezultatele utilesi livreazaCalculeaza statisticile(16)
?


STOPICOUNT=ICOUNT+1? (8)TTMIN=TT(L)1≤J≤NTTMIN=MIN(TT(J))? (7)– ?



A
TTMIN=TT(L)1≤J≤NTTMIN=MIN(TT(J))? (7)SST(J)=SST(J)+ST(J)TT(J)=TTID(J)=ST(J)Genereaza ST(J)? (6) JJ

JJDO J=1,N(5) ?ICOUNT=N(4) ?TAT=TAT+ATGenereaza AT? (3) JJ

JJDO J=2,N(2) ?si fixeaza conditiile initialeCiteste parametrii de intrare? (1)

START
Fig. 7.3. Schema logica pentru simularea unui sistem
cu N stat ¸ii paralele.
æææææææææææææææææææææææææææææææææææææææææææææææææææ ææææææææææ

7.3. SIMULAREA UNUI SISTEM CU NSTAT ¸II PARALELE 169
Notˆ and ca ¸ si in cazul modelului cu o stat ¸ie
ρ=λ
µ,
conform cu (7.8) deducem
pn=/braceleftBiggρn
n!po,1≤n≤N−1,
ρn
N!Nn−Np0, N≤n<∞,(7.25)
iar din (7.8’) rezult˘ a
p0=/bracketleftBiggN−1/summationdisplay
n=0ρn
n!+ρN
N!N
N−ρ/bracketrightBigg−1
. (7.25/prime)
Lungimea medie a cozii este
E(WL) =∞/summationdisplay
n=N(n−N)pn=p0/bracketleftBigg
Nn
N!∞/summationdisplay
n=Nnρn
Nn−NN+1
N!∞/summationdisplay
n=Nρn
Nn./bracketrightBigg
.
Notˆ and
ρ∗=ρ
N
se deduce prin calcule c˘ a
E(WL) =p0/bracketleftBigg
Nn
N!ρ∗d
dρ/parenleftBigg∞/summationdisplay
n=Nρ∗n−1/parenrightBigg
−NN+1
N!ρ∗N+1
1−ρ∗/bracketrightBigg
=
=NN
N!ρ∗N+1
(1−ρ∗)2=λµρN
(N−1)(Nµ−λ)2. (7.26)
M˘ arimeaρ∗se nume¸ ste intensitatea de trafic a sistemului de a¸ steptare.
Timpul mediu de a¸ steptare este
E(WT) =E(WL)E(S),E(S) =E(ST)/N,
undeE(S) este timpul mediu de serviciu al sistemului. In final se obt ¸ ine
E(WT) =λρN
N(N−1)!(Nµ−λ). (7.26/prime)
In mod asem˘ an˘ ator se calculeaz˘ a num˘ arul mediu de stat ¸i i care lenevesc ¸ si
timpul mediu de lenevire al stat ¸iilor, adic˘ a
E(NID) =N−1/summationdisplay
n=0(N−n)pn=/bracketleftBigg
(N−ρ)N−2/summationdisplay
n=0ρn
n!+NρN−1
(N−1)!/bracketrightBigg
p0,(7.27)

170 CAP. 7. CATEVA MODELE DE SIMULARE
E(TID) =E(NID)E(AT) =1
λ/bracketleftBigg
(N−ρ)N−2/summationdisplay
n=0ρn
n!+NρN−1
(N−1)!/bracketrightBigg
p0.(7.27/prime)
Din modelul de simulare se obt ¸in respectiv urm˘ atoarele es timat ¸ii pentru
E(WT) ¸ siE(TID)
AWT =/summationtext
LSWT(L)
NS, (7.26/prime/prime)
ATID =/summationtext
LTTID (L)
NS. (7.27/prime/prime)
Ca ¸ si in cazul modelului cu o stat ¸ie, condit ¸iile de valida re pentru acest model
sunt
|E(WT)−AWT|</epsilon1,|E(TID)−ATID|</epsilon1.
In caz de validare, inseamn˘ a c˘ a modelul de simulare constr uit poate fi utilizat
¸ si dac˘ a repartit ¸iile variabilelor aleatoare AT¸ siSTsunt oarecare (diferite de
exponent ¸iale).
7.4 Modele de simulare pentru stocuri
7.4.1 Introducere in teoria matematic˘ a a stocurilor
Un stoc este o resurs˘ a de orice fel care are o valoare economi c˘ a, caracteri-
zat˘ a prin intr˘ ari ¸ siie¸ siri. Ie¸ sirea din resurs˘ a este determinat˘ a de regul˘ a de
cerere, de¸ si nu intotdeauna. (Pot fi scoase din stoc ¸ si elem enteexpirate sau
deteriorate).
Stocuri (numite uneori ¸ si inventare ), exist˘ a in aproape orice activitate
economico-social˘ a (de ex. unitate de product ¸ie, unitate comercial˘ a, etc).
Scopul unui model de stocare este s˘ a defineasc˘ a regulile de inc˘ arcare op-
tim˘ a a stocului, astfel incˆ at costul (sau profitul) legat d e aprovizionarea
¸ si intret ¸inerea stocului s˘ a fie minim (maxim). Stocul se p oate m˘ asura in
unit˘ at ¸i fizice ( de ex. kilograme, metri, buc˘ at ¸i, etc), s au in unit˘ at ¸i valorice
convent ¸ionale (de regul˘ a unit˘ at ¸i monetare).
Variabilele ¸ si parametri unui model general de stocare sun t:
t=timpul;
I(t)= nivelul curent al stocului;
a(t)= rata intr˘ arii in stoc la momentul t;
b(t)= rata ie¸ sirii sin stoc la momentul t;
r(t)= rata cererii (cˆ and aceasta nu coincide cu ie¸ sirea de alt ˘ a natur˘ a).
Rata cererii, ca ¸ si alte elemente ce caracterizeaz˘ a un sto c, pot fi aleatoare.

7.4. MODELE DE SIMULARE PENTRU STOCURI 171
De regul˘ a, intrarea in stoc se realizeaz˘ a in cantit˘ at ¸i m ari (numite comenzi )
care se introduc in stoc la intervale de timp numite cicluri de reaprovizionare .
Costurile sunt (parametri!) de tipul:
h= costul de stocare a unei unit˘ at ¸i de stoc intr-o unitate de timp;
d= costul lipsei unei unit˘ at ¸i de stoc intr-o unitate de timp ;
s= costul de lansare a unei comenzi (costul fort ¸ei de munc˘ a s au al altor
resurse folosite pentru a lansa comanda).
Din cele de mai sus rezult˘ a c˘ a nivelul stocului la momentul teste
I(t) =I0+t/integraldisplay
0[a(t)−b(t)]dt, (7.28)
undeI0este nivelul init ¸ial al stocului.
In funct ¸ie de elementele de mai sus se define¸ ste un obiectiv , sa-l not˘ am
E[a(t),b(t),r(t)],care trebuie optimizat. A¸ sa cum am ment ¸ionat, acest
obiectiv poate fi un cost (sau un profit) determinat in funt ¸ie de cerere ¸ si
de costurile h,d,s ¸ si de unele necunoscute (comand˘ a sau allte elemente ce
vor fi definite mai jos). Cˆ and cererea este aleatoare, funct ¸ ia obiectiv este
omedie (cost mediu sau beneficiu mediu). De regul˘ a, scopul modelul ui de
stocare este de a defini a(t) optim cˆ and se dau b(t),r(t).Uneori ins˘ a (de
exemplu cˆ and stocul este un lac de acumulare), scopul model ului este s˘ a
determine ie¸ sirea optim˘ a (adic˘ a b(t) ¸ si/saur(t)) cˆ and rata (debitul) intr˘ arii
a(t) este cunoscut. Pentru a face o alegere ne vom ocupa de primul caz (al
stocurilor obi¸ snuite, caz mai frecvent intˆ alnit),
-6
0AAAAAAAAAAAA K
t1 t2T1 T2I0I(t)
q1 q2
t JJJJJJJJJJJ ]
AAAAAAAAAAAAA K
Fig. 7.4. Variat ¸ia stocului I(t)
æææææææææææææææææææææææææææææææææææææææææææææææææææ ææææææææææ
cˆ and se cere intrarea optim˘ a. Am v˘ azut c˘ a in acest caz int rarea in stoc
se realizeaz˘ a prin comenzi. Reaprovizionarea stocului ¸ si variat ¸ia acestuia se
prezint˘ a grafic in Fig. 7.4. Comenzile q1,q2,…intr˘ a in stoc la momentele
t1,t2,…IntervalulTi=ti+1−tiesteciclul de reaprovizionare care paote fi
constant sau variabil.

172 CAP. 7. CATEVA MODELE DE SIMULARE
Reaprovizionarea stocului se realizeaz˘ a printr-un mecanism de reapro-
vizionare descris de Fig. 7.5. Se presupune c˘ a stocul nu dep ˘ a¸ se¸ ste un nivel
maxinS.In timp stocul scade cu o rat˘ a dat˘ a (care este constant˘ a in Fig. 7.5,
deoarece variat ¸ia stocului este liniar˘ a); cˆ and stocul s cade pˆ an˘ a la un nivel P,
numit nivel reaprovizionare, atunci se lanseaz˘ a o comand˘ a qcare va intra in
stoc dup˘ a timpul de avans L.Comenzile intr˘ a in stoc la intervale de timp de
reaprovizionare de lungime T.Nivelul de reaprovizionare ar trebui s˘ a poat˘ a
satisface cererea pe perioada timpului de avans L.Dar uneori accept˘ am ca
stocul de rezerv˘ a Ps˘ a poat˘ a satisface cererea pe o perioad˘ a de timp de
lungimet/prime,t/prime< T.In acest caz exist˘ a o perioad˘ a t/prime/prime=T−t/primecˆ and are loc
lipsa de stoc. Un astfel de model se nume¸ ste cu lips˘ a de stoc ¸ si in el intervine
costuld.Conform Fig. 7.5 cererea ne satisf˘ acut˘ a se p˘ astreaz˘ a in sensul c˘ a
atunci cˆ and qintr˘ a in stoc se consum˘ a o parte din comand˘ a pentru a satis face
cererea care nu a fost satisf˘ acut˘ a pe perioada t/prime/prime.
In acest caz se admite c˘ a nivelul stocului ia ¸ si valori nega tive, iar nivelul
la care se ridic˘ a stocul va fi mai mic decˆ at q.Dac˘ a cererea nesatisf˘ acut˘ a nu se
p˘ astreaz˘ a, nu se admite stoc negativ ¸ si la intrarea lui qin stoc nivelul maxim
al stocului devine S=q.Pentru un astfel de model cererea nestisf˘ acut˘ a se
pierde.
-6
0I(t)
T 2T
t/primet”@@@@@@@@@@@@I
SSSSSSSSSSSSSSSS o B
B
B
B
B
B
B
BB
L1 L2PS
t
Fig. 7.5. Mecanismul reaprovizionˇ arii
æææææææææææææææææææææææææææææææææææææææææææææææææææ ææææææææææ
In diverse modele de stocare se pot da costurile h,s¸ si/saud,se d˘ a rata
cereriir¸ si timpul de avans L¸ si se cerq,Poptime. O mult ¸ime de elemente ce
definesc un mecanism de aprovizionare se spune c˘ a determin˘ a opolitic˘ a de

7.4. MODELE DE SIMULARE PENTRU STOCURI 173
reaprovizionare. Cˆ andr,Lnu sunt aleatoare modelul se nume¸ ste determinist ;
in cazul cˆ and cel put ¸in una din aceste variabile este aleat oare modelul este
stochastic . Dac˘ a timpul nu intervine in mod explicit in model, spunem c ˘ a
avem de-a face cu un model static, altfel, modelul este dinamic.
In concluzie, modelele de teoria stocurilor i¸ si propun s˘ a determine o
politic˘ a de reaprovizionare optim˘ a.
7.4.2 Modele simple deterministe de stoccare a unui
produs
Vom prezenta dou˘ a din cele mai simple modele statice determ iniste pentru
stocarea unui produs.Aceste modele vor constitui scheletu l pe baza c˘ arora
se vor construi modelele de simulare.
•Modelul clasic al lotului economic. Acest model, cunoscut ¸ si sub
numele de modelul lui Wilson, are la baz˘ a urm˘ atoarele ipoteze:
– rata cererii reste constant˘ a, cunoscut˘ a ¸ si cererea este continu˘ a;
– ciclul de reaprovizionare Teste constant ¸ si ne cunoscut;
– comandaqeste constant˘ a ¸ si necunoscut˘ a; intr˘ arile cantit˘ at ¸i lorqin stoc
au loc instantaneu la intervale de timp T;
– timpul de avans Leste zero, adic˘ a neglijabil; (comenzile qintr˘ a in stoc
imediat dup˘ a ce se lanseaz˘ a comanda);
– nivelul de reaprovizionare Peste zero (in concordant ¸˘ a cu ipoteza ante-
rioar˘ a);
– costurile de stocare h¸ si de lansare ssunt constante date;
– nu se admite lips˘ a de stoc (adic˘ a d= 0).
Se observ˘ a c˘ a intre necunoscutele q,Tare loc relat ¸ia
T=q
r. (7.29)
Variat ¸ia stocului in cazul acestui model este prezentat˘ a in Fig.7.6.

174 CAP. 7. CATEVA MODELE DE SIMULARE
-6
0I(t)
T 2T@@@@@@@@@@@@I
@@@@@@@@@@@@Iq
t
Fig. 7.6. Variat ¸ia stocului pentru modelul clasic al lotul ui economic
ææææ
Costul total de intret ¸inere a stocului pe perioada Teste
CT=Ch,T+s (7.30)
undeCh,Teste costul de stocare ¸ si seste costul de lansare. Avem
Ch,T=hT/integraldisplay
0I(t)dt=hq
2T=hq2
2r. (7.30/prime)
Funct ¸ia obiectiv a modelului const˘ a in a minimiza costul a sociat ment ¸inerii
stocului. Dac˘ a am considera acest cost a¸ sa cum este el defin it de (7.30),
atunci s-ar deduce c˘ a T= 0 ceea ce nu are sens. De aceea lu˘ am ca obiectiv
minimizarea costului C(q)pe unitatea de timp, adic˘ a, tinˆ and seama
¸ si de (7.29) trebuie s˘ a impunem condit ¸ia
C(q) =CT
T=hq2
2r1
T+s
T=hq
2+sr
q=min. (7.31)
Impunˆ and condit ¸ia de mninim lui C(q) obt ¸inem politica optim˘ a de reaprovizionare
( ˆq0,ˆT0) dat˘ a de
ˆq0=/radicalbigg2rs
h,ˆT0=ˆq0
r=/radicalbigg2s
rh(7.32)
iar costul optim (i.e. minim) este
ˆC0=√
2rsh. (7.32/prime)

7.4. MODELE DE SIMULARE PENTRU STOCURI 175
Din formula (7.31) se deduce o regul˘ a simpl˘ a de calcul a cos tului de stocare
pe unitatea de timp, anume, el este produsul dintre h¸ si stocul mediu pe
perioada ciclului de reaprovizionare care este (0 + q)/2; de aici se deduce
costul de stocare mediu pe o perioad˘ a de lungime t,adic˘ a
Ch,t=hq
2t. (7.31/prime)
•Modelul clasic al lipsei de stoc. In acest caz sunt satisf˘ acute
ipotezele modelului precedent cu except ¸ia faptului c˘ a ex ist˘ a lips˘ a de stoc
(adic˘ ad >0, d=constant˘ a dat˘ a) ¸ si stocul poate cre¸ ste pˆ an˘ a la o valo are
Snecunoscut˘ a. Variat ¸ia stocului in acest caz este ilustra t˘ a de Fig. 7.7.
Rat ¸ionˆ and asem˘ an˘ ator modelului precedent se deduce fu nct ¸ia obiectiv de
minimizat de forma
C(S,T) =1
T/bracketleftbigCh,t/prime+Cd,t/prime/prime+s/bracketrightbig(7.33)
undeCh,t/primea fost definit mai sus in (7.31’) iar Cd,t/prime/primese define¸ ste in mod
asem˘ an˘ ator. Detaliind costurile rezult˘ a c˘ a
C(S,T) =1
T(s+hS
2t/prime+dq−S
2t/prime/prime), q=rT. (7.33/prime)
-6
0I(t)
T 2T
@@@@@@@@@@@@I S
S
S
S
S
S
S
S
S
S
SSqS
t/primet/prime/prime
t
Fig. 7.7. Variat ¸ia stocului pentru modelul lipsei de stoc
ææææææææææææ
Din asem˘ anarea unor triunghiuri din Fig.7.7 rezult˘ a
t/prime=S
r, t/prime/prime=T−S
r=rT−S
r

176 CAP. 7. CATEVA MODELE DE SIMULARE
de unde se obt ¸ine in final
C(S,T) =s
T+hS2
2rT+d(rT−S)2
2rT. (7.34)
Impunˆ and condit ¸ii de minim in (7.34), adic˘ a
∂C
∂S= 0,∂S
∂T= 0,
deducem in final valorile ˆS1,ˆT1care realizeaz˘ a costul minim ˆC1,
ˆT1=/radicalbigg2s
rh/radicalBigg
1
ρ, ρ=d
h+d,
ˆS1=/radicalbigg2rs
h√ρ,ˆq1=ˆT1r=/radicalbigg2rs
h/radicalBigg
1
ρ. (7.35)
Se observ˘ a c˘ a 0 <ρ< 1,care conduce la
ˆC1=√ρˆC0<ˆC0,
de unde rezult˘ a la prima vedere c˘ a modelul clasic al lipsei de stoc este mai
bun dacˆ at modelul clasic al lotului economic. Coeficientul ρsatisface relat ¸ia
ρ=ˆS1
ˆq1,de unde rezult˘ a c˘ a (1 −ρ)% poate fi interpretat ca indice de lips˘ a.
Deci dac˘ a s-ar da indicele de lips˘ a α= 1−ρatunci ar rezulta c˘ a d=1−α
αh
adic˘ a ar rezulta c˘ a exist˘ a o dependent ¸˘ a strict˘ a intre costurileh¸ sid,ceea ce
nu este intocmai adev˘ arat in practic˘ a. Acest fapt constit uie deci o critic˘ a a
modelului clasic al lotului economic.
7.4.3 Modele de simulare particulare
Vom prezenta aici dou˘ a modele de simulare simple pentru un p rodus, din
care vor rezulta planuri de reaprovizionare ¸ si costuri opt ime. Modelele vor
fi construite pe scheletul modelului clasic al lipsei de stoc .
•Primul model. In acest model vom folosi urm˘ atoarele variabile ¸ si
parametri
H= costul de stochare;
D= costul lipsei de stoc;
S= costul de lansare;
CH= costul total de stocare pe perioada simulat˘ a;
CD= costul total al lipsei de stoc pe perioada simulat˘ a;

7.4. MODELE DE SIMULARE PENTRU STOCURI 177
CS= costul total de lansare pe perioada simulat˘ a;
TC= costul total ( TS=CH+CD+CS);
T= momentul de timp (curent) cˆ and intr˘ a o comand˘ a in stoc;
R= cerera pe unitatea de timp (rata cererii);
VI= nivelul curent al stocului;
Q= comanda optim˘ a;
P= nivelul de reaprovizionare;
L= timpul de avans;
CLOCK = ceasul simul˘ arii;
BI= nivelul init ¸ial al stocului;
TT= perioada de timp pe care se face simularea.
Parametrii de intrare sunt: H,D,S,P,BI,TT ; variabilele R,Lsunt
variabile aleatoare de intrare (avˆ and repartit ¸ii date) i ar parametri acestor
repartit ¸ii sunt de asemenea parametri de intrare; toate ce lelalte variabile
listate anterior sunt variabile de ie¸ sire.

178 CAP. 7. CATEVA MODELE DE SIMULARE
T = CLOCK + LGenereaza LCS = CS + S(12) ?!!!!aaaa
aaaa
!!!! T≤CLOCK(11)?!!!!aaaa
aaaa
!!!!P<VI
?(10)?CH = CH + VI∗H(9)?≥
VI = 0CD = CD – VI∗D
(8)!!!!aaaa
aaaa
!!!!?VI
?(7)<0?VI = VI – R(6)?VI = VI + Q(5)
Nu?Da!!!!aaaa
aaaa
!!!!
?T=CLOCK(4)?!!!!aaaa
aaaa
!!!!
?CLOCK≤TT(3)?
Da?Nu
simulˇ ariiScrie rezultatele
?(14) ?TS = CH + CD + CS(13)


STOPCLOCK = CLOCK + 1Genereaza R(2) ?parametrii de intrareInitializeaza si citeste?(1)

START
-66
DaNuDa –
– Nu
?? ?CH=CH+VI∗HCD=CD-VI∗D(9) (8) ? ?≥0 <0!!!!aaaa
aaaa
!!!!?VI?(7)
Fig. 7.8’
Fig. 7.8. Schema logica pentru primul model
æææææææææææææææææææææææææææææææææææææææææææææææææææ ææææææææææ

7.4. MODELE DE SIMULARE PENTRU STOCURI 179
Condit ¸iile init ¸iale (inclusiv valorile init ¸iale ale va riabilelor) sunt
TC=CS=CD=CH= 0, VI =BI, T =CLOCK = 0.(7.36)
M˘ arimea comenzii Qse determin˘ a pe parcursul simul˘ arii cu formula
Q=/radicalBigg
2RS
H/radicalBigg
H+D
D, R;N(m,σ), m>> 3σ (7.37)
undeRse simuleaz˘ a in prealabil; comanda Qeste calculat˘ a in ipotezele
modelului clasic al lotului economic.
Nivelul de reaprovizionare, in ipoteza R;N(m,σ) se calculeaz˘ a la
inceputul execut ¸iei simul˘ arii folosind proprietatea Prob(R(L)> P) =α,
undeαeste un risc mic dat ( α≈0.05), iarR(L)=R1+…+RLeste
cererea pe timpul aleator de avans L, (L-intreg) cu media l=E[L]. Deoarece
R(L);N(lm,√
lσ) rezult˘ a c˘ a
Prob(R(L)>P) =Prob(R(L)−ml√
lσ>P−lm√
lσ) =α,
¸ si deoarece
Z=R(L)−lm√
lσ;N(0,1)
rezult˘ a
P−lm√
lσ=zα, undezα/integraldisplay
−∞e−t2
2dt= 1−α.
Din ultima relat ¸ie rezult˘ a nivelul de reaprovizionare de forma
P=lm+zα√
lσ. (7.38)
Schema logic˘ a a modelului de simulare este dat˘ a de Fig. 7.8 ¸ si ea se autoex-
plic˘ a. Modelul de simulare este construit in ipoteza c˘ a cererea nesatisf˘ acut˘ a
se pierde, fapt ilustrat de blocurile (7) ¸ si (8) din schem˘ a. Printr-o mod-
ificare minor˘ a se poate introduce in model ipoteza c˘ a cererea nesatif˘ acut˘ a
se p˘ astreaz˘ a. Acest fapt este ilustrat prin blocurile (7),(8),(9) din figu ra
incadrat˘ a 7.8’ care ar trebui s˘ a inlocuiasc˘ a blocurile ( 7),(8) din Fig. 7.8.
Introducˆ and in Fig. 7.8 instruct ¸iuni corespunz˘ atoare d e afi¸ sare (scriere), se
poate obt ¸ine planul de reaprovizionare pe perioada simulat˘ a TT, constˆ and
din momentele intr˘ arii in stoc T¸ si comenzile optime Q.
•Al doilea model. Acest model este asem˘ an˘ ator primului model,
dar el folose¸ ste unele ipoteze mai generale ce vor fi preciza te in continuare.

180 CAP. 7. CATEVA MODELE DE SIMULARE
Astfel, sunt folosite multe din variabilele ¸ si parametri p rimului model, dar
sunt incluse ¸ si urm˘ atoarele:
AR=media mobil˘ a a cererii calculat˘ a pe Munit˘ at ¸i de timp precedente;
RS= abaterea medie p˘ atratic˘ a a cererii ca medie mobil˘ a pe Mperioade
de timp precedente;
AL= media mobil˘ a a timpului de avans calculat din datele pe Nperioade
precedente;
K=zα=α−cuantila repartit ¸iei normale N(0,1) (folosit˘ a ¸ si in modelul
precedent).
Se presupune deci c˘ a rata cererii R;N(µ(t),σ(t)),are parametri vari-
abili in timp iar Lare de asemenea media E[L] =l(t) variabil˘ a in timp. Se
presupune c˘ a aceste variabile aleatoare au parametri cons tant ¸i pe perioade
mici de timp de lungimi MrespectivN,parametri ce sunt estimat ¸i ca medii
mobile de forma
AR=M/summationtext
i=1Ri
M=SUMR
M(7.39)
AL=N/summationtext
j=1Lj
N=SUML
N(7.40)
SR=/radicaltp/radicalvertex/radicalvertex/radicalvertex/radicalvertex/radicalvertex/radicalvertex/radicalbtM/summationtext
i=1R2
i
M−
M/summationtext
i=1Ri
M
2
=/radicalBigg
SSUMR
M−/parenleftbiggSUMR
M/parenrightbigg2
. (7.41)
In ipoteza parametrilor constant ¸i putem deci aplica formu lele de calcul pen-
tru comanda Q¸ si nivelul de reaprovizionare L,adic˘ a
Q=/radicalBigg
2.AR.S
H/radicalBigg
H+D
D(7.42)

7.4. MODELE DE SIMULARE PENTRU STOCURI 181
m?
AVI = VI-R(11)?VI = VI+Q(10)
??
NuDa!!!!aaaa
aaaa
!!!!?
?T=CLOCK(9)Nu!!!!aaaa
aaaa
!!!!?
?CLOCK>TT(8)
?
tipareste-lede iesire sistatisticileCalc. TC si(12)Da
?


STOPCalculeaza Q,PCalculeaza AR,AL,SRCLOCK=CLOCK+1? (7)RR(M)=R(6)?
?JJ

JJDO I=1,M
RR(I) = RR(I+1)(5)?
-RR(1)∗RR(1)SSUMR=SSUMR+R ∗R-SSUMR=SSUMR+R-RR(1)Genereazˇ a Rm  B
(4)?JJ

JJDO J=1,N
SUML = SUML+LLL(J) = LGenereaza L(3)?JJ

JJDO I=1,M
SUMR=SUMR+R ∗RSUMR=SUMR+RRR(I) = RGenereaza L(2)?si fixeaza conditiile initialeCiteste parametrii de intrare? (1)

START
m?
B(22)
T = CLOCK + L?(21)
LL(N) = L?(20)
LL(J)=LL(J+1)JJ

JJDO J=1,N?SUML=SUML+L-LL(1)Genereaza L(19)?CS = CS + S(18) Nu?!!!!aaaa
aaaa
!!!!?
?T>CLOCK(17)mB!!!!aaaa
aaaa
!!!!?
?P<VI(16)mB
Nu
DaDaCH = CH+VI∗H (15)?CD = CD-VI∗DVI = 0(14)
 ??<0
≥0!!!!aaaa
aaaa
!!!!?
VI(13)mA




Fig. 7.9. Schema logica pentru al doilea model de stocare

182 CAP. 7. CATEVA MODELE DE SIMULARE
æææææææææææææææææææææææææææææææææææææææææææææææææææ ææææææææææ
P=AL.AR +K√
AL.SR. (7.43)
Schema logic˘ a a acestui model de simulare este prezentat˘ a in Fig. 7. 9.
Condit ¸iile init ¸iale sunt (7.36) precum ¸ si cele ce rezult ˘ a din considerarea
noilor variabile adic˘ a
SUMR =SSUMR =SUML = 0. (7.44)
Algoritmul simul˘ arii folose¸ ste doi vecroti RR(I),1≤I≤M(care memo-
reaz˘ aRidin (7.39), (7.41)) ¸ si LL(J),1≤j≤N(care memoreaz˘ a Ljdin
(7.40)). Blocurile schemei logice se autoexplic˘ a. Trebui e sa preciz˘ am ins˘ a
c˘ a printre parametri de intrare se dau ¸ si parametri cu care se calculeaz˘ a
funct ¸iileµ(t),σ(t),l(t).Schema logic˘ a este construit˘ a in ipoteza c˘ a cererea
nesatisf˘ acut˘ a se pierde (vezi blocurile (13), (14), (15)), dar ca ¸ si in mo-
delul precedent, prin modific˘ ari (reamplas˘ ari) corespun z˘ atoare ale acestor
blocuri, se poate introduce ¸ si ipoteza c˘ a cererea nesatisf˘ acut˘ a se p˘ astreaz˘ a.
Pentru a obt ¸ine din modelul de simulare un plan de reaproviz ionare pe pe-
rioadaTTva trebui s˘ a includem in blocul (22) o instruct ¸iune care s˘ a afi¸ seze
CLOCK,Q,P,T. Repartit ¸ia ratei cererii Rpoate fi normal˘ a N(µ(t),σ(t)),
caz in care Pse calculeaz˘ a cu formula (7.43), sau poate fi Exp(λ(t)),caz in
carePse calculeaz˘ a pe o cale asem˘ an˘ atoare, dar folosind faptu l c˘ a cererea pe
timpul de avans R(L)are o repartit ¸ie Erlang (0,λ,l).Repartit ¸ia lui Lpoate
fi de exemplu Poisson (λ(t)), l=E[L] =λ(t).(Vezi exercit ¸iul E 7.7 ).
Acest ultim model simuleaz˘ a in mod mai realist decˆ at primu l, procesul
de reaprovizionare al stocului.
Exercit ¸ii.
E 7.1. Precizat ¸i cˆ ateva caracteristici ale modelului de a¸ step tare
Exp(λ)/Exp(µ)/1 : (M,FIFO ),0<M <∞
adic˘ a un model cu o ¸ stat ¸ie ¸ si cu coad˘ a finit˘ a.
Indicat ¸ie. Conform formulelor (7.15’),(7.15”) din $ 7.2.3 avem
λn=λ, n≥0, µ n=µ,1≤n≤M+ 1.
deci dup˘ a calcule, folosind (7.8’) avem
pn=ρ(1−ρ)
1−ρM+1=ρ(1−ρ)
K, K= 1−ρM+1.

7.4. MODELE DE SIMULARE PENTRU STOCURI 183
De aici se deduce
E[N(t)] =∞/summationdisplay
n=0nρn(1−ρ)
1−ρN+1=ρ(1 + (M+ 1)(ρ−ρM)−ρM+1)
(1 +ρ)(1 +ρM+1)
E[WL] =M/summationdisplay
n=1(n−1)ρn(1−ρ)
1−ρM+1=ρ2[(M−1)ρm+ 1−MρM−1]
(1−ρM+1)(1 +ρ).
E[WT] =E[WL]
µ, E[NID] =p0, E[TID] =1−ρ
λ(1−ρM+1).
E 7.2. Fie modelul de a¸ steptare
Exp(λ)/Exp(µ)/N: (M,FIFO )
adic˘ a un model cu Nstat ¸ii paralele identice ¸ si cu coada finit˘ a M,M >N. S˘ a
se determine repartit ¸ia num˘ arului de client ¸i in sistem ¸ si cˆ ateva caracteristici
ale modelului.
Indicat ¸ie. Asem˘ an˘ ator exercit ¸iului precedent avem
λn=λ,n≥0, µ n=/braceleftbiggn!µ, daca 1≤n≤M
N!µNn−N, dacaN <n≤N+M.
Mai departe se continu˘ a calculele ca in exercit ¸iul preced ent.
E 7.3. Modificat ¸i schema logic˘ a din modelul din Sect ¸iunea 7.2astfel
incat client ¸ii posed˘ a dou˘ a priorit˘ at ¸i; prioritatea 1 este mai puternic˘ a decˆ at
prioritatea 2.
Indicat ¸ie. In blocul (2) se consider˘ a repartit ¸ia lui ATca o amestecare
discret˘ a de forma
fAT(x) =p1f1(x) +p2f2(x),p1,p2>0,p1+p2= 1,fi−densitati,i = 1,2.
La generarea lui ATclientul sosit se depune in coad˘ a Q1sauQ2core-
spunz˘ atoare priorit˘ at ¸ii. In blocul (4) se va simula timp ul de servire conform
priorit˘ at ¸ii celei mai mari ( adic˘ a 1), dac˘ a Q1/negationslash=∅sau priorit˘ at ¸ii mai mici
dac˘ aQ1=∅.Se pot calcula timpii de a¸ steptare in funct ¸ie de priorit˘ a t ¸i.
E 7.4. La fel ca in exercit ¸iul precedent, modificat ¸i schema logic ˘ a din
Fig. 7.3 (a modelului 7.3) presupunˆ and c˘ a sosirile provin dintr-o populat ¸ie
cu dou˘ a priorit˘ at ¸i.
Indicat ¸ie. Se vor folosi ideile din exercit ¸iul precedent: timpul de in ter-
sosire are o repatit ¸ie dat˘ a de o amestecare discret˘ a de do u˘ a repartit ¸ii.

184 CAP. 7. CATEVA MODELE DE SIMULARE
E 7.5. Ce modific˘ ari ar trebui f˘ acute in modelul 7.3dac˘ a duratele de
serviciu ale stat ¸iilor au repartit ¸ii diferite.
Indicat ¸ie. Se va folosi un vector ST(I),1≤I≤Niar in blocurile unde se
genereaz˘ aSTse va inlocui aceast˘ a instruct ¸iune cu GENEREAZA ST (I).
E 7.6. Ce precaut ¸ii trebuie s˘ a se ia in modelele 7.3dac˘ a cererea Reste
discret˘ aPoisson (λ) ¸ siLesteBinom (n,p)?
Indicat ¸ie. Toate variabilele din model vor fi discrete, inclusiv CLOCK.
Nivelul de reaprovizionare se va calcula t ¸inˆ and seama c˘ a R(l);Poisson (lλ).
E 7.7. S˘ a se determine nivelul de reaprovizionare Pcˆ and rata cererii r
are repartit ¸ia Exp(λ).
Indicat ¸ie. Se folose¸ ste condit ¸ia Prob(R(L)> P) =α, α−risc.DeciP
este solut ¸ia ecuat ¸iei
1−α=λl
Γ(l)/integraldisplayP
0xl−1e−λxdx
deoareceR(L)=r1+…+rl;Erlang (λ,l), l=E[L].

Bibliography
[1] CHISMAN,J. (1989). Introduction to Simulation and Modeling using
GPSS/PC , Minuteman Software. (Cont ¸ine ¸ si discheta cu versiunea
student ¸easc˘ a a GPSS/PC).
[2] ERMAKOV,E.S. (1974). Metoda Monte Carlo ¸ si probleme inrudite. Ed-
itura Tehnic˘ a, Bucure¸ sti. (Traducere din Limba Rus˘ a).
[3] FISHMAN, G. S. (1978). Principles of Discrete Event Simulation. Wi-
ley, New York.
[4] GORUNESCU, F., PRODAN, A. (2001). Modelare stochastic˘ a ¸ si sim-
ulare. Editura Albastr˘ a, Cluj-Napoca.
[5] MORGAN,BYRON T. (1984). Elements of Simulation. Chapman &
Hall, New York, London.
[6] ROBERT CHRISTIAN P., CASELLA, GEORGE. (1999). Monte Carlo
Statistical Methods. Springer Verlag, New York, Berlin.
[7] ROSS, SHELDOM M. (1997) Simulation. Second Edition. Academic
Press, San Diego, New York, London.
[8] SPRIET, JAN, VANSTEENKISTE GHISLAIN, C. (1982). Computer
ided Modeling and Simulation. Academic Press, New York.
[9] V˘ADUVA, I. (1972). ”Metoda Monte Carlo”. Culegere tematic˘ a,
Matematic˘ a-Mecanic˘ a, Vol. 1, Nr. 1, CIDI, p.131-188.
[10] V ˘ADUVA, I. (1977). Modele de Simulare cu Calculatorul. Editura
Tehnic˘ a, Bucure¸ sti.
[11] V ˘ADUVA,I., OD ˘AGESCU,I., STOICA,M. (1983). Simularea Proceselor
Economice. Editura Tehnic˘ a, Bucure¸ sti.
185

186 BIBLIOGRAPHY
[12] ZEIGLER,B. P. (1976). Theory of Modeling and Simulation. (First Edi-
tion). John Wiley and Sons, New York.
[13] ZEIGLER, B. P., PRAEHOFER, H. (2000). Theory of Modeling and
Simulation, (Second Edition). Academic Press, New York.
[14] *** (1977). Limbajul SIMUB. Manual de utilizare. Centrul de Calcul
Al Universit˘ at ¸ii din Bucure¸ sti. (litografiat).

Similar Posts