La siguiente figura sugiere como estimar el valor de π con una simulación. En la figura, un circuito con un área igual a π/4, está inscrito en un cuadrado cuya área es igual a 1. Se elige de forma aleatoria n puntos dentro del cuadrado . La probabilidad de que un punto esté dentro del círculo es igual a la fracción del área del cuadrado que abarca a este, la cual es π/4. Por tanto, se puede estimar el valor de π/4 al contar el número de puntos dentro del círculo, para obtener la estimación de π/4 . De este último resultado se encontrar una aproximación para el valor de π .
# Establecer el número de puntos
n = 1000
# Generar puntos aleatorios
# Usamos runif para generar números aleatorios uniformemente distribuidos
# Generamos n números aleatorios para las coordenadas x
x = runif(n, min = 0, max = 1)
# Hacemos lo mismo para las coordenadas y
y = runif(n, min = 0, max = 1)
# Contar cuántos puntos caen dentro del círculo
# Inicializamos un contador en 0
contador = 0
# Usamos un bucle para revisar cada punto
for(i in 1:n){
# Calculamos la distancia al cuadrado del punto al centro del círculo (0.5, 0.5)
distancia_cuadrado = (x[i] - 0.5)^2 + (y[i] - 0.5)^2
# Si la distancia al cuadrado es menor que 0.25 (el radio al cuadrado), el punto está dentro del círculo
if(distancia_cuadrado < 0.25){
contador = contador + 1
}
}
# La proporción de puntos dentro del círculo respecto al total es aproximadamente igual a pi/4
# Por lo tanto, multiplicamos la proporción por 4 para estimar pi
estimacion_pi = (contador / n) * 4
# n puntos dentro del círculo y estimación de pi
cat("Puntos dentro del círculo:", contador, "\n")
## Puntos dentro del círculo: 786
cat("Estimación de pi:", estimacion_pi)
## Estimación de pi: 3.144
Note that the echo = FALSE parameter was added to the
code chunk to prevent printing of the R code that generated the
plot.