Subscribe
Add to Technorati Favourites
Add to del.icio.us
Minggu, 13 September 2009

Membangkitkan biLangan Acak

Posted by nduk.nez.stat07

Bilangan acak (random) banyak digunakan di dalam kriptografi. Misalnya untuk pembangkitan parameter kunci pada algoritma kunci-publik, pembangkitan initialization vector (IV) pada algoritma kunci-simetri, dan sebagainya. Bilangan acak yang dihasilkan dengan rumus-rumus matematika adalah bilangan acak semu (pseudo), karena pembangkitan bilangannya dapat diulang kembali. Pembangkit deret bilangan acak semacam itu disebut pseudo-random number generator (PRNG)
Peubah Acak Uniform Diskret, peubah acak x mempunyai nilai x1, x2,..,xk dengan peluang yang sama. Fungsi distribusi peluang peubah acak uniform diskret f(x;k)=1/k, untuk x=x1, x2, … , xk Contohnya, peluang suatu angka pada mata dadu segi enam ialah sama yaitu 1/6.
Peubah Acak Uniform Kontinu
X merupakan peubah acak uniform selang (a, b) jika fungsi kepekatan peluangnya ialah f(x)=1/( a, b )
Contohnya, peluang seseorang menunggu kedatangan kereta api di stasiun pada selang jam 7.00 sampai jam 07.30 pagi dengan selang kedatangan kereta api 15 menit mulai jam 07.00.
Penggunaan Bilangan Acak Uniform
• Untuk mengalokasikan perlakuan-perlakuan dalam percobaan Statistika
• Untuk menentukan pemenang suatu undian
Pembangkitan Bilangan Acak Uniform
1. Konvensional
PemSecarabangkitan bilangan acak uniform secara sederhana dapat dilakukan dengan beberapa alat yaitu :
- Koin
- Dadu
- Bola dalam kantong
- Digit dari nomor telepon yang masuk pada suatu hari
Kelemahannya:
Ketidaksesuaian antara model dengan kenyataan, koin bisa jadi tidak seimbang, dadu bisa menimbulkan bias sehingga perlu dilakukan serangkaian uji.
2. Komputasi
Pembangkitan bilangan acak dengan komputasi dapat dilakukan dengan 2 metode yaitu :
• Pseudo random numbers
Metode ini dapat membangkitkan bilangan acak seragam dengan menggunakan formula rekursif
un+1= bagian pecahan dari (π + un)^5 atau
un+1=(π + un)^5 (mod 1)
dengan
n ≥ 0, nilai u0 terletak di antara 0 sampai 1 (0 < u0 < 1) yang merupakan nilai awal
metode ini biasanya digunakan untuk membangkitkan bilangan acak seragam pada kalkulator.
Bilangan acak yang dihasilkan dengan rumus tersebut adalah bilangan acak semu (pseudo), karena pembangkitan bilangannya dapat diulang kembali.
Algoritmanya:
• Tentukan nilai U0 sebagai nilai awal, 0<1
• Hitung U1 dengan formula, U1=(π+U0)^5 (mod 1), n≥0
• Ulangi langkah kedua dengan menghitung Un+1=(π+Un)^5 (mod 1), n≥0 sampai diperoleh bilangan acak sebanyak yang diinginkan
kemungkinan siklus maksimum dari metode ini dengan panjang m diperoleh jika dan hanya jika memenuhi hubungan sebagai berikut:
a. b dan m tidak punya faktor selain satu
b. (a – 1) dapat dibagi dengan semua faktor prima dari m
c. (a – 1) adalah kelipatan 4 jika m adalah kelipatan 4
d. m > maks(a, b, x0)
e. a > 0, b > 0
Untuk b = 0, panjang siklus maksimum yang dapat diperoleh ialah 2k-2.
Keunggulan metode pembangkitan ini terletak pada kecepatannya dan hanya membutuhkan sedikit operasi bit.
Kriteria bilangan acak yang baik untuk metode ini ialah mempunyai siklus yang terpanjang dan mempunyai korelasi yang rendah antar pengamatan yang berurutan. Pendekatan korelasi antara xn dan xn+1 ialah:
Algoritma pembangkitan bilangan acak dengan metode congruential pseudo-random number generator:
• Tentukan nilai x0 sebagai nilai awal, a, b, dan m
• Hitung x1 dengan formula, x1=(ax0+b) (mod m)
• Ulangi langkah kedua dengan menghitung xn+1=(axn+b) (mod m) sampai diperoleh bilangan acak sebanyak yang diinginkan.ini adalah beberapa informasi yang sya dapat internet.

1 comments:

yudhaardiansyah mengatakan...

kita juga punya nih artikel mengenai bilangan acak, berikut linknya semoga bermanfaat ya :D
http://repository.gunadarma.ac.id/bitstream/123456789/2995/1/IMG_0005.pdf

Posting Komentar