CommencerCommencer gratuitement

Calculer un prix de loterie d’équilibre

Les simulations nous permettent de poser des questions plus nuancées qui n’ont pas forcément une solution analytique simple. Plutôt que de résoudre une formule mathématique complexe, nous obtenons directement plusieurs résultats d’échantillonnage. Nous pouvons mener des expériences en modifiant les entrées et en étudiant comment ces changements impactent le système. Par exemple, une fois que nous disposons d’un modèle raisonnable des régimes climatiques mondiaux, nous pouvons évaluer l’impact d’une hausse des émissions de gaz à effet de serre.

Dans l’exemple de la loterie, nous pourrions vouloir savoir à partir de quel prix du billet il n’est plus intéressant d’en acheter. Pour cela, nous devons modifier le coût du billet afin de voir quand l’espérance de gain devient négative.

grand_prize, num_tickets et chance_of_winning sont déjà chargées dans l’environnement.

Cet exercice fait partie du cours

Simulation statistique en Python

Afficher le cours

Instructions

  • Définissez sims à 3000 et la variable lottery_ticket_cost à 0.
  • Si la moyenne de outcomes passe en dessous de 0, quittez la boucle while avec break.
  • Sinon, incrémentez lottery_ticket_cost de 1.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Initialize simulations and cost of ticket
sims, lottery_ticket_cost = ____, ____

# Use a while loop to increment `lottery_ticket_cost` till average value of outcomes falls below zero
while 1:
    outcomes = np.random.choice([-lottery_ticket_cost, grand_prize-lottery_ticket_cost],
                 size=sims, p=[1-chance_of_winning, chance_of_winning], replace=True)
    if outcomes.mean() < 0:
        ____
    else:
        ____ += 1
answer = lottery_ticket_cost - 1

print("The highest price at which it makes sense to buy the ticket is {}".format(answer))
Modifier et exécuter le code