Game AI · 2025.12 – 2026.01
Zero-Matgo — 규칙만 주고 스스로 배우는 맞고 AI
사람 전략 없이 승패만으로 학습합니다. 상대 패를 볼 수 없는 문제는 Determinized MCTS로, 뻑·쪽·흔들기는 자체 엔진으로.
ROLE개인
STACKPyTorch · MCTS · Self-play · AlphaZero
문제
화투 게임 ‘맞고’를 AlphaGo Zero 방식으로 학습시키는 프로젝트입니다. 바둑과 다른 점이 둘 있습니다. 상대 손패를 볼 수 없고(비대칭 정보), 규칙이 지저분합니다 — 뻑, 쪽, 따닥, 흔들기, 총통, 국진 변신, 피박·광박·멍박, 고/스톱.
접근
- Pure Zero: “광을 먹어라”, “3고를 해라” 같은 사람 전략을 코딩하지 않았습니다. AI는 승/패 결과값만으로 가치를 판단합니다.
- Determinized MCTS: 시뮬레이션마다 보이지 않는 패를 가상으로 확정(determinize)한 뒤 탐색하고, 여러 결정화 결과를 합쳐 수를 고릅니다.
- 자체 게임 엔진: 표준 48장, 7점 이상 고/스톱, 3고부터 배율 2배, 흔들기·폭탄 2배, 총통 즉시 10점 승리, 각종 박 규칙까지 하우스 룰을 전부 구현하고 테스트로 고정했습니다.
- Core(규칙) / Env(학습 환경) / Agent(MCTS·네트워크)를 분리해 네트워크 구조(MatgoNet, Temporal 변형)를 바꿔가며 실험했습니다.
결과
자체 대국에서 학습이 진행되는 것을 확인했고, 손패 수와 승률의 상관·편향 분석 스크립트를 붙여 학습 신호를 진단했습니다. 정량 지표는 아직 정리 중이라 이 페이지에 적지 않습니다.
배운 점
- 규칙 엔진의 버그 하나가 학습 전체를 오염시킵니다. 학습보다 엔진 테스트에 더 오래 썼고, 그게 맞았습니다.
- 비대칭 정보 게임에서 “무엇을 모르는지”를 모델링하는 게 “무엇을 아는지”보다 어렵습니다.