UNIV. OF SEOUL
Computer Science
Kim Jung Hoon
물리적, 수학적 시스템의 행동을 시뮬레이션
하기 위한 계산 알고리즘.
다른 알고리즘과 다르게 통계학적이고, 무작위의
숫자를 사용하는 non-deterministic 방법.
이러한 무작위의 숫자를 사용하여 Simulation
하여 원하는 결과를 도출해 내는 것
여러 속성을 갖는 객체의 집합에서 어떠한
현상을 알고자 하는 경우
정확한 값을 얻기 위해서는 허용가능한
시간내에 결과를 얻기가 힘이 든다. 이는
몬테칼로 방법을 통하여 근사적 해를
선형시간내에 얻을 수 있음을 의미한다.
문제에 대한 지식이 존재하지
않던가, 오류의 영향 등이 시스템의
퍼포먼스 혹은 신뢰성에 얼마나 영향을
주는지를 판별해 볼 수 있는 시뮬레이션
Step
가로, 세로가 1인 정사각형
반지름이 1인 원(1/4)
가로, 세로가 1인 정사각형
반지름이 1인 원(1/4)여기서 직사각형의 넓이
= 1
여기서 원의 넓이
= pi * 1/4
가로, 세로가 1인 정사각형
반지름이 1인 원(1/4)0 ~ 1 사이의
난수를 발생시켜
우리가 알고 있는 식이 맞는지
확인해본다.
Sample에서는 2000번의 난수를
측정하였다.
점이 원 안에 들어갈확률 = 파이/4
찍은점 : 2000
히트 : 1569
미스 : 431
Monte carlo method에 의한
원주율의 계산
1569 / 2000 = 4 * pi
4*1569 / 2000 = 3.138
2개는 꽝이고 하나는 당첨
꽝
꽝
카드를 변경하고 있지 않으면 선택될확률은 1/3 이다.
카드를 변경한다고 할 경우에는꽝1, 꽝2,당첨이 있을경우제일 처음 꽝1을 뽑으면 진행자는 꽝2를뒤집고 우리는 당첨을 선택하게 된다.제일 처음 꽝2를 뽑으면 진행자는 꽝1을뒤집고 우리는 당첨을 선택하게 된다.제일 처음 당첨을 뽑고 진행자가 꽝#을뽑으면 우리는 나머지 꽝을 선택하게 된다.
바꾸는 것이 좋다.
처음 선택할 때는 1/3의 확률이지만
하나가 꽝임을 알경우 다른 값은 2/3의
확률이 된다.
몬테칼로 알고리즘을 통하여 시뮬레이션
참조 :
http://en.wikipedia.org/wiki/Monty_Hall_pro
blem