Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
SVEUČILIŠTE J.J. STROSSMAYERA U OSIJEKU, EKONOMSKI FAKULTET U OSIJEKU
4. Diskretne simulacije
MARIJANA ZEKIĆ-SUŠAC
Što ćete naučiti u ovom poglavlju? Objasniti što su diskretne simulacije i koja im je svrha
Objasniti u kojim se slučajevima koriste diskretne simulacije
Objasniti što su entitet, resurs, proces kod diskretnih simulacija
Objasniti raspodjele koje se koriste za nezavisne varijable u diskretnoj simulaciji: normalnu i trokutastu
Objasniti kako se crta dijagram ciklusa aktivnosti (DCA)
Navesti i protumačiti zavisne varijable kod diskretnih simulacija: duljina reda čekanja, vrijeme čekanja, iskorištenje resursa
Navesti primjere primjene diskretnih simulacija
2
Diskretna simulacija - pojam
Diskretna simulacija (eng. Discrete event simulation (DES)) je proces kodiranja ponašanja složenih sustava kao slijeda čvrsto definiranih događaja (WhatIs, 2013).
Događaj = specifična promjena u stanju sustava u nekom posebnom vremenskom trenutku.
Diskretna simulacija opisuje promjene stanja koje se odvijaju diskontinuirano u vremenu (Čerić, V., 2013). Promjene stanja su posljedica međudjelovanja među objektima sustava (npr. ako stroj napravi obradu na materijalu, obrada materijala je završena i njegovo stanje se mijenja).
Namijenjena je razvoju modela koji detaljno opisuju strukturu sustava i njegove elemente, tj. oponašaju stvarne sustave i procese, te objekte iz stvarnog svijeta i njihovo međudjelovanje
Diskretna simulacija – kada i kako?
Kada se koristi? ◦ najčešće za modeliranje i analizu sustava s repovima čekanja
na resurse (resursi mogu biti: blagajne, autobusi, računala, šalteri i dr.), pri čemu su glavni elementi opisa:
Tijek procesa (obično se prikazuje strelicama koje povezuju pojedine elemente i odlukama koje određuju smjer tijeka procesa)
Kapaciteti resursa (opisuju vrijeme u kojem resurs može obraditi pojedini entitet koji prolazi kroz sustav, npr. 1 stroj može obraditi 1 poluproizvod za 3 minute)
Ograničenja (opisuju raspoložive resurse, npr. 3 raspoloživa stroja ili 4 djelatnika ili sl.)
Entiteti i atributi Entiteti (objekti) – komponente sustava kojeg modeliramo Stalni entiteti – ostaju u modelu tijekom trajanja simulacije
(npr. šalteri)
Privremeni entiteti – prolaze kroz sustav (npr. klijenti, autobusi itd.)
Svaki entitet može imati više atributa.
Atributi – opisuju svojstva entiteta (npr. odredište putnika, brzina obrade stroja, itd.)
Kako se definira stanje sustava? Entitetima koje model sadrži
Vrijednostima atributa
Događaji kod diskretne simulacije
Događaj = promjena stanja sustava koja se zbiva u trenutku
Kako može nastupiti događaj? zbog ulaska ili izlaska entiteta u sustavu (npr. ako još 5 klijenata
dođe na šalter) zbog promjene vrijednosti atributa (npr. ako se promijeni brzina
rada djelatnice na šalteru)
Događaji mogu biti: Uvjetni – oni koji se mogu dogoditi tek pošto je ispunjen neki
uvjet Bezuvjetni (planirani) – oni koji se odvijaju nakon protoka
određenog vremena (npr. završetak rada s jednom strankom na šalteru)
Pojmovi kod diskretne simulacije - nastavak
Kod diskretne simulacije i vrijeme se mijenja DISKRETNO (tj. diskontinuirano), što znači: Od trenutka u kojem se desio posljednji događaj – vrijeme skače
na – trenutak u kojem će se desiti sljedeći događaj, itd.
Simulacijski sat – mjeri proteklo vrijeme simulacije Npr. ako je djelatniku potrebno 5 minuta za obradu jedne
stranke na šalteru, tada se se vrijeme događaja mjeri svakih 5 minuta
Pojmovi kod diskretne simulacije - nastavak
Aktivnost = međudjelovanje entiteta koje traje neko vrijeme, a tijekom odvijanja aktivnosti stanje entiteta se ne mijenja (npr. obrada jedne stranke na šalteru, popunjavanje obrasca ili dr.)
Početak aktivnosti – vezan uz neke uvjete (npr. ako je završena obrada prethodne stranke, može početi obrada sljedeće stranke)
Završetak aktivnosti – vezan je uz vrijeme trajanja te aktivnosti (po isteku tog vremena aktivnost završava)
PROCES = niz logički povezanih uzastopnih događaja kroz koje prolaze privremeni entiteti (npr. prolaz putnika kroz trakt na aerodromu, ili proces upisa studenta na fakultet)
Nezavisne varijable
Kod diskretne simulacije, nezavisne (ulazne varijable) čije vrijednosti korisnik upisuje u sustav su: Vrijeme između dva uzastopna dolaska entiteta (ent. Time
Between Arrivals)
Vrijeme odvijanja pojedinog procesa (npr. vrijeme opsluživanja na šalteru, ili vrijeme obrade na stroju ili dr.)
Broj raspoloživih resursa (npr. broj šaltera, ili djelatnika, ili strojeva)
Organizacija čekanja (FIFO, LIFO, po prioritetu i sl.)
Kako odrediti vrijednosti nezavisnih varijabli?
Vrijeme između dva uzastopna dolaska entiteta ili vrijeme odvijanja pojedinog procesa u stvarnosti nije neki fiksni broj, nego se mijenja prema nekoj raspodjeli (distribuciji)
Npr. kako odrediti koliko dugo se obrađuje jedan klijent na šalteru banke? To nekad može biti 5 minuta, ponekad 10, ponekad 13 minuta,...
Najčešće se koriste slučajna (Gauss-ova) i trokutasta raspodjela vjerojatnosti pojavljivanja brojeva
Koju raspodjelu koristiti? – ovisi o prirodi problema, i izabire se ona koja je realnija
Slučajna raspodjela
Kod slučajne raspodjele potrebno je odrediti:
Aritmetičku sredinu Standardnu devijaciju
σ
x
Primjer: Ako znamo da je prosječno trajanje obrade na jednom šalteru 10 minuta, ali može varirati + 5 minuta.
Izvor: Wikipedia, http://hr.wikipedia.org/wiki/Datoteka:The_Normal_Distribution.svg, 10.10.2013.
Trokutasta raspodjela
Kod trokutaste raspodjele potrebno je odrediti:
Minimalnu vrijednost (a)
Najčešću vrijednost (c)
Maksimalnu vrijednost (b)
koju neka varijabla x može poprimiti.
Izvor: Wikipedia, http://en.wikipedia.org/wiki/Triangular_distribution, 10.10.2013.
Primjer: Ako znamo da je minimalno vrijeme obrade klijenta na šalteru 5 minuta, maksimalno vrijeme 20 minuta, a najčešće 10 minuta.
Zavisne varijable Zavisne (izlazne) varijable čije se vrijednosti dobiju kao rezultat simulacije su: Dužina reda čekanja (eng. Number Waiting, tj. broj entiteta u redu
čekanja, npr. broj zahtjeva u redu čekanja, broj pacijenata u čekaonici, i dr.)
�Vrijeme čekanja u redu (eng. Waiting Time, tj. vrijeme koje entitet provede u čekanju)
� Iskorištenje resursa (eng. Utilization) – postotak iskorištenja resursa (npr. % radnog vremena djelatnika u kojem on radi)
� Propusnost sustava (eng. Number Out, tj. broj entiteta koje sustav može obraditi)
Konceptualni model diskretne simulacije
Čemu služi konceptualni model? da se izdvoje najvažnija svojstva sustava,
da se opišu njegovi bitni elementi i njihovo međudjelovanje
Izradom konceptualnog modela omogućuje se strukturiranje problema i njegovo bolje razumijevanje
Za njegovu izradu koriste se grafičke metode modeliranja, npr. dijagrami ciklusa aktivnosti (DCA)
Dijagrami ciklusa aktivnosti (DCA)
Opisuju životni ciklus entiteta (promatranih objekata) u modelu
Koriste dva osnovna simbola:
Pravokutnik opisuje aktivnosti, npr. obrada narudžbe, ispunjavanje obrasca, itd.
Elipsa opisuje redove čekanja, npr. klijente koji čekaju pred šalterom
Neki entitet može biti ili u stanju aktivnosti, ili u stanju čekanja.
Ako je aktivan, može biti u suradnji s drugim entitetima.
Ako je u stanju čekanja, tada ne sudjeluje u aktivnosti, već čeka da se ispune uvjeti za početak aktivnosti.
Dijagrami ciklusa aktivnosti (DCA)
DCA sadrži cikluse života svih klasa entiteta kroz koje prolaze pojedinačni entiteti neke klase.
Što je ciklus života? To je zatvoreni ciklus u kojem se izmjenjuju aktivnosti i redovi čekanja, a koje prolazi neke entitet.
Da bi aktivnost mogla početi, nužno je da svaki red čekanja sadrži barem po jedan entitet, (npr. da bi obrada stranke mogla početi, mora biti barem 1 stranka pred šalterom).
Kada aktivnost završi, svi entiteti uključeni u nju se oslobađaju i šalju u slijedeće redove čekanja.
Primjer – proizvodni pogon
Pretpostavimo da neki proizvodni pogon ima 2 vrste strojeva – stroj A i stroj B
U pogonu postoje 3 stroja tipa A i 2 stroja tipa B.
Određenim ritmom nabave,u pogon dolaze dijelovi potrebni za proizvodnju.
Dijelovi se najprije obrađuju na jednom od strojeva tipa A, a zatim na jednom od strojeva tipa B, i onda ponovo na jednom od strojeva tipa A.
DCA tog pogona može se prikazati slikom:
Slika 1. Dijagram ciklusa aktivnosti za pogon s dva stroja (izvor: Čerić, V., Poslovno računalstvo, Znak, Zagreb, 1994.)
Primjer – proizvodni pogon - nastavak
DCA proizvodnog pogona sadrži cikluse života dijelova za proizvodnju, zatim entiteta strojeva A i B, te logičkog entiteta “Ulaz”.
Ciklus života dijelova sadrži: Red čekanja “Vani”
Aktivnost dolazaka dijelova u pogon
Red čekanja za stroj A1
Red čekanja za stroj B
Red čekanja za stroja A2
Povratak u red čekanja “Vani”
Izvođenje simulacije
Za izvođenje simulacije – najčešće se koristi pomak vremena na sljedeći događaj.
Što se tu događa: Nakon izvođenja jednog događaja pronalazi se događaj koji je sljedeći na redu
Vrijeme simulacije se pomiče na vrijeme izvođenja tog novog događaja
Taj se novi događaj izvede (tom prilikom se događa i promjena stanja sustava, tj. mijenjaju se atributi jednog ili više entiteta).
Itd.
Simulacija se završava kada više nema događaja za izvesti, ili je ispunjen neki unaprijed utvrđeni uvjet da simulacija završava.
Postoji više pristupa izvođenju simulacije – jedan od njih je tzv. Trofazna strategija simulacije
Vrednovanje simulacijskog modela
Vrednovanje simulacijskog modela ima za cilj eliminaciju različitih vrsta grešaka modela, koje mogu biti (Čerić, 2013):
Greške u logici modela
Greške u matematičkim relacijama
Greške u programu
Greške u ulaznim podacima
Greške u načinu korištenja modela te
Greške u obradi i interpretaciji rezultata simulacijskih eksperimenata
Za vježbu
1. Napravite DCA za banku koja ima 3 šaltera – svaki klijent može se uslužiti na bilo kojem šalteru, samo treba provjeriti da li je šalter slobodan.
2. Napravite DCA za studentsku referadu u kojoj svaki student treba da bi se upisao proći kroz 3 “šaltera”: 1) kupiti dokumente (skriptarnica), 2) predati popunjene dokumente i 3) upisati se u Studomat.
Zaključak
Simulacijsko modeliranje može biti diskretno i kontinuirano (sistemska dinamika).
Kod diskretnog simulacijskog modeliranja koriste se modeli koji detaljno opisuju strukturu sustava i njegove elemente, a ponašanje sustava je diskontinuirano (u obliku slijeda raznovrsnih događaja i aktivnosti).
Glavni elementi diskretne simulacije su entiteti, atributi i događaji, te vrijeme pomaka.
Za opis diskretnog modela koristi se konceptualni model i dijagram ciklusa aktivnosti.
Literatura
1. Čerić, V., i dr., Informacijska tehnologija u poslovanju, Element, Zagreb, 2004.
2. Čerić, V., Diskretna simulacija, http://web.efzg.hr/dok//INF/Ceric//spo/(3a)_diskretna_simulacija.pdf, 10.10.2013.
3. WhatIs, Discrete Event Simulation (DES), http://whatis.techtarget.com/definition/discrete-event-simulation-DES, 10.09.2013.
4. Banks, J., Carson, J.S., Nelson, B., Nicol D.M., Discrete-Event System Simulation, 5th edition, Prentice Hall, 2010. http://books.google.hr/books?id=cqSNnmrqqbQC&lpg=PA265&ots=8b-3iUGYKN&dq=simulation%20discrete%20photo&pg=PA53#v=onepage&q&f=false, 04.10.2010.
5. W. David Kelton, Randall P Sadowski, Nancy B. Swets, Simulation with Arena, McGraw Hill, 2009.
6. Wikipedia, Simulation, http://en.wikipedia.org/wiki/Simulation, 04.10.2010.