(왼쪽부터) 서울대 컴퓨터공학부 이제희 교수(교신저자), 원정담 박사(제1저자)
공과대학(학장 차국헌)은 컴퓨터공학부 이제희 교수 연구팀이 인공지능을 이용한 가상비행생명체 자동제어기술을 개발했다고 27일 밝혔다. 본 연구는 정보통신기술진흥센터 정보통신•방송 기술개발사업(SW스타랩)의 지원으로 진행됐다.
이 교수 연구팀은 물리시뮬레이션과 인공지능(딥러닝 기반 강화학습) 기법을 이용해 가상의 비행생명체가 스스로 움직이는 방법을 학습할 수 있는 컴퓨터 알고리즘을 개발했다. 워크스테이션 기준으로 1~2일간의 학습기간을 거치면 가상의 비행생명체가 장애물에 부딪히지 않고 자유자재로 날 수 있게 된다. (그림1)
멸종 등의 이유로 실제 존재하지 않는 가상의 비행생명체가 어떤 방식으로 비행할지 추정하고 재현하는 것은 동물학자, 고생물학자들의 오랜 연구 주제였다. 뿐만 아니라 상상의 비행생명체에 대한 사실적인 움직임을 만들어내야 하는 애니메이션 아티스트들도 비슷한 주제에 대해 오랫동안 관심을 가지고 있었다.
그러나 일반적으로 관심의 대상이 되는 비행생명체들은 복잡한 생물학적 신체구조를 가졌기 때문에 물리적으로 타당하면서도 자연스럽게 움직이는 동작을 예측하고 재현하는 것은 매우 어려웠다.
이러한 문제를 해결하기 위해 연구팀은 가상 비행생명체의 신체를 강체시뮬레이션을 통해 부력과 저항력이 단순화된 공기역학 시뮬레이션으로 모델링했다. (그림2)
그 다음 딥러닝 기반 강화학습 방법을 이용하여 비행생명체가 동작을 스스로 배우는 방법을 고안했다. 비행생명체가 빠른 시간 내에 장애물에 부딪히지 않고 목표지점에 도달하면 큰 보상을 받도록 보상시스템을 설계하고, 이에 추가적으로 진화적 탐색을 결합하는 새로운 탐색 방법을 통해 더 빠른 시간 내에 더 사실적인 학습이 가능해 졌다.
개발된 알고리즘이 잘 동작한다는 것을 확인하기 위해 다양한 비행생명체에도 실험이 진행됐다. 그 결과 모든 비행생명체에 대해 사실적인 동작을 생성해 낼 수 있다는 것이 확인됐다. 또한 만들어진 움직임에 특수 그래픽 효과를 넣어 영화나 게임의 콘텐츠 생성에 도움을 줄 수 있다는 것을 검증했다. (그림3)
이 교수팀의 알고리즘을 이용하면 실제 존재하지 않거나 멸종된 생명체의 움직임을 재현 혹은 예측해 볼 수 있다. 또한 애니메이션 혹은 영화에 등장하는 가상캐릭터의 사실적인 움직임을 만들 수 있기 때문에, 고품질 콘텐츠의 생성을 기대할 수 있다. 뿐만 아니라 드론이나 비행로봇에도 적용가능 할 것으로 기대된다.
연구에 대한 논문(How to Train Your Dragon: Example-Guided Control of Flapping Flight)은 실효성을 인정받아 컴퓨터 그래픽스 분야의 최고 권위 학술지 ‘ACM Transactions on Graphics’에 게재됐다.
이제희 교수는 “알파고가 바둑의 수를 대입해 보면서 어떤 수가 좋은 것인지 스스로 학습했던 것처럼, 가상 비행생명체가 주어진 환경에서 에너지를 적게 소모하면서, 안정적으로 원하는 방향으로 스스로 움직일 수 있는 방법을 개발했다”며 “이를 이용해 실제 존재하지 않거나 멸종된 다른 생명체들의 사실적인 움직임도 재현할 수 있을 것”이라고 설명했다.
그림1. 서양의 용과 닮은 상상의 비행생명체가
여러 동작을 반복하면서 스스로 비행하는 방법을 배우고 있는 모습
그림2. 컴퓨터상에서 재현된 비행생명체들의 모습. 서양의 용과 비슷한 생명체(왼쪽),
몸은 유연하고 날개가 3개가 달린 생명체(가운데),
민들레 포자를 모사한 몸 크기에 비하여 무게가 매우 가벼운 생명체(오른쪽)
그림3. 재현된 움직임에 특수효과를 추가한 영상의 한 장면
[참고링크]
https://youtu.be/pRor9BccSPE
[문의]
컴퓨터공학부 이제희 교수 / 02-880-1845 / jehee@mrl.snu.ac.kr
컴퓨터공학부 원정담 박사 / 02-880-1864 / nonaxis@mrl.snu.ac.kr
공과대학 대외협력실 이동하 팀장 / 02-880-9148 / 010-8249-2174 / lee496@snu.ac.kr