[NDC 2019] 넥슨 프로그래머의 ‘하스스톤’ AI 도전기
OSEN 임재형 기자
발행 2019.04.26 15: 35

[OSEN=판교, 임재형 인턴기자] “알파고, 알파스타에서 ‘하스스톤’ AI(인공지능)의 가능성을 봤다”
자신을 ‘하스스톤 헤비 과금러’로 평가한 옥찬호 넥슨 게임 프로그래머는 강연에 앞서 블리자드 엔터테인먼트의 카드 게임 ‘하스스톤’에 대한 애정을 깊게 드러냈다. 옥찬호 프로그래머는 “개인적으로 진행한 연구다”고 운을 떼며 “‘하스스톤’에서 ‘알파고’와 같은 AI 대전을 구현하겠다”고 계획을 알렸다.
옥찬호 프로그래머는 26일 경기도 성남시 GB1타워 지하 1층 발표장에서 열린 ‘하스스톤 강화학습 환경 개발기’에서 강연자로 나섰다. 옥 프로그래머는 무려 500만원을 ‘하스스톤’에 투자한 헤비 과금러다. 옥 프로그래머는 ‘하스스톤’의 장점으로 ‘다양한 덱 연구’를 꼽으면서 “많은 덱을 테스트하며 ‘하스스톤’의 매력에 빠졌다”고 밝혔다.

옥찬호 넥슨 게임 프로그래머.

매력적인 ‘하스스톤’이지만 옥찬호 프로그래머에게 컴퓨터의 플레이는 눈엣가시다. 덱을 테스트 할때 주로 컴퓨터와 대전을 하는데, 컴퓨터는 상황에 맞지 않는 엉뚱한 플레이를 할 때가 있다. 옥 프로그래머는 “컴퓨터도 사람처럼 생각하고 플레이하면 좋겠다”고 아쉬움을 토로했다. 그런 옥찬호 프로그래머에게 ‘알파고’ ‘알파스타’의 멋진 활약은 신선하게 다가왔다. 옥 프로그래머는 “‘알파고’와 ‘알파스타’를 보니 ‘하스스톤’의 AI도 개발할 수 있겠다는 생각이 들었다”고 말했다.
그러나 ‘하스스톤’의 AI를 개발하는 것은 만만찮았다. ‘알파고’는 바둑판에 모든 정보가 드러난다. ‘스타크래프트 2’는 시야가 없는 상황에서 불완전한 정보를 바탕으로 전략을 짜야 하지만 유닛과 자원은 정해져있어 ‘추측’을 바탕으로 한 플레이가 가능하다. ‘하스스톤’은 많은 부분에서 불확실성을 가진다. ‘하스스톤’은 내 덱에서도 카드 예측이 불가능하고, 상대방이 무슨 카드를 들고있는지 알 수 없으며, 상대방 덱에서 무슨 카드가 나올지도 추측할 수 없다. 정보가 상당히 부족한 상황에서 옥찬호 프로그래머는 블리자드의 API를 활용해 AI를 제작할 수도 없어 직접 ‘하스스톤’을 만들기로 결정했다.
‘하스스톤’을 직접 만들어 AI에 적용시키기 위해선 ‘카드 데이터 구하기’ ‘카드 데이터 가져오기’ ‘카드 데이터 처리하기’ 등의 과정이 필요하다. 옥찬호 프로그래머는 카드 데이터를 수집을 위해 ‘하스스톤제이슨’ 사이트를 활용했다. ‘하스스톤제이슨’엔 카드의 동작을 구현하는 데 필요한 ‘거의’ 모든 데이터가 들어있다. 옥 프로그래머는 “데이터 수집 이후 카드들의 데이터를 처리하는 문제를 해결하기 위해 다양한 시도를 했다”고 밝혔다.
‘하스스톤’에서 지금까지 출시된 카드는 총 1926장이다. 그러나 구현해야 할 카드는 더 많다. 발동 효과 속에 숨겨져 있는 카드를 합하면 하스스톤의 총 카드는 6086장이다. 옥찬호 프로그래머는 “카드의 데이터를 읽으면 자동으로 효과를 구현해주는 사이트가 있었지만, 100% 일치하지는 않았다. ‘마음가짐’의 경우 완전히 틀린 효과를 구현했다”면서 “AI의 정확도를 높이기 위해서 직접 효과를 구현하는 방식을 채택했다”고 말했다.
계속된 연구로 현재까지 카드 효과는 기본 카드에 한해 89%가 구현됐다. 옥찬호 프로그래머는 향후 ‘실제 기기로 대전’ ‘모든 카드 구현’ ‘다른 언어에서 사용할 수 있도록 API 제공’ 등 ‘하스스톤’ AI의 활성화를 위해 노력할 예정이다. 마지막으로 옥 프로그래머는 “‘하스스톤 강화학습 환경 개발’이 성공적으로 끝나 2020년에 파트2로 찾아뵙고 싶다”는 포부를 전했다. /lisco@osen.co.kr

Copyright ⓒ OSEN. All rights reserved. 무단 전재 및 재배포 금지