Una persona lanza una moneda, luego un dado sucesivamente anotando los resultados. Repite los lanzamientos hasta encontrar la secuencia “C,6,S,1,C”. Asuma que la moneda esta cargada de modo tal que existe el doble de probabilidad de obtener cara (C) que sello (S), y el dado está cargado de tal manera que si \(X\) denota el número obtenido en el lanzamiento del dado, su función de masa de probabilidad es:
\[P(X=x)=\frac{x}{21} \ \ \ \text{para}\ x=1,\,2\,\ldots,\,6 \] Sea \(Y\) el número de veces que se obtuvo 5 en el lanzamiento del dado hasta encontrar la secuencia y \(Z\) el número de veces que se obtiene Cara(C) en el lanzamiento de la moneda hasta encontrar la secuencia. Mediante simulación encuentre: \(P(Y+Z\leq Y^2)\) y \(P(Y^2+Z^2 < 100)\)
El código para contestar estas preguntas es:
p_x=function(x){
x/21
}
secuencia <- c('C', '6', 'S', '1', 'C') # lo exigido
moneda_dado_hasta_seq <- function() {
moneda <- c('C','S')
res1 <- sample(moneda, size=3,prob=c(2/3,1/3), replace=TRUE)
res2 <- sample(1:6, size=2,prob=p_x(1:6), replace=TRUE)
resT <- c(res1,res2)[c(1,4,2,5,3)]
while (! identical(tail(resT, n=5), secuencia)) {
resT<-c(resT, sample(1:6, size=1,prob=p_x(1:6)))
resT <- c(resT, sample(moneda, size=1,prob=c(2/3,1/3)))
}
resT
}
# resultados de una simulación
una_simulacion <- function(){
ul <- moneda_dado_hasta_seq()
number_5<-sum(as.numeric(ul[c(seq(2,length(ul),2))])==5)
number_C<-sum(ul[c(seq(1,length(ul),2))]=="C")
resultado <- c(number_5,number_C)
}
#Resultados de la simulación total
simula <- sapply(1:10000,function(i){simula<<-una_simulacion()})
simula <- t(simula)
#a) P(Y+Z <= Y^2)
mean(simula[,1]+simula[,2] < simula[,1]^2)
## [1] 0.9566
#b) P(Y^2+Z^2 < 100)
mean(simula[,1]^2+simula[,2]^2 < 100)
## [1] 0.0238