시뮬레이션 샘플링 방법

시뮬레이션을 시행할 때마다 샘플링 방법은 모델의 각 가정에 대해 무작위 값을 선택합니다.

전략적 모델링 시뮬레이션에서는 다음 샘플링 방법 중 하나를 사용합니다.

  • Monte Carlo - 각 가정의 정의된 분포에서 임의의 값을 무작위로 선택합니다.

  • Latin Hypercube - 각 가정의 정의된 분포에서 무작위로 값을 선택하고 균일하게 분산합니다.

Monte Carlo 샘플링

Monte Carlo 시뮬레이션에서는 무작위로 그리고 반복적으로 불확실한 변수 값을 생성하여 모델을 시뮬레이트합니다. 각 가정의 확률 분포 값은 무작위이며 완전히 독립적입니다. 즉, 하나의 시행에 대해 선택된 무작위 값은 생성된 다음 무작위 값에 영향을 주지 않습니다.

Monte Carlo 시뮬레이션은 카지노에서 룰렛, 주사위, 슬롯 머신 등 모두 무작위 동작을 보이는 확률 게임을 하는 모나코의 몬테카를로(Monte Carlo)의 이름을 딴 것입니다.

이러한 무작위 동작은 Monte Carlo 시뮬레이션에서 무작위로 변수 값을 선택하여 모델을 시뮬레이트하는 방식과 유사합니다. 주사위를 굴리면 1, 2, 3, 4, 5, 6 중의 하나가 나온다는 사실은 알고 있지만 특정 시행에 대해 어떤 결과가 나올지는 모릅니다. 값의 범위를 알고 특정 시점이나 이벤트에 대한 값(예: 이자율, 필요 인원, 주가, 재고, 분당 전화 통화 수)은 불확실하다는 점에서 변수와 동일합니다.

Monte Carlo 샘플링을 사용하는 경우 분포의 진정한 모양에 접근하려면 Latin Hypercube보다 더 많이 시뮬레이션을 시행해야 합니다.

Monte Carlo 샘플링을 사용하여 모델에 대한 실제 가정 시나리오를 시뮬레이트합니다.

Latin Hypercube 샘플링

Latin Hypercube 샘플링은 각 가정의 확률 분포를 각각 같은 확률의 겹치지 않는 세그먼트로 나눕니다.

시뮬레이션이 실행되는 동안 Latin Hypercube는 세그먼트의 확률 분포에 따라 각 세그먼트의 무작위 가정 값을 선택합니다. 이러한 값 컬렉션이 Latin Hypercube 샘플을 구성합니다. 각 세그먼트를 정확히 한 번 샘플링한 후에는 시뮬레이션이 중지될 때까지 프로세스가 반복됩니다.

Latin Hypercube 샘플링은 전체 범위의 분포가 보다 균일하고 일관되게 샘플링되므로 시뮬레이션 통계를 계산하는 경우 대개 일반 Monte Carlo 샘플링보다 더 정확합니다. Latin Hypercube 샘플링을 사용하면 더 적은 횟수만 시행해도 Monte Carlo 샘플링과 동일한 레벨의 통계 정확도를 달성할 수 있습니다. 이 방법을 사용하면 시뮬레이션이 실행되는 동안 샘플링된 세그먼트를 추적하는 데 필요한 추가 메모리에 추가 비용이 소요됩니다. (대부분의 시뮬레이션 결과에 비하면 이러한 추가 오버헤드는 사소한 수준입니다.)

주로 시뮬레이션 통계의 정확도에 관심이 많은 경우 Latin Hypercube 샘플링을 사용합니다.