인간 스탯 측정소 ← 측정소
블로그 / 개발기
개발기2026.7.18

알까기 AI는 어떻게 생각하는가 — 간단한 규칙으로 그럴듯한 상대 만들기

알까기 AI를 만들 때 처음 세운 원칙은 하나였습니다. 딥러닝도, 복잡한 탐색 알고리즘도 쓰지 않고 최대한 단순한 규칙만으로 그럴듯한 상대를 만들 수 있는가. 결과적으로는 몇 가지 간단한 규칙만으로도 충분히 재미있는 난이도 차이를 만들 수 있었습니다.

어디를 노릴지 정하는 법

AI가 매 턴마다 하는 첫 번째 판단은 "내 돌 중 어느 것으로, 상대 돌 중 어느 것을 노릴 것인가"입니다. 기본 전략은 단순히 가장 가까운 거리의 상대 돌을 고르는 것이었지만, 상급 난이도에서는 여기에 한 가지 조건을 더했습니다. 상대 돌이 판 가장자리에 가까울수록 우선순위를 높이는 것이죠. 가장자리에 있는 돌은 살짝만 밀어도 판 밖으로 나가기 쉬우니, 이건 실제로 알까기를 잘하는 사람들이 무의식중에 쓰는 전략과 비슷합니다.

일부러 실수하게 만들기

여기서 가장 중요했던 부분은 오히려 AI를 '더 똑똑하게' 만드는 게 아니라 '적당히 서툴게' 만드는 것이었습니다. 목표 방향과 발사 세기를 계산한 뒤, 여기에 정규분포를 따르는 무작위 오차를 더했습니다. 이 오차의 크기(표준편차)를 조절하는 것만으로 난이도가 결정됩니다. 보통 난이도는 오차 폭을 넓게, 고수 난이도는 좁게 설정하고, 여기에 더해 고수 난이도는 판단 속도(딜레이)도 짧게 줄여서 마치 더 자신 있게 두는 것처럼 느껴지게 했습니다.

완벽한 AI보다 재미있는 AI

실제로 오차 없이 완벽하게 계산하는 AI를 한번 만들어본 적이 있는데, 이건 플레이어 입장에서 전혀 재미가 없었습니다. 항상 정확하게 이기기만 하는 상대는 도전 욕구를 꺾어버리거든요. 사람이 상대에게서 느끼는 '실력'이라는 감각은 사실 승률이 아니라, 가끔 실수하면서도 대체로 위협적인 균형에서 나온다는 걸 이 과정에서 배웠습니다.

난이도는 숫자 하나로 조절된다

이렇게 오차 기반으로 설계해두면 좋은 점이 하나 더 있습니다. 난이도를 완전히 새로 짤 필요 없이, 오차의 표준편차와 반응 딜레이라는 숫자 두 개만 조절하면 됩니다. 보통 난이도에서 고수 난이도로 넘어갈 때 알고리즘 자체는 그대로 두고, 이 두 숫자만 절반 가까이 줄였을 뿐인데도 플레이어들은 확연히 다른 상대와 겨루고 있다고 느낍니다. 복잡한 시스템을 새로 만드는 것보다, 단순한 시스템의 파라미터를 정교하게 조율하는 쪽이 실제 플레이 경험에는 더 효과적일 때가 많다는 걸 다시 확인한 셈입니다.

관련 게임 플레이하기
알까기 →
광고 · Advertisement
← 왜 사람은 시간을 정확히 못 세는가 — 7초의 벽으로 보는 시간 감각 오목의 숨은 규칙, 쌍삼(3-3) — 왜 이 룰이 존재할까 →