Hendrawan hend@telecom.ee.itb.ac.id
Outline
Motivasi . Mengapa simulasi? Teknik-teknik simulasi Operasi dasar suatu simulasi Pseudo-random number generator Stochastic nature dari simulasi Steady-state behaviour
Confidence intervals Langkah-langkah simulasi
Simulasi vs Komputasi
Utk tujuan kita, otomatisasi code utk menentukan solusi numerik utk model analitis adalah bukan simulasi Utk tujuan kita, simulasi meniru kelakuan sistem, tetapi dlm cara stochastic
Functional simulation: memverifikasi kelakuan fungsional dari suatu sistem (mis. menggunakan VHDL) Stochastic simulation: menentukan performansi suatu sistem berdasarkan eksperimen dg event random Dimungkinkan utk mempunyai model hybrid yg melakukan keduanya
Tipe-Tipe Sistem
statis vs. dinamis: pada sistem statis output hanya tergantung input saat ini dan tidak pada inputinput sebelumnya discrete-state vs. continuous-state: pada suatu sistem continuous-state paling sedikit satu komponen (input, state) mempunyai rentang uncountable stochastic vs. deterministic: pada suatu sistem stochastic paling sedikit satu komponen dari input atau state sistem adalah random komputer dan sistem komunikasi umumnya dinamis dan stochastic discrete state stochastic discrete event simulation
Ditulis dalam suatu bahasa pemrograman (general purpose atau dedicated) memerlukan runtime kadang besar
Events
Continuous time: event-event sistem dp terjadi pd sembarang waktu (mis. kedatangan adalah Poisson) Discrete time: event-event sistem dp terjadi hanya pd waktu-waktu tertentu (mis. kedatangan merupakan Bernoulli process)
Contoh Sederhana
Perhatikan simulasi dari sistem antrian tunggal
Mungkin tdk dp ditangani secara analitis (mis,. Krn trafik, waktu pelayanan dan/atau waktu pelayanan)
State sistem adalah jumlah dlm sistem, N(t) Ukuran performansi adalah waktu rata-rata pelanggan dlm sistem dan jumlah rata-rata pelanggan dlm sistem
Events adalah
Kedatangan Kepergian (penyelesaian pelayanan)
State Sistem
State sistem sbg fungsi waktu
Isue-Isue Implementasi
Waktu antar kedatangan dan waktu pelayanan
Pseudo-random number generator
Algoritma
Z = 1, jika Y < a Z = 0, lainnya
Transient vs Steady-State
Ukuran performansi yg tergantung pd initial state dari simulasi adalah ukuran transient
kadang yg menjadi titik perhatian, mis. bagaimana respon sistem thd link failure
Transient/Steady State
Transient/Steady State
Transient behavior : Suatu tipikal kelakuan sistem yg tergantung pd kondisi inisial (mis. booting up atau recovering dari suatu kegagalan komponen) Steady state behavior : kelakuan operasi normal dari sistem independent terhadap kondisi inisial
Confidence Intervals
X% confidence interval (a,b) dari pengukuran Y berarti jika simulasi sistem bbrp kali, hasil Y akan jatuh antara a dan b X% dari waktu Membangun confidence intervals memerlukan, secara efektif, multiple samples
Memperhitungkan variabilitas Bagaimana kita mendpkan multiple samples?
Batch berarti
Satu single run dibagi kedlm N perioda sama panjang, memberikan N sample Phase initial transient hanya dibuang satu kali Sulit utk menentukan harga yg pas utk N utk secara efektif mengeliminasi korelasi antar batch
Bangun model
Sistem Workload
Implementasi
Analisa sensitivitas
Tentukan faktor-faktor yg memp efek terbesar
Tools (1)
Standar high-level programming language spt Java, C, C++, FORTRAN
Simulasi diprogram spt aplikasi standar Biasanya memerlukan waktu pengembangan yg paling lama
Tools (2)
Paket simulasi jaringan yg fleksibel, spt OPNET Modeler
Memungkinkan programming utk membangun modul-modul Modul-modul di-assembly menggunakan graphical user interface Domain specific
Speeding-Up Simulation
Hierarchical Decomposition dan Teknik Hybrid
Dekompoisisi sistem kedlm suatu hierarki Gunakan agregated, low fidelity dan/atau submodul analitis Sbg contoh, analisa suatu LAN dan gantikan dg sumber trafik tunggal utk simulasi suatu WAN
Reduksi Variansi
Gunakan properties dari sistem utk mengurangi variasi