RNG
description
Transcript of RNG
RNG
MUHAMMAD YUSUFTeknik Informatika – Universitas Trunojoyo
Http://yusufxyz.wordpress.comEmail : [email protected]
Pembahasan
• Random Number Generation (RNG)- Additive/Arithmatic RNG- Multiplier RNG- Mixed Pseudo RNG
• Simulasi pada Permainan- Pelemparan Mata Uang- Pelemparan Dadu
Random Number Generation
• RNG adalah suatu algoritma yang digunakan untuk menghasilkan urutan dari angka-angka sebagai hasil dari perhitungan dengan komputer yang diketahui distribusinya sehingga angka-angkanya muncul secara random dan terus menerus
• Algoritma RNG dibuat oleh usulan Lehmer (1951)
So… Unsur unsurnya ??
RNG
Sequence(urutan)
RandomDistribusi
Sumber Random
1. Tabel Random Number Menggunakan tabel distribusi untuk mengetahui
penyebaran bilangan acak2. Elektronik Random Number Menggunakan suatu alat yang dapat menghasilkan bilangan
acak. Alat ini banyak digunakan dalam percobaan penelitian.
3. Random Number Generation (RNG)
Bagian dari RNG
• RNG ada 3 macam :1. Additive (arithmathic) RNG2. Multiplier RNG3. Mixed Pseudo RNG
• Random Number pada computer sering menggunakan RNG• Biasanya kita sering menggunakan fungsi yang telah
disediakan programex : random( )
Sifat RNG• Independen
variabelnya bebas tidak terikat dengan memiliki ketentuan ketentuan tersendiri
• Uniformprobabilitas diusahakan sama untuk setiap penarikan random number tersebut
• Densedensitas probabilitas distribusinya harus terletak antara 0 dan 1
• Efficientcukup sederhana dan dalam pemakaiannya harus menentukan angka-angka untuk variabel yang cocok
Additive / Arithmatic RNG
• Formula :
ulom
additivetakonsc
mdaribesarlebihharustakonsa
lamanumberrandomangkaX
barunumberrandomangkaX
Ket
mcXaX
i
i
ii
mod
tan
)(tan
:
mod).(
1
1
Modulo ?
• Merupakan satu angka integer yang cukup besar dan yang dipakai pada komputer
• Setiap komputer bisa memiliki modulo yang berbeda• Ex:
komputer IBM 360/370 dapat mensupport jangkauan 32 bit integer
mikrokomputer 8 bit
...2 132 m
1282 18 m
Multiplicative / Multiplier RNG
• Formula :
• Pemilihan konstanta multiplied a- harus bilangan prima thd m- harus bilangan ganjil
• Pemilihan yang baik menggunakan rumus :
b = banyaknya bit yang disupport komputer
mxaX i mod..1
32 2 b
a
Contoh pemilihan a
• Untuk komputer support 8 bit
1319
32
324
2
8
ataua
a
a
Contoh Sederhana RNG
1. Multiplier RNGJika diberikan m=13, a=7, Xo=1. Maka bilangan random yang terbentuk adalah …
Penyelesaian :- Urutan pertama Xo- Urutan 2 : X1 = a.Xo = a.Xomod m = 7.1mod 13 = 7- Urutan 3 : X2 = a.X1-n.m = a.X1mod m = 7.7mod 13 = 10- Urutan 4 : X3 = a.X2-n.m = a.X2mod m = 7.10mod 13 = 5n = kelipatan modulo yang menghasilkan nilai terdekat dengan a.X1
Jwb : 1 , 7 , 10, 5 , 9 , 11 , 12 , 6,………..
Contoh Additive RNG
• Jika digunakan mikrokomputer 8 bit dengan :Xo=12357a = 19 ; m = 128 ; c = 237Maka bilangan random yang terbentuk dan densitas yang terbentuk adalah …X1 =(19.12357+237) mod 128 = 12Densitas (R1) = X1/m = 12/128 = 0.09375
Soal Latihan :
Cari 10 nilai random yang muncul jika diketahuia = 6 , Xo = 1 , m = 13 ;
Dengan menggunakan :- multiplier dan - additive RNG (dengan c=7)
Simulasi pada permainan
• Simulasi pada permainan dapat juga dilakukan dengan simulasi dengan menggunakan variabel bilangan acak yang dihasilkan oleh proses RNG
• Contoh :- permainan pelemparan mata uang (coin tossing game)- pelemparan dadu dengan 6 mata dadu- lucky draw
TUGAS 1
A & B bertanding lempar mata uang. Apabila mata uang yang muncul lebih banyak H (head) maka dimenangkan oleh A, sedangkan bila yang banyak muncul T (tail) maka dimenangkan oleh B.Jika disepakati ada 10 kali pelemparan dan dimisalkan variabel random yang digunakan adalah– Xo = 1 ; a = 7 ; m = 13
Jika dilakukan 10 kali pelemparan, maka siapakan kira-kira yang menang ?
Pembahasan
• Mata uang yang digunakan sembarang karena memiliki 2 muka dan digunakan oleh 2 orang
• Kesempatan menang A : B = 50% : 50%• Sehingga peluang yang terjadi P(H)=0.5, P(T)=0.5• Buat aturan/rule permainan yang lebih konkret
(untuk kasus ini dibuat dengan metode Fk)Bila : 0 ≤ R < 0.5, maka hasilnya adalah H
0.5 ≤ R ≤ 1, maka hasilnya adalah T
TUGAS 2
• Pada Game Lempar dadu. Yang mana angka yang banyak keluar bila digunakan RNG additive dengan ketentuan :
• Xo = 12357a = 7 ; m = 128 ; c = 273Bila dilakukan 10 kali pelemparan
Dikumpukan max Rabu, 30 September 2009 pukul 24.00Ke email : [email protected]