You are on page 1of 12

6

SIMULACIJA
Ciljevi ovog poglavlja su slijedeći:
• Upoznati osnove simulacije
• Naučiti postupak simulacije Monte Carlo metodom
• Shvatiti značaj slučajnih brojeva u simulaciji i naučiti neke postupke za
njihovo generisanje
• Razumjerti kako se simulacija može iskoristiti za modeliranje raspodjela
vjerovatnoće
• Naučiti opšti postupak konstruisanja simulacijskog modela
• Upoznati mogućnosti primjene simulacije u matematici, sistemima
masovnog usluživanja i planiranju zaliha
• Korištenjem konkretnih primjera naučiti kako se simulacija koristi
za rješavanje problema

8.1. OSNOVE SIMULACIJE

Simulirati ponašanje sistema znači formulisati simulacijski model kojim se


približno imitira ponašanje sistema utvrđivanjem zavisnosti koje se stvarno
nalaze u sistemu, odnosno utvrđivanjem interakcija između elemenata
(komponenti) sistema. Ove interakcije mogu se utvrditi matematički ili
statistički.
Razlikuju se dvije vrste simulacijskih problema:
- deterministička simulacija za analizu i rješavanje determinističkih
problema i
- stohastička simulacija za analizu i rješavanje stohastičkih problema
(Monte Carlo simulacija ili statističko modeliranje).
Pored toga, može se razlikovati diskretna i kontinuirana simulacija.
2 Stohastički modeli u poslovnom odlučivanju

Simulacija ima vrlo široku primjenu od rješavanja problema npr. u matematici


(približno izračunavanje integrala, rješavanje diferencijalnih jednačina i sl.),
preko rješavanja problema u vojnoj strategiji i taktici do rješavanja problema
poslovnog odlučivanja (upravljanje zalihama, ponašanje potrošača, poslovna
prognostika i sl).
Značajnije primjene simulacije baziraju se na mogućnosti korištenja računara da
numeričke proračune provedu dovoljno efikasno. To pospješuju simulacioni
programi kao što su:
- GPSS (General Purpose Simulation System),
- SIMSCRIPT (Simulation Scriptum),
- SIMULA,
- DYNAMO i dr.

8.2. SIMULACIJA MONTE CARLO METODOM

Za potpunije razumijevanje metode Monte Carlo posmatraćemo primjer njene


primjene u izračunavanju približne vrijednosti integrala (deterministički
zadatak)
1
∫ f ( x )dx
0

nenegativne funkcije f(x) i za 0≤ x≤ 1 (slika 7.1).

0,8

f(x)
0,6

0,4
A
0,2

0 0,2 0,4 0,6 0,8 1 x

Slika 8.1. Utvrđivanje vrijednosti integrala


8. Simulacija 3

Pretpostavimo da su x i y nezavisne i uniformno raspoređene slučajne


promjenljive. Na slučajan način bira se tačka (x,y) u jediničnom kvadratu sa
tjemenima (0,0), (1,0), (1,1) i (0,1). Neka je A događaj da tačka padne u oblast
ispod krive f(x) na slici 7.1. Vjerovatnoća događaja A je P(A) i ona je jednaka
količniku površine te oblasti i površine kvadrata (koja je jednaka 1) ili
1
P(A) = ∫ f ( x )dx .
0

P(A) se ocjenjuje pomoću relativne učestalosti m/n događaja A, gdje je:


n - broj biranja slučajne tačke u kvadratu i
m - broj slučajnih tačaka koje su pale u oblast ispod krive f(x) (uključujući i
tačke na krivoj).
Ovaj količnik približno je jednak površini, tj.
1 m
∫ f ( x )dx ≈ .
0 n
Prema tome, orijentaciona skica metode Monte Carlo sastojala bi se u
slijedećem:
Potrebno je pronaći približnu vrijednost veličine a. Odredimo raspodjelu
slučajne promjenljive x tako da je E{x}=a. Na osnovu x n realizovanog uzorka
(x1,x2,...,xn) velikog obima n, slijedi da je
1
a≈ ( x1 + x 2 + ... + x n ).
n
Tačnost ove ocjene procjenjuje se sa datom vjerovatnoćom prema centralnoj
graničnoj teoremi

{ } 
P x n − a ≤ ε = 2 F  ε
n 
,
2
sn =
1 n 2
∑ ( xk − xn ) .
 sn  n k =1
1
Tako npr. za datu vjerovatnoću 0,95 tačnost ε je reda , što se ne smatra za
n
veliku efikasnost.
U zadacima sa relativnom greškom 5-10%, gdje se ne traži velika preciznost,
metoda Monte Carlo može se efikasno koristiti.

8.3. GENERISANJE SLUČAJNIH BROJEVA


4 Stohastički modeli u poslovnom odlučivanju

Primjena metode simulacije bazirana je na upotrebi slučajnih brojeva. Oni se


mogu dobiti elektronskim simuliranjem ruleta čiji su sektori cifre 0,1,2,...,9.
Takođe, postoje i tzv. pseudoslučajni brojevi. Primjer generisanja takvih brojeva
je algoritam Von Neumanna, tzv. metod srednjih kvadrata. Npr. ako je početni
broj n1=0,54 iz njegovog kvadrata n12=0,2916 uzimaju se dvije srednje cifre kao
drugi broj n2=0,91 koji se nanovo kvadrira n22=0,8281 i dobija se n3=0,28, itd.
Problem kod upotrebe metode srednjih kvadrata je pojava ciklusa.
Kod ručne simulacije koriste se gotove tablice slučajnih brojeva formirane po
nekom od postupaka generisanja, kao u tabeli 8.1.

0589 6732 4799 9485 6139 5932 9341 1782 3472 5643
2209 4803 4807 3579 6525 3004 7252 0583 7091 8889
7643 1722 7742 6611 2395 2381 3681 0560 2340 9354
0718 2503 1969 9915 7360 3022 0578 9539 4580 7155
8913 0317 0812 3314 3963 6234 7408 6556 1637 1971
6462 8912 9125 2409 2575 0309 3941 7314 0608 1563
4283 9511 4351 4208 1514 3473 6807 1829 6948 8046
8058 7036 4104 2679 7846 0339 1763 0969 8244 3140
0020 9040 9945 7257 4219 4904 2433 1493 0986 4590
0540 2083 0191 6076 5524 7925 1231 8412 7457 5010
9583 2253 9178 8021 3436 5222 3386 9433 8386 6167
6535 7046 8714 8950 7217 1810 5516 7995 7200 2058
7224 0403 3619 4022 1491 5343 6057 4099 5500 1069
4169 4058 9305 4873 3465 4157 0463 4918 3929 8177
6188 5079 9682 8200 0797 5292 7546 8601 9807 9194
4891 4812 4862 4824 9146 5489 6122 1872 6738 6657
8837 8429 1219 0378 4931 3976 9913 2877 4527 9181
7780 2573 0980 9208 0295 1287 8984 4857 0602 1382
2402 0340 0117 0631 8191 4017 5366 8720 8863 4712
8655 8475 4399 0176 9620 2793 4541 7196 5226 3078
7854 4920 0532 1418 1097 9047 4468 3930 1981 5579
1496 6462 8278 3568 3094 1462 0412 2549 9545 6393
6213 8724 7334 8011 7849 6473 3101 6697 2865 3616
7274 1334 6503 2612 4906 2790 4995 7467 9461 1331

Tabela 8.1. Tablica slučajnih brojeva

8.4. STATISTIČKO MODELIRANJE DATE RASPODJELE


8. Simulacija 5

Neka je zadata funkcija raspodjele vjerovatnoća F(x) na intervalu -∞ <x<+∞ .


Potrebno je generisati niz vrijednosti x1,x2,,... koje možemo smatrati nezavisnim
realizacijama slučajne promjenljive x sa datom funkcijom raspodjele
vjerovatnoće F(x), -∞ <x<+∞ . Neka je u=F(x) neprekidna i strogo rastuća
funkcija tako da postoji jednoznačna inverzna funkcija x=F-1(u) 0<u<1 (tzv.
metoda inverzije).

1 F(x)

0 x
x=F-1(u)
Slika 8.2. Modeliranje funkcije raspodjele

U mnogim slučajevima nije jednostavno izvršiti modeliranje funkcije raspodjele


vjerovatnoće F(x) pomoću formule X=F-1(U), U:U(0,1), zbog složenosti
izračunavanja vrijednosti F-1, tako da se moraju koristiti drugi postupci
raspodjele ili aproksimativni izrazi korištenjem metoda numeričke analize.
Kod empirijskih distribucija ova izračunavanja se vrše na sličan način samo sa
diskretnim vrijednostima slučajne promjenljive.

8.5. KONSTRUISANJE SIMULACIJSKOG MODELA I SPROVOĐENJE


SIMULACIJE

Kod konstrukcije simulacionog modela može se koristiti slijedeći postupak:


1. Stvarni sistem se iskazuje putem osnovnih karakteristika i njegovih
ključnih događaja. Događaj je vremenski trenutak u kojem se dešavaju
promjene karakteristika sistema. Ovo se obično dešava kada se jedna ili
više aktivnosti završe i započinju jedna ili više aktivnosti. Kao
komponente stvarnog sistema pojavljuju se i slučajne veličine.
2. Na bazi generisanih slučajnih brojeva izračunava se vrijednost
realizacije slučajnih veličina.
3. Na bazi izračunatih realizacija izračunava se rezultat operacije za datu
realizaciju.
6 Stohastički modeli u poslovnom odlučivanju

4. Statistički se obrađuju dobijeni rezultati, tj. provjerava se ispunjavanje


uslova.
5. Ocjenjuje se tačnost dobijenih rezultata.
Za ilustraciju korištenja simulacije posmatraće se rad jednokanalnog sistema
masovnog usluživanja. Karakteristični parametri koji treba da budu izračunati su
prosječna neiskorištenost uslužnog mjesta, prosječna dužina reda čekanja i
prosječno vrijeme čekanja po korisniku. Događaji koji su karakteristični za ovaj
sistem su:
1. dolasci klijenata i
2. odlasci klijenata nakon dobivanja usluge.
Kada klijent pristigne on može ići na uslugu ili stati u red čekanja. Kada jedan
korisnik dobije uslugu on odlazi, a prvi iz reda čekanja počinje koristiti uslugu.
Ova dva osnovna događaja imaju za posljedicu slijedeću konstrukciju
simulacijskog modela.
I Događaj dolaska (D)

1. Obuhvata vrijeme u kojem će se pojaviti istovremeno naredni dolazak


izračunavanjem vremena p i dodavanjem trenutnom vremenu simulacije.
2. Provjera statusa uslužnog mjesta (prazan ili ne)
2.1. Ako je prazan onda se radi slijedeće:
i. Počinje se sa pružanjem usluge prispjelom klijentu i povezuje se
sa vremenom usluge q i izračunava vrijeme odlaska klijenta
(trenutno vrijeme + q).
ii. Promijeni se status uslužnog mjesta u zauzet i usklade se podaci
o vremenu usluživanja.
2.2. Ako je uslužno mjesto zauzeto, klijent se stavlja u red i povećava se
dužina reda za 1.
II Događaj odlaska (O)
1. Provjeriti status reda čekanja (prazan ili ne):
1.1. Ako nema nikog u redu čekanja uslužno mjesto se proglasi
praznim.
1.2. Ako u redu ima nekog radi se slijedeće:
i. Počinje se sa pružanjem usluge prvom klijentu, reducira se
veličina reda za 1 i usklade se podaci o vremenu čekanja.
ii. Povezuje se vrijeme pružanja usluge q i izračunava njegovo
vrijeme odlaska (trenutno vrijeme + q).

0 D1 D2 O1 D3 O2 ...
8. Simulacija 7

Slika 8.3. Hronološki redoslijed dolazaka i odlazaka

DODATAK VII: PRIMJENA SIMULACIJE

VII-1. Primjena u matematici

Primjer 1.: Izračunati površinu ispod krive funkcije f(x) (približnu vrijednost
integrala) na osnovu 30 simulacija.
Rješenje:

Koordinate Koordinate Koordinate


A A A
x y x y x y
5 89 - 22 9 + 76 43 -
67 32 + 48 3 + 17 22 +
47 99 - 48 7 + 77 42 -
94 85 - 35 79 - 66 11 +
61 39 - 65 25 + 23 95 -
59 32 - 30 4 + 23 81 -
93 41 + 72 52 - 36 81 -
17 82 - 5 83 - 5 60 -
34 72 - 70 91 - 23 40 -
56 43 - 88 89 - 93 54 -

Od ukupnog broja simulacija n=30 u oblast ispod krive f(x) palo je m=9 tačaka
tako da je površina jednaka
1 m 9
∫ f ( x )dx ≈ = = 0 ,3.
0 n 30

VII-2. Modeliranje eksponencijalne raspodjele

Primjer 2.: Neka x ima eksponencijalnu raspodjelu


0 x≤0
x
F( x ) =  - µt − µx
 ∫ µe dt = 1 − e , x > 0
0

Slijedi da je
u = 1 − e − µx , x>0,
odnosno
8 Stohastički modeli u poslovnom odlučivanju

1
x=− ln( 1 − u ), 0 < u < 1 .
µ
To znači da, ako se pođe od niza u1,u2,... kojim je modelirana uniformna
raspodjela na intervalu [0,1], dobiva se niz x1,x2,... kojim je modelirana
eksponencijalna raspodjela sa parametrom µ.
Pretpostavimo da je vrijeme usluživanja na benziskoj pumpi raspodijeljeno
eksponencijalno sa prosječnim trajanjem od 5 minuta. Potrebno je odrediti
vrijeme usluge za prvih 5 automobila.
Rješenje:
Pošto je 1–u isto tako slučajni broj iz intervala [0,1] (sa tri decimalna mjesta), na
osnovu tablice slučajnih brojeva, slijedi da je
1
x=− ln u
µ
pa je
x1 = -5 ln 0,058 = 14,2
x2 = -5 ln 0,673 = 2,0
x3 = -5 ln 0,479 = 3,7
x4 = -5 ln 0,948 = 0,3
x5 = -5 ln 0,613 = 2,4.

VII-3. Simuliranje rada jednokanalnog sistema masovnog usluživanja

Primjer 3.: Upotrebom metode Monte Carlo treba oponašati rad jednokanalnog
sistema masovnog usluživanja. Praćenjem je utvrđeno da klijenti dolaze na
usluživanje u vremenskom razmaku od 6, 7, 8 i 9 minuta, a usluživanje po
jednom klijentu trajalo je 4, 5, 6, 7 i 8 minuta. U tabelama su prikazane
vjerovatnoće dolazaka i usluživanja.

Razmak između dolazaka klijenata u


Vjerovatnoća
minutima
6 0,2
7 0,2
8 0,5
9 0,10
8. Simulacija 9

Vrijeme usluživanja klijenata u


Vjerovatnoća
minutima
4 0,1
5 0,2
6 0,4
7 0,2
8 0,1

Potrebno je formirati model rada sistema za usluživanje uvođenjem pripadajućih


slučajnih brojeva od 00-99. Rad sistema treba oponašati kod opsluživanja 8
klijenata.
Za potrebe modela generisani su slijedeći slučajni brojevi:

Slučajni brojevi
Redni broj
Razmak između dolaska
dolaska Vrijeme trajanja usluživanja
klijenta
1 7 73
2 18 60
3 25 30
4 3 22
5 19 5
6 69 78
7 99 95
8 15 39

Izračunati osnovne karakteristike sistema.


Rješenje:

Razmak između
Vjerovatnoća Kumulativ Slučajni brojevi
dolazaka
6 0,2 0,2 (0-19)
7 0,2 0,4 (20-39)
8 0,5 0,9 (40-89)
9 0,1 1 (90-99)
10 Stohastički modeli u poslovnom odlučivanju

Vrijeme
Vjerovatnoća Kumulativ Slučajni brojevi
usluživanja
4 0,1 0,1 (0-9)
5 0,2 0,3 (10-29)
6 0,4 0,7 (30-69)
7 0,2 0,9 (70-89)
8 0,1 1 (90-99)

Redni broj Razmak Vrijeme


Slučajni broj Slučajni broj
dolaska dolazaka usluge
1 7 6 73 7
2 18 6 60 6
3 25 7 30 6
4 3 6 22 5
5 19 6 5 4
6 69 8 78 7
7 99 9 95 8
8 15 6 39 6

Sistem je počeo kao prazan u trenutku t=0.


Prvi dolazak D1 slijedi nakon 6 minuta pa je t=0+6=6 minuta. Simulacija skače
sa 0 na 6 minuta.
Drugi dolazak D2 slijedi nakon 6+6=12 minuta.
Prvi klijent dobiva uslugu koja traje 7 minuta tako da je njegovo vrijeme odlaska
t=6+7=13 minuta.
Vrijeme dok je uslužno mjesto prazno je 0+6=6 minuta.
Treći dolazak D3 slijedi nakon 12 minuta.
Uslužno mjesto je zauzeto i klijent staje u red.
Dužina reda je Lq=0+1=1 (trenutak t = 12 minuta).
Četvrti dolazak D4 slijedi u t=12+7=19 minuta.
Drugi klijent počinje uslugu u t=13 minuta i odlazi u t=13+6=19 minuta.
Treći klijent može odmah na uslugu, itd.
8. Simulacija 11

Uslužno
Vrijeme Vrijeme Početak Vrijeme Dužina Vrijeme
Klijent mjesto
dolaska usluge usluge odlaska reda čekanja
prazno (min)
1 6 7 6 13 0 0 6
2 6+6=12 6 13 19 1 13-12=1 0
3 12+7=19 6 19 25 0 0 0
4 25 5 25 30 0 0 0
5 31 4 31 35 0 0 1
6 39 7 39 46 0 0 4
7 48 8 48 56 0 0 2
8 55 6 56 62 1 1 0
Ukupno 2 2 13
Prema tome, karakteristike sistema su:
- u simuliranom periodu objekat je prazan 21% vremena (13/62),
- prosječno vrijeme čekanja klijenta je 0,25 minuta (2/8) i
- prosječna dužina reda je 0,3 klijenta (2/62).

D1 D2 O1 D3 D4
O4 D5 O5 D6 O6 D7 D8 O7 O8
O2 O3

0 6 12 13 19 25 30 31 35 39 46 48 55 56 62

IX-4. Planiranje zaliha

Primjer 4.: Upotrebom metode Monte Carlo potrebno je oponašati promjene


sistema zaliha materijala. Poznati su podaci o dnevnim potrebama materijala od
strane proizvodnje. Ovi podaci sa pripadajućim vjerovatnoćama dati su u
slijedećoj tabeli:

Dnevna potreba proizvodnje u kg Vjerovatnoća


10 0,10
20 0,20
30 0,30
40 0,30
50 0,10

Promjene u sistemu zaliha materijala treba oponašati za period od 12 dana.


Stanje zaliha materijala na početku posmatranja iznosilo je 100 kg, a krajem
četvrtog dana primljena je nova količina od 250 kg materijala.
12 Stohastički modeli u poslovnom odlučivanju

Za potrebe modela generisani su slijedeći slučajni brojevi: 3, 17, 45, 80, 71, 55,
33, 14, 89, 13, 8 i 12.
Rješenje:

Dnevne potrebe proizvodnje u kg Vjerovatnoća Kumulativ


10 0,10 0,10 (0-9)
20 0,20 0,30 (10-29)
30 0,30 0,60 (30-59)
40 0,30 0,90 (60-89)
50 0,10 0,10 (90-99)
Prema tome, promjene u sistemu zaliha materijala za period od 12 dana
prikazane su u slijedećoj tabeli:

Dan Slučajni broj Dnevne potrebe proizvodnje Zalihe na kraju dana


1 3 10 90
2 17 20 70
3 45 30 40
4 80 40 0+250
5 71 40 210
6 55 30 180
7 33 30 150
8 14 20 130
9 89 40 90
10 13 20 70
11 8 10 60
12 12 20 40

You might also like