CorrectionPlanner: Self-Correction Planner with Reinforcement Learning in Autonomous Driving
이 논문은 제안, 평가, 수정의 루프를 통해 안전하지 않은 동작 토큰을 실시간으로 식별하고 수정하는 자기 수정 능력을 갖춘 자율 주행 계획기 'CorrectionPlanner'를 제안하며, 모방 학습과 모델 기반 강화 학습을 통해 Waymax 에서 충돌률을 20% 이상 감소시키고 nuPlan 에서 최첨단 계획 성능을 달성함을 보여줍니다.
원저자:Yihong Guo, Dongqiangzi Ye, Sijia Chen, Anqi Liu, Xianming Liu
기존의 대부분의 자율주행 AI 는 한 번 결정하면 뒤돌아보지 않는 신참 운전사와 비슷합니다.
상황: AI 가 "앞으로 직진하자!"라고 결정했다고 칩시다.
문제: 만약 그 결정이 곧바로 사고로 이어질지라도, AI 는 그 결정을 실행하고 나서야 "아, 위험했네!"라고 깨닫습니다. 하지만 그때는 이미 늦었을 수 있죠.
비유: 마치 눈을 감고 달리는 사람처럼, "앞에 벽이 있네?"라고 생각할 때쯤에는 이미 벽에 부딪혀 있습니다.
💡 2. 새로운 기술: "잠깐 멈추고 다시 생각하자!" (스스로 수정하는 현명한 운전사)
이 논문이 제안한 CorrectionPlanner는 스스로를 비판하고 수정할 줄 아는 현명한 운전사입니다.
🧠 핵심 아이디어: "사고 시뮬레이션"과 "수정 로그"
이 시스템은 운전하기 전에 다음과 같은 과정을 거칩니다:
제안 (Propose): "자, 이제 오른쪽으로 살짝 핸들을 꺾어보자!" (첫 번째 시나리오)
평가 (Evaluate): AI 내부의 '비평가 (Collision Critic)'가 이를 감시합니다. "잠깐! 오른쪽에 차가 있는데, 그쪽으로 가면 2 초 뒤에 사고 날 것 같아!"
수정 (Correct):
기존 방식: "아, 틀렸네."라고 하고 다시 처음부터 같은 확률로 다른 방향을 고릅니다. (비효율적)
CorrectionPlanner 방식: "아, 오른쪽은 위험했구나. **왜 위험했는지 기록 (수정 로그)**을 남기고, 그 기록을 보고 다시 생각해서 새로운 방향을 제안합니다."
비유: 마치 수학 문제를 풀 때 "10 을 더하면 답이 20 이 되네? 아, 아니야. 문제를 다시 읽어보니 10 이 아니라 5 를 더해야 해. 자, 5 를 더해서 다시 계산해 보자"라고 실수를 기록하고 그 기록을 바탕으로 다시 풀이하는 것과 같습니다.
이 과정을 안전한 답이 나올 때까지 반복합니다. 이 '실수하고 고치는 과정'을 **수정 로그 (Correction Trace)**라고 부르며, 이는 AI 가 사고를 피하기 위해 머릿속에서 수행하는 생각의 흔적과 같습니다.
🎓 3. 어떻게 가르쳤을까요? (두 단계 교육 과정)
이 똑똑한 운전사를 만들기 위해 두 가지 단계로 훈련시켰습니다.
1 단계: 모방 학습 (Imitation Learning)
비유: **명문 운전 학교의 강사 (전문가)**가 운전하는 것을 그대로 따라 하게 합니다.
목표: 기본적으로 어떻게 운전해야 하는지, 도로 규칙을 어떻게 지키는지 배웁니다. 하지만 이때는 사고를 피하는 '수정 능력'은 아직 부족합니다.
2 단계: 강화 학습 (Reinforcement Learning) + 가상 시뮬레이션
비유:가상 현실 (VR) 운전 게임을 시킵니다.
방법: 미리 훈련된 '세계 모델 (World Model)'이라는 가상 시뮬레이터를 사용합니다. 이 시뮬레이터는 다른 차들이 내 차의 행동에 어떻게 반응하는지 실제처럼 예측해 줍니다.
훈련: AI 가 위험한 행동을 하면 "부정적인 점수 (벌점)"를 주고, 안전하게 수정하면 "긍정적인 점수"를 줍니다.
결과: AI 는 가상 세계에서 수천 번의 사고를 경험하며, "이런 상황에서는 이렇게 수정해야 안전하다"는 것을 스스로 터득하게 됩니다.
🏆 4. 실제 효과는 어떨까요?
실험 결과, 이 새로운 방식은 놀라운 성과를 보였습니다.
사고율 20% 이상 감소: 기존 기술들보다 훨씬 덜 사고를 냈습니다.
안전과 효율의 균형: "사고만 안 나면 천천히 가도 돼"가 아니라, 안전하게 차선을 변경하거나 속도를 조절했다가 다시 가속하는 등 인간처럼 유연한 운전이 가능해졌습니다.
비교: 단순히 "위험하면 다시 뽑아보자 (Rejection Sampling)"는 방식보다 훨씬 효과적이었습니다. 왜냐하면 단순히 다시 뽑는 게 아니라, 이전 실패의 이유를 기억하고 그걸 바탕으로 smarter 하게 다시 생각하기 때문입니다.
🌟 요약
이 논문은 자율주행차에게 **"실수를 두려워하지 말고, 실수를 기록해서 그걸 바탕으로 더 똑똑하게 고쳐라"**라고 가르쳤습니다.
마치 유능한 운전사가 "아까 그 길로 가면 위험했어. 다음엔 그걸 피해서 다른 길로 가자"라고 스스로 판단하고 행동하듯, CorrectionPlanner는 사고가 나기 직전에 스스로를 멈추고 수정하여, 훨씬 더 안전하고 똑똑한 자율주행의 미래를 열었습니다.
1. 문제 정의 (Problem Definition)
자율 주행은 효율성과 안전성을 모두 요구하는 장기적 의사결정 문제입니다. 기존의 학습 기반 계획자 (Planning) 모델들은 풍부한 장면 맥락 (다른 차량, 지도, 내비게이션 정보 등) 을 학습하여 다음 동작이나 궤적을 예측하는 데 탁월한 성능을 보입니다. 그러나 이러한 모델들은 실행 전 unsafe(위험) 한 동작을 명시적으로 평가하고 수정할 수 있는 내부 메커니즘이 부족하다는 치명적인 한계가 있습니다.
핵심 문제: 한 번 unsafe 한 동작 (예: 충돌 위험이 있는 궤적) 이 제안되면, 이를 실행 전에 수정하거나 재검토할 수 있는 과정이 없어 충돌이 발생할 가능성이 높습니다.
기존 접근법의 한계: 최근 LLM(대형 언어 모델) 에서 '추론 (Reasoning)'과 '자기 성찰 (Self-reflection)'을 통해 안전성을 높이는 연구가 있으나, 이는 언어 공간에서 이루어집니다. 자율 주행에서는 자연어 추론보다 운동 토큰 (Motion Token) 수준에서의 직접적인 자기 수정이 더 효과적일 수 있습니다.
2. 제안 방법론 (Methodology)
저자들은 CorrectionPlanner를 제안하며, 이는 제안 (Propose), 평가 (Evaluate), 수정 (Correct) 의 루프를 통해 운동 토큰 생성을 수행하는 자기 수정 (Self-Correction) 능력을 갖춘 오토레그레이시브 (Autoregressive) 계획자입니다.
2.1. 핵심 메커니즘: 자기 수정 루프 (Self-Correction Loop)
동작 제안 (Propose): 정책 (Policy) 이 현재 상황 (주행 차량 및 주변 차량의 과거 데이터, 지도, 내비게이션 등) 을 바탕으로 다음 '운동 토큰 (Motion Token)'을 생성합니다.
충돌 평가 (Evaluate): 학습된 **충돌 비평가 (Collision Critic)**가 제안된 토큰이 짧은 시간 범위 (예: 2.5 초) 내에 충돌을 유발할지 예측합니다.
수정 (Correct):
안전한 경우: 해당 토큰을 실행합니다.
위험한 경우: 제안된 토큰은 실행되지 않고, **수정 추적 (Correction Trace)**이라는 시퀀스에 저장됩니다. 이 추적은 과거에 제안되었으나 기각된 모든 unsafe 운동 토큰들의 시퀀스입니다.
정책은 이 '수정 추적'을 조건 (Condition) 으로 삼아 새로운 운동 토큰을 다시 생성합니다.
이 과정은 안전한 토큰이 나오거나 최대 수정 횟수에 도달할 때까지 반복됩니다.
이 '수정 추적'은 언어 모델의 '추론 과정 (Reasoning Trace)'과 유사하게, 운동 토큰 공간에서의 내부 사고 과정을 나타냅니다.
2.2. 훈련 전략: 2 단계 학습 (Two-Stage Training)
모델은 모방 학습 (Imitation Learning) 과 모델 기반 강화 학습 (Model-based RL) 을 결합하여 훈련됩니다.
1 단계: 모방 학습 (Imitation Learning, IL)
전문가 (Expert) 궤적을 기반으로 다음 토큰 예측을 학습합니다.
수정 학습 포함: 전문가 데이터에서 충돌이 발생할 것으로 예상되는 시점에, 정책이 unsafe 토큰을 생성하면 이를 수정하여 전문가의 안전한 궤적에 도달하도록 학습시킵니다. 이를 통해 정책이 unsafe 동작을 어떻게 수정해야 하는지 초기 능력을 습득합니다.
2 단계: 모델 기반 강화 학습 (Model-based RL)
반응형 세계 모델 (Reactive World Model): 사전 훈련된 SMART 모델 (Wu et al., 2024) 을 사용하여, 자율 주행 차량의 행동에 반응하는 다중 에이전트 시뮬레이션을 수행합니다. 이는 단순한 로그 재생이 아닌, 차량의 개입에 따라 다른 차량의 행동이 변하는 현실적인 시나리오를 제공합니다.
보상 함수 (Reward): 충돌 발생 시 큰 패널티, 진행률 (Progression) 에 비례한 보상을 부여합니다.
최적화: REINFORCE 알고리즘과 KL 발산 정규화를 사용하여, 수정 추적 (Correction Trace) 을 포함한 전체 시나리오에서 안전하고 효율적인 행동을 학습합니다.
2.3. 충돌 비평가 (Collision Critic)
미래 충돌 여부를 이진 분류 (Binary Classification) 하는 신경망입니다.
시간적 자기 주의 (Temporal Self-attention) 와 차량 간 상호작용 (Ego-Agent Interaction) 레이어를 통해 미래 k 단계 내의 충돌 위험을 예측합니다.
3. 주요 기여 (Key Contributions)
CorrectionPlanner 제안: 제안 - 평가 - 수정 루프를 통해 unsafe 동작을 실행 전까지 반복적으로 수정하는 오토레그레이시브 운동 토큰 생성 계획자입니다.
2 단계 훈련 체계: 전문가 데이터 기반 모방 학습과 반응형 다중 에이전트 세계 모델을 활용한 모델 기반 강화 학습을 결합하여, 현실적인 시뮬레이션과 자기 수정 능력을 동시에 확보했습니다.
성능 향상: Waymax 시뮬레이션에서 충돌률을 20% 이상 감소시켰으며, nuPlan 데이터셋에서 기존 학습 기반 계획자들보다 최상위 (SOTA) 계획 점수를 기록했습니다.
4. 실험 결과 (Results)
Waymax 시뮬레이션 (WOMD):
기존 최상위 베이스라인 (SMART, LatentDrive 등) 대비 충돌률을 20% 이상 감소시켰습니다 (Reactive 모드: 1.68% vs 2.36%).
오프로드 (Off-road) 성능은 기존 모델과 유사하게 유지되며, 안전성과 효율성 사이의 균형이 뛰어납니다.
nuPlan 데이터셋:
Val14, Test-Hard, Test-Random 등 모든 설정에서 학습 기반 계획자들 (PlanTF, DiffusionPlanner, SMART 등) 보다 높은 계획 점수를 기록했습니다.
특히 반응형 (Reactive) 환경에서 더 큰 성능 향상을 보였으며, 이는 실제 교통 환경에서의 상호작용 모델링이 중요함을 시사합니다.
Ablation Study (비교 분석):
자기 수정의 효과: 자기 수정 없이 RL 만 적용하거나, 단순히 토큰을 재샘플링 (Rejection Sampling) 하는 방식보다 자기 수정 (Correction Trace 활용) 을 적용했을 때 충돌률이 현저히 낮아졌습니다.
재샘플링 vs 자기 수정: 단순 재샘플링은 동일한 분포에서 샘플링하므로 위험 영역을 벗어나기 어렵지만, 자기 수정은 과거 실패 (unsafe 토큰) 를 기반으로 조건부 분포를 변경하여 위험을 회피합니다.
하이퍼파라미터: 충돌 임계값 (Threshold) 과 수정 길이 (Correction Length) 를 조절하여 안전성과 진행률 (Progression) 사이의 최적 균형을 찾을 수 있었습니다.
5. 의의 및 결론 (Significance)
이 논문은 자율 주행 분야에서 언어 모델의 '추론' 개념을 운동 제어 (Motion Control) 영역으로 확장한 획기적인 접근법을 제시합니다.
안전성 우선: 단순히 충돌을 피하는 것을 넘어, 계획자가 실행 전 스스로 위험을 인지하고 수정하는 '내부 사고 과정'을 구현함으로써 안전성을 근본적으로 강화했습니다.
효율성과 안전의 트레이드오프 관리: 자기 수정 과정에서 일시적으로 속도를 줄이거나 양보하는 행동이 진행률 (Progression) 을 약간 떨어뜨릴 수 있으나, 이는 안전을 최우선으로 하는 자율 주행의 본질에 부합하며, 전체적인 안전성과 효율성의 균형을 잘 맞췄습니다.
확장성: 이 방법은 로봇 공학 및 기타 안전이 중요한 분야로 확장 가능하며, 제로샷 (Zero-shot) 일반화 능력도 입증되었습니다.
결론적으로, CorrectionPlanner 는 학습 기반 자율 주행 시스템이 단순한 예측을 넘어 자기 수정 능력을 갖추어 더 안전하고 견고한 주행을 실현할 수 있음을 증명했습니다.