MaskAdapt: Learning Flexible Motion Adaptation via Mask-Invariant Prior for Physics-Based Characters
이 논문은 확률적 신체 부위 마스킹과 정규화 항을 통해 마스킹 조건에 불변인 강건한 모션 사전 지식을 학습하고, 이를 기반으로 특정 신체 부위만 수정하는 잔차 정책을 통해 물리 기반 캐릭터의 유연한 운동 적응을 가능하게 하는 'MaskAdapt' 프레임워크를 제안합니다.
원저자:Soomin Park, Eunseong Lee, Kwang Bin Lee, Sung-Hee Lee
이 논문은 물리 법칙을 따르는 가상의 캐릭터 (로봇이나 애니메이션 캐릭터) 가 기존에 배운 동작을 유지하면서, 특정 부분만 유연하게 새로운 동작을 배우는 방법을 소개합니다.
기존의 기술들은 새로운 동작을 배우려면 처음부터 다시 공부해야 하거나, 특정 부분만 바꾸려다 전체가 망가지는 문제가 있었습니다. 하지만 이 연구는 **"가상 마스크"**를 쓴다는 독특한 아이디어로 이 문제를 해결했습니다.
1. 핵심 비유: "요리사"와 "새로운 레시피"
이 기술을 이해하기 위해 요리사를 상상해 보세요.
기존 방식의 문제점: 요리사가 평소 '스테이크'를 잘 굽는다고 해서, 갑자기 '스시'를 만들어달라고 하면 어떨까요? 기존 방식은 요리사를 완전히 새로 고용하거나, 스테이크 만드는 법을 잊어버리게 만든 뒤 스시만 가르쳤습니다. 그 결과, 스테이크는 못 만들고 스시도 어설퍼지는 경우가 많았습니다.
이 연구의 해결책 (마스커드): 이 연구는 요리사에게 **"가상 마스크"**를 씌우는 훈련을 시킵니다.
1 단계 (기본 훈련): 요리사가 안경을 쓰거나, 손에 장갑을 끼거나, 심지어 한쪽 눈을 가린 상태에서도 스테이크를 완벽하게 굽는 법을 배웁니다. 이때 중요한 건 **"눈이 가려져도 (정보가 부족해도) 요리의 맛과 스타일은 변하지 않아야 한다"**는 규칙입니다. 이렇게 훈련된 요리사는 어떤 상황에서도 흔들리지 않는 **탄탄한 기본기 (Robust Prior)**를 갖게 됩니다.
2 단계 (새로운 레시피 적용): 이제 요리사가 기본기를 다졌으니, 특정 부분만 수정해달라고 합니다. 예를 들어, "손만 들어와서 스시 말아주는 동작을 해줘"라고 하면, 요리사는 손 부분만 새로운 동작을 배우고, 나머지 몸통과 다리는 여전히 스테이크 굽는 자세를 유지합니다.
이처럼 특정 부분만 선택적으로 변신시키되, 전체적인 균형은 깨뜨리지 않는 것이 이 기술의 핵심입니다.
2. 두 가지 놀라운 능력
이 기술은 두 가지 구체적인 상황에서 빛을 발합니다.
① "동작 조립 (Motion Composition)"
상황: 캐릭터가 걷고 있는데, 갑자기 "왼손은 춤추고, 오른쪽 다리는 차기 동작을 해!"라고 명령합니다.
기존 기술: 전체가 뒤틀리거나, 한쪽만 움직이다가 넘어집니다.
마스커드: 마치 레고 블록처럼 동작을 조립합니다. 다리는 걷는 걸 유지하면서, 손만 춤추는 동작을 자연스럽게 합칩니다. 마치 한 사람이 걷다가 갑자기 한 손으로 악수를 하거나, 발로 공을 차는 것처럼 부자연스럽지 않고 매끄럽게 변신합니다.
② "텍스트로 부르는 반쪽 동작 (Text-Driven Partial Tracking)"
상황: "팔을 흔들며 걸어"라고 텍스트로 명령합니다.
기존 기술: 캐릭터가 걷는 걸 멈추고 팔만 흔들거나, 걷는 리듬이 완전히 깨집니다.
마스커드:AI 비서가 텍스트를 보고 "팔을 흔드는 동작"을 만들어내면, 캐릭터는 다리는 계속 걷는 걸 유지하면서 팔만 그 동작을 따라 합니다. 마치 사람이 걸으면서 동시에 손으로 인사하는 것처럼 자연스럽습니다.
3. 왜 이것이 중요한가요?
이 기술은 로봇 공학과 게임/애니메이션에 큰 변화를 줄 수 있습니다.
게임에서: 캐릭터가 걷다가 갑자기 총을 쏘거나, 춤을 추다가 넘어지지 않고 다시 일어날 수 있습니다. 개발자가 매번 새로운 애니메이션을 일일이 만들어낼 필요가 없어집니다.
로봇에서: 로봇이 물건을 나르다가 (기본 동작), 갑자기 손으로 신호를 보내거나 (새로운 동작) 장애물을 피할 때, 전체 균형을 잃지 않고 유연하게 대처할 수 있습니다.
요약
**마스커드 (MaskAdapt)**는 로봇이나 캐릭터에게 "어떤 정보가 부족해도 (가상 마스크) 기본기는 흔들리지 않게" 훈련시킨 뒤, 필요한 부분만 선택적으로 새로운 기술을 추가하게 하는 혁신적인 방법입니다.
마치 유연한 점토처럼, 전체 형태는 유지하면서 원하는 부분만 자유롭게 모양을 바꿀 수 있게 해주는 기술이라고 생각하시면 됩니다.
1. 문제 정의 (Problem)
물리 기반 캐릭터 제어 분야에서 사전 학습된 컨트롤러의 능력을 확장하는 것은 중요한 과제입니다. 최근 연구들은 기존 가중치를 고정하고 보조 모듈 (적응 레이어 또는 잔여 정책) 을 추가하여 새로운 동작을 학습하는 잔여 학습 (Residual Learning) 방식을 주로 사용합니다. 그러나 기존 접근법에는 두 가지 주요 한계가 존재합니다.
상태 분포의 불일치 (State-Distribution Shift): 기존 방법은 베이스 정책을 학습할 때, 추후 잔여 정책이 특정 부위를 수정할 때 발생할 수 있는 상태 변화 (예: 일부 신체 부위의 관측이 누락되거나 동작이 변경됨) 를 고려하지 않습니다. 이로 인해 잔여 정책이 적용되면 베이스 컨트롤러가 불안정한 행동을 보일 수 있습니다.
유연성 부족: 기존 동작 합성 (Motion Composition) 방법은 고정된 신체 부위만 수정하거나, 의미론적 (Semantic) 인 제어 (예: 텍스트 명령) 와 통합된 메커니즘이 부족하여 유연한 적용이 어렵습니다.
2. 방법론 (Methodology)
MaskAdapt 는 2 단계 잔여 학습 (Two-Stage Residual Learning) 패러다임을 따릅니다.
2.1. 1 단계: 마스크 불변성 (Mask-Invariant) 베이스 정책 학습
첫 번째 단계에서는 강건한 동작 사전 지식 (Motion Prior) 을 학습합니다.
확률적 마스킹 (Stochastic Masking): 학습 과정에서 다양한 신체 부위에 대한 관측 데이터를 무작위로 마스킹 (숨김) 합니다. 즉, 정책은 불완전한 상태 입력 (sˉt) 을 받아야 합니다.
마스크 불변성 손실 (Mask-Invariant Loss, MI Loss): 마스킹된 상태와 완전한 상태 (Full Observation) 에서 정책이 출력하는 행동 분포가 일관되도록 강제하는 정규화 항을 도입합니다. 이는 KL 발산 (KL Divergence) 을 최소화하는 방식으로 구현됩니다.
목적: 관측이 누락되더라도 베이스 정책이 일관된 행동을 유지하도록 하여, 추후 특정 부위가 수정될 때 전체적인 안정성을 보장합니다.
이 단계가 완료되면 베이스 정책 (π) 은 고정 (Frozen) 됩니다.
2.2. 2 단계: 잔여 정책 학습 (Residual Policy Training)
고정된 베이스 정책 위에 잔여 정책 (ψ) 을 학습하여 특정 목표에 맞춰 동작을 수정합니다.
동적 동작 합성 (Dynamic Motion Composition): 사용자가 지정한 마스킹 정보 (mt) 를 조건으로 하여, 해당 신체 부위만 새로운 동작으로 적응시키고 나머지 부위는 베이스 동작을 유지합니다.
텍스트 기반 부분 동작 추적 (Text-Driven Partial Motion Tracking): 사전 학습된 텍스트 조건부 자기회귀 확산 모델 (Diffusion Model) 을 사용하여 텍스트 명령에 따른 운동학적 목표 (Kinematic Targets) 를 생성합니다. 잔여 정책은 이 목표를 특정 신체 부위 (예: 팔) 에만 적용하여 추적합니다.
조건부 판별자 (Conditional Discriminator): 기존 CML 과 달리, 특정 신체 부위 마스킹 정보에 조건을 부여하는 판별자를 사용하여 선택적 동작의 현실성을 평가합니다.
3. 주요 기여 (Key Contributions)
마스크 불변성 사전 지식 학습: 관측이 누락된 상황에서도 일관된 행동을 학습하도록 하는 새로운 정규화 기법 (MI Loss) 을 제안하여, 베이스 정책의 강건성을 크게 향상시켰습니다.
유연한 적응 프레임워크: 고정된 부위가 아닌, 상황에 따라 동적으로 변하는 신체 부위에 대한 적응을 가능하게 하며, 텍스트 명령과 같은 고수준 지시를 통합했습니다.
효율적인 잔여 학습: 베이스 정책이 이미 강건한 사전 지식을 가지고 있기 때문에, 잔여 정책은 특정 부위의 변화에만 집중하여 학습 효율성과 안정성을 동시에 확보했습니다.
4. 실험 결과 (Results)
논문은 LAFAN1, AMASS, BABEL 데이터셋을 사용하여 다양한 실험을 수행했습니다.
베이스 정책 평가 (Base Policy Evaluation):
마스킹 조건 하에서도 데이터셋의 다양성 (Entropy) 을 잘 유지하는지 측정했습니다.
MI Loss 를 적용하지 않은 경우 마스킹 시 성능이 급격히 저하되었으나, MI Loss 를 적용한 MaskAdapt 는 마스킹이 없는 베이스라인 (AMP) 과 유사한 높은 엔트로피 (0.9025 vs 0.9124) 를 기록하여 강건성을 입증했습니다.
동작 합성 (Motion Composition):
점프 (Jump) 와 교차 발차기 (Kick), 걷기 (Walk) 와 팔 회전 (Rotate Arms) 등 서로 다른 동작을 결합하는 실험에서 기존 방법 (CML) 보다 더 자연스럽고 정확한 동작 합성을 보여주었습니다.
목표 기반 작업 (Target Location, Strike 등) 에서 성공률이 CML 보다 높게 나타났습니다 (예: Strike 작업에서 64.2% vs 46.5%).
부분 동작 추적 (Partial Motion Tracking):
텍스트 명령에 따라 걷는 캐릭터의 팔 동작만 변경하는 실험에서, 기존 방법들보다 추적 오차 (Tracking Error) 가 낮고 보행 안정성을 유지했습니다.
MaskedMimic 과 비교하여 팔만 추적하는 작업에서도 더 높은 성공률과 낮은 오차를 기록했습니다.
5. 의의 및 결론 (Significance)
MaskAdapt 는 물리 기반 캐릭터 제어 분야에서 **강건성 (Robustness)**과 **유연성 (Flexibility)**을 동시에 달성한 획기적인 접근법입니다.
기술적 의의: 관측 불완전성 (Partial Observability) 하에서도 안정적인 제어 정책을 학습하는 새로운 패러다임을 제시했습니다. 이는 실제 로봇 제어에서 센서 노이즈나 부분적 가려짐이 발생할 수 있는 환경에 매우 유용합니다.
응용 가능성: 텍스트 명령을 통해 캐릭터의 특정 부위만 자유롭게 제어할 수 있어, 인터랙티브 애니메이션, 게임, 그리고 복잡한 작업을 수행하는 로봇 제어에 직접적으로 적용 가능합니다.
한계 및 향후 과제: 서로 모순되는 동작 (예: 한쪽 다리는 점프, 다른 쪽 다리는 차기) 을 동시에 부여할 경우 실패할 수 있으며, 텍스트 기반 추적은 사전 학습된 운동학 모델의 한계에 종속됩니다.
요약하자면, MaskAdapt 는 "누락된 정보를 견디는 베이스 지식"과 "목표에 맞는 선택적 수정"을 결합하여, 물리 기반 캐릭터가 더욱 자연스럽고 다양한 상황에 적응할 수 있도록 하는 강력한 프레임워크입니다.