View
254
Download
1
Category
Preview:
Citation preview
8/9/2019 Simulasi Pemodelan
1/135
Cat at an K uliah
Simulasi dan Pemodelan
Oleh
Tim Dosen Simulasi dan Pemodelan
UNIVERSITAS GUNADARMA
8/9/2019 Simulasi Pemodelan
2/135
i
K at a Pengant ar
Puji syukur kehadirat Tuhan Yang Maha Esa, karena dengan rakhmat danberkat Hidayahnya catatan kuliah ini dapat diselesaikan.
Dalam suatu inst it usi pendidikan, proses utama yang sangat perlu diper-
hatikan dan merupakan tolok ukur dari kual it as inst i tusi tersebut adalahproses belaj ar mengajar yang terj adi antara mahasiswa dan dosen. Gunamenunjang proses tersebut kami team pengajar simulasi dan pemodelanmenyusun catatan kuliah ini.
Selain diperuntukkan bagi mahasiswa , catatan kuliah ini juga diharapkan
dapat digunakan sebagai acuan keseragaman materi antar dosen yang men-gajar pada beberapa kelas parallel di Jurusan Teknik Informatika.
Kami sangat mengharapkan saran dan krit ik membangun dari para maha-siswa, dosen dan pembaca guna kesempurnaan catatan kuliah ini.
Depok, 2003
Penyusun
8/9/2019 Simulasi Pemodelan
3/135
Daftar Isi
I Gambar an Um um Sim ulasi, Pr insip-Pri nsip U mumSist em Simul asi Per ist iwa D isk ri t ix
1 Pengant ar St udi Sim ulasi ( K ul iah 1-2) 11.1 Denisi Simulasi . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 M odel Simul asi . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Dimana Simulasi Cocok digunakan? . . . . . . . . . . . . . . . 4
1.4 Dimana Simulasi Tidak Cocok digunakan? . . . . . . . . . . . 41.5 Bidang-Bidang Aplikasi . . . . . . . . . . . . . . . . . . . . . . 51.6 Sistem dan Lingkungan Sistem . . . . . . . . . . . . . . . . . 51.7 Komponen Sistem . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.8 Sistem Diskrit dan Kontinyu . . . . . . . . . . . . . . . . . . . 71.9 T ipe-T ipe Model . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.10 Klasikasi Model Simulasi . . . . . . . . . . . . . . . . . . . . 71.11 Simulasi Sistem Peristiwa Diskrit . . . . . . . . . . . . . . . . 8
1.12 Langkah-Langkah Studi Simulasi . . . . . . . . . . . . . . . . 81.13 Verikasi dan Validasi . . . . . . . . . . . . . . . . . . . . . . 121.14 Pembangunan Model . . . . . . . . . . . . . . . . . . . . . . . 12
1.15 K elebihan, K ekur angan, Pit falls dari Simulasi . . . . . . . . . 131.15.1 K elebihan . . . . . . . . . . . . . . . . . . . . . . . . . 131.15.2 K ekurangan . . . . . . . . . . . . . . . . . . . . . . . . 131.15.3 P it fall s . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.16 Fit ur-tur software simulasi yang dibutuhkan . . . . . . . . . 14
2 Cont oh-Cont oh Simulasi ( K ul iah 1-2) 152.1 Langkah-Langkah Dasar . . . . . . . . . . . . . . . . . . . . . 152.2 Simulasi Sistem Antrian . . . . . . . . . . . . . . . . . . . . . 16
2.2.1 Sistem Antr ian . . . . . . . . . . . . . . . . . . . . . . 162.2.2 K eacakan dalam simulasi . . . . . . . . . . . . . . . . . 18
2.3 Sistem Antrian Layanan Tunggal . . . . . . . . . . . . . . . . 192.4 Contoh-Contoh Lain . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.1 M asalah Able Baker Carhop: Dua Pelayan. . . . . . . . 22
ii
8/9/2019 Simulasi Pemodelan
4/135
DAFTAR ISI i ii
2.4.2 Sistem Inventory . . . . . . . . . . . . . . . . . . . . . 24
2.4.3 Masalah Reabilitas . . . . . . . . . . . . . . . . . . . . 242.4.4 Masalah Mili ter . . . . . . . . . . . . . . . . . . . . . . 24
2.4.5 Lead-Time Demand . . . . . . . . . . . . . . . . . . . . 252.5 Ringkasan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3 Prinsip U mum SSPD (K uliah 3) 26
3.1 K onsep dan Denisi . . . . . . . . . . . . . . . . . . . . . . . . 283.2 T i me i n Simulat ion . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3 A l gori t ma Umum . . . . . . . . . . . . . . . . . . . . . . . . . 303.3.1 Eksekuti f Simulasi Sinkron . . . . . . . . . . . . . . . 303.3.2 Eksekuti f Event-Scanning . . . . . . . . . . . . . . . . 31
3.4 Mekanisme Eksekusi SSPD . . . . . . . . . . . . . . . . . . . . 313.5 Pendekatan-Pendekatan dalam SSPD . . . . . . . . . . . . . . 33
3.5.1 Pendekatan event-scheduling . . . . . . . . . . . . . . . 343.5.2 Pendekatan process-interact ion . . . . . . . . . . . . . 343.5.3 Pendekatan act ivity-scanning . . . . . . . . . . . . . . 35
3.6 Contoh-Contoh lain . . . . . . . . . . . . . . . . . . . . . . . . 363.6.1 Contoh 3.1: Able and Baker, versi revisi . . . . . . . . . 363.6.2 Cont oh 3.2: Antrian single-channel (Supermarket check-
out count er). . . . . . . . . . . . . . . . . . . . . . . . 36
3.6.3 Contoh 3.4: Simulasi check-out counter, lanjut an . . . 37
3.6.4 Contoh 3.5: Masalah dump truck. . . . . . . . . . . . . 38
4 Bahasa-B ahasa Sim ulasi 394.1 Bahasa Simulasi Konti nyu dan Diskrit . . . . . . . . . . . . . 394.2 Bahasa Simulasi Kontinyu . . . . . . . . . . . . . . . . . . . . 39
4.3 Bahasa Simulasi Sisti m Diskrit. . . . . . . . . . . . . . . . . . 404.3.1 Event-oriented languages. . . . . . . . . . . . . . . . . 414.3.2 Activity-orient ed languages. . . . . . . . . . . . . . . . 414.3.3 Process-oriented languages. . . . . . . . . . . . . . . . 41
4.4 SI MSCRI PT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424.5 GPSS ( General Purpose Simulat ion System) . . . . . . . . . . 45
4.5.1 Single-Server Queue Simulat ion in GPSS/ H . . . . . . 454.6 SIMULA (SIMUlation Language) . . . . . . . . . . . . . . . . 47
4.7 Fact ors in select ion of a discrete syst em simulation language. . 48
I I M odel M at em at is dan St at ist ik 50
5 M odel St at ist ik dalam Sim ulasi 51
8/9/2019 Simulasi Pemodelan
5/135
DAFTAR ISI iv
5.1 Alasan Penggunaan Probabil it as dan St at istik dalam Simulasi 52
5.2 T injauan Ulang Terminologi dan Konsep . . . . . . . . . . . . 525.3 Model-Model St ati stik yang Berguna . . . . . . . . . . . . . . 54
5.4 Distribusi Variabel Acak Diskrit . . . . . . . . . . . . . . . . . 555.4.1 Bernoulli trials dan distri busi Bernoulli . . . . . . . . . 555.4.2 Distribusi Binomial . . . . . . . . . . . . . . . . . . . . 565.4.3 Distribusi Geometrik . . . . . . . . . . . . . . . . . . . 57
5.4.4 Distribusi Poisson . . . . . . . . . . . . . . . . . . . . . 585.5 Distribusi Variabel Acak Konti nyu . . . . . . . . . . . . . . . 58
5.5.1 Distribusi Uniform . . . . . . . . . . . . . . . . . . . . 585.5.2 Distribusi Eksponesial . . . . . . . . . . . . . . . . . . 59
5.5.3 Distribusi Gamma . . . . . . . . . . . . . . . . . . . . 60
5.5.4 Distribusi Erlang . . . . . . . . . . . . . . . . . . . . . 615.5.5 Distribusi Normal . . . . . . . . . . . . . . . . . . . . . 615.5.6 Distribusi Weibull . . . . . . . . . . . . . . . . . . . . . 62
5.6 Esti masi Meansdan Variances . . . . . . . . . . . . . . . . . . 62
5.7 Condence Intervals dari Mean . . . . . . . . . . . . . . . . . 635.8 Testing Hipotesis . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.9 Distribusi Empiris dan Ringkasan . . . . . . . . . . . . . . . . 64
6 Gam bar an U mum M odel-M odel A nt rian 65
6.1 Model-Model Antrian . . . . . . . . . . . . . . . . . . . . . . . 65
6.2 K arakteristik Sistem Antrian . . . . . . . . . . . . . . . . . . . 666.3 Sifat Antrian dan Displin Antrian . . . . . . . . . . . . . . . . 676.3.1 Sifat Ant ri an . . . . . . . . . . . . . . . . . . . . . . . 67
6.3.2 Displ in Antr ian . . . . . . . . . . . . . . . . . . . . . . 676.4 Waktu Pelayanan dan Mekanisme Pelayanan . . . . . . . . . . 686.5 Not asi Ant r ian . . . . . . . . . . . . . . . . . . . . . . . . . . 686.6 Pengukuran Long-Run Kinerj a Sistem Antrian . . . . . . . . . 69
6.7 Steady-State Populasi Tak-Terbat as Model Markovian . . . . 716.7.1 M =G=1 . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.8 Jaringan Antr ian . . . . . . . . . . . . . . . . . . . . . . . . . 73
6.9 Ringkasan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
I I I B i langan dan V ar i abel A cak 75
7 Pembangkit an Bilangan A cak 767.1 Sifat-Sifat Bilangan Acak . . . . . . . . . . . . . . . . . . . . . 767.2 Pembangkit an Bilangan Acak Pseudo . . . . . . . . . . . . . . 77
7.3 Teknik Pembangkitan Bilangan Acak . . . . . . . . . . . . . . 78
8/9/2019 Simulasi Pemodelan
6/135
DAFTAR ISI v
7.3.1 Metode Kongruen Linier . . . . . . . . . . . . . . . . . 78
7.3.2 Metode Kongruen Linier Kombinasi . . . . . . . . . . . 797.4 Test Bilangan Acak . . . . . . . . . . . . . . . . . . . . . . . . 79
7.4.1 Tes Frekuensi . . . . . . . . . . . . . . . . . . . . . . . 817.4.2 Tes Runs . . . . . . . . . . . . . . . . . . . . . . . . . 827.4.3 Tes Auto-correlation . . . . . . . . . . . . . . . . . . . 857.4.4 Tes Gap . . . . . . . . . . . . . . . . . . . . . . . . . . 86
7.4.5 Tes Poker . . . . . . . . . . . . . . . . . . . . . . . . . 88
8 Pembangkit an Var iab el ( Variat e) A cak 898.1 Teknik Transformasi Balik . . . . . . . . . . . . . . . . . . . . 89
8.1.1 Distribusi Eksponensial . . . . . . . . . . . . . . . . . . 90
8.1.2 Distribusi Uniform . . . . . . . . . . . . . . . . . . . . 928.1.3 Distribusi Weibull . . . . . . . . . . . . . . . . . . . . . 928.1.4 Distribusi Triangular . . . . . . . . . . . . . . . . . . . 938.1.5 Distribusi Kont inyu Empiris . . . . . . . . . . . . . . . 948.1.6 Distribusi Kont inyu t anpa invers bent uk tert utup . . . 95
8.1.7 Distribusi Diskrit . . . . . . . . . . . . . . . . . . . . . 958.2 Transformasi Langsung Distr ibusi Normal . . . . . . . . . . . 988.3 Metode Konvolusi . . . . . . . . . . . . . . . . . . . . . . . . . 988.4 Teknik Penerimaan Penolakan (A ccept ance-Rejecti on) . . . . . 99
I V A nal isis D at a Simulasi 102
9 Pemodelan M asukan ( Input M odel ing) 1039.1 Identikasi Distri busi dengan Dat a . . . . . . . . . . . . . . . 103
9.1.1 Histogram . . . . . . . . . . . . . . . . . . . . . . . . . 1039.1.2 Penyeleksian Kelas Distri busi . . . . . . . . . . . . . . 104
9.1.3 Plot Quantile-Quantile . . . . . . . . . . . . . . . . . . 1059.1.4 Esti masi Parameter . . . . . . . . . . . . . . . . . . . . 106
9.2 Tes Goodness-of-Fit . . . . . . . . . . . . . . . . . . . . . . . . 1079.2.1 Tes Chi-Square . . . . . . . . . . . . . . . . . . . . . . 107
10 Ver ikasi dan Val idasi M odel Simulasi 11010.1 Pembangunan, Verikasi dan Validasi Model . . . . . . . . . . 11010.2 Verikasi Model Simulasi . . . . . . . . . . . . . . . . . . . . . 11110.3 K alibrasi dan Validasi Model . . . . . . . . . . . . . . . . . . . 111
10.3.1 Face Validity . . . . . . . . . . . . . . . . . . . . . . . 112
10.3.2 Validasi Asumsi Model . . . . . . . . . . . . . . . . . . 11210.3.3 Validasi Transformasi Input-Output . . . . . . . . . . . 112
8/9/2019 Simulasi Pemodelan
7/135
DAFTAR ISI vi
10.3.4 Validasi Input-Output menggunkan Data masukan his-
t ori s . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
11 A nal isis K eluar an M odel Tunggal 11511.1 Sifat Stokasti k Data Keluaran . . . . . . . . . . . . . . . . . . 11511.2 Jenis Simulasi menurut Analisis K eluaran . . . . . . . . . . . 116
11.3 Pengukuran K iner ja dan Esti masi . . . . . . . . . . . . . . . . 11611.3.1 Estimasi Tit ik . . . . . . . . . . . . . . . . . . . . . . . 11611.3.2 Estimasi Interval . . . . . . . . . . . . . . . . . . . . . 117
11.4 A nalisis Keluaran Simulasi Terminat ing . . . . . . . . . . . . . 12011.4.1 Estimasi I nterval untuk Jumlah Replikasi yang tetap . 12011.4.2 Estimasi I nterval dengan Presisi Tert ent u . . . . . . . . 121
11.5 A nalisis Keluaran Simulasi Steady-Stat e . . . . . . . . . . . . 12211.5.1 Inisialisasi Bias pada Simulasi Steady-State . . . . . . 12211.5.2 M etode Replikasi Simulasi St eady-State . . . . . . . . . 12311.5.3 Ukuran Sample Simulasi Steady-St ate . . . . . . . . . 12411.5.4 Batch Meansuntuk Estimasi I nterval Est imation pada
Simulasi Steady-State . . . . . . . . . . . . . . . . . . 125
8/9/2019 Simulasi Pemodelan
8/135
Daftar Gambar
1.1 Cara mempelajari sebuah sistem . . . . . . . . . . . . . . . . . 6
1.2 Langkah dalam studi simulasi . . . . . . . . . . . . . . . . . . 11
2.1 Sist em A nt rian . . . . . . . . . . . . . . . . . . . . . . . . . . 172.2 Diagram Ali ran Layan yang telah selesai . . . . . . . . . . . . 172.3 Diagram Aliran unit memasuki sist em . . . . . . . . . . . . . 182.4 Sistem Antrian Pelayan Tunggal . . . . . . . . . . . . . . . . . 202.5 Penent uan waktu antar ketibaan . . . . . . . . . . . . . . . . . 20
2.6 Hasil Simul asi . . . . . . . . . . . . . . . . . . . . . . . . . . 212.7 Sistem Antrian Dua Pelayan . . . . . . . . . . . . . . . . . . . 232.8 Hasil simulasi sistem ant rian dua pelayan . . . . . . . . . . . . 24
vii
8/9/2019 Simulasi Pemodelan
9/135
Daftar Tabel
2.1 Tabel Simulasi . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2 Aksi-Aksi Potensial saat kedat angan . . . . . . . . . . . . . . 172.3 K eluaran (outcomes) Pelayan setelah layanan selesai . . . . . . 182.4 Contoh hasil pembangkit an distri busi yang sederhana . . . . . 19
2.5 Distribusi waktu antar keti baan . . . . . . . . . . . . . . . . . 222.6 Distribusi waktu pelayanan dari Able . . . . . . . . . . . . . 232.7 Distribusi waktu pelayanan dari Baker . . . . . . . . . . . . . 23
viii
8/9/2019 Simulasi Pemodelan
10/135
Bagian I
Gambaran Umum Simulasi,
Prinsip-Prinsip Umum Sistem
Simulasi Peristiwa Diskrit
ix
8/9/2019 Simulasi Pemodelan
11/135
Bab 1
Pengant ar St udi Si mul asi( K uliah 1-2)
Bahasan:
Pendahuluan studi simulasi
Pengertian dan tujuan simulasi
Manfaat dan kelebihan pendekatan simulasi
Pener apan Simulasi
Sistem, M odel & Simulasi
Denisi dari sistem dan model
Sistem, Model & Simulasi
TIU:
Mahasiswa mengerti arti dan manfaat studi simulasi, serta men-dapat gambaran tentang cakupan studi simulasi
Mahasiswa dapat membangun model yang akan disimulasikan danmemahami denisi simulasi.
TIK:
Mahasiswa mampu mengikhtisarkan pent ingnya simulasi sehingga
lebih termotivasi untuk memahaminya labih lanjut
Mahasiswa dapat menyebut kan manfaat dan kelebihan-kelebihan
pendekatam simulasi.
1
8/9/2019 Simulasi Pemodelan
12/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 2
Mahasiswadapat menyebut kan bidang-bidang atau ilmu-ilmu yang
sering menggunakan pendekatan simulasi. Mahasiswa mampu membandingkan sistem dan model, dan meny-
impulkan perlunya model untuk kebutuhan simulasi.
Mahasiswa mampu menggolongkan model sis dan model mat em-atis, baik yang statis maupun dinamis.
Mahasiswadapat menyimpulkan langkah-langkah dalam studi sim-
ulasi secara garis besar.
Deskripsi Singkat:
Pada perkul iahan ini gambaran umum studi simulasi akan diberikan,mulai dari pengert ian, t ujuan, manfaat, sampai penerapannya. Denisi
sistem, model, komponen sistem sert a kait annya dengan simulasi akandijelaskan.
Bahan Bacaan:
[1] J. Banks, et.al., D iscret e Event Syst em Simulat ion ,3ed., Prent ice-Hall (Chap. 1)
[2] Law & Kelton, et.al., Sim ulati on M odeli ng & A naly sis ,Mc. Graw-Hill Inc., Singapore (Chap. 1)
8/9/2019 Simulasi Pemodelan
13/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 3
1.1 D enisi Sim ul asi
Simulasi adalah peniruan operasi, menurut wakt u, sebuah proses atausistem dunia nyata.
1. Dapat dilakukan secara manual maupun dengan bantuan kom-puter.
2. Menyert akan pembentukan data dan sejarah buatan (art icial his-tory ) dari sebuah sist em, pengamat an data dan sejarah, dan kes-
impul an yang t erkait dengan karakt eri st ik sistem-sistem.
Untuk mempelajari sebuah sistem, biasanya kita harusmembuat asumsi-
asumsi tentang operasi sistem tersebut.
Asumsi-asumi membent uk sebuah model, yang akan digunakan untuk
memahami sifat/ peri laku sebuah sistem.
Solusi Anal it ik: Jika ket erkaitan (relat ionship) model cukup sederhana,sehingga memungkinkan penggunaan metode mat ematis unt uk mem-peroleh i nformasi eksak dari sistem
Langkah ri il simulasi: Mengembangkan sebuah model simulasi danmengevaluasi model, biasanya dengan menggunakan komputer, untuk
mengestimasi karakt erist ik yang diharapkan dari model tersebut .
1.2 M odel Si mulasi
Suat u representasi sederhana dari sebuah sistem (at au proses atauteori), bukan sistem itu sendiri.
Model-model t idak harus memil iki seluruh atribut; mereka diseder-hanakan, dikontrol , digeneralisasi, at au diidealkan.
Untuk sebuah model yang akan digunakan, seluruh si fat-sifat relevant-
nya harus ditetapkan dalam suatu car a yang pr akt is, dinyatakan dalamsuatu set deksripsi terbatas yang masuk akal (reasonably).
Sebuah model harus divalidasi.
Setelah divalidasi, sebuah model dapat digunakan untuk menyeli diki
dan mempredik si perilaku-peri laku (sifat) sistem, atau menjawab what-i f questions untuk mempert ajam pemahaman, pelatihan, prediksi, danevaluasi alternat if.
8/9/2019 Simulasi Pemodelan
14/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 4
1.3 D im ana Sim ulasi Cocok digunakan?
Mempelajari interaksi internal (sub)-sistem yang kompleks.
Mengamati sifat model dan hasi l keluaran akibat perubahan lingkuan-
gan luar atau variabel internal.
Meningkata kinerj a sistem melalui pembangunan/ pembentukan model.
Eksperi men desain dan at uran baru sebelum diimplementasikan.
Memahami dan memverikasi solusi analit ik.
Mengidentikasi dan menetapkan persyaratan-persyaratan.
Alat bantu pelatihan dan pembelajaran dengan biaya lebih rendah.
Visuali sasi operasi melalui anuimasi.
Masalahnya sulit , memakan wakt u, atau t idak mungkin diselesaikan
melalui metode analit ik at au numerik konvensional.
1.4 D im ana Simul asi T id ak C ocok digunakan?
Ji ka masalah dapat diselesaikan dengan metode sederhana.
Ji ka masalah dapat diselesaikan secara analit ik.
Jika eksperimen langsung lebih mudah dilakukan.
Jika biaya terlalu mahal.
Jika sumber daya atau waktu t idak t ersedia.
Jika tidak ada data yang tersedia.
Ji ka verikasi dan vali dasi t idak dapat dilakukan.
Ji ka daya melebihi kapasit as (overest imated).
Ji ka sistem t erlalu kompleks atau t idak dapat didenisikan.
8/9/2019 Simulasi Pemodelan
15/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 5
1.5 Bi dang-B idang A pli kasi
Perancangan dan analisis sistem manufacturing.
Evaluasi persyarat an hardware dan soft ware unt uk sistem komput er .
Evaluasi sistem senjata atau taktik militer yang baru.
Perancangan sistem komunikasi dan message protocol.
Perancangan dan pengoperasian fasi litas t ransport asi, mis. jalan tol,bandara, rel ker et a, atau pelabuhan.
Evaluasi perancangan organisasi jasa, mis. rumah sakit , kantor pos,atau restoran fast food.
Analisis sistem keuangan atau ekonomi.
1.6 Sist em dan L ingk ungan Si st em
Sist im adalah sekumpulan obyek yang dihubungkan satu sama lainmelalui beberapa int eraksi reguler atau secara bebas untuk mencapaisuatu tujuan.
Sistem biasanya dipengaruhi oleh perubahan yang terj adi di luar sis-t im. Perubahan i ni terj adi di l ingkungan sist em. Dalam pemodelan
sistem, perlu dit etapkan bat as (boundary) antara sist em dan l ingkun-gannya. Cont oh, pada studi memori cache menggunakan, ki ta harusmenetapkan dimana batas sistem. Batas ini dapat antara CPU dancache, atau dapat memasukan memori utama, disk, OS, kompilator,
ataupun program-program aplikasi.
Cara mempelajari sebuah sistem
Mempelaj ar i sistem dengan simulasi, secara numerik menj alankan model
dengan member i input dan meli hat pengaruhnya terhadap out put.
1.7 K om ponen Sist em
Entitas mer upakan obyek dalam sistem. Contoh, customers pada su-atu bank.
8/9/2019 Simulasi Pemodelan
16/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 6
Eksperimen dgn
Sistem aktualEksperimen dgnmodel sistem
Model fisik Model matematis
SimulasiSolusi analitis
Sistim
Eksperimen dgn
Sistem aktualEksperimen dgnmodel sistem
Model fisik Model matematis
SimulasiSolusi analitis
Sistim
Gambar 1.1: Cara mempelajari sebuah sistem
A t r i b u t merupakan suat u sifat dari suatu ent it as. Contoh, pengecekanneraca rekening customer.
A k t i v i t a s merepresentasikan suatu periode waktu dangan l ama ter-
tent u (specied length). Periodewaktu sangat penting karena biasanyasimulasi menyert akan besaran waktu. Cont oh deposit o uang ke reken-
ing pada waktu dan tanggal tertentu.
K eadaan sist em didenisikan sebagai kumpul an varibel-variabel yangdiperlukan untuk menggambarkan sistem kapanpun, relat if terhadap
obyekti f dari studi. Contoh, j umlah tel ler yang sibuk, jumlah customeryang menunggu dibaris antrian.
Peristiwa didenisikan sebagai kejadian sesaat yang dapat mengubah
keadaan sist em. Contoh, kedatangan customer, pejumlahan jumlah
teller, keberangkatan customer.
Contoh-cont oh enti t as, atribut , akt ivi tas, perist iwa dan variabel-variabelkeadaan dari berbagai sist im dapat dil ihat pada referensi [1] tabel 1.1. hala-man 11.
8/9/2019 Simulasi Pemodelan
17/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 7
1.8 Sist em Diskrit dan K ont inyu
Sist im Diskrit : variabel-variabel keadaan hanya berubah pada set t i t ikwaktu yang diskrit.
Contoh: jumlah customer yang menunggu diantri an
Sistem K ontinyu: variabel-variabel berubah secara kont inyu menurutwaktu.
Contoh: arus listr ik
1.9 T ipe-T ipe M odel
Model:
Fisik: model rumah, model jembatan
Matemat is (symboli c): ( - ) = & !
Model simulasi
St atik (pada beber apa ti t ik wakt u) vs. Dynamik (berubahmenurut waktu)
Determi nist ik (masukan diketahui) vs. Stokast ik (variabelacak, masukan/ keluaran)
Diskrit vs. Kontinyu
1.10 K lasikasi M odel Sim ul asi
Model Simulasi Stat ik v s. Dinamik
Model stat ik: representasi sistem pada wakt u t ert entu. Wakt u
t idak berperan di sini. Contoh: model Monte Carlo.
Model dinamik: merepresent asikan sist em dalam perubahannyaterhadap waktu. Contoh: sistem conveyor di pabrik.
Model Simulasi Deterministik vs. Stokastik
Model det erminist ik: t idak memiliki komponen probabili st ik (r an-dom).
8/9/2019 Simulasi Pemodelan
18/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 8
Model stokastik: memili ki komponen i nput r andom, dan meng-
hasil kan output yang random pula.
Model Simulasi Kontinyu vs. Diskri t
Model kont inyu: status berubah secar a kontinu terhadap waktu,mis. gerakan pesawat terbang.
Model diskrit : stat us berubah secara inst an pada ti t ik-ti t ik wakt u
yang terpisah, mis. jumlah customer di bank.
Model yang akan dipelaj ar i selanjutnya adalah diskrit , dinamik, danstokastik, dan disebut model simulasi (sistem) perist iwa diskrit (discrete-
event).
1.11 Simu lasi Sist em Peri st iwa D iskr it
Pemodelan sist im dimana vari abel keadaan berubah pada set wakt uyang diskrit.
Met ode: numer ik (bukan analit ik)
Analitik: alasan deduktif secara matematis; akurat
Numerik: prosedur komput asional; aproksimasi
Model simulasi di- run (bukan diselesaikan (solved)).
Obser vasi sistem ri il, entit as, interaksi
Asumsi model
Pengumpulan data
Analisis dan est imasi kinerj a sistem
1.12 Langkah-Langkah St udi Sim ul asi Formulasi masalah:
mengident ikasikan maslah yang akan diselesaikan
mendeskripsikan operasi sistim dalam term-term obyek dan aktiv-it as dd dalam suat au layout sik
8/9/2019 Simulasi Pemodelan
19/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 9
mengidentikasi sistem dalam term-term variabel input (eksogen),
dan output (endogen) mengkatagorikan variabel input sebagi decision (controllable) dan
parameters (uncont rollable)
mendenisikan pengukuran kiner ja sisti m (sebagai fungsi dar i vari-abel endogen) dan fungsi obyek (kombinasi beberapa pengukuran)
mengembangkan struktur model awal (prel iminary)
mengembangkan strukt ur mode lebih rinci yang menidentkasiseluruh obyek berikut atr ibut dan interface-nya
Penet apan t uj uan dan rencana proyek : pendekat an yang digu-nakan unt uk menyelesaikan masalah.
K onsept uali sasi m odel: membangun model yang masuk akal.
memahami sistem
Pendekat a proses (atau pendekatan alar ian sik (physical owapproach)) didasarkan pada tracking ow dari entitas-entitaskeseluruhan sistem berikut t i t ik pemorsesan dan at uran kepu-tusan percabangan
Pendekatan perist iwa (event) (atau pendekat an perubahan
keadaan (st ate change approach)) didasarkan pada denisivariabel keadaan internal dan events sist im yang mengubah-
nya, diikut i oleh deskripsi operasi sist im ketika suatu eventterjadi
konst ruksi model
denisi obyek, at ribut, metode
owchart metode yang relevan
pemili han bahas implemntasi
penggunaan random variat es dan st ati st ik kinerj a
coding dan debugging
Pengumpulan data: mengumpulkan data yang diperlukan untuk me-
run simulasi (sepert i laj u ket ibaan, proses ket ibaan, displin layanan,laju pelayanan dsb.).
observasi langsung dan perekaman manual variabel yang dise-
leksi(selected)
8/9/2019 Simulasi Pemodelan
20/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 10
t ime-stamping untuk men-track aliran suatu entit as keseluruh sis-
tem menyeleksi ukuran sample yang valid secara statist ik
menyeleksi sutau format data yang dapat diproses oleh komputer
analisis stat ist ik untuk menet apkan distri busi dan parameter dataacak
memut uskan data mana yang dipandang sebagai acak dan yangmana diasumsikan deterministik
Pener jemahan M odel: konversi model suatu bahas pemrograman.
Ver ikasi: Verikasi model melalui pengecekan apakah program bek-erja dengan baik.
Validasi: Check apakah sist im merepresent asi sist im ri il secara akurat .
D esain Eksperim en: Berapa banyak runs? Untuk berapa lama?Jenis variasi masukannya sepert i apa ?
evaluasi stat istik out put unt uk mementapkan beberapa level presis
yang diterima dari pengukuruan kinerja
analisi terminasi digunakan jika interval waktu riil tertentu akan
disimulasikan
steady state analysis digunakan j ika obyek of int erest merupakanrata-rata long-term
Pr oduksi runs dan analisis: r unning aktual simulasi, mengumpulkan
dan menganalisis keluaran.
Jalankan lagi (M ore runs) ?: mengulangi eksper iemn ji ka perl u.
Dokumentasi dan pelaporan: Dokumen dan laporan hasil Implementasi
8/9/2019 Simulasi Pemodelan
21/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 11
1 Formulasi Masalah
Penetapan tujuan danKeseluruhan rencana proyek
Konseptualisasi Model Pengumpulan data
Penerjemahan Model(model translation)ke dalam program
Verifikasi
Validasi
Desain Eksperimen
Menjalankan produksi(production runs)dan analisis
Jalankanlagi?
Dokumentasi
dan
Pelaporan
Implementasi
2
3 4
5
6
7
Tidak
ya
Tidak Tidak
ya
Tidak
yaya
8
9
10
11
12
1 Formulasi Masalah
Penetapan tujuan danKeseluruhan rencana proyek
Konseptualisasi Model Pengumpulan data
Penerjemahan Model(model translation)ke dalam program
Verifikasi
Validasi
Desain Eksperimen
Menjalankan produksi(production runs)dan analisis
Jalankanlagi?
Dokumentasi
dan
Pelaporan
Implementasi
2
3 4
5
6
7
Tidak
ya
Tidak Tidak
ya
Tidak
yaya
8
9
10
11
12
Gambar 1.2: Langkah dalam studi simulasi
8/9/2019 Simulasi Pemodelan
22/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 12
1.13 Ver ikasi dan Validasi
Langkah terpenting dalam studi simulasi: validasi
Validasi bukan merupakan tugast ersendiri yang mengikut i pengemban-
gan model, namun merupakan satu kesatuan yang terintegrasi dalampengembangan model.
Verikasi: Apakah ki ta membangun model yang benar?
Apakah model diprorgram secara benar (i nput paramet er s danlogical structure)?
Validasi:
Apakah model merupakan representasi akurat dari sist im r ii l?
Proses inter at if dari pembandingan model terhadap sifat sistem
aktual dan memperbaiki model.
1.14 Pembangunan M odel
Proses it er at i f yang mengandung t iga langkah utama:
Observasi sist im r i il dan int eraksi komponen dan pengumpulan dat a
Domain pengetahuan tert ent u
Stakeholders: operator, teknisi , engineer s
Konstruksi model konsept ual
Asumsi dan hipotesa komponen dan nil ai-nilai parameter
Struktur sistim
Penerj emahan model operasional ke bentuk yang dikenal oleh komput er
8/9/2019 Simulasi Pemodelan
23/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 13
1.15 K elebihan, K ekur angan, Pit falls dari
Simulasi
1.15.1 K elebihan
Sebagian besar sistem ri il dengan elemen-elemen stokastik t idak dapat
dideskripsikan secara akurat dengan model matematik yang dievaluasisecara analit ik. Dengan demiki an simulasi seringkali merupakan satu-satunya cara.
Simulasi memungkinkan est imasi ki nerj a sistem yang ada dengan be-berapa kondisi operasi yang ber beda.
Rancangan-rancangan sistem alt ernat if yang di anj urkan dapat diband-
ingkan via simulasi untuk mendapatkan yang terbaik.
Pada simulasi bisa dipert ahankan kontrol yang lebih baik terhadap
kondisi eksperimen.
Simulasi memungkinkan st udi sistem dengan kerangka wakt u lamadalamwaktu yang l ebih singkat, atau mempelajari cara kerj a rinci dalam
wakt u yang diperpanjang.
1.15.2 K ek urangan Setiap langkah percobaan model simulasi stokast ik hanya menghasilkan
estimasi dari karakteri st ik sist em yang sebenarnya untuk parameterinput tertentu. Model analitik lebih valid.
Model simulasi seringkali mahal dan makan waktu lama untuk dikem-
bangkan.
Output dalam jumlah besar yangdihasilkan dari simulasi biasanya tam-pak meyakinkan, padahal belum t ent u modelnya valid.
1.15.3 Pit fal ls
Gagal mengidentikasi tujuan secara jelas
Desain dan analisis eksperimen simulasi t idak memadai
Pendidikan dan pelatihan yang tidak memadai
8/9/2019 Simulasi Pemodelan
24/135
BAB 1. PENGANTAR STUDI SI MULA SI (KUL IAH 1-2) 14
1.16 Fit ur -t ur soft ware si mulasi yang dibu-
tuhkan
Membangkitkan bilangan random dari distribusi probabilitas U(0,1).
Membangkit kan nil ai-nilai random dari dist ri busi probabil it as tert entu,mi s. eksponensial.
Memajukan wakt u simulasi.
Menentukan event berikutnya dari daft ar event dan memberikan kon-trol ke blok kode yang benar .
Menambah atau menghapus record pada list .
Mengumpulkan dan menganalisa data.
Melaporkan hasil.
Mendet eksi kondisi error.
8/9/2019 Simulasi Pemodelan
25/135
Bab 2
Cont oh-C ont oh Sim ul asi( K uliah 1-2)
Bahan Bacaan:
[1] J. Banks, et.al., D iscret e Event Syst em Simulat ion ,
3ed., Prent-Hall (Chap.2)
[2] Law & Kelton, et.al., Sim ulati on M odeli ng & A naly sis ,
Mc. Graw-Hill Inc., Singapore (Chap.1)
2.1 Langkah-Langkah D asar
Menetapkan karakterist ik masukan.
Biasanya dimodelkan sebagai distribusi probabil it as
Menkonst ruksi t abel simulasi.
Spesikasi masalah
Biasanya terdir i dar i sekumpulan masukan dan lebih dari sat u
respon Pengulangan
Membangkit kan nilai secara berulanag untuk set iap masukan dan mengeval-uasi fungsi.
15
8/9/2019 Simulasi Pemodelan
26/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 16
M asukan Respon
Pengulangan X i ;1 X i ;2 : : : X i ;j : : : : : : X i ;p yi12
3......
n
Tabel 2.1: Tabel Simulasi
2.2 Simul asi Sist em A nt r ianSistem antrina terdiri dari:
Pemanggilan populasi (Calling population): Biasa tidak terbatas: jikasebuah unit keluar, t idak ada perubahan pada laj u ketibaan/ kedatangan.
Kedatangan/ ketibaan: terjadi secara acak.
Mekanismepelayanan: Sebuah unit akan dilayani dalam panj ang wakt uyang acak ber dasarkan suatu distribusi probabil it as.
Kapasit as sistem: t idak ada bat asan
Displin antrian
Urutan layanan, misal, FIFO.
2.2.1 Sist em A nt rian
Kedatangan dan pelayanan didenisikan melalui distri busi probabi litas
waktu antara kedatangan dan distribusi waktu pelayanan.
Laju pelayanan vs. laju kedat angan: t idak st abil at au ekplosif
Keadaan: jumlah unit dalam sistem dan status dari pelayan
Perist iwa: St imulan yang menyebabkan keadaan sistem berubah.
Clock simulasi: Trace waktu simulasi.
8/9/2019 Simulasi Pemodelan
27/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 17
Gambar 2.1: Sistem Antrian
Peristiwa
Keberangkatan
Terdapat unit lainYg menunggu ?
Mulai pelayan
menganggur(idle time)
Kurangi unit yg
menunggudari antrian
Mulai pelayananunit
tidak ya
Peristiwa
Keberangkatan
Terdapat unit lainYg menunggu ?
Mulai pelayan
menganggur(idle time)
Kurangi unit yg
menunggudari antrian
Mulai pelayananunit
tidak ya
Gambar 2.2: Diagram Ali ran Layan yang t elah selesai
St at us A nt r iantidak kosong kosong
status sibuk antri antri
pelayan idle t idak mungkin masuk layanan
Tabel 2.2: Aksi-A ksi Potensial saat kedatangan
8/9/2019 Simulasi Pemodelan
28/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 18
Peristiwa
Kedatangan
Pelayan
sibuk ?Unit memasuki
layananUnit memasuki
antrian layanan
tidak ya
Peristiwa
Kedatangan
Pelayan
sibuk ?Unit memasuki
layananUnit memasuki
antrian layanan
tidak ya
Gambar 2.3: Diagram Aliran unit memasuki sistem
St at us A ntr iantidak kosong kosong
keluar an sibuk ya t idak mungkinpelayan i dl e t idak mungkin ya
Tabel 2.3: Keluaran (out comes) Pelayan setelah layanan selesai
2.2.2 K eacakan dalam sim ulasi
Contoh aplikasi:
Wakt u pelayanan
Wakt u antar kedatangan
Bi langan acak: terdistri busi secara uniform dalam int erval (0,1)
Digit acak: terditribusi secara uniform pada himpunan f 0; 1; 2; : : : ; 9g
Bi langan acak yang sebenarnya sangat suli t dibuat :
Bilangan acak bayangan (pseudo-random numbers)
Membangkit an bilangan acak dari tabel digit acak.
Pembangkitan suatu distribusi sederhan
Pseudo-code:
i n t s e r v i c e _ t i me ( v o i d )
r = r a n d ( ) / RAND_ MAX / * p s e u d o r a n d o m o n ( 0 , 1 ) * /
8/9/2019 Simulasi Pemodelan
29/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 19
Wakt u Layanan Pr obabil it as Probabil it as
( m enit ) K umulat i f1 0.10 0.102 0.20 0.30
3 0.30 0.60
4 0.25 0.85
5 0.10 0.95
6 0.05 1.00
Tabel 2.4: Contoh hasil pembangki tan distribusi yang sederhana
i f ( r < . 1 ) r e t u r n 1 ;e l s e i f ( r < . 3 ) r e t u r n 2 ;e l s e i f ( r < . 6 ) r e t u r n 3 ;e l s e i f ( r < . 8 5 ) r e t u r n 4 ;e l s e i f ( r < . 9 5 ) r e t u r n 5 ;
r e t u r n 6 ;
2.3 Sist em A nt ri an Layanan Tunggal
Entit as apa ? K eadaan apa ? Persit iwa sepert i apa ?
Kapan peristiwa terjadi atau bagaiman memodelkan peristiwa ?
Bagaimana keadaan berubah ketika peristiwa terjadi?
Contoh: Simulasi kedat angan, pelayanan 20 customerStatistik dan analisis contoh sistem antrian tunggal
Rat a-rat wakt u tunggu = (Total wakt u tunggu customer)/ (t otal jum-lah customers)
= 56=20= 2:8 menit
Probabili t ascustomer yang har usmenunggu di antrian = P(menunggu)
P(menunggu)= (j umlah customer yang menunggu)/ (t ot al j umlah cus-tomers)
P(menunggu) = 13=20= 0:65
8/9/2019 Simulasi Pemodelan
30/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 20
Gambar 2.4: Sistem A ntr ian Pelayan Tunggal
553520330210
44931922359
2212187753811061789227
88881633096
33591589485
67381410154
56071367273
10931289132
110911--1
Timebetweenarrivals
(minutes)
Random
DigitsCustomer
Time
between
Arrivals
(minutes)
Random
DigitsCustomer
553520330210
44931922359
2212187753811061789227
88881633096
33591589485
67381410154
56071367273
10931289132
110911--1
Timebetweenarrivals
(minutes)
Random
DigitsCustomer
Time
between
Arrivals
(minutes)
Random
DigitsCustomer
Gambar 2.5: Penentuan waktu ant ar ket ibaan
8/9/2019 Simulasi Pemodelan
31/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 21
Customer
T ime
Since
LastArrival
ArrivalTime
Service
T imeLookup
Time
ServiceBegins
Time
ServiceEnds
Time
Customer
Waits inQueue
T imeCustomer
Spends in
System(minutes)
IdleTime of
Server
(minutes)
Custome
r Wait?
1 0 4 0 4 0 4 0 0
2 8 8 1 8 9 0 1 4 0
3 6 14 4 14 18 0 4 5 0
4 1 15 3 18 21 3 6 0 1
5 8 23 2 23 25 0 2 2 0
6 3 26 4 26 30 0 4 1 0
7 8 34 5 34 39 0 5 4 0
8 7 41 4 41 45 0 4 2 0
9 2 43 5 45 50 2 7 0 1
10 3 46 3 50 53 4 7 0 1
11 1 47 3 53 56 6 9 0 1
12 1 48 5 56 61 8 1 3 0 1
13 5 53 4 61 65 8 1 2 0 1
14 6 59 1 65 66 6 7 0 1
15 3 62 5 66 71 4 9 0 1
16 8 70 4 71 75 1 5 0 117 1 71 3 75 78 4 7 0 1
18 2 73 3 78 81 5 8 0 1
19 4 77 2 81 83 4 6 0 1
20 5 82 3 83 86 1 4 0 1
68 56 124 18 13
Gambar 2.6: Hasil Simulasi
Fraksi waktu menganggur pelayan:
P(idle) = (t ot al waktu idle) / (t otal wakt u run simulasi)
P(idle) 18=86= 0:21
Rat a-rata waktu pelayanan = (t ot al wakt u pelayanan) / (t otal jumlahcustomers)
= 68=20= 3:4 menit
Waktu layanan yang diharapkan (expectation):
E(S) =P
(waktu layanan) p( waktu layanan)
= 1 (0:10)+ 2(0:20)+ 3 (0:30)+ 4 (0:25)+ 5 (0:10)+ 6(0:05) = 3:2menit
Waktu layanan yang diharapkan lebih kecil ket imbang hasil simulasi.Semakin lama wakt u simulasi akan semakin dekat ke nilai ekspek-tasi E (s).
Rat a-rata waktu antar kedat angan = (j umlah seluruh waktu antar ke-datangan) / (j umlah ket ibaan - 1 )
8/9/2019 Simulasi Pemodelan
32/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 22
82=19= 4:3
Waktu yang diharapkan antara kedatangan (mean distri busi uniformdiskrit, yang memiliki titik ujung a = 1; b = 8).
E(A) = (1 + 8)=2 = 4:5 menit
Rata-rata nilai ekspektasi berbeda
Rat a-rata waktu t unggu bagi pelanggan yang menunggu:
(t otal waktu cust omers menunggu di antri an) / (t ot al customer yang
menunggu)
= 56=13= 4:3 menit
Rat a-rata waktu berada di sist im:
(t otal waktu cust omers berada di sistem) / (t otal jumlah customers)
= 124=20= 6:2 menit
(waktu rata di antrian) + (waktu rata dalam pelayanan) = 2:8+ 3:4 =6:2 menit
2.4 Cont oh-Cont oh L ain2.4.1 M asalah A ble B aker Car hop: Dua Pelayan.
Able kemampuan kerjanya lebih baik dan bekerj a lebih cepat ket imbang
Baker. Penyederhanaan at uran (rule) Able mendapat customer j ika keduacarhops menganggur.
W akt u ant ar P r ob ab il i t as
kedatangan (mnt)
1 0.25
2 0.403 0.204 0.15
Tabel 2.5: Di st ribusi waktu ant ar ket ibaan
A nalisis hasil simul asi:Able sibuk 90% dari wakt u yang ada. Baker sibuk hanya 69 %. Sembil an
dari 26 kedatangan ( 35%) harus meunggu. Rata-rata waktu tunggu untuk
8/9/2019 Simulasi Pemodelan
33/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 23
Gambar 2.7: Sistem Antrian Dua Pelayan
Waktu layanan Probabilit as
(menit)2 0.30
3 0.284 0.25
5 0.17
Tabel 2.6: Distri busi wakt u pelayanan dari Able
Waktu layanan Probabilit as
(menit)2 0.35
3 0.25
4 0.205 0.20
Tabel 2.7: Distribusi waktu pelayanan dari Baker
8/9/2019 Simulasi Pemodelan
34/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 24
Able Baker
Customer
Digits for
Arrival
Time
BetweenArrivals
Clock Time of
Arrival
Time Service
BeginsService Time
Time Service
Ends
Time
ServiceBegins
Service TimeTime Service
Ends
Time in
Queue
1 0 0 5 5 0
2 2 2 3 5 0
3 4 6 6 3 9 9 0
4 4 10 10 5 15 15 0
5 2 12 6 18 0
6 2 14 15 3 18 18 17 3 17 18 2 20 20 1
8 3 20 20 4 24 24 09 3 23 4 27 0
10 1 24 24 3 27 27 011 2 26 27 3 30 30 1
12 2 28 4 32 0
13 2 30 30 5 35 35 0
14 1 31 3 35 1
15 2 33 35 4 39 39 216
235 4 39 0
17 2 37 39 4 43 43 218 3 40 5 45 0
19 2 42 43 2 45 45 1
20 2 44 45 4 49 49 1
21 4 48 3 51 0
22 1 49 49 3 52 52 0
23 2 51 5 56 0
24 3 54 54 3 57 57 0
25 1 55 6 62 1
26 4 59 59 3 62 62 0
56 43 11
Gambar 2.8: Hasil simulasi sistem antri an dua pelayan
seluruh hanya sekita 0.42 menit (25 det ik), sangat kecil. Kesembilan cutomer
yang harus menunggu, hany menunggu rat a-rata 1,22 menit, cukup rendah.Kesimpulan, sist im ini tampak seimbang dengan baik. Satu pelayan t idakcukup, tiga pelayan mungkin akan terlalu banyak.
2.4.2 Sist em I nventory
Simulasin sistem inventory (M ; N ).
2.4.3 M asalah Reabilit as
Evaluasi alternatif
2.4.4 M asalah M i l i t er
Bilangan normal acak
8/9/2019 Simulasi Pemodelan
35/135
BAB 2. CONTOH-CONTOH SIMULASI (KULIAH 1-2) 25
2.4.5 Lead-T ime D emand
Histogram
2.5 Ri ngkasan
Konsep Dasar Simulasi:
Menetapkan karakterisik data masukan.
Mengkonstruksi tabel simulasi.
Membangkitak variabel acak berdasaskan model masukan dan
menghitung nilai respon.
Menganalisi hasil-hasil .
Masalah utama dengan pendekatan tabel simulasi:
Tidak dapat digunakan atau mengatasi ket er gantungan yang kom-pleks antar ent i tas.
8/9/2019 Simulasi Pemodelan
36/135
Bab 3
P r insip U mum SSPD (K uliah
3)
Bahasan:
Konsep dan Denisi Simulasi Sist im Perist iwa Diskrit (SSPD)
Mekanisme Eksekusi Simulasi Sist im Perist iwa Diskri t (SSPD)
Pendekatan untuk SSPD
TIU:
Mahasiswa memahami prinsip umum SSPD
TIK:
Mahasiswa mampu menjelaskan konsep dan denisi dalam SSPD
Mahasiswa mampu menjelaskan mekanisme eksekusi SSPD
Mahasiswa mengert i dan dapat menggunakan pendekatan untukSSPD
Deskripsi Singkat:
Pada bab ini akan dibahas kerangka kerja umum untuk memod-
elkan sistem yang kompleks dengan menggunakan simulasi peri-st iwa di skrit Di diskuiskan blok pembangun dasae simulasi per is-t iwa diskrit : ent i tas dan atribut, akt ivitas dan peri st iwa, keadaan
Bahan Bacaan:
26
8/9/2019 Simulasi Pemodelan
37/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 27
[1] J. Banks, et.al., D iscret e Event Syst em Simulat ion ,
3ed., Prent-Hall (Chap.3) [2] Law & Kelton, et.al., Sim ulati on M odeli ng & A naly sis ,
Mc. Graw-Hill Inc., Singapore (Chap.1)
8/9/2019 Simulasi Pemodelan
38/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 28
3.1 K onsep dan D eni si
Sistim:
Sekumpuilan entitas (misal orang dan mesin) yang berint eraksi
sat u sama lain dalam wakt u t ert enti untuk mencapai tujuan t er-tentu
Model:
Suatu represemt asi anst rak dari suatu sistem, biasanya mengan-dung hubungan strukt ura, logikal, atau mat ematis yang menggam-
barkan suatu sist im dari segi keadaan, ent it as, atr ibut , set s, proses,perist iwa, akt ivi tas dna delay
Keadaan sist im:
Kumpulan vari abel yang mengandung seluruh onformasi pentingintuk menggambarkan sistem setiap saat. Contoh Carhop Able-Baker (A ble-sibuk, Baker -sibuk, j umlah mobil yang menunggu).
Entit as:
Setiap obyek atau komponen dalam sist im yang memer lukan r ep-resentasi ekplisit dalam model.
At ribut:
Sifat-sifat dari entitas.
List :
Kumpulan entit as yang terkait, diurut menur ut gambaran logis.
Event:
Suatu kejadian sesaat yang mengubah keadaan sistem (seper t i ke-datangan atau keberangkan seorang customer).
Event notice:
8/9/2019 Simulasi Pemodelan
39/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 29
Rekord dari sebuah peri st iwa yang akan terjadi saat ini atau pada
waktu berikut nya, bersamaan dengan informasi pent ing yang terk itunt uk mengeksekusi perist iwa. Mi nimal, rekord mengandung jenis
perist iwa dan waktu perist iwa. Mi sal pada simulasi operasi air-por t, kita dapat mempunyai dua jenis peristiwa, t ake-o dan land-ing. Dengan dua perist iwa ini, sut au event notice yang mungkinmemilik bentuk sbb:.
Jenis peristiwa (mis. landing atau t ake-o )
Wakt u perist iwa (mis. 134)
Nomor penerbangan
Jenis pesawat (mis. Boeing 737-200, DC-10)
Jumlah penumpang dalam penerbangan (mis. 125) Point er ke informasi penerbangan lain
Pointer ke spesikasi pesawat
Pointer ke informasi crew
Event list:
Suatu dafat event not ices unt uk peri st iwa yang akan datang, di-urut menurut wakt u kejadian; biasa disebut sebagai fut ure eventlist (FEL).
Aktivitas:
Durasi wakt u dengan panj ang tert ent u, yang diketahui ket ika su-
atu peristiwa di mulai.
Catat an bahwa term wakt u t idak harus selalu pembacaan jam,bisa saja berupa suatu proses.
Misal take-o t ime: sebuah pesawat akan t ake-o dalam 3 menitsetelah mesin dihidupkan.
Delay:
Durasi waktu dengan panjang t idak dispesikasi dan didenisikan,yang tidak diketahui sampai akhir peristiwa.
Contoh delay cust omer pada antri an LIFO yang tergantung pada
kedatangan beri kut nya, sejak dari awal ant rian (contoh. proce-dure call stack).
Clock:
8/9/2019 Simulasi Pemodelan
40/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 30
Suatu vari abel yang merepresent asikan wakt u simulasi. Variabel
clock dapat t erpusat atau terdistribusi
3.2 T im e in Sim ulat ion
Pada suat u simulasi terkait dua notasi waktu:
simulation time waktu pada clock simulasi waktu virt ualdalam dunia simulasi
run t ime lama waktu prosessor yang dikonsumsi
Kit a memerlukan run times sekecil mungkin unut memperoleh suatu hasildalam kerangka sumber daya yang t ersedia.
Akan tetapi, waktu simulasi lebih penting jika dipandang dari segi hasildan bagaiman simulasi t ersebut diorganisasi.
event t ime: simulation t ime dimana sebuah peri st iwa (event)terjadi
Teknik-teknik mengubah waktu pada clock simulasi:
xed t ime increment t ime sli cing periodic scan
variable t ime increment event scan
3.3 A l gor i t m a U m u m
3.3.1 Eksekut if Simulasi Sink ron
Algorima umum:
wh i l e s i mu l a t i o n t i me n o t a t e n d
i n c r e me n t t i me b y p r e d e t e r mi n e d u n i t
i f e v e n t s o c c u r r e d d u r i n g t i me i n t e r v a ls i mu l a t e t h o s e e v e n t s
Bat asan-batasan:
Perist iwa (event) dieksekusi pada akhir interval, bukan pada wakt upresisi t ert ent u
Beberapa interval bisa saja bukan perist iwa (events)
8/9/2019 Simulasi Pemodelan
41/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 31
3.3.2 Eksekut if Event -Scanning
Algoritma umum:
wh i l e e v e n t l i s t n o t e mp t y a n d s i mu l a t i o n t i me n o t a t e n d
g e t u n s i mu l a t e d e v e n t wi t h e a r l i e s t t i me
a d v a n c e s i mu l a t i o n c l o c k t o t i me o f e v e n t
s i mu l a t e t h e e v e n t
Baik t eknik sinkron maupun event -scanning mensimulasi paralelisme proses-
proses.
3.4 M ekani sme Eksek usi SSPD
Operasional, suatu SPD merupakan urut an kronologi yang nondecr easingdari kejadian-kejadian peri st iwa (event occurrences).
event recor d: pasangan event dengan waktu.
fut ure event l ist (FEL) : sebuah daft ar yang diurut menurut
waktu simulasi yang nondecreasing
event (l ist ) dri ven simulat ion: simulasi dimana waktu dit a-
mbahkan ke waktu dimana event record (dari event li st) p ertamadilaksanakan
Persyaratan pendukung SPD:
memelihara fut ure event l ist
enable event record creation dan insert ion into dan delet ion darievent list
memelihara clock simulasi
menyediakan uti lit as untuk membangkit kan bil angan acak daridistribusi probabilitas
Bagaimana sebuah t ipikal SSPD dieksekusi? Untuk menggambarkanproses ini, kit a akan menggunakan sebuah contoh: simulasi airport (t ake-o dan landing) dengan satu landasan pacu (run way).
1. Persit iwa-peri st iwa yang mungkin: landing-requst, landing, landing-complete, take-o-request, take-o, t ake-o-complete, idle.
8/9/2019 Simulasi Pemodelan
42/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 32
2. Keadaan awal simulasi di- set .
Set runway menjadi idle.
No landing atau take-o terjadi.
Clock simulasi adalah nol.
Landing-request pert ama dijadual pada waktu 3; t ake-o-requestpertam dijadualkan pada waktu 5.
3. Pada moment ini, FEL memili k dua event not ices, landing-request pada3 dan t ake-o-r equest pada 5.
4. Baik landing maupun t ake-o berlangsung 3 menit .
5. Mengambil event not ice pert ama dari FEL , memprosesnya (perist iwalanding-request ). Pemrosesan event not ice biasanya menyert akan ak-
t ivit as pemrograman yang t erkait dengan apli kasi-apli kasi. Contoh,
Set run way menjadi sibuk sehingga tidak ada landing dan take-o
lainnya berlangsung.
Bangkitkan event not ice beri kut dengan t ipe yang sama (landing-
request ). Waktu dari peri st iwa berikut di tentukan baik melalui in-terval yang x at au melalui pembangkit an bil angan acak. Asum-
sikan wakt u adalah 4. Event not ice baru ini dimasukan ke FEL,sebelum event notice kedua dari take-o pada saat 5!
Bangkit kan event not ice landing-complete pada waktu 6. Ma-
sukan ke dalam FEL
Kumpulkan informasi: berapa penumpang dalam penerbangan,nomor penerbangan dll.
6. Ambil event not ice beri kut. Pada saat ini, landing-request lain pada
wakt u 4. Tetapi runway sibuk. Sehingga kit a harus meletakkan eventnotice ini ke ant ri an t unggu untuk runway. (Catatan bahawa kita t idak
meletakkan event not ice ini kembali ke FEL dalam hal ini .)
7. Ambil event not ice berikut , yaitu sebuah take-o-request event padawaktu 5. Runway masih sibuk. Let ak event ini ke antri an t unggu untukrunway.
8. Ambil event not ice beri kut , yait u sbuah landing-complete event padawakt u 6. Pemrosesan event ini:
8/9/2019 Simulasi Pemodelan
43/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 33
Set t he runway menjadi bebas.
Updating statist ik (yaitu.landing lain selesai).
Check apakah t erdapat air planes yang menunguu di ant ri an run-way. Jika ya, ambil event notice dari antrian t unggu dan mem-prosesnya. Pada contoh ini, event not ice pert ama dari antri antunggu adalah sebuah landing-request , wakt unya adalah 4. Wakt u
event aktual adalah 6. Pada saat pemrosesan event ini, sebuahlanding-complete event pada waktu 9 dimasukkan ke FEL.
9. Prosesini diulang sampao kondisi yang t elah dit etapkan dijumpai sepert i
total waktu simulasi dicapai, atau total jumlah landing, take-o dica-
pai.
10. Setiap kal i sebuah event not ice diproses, nilai CLOCK diset menjadinil ai waktu event. Hal ini biasa disebut simulat ion clock, atau wakt usimulasi.
11. Met ode pembangkit an event berikut pada saat pemrosesan sebuah eventsaat ini dengan t ipe yang sma biasa disebut bootstrapping.
12. Events yang muncul dalam FEL disebut events ut ama. Yang lainnua
disebut events kondisional sepert i event lading dan take-o, yan t idakmuncul dalam FEL.
13. Cara lain yang mungkin untuk membangkit kan event s utama adalah
pert ukaran suatu keadaan. Contoh, air port mungkin shut down se-cara acak/ kebet ulan. Selain itu ia beroperasi nomral. Untuk mensim-ulasi fakta ini, kit a dapat menjadualkan suat u end-of-normal event
untuk waktu yang akan datang. Jika wakt u t ersebut dicapai, airportmenj adi shut -down. Pada saat pemrosesan end-of-normal event , seu-at u end-of-shut-down event harus dibangkitkan pada waktu b erikut .
3.5 Pendekat an-Pend ekat an dalam SSP D
Bagaimana menggambarkan sebuah simulasi, atau dari sudut pandang mana
mengamati sebuah simulasi? Terdapat beberapa mode-mode populer, danbiasa disebut world views / pendekatan umum.
8/9/2019 Simulasi Pemodelan
44/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 34
3.5.1 Pendekat an event -scheduli ng
Kita memandang simulasi sebagai urutan peristiwa terjadual menurut wak-tunya. Simulasi diproses menurut urutan snap-shots dari sistim. Set iapsnap-shot dipicu oleh sebuah peristiwa dari event list .
Hanya satu sanp-shot dipert ahankan dalam memori komput er. Suat usnap-shot baru dapat di-deri ved hanya dari snap-shot sebelumnya, nilai-
nil ai variable acak terbaru dibangkit kan, dan logika peri st iwa. snap-shotsyang lalu diabaikan pada saat pert ambahan clock. Snap-shot saat ini harusmemuat seluruh informasi penting untuk melanjutkan simulation.
Karakt erik pendekatan event -scheduling:
Blok pembangun dasar adalah event Segmen kode program model terdiri dari rut in-rut in event yang
menunggu untuk dieksekusi
Rutin event terkait dengan setiap j enis event melakukan operasiyang diperlukan unutk jenis-jenis t ersebut
Eksekuti f simulasi bergerak dar i event ke event yang mengeksekusirutin event yang terkait
3.5.2 Pendekat an pr ocess-int er act ion
Pada pendekatan ini, simulasi dianggap sebagai kumpulan int erkasi diant araproses-proses. Hal ini mir ip dengan paradigma pemrograman berbbasis obyek.Proses-proses beri nterkasi dengan yang lain melalui pesan-pesan.
Li hat gambar 3.4 pada hal. 69 [1] sebagai contoh. Dari gambaran ini,dua proses berinterkasi sat u dengan yang lainnya.
Kadang paket simulasi tert entu mendukung gambaran ini. Paket sim-ulasi ini memper hatikan t ime advancing issues bagi programmer. Pem-
rogramman pada bahasa t ingkat t inggi general purpose sulit menggunakangambaran pr ocess-interaction, kar ena proses ini cukup r umit bagi para pro-grammer unt uk menspesikasikan secara detail seluruhnya.
Karakteristik pendekatan ini:
Blok pembangun dasar adalah proses
Sistem terdiri dari kumpulan proses yang beri nterkasi
Kode program model untuk set iap proses memuat operasi yang
berlangsung selama waktu hidupnya (lifetime)
Urutan event sistem terdiri dari penggabungan urutan-urutan un-tuk seluruh proses
8/9/2019 Simulasi Pemodelan
45/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 35
Future event li st t eri diri dari urutan node-node event (atau no-
t ices) Setiap node event mengindikasikan event t ime dan proses yang
terkaitnya
Eksekuti f simulasi melakukan t ugas-tugas berikut :
menempatkan proses-prosespada tit ik waktu tert entu kedalam
list
membuang proses-proses dari event l ist
mengaktivasi proses yang terkait dengan event node berikutdari event li st
rescheduling proses-prose di event li st Tipikal, obyek proses dapat berada di salah satu dari beberpa
keadaa:
act ive proses yang sedang dieksekusi
Hanya ada satu proses yang demikian dalam suatu sistem.
ready proses di event list, menunggu untuk akt ivasi padawaktu tertentu
idle (blocked) proses tidak ada di event li st , tapi el igibleuntuk di-reactivated oleh beberapa entitas lain
terminated prosestelah menyelesaikan urut tan aksinya, t idaklagi berada di event li st , dan t idak dapat di-react ivated
3.5.3 Pendekat an act ivi t y-scanning
Dengan pendekatan act ivity-scanning, seorang modeler t er konsentrasi padaakti vit assebuah model dan kondisi-kondisi yang memungkinakna sebuha ak-t ivit as dimulai. Pada setiap penambahan clock, kondisi set iap aktivit as di-
check dan j ika kondisi adalah benar, akti vit as yang t er kait dimulai. Sebagaicontoh lihat gambar 3.4 pada hal 69 [1].
Karakteristik pendekatan ini:
Blok dasar pembangun adalah aktivitas
Segmeb kode program model terdiri dari ur utan aktivit as-alt ivit as(oper asi-operasi) yang menunggu unt uk dieksekusi
Kondisi urutan akt ivias harus dipenuhi sebelum dapat dieksekusi
Eksekuti f simulasi bergerak dar i event ke event yang mengeksekusiurutan-urut an aktivit as tersebut yang kondisinya terpeenuhi
8/9/2019 Simulasi Pemodelan
46/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 36
3.6 Cont oh-Cont oh lain
3.6.1 Cont oh 3.1: A ble and Baker , ver si r ev isi.
Keadaan sist im:
LQ (t): jumlah mobil yang menunggu untuk dilayani pada saat t.
LA (t): variabel boolean yang menunjukan Able idle atau sibukpada waktu t .
LB (t ): var iabel boolean yang menunjukan Able idle atau sibukpada waktu t .
Entit as: mobil dan dua pelayan.
Peristiwa (events):
Peristiwa kedatangan
Perisitiwa layanan selesai oleh Able.
Perisit iwa layanan selesai oleh Baker.
Aktivitas:
Wakt u antar kedatangan Waktu layanan Able
Wakt u l ayanan Baker
Delay: waktu tunggu customer di ant ri an sampai Able atau Bakerbebas.
3.6.2 Cont oh 3.2: A nt r ian single-channel ( Super mar -
ket check-out count er ).
Cont oh suatu simulasi event-scheduling, suatu t abel simulasi digunakan un-tuk me-rekord snap-shots sist em secara suksesif ket ika wakt u bert ambah.
Tabel simulasi l ihat table 3.1 pada hal 72 [1]
Keadaan sist em:
(L Q( t); L S(t)) diman LQ (t) adalah jumlah customer pada baris tunggu,dan LS(t) jumlah cust omers dilayani pada saat t .
8/9/2019 Simulasi Pemodelan
47/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 37
Entit as:
Pelayan dan customers.
Peristiwa:
Kedatangan (A)
Keberangkatan (D)
Stopping event (E), dijadualkan terjadi pada waktu 60.
Event notices:
(A; t) menunjukan sebuah peri st iwa kedatangan terj adi pada wakt uyang kan datang t .
(D; t ) menunjukan sebuah perist iwa keberangkatan t erj adi padawaktu yang kan datang t.
(E; 60) menunjukan stopping event terjadi pada waktu yang kandatang 60.
Aktiviras:
Wakt u antar kedatangan, Tabel 2.6 hal 28 [1].
Wakt u pelayanan, Tabel 2.7 hal 28 [1].
3.6.3 Cont oh 3.4: Sim ul asi check- out count er , lanj ut an
Kelanjutan dari contoh 3.3, kita akan mengumpulkan beberapa stat ist ik,mean waktu respon dan mean bagian customer yang menghabiskan wakt u 4
menit atau lebih dalam sistim (waktu dalam sistim termasuk waktu tunggudan waktu pelayanan).
mean waktu repson =
n
Xi = 0
Depaturei Arrivei
j umlah total pelanggan
mean bagian customers yang menghabis wakt u 4 menit at au l ebih =
Jumlah pelanggan yang menunggu 4 mnt atau ebihj umlah total pelanggan
8/9/2019 Simulasi Pemodelan
48/135
BAB 3. PRINSIP UMUM SSPD (K ULI AH 3) 38
3.6.4 Cont oh 3.5: M asalah dump t ruck.
Enam dump tr ucks mengangkut batubara mulai dari pint u masuk t am-bang kecil ke railroad.
Setiap truck diisi dengan satu atau dua beban.
Setelah pemuatan, truck segera bergerak ke timbangan sesegera mungkin.
Dua beban dan timbangan memiliki antrian FCFS.
Waktu akt ual pemuatan dan penimbangan diabaikan.
Stelah dit imbang, t ruck dmundur dan akan kembali ke bar is yang sama
untuk memperoleh smore coal . Proses ini berulang.
Model memiliki komponen-komponen berikut.
Keadaan sist im: [LQ (t); L(t); wQ (t ); w(t )]
LQ (t) = jumlah t rucks pada antrian pemuatan
L(t) = jumlah t rucks pada pemuatan (0, 1, 2)
wQ(t ) = jumlah t ruck pada antrian t unggu t imbangan.
w(t) = jumlah t ruck yang dit imbang (0, atau 1 ).
Event notices
(AL Q; t ; D Ti )dump t r uck i tiba di antrian pemuatan
(EL; t ; DTi ) dump truck i mengakhiri pemuatan E L pada saat t .
(EW;t;DTi ) dump truck i mengakhiri penimbangan pada saat t .
Entit as: enam dump trucks (DT1; D T2;:::;DT6)
List s: antrian pemut an dan antiran t imbangan, keduanya FIFOt .
Akti vitas: Waktu pemuatan, wakt u penimbangan, dan waktu per-
jalanan.
Delay: Delay pada ant rian pemuat, dan ant rian t imbangan.
Lihat tabel 3.6 [1], tabel simulasi operasi dump truck
8/9/2019 Simulasi Pemodelan
49/135
Bab 4
Bahasa-Bahasa Simulasi
As we saw in t he previous chapters, computer simulation is essentially anexperi mental technique, used for st udying a wide variety of problems. T heabstract model of t he system being simulated takes the form of a computer
program , and t he behavior is given by t he output , as the program runs. Aprogrammer who has to perform simulat ion frequently would be bet ter olearning a higher-level special purpose language , which facilit ates simulat ionprogramming.
Unfort unately there is a bewildering var iety of simulation languages .But there is no single language which can be t ermed as t he best , mostuseful , or universally avai lable. Most of these languages are suit ed for
narrow class of appli cat ions. In addit ion to t he nat ure of a system beingsimulated , the avai labili ty of t he hardware and the software also dictatesthe choice of a l anguage.
4.1 B ahasa Si mulasi K ont iny u dan D iskr it
As discussed earlier , simulat ion is div ided in to two cat egories: discrete
and continuous . Accordingly , most of the simulation languages also fal l into one of t he two classes. Continuous simulation l anguages are designed forsimulating conti nuousmodels and discr et e simulat ion languages are designed
for discrete models. A few languages have been designed which are suitablefor both discret e as well as continuous models.
4.2 B ahasa Si mulasi K ont iny u
Before the digital computers came in to widespread use, analog computerswere being used for simulating conti nuous dynamic systems. The system
39
8/9/2019 Simulasi Pemodelan
50/135
BAB 4. BAHA SA-BAHASA SIMULASI 40
being simulated wasgenerally engineering systems , descri bed by dier ent ial
equations, for which analyt ic solut ions were hard to obtain. As soon as digitalcomputers arrived, some of it s advantages (such asgreater accuracy, freedom
from scaling ) over t he analog computers become obvious. T he continuoussimulation languages are divided in to two:
Bl ock-structured simulation l anguages
Expression-based languages.
4.3 Bahasa Si mulasi Sist im D iskr it .
Alt hough many small as well as large programs for simulat ing discret e sys-tems have been and being wri t ten in general purpose languages , such as
FORT RAN, and C , languages designed specially for simulat ing discrete sys-tems are popular. T hese languages oer many convenient facili t ies such asautomatic generation of streams of pseudo-random numbers for any desired
stat ist ical distri but ion; automatic dat a collect ion; their st at istical analysisand report generat ion; good diagnost ics; automatic handl ing of queues; et c.
Discret e system simulation languages are highly problem-ori ented. Alanguage very natural and convenient for simulat ing one class of discrete
system may not be so natural for another class of syst ems.
Every discret e system simulation languagemust provide the concept s andstatements for
1. representing t he st ate of a system at a single point in t ime(static mod-eling)
2. moving a system from stat e to state (dynamic modeling)
3. performing relevant chores, such as , random number generat ion, dataanalyses, and report generation.
Based on the above point of view , discrete syst em simulation languagescan be classied into three main cat egories.
event-oriented languages
activity-oriented languages
process-oriented languages
8/9/2019 Simulasi Pemodelan
51/135
BAB 4. BAHA SA-BAHASA SIMULASI 41
4.3.1 Event -or ient ed languages.
In an event oriented l anguage each event is represented by an instantaneousoccurrence in simulated t ime and must be scheduled to occur (in advance)when a proper set of condit ions exist s. The state of the system changes atthe occurrence of an event. The language in t his category are used t o modelprocesses that are characteri zed by a large number of entit ies. The two well
known of this group of languages are SIM SCRIPT and GASP.
4.3.2 A ctivi t y -or ient ed languages.
In an act ivi ty oriented language t he discrete occurrences are not scheduled
in advance. They are created by a program which cont ains descr ipt ions ofcondit ions under which any act ivit y can t ake place. T hese condit ions arescanned before each simulati on t ime advance and i f all necessary conditionsare met , t he proper act ions are taken. An act ivi ty-ori ented language should
be considered for use if the model has the fol lowing characterist ics :
the model uses a next event or vari able t ime increment type of t iming
the process simulated is highly int eract ive but involves a xed numberof enti t ies wit h events happening irregularly
event occurrence is cont rolled by cyclic scanning act ivity programs.
An example for this type of l anguage is CSL .
4.3.3 P ro cess-or ient ed lan guages.
A key feature of a pr ocess orientat ion is that of a single process routine ,com-posed of a number of segment s descri bing a sequence of act ivit ies. Each seg-ment behaves as an independently contr olled program. On receivi ng cont rol,
only the statements composing the segments are executed, and then con-trol is returned. Thus the model is dened as a seri es of occurr ences(call ed
processes) and an example for this type of language is SIMUL A.Transaction-ow oriented l anguage: Transaction-ow oriented l anguages
form a subcategory of process-oriented l anguages except that the ow of ac-t ivit ies passes t hrough specially dened blocks. The system model is repre-sented by a ow chart consisting of t he language blocks. T heprogram creates
transactions , executes them in the blocks and moves them along the owchart . Writ ing a program is reduced t o specify ing a ow-chart represent at ion. T he best known l anguage in t his class is GPSS.
8/9/2019 Simulasi Pemodelan
52/135
BAB 4. BAHA SA-BAHASA SIMULASI 42
4.4 SI M SCR I P T .
SIM SCRIPT was developed by RAND corporation in t he early 1960 s andwas rst released in 1962. It has undergone many revisions and improve-ment s, including t he development of SIMSCRIPT I.5 . A completely new
version SIMSCRIPT II was released by t he RAND corporat ion in 1968. T helatest version is SIMSCRIPT II .5, which was released i n 1972.
Thel anguage is very FORT RAN likein appearance; in fact init ial ly it wasimplement ed wit h FORTRAN as an i ntermediate language. SIMSCRIPT II
( I I .5) can be viewed as a general programming language wit h extra featuresfor discret e-event simulation. Because of this general power and it s FOR-TRA N base , SIMSCRIPT has been widely implement ed and used discrete
simulation language. I t has been i mplemented on IBM 7090, 7094, 360,370seri es and many others.
Level 1 of SI MSCRIPT II is comparable to a very simple algorit hmic
language such as BA SIC . An inexperienced user would appreciate suchfeatures as : format free data and ease of programming , simpliedoutput opt ions and automatic mode conversion.
For example consider, t he fol lowing simple statements in SIMSCRIPTII.5
RE AD X , Y A ND N PRI NT 1 L I NE WI TH X , X / Y , N * * 2 AS F OL L OWS
X = * * . * , Y= * * . * , X / Y= * * . * , N S QUARED = * * *
The rst st atement reads the values of t he three vari ables X, Y, andN . The second statement evaluates X , Y , X/ Y and N2 and displaytheir values.
Level 2 of SIMSCRIPT II.5 , provides addit ional facil it ies in the area ofdata structures. The language allows const ruction of piecemeal arrays(
eg; two-dimensional arrays with dierent number of elements in eachrow.)and complex tree structures.
Level 3 provides ALGOL li ke statements . T he rst three levels viewSIM SCRIPT II as an algebraic procedural language.
Level 4 gives SIMSCRIPT I I a power t o dene and manipulate ent i-t ies, attribut es and sets. An entit y is a program element similar t o asubscript ed vari able. Individual ent it ies have values , called at tribut es,
8/9/2019 Simulasi Pemodelan
53/135
BAB 4. BAHA SA-BAHASA SIMULASI 43
which dene a par t icular stat e of the ent ity. Attribut es are named, not
numbered. For example, we may dene EMPLOYEE t o be an entityand AGE, SALA RY as attri butes of EMPLOYEE.
Ent it ies can be of two types:permanent( specied for all t imeof program execut ion) and t emporary(specied
dynamically as the program proceeds) . Temporary ent it ies are physically
created and destroyed t hrough special stat ement s . Permanent enti t ies havetheir attributes st ored as arrays. Entit ies may be declared as temporary orpermanent in the PREAMBLE of a SIMSCRIPT II program.
SIMSCRIPT II requires a model to be specied only in terms of separateevents, and scheduling an event means li ng an event notice in the event
set .Ex; SCHEDULE A DEPARTURE AT TI ME.V+ 8.5
Schedules an event called DEPARTURE to occur at t he current simulatedtime, given by t he variable TI ME.V, plus 8.5 t ime unit s.
SIMSCRIPT I I provides eleven functions for gener at ing pseudo-randomsamples from the following st atist ical dist ributi ons: Uniform, Normal, Pois-
son, exponent ial, beta , Erlang, lognormal , binomial, gamma, Weibull, anduniformly distributed integers.
Two st atements , ACCUMULATE and TALLY , are used in thePREAM-PLE to instruct the compiler to generate automatic dat a collect ion and analy-
sis st atement s at appropri ate places in the program.Example: Program for simulation of single-server queueusingSIMSCRIPT
II.5SIMSCRIPT I I .5 programsstart with a preamble that descri bes the com-
ponents of the model. T hese are :
(a) processes
(b) resources
(c) variables and statist ics gatheri ng vari ables.
Thepreamble servesa double purpose . Declaring all of t hecomponents of
the program causes the SIMSCRIPT II .5 compiler to check each componentmentioned in the preamble for consistent and correct usage in t he programcode. T he system keywords are wri t ten in lower or mixed case and userdeclared variables in upper case .
Not e that , once t he t wo processes are declared , the preamble adds an
att ribute ,CUST.MEAN.IT , to t he CUST OMER.GENERATI OR process and de-
nes it as a real variable.
8/9/2019 Simulasi Pemodelan
54/135
BAB 4. BAHA SA-BAHASA SIMULASI 44
Resources are a built-in capabil it y in SIMSCRIPT II.5 , so it is only
necessary to declare them.Aft er t he processes and resources are declared i n the preamble , the pro-
gram var iables are also declared . Note t hat the keywords Tally and Accumulate are also declared in t he preamble. The Accumulate keyword isthe same as the Tally keyword except that i t weighs it s aver age wit h respectto t he simulation t ime which has elapsed.
The Tally keyword species that TI ME.IN.SYSTEM will be monit ored.Whenever an assignment is made t o t he vari able T IME.IN.SYSTEM, stat is-t ics will be automatically gat hered. The part icular stat ist ic that wil l be keptin t his case is t he average of all assignments t o t his variable. T he average
will be called MEAN.TI ME.IN.SYSTEM.
N.Q.SERVER is one of the attribut es of the SERVER resource that isautomatically generated and managed by the syst em to keep t rack of theSERVER resource s queue stat ist ics. M AX.QUEUE is the highest number
ever wait ing i n the queue for service.N.X.SERVER is an attri bute of SERVER resource, automatical ly gener-
ated by the syst em to keep track of resource util izat ion stat ist ics.
The program st art s executing in the Main sect ion where program vari-ables are init ial ized, processes created and act ivat ed and the simulat ion isstarted. Aft er one resource cal led SERVER is creat ed then one customergenerator process is created. Once the simulation has run it s course and
nished , the report generator is call ed and the program terminat es at theEnd st atement .The customer process code , i llustrates how readable SIMSCRIPT II .5
code helps the reader to understand a model.
First , a local variable called ARRIVAL.T IME is declared and used tonote the current simulation t ime which is t aken from the syst em variablecalled T IM E.V. The customer process then requested for on unit of SERVERresource. If one unit of resource is not available , the customer process
blocks and wait s for an indenit e t ime until the resource is available. Itthen continues to work statement, and , once nish wit h t he resource , thecustomer process rel inquishes it , computes st atist ics and t ermi nates.
The next part of the program, generates the inter arrival t ime from t heexponential distribut ion. The last part is t he report generator .
8/9/2019 Simulasi Pemodelan
55/135
BAB 4. BAHA SA-BAHASA SIMULASI 45
4.5 GP SS ( G ener al Pu rp ose Sim ul at ion Sys-
tem)
GPSS , one of t he earli est discrete simulation languages, was developed by
Georey Gordon and present ed in two papers i n 1961 and 1962. The rstrelease of this language was implemented on t he I BM 704, 709 and 7090 com-put ers. Since then improved and more powerful versions havebeen developedand implemented.
GPSS is suit ed for modeling t ra c and queueing systems well. A GPSSprogrammer does not writ e a program in the same sense as a SIMSCRIPTprogrammer does. Instead , he constructs a block diagram- a network of in-
terconnected blocks, each performing a special simulation -oriented function.Moving t hrough t he system of blocks are entit ies called transactions. Ex-amples of transactions are : cust omers, message, machine part s, vehicles, etc.Typical blocks are :
(a) GENERAT E, creates transactions
(b) QUEUE , creates a queue of transactions and maintains cert ainqueueing statist ics;
(c) TABULATE , tabulates the timeit took t het ransact ions to reachthat point from the t ime it entered t he simulated syst em
(d) TERMI NATE , destroys transactions and removes them from thesystem.
(e) ADVANCE , when t ransaction enters this block, an act ion t ime
is computed and added to t he current t ime t o produce a blockdeparture time.
Simple mathematical calculati ons can becarried out wit h t he use of vari-able statements. Unlike in SIM SCRIPT , there areno element ary mat hemat-
ical funct ions in GPSS, such as the trigonometr ic or logari thmic functions.GPSS can , however , generat e a number of basic random variates.
The latest release of GPSS/ H is version 2.0 . It added a oating point
clock, built - i n mat h funct ions , and built in random vari ate generators.
4.5.1 Single-Ser ver Queue Sim ulati on in GP SS/ H
In the foll owing g we can see t he GPSS block diagram for single server
queue simulation and aft er that we can see the GPSS program . Note thatthe program is a t ranslat ion of the block diagram together wit h addit ionaldenit ion and control st atement s.
8/9/2019 Simulasi Pemodelan
56/135
BAB 4. BAHA SA-BAHASA SIMULASI 46
In g , t he GENERAT E block represents the arr ival event, and also de-
notes the int er arrival t imes by t he specication RVEXPO(1,&!AT ).RVEXPO indicates random variable, exponentially distribut ed , the
1 indicates t he random number stream to use, and &1AT indicates t hatthe mean t ime for the exponential distri but ion comes from an ampervariable&1AT. Ampervari able have an & before them , these are dened as integeror real by control statements INTEGER and REAL.
The next block is a QUEUE wit h a dummy queue named SYSTI ME. Itshould be noted t hat the QUEUE block is not needed for queues to form i nGPSS/ H. This is just an anomaly of t he language. T he true purpose of theQUEUE block is thecommencement of data coll ect ion. By placing a QUEUE
block at the point that transactions ent er the system, and t he counter part
of theQUEUE block , theDEPART block, at thepoint that thetransactionscomplete their processing, t he response times will be aut omatically collected.The measure wil l be associated wit h t he dummy SYST IME. T he purpose of
the DEPART block i s to signal t he end of data coll ect ion.The next QUEUE block begins data collect ion for the queue before t he
cashier. This queue is given the name LINE. The cust omers may or may
not have to wait for t he cashier. At some time , t he customer captures thecashier as indicated by the SEI ZE block with the r esource given the nameCHECKOUT.( single unit resources call ed facil it ies are capt ured by a SEIZEblock, mult iple unit resources are captured by a STORE block). Once t his
capture begins, t he data collecti on for t he queue ends as represented by theDEPART block, with queue LINE indicated. The transact ions delay at thecashier is given by t heADVANCE block. RVNORM indicat es r andom vari-able , normally distributed . Again random number st ream 1 is being used,
the time for t he normal distr ibut ion i s given by t he ampervari able &MEAN, and it s standard deviation is given by t he ampervariable & STDEV,
Next t he customer gives up t he use of the faci lit y CHECKOUT wit ha RELEASE block.(for a mult iple unit resource , t he analogous block is
the RET URN block,) T he end of the dat a collect ion for response t imes isindicated by the DEPART block for t he dummy queue SYST IM E.
Next t here is a TEST block t hat checks to see if the t ime in t hesystem ,
M1 , is greater t han or equal to 4 minutes.( Note that M1 is a reserved wordin GPSS/ H). Thus , if t he customer has been in the system four minutes orlonger , add one to t he counter &COUNT in t he BLET ( for Block LET)block. I f not true , the escape route is to the block with t helabel T ER. T hatlabel appears before t he T ERMI NATE block whose purpose is the removal
of the t ransaction from the system. T he TERM INATE block has a value 1 indicat ing t hat one more customer is added t oward the limit ing value ,or transaction t o go .
8/9/2019 Simulasi Pemodelan
57/135
BAB 4. BAHA SA-BAHASA SIMULASI 47
Ther e are eleven blocks in this program. T he control st atement s t hat
begin wit h an * arecomments, someof which are used for spacing purposes.The control statement SIMULAT E tell s GPSS/ H to conduct a simulation.
If this control stat ement is omit ted, the model wi ll be compiled only. T heampervari ables are dened asi nteger or real by cont rol statements INTEGERand REAL. The four LET st atements provide data for t he simulat ion .
To insure that the model data is correct, and for the purpose of managing
dierent scenari os simulated , it is good pract iceto echo the input data. Thisisaccomplished wit h a PUTPIC( for put picture ) control stat ement. I t saysto put t he 5 l ines that follow in a le with the name OUT and that the datagoing in to t hat le is given by the four ampervariables indicated. There are
ve lines , t he last of which is just a blank to separate it from addit ional
information t hat will be writ ten t o the le OUT.The rst out put in t he parenthesized list is t he server ut i lizat ion.
FR(CHECKOUT) / 1000 Indicates that t he fract ional ut i lizat ion of t hefacility CHECKOUT.
QM(LI NE) is the maximum value in t he queue LI NE during the sim-ulation.
QT(SYSTI ME) is t he aver age time in t he queue SYSTIM E.
&COUNT/ N(T ER) is t he number t hat had a response t ime of four ormore minut es divided by the number of cust omers t hat went t hrough
the block wit h label TER , or N(T ER) .
AC1 is the clock t ime, whose last value gives the length of the simula-tion.
4.6 SI M U L A (SI M U lat ion L anguage)
SIM ULA 67 i s a true extension of A LGOL 60, and is t her efore a generalpurposeprogramming language, despite it s name. T helanguage was designed
to provide simulati on faci lit ies wit hout losing advantage of a powerful generalpurpose language. Just as GPSS and SIMSCRIPT are the two most popularsimulation languages in t he USA, SIMUL A appears to be most popular inEurope. The instructions have t he form of ALGOL statements, and t hereforeit is necessary that the user has some knowledge of ALGOL.
The basic idea behind SIMUL A is add t o AL GOL the concept of a col lec-t ion of programs , cal led processes , conceptually operat ing in parallel . T heprocesses perform their operat ion in groups called active phases. A process
8/9/2019 Simulasi Pemodelan
58/135
BAB 4. BAHA SA-BAHASA SIMULASI 48
carries data and executes act ion. The operation rule species t he actions to
be taken.In a SIM ULA program, the denit ion of a process class is accompli shed
in a block, which is SIM ULA s fundamental way for program decomposit ion.A block i s an independent ,self contained part of t he program.
SIMULA 67 provides 10 random number procedures for drawing sam-ples from dierent pr obabi lit y dist ribut ions, including uniform, exponent ial,
normal, Poisson , and Erlang. Al though there is no automatic collect ion ofstat ist ics in SIMUL A 67, a procedure accum is available to accumulate thesimulated t ime int egral of any variable desired.
4.7 Fact or s in select ion of a discret e sy st emsimulation language.
The cr it eria t o select a discrete system simulation language can be groupedas
Language generality and programming power:
The language should be able t o handle a wide area of applicat ions. This
implies that i t should oer st rong algorit hmic capabil it ies , as well as ,special simulat ion oriented features.
Ease of use:
Ease of use includes the natural t r anslati on of t he system under study
to a corresponding comput er program, reduction in debugging eort ,convenient documentation and exibl e design of experi ments.
M achine e ciency:
Machine e ciency is t o a large extent a property of t he quali ty of com-
pil er implementat ion, which i n t urn depends on the language struct ureand content. T he two measures of machine e ciency are : executi ontime and memory requirement.
A vailabilit y:
The language must be available and supported on t he most import anttype of computers in order to be useful.
Salient features ( both good and bad) of the three languages.
GPSS.
8/9/2019 Simulasi Pemodelan
59/135
BAB 4. BAHA SA-BAHASA SIMULASI 49
1. restricted to simple queueing problems ;
2. poor computational facili t ies;
3. inexible input-output;
4. no language ext ension possible;
5. easy to learn and use;
6. good debugging facili t ies; and
7. machine e ciency i s oft en poor since GPSS is an int er pretative
system.
SIM UL A.
(a) algori thmic capabili t ies comparable to AL GOL;
(b) col lect ing stat istical data over the syst em behavior quit e adequate
but inferior to SIMSCRIPT
(c) input-output facili t ies comparable to SIMSCRIPT
(d) language extension possibi lit iesallow ust o construct special problem-oriented languages;
(e) SIMUL A is a complex l anguage , but once mast ered it is easy t ouse;
(f ) Very good debugging features;
(g) Good program readability and structuring;
(h) Possibil it ies for experimental design comparable to SI MSCRIPT
SIM SCR IPT .
(a) machine-independent general -purpose simulation language;
(b) algori thmic capabili t ies comparable to those of ALGOL or PL/ I
(c) simulat ion co
Recommended