결정론적 vs. 몬테칼로 방법 (면적 구하기)

결정론적 vs. 몬테칼로 방법 (면적 구하기)

이 글에서는 Monte Carlo method 분야의 유명한 예제 중 하나인 원의 면적 구하기 문제를 GUI를 통해 실습해 보겠습니다.

아래에는 가로와 세로가 100인 정사각형과, 직경이 100인 원을 그려두었습니다. 이 글의 목표는 직경이 100인 원의 넓이를 구하는 것입니다.

물론 우리는 원의 넓이를 구하는 공식($\frac{\pi d^2}{4}$)을 이용하여, 원의 넓이의 참값이 7854.0임을 알고 있습니다. 하지만, 이 글에서는 원의 넓이를 구하는 공식을 모르는 상태에서 면적을 구하는 방법에 대해 살펴보고자 합니다.

이 방법을 확장하면, 원과 같이 면적을 계산하는 공식이 알려진 도형이 아닌 임의의 모양에 대해 넓이를 구하는 경우에도 활용할 수 있을 것입니다.


결정론적 방법(Deterministic method)

결정론적 방법이란, 알려진 수학적 모델과 고정된 입력 값을 사용하여 결과를 계산하는 방법입니다. 만약 지금처럼 문제에 완전히 부합하는 수학적 모델이 없는 경우에는, 적절한 분할과정을 통해 근사적인 값을 구해냅니다.

장점

  • 간단한 문제의 경우에는 정확한 정답을 계산할 수 있음
  • 계산 속도가 빠름(Monte Carlo method 대비)

단점

  • 데이터를 분할하여 처리함에 따른 계통오차가 발생
  • 복잡한 문제에서는 지나친 단순화가 요구되거나 혹은 계산이 불가능할 수 있음




몬테칼로 방법(Monte Carlo method)

몬테칼로 방법이란, 무작위하게 추출한 수(난수)를 활용하여 결과를 추정하는 방법입니다. 난수를 어떻게 활용할 지 구체적인 방법은 문제마다 달라질 수 있습니다. 지금처럼 임의의 도형의 면적을 구하는 문제에서는, 주로 이 도형을 감싸는 좀 더 크고 쉬운 도형(정사각형) 내에서 점의 위치를 무작위(independent and identically distributed)하게 추출한 뒤, 면적을 구하고자 하는 도형(원) 안에 들어간 점의 개수 비율을 통해 면적을 추정합니다.

장점

  • 문제가 복잡하더라도 단순화할 필요 없이 계산 가능
  • 이론상 시행 횟수를 충분히 늘리면 원하는 수준의 오차 이내에서 참값을 추정할 수 있음

단점

  • 일반적으로 계산이 오래걸림(Deterministic method 대비)
  • 매 시행마다 다른 결과값을 주며, 이에 따른 확률적인 불확도를 내재하고 있음