bil acak
-
Upload
nicosilalahi1 -
Category
Documents
-
view
226 -
download
0
Transcript of bil acak
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 2/45
Bilangan Acak Pseudo
• Bilangan Acak Pseudo
– Dibangkitkan dengan komputer
– Komputer itu deterministik– bilangan acak dibangkitkan dengan
menggunakan suatu algorithma
– Efsien
– Algoritma yang baik lulus untuksemua uji statistik
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 3/45
Bilangan Acak Sebenarnya
• Beberapa gejala alam munculsebagai enomena acak
–Peluruhan !adio acti"e# Dadu# Koin#Sumber $angguan suatu %eb&am&&D chip '(a"a!nd)com*
– +asalah, -ingkat .utput (ambat
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 4/45
Penggunaan Bilangan Acak
• Simulasi
– &haotic molecular beha"ior
– /uclear detonations– 0ser beha"ior in net1ork simulation
– 2
• $ambling
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 5/45
Bilangan Acak Palsu 'Pseudo*
• Berasal dari pembangkitanpeuabah acak yang menyebarseragam 'uniorm* dengan rentang'3#4* 5 6 0 '3# 4*
• Peubah7peubah acak lainnya dapatdibangkitkan dari peubah acak ini
– 0 dipakai untuk notasi peubah acakyang menyebar uniorm '3#4*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 6/45
Siat7siat bilangan acak yangbaik
• +endekati kondisi statistik yang ideal– +enyebar uniorm '3# 4*
– !ataannya sekitar 489# !agamnya sekitar
4849– 2 'Akan kita pelajari kemudian*
• +udah dan cepat dalam membangkit7kannya
• +empunyai siklus yang cukup panjang
• Dapat diulangi hasilnya untuk tujuandebugging
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 7/45
-eknik membangkitkanbilangan Acak
• +etode Kongruensial (inear 'LinearCongruential Method, LCG*
–Sangat populer– Efsien
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 8/45
+etode (&$
• 5i:'a5i74;c* mod m
– 53 , Bibit 'Seed*
– a, Konstanta pengganda– c, Penambah 'Increment *
• +i<ed congruential method, c=3
• +ultiplicati"e congruential method, c:3
– m, +odulus
– 0i : 5i8m bilangan acak ke7i
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 9/45
&ontoh
• 53 : 9>
• a : 4>
• c : ?@• m : 433
Berapa panjang siklusnya
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 10/45
+etode (&$
• bilangan7bilangan yangdibangkitkan 7 diskret
– : C 3#48m#98m#2#m748m
• bilangan acak ini baik# jika m cukubesar '9@9*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 11/45
Siklus terpanjang
• Bilamana m : 9b# siklus terpanjangadalah m# jika c m and a :4;?k# dimana k adalah bulat'integer *
• &ontoh,
– m : 9? : 4F
– c : @
– a : 4
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 12/45
Siklus terpanjang '9*
• Bila m : 9b# siklus terpanjangnyaadalah m8?# jika c : 3 dan a : @;Gkatau a : H;Gk# dimana k adalah
integer dan 53 merupakan bilanganganjil
• &ontoh,
– m : F?– a : 4@
– 53 : @
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 13/45
• Bila m dalah bilangan prima danc:3# siklus terpanjang yang dapatdicapai adalah m74# ak74 habis
dibagi oleh m dand bilangan bulatterkecil k adalah m74
• &ontoh,
– m : 9@474 : 9#4?>#?GH#F?> 'siklusnyamencapai 9 milyar*
– a : >H
Siklus terpanjang '@*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 14/45
• Dari penjelasan di atas dapatdisimpulkan bah1a,– Sekuens bilangan acak yang
dihasilkan akan memiliki siklus#dengan maksimum siklus adalah m
– Bilangan a dan c harus dipilih hati7hati agar diperoleh pembangkitdengan panjang siklus maksimum#dan menghasilkan bilangan acakdengan siat7siat statistik yang baik
Siklus terpanjang '?*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 15/45
• -abel berikut ini memberikankombinasi nilai7nilai m# a dan c
Siklus terpanjang 'H*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 16/45
+etode +idsIuare 'Von Neumann dan
Metropolis, 194*
• Dimulai dengan bilangan ?7digit sebagaibibit '53*
• Kuadratkan bilangan itu untuk memperolehG7digit 'bila perlu tambah!an " pada digit paling !iri, agar diperoleh persis #$digit *
• Ambil ?7digit ditengah7tengah untuk mem7peroleh bilangan ? digit berikutnya 54#
kemudian kuadratkan 54 dan ambil kembali?7digit ditengah7tengah dan seterusnyadilakukan dengan cara yang sama
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 17/45
• Bilangan acak 0i diperoleh dengan
menam7bahkan titik desimal disebelahkiri setiap nilai 5i 'atau membaginya
dengan 43333*
+etode +idsIuare '9*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 18/45
0ji7uji untuk Bil) Acak
• 0ji JreIuensi
– Apakah bilangan acaknya uniorm
– +enggunakan uji Kolmoro"7Smirno" atau uji
chi7kuadrat• 0ji !uns
– Semakin menaik dan semakin menurun
– +enggunakan uji chi7kuadrat
• 0ji Autokorelasi
– +enguji korelasi diantara bilangan7bilanganitu
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 19/45
• 0ji $ap– +enghitung banyaknya digit antar digit yang
muncul berulang untuk suatu digit tertentu'gap* dan kemudian menggunakan uji
Kolmogor"7Smirno" untuk membandingkandengan nilai harapan gaps tersebut
• Poker test– +enguji terjadinya pengulangan dari
bilangan7bilangan yang dibangkitkan– !angkain bilangan berikut memiliki
banyaknya pengulangan yang tidak biasa• 3)9HH 3)H>> 3)@@4 3)?4? 3)G9G 3)3
0ji7uji untuk Bil) Acak '9*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 20/45
0ji Keseragaman,Kolmogoro"7Smirno" test
• Secara teoritis J'<* : <# 3<4
• Suatu sampel n bilangan acak, 04#09#
2#0n# ungsi sebaran komulati
empirisnya 'empirical cd% * adalah,
• Sn'<*:'banyaknya 04#09#2#0n yang ≤
<*8n
• Sn'<* semestinya mendekati < bila n
besar
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 21/45
• 0ntuk menguji keseragaman#bentuk hipotesisnya adalah
L3, 0i 6 0M3#4N
L4, 0i ≠ 0M3#4N
• Lipothesis nol# L3# dibaca sebagaibilangan7bilangan tersebut
menyebar seragam pada inter"alM3#4N)
0ji7uji untuk Bil) Acak '@*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 22/45
• Pada uji kebebasan 'independence*#bentuk hipothesisnya adalahO
L3, 0i 6 independently
L4, 0i ≠ independently• hipothesis# L3# dibaca bah1a bilangan7
bilangan tersebut menyebar secarabebas) Kegagalan menolak hipothesisnol berarti bah1a tidak ada cukup buktimenunjukkan adanya ketakbebasanyang terdeteksi berdasarkan uji ini)
0ji7uji untuk Bil) Acak '?*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 23/45
Tingkat nyata (level of significance) α α = P(tolak H0 | H0 benar)
biasanya, α sama dengan 0.01 atau 0.0
(Hi!ot"esis nol)
#ebenarnya $enar #ebenarnya #ala"
Terima 1 % α β
(Ty!e && error)
Tolak α 1 % β (Ty!e & error)
0ji Bil) Acak 'H*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 24/45
• 0ji Gap menghitung banyaknya digit antarpemunculun digit yang sama berturutan)
'&ontoh* panjang gap yang bersesuaian dengandigit @)?# 4# @# H# 4# ># 9# G# 9# 3# ># # 4# @# H# 9# ># # ?# 4# F# @
@# # F# @# ?# G# 9# @# 4# # ?# ?# F# G# ?# 4# @# G# # H# H# >
@# # H# # G# H# @# 9# 9# @# ># ?# ># 3# @# F# @# H# # # H# H
H# 3# ?# F# G# 3# ?# ># 3# @# @# 3# # H# ># # H# 4# F# F# @# G
G# G# # 9# # 4# G# H# ?# ?# H# 3# 9# @# # ># 4# 9# 3# @# F# @
/ote, ada delapan belas digit & pada barisan diatas
::= 4> gap# gap pertama panjangnya 43
0ji Bil) Acak 'F*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 25/45
'ita akan "itung frekuensi ga!, %conto" frekuensi ga! dengan
!anang 10 untuk digit %
P(ga! 10) = P(tak ) ⋅⋅⋅ P(tak ) P() ,
note* ada 10 bentuk P(tak ),= (0.+)10 (0.1)
#ebaran frekuensi teoritis untuk suatu urutan yang bersifat
acak diberikan ole"
(-) = 0.1 (0.+)n
= 1 % 0.+-.1
/ote* amati frekuensi untuk semua digit bandingkan dengan
frekuensi teoritis dan gunakan ui 'olmogorov%#mirnov.
0ji Bil) Acak '>*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 26/45
(onto")
$erdasarkan frekuensi kemunculan ga!%ga!,analisis 110 digits di atas untuk mengui a!aka"
barisannya bebas (independent ). unakan α= 0.0.Total 2 ga!s diberikan ole" banyaknya digit minus 10,
adi 110%10=100. $anyaknya ga! bersesuaian dengan berbagai digit (0%+) adala"*
3igit 0 1 4 5 6 7 8 +
2 a!s 7 8 8 17 10 1 7 8 + 1
total 100
0ji Bil) Acak 'G*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 27/45
onto" 9i a!
:elative um. :elativePanang a! re;uency re;uency re;uency (-) |(-) % # /(-)|
0% 0. 0. 0.5+ 0.00615%7 44 0.44 0.7 0.6+ 0.0008%11 17 0.17 0.75 0.7176 0.044514%1 + 0.0+ 0.8 0.8157 0.0116%1+ 0.0 0.88 0.8785 0.001640%4 6 0.06 0.+5 0.+404 0.01+8
45%47 0.0 0.+7 0.+5+7 0.04448%1 0 0.00 0.+7 0.+67 0.0054% 0 0.00 0.+7 0.+77 0.0076%+ 4 0.04 0.++ 0.+84 0.00550%5 0 0.00 0.++ 0.++0 0.00055%57 1 0.01 1.00 0.++6 0.0065
0ji Bil) Acak '*
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 28/45
/ilai kritis 3 adala"
30.0 = 1.6 < √100 = 0.16
karena 3 = ma- |(-) % # /(-)| = 0.0445
adala" kurang dari 30.0, "i!otesis nol yang
menyatakan barisan digit tersebut bebastidak ditolak, berdasarkan !ada ui ini.
0ji Bil) Acak '43*
0ji K b b Bil A k
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 29/45
0ji Kebebasan Bil Acak
• '(i )un '+enaik dan +enurun*Perhatikan?3 bilangan berikutO uji
Kolmogoro"7Smirno" dan &hi7sIuare akanmengindikasikan bah1a bilangan7bilangan
tersebut adalah seragam 'uni%orml*distributed*) -etapi tidak demikiansebenarnya)
3)3G 3)3 3)9@ 3)9 3)?9 3)HH 3)HG 3)>9 3)G 3)4
3)44 3)4F 3)4G 3)@4 3)?4 3)H@ 3)>4 3)>@ 3)>? 3)G?
3)39 3)3 3)@3 3)@9 3)?H 3)?> 3)F 3)>? 3)4 3)H
3)49 3)4@ 3)9 3)@F 3)@G 3)H? 3)FG 3)GF 3)GG 3)4
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 30/45
•Sekarang bila urutannya adalah seperti diba1ah ini# adakah sedikit alasan untukmempertanyakan kebebasaanya
'independence*)
3)?4 3)FG 3)G 3)G? 3)>? 3)4 3)HH 3)>4 3)@F3)@3
3)3 3)>9 3)GF 3)3G 3)H? 3)39 3)44 3)9 3)4F3)4G
3)GG 3)4 3)H 3)F 3)3 3)@G 3)9@ 3)@9 3)43)H@
3)@4 3)?9 3)>@ 3)49 3)>? 3)?H 3)4@ 3)?> 3)HG
3)9
0ji Kebebasan Bil Acak
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 31/45
• Perhatikanlah,• Banyaknya runs
• Panjang runs
• 3)?4 3)FG 3)G 3)>? 3)@F 3)H?• Banyaknya runs adalah @# masing7masing
panjangnya 9 runs menaik# 9 runsmenurun dan 4 runs menaik#
dilambangkan dengan; ; 7 7 ;
• adi runs adalah sekuens menaik ataumenurun dari suatu barisan
0ji Kebebasan Bil Acak
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 32/45
• /ote, ika / adalah banyaknyabilangan7bilangan dalam barisan#maksimum banyaknya runs adalah
/74# dan minimum banyaknya runsadalah satu)
• ika a> adalah total banyaknya
runs pada suatu sekuens# rata7ratadan ragam '+ariance* untuk a> diberikan oleh
0ji Kebebasan Bil Acak
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 33/45
µa = (4n % 1) <
= (16/ % 4+) < +0
9ntuk / ? 40, sebaran a> akan mendekatisebaran normal, a @ /(µa , ).
Pendekatan ini da!at digunakan untuk mengui
kebebasan bilangan%bilangan yang dibangkitkandari suatu !embangkit ( generator ).
A0 = (a % µa) < σa
4
aσ
4
aσ
0ji Kebebasan Bil Acak
0ji K b b Bil A k
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 34/45
#ubstitusikan µa and σa ==?
Aa = Ba % C(4/%1)<DE < B√(16/%4+)<+0E,
dimana A @ /(0,1)
3aera" !enerimaan untuk "i!ot"esis kebebasan
adala" %Aα/2 ≤ A0 ≤ Aα/2
α / 2α / 2
-Z α / 2 Z α / 2
0ji Kebebasan Bil Acak
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 35/45
'&ontoh*
Berdasarkan runs menaik dan menurun#tentukan apakah barisan ?3 bilangan7bilanganberikut ini menolak hipothesis kebebasan#
gunakan α : 3)3H)
3)?4 3)FG 3)G 3)? 3)>? 3)4 3)HH 3)F9 3)@F 3)9>
3)4 3)>9 3)>H 3)3G 3)H? 3)39 3)34 3)@F 3)4F 3)9G
3)4G 3)34 3)H 3)F 3)4G 3)?> 3)9@ 3)@9 3)G9 3)H@ 3)@4 3)?9 3)>@ 3)3? 3)G@ 3)?H 3)4@ 3)H> 3)F@ 3)9
0ji Kebebasan Bil Acak
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 36/45
0ji Kebebasan Bil Acak
$arisan menaik dan menurunnya adala" sebagai berikut* − − − − − − − − − − − − − − − − − − − −
Fda 46 runs dalam barisan ini. 3engan /=50 dan a=46,
µa
= B4(50) % 1E < = 46. dan
= B16(50) % 4+E < +0 = 6.7+
Gaka,
A0 = (46 % 46.) < √(6.79) = −0.13
/ilai kritisnya adala" A0.04 = 1.+6, adi kebebasan
bilangan%bilangan itu tidak da!at ditolak, berdasarkan
ui ini.
4
aσ
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 37/45
• '(i Po!er didasarkan pada seberapasering suatu digit berulang)
&ontoh,
3)9HH 3)H>> 3)@@4 3)?4? 3)G9G3)3
• /ote, sepasang digit yang serupa
muncul pada setiap bilangan yangdibangkitkan)
0ji Kebebasan Bil Acak
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 38/45
0ji Kebebasan Bil Acak
Pada bilangan @7digit# hanya ada @ kemungkinan)
P'@ digit berbeda* :
P'9nd berbeda dari 4st* Q P'@rd berbeda dr 4st R
9nd*: '3)* '3)G* : 3)>9
P'@ digit sama* :
P'9nd digit sama dg 4st* ∗ P'@rd digit sama dg4st*
: '3)4* '3)4* : 3)34
P'tepat sepasang* : 4 7 3)>9 7 3)34 : 3)9>
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 39/45
'&ontoh*
Suatu barisan 4333 bilangan tiga7digityang telah dibangkitkan dan hasil analisis
menunjukkan FG3 diantaranyamempunyai tiga digit berbeda# 9Gmempunyai tepat sepasang digit sama#and @4 ketiga digitnya sama) Berdasarkanuji poker# apakah bilangan7bilangan ini
bebas$unakan α : 3)3H)
0ji ini diringkaskan pada tabel berikut)
0ji Kebebasan Bil Acak
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 40/45
.bser"ed E<pected '.i 7 Ei*9
&ombination# JreIuency# JreIuency# 77777777777
i .i Ei Ei
-hree dierent digits FG3 >93 9)9?
-hree like digits @4 43 ??)43 E<actly one pair 9G 9>3 4)@@ 4333 4333 ?>)FH
Derajat bebas yang bersesuaian adalahbanyaknya kelas dikurang satu)
Karena χ93)3H# 9 : H) ?>)FH# berdasarkan uji
ini kebebasan bilangan7bilangan itu ditolak)
0ji Kebebasan Bil Acak
ji l i
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 41/45
0ji Auto Korelasi
• +enguji Korelasi setiap m bilangan)
• !i# !i;m# !i;9m# !i;@m 2
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 42/45
54
Pembangkit Bilangan Acak yang
Aman untuk Kriptografi • Pembangkit bilangan acak yang cocok untuk
kriptografi dinamakan cryptographically secure pseudorandom generator (CSPRNG).
• Persyaratan CSPRNG adalah:
1. Secara statistik ia mempunyai sifat-sifat yang bagus (yaitulolos uji keacakan statistik).
2. Tahan terhadap serangan (attack ) yang serius. Serangan inibertujuan untuk memprediksi bilangan acak yangdihasilkan.
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 43/45
5
Blum Blum Shut (BBS)
• CSPRNG yang paling sederhana dan paling
mangkus (secara kompleksitas teoritis).
• BBS dibuat pada tahun 1986 oleh Lenore
Blum, Manuel Blum, dan Michael Shub.
• Berbasis teori bilangan
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 44/45
55
Algoritma,1. Pilih dua buah bilangan prima rahasia, p dan q, yang masing-masing
kongruen dengan 3 modulo 4.2. Kalikan keduanya menjadi n = pq. Bilangan m ini disebut bilangan
bulat Blum
3. Pilih bilangan bulat acak lain, s, sebagai umpan sedemikian
sehingga:
(i) 2 ≤ s < n
(ii) s dan n relatif prima
kemudian hitung x0 = s2 mod n
4. Barisan bit acak dihasilkan dengan melakukan iterasi berikut
sepanjang yang diinginkan:
(i) Hitung xi = xi – 12 mod n
(ii) zi = bit LSB ( Least Significant Bit ) dari xi
Barisan bit acak adalah z1, z2, z3, …
7/23/2019 bil acak
http://slidepdf.com/reader/full/bil-acak 45/45
Contoh. +isalkan kita memilih p : 44 dan : 9@sehingga n : p : 9H@) Kita pilih s : @ dan kita
hitung - 3 :@9
mod 9H@ : ) Barisan bit acak kitahasilkan sebagai berikut,
- 4 : - 39 mod n : 9 mod 9H@ : G4 U4 : 4
'karena G4 ganjil# bit LS.7nya pasti 4* - 9 : - 49 mod n : G49 mod 9H@ : 9@F U9 : 3
'karena 9@F genap# bit LS.7nya pasti 3*
- @ : - 99 mod n : 9@F9 mod 9H@ : @F U4 : 3
- ? : - @9 mod n : @F9 mod 9H@ : @4 U4 : 4 - H : - ?9 mod n : @49 mod 9H@ : 939 U4 : 3 dst)
Barisan bit acak yang dihasilkan 43343))