Método de Monte Carlo
Designa-se por método de Monte Carlo (MMC) qualquer método de uma classe de métodos estatísticos que se baseiam em amostragens aleatórias massivas para obter resultados numéricos. Em suma, utilizam a aleatoriedade de dados para gerar um resultado para problemas que a priori são determinísticos. São utilizados mais comumente em problemas de física e de matemática onde são muito difíceis ou impossível de serem resolvidos com outros métodos.
Imagem: Jirah · BY-SA · Openverse
De acordo com Hammerseley (1964) o nome "Monte Carlo" surgiu durante o projeto Manhattan na Segunda Guerra Mundial. No projeto de construção da bomba atómica, Stanisław Ulam, von Neumann e Fermi consideraram a possibilidade de utilizar o método, que envolvia a simulação direta de problemas de natureza probabilística relacionados com o coeficiente de difusão do nêutron em certos materiais. Apesar de ter despertado a atenção desses cientistas em 1948, a lógica do método já era conhecida há bastante tempo. Por exemplo, existe um registro de um artigo escrito por Lord Kelvin dezenas de anos antes, que já utilizava técnicas de Monte Carlo em uma discussão das equações de Boltzmann. Antes do método de Monte Carlo ser desenvolvido, as simulações possuíam um problema determinístico devido a amostragem estatística que era usada para estimar as incertezas nas simulações. As simulações de Monte Carlo invertem essa abordagem, resolvendo problemas determinísticos usando probabilidades meta-heurísticas.
Estimativa da população de peixes em um lago
Um exemplo clássico do uso do método de Monte Carlo é a estimativa da população de peixes em um lago. Nesse método é feita uma primeira etapa de identificação: são pescados diversos peixes que são marcados por meio de um anel. Nessa etapa é importante saber exatamente o número de peixes que foram identificados dessa forma. Na segunda etapa são pescados novamente uma certa quantidade de peixes aleatoriamente, anotando respectivamente aqueles que estavam identificados com o anel e aqueles que não estavam identificados. É esperado que a proporção entre peixes pescados com a identificação e o número total de peixes pescados siga a mesma proporção entre o número total de peixes com a identificação e o número total de peixes, como mostra a relação:
Estimativa para o valor de π {\displaystyle \pi }
Um exemplo simples de simulação seria o cálculo de π {\displaystyle \pi } . Modelamos um círculo de raio unitário inscrito em um quadrado e geramos pontos aleatórios dentro desse quadrado, que podem assim estar dentro ou fora do círculo. Com uma amostragem grande o suficiente de pontos, a razão dos pontos dentro do círculo pelo total de pontos gerados se aproxima de um quarto da razão da área do círculo pela área do quadrado (já que o quadrado terá área igual a 4 unidades de medida de área). Assim, estimamos o valor de π {\displaystyle \pi } numericamente, como demonstrado nos códigos abaixo, utilizando a geração de números pseudo-aleatórios em uma distribuição uniforme entre 0 e 1. Como todos os números gerados no código apresentado são positivos, a área analisada é apenas a do primeiro quadrante. Contudo, isso não interfere na razão entre o número de pontos dentro do círculo e o número de pontos dentro do quadrado já que ambos, tanto o círculo quanto o quadrado, têm sua área reduzida em um quarto, mantendo a razão constante.
Método de integração por Monte Carlo
No exemplo anterior, foi utilizado o método de integração por Monte Carlo para obter o valor da área correspondente ao valor de π 4 {\displaystyle {\frac {\pi }{4}}} . Esse método de integração pode ser utilizado analogamente em qualquer outra função dentro dos requisitos de integração. Segue um exemplo de código e pseudocódigo para uma função estritamente positiva dentro de um intervalo definido. 1. Definir a função, o intervalo de integração [a,b], o número de iterações N e o número de contagem n=0. 4. Gerar ponto y0 aleatório entre 0 e o máximo da função no intervalo max_y
Existem três classes de algoritmos Monte Carlo: Erro-Unilateral, Erro-Bilateral e Erro-Não-Limitado.
Monte Carlo de Erro-Unilateral
Seja P {\displaystyle P} um problema e A um algoritmo aleatório, A é um algoritmo Monte Carlo de Erro-Unilateral que resolve P {\displaystyle P} se i) para toda configuração x {\displaystyle x} que é solução de P {\displaystyle P} , prob ( A ( x = SIM ) ) ≥ 1 2 {\displaystyle \operatorname {prob} (A(x={\text{SIM}}))\geq {\frac {1}{2}}} , e ii) para toda configuração x {\displaystyle x} que não é solução de P {\displaystyle P} , prob ( A ( x = NÃO ) ) = 1 {\displaystyle \operatorname {prob} (A(x={\text{NÃO}}))=1} . Ou seja, sempre que a resposta é NÃO, o algoritmo garante a certeza da resposta. Contudo, se a resposta for SIM, o algoritmo não garante que a resposta está correta.
Monte Carlo de Erro-Bilateral
Um algoritmo aleatório A é um algoritmo de Monte Carlo de Erro-Bilateral que computa o problema F {\displaystyle F} se existe um número real positivo ϵ {\displaystyle \epsilon } , tal que para toda instância x {\displaystyle x} de F {\displaystyle F} prob ( A ( x ) = F ( x ) ) ≥ 1 2 + ϵ {\displaystyle \operatorname {prob} (A(x)=F(x))\geq {\frac {1}{2}}+\epsilon }
Monte Carlo de Erro-Não-Limitado
Os algoritmos Monte Carlo de Erro-Não-Limitado são comumente chamados de Algoritmos Monte Carlo. Um algoritmo aleatório A é um algoritmo de Monte Carlo se para qualquer entrada x do problema F prob ( A ( x ) = F ( x ) ) > 1 2 {\displaystyle \operatorname {prob} (A(x)=F(x))>{\frac {1}{2}}}
A ideia principal por trás deste método é que seus resultados são baseados em amostragens aleatórias e análises estatísticas, de forma que o método gera experimentos aleatórios, onde seus resultados são desconhecidos. Desta forma, é necessário utilizar métodos de geração de sequências de números aleatórios ou, no caso de computadores, números pseudo-aleatórios, permitindo acesso ao estado inicial do gerador, facilitando a reprodução da simulação. Simulações de Monte Carlo de qualidade devem ter certas características:
O algoritmo de Metropolis, também conhecido por Algoritmo de Metropolis-Hastings, apresentado inicialmente em 1953 num artigo de Nicholas Metropolis, Arianna Rosenbluth, Marshall Rosenbluth, Augusta Teller e Edward Teller, e generalizado em 1970 por W. K. Hastings, é provavelmente o método Monte Carlo mais utilizado na Física, e tem como objetivo determinar valores esperados de propriedades do sistema simulado, através de uma média sobre uma amostra. O algoritmo é concebido de modo a se obter uma amostra que siga a distribuição de Boltzmann. Para se determinar a probabilidade de uma dada configuração, seria necessário conhecer a chance de ocorrência de todas as outras configurações. No caso de variáveis contínuas, seria necessário uma integração da densidade de probabilidade sobre todo o espaço de configurações, mas esse procedimento fica muito custoso quando se utiliza um número de variáveis da ordem de centenas.
PENELOPE (Penetration and Energy Loss of Positrons and Electrons) é utilizado para simular interações de elétrons e de pósitrons (como dispersão elástica e emissão bremsstrahlung), onde eventos 'duros' (i.e. perda de energia maior que os cutoffs pré-seleccionados) são simulados com precisão, ao passo que as interações 'suaves' são calculadas a partir de múltiplas abordagens de dispersão. Interações de fótons (dispersão de Rayleigh, dispersão de Compton, efeito fotoelétrico e produção de pares de elétrons-pósitrons) e aniquilação de pósitrons são simuladas de uma forma detalhada. BEAMnrc é um código de Monte Carlo usado para simular feixes de radiação de unidades de radioterapia incluindo elétrons e fótons de alta energia. É capaz de acompanhar o histórico de cada partícula e marcar o depósito de dose separados usando esta informação. O código BEAM modela a fonte de terapia com o eixo z como o eixo do feixe, e geralmente a origem é definida como o centro do feixe onde ele sai do vácuo do acelerador. Este modelo consiste em um grupo de módulos componentes (CMs), contido entre dois planos perpendiculares para o eixo z e não estão sobrepostos.
Os padrões para experimentos de Monte Carlo em estatísticas foram definidos por Sawilowsky. Em estatísticas aplicadas, os métodos de Monte Carlo podem ser usados para pelo menos quatro finalidades: Os métodos de Monte Carlo também são um meio-termo entre a randomização aproximada e os testes de permutação. Um teste de randomização aproximada é baseado em um subconjunto especificado de todas as permutações (o que implica em uma administração potencialmente enorme, das quais as permutações foram consideradas). A abordagem de Monte Carlo é baseada em um número especificado de permutações desenhadas aleatoriamente (trocando uma pequena perda de precisão se uma permutação for desenhada duas vezes - ou mais frequentemente - pela eficiência de não ter que rastrear quais permutações já foram selecionadas). Os métodos de Monte Carlo foram desenvolvidos em uma técnica chamada pesquisa de árvore de Monte-Carlo, que é útil para pesquisar o melhor movimento em um jogo. Os movimentos possíveis são organizados em uma árvore de busca e muitas simulações aleatórias são usadas para estimar o potencial de longo prazo de cada movimento. Um simulador de caixa preta representa os movimentos do oponente.
Física
Métodos de Monte Carlo são muito importantes em física computacional, físico-química e campos relacionados. Além de diversas aplicações desde complicados cálculos sobre cromodinâmica quântica até modelar o transporte de radiação para cálculos de dosimetria de radiação. Em física estatística, modelagem molecular por Monte Carlo é uma alternativa para o cálculo por dinâmica molecular. Métodos de Monte Carlo quântico resolvem problemas de muitos corpos para sistemas quânticos. Na ciência de radiação no material, a aproximação de colisões binárias para simulações de implantação de íons é usualmente baseada em abordagens de Monte Carlo para selecionar o próximo átomo que irá colidir. Na física de partículas experimental, os métodos de Monte Carlo são usados para projetar detectores, entender seu comportamento e comparar os dados experimentais com a teoria. Na astrofísica, eles são usados de maneiras tão diversas que modelam a evolução da galáxia e a transmissão da radiação de microondas através de uma superfície planetária rugosa . Os métodos de Monte Carlo também são usados nos modelos de conjunto que formam a base da previsão do tempo moderna.[carece de fontes?]
Medicina
Monte Carlo, por ser um algoritmo baseado em um modelo que usa distribuições de probabilidade bem estabelecidas, consegue modelar as interações individuais de fótons e elétrons de um paciente de radioterapia e seu transporte através dele. O principal objetivo é essencialmente caracterizar o feixe clínico produzido por uma fonte de radiação, e também para a computação direta das distribuições de doses de fótons para um dado paciente e geometria de tratamento. A limitação mais importante é o tempo necessário para calcular o grande número de histórias necessárias para reduzir as incertezas estatísticas. A simulação examina diversos processos envolvidos em materiais comuns aos aplicativos de radioterapia. Por exemplo, a distância média que um fóton viaja antes de interagir através do meio de um dos muitos processos de interação (percurso livre médio), como efeito Compton ou efeito fotoelétrico.
Engenharia
Os métodos de Monte Carlo são amplamente usados em engenharia para análise de sensibilidade e análise probabilística quantitativa no projeto de processos. A necessidade surge do comportamento interativo, colinear e não linear de simulações de processo típicas. Por exemplo:
Mudança climática e o forçamento radioativo
O Painel Intergovernamental sobre Mudanças Climáticas baseia-se nos métodos de Monte Carlo na análise da função densidade de probabilidade do forçamento radiativo. Função de densidade de probabilidade (PDF) de ERF devido ao total de GEE, forçamento de aerossol e forçamento antropogênico total. O GEE consiste em WMGHG, ozônio e vapor de água estratosférico. A combinação dos agentes de RF individuais para derivar o forçamento total sobre a Era Industrial é feita por simulações de Monte Carlo e com base no método de Boucher e Haywood (2001). PDF do ERF de alterações de albedo de superfície e rastros combinados e cirrus induzido por rastros estão incluídos no forçamento antropogênico total, mas não são mostrados como um PDF separado. Atualmente, não temos estimativas de ERF para alguns mecanismos de força: ozônio, uso da terra, energia solar, etc.
Biologia Computacional
Os métodos de Monte Carlo são usados em vários campos da biologia computacional, por exemplo, para inferência bayesiana na filogenia ou para estudar sistemas biológicos como genomas, proteínas ou membranas. Os sistemas podem ser estudados nos frameworks de granulação grossa ou ab initio dependendo da precisão desejada. Simulações de computador nos permitem monitorar o ambiente local de uma molécula específica para ver se alguma reação química está acontecendo, por exemplo. Nos casos em que não é possível realizar um experimento físico, experimentos mentais podem ser realizados (por exemplo: quebra de ligações, introdução de impurezas em locais específicos, alteração da estrutura local / global ou introdução de campos externos).[carece de fontes?]
Computação gráfica
O rastreamento de caminho, ocasionalmente conhecido como rastreamento de raios de Monte Carlo, renderiza uma cena 3D ao rastrear aleatoriamente amostras de possíveis caminhos de luz. A amostragem repetida de qualquer pixel dado eventualmente fará com que a média das amostras convirja para a solução correta da equação de renderização, tornando-a um dos métodos de renderização de gráficos 3D mais precisos fisicamente existentes.


