Calculando o preço de equilíbrio de uma loteria
Simulações permitem fazer perguntas mais detalhadas que nem sempre têm uma solução analítica simples. Em vez de resolver uma fórmula matemática complexa, obtemos diretamente vários resultados amostrais. Podemos rodar experimentos modificando entradas e estudando como essas mudanças afetam o sistema. Por exemplo, depois de termos um modelo razoável dos padrões climáticos globais, poderíamos avaliar o impacto do aumento das emissões de gases de efeito estufa.
No exemplo da loteria, talvez você queira saber quão caro o bilhete precisa ser para não valer a pena comprá-lo. Para entender isso, precisamos alterar o custo do bilhete para ver quando o ganho esperado fica negativo.
grand_prize, num_tickets e chance_of_winning já estão carregadas no ambiente.
Este exercício faz parte do curso
Simulação Estatística em Python
Instruções do exercício
- Defina
simscomo 3000 e a variávellottery_ticket_costcomo0. - Se o valor médio de
outcomesficar abaixo de0, usebreakpara sair do loopwhile. - Caso contrário, incremente
lottery_ticket_costem 1.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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))