Uploaded by User51925

SIMULASI (Week 4) + Latihan

advertisement
PROGRAM STUDI TEKNIK INDUSTRI
FAKULTAS TEKNIK
UNIVERSITAS MURIA KUDUS
2019/2020
RANDOM NUMBER
GENERATOR
CAPAIAN PEMBELAJARAN
• Kemampuan Akhir yang Diharapkan
Mahasiswa dapat membangkitkan
random
bilangan
• Indikator
- Mahasiswa dapat menggunakan berbagai
teknik pembangkitan bilangan random
2
ANGKA ACAK
Zaman dahulu untuk mendapatkan angka
acak bagaimana caranya sih?
3
DADU & KARTU
4
ANGKA ACAK
Kalau di Zaman modern, bagaimana untuk
mendapatkan angka acak?
5
RANDOM NUMBER
(ANGKA ACAK)
•
•
•
Pada zaman modern Bilangan acak
dibangkitkan secara numerik/ aritmatik
menggunakan komputer yang disebut
bilangan acak semu (pseudo random
number)
Angka acak adalah hal dasar yang diperlukan
dalam simulasi di hampir semua sistem diskrit.
Angka acak digunakan untuk menghasilkan
waktu suatu event dan variabel acak lainnya
dalam bahasa simulasi.
6
RANDOM NUMBER GENERATOR
(PEMBANGKIT ANGKA ACAK)
•
•
•
Random Number Generator (RNG) adalah
sebuah algoritma/ program/ alat untuk
menghasilkan urutan (sequence) angka atau
simbol secara tidak teratur sesuai dengan
distribusinya sebagai hasil perhitungan.
Sequence : random number yang dihasilkan
secara urut mengikuti algoritma tertentu dan
distribusi yang dikehendaki.
Distribusi yang dikehendaki merupakan
distribusi yang terlibat langsung untuk
menarik angka acak
7
RANDOM NUMBER GENERATOR (RNG)
(PEMBANGKIT ANGKA ACAK) (1)
•
RNG merupakan jantung dari simulasi statistik.
RNG yang baik memiliki properti sebagai berikut:
a. Didistribusikan secara seragam/ uniform pada
interval [0,1] dan tidak menunjukkan korelasi
satu sama lain.
b. Mampu memproduksi dengan tepat aliran
tertentu (sub-segmen) dari angka acak untuk
mensimulasikan system yang berbeda untuk
mendapatkan perbandingan yang lebih tepat
antara system
c. Praktis, cepat, dan membutuhkan sedikit
penyimpanan
8
RANDOM NUMBER GENERATOR (RNG)
(PEMBANGKIT ANGKA ACAK) (2)
•
•
•
Random
menunjukkan bahwa algoritma
tersebut akan menghasilkan suatu angka
yang berperan pada pemunculan angka
dalam proses di komputer.
Angka yang muncul adalah angka penentu
untuk angka random berikutnya, dan
seterusnya. Angka yang muncul dapat
berlainan.
RNG dapat diaplikasikan ke dalam banyak
bidang, seperti sampel statistika, simulasi
komputer, game, kriptografi, bahkan untuk
desain/ seni.
9
SIFAT STATISTIK ANGKA RANDOM
•
Independen
Tiap komponen atau variabel – variabel nya
harus bebas dari ketentuan – ketentuan
tersendiri.
•
Uniform
Memiliki distribusi yang umum, yaitu distribusi
uniform. Maksudnya adalah diusahakan
probabilitasnya sama untuk setiap penarikan
angka random.
10
SIFAT STATISTIK ANGKA RANDOM (1)
•
Densitas (Rapat)
Kerapatan distribusi probabilitasnya mengikuti
syarat probabilitas 0 – 1. Angka – angka dari
RNG cukup banyak, sehingga 0 ≤ R.N. ≤ 1
•
Efisien
Metode sederhana, terlebih dahulu memilih
angka – angka untuk variabel – variabel yang
cocok.
11
JENIS BILANGAN ACAK
MURNI
• Langsung
dipergunakan
• Contoh peristiwa:
simulasi Monte
Carlo
TIDAK MURNI
• Dihasilkan dengan
rumusan matematik,
atau bilangan acak
diperoleh berdasar
hitungan distribusi
statistik tertentu,
• Misal Poisson,
Eksponensial, dsb.
12
MENGHASILKAN ANGKA PSEUDO-RANDOM
•
•
•
•
“Pseudo” artinya palsu, jadi maksudnya adalah
kita membuat angka acak palsu.
“Pseudo” digunakan untuk menghilangkan potensi
keacakan yang sebenarnya.
Jika metode pengacakan diketahui, seperangkat
angka acak dapat diulangi. Sehingga terdapat
argument bahwa angkat tidak benar – benar
acak.
Tujuannya adalah untuk menghasilkan urutan
angka acak diantara 0 dan 1 yang disimulasikan
atau diimitasikan, dimana mengikuti sifat ideal
dari uniform dan independent.
13
MENGHASILKAN ANGKA PSEUDO-RANDOM
•
•
Dalam menghasilkan angka pseudo-random,
kesalahan tertentu dapat terjadi.
Beberapa contoh asal kesalahan dari sifat ideal
keacakan tersebut sebagai berikut:
1.
2.
3.
4.
5.
Angka yang dihasilkan mungkin tidak terdistribusi
secara uniform/seragam.
Angka-angka yang dihasilkan mungkin bernilai diskrit
bukan bernilai kontinu.
Rata-rata dari angka yang dihasilkan mungkin terlalu
tinggi atau terlalu rendah.
Varian dari angka yang dihasilkan mungkin terlalu tinggi
atau terlalu rendah.
Mungkin ada ketergantungan yang diukur, misalnya
dengan autokorelasi
14
PERTIMBANGAN
MENGHASILKAN ANGKA PSEUDO-RANDOM
•
Biasanya, angka acak dihasilkan oleh komputer
digital sebagai bagian dari simulasi. Ada beberapa
pertimbangan penting sebelum memilih metode:
1. Metode harus cepat - memilih metode
penghitungan angka acak yang efisien secara
komputasi.
2.Metode ini harus portabel untuk komputer yang
berbeda.
3.Metode ini harus memiliki siklus yang cukup
panjang.
4.Angka acak harus dapat diulang.
5.Yang paling penting, angka acak yang dihasilkan
harus mendekati sifat statistik ideal uniform dan
independen.
15
PENENTUAN ANGKA ACAK
Tabel Random Number
Tabel tersebut biasanya terdiri dari enam hingga
belasan digit.
• Electronic Random Number
Banyak
dipergunakan
dalam
percobaan
penelitian menggunakan komputer.
• Metode Pembangkit Bilangan Random:
1. Midsquare Method
2. Conguential Pseudo Random Number Generator:
•
a.
b.
c.
Linear Congruential Generator (LCG)
Multiplicative Random Number Generator
Mixed Congruential Random Number Generator
16
TABEL RANDOM NUMBER
17
ELECTRONIC RANDOM NUMBER
18
MIDSQUARE METHOD
•
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 diinginkan
6. Contoh: Seed= 7815, (7815)2 , 61074225 , (0742)2
19
CONTOH MIDSQUARE METHOD
𝒛𝒊
U
(bil. acak terpilih)
𝟐
𝒁𝒊
7182
-
51581124
5811
0,5811
33767721
7677
0,7677
58936329
9363
0,9363
87665769
6657
0,6657
44315649
3156
0,3156
09960336
20
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Linear Congruential Generator (LCG)
•
•
•
LCG adalah metode RNG yang paling umum dan
dikembangkan oleh Lehmer (1951).
Metode ini digunakan untuk membangkitkan
bilangan acak dengan distribusi uniform
Formula:
0 ≤ 𝑍𝑖
≤ m – 1 , m ˃ 0 dan a, c, 𝑍0 ˂ m, 𝑈𝑖 = 𝑍𝑖 / m
𝑍0 = nilai awal
𝑍𝑖 = bilangan random baru ke-i
𝑍𝑖−1 = bilangan random sebelumnya/ yg lama
a = konstanta (nilai harus besar dari 𝑚 )
c = increment (angka konstan bersyarat)
m = modulus (angka modulo)
21
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Persyaratan
Linear Congruential Generator (LCG)
•
•
Formula:
m, a, c, dan 𝑍0 harus dipilih secara hati – hati untuk
memenuhi berbagai tes acak, jika tidak terpenuhi maka
nilainya tidak benar – benar acak.
•
Konstanta a biasanya lebih besar dari 𝑚 dinyatakan
𝑚
𝑚
dengan syarat
< 𝑎 < 𝑚 − 𝑚 atau
+𝑚 >𝑎 >
1000
1000
𝑚
Konstanta c berangka ganjil jika m tidak dapat dibagi,
sehingga dapat dihitung dengan mudah di dalam
komputer.
𝑍0 yang pertama, merupakan angka integer, ganjil, dan
cukup besar.
•
•
22
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Contoh 1
Linear Congruential Generator (LCG)
Bangkitkan bilangan acak sebanyak 4
dengan nilai a=2, c=7, m=10, dan 𝑍0 =2
• Sehingga:
𝑍1 = (2 * 2 + 7) mod 10 = 1  𝑈1 = 1/10 = 0,1
𝑍2 = (2 * 1 + 7) mod 10 = 9  𝑈1 = 9/10 = 0,9
𝑍3 = (2 * 9 + 7) mod 10 = 5  𝑈1 = 5/10 = 0,5
𝑍4 = (2 * 5 + 7) mod 10 = 7  𝑈1 = 7/10 = 0,7
• Bilangan acak yang dibangkitkan:
0,1 ; 0,9 ; 0,5 ; 0,7
•
kali
23
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Multiplicative Random Number
Generator
Formula
• c = 0, atau tidak menggunakan c.
• Dimulai dengan nilai awal 𝑍0 (seed)
• a & m : bilangan bulat positif > 1
Perilaku acak Zi yang dapat dipertanggungjawabkan
• Modulo m dipilih sebesar mungkin untuk
memperbesar periode. Angka integer dipilih yang
cukup besar dan merupakan satu kata yang
dipakai dalam komputer.
• Nilai 𝑍0 = bilangan positif ganjil, 𝑍0 < m
24
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Multiplicative Random Number
Generator (1)
• Pemilihan nilai m (modulo) merupakan angka
yang cukup besar. Contoh:
a. Komputer 32 bits, angka integer terbesar adalah
232−1 − 1 = 231 − 1 = 2147488647.
Nilai m = 2.147.488.647 + 1 = 2.147.488.648 (nilai m
sebaiknya lebih besar 1 integer)
b. Microcomputer dengan 8 bits, m = 28−1 = 128
• Pemilihan nilai a sebaiknya bilangan prima
terhadap m, a merupakan bilangan ganjil.
25
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Contoh Multiplicative Random Number
Generator (1)
• Komputer memiliki kapasitas 12 bit word
• W = 12
m = 2𝑊−1 = 211 = 2048
a = 67  a  26 & a  3 (mod 8)
Misal: 𝑍0 = 129
𝑍1 =67 * 129 mod 2048=451  𝑈1 =451/2048= 0,2202
𝑍2 =67 * 451 mod 2048=1545  𝑈1 =1545/2048= 0,7544
𝑍3 =67 * 1545 mod 2048=1115  𝑈1 =1115/2048= 0,5444
𝑍4 =67 * 1115 mod 2048=977  𝑈1 =977/2048= 0,4771
26
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Contoh Multiplicative Random Number
Generator (2)
• Generator memiliki kapasitas 12 bit word
• W = 12
m = 2𝑊−1 = 211 = 2048
a = 67  a  26 & a  3 (mod 8)
Misal: 𝑍0 = 129
𝑍1 =67 * 129 mod 2048=451  𝑈1 =451/2048= 0,2202
𝑍2 =67 * 451 mod 2048=1545  𝑈1 =1545/2048= 0,7544
𝑍3 =67 * 1545 mod 2048=1115  𝑈1 =1115/2048= 0,5444
𝑍4 =67 * 1115 mod 2048=977  𝑈1 =977/2048= 0,4771
27
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Mixed Pseudo Random Number
Generator
• Formulasi
• Syarat utama, n harus berupa bilangan integer (bulat)
dan lebih besar dari nol (Linier Congruential RNG)
• Bila c = 0, maka gunakan Multiplicative Congruen RNG
• Syarat beberapa kondisi:
c = bilangan relatif prima terhadap n
a = 1 (mod q) untuk setiap faktor prima q dari m
a = 1 (mod 4) bila 4 adalah suatu faktor dari m
28
MIDSQUARE METHOD
Latihan (1)
•
•
•
Bangkitkan bilangan acak sebanyak
dengan nilai a=17, c=43, m=100, dan 𝑍0 =27
Sehingga:
Bilangan acak yang dibangkitkan: ???
5
kali
29
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Latihan (2)
•
•
•
Bangkitkan bilangan acak sebanyak
dengan nilai a=17, c=43, m=100, dan 𝑍0 =27
Sehingga:
Bilangan acak yang dibangkitkan: ???
5
kali
30
CONGUENTIAL PSEUDO RANDOM
NUMBER GENERATOR:
Latihan (3)
•
•
•
Bangkitkan bilangan acak sebanyak 4
dengan nilai a = 13, m = 26 = 64, 𝑍0 = 1, 2, 3, 4
Sehingga:
Bilangan acak yang dibangkitkan: ???
kali
31
REFERENCES
a.
b.
c.
Beaverstock, M., Greenwood, A., and Nordgren, W., 2017,
Applied Simulation: Modelling and Analysis using Flexsim, 5th
Edition, United State America: Canyon Park Technology
Center.
Banks et al, 2001, Discrete- Event System Simulation, 3ed,
Prentice Hall, New Jersey.
Law AM dan Kelton WD, 1991, Simulation Modeling and
analysis, McGraw Hill, New York.
32
Download