26
SVEUČILIŠTE J.J. STROSSMAYERA U OSIJEKU, EKONOMSKI FAKULTET U OSIJEKU 5. Simulacijski programi i primjena diskretne simulacije MARIJANA ZEKIĆ-SUŠAC

5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Embed Size (px)

Citation preview

Page 1: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

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

5. Simulacijski programi i

primjena diskretne

simulacije

MARIJANA ZEKIĆ-SUŠAC

Page 2: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Što ćete naučiti u ovom poglavlju? Navesti vrste simulacijskih programa

Navesti simulacijske programe za diskretne simulacije

Objasniti ukratko način rada programa GPSS za simulacije

Objasniti način rada programa Simula za simulacije

Objasniti način rada programa Arena za simulacije

2

Page 3: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Simulacijski programi za diskretnu simulaciju

Za potrebe izrade diskretnih simulacija razvijeni su programski jezici i alati

Zajednička im je karakteristika - gledaju na model kao na niz slučajnih događaja gdje svaki uzrokuje promjenu stanja

Naredbe se obično dijele na “blokove” i na upravljačke naredbe Blokovi se aktiviraju kada kroz njih prođu “entiteti” (transakcije)

Upravljačke naredbe se koriste za opis željenog trajanja izvođenja simulacije, broja ponavljanja simulacije, uvjeta ponavljanja, i dr.

Što je rezultat simulacijskog programa?

Kao rezultat simulacijskog programa može se dobiti:

prosječna duljina reda koja se može očekivati u nekoj organizaciji (npr. na blagajni prodavaonice, ili na šalteru banke i dr.),

standardna devijacija (prosječno odstupanje) duljine reda od aritm. sredine,

koliki je broj obrađenih stranaka tijekom vremena izvođenja simulacije

koliko je iskorištenje blagajne, stroja, i dr.

Page 4: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Vrste simulacijskih programa

Programi za simulacijsko modeliranje dijele se na:

Programe opće namjene ArGPSS

Arena

Plant Simulation – za diskretnu, kontinuiranu i agentsku simulaciju

SimPy, sustav otvorenog koda, pisan u prog. jeziku Python

SIMSCRIPT II.5 – komercijalni, često korišteni paket

Simula – sustav otvorenog koda s grafičkim sučeljem

Specijalizirane programe, npr. za simulacije proizvodnje, uslužnih djelatnosti, bolnica, računalnih mreža itd.

SIMFACTORY

WITNESS

Trading Solutions i dr.

Page 5: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

GPSS (eng. General Purpose Simulation System

Povijest razvoja: Autor: Geoffrey Gordon, IBM (1960), to je jezik za diskretne simulacije, gdje

simulacijski sat napreduje u diskretnim koracima vremena.

Bio je popularan u 1960-tim i 1970-tim godinama

Danas mu je popularna inačica WEBGPSS (pisan u Java jeziku), demo javno raspoloživ na http://www.webgpss.com/

Način rada: Najprije se konstruiraju blok dijagrami – izborom blokova iz izbornika

klikanjem miša.

Za svaki blok unose se operandi.

Tekstualni program koji je na taj način razvijen na korisničkom računalu šalje se na poslužitelj kako bi se izvršio s pomoću GPSS.EXE, jezgrom programa koji koristi WebGPSS.

Izlazne datoteke šalju se natrag na korisničko računalo i rezultati se prezentiraju u obliku tablica, histograma i grafikona.

Page 6: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

M. ZEKIĆ-SUŠAC, EFO

Karakteristike GPSS-a Prednosti:

Kreirani modeli i programi su slični stvarnim problemima

Moguć brz razvoj simulacija

Grafičko sučelje potiče učenje i razumijevanje

Automatski omogućuje potrebnu statistiku

Lako uočljiv i razumljiv output

Omogućuje debugging (uočavanje i otklanjanje grešaka) i verifikaciju

Blok dijagram je koristan za dokumentaciju

Lako je napraviti kopije modela

Lako je konstruirati funkcije na temelju iskustvenih podataka

Minimizira rizik od logičkih grešaka, i ima ugrađen sustav za uočavanje grešaka

Nedostaci niska razina fleksibilnosti u odnosu na ostale programe, pa su danas više u upotrebi

fleksibilniji jezici, kao npr. Simula i SIMSCRIPT II.5.

Page 7: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Primjer rada u GPSS-u

Slika 1. Primjer raspoloživih blokova i dva blok dijagrama kreirana u GPSS-u (izvor: http://www.webgpss.com/images/screenshot-1.png, 20.10.2009)

Slika prikazuje generiranje diskretne simulacije – lijevi blok dijagram:

kreira proces dolaska kupaca u trgovinu svakih 18 (+-5) sekundi,

ulazak u rep čekanja, obradu (ADVANCE)

Odlazak iz trgovine i kraj simulacije

Page 8: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

M. ZEKIĆ-SUŠAC, EFO

Primjer rada u GPSS-u - nastavak

Primjer: Model jednostavne poslovnice banke s jednom blagajnom

Opisni scenario izgleda ovako: u poslovnicu dolaze stranke svakih 115+-35

sekundi (uniformna raspodjela vremena dolazaka)

Stranke čekaju u redu pred blagajnom

Kad dođe na red, stranka na blagajni obavi svoj posao koji traje 85+-30 sekundi

Stranka napušta poslovnicu.

Page 9: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Primjer programa u GPSS-u GPSS program za taj model izgleda ovako:

GENERATE 115,35 - dolazak stranaka svakih 115+-35 sekundi

QUEUE CEKANJE – ulazak u red čekanja

SEIZE BLAGAJNA – zauzimanje blagajne

DEPART CEKANJE – napuštanje reda čekanja

ADVANCE 85,35 – obrada stranke na blagajni 85+- 30 sek.

RELEASE BLAGAJNA - stranka napušta blagajnu

TERMINATE - odlazak stranke iz poslovnice

Page 10: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

M. ZEKIĆ-SUŠAC, EFO

Primjer programa u GPSS-u GPSS program za taj model izgleda ovako:

GENERATE 115,35 - dolazak stranaka svakih 115+-35 sekundi

QUEUE CEKANJE – ulazak u red čekanja

SEIZE BLAGAJNA – zauzimanje blagajne

DEPART CEKANJE – napuštanje reda čekanja

ADVANCE 85,35 – obrada stranke na blagajni85+- 30 sek.

RELEASE BLAGAJNA - stranka napušta blagajnu

TERMINATE - odlazak stranke iz poslovnice

Page 11: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Simula opći programski jezik - uključuje 2 programska jezika: Simula I i Simula 67

Povijest razvoja: Razvijen 1960-tih u Norwegian Computing Center, Oslo (autori: Ole-Johan

Dahl i Kristen Nygaard) kao jezik za diskretne simulacije, ali je kasnije postao objektni programski jezik opće namjene.

Način rada: Sintaksa mu se temelji na jeziku Algol 60.

Za razliku od Simula I, Simula 67 je objektno orjentiran jezik, koristi objekte, klase, virtualne metode i dr. objektne koncepte i smatra se prvim objektno-orjentiranim jezikom i utjecao je na razvoj C++-a i ostalih objektnih jezika.

Koristi se za različite aplikacije, kao npr. simulacije modeliranja procesa, protokola, algoritama, računalne grafike, i u obrazovanju.

Sadrži simulacijski paket koji može kreirati diskretne simulacije

Page 12: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Primjer programa u Simula jeziku Primjer jednostavnog programa koji ispisuje poruku “Hello, World”:

Begin OutText ("Hello World!"); Outimage; End;

Primjer simulacije kupovine u prodavaonici (Wikipedia, 2009):

Sam, Sally i Andy kupuju odjeću. Moraju dijeliti jednu garderobu. Svatko od njih troje pretražuje prodavaonicu oko 12 minuta kako bi izabrao odjeću, zatim koristi garderobu oko 3 minute (svatko se ponaša po normalnoj distribuciji). Slijedi simulacija njihovog iskustva sa garderobom:

Page 13: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

M. ZEKIĆ-SUŠAC, EFO

Primjer programskog koda za simulaciju upotrebe garderobe u prodavaonici, pisanog u Simula 67 jeziku (izvor: http://en.wikipedia.org/wiki/Simula#Sample_Code, 20.10.2009).

Page 14: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Simulink (for MathLab)

simulacijski alat koji je dio programskog paketa MathLab

Osnovne karakteristike: Simulacije se izgrađuju upotrebom blok dijagrama, uz API sučelje,

modeliranjem izborom komponenti

Može se koristiti za modeliranje, simulaciju i analizu sustava iz različitih područja:

Komunikacijskih sustava

Kontrolnih sustava

Sustava obrade signala

Sustava za obradu video materijala i slika

Page 15: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Simulink - nastavak

Simulink raspolaže: velikim rasponom ugrađenih blokova za

opis procesa

Multitasking simulacijom – gdje se paralelno odvija više zadataka i događaja

Podrškom za ubrzani mod rada

Velikim rasponom alata za uočavanje i otklanjanje grešaka

Page 16: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

ARENA Alat za simulacije temeljen na programskom jeziku SIMAN. Alat ARENA omogućuje: Simulacije diskretnih događaja Simulacije skupnih i kontinuiranih događaja Analizu i predviđanje uspješnosti sustava Proizvodnje, lanca nabave, vojnih obrana, zdravstva, call centara, poslovnih procesa i

dr.

Osnovni procesi podržani u blokovima: Create Dispose Process Decide Atch Separate Assign Record

Page 17: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

M. ZEKIĆ-SUŠAC, EFO

Primjer simulacije u ARENA alatu

Primjer simulacije za obradu aplikacije za kredit na šalteru banke u ARENA alatu (izvor: http://www.arenasimulation.com/, 20.10.2009)

Page 18: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Stvaranje povjerenja u simulacijske modele

Da bi korisnici (donositelji odluka, menadžeri) imali povjerenja u korištenje simulacijskog modela, potrebno je opravdati pretpostavku da: model adekvatno opisuje sustav.

Proces stvaranja povjerenja traje od početka do kraja izgradnje modela.

Cilj stvaranja povjerenja: eliminirati različite vrste grešaka modela, npr. Greške u logici modela

Greške u matematičkim relacijama

Greške u programskom kodu

Greške u ulaznim podacima

Pogrešan način korištenja modela

Pogrešna obrada i interpretacija rezultata modela

Page 19: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Kako se stvara povjerenje u simulacijske modele?

Različitim statističkim i računarskim tehnikama Statistički – analizama ponašanja sustava, rezultata i grešaka

Računarski – animacijama modela (VIS – vizualnim interaktvnim simulacijama) koje olakšavaju uočavanje grešaka u simulaciji, daju user-friendly grafičko sučelje koje korisnicima koji nemaju iskustva u programskim jezicima olakšava rad i razumijevanje simulacije

Procjenama eksperata u tom području

Primjer: Arena Rockwell na svojim stranicama korisnicima nudi: Upute za korištenje alata

Demonstracije upotreba alata

“Arena’s Value Delivery program” – program odnosa s klijentima: Klijenti koji napišu članak o uspješnoj upotrebi Arena alata u nekom segmentu

poslovanja, dobivaju besplatnu licencu za alat

Page 20: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Primjene diskretne simulacije Primjer: u alatu ServiceModel rađena je studija simulacije Zagrebačke banke (Čerić, Varga, 2004):

Trebalo je modelirati front-office i back-office banke, s ciljem analize utjecaja promjene strukture i načina rada poslovnica na kvalitetu posluživanja stranaka i efikasnost rada poslovnica.

S pomoću VIS sučelja bilo je moguće pratiti kretanja stranaka na šalterima, te kretanje djelatnika (npr. blagajnik povremeno mora otići u trezor po gotovinu)

Kao rezultat simulacije dobije se: Numerički i grafički prikaz duljine redova kroz vrijeme Promjene broja stranaka pred šalterima kroz vrijeme rada poslovnice, itd.

Page 21: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Primjene diskretne simulacije - nastavak

Simulacija proizvodnje – omogućuje: složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti povećanja propusnosti proizvodnog pogona smanjenja zaliha u proizvodnji, povećanja korištenja strojeva, i dr.

Simulacija uslužnih djelatnosti – omogućuje: Modeliranje procesa u kojima sudjeluju ljudi (takvi procesi su nepravilni i sadrže

slučajne varijable, npr. slučajno vrijeme dolaska stranke)

Simulacija poslovnih procesa – omogućuje: Preispitivanje postojećih poslovnih procesa Redizajniranje poslovnih procesa (da budu jednostavniji i što manje isprekidani)

Simulacija transporta – omogućujue: Modeliranje i simulaciju transportnih centara, npr. luke, aerodromi, željezničke

stanice, autobusne stranice Simulaciju transportnih mreža

Page 22: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Primjene diskretne simulacije - nastavak

Primjer: Simulacija putničke zgrade aerodroma Zagreb (Čerić, Varga, 2004)

Modelirana je putnička zgrada površine oko 11 000 m2, kapaciteta oko 1.5 milijuna putnika godišnje

Planirano je proširenje zgrade koje bi omogućilo povećanje kapaciteta na 4 milijuna putnika godišnje

Tijek putnika i tijek prtljage povezan je s redom letenja međunarodnih i domaćih letova

Cilj: odrediti potrebnu površinu za različite sadržaje prostora u zgradi, sliku čekanja u svim dijelovima zgrade, te analizirati uzorke kašnjenja polijetanja zrakoplova

Rezultati: određena je količina i vrsta opreme koja osigurava protok putnika i prtljage bez gužvi i dugih čekanja Dobiveno je da se količina potrebne opreme može smanjiti u odnosu na početne

inženjerske proračune Napravljena je redukcija broja traka za prtljagu – ušteda oko 1.5% od cijene

rekonstrukcije zgrade, što je 15 puta više od cijene simulacijske studije.

Page 23: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Zaključak

Alati za diskretne simulacije gledaju na model kao na niz slučajnih događaja gdje svaki uzrokuje promjenu stanja

Naredbe se obično dijele na “blokove” i na upravljačke naredbe

Programi za simulacijsko modeliranje dijele se na opće i specijalizirane

jedan od prvih alata za simulacijsko modeliranje je GPSS, a danas se često koristi ARENA i Simulink (ugrađen u MathLab)

SIMULA je programski jezik za simulacijsko modeliranje koji je prerastao u opći objektno-orjentirani programski jezik

Povjerenje u simulacijske modele stvara se različitim statističkim i računarskim tehnikama, te procjenama eksperata u tom području

Page 24: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Dodatni materijal Primjer simulacije odjela hitne službe, (Emergency department simulation demo), ARENA Rockwell, http://www.arenasimulation.com/Private_Content.aspx?code=370L23L19J48&type=4, 04.10.2010.

Page 25: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Vježba – analiza dodatnih primjera primjene simulacija (timski rad)

Analiza slučajeva na primjerima simulacijskih rješenja izgrađenih s pomoću ARENA simulacijskog alata: http://www.arenasimulation.com/Solutions_Solutions.aspx ili http://www.arenasimulation.com, izabrati link Solutions

Izvođenje analize slučajeva:

Podijeliti se u timove od 5 članova

Svaki tim treba izabrati jedan od slučajeva opisan na gore navedenoj adresi (iz jednog od područja: Manufacturing, Supply Chain, Warehousing, Health Care, Packaging, Military itd.)

U 15 minuta u timu pročitati slučaj, te napisati osnovne informacije – problem koji je tvrtka imala, način rješenja, koristi od simulacijskog modela)

Svaki tim treba izložiti u 5 min. najvažnije informacije o slučaju

Page 26: 5. Simulacijski programi i primjena diskretne simulacije · složenu analizu proizvodnih procesa upravljanih računalom eliminaciju uskih grla proizvodnje ispitivanje mogućnosti

Literatura

1. Čerić, V., i dr., Informacijska tehnologija u poslovanju, Element, Zagreb, 2004.

2. Ghidella, J., Cherian, V., Introduction to Simulink, MathWorks, http://www.mathworks.com/programs/techkits/conf_techkit_sl_ggl.html, 20.10.2009.

3. Juričić, D., Primjena metode simulacije u ocjeni kreditnog rizika, Ekonomski pregled, 56 (9) str. 706-719 (2005).

4. Oakshott, L., Business Modelling and Simulation, Pittman Publishing, London, 1997.

5. W. David Kelton, Randall P Sadowski, Nancy B. Swets, Simulation with Arena, McGraw Hill, 2009.