영화 '닥터 스트레인지'에서 주인공이 수천만 개의 미래를 미리 보고 단 하나의 승리하는 경우를 찾아내는 장면을 기억하시나요? 현실 세계에서도 이와 비슷한 방법으로 미래를 예측하는 강력한 수학적 기법이 있습니다. 바로 '몬테카를로 시뮬레이션(Monte Carlo Simulation)'입니다. 이름에서 알 수 있듯이, 이 기법은 도박의 도시 몬테카를로 카지노에서 영감을 받아 탄생했습니다.
1. 몬테카를로 시뮬레이션이란?
몬테카를로 시뮬레이션은 무작위 난수(Random Number)를 반복적으로 생성하여, 복잡하고 불확실한 문제의 근사치 해답을 찾아내는 알고리즘입니다. 쉽게 말해 "주사위를 100만 번 던져보면, 1이 나올 확률이 1/6에 가까워질 것이다"라는 큰 수의 법칙(Law of Large Numbers)을 컴퓨터를 이용해 빠르게 구현하는 것입니다.
1. 가능한 입력값의 범위를 정의한다.
2. 그 범위 내에서 무작위로 값을 선택한다 (난수 생성).
3. 선택된 값으로 계산(실험)을 수행한다.
4. 이 과정을 수천, 수만 번 반복하여 결과의 분포를 분석한다.
2. 원주율(π) 구하기: 가장 직관적인 예시
가장 유명한 예시는 정사각형 안에 원을 그려놓고, 무작위로 점(다트)을 던져서 원 안에 들어간 점의 개수를 세는 것입니다.
- 정사각형의 넓이 = 4
- 내접하는 원의 넓이 = \(\pi\) (반지름이 1일 때)
- 전체 점의 개수 : 원 안의 점 개수 = 4 : \(\pi\)
점을 1,000개만 던져도 \(\pi\) 값이 대략 3.1415...에 가깝게 나온다는 것을 확인할 수 있습니다. 이처럼 정확한 공식을 모르더라도, 무수히 많은 시행착오(Simulation)를 통해 정답에 접근할 수 있다는 것이 몬테카를로의 핵심입니다.
3. 일상생활에서의 활용: 나의 은퇴 자금 계산기
금융 분야에서는 이미 필수적인 도구입니다. "내가 30년 뒤에 은퇴할 때 얼마를 모을 수 있을까?"라는 질문에는 수많은 변수가 존재합니다. (주식 수익률, 인플레이션, 월급 인상률, 예상치 못한 병원비 등)
단순히 "매년 5%씩 오를 거야"라고 가정하는 대신, 몬테카를로 시뮬레이션을 돌리면 "주식이 폭락할 확률 10%, 대박 날 확률 5%..." 등 모든 변수를 고려하여 1만 가지의 가능한 미래 시나리오를 만들어줍니다. 그리고 그중 "내가 파산하지 않을 확률은 85%입니다"와 같은 확률적인 결론을 도출해 줍니다.
4. 로또 번호 생성과 몬테카를로
Daily Pick Lab의 로또 번호 생성기에도 이와 유사한 원리가 숨어 있습니다. 단순히 1~45 중 6개를 뽑는 것이 아니라, 수만 번의 가상 추첨을 통해 "특정 패턴이 과도하게 몰리지 않도록" 조정하거나, "역대 당첨 번호와 유사성(너무 똑같은 번호는 피함)"을 분석하는 데 시뮬레이션 기법을 활용할 수 있습니다.
물론 로또는 독립 시행이므로 다음 회차 번호를 '예측'하는 것은 불가능합니다. 하지만 몬테카를로 시뮬레이션은 "가장 덜 멍청한 베팅(Least Stupid Betting)"을 선택하는 데 도움을 줄 수 있습니다. 예를 들어, 1, 2, 3, 4, 5, 6을 찍는 사람보다 무작위성이 충분히 검증된 번호를 찍는 사람이 만약 당첨되었을 때 혼자 독식할 확률(기댓값)이 더 높다는 계산이 나오기 때문입니다.
5. 결론: 불확실성을 다루는 지혜
세상은 예측 불가능한 변수들로 가득 차 있습니다. 우리는 모든 것을 통제할 수 없지만, 몬테카를로 시뮬레이션처럼 '일어날 수 있는 모든 가능성'을 고려하고 대비할 수는 있습니다.
우연에 맡기는 것 같아 보이지만, 그 속에서 필연적인 법칙을 찾아내는 것. 이것이 바로 확률과 통계가 우리에게 주는 삶의 지혜가 아닐까요?
참고 자료
- Metropolis, N., & Ulam, S. (1949). The Monte Carlo Method. Journal of the American Statistical Association.
- Silver, N. (2012). The Signal and the Noise: Why So Many Predictions Fail-but Some Don't. Penguin Books.