본문으로 이동

보드 게임 AI

카노위키

보드 게임 AI는 체스, 바둑, 오셀로 등 턴제 보드 게임에서 최적의 수를 찾기 위한 알고리즘과 이론을 다룬다. 현대의 범용 인공지능 발전의 모태가 된 분야이기도 하다.

탐색 알고리즘

보드 게임은 가능한 수의 조합이 방대하므로 효율적인 탐색이 핵심이다.

  • 미니맥스(Minimax): 상대방은 최선의 수(나에게 최악의 수)를 둔다고 가정하고, 자신의 이득을 최대화하는 수를 찾는 알고리즘.
  • 알파-베타 가지치기(Alpha-Beta Pruning): 미니맥스 탐색 중 승패에 영향이 없는 가지를 미리 쳐내어 탐색 효율을 극대화하는 기법.
  • 몬테카를로 트리 탐색(MCTS): 무작위 시뮬레이션(Play-out)을 통해 각 수의 기대 승률을 계산하는 방식. 바둑과 같이 경우의 수가 너무 많은 게임에서 강력한 성능을 발휘한다.

평가 함수 (Evaluation Function)

현재 보드의 상태가 누구에게 얼마나 유리한지를 수치로 계산하는 함수이다.

  • 기물 가치 계산: 각 기물에 점수를 부여하여 합산하는 방식.
  • 위치 점수: 기물이 놓인 위치의 전략적 가치를 반영한다.

관련 기술

  • 오프닝 북(Opening Book): 게임 초반의 정석적인 수들을 데이터베이스화하여 즉시 대응하는 방식.
  • 종반 데이터베이스(Endgame Tablebase): 기물이 얼마 남지 않았을 때 모든 경우의 수를 미리 계산해 둔 데이터베이스.