Animation in a robotics era
요즘 어느 매체를 틀어도 로봇 이야기가 쏟아진다. 로봇이 백플립을 하는 일은 이제 더 이상 놀랍지도 않다. 몇 주 전 중국 Unitree 회사의 데모는 정말 인상적이었다. 여러 대의 G1 로봇이 사람과 함께 무술을 하는 영상을 보고 솔직히 꽤 놀랐다. 사실 그 안에 들어간 기술이 무엇인지는 몇몇 소스를 통해 대략 알고는 있었다. 하지만 저렇게 많은 로봇이 동시에 아크로바틱한 동작을 시연하는 장면을 보니 새삼 대단하다는 생각이 들었다.
연구도 마찬가지다. 엄청난 양의 논문이 쏟아지고 있다. 과장해서 말하자면, 지난 2년 사이 연구의 급류가 몰아치고 있는 느낌이다. 이제 많은 연구자들이 느끼고 있을 것이다. 로봇은 지금 가장 뜨거운 주제이며, 로봇을 어떻게 움직이게 할 것인가에 온갖 관심이 집중되고 있다.
그런데 이런 분위기 속에서도 나는 태평하게 애니메이션을 놓지 않고 있다. 내가 하는 연구는 로봇과도 매우 가깝고, 조만간 로봇 분야로 연구를 더 확장할 생각이지만, 한편으로는 늘 내 근본이 캐릭터 애니메이션에 있다고 말하고 다닌다. 한 손으로는 로봇을 잡으려 하면서도, 다른 한편으로는 애니메이션을 놓지 않고 있는 셈이다. 나는 여전히 “애니메이션 전공자”라는 타이틀을 버리고 싶지 않다.
내가 약간 홍대병 기질이 있다는 점은 부인하지 않겠다. 하지만 단순히 멋져 보이거나 남들과 달라 보이기 위해 애니메이션을 붙잡고 있는 것은 아니다. 내가 계속 애니메이션 쪽에 발을 담그고 있는 데에는 두 가지 이유가 있다. 첫째, 애니메이션 자체가 매우 흥미로운 연구 주제이며 로봇과는 또 다른 방식으로 사회에 기여할 수 있다고 생각하기 때문이다. 둘째는, 로보틱스 연구의 거센 흐름 속에서 항해할 때 애니메이션이 내 배의 타륜 같은 역할을 해준다고 느끼기 때문이다.
오늘 이 글에서는 두 번째 이유에 대해 조금 이야기해 보려고 한다. 애니메이션 연구에서 출발한 시선이 로봇 연구를 바라볼 때 어떤 장점을 줄 수 있는지에 대해 나눠보고자 한다.
Each field’s perspective
나는 정말 운이 좋게도 다양한 분야의 사람들과 교류하며 연구를 진행할 수 있었다. 그래픽스 연구자들뿐만 아니라 로보틱스를 전공한 사람들과도 많은 이야기를 나눴다. 물론 전체 연구자 집단에 비하면 매우 작은 표본이지만, 내가 만난 경험을 바탕으로 두 분야 사이에는 어느 정도 시선의 차이가 있다고 느꼈다. 물론 순전히 개인적인 느낌이기 때문에 일반화해서 받아들일 필요는 없고, 그냥 내가 어떻게 느꼈는지 정도로만 읽어주면 좋겠다.
원래부터 로봇을 연구하던 사람들과 대화를 나누다 보면, 생각의 출발점이 현실의 문제에 가까이 있다는 느낌을 받는다. 실제 하드웨어를 다뤄온 사람들이기 때문에, 실험 단계로 넘어가기 전까지 가능한 한 안정적인 설정을 중요하게 여긴다. 기어비를 세심하게 계산해 로봇의 움직임에 무리가 없도록 하고, 어떤 상황에서도 안정적으로 동작하기를 바라는 경향이 있다. 아마도 하드웨어가 실제로 부서지는 경험도 해봤을 것이고, 예상하지 못한 오류도 많이 겪어봤을 것이다. 로봇이 고장 나면 직접 손으로 고쳐가며 실험을 이어가야 하는 상황도 많았을 것이다. 그래서 설계 단계부터 최대한 안정적인 설정을 추구하는 것처럼 느껴졌다. 로봇을 연구하다 보면 현실이 얼마나 가혹한지 알게 된다.
반면 내가 경험한 그래픽스 연구자들은 조금 더 상상에 가까운 방향을 지향하는 집단처럼 보였다. 모션이 더 과감하고 표현력이 풍부하기를 원한다. 안정성을 위해 힘을 잔뜩 주고 움츠린 움직임보다는, 자연스럽고 부드러운 움직임을 더 선호한다. 그러다 보니 실제 하드웨어에서는 시도하기 어려운 실험도 거리낌 없이 해보는 경우가 있다. 현실에서는 로봇이 부러지거나 망가질 수도 있는 설정을 시뮬레이션에서는 과감하게 시도한다. 일단 상상력을 바탕으로 새로운 움직임을 만들어 보고, 나중에 현실에 적용할 때 다양한 기술을 이용해 안정성을 확보하는 것이 낫지 않느냐는 관점이다. 이런 접근의 장점은 매우 흥미롭고 멋진 동작을 상상할 수 있다는 점이다. 반대로 단점은 그것이 실제 현실에서 구현 가능한지 확신하기 어렵다는 점이고, 경우에 따라서는 위험한 실험으로 이어질 수도 있다는 것이다.
이런 차이는 그래픽스 전공 교수 아래에서 로봇을 연구하는 사람들에게 특히 잘 느껴질 것이다. 그런 연구자들과 이야기를 해보면, 그래픽스 분야의 교수나 동료들이 실제 하드웨어가 얼마나 쉽게 고장 나는지 잘 이해하지 못한다는 이야기나, 로봇에 문제가 생겼을 때 디버깅이 얼마나 어려운지 공감하지 못한다는 이야기를 종종 듣게 된다. 나 역시 첫 논문을 로봇 관련 주제로 썼기 때문에 그런 어려움에 상당히 공감한다.
아이러니하게도 이런 차이가 있기 때문에 캐릭터 애니메이션이 중요한 역할을 할 수 있다고 생각한다. 누군가는 상상을 하고, 누군가는 현실적인 제약을 고려해야 한다. 그 사이에서 서로 타협하며 발전할 수 있다. 시뮬레이션에서 매우 인상적인 모션을 만들어내고, 그것을 현실로 가져올 수 있다면 누구에게나 인상적인 연구가 될 것이라고 생각한다.
Mimic from nature
애니메이션이 로봇 연구에도 도움이 된다는 가장 좋은 예시는, 사실 지금 우리가 보고 있는 많은 로봇 기술들이다. 로봇이 춤을 추고 무술을 하고 텀블링을 하는 등의 기술은 내 지도교수님 Jason Peng이 제안한 Deep Mimic 논문에서 큰 영향을 받았다. 그 이전에는 로봇이 안정적으로 땅을 딛고 보행하도록 만드는 문제를 수식화하고 이를 해결하는 방식의 연구가 많았다. 하지만 이제는 사람의 모션 데이터를 따라 하도록 학습시켜, 로봇이 자연스러운 동작을 만들어내는 접근이 널리 사용되고 있다. 이 논문이 처음 나온 것은 약 8년 전이었고, 당시에는 시뮬레이션에서만 가능한 방법에 가까웠다. 하지만 지금은 하드웨어가 크게 발전했고, 시뮬레이션에서 만든 기술을 현실로 안정적으로 옮기는 방법들도 많이 발전했다. 그 결과 지금은 실제 휴머노이드 로봇이 텀블링을 하고, 사람처럼 걷고, 심지어 무술 동작까지 수행하는 모습을 직접 볼 수 있게 되었다.
애니메이션 연구에서는 자연에서 나올 수 있는 다양한 동작을 생성하는 연구가 꾸준히 진행되고 있다. 예를 들어 피아니스트의 움직임을 캡처하여 피아노를 연주하는 모션을 생성하기도 하고, 캐릭터가 일상에서 자연스럽게 행동하는 방법을 학습하기도 한다. 또한 캐릭터가 사람과 대화를 할 때 자연스럽게 제스처를 사용하는 모습도 연구되고 있다. 이런 기술들이 휴머노이드 로봇에 적용된다면 얼마나 흥미로운 결과가 나올지 상상해볼 수 있다.
이러한 접근은 휴머노이드에만 국한되지 않는다. 앞으로 다양한 형태의 로봇이 등장하더라도 그 움직임을 자연스럽고 유용하게 만드는 데 도움이 될 수 있다. 예를 들어 문어 등의 해양 생물을 닮은 로봇이 어떻게 움직여야 자연스러울지 상상해볼 수 있다. 심지어 특정 기능을 위해 기괴한 형태의 키메라 캐릭터를 만든다고 해도, 그 형태에 맞는 자연스러운 동작을 설계하고 적용해 볼 수 있을 것이다.
What’s next?
로봇이 텀블링까지 하는 이 시점에서 우리는 앞으로 무엇을 더 해볼 수 있을까? 아이디어는 몇 가지 있지만, 나도 아직 연구를 해야 하는 입장이니 여기서 모두 풀어놓을 수는 없을 것 같다. 아직 박사 과정 학생이니 내 연구나 잘 해야 한다.
그래도 큰 틀에서 하나를 이야기해 보자면, 시뮬레이션과 현실 사이의 갭을 더 줄이는 문제가 남아 있다고 생각한다. 물론 지금도 로봇은 텀블링을 하고 무술도 수행한다. 하지만 내가 말하는 것은 그보다 더 자연스럽고 더 안정적인 방향이다. 나는 결국 로봇이 점점 사람을 닮도록 만드는 것이 중요한 목표라고 생각한다.
지금의 로봇은 종종 막대한 힘을 이용해 비정상적인 방식으로 일어나거나, 사람이 실제로는 하지 않을 법한 트릭 같은 동작을 섞어 균형을 맞추기도 한다. 앞으로는 이런 방식이 아니라, 보다 자연스럽게 사람과 닮은 움직임을 만들어야 한다.
제스처 동작은 이 문제를 잘 보여주는 예시다. 자연스럽게 제스처를 하려면 턱을 만지거나 팔짱을 끼는 등 다양한 contact이 발생한다. 하지만 이런 동작은 매우 까다롭다. 잘못하면 self-collision이 발생해 로봇이 고장 날 수도 있다. 그렇다고 contact을 피해서 안정성만을 추구하면 손이 턱 근처까지 갔다가 멈추거나, 팔짱을 어정쩡하게 끼는 부자연스러운 동작이 나오게 된다.
결국 중요한 것은 힘을 과하게 사용하지 않고, 부드럽고 자연스럽게 동작하는 것이다. 그래야 사람이 보기에 자연스럽고, 사람과 교감할 수 있는 로봇의 움직임이 만들어질 것이다.
End thoughts
최근 유명 로봇 연구 회사에 있는 한 분에게 들은 이야기다. 요즘 회사들은 로봇과 애니메이션을 모두 이해하는 인재를 꽤 많이 원한다고 한다. 하지만 두 분야를 모두 다룰 수 있는 인재 풀이 크지 않아서 항상 부족하다는 이야기를 들었다. 물론 두 분야를 동시에 공부하고 연구하는 것은 쉽지 않다. 각각만 해도 할 것이 많고 깊이도 깊다. 그래도 어려운 만큼 그런 배경을 가진 사람을 필요로 하는 곳은 분명 많을 것이라고 생각한다.
우리는 꿈을 꾸는 리얼리스트가 되어야 한다. 내 경우에 꿈은 애니메이션이고, 현실은 로봇이다. 이 둘을 적절히 섞어 연구할 때마다 결과가 늘 기대되곤 한다.
Reference
- Ohta Kuniyoshi: https://i.namu.wiki/i/89XmKfX1ypexrLmnVVUUtz4bGLSwxbNh7fxdnIL9K896ljMmViMCOi4BnrWIo_d2k6vrZkB2jDEaFuMksyrLow.webp
- Unitree Gala: https://www.youtube.com/watch?v=Ykiuz1ZdGBc
- Reality hits you hard bro: https://www.youtube.com/watch?v=FCSBoOcGFFE
- DeepMimic: https://xbpeng.github.io/projects/DeepMimic/index.html
- FurElise: https://for-elise.github.io/
- Tesmo: https://research.nvidia.com/labs/toronto-ai/tesmo/
- BodyGesture: https://www.youtube.com/watch?v=yVvaonY_F1I
- SoftCon: https://mrl.snu.ac.kr/publications/ProjectSoftCon/SoftCon.html