ComenzarEmpieza gratis

Cálculo determinista erróneo

En este ejercicio y en el siguiente, jugarás con los cálculos de pi del vídeo para comprender mejor la importancia de cada paso en el proceso de simulación.

Recuerda que la simulación para hallar pi genera puntos aleatorios \((x, y)\) en los que \(x\) y \(y\) están entre -1 y 1, como se muestra en el gráfico siguiente.

Gráfico de un círculo dentro de un cuadrado con puntos muestreados aleatoriamente

¿Qué pasaría si cambiaras incorrectamente el cálculo determinista en el que compruebas si un punto debe añadirse a circle_points? ¿Cómo afectará esto al resultado final? Verás por el valor disparatado que obtienes para pi que especificar correctamente los cálculos deterministas es esencial para las simulaciones de Montecarlo.

random se ha importado para ti.

Este ejercicio forma parte del curso

Simulaciones Montecarlo en Python

Ver curso

Instrucciones del ejercicio

  • Incrementa circle_points para cualquier punto con una distancia al origen inferior a 0,75 (en lugar de una distancia de uno, como se demuestra en el vídeo).

Ejercicio interactivo práctico

Prueba este ejercicio completando el código de muestra.

n = 10000
circle_points = 0 
square_points = 0 
for i in range(n):
    x = random.uniform(-1, 1)
    y = random.uniform(-1, 1)
    dist_from_origin = x**2 + y**2
    # Increment circle_points for any point with a distance from origin of less than .75
    if ____:
        circle_points += 1
    square_points += 1
pi = 4 * circle_points / square_points
print(pi)
Editar y ejecutar código