다중 에이전트 환경에서 제어 가능한 다양성 플레이어 행동 학습
초록
본 논문은 인간 플레이 데이터를 사용하지 않고도 연속적인 행동 파라미터 벡터를 통해 플레이어 스타일을 직접 제어할 수 있는 강화학습 프레임워크 UBCL을 제안한다. 에이전트는 현재 행동 벡터와 목표 행동 벡터를 입력받아 두 벡터 간 거리 감소량을 보상으로 삼아 학습하며, 단일 PPO 기반 정책으로 다양한 공격성·이동성·협동성 등을 매끄럽게 조절한다. Unity 기반 2v2 경기에서 실험한 결과, 기존 승리‑전용 정책보다 행동 다양성이 크게 향상되고 목표 벡터를 정확히 재현함을 확인하였다.
상세 분석
본 연구는 플레이어 행동을 N 차원의 연속적인 “행동 벡터”(behavior vector)로 정의하고, 학습 단계에서 각 에이전트마다 목표 행동 벡터를 균등 분포에서 샘플링한다는 핵심 아이디어를 제시한다. 이때 에이전트는 (① 현재 게임 상태, ② 현재 행동 벡터, ③ 목표 행동 벡터)를 관측값으로 받아들여 정책 네트워크에 전달한다. 보상 함수는 현재 행동 벡터와 목표 행동 벡터 사이의 유클리드 거리를 정규화한 감소량, 즉
r_t = (‖b_t^curr – b_t^tgt‖ – ‖b_{t+1}^curr – b_t^tgt‖) / ‖b_t^curr – b_t^tgt‖
으로 정의된다. 이 설계는 (1) 행동 벡터를 목표값에 가깝게 만들면 보상이 양수, (2) 이미 목표에 도달했을 경우 거리가 변하지 않아 보상이 0이 되도록 함으로써 과도한 행동 변화를 억제한다. 따라서 에이전트는 “어떻게 행동하면 특정 통계(예: 킬/어시스트 비율, 이동 거리, 위험 회피 정도)를 변화시킬 수 있는가”를 직접 학습한다.
학습 알고리즘으로는 Proximal Policy Optimization(PPO)을 사용했으며, 다중 에이전트 환경에서 각 에이전트가 독립적으로 목표 벡터를 받아 동시에 학습한다. 이렇게 하면 하나의 정책 네트워크가 전체 행동 공간을 커버하게 되며, 새로운 행동 스타일을 추가로 학습할 필요 없이 목표 벡터만 바꾸면 즉시 해당 스타일을 구현할 수 있다.
실험 환경은 Unity ML‑Agents를 이용해 구현한 2v2 팀 기반 격자 경기이며, 행동 벡터는 6 차원(공격성, 협동성, 경쟁성, 이동성, 위험 감수성 등)으로 구성된다. 관측에는 맵 인식, 아이템 위치, 상대와의 거리 등 전통적인 게임 상태 정보와 함께 목표·현재 행동 벡터가 포함된다.
비교 대상으로는 동일 환경에서 승리만을 목표로 보상을 설계한 “win‑only” 정책을 학습시켰다. 결과는 두 가지 측면에서 차별화된다. 첫째, 차원 축소(t‑SNE) 시 UBCL 정책이 행동 공간 전반에 고르게 퍼진 반면, win‑only 정책은 제한된 클러스터에 머물렀다. 둘째, 레이더 차트와 정량적 거리 측정에서 UBCL 에이전트는 목표 행동 벡터와 평균 0.08 이하의 오차를 보이며 높은 재현성을 보였다.
이 접근법의 장점은 (a) 인간 데이터 없이도 인간 수준의 행동 다양성을 확보, (b) 단일 정책으로 무한히 많은 스타일을 즉시 전환 가능, (c) 행동 파라미터가 직관적이므로 게임 디자이너가 원하는 플레이어 프로파일을 직접 지정할 수 있다는 점이다. 반면, 행동 벡터 설계가 도메인에 따라 달라야 하며, 벡터 차원이 늘어날 경우 샘플 효율성이 저하될 가능성이 있다. 또한, 목표 벡터가 비현실적인 조합일 경우 학습이 불안정해질 수 있어, 실제 인간 플레이어가 차지하는 서브스페이스를 사전에 파악해 제한하는 것이 바람직하다.
전반적으로 UBCL은 “행동 목표 → 정책”이라는 명시적 매핑을 제공함으로써 기존 RL 기반 스타일 다양성 방법이 갖던 보상 설계의 불투명성 및 재학습 비용 문제를 해결한다. 이는 자동 플레이테스트, 매치메이킹 평가지표 생성, 그리고 온라인 멀티플레이어에서 끊어진 플레이어를 대체하는 AI 에이전트 등 실용적인 게임 개발 파이프라인에 바로 적용 가능하다.
댓글 및 학술 토론
Loading comments...
의견 남기기