Kita dapat menyelesaikan ini melalui beberapa "trik" dan sedikit matematika.
Berikut adalah algoritma dasar:
- Hasilkan variabel acak Geometrik dengan probabilitas keberhasilan p .
- Hasil dari variabel acak ini menentukan nilai tetap yang diketahui fn∈[0,1] .
- Hasilkan Ber(fn) variabel acak menggunakan koin flips dihasilkan dari blockwise dipasangkan membalik dari kami Ber(p) koin.
- Hasil yang dihasilkan akan Ber(pa) untuk semuaa∈(0,1) , yang kita butuhkan.
Agar lebih mudah dicerna, kami akan memecahnya menjadi beberapa bagian.
Bagian 1 : Tanpa kehilangan sifat umum, anggaplah 0<a<1 .
Jika a≥1 , maka, kita dapat menulis pa=pnpb untuk beberapa bilangan bulat positif n dan beberapa 0≤b<1 . Tetapi, untuk dua Bernoulli independen mana pun, kami memiliki
Kami dapat menghasilkan p n Bernoulli dari koin kami dengan cara yang jelas. Oleh karena itu, kita hanya perlu menyibukkan diri dengan menghasilkan B e r ( p a ) ketika a
P(X1=X2=1)=p1p2.
pnBer(pa) .
a∈(0,1)
Bagian 2 : Tahu bagaimana menghasilkan yang sewenang-wenang dari adil koin membalik.Ber(q)
Ada cara standar untuk melakukan ini. Rentangkan dalam ekspansi binernya dan kemudian gunakan koin jungkir balik kami untuk "mencocokkan" digit q . Pertandingan pertama menentukan apakah kami mendeklarasikan sukses ("kepala") atau gagal ("ekor"). Jika q n = 1q=0.q1q2q3…qqn=1 dan flip koin kami adalah kepala, deklarasikan kepala, jika dan flip koin kami adalah ekor, nyatakan ekor. Kalau tidak, pertimbangkan digit berikutnya terhadap flip koin baru.qn=0
Bagian 3 : Tahu bagaimana menghasilkan koin balik yang adil dari yang tidak adil dengan bias yang tidak diketahui.
Ini dilakukan, dengan asumsi , dengan membalik koin berpasangan. Jika kita mendapatkan H T , menyatakan kepala; jika kita mendapatkan T H , menyatakan ekor, dan sebaliknya ulangi percobaan sampai salah satu dari dua hasil tersebut terjadi. Mereka sama-sama kemungkinan, jadi harus memiliki probabilitasp∈(0,1)HTTH .1/2
Bagian 4 : Beberapa matematika. (Taylor untuk menyelamatkan.)
Dengan memperluas sekitar p 0 = 1 , teorema Taylor menyatakan bahwa
p a = 1 - a ( 1 - p ) - a ( 1h(p)=pap0=1
Perhatikan bahwa karena 0 < a < 1 , setiap istilah setelah yang pertama adalahnegatif, jadi kita memiliki
p a = 1 - ∞ ∑ n = 1 b n ( 1 - p ) n
pa=1−a(1−p)−a(1−a)2!(1−p)2−a(1−a)(2−a)3!(1−p)3⋯.
0<a<1
mana
0 ≤ b n ≤ 1 dikenal
sebagai apriori. Oleh karena itu
1 - p a = ∞ Σ n = 1 b n ( 1 - p ) n = ∞ Σ n = 1 b n P ( G ≥ n ) = ∞ Σ n = 1 f n P ( G = n ) = Epa=1−∑n=1∞bn(1−p)n,
0≤bn≤1 n ≥ 1 .
1−pa=∑n=1∞bn(1−p)n=∑n=1∞bnP(G≥n)=∑n=1∞fnP(G=n)=Ef(G),
di mana
,
f 0 = 0 dan
f n = ∑ n k = 1 b k untuk
G∼Geom(p)f0=0fn=∑nk=1bkn≥1
Dan, kita sudah tahu bagaimana menggunakan koin kita untuk menghasilkan variabel acak Geometrik dengan probabilitas keberhasilan .p
Bagian 5 : Trik Monte Carlo.
Misalkan adalah variabel acak yang mengambil nilai dalam [ 0 , 1 ] dengan P ( X = x n ) = p n . Biarkan U ∣ X ∼ B e r ( X ) . Kemudian
P ( U = 1 ) = ∑ n x n p n .X[0,1]P(X=xn)=pnU∣X∼Ber(X)
P(U=1)=∑nxnpn.
Tapi, mengambil dan x n = f n , kita lihat sekarang bagaimana untuk menghasilkan B e r ( 1 - p a ) variabel acak dan ini setara dengan menghasilkan B e r ( p a ) satu.pn=p(1−p)nxn=fnBer(1−pa)Ber(pa)