bab4 pembangkit variable acak disket

Upload: daccessories-shop

Post on 06-Jul-2015

315 views

Category:

Documents


1 download

TRANSCRIPT

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    1/18

    Pembangkilan ValiabelAcak Di_kret4.1. Metode Transformasi Terbalik

    Andaikan kita ingin membangkitkan nilai variabel acak diskret X yang memilikifungsi masal probabilitas

    j = 0, 1, ... , Lpj = 1I

    Untuk mendapatkan ini, kita membangkitkan sebuah bilangan acak U - yaitu, Udidistribusikan secara seragam atas (0, 1) - dan menetapkan

    Xo if U

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    2/18

    54 Pengantar Simulasi

    KOMENTAR1. Persamaan di atas dapat ditulis secara algoritmis sebagai

    Membangkitkan bilangan acak UIf U < P o set X = .to and stopIf U < Po + PI set X = XI and stop~fU < Po + PI + Pi set X = Xz and stop

    2. Jika X " i ~ 0, diurutkan sehingga Xo < X I < X 2 , . dan jika kita misalkan Fmenandakan fungsi distribusi X, maka F ( X k ) = L ' = 0P, dan dengan demikian

    X akan sarna dengan X; jikaDengan kata lain, sesudah membangkitkan bilangan acak Ukita menentukan nilaiX dengan menemukan interval (F(xj _ I), F(xj) di mana U terletak [atau, dengancara yang sama, dengan menemukan kebalikan dari G(U)]. Karena alasan inilahpersarnaan di atas disebut metode transformasi terbalik diskret untuk mem-bangkitkan X.

    Jumlah waktu yang dibutuhkan untuk membangkitkan variabel acak diskretdengan metode di atas sebanding dengan jumlah interval yang harus dicari.Karena alasan ini kadang bermanfaat untuk mempertimbangkan kemungkinannilai Xj dari X dalam urutan menurun dari P i-Contoh 4a Jika kita ingin mensimulasikan variabel acak X sedemikian rupa

    P I = .20, P 2 = .15, P 3 = .25, P 4 =.40 di mana p, = P { X = j}maka kita dapat membangkitkan U dan mengerjakan yang berikut ini:

    Jika U < .20 set X = I dan stopJika U

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    3/18

    -p~ Vanrrhel..teak Diskret 55

    Jika -U < AO:;set X =4 dan stopJika U < :ti5 set X = 3 dan stopJika U< .~5setX= 1 dan stopSebaliknya set X =2

    Satu kasus di mana tidak perlu untuk mencari interval yang tepat di manabilangan acak terletak adalah jika variabel acak yang diinginkan merupakanvariabel aca.k seragam yang diskret. Dengan kata lain, andaikan kita ingin rnem-bangkitkan nilai X yang sama mungkinnya menggunakan salah satu nilai 1, ... ,n. Yaitu, P{X= j} = lin,} = 1, ... ,n. Dengan rnenggunakan hasil di atas kitadapat mencapai ini dengan membangkitkan Udan kemudian rnenetapkan

    X=j jika1 1 n

    Oleh karena ituXakan sama denganj jikaj - 1:,;,nlt

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    4/18

    56 Pengantar Simulasi

    Dengan kata lain, dimulai dengan urutan awal mana pun PI, P 2 , .. , P " kitamemilih salah satu posisi 1, ... ,n secara acak dan kemudian menukar tempatbilangan di dalarn posisi itu dengan bilangan dalam posisi n. Sekarang kitasecara acak memilih salah satu dari posisi 1, . . . , n - 1 dan menukar tempatbilangan di dalarn posisi ini dengan bilangan dalarn posisi n - 1,dan seterusnya.

    Mengingat bahwa Int(kU) + 1 akan sarna mungkinnya menggunakan salahsatu nilai 1,2, ... , k, kita melihat bahwa algoritma di atas untuk membangkit-kan permutasi acak dapat ditulis sebagai berikut:

    LANGKAH I: Misalkan P I, P 2, ... , P " merupakan permutasi mana pun dari 1,2, ... ,n (sebagai contob, kita dapat memilih P ; = j.j = 1, ... , n).Setk= n.Bangkitkan bilangan acak u dan misalkan 1= Int(kU) + 1.Tukar tempat nilai P I dan P s.Misalkan k = k - 1 dan jika k> 1 pergi ke Langkah 3.P I, ... , P; adalah permutasi acak yang diinginkan.

    LANGKAH2:LANGKAH3:LANGKAH4:LANGKAH5:LANGKAH6:

    Sebagai contoh, andaikan n = 4 dan permutasi awalnya adalah 1,2,3,4,. Jikanilai pertama dari I(yang sarna mungkinnya salah satu dari 1,2,3, atau 4) adalah1= 3, maka elemen dalarn posisi 3 dan 4 dipertukarkan tempatnya dan dengandemikian permutasi baru adalah 1, 2, 4, 3. Jika nilai berikutnya dari Iadalah f = = 1.maka elemen dalarn posisi 2, dan 3 dipertukarkan tempatnya sehingga permutasiyang baru adalah 1, 4, 2, 3. Jika nilai akhir dari Iadalah 1= 2, maka permutasiakhirnya adalah 1,4,2,3, dan ini adalah nilai permutasi acaknya.

    Salah satu sifat paling penting dalam algoritma di atas adalah algoritma tadijuga dapat digunakan untuk membangkitkan subset acak, misalkan ukuran r, daribilangan bulat 1, ... , n. Cukup ikuti algoritma tersebut hingga posisi n, n - J . .. , n - r + 1 dipenuhi. Elemen di dalam posisi ini merupakan subset acak. (Dalammelakukan ini kita selalu dapat mengandaikan bahwa r s : n/2; karenajika r > n/2maka kita dapat memilih subset acak ukuran n - r dan memisalkan elemen-ele-men yang tidak ada di dalam subset ini menjadi subset acak ukuran r.)

    Harus diperhatikan bahwa kemampuan untuk membangkitkan subset acak sangatpenting dalam percobaan kedokteran. Sebagai contoh, misalnya bahwa sebuahpusat medis merencanakan untuk mengetes obat baru yang dirancang untuk me-ngurangi kadar kolesterol darah pemakainya. Untuk mengetes keefektifannya,pusat medis tersebut merekrut 1000 orang sukarelawan untuk menjadi subjekdalam tes. Untuk memperhitungkan kemungkinan bahwa kadar kolesterol darah

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    5/18

    Pembangkitan Variabel Acak.Diskret 57

    para subjek mungkin terpengaruh oleh faktor luar dari tes terse but (seperti peru-bahan kondisi euaea), diputuskan untuk membagi para sukarelawan ke dalamdua kelompok berukuran 500 - kelompok pengobatan yang akan diberi obat dankelompok kontrol yang akan diberi plasebo. Baik sukarelawan maupun pemberiobat tidak akan diberi tahu siapa berada di dalam tiap kelompok (tes seperti inidisebut double-blind). Persoalannya adalah menentukan mana dari para sukare-lawan itu yang harus dipilih untuk masuk ke dalarn kelompok pengobatan. Jelasdiinginkan agar kelompok pengobatan dan kelompok kontrol semirip mungkindalam segala hal dengan pengeeualian bahwa para anggota kelompok pertamamenerima obat sementara para anggota kelompok kedua menerima plasebo; olehkarena itu akan mungkin untuk menyimpulkan bahwa perbedaan respons antarakedua kelompok benar-benar disebabkan oleh obat. Ada kesepakatan umum bahwaeara terbaik untuk meneapai hal ini adalah dengan memilih ke-500 orang sukare-lawan yang harus masuk kelompok pengobatan dengan eara yang sepenuhnya acak,yaitu, pilihan harus dilakukan sedemikian rupa sehingga masing-masing dari subset( 1 g g o ) 500 sukarelawan sarna mungkinnya menjadi himpunan (set) sukarelawan.Contoh 4c: Menghitung Rata-rata. Andaikan kita ingin mengaproksimasi a =

    L:' = 1 a(i)/n , di mana n besar dan nilai a(i), i = I, ... , n, rumit dan tidakmudah dihitung, Salah satu eara untuk meneapai ini adalah dengan memperha-tikan bahwa jika X adalah variabel aeak diskret yang seragam atas bilanganbulat 1, ... , n, maka variabel aeak a(X) memiliki rerata yang ditetapkan oleh

    E[a(X)] = t : a(lj P{X = i} = L 0 t o n ~ ) = a/.1 1,,1

    Oleh karena itu, jika kita membangkitkan k variabel aeak diskret yang seragamX;, i = I, ... , k - dengan membangkitkan k bilangan aeak U, dan menetapkanX; = Int(nU,) + 1 - maka tiap k variabel aeak a(X;) akan memiliki rerata adandengan demikian berdasarkan kaidah kuat bilangan besar maka jika k besar(walaupun jauh lebih kecil daripada n) rata- rata nilai ini harus kira-kira sarnadengan (j-. Oleh karena itu kita dapat mengaproksimasi (j dengan menggunakan

    a ! ' : ; L at.\),.1 !.

    Satu lagi variabel aeak yang dapat dihasilkan tanpa perlu mencari intervalyang relevan di mana bilangan aeak bersangkutan termasuk di dalamnya adalahgeometrik.

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    6/18

    58 Penganlar Simu/asi

    Contoh 4d lngatlah bahwa X dikatakan merupakan variabel acak geometrikdengan parameter p jika

    P {X = i} = pq I - I, i e 1 dimana q = 1 - PX dapat dianggap sebagai menggambarkan waktu keberhasilan pertarna ketikapercobaan independen, yang masing-masingnya merupakan keberhasilan de-ngan probabilitas p, dilaksanakan. Karena

    f P{X= i} = 1 - P{X> j - I},. ,= 1-P U pertama -1 percobaan semuanya gagal}- 1 )-1- -q , j?l

    kita dapat membangkitkan nilai X dengan membangkitkan bilangan acak Udan menetapkan X sarna dengan nilaij untuk mana

    1 _ s ' -1~ U< 1 _ qlatau, secara sepadan, untuk mana

    Yaitu, kita dapat mendefinisikan X denganx=Min U : q ' < 1 - U}

    Oleh karena itu, penggunaan fakta bahwa logaritma merupakan fungsi mono-ton, dan karenanya a < b sarna dengan log(a) < log(b), kita mendapatkanbahwa X dapat dinyatakan sebagai

    x = Min{j: j log(q) < log(I- U)}M. { .. > logt l - U ) }= In J: J !og(q)

    di mana ketidaksamaan terakhir berubah tanda karena log(q) negatifkarena 0< q < 1. Oleh karena itu, dengan menggunakan notasi Int( ) kita dapatmenyatakan X sebagia

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    7/18

    Pembangkitan Variabel Acak Diskret 59

    X I ( log(l - U )= ot + 1log(q)Akhirnya, dengan memperhatikan bahwa 1 - juga didistribusikan secara sera-gam pada (0, 1), maka

    X = = Int(IOg(U) + Ilog(q)juga geometrik dengan parameter p.

    4.2. Membangkitkan Variabel Acak PoissonVariabel acak X adalah Poisson dengan rerata A jika

    A 'P i = = P {X = i} = t'-.\ -.,I. i = O. I ...Kunci untuk pemakaian metode transformasi terbalik untuk membangkitkan vari-abel acak seperti ini adalah identitas berikut ini (terbukti dalam Bagian 2.4 dariBab 2): AP,+I =~PI' (4.1 )

    Berdasarkan pemakaian rekursi di atas untuk menghitung probabilitas Poissonketika diperlukan, algoritma transformasi terbalik untuk membangkitkan variabelacak Poisson dengan rerata A dapat dinyatakan sebagai berikut. (Kuantitas irnerujuk pada nilai yang sedang dipertirnbangkan; p = P, adalah probabilitasbahwa X sarna dengan i. dan F = F(i) adalah probabilitas bahwa X kurang dariatau sarna dengan i.)

    LANGKAH 1:LANGKAH2'LANGKAH3:LANGKAH4:LANGKAH5:

    Mernbangkitkan variabel acak U.i = = 0, P = e - A , F = PJika U < F , set X = i dan stop.p = = 'Ap/(i + 1 ), F = F +p, i = i + 1Pergi ke Langkah 3.

    (Oi atas harus diperhatikan bahwa ketika kita rnenulis, misalnya, i = i+ I, tidakdimaksudkan bahwa i sarna dengan i+ 1, tetapi nilai i harus ditambah dengan 1.)

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    8/18

    60 Pellgantar Simulasi

    Untuk melihat bahwa algoritma di atas benar-benar membangkitkan variabel acakPoisson dengan rerata A,perhatikan bahwa algoritma terse but lebih dahulu meng-hasilkan bilangan acak Udan kemudian periksa apakah U< e - ' A = p o atau tidak.Jika ya, algorirna ini menetapkan X = O . Jika tidak, maka algoritma tersebutmenghitung (dalam Langkah 4) P I dengan menggunakan rekursi (4.1). Algo-ritma tersebut sekarang mengecek apakah U'< p o + P I (di mana sisi kananmerupakan nilai baru dari F), dan jika ya algoritma tersebut menetapkan X =1; dan seterusnya.

    Algoritma di atas secara berturut-turut mengecek apakah nilai Poisson adalaho dan kemudian apakah nilai tersebut 1, kemudian 2, dan seterusnya. Jadi,jumlahperbandingan yang diperlukan akan 1 lebih besar daripada nilai Poisson yangdihasilkan. Oleh karena itu, secara rata-rata, algoritma di atas akan perlu melaku-kan pencarian I + A.Ini tidakjadi soaljika Akecil, namun dapat sangat ditingkat-kanjika Abesar. Sebenamya, karena variabel acak Poisson dengan rerata Apalingmungkin menggunakan salah satu dari dua nilai integral yang paling dekat denganA, seubah algoritma yang lebih efisien akan lebih dahulu mengecek salah satu darinilai-nilai ini, dan bukan mernulai pada 0 dan bekerja ke atas. Algoritrna 4-1, yangditulis dalam BASIC dan disajikan dalam Larnpiran Program, rnemisalkan I=Int(A) dan menghitung P I (dengan lebih dahulu mengambil logaritma dan ke-mudian dengan menaikkan hasil pada pangkat e). Algoritrna tersebut kemudianmenggunakan Persamaan (4.1) untuk menentukan F(!) secara rekursif. Algoritmaini sekarang membangkitkan variabel acak Poisson dengan rerata Adengan mem-bangkitkan bilangan acak U, dan kernudian mernperhatikan apakah X::; I atautidak dengan rnelihat apakah U ~ F(!). Lalu algoritma ini mencari ke bawahdimulai dari X = I dalam kasus di mana X ~ I dan sebaliknya ke atas dirnulai dariX = 1+ 1. (Algoritma 4-1 juga menghindari kesulitan potensial sehingga, disebab-kan oleh kesalahan pembulatan, ketika Abesar, komputer dapat rnernbuat e -' A agarsama dengan 0.)

    KOMENTAR

    Jumlah pencarian yang diperlukan oleh Algoritma 4-1 kira-kira 1 lebih banyakdaripada perbedaan absolut antara variabel acakX dan rerata-nya A.Karena untukA besar, suatu Poisson (dengan dalil pembatasan sentral) mendekati normal de-ngan rerata dan varian keduanya sarna dengan A,maka

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    9/18

    Pembangkitan Variabel Acak Dtskret 61

    Jumlah rata-rata pencarian eI +E[I x - A I ] di mana X - N(A, A ) *= I + vA E[I X0/ 1 ]= I + vA E[IZI] where Z - N(O, I)= 1+ .82 vA (see Problem II)

    Yaitu, dengan menggunakan Algoritma 4-1, jumlah rata-rata pencarian berkem-bang dengan akar pangkat dua A . dan bukan dengan A . karena A . menjadi lebih besardan semakin besar.

    4.3. Membangkitkan Variabel Acak BinomialAndaikan kita ingin membangkitkan nilai variabel acak (n, p) binomial X -yaitu, X adalah sedemikian rupa sehingga

    P{X= i} = _n_p'(l -pt",1(n_,)1 i = 0, 1, ... ,nUntuk melakukan ini, kita menggunakan metode transforrnasi terbalik denganmemanfaatkan identitas rekursif

    n - i PP {X = i + I} = -.- -- P {X = ;}I+ll-pDengan i yang menandakan nilai yang sekarang sedang dipertimbangkan, pr =P { X = i} probabilitas bahwa X sarna dengan i, dan F = F(i) probabilitas bahwa Xkurang dari atau sarna dengan i, algoritma tersebut dapat dinyatakan sebagaiberikut:

    "Notasi X - F d ig un ak an d en gan ar ti b ahw a X memi li ki f un g si d is tr ib u si F . S imb ol N (I l. (12) be ra rt i d i st ri bus in orm al d eng an m ean 1 1d an v ar ian (12.

    ALGORITMA TRANFORMASI TERBALIK UNTUK MEMBANGKITKAN VARIA-BEL ACAK (n, p) BINOMIALLANGKAH I: Membangkitkan bilangan acak U.LANGKAH 2: C = pl(1 - p), i = 0, pr = (1 - pt, F = proLANGKAH 3: Jika U < F, set X = i dan stop.LANGKAH 4: pr = [c(n - i)/(i + 1)]pr, F = F + pr, i = i + 1.LANGKAH 5: Pergi ke Langkah 3.

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    10/18

    62 PenganlQl'Simulasi

    Algoritma di atas lebih dahulu mengecek apakah X = 0, kemudian apakah X =1, dan seterusnya. Karenanya jumlah pencarian yang dibuatnya adalah 1 lebihbanyak dari nilai X. Oleh karena itu, secara rata-rata, dibutuhkan 1+ np pencarianuntuk membangkitkan X. Dengan mengingat bahwa suatu variabel acak (n, p)binomial menggarnbarkan jumlah keberhasilan dalam n percobaan independenketika masing-masing merupakan keberhasilan dengan probabilitas p, maka vari-abel acak seperti ini juga dapat dihasilkan dengan mengurangkan dari n nilaisuatu variabel acak (n, 1 - p)(mengapa begitu?). Karenanya, jikap >~, kita dapatmembangkitkan sebuah variabel acak (n, 1 - p) binomial dengan metode di atasdan mengurangkan nilainya dari n untuk mendapatkan hasil yang dikehendaki.

    KOMENTAR

    I. Satu cara lain untuk membangkitkan variabel aeak (n, p) binomial adalahdengan memanfaatkan penafsirannya sebagaijumlah keberhasilan dalam n perco-baan independen dengan membangkitkan n bilangan acak UI, .. , u " dan kemu-dian menetapkan X sarna dengan jumlah U; yang kurang dari atau sarna degnan p.Dengan menganggap pereobaan ke-z sebagai suatu keberhasilan jika U,

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    11/18

    Pembangldtan VariabelAcalcDisb-et 63

    menggunakan ini sebagai dasar untuk simulasi dari distribusi yang memilikifungsi masal {pjoj ~ O}dengan lebih dahulu mensimulasikan variabel acak Yyangmemiliki fungsi masal { f l J } dan kemudian menerima nilai yang disimulasikan inidengan probabilitas yang proporsional dengan py/qy.

    Secara khusus, misalkan c merupakan konstan sehingga

    untuk semuaj sehingga p, - : : f : . 0 (4.2)

    Kita sekarang memiliki teknik berikut ini, yang disebut metode penolakan, untukmensimulasikan variabel acak X yaog memiliki fungsi masal P i =P {X =j} .

    METODE P ENOLAKANLANGKAH 1: Mensimulasikan nilai Y, yang memiliki probabilitas fungsi

    masal f l J .LANGKAH 2: Membangkitkan bilangan acak U.LANGKAH 3: Jika U < py/cqy, set X = Y dan stop. Kalau tidak, kembali ke

    Langkah 1.Metode penolakan disajikan dalam Gambar 4.1.Kita sekarang membuktikan bahwa metode penolakan berhasil.

    Mula i V a---..x = yakMenghasi lkan Y Meng~asi lkan~ A p a k a h T idr--'-" d e n g a n fu n g s i m a s a l q ) f-+ U spy/cq., -Gambar 4.1 Penerimaan-penolakan

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    12/18

    64 Pengantar Simulasi

    Dalil:Variabel acaJcX yang diperoleh dari metode penolakan memiliki probabilitasfungsi masal P{X = i} = P i.Bukti.

    P {X = i} = P {Y = ilPenerirnaan}= P {y= i,Penerimaan}K

    P {Y = i} p { u l 2 . . }= cq,K

    dimana K = P {Penerimaan}

    denganindependen= qi P i

    K cq,P i=cK

    Meringkas keseluruhan i membangkitkan bahwaI = L P iX = i} = _I L P i

    i cK i

    (4.3)

    =cKdan kita pun melihat dari (4.3) bahwa variabel aeak yang dihasilkan X se-benarnya memiliki fungsi masal yang diinginkan.

    KOMENTAR

    1. Pembaea harus memperhatikan bahwa eara kita "menerima nilai Y denganprobabilitas pv/cqv" adalah dengan membangkitkan biJangan aeak U dan ke-mudian menerima Y jika U ~ P y lcqv.

    2. Karena tiap iterasi algoritma akan, seeara independen, membangkitkan nilaiyang diterima dengan probabilitas P{Penerimaan} = K = I/c, makajumlah iterasiyang diperlukan akan memiliki distribusi geometrik dengan parameter llc dandengan demikian akan memiliki rerata c. Oleh karena itu, semakin dekat c ke 1,

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    13/18

    Pemhangldtan VariabelAcak Dislrret 6S

    dan tidak mungkin pemah kurang dari 1 [yang dapat dilihat dengan menulisketidaksarnaan (4.2) sebagia P i : s ; C q i dan kemudian meringkas kedua sisi], se-makin efisien pendekatan ini; yang secara intuitif jelas karena semakin dekat c ke1 semakin sarna kedua fungsi masal {pj} dan {flJ}.Contoh 4e Andaikan kita ingin mensimulasikan nilai variabel acak X yang

    mengguankan salah satu dari nilai I, 2, ... , 10 dengan probabilitas masing-masing .11, .12, .09, .08, .12, .10, .09, .09, .10, .10. Sementara satu kemung-kinan adalah menggunakan algoritma transformasi terbalik, pendekatan yanglebih baik adalah menggunakan metode penolakan dengan q sebagai densitasseragarn diskret pada 1, ... , 10. Dengan kata lain, fl J = 1I10,} = I, ... , 10.Untuk pilihan { ( ] j } ini kita dapat memilih c dengan

    C=Max.!2= .2q,dan dengan demikian algoritma terse but akan menjadi sebagai berikut:

    LANGKAH I: Membangkitkan bilangan acak U, dan set Y= Int(IOU.) + I.LANGKAH 2: Membangkitkan bilangan acak kedua di bawah U2.LANGKAH 3: Jika Ul spJ. 12, set X = Y dan stop. Kalau tidak kembali ke

    Langkah I.Konstan .12 dalam Langkah 3 naik karena cqv = 1.2/10= .12. Secara rata-rata,algoritma ini hanya memerlukan 1.2 iterasi dari algoritma di atas untuk men-dapatkan nilai yang dihasilkan X.Kekuatan metode penolakan, versi yang pada mulanya diusulkan oleh ahli

    matematika terkenal John von Newmann, akan menjadi semakin terlihatjelasjikakita memperhatikan analognya sewaktu membangkitkan variabel acak kontinu.

    Andaikan bahwa kita mempunyai sebuah metode yang efisien untuk mensimu-lasikan nilai variabel acak yang memiliki salah satu dari dua kemungkinan fungsimasal {Pl'} ~ O}atau {flJ,j ~ O},dan andaikan kita hendak mensimulasikan nilaivariabel acak X yang memiliki fungsi masal

    4.5. Pendekatan Komposisi

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    14/18

    66 Pengantar Simulast

    (4.4)

    di mana 0

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    15/18

    Pembangkitan VariabelAcak Diskret 67

    n

    HI:) :;:::2 : a,F,(x), = 1dikatakan merupakan campuran, atau komposisi, dari fungsi distribusi F" i = I, .. . , n. Salah satu cara untuk mensimulasi dari F adalah lebih dahulu mensimulasivariabel acak I, sarna dengan i dengan probabilitas (1, , = 1, ... , n, dan kemudianmensimulasi dari distribusi Fl. (Yaitu, jika nilai yang disimulasikan dari Iadalah1= j, maka simulasi kedua adalah dari Fj.) Pendekatan untuk simulasi dari F inisering disebut sebagai metode komposisi.

    Soal1. Tulislah sebuah program untuk membangkitkan n nilai dari probabilitas

    fungsi masal PI:;:::.,P 2 =i.(a) Misalkan n = 100, jalankan program dan tentukan proporsi nilai-nilai

    yang sarna dengan 1.(b) Ulangi (a) dengan n = 1000.(c) Ulangi (a) dengan n = 10.000.

    2. tulislah sebuah program komputer yang, ketika diberikan probabilitas fungsimasal {Pl ' j = 1, ... , n} sebagai masukan, memberikan sebagai keluaran nilaivariabel acak yang memiliki fungsi masal ini.

    3. Berikan sebuah algoritma yang efisien untuk mensimulasikan nilai variabelacak X sedemikian rupa sehingga

    P { X = I} = .3, P { X = 2} = .2, P { X = 3} = .35, P { X = 4} ::= .154. Sebuah tumpukan yang terdiri atas 100 lembar kartu - yang diberi nomor 1,

    2, ... , 100 - dikocok dan kemudian dibalik satu demi satu. Misalkan "hit"terjadi ketika kartu iadalah kartu ke-i yang dibalik, i = I, ... , 100. Tulislahsebuah program simulasi untuk mengestimasi harapan dan varian jumlahtotal "hit". lalankan programnya. Dapatkan jawaban eksak dan bandingkanjawaban tersebut dengan estirnasi anda.

    5. Satu metode lain untuk membangkitkan permutasi acak, yang berbeda de-ngan yang disajikan dalam Contoh 4b, adalah untuk membangkitkan secaraberturut-turut permutasi acak dari elemen 1, 2, ... , n dimulai dengan n = 1,kemudian n = 2, dan seterusnya. (Tentu saja, permutasi acak ketika n = 1

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    16/18

    68 Pengantar Simulasi

    adalah 1). Begitu ada pennutasi acak dari elemen nN 196 1 pertama - sebutsaja P I, ... , P II_ I - pennutasi acak n elemen 1, ... , n diperoleh denganmenempatkan n pada posisi akhir - untuk mendapatkan pennutasi PI, ... ,P o - I , n - dan kemudian menukar tempat elemen dalam posisi n (yaitu, n)dengan elemen dalma posisi terpilih secara acak yang sarna mungkinnyaberada pada posisi 1, posisi 2, ... , atau posisi n.(a) Tulislah algoritma yang menyelesaikan soal di atas.(b) Buktikan dengan induksi matematis atas n bahwa algoritma tersebut

    berhasil, dalam hal pennutasi yang diperoleh sarna mungkinnya merupa-kan salah satu dari n! pennutasi 1, 2, ... , n.

    6. (a) Dengan menggunakan bilangan acak 100,jelaskan bagaimana anda bisamemperoleh aproksimasi untuk~' = 1 e liN, di mana N = 10.000.

    (b) Dapatkan aproksimasi tersebut.(c) Apakah aproksimasi anda baik?

    7. Sepasang dadu terus menerus diputar hingga semua kemungkinan hasil 2, 3,... , 12 muncul setidaknya sekali. Kembangkan sebuah studi simulasi untukmengestimasi jumlah yang diharapkan dari putaran dadu yang diperlukan.

    8. Andaikan bahwa tiap butir pada sebuah daftar n butir memiliki nilai yang,dilekatkan padanya, dan misalkan v(i) menandakan nilai yang dilekatkanpada butir ke-z pada daftar. Andaikan bahwa n sangat besar, dan juga bahwatiap butir mungkin muncul pada banyak tempat yang berbeda dalarndaftar. Jelaskan bagaimana bilangan acak dapat digunakan untu rnengest.-masi jumlah nilai dari butir-butir yang berbeda dalam daftar (di mana nilaitiap butir dihitung sekali tidak peduli berapa banyak kali butir tersebutmuncul pada daftar).

    9. Pertimbangkan n peristiwa A I, ... , A n di mana peristiwa A " i = I, ... , n,terdiri atas hasil n, berikut ini: A I = { a " a d, .. . , a l,n}' Andaikan bahwa untukhasil tertentu mana pun a, P{a}, probabilitas bahwa hasil ekseprimen padahasil a, diketahui. Jelaskan bagaimana kita dapat menggunakan hasil dariSoal 8 untuk mengestimasi P {U; ' = I A, }, probabilitas bahwa setidaknyasatu dari peristiwa-peristiwa A , terjadi. Perhatikan bahwa peristiwa A I, i = 1,... , n, tidak diasumsikan berdiri sendiri-sendiri.

    10. Fungsi masal probabilitas binomial negatif dengan parameter (r, p). di manar adalah bilangan bulat positif dan 0

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    17/18

    Pembangkitan Variabel Acak Diskret 69

    .::: (i-I)! I i-rpj (i_I')!(r_)Pr< -p) , j=r,r+ 1 , ...

    (a) Gunakan hubungan antara variabel acak binomial negatif dan geomterikdan hasil dari Contoh 4d untuk mendapatkan algoritma untuk simulasidari distribusi ini.

    (b) Verifikasi hubungan inij (I-p)Pi+)=. I _J)jJ+ + r:

    (c) Gunakan hubungan dalam bagian 9b) untuk memberikan algoritmakedua guna membangkitkan variabel acak binomial negatif.

    (d) Gunakan penafsiran distribusi binomial negatif sebagai jumlah perco-baan yang dilakukan untuk mengumpulkan total r keberhasilan ketikatiap percobaan secara sendiri-sendiri berhasil dengan probabilitas p,untuk mendapatkan satu lagi pendekatan untuk membangkitkan variabelacak seperti ini.

    11. Jika Z adalah sebuah variabel acak normal unit, perlihatkan bahwaE l I Z l J = (!) )/2 = .82

    12. Berikan sebuah metode untuk mensimulasi dari probabilitas fungsi masal Pj,I=5, 6, ... , 14, di mana

    { .11P i = .09 when j is odd and 5 Sj S13when jis even and 6 e]S1413. Andaikan bahwa variabel acak Xhanya dapat menggunakan nilai 1, ... , 10dengan probabilitas masing-masing .06, .06, .06, .06,06, .15, .13, .14, .15,

    .13. gunakan pendekatan komposisi untuk memberikan sebuah algoritmayang membangkitkan nilai X.

    14. Sajikan sebuah metode untuk membangkitkan nilai X, di manaP {X = j} = mi+) + ( i ) ~ ; - I j= 1,2, ...

    15. Misalkan X memiliki fungsi masal P i " P {X = j} ,L = I Pi::: 1. Misalkan)

  • 5/7/2018 Bab4 Pembangkit Variable Acak Disket

    18/18

    70 Pengantar Simuiasi

    A" = P {X = niX> n - I} = - - ' P : . . . . ; . , ; ~ : . . . . , l , . - -I- 2 : P lj= O

    II= I....

    (a) Perlihatkan bahwa p, = A l dan

    Kuantitas A . " . n ~ 1, disebut tingkat bahaya diskret karen a jika kita berpikirtenteang X sebagai umur beberapa item, maka A . " merupakan probabilitasbahwa suatu item yang telah mencapai usia n akan mati selama periode itu.Pendekatan berikut untuk mensimulasi variabel acak diskret, yang disebutmetode tingkat bahaya diskret, membangkitkan rangkaian bilangan acak,yang berhenti jika bilangan acak ke-n kurang dari A " Algoritmanya dapatditulis sebagai berikut:LANGKAH I: X= 1LANGKAH 2: Bangkitkan bilangan acak ULANGKAH 3: Jika U < A X stopLANGKAH4: X=X+ 1LANGKAH 5: Pergi ke Langkah 2(b) Perlihatkan bahwa nilai X jika algoritma di atas berhenti memiliki fungsi

    masal yang diinginkan.(c) Andaikan bahwa X merupakan variabel acak geometrik dengan parame-

    ter p.Tentukan nilai A . " , n ~ 1. Jelaskan apa yang dilakukan algoritma diatas dalam kasus ini dan mengapa keabsahannya jelas.