단순히 공격력, 방어력 더 센 몬스터가 아닌, 플레이어의 성향에 따라 적절히 대응하는 몬스터가 있다면 어떨까요? 실제로 확인해보기 전까지, 상대방이 실제 사람인지 혹은 AI인지 모를 정도로 자연스럽다면 어떤 느낌일까요?

혹은 이런 건 어떨까요? 캐릭터 움직임 쪽인데요. '툼 레이더'나 '어쌔씬 크리드'의 그 움직임. 딱딱한 점프가 아닌, 튀어나온 물체를 잡고, 실제 사람처럼 자연스럽게 기어올라가는 그 모습을 온라인 MMORPG에서 볼 수 있다면 어떨까요?

지금 예시로 든 것들은 모두 게임 AI 기술에 배경을 두고 있습니다. 국내 게임 AI 분야에서 가장 앞선 기술을 보유한 엔씨소프트는 올해 열린 GDC 2019에서 이와 관련한 강연을 진행했고, 전세계 게임인의 높은 관심을 받았습니다.

이들의 강연 PPT를 보면서 몇 가지 의문이 들었습니다. 제대로 만들기만 하면 기존 게임의 패러다임을 몇 바퀴나 돌릴 수 있는 이 기술이, 왜 지금까지 제대로 연구되지 않았을까? 한편으로 엔씨소프트는 왜 이 기술에 주목하고 있으며, 그들이 꿈꾸는 게임의 미래는 어떤 모습일까?

GDC 2019 현장에서 강연자 3인을 만났습니다. 게이머라면 한 번쯤 꿈꿔봤을 '게임의 이상향'이 그들의 대답속에서 간간히 보였습니다.


▲ 좌부터 엔씨소프트 Game AI Lab 정지년 팀장, 노승은 엔지니어, 윤동원 엔지니어





Q. 먼저 올해 GDC 2019에 강연자로 참석한 소감부터 듣고 싶다.

정지년(엔씨소프트 게임 AI Lab 팀장): 우리의 성취를 전 세계의 게임 관련 종사자들에게 공유할 수 있는 첫 기회를 가졌다는 데 큰 의미를 부여하고 싶다. 더욱이 아직 게임 업계가 기계학습이나 딥러닝, 강화학습 기술을 복잡한 상용 게임에 적용하지 못하고 있고, 이 점에서 우리가 앞서 가고 있다는 점을 알게 됐다. 앞으로 더 치열하게 연구하여 이런 기회를 많이 가졌으면 한다.

노승은(엔씨소프트 게임 AI Lab 엔지니어): 우선 발표를 무사히 마쳤다는 것에 안도하는 마음이 가장 크다. 전세계 다양한 업계 개발자 분들에게 우리의 AI 기술을 선보이는 큰 무대인 만큼, 과연 우리가 준비해온 이야기가 잘 전달 될 수 있을지 발표 전까지도 걱정이 많았다. 강연 도중 참관객의 반응을 보며 우리의 이야기가 잘 전달되고 있음을 확인하니 조금씩 긴장이 풀렸다. 우리 팀, 조직이 연구 - 개발하며 겪은 방법론과 노하우를 공유하고, 그것이 게임 AI를 연구하는 누군가에게 길잡이가 될 수 있음을 확인하면서 뿌듯한 마음도 컸다.

다른 한편으론 AI 연구자로서 우리 조직의 가능성을 확인하는 계기가 아니었나 싶다. 세계적인 게임 회사들과 비교해도 우리 AI 기술은 뒤처지지 않았고, 오히려 앞서고 있는 부분이 많았다. 여전히 필드에서는 규칙 기반의 알고리즘이 많이 적용되고 있는 반면, 우리 조직은 강화학습과 딥러닝이 결합된 최신의 AI 기술을 연구 및 개발하고 있다. AI 세션에서 다른 회사의 발표를 들으며 이런 수준의 연구가 아직은 걸음마 단계라는 것을 확인할 수 있었다. 반면 우리는 벌써 프로게이머를 이기는 수준에 도달했다.

윤동원(엔씨소프트 게임 AI Lab 엔지니어): 세계 개발자들과 우리의 경험을 공유하고 배울 수 있었다. 우리의 기술이 세계 무대에서도 높은 수준임을 실감할 수 있었다. 앞으로도 이런 기회를 더 많이 만들었으면 좋겠다.


Q. 게임 AI 관련 강연이 세계적으로도 그리 많은 편은 아니다. 현지 참관객들의 반응은 어땠나.

정지년: 내용 전달이 잘 될지 걱정했는데, 청중의 반응과 질문 수준을 보니 준비한 내용 전달엔 문제가 없었던 것 같았다. 내용에 대한 이해가 높았고 관심이 높아서 강연장을 나와 문 앞에서도 질의 응답을 이어갔다. 특히, 강연 후 '이 강연을 통해 강화학습에 대해 이해할 수 있었다'고 사례를 표한 분이 기억에 남았다.

노승은: 기존에 해오던 방식(behavior tree 기반의 의사결정 구조)과 다른 접근법이다 보니, 관심을 많이 보여주셨던 것 같다. 특히 우리의 비무 AI가 프로게이머와 싸우기 전까지, 자기 자신과 겨루며 약 4년에 해당하는 훈련을 수행하였다는 내용을 소개할 때는 객석에서 탄성이 나왔다. 강연이 끝나고도 아주 세세한 부분부터 큰 틀에 이르기 까지 강연 내용에 대해 다양한 질문이 30분간 이어졌다. 텐센트 AI등 다른 기업의 AI 연구진들도 깊이 있는 내용에 대해 질의하며 큰 관심을 보여주었다. 최신의 AI 기술이 접목되어 프로게이머를 이긴 경험이 분야 전문가들에게도 어느 정도 임팩트 있는 성과라는 것을 느낄 수 있었다.

윤동원: 발표한 주제가 딥러닝 기반의 IK인 만큼 AI를 애니메이션에 적용을 시도하고 있는 개발자들이 매우 높은 관심을 보여주었다. 발표 후에는 구제적인 구현 내용에 대한 질문들이 많았다.

▲ 엔씨소프트는 올해 GDC에서
'강화 학습: 블레이드&소울을 위한 아레나 배틀 AI 제작하기'를 주제로 강연했다.


Q. 게임 AI 관련 딥러닝 기술이 다른 산업의 AI 기술과 비교해 가장 큰 차이점이 있다면 무엇일까.

정지년: 게임 AI는 게임 AI는 궁극적으로 게임 컨텐츠의 기획과 맞물려서 연구 개발되어야 한다는 특징이 있다. 현재는 단순히 잘 싸워서 이기는 점에만 초점을 맞춰져 있지만, AI에 대한 요구 조건을 기획에서 제대로 뽑아내서 연구, 개발 목표로 삼지 않으면 상용 게임에의 AI 적용은 어렵다. AI에 특색을 부여한다는 동기도 블라인드 매치를 더 재미있게 만들어야 한다는 행사 기획으로부터 도출된 요구 조건이었다. 단순히 이기는 것만으로는 충분하지 않다는 것을 체험할 수 있었던 좋은 기회였다고 생각한다.

노승은: 가장 큰 차이는 게임 AI의 목적이 유저의 “재미”에 있다는 점에 있다. 다른 산업의 AI 기술은 최적화 하고자 하는 아주 객관적인 지표가 있다. 예컨대 분류기의 오류를 줄이는 것이라든지, 자율 주행 자동차의 사고율을 감소시키는 것처럼 말이다. 하지만 게임 속의 AI는 모두 유저의 재미를 위해 기능한다.

그런데 유저의 재미란 것은 측정하기가 어렵다. 몬스터가 더 잘 싸우면 유저는 더 큰 재미를 느낄까? 물론 어느 수준까지는 그렇겠지만, 정말 어떤 사람도 못 이길 정도로 잘 싸우면 과연 그게 재미있는 콘텐츠인가 하는 질문으로 이어진다. 우리의 비무 AI에 여러 가지 전투 스타일을 넣은 것도 그러한 흐름에서 이어졌다. 잘 싸우는 AI, 그러면서도 재미를 주는 AI. 이런 계량화 하기 어려운 지표를 최적화 하기 위해 우리는 다양한 방법론을 고민한다.

윤동원: 게임 AI에서는 시뮬레이션 환경을 만들어 실험하기가 용이하고, 훈련 데이터를 얻는 것이 비교적 용이하다. 그러나 게임에 따라서 복잡하고 제약이 많아 다루는 데 어려운 경우도 있다. AI 적용 대상이 되는 개별의 게임 콘텐츠에 대한 분석과 이해가 수반되어야 이런 어려움을 극복할 수 있다.


Q. IGC에서 진행한 강연 때 버전과 이번 GDC 발표 때 AI 버전이 다르다고 들었다. 구체적으로 어떤 부분에서 개선됐는지, 실제 유저가 체감할 수 있는지 궁금하다.

정지년: 엔씨소프트는 IGC에서 두차례 발표했다. AI 버전이 다른 것은 첫번째이며, 두번째 발표된 버전은 지금과 같은 버전이다. 새로운 버전의 AI는 블라인드 매치를 통해서만 선보였으며, 무한의 탑 컨텐츠를 새로운 버전의 AI로 업그레이드하기 위해 준비중이다. 새로운 버전의 AI를 전체 클래스에 적용하기 위해서는 해결해야 할 이슈들이 있다. 이 이슈들이 성공적으로 해결되면, 무한의 탑에 적용되어 유저이 체감할 수 있을 것이다.

▲ 게임 AI 팀의 결과물이 적용된 블소 '무한의 탑'


Q. AI가 게임 내 유저들에게 직접 '재미를 주는 콘텐츠'로 활용되기 위해서는 타 부서와의 긴밀한 협업이 중요할 것 같다. 실제로 다른 팀과 커뮤니케이션하는 방식 및 과정을 간단한 예로 들어주었으면 한다.

노승은: 말한 것처럼 타 부서와의 협업은 정말 중요하다. 여기서 타 부서는 우리의 AI가 투입될 게임의 개발 조직을 가리킨다. 우리가 하는 대부분의 연구의 시작과 끝은 타 부서와 함께한다. 시작할 때는 어떤 게임에 어떤 AI가 필요할지, 이 AI는 어떤 재미를 줄 수 있을지, 혹은 어떻게 개발자의 작업 효율을 올려줄 지 등에 대해 AI의 목적과 구체적인 스펙을 정하는 일, 즉 AI를 기획하는 일을 함께 진행한다.

이렇게 기획이 끝나고 나면 AI가 학습될 수 있는 환경의 뼈대를 게임 부서에서 제공해준다. 우리는 제공 받은 뼈대를 토대로 살을 붙이고 최적화하여 AI가 효율적으로 경험을 쌓을 수 있는 시뮬레이션 시스템을 만든다. 이 시스템에서 AI가 학습되고, 정해진 목표를 수행할 정도의 수준이 되면 최종적으로 게임에 적용한다. 적용 후에도 지속적인 피드백을 통해 보완할 점과 해결 방안을 찾아 고쳐나간다.

정지년: 기획자 분들이 AI에 대해 더 큰 관심을 기울여 주신다면 전혀 새로운 컨텐츠가 만들어질 수 있을 것이라 생각한다. 아직 기획자 분들이 AI가 무엇을 할 수 있는지, 어떻게 적용될 수 있는지 그 경계에 대해 정확히 알지 못하다 보니, AI가 게임에 적용되는 데에도 한계가 있는 것 같다. 기획자 분들은 게임의 어떤 요소가 재미를 주는지 가장 정확히 파악하고 있는 전문가이다. 그 분들이 AI의 기능을 명확히 이해한다면 AI를 적재 적소에 이용하여 참신한 게임을 만들 수 있을 것이다. 게임 AI를 연구하는 사람들로서 다양한 연구 결과를 통해 기획자들에게 새로운 영감을 줄 수 있도록 노력하겠다.


Q. 잘 만들어 적용하면 게임의 재미 향상에 큰 도움을 줄 수 있음이 분명한데도, 아직 국내외 게임사 중 대다수는 AI 개발팀을 전문적으로 운영하고 있지않다. 이유가 무엇이라고 생각하나.

정지년: 이제 시작단계라고 생각한다. 강화학습을 비롯한 기계학습에 의한 AI 연구는 지금까지 체스, 바둑이나 아타리 게임과 같은 규칙이 단순한 옛날 게임에 적용하여 AI의 가능성을 보여주는 수준에 그쳤기 때문에 복잡한 최근의 상용 게임에 적용하고자 하는 아이디어가 부족했던 것이 아닌가 싶다. 이제 상용 게임에 적용할 수 있다는 것이 드러나고 있으니 점차 기계 학습을 통해 만들어진 AI를 현대 상용 게임에 적용하는 사례가 늘어날 것이라고 본다.

노승은: 장르적인 특성 때문이라 생각한다. 오버워치, 롤, 배틀그라운드처럼 PVP가 메인인 게임은 전장에서 마주하는 상대방이 곧 컨텐츠다. 매 게임마다 새로운 상대방을 만나고 이에 따라 상대방의 플레이도 매번 바뀐다. 또한 내가 성장함에 따라 더 강한 상대를 만나기 때문에 상대의 실력도 점차 증가한다. 하지만 MMORPG는 같은 몬스터를 여러 번 마주하기 때문에 어느 순간 레벨을 올리는 경험이 반복적으로 느껴질 수 있다. 이런 경험을 개선하기 위해 몬스터가 더 똑똑해질 필요성이 생겼고, 자연스럽게 게임 AI연구를 진행하게 되었다. 엔씨소프트는 전통적으로 MMORPG에 강점이 있는 회사이기 때문에, 엔씨 소프트가 AI 개발에 필요성을 느낀 것은 어떻게 보면 숙명적인 귀결이라 생각된다.

윤동원: 대다수의 게임 개발팀은 AI 개발을 자체적으로 진행하고 있다. 이들 중 대부분은 미리 정의된 규칙으로 AI를 구현하는 형태다. 머신러닝이나 딥러닝으로 구현된 AI 컨텐츠에 적용된 게임이 흥행을 하게 되면 앞으로 AI에 더 많은 투자를 하게 될 것이라 생각한다.


Q. 엔씨소프트 AI 팀에서 생각하는 최고의 몬스터 인공지능은 어떤 모습인가.

정지년: 기존에는 몬스터의 난이도를 해당 몬스터의 스탯으로 조정했다. 예컨대 더 강한 몬스터일수록 더 대미지가 세거나 체력이 높은 방식이다. 이러한 경우에는 몬스터의 패턴을 익혀서 실수하지 않고 몬스터를 공략하는 사람이 보상을 얻을 수 있었다. 하지만 인공지능 기술이 발달하면 그럴 필요가 없다. 더 똑똑한 두뇌를 장착하고 대등한 스탯으로 싸우는 새로운 유형의 보스 몬스터를 만나볼 수 있다. 롤을 예로 들면 보스 몬스터로 ‘페이커’를 만나 라인전을 펼치는 것이다. 얼마나 새롭고 재미있겠는가.

실제로 페이커와 연습경기를 펼치려면 그만한 비용을 지불해야 할 것이다. 하지만, 페이커와 같은 AI가 있다면 쉽게 그와 비슷한 체험을 할 수 있다. 페이커를 예시로 들었지만 몬스터 인공지능이 반드시 최고로 잘 싸워야 한다는 뜻은 아니다. 최고의 두뇌를 재현할 수 있다면 그보다 쉬운 몬스터를 만드는 것은 비교적 간단한 일이다. 다만 몬스터가 생각하고 움직인다는 느낌을 받았으면 좋겠다. 그 때부터 유저는 새로운 경험을 하게 될 것이다.

더불어, 재미란 측면에서 볼 때 최고의 몬스터 인공지능은 플레이어에게 다양한 경험을 제공해 줄 수 있어야 한다고 생각한다. 실제로 B&S 비무 AI 개발에도 이러한 요구 사항이 반영되어 공격형, 밸런스형, 수비형 AI를 만들어 AI에 개성을 부여했다. 강화학습을 통해 우리는 AI에 개성을 부여할 수 있음을 확인했고, 학습시 부여하는 보상에 따라 무한히 많은 개성을 지닌 AI를 만들 수 있다. 향후 이를 다양한 유형에 게임에 접목하여 우리가 플레이어들에게 끊임없이 새로운 체험을 제공할 수 있음을 확인해 나갈 것이다.

▲ "페이커같은 AI를 만나 라인전을 진행한다고 생각해보라"


Q. 게임 관련 인공지능 개발에 주로 어떤 프로그램을 사용하나.

정지년: 다양한 프로그램이 사용되지만 인공지능 개발에 가장 직접적으로 사용되는 프로그래밍 언어는 파이썬이다. 파이썬 위에 '텐서플로우'라는 라이브러리를 주로 사용하고 있다. 텐서플로우는 인공지능 개발 관련 함수를 사용하기 쉽게 모아놓은 라이브러리라고 생각하면 된다.


Q. 시간이 지남에 따라 게임 AI 개발을 지망하는 학생들도 많아질 것이라 생각한다. 업계 선배로서, 이쪽 분야에 취업하고 싶은 사람들에게 꼭 해주고 싶은 조언이 있다면?

정지년: 우선 게임을 즐겼으면 한다. 우리 게임 AI Lab에도 게임을 정말 하드하게 즐기는 분들이 많이 계신다. 또 게임을 즐기면서 발달된 게임 감각(게이밍 센스)이 일을 하는 데에도 정말 도움이 된다. 사람의 지식을 코드화 해서 지능을 만드는 것이 아니라 기계 학습 기술을 이용하여 AI가 스스로 학습하는 방법론을 사용하고 있음에도 불구하고 사람의 지식은 큰 도움이 된다. 이 방법이 잘 동작 하는지, 내가 만든 AI가 정말 잘 싸우는지 등등을 확인하고 개선하려면 게임을 알아야 하고 게임 감각이 있어야 한다. 또 무엇보다 게임을 즐기면 일이 즐거워진다.

그 외에는 어떻게 보면 당연한 이야기일 수 있겠지만 기계 학습, 수학, 코딩 능력 등을 탄탄히 다질수록 좋다. 다양한 논문을 읽고 빠르게 구현하여 테스트해보며 성능을 높여가는 과정에서는 여러 능력을 필요로 하고, 그 중심에는 수학과 코딩 능력이 있다고 생각한다. 이러한 기초 능력이 탄탄하면서 게임을 즐기기 까지 한다면 게임 AI 개발에 꼭 필요한 인재가 될 수 있을 것이다.


Q. 인버스 키네마틱스 기술은 게이머의 GPU와 CPU의 사양이 상당히 중요해보인다. 필요한 최소 사양을 어떻게 보고 있나.

윤동원: 최소 사양은 적용된 게임에 따라 다를 것 같다. 우리는 인버스 키네마틱스를 저사양으로 처리하기 위해 딥러닝을 도입했다. 게임이 기본적으로 정상적으로 구동될 수 있는 사양이라면 이 기술을 적용한다고 필요 사양이 올라간다든지 하는 일은 없을 것이다.


Q. 기술이 발전함에 따라 언젠가 '툼 레이더'나 '어쌔신 크리드'의 자연스러운 움직임을 온라인 MMORPG에서도 볼 수 있을까? 만약 가능하다면 그 시기를 언제쯤으로 예상하나.

윤동원: 현재 데모 프로젝트를 완성한 수준이다. 이를 라이브러리로 변환하고, 게임에 적용하기 위해 차기 MMORPG 개발팀과 협의 중이다. 시기는 아직 가늠하기 어렵다.

▲ "툼 레이더나 어쌔신 크리드 수준의 움직임을 보여주는 MMORPG, 반드시 나온다"


Q. 인버스 키네마틱스 기술을 현재 서비스 중인 온라인 게임에 업데이트로 적용하는 것도 가능한가.

윤동원: 가능하다. 그러나 일단 차기작에서 검증이 된 후에 서비스 중인 게임에 적용을 검토할 수 있을 것이다.


Q. 마지막으로, 엔씨소프트 AI 팀이 생각하는, 'AI가 적재적소에 잘 적용된 멋진 게임'은 어떤 모습일지 궁금하다. 그 예를 들어준다면?

정지년: 게임 속 환경, 자연, NPC, 몬스터 모든 것에 지능이 깃들 수 있다. 그러한 지능은 인간 플레이어와 상호작용하고, 인간에게 재미를 줄 요소를 끊임없이 제공할 것이다. 기존처럼 환경과 몬스터가 예측 가능한 방식이라면 인간은 쉽게 적응해버리고 만다. 적응하는 순간부터 큰 재미를 느끼기는 힘들고, 컨텐츠가 반복적으로 느껴지기 시작한다. 그러한 요소를 AI를 이용해 벗어나고 싶다. 오래된 친구와 이야기 하는 것이 질리지 않는 이유는, 친구가 스스로 사고하는 개체이고 나의 이야기에 적절히 반응하기 때문이다. 게임 속 AI가 충분히 똑똑해진다면, 그러한 것들을 어느 정도 해낼 수 있다고 생각한다.

예를 들어, 플레이어가 게임을 어렵게 느끼면 적절히 어시스던트 AI 캐릭터가 등장하여 지원해 준다든지, 너무 쉽게 느낀다면 더 똑똑한 몬스터로 변신하거나 강력한 몬스터가 추가로 등장하여 게임에 적절한 긴장감을 불어 넣는다든지 하는 것을 예로 들 수 있다. 요는 컨텐츠에 지속적으로 새로움을 부여하여 플레이어를 지속적으로 재미있게 만들어 주는 것이 AI가 가장 잘 활용된 멋진 게임이 아닐까 생각한다.



! GDC2019 최신 소식은 박태학, 정필권, 원동현, 윤서호 기자가 샌프란시스코 현지에서 직접 전달해드립니다. 전체 기사는 뉴스센터에서 확인하세요. ▶ GDC 뉴스센터: http://bit.ly/2O2Bi0z