Upload
others
View
8
Download
0
Embed Size (px)
Citation preview
1
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
Poslovne
simulacije
5. Simulacijski programi i primjena
diskretne simulacije
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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.
2
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
Vrste simulacijskih programaProgrami za simulacijsko modeliranje dijele se na:
Programe opće namjene
GPSS
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.
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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.
3
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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.
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
Primjer rada u GPSS-u
Slika 1. Primjer raspoloživih
blokova i dva blok dijagrama
kreirana u GPSS-u (izvor:
http://www.webgpss.com/image
s/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
4
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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.
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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
5
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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:
6
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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).
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
Simulink (for MathLab)
To je 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
7
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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
8
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
Primjer simulacije u ARENA alatuSlika. Primjer
simulacije za obradu aplikacije za kredit na šalteru banke u ARENA alatu (izvor: http://www.arenasimulation.com/, 20.10.2009)
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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
9
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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.
10
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
Primjene diskretne simulacije -
nastavakPrimjer: 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.
11
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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.
12
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
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:
1. Podijeliti se u timove od 5 članova
2. 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.)
3. 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)
4. Svaki tim treba izložiti u 5 min. najvažnije informacije o slučaju
M. Zekić-Sušac, Ekonomski fakultet u Osijeku
Literatura Čerić, V., i dr., Informacijska tehnologija u poslovanju,
Element, Zagreb, 2004.
Ghidella, J., Cherian, V., Introduction to Simulink, MathWorks, http://www.mathworks.com/programs/techkits/conf_techkit_sl_ggl.html, 20.10.2009.
Juričić, D., Primjena metode simulacije u ocjeni kreditnog rizika, Ekonomski pregled, 56 (9) str. 706-719 (2005).
Oakshott, L., Business Modelling and Simulation, Pittman Publishing, London, 1997.
W. David Kelton, Randall P Sadowski, Nancy B. Swets, Simulation with Arena, McGraw Hill, 2009.