Pembangkit random number gtr

17
Pembangkit Random Number GUSTI RUSMAYADI [email protected] 082149746633

description

Materi RNG diberikan kepada mahasiswa S1 TIP Faperta Unlam

Transcript of Pembangkit random number gtr

Page 1: Pembangkit random number gtr

Pembangkit

Random

Number

• GUSTI RUSMAYADI

[email protected]

• 082149746633

Page 2: Pembangkit random number gtr

Pembangkitan Bilangan Acak

Random Number Generator

• Algoritma untuk menghasilkan uruta-urutan angka-angka random secara hitungan manual maupun komputasi elektronik (komputer)

Definisi

• Bilangan acak disesuaikan dengan besar probabilitas antara 0 s/d 1.0 dan berdistribusi seragam

distribusi

• Bersifat random

• Tidak ber-ulang (Degenerative)

• Perioda berulang muncul sangat panjang

Syarat Pembangkitan Bilangan acak

Page 3: Pembangkit random number gtr

Metoda Pembangkitan Bilangan

Acak

Manual Sederhana

• dengan lempar koin, ambil bola pingpong dalam keranjang secara acak, lempar dadu, putaran roullete.

Tabel bilangan acak

• Berupa daftar angka acak yang sudah diakui kebenaran acak-nya

Menggunakan Komputer

• Menggunakan algoritma komputer yang diprogram

Page 4: Pembangkit random number gtr

Metoda Pembangkitan Bilangan Acak

Jenis bilangan acak

Murni

acak langsung dipergunakan

contoh peristiwa simulasi Monte Carlo penjualan sepatu

Tidak Murni (Pseudo random);

dihasilkan acak dengan rumusan matematik, atau bilangan acak diperoleh berdasar hitungan distribusi statistik tertentu,

Misal Poisson, Eksponensial, dsb.

Page 5: Pembangkit random number gtr

Jenis Bilangan Acak

1. Midsquare Method

1. Prosedur;

1. Tentukan Seed; angka random awal dari 4 digit

angka random

2. Kuadratkan

3. Ambil empat digit yang ditengah

4. Kembali ke langkah 2

5. Ulang sebanyak bilangan acak yang di-inginkan

6. Contoh: Seed= 7815, (7815)2 , 61074225 ,

(0742)2

Page 6: Pembangkit random number gtr

Bentuk Tabulasi Midsquare method

Zi

U

Bilangan acak

terpilih

Zi2

7815 - 61074225

0742 0. 5056 550564

5056 0.5631 25563136

5631 0.7081 31708161

7081

Page 7: Pembangkit random number gtr

Random Number Generator Congruential Pseudo Random Number Generator

• Zi = (a Zi-1 + c ) mod m

• Zi = angka random yang baru, • Zi-1, = angka random yang lama

• a = multiplier,

• c = increment/angka konstan bersyarat,

• m = angka modul;

Rumus

• harga a > √m atau ; m/100 < a < m - √m

• Harga c harus ganjil, tidak merupakan kelipatan dari angka m

• Modul m harus bilangan yang tdak dapat dibagi (Bilangan prima)

• Harga Seed harus angka integer ganjil dan besar.

• Ui = Zi /m

Syarat konstanta

Linear Conguential Generator (LCG)

Page 8: Pembangkit random number gtr

Random Number Generator

• Multiplicative Congruential Generator (MCG)

– Rumus: Zi = (a Zi-1) mod m

– Syarat : a > 1; C = 0; m > 1

– Pemilihan nilai:

• m (modulo) satu angka integer cukup besar dan satu kata

(words) yang dipakai pada komputer

• Contoh:

• Komputer IBM 360/370 sistem sebuah kata adalah 32 bits

panjangnya angka integer yang terbesar dalam satu kata

komputer adalah:

• 232-1 -1 = 231 – 1

• = 2147488647

• Maka nilai m harus lebih besar satu integer, atau:

• m = 232 + 1

• = 21474886488

Congruential Pseudo Random Number Generator

Page 9: Pembangkit random number gtr

Random Number Generator

• Multiplicative Congruential Generator (MCG)

– Rumus: Zi = (a Zi-1) mod m

– Syarat : a > 1; C = 0; m > 1

– Pemilihan nilai:

• Konstanta multiplier a harus bilangan prima terhadap m dan

bilangan ganjil (Odd number) a = 2 b/2 ± 3

• Contoh:

• Komputer IBM 1130/1800 dengan 16 bits akan diperoleh:

• a = 2 16/2 ± 3

• = 2 8/2 +3

• = 16 + 3 = 19

Congruential Pseudo Random Number Generator

Page 10: Pembangkit random number gtr

Random Number Generator

• Mixed Congruential Generator (Linier

Congruential Random Number Generator);

– Rumus;

Zn = an Zo + (an – 1)/(a – 1). C (mod m)

Congruential Pseudo Random Number Generator

Page 11: Pembangkit random number gtr

Linier Congruential Random

Number Generator

• Persyaratan Persyaratan;

N integer > 0, C = Bilangan prima

– Apabila C bilangan prima terhadap n berarti pembagi

umum yang terbesar dari c dan m adalah 1.

– a= 1 (mod q) untuk setiap faktor prima q dari m berarti

a – q (a/q) = 1, bila k = (a/q) maka a = 1 + q k, q

adalah faktor prima dari m

– a = 1 (mod 4) bila 4 adalah faktor dari m berarti a = 1

+ 4k, bila m/4 = integer (bila m dibagi 4, hasilnya

bulat)

Page 12: Pembangkit random number gtr

Cara Pemilihan mod m

• Definisi; m angka integer terbesar hasil dari perkalian awal yang sebagai pembagi dengan angka integer lain. – Contoh:

• Zo = 12357, a = 19, c = 237, m=128

• Berdasar metoda Multiplicative Congruential Generator); Zi = (a Zi-1) + c mod m

• Operasi module = Random Number – Z1 =(19 x 12357 +237) mod 128

– = 12 R1 = 12/128 = 0,09375

– Z1 =(19 x 12 + 237) mod 128

– = 81 R2 = 81/128 = 0,6328

– Z1 =(19 x 81 + 237) mod 128

– = 112 R3 = 112/128 = 0,875, dst

• Bilangan random; – R1 = 0,09375

– R2 = 0,6328 U3

– R3 = 0,875

Page 13: Pembangkit random number gtr

Validasi Bilangan Acak • Pengujian dimaksudkan untuk melihat

distribusinya, urutan ke-acakan-nya.

Uji empiris; dilakukan dengan uji statistik

Chi-Square test; Uji

keseragaman

Run test; Uji keacakan

Uji teoritis; dilakukan uji parameter pembangkit untuk pembangkitan secara menyeluruh

Spectral test

Lattice test

Metoda pengujian

Page 14: Pembangkit random number gtr

Chi Square test

100 bilangan acak dibangkitkan dan dikelompokkan

dalam 10 kelompok kelas probabilitas.

Kelas

Frekuensi

Bilangan acak

Fo

Frekuensi

harapan Fe

(Fo-Fe)2/Fe

Chi-sqre.

0.0 – 0.09

0.1 – 0.19

0.2 – 0.29

0.3 – 0.39

0.4 – 0.49

0.5 – 0.59

0.6 – 0.69

0.7 – 0.79

0.8 – 0.89

0.9 – 1.00

10

11

10

11

10

8

9

7

12

11

10

10

10

10

10

10

10

10

10

10

0.0

0.4

0.0

0.1

0.0

0.4

0.1

0.9

0.4

0.1

0.1

100 100 2.4

Page 15: Pembangkit random number gtr

Chi Square test

• Pengujian:

– Ho = data/acak terdistribusi seragam

– H1 = Tidak terdistribusi seragam

– Selang kepercayaan α = 0.05 (5%)

• Nilai Chi-square tabel = 16.919

– Chi-square hitung = 2.4 artinya < nilai tabel

– Kesimpulan terima Ho

Page 16: Pembangkit random number gtr

Run Test • Urutan ke-acak-an diuji

• Cara uji; – Bilangan acak dalam urutannya bila harganya naik beri satu tanda +,

sebaliknya tanda -, seterusnya sampai seluruh bilangan acak.

– Contoh; 40 rng;

Total run x = 22 (22 tanda + dan -) Nilai harapan total run;

μ = (2n – 1)/3 = ((2x40)-1)/3 = 26.33 Standar deviasi σ = 2.61

Pengujian dengan distribusi normal; Ho : μ = 26.33, H1 = bukan μ Z = (a – μ)/ σ = (22 – 26.33)/ 2.61 = - 1.65 Batas selang-kepercayaan -1.96 s/d 1.96., berartyi harga Z ada didalamnya Terima Ho

RNG Tnd RNG Tnd RNG Tnd RNG Tnd

1 0.43 - 0.61 + 0.03 - 0.32 -

2 0.32 - 0.25 - 0.93 + 0.75 +

3 0.48 - 0.45 - 0.08 - 0.42 -

4 0.23 - 0.56 + 0.58 + 0.71 +

5 0.9 - 0.87 + 0.41 - 0.66 +

6 0.72 + 0.54 + 0.32 - 0.03 -

7 0.94 + 0.01 - 0.03 - 0.44 -

8 0.11 - 0.64 + 0.18 - 0.99 +

9 0.14 - 0.65 + 0.9 + 0.4 -

10 0.67 + 0.32 - 0.74 + 0.55 +

Rerata 0.483

Page 17: Pembangkit random number gtr

Rangkuman

Pembangkitan

Bilangan Acak

Definisi

Distribusi

Syarat

Metoda

Pembangkitan

Bilangan Acak

Manual Sederhana

Tabel bilangan acak

Menggunakan

Komputer

Jenis Bilangan

Acak

Murni

Midsquare Method

Pseudo random

Linear Conguential Generator (LCG)

Multiplicative Congruential Generator (MCG)

Mixed Congruential Generator

Va

lida

si B

ilang

an A

ca

k

Chi Square test

Run Test