몬테카를로 방법

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색

작은 글자이하의 내용은 영어 위키백과의 일부의 번역본입니다. 출처는 영어 위키백과를 참조하세요.

몬테카를로 방법(Monte Carlo method)은 난수를 이용하여 함수의 값을 확률적으로 계산하는 알고리즘을 부르는 용어이다. 수학이나 물리학 등에 자주 사용되며, 계산하려는 값이 닫힌 형식으로 표현되지 않거나 복잡한 경우에 근사적으로 계산할 때 사용된다. 스타니스와프 울람모나코의 유명한 도박의 도시 몬테카를로의 이름을 본따 명명하였다.

1930년 엔리코 페르미중성자의 특성을 연구하기 위해 이 방법을 사용한 것으로 유명하다. 맨해튼 계획의 시뮬레이션이나 수소폭탄의 개발에서도 핵심적인 역할을 담당하였다.

알고리즘의 반복과 큰 수의 계산이 관련되기 때문에 몬테카를로는 다양한 컴퓨터 모의 실험 기술을 사용하여 컴퓨터로 계산하는 것이 적합하다.

예제[편집]

몬테카를로 방법으로 원주율을 계산하는 과정

다음은 원주율을 계산하는 몬테카를로 알고리즘의 한 예시이다.

  • [0,1] \times [0,1]에서 점 (x,y)표집한다.
  • 표집한 점이 중심이 (0,0)에 있고 반지름이 1인 원에 속하는지 계산한다. 이는 원의 정의에 따라 x^2 + y^2와 1을 비교함으로써 계산할 수 있다.
  • 위의 두 과정을 충분히 반복하여, 원에 속한 점들의 갯수를 계산한다.

표집 영역과 원의 공통 영역은 \pi/4의 넓이를 가지며, 전체 점 갯수를 원에 속한 점 갯수로 나눈 비율은 이 값을 근사화한다.