Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

1 Simulasi Discrete-Event Catatan diambil dari “Simulation Modeling and Analysis” by A. Law and W. Kelton, Third edition, McGraw Hill, 2000.

Presentasi serupa


Presentasi berjudul: "1 Simulasi Discrete-Event Catatan diambil dari “Simulation Modeling and Analysis” by A. Law and W. Kelton, Third edition, McGraw Hill, 2000."— Transcript presentasi:

1 1 Simulasi Discrete-Event Catatan diambil dari “Simulation Modeling and Analysis” by A. Law and W. Kelton, Third edition, McGraw Hill, 2000.

2 2 Tujuan r Mempelajari dasar simulasi discrete-event r Fokus pada simple single-server service center. Contoh: m Pasar swalayan: pembeli, kasir m Bandara: landasan, pesawat ServerPelanggan antri Pelanggan datang Pelanggan pergi Pelanggan sedang dilayani

3 3 Apa yang dimaksud dengan Simulasi Discrete- Event (DES)? r Pemodelan sistem dalam perubahannya terhadap waktu dengan representasi perubahan variabel status secara instan pada titik waktu waktu yang terpisah. m Lebih tepat lagi, status hanya dapat berubah pada sejumlah titik waktu yang dapat dihitung. m Titik-titik waktu ini adalah saat ketika events terjadi. r Apa yang dimaksud dengan event? Kejadian secara instan yang dapat merubah status sistem. m Kedatangan pelanggan m Selesainya pelayanan (dan kepergian) pelanggan m Akhir simulasi ( event “palsu”)

4 4 Single-Server Service Center r Pengukuran kinerja yang diperlukan: m Waktu tunggu pelanggan rata-rata m Jumlah pelanggan antri rata-rata m Utilisasi server rata-rata r Bagaimana kita mensimulasi sistem ini dan melakukan pengukuran? m Harus mensimulasi “waktu” … Server Pelanggan antri Kedatangan pelanggan Kepergian pelanggan Pelanggan dilayani

5 5 Mekanisme Time Advance r Simulation clock: variabel yang menyimpan nilai waktu terkini (simulasi) pada model m Satuan waktu harus ditentukan, dan harus konsisten. m Biasanya tidak ada hubungan antara waktu simulasi dan waktu (riil) yang diperlukan untuk menjalankan model pada komputer. r Dua pendekatan untuk time advance m Fixed-increment time advance m Next-event time advance

6 6 Fixed-Increment Time Advance r Event terjadi pada inkremen yang tetap. r Event yang terjadi antara inkremen waktu harus dipindah ke batas inkremen. r Sederhana untuk diimplementasikan, tetapi bukan merupakan realisasi yang akurat dari terjadinya event. Time ΔtΔt 03Δt3Δt 2Δt2Δt 4Δt4Δt 5Δt5Δt 6Δt6Δt e0e0 e1e1 e2e2

7 7 Next-event Time Advance r Inisialisai simulation clock menjadi 0 r Tentukan waktu terjadinya event – event list r Clock maju ke event berikutnya (yang paling dekat). Selanjutnya dilakukan eksekusi m Eksekusi event bisa melibatkan update event list r Terus berlanjut sampai aturan penghentian terpenuhi (harus ditentukan secara eksplisit) r Clock “lompat” dari waktu satu event ke waktu event berikutnya, dan tidak “ada” untuk waktu di antara event yang berturutan … periode tidak aktif diabaikan

8 8 Next-event time-Advance (lanjutan) r Pelajari contoh single-server service center berikut ini t i = waktu kedatangan pelanggan ke-i (t 0 = 0) A i = t i – t i-1 = waktu antara kedatangan pelanggan ke (i-1) dan ke-i S i = waktu untuk melayani pelanggan ke-i D i = delay di antrian yang dialami oleh pelanggan ke-i C i = t i + D i + S i = waktu pelanggan ke-i selesai dilayani, kemudian pergi

9 9 Cara penulisan program next-event r Tentukan event dan pahami apa yang terjadi ketika event tersebut berlangsung r Buat event dan event list yang urut waktu r Berdasarkan list yang urut, kita harus menjadwalkan event r Catat informasi yang diperlukan selama simulasi berlangsung r Akhirnya, buat report ketika simulasi selesai

10 10 Komponen Program DES r Simulation clock – nilai terkini dari waktu simulasi. r Status sistem – variabel untuk mendeskripsikan status m Status server, jumlah pada antrian, waktu kedatangan, dst. r Event list – waktu untuk setiap jenis event r Pencacah Statistik – untuk akumulasi pengukuran kinerja m Waktu tunggu di antrian, utilisasi server, …

11 11 Komponen Program DES (lanjutan) r Rutin inisialisasi m Mulai simulasi pada waktu 0 r Rutin Timing m Menentukan waktu dan jenis event berikutnya; memajukan clock r Rutin event m Melaksanakan logika setiap jenis event r Rutin Library m Rutin utility untuk membangkitkan random variates, dll. r Report generator r Program utama m Menggabungkan semua rutin, dan menjalankannya dengan urutan yang benar

12 12 Organisasi Program DES Start Rutin Utama Rutin Event Simulasi selesai? Report Generator Rutin Inisialisasi Rutin Timing Rutin Library Ya Tidak Stop

13 13 Alur Program DES Start Rutin Utama Rutin Inisialisasi 1. Set clock = 0 2. Inisialisasi status & pencacah 3. Inisialisasi event list 4. Kembali ke program utama

14 14 Alur Program DES Rutin utama Rutin timing 1. Tentukan jenis event berikutnya, i 2. Majukan simulation clock 3. Kembali ke program utama

15 15 Alur Program DES Event routine iLibrary Routine 1. update system state 2. update counters 3. generate future events & add them to the event list Rutin utama

16 16 Alur Program DES Rutin utama Rutin event Simulasi selesai? Rutin timing Tidak Kembali ke program utama; Invoke timing routine

17 17 Simulasi manual untuk Single Server Service Center r Waktu antar kedatangan (semua waktu dalam satuan menit): 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … r Waktu layanan: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, … r Diinginkan n = 6 delay pada antrian r Simulasi “Manual”: m Tampilkan variabel sistem dan status, clock, event list, pencacah statistik … seluruhnya setelah eksekusi setiap event m Gunakan list waktu antar kedatangan dan waktu layanan di atas untuk “menjalankan” simulasi m Hentikan ketika jumlah delay mencapai n = 6, hitung pengukuran kinerja output.

18 18 Pengukuran Kinerja r Delay rata-rata “ekspektasi” pada antrian (tidak termasuk waktu layanan) dari n pelanggan yang telah selesai antri r Jumlah pelanggan rata-rata ekspektasi pada antrian (tidak termasuk yang sedang dilayani) m Rata-rata waktu kontinu r Utilisasi ekspektasi (perbandingan dengan waktu kerja) server m Rata-rata waktu kontinu

19 19 Waktu = 0 Status yang ditunjukkan adalah setelah semua perubahan dilakukan untuk setiap kasus … Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

20 20 Waktu = 0.4 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

21 21 Waktu = 1.6 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

22 22 Waktu = 2.1 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

23 23 Waktu = 2.4 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

24 24 Waktu = 3.1 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

25 25 Waktu = 3.3 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

26 26 Waktu = 3.8 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

27 27 Waktu = 4.0 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

28 28 Waktu = 4.9 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

29 29 Waktu = 5.6 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

30 30 Waktu = 5.8 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

31 31 Waktu = 7.2 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, …

32 32 Waktu = 8.6 Interarrival times: 0.4, 1.2, 0.5, 1.7, 0.2, 1.6, 0.2, 1.4, 1.9, … Service times: 2.0, 0.7, 0.2, 1.1, 3.7, 0.6, … Pengukuran kinerja output terakhir: Waktu antri (delay) rata-rata = 5.7/6 = 0.95 mnt/pelanggan Jumlah rata-rata pada antrian = 9.9/8.6 = 1.15 pelanggan Utilisasi server = 7.7/8.6 = 0.90 (tidak berdimensi)

33 33 Isu Pemrograman DES r Aturan penghentian program m Jumlah event, waktu total r Klien meninggalkan antrian sebelum dilayani r Time break selama penjadwalan event m Pilih kepergian sebelum kedatangan m Dua kedatangan pada saat yang sama? Pilih satu secara acak m Aturan lain yang didefinisikan


Download ppt "1 Simulasi Discrete-Event Catatan diambil dari “Simulation Modeling and Analysis” by A. Law and W. Kelton, Third edition, McGraw Hill, 2000."

Presentasi serupa


Iklan oleh Google