Anda di halaman 1dari 35

CHAPTER 2

PEMBANGKITAN BILANGAN ACAK

2.1 Pendahuluan

Pemodelan statistika sering kali didasarkan pada asumsi-asumsi tertentu, diantaranya

adalah asumsi bahwa data berasala dari distribusi tertentu. Asumsi ini digunakan untuk

mengevaluasi secara toeritik apakah model dapat bekerja dengan baik pada berbagai

kondisi.

Sebagai contoh misalkan dalil/teorema limit pusat. Dalil ini menyatakan bahwa untuk

peubah acak X1 , X2 , . . . , Xn yang bebas stokastik dan identik dan berasal dari sembarang
P
distribusi, maka untuk n → ∞ maka X̄ = Xi /n akan mendekati distribusi normal.

Untuk mengevaluasi kebenaran dalil tersebut secara empiris, kita bisa membangkitkan

X1 , X2 , . . . , Xn dari distribusi tertentu, kemudian mengevaluasi distribusi X̄-nya.

Contoh lainnya dalam memodelkan kepadatan lalu lintas di suatu perempatan, maka

diasumsikan bahwa banyaknya kendaraan yang masuk dari arah tertentu perempatan

tersebut mengikuti distribusi Poisson. Untuk menevaluasi kebaikan dari model tersebut,

maka kita memerlukan data yang berdistribusi Poisson.

Pembangkitan bilangan acak dari distribusi tertentu seringkali diperlukan dalam rangka

simulasi, dalam rangka memodelkan fenomena alam. Dengan menggunakan simulasi

maka berbagai skenario dapat dievaluasi sebelum diterapkan sebagai kebijakan.

Ada beberapa metode untuk membangkitkan bilangan acak, diantaranya adalah metode

transformasi invers (Inverse Transformation Method ), metode penerimaan-penolakan

(Acceptance-Rejection Mthod ), dan lain sebagainya. Dalam Bab ini yang akan dibahas

hanya metode transformasi invers dan metode acceptance-rejection.

2.2 Pembangkitan bilangan acak kontinyu

Hal 11 dari 141


2.2.1 Inverve Transformation Method-ITM

Dasar dari metode ITM adalah fungsi distribusi F (x) dari peubah acak X dan mencari

invers dari fungsi distribusinya, F −1 (x). Oleh karena itu kita harus bisa mencari fungsi

distribusi F (x) dari fungsi densitas f (x), a ≤ x ≤ b. Pada Bab I telah disinggung

bagaimana kita mencari F (x). Syarat utama agar metode ITM ini dapat dipergunakan

adalah bahwa F (x) bersifat 1-1 pada interval a ≤ x ≤ b. Jika pada interval a ≤ x ≤ b

fungsi F (x) tidak bersifat 1-1, maka metode ini tidak dapat dipergunakan. Oleh karena

itu kita harus memeriksa terlebih dahulu sifat 1-1 ini.

2.2.1.1 Invers suatu fungsi

Misalkan f adalah suatu fungsi yang memetakkan A → B di mana pemetaannya adalah

satu-ke-satu, maka kita dapat mencari fungsi invers dari f , yaitu g yang memtakkan

B → A. Perhatikan bahwa suatu fungsi mungkin tidak bersifat satu-satu, akan tetapi

untuk daerah fungsi tertentu (pada daerah yang kita minati), fungsi tersebut bisa saja

jadi bersifat 1-1.

Contoh 2.2.1. Misalkan y = f (x) = x + 2. Fungsi tersebut bersifat 1-1 pada seluruh

daerah x ∈ <. Fungsi tersebut dapat kita cari inversnya, yaitu

y = f (x) = x + 2 ⇒ x = y − 2 ⇒ x = g(y) = y − 2 atau

x = f −1 (x) = f (x) − 2 = y − 2

Untuk x = 10, maka y = f (x) = f (10) = 10 + 2 = 12. Jika kita balik, maka x = g(y) =

f −1 (x) = g(12) = 12−2 = 10. Jika kita punya x = x0 selanjutnya kita bisa mendapatkan

y0 = f (x0 ), pada tahap selanjutmya maka kita bisa mengembalikan dari y0 → x melalui

invers fungsinya.

Contoh 2.2.2. Suatu fungsi didefinisikan sebagai f (x) = a + bx. Fungsi ini bersifat 1-1

untuk semua x ∈ < dengan syarat b 6= 0. Jika b 6= 0, maka fungsi inversnya adalah
y−a
y = f (x) = a + bx ⇒ bx = y − a ⇒ x = = g(y) = f −1 (x)
b

Hal 12 dari 141


40

f(x)
35

30
f(x)=25
25

20

15

10

0
-6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6
X

Figure 2.1. Fungsi f (x) = x2 tidak bersifat 1-1 pada −∞ < x < ∞. Tetapi untuk
sebarang selang padax < 0 atau x > 0, maka f (x) bersifat 1-1.

a+3b−a
Misal: x = 3 ⇒ y = a + 3b; untuk y = a + 3b, maka x = b
= 3. Jadi kembali ke

nilai x-semula.

Contoh 2.2.3. Perhatikan fungsi f (x) = x2 , untuk x = −1, maka f (−1) = (−1)2 = 1.

Demikian juga untuk x = 1, maka f (1) = 12 = 1. Demikian juga untuk x lainnya,

diperoleh f (−x) = f (x), oleh karena itu f (x) = x2 tidak bersifat 1-1. Akan tetapi jika

daerah fungsi kita batasi misalkan untuk X > 0 maka f (x) = x2 bersifat 1-1. Oleh karena
p √
itu untuk X > 0 maka f (x) = x2 punya invers, yaitu x = f −1 (x) = g(y) = f (x) = y.
√ p √
Untuk x=5, maka f (5) = 52 = 25 dan inversnya :x = y = f −1 (x) = 25 = 5. Lihat

Gambar 2.1.

Contoh 2.2.4. Untuk y = f (x) = ln(x), maka g(y) = f −1 (x) = exp(y)

Soal 2.2.5. Tunjukkan bahwa f (x) = x2 + 1, −∞ < x < ∞ tidak punya invers.

Soal 2.2.6. Agar supaya f (x) = x2 + 1, a < x < b punya invers, carilah a dan b.

2.2.1.2 Algoritma ITM untuk peubah acak kontinyu

Misalkan peubah acak X adalah peubah acak kontinyu dengan pdf f (x). Langkah-langkah

pembangkitan bilangan acak dengan menggunakan metode ITM adalah sebagai berikut:

Hal 13 dari 141


1. Tentukan F (x) = P (X ≤ x)

2. Tentukan invers dari F(x): X = F −1(y) = g(U) = g(F (y)

3. Bangkitkan U = U (0, 1) = F (x)

4. X=g(U)

Contoh 2.2.7. Bangkitkan 4 bilangan acak dari p.a X ∼ f (x) = x/2, 0 < x < 2.

Jawab:

• Yang akan diperlukan adalah F (x) pada selang 0 < x < 2 jadi yang akan dicari

adalah F (x) hanya pada selang tersebut. Sedangkan untuk x ≤ 0, fungsi distribusi

F (x) = 0 dan untuk x ≥ 2, F (x) = 1.

Untuk 0 < a < 2,


Z a a
F (a) = P (X ≤ a) = (x/2)dx = (1/4)x2 0 = a2 /4.
0

Jadi F (x) = (1/4)x2 untuk 0 < x < 2. Perhatikan bahwa F (x) adalah bukan fungsi

1-1 pada interval −∞ < x < ∞, akan tetapi pada interval 0 < x < 2 fungsi F (x)

bersifat 1-1. Oleh karena itu kita bisa menggunakan metode invers transformation

untuk membangkitkan bilangan acak X.

• Mencari X = F −1 x = g(F (x)).

p
F (x) = (1/4)x2 ↔ x2 = 4F (x) ↔ x = 4F (x).

• Bangkitkan U=U(0,1)=F(x). Karena diminta 4 bilangan acak, maka akan dibangk-

itkan 4 bilangan acak dari U (0, 1), diperoleh : U1 = 0.5768, U2 = 0.8137, U3 =

0.0349, U4 = 0.1365.

Untuk U1 = F (x) = 0.5768 ⇒ x = 4 · 0.5768 = 1.5189

Untuk U2 = F (x) = 0.8137 ⇒ x = 4 · 0.8137 = 1.8041

Untuk U3 = F (x) = 0.0349 ⇒ x = 4 · 0.0349 = 0.3736

Untuk U4 = F (x) = 0.1365 ⇒ x = 4 · 0.1365 = 0.7389

Hal 14 dari 141


Jadi hasil pembangkitan bilangan acaknya adalah X = 1.5189, 1.8041, 0.3736, dan

0.7389. Hasil pembangkitan 10,000 bilangan acak dengan pdf f (x) = x/2, 0 < x < 2

disajikan pada Gambar 2.2-2.3. Gambar 2.2 menyajikan histogram data bangkitan

yang menunjukkan bentuk fungsi densitas dari data. Bentuk ini mengindikasikan fungsi

f (x) = x/2, 0 < x < 2. Gambar 2.3 menyajikan fungsi distribusi kumulatif yang sesung-

guhnya (diperoleh dari F (x)) dan yang diperoleh dari frekuensi kumulatif data bangki-

tan. Dari Gambar 2.3 terlihat bahwa frekuensi kumulatif sangat dekat dengan F (x) yang

sesungguhnya.

Macro Minitab untuk membangkitkan bilangan acak f (x) = x/2, 0 < x < 2. Macro ini

disimpan di folder ”d : \suliadi\komputasi” dengan nama file ”gen x per2.mac”.

Macro Minitab
gmacro gen_x_per_2
### Note k1=banyakanya data yang akan dibangkitkan
### Kolom k2 = kolom tempat menyimpan data bangkitan
### f(x)=x/2; F(x) = (1/4)x^2 = U
### x =akar(4*F(x)) = akar(4*U)
noecho
random k1 c1;
uniform 0 1.
let ck2=(4*c1)**(0.5)
endmacro

Menjalankan macro: Banyaknyak bilangan yang dibangkitkan = 1000 dan diletakkan di

kolom=2

Menjalankan Macro Minitab


MTB > let k1=1000 ### Banyaknya bilangan yang akan dibangkitkan
MTB > let k2=2 ### tempan menyimpan data bangkitan di kolom 2.
MTB > %gen_x_per_2 #### Menjalankan macro
Executing from file: D:\Suliadi\Komputasi\gen_x_per_2.mac
MTB >


Contoh 2.2.8. Bangkitkan 5 bilangan acak dari p.a X ∼ f (x) = c x, 0 < x < 9.

Jawab: Sebelum membangkitkan bilangan acak, kita harus mencari nilai c pada f (x).

Hal 15 dari 141


1000

Frekuensi
900

800

700

600

500

400

300

200

100

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2
X

Figure 2.2. Distribusi data hasil bangkitan 10,000 peubah acak X dengan pdf f (x) =
x/2, 0 < x < 2.

10000

9000

8000

7000

6000

5000

4000

3000

2000

1000

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2

F(x) Frek.Kumulatif

Figure 2.3. Perbandingan antara fungsi distribusi teoritik F (x) = x2 /4, 0 < x < 2 dengan
frek. kumulatif data hasil bangkitan 10,000 peubah acak X dengan pdf f (x) = x/2.

Hal 16 dari 141


0.040
F(x)
0.035

0.030

0.025

0.020

0.015

0.010

0.005

0.000
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1


Figure 2.4. Plot F (x) terhatap x untuk 0 < x < 9, untuk f (x) = (1/18) x, [soal nomor
2.2.8].

R
Agar f (x) memenuhi syarat sebagai pdf, maka f (x)dx = 1.
Z 9 Z 9 √ 9
f (x)dx = c xdx = c(2/3)x3/2 0 = 1.0
0 0

⇔ c(2/3)[27 − 0] = 1 → c(18) = 1 ⇒ c = (1/18).


Jadi f (x) = (1/18) x, 0 < x < 9.

Langkah 1. Mencari F (x) = P (X ≤ x). Karena f (x) = 0, untuk x ≤ 0 atau x ≥ 9,

maka kita hanya akan mencari F (x) pada interval 0 < x < 9. Sedangka pada interval

x ≤ 0, fungsi distribusi F (x) = 0 dan pada interval x ≥ 9, fungsi distribusi F (x) = 1.

Untuk 0 < a < 9, maka


Z a √ a
F (a) = P (X ≤ a) = (1/18) xdx = (1/27)x3/2 0 = (1/27)a3/2
0

Jadi untuk 0 < x < 9, F (x) = (1/27)x3/2 . Gambar 2.4 menyajikan grafik fungsi F (x) =

(1/27)x3/2 . Dari gambar tersebut terlihat bahwa pada selang 0 < x < 1, fungsi distribusi

F (x) bersifat 1-1. Oleh karena itu invers transformation method dapat digunakan untuk

membangkitkan bilangan acak dengan dengan peubah acak X.

Langkah 2. Mencari x sebagai invers dari F (x):

p
F (x) = (1/27)x3/2 ⇒ x3/2 = 27F (x) ⇒ x = 27F (x) atau x = [27F (x)]2/3
3/2

Hal 17 dari 141


Langkah 3. Bangkitan U = F (x) = U (0, 1). Karena diminta 5 bilangan acak, maka

dibangkit 5 bilangan acaka dari U (0, 1) dan diperoleh U1 = 0.6245, U2 = 0.3381, U3 =

0.5483, U4 = 0.2772, dan U5 = 0.2658.

Untuk U1 = 0.0889 maka x = [27 ∗ 0.0889]2/3 = 1.7927

Untuk U2 = 0.5126 maka x = [27 ∗ 0.5126]2/3 = 5.7645

Untuk U3 = 0.2165 maka x = [27 ∗ 0.2165]2/3 = 3.2450

Untuk U4 = 0.2579 maka x = [27 ∗ 0.2579]2/3 = 3.6465

Untuk U5 = 0.6432 maka x = [27 ∗ 0.6432]2/3 = 6.7061

Jadi 5 bilangan acak yang diperoleh adalah x= 1.7927, 5.7645, 3.2450, 3.6465, 6.7061.

Hasil pembangkitan 10,000 bilangan acak dari pdf f (x) = (1/18) x ditampilkan melalui

histogram yang disajikan pada Gambar 2.5.


Macro Minitab untuk membangkitkan bilangan acak f (x) = (1/18) x, 0 < x < 9.

Macro ini disimpan di folder ”d : \suliadi\komputasi” dengan nama file ”seperdelapan-

belasakarx.mac”.

Macro Minitab
gmacro gen_x_per_2
gmacro seperdelabanbelasakarx
### Note k1=banyakanya data yang akan dibangkitkan
### Kolom k2 = kolom tempat menyimpan data bangkitan
### f(x) =(1/8)sqrt(x)
### F(x) = (1/27)X^(3/2) ; U=F(x)
### x=[27U}^(2/3)

noecho
random k1 c1;
uniform 0 1.
let ck2=(27*c1)**(2/3)

endmacro

Menjalankan macro: Banyaknyak bilangan yang dibangkitkan = 5000 dan diletakkan di

kolom=2

Menjalankan Macro Minitab


Hal 18 dari 141
450

400

350

300

250

200

150

100

50

0
0.50

1.25

2.00

2.75

3.50

4.25

5.00

5.75

6.50

7.25

8.00

8.75
0.00
0.25

0.75
1.00

1.50
1.75

2.25
2.50

3.00
3.25

3.75
4.00

4.50
4.75

5.25
5.50

6.00
6.25

6.75
7.00

7.50
7.75

8.25
8.50

9.00
Figure 2.5.
√ Histogram 5,000 data bangkitan. Garis kurva tebal adalah kurva f (x) =
(1/18) x. Terlihat puncak histogram sangat dekat dengan fungsi pdf sesungguhnya.

MTB > let k1=5000 ### Banyaknya bilangan yang akan dibangkitkan
MTB > let k2=2 ### tempan menyimpan data bangkitan di kolom 2.
MTB > %seperdelabanbelasakarx #### Menjalankan macro
Executing from file: D:\Suliadi\Komputasi\seperdelabanbelasakarx.mac
MTB >

Soal latihan. Bangkitkan 5 bilangan acak dari peubah acak X dengan fungsi densitas

f (x) dengan
( menggunakan inverse transformation method, di mana
u, 0<x<1
1. f (x) =
2 − u, 1 < x < 2
−x
2. f (x) = e , x ≥ 0

3. f (x) = cx2 , 1 < x < 2 (petunjukkan: tentukan terlebih dahulu nilai”c”).

2.2.2 Acceptance-Rejection Method

Metode transformasi invers di atas memiliki beberapa kelemahan, yaitu (i) seringkali

sangat sulit untu mendapatkan fungsi distribusi F (x); (ii) fungsi distribusi F (x) mungkin

saja mudah didapatkan, akan tetapi ada kemungkinan sulit untuk mendapatkan F −1 (x),

karena tidak ada bentuk sederhana dari x = F −1 (x) bahkan mungkin harus menggunakan

metode numerik untuk mendapatkan x = f (U (0, 1)).

Hal 19 dari 141


Metode penerimaan-penolakan (accetance-rejection method; ARM) dapat mengatasi

kelemahan ITM di atas. Metode ARM sama sekali tidak memerlukan fungsi distibusi

F (x) dan juga tidak memerlukan invers dari F (x), sehingga sangat sederhana. Meskipun

demikian untuk mendapatkan bilangan acak, metode ini memerlukan iterasi. Oleh karena

itu belum tentu bilangan acak yang dimaksud diperoleh pada iterasi pertama, mungkin

saja pada iterasi ke-2, atau ke -3 dst. Ada beberapa syarat agar metode ini bisa diterap-

kan untu Peubah acak X ∼ f (x), a < x < b, yaitu

• Peubah acak X harus mempunyai batas atas dan batas bawah, maksudnya batas

bawah x bukan −∞ dan batas atasnya juga bukan ∞. Jadi a > −∞ dan b < ∞.

• Fungsi densitas f (x) mempunyai batas atas c, sehingga ada suatu bilangan c < ∞

di mana f (x) ≤ c, a < x < b.

Contoh 2.2.9. Sebagai contoh, metode ARM tidak dapat digunakan untuk membangk-

itkan X ∼ N (µ, σ 2 ) karena daerah fungsi dari X adalah −∞ < x < ∞, sehingga X tidak

mempunyai batas bawah dan batas.

Contoh 2.2.10. X ∼ exp(µ) dengan 0 ≤ x < ∞. Metode ARM tidak daat digunakan

karena daerah fungsi dari X adalah 0 ≤ x < ∞, sehingga X tidak mempunyai batas atas.

Contoh 2.2.11. Peubah acak X ∼ f (x) = c/x, 0 < x < 1. Meskipun X punya batas

atas=1 dan batas bawah=0, Metode ARM juga tidak dapat dipergunakan sebab f (x) → ∞

ketika x → 0. Jadi f (x) tidak punya batas atas.

Misalkan kita akan membangkitkan bilangan acak dengan fungsi densitas f (x), a < x < b.

Algoritma ARM untuk membangkitkan x adalah:

(a) Carilah sembarang nilai c sehingga c ≥ f (x) untuk semua a < x < b. Nilai c

yang paling baik adalah nilai maksimum dari f (x), meskipun boleh juga c tidak

tepat sama dengan maksimum dari f (x) tetapi lebi besar dari maks(f (x)).. Untuk

mendapatkan maksimum dari f (x), a < x < b kita bisa mendapatkan melalui analitik,

Hal 20 dari 141


yaitu df (x)/dx = 0 atau melalui grafis.

(b) Bangkitkan dua bilangan acak dari U (0, 1), misalkan U1=U(0,1) dan U2=U(0,1).

(c) Hitung x0 = a + U 1(b − a) dan hitung f (x0 )

(d) Hitung y0 = cU 2.

(e) Jika y0 ≤ f (x0 ) maka ambil sebagai bilangan acak dan stop simpan X = x0 sebagai

bilangan acak. Selainnya, yaitu jika y0 > f (x0 ) kembali ke langkah b.

Contoh 2.2.12. Bangkitkan 3 bilangan acak dari distribusi f (x) = x2 + 1, 0 < x <

0.8177317 dengan menggunakan metode acceptance-rejection method.

Jawab:

(1) Perhatikan Gambar 2.6. Pada interval 0 < x < 0.8177317 nilai f (x) < ∞ sehingga

metode ARM bisa dipergunakan, selain itu pada selang tersebut, fungsi f (x) meru-

pakan fungsi fungsi naik. Dengan demikian, pada selang tersebut maksimum dari

f (x) terjadi pada batas atas selang x = 0.8177317, sehingga

f max = f (0.8177317) = (1/3)(0.8177317)2 + 1 = 1.668685133.

Kita bisa mengambil c = f max = 1.668685133. Bisa juga kita ambil bilangan sedikit

lebih besar dari fmax yaitu c = 1.67 agar lebih mudah, sebab kita diperbolehkan

ambil c > fmax asal tidak terlalu jauh. Untuk mudahnya kita ambil c = 1.67. Jadi

a = 0, b = 0.8177317, dan c = 1.67.

(2) Untuk bilangan acak ke-1;

(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.1829 dan U2=0.1829

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.1829(0.8177317 − 0.00) = 0.1496

Hitung f (x0 ) = 0.14962 + 1 = 1.0224

(c) Hitung y0 = c ∗ U 2 = 1.67 ∗ 0.1829 = 0.3054

(d) Karena y0 ≤ f (x0 ), maka ambil X = x0 = 0.1496 => stop

(3) Untuk bilangan acak ke-2

Hal 21 dari 141


1.6

1.4

1.2 f(x)=x2+1
1.0

0.8

0.6

0.4

0.2

0.0
-0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

Figure 2.6. Plot f (x) = x2 + 1 pada selang 0 < x < 0.8177317. Perhatikan bahwa
f (x) adalah fungsi naik pada 0 < x < 0.8177317 sehingga f (x) maksimum pada
x = 0.8177317.

(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.2 dan U2=0.6839

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.2(0.8177317 − 0.00) = 0.1635

Hitung f (x0 ) = 0.16352 + 1 = 1.0267

(c) Hitung y0 = c ∗ U 2 = 1.67 ∗ 0.6839 = 1.1422

(d) Karena y0 > f (x0 ) maka kembali ke-(a)

(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.5051 dan U2=0.8322

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.5051(0.8177317 − 0.00) = 0.413

Hitung f (x0 ) = 0.4132 + 1 = 1.1706

(c) Hitung y0 = c ∗ U 2 = 1.67 ∗ 0.8322 = 1.3899

(d) Karena y0 > f (x0 ) maka kembali ke-(a)

(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.317 dan U2=0.1497

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.317(0.8177317 − 0.00) = 0.2592

Hitung f (x0 ) = 0.25922 + 1 = 1.0672

(c) Hitung y0 = c ∗ U 2 = 1.67 ∗ 0.1497 = 0.25

(d) Karena y0 ≤ f (x0 ), maka ambil X = x0 = 0.2592 => Stop.

(4) Untuk bilangan acak ke-3

Hal 22 dari 141


(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.705 dan U2=0.6128

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.705(0.8177317 − 0.00) = 0.5765

Hitung f (x0 ) = 0.57652 + 1 = 1.3324

(c) Hitung y0 = c ∗ U 2 = 1.67 ∗ 0.6128 = 1.0234

(d) Karena y0 ≤ f (x0 ), maka ambil X = x0 = 0.5765 => Stop.

Jadi bilangan acak yang diperoleh adalah X = 0.1496, 0.2592, 0.5765.

Berikut ini dua contoh macro minitab untuk kasus f (x) = x2 + 1, 0 < x < 0.8177317. Ke-

dua macro tersebut pada dasarkan adalah sama, hanya saja berbeda penggunaan WHILE

dan DO dalam loopingnya. Macro ini disimpan di folder ”d : \suliadi\komputasi” dengan

nama file ”armxkuadratplussatu.mac” dan ”armxkuadratplussatu-b.mac”

File Macro: armxkuadratplussatu.mac


gmacro armxkuadratplussatu
### Note k1=banyakanya data yang akan dibangkitkan
### Kolom k2 = kolom tempat menyimpan data bangkitan
### Note c (bilangan >= fmax) dari contoh diambil c=1.67
### f(x) =x^2+1, 0 < x < 0.8177317 ==> a = 0; b = 0.8177317
### x0=a+U1(b-a) = 0 + U1(0.8177317-0) = 0.8177317*U1
### y0 = c * U2 = 1.67*U2
noecho
let k8=1 ### counter
while k8<=k1
mlabel 1
random 2 c1; ### membangkitkan 2 bilangan U(0,1)
uniform 0 1.
let k3=c1(1) ### U1=k3
let k4=c1(2) ### U2=k4
let k5=0.8177317*k3 ### x0 = k5 =a+U1(b-a) = 0.8177317*U1
let k6=(k5**2)+1 ### f(x0)=f(k5)=(k5**2)+1
let k7=1.67*k4 ### menghitung y0
if k7<=k6 ### Jika y0<=f(x0)
let ck2(k8)=k5
let k8=k8+1
else ### Jika y0 > f(x0)
goto 1
endif
endwhile
endmacro

Hal 23 dari 141


Berikut ini cara menjalankan macro ”armxkuadratplussatu.mac”, dengan k1=banyaknya

bilangan yang akan dibangkitkan=10000, dan k2=kolom tempat menyimpan data bangk-

itan = 2.

Menjalankan: armxkuadratplussatu.mac
MTB > let k1=10000
MTB > let k2=2
MTB > %armxkuadratplussatu
Executing from file: D:\Suliadi\Komputasi\armxkuadratplussatu.mac
MTB >

File: armxkuadratplussatu-b.mac
gmacro armxkuadratplussatu-b
### Note k1=banyakanya data yang akan dibangkitkan
### Kolom k2 = kolom tempat menyimpan data bangkitan
### Note c (bilangan >= fmax) dari contoh diambil c=1.67
### f(x) =x^2+1, 0 < x < 0.8177317 ==> a = 0; b = 0.8177317
### x0=a+U1(b-a) = 0 + U1(0.8177317-0) = 0.8177317*U1
### y0 = c * U2 = 1.67*U2
noecho
do k8=1:k1
mlabel 1
random 2 c1; ### membangkitkan 2 bilangan U(0,1)
uniform 0 1.
let k3=c1(1) ### U1=k3
let k4=c1(2) ### U2=k4
let k5=0.8177317*k3 ### x0 = k5 =a+U1(b-a) = 0.8177317*U1
let k6=(k5**2)+1 ### f(x0)=f(k5)=(k5**2)+1
let k7=1.67*k4 ### menghitung y0
if k7<=k6 ### Jika y0<=f(x0)
let ck2(k8)=k5
else ### Jika y0 > f(x0)
goto 1
endif
enddo
endmacro

Menjalankan: armxkuadratplussatu-b.mac
MTB > let k1=10000
MTB > let k2=2
MTB > %armxkuadratplussatu-b
Executing from file: D:\Suliadi\Komputasi\armxkuadratplussatu-b.mac
MTB >

Hal 24 dari 141


80

70
f(x) = x2+1
60

50

40

30

20

10

0
0.005
0.025
0.045
0.065

0.105
0.125
0.145
0.165

0.205

0.245
0.265
0.285
0.305

0.345

0.385
0.405
0.425
0.445

0.485
0.505
0.525
0.545
0.565
0.585

0.625
0.645
0.665
0.685

0.725

0.765
0.785
0.805
0.085

0.185

0.225

0.325

0.365

0.465

0.605

0.705

0.745
Figure 2.7. Plot f (x) = x2 + 1 pada selang 0 < x < 0.8177317 (garis putus-putus),
beserta histogram 8000 data hasil bangkitan dari distribusi tersebut.

Perhatikan dari contoh di atas, bahwa untuk mendapatkan satu bilangan acak dengan

metode ARM kadang-kadang kita harus mengulang beberapa kali. Pada bilangan acak

ke-1 dan ke-3 harus diulang satu kali, tapi pada bilangan acak ke-2 harus mengulang 3

kali.

Gambar 2.8 menyajikan histogram dari pembangkitan bilangan acak dengan distribusi

f (x) = x2 + 1 untuk 8000 bilangan acak.

Contoh 2.2.13. Bangkitkan bilan 3 bilangan acak dengan distribusi f (x) =



(3/16) x, 0 < x < 4 dengan menggunakan metode ARM. Jawab: Untuk membangk-

itkan bilangan acak dengan metode ARM harus diperiksa dulu batas atas dan batas

bawah selang X, batas bawah =a=0 dan batas atas = b= 4 sehingga batas selang x

terpenuhi. Pada selang 0 < x < 4 fungsi f (x) naik dengan maksimum dari f (x) terjadi

pada saat x = 4 jadi f max = f (4) = (3/16) 4 = 3/8 = 0.375. Karena f max < ∞ maka

metode ARM dapat dipergunakan. Untuk memastikan, bisa juga melalui plot fungsi

f (x) = 3/16 x, 0 < x < 4.

Langkah-langkah:

(i) Menentukan c ≥ f max. Diketahui f max = 3/8 = 0.375, jadi ambil c = 0.375, serta

a = 0, b = 4.

Hal 25 dari 141


0.40

0.35

0.30
f(x)=(3/16)x1/2
0.25

0.20

0.15

0.10

0.05

0.00
0.00 0.50 1.00 1.50 2.00 2.50 3.00 3.50 4.00


Figure 2.8. Plot f (x) = (3/16) x pada selang 0 < x < 4, terlihat fungsi naik pada
selang tersebut dan maksimum pada x = 4.

(ii) Untuk bilangan acak ke-1

(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.5994 dan

U2=0.9799

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.5994(4.0 − 0.00) = 2.3976



Hitung f (x0 ) = (3/16) 2.3976 = 0.2903

(c) Hitung y0 = c ∗ U 2 = (0.3375) ∗ 0.9799 = 0.3675

(d) Karena y0 > f (x0 ) maka kembali ke-(a)

(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.1241 dan

U2=0.2343

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.1241(4.0 − 0.00) = 0.4962



Hitung f (x0 ) = (3/16) 0.4962 = 0.1321

(c) Hitung y0 = c ∗ U 2 = (0.3375) ∗ 0.2343 = 0.0879

(d) Karena y0 ≤ f (x0 ), maka ambil X = x0 = 0.4962 => Stop.

(iii) Untuk bilangan acak ke-2

(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.8667 dan

U2=0.1162

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.8667(4.0 − 0.00) = 3.4669

Hal 26 dari 141


140

120
f(x)=(3/16)x^(0.5)
100

80

60

40

20

0
0 0.15 0.3 0.45 0.6 0.75 0.9 1.05 1.2 1.35 1.5 1.65 1.8 1.95 2.1 2.25 2.4 2.55 2.7 2.85 3 3.15 3.3 3.45 3.6 3.75 3.9


Figure 2.9. Plot f (x) = (3/16) x pada selang 0 < x < 4 (garis putus-putus), beserta
histogram 8000 data hasil bangkitan dari distribusi tersebut.


Hitung f (x0 ) = (3/16) 3.4669 = 0.3491

(c) Hitung y0 = c ∗ U 2 = (0.3375) ∗ 0.1162 = 0.0436

(d) Karena y0 ≤ f (x0 ), maka ambil X = x0 = 3.4669 => Stop.

(iv) Untuk bilangan acak ke-3

(a) Bangkitkan dua bilangan acak dari U(0,1), diperoleh: U1=0.7635 dan

U2=0.1227

(b) Hitung x0 = a + U 1(b − a) = 0.0 + 0.7635(4.0 − 0.00) = 3.0542



Hitung f (x0 ) = (3/16) 3.0542 = 0.3277

(c) Hitung y0 = c ∗ U 2 = (0.3375) ∗ 0.1227 = 0.046

(d) Karena y0 ≤ f (x0 ), maka ambil X = x0 = 3.0542 => Stop.

Jadi bilangan acaknya adalah: X = 0.4962, 3.4669, 3.0542.

Macro Minitab.

File: armtigaperenambelasakarx.mac
gmacro armtigaperenambelasakarx
### Note k1=banyakanya data yang akan dibangkitkan
### Kolom k2 = kolom tempat menyimpan data bangkitan
### Note c (bilangan >= fmax) dari contoh diambil c=0.375
### f(x) =(3/16)x^(0.5), 0 < x < 4 ==> a = 0; b = 4
### x0=a+U1(b-a) = 0 + U1(4-0) = *U1

Hal 27 dari 141


### y0 = c * U2 = 1.67*U2
noecho
let k8=1 ### counter
while k8<=k1
mlabel 1
random 2 c1; ### membangkitkan 2 bilangan U(0,1)
uniform 0 1.
let k3=c1(1) ### U1=k3
let k4=c1(2) ### U2=k4
let k5=4*k3 ### x0 = k5 =a+U1(b-a) = 4*U1
let k6=(3/16)*(k5**0.5) ### f(x0)=f(k5)=(3/16)*x^(0.5)
let k7=0.375*k4 ### menghitung y0
if k7<=k6 ### Jika y0<=f(x0)
let ck2(k8)=k5 ### simpan X=x0
let k8=k8+1
else ### Jika y0 > f(x0)
goto 1 ### kembali bangkitkan U1 & U2
endif
endwhile
endmacro

Menjalankan: armtigaperenambelasakarx.mac
MTB > let k1=1000
MTB > let k2=2
MTB > %armtigaperenambelasakarx
Executing from file: D:\Suliadi\Komputasi\armtigaperenambelasakarx.mac
MTB > hist c2

2.3 Pembangkitan bilangan acak diskrit

Untuk membangkitkan bialangan acak dari peubah acak kontinyu, metode inverse trans-

formation method (ITM) tidak selalu berhasil. Akan tetapi untuk peubah acak diskrit,

metode ITM selalu berhasil. Oleh karena itu untuk membangkitkan bilangan acak dari

peubah acak diskrit yang dibahas hanya metode ITM.

Sebagaimana pada peubah acak kontinyu, tahapan penting dalam metode ini adalah

mencari fungsi distribusi dari peubah acak tersebut. Misalkan probability mass function

(pmf) dari peubah acak X adalah

f(x) = P (X = x), untuk X = a1, a2, . . . , am; di mana a1 < a2 < · · · < am.

Hal 28 dari 141


Figure 2.10. Histigram dari bangkitan dengan macro armtigaperenambelasakarx.mac.

Jadi nilai yang mungkin untuk peubah acak X ada sebanyak m, yaitu

a1 , a2 , . . . , am ; dengan syarat a1 < a2 < · · · < am . ALgoritma ITM untuk peubah acak

diskrit adalah

(a) Carilah fungsi distribusi F (x) = P (X ≤ x) untuk X = a1 , a2 , . . . , am . Jadi hitunglah

F (a1 ) = P (X ≤ a1 ) = P (X = a1 )

F (a2 ) = P (X ≤ a2 ) = P (X = a1 ) + P (X = a2 )

F (a3 ) = P (X ≤ a3 ) = P (X = a1 ) + P (X = a2 ) + P (X = a3 )
.. ..
..

F (am ) = P (X ≤ am ) = P (X = a1 ) + P (X = a2 ) + · · · + P (X = am ) = 1.0

(b) Bangkitkan U=U(0,1)

(c) Ambil i = 1 dan lakukan iterasi (i)-(iii) sampai stop

(i) Ambil X0 = ai . Perhatikan bahwa F (X0 ) = F (ai ).

(ii) Jika U ≤ F (X0 ) maka ambil X = X0 dan stop.

(iii) Sedangkan jika U > F (X0 ) maka i = i + 1 dan kembali (i).

Hal 29 dari 141


Contoh 2.3.1. Bangkitkan 3 bilangan acak dari distribusi Bernoulli(0.75).

Jawab. Jika X ∼ Bernoulli(0.75), maka nilai yang mungkin adalah X = 0, 1 dan m = 2

dengan a1 = 0 dan a2 = 1. Fungsi masa peluang dari X adalah

P (X = x) = px (1 − p)1−x = 0.75x (0.25)1−x .

Algoritma:

• mencari F (ai ), i = 1, 2

F (a1 ) = F (0) = P (X ≤ 0) = P (X = 0) = 0.750 (0.25)1 = 0.25

F (a2 ) = F (1) = P (X ≤ 1) = P (X = 0) + P (X = 1) = 0.25 + 0.751 (0.25)0 = 1.0

• Untuk bilangan acak ke-1

• bangkitkan U=U(0,10) didapatkan U = 0.5219

• Tetapkan i = 1

(i) X0 = ai = a1 = 0. F (X0 ) = F (0) = 0.25.

(ii) U > F (0) maka i = i + 1 = 2 dan kembali ke-(1).

(i) X0 = ai = a2 = 1. F (X0 ) = F (1) = 1.0.

(ii) U ≤ F (1) maka X = X0 = 1 ⇒ dan stop.

• Untuk bilangan acak ke-2.

• bangkitkan U=U(0,10) didapatkan U = 0.7229

• Tetapkan i = 1

(i) X0 = ai = a1 = 0. F (X0 ) = F (0) = 0.25.

(ii) U > F (0) maka i = i + 1 = 2 dan kembali ke-(1).

(i) X0 = ai = a2 = 1. F (X0 ) = F (1) = 1.0.

(ii) U ≤ F (1) maka X = X0 = 1 ⇒ dan stop.

• Untuk bilangan acak ke-3.

Hal 30 dari 141


• bangkitkan U=U(0,10) didapatkan U = 0.1637

• Tetapkan i = 1

(i) X0 = ai = a1 = 0. F (X0 ) = F (0) = 0.25.

(ii) U ≤ F (0) maka X = X0 = 0 ⇒ dan stop.

Jadi bilangan acak yang diperoleh adalah X = 1, 1, 0.

Untuk melakukan pembangkitan bilangan acak dengan macro minitab, maka setiap nilai

X, yaitu a1 , a2 , . . . , am dan juga F (a1 ), F (a2 ), . . . , F (am ) akan disimpan dalam dua kolom.

Sebelum macro dijalankan, maka X=0,1 akan diletakkan di C1, sedangkan F (0) dan (F (1)

akan disimpan di C2. Berikut ini perintahnya:

Inisialisasi/persiapan
MTB > set c1 #### Memasukkan nilai X di C1
DATA> 0
DATA> 1
DATA> end
MTB > set c2 #### Memasukkan nilai F(x) di C2
DATA> 0.25
DATA> 1.0
DATA> end
MTB >

File Macro: bernoulli.mac


gmacro bernoulli
### Note k1=banyakanya data yang akan dibangkitkan
### Kolom k2 = kolom tempat menyimpan data bangkitan
### Kolom C1 tempat nilai-nilai X
### Kolom C2 tempat F(x)
### Kolom C3 tempat menempatkan data random U(0,1)
### Kolom C1-C3 tidak boleh digunakan

noecho
let k3=1 ### k3=counter
while k3<=k1
random 1 c3; ### membangkitkan 1 bilangan U(0,1)
uniform 0 1.
let k4=c3(1) ### k4=U(0,1)
let k5=1 ### counter k5=i
mlabel 1
let k6=C2(k5) ### k5=F(Xi)

Hal 31 dari 141


if k4<=k6 ### U<=F(x)
let ck2(k3)=c1(k5)
Let k3=k3+1
else ### Jika y0 > f(x0)
let k5=k5+1 ### i=i+1
goto 1 ### kembali (1)
endif
endwhile
endmacro

Jalankan Macro
MTB > let k1=10000
MTB > let k2=5
MTB > %bernoulli
Executing from file: D:\Suliadi\Komputasi\bernoulli.mac
MTB > tall c5
Tally for Discrete Variables: C5
C5 Count
0 2499
1 7501
N= 10000
MTB >

Catatan: dari 10000 data bangkitan ada 2499 untuk X=0 dan 7501 untuk x=1; Proporsi

x=0 adalah 2499/10000=0.2499 dan proporsi x=1 adalah 7501/10000=0.7501. Pro-

porsi hasil bangkitan sangat dekat dengan proporsi teoritik (yang seharusnya), yaitu

P(X=0)=0.25 dan P(X=1) = 0.75.

Contoh 2.3.2. Bangkitkan 3 bilangan acak untuk peubah acak X yang mempunyai fungsi

masa peluang sebagai berikut


x 1 1.5 2.5 4 6
P(X=x) 0.25 0.15 0.15 0.25 0.2
Jawab: Dari tabel di atas diperoleh m = 5, x = a1 , a2 , . . . , a5 dengan a1 = 1, a2 =

1.5, a3 = 2.5, a4 = 4, a5 = 6.

Langkah-langkahnya adalah:

Hal 32 dari 141


• Mencari F (x). Dari tabel peluang diatas bisa diperoleh F (x) = P (X ≤ x)

⇒F (X = a1 ) = F (1) = P (X ≤ 1) = P (X = 1) = 0.25

⇒F (X = a2 ) = F (1.5) = P (X ≤ 1.5) = P (X = 1) + P (X = 1.5) = 0.25 + 0.15 = 0.40

dst

Diperoleh
x 1 1.5 2.5 4 6
P(X=x) 0.25 0.15 0.15 0.25 0.2
F(x) 0.25 0.40 0.55 0.80 1.00

• Untuk bilangan acak ke-1

• bangkitkan U=U(0,10) didapatkan U = 0.0626

• Tetapkan i = 1

(i) X0 = ai = a1 = 1. F (X0 ) = F (1) = 0.25.

(ii) U ≤ F (1) maka X = x0 = 1 ⇒ Stop.

• Untuk bilangan acak ke-2

• bangkitkan U=U(0,10) didapatkan U = 0.7813

• Tetapkan i = 1

(i) X0 = ai = a1 = 1. F (X0 ) = F (1) = 0.25.

(ii) U > F (1) maka maka i = i + 1 = 2 dan kembali ke-(1).

(i) X0 = ai = a2 = 1.5. F (X0 ) = F (1.5) = 0.4.

(ii) U > F (1) maka maka i = i + 1 = 3 dan kembali ke-(1).

(i) X0 = ai = a3 = 2.5. F (X0 ) = F (2.5) = 0.55.

(ii) U > F (1) maka maka i = i + 1 = 4 dan kembali ke-(1).

(i) X0 = ai = a4 = 4. F (X0 ) = F (4) = 0.8.

(ii) U ≤ F (4) maka X = x0 = 4 ⇒ Stop.

• Untuk bilangan acak ke-3

• bangkitkan U=U(0,10) didapatkan U = 0.3845

Hal 33 dari 141


• Tetapkan i = 1

(i) X0 = ai = a1 = 1. F (X0 ) = F (1) = 0.25.

(ii) U > F (1) maka maka i = i + 1 = 2 dan kembali ke-(1).

(i) X0 = ai = a2 = 1.5. F (X0 ) = F (1.5) = 0.4.

(ii) U ≤ F (1.5) maka X = x0 = 1.5 ⇒ Stop.

Jadi hasil data bangkitannya adalah X = 1, 4, 1.5.

Berikut ini tahapan inisialisasi di Minitab, macro minitab, dan menjalankan macro

minitab. Perhatikan bahwa Macro minitab pada kasus ini adalah sama dengan macro

untuk kasus sebelumnya. Bahkan untuk semua jenis distribusi p.a. diskrit, macronya

adalah sama. Yang membedakan hanya pada tahap inisialisasi/persiarpan, yang meru-

pakan tahap memasukkan nilai x yang mungkin beserta F (x)-nya.

Inisialisasi/persiapan
MTB > set c1
DATA> 1
DATA> 1.5
DATA> 2.5
DATA> 4
DATA> 6
DATA> end
MTB > set c2
DATA> 0.25
DATA> 0.4
DATA> 0.55
DATA> 0.8
DATA> 1.0
DATA> end
MTB >

MAcro File: contohdiskrit2.mac


gmacro contohdiskrit2
### Note k1=banyakanya data yang akan dibangkitkan
### Kolom k2 = kolom tempat menyimpan data bangkitan
### Kolom C1 tempat nilai-nilai X
### Kolom C2 tempat F(x)
### Kolom C3 tempat menempatkan data random U(0,1)

Hal 34 dari 141


noecho
let k3=1 ### k3=counter
while k3<=k1
random 1 c3; ### membangkitkan 1 bilangan U(0,1)
uniform 0 1.
let k4=c3(1) ### k4=U(0,1)
let k5=1 ### counter k5=i
mlabel 1
let k6=C2(k5) ### k5=F(Xi)
if k4<=k6 ### U<=F(x)
let ck2(k3)=c1(k5)
Let k3=k3+1
else ### Jika y0 > f(x0)
let k5=k5+1 ### i=i+1
goto 1 ### kembali ke (i)
endif
endwhile
endmacro

Menjalankan dan hasilnya


MTB > let k1=1000
MTB > let k2=4
MTB > %contohdiskrit2
Executing from file: contohdiskrit2.MAC
MTB > Tally C4;
SUBC> count;
SUBC> percent.

Tally for Discrete Variables: C4


C4 Count Percent
1.0 261 26.10
1.5 145 14.50
2.5 156 15.60
4.0 240 24.00
6.0 198 19.80
N= 1000

Kalau diperhatikan antara persentase Xi dengan peluang teoritiknya sangat dekat, per-

bandingannya dapat dilihat pada tabel berikut ini:

Hal 35 dari 141


X Peluang Peluang
Teoritik data
bangkitan
1.0 0.25 0.261
1.5 0.15 0.145
2.5 0.15 0.156
4.0 0.25 0.240
6.0 0.20 0.198

2.4 Pembangkitan bilangan acak dengan Software

2.4.1 Pembangkitan bilangan acak: Minitab 16

Minitab menyediakan perintah untuk membangkitkan bilangan acak untuk berbagai

macam peubah acak , baik peubah acak diskrit maupun peubah acak kontinyu. Peubah

acak yang disediakan adalah peubah acak yang paling umum, yang biasa dipergunakan

dalam kehidupan sehari-hari.

Minitab menyediakan dua cara untuk membangkitakan bilangan acak, melalui perintah

langsung dan melalui menu. Baik perintah langsung maupuan menu, perintahnya sangat

sederhana. Yang perlu diketahui adalah parameter distribusi peubah acak tersebut.

2.4.1.1 Perintah langsung

Pembangkitan bilangan acak di Miitab melalui perintah langsung sangat berguna

ketika melakukan simulasi yang diulang berkali-kali, bahkan sampai ribuan kali. Bisa

dibayangkan repotnya jika kita mengulang dua hal berikut (i) membangkitkan bilangan

acak (2) menghitung suatu besaran statistik dari data bangkitan, dimana prosedur (i)

dan (ii) tersebut diulang ribuan kali. Tetapi dengan printah macro/progam Minitab,

Kedua hal di atas dapat dikerjakan ribuan kali, hanya dengan perintah sederhana.

Perintah di minitab dilakukan pada jendelas ”Session”. Jadi pastikan kita berada pada

jendela ”Session” dengan meng-klik jendela tersebut. Tanda bahwa Minitab telah siap

menerima perintah adalah munculnya ”MTB >”, yang disebut dengan MTB prompt.

Hal 36 dari 141


Menjalankan dan hasilnya
MTB > help random
MTB > Random 1000 c1;
SUBC> Exponential 5.
MTB > desc c1

Descriptive Statistics: C1

Variable N N* Mean SE Mean StDev Minimum Q1 Median Q3


C1 1000 0 5.030 0.162 5.133 0.005 1.411 3.451 6.838

Variable Maximum
C1 41.120

MTB >

Baris terakhir adalah bentuk dari MTB prompt.

Jika pada jendela ”Session” tidak muncul tanda MTB prompt, maka hal itu menunjukkan

bahwa Minitab tidak dalam mode perintah langsung. Untuk mengubahnya menjadi mode

perintah langsung, kita bisa mengikuti langkah berikut:

(1) Klik pada jendela ”Session”

(2) Klik menu ”Editor”, pastikan bahwa bagian menu ”Enable Commands” bertanda
√ √
centang . Jika belum, klik saja saja sampai muncul tanda .

(3) Pastikan juga pada bagian ”Output Editable” jangan di checklist/centang.

Pada jendela ”Session” sekarang sudah ada MTB prompt ”MTB >”. Kita bisa

menuliskan perintah disebelah kanan tanda >.

Ada dua bagian utama dalam perintah untuk membangkitkan data, yaitu (1) perintah

utama; (2) sub command. Perintah utama bersifat wajib, sedangkan sub command jika

tidak diberikan maka yang dibangkitkan adalah peubah acak N (0, 1). Jika kita ingin

memberikan sub command, maka pada perintah utama harus diakhiri dengan tanda

titik-koma ”;”, setelah dienter maka akan muncul ”Subc¿” sub command prompt.

Hal 37 dari 141


Perintah utama.

MTB > RANDOM N C . . . C

Keterangan: Untuk memnbangkitakan bilangan acak sebanyak ”N” untuk kolom-kolom

C . . . C. Jadi setiap kolom akan dibangkitkan sebanyak ”N” bilangan acak. Jika perintah

di atas tanpa diberi tambahan perintah apa-apa, maka yang akan dibangkitkan adalah

peubah acak N (0, 1).

Sub Command.

Sub command digunakan untuk menentukan distribusi dan parameter distribusinya.

Jika kita ingin membangkitkan peubah acak selain N (0, 1), maka sub command harus

diberikan. Selain itu pada perintah utama, harus diakhiri dengan tanda titik-koma. Jika

subcommand lebih dari satu, maka subcommand juga diakhiri dengan tanda titik-koma,

kecuali subcommand terakhir diakhiri dengan tanda titik. Berikut ini subcommand un-

tuk membangkitkan bilangan acak dari beberapa distribusi yang disediakan oleh Minitab

16. Detail dari distribusi dapat dilihat pada bagian 2.4.1.3.

Hal 38 dari 141


Subcommand Contoh Keterangan
CHISQUARE K RANDOM 10 C1 C2; Distribusi chisquare dengan db=k, χ(k)
CHISQ 5. Membangkitkan masing-masing 10 bilangan acak dist. χ(5) disimpan di C1 dan C2
NORMAL K1 K2 RANDOM 10 C1 C2; Normal µ = k1, σ = k2
NORMAL 10 5. Membangkitkan masing-masing 10 bilangan acak dist. N (10, 25) disimpan di C1 dan
C2
F K1 K2 RANDOM 10 C1 C2; Distribusi F (k1, k2); db1 = k1; db2 = k2
F 2 15. Membangkitkan masing-masing 10 bilangan acak dist. F (2, 15) disimpan di C1 dan
C2
T K RANDOM 10 C1 C2; Distribusi t(k); db = k;
T 2. Membangkitkan masing-masing 10 bilangan acak dist. t(2) disimpan di C1 dan C2
UNIFORM [K1 K2] RANDOM 10 C1 C2; Uniform(a,b) dimana a=k1 dan b=k2.
UNIFORM 0 10. Membangkitkan masing-masing 10 bilangan acak dist. U (0, 10) disimpan di C1 dan
C2
BERNOULLI K RANDOM 10 C1 C2; Bernoulli(p) dengan p = k.
BERNOULLI 0.75. Membangkitkan masing-masing 10 bilangan acak dist. bernoulli(0.75) disimpan di
C1 dan C2
BINOMIAL K1 K2 RANDOM 10 C1 C2; Binomial(n,p) dengan n = k1, p = k2
BINOMIAL 25 0.25. Membangkitkan masing-masing 10 bilangan acak dist. Binom(25, 0.25) disimpan di
C1 dan C2
GEOMETRIC K RANDOM 10 C1 C2; Geometrik - non event (p) dengan p = k
NONEVENT GEOMETRIC 0.25; Membangkitkan masing-masing 10 bilangan acak dist. Geometrik − nonevent(0.25)
NONEVENT. disimpan di C1 dan C2
GEOMETRIC K RANDOM 10 C1 C2; Geometrik - total (p) dengan p = k
TOTAL GEOMETRIC 0.25; Membangkitkan masing-masing 10 bilangan acak dist. Geometrik − total(0.25)
TOTAL. disimpan di C1 dan C2
NEGBINOMIAL K1 K2 RANDOM 10 C1 C2; Neg-binomial - non event (r,p) dengan r = k1, p = k2
NONEVENT NEGBINOM 5 0.25; Membangkitkan masing-masing 10 bilangan acak dist. Neg.Binom-nonevent(5,0.25)
NONEVENT. disimpan di C1 dan C2
NEGBINOMIAL K1 K2 RANDOM 10 C1 C2; Neg-binomial - Total (r,p) dengan r = k1, p = k2
TOTAL NEGBINOM 5 0.25; Membangkitkan masing-masing 10 bilangan acak dist. Neg.Binom-Total(5,0.25)
TOTAL. disimpan di C1 dan C2
HYPERGEOM K1 K2 K3 RANDOM 10 C1 C2; Distribusi Hipergeometrik(N,M,K), di mana N = k1, M = k2, K = k3
HYPERGEOM 15 7 5. Membangkitkan masing-masing 10 bilangan acak dist. Hipergeometrik(15,7,5)
disimpan di C1 dan C2
DISCRETE C C RANDOM 10 C1 C2; Distribuis diskrit bebas, x di kolom C pertama dan peluangnya di kolom C kedua
DISCRETE C3 C4. Membangkitkan masing-masing 10 bilangan acak discrete disimpan di C1 dan C2
INTEGER K1 K2 RANDOM 10 C1 C2; Unifor Integer (a,b), dimana a=k1 dan b=k2
INTEGER 0 100. Membangkitkan masing-masing 10 bilangan acak uniform integer (0,100) disimpan di
C1 dan C2
POISSON K RANDOM 10 C1 C2; Poisson(µ), µ = k
POISS 5. Membangkitkan masing-masing 10 bilangan acak Poisson(5) disimpan di C1 dan C2
BETA K1 K2 RANDOM 10 C1 C2; Beta(α, β), dengan α = k1, β = k2.
BETA 5 2. Membangkitkan masing-masing 10 bilangan acak Beta(5,2) disimpan di C1 dan C2
CAUCHY [K1 [K2]] RANDOM 10 C1 C2; Cuachy(θ, σ), dengan parameter lokasi = θ = k1 dan parameter skala = σ = k2
CAUCHY 2 5. Membangkitkan masing-masing 10 bilangan acak Cauchy(2,5) disimpan di C1 dan C2
EXPONENTIAL [K1 [K2]] RANDOM 10 C1 C2; Exponen(µ), dimana µ = k1. Nilai K2 boleh ada boleh tidak, dimana K2 adalah
batas bawah, nilai X¡K2 akan dibuang
EXPONENTIAL 5. Membangkitkan masing-masing 10 bilangan acak Eksponen(5) disimpan di C1 dan
C2
GAMMA K1 K2 [K3] RANDOM 10 C1 C2; Gamma(α, β), dimana α = k1, β = k2, dan K3 = batas bawah, nilai X < K3 akan
dibuang
GAMMA 2 1. Membangkitkan masing-masing 10 bilangan acak Gamma(2,1) disimpan di C1 dan
C2
LOGISTIC [K1 [K2]] RANDOM 10 C1 C2; Logistic(µ, β), dimana µ = k1, β = k2.
LOGISTIC 2 1. Membangkitkan masing-masing 10 bilangan acak Logistik(2,1) disimpan di C1 dan
C2
WEIBULL K K [K] RANDOM 10 C1 C2; Weibull(γ, β), dimana γ = k1, β = k2, k3 adalah treshold, X < K3 akan dibuang
WEIBULL 2 3. Membangkitkan masing-masing 10 bilangan acak Weibull(2,3) disimpan di C1 dan C2

2.4.1.2 Pembangkitan bilangan acak melalui menu [Minitab 16]

Cara membangkitkan bilangan acak dengan menggunakan menu di Minitab sangat meu-

dah dan sederhana. Yang perlu diketahui adalah distribusi dari peubah acak yang kita

inginkan. Fungsi desitas dan distribusi untuk beberapa peubah acak dapat dilihat pada

bagian 2.4.1.3. Pada bagian ini akan deiberikan garis besar/perintah umum dengan con-

toh beberapa distribusi. Perintah pembangkitan bilangan acak ada pada menu

Hal 39 dari 141


Figure 2.11. Distribusi yang disediakan oleh Minitab dalam pembangkitan bilangan acak
melalui menu Calc => Random Data.

Calc ==> Random Data

Kemudian pilih distribusi yang diinginkan (lihat Gambar2.11. Setelah kita pilih distribusi

tertentu, selanjutkan akan muncul jendela pembangkitan data (lihat Gambar 2.12). Ada

tiga isian penting, yaitu

(i) Number of row of data to generate. Banyaknya data yang ingin kita bangkitkan

untuk setiap kolomnya.

(ii) Store in column(s). Tuliskan kolom-kolom tempat bilangan acak ingin kita simpan.

(iii) Parameter distribusi, di sini sangat tergantung dari distribusinya. Sebagai contoh

untuk distribusi Chi-Square, maka parameternya adalah derajat bebas atau degree

of freedom. Sedangkan untuk Binomial, parameternya adalah n = banyaknya per-

cobaan (obyek) dan p proporsi sukses.

Catatan:

Hal 40 dari 141


Figure 2.12. Tampilan jendela untuk membangkitkan bilangan acak untuk beberapa dis-
tribusi. Perhatikan ada beberapa kotak yang harus diisi, terkait dengan banyaknya bi-
langan yang ingin dibangkitkan, parameter distribusi, dan kolom-kolom tempat meny-
impannya.

• Untuk beberapa distribusi (tidak semua), minitab menyediakan isian untuk thresh-

old k. Jika threshold ini kita berikan, maka minitab hanya akan mengambil bilan-

gan acak yang lebih dari atau sama dengan threshol, sedangkan X yang kurang dari

threshold akan dibuang. Threshold ini adalah kasus khusus, sehingga untuk dis-

tribusi yang standard nilai threshold tidak perlu diubah-ubah, biarkan apa adanya.

• Untuk distribusi Geometrik dan distribusi Binomial negatif, masing-masing mem-

punyai dua tipe yaitu ”TOTAL” dan ”NON-EVENT” (keterangan lihat bagian

2.4.1.3). Untuk menentukan pilihan, kita harus menekan tombol ”Option”, yang

akan memunculkan dua pilihan tipe ”TOTAL” dan ”NON-EVENT”.

2.4.1.3 Jenis-jenis distribusi

Pada bahasan ini akan dijelaskan beberapa distribusi yang umum digunakan yang dise-

Hal 41 dari 141


diakan oleh Minitab, yang dibagi menjadi tiga bagian (menurut menu di Minitab) yaitu:

• Peubah acak kontinyu yang umum digunakan

1. X ∼ Chisquare(v): parameter: db=v, dengan pdf

1
f (x|v) = xv/2−1 e−x/2 , 0 ≤ x ≤ ∞, v = 1, 2, . . .
Γ(v/2)2v/2

2. X ∼ Normal(µ, σ 2 ): parameter: µ dan σ, dengan pdf

1 1 x−µ 2
f (x|µ, σ 2 ) = √ e− 2 ( σ ) , −∞ < x, µ < ∞, σ > 0.
σ 2π

3. X ∼ F(v1, v2): Parameter db pembilang=v1, db penyebut=v2, dengan pdf


  v1/2
Γ v1+v2
2 v1 x(v1−2)/2
f (x|v1, v2) =
Γ v1 Γ v2
   (v1+v2)/2
2 2
v2 1 + v1 x
v2
di mana 0 ≤ x ≤ ∞, v1, v2 = 1, 2, . . .

4. X ∼ Uniform(a, b): parameter a dan b, dengan pdf

1
f (x|a, b) = , a ≤ x ≤ b.
b−1

• Peubah acak diskrit

1. X ∼ Bernoulli(p): paramater p dengan pdf

f (x|p) = P (X = x|p) = px (1 − p)1−x , x = 0, 1, p > 0.

2. X ∼ Binomial(n, p): parameter n dan p, dengan pdf


 
n x
f (x|n, p) = P (X = x|n, p) = p (1 − p)n−x , x = 0, 1, · · · , n; p > 0.
x

3. X ∼ Geometrik(p): parameter p, dengan pdf:

f (x|p) = P (X = x|p) = p(1 − p)x−1 ; x = 1, 2, · · · ; 0 ≤ p ≤ 1.

Minitab 16 (dan versi sesudahnya menyediakan dua jenis bangkitan, yaitu

(i) X: Total percobaan yang diperlukan untuk mendapatkan suskses per-

tama, yang disebut sebagai ”TOTAL”, dengan nilai yang mungkin

x = 1, 2, · · · ;

Hal 42 dari 141


(ii) Y = X − 1: Banyaknya percobaan gagal sebelum sukses yang pertama,

yang dapat diperoleh dengan Y = X − 1. Minitab menyebutnya sebagai

”NONEVENT”.

4. Peubah acak Binomial negatif. Peubh acak ini digunakan untuk memodelkan

banyaknya percobaan yang diperlukan sampai didapatkan r sukses. Seba-

gaimana peubah acak geometrik, Minitab juga menjediakan dua jenis bangk-

itan yaitu:

(i) X: Total percobaan yang diperlukan untuk mendapatkan r sukses per-

tama, yang disebut sebagai ”TOTAL”, dengan nilai yang mungkin

x = r, r + 1, r + 22, · · · dan parameter p. Dalam pengantar peluang,

biasanya jenis ini yang diberikan.


 
x−1 r
f (x|r, p) = P (X = x|r, p) = p (1 − p)x−r ;
r−1
x = r, r + 1, r + 2, · · · ; 0 ≤ p ≤ 1;

(ii) Y = X − r: Banyaknya percobaan gagal sebelum mendapatkan r sukses

yang pertama, yang dapat diperoleh dengan Y = X − r. Minitab menye-

butnya sebagai ”NONEVENT”. Karena x = r, r + 1, r + 2, · · · , maka

nilai Y yang mungkin adalah y = 0, 1, 2 · · · .


 
r+x−1 r
f (y|r, p) = P (Y = y|r, p) = p (1 − p)x ;
x
x = 0, 1, 2, · · · ; 0 ≤ p ≤ 1;

5. X ∼ Hipergeometrik(N, M, K): parameter: N, M, K dengan pdf


M N −M
 
x K−x
f (x|N, M, K) = P (X = x|N, M, K) = N
 ;
K
x = 0, 1, · · · , K; N, M, K ≥ 0; M − (N − K) ≤ x ≤ M.

6. Peubah acak diskrit dengan sembarang peluang. Yang dimaksud dengan

peubah acak diskrit dengan sembarang peluang adalah suatu peubah acak

Hal 43 dari 141


yang bertipe diskrit dengan nilai x yang mungkin beserta P (X = x) bersifat

bebas tetspi tetap memenuhi aksioma peluang. Sebagai contoh adalah


x 1 3 11 15 25
P(X=x) 0.10 0.15 0.35 0.20 0.20
7. X ∼ Uniform-Diskrit(a, b)=Integer(a, b). Peubah acak ini adalah versi diskrit

dari peubah acak Uniform. Untuk x = a, a + 1, a + 2, · · · , b peluangnya adalah

sama, sehingga

1
P (X = x) = , x = a, a + 1, a + 2, · · · , b; a, b ∈ Z(integer).
b−a+1

8. X ∼ Poisson(µ), parameter µ) dengan pdf:

eµ µ−x
f (x|µ) = P (X = x|µ) = ; x = 0, 1, 2, · · · ; µ ≥ 0
x!

• Peubah acak kontinyu lainnya

1. X ∼ Beta(α, β): parameter: α dan β, dengan pdf

1
f (x|α, β) = xα−1 (1 − x)β−1 , 0 ≤ x ≤ 1, α, β > 0
B(α, β)
Γ(α)Γ(β)
di mana B(α, β) =
Γ(α + β)

2. X ∼ Cauchy(θ, σ): parameter θ dan σ, dengan pdf:

1 1
f (x|θ, σ) =  ; −∞ < x, θ < ∞; σ > 0.
πσ 1 + x−θ 2
σ

3. X ∼ Eksponensial(µ): Parameter: µ dengan pdf

1 −x/µ
f (x|µ) = e , 0 ≤ x < ∞, µ > 0.
µ

Minitab juga memperbolehkan adanya threshold k. Jika threshold ini kita

berikan, maka X < k akan dibuang, tidak dimasukkan dalam bilangan acak.

4. X ∼ Gamma(α, β), dengan parameter α dan β. Pdf untuk distribusi ini adalah

1
f (x|α, β) = xα−1 e−x/β ; 0 ≤ x < ∞; α, β > 0.
Γ(α)β α

Minitab juga memperbolehkan adanya threshold k. Jika threshold ini kita

berikan, maka X < k akan dibuang, tidak dimasukkan dalam bilangan acak.

Hal 44 dari 141


5. X ∼ Logistik(µ, β) dengan parameter µ dan β dan pdf-nya adalah

1 e−(x−µ)/β
f (x|µ, β) = ; −∞ < x, µ < ∞; β > 0.
β [1 + e−(x−µ)/β ]2

6. X ∼ Weibull(γ, β) dengan parameternya γ dan β, dengan pdfnya

γ γ−1 −xγ /β
f (x|γ, β) = x e ; 0 ≤< ∞; γ, β > 0.
β

Minitab juga memperbolehkan adanya threshold k. Jika threshold ini kita

berikan, maka X < k akan dibuang, tidak dimasukkan dalam bilangan acak.

2.4.2 Pembangkitan bilangan acak dengan R

Hal 45 dari 141

Anda mungkin juga menyukai