24
SVEUČILIŠTE J.J. STROSSMAYERA U OSIJEKU, EKONOMSKI FAKULTET U OSIJEKU 4. Diskretne simulacije MARIJANA ZEKIĆ-SUŠAC

4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

SVEUČILIŠTE J.J. STROSSMAYERA U OSIJEKU, EKONOMSKI FAKULTET U OSIJEKU

4. Diskretne simulacije

MARIJANA ZEKIĆ-SUŠAC

Page 2: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

Š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

Page 3: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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

Page 4: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.)

Page 5: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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

Page 6: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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)

Page 7: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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

Page 8: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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)

Page 9: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.)

Page 10: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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

Page 11: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.

Page 12: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.

Page 13: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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)

Page 14: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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)

Page 15: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.

Page 16: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.

Page 17: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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:

Page 18: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

Slika 1. Dijagram ciklusa aktivnosti za pogon s dva stroja (izvor: Čerić, V., Poslovno računalstvo, Znak, Zagreb, 1994.)

Page 19: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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”

Page 20: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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

Page 21: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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

Page 22: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.

Page 23: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.

Page 24: 4. Diskretne simulacije - EFOS...Diskretna simulacija – kada i kako? Kada se koristi? najčešće za modeliranje i analizu sustava s repovima čekanja na resurse (resursi mogu biti:

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.