Los jugadores A y B juegan a lanzar una moneda equilibrada un gran número de veces. Diremos que A va ganando si hasta el momento han salido más caras que cruces y que B va ganando si hasta el momento han salido más cruces que caras. Aun cuando la intuición pueda sugerir lo contrario, la proporción de tiempo que gana A (o B) rara vez se acerca al 50%.
#INICIO -------------------------
rm(list=ls(all=TRUE))
#Elegimos el nº de lanzamientos n
n<-100000
#Cara=1; Cruz=0
moneda<-0:1
#El nº de fases del juego es x
x<-1:n
#La serie de lanzamientos es y
y<-sample(moneda,n,replace=T)
#El nº de caras hasta el momento es z
z<-cumsum(y)
#El nº de cruces hasta el momento es t
t<-x-z
#La diferencia entre el nº de caras y de cruces que van apareciendo, para cada lanzamiento, es u
u<-z-t
#Si u es positivo va ganando A (el de caras); si u es negativo va ganando B (el de cruces). Si u=0 van empatando
f<-function(x) {
if(x>0) {
'A'} else if (x==0) {
'-'} else if (x<0) {
'B'}
}
M<-sapply(u,f)
#Si se quiere ver la serie de resultados obtenida ejecutar la siguiente línea
#Resultado<-paste(M,collapse="");Resultado
MM<-sub("B","",M);MMM<-sub("-","",MM)
#Nº de veces que va ganando A
a<-nchar(paste(MMM,collapse=""));a
#Porcentaje de tiempo que ha ido ganando A
paste(round((a/n)*100,2),"%")
#El tiempo que ha ido ganando A es la zona en la que la curva está por encima del eje X
#El tiempo que ha ido ganando B es la zona en la que la curva está por debajo del eje X
plot(u,lwd=3,type='l')
abline(h=0)
#FIN -------------------------
Ejecutando el script varias veces se observa que se obtienen resultados muy diferentes. En general, suele ganar con claridad más tiempo un jugador que otro.
No hay comentarios:
Publicar un comentario