• Tidak ada hasil yang ditemukan

BAB IV GENERATOR BILANGAN RANDOM

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB IV GENERATOR BILANGAN RANDOM"

Copied!
6
0
0

Teks penuh

(1)

BAB IV

GENERATOR BILANGAN RANDOM

4.1. Generator Bilangan Random dan Fungsi Distribusi

Pada simulasi seringkali dibutuhkan bilangan-bilangan yang mewakili keadaan sistem yang disimulasikan. Biasanya, kegiatan dimulai dengan mengumpulkan data pengamatan. Namun demikian, data hasil pengamatan tidak dapat dipakai langsung untuk simulasi sebab jika demikian maka simulasi dilakukan terhadap performansi sistem pada saat yang telah dilampaui padahal tujuan studi simulai adalah untuk mengkaji keadaan sistem pada saat yang akan datang. Maka, biasanya setelah banyak data pengamatan diperoleh, data dianalisis untuk diketahui distribusi statistiknya. Setelah mendapat distribusi yang paling “cocok” sesuai dengan data sampel, harga-harga yang mewakili sistem dibangkitkan dengan generator.

Random Number Generator adalah suatu algoritma yang digunakan untuk menghasilkan urutan-urutan atau sequence dari angka-angka sebagai hasil dari perhitungan dengan komputer yang diketahui distribusinya sehingga angka-angka tersebut muncul secara random dan digunakan terus menerus.

Salah satu generator terpenting yang akan dipakai untuk semua generator bilangan random lain adalah generator bilangan random terdistribusi uniform (yang mempunyai probabilitas sama untuk suatu daerah harga tertentu).

4.2. Generator Bilangan Random Terdistribusi Uniform

Cara pembangkitan bilangan random mula-mula dipakai adalah secara manual, dengan :

 Melempar kartu, dadu, bola yang diberi nomor.

 Memutar piringan bernomor

 Mengambil nomor sembarang dari buku telepon, data sensus, dll.

Karena sampel yang dibutuhkan seringkali banyak, maka mulai dipikirkan mesin-mesin yang dapat menghasilkan bilangan random, yang terkenal adalah ERNIE (Electric Random Number Indicator Equiment) dan alat eletronik yang dikeluarkan oleh RAND

(2)

Munculnya komputer memungkinkan untuk mendapatkan sampel, dengan cara : 1. Mula-mula dengan menyimpan hasil pembangkitan mesin dalam tabel, cara ini

memakan banyak memori karena simulasi seringkali membutuhkan data yang bahkan sampai jutaan banyaknya.

2. Pembangkitan bilangan random melalui rumus-rumus aritmatika, yang akan dibahas selanjutnya. Biasanya setiap kompilator menyertakan generator bilangan random Kriteria generator bilangan random dengan rumus aritmatika yang baik adalah sbb :

 Hasil pembangkitannya adalah bilangan-bilangan yang terdistribusi uniform antara 0 – 1 dan tak ada korelasi satu sama lain (dense/density Probabilitas Distribusi).

Performansinya cepat dan tidak memerlukan banyak memori komputer (efficient).

Harus mampu mereproduksi sederetan bilangan yang persis sama (uniform), karena dalam simulasi dibutuhkan untuk mengeksekusi model yang berbeda-beda dengan data yang sama untuk membandingkan model-model yang mewakili persoalan nyata yang sama. Sampel data yang identik juga dibutuhkan dalam tahapan verifikasi dan debugging dari program komputer yang mewakili model tersebut.

Mampu menghasilkan beberapa “stream” (deret) yang independent, setiap deret biasanya dipakai untuk mewakili hal yang berbeda, misalnya deret yang satu mewakili waktu antar kedatangan sedangkan yang lain untuk mewakili waktu pelayanan.

Generator Bilangan Random Terdistribusi Uniform : 1. Metoda MID-SQUARE

Bilangan random dengan metoda ini dibangkitkan dengan cara : - ambil Z0 sebuah bilangan yang terdiri dari 4 digit

- kuadratkan Z0, sehingga diperoleh bilangan 8 digit

- ambil 4 digit ditengah dari hasil kuadrat tsb.

- pakai 4 digit tengah tersebut untuk membangkitkan bilangan berikutnya. Jika tidak diperoleh bilangan 8 digit (karena 4 digit tengah mengandung nol diawal), maka buat menjadi 8 digit dengan menambahkan nol di depan.

(3)

Contoh : I Z Z2 U 0 7182 51581124 1 5811 33767721 0,5811 2 7677 58936329 0,7677 3

2. Metoda LCG (Linear Conguential Generator)/Additive RNG Yang ditulis dengan rumus :

Zi = (a Zi-1 + c) modulo m

Dimana :

a : faktor pengali, nilainya harus lebih besar dari √m Biasanya dinyatakan dengan syarat :

mamm

100

mmam

100

c : faktor penjumlah, c harus berangka ganjil apabila m bernilai pangkat dua. Tidak boleh nilai berkelipatan dari m.

m : modulo, harus bilangan prima atau bilangan tidak terbagikan. Z0 : nilai awal, harus angka integer, ganjil dan cukup besar.

Untuk memulai harus dipunyai Z0 yang disebut “benih”, dan terlihat seperti pada

contoh bahwa bilangan terbangkit adalah bilangan random yang sebenarnya “berulang”, sesuai dengan pemilihan faktor pengali dan faktor penjumlah.

Contoh : m = 16, a = 5, c = 3, Z0 = 7 maka diperoleh

7,6,1,8,11,10,5,12,15,14,9,0,3,2,13,4,7,6,1,8,...

pada contoh di atas terlihat bahwa setelah 16 bilangan, maka deret berulang. Pengulangan ini tidak dapat dihindarkan, namun diharapkan agar deret yang didapat mempunyai periode yang panjang karena untuk simulasi dibutuhkan banyak sekali bilangan. Bilangan-bilangan random yang dibangkitkan dikatakan mempunyai periode “penuh“, jika periodenya sama dengan m (p <= m). Jika c = 0 maka

(4)

3. Metoda Multiplikatif rumus :

Zi = a * Zi-1 modulo m

Dimana :

m : merupakan satu angka integer yang cukup besar dan merupakan satu kata (word) dari yang dipakai pada komputer. Contoh :

 Dalam komputer IBM 360/370 sistem sebuah kata adalah 32 bits panjangnya, berarti angka integer yang terbesar dalam satu kata komputer adalah : 232-1 – 1 = 231 -1 = 2147488647,

maka nilai m harus lebih satu integer, atau : m = 232-1 + 1 = 2.147.488.648

 Untuk mesin komputer sistem 1130/1800 IBM dikenal dengan 16 bits words maka untuk memilih m adalah :

m = 216-1 = 32.768

 Untuk microkomputer dengan 8 bits, maka m = 28-1 = 128

a : konstanta multiplier, harus tepat

Pemilihan nilai a harus bilangan prima terhadap m, a juga harus bilangan ganjil. Pemilihan yang terbaik adalah dengan rumus : a = 2b/2 ± 3 yang lebih mendekat pada ketepatan.

 Untuk sistem IBM 1130/1800 dengan 16 bits akan diperoleh a = 216/2 ± 3 = 259

 Untuk microkomputer dengan 8 bits akan diperoleh a = 28/2 ± 3 = 19

Z0 : Seed, prima terhadap m, dapat diambil sembarang bilangan ganjil dan

(5)

4. Metoda General Congruent rumus :

Zi = g( Zi-1, Zi-2, ...) modulo m

Dimana :

g adalah kuadratik :

Zi = (a1 * Zi-12 + a2 * Zi-22 + c) mod m

g adalah fungsi linier :

Zi = (a1 * Zi-1 + a2 * Zi-2 + ... + an * Zi-n) mod m

g adalah fungsi Fibonacci : Zi = Zi-1 + * Zi-2

4.3. Bilangan Random Terdistribusi Kontinu dan Tidak Uniform

Umumnya simulasi membutuhkan sederetan bilangan random yang diturunkan dari distribusi yang kontinu dan tidak uniform. Beberapa metoda yang dipakai kebanyakan berdasarkan penggunaan dari sekumpulan bilangan random yang terdistribusi uniform. Metoda yang sering digunakan adalah :

1. Metoda transformasi invers (inverse transformation method) 2. Metoda penolakan (rejection method)

A. Metoda Transformasi Invers

Jika diketahui :

a. μ (i = 1, 2, ...) adalah bilangan random terdistribusi uniform antara 0 – 1

b. F-1 (x) adalah inverse dari fungsi distribusi kumulatif untuk suatu variabel random

x, maka

X1 = F-1 (μ1) adalah sampel random dari variabel x yang mempunyai fungsi

distribusi kumulatif F(x) Contoh :

Diberikan fungsi kepadatan

(6)

maka : F(x) =

x x a 0 (1 ) ( 2 ) 2 x x a   Harga a = 2 supaya

 

f(x)dx1 (dari definisi fungsi distribusi kumulatif).

Untuk μ = F(x), maka cari x dari fungsi invers :

( 2 ) 2 x x a    2 1 ) 1 ( 1   x

karena x adalah random antara 0 – 1 maka demikian juga halnya dengan 1 – μ sehingga rumus di atas dapat disederhanakan

2 1

1

x

dengan mengambil 5 bilangan random dari generator sebagai input maka outputnya adalah : μ x 0,1009 0,6823 0,3754 0,3873 0,0842 0,7098 0,0901 0,6998 0,1280 0,6422

Maka output x di atas adalah bilangan random dengan fungsi kepadatan f(x) dimaksud

Referensi

Dokumen terkait

hasil belajar peserta didik yaitu nilai tes awal pada kelas eksperimen dan kelas kontrol. termasuk homogen atau

Kecerdasan visual-spasial yang di maksud adalah kemampuan peserta didik dalam cara berpikirnya dengan menggunakan gambar termasuk gambaran tabel, peta, grafik

Leverage dari estimasi oustanding claims liability pada cell tertentu dalam run off triangle didefinisikan sebagai rasio antara hasil perubahan dalam estimasi

Tujuan penyuluhan yang tepat/baik adalah sesuai dengan keinginan/kebutuhan petani, dapat diukur kejelasannya, berjangka pendek agar dapat memotivasi

Salah satu masalah Kamtibmas yang mengedepan adalah masuknya paham, isme, ideologi, dokterin-doktrin, atau ajaran-ajaran yang semula berlebel sosial, ekonomi dan

Kumpulan Lagu Pujian, GPI sidang Kalimalangs.

5. Menjadi lebih ramah dan lain-lain Banyak keuntungan-keuntungan yang dapat dipetik dari hasil melakukan olahraga secara teratur. Harapan untuk memiliki

bantuan pinjaman dan UMKM selaku PPU tertuang dalam suatu perjanjian standar (baku) yang telah disepakati kedua belah pihak dengan konsep partnership