Ispirato al discorso di Peter Donnelly al TED , in cui discute il tempo necessario affinché un certo schema appaia in una serie di lanci di monete, ho creato il seguente copione in R. Dato due schemi 'hth' e 'htt', calcola in media quanto tempo impiega (ovvero quante lanci di monete) prima di colpire uno di questi schemi.
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)
Le statistiche riassuntive sono le seguenti,
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
Nel discorso si spiega che il numero medio di lanci di monete sarebbe diverso per i due schemi; come si può vedere dalla mia simulazione. Nonostante abbia guardato il discorso alcune volte, non riesco ancora a capire perché questo sarebbe il caso. Capisco che "hth" si sovrappone e intuitivamente penserei che tu colpiresti "hth" prima di "htt", ma non è così. Lo apprezzerei davvero se qualcuno potesse spiegarmelo.