진짜 풀어볼 시간
👋 이 챕터에서 만들 것
지금까지 minimax + 알파-베타를 배웠다. 이제 그걸로 아무도 이길 수 없는 틱택토 AI를 만든다. 너가 직접.
틱택토는 작아서 minimax가 완벽하게 동작해. 이 챕터에서 우리는:
- 게임 상태를 깔끔한 Game 클래스로 만든다 (Board 클래스의 친척)
- 알파-베타 minimax를 적용한 best_move 함수 만든다
- AI vs AI 시뮬레이션 — 항상 무승부인지 확인
- 여러 시작 상황에서 AI의 응수 확인 — 이걸로 무패 보장됨
🎯 목표: 완벽한 AI의 두 조건
- 지지 않는다 — 어떤 상대든 최소 무승부.
- 실수에 응징한다 — 상대가 실수하면 그 즉시 이김의 길로 끌고 감.
이 두 조건을 만족하는 AI를 우리가 만들고, 직접 검증해본다.
이게 의미 있는 이유: "완벽한 AI는 가능하다"는 걸 작은 게임에서 직접 체험하는 거. 이걸 본 다음에 Ch 6에서 같은 접근을 바둑에 시도하면, 왜 안 되는지 직접 깨달음.