Monte Carlo method

동명의 카지노에서 따온 이름을 가진, 통계학의 한 방법. 최적화, 수치적분, 확률분포로부터의 추출 등에 쓰인다.

정확히는 MCMC라고 하며, 이 약자는 Markov chain Monte Carlo이다. 러시아 수학자인 Andrey Markov (1856 - 1922) 가 Markov Chain을 만들었고, 이 Markov Chain을 무수히 많이 반복해서 값을 추출하는 방법을 Markov chain Monte Carlo 라고 한다.

Markov Chain은 1900년대에 나왔는데, 무수히 반복한다는 정도가 기본적으로 1,000번이 넘는 반복이기 때문에, 사실 고사양 컴퓨터가 아니면 인간의 머리로는 계산이 불가능하다. 따라서 CPU가 어느정도 따라와야 발전하는 학문이였고, 이제서야 빛을 본다고 해도 과언이 아니다. 2000년대로 넘어서면서 거의 모든 시뮬레이션의 결과는 이 MCMC의 결과라고 봐도 될 정도로, 매우 각광받는 분야이다. 하지만 MCMC자체가 이론자체는 쉬울지 몰라도, 제대로 하기는 어렵기도 해서 대학원에 가지 않는 이상 진행형태만 대충 배우는 것으로 마친다. 보통 통계학과 대학원에 1학기 과정으로 1학기동안 MCMC만 배우는 과목이 많은 학교에 있다. 간혹 사기로 1시간 만에 위에 진행형태만 알려주는 교수도 있다는 건 흠좀무

몬테 카를로란 이름이 붙은 이유는 이 방법이 알려지게 된 연구가 바로 로스 알라모 과학 연구소의 핵무기 개발 연구였기 때문이다. 당시 핵무기 연구는 비밀연구라서 코드명이 필요했는데, Stanislaw Ulam이라는 학자가 존 폰 노이만과 함께 연구했는데, 동료였던 니콜라스 메트로폴리스가 Ulam의 삼촌이 친척들에게 돈을 빌려서 자주 가던 카지노의 이름을 코드명으로 추천하고 그것이 받아들여진 것이다(......) 만약 이 방법이 발견되지 않았다면 맨하탄 프로젝트가 성공하지 못했을 것이라고 한다. 대학자도 공밀레에서 자유로울 수는 없습니다

정확하게 어떤 것이라고 정의되지는 않았지만 대략적으로 다음과 같은 형태로 진행된다.
1. 가능한 입력값들이 주어진다.
2. 입력값들로부터 무작위적인 추출들이 이루어진다.
3. 이 추출값들에서 어떤 값들을 구한다.
4. 모든 구해진 값들을 종합한다.

자유도가 높거나 닫힌꼴(closed form)의 해가 없는 문제들에 널리 쓰이는 방법이다.
즉 웬만한 공학 및 경제학에서는 한번쯤 안 쓰는 곳이 없다고 보면 된다.

특히 일반인들에게 몬테 카를로 방법을 가장 알리게 된 분야는 바로 인공지능이다. 체스딥 블루바둑알파고가 바로 몬테 카를로 방법을 이용해 대국에서 최선의 결과를 연산을 통해 유추해 두는 바둑으로 세계 최고수인 가리 카스파로프이세돌을 꺾으며 인공지능의 가능성을 한차원 끌어올렸다.