Professional Documents
Culture Documents
Stohastička simulacija
Prilikom modeliranja postoje odredeni aspekti sistema o kojima znamo veoma malo. U slučaju
proizvodnog sistema to mogu biti uticaji poslovnog okruženja, otkazi mašina, ljudski faktor
(npr. bolovanje, temperament radnika). U skladu sa tim odredene promenljive ne možemo
deterministički definisati. Na primer, ne možemo sa sigurnošću definisati trenutak u kome će se
radnik razboleti. Sa apekta modeliranja sistema ovo dešavanje je stohastičko. Za odredivanje
vrednosti slučajne promenljive vrši se izbor slučajne vrednosti iz opsega mogućih vrednosti.
Posmatranjem rada sistema tokom prethodnog perioda moguće je statistički odrediti neku
zakonitost u dešavanju slučajnih pojava, tj. moguće je definisati raspodelu verovatnoće da
posmatrana promenljiva uzme odredenu vrednost. Na primer, narudžbine pojedinih proizvoda
mogu sezonski varirati (tipičan primer je potreba za osvežavajućim pićima tokom godine), ali
se verovatnoća potrebe za proizvodnima tokom sezone može statistički proceniti.
Ako se parametar menja stohastički, za dobijanje vrednosti koje se koriste u simulaciji može se
upotrebiti Monte Karlo metod za izvlačenje slučajnih uzoraka iz njegove raspodele verovatnoće.
Kako bi se primenio ovaj metod neophodno je poznavati raspodelu verovatnoće vrednosti pro-
menljive (parametra) koji se koristi u modelu. Ova raspodela sa definiše posmatranjem promene
datog parametra u praksi. Monte Karlo metod se sastoji od pet koraka:
1. Posmatranje parametra koji se modelira
2. Izračunavanje frekvence pojave vrednosti
3. Izračunavanje kumulativne frekvence raspodele i njeno pretvaranje u kumulativnu vero-
vatnoću
4. Uspostavljanje zavisnosti izmedu vrednosti parametra i unifomnog niza slučajnih brojeva
u opsegu 00-99
5. Generisanje niza slučajnih brojeva korišćenjem npr. tabele slučajnih brojeva i dobijanje
vrednosti parametra koja odgovara svakom od slučajnih brojeva
12
Ž. Jakovljević, Kompjuterska simulacija u automatizaciji proizvodnje - izvodi sa predavanja 13
Primer:
Posmatrajmo sistem koji se sastoji od jedne mašine na kojoj se obraduju neki delovi i reda
čekanja na operaciju na toj mašini (slika 2.1). Vreme izmedu dolaska dva uzastopna dela u
Dolazak Odlazak
delova Red delova
Mašina
èekanja
KORAK 1:
Posmatranjem dolaska delova u sistem u prethodnom vremenskom periodu došlo se do sledećih
vrednosti parametara - vremena izmedu dolaska dva uzastopna dela u minutima:
0,71; 1,32; 2,64; 1,82; 2,43; 3,66; 4,12; 2,17; 5,32; 1,42; 0,21; 3,38; 4,72; 2,83; 1,58; 2,23; 1,48;
3,82; 2,17; 3,21
KORAK 2:
Posmatranjem vrednosti datog parametra izračunavaju se frekvence pojave vrednosti u odredenom
opsegu prikazane u tabeli 2.1. Histogram vremena izmedu dva uzastopna dolaska delova je pri-
kazan na slici 2.2.
frekvenca f
6
0
0 1 2 3 4 5 6
Opseg vremena izmeðu
dva uzastopna dolaska delova [min]
Slika 2.2: Histogram vremena izmedu dva uzastopna dolaska delova u sistem
Ž. Jakovljević, Kompjuterska simulacija u automatizaciji proizvodnje - izvodi sa predavanja 14
KORAK 3:
Formira se tabela kumulativne frekvence raspodele i kumulativne empirijske verovatnoće - ta-
bela 2.2. Kumulativni histogram i kumulativna verovatnoća su prikazane na slici 2.3.
Kumulativna Kumulativna
frekvenca Fi verovatnoæa F
20 1.0
18 0.9
16 0.8
14 0.7
12 0.6
10 0.5
8 0.4
6 0.3
4 0.2
2 0.1
0 0.0
0 1 2 3 4 5 6 0 1 2 3 4 5 6
Opseg vremena izmeðu vreme [min]
dva uzastopna dolaska delova [min]
a) b)
KORAK 4:
Uspostavlja se zavisnost izmedu vrednosti parametara i niza slučajnih brojeva u opsegu 0-99.
Zavisnost je prikazana u tabeli 2.3.
KORAK 5:
Iz tabele slučajnih brojeva (tabela 2.4), u konkretnom primeru iz vrsta 6 i 11 se uzima niz
slučajnih brojeva. Prvi odabran slučajni broj (iz vrste 6) na osnovu tabele 2.3 definiše opseg
vremena izmedu dva dolaska (tabela 2.5). Drugi slučajni broj (iz vrste 11) definiše decimalni
deo vremena (tabela 2.5).
Ž. Jakovljević, Kompjuterska simulacija u automatizaciji proizvodnje - izvodi sa predavanja 15
41 44 39 90 81 22 56 79 25 24
54 32 60 60 32 30 42 50 93 86
23 23 64 16 56 61 21 09 72 36
09 06 82 14 81 05 40 37 55 33
66 86 57 85 63 69 47 56 86 08
27 24 31 05 15 43 45 23 62 03
19 36 86 85 43 17 99 74 72 63
22 00 88 14 84 56 89 95 05 94
87 43 20 07 35 41 51 10 11 31
66 00 05 46 23 22 22 25 21 70
43 28 43 18 66 86 42 91 55 48
28 20 62 82 06 82 79 60 73 67
77 78 43 27 54 89 22 02 78 35
72 67 13 42 46 33 27 66 34 24
06 70 58 78 07 89 71 75 03 60
Ž. Jakovljević, Kompjuterska simulacija u automatizaciji proizvodnje - izvodi sa predavanja 16
Tabela 2.5: Vreme izmedu prvih deset dolazaka uzorkovano korišćenjem slučajnih brojeva
Deo Prvi slučajni Opseg vremena Drugi slučajni Vreme izmedu
broj izmedu dolazaka broj dolazka
1 41 2-3 27 2,27
2 44 2-3 24 2,24
3 39 2-3 31 2,31
4 90 4-5 05 4,05
5 81 3-4 15 3,15
6 22 1-2 43 1,43
7 56 2-3 45 2,45
8 79 3-4 23 3,23
9 25 1-2 62 1,62
10 24 1-2 03 1,03
Postoje četiri grupe faktora koje utiču na validnost rezultata primene metode Monte Karlo
u generisanju vrednosti slučajne promenljive. To su:
2. Prelazni uslovi: potreban je period uhodavanja - rezultati se uzimaju samo kada se us-
postavi stabilno stanje
3. Predubedenje pri generisanju slučajnih brojeva (o ovome će biti reči u jednom od narednih
odeljaka)
U prethodnom primeru je generisan mali broj uzoraka (svega 10), tako da nije istekao period
uhodavanja. Da je izvučen veći broj uzoraka verovatno bi slaganje eksperimentalno dobijenih
podataka i generisanih uzoraka bilo bolje.
f(x)
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
0 2 4 6 8 10
x
F(x)
1
0.8
0.6
0.4
0.2
0
0 2 4 6 8 10
x
Na primer, za slučajan broj 27, sa grafika datog na slici 2.5 se očitava x za koje je F (x) = 27%.
U ovom slučaju x = 4, 39.
Tokom izvršavanja kompjuterske simulacije najčešće je poteban niz od nekoliko hiljada ili čak
miliona slučajnih brojeva. Čuvanje ovako velikih nizova slučajnih brojeva u memoriji računara
nije praktično izvodljivo, pa je potrebno formirati metodologiju za generisanje slučajnih brojeva
pomoću računara. Računar predstavlja determinističku mašinu i postavlja se pitanje da li je on
u mogućnosti da generiše slučajne brojeve. Odgovor je: ne. Medutim, računar može generisati
pseudo slučajne brojeve. Ovi brojevi se nazivaju pseudo slučajni brojevi jer iako deluju kao
slučajni, njihov niz je potpuno predvidiv. Iako je korišćenjem algoritma za generisanje uvek
moguće predvideti sledeći broj u nizu, kada se niz brojeva razmotri uočava se da oni imaju
svojstva uniformnosti i nezavisnosti koja su neophodna za slučajnost brojeva.
Ukoliko se posmatraju matematičke tablice (npr. logaritamske tablice 2.6) može se uočiti da je
frekvenca pojavljivanja cifara 0-9 na najmanje značajnom mestu uniformna. Slično, najmanje
značajne cifre rezultata množenja velikih brojeva daju uniformno rasporeden niz brojeva.
Postoji veliki broj razvijenih metoda za kompjutersko generisanje pseudo slučajnih brojeva.
Ovde se navode dve jednostavne metode:
1. Multiplikativni generator slučajnih brojeva, i
2. Kongruentni generator slučajnih brojeva
Tabela 2.6: Niz slučajnih brojeva generisanih multiplikativnim generatorom (relacija (2.1)) za
X0 = 0, 645329 i c = 317
i 0 1 2 3 4 5
Xi 0,569 0,373 0,241 0,397 0,849
317 · Xi 204,569 180,373 118,241 76,397 125,849
Primenom relacije (2.1) dobija se niz slučajnih brojeva prikazanih u tabeli 2.6.
Navedenom metodom se dobija niz razlomljenih slučajnih brojeva. Ukoliko je potreban niz
celih slučajnih brojeva u opsegu 0-99 svaki slučajni broj se množi sa 100 i uzima se celobrojni
deo rezultata.
• a - konstanta za množenje
• c - konstanta za sabiranje
Tabela 2.7: Niz slučajnih brojeva generisanih kongruentnim generatorom (relacija (2.2)) za
X0 = 8, c = 0, a = 4 i m = 25
i 0 1 2 3 4 5 6 7 8 9 10 11 12 13
Xi 8 7 3 12 23 17 18 22 13 2 8 7 3 12
4Xi 32 28 12 48 92 68 72 88 52 8 32 28 12 48
Primenom relacije (2.2) dobija se niz slučajnih brojeva prikazanih u tabeli 2.7. Iz datog primera
se vidi da se brojevi nakon i = 9 ponavljaju.