โดยได้รับแรงบันดาลใจจากคำปราศรัยของ Peter Donnelly ที่TEDซึ่งเขากล่าวถึงว่าต้องใช้เวลานานเท่าใดในการที่รูปแบบบางอย่างจะปรากฏในชุดเหรียญโยนฉันสร้างสคริปต์ต่อไปนี้ใน R. ด้วยรูปแบบสอง 'hth' และ 'htt' คำนวณระยะเวลาเฉลี่ย (เช่นจำนวนเหรียญที่โยน) โดยเฉลี่ยก่อนที่คุณจะเข้าสู่หนึ่งในรูปแบบเหล่านี้
coin <- c('h','t')
hit <- function(seq) {
miss <- TRUE
fail <- 3
trp <- sample(coin,3,replace=T)
while (miss) {
if (all(seq == trp)) {
miss <- FALSE
}
else {
trp <- c(trp[2],trp[3],sample(coin,1,T))
fail <- fail + 1
}
}
return(fail)
}
n <- 5000
trials <- data.frame("hth"=rep(NA,n),"htt"=rep(NA,n))
hth <- c('h','t','h')
htt <- c('h','t','t')
set.seed(4321)
for (i in 1:n) {
trials[i,] <- c(hit(hth),hit(htt))
}
summary(trials)
สถิติสรุปมีดังนี้
hth htt
Min. : 3.00 Min. : 3.000
1st Qu.: 4.00 1st Qu.: 5.000
Median : 8.00 Median : 7.000
Mean :10.08 Mean : 8.014
3rd Qu.:13.00 3rd Qu.:10.000
Max. :70.00 Max. :42.000
ในการพูดคุยมีการอธิบายว่าจำนวนโยนเหรียญเฉลี่ยจะแตกต่างกันสำหรับสองรูปแบบ ที่สามารถเห็นได้จากการจำลองของฉัน แม้จะดูการพูดคุยสองสามครั้งฉันก็ยังไม่ค่อยเข้าใจว่าทำไมถึงเป็นเช่นนี้ ฉันเข้าใจว่า 'hth' ทับซ้อนตัวเองและสังหรณ์ใจฉันจะคิดว่าคุณจะกด 'hth' เร็วกว่า 'htt' แต่นี่ไม่ใช่กรณี ฉันจะขอบคุณมันจริงๆถ้ามีคนอธิบายให้ฉันฟังได้