Estimación del valor de \(\pi\)

Para la estimacion de \(\pi\) se emplean las funciones:


Simulación y error absoluto con 1000


set.seed(1)
n <- 1000
x <- runif(n, min = 0, max = 1)
y <- runif(n, min = 0, max = 1)
d <- (x-0.5)^2 + (y-0.5)^2
u <- as.numeric(d <= 0.25)
p1 <- sum(u)/n
epi <- (sum(u)/n) *4
error <- pi-epi
inside_circle <- d < 0.25

plot(x, y, col = ifelse(inside_circle, "#00008B", "#FF4040"), asp = 1, main = "Estimación de π usando  (1000)")
symbols(0.5, 0.5, circles = 0.5, add = TRUE, inches = FALSE)

#cat("Proporción de puntos dentro del circulo: ", p1, "\n")
#cat("Estimacion de Pi                       : ", epi, "\n")
#cat("Error de estimacion                    : ",error)
Proporción de puntos dentro del circulo:  0.77 
Estimacion de Pi                       :  3.08 
Error de estimacion                    :  0.06159265



Simulación y error absoluto con 10000


set.seed(1)
n <- 10000
x <- runif(n)
y <- runif(n)
d <- (x-0.5)^2 + (y-0.5)^2
u <- as.numeric(d <= 0.25)
p1 <- sum(u)/n
epi <- (sum(u)/n) *4
error <- pi-epi
inside_circle <- d < 0.25

plot(x, y, col = ifelse(inside_circle, "#00008B", "#FF4040"), asp = 1, main = "Estimación de π usando  (10000)")
symbols(0.5, 0.5, circles = 0.5, add = TRUE, inches = FALSE)

#cat("Proporción de puntos dentro del circulo: ", p1, "\n")
#cat("Estimacion de Pi                       : ", epi, "\n")
#cat("Error de estimacion                    : ",error)
Proporción de puntos dentro del circulo:  0.7806 
Estimacion de Pi                       :  3.1224 
Error de estimacion                    :  0.01919265



Simulación y error absoluto con 100000


set.seed(1)
n <- 100000
x <- runif(n)
y <- runif(n)
d <- (x-0.5)^2 + (y-0.5)^2
u <- as.numeric(d <= 0.25)
p1 <- sum(u)/n
epi <- (sum(u)/n) *4
error <- pi-epi
inside_circle <- d < 0.25

plot(x, y, col = ifelse(inside_circle, "#00008B", "#FF4040"), asp = 1, main = "Estimación de π usando  (100000)")
symbols(0.5, 0.5, circles = 0.5, add = TRUE, inches = FALSE)

#cat("Proporción de puntos dentro del circulo: ", p1, "\n")
#cat("Estimacion de Pi                       : ", epi, "\n")
#cat("Error de estimacion                    : ",error)
Proporción de puntos dentro del circulo:  0.78412 
Estimacion de Pi                       :  3.13648 
Error de estimacion                    :  0.005112654



Conclusiones


A medida que aumenta el número de puntos, se espera una reducción en el error absoluto de la estimación de π. Esto se observa claramente en los primeros dos ejercicios, donde la estimación mejora notablemente al pasar de 1000 a 10,000 puntos. Sin embargo, en el tercer ejercicio, con 100,000 puntos, la estimación no mejora como se esperaba, lo cual podría ser producto de algún comportamiento inusual en la generación de números aleatorios o el método de simulación.
Este tipo de simulaciones resalta cómo el método de Monte Carlo puede variar en precisión dependiendo del tamaño de la muestra y otros factores aleatorios.