Riani L.
L
JurusanTeknik Informatika
Universitas Komputer Indonesia
1
1/14/2010
2
1/14/2010
Bilangan Acak ?
Bilangan acak adalah bilangan yang tidak dapat diprediksi
kemunculannya
3
1/14/2010
4
1/14/2010
5
1/14/2010
6
1/14/2010
Contoh 1 LCG :
Membangkitkan bilangan acak sebanyak 8 kali dengan a = 2, c = 7, m =
10, dan Z0= 2
Z1 = (2.2+7) mod 10 = 1
Z2 = (2.1+7) mod 10 = 9
Z3 = (2.9+7) mod 10 = 5
Z4 = (2.5+7)
(2 5+7) mod 10 = 7
Z5 = (2.7+7) mod 10 = 1
Z6 = (2.1+7) mod 10 = 9
Z7 = (2.9+7) mod 10 = 5
Z8 = (2.5+7) mod 10 = 7
Bilangan acak yang dibangkitkan adalah :
1 9 5 7 1 9 5 7
Terjadi pengulangan bilangan secara periodik (4)
7
1/14/2010
Contoh 2 LCG :
Membangkitkan bilangan acak sebanyak 8 kali dengan a = 4, c = 7, m =
15, dan Z0= 3
Z1 = (4.3+7) mod 15 = 4
Z2 = (4.4+7) mod 15 = 8
Z3 = (4.8+7) mod 15 = 5
Z4 = (4.5+7)
(4 5+7) mod 15 = 12
Z5 = (4.12+7) mod 15 = 10
Z6 = (4.10+7) mod 15 = 2
Z7 = (4.2+7) mod 15 = 0
Z8 = (4.0+7) mod 15 = 7
Bilangan acak yang dibangkitkan adalah :
4 8 5 12 10 2 0 7
Tidak terjadi pengulangan bilangan secara periodik
8
1/14/2010
9
1/14/2010
Contoh 3 LCG :
a = 21, c = 3, m = 16 digunakan untuk menghasilkan angka acak PRN
Zi = (21.Zi-1 +3) mod 16
Z0 = 13 (pilih angka antara 0 dan 15 (diperoleh dari m
m-1)
1) sebagai seed
value/starting value)
Z1 = (21. Z0 +3) mod 16
= (21.13+3)
(21 13+3) mod 16
= 276 mod (16)
= 4 (random number)
Random variate :
Ui = Zi/16
= 4/16
= 0,2500
10
1/14/2010
11
1/14/2010
12
1/14/2010
13
1/14/2010
14
1/14/2010
15
1/14/2010
Zi = (a.Zi-1) mod m
Dimana :
Bilangan pseudo dimulai dgn nilai awal Z0 yang disebut benih.
a & m : bilangan bulat positif tertentu
A.Zi-11 dibagi dgn m dan sisanya diambil sebagai nilai Zn
16
1/14/2010
17
1/14/2010
18
1/14/2010
Contoh :
Misal komputer berkapasitas 12 bit word
W = 12
m = 2 w-1 = 2 11 = 2048
a = 67 a 2 6 & a 3 (mod 8)
misal : Zo = 129
Z1 = (67)(129) mod 2048 = 451
Z2 = (67)(451) mod 2048 = 1545
Z3 = (67)(1545)mod 2048 = 1115
Z4 = ((67)(1115)mod
)( ) 2048 = 977
19
1/14/2010
Contoh :
U1 = 451/2048 = 0,22015
U2 = 1545/2048 = 0,754395
U3 = 1115/2048 = 00,544434
544434
U4 = 977/2048 = 0,477051
Periode : m/4 = 2048/4 = 512
U1 = U513
U2 = U514
20
1/14/2010
Rumus Pseudo Random Number generator ini adalah dengan syarat utama
n harus
h sejumlah
j l h bilangan
bil integer
i (bulat)
(b l ) dan
d lebih
l bih besar
b dari
d i nol,
l rumus ini
i i
dikenal juga dengan nama Linier Congruential RNG
21
1/14/2010
22
1/14/2010
Penerapannya
23
1/14/2010
Bagaimana Penerapannya
24
1/14/2010
25
1/14/2010
26
1/14/2010
27
1/14/2010
28
1/14/2010
29
1/14/2010
30