AI와 스타크래프트, 인간 승리는 계속될까?

AI와 스타크래프트, 인간 승리는 계속될까?

# 바둑을 평정한 딥마인드, 다음 전장은 스타크래프트 2

2016년 3월 인공지능 알파고는 바둑에서 이세돌 9단을 꺾었고, 이어 커제 9단에게까지 승리를 거뒀습니다. 결국, 바둑에서 인간이 인공지능에게 더 이상 승리하기 어려움을 각인시켜 주었습니다.

알파고의 학습 속도는 놀라워서 한 수를 두면 대응하는 한 수를 두게 되는 바둑과 같은 보드게임에서 모든 경우의 수를 내다볼 수 있을 정도로 인간을 앞질렀습니다. 그러다 보니 오히려 인간이 상상하지 못했던 수를 실제 경기에서 보여주면서 대중을 놀라게 했습니다.
그래서일까요? 대중은 "바둑처럼 서로 번갈아 가며 움직이는 턴제 게임에서는 인공지능이 승리할 수 있다. 그러나 모든 상황마다 수 백 가지 선택이 맞물려 돌아가고 복잡한 선택이 승패를 가르는 실시간 전략 시뮬레이션(RTS, Real Time Simulation) 게임에서는 인공지능이 인간을 아직 이길 수 없을 것이다."라고 생각하게 되었습니다.

그런 생각에 도전장을 던지려 했던 건지 모르지만, 데미스 하사비스 공동창업자 겸 CEO는 바둑 다음으로 알파고가 인간과 맞붙을 전장은 ‘스타크래프트 2’가 되기를 원하고 있는 듯합니다.

2017년 11월 개최된 블리즈컨에서 딥마인드와 블리자드가 협력하여 ‘스타크래프트 2’를 인공지능 연구에 활용한다고 발표했는데요. 부대행사 성격으로 진행된 AI DevCon을 전후하여 블리자드는 스타크래프트 2를 개발자가 활용할 수 있도록 하는 API(운영체제와 응용프로그램 사이 통신에 사용되는 언어나 메시지 형식)를 ‘PySC2’로 공개했습니다. 이로써 개발자들은 게임 내에 있는 유닛과 자원, 위치와 상태, 동작을 컨트롤할 수 있는 기능을 내장하여 AI를 개발/학습시킬 수 있게 되었습니다.

딥마인드 오픈소스 PySC2 toolset 소개 영상

기초 수준 훈련만 받은 인공지능이지만, 학습 과정을 거치게 되면서 유의미한 성장을 보여주며 인간과 전투에서도 해볼 만하다는 가능성을 보여주는 영상이 공개되기도 했습니다. 현재까지 명확한 기술 수준과 API가 일반 대중에게는 공개되지 않았고, 구글 딥마인드와 블리자드가 어떤 결과물을 보여주게 될지 전 세계 개발자가 가슴 졸이며 기다리고 있는 형국입니다.

훈련된 Agent가 유의미한 학습 결과를 보여주는 모습을 비교한 영상

# 인공지능이 인간을 이길 수 있는 가능성, 보이지 않는 컨트롤

스타크래프트와 같은 게임에서 유저가 어떻게 게임을 진행하고 있는지 통계로 보여주는 수치가 있습니다. 그중에서 APM(Action Per Minute, 1분당 행동수)은 분당 얼마만큼 명령을 내리고 있는지를 보여줍니다. 프로게이머가 500개 명령어를 내리는데 비해, 인공지능은 15,000개에서 4~5만 개 명령까지 내릴 수 있는데요. 즉, 사람은 기껏해야 4~50개 유닛을 머릿속에 넣고, 컨트롤할 수 있는 반면 인공지능은 게임 내 모든 유닛을 실시간으로 동시에 컨트롤하는 연산이 가능하다는 뜻입니다.

이미 1년 전 공개된 영상에서 인공지능이 학습을 통해 스스로 자원 채취를 효율적으로 하고, 최단 경로도 직접 찾아가는 학습 성과를 보여주었습니다. 그리고, 이미 AIIDE(Artificial Intelligence and Interactive Digital Entertainment) 주최 스타크래프트 BOT대회에서 1세대 BOT이 인간 컨트롤을 뛰어넘는 모습을 보여주기도 했습니다. 딥마인드 인공지능이 아니더라도 이미 1세대 BOT에서 인공지능이 인간을 이기는 가능성을 다분히 살펴볼 수 있었다는 뜻입니다.
제한된 자원을 갖고 싸우게 되는 전략 시뮬레이션 게임 특성상 완벽한 수비와 유닛 컨트롤이 가능한 인공지능이 등장한다면, 인간 패배 가능성도 상당히 높다고 볼 수 있습니다.

스타크래프트 2 미니게임을 학습한 AI 연구

# 인간이 가르치는 학습모델이 등장할 수도

삼성SDS에서는 스타크래프트를 기반으로 개발자가 만든 전략을 알고리즘 형태로 구현한 BOT끼리 겨루는 알고리즘 경진대회를 2017년부터 개최해왔습니다. 딥마인드 인공지능과 다른 점은 자기 학습을 통해 점차 수준이 높아지며, 전략을 배워나가는 것이 아니라 개발자가 코딩해서 넣은 전략을 그대로 수행하는 BOT이라는 점입니다. 즉, 인공지능이 아니라 인간이 만든 수동 로봇 간 대결이라고 볼 수 있습니다.

삼성SDS 2018 알고리즘 경진대회삼성SDS 2018 알고리즘 경진대회

- 삼성SDS 알고리즘 경진대회는 인간 전략을 다양한 알고리즘으로 구현하여 대결하는 BOT 대회로 블리자드엔터테인먼트 지원으로 진행됩니다.

그렇지만, 2년 동안 스타크래프트라는 게임에 인간 전략과 인공지능 수준의 컨트롤을 결합하기 위해 많은 개발자가 노력한 결과 이제는 프로그래밍 된 BOT이 인간을 이기는 모습을 대회 준비과정에서 수 차례나 볼 수 있었습니다. 프로게이머와는 상대가 되지 않더라도, 아마추어 수준 게이머를 가볍게 이기는 정도는 현재도 가능하다는 이야기입니다.

인공지능이 일정 수준 이상으로 인간과 비슷한 수준으로 전략을 학습해내기만 한다면, 손쉽게 인간을 이길 수도 있다고 봅니다. 삼성SDS 개발자들은 “구글과 블리자드를 통해 하루빨리 스타크래프트 2에서 인간과 대결하는 인공지능이 나오기를 기대하고 있다. 게임 BOT을 만들어 본 경험으로 보았을 때 단순한 반복 학습모델로 인간을 이기는 일은 쉽지 않다고 본다. 인간에게 지도 받으면서 성장하는 지도-학습 모델만이 대안이 될 것이라는 생각이 든다.”라고 이야기합니다. 스타크래프트에서 인간을 이기는 인공지능 등장은 게임업계뿐만 아니라 개발자 모두가 기다리고 있는 2019년 최고 이벤트가 되지 않을까 기대해봅니다.

AI와 스타크래프트, 인간 승리는 계속될까?