Documentação Final
Tabela de conteúdo |
Introdução
Uma simulação é uma imitação de uma operação ou de um sistema do mundo real em função do tempo. Uma simulação envolve gerar e observar uma história artificial do sistema estudado, podendo assim traçar diversas conclusões sobre a operação do sistema no mundo real (BANKS et al.,2005, p.3).
Para tal estudo, é necessário fazer suposições sobre o sistema a ser estudado. Tais suposições são normalmente feitas através de relações lógicas ou matemáticas, sendo estas chamadas de modelos. Para casos onde o modelo é simples, é possível utilizar métodos analíticos para se determinar a informação exata de que se precisa, porém casos no mundo real costumam ser complexos demais para se obter uma solução analítica e, portanto, utiliza-se uma simulação realizada em computador. Em uma simulação computacional avalia-se um modelo numericamente e os dados obtidos são utilizados para estimar características do sistema (LAW e KELTON, 2000).
Assim, a simulação torna-se uma ferramenta apropriada para modificar e estudar interações internas dentro de um sistema muito complexo, permitindo prever alterações que ocorreriam no mundo real, bem como pode ser utilizada como apoio pedagógico para reforçar metodologias de solução analítica (BANKS et. al, 2005, p.4).
Além disso, diversos sistemas (projeto e análise de fábricas, determinação de requisitos de hardware, protocolos para redes de comunicação, projeto e operação de sistemas de transporte como aeroportos, rodovias, portos e metrôs, por exemplo) são complexos demais e suas interações internas podem ser tratadas apenas por via de simulações (BANKS et al., 2005, p.4).
Sistemas e Modelos de Simulação
De acordo com Schmidt e Taylor (apud LAW e KELTON, 2000) um sistema é uma coleção de entidades que agem juntas e interagem para um mesmo fim lógico.
Um sistema pode ser classificado em discreto ou contínuo. Um sistema discreto é aquele cujas variáveis mudam instantaneamente em certos tempos, enquanto que em um sistema contínuo o estado das variáveis se altera continuamente. Um sistema dificilmente será totalmente discreto ou totalmente contínuo, mas é possível realizar tal classificação de acordo com o tipo de mudança predominante (LAW e KELTON, 2000).
Para se simular um sistema desejado é necessário criar um modelo de tal processo. Um modelo é a representação de um sistema com o propósito de estuda-lo. Para a maioria dos estudos, é necessário apenas considerar os aspectos do método que afetam o problema sob investigação (BANKS,2005,p. 12). Modelos ainda podem ser classificados em matemáticos ou físicos. Modelos matemáticos utilizam notação matemática representando as relações lógicas e qualitativas do sistema. Os físicos são aqueles gerados manualmente, como arremesso de moedas e lançamento de dados, por exemplo.
Os modelos matemáticos e físicos de simulação ainda podem ser classificados em estáticos ou dinâmicos, determinísticos ou estocásticos. Os modelos de simulação estáticos representam o sistema em um ponto específico no tempo onde a decorrência do tempo não é relevante. Já os modelos de simulação dinâmicos representam sistemas que evoluem com o tempo. Modelos de simulação que não contêm variáveis aleatórias são chamados de modelos determinísticos, enquanto que modelos estocásticos possuem uma ou mais variáveis aleatórias (LAW e KELTON, 2000).
Proposta
Este trabalho se propõe a apresentar o Método de Monte Carlo, seu desenvolvimento histórico e algumas aplicações, sua implementação em ambientes computacionais, a geração de números pseudo-aleatórios e suas limitações envolvidas. Para tanto foi realizado um estudo da fila do restaurante universitário do campus Curitiba da UTFPR a fim de mostrar na prática como o Método pode ser utilizado.
Justificativa
O Método de Monte Carlo é utilizado em diversas áreas de aplicações, tais como a computação, onde o método foi desenvolvido, até a administração. Entretanto, observa-se em geral um grande esforço na aplicação do método, deixando em segundo plano a compreensão de seus fundamentos e limitações.
Este é justamente neste aspecto que este trabalho se baseia, ou seja, expor os fundamentos do Método de Monte Carlo para que as pessoas que o utilizam como ferramenta possam entender um pouco mais seus princípios.
Objetivos
O objetivo geral deste trabalho é a apresentação do Método de Monte Carlo. Para tal, foram definidos os seguintes objetivos específicos:
- Análise do Método de Monte Carlo no contexto de simulações;
- Coleta de dados e aplicação do Método à fila do restaurante universitário, de modo a ilustrar o Método.
Procedimentos
Os procedimentos podem ser divididos em duas seções: os procedimentos para a elaboração da monografia e os procedimentos para a elaboração dos aplicativos.
Para a elaboração da monografia, prevem-se três etapas:
- Pesquisa bibliográfica,
- Definição do sumário,
- Edição e revisão do texto.
Para a elaboração do aplicativo, os seguintes procedimentos foram adotados:
- Coleta de dados sobre a fila do Restaurante Universitário,
- Programação.
Método de Monte Carlo
Segundo Sobol (1994), o Método de Monte Caro é “um método numérico de solução de problemas matemáticos através da simulação de variáveis aleatórias”.
Para Machline (1985), dá-se o nome de Monte Carlo ao “método de simulação que consiste em gerar eventos aleatórios com dados”.
Nota-se que em ambos os conceitos estão presentes variáveis aleatórias, sendo este um ponto fundamental do Método. Para a melhor compreensão do Método, começaremos com o conceito de Acerto-ou-Erro, que o baseia.
Acerto-ou-Erro
Para a compreensão inicial do Método de Monte Carlo, Sobol (1994) apresenta um exemplo simples de Acerto-ou-Erro (Hit-or-Miss). Para isso, podemos considerar uma região S contida em um quadrado unitário de lado l = 1, conforme figura abaixo:
Inserir figura.
Observa-se que há pontos distribuídos pela região do quadrado. Tais pontos foram lançados aleatoriamente na região. Estes lançamentos são realizados de forma que todos os pontos do quadrado têm igual probabilidade de serem atingidos, ou seja, o acerto em uma determinada região não é mais provável do que o acerto em alguma outra dentro do quadrado. Supondo que foram realizados N lançamentos, teremos, então, N pontos distribuídos na área do quadrado unitário. Consideremos, ainda, que N' pontos acertaram a região S. Com isso, é possível concluir geometricamente que a área da região S é, aproximadamente, a razão N'/N. Quanto maior for N, maior será a precisão desta aproximação. No exemplo da figura acima, temos que N = 25 e N' = 14. A área da região S é, então, aproximadamente 0,56 (Sobol, 1994).
Seguindo o mesmo princípio de Acerto-ou-Erro, é possível calcular o valor de π considerando uma circunferência inscrita em um quadrado. A figura abaixo ilustra esta configuração (Rosa et al.).
Inserir figura.