O que é uma simulação de monte carlo?

Entre para nossa lista e receba conteúdos exclusivos!

monte carlo

Simulações de monte carlo são muito importantes. Com elas, podemos fazer obter o resultado numérico de um problema que é muito difícil, ou até mesmo impossível, de se obter analiticamente, ou seja, “isolando o x”.

Um grande exemplo desse tipo de problema é o cálculo da área de um rio. Sabemos que podemos chegar a área de qualquer figura calculando uma integral dupla naquela região, contudo, nessas situações é muito difícil determinar uma função que se ajuste aproximadamente ao contorno do rio.

Então, ao invés de gastar muito tempo tentando fazer interpolações de funções para se obter uma função aproximada, podemos simplesmente ter uma ajudinha da estatística e chegar em um valor aproximado da área do rio, utilizando valores aleatórios.

Simulação de monte carlo: O que é?

A simulação de monte carlo consiste em utilizar os números aleatórios para ajudar na obtenção de resultados numéricos aproximados. Podemos, a partir de equações analíticas, simplificar os cálculos usando pontos aleatórios, que têm densidade constante e são uniformemente distribuídos.

Mas como podemos utilizar os números aleatórios ao nosso favor? Vamos pensar no problema anterior de calcular a área de um rio.

Fonte: Wikipédia

Ou seja, supondo que queremos encontrar o valor da área azul do rio. Uma forma possível seria tentar calcular analiticamente, fazendo contas com o auxílio do cálculo diferencial e integral. Contudo, esse método seria muito custoso, pois as expressões matemáticas poderiam ficar muito difíceis. 

Uma forma possível seria utilizando uma simulação de monte carlo. Partimos do princípio que a área azul do rio é uma parcela da área total da imagem, do quadrado verde. Ou seja, nós poderíamos obter um valor da razão entre a área do rio e do quadrado verde, se tivéssemos acesso as duas áreas.

Podemos, então, chegar nessa razão de forma aproximada. Basta inserir uma grande quantidade de pontos aleatoriamente distribuídos pela imagem acima. Ao utilizar uma grande quantidade de pontos, a razão da área do rio com a área do quadrado verde vai ser aproximadamente igual à razão do número de pontos que ficaram no interior do rio com o número total de pontos.

Fonte: Wikipédia

Nesse caso, estamos obtendo uma amostra da área do rio e do quadrado verde, e dependendo do número de amostras, a razão delas pode ser bem próxima da razão real das áreas.

Com Essa razão em mãos, fica fácil de aproximar o valor da área azul do rio, esse método é bem simples de ser implementado e pode chegar a resultados bem precisos.

Simulação de monte carlo: Cálculo de Pi

Um exemplo de aplicação de uma simulação de monte carlo é o cálculo de pi. Podemos aproximar o valor da constante pi tentando calcular a área de uma seção de um círculo inscrita em um quadrado. 

Fonte: A autor

Se inserimos vários pontos aleatórios nessa figura, razão entre a área da seção do círculo vermelho e o quadrado azul é aproximadamente igual a razão entre a quantidade de pontos no interior da seção do círculo vermelho e o número total de pontos.

Implementação em python

Utilizando a biblioteca numpy, podemos criar esses pontos aleatórios e contá-los, segue o código:

import numpy as np
import matplotlib.pyplot as plt

#quantidade de valores
N = 10000
#definindo pontos aleatórios
points = np.ones((N,2))
points[:,0] = np.random.random(N)
points[:,1] = np.random.random(N)

#definindo listas com valores interiores e exteriores ao circulo
pointsInt = []
pointsExt = []
#marcando valores interiores à secção do círculo
for i in points:
  if((i[0]**2+i[1]**2)**(1/2) <= 1):
    pointsInt.append(i)
  else:
    pointsExt.append(i)
#Armazenando valores encontrados em um array numpy
dentro = np.array(pointsInt)
fora = np.array(pointsExt)

Podemos, também, plotá-los, para uma melhor vizualização, utilizando a biblioteca matplotlib.

#plotando os pontos
plt.figure(figsize = (8,8))
plt.plot(dentro[:,0], dentro[:,1], 'ro')
plt.plot(fora[:,0], fora[:,1], 'bo')
Fonte: A autor

A contagem de pontos vermelhos foi de 7874 pontos, dos 10000 pontos que criamos. Então, desenvolvendo as contas, ficamos com:

Logo, chegamos a um valor de pi bem próximo do real, que seria 3,141592… .

Conclusão

Em suma, conhecemos uma forma de obter resultados numéricos através de simulações de monte carlo. Essas simulações são muito importantes para a ciência no geral, pois ajuda a obter muitos resultados de forma simplificada. Até a proxima!

Referências

https://pt.wikipedia.org/wiki/M%C3%A9todo_de_Monte_Carlo

Icons made by Royyan Wijaya from www.flaticon.com’

Outros Artigos

A Guerra Fria: Principais Eventos e Consequências
História

A Guerra Fria: Principais Eventos e Consequências

O artigo oferece uma análise dos principais eventos da Guerra Fria, como a crise dos mísseis de Cuba, a corrida espacial e a queda do Muro de Berlim. Discute as consequências políticas, econômicas e sociais desse período, além de seu impacto nas relações internacionais contemporâneas.

Ciclo do Nitrogenio
Curiosidades

Ciclo do Nitrogênio: Importância e Etapas

Este post explica as etapas do ciclo do nitrogênio, desde a fixação até a desnitrificação. Discute a importância desse ciclo para os ecossistemas e a agricultura, além de abordar os impactos da atividade humana sobre o ciclo natural do nitrogênio.

Fotossíntese
Biológicas

Fotossíntese: Processo e Importância para os Ecossistemas

Este post aborda o processo da fotossíntese, explicando as fases clara e escura, os pigmentos envolvidos e a importância desse processo para a vida na Terra. Discute também a relação da fotossíntese com a produção de oxigênio e a sustentabilidade dos ecossistemas.

Legal

® 2021-2024 Meu Guru | 42.269.770/0001-84 • Todos os direitos reservados

Entre para nossa lista e receba conteúdos exclusivos!