Primeira vez aqui? Seja bem vindo e cheque o FAQ!
x

Eu quero preencher um álbum com N figurinhas. Quantas figurinhas eu preciso comprar para preencher em média p% do álbum? Como fazer uma simulação Monte Carlo para estudar esse problema?

0 votos
223 visitas

1 Resposta

0 votos
respondida Ago 9, 2015 por danielcajueiro (5,251 pontos)  

Se você não conhece bem esse problema, dê uma olhada aqui. Usando Python, fiz uma simulação monte carlo para responder essa pergunta.

import numpy as np
import matplotlib.pyplot as plt

def geraPacote(numeroFigurinhasPacote,numeroFigurinhasAlbum):
    pacote=np.random.randint(0,numeroFigurinhasAlbum,numeroFigurinhasPacote)
    return pacote

if __name__ == '__main__':
    # Parametros
    numeroFigurinhasPacote=5
    numeroFigurinhasAlbum=640    
    numeroAmostras=500 
    simulations=np.empty([numeroAmostras])
    album=np.zeros([numeroFigurinhasAlbum],dtype=bool)
    # Variaveis
    porcentagemPreenchida=0.95
    preenchimento=int(porcentagemPreenchida*numeroFigurinhasAlbum)
    # Código Principal
    media=0
    for i in range(numeroAmostras):
        print "Amostra", i
        album=np.zeros([numeroFigurinhasAlbum],dtype=bool)        
        numeroFigurinhasPreenchidas=0    
        somaNumeroDePacotesUsados=0
        while (numeroFigurinhasPreenchidas<preenchimento):
            pacote=geraPacote(numeroFigurinhasPacote,numeroFigurinhasAlbum)
            somaNumeroDePacotesUsados=somaNumeroDePacotesUsados+1
            for j in range(numeroFigurinhasPacote):
                if (not album[pacote[j]]):
                    album[pacote[j]]=True
                    numeroFigurinhasPreenchidas=numeroFigurinhasPreenchidas+1
                    #print "Numero Figurinhas Preenchidas", numeroFigurinhasPreenchidas
        simulations[i]=somaNumeroDePacotesUsados            
        media=media+somaNumeroDePacotesUsados            
    media=media/numeroAmostras
    print "Média de 100 simulações:", media   

    matplotlib.pyplot.hist(simulations,bins=30)

A simulação abaixo considera os parâmetros do album de figurinhas da Copa de 2014 da Panini:

1) O album tem 640 figurinhas diferentes

2) Cada pacote vem com 5 figurinhas

3) Supõe-se que as figurinhas dentro de cada pacote são independentes.

4) Os pacotes também são independentes

Também fiz a suposição que desejo preencher 95% do album. A figura abaixo apresenta a distribuição a partir de 500 amostras.

A imagem será apresentada aqui.

...