180 likes | 320 Views
Modeli diskretnih događaja. Nivoi apstrakcije. Diskretni događaj je apstrakcija realnog sveta gde se u obzir uzimaju samo bitne promene u kontinualnom procesu Diskretni događaji su na srednjem nivou apstrakcije. Događaj . Kontinualne promene se aproksimiraju događajima Primeri događaja
E N D
Nivoi apstrakcije • Diskretni događaj je apstrakcija realnog sveta gde se u obzir uzimaju samo bitne promene u kontinualnom procesu • Diskretni događaji su na srednjem nivou apstrakcije
Događaj • Kontinualne promene se aproksimiraju događajima • Primeri događaja • Dolazak klijenta u banku • Kraj obrade forumlara • Nestanak sirovine za proizvodnju • Izvršava se za “nula vreme” • Može da izazove promene u modelu • Može da utiče na druge događaje u budućnosti
Diskretno vreme • Vreme se koristi za zadavanje redosleda događaja • Uzimamo u obzir samo događaje koji se izvršavaju u nekom redosledu i ništa se ne događa između (nema kontinualnog vremena) • Sve promene u modelu se dešavaju kao posledica događaja • Ako su događaji zadati da se izvrše istovremeno izvršiće se serijski • Vreme u modelu “skače” sa jednog događaja na drugi
Obrada simulatanih događaja • Izvršavanje događaja je atomska operacija • Podržano je dva načina obrade simulatnih događaja • Random: svaki događaj se bira za izvršavanje sa istom verovatnoćom. Ovo osigurava “fernost” u modelu ali usoprava izvršavanje modela ako ima puno simulatnih događaja • Deterministic: događaji se izvršavaju u određenom redosledu. Ovo ubrzava izvršavanje modela ali se preporučuje samo ako su događaji međusobno nezavisni • Event scheduling algorithm se podešava u prozoru svojstava projekta
Statički tajmer • Tajmer generiše događaj na kraju svakog dana (vremenska jedinica u modelu) • Tajmer generiše niz događaja po slučajnoj raspodeli
Kontrola statičkog tajmera • Postoji potpuna kontrola statičkog tajmera • Moguće je pokrenuti, otkazati, suspendovati i ponovo pokrenuti tajmer
Dinamički tajmer • Zakazivanje više događaja u različitim vremenima • Može biti više instanci jednog tajmera
Promena stanja kao događaj • Događaj u AnyLogic može biti definisan promenom stanja u dijagramu stanja • Dijagram stanja na slici definiše sledeći niz događaja
Promena stanja (trigger) • Promenu satanja može da izazove • Timeout • Signal • Change (logički uslov)
Transition Gurad i Transition Action • Dok ne postoji Trigger ništa se ne dešava • Ako postoji Trigger poverava se Guard • Ako je izraz netačan nema promene stanja • Ako je izraz tačan dolazi do promene stanja i izvršava se Action
Event prozor • Moguće je pratiti redosled izvršavanja događaja
Pažnja • Nakon svakog događaja je potrebno pozvati funkciju SetModified() Da bi se potvrdila promena u tom objektu
AnyLogic Enterprise Libary • Biblioteka koja omogućavainterfejs višeg nivoa za kriranje modela diskretnih događaja u obliku dijagrama toka (flowchart). • Dijagrami toka su prihvaćeni kao grafički prikaz različitih sistema masovnog opsluživanja • Proizvodnja, logistika, uslugem, poslovni procesi, računarske mreže, telekomunikacije
Elementi Enterprise libary • Aktivni objekti karakteristični za dijagrame toka • Source, sink, delay, queue • Dijagram toka se kreira prevalačenjem objekata iz biblioteke i njihovim povezivanjam u strukturu. • Proširenje funkcionalnosti objekata biblioteke je moguće pomoću Jave • Moguće je videti strukturu objekata iz biblioteke.
Alati za simulaciju diskretnih događaja • GPSS • SIMPROCESS • Arena