ESTIMACIÓN DEL VALOR DE \(\pi\)

Introducción

La estimación de Pi mediante simulaciones de Monte Carlo es un método numérico que utiliza la generación de puntos aleatorios en un área geométrica para aproximar el valor de Pi. A continuación, se presenta el código y el análisis de una simulación que estima el valor de Pi generando puntos dentro de un cuadrado y evaluando cuántos caen dentro de un círculo inscrito en ese cuadrado.

Código de la simulación

# Cantidad de puntos a generar
n <- 10000

# Generar puntos aleatorios en el cuadrado
x <- runif(n)
y <- runif(n)

# Calcular la distancia de cada punto al centro (0.5, 0.5)
d <- (x - 0.5)^2 + (y - 0.5)^2

# Determinar cuántos puntos están dentro del círculo de radio 0.5
p1 <- as.numeric(d <= 0.25)

# Estimar pi
epi <- (sum(p1) / n) * 4

# Mostrar el resultado
cat("Proporción de puntos dentro del círculo:", sum(p1) / n, "\n")
Proporción de puntos dentro del círculo: 0.7858 
cat("Estimación de pi:", epi, "\n")
Estimación de pi: 3.1432 
library(ggplot2)

# Crear un dataframe con los resultados de los puntos
df <- data.frame(x = x, y = y, dentro = as.factor(p1))

# Crear el gráfico
ggplot(df, aes(x = x, y = y, color = dentro)) +
  geom_point(size = 0.7) +
  labs(title = "Estimación de Pi mediante Monte Carlo",
       subtitle = paste("Número de puntos: ", n),
       x = "X", y = "Y") +
  scale_color_manual(values = c("red", "blue"), labels = c("Fuera del círculo", "Dentro del círculo")) +
  theme_minimal()

Conclusión

Este ejercicio nos permite aproximar el valor de Pi utilizando un método sencillo pero efectivo, aprovechando la aleatoriedad y la geometría. Aunque la estimación no es exacta, aumenta su precisión conforme incrementamos el número de puntos generados.