Search Unity

유니티의 AI 팀은 작년 12월에 몬트리올에서 열린 NeurIPS에 참가했습니다. 유니티 부스에서 수백 명의 연구자들과 만나 유니티에서 진행 중인 인공 지능 및 머신러닝 프로젝트에 대해 소개했습니다. 1월에는 호놀루루에서 열리는 AAAI-19(연례 AI 컨퍼런스)에 참가하여, 그곳에서 부스를 열고 인공 지능 연구를 위한 게임 및 시뮬레이션에 대한 AAAI-19 워크숍을 공동으로 진행할 예정입니다. 이 블로그 게시물에서는 워크숍에 대해 간단히 소개하고 게임 및 시뮬레이션 플랫폼을 활용하는 연구를 육성하려는 이유에 대해 설명하려고 합니다.

AAAI에 참석하신다면 1월 28일에 있을 워크숍에 참가해 보시기 바랍니다. 이 워크숍에서는 저명한 발표자들이 참여하며 AI 연구를 위한 게임 및 시뮬레이션에 관한 논문도 소개됩니다. 유니티 부스는 1월 29일부터 31일까지 운영하며, 부스에서 데모를 시청하고 유니티에서 근무하는 팀과 진행 중인 프로젝트에 대해서도 알아볼 수 있습니다.

AI 연구 개발 발전에 기여한 게임

AI 연구 분야에서 게임은 1949년으로 거슬러 올라갈 만큼 오랜 역사를 갖고 있습니다. 1949년 클로드 섀넌(Claude Shannon)은 정보 엔트로피 개발 직후 체스 게임을 플레이할 수 있는 컴퓨터 프로그램을 만드는 데 관심을 갖게 되었습니다. 그의 논문인 “체스 게임을 위한 컴퓨터 프로그래밍(Programming a Computer for Playing Chess)”에는 다음과 같은 내용이 나와 있습니다.

“체스 머신으로 프로그래밍을 시작하면 좋은 이유는 다음과 같습니다. (1) 허용된 이동(수, moves)과 최종 목표(체크메이트, checkmate) 측면에서 문제가 모두 명확히 정의되어 있고, (2) 만족스러운 솔루션을 개발하기에 너무 단순하지도 어렵지도 않으며, (3) 일반적으로 체스는 능숙하게 게임을 하려면 “사고(Thinking)”가 필요한 게임으로 인식됩니다. 프로그램이 체스 문제의 답을 찾게 된다면 사람은 기계화된 사고가 가능함을 인정하거나 “사고”에 대해 가지고 있는 개념을 더욱 한정하게 될 것입니다. 그리고 (4) 체스의 이산 구조(discrete structure)는 현대 컴퓨터의 디지털 속성과 잘 맞습니다.”

이 때가 1949년이었으며, 그 이후에도 사람처럼 능숙하게 체스 게임을 할 수 있고 세계 챔피언들을 이길 수도 있는 컴퓨터 프로그램을 제작하는 것에 대한 관심이 지속되었습니다. 섀넌의 연구는 1950년대와 1960년대에 아서 사무엘(Arthur Samuel)이 진행한 체커(Checkers) 연구에 영향을 주었습니다. 사무엘이 만든 프로그램은 뛰어난 플레이어를 이길 수는 없었지만 휴리스틱 탐색(heuristic search) 프로시저와 학습 기반 방법(learning-based methods)을 효과적으로 활용한 첫 번째 프로그램이었다는 점에서 중요한 성과였습니다. 처음으로 전문가 수준의 게임이 가능했던 성공 사례는 치눅(Chinook)이라는 체커 프로그램이었습니다. 1989년 알버타 대학에서 개발된 치눅은 사람과의 대결에서 대부분 승리를 거뒀으며, 1994년쯤에는 가장 실력이 뛰어난 플레이어들이 고군분투했음에도 불구하고 무승부로 끝날 수밖에 없었습니다. 이러한 양상은 백개먼(제럴드 테소로(Gerald Tesauro)의 TD-Gammon, 1992-2002) 및 체스(1997년 IBM의 Deep Blue가 개리 카스파로프(Garry Kasparov)를 이김)와 같은 다른 2인용 보드게임에 그대로 이어졌으며 최근에는 바둑 경기에서도 볼 수 있었습니다. DeepMind의 알파고(AlphaGo)가 세계 챔피언을 18번이나 차지했던 이세돌을 4대 1로 처음 이겼던 2016년은 최근 몇 년간의 중요한 과학적 성과라고 할 수 있습니다(넷플릭스 다큐멘터리인 AlphaGo에도 소개됨).

(출처) 치눅과 매리온 틴슬리(Marion Tinsley)의 대결(1994)

클로드 섀넌의 논문이 발표된 이후 최근 70년 동안 프로그램은 더욱 발전하여 이전보다 더 어려운 2인용 보드게임을 더 많이 플레이하게 되었을 뿐 아니라 복잡한 다른 시나리오에도 적용할 수 있게 되었습니다. 다시 말해, 스타크래프트 II (Starcraft II) 및 도타2(Dota2)와 같은 3D 멀티플레이어 게임도 가능하게 되었으며, 게임을 직접 코딩으로 재현하지 않고 원시(raw) 화면 픽셀 입력만을 사용하여 둠(Doom) 및 아타리(Atari) 2600 게임 플레이를 학습하는 더욱 난이도 있는 게임 태스크를 수행할 수 있게 되었습니다. DeepMind는 2015 네이처 논문에 Deep-Q-Network(DQN)라는 심층 강화 학습(Deep Reinforcement Learning) 시스템을 발표했습니다. 이 시스템은 원시 화면 픽셀 입력만을 사용하여 다양한 Atari 2600 게임에서 사람을 뛰어넘는 성과를 얻을 수 있었습니다. 여기서 특히 주목해야 할 부분은 각각의 게임에서 개별적으로 학습한 단일 시스템(고정 입력/출력 공간, 알고리즘, 파라미터)이 이렇게 다양한 게임에서 좋은 성과를 낼 수 있었던 방법입니다. 최근 OpenAI에서는 도타 2에서 아마추어 플레이어와 경쟁할 수 있는 5개의 신경망으로 구성된 팀인 OpenAI Five를 개발했습니다.

게임 엔진 시뮬레이션 플랫폼의 효용성

AI 개발에서 중요한 역할을 한 것은 게임만이 아닙니다. 이제 게임 엔진(및 기타 시뮬레이션 플랫폼) 자체가 로봇 공학, 컴퓨터 비전, 자율주행차, 자연어 이해(NLU)와 같은 다양한 분야에서 연구를 수행할 수 있는 강력한 도구가 되고 있습니다.

게임 엔진을 AI 연구에 적용하는 주된 이유는 합성 데이터를 대량으로 생성할 수 있기 때문입니다. 최근 AI 기술이 발전하고 클라우드에서 관리형 하드웨어(예: GPU, TPU)를 사용할 수 있게 됨에 따라 방대한 양의 데이터를 효율적으로 활용할 수 있는 알고리즘이 마련되었으므로 이는 매우 강력한 도구라고 할 수 있습니다. 유니티가 DeepMind와 맺은 협력 관계는 그 자체로 AI 연구를 위한 가상 세계 활용에 모든 것을 투자하는 최고의 연구실이라 할 수 있습니다. 실제 세계에서 데이터 세트를 생성하기 위해 엄청난 비용과 위험을 감수해야 하는 경우라면 게임 엔진 사용이 더 중요합니다. 게임 엔진을 사용하는 두 번째 이유는 렌더링 품질과 물리학적 정확성 때문입니다. 이를 통해 실제 세계에서 발생하는 문제를 안전하고 통제가 가능한 환경에서 연구할 수 있습니다. 또한 최소한의 변경만 거치면 합성 데이터에서 학습된 모델을 실제 세계로 옮겨 적용할 수 있습니다. 이에 대한 일반적인 예로 자율주행차를 들 수 있습니다. 자사의 알고리즘을 평가하는 데 Unity를 활용하려는 Baidu의 움직임도 최신 게임 엔진을 수용하려는 동향을 잘 보여줍니다.

AI는 여러 업계를 탈바꿈할 수 있는 잠재력이 있다는 점에서 새로운 전기(new electricity)라는 별명을 얻었습니다. 유니티는 게임 엔진과 시뮬레이션 플랫폼이 이러한 혁신에서 중요한 역할을 하게 될 것으로 예상합니다. 비디오 게임 플레이, 물리 기반 제어, 이동(locomotion), 3D 자세 추정, 자연어 명령 이행, 임바디드 QA(embodied question answering), 자율주행차(예: 아케이드 학습 환경Starcraft II 학습 환경ViZDoom일반 비디오 게임 AIMuJoCoGibsonAllen Institute AI2-ThorFacebook House3DMicrosoft AirSimCARLA)와 같은 다양한 문제를 연구할 수 있도록 최근 구축된 다양한 플랫폼을 보면 이 점이 명확해집니다. 여기에는 유니티의 Unity ML-Agents 툴킷도 포함됩니다. 이 툴킷을 사용하면 Unity 씬을 심층 강화 학습 및 모방 학습 알고리즘을 통해 지능형 에이전트를 학습시킬 수 있는 학습 환경으로 변환할 수 있습니다. 이와 같은 이유로 유니티에서는 게임 및 시뮬레이션 플랫폼을 활용하는 AI 연구를 장려하고 육성하고자 합니다.

AAAI-19 워크숍 개요

1월 말에 열리는 AAAI에서 유니티는 줄리안 토글리우스(Julian Togelius, 뉴욕 대학 교수), Roozbeh Mottaghi(루즈베 모타기, Allen Institute의 인공 지능 관련 연구과학자)와 함께 AI 연구를 위한 게임 및 시뮬레이션에 대한 워크숍을 공동으로 주최할 예정입니다. 이 워크숍에서는 초청 연사와 검증된(peer-reviewed) 논문 저자들의 프레젠테이션이 하루 종일 진행됩니다. 프레젠테이션에서는 알파고와 같은 심층 강화 학습 시스템의 대규모 훈련, 학습 로봇 민첩성을 도출하기 위한 고성능 렌더링, 쿼드콥터 제어에 대한 자연어 매핑 학습, 아프리카 사바나의 야생 동물을 보호하기 위한 드론 사용을 비롯한 다양한 주제를 다룰 것입니다. AAAI에 참석하시는 경우, 유니티 워크숍에도 참가하여 게임과 시뮬레이션이 AI 연구 발전에 어떻게 활용되는지에 대해 알아보시기 바랍니다.

감사합니다!

2 코멘트

코멘트 구독

코멘트를 달 수 없습니다.

  1. Can we watch presentations online? (live or recorded) and where?

    1. We are exploring that possibility. Unfortunately, the AAAI conference does not provide recording equipment for workshops. If we do, they will be posted on the workshop website linked in the blog post.