Pure Monte Carlo의 한계
지난 페이지에서 Pure Monte Carlo가 잘 동작했어. 그런데 두 가지 큰 한계:
⚠️ 한계 1: 한정된 시간에 모든 수를 똑같이 시도
위 코드를 보면 9개 자리 모두에 1000번씩 rollout 했어. 명백히 나쁜 수도 1000번. 명백히 좋은 수도 1000번. 시간이 균등하게 낭비됨.
이상적인 방법: 유망한 수에 더 많은 시뮬레이션을 집중해서 그 수의 진짜 가치를 더 정확히 파악. 명백히 나쁜 수는 빨리 포기.
이게 다음 챕터의 UCB1이 풀 문제.
⚠️ 한계 2: 첫 수만 평가, 그 다음은 무작위
위 코드는 첫 수만 의도적이고, 그 후로는 모두 무작위. 그런데 진짜 좋은 수는 여러 수에 걸친 계획. "지금 (0,0)에 두면 → 상대가 어디 두든 → 다음 내가 (2,2) 두면 → 이긴다"는 식.
이상적인 방법: 상대도 똑똑하게 두고, 나도 똑똑하게 응수하는 시뮬레이션. 그러면서 시뮬레이션 결과를 트리에 누적해서 깊이도 본다.
이게 MCTS가 풀 문제. PART 3의 진짜 클라이맥스.
📊 그래도 Pure MC가 의미 있는 이유
1993년 Brügmann이 처음 제안했을 때 사람들이 "그게 뭔 황당한 소리"라고 했어. 그런데 그 단순한 방법이 당시 룰 기반 컴퓨터 바둑보다 강한 사례가 나옴 — 약 10급 수준.
이 작은 가능성에서 13년 뒤 MoGo(2006)가 Pure MC를 트리 탐색과 결합해서 5단까지 도약. 그게 다음 두 챕터.
요약하면:
- Pure Monte Carlo는 평가 함수를 안 만들고 통계로 대체
- 틱택토에서 정답을 찾음 — 직관과 일치
- 그러나 (1) 시간 배분이 비효율 (2) 깊이를 못 봄 — 두 약점
- 이 두 약점을 해결하는 것이 UCB1 + MCTS