Bagaimana membangkitkan bilangan acak poisson dari sebaran uniform? coba kerjakan bagaimana ilustrasinya beserta syntaxnya! kumpulkan dalam bentuk pdf
Berikut adalah ilustrasi dalam pembangkitan bilangan acak Poisson.
Ilustrasi di atas menggambarkan bahwa bilangan acak Poisson dapat dibangkitkan dari sebaran Uniform dengan penguraian rumus yang ada pada sisi kiri gambar segitiga.
Bilangan acak Poisson juga dapat dibangkitkan dari sebaran eksponensial dengan penguraian rumus yang ada pada sisi bawah gambar segitiga, sementara bilangan acak eksponensial dibangkitkan dari sebaran uniform dengan rumus yang ada pada sisi kanan segitiga.
Berikut adalah syntax untuk membangkitkan 1000 bilangan acak yang menyebar Poisson
i<-1000
lambda<-1
K<-NULL
for (z in 1:i){
k<-0
sk<-1
while(sk>=exp(-lambda)){
u<-runif(1)
sk<-sk*u
k<-k+1
}
K[z]<-k
}
K
## [1] 1 1 3 4 2 1 1 1 3 1 1 2 1 3 1 1 2 3 2 2 2 3 3 3 1 3 1 3 2 1 3 2 3 3 2 2 2
## [38] 1 1 2 2 2 2 2 1 2 4 3 2 1 2 3 2 2 5 3 2 2 2 1 1 2 1 2 1 3 3 1 3 1 2 1 1 2
## [75] 2 3 2 1 4 4 2 2 1 2 1 2 2 1 2 1 2 2 3 3 3 2 1 1 3 2 3 3 1 1 1 1 1 3 2 2 1
## [112] 2 1 1 1 1 2 2 2 3 1 2 1 2 1 1 1 3 3 1 2 3 1 3 2 1 1 2 1 3 1 1 1 1 3 1 4 1
## [149] 1 1 2 2 1 2 3 2 1 2 1 1 1 4 6 2 3 3 3 1 3 1 1 1 2 2 1 2 1 3 2 2 1 1 1 1 3
## [186] 2 3 3 4 2 3 2 3 5 4 1 2 4 2 5 4 4 2 3 3 3 1 1 1 4 2 4 1 2 1 1 2 2 2 1 2 2
## [223] 1 1 4 1 1 1 3 2 2 2 1 2 3 2 3 2 3 1 3 1 2 3 2 1 1 3 1 1 5 2 3 2 2 4 4 2 2
## [260] 1 2 2 4 2 1 1 1 1 3 2 3 3 3 2 4 1 2 2 4 2 1 2 1 1 4 6 2 2 1 1 1 2 1 1 4 2
## [297] 1 4 1 1 3 3 1 1 1 1 2 1 4 3 1 2 2 3 2 1 1 2 3 3 2 3 1 1 1 1 1 2 3 3 2 2 3
## [334] 3 1 1 3 1 3 2 1 3 3 5 1 2 2 1 1 1 1 3 2 1 2 2 2 3 1 2 2 3 1 1 1 2 1 1 2 1
## [371] 1 3 2 3 2 1 3 1 2 2 1 1 1 3 2 2 3 1 3 3 6 2 1 4 2 1 3 2 2 5 4 2 2 1 2 2 3
## [408] 2 2 2 2 1 1 3 1 2 3 2 1 1 2 3 1 2 3 3 2 5 2 1 1 3 1 2 2 1 2 1 1 1 3 3 1 2
## [445] 3 1 1 2 1 2 1 3 1 2 2 2 4 4 1 3 2 1 3 2 2 3 2 5 1 1 2 2 1 1 1 1 1 2 1 2 1
## [482] 2 1 1 3 3 2 2 2 2 2 1 2 2 2 2 3 1 3 1 2 2 5 1 2 2 2 1 2 2 3 3 2 3 2 1 3 3
## [519] 1 2 3 2 2 1 3 3 3 3 1 2 2 2 4 2 2 3 4 1 2 2 2 3 2 1 2 2 2 1 1 2 1 4 1 3 2
## [556] 1 2 1 6 1 1 2 2 1 1 1 3 1 3 3 2 2 1 2 2 2 1 1 3 1 1 1 1 2 2 2 2 2 3 1 1 1
## [593] 3 2 1 3 2 2 1 3 2 1 3 3 1 2 2 2 2 2 2 2 1 3 3 1 2 3 2 2 2 1 1 1 3 2 1 1 2
## [630] 1 4 2 3 2 1 2 4 3 2 1 2 2 2 1 1 4 2 1 1 1 1 1 3 1 1 1 2 3 2 1 4 2 2 3 2 1
## [667] 1 1 3 3 2 2 1 3 2 1 3 1 2 3 2 3 3 1 2 1 1 1 3 2 3 1 1 2 4 3 1 3 1 3 4 1 4
## [704] 3 2 1 2 2 2 1 1 1 2 3 3 2 1 1 1 4 2 4 2 2 1 3 4 1 3 2 3 5 2 2 1 1 3 1 3 2
## [741] 1 4 1 3 2 3 2 2 2 1 2 3 2 1 3 2 2 2 1 4 1 2 4 2 2 3 2 4 2 3 2 2 1 2 5 2 2
## [778] 2 2 2 3 1 2 2 2 1 2 3 2 1 2 3 2 3 1 2 1 2 1 2 2 3 1 1 3 1 2 3 4 2 2 2 2 1
## [815] 1 2 2 1 2 3 1 3 1 2 2 2 2 1 4 3 1 1 3 2 2 1 2 2 2 1 1 1 1 2 3 2 1 1 4 2 3
## [852] 2 2 3 2 2 2 2 2 4 1 2 2 3 2 2 3 3 4 2 1 1 3 3 4 1 2 1 1 3 2 2 3 2 1 2 2 3
## [889] 1 4 3 1 1 2 1 2 3 2 3 1 1 1 2 1 2 4 2 1 1 3 6 3 3 2 2 2 2 2 4 3 1 1 1 2 1
## [926] 2 2 1 4 2 1 2 1 3 1 2 2 2 1 1 2 4 2 3 2 3 3 2 1 2 1 3 1 2 2 1 1 3 2 3 2 2
## [963] 3 2 1 3 3 1 1 4 2 2 1 1 1 3 3 1 5 4 2 2 1 1 1 3 1 3 2 4 3 1 3 2 1 2 3 2 1
## [1000] 1
(tabel1<-table(K)/length(K))
## K
## 1 2 3 4 5 6
## 0.347 0.371 0.207 0.058 0.012 0.005
Tabel di atas menggambarkan peluang setiap bilangan acak akan muncul.
barplot(tabel1)
Bar Chart di atas adalah distribusi sebaran peluang dari kemunculan setiap bilangan acak poisson.
i<-1000
lambda<-1
K<-NULL
for (z in 1:i){
sk<-0
k<-0
while (sk<=1){
u<-runif(1)
y<--log(u)/lambda
sk<-y+sk
k<-k+1
}
K[z]<-k-1
}
K
## [1] 2 3 0 0 2 0 1 1 0 1 0 0 2 0 3 2 2 0 0 1 2 0 4 1 4 0 0 0 1 1 0 2 1 1 4 2 3
## [38] 2 1 0 2 2 0 0 1 1 2 0 1 4 0 0 1 1 4 0 0 0 0 0 2 1 0 2 1 0 1 1 1 0 0 2 1 2
## [75] 1 0 0 1 2 2 4 3 0 4 0 1 0 1 0 1 1 1 0 0 1 1 0 0 0 1 1 0 2 0 0 1 0 2 1 3 1
## [112] 1 0 0 2 1 0 2 0 0 1 1 2 1 0 1 0 0 3 0 2 0 0 1 2 0 1 2 1 3 1 1 2 0 1 0 1 3
## [149] 1 1 0 0 1 1 1 2 0 0 1 1 0 0 0 0 1 1 0 1 1 1 0 0 0 0 1 1 2 1 2 0 1 2 1 0 0
## [186] 0 2 1 0 1 1 2 2 1 0 1 0 0 0 2 0 1 2 1 1 2 1 0 2 1 1 1 0 0 0 0 1 0 1 1 2 0
## [223] 0 0 1 1 2 1 0 3 3 2 2 1 0 1 0 2 3 1 1 0 2 0 0 0 0 1 0 2 2 2 0 2 0 1 0 1 2
## [260] 1 3 2 0 0 0 1 3 1 0 3 2 1 1 1 0 2 0 1 0 3 1 2 1 0 2 2 1 2 1 1 3 0 3 2 0 2
## [297] 1 0 4 1 0 1 2 1 1 3 1 0 0 2 1 0 2 1 0 1 0 2 1 2 1 3 0 2 1 2 1 0 5 2 2 2 1
## [334] 2 1 1 0 1 1 0 0 2 2 1 0 1 0 1 1 1 0 1 1 1 2 2 0 2 1 0 1 2 3 1 0 2 0 0 2 0
## [371] 2 2 0 2 0 3 0 1 1 1 1 2 2 0 0 2 1 0 1 1 3 1 1 0 0 2 1 0 1 1 2 3 2 0 0 1 0
## [408] 1 1 1 1 2 4 1 0 0 1 2 1 1 3 1 0 0 1 1 0 2 0 0 0 2 0 2 0 0 0 0 1 1 1 0 0 1
## [445] 1 1 5 1 2 0 3 0 1 3 2 2 0 4 1 0 2 2 1 3 1 1 0 0 0 1 1 0 0 1 0 0 1 4 1 1 0
## [482] 1 1 1 0 0 2 3 1 2 0 0 0 0 0 0 3 2 1 1 0 2 1 1 2 1 1 0 3 0 2 0 1 1 1 0 0 1
## [519] 0 0 1 1 4 1 0 1 3 0 1 1 1 0 2 0 1 0 1 2 0 3 1 0 0 1 1 0 2 0 1 2 1 0 0 1 0
## [556] 2 1 1 0 2 2 1 2 3 2 1 0 2 1 1 1 0 1 2 1 2 0 1 2 0 1 1 0 0 2 2 2 0 0 0 3 2
## [593] 4 0 1 1 0 1 1 0 1 2 0 1 0 1 0 3 1 1 1 0 0 1 2 2 0 0 0 1 0 0 0 0 3 1 1 0 2
## [630] 3 1 0 1 0 4 2 0 0 2 0 1 0 2 1 3 0 1 1 3 0 2 2 2 3 0 2 3 0 0 0 2 0 0 3 2 1
## [667] 2 1 1 2 1 3 0 0 5 3 1 1 1 2 1 1 2 1 2 0 0 1 1 0 1 0 1 0 0 1 0 0 0 0 0 0 2
## [704] 1 0 0 0 4 1 0 2 0 3 0 0 2 2 2 0 1 4 1 1 1 0 0 0 2 1 1 1 0 2 4 1 0 2 1 4 2
## [741] 1 0 0 2 0 2 2 3 1 1 0 0 0 0 0 0 1 1 1 3 1 0 0 0 2 0 1 1 1 0 1 1 2 1 0 2 1
## [778] 1 1 1 1 1 0 1 0 1 1 1 2 0 0 3 4 1 1 1 0 0 2 0 1 2 0 2 1 0 2 2 2 1 2 1 2 0
## [815] 0 0 1 5 1 2 2 1 0 1 3 0 0 1 0 1 2 4 0 0 0 0 2 3 0 1 3 1 1 1 0 0 0 1 0 2 1
## [852] 0 2 0 0 1 1 0 2 3 3 1 0 0 1 0 1 1 0 3 1 1 1 1 1 0 0 2 1 0 0 0 1 3 2 0 1 2
## [889] 0 0 2 3 0 1 1 0 1 1 0 0 2 0 0 2 1 0 2 0 1 1 0 1 0 2 1 1 1 0 1 4 2 0 1 2 0
## [926] 0 0 1 1 0 0 0 0 2 1 4 0 2 2 0 0 0 2 1 1 0 0 0 2 3 1 2 2 3 1 1 0 2 1 0 1 1
## [963] 0 1 0 1 1 0 1 2 0 0 0 0 2 2 0 2 1 0 1 2 3 1 0 2 2 1 0 1 0 0 0 2 1 1 1 0 0
## [1000] 1
(tabel2<-table(K)/length(K))
## K
## 0 1 2 3 4 5
## 0.368 0.353 0.194 0.059 0.022 0.004
Tabel di atas menggambarkan peluang setiap bilangan acak akan muncul.
barplot(tabel2)
Bar Chart di atas adalah distribusi sebaran peluang dari kemunculan setiap bilangan acak poisson.