You are on page 1of 5

Model simulasi harus merefleksikan sifat-sifat penting sistem nyata.

Untuk menjelaskan
proses pemodelan akan digunakan percobaan jarum Buffon.

¾ Percobaan Disimulasikan

Percobaan Jarum Buffon. Jarum sepanjang l dijatuhkan secara acak pada bidang yang
memuat sekumpulan garis paralel dengan jarak antar garis d, yang dapat direpresentasikan
keramik lantai (lihat Gambar 1). Panjang jarum diasumsikan lebih kecil atau sama dengan
jarak antar garis paralel. Jika percobaan menjatuhkan jarum dilakukan secara berulang-ulang,
probabilitas (p) jarum akan menyentuh atau memotong garis dapat diperoleh dari hasil bagi
jumlah jarum menyentuh atau memotong garis (NI) dibagi dengan jumlah percobaan (NT),
atau P = NI/NT. Dilihat dari prosedurnya, percobaan jarum Buffon adalah simulasi Monte
Carlo, karena kita menggunakan angka acak dan sampel acak untuk memperkirakan hasil
percobaan.

Gambar 1. Bidang percobaan jarum

Untuk mensimulasikan percobaan ini, kita harus dapat menempatkan jarum secara acak,
relatif terhadap garis. Dalam percobaan fisik, hal ini tidak sulit dilakukan, kita hanya perlu
menjatuhkan jarum pada bidang yang sudah ditentukan. Tetapi dalam simulasi komputer
percobaan akan berbeda. Jarum pada bidang harus ditempatkan secara unik, untuk itu kita
harus menentukan lokasi spesifik jarum. Anggap lokasi jarum terhadap garis mempunyai titik
tengah m dan sudut θ. Untuk memenuhi posisi acak, variabel jarak diperlakukan sebagai
variabel acak dan berdistribusi uniform.

Kita hanya perlu mempertimbangkan satu area yang diapit oleh dua garis, karena area lainnya
biasanya duplikat dari area ini. Begitu titik tengah jarum m sudah ditentukan, kita harus
menentukan garis mana dari antara kedua garis tersebut yang terdekat. Posisi acak bersifat
simetris, oleh karena itu kita hanya memerlukan setengah dari jarak kedua garis. Oleh karena
itu a yang merupakan jarak dari m ke garis adalah variabel acak berdistribusi uniform pada
kisaran 0 – d/2. Karena sifat simetris, θ juga variabel acak yang berdistribusi uniform pada
kisaran 0 - π radian.

d/2
m

a
θ l/2 sin θ

Gambar 2.

Diberikan a dan θ acak, metode untuk menentukan apakah jarum menyentuh atau memotong
garis adalah sebagai berikut:hitunglah proyeksi vertikal jarak m ke akhir jarum sebagai (l/2)
sin θ, dan bandingkan dengan jarak a. Jika a ≤ (l/2) sin θ, jarum menyentuh atau memotong
garis, seperti yang ditunjukkan di atas. Jika a > (l/2) sin θ, jarum tidak menyentuh atau
memotong. Untuk menyelesaikan pengembangan model, kita harus menentukan rata-rata
nilai a dan θ.

Untuk mendapatkan sampel acak a dan θ, akan lebih baik menggunakan bilangan pseudo-
random, r, dengan 0 ≤ r ≤ 1. Kemudian kita dapat mendefinisikan nilai a dan θ untuk
percobaan tertentu sebagai :
a = (d/2)r
θ=πr
kisaran a dan θ yang diinginkan adalah:
0 ≤ a ≤ d/2
0≤θ≤π

Logika pemrograman untuk mensimulasikan percobaan jarum ditunjukkan Gambar 3.

Running akan dilakukan sebanyak 3000 kali dengan panjang jarum (l) = 10cm dan jarak garis
(d) = 20cm. Hasil simulasi memperkirakan p (probabilitas jarum akan menyentuh atau
memotong garis) sebesar 0.3133. Pertanyaan berikutnya adalah seberapa akurat perkiraan ini?
Pilih l dan d

Turunkan r1

Hitung a

Turunkan r2

Hitung θ

Hitung l/2 sin θ

ya
a ≤ l/2 sin θ
tidak

Tambahkan NI Tambahkan NT

Jumlah running sudah cukup tidak

ya

Cetak hasil

stop

Gambar 3. Logika pemrograman percobaan jarum Buffon

Keakuratan p ditentukan oleh jumlah ulangan setiap percobaan yang disimulasikan. Dalam
pembentukan selang kepercayaan untuk presisi ini, hal berikut dilakukan. Jatuhnya jarum
merupakan percobaan Bernoulli, jumlah kesuksesan (NI) dalam ulangan NT adalah variabel
acak Binomial, dan P = NI/NT yang merupakan penduga bagi parameter Binom p
(probabilitas sukses). Dengan menggunakan P = pˆ , maka dapat dinyatakan:
E [ pˆ ] = E [NI / NT ] = p karena E[NI] = p × NT
VAR[ pˆ ] = p(1 − p ) karena VAR[NI] = NT × p (1 − p )
NT
)
⎛ ( p − p ) p(1 − p ) ⎞
12
Z =⎜ ⎟
⎝ NT ⎠
)
Dapat diasumsikan bahwa p menyebar normal (percobaan sebanyak 3000 jauh lebih besar
dibandingkan 30), dan oleh karena itu Z diasumsikan berdistribusi normal dengan rata-rata 0
dan ragam 1. Lalu kita dapat menulis probabilitasnya:
⎡ ) ⎤
⎛ ( p − p ) p(1 − p ) ⎞
12

P − Z 0.025 ⎜ ⎟ ≤ Z 0.025 ⎥ = 0.95
⎢⎣ ⎝ NT ⎠ ⎥⎦
⎡) ) ) 12 ) ) 12
⎛ p(1 − p ) ⎞ ) ⎛ p(1 − p ) ⎞ ⎤
P ⎢ p − Z 0.025 ⎜ ⎟ ≤ p ≤ p + Z 0.025 ⎜ ⎟ ⎥ = 0.95
⎢⎣ ⎝ NT ⎠ ⎝ NT ⎠ ⎥⎦

)
menggunakan p =0.3133 (nilai probabilitas hasil simulasi di atas), kita akan mendapatkan :
P[0.2967 ≤ p ≤ 0.3299] = 0.95

Program simulasi menggunakan FORTRAN adalah sbb:


C PERMASALAHAN JARUM BUFFON
TYPE *, ‘MASUKKAN PANJANG JARUM, LEBAR AREA (JARAK ANTARA
DUA GARIS), JUMLAH PERCOBAAN’
TYPE *,
READ *,FNEEDLE,DIST,NTRIALS
TYPE*,PANJANG JARUM = ‘,FNEEDLE, ‘LEBAR AREA = ‘,DIST,
‘JUMLAH PERCOBAAN = ‘,NTRIALS
WRITE (6,100) FNEEDLE,DIST,NTRIALS
100 FORMAT (‘ PANJANG JARUM = ‘,F7.0,’LEBAR AREA = ‘,F7.0, ‘JUMLAH
PERCOBAAN =’,I6)
DO 1 I=1,NTRIALS
Y=RAN(ISEED)
A=Y*DIST/2
Y=RAN(ISEED)
THETA=Y*3.1417
IF(A.LE.(FNEEDLE/2.)*SIN(THETA)) THEN
CROSS=CROSS+1
END IF
IF(MOD(I,50) .EQ.0) THEN
TYPE *,’PERCOBAAN NO. = ‘,I,’FRACTION CROSSING=
‘,CROSS/FLOAT (I)
101 FORMAT(‘ PERCOBAAN NO.= ‘,I,’ FRACTION CROSSING= ‘F5.4)
END IF
1 CONTINUE
THEO_PROB=2.*FNEEDLE/(3.1417*DIST)
TYPE *,’PELUANG TEORITIS= ‘,THEO_PROB
WRITE(6,102) THEO_PROB
102 FORMAT(‘ PROB. TEORITIS= ‘,F6.5)
END
Sebelum mengembangkan model simulasi kompleks, kita bicarakan dulu list processing
dalam simulasi. Untuk model simulasi sederhana, kita dapat menemukan tidak ada list atau
maksimum hanya satu list record dengan 1 atribut. Tapi untuk model simulasi kompleks kita
harus berhadapan dengan beberapa list yang memuat banyak records juga dengan banyak
atribut. Sering pemrosesan FIFO (First In First Out) tidak efisien. Jika jumlah besar
informasi ini tidak disimpan dan dimanipulasi secara efisien, eksekusi model akan
membutuhkan waktu yang lama dan memori penyimpanan yang besar akan mengakibatkan
model simulasi tidak layak.
Ada dua cara penyimpanan list records dalam komputer yaitu alokasi sekuensial dan
terhubung (linked).

Pendekatan alokasi-sekuensial meletakkan records berdekatan secara fisik dalam lokasi


penyimpanan, satu demi satu record sesuai dengan hubungannya. Dalam pendekatan alokasi
penyimpanan terhubung, setiap record memuat atribut dan pointer (link). Pointer
menunjukkan relasi logik dari satu record ke record lainnya dalam list. Sehingga record dalam
list yang saling berhubungan tidak harus diletakkan berdekatan. Pendekatan kedua ini
(alokasi penyimpanan terhubung) lebih disukai dalam pemodelan simulasi karena memiliki
beberapa keuntungan, yaitu:
1. waktu pemrosesan yang dibutuhkan untuk jenis list tertentu dapat dikurangi secara
signifikan.
2. pemrosesan list-kejadian untuk model simulasi dimana daftar (list) kejadian memuat
sejumlah besar record kejadian secara simultan dapat dipercepat
3. untuk beberapa model simulasi, kapasitas memori komputer yang dibutuhkan untuk
menyimpan bisa lebih kecil.
4. menyediakan kerangka umum yang memungkinkan menyimpan dan memanipulasi
banyak daftar secara simultan dengan mudah, dimana records dalam daftar berbeda
dapat diproses dengan cara berbeda.