Sunteți pe pagina 1din 6

Academia de Studii Economice, Bucuresti

Facultatea de Cibernetica, Statistica si Informatica Economica

Metoda de simulare
Monte Carlo
- Analiza si diagnoza sistemelor economice -

--------------------Grupa ----------Seria ---------------Profesor coordonator: --------------

Metoda de simulare Monte Carlo


Introducere
n perioada de dezvoltare a energiei atomice de dup cel de al doilea rzboi
mondial s-a ajuns la necesitatea rezolvrii problemei de difuzie a neutronului sau a
transportului neutronului ntr-un mediu izotrop (mediu care are aceleai proprieti n
orice direcie). Aceast problem modelat ca un sistem de ecuaii difereniale pariale
s-a dovedit foarte dificil de rezolvat prin ecuaii cu diferene.
Exista ns un rezultat prin care se stabilea analogia dintre ecuaiile integrodifereniale i procesele stochastice. n acest context, John von Neumann i Stanislaw
Ulam de la Los Alamos National Laboratory (S.U.A.) au sugerat c s-ar putea obine o
aproximaie utilizabil a soluiei cutate prin realizarea de experimente bazate pe
numere aleatoare efectuate pe calculatoare digitale. Ei au denumit aceast metod
Monte Carlo dup cazinourile de la Monte Carlo ale cror rulete pot fi considerate
instrumente de generare a numerelor aleatoare.
Aceast propunere a inversat modul de raionament de pn atunci. n locul
utilizrii ecuaiilor cu diferene pentru a obine soluii ale problemelor probabiliste, se
genereaz selecii prin experimente cu numere aleatoare pentru a se obine soluii ale
unor ecuaii integro-difereniale, care nu sunt n mod necesar de natur probabilist.
Punerea n practic a metodei propuse de von Neumann i Ulam a fost posibil i
datorit progreselor obinute n acea perioad n domeniul calculatoarelor digitale.
Dei decepional de simpl n concept, metoda Monte Carlo furnizeaz soluii
aproximative pentru o mare varietate de probleme matematice. O caracteristic
important a metodei Monte Carlo const n faptul c dintre metodele numerice care se
bazeaz pe evaluarea a n puncte ntr-un spaiu m dimensional pentru a obine o soluie
aproximativ, metoda Monte Carlo permite estimaii a cror eroare absolut descrete
cu n-1/2 pe cnd toate celelalte estimaii au erori ce descresc cu n-1/m cel mult. n plus,
timpul de lucru al metodei Monte Carlo crete polinomial cu numrul de variabile m,
pe cnd la alte metode timpul de lucru crete exponenial n raport cu m.
n prezent, metoda de simulare Monte Carlo se aplic din ce n ce mai mult n
domeniul afacerilor, pentru analiza problemelor stochastice sau n condiii de risc,
atunci cnd aceeai direcie de aciune poate avea mai multe consecine, ale cror
probabiliti se pot estima.
Variabilele ale cror valori nu sunt cunoscute cu certitudine, dar pot fi descrise prin
distribuii de probabilitate se numesc variabile stochastice sau probabiliste. n
simulare, pentru a imita variabilitatea unei astfel de variabile este necesar generarea
valorilor posibile pe baza distribuiei sale de probabilitate.
Probabilitile au un rol important n modelarea situaiilor n care intervin mrimi
stochastice. n simulare, cunotinele despre probabiliti sunt necesare att n faza de
construire a modelului de simulare ct n faza de analiz a rezultatelor simulrii.
Probabilitile pot fi obinute n mai multe moduri. Cea mai simpl este metoda
subiectiv, prin care experii estimeaz pe o scar de la zero la unu probabilitatea ca un
anumit eveniment s se realizeze [23, 39]. O alt metod este metoda obiectiv sau
metoda bazat pe frecvenele relative care utilizeaz datele istorice sau obinute prin
msurarea direct a valorilor unei mrimi stochastice.

Pentru construirea distribuiei de probabilitate a unei variabile stochastice sau


probabiliste pe baza datelor istorice sau obinute prin msurare direct se poate aplica
o procedur format din trei etape:
1. Colectarea datelor referitoare la valorile variabilei probabiliste.
2. Gruparea datelor pe intervale i construirea histogramei frecvenelor relative.
3. Analiza graficului histogramei frecvenelor relative pentru a stabili dac seamn
cu forma unei distribuii teoretice cunoscute. Tipul distribuiei de probabilitate poate fi
apreciat prin teste de concordan (Kolmogorov, Smirnov, Pearson sau X2) care
msoar apropierea dintre distribuia teoretic i distribuia valorilor variabilei
probabiliste obinute din seriile de date istorice sau prin msurare. n final, se
calculeaz parametri distribuiei.

Generarea fr calculator a valorilor variabilelor probabiliste


Generarea valorilor variabilelor probabiliste reprezint motorul unui model de
simulare. Prin extragerea la ntmplare a unui eantion din distribuia de probabilitate
care descrie comportamentul unei variabile probabiliste se reproduce n modelul de
simulare caracterul aleator al variabilei necontrolabile de decident.
Pentru a ilustra modul n care se pot extrage la ntmplare valorile unei variabile
probabiliste se va prezenta un exemplu de simulare a vnzrilor sptmnale de
calculatoare PC ntr-un centru comercial. Acest exemplu nu se refer la o problem de
decizie, de aceea nu sunt definite variantele decizionale controlabile de decident.
Tabelul prezint vnzrile de calculatoare PC ale centrului comercial ALFA n
ultimele 30 de sptmni.

Pentru a simula cererea sptmnal de calculatoare se va determina distribuia de


probabilitate a cererii sptmnale utiliznd frecvena relativ a cererii n cele 30
sptmni, adic P(xi) = fi/30.

O modalitate de a genera numrul de calculatoare care se vor vinde ntr-o


anumit sptmn ar putea fi urmtoarea:
- Se pregtesc 100 de bilete de hrtie de aceeai culoare i dimensiune.
- Pe 20 dintre ele se scrie numrul 0, pe 40 bilete se scrie numrul 1, pe alte 20
bilete se scrie numrul 2, pe 10 bilete se scrie numrul 3, iar pe alte 10 bilete se scrie
numrul 4.
- Se mpturesc biletele cu partea scris spre interior i se amestec ntr-un bol.
- Se extrage un bilet i se citete numrul de pe bilet. Evident, ansa cea mai
mare de a fi extras i aparine numrului 1.
- Se introduce din nou n bol biletul mpturit i extragerea se va repeta de mai
multe ori pentru a se reproduce vnzrile reale.

Ideea de baz a metodei Monte Carlo


Procesul de generare aleatoare a valorilor unei variabile probabiliste este referit n
literatura de specialitate ca metoda Monte Carlo i const n generarea mai nti a unui
numr aleator i apoi utilizarea numrului obinut pentru extragerea unei valori din
distribuia de probabilitate care descrie comportamentul variabilei probabiliste.
Metoda Monte Carlo genereaz artificial valorile unei variabile probabiliste, prin
utilizarea unui generator de numere aleatoare uniform distribuite n intervalul [0, 1] i
a funciei distribuiei cumulative asociat variabilei probabiliste respective.
Un numr aleator este orice numr care poate fi obinut ntr-un asemenea mod nct
valoarea lui nu poate fi prevzut dinainte. Astfel, zarurile sau ruleta pot fi folosite
pentru a construi tabele de numere aleatoare, dar utilizarea acestora nu este
convenabil pentru simularea pe calculator. De aceea, numerele aleatoare necesare
simulrii sunt obinute prin proceduri aritmetice numite generatori.
Cei mai muli generatori de numere aleatoare implementai pe calculatoare sunt de
fapt generatori de numere pseudoaleatoare care se comport ca i numerele aleatoare
n sensul c numere pseudoaleatoare satisfac testul statistic al caracterului aleator, dar
sunt predictibile i reproductibile.

Aplicaii numerice
o Exemplul 1.
Numrul de costume de haine brbteti vndute zilnic n cadrul unui mare
magazin de confecii este o variabil probabilist discret uniform repartizat n
intervalul [6, 10].
Se cere simularea vnzrilor pentru 10 zile.
Rezolvare:
n tabel sunt prezentate probabilitile P(X = xi) i P(X xi) i intervalele de
numere aleatoare asociate fiecrei valori in intervalul [6, 10].

n tabelul urmator sunt simulate vnzrile din 10 zile:

Observaie: n cazul variabilelor cu distribuie uniform discret n intervalul [a,


b], se poate genera direct o anumit valoare xi cu ajutorul relaiei:
xi = partea ntreag din [a + (b-a+1)u]
De exemplu, dac s-a generat u = 0,709084, atunci pentru variabila probabilist
cu distribuie uniform discret n intervalul [6, 10], numrul de costume brbteti
vndute ntr-o zi oarecare este:
xi = partea ntreag din [6 + (10-6+1)* 0,709084] = 9 costume.
o Exempul 2.
O firm de software dorete s organizeze trimestrial concursuri pentru
ocuparea unor posturi de programatori. Procesul de selectare a angajailor presupune
participarea candidailor la un test de programare. Se estimeaz c se pot nscrie
maxim 10 candidai.
Pe baza experienei de la testele anterioare s-a stabilit c probabilitatea ca un
candidat s treac testul este de 0,30.
Managerul firmei dorete s determine prin simulare ci candidai vor promova
testul la urmtoarele trei concursuri.

n tabel sunt prezentate valorile funciei de mas de probabilitate, valorile


funciei distribuiei cumulative i intervalele de numere aleatoare:

n tabelul urmator se determin prin metoda Monte Carlo numrul de candidai


care vor promova testul de programare la urmtoarele trei concursuri:

La concursul 1, vor promova 3 candidai, la concursul 2 vor promova 2


candidai, iar la concursul 3 vor promova 4 candidai.