12,480판 돌리면 AI가 똑똑해질까? 아니다. 틀린 답이 더 정밀해질 수도 있다

읽기 기능 사용법

듣기는 본문을 읽어 줍니다. 속독은 구절을 차례로 표시하며 속도를 조절할 수 있습니다. 언어 연습은 다른 언어판과 번역을 비교합니다. 저장한 북마크는 이 브라우저의 플레이어 목록에서 다시 열 수 있습니다.

이 글 공유하기

이 글 공유하기

광고
광고

카드게임 AI 시뮬레이터를 만들면 제일 먼저 하고 싶은 일은 대량 대전이다. 100판보다 1,000판, 1,000판보다 10,000판. CSV가 커지면 갑자기 연구처럼 보인다.

하지만 플레이 정책이 틀렸다면 대량 시뮬레이션은 틀린 정책의 평균을 더 정확하게 계산할 뿐이다.

사례에서는 고정 룰 엔진으로 12,480판을 완료했고 룰 감사도 양호했지만, 로얄 약 79.8%, 위치 약 25.6%라는 극단적인 결과가 나왔다. 이것은 실제 환경에서 로얄이 승률 80%라는 뜻이 아니다. 오히려 플레이 정책을 의심해야 한다는 경보다.

첫 원칙은 간단하다. 판 수를 늘리기 전에 CPU가 실제로 카드게임을 제대로 하고 있는지 확인하라.

1. 시뮬레이터는 하나의 AI가 아니다: 룰, 판단, 평가를 분리한다

최소한 세 층으로 나눠야 한다.

  1. 룰 엔진: 합법 행동, 피해, 대상, 진화, 효과 처리를 담당한다.
  2. 플레이 정책: 합법 행동 중 무엇을 선택할지 결정한다.
  3. 평가기: 덱이나 정책이 실제로 좋았는지 점수를 매긴다.

이 셋을 섞으면 결과가 이상할 때 원인을 찾을 수 없다. 카드 효과 버그인지, AI 판단 문제인지, 선공 편향인지, 평가 함수가 취약한 덱을 좋아하는지 구분해야 한다.

따라서 합법성, 의사결정 품질, 평가 품질을 별도로 테스트한다.

2. 먼저 룰 엔진을 만든다: 지능보다 세계의 물리 법칙

똑똑한 상대보다 먼저 필요한 것은 일관된 게임 세계다.

덱 규칙, 동일 카드 제한, 클래스 제한, PP, 드로우, 멀리건, 필드 상한, 공격, 수호, 질주/돌진, 진화/초진화, 대상 지정, 생성 카드, 토큰, 특수 기믹, 승패 조건을 처리해야 한다.

카드와 기믹마다 지원 상태를 둔다.

  • Full
  • Partial
  • Unsupported
  • Runtime gap

미지원 카드를 억지로 돌려 “승률 57.3%”를 찍는 것보다, “이 카드는 아직 지원하지 않는다”라고 멈추는 편이 훨씬 낫다.

3. 플레이 AI는 “지금 가장 센 행동”만 보면 안 된다

카드게임의 답은 미래에 있다.

AI는 현재 필드뿐 아니라 손패 가치, 1~3턴 계획, 킬각, 콤보 파츠 보존 가치, 진화 자원 보존, 상대의 다음 강한 반격, 손패 초과, 필드 공간, 대체 승리 플랜을 평가해야 한다.

“낼 수 있으면 낸다, 큰 추종자를 낸다, 얼굴을 칠 수 있으면 친다”는 정책은 단순 템포 덱에서는 생각보다 잘 싸운다. 하지만 콤보나 컨트롤에서는 급격히 무너진다.

4. 사람의 공략 지식은 하드코딩이 아니라 힌트로 넣는다

공략글을 전부 if문으로 옮기면 AI가 공략집 로봇이 된다.

대신 지식을 가산점, 감점, 우선순위로 바꾼다.

  • 어그로 상대로 광역기의 가치를 높인다.
  • 핵심 콤보 카드를 너무 빨리 쓰면 감점한다.
  • 특정 파워턴까지 진화 자원을 아끼면 가점한다.
  • 상대의 강한 반격 직전에는 과도한 전개를 줄인다.
  • 2~3턴 뒤 킬각이 있으면 미래 가치를 높인다.

정보에는 팩, 포맷, 리더, 아키타입, 매치업, 선후공, 턴 구간, 출처 날짜, 신뢰도를 붙인다. 의견이 충돌하면 하나로 뭉개지 말고 여러 정책 후보로 남긴다.

5. 공정한 A/B 테스트는 같은 시험지를 준다

구 AI와 신 AI를 비교할 때 드로우 운이 달라지면 안 된다.

같은 random seed를 사용하고, 선공과 후공을 바꿔서 페어로 테스트한다.

seed 001: 구 AI 선공 / 신 AI 후공
seed 001: 신 AI 선공 / 구 AI 후공
...

그리고 승률 외에도 킬각 누락, 카드 소각, 필드 막힘, 진화 자원 낭비, 콤보 파츠 조기 사용, 멀리건 오류, 상대 반격턴 무시를 기록한다.

**“이겼지만 플레이는 멍청했다”**를 잡아내기 위해서다.

6. 왜 2,016판인가? 신비한 숫자가 아니라 곱셈이다

2,016 자체에는 아무 마법도 없다.

예를 들어 계획한 A/B 프로필은 다음처럼 만들 수 있다.

56개 매치업 테스트 셀
× 18개 seed
× 2회 선후공 반전 페어
= 2,016판

중요한 것은 숫자가 아니라 커버리지를 먼저 정하는 것이다.

  • quick: 수십~수백 판, 고장 여부 확인
  • standard: 약 2,000판, 정책 A/B와 주요 매치업
  • full: 10,000판 이상, 환경 전체 평가

처음부터 full을 돌리고 나서 AI가 바보였다는 걸 알면, 아주 정밀한 쓰레기 데이터를 만든 셈이다.

7. 최강 덱 탐색은 40장을 전부 완전탐색하지 않는다

전체 조합은 너무 크다. 실제 대회나 공개 덱을 시작점으로 두고 근처 후보를 만든다.

1~3장 교체, 채용 수 조정, 같은 역할 카드 교체, 특정 매치업용 테크, 패키지 단위 변경을 시도한다.

평가는 평균 승률뿐 아니라 하방 위험, 선후공 안정성, 나쁜 매치업의 바닥을 함께 본다.

따라서 결과는 “우주의 절대 최강 덱”이 아니라 “이 카드 스냅샷, 정책, 메타 가중치, 후보군 안에서 가장 좋았던 덱”이라고 표현한다.

8. 진단 기능은 승률 숫자보다 “왜”를 돌려줘야 한다

40장 덱과 상대 리더/아키타입을 주면 다음을 설명할 수 있어야 한다.

예상 승률과 불확실성, 선후공 차이, 멀리건, 초중후반 목표, 승리 플랜, 보존 카드, 제거 우선순위, 진화 자원 타이밍, 상대의 다음 강한 행동, 2~3턴 킬각, 흔한 실수, 대체 라인, 교체 후보.

이때 시뮬레이터는 순위표가 아니라 코치가 된다.

9. 로얄 79.8% 사건: “내고 때리기”가 AI에게 너무 쉬웠던 것 아닐까

가장 웃긴 실패는 클래스 간 격차였다.

단순하고 선제적인 덱은 미숙한 AI도 다루기 쉽다는 가설이 있다.

로얄이

추종자 낸다!
필드 먹는다!
얼굴 열린다!
때린다!
이겼다!

로 어느 정도 굴러가는데, 위치가

콤보 파츠? 지금 쓸 수 있네! 사용!
진화 자원? 지금 강해지네! 사용!
손패 상한? 모름!
3턴 뒤? 미래의 내가 해결함!

이라면 로얄이 왕이 되는 게 당연하다.

이것은 실제 메타의 증명이 아니라 덱마다 AI에게 요구하는 사고 난도가 다르다는 증거다.

10. 환경이 바뀌어도 바로 다시 돌릴 수 있게 만든다: 완성형은 연구소다

현재 로테이션을 버전 환경으로 저장한다.

Environment 8
- card snapshot
- legal card pool
- engine version
- policy version
- meta decks
- human knowledge
- simulation results

새 팩이 나오면 다음 환경을 만들고 신규 카드, 로테이션 아웃, 밸런스 변경, 금지/제한, 신규 아키타입, 엔진 지원, 메타 가중치의 차이만 계산한다.

메타 비중만 바뀌면 기존 매치업 표를 재가중한다. 신규 카드가 들어가면 관련 덱만 다시 돌린다. 새 기믹이 미지원이면 승격을 막는다.

목표는 무서워 보이는 승률 표가 아니다. 어떤 룰, 어떤 정책, 어떤 카드 DB, 어떤 seed, 어떤 환경에서 나온 숫자인지 추적 가능하게 만드는 것이다.

그리고 로얄이 또 80% 가까이 찍히면, 왕관부터 씌우지 말고 한 번 묻자.

“이 봇, 게임을 그냥 추종자 내고 얼굴 치는 게임으로 알고 있는 거 아니야?”

이 글 공유하기

광고

오늘은 이 글

이 글을 읽은 분이 다음에 품는 질문에 각각 답하는 글입니다.

전체 글에서 찾기‘카드·보드게임’ 글 더 보기

다른 글 찾기

모든 기사

Mendoi-chan

이 글을 쓴 사람

Mendoi-chan

직장과 일상의 불편함을 구조화해 이해하기 쉬운 다음 행동으로 연결하는 글을 씁니다.

사이트 소개
광고

새 글

  1. 1노화 대책 책을 압축하면 '걸어라, 근력 운동하라, 치아를 닦아라, 자라'가 되었다 - 건강 수명, 치매, 치아, 인터넷, 퇴직을 연구로 모두 연결
  2. 2인간의 몸, 너무 불편하다. 왜 ‘체력 +1’ 하나로 안 오르고 근력·지구력·심폐가 따로 노는가
  3. 3글 중간에 통행료 부스를 세우지 마라 — ‘다음’으로 PV를 늘리는 설계, 페이월, 광고 새로고침을 한 번에 뜯어보기
  4. 4AI도 한도, 스트리밍도 한도. 그제야 진짜 ‘할 일 없는 휴일’이 왔다
  5. 5월세 총액 500만 엔은 정말 ‘버린 돈’일까? 1~2인 가구라면 큰 집보다 ‘쓰는 면적만 사기’가 더 강할 수 있다
광고