보기
한양대 · 로봇 제어 · Week 4

강화학습과 MPC로 휠레그드 로봇 제어하기
MPPI · 강화학습 · TD-MPC를 잇는 최적·학습 융합 제어 (한승호 교수님 특강)

영어 강의를 듣기 전에 읽는 예습 자료입니다. 왼쪽 슬라이드를 보며 오른쪽 설명을 읽어보세요. 슬라이드를 클릭하면 크게 볼 수 있습니다.

핵심 요약

바퀴와 다리를 함께 가진 휠레그드(wheeled-legged) 로봇을 자율주행·자율배송에 쓰기 위해, 모델 기반 제어(MPC)와 학습 기반 제어(RL)를 어떻게 결합하는지 전체 흐름을 잡는 강의입니다.

오늘의 세 갈래 제어 전략

강의의 뼈대는 ① MPPI(확률적 경로적분 제어), ② 강화학습, ③ 둘을 합친 스토캐스틱 MPC+RL(TD-MPC)입니다. 각 기법을 '이런 게 있구나' 수준으로 흐름과 직관 위주로 따라가는 것이 목표입니다.

왜 휠레그드 로봇인가

라스트마일 배송에서 드론(에너지 비효율), 바퀴(계단 불가), 다리(저속·저적재) 각각의 약점을 보완하는 절충안이 휠레그드입니다. 평지는 바퀴로 굴러 순수 보행 대비 약 83% 에너지를 절감하고, 계단·턱은 다리로 넘습니다.

MPC와 구속조건

MPC는 비용함수와 구속조건(접촉·트랙션·비틀림 등)을 명시적으로 잘 다루는 최적제어입니다. 바퀴가 추가되어도 '미끄러지지 않는다'는 구속을 오히려 없애 자유도를 늘리지 않고 문제를 단순화하는 점이 특이점입니다.

MPPI = 경로를 뿌리고 합치기

모델에 노이즈를 더한 확률(스토캐스틱) 모델로 수백 개의 회색 경로를 샘플링하고, 장애물·목표를 기준으로 가중평균해 하나의 빨간색 최적 경로를 만듭니다. 여기에 MPC의 '매 스텝 재계산' 개념을 합친 것이 MPPI입니다.

강화학습의 실전 노하우

알고리즘(액터-크리틱)보다 보상 설계가 핵심입니다. 거리·자세·정지속도 등으로 보상/벌점을 짜고, 커리큘럼 러닝으로 쉬운 과제부터 올리며, 도메인 랜덤화로 Sim-to-Real 격차(마찰·타이어·지연)를 메웁니다.

MPC와 RL을 합치는 두 길

Parametric MPC는 RL이 비용함수의 Q·R 등 파라미터를 보정하고, TD-MPC는 레이턴트 다이나믹스와 밸류 함수 네트워크로 비용·종단가치를 학습합니다. 모델링이 어렵고 불확실성이 클수록 융합 기법이 신뢰성과 강인성을 함께 잡습니다.

모델은 정확하지만 가정을 벗어나면 무너지고 학습은 강인하지만 100%는 아니다 — 그래서 MPC와 강화학습을 합쳐 휠레그드 로봇을 강인하게 제어한다.
Part 1슬라이드 1~6

01도입 — 강사 소개와 MBC·RL 연구 동향 (1)

slide 1
슬라이드 1 · 강의 제목 — RL·MPC 융합과 관절로봇 제어
slide 2
슬라이드 2 · 목차 — 세 가지 제어 전략 예고
slide 3
슬라이드 3 · 연구 이력 ① 비선형 제어 기반 자율주행
slide 4
슬라이드 4 · 연구 이력 ② RL 기반 자율로봇
slide 5
슬라이드 5 · 연구 이력 ③ MPC+RL 다목적 자율 시스템
slide 6
슬라이드 6 · 연구 로드맵 — End-to-End 자율 물류
슬라이드 내용 정리

강의 제목 슬라이드입니다. 제목은 「강화학습과 모델예측제어(MPC) 융합 개론 및 이를 응용한 관절로봇 제어방법론」, 영문으로는 An Introduction to Reinforcement Learning–Model Predictive Control Integration and Its Application to Joint Robot Control Methodologies.

발표자(Speaker)는 한승호 교수(Seungho Han, Assistant Prof., 한양대 ERICA 전자공학), 날짜(Date)는 2026년 3월 26일, 장소(Venue)는 한양대학교 ERICA. 우상단에 HANYANG UNIVERSITY와 연구실 로고 CELOS가 표기되어 있습니다.

교수님 설명

학교에 부임하신 지 2주년이 되었다는 인사로 강의를 여십니다. 오늘 다룰 큰 주제는 강화학습(Reinforcement Learning, RL), 모델예측제어(Model Predictive Control, MPC), 그리고 이 둘을 합치는 방법, 나아가 이를 응용한 관절로봇(joint robot)·자율주행 제어라고 미리 짚어 주십니다.

시험과 관련해서는, 분량이 많으니 처음부터 외우려 하지 말고 전체 흐름과 개념 이해에 집중하라고 당부하십니다. 출제 범위는 강의 마지막에 어느 페이지에서 나올지 직접 언급해 주실 예정이라, 중간에 모르는 용어가 나와도 "이런 게 있구나" 정도로 가볍게 따라오면 된다고 하십니다. 일부 자료는 교수님이 진행 중인 대학원 수업(최적제어·강화학습 관련) 강의 자료에서 가져와 구성했다고 설명하십니다.

본격적인 내용에 앞서, 교수님이 어떤 연구를 해 왔는지 모르는 분들을 위해 석·박사 과정 → 회사 → 현재 연구실로 이어지는 본인 연구 이력을 약 5~10분간 동향 소개 형태로 먼저 풀어 주시겠다고 예고하십니다.

슬라이드 내용 정리

오늘 강의의 목차입니다. Introduction(도입)에 이어 세 가지 제어 전략을 순서대로 다룹니다.

Control Strategy 1) MPPI [1],[2] — 샘플링 기반 최적 제어 기법, ② Control Strategy 2) Reinforcement Learning(RL) [3] — 강화학습, ③ Control Strategy 3) MPPI + RL — 앞의 두 방법을 결합. 하단의 참고문헌 [1]~[3]은 Bjelonic·Hutter 등의 wheeled-legged robot 관련 IEEE/RSL·Springer 논문입니다.

교수님 설명

오늘 전달할 제어 전략은 세 가지임을 명확히 하십니다. 첫째는 MPPI, 둘째는 강화학습, 셋째는 스토캐스틱(stochastic) 기법과 강화학습을 합친 방법입니다. 시간이 허락하면 세 가지를 모두 설명하고, 시간이 촉박하면 중간중간 일부를 스킵하더라도 이 세 전략의 핵심은 최대한 전달하겠다고 하십니다.

다만 본론으로 들어가기 전에, 앞서 예고한 대로 약 10분간 본인의 연구 이력과 현재 MPC·RL 연구 동향을 가볍게 짚는 인트로 순서를 먼저 진행하겠다고 안내하십니다. 다음 슬라이드들이 그 연구 이력(Research History)에 해당합니다.

보충 설명

MPPI(Model Predictive Path Integral)는 MPC의 한 종류로, 미래 궤적 후보를 수많이 샘플링한 뒤 비용이 낮은 궤적에 가중치를 줘 평균 내는 방식입니다. 미분이 어려운 비선형 시스템에도 쓸 수 있는 게 장점입니다. 강의 흐름은 "고전적 모델 기반 제어(MPC 계열) → 데이터 기반 학습 제어(RL) → 둘의 융합"이라는 큰 줄기를 따라간다고 보면 됩니다.

슬라이드 내용 정리

연구 이력 첫 단계(2019~2024, KAIST, 비선형 제어 Nonlinear control)입니다. 주제는 1. 자율주행(Autonomous Driving, AD)이고 세부 과제가 셋입니다.

Safe outdoor AD — 전기차(EV)와 비선형 MPC(CiLQR)를 이용한 충돌 회피 자율주행. 플랫폼은 실제 크기로 개조한 골프카트·차량. ② Robust indoor AD — 샘플링 기반 MPC(sampling-based MPC) 실내 자율주행. ③ Stable formation control — 리아푸노프 안정성(Lyapunov stability) 기반의 Steering-Stabilized Formation Control (Nonholonomic Agent), 즉 비홀로노믹 에이전트의 조향 안정 편대 제어. 우측에는 다음 단계인 2. Autonomous Robot(SAMSUNG)이 미리 표시됩니다.

교수님 설명

석·박사 과정에서는 주로 비선형 제어를 했고 대표 주제가 셋이라고 소개하십니다. 첫째는 실외(outdoor) 자율주행으로, 비선형 MPC(CiLQR)를 골프카트와 개조한 현대 전기차에 적용해 자율주행 + 충돌 방지를 함께 구현했습니다. 차량의 조향과 가감속 페달까지 직접 개조하고 하드웨어 세팅을 마친 뒤 본인이 직접 탑승해 시험 주행한 사례라고 설명하십니다.

둘째는 실내(indoor) 자율주행으로, 샘플링 기반 MPC를 써서 웨이포인트로 이동하다가 중간에 사람을 마주치면 자연스럽게 우회해 목표 지점까지 도달하도록 구현했습니다. 셋째는 편대(formation) 제어인데, 군대에서 드론으로 인물(예: 사람 얼굴)을 따라 촬영하는 것과 같은 문제를 차량으로 풀었다고 비유하십니다.

이 편대 추종 촬영은 본래 추종 차량이 심하게 흔들리기 쉬운 문제라서, 리아푸노프(Lyapunov) 안정성 이론을 활용해 조향 진동(steering oscillation)과 채터링(chattering)을 모두 억제하고 안정적인 자율주행 편대를 만들었다고 설명하십니다. 영상에서는 RC카 여러 대가 안정적으로 선행 차량을 추종하는 모습을 보여 주십니다.

보충 설명

CiLQR은 제약 조건이 있는 iLQR(iterative Linear Quadratic Regulator)로, 비선형 차량 모델의 최적 궤적을 빠르게 푸는 MPC 계열 기법입니다. 비홀로노믹(nonholonomic)은 차량처럼 옆으로는 못 가고 진행 방향으로만 움직이며 회전하는 운동 제약을 뜻합니다. 리아푸노프 안정성은 "에너지처럼 정의한 함수가 시간이 지나며 계속 줄어들면 시스템이 안정하다"고 보증하는 제어 이론의 핵심 도구입니다.

슬라이드 내용 정리

연구 이력 두 번째 단계(SAMSUNG, 2024~2025, RL 기반 제어)입니다. 왼쪽 회색 띠에는 앞서 본 ① 자율주행 3과제가 요약되고, 오른쪽 본문은 2. Autonomous Robot입니다.

핵심은 공장 자동화를 위한 자율로봇/모바일 매니퓰레이터(Autonomous robot/mobile manipulator). 상단 로봇 사진은 x1.5 배속 표기와 함께 출처 FigureAI, 우측은 RBY1. 하단은 Digital Twin(디지털 트윈)으로 자율로봇·주행을 학습하는 장면이며, Iteration 300 표기와 출처 Tokyo Robotics, Nvidia가 보입니다.

교수님 설명

이후 회사로 옮겨서는 자율로봇을 담당했다고 설명하십니다. 회사 사진·영상은 보안 때문에 직접 가져오지 못해, 시중에 상용으로 나온 예시 이미지로 대체했다고 양해를 구하십니다. 적용 분야는 반도체 공장처럼 위험한 작업이 많은 현장입니다. 산업재해나 작업자 부상 위험이 큰 공정을 사람 대신 휴머노이드 로봇이 단순 작업부터 대체하도록 진행했다고 합니다.

구체적으로는 주식 투자자들에게도 익숙한 레인보우 로보틱스RBY 로봇을 가져다 사용했고, 이 로봇을 학습시키기 위해 디지털 트윈(digital twin) 환경에서 강화학습으로 정책을 학습시켰다고 설명하십니다. 슬라이드의 "Iteration 300"이나 가상 환경 속 다수 로봇 장면이 바로 이 시뮬레이션 학습 과정을 보여 줍니다.

보충 설명

디지털 트윈은 실제 로봇과 환경을 물리 시뮬레이터 안에 똑같이 복제한 가상 환경입니다. 강화학습은 수많은 시행착오가 필요해 실제 로봇으로는 위험·비용이 크기 때문에, 가상 환경에서 수천~수만 번 반복 학습(iteration)해 정책을 만든 뒤 실제 로봇으로 옮기는(sim-to-real) 방식이 표준입니다. 모바일 매니퓰레이터는 "이동 가능한 바퀴/다리 + 작업용 팔(매니퓰레이터)"이 결합된 로봇을 말합니다.

슬라이드 내용 정리

연구 이력 현재 단계(Current, 강화학습 기반 MPC)입니다. 왼쪽부터 ① 자율주행 ② 자율로봇 ③ 다목적 자율 시스템(Versatile Autonomous Systems) 순으로 누적됩니다.

핵심 다이어그램은 MPC-based RL 구조로, Parametric MPCRL AgentEnvironmentstate/parameters/action/cost 신호로 연결됩니다(RL이 MPC의 파라미터를 조정). 우측은 Mobile 플랫폼 개발(휠-레그 로봇, 출처 Unitree). 하단 Applications로는 험지·복잡 환경 자율주행과 Logistics/factory automation w/ digital twin이 제시됩니다.

교수님 설명

현재 한양대 연구실에서는 학교에서 했던 MPC와 회사에서 했던 강화학습을 합친, 즉 MPC와 RL을 융합한 제어를 연구하고 있다고 설명하십니다. 연구 대상은 바퀴와 다리가 함께 달린 휠-레그 로봇(wheeled-legged robot)입니다.

연구 목표는 크게 두 가지입니다. 첫째는 강인성(robustness)으로, 사람·물체가 예측하기 어렵게 동적으로 움직이는 매우 복잡한 환경(인도의 시장, 우리나라로 치면 붐비는 거리)이나 험지에서도 안정적으로 자율주행하는 것입니다. 둘째는 물류센터·물류 배송의 자율화로, 배송 전 과정을 자동화하는 방향입니다.

보충 설명

이 슬라이드의 Parametric MPC + RL Agent 구조가 오늘 강의의 핵심 아이디어입니다. MPC는 모델 기반이라 안정적이고 제약을 잘 지키지만 비용함수·파라미터를 손으로 튜닝해야 하고, RL은 데이터로 똑똑하게 적응하지만 안전 보장이 약합니다. 그래서 MPC를 제어기로 두고, 그 파라미터(가중치 등)를 RL이 상황에 맞게 조정하면 두 방법의 장점을 합칠 수 있습니다 — 이것이 슬라이드 2의 "전략 3) MPPI + RL"로 이어집니다.

슬라이드 내용 정리

연구 로드맵 슬라이드입니다. 큰 목표([Goal])는 End-2-End Autonomous Logistics(끝에서 끝까지 자율 물류). 도심에서 트럭이 출발해 물류센터까지 이어지는 전 과정을 자동화하는 그림입니다.

이를 위해 연구실은 네 팀으로 구성됩니다. ① Planning Team(nuPlan 또는 CARLA), ② AD Team(CARLA), ③ WLR Team(Go2-W + 매니퓰레이터), ④ Humanoid Team(Index Robotics). ①②는 도심 자율주행, ③④는 물류센터 내부 자동화를 담당합니다.

교수님 설명

연구실 이름은 SEROS입니다. 큰 주제는 엔드투엔드(End-to-End) 자율 배송, 즉 출발지부터 도착지까지 전 구간을 자율화해 물류를 완성하는 것이 목표라고 설명하십니다. 팀은 ① 플래닝(Planning), ② 자율주행(AD), ③ 휠-레그 로봇(WLR), ④ 휴머노이드(Humanoid)의 4개로 나뉘며, 아직 개설 한 학기째라 주로 학부 연구생 위주로 팀을 운영하고 있다고 합니다.

오늘 강의에서는 이 중 사족(다리형) 로봇과 휴머노이드 로봇 사례를 다룹니다. 다리형 로봇 쪽에서는 강화학습과 MoE(Mixture of Experts, 전문가 혼합) 기법으로 험지에서의 강인 제어를 연구하는데, MoE는 말 그대로 "전문가들을 섞는다"는 뜻으로 직선 주행 전문가, 코너링 전문가, 곡선 주행 전문가 세 전문가를 결합해 임의의 랜덤 궤적(trajectory)을 빠르게 주파하도록 만든 것이라고 소개하십니다.

여기서 더 나아가 현재는 이 다리형 로봇에 매니퓰레이터(로봇 팔)를 붙이는 작업을 다른 로봇 업체와 함께 진행 중이라고 합니다. 대학원 수업(ICRA 투고 목표)에서는 강화학습 기반 다리형 로봇의 보행/극복 제어를 팀플 주제로 다루는데, MPC가 아니라 강화학습으로 제어해 앞을 가로막은 회색 벽을 넘어 초록색 목표 지점까지 도달시키는 것이 목표라고 예고하십니다. 베이스라인은 제공되고, 학생들은 파라미터를 바꿔 가며 학습시키게 됩니다.

보충 설명

WLR은 Wheeled-Legged Robot, 즉 바퀴와 다리를 모두 가진 로봇입니다. 평지에서는 바퀴로 빠르게, 계단·턱에서는 다리로 넘는 식으로 두 이동 방식의 장점을 합칩니다. Go2-W는 Unitree사의 바퀴 달린 사족 로봇이고, 거기에 매니퓰레이터(팔)를 달면 이동하며 물건을 집는 작업이 가능해집니다. MoE는 원래 대형 언어모델에서도 쓰는 구조로, 입력 상황에 따라 가장 알맞은 "전문가" 네트워크를 선택·혼합해 쓰는 방식이라 직선·코너·곡선처럼 성격이 다른 주행 구간을 각기 잘 처리할 수 있습니다.

Part 2슬라이드 7~10

02도입 — 강사 소개와 MBC·RL 연구 동향 (2)

slide 7
슬라이드 7 · WLR팀 — 강화학습+MoE 휠-족형 로봇 험지 제어
slide 8
슬라이드 8 · IROS 2025 국제대회 우승, 매니퓰레이터 부착
slide 9
슬라이드 9 · Diffusion policy 휴머노이드 양팔 제어
slide 10
슬라이드 10 · AD팀 — Latent dynamics 기반 장애물 회피 주행
슬라이드 내용 정리

WLR & Humanoid 팀의 첫 번째 연구 주제: 강화학습(RL)과 MoE 기반 휠-족형 로봇(Wheel-Legged Robot)의 험지 강인제어. 위쪽 블록도는 정책 네트워크 구조를 보여줍니다. Estimator(추정기)Explicit Privileged State(명시적 특권 정보), Implicit Privileged State(암묵적 특권 정보), Proprioception(고유수용감각)을 받아 LSTM으로 시계열을 처리하고, 그 출력이 Actor MoE·Critic MoE로 들어갑니다. Gating Network(게이팅 네트워크)가 각 전문가(Expert)의 가중치를 정해 Weighted Sum으로 합산한 뒤 최종 Action을 출력합니다. 아래 사진은 대회 수상("Winners!") 및 박스 지형 비교(Box-terrain comparison) 결과입니다.

교수님 설명

현재 연구실은 학교에서 하던 MPC와 회사에서 하던 강화학습(RL)을 합치는 방향으로 움직이고 있고, 그중 첫 번째 주제가 휠-족형 로봇의 험지 주행입니다. 핵심 기법은 MoE(Mixture of Experts, 전문가 혼합)인데, 이름 그대로 "전문가를 섞는다"는 뜻입니다. 하나의 거대한 정책으로 모든 상황을 다루는 대신, 상황별로 잘하는 전문가들을 따로 학습시켜 두고 게이팅 네트워크가 상황에 맞게 골라 섞는 방식입니다.

이 로봇의 경우 직선 주행 전문가, 코너링 전문가, 곡선 주행 전문가 세 가지를 합쳐서, 무작위로 주어지는 경로(trajectory)를 빠르게 주파하도록 연구하고 있습니다. 그 성과로 험지 지형에서의 강인성을 인정받아 국제대회에서 우승했습니다.

보충 설명

특권 정보(Privileged State)는 시뮬레이션에서는 알 수 있지만 실제 로봇에서는 직접 측정하기 어려운 정보(예: 지면 마찰계수, 정확한 지형 높이)를 말합니다. 학습 때는 이를 활용하되 실전에서는 고유수용감각(관절 각도·속도 등 로봇 자체가 느끼는 정보)만으로 추정하도록 만드는 것이 핵심 아이디어입니다. LSTM은 과거 시점들의 흐름을 기억해 지면 상태를 더 잘 추정하도록 돕습니다.

슬라이드 내용 정리

앞의 주제(휠-족형 로봇 험지 강인제어)의 성과 슬라이드입니다. 국제대회 우승IEEE IROS 2025 워크숍 대회(WLR Workshop Competition), 스위스 취리히 공과대학(ETH) 주관. 수상자는 한승호(한양대 ERICA), 이선주(KAIST 박사과정), 강정욱(삼성리서치 연구원). 상단 사진은 바퀴 달린 사족 로봇 "ANYmal on wheels"의 주행 모습입니다. 하단은 (In progress) 매니퓰레이터 부착 — 휠-족형 로봇에 로봇 팔을 다는 진행 중 연구입니다.

교수님 설명

이 연구가 2025년 IROS 워크숍 대회에서 우승했습니다. ETH(취리히 공과대학)가 주관하는 대회로, 바퀴와 다리를 함께 가진 로봇(ANYmal on wheels)으로 주어진 경로를 빠르고 안정적으로 주파하는 것을 겨룹니다.

여기서 한 단계 더 나아가, 현재는 이 휠-족형 로봇에 매니퓰레이터(로봇 팔)를 붙이는 작업을 다른 로봇 업체와 함께 진행하고 있습니다. 대학원 수업을 듣는 학생들은 이 연구와 연계된 팀 프로젝트를 하게 될 것이라고 예고했습니다.

슬라이드 내용 정리

세 번째 연구 주제: Diffusion policy(확산 정책)를 이용한 휴머노이드 양팔로봇 제어. 부제는 (In progress) 다크팩토리(Dark Factory) 구현을 위한 휴머노이드 양팔제어 알고리즘 개발입니다. 화면은 휴머노이드 로봇을 시뮬레이션 환경에서 다루는 디지털 트윈 스크린샷입니다.

교수님 설명

휴머노이드의 양팔 조작은 Diffusion policy(확산 정책) 기법으로 개발하고 있습니다. 목표 응용처는 다크팩토리(Dark Factory)입니다. 다크팩토리는 사람이 없어 조명조차 필요 없는 무인 공장을 말하는데, 여기서는 LED 조명을 달고 일정한 온도에서 작업할 수 있도록 하는 컨셉으로 진행 중입니다.

이는 회사 시절 담당했던 자율 로봇·휴머노이드 경험(반도체 공장처럼 위험한 작업을 휴머노이드로 대체)과 디지털 트윈 환경에서의 강화학습 경험이 이어진 연구입니다.

보충 설명

Diffusion policy는 이미지 생성에 쓰이는 확산 모델(노이즈에서 점점 깨끗한 결과로 복원하는 방식)을 로봇 동작 생성에 가져온 기법입니다. 미래의 동작 시퀀스를 노이즈에서 단계적으로 정제해 만들어 내며, 양팔 조작처럼 여러 동작이 동시에 얽히는 복잡한 작업에서 부드럽고 일관된 움직임을 잘 만들어내는 것으로 알려져 있습니다.

슬라이드 내용 정리

AD(자율주행) 팀의 주제: 강화학습 및 Latent dynamics(잠재 동역학)를 이용한 복잡한 장애물 내 Navigation. 표는 제어 기법의 발전 단계를 보여줍니다. 열은 Nonlinear MPC → Stochastic MPC → Nonlinear MPC +RL → Stochastic MPC +RL 순이고, 맨 오른쪽(Stochastic MPC +RL)에 "Current" 표시(현재 위치)가 붙어 있습니다. 행은 Path Tracking(경로 추종), Collision Avoidance(충돌 회피 — AEB 자동 긴급 제동 / AES 자동 긴급 조향), Platform(실차 플랫폼)입니다. 표의 O 표시는 각 기법으로 구현이 완료된 기능을 뜻하며, AES(조향 회피)는 RL을 결합한 단계에서 달성됩니다.

교수님 설명

또 다른 축은 강화학습 + 잠재 동역학(Latent dynamics)으로 복잡한 장애물 환경을 자율주행하는 연구입니다. 자율주행 기능은 크게 두 가지인데, 길을 따라가는 경로 추종(Path Tracking)과 충돌을 막는 충돌 회피(Collision Avoidance)이고, 회피는 다시 브레이크를 밟는 제동(AEB)과 핸들을 꺾는 조향(AES)으로 나뉩니다.

발전 단계를 보면, 박사과정 때 전공한 비선형 MPC로 경로 추종과 제동까지 구현했습니다. 그런데 비선형 MPC는 장애물이 열려 있을 때 지역 최소점(local minima)에 빠지는 문제가 있어, Stochastic MPC(확률적 MPC)로 경로 후보를 무작위로 뿌리고 그중 원하는 경로를 골라 진행하는 방식으로 개선했습니다.

최종적으로는 이 확률적 MPC에 강화학습을 결합한 TD-MPC 기법으로 가고 있습니다. 핵심은 일반 동역학이 아니라 잠재 동역학(Latent dynamics)을 사용하고, 가치 함수(Value Function)를 신경망으로 매칭했다는 점이며, 자세한 내용은 뒤에서 다시 설명합니다.

보충 설명

Latent dynamics는 복잡한 센서 입력(라이다·이미지 등)을 그대로 예측하는 대신, 압축된 잠재 공간(latent space)에서 미래 상태를 예측하도록 학습한 동역학 모델입니다. 차원이 줄어들어 예측·계획이 빨라지고, 장애물이 많은 환경에서도 효율적으로 미래를 내다볼 수 있습니다. TD-MPC는 이 잠재 동역학 모델로 단기 미래를 굴려 계획하되, 그 너머의 장기 가치는 강화학습으로 배운 가치 함수 네트워크로 대체해, MPC의 계획 능력과 RL의 장기 안목을 결합한 기법입니다.

Part 3슬라이드 11~16

03휠레그드 로봇과 라스트마일 자율배송 (1)

slide 11
슬라이드 11 · Stochastic MPC ↔ TD-MPC 수식 비교
slide 12
슬라이드 12 · 휠레그드 로봇의 민첩성(Agility)
slide 13
슬라이드 13 · WLR을 이용한 도심 라스트마일 배송
slide 14
슬라이드 14 · First/Middle/Last mile 개념
slide 15
슬라이드 15 · 플랫폼별 성능 비교표
slide 16
슬라이드 16 · 세 가지 제어 전략 목차
슬라이드 내용 정리

AD팀의 연구: 강화학습잠재 동역학(Latent dynamics)을 이용해 복잡한 장애물 환경에서 자율주행(Navigation)을 하는 내용. 왼쪽의 일반적인 확률적 MPC(Ordinary stochastic MPC)와 오른쪽의 TD-MPC를 나란히 비교합니다.

동역학 식 — 왼쪽은 실제 상태 x에 대한 확률 미분방정식 dx_t = f(x_t)dt + G(x_t)(u_t dt + √Σ dw), u_t ~ N(μ_t, σ_t²I). 오른쪽은 상태를 인코더 h_θ로 압축한 잠재상태 z의 동역학 z_{t+1} = d_θ(z_t, a_t) = d_θ(h_θ(x_t), a_t)이며 행동은 정책망(Policy network) a_t ~ π_θ(z_t)으로 뽑습니다.

비용 vs 리턴 — 왼쪽은 누적 비용 X̂(x̄) = Σ q(x̄_k)Δt + E(x_N)을 최소화. 오른쪽은 할인된 리턴(returns) X̂(ẑ) = Σ γ^k Q_θ(ẑ_k, a_k) + γ^N Q_θ(ẑ_N, a_N)으로, 상태-행동 가치함수(State-action value function) Q_θ를 사용합니다.

최적 제어 입력 — 양쪽 모두 비용/리턴에 대한 지수가중 평균(소프트맥스 형태) u*_k = [Σ exp(-1/λ · X̂) v_{k,i}] / [Σ exp(-1/λ · X̂)]로 구합니다. 즉 구조는 같고, "실제 상태+비용" 대신 "잠재 상태+가치함수"로 바꾼 것이 핵심.

교수님 설명

장애물이 매우 많고 빠르게, 예측 불가능하게 움직이는 인도(India) 시장 같은 환경에서는 일반적인 MPPI만으로는 충돌을 막기 어렵다고 합니다. 이를 해결하려고 라이다(LiDAR) 정보를 통째로 가져와 잠재 동역학(Latent dynamics) 모델 안에 넣었고, 그 결과 회피 성능이 약 10% 향상되었다고 설명합니다.

처음에는 확률적 MPC(Stochastic MPC)를 썼는데, 길을 회색으로 무수히 뿌려(샘플링) 그중 파란색의 원하는 경로를 고르는 방식이었습니다. 다만 욕심 많은 탐색은 지역 최소값(local minima)에 빠지는 문제가 있어서, 여기에 강화학습을 결합한 TD-MPC로 발전시켰다고 합니다.

두 그림의 차이를 강조하는데, 왼쪽은 순수 확률적 MPC, 오른쪽은 거기에 RL을 합친 TD-MPC입니다. 핵심은 ⑴ 일반 동역학이 아니라 잠재 동역학을 썼다는 점, ⑵ 비용 대신 신경망 가치함수(value function)로 미래 가치를 평가했다는 점이며, 자세한 내용은 뒤에서 다시 다루겠다고 예고합니다.

보충 설명

MPPI(Model Predictive Path Integral)는 가능한 미래 행동들을 무작위로 잔뜩 시뮬레이션해 보고, 비용이 낮은 궤적에 더 큰 가중치를 줘 평균 내는 방식의 샘플링 기반 MPC입니다. 슬라이드의 지수가중 평균 식이 바로 그 가중 평균에 해당합니다.

TD-MPC의 아이디어는, 짧은 미래만 모델로 굴려 보고 그 끝값을 미리 학습해 둔 가치함수 Q로 "이 다음부터의 가치"를 한 번에 메꾸는 것입니다(TD = Temporal Difference). 덕분에 먼 미래까지 일일이 시뮬레이션하지 않아도 되고, 고차원 상태를 잠재공간(latent space)으로 압축해 계산이 가벼워집니다.

슬라이드 내용 정리

본격적인 라스트마일 배송(Last mile delivery) 도입부입니다. 휠레그드 로봇(Wheel-legged robot, WLR)의 장점으로 민첩성(Agility)을 제시합니다. 사진은 험지·경사지에서 점프하고 다리를 접었다 펴며 이동하는 휠레그 플랫폼의 모습입니다.

교수님 설명

오늘 주제인 휠레그드 로봇 소개로 넘어갑니다. 영상에서 보여준 것은 중국 유니트리(Unitree)의 플랫폼(B2)처럼, 바퀴와 다리를 함께 가진 로봇이 평지에서는 바퀴로 빠르게 굴러가고 계단·험지에서는 다리로 극복하는 모습입니다.

이렇게 잘 움직이는 로봇을 "어디에 쓸 것인가"가 중요한데, 크게 두 가지 응용을 듭니다. 하나는 위에 디스플레이/미디어를 얹어 안내용으로 쓰는 것, 다른 하나가 바로 배송입니다. 특히 배송 쪽에서 활용 가치가 크다고 강조합니다.

슬라이드 내용 정리

WLR의 뛰어난 민첩성이 도심 전역의 라스트마일 배송에 매우 적합하다는 슬라이드. 오른쪽 사진은 스위스 취리히(8046 Zürich)에서 RIVR One 로봇이 배송 밴에서 내려 실제 집 문 앞까지 물건을 전달하는 장면이고, 왼쪽은 문 앞에 도착한 모습입니다.

교수님 설명

미국·유럽에서는 실제로 이런 플랫폼이 문 앞까지(door-to-door) 배송하는 서비스로 활용되고 있다고 소개합니다. 영상 속 RIVR 회사 로봇이 대표적입니다.

운용 방식도 설명하는데, 도시와 도시 사이 장거리는 로봇이 직접 가기 어려우니 트럭에 실려 이동하다가, 목적 도시에 도착하면 트럭에서 내려 계단이나 턱을 넘으며 집 앞까지 가는 식으로 쓰입니다. 계단·문턱을 잘 오를 수 있어 마지막 구간에 특히 유리하다는 점을 짚습니다.

슬라이드 내용 정리

배송 단계를 First mile → Middle mile → Last mile로 나눈 개념도. 퍼스트·미들 마일은 트럭·비행기 등으로 공장→창고→창고로 대량 운송하는 구간이고, 라스트 마일은 최종 사용자에게 전달하는 마지막 구간(그림에서 붉은 박스 강조)으로 드론, 모바일 로봇, WLR, 족형(다리형) 로봇 등이 후보입니다. WLR이 여러 측면에서 다른 플랫폼을 능가한다고 적혀 있습니다.

교수님 설명

라스트마일이라는 용어를 풀어 설명합니다. 배송은 크게 세 단계로 나뉘는데, 퍼스트 마일미드 마일은 비행기나 배로 대륙·도시 간 옮기고 다시 트럭으로 옮기는 단계, 라스트 마일은 트럭에서 내려 사용자 집 앞까지 가는 마지막 단계라고 합니다.

지금 이 마지막 구간은 사람(배달원)이 맡고 있는데, 바로 그 부분을 로봇으로 대체하려는 것이 목표입니다. 학생들에게 "드론·모바일 로봇·족형 로봇 중 무엇이 가장 좋겠냐"고 물으며 자연스럽게 다음 비교표로 넘어갑니다.

슬라이드 내용 정리

플랫폼별 성능 비교표. 기존 플랫폼(바퀴형 로봇, 족형 로봇, 드론)과 제안 플랫폼(바퀴-족형 로봇, 즉 WLR)을 물류 배송 측면의 네 항목으로 비교합니다.

· 지형 적응성(문턱/계단/험지 극복): 바퀴형 낮음(평지 중심), 족형 높음, 드론 매우 높음, 바퀴-족형 매우 높음
· 에너지 효율(지속 운용 시간): 바퀴형 높음, 족형 낮음, 드론 매우 낮음, 바퀴-족형 높음(순수 보행 대비 83% 절감)
· 페이로드(적재중량): 바퀴형 높음, 족형 중간, 드론 낮음, 바퀴-족형 높음
· 속도(기동성): 바퀴형 빠름, 족형 느림, 드론 중간, 바퀴-족형 빠름

교수님 설명

각 플랫폼의 장단점을 짚습니다. 드론은 높은 건물로 직행할 수 있어 지형 적응성은 최고지만, 무거운 짐을 들면 배터리가 빨리 닳아 에너지 효율이 너무 낮습니다. 바퀴형은 평지에서 에너지 효율이 좋지만 계단·턱을 못 넘습니다. 족형은 지형 적응은 좋아도 에너지 효율이 낮고 실을 수 있는 중량이 적습니다.

반면 휠레그드(바퀴-족형)는 평지에서는 바퀴로 굴러 에너지 효율이 매우 좋고(순수 보행 대비 83% 절감), 계단·험지는 다리로 극복하며, 바퀴 덕분에 적재량과 속도도 우수합니다. 오늘 강의 컨셉이 휠레그드인 만큼, 정답은 없지만 종합적으로 WLR이 가장 우수하다고 결론짓습니다.

슬라이드 내용 정리

강의 본론 목차(섹션 구분) 슬라이드. 휠레그드 로봇을 구체적으로 어떻게 제어할지에 대해 세 가지 전략을 제시합니다.

· Introduction
· Control Strategy 1) MPPI [1],[2]
· Control Strategy 2) Reinforcement Learning(RL) [3]
· Control Strategy 3) MPPI + RL

하단 참고문헌은 RSL(ETH Zürich)의 휠레그드 로봇 whole-body MPC 논문과 RL 기반 사족 제어 논문 등입니다.

교수님 설명

"이제 휠레그드 로봇을 구체적으로 어떻게 제어할 것인가"를 본격적으로 다루는데, 방법이 크게 세 가지라고 안내합니다. ① MPPI(샘플링 기반 모델예측제어), ② 강화학습(RL), 그리고 ③ 둘을 합친 MPPI + RL입니다.

앞서 보여준 TD-MPC가 바로 이 세 번째 "MPPI + RL" 흐름의 연장선임을 암시하며, 이어지는 본론에서 각 전략을 차례로 설명하겠다고 예고합니다.

Part 4슬라이드 17~21

04휠레그드 로봇과 라스트마일 자율배송 (2)

slide 17
슬라이드 17 · MPC 최적제어 문제 정식화와 구속조건 처리
slide 18
슬라이드 18 · 상태/입력 벡터와 운동방정식 모델링
slide 19
슬라이드 19 · 롤링 구속조건과 휠-레그드의 핵심 차이
slide 20
슬라이드 20 · 오늘 배울 MPPI 제어 전체 개요
slide 21
슬라이드 21 · MPPI 출처(논문·강의노트·코드)
슬라이드 내용 정리

MPC 정식화(MPC Formulation) — 최적제어 문제를 다음처럼 세웁니다.

최소화: minimize_u(·)   φ(x(T)) + ∫₀ᵗ l(x(t),u(t),t)dt

제약: ẋ(t) = f(x(t),u(t),t), x(0) = x₀, 그리고 파란 박스 안의 세 구속조건 g₁(x,u,t)=0, g₂(x,t)=0, h(x,u,t)≥0.

구속조건을 다루는 방법(표):

g₁ 상태-입력 등식 구속(State-input equality) → 라그랑지안(Lagrangian) 방법
g₂ 순수 상태 등식 구속(Pure state equality) → 페널티(Penalty) 방법
h 부등식 구속(Inequality) → 완화 배리어 함수(Relaxed barrier function)

Q) 이 MPC 정식화를 어떻게 푸는가? A) DDP 기반 SLQ.

교수님 설명

휠-레그드(Wheeled-Legged) 로봇을 구체적으로 어떻게 제어하느냐 하면 크게 세 가지 방법이 있는데, 그 첫 번째가 여기 나오는 MPC(Model Predictive Control)입니다. 처음 보시면 "이게 무슨 말이지" 싶고 수식도 많은데, 이건 출처 자료에서 그대로 가져온 거라 수식 하나하나를 증명·시험하려는 게 아닙니다. 그냥 "이런 게 있구나" 하고 큰 흐름만 따라오시면 됩니다.

왼쪽에 보이는 게 일반적인 MPC의 형태예요. 비용 함수(목적함수)가 있고, 그 아래에 시스템 동역학(ẋ=f)과 초기조건, 그리고 파란 박스로 묶인 구속조건들이 있습니다. 오른쪽 그림은 그 수식이 적용되는 실제 로봇(다리 달린 형태)을 나타낸 거고요.

MPC 최적제어의 큰 장점 중 하나가 바로 이런 구속조건을 아주 잘 다룰 수 있다는 점입니다. 구속조건은 타입에 따라 g₁, g₂, h로 나뉘는데, 각각 라그랑지안 방법, 페널티 방법, 완화 배리어 함수라는 기존의 방법으로 처리합니다. 푸는 방식은 DDP 기반 SLQ를 쓴다는 정도만 알아두시면 됩니다.

보충 설명

MPC는 "지금부터 일정 시간(예측 지평) 동안 로봇이 어떻게 움직일지 미리 시뮬레이션해서, 비용을 가장 적게 하는 입력을 골라 한 스텝 실행하고, 다음 순간 다시 계산"을 반복하는 제어법입니다. 등식 구속(=0)은 "반드시 만족해야 하는 조건"(예: 발이 땅에 붙어 있어야 함), 부등식 구속(≥0)은 "넘으면 안 되는 한계"(예: 관절 토크 한계)로 생각하면 됩니다. DDP(Differential Dynamic Programming)/SLQ는 이런 최적제어 문제를 빠르게 푸는 대표적 수치 알고리즘입니다.

슬라이드 내용 정리

모델링(Modeling) — 상태·제어 입력 벡터

상태 벡터: x(t) = [θᵀ pᵀ ωᵀ vᵀ q_jᵀ]ᵀ ∈ ℝ^(12+n_j)
여기서 θ=몸통 자세(Torso orientation), p=위치(position), ω=COM 각속도(angular rate), v=선속도(linear velocity), q_j=관절 위치(Joint position).

제어 입력 벡터: u(t) = [λ_Eᵀ u_jᵀ]ᵀ ∈ ℝ^(n_E+n_j)
λ_E=말단부 힘(End-effector force), u_j=관절 속도(Joint velocity).

핵심 메모: 바퀴 관련 항은 제외된다(Wheel-related terms are excluded). 로봇의 바퀴는 고정된 관절 위치를 가진 "움직이는 점 접촉(moving point contact)"으로 모델링 → 최적화 시간이 늘어나지 않는다.

운동방정식(Equation of Motions): θ̇=T(θ)ω, ṗ=R_WB(θ)v, ω̇=I⁻¹(−ω×Iω+Σ r_E_i(q_j)×λ_E_i), v̇=g(θ)+(1/m)Σ λ_E_i, q̇_j=u_j.

교수님 설명

그림을 보시면 일반 다리 로봇과 달리 발 끝에 바퀴가 달려 있죠. 그러면 자연스럽게 이런 의문이 듭니다. "다리만 움직이면 되던 게, 이제 바퀴까지 굴려야 하니까 자유도(DOF)가 늘어나는 거 아닌가? 바퀴가 4개면 바퀴 회전 4개만큼 자유도가 추가되는 거 아닌가?"

그런데 실제로는 자유도가 증가하지 않습니다. 비결은 모델링 방식에 있어요. 바퀴를 "고정된 관절 위치에서 미끄러지듯 움직이는 점 접촉"으로 다루기 때문에, 바퀴 회전 항을 따로 상태에 넣지 않아도 됩니다. 슬라이드 오른쪽 박스에 적힌 대로 바퀴 관련 항은 제외되는 거죠.

덕분에 상태 벡터는 몸통 자세·위치·각속도·선속도·관절 위치로만 구성되고, 최적화에 들어가는 변수 수가 늘지 않아 계산 시간도 그대로 유지됩니다. 운동방정식 자체는 다리 로봇에서 쓰던 표준 형태(자세·위치·각운동량·병진운동량·관절)와 동일하게 정리됩니다.

슬라이드 내용 정리

모델링 — 롤링 구속조건(Rolling constraint). 발 접촉점에 걸리는 세 가지 조건(파란 박스):

λ_E_i ∈ C(n, μ_C) : 마찰 원뿔(Friction cone) — 접촉력이 미끄러지지 않는 범위 안에 있어야 함
π_E_i,⊥(v_E_i(x,u)) = 0 : 롤링에 수직(Perpendicular to rolling) 방향 구속
v_E_i(x,u)·n = 0 : 롤링에 법선(Normal to rolling) 방향 구속

그리고 π_E_i,∥(v_E_i(x,u)) = 0 : 롤링 구속(Rolling constraint) — 삭제됨(취소선)

요지: 바퀴 회전을 위해 롤링 구속을 제거한다 → 이것이 다리 로봇(Legged robot)과 휠-레그드 로봇(WLR)의 핵심 차이.

교수님 설명

파란 박스의 세 가지가 접촉점에 걸리는 구속조건입니다. 첫째는 마찰 원뿔로, 바퀴가 굴러갈 때 수직항력 방향과 관련된 조건이고요. 둘째 초록색은 앞으로 나아가는 방향, 즉 바퀴가 지면을 박차고 추진하는 견인력(traction force)과 관련된 조건, 셋째는 화면 밖으로 뚫고 나오는 측면 방향으로 "비틀려서는 안 된다"는 조건입니다.

여기서 결정적인 차이가 나옵니다. 일반적인 다리 로봇(축구공처럼 발이 땅에 딱 닿는 경우)은 "발이 땅에 닿았을 때 미끄러지면 안 된다"는 롤링 구속(no-slip)이 반드시 들어갑니다. 그런데 바퀴는 원래 굴러가야 하니까 그 방향으로는 미끄러져도(굴러가도) 된다는 거예요.

그래서 휠-레그드 로봇에서는 "미끄러지면 안 된다"는 롤링 구속을 그냥 없애 버림으로써 문제를 해결합니다. 바퀴 자유도를 추가하지 않으면서, 오히려 원래 있던 구속조건을 하나 빼버리니 문제가 더 단순해진 거죠. 보통은 "다리에 바퀴까지 붙었으니 더 어렵겠지" 생각하는데, 실제로는 자유도도 안 늘고 구속도 사라져서 오히려 쉬워지는, 좀 특이한 연구 분야가 됩니다.

보충 설명

마찰 원뿔(friction cone)은 "접촉력이 이 원뿔 안에 있어야 미끄러지지 않는다"는 물리 조건을 기하학적으로 표현한 것입니다. 다리 로봇은 발이 한 점에 고정(no-slip)돼 있다고 보고 그 방향 속도를 0으로 묶지만(=0), 바퀴는 구르는 방향으로 속도가 0이 아니어도 정상입니다. 그래서 그 한 줄의 등식 구속을 지우는 것만으로 "바퀴 굴림"이 자연스럽게 표현됩니다 — 모델을 더 복잡하게 만드는 대신, 제약을 빼는 방향으로 단순화했다는 점이 인상적입니다.

슬라이드 내용 정리

Part 1 - 전체 개요(Overview): 오늘 무엇을 배우나
주제(Topic): 모델 예측 경로 적분(Model Predictive Path Integral, MPPI) 제어.

Part 1 흐름: Control Affine·위너 과정(Wiener process) → 확률 미분방정식(Stochastic Differential Equation) → 이차 비용함수(Quadratic Cost) → 가치함수(Value function, 기댓값) → 재귀 형태(Recursive form, 최적성의 원리) → PDE → 확률적 HJB(Stochastic HJB, 2차 테일러 급수) → 최적제어(Optimal control)·비선형 PDE.

Part 2 흐름: 선형 PDE(Linear PDE) → 경로 적분 제어(Path Integral Control, Feynman-Kac 보조정리) → MPPI(Model Predictive Concept) → 가정(Assumption) → 트레이스(Trace) → 변환(Transformation).

교수님 설명

여기서부터가 오늘의 본 주제인 MPPI 제어의 전체 지도입니다. 내용을 Part 1과 Part 2로 나눠서, 확률 미분방정식에서 출발해 가치함수와 HJB 방정식을 거쳐 최종적으로 MPPI라는 알고리즘에 도달하는 큰 흐름을 보여줍니다.

MPPI를 직관적으로 설명하면, 자율주행에 적용한 예가 있습니다. 회색으로 변동이 많이 보이는 부분이 있는데, 흰색 경로들을 무수히 뿌리고(샘플링) 그중 가장 좋은 경로들을 가중 평균으로 합쳐서 빨간색 최종 경로를 뽑아내는 방식이에요. 이렇게 무작위로 여러 경로를 뿌려 최적을 찾는 게 MPPI(또는 PPI)의 핵심이고, 초록색 로봇(에이전트)의 목표는 우리가 따라가야 하는 검은색 기준선을 잘 추종하는 겁니다.

이 블록다이어그램의 각 단계는 뒤 슬라이드에서 하나씩 자세히 풀어갈 거예요. 지금은 "확률적으로 경로를 잔뜩 뿌려서 좋은 걸 골라 합친다"는 큰 그림과, Part 1·Part 2가 어떻게 연결되는지만 잡고 넘어가시면 됩니다.

슬라이드 내용 정리

MPPI 출처(Sources)

논문(Paper): Williams, Grady, et al. "Aggressive driving with model predictive path integral control." 2016 IEEE ICRA(로봇·자동화 국제학회), IEEE, 2016.

강의노트(Lecture note): Hannes Homburger, Jasper Hoffmann (HTWG Konstanz · University Freiburg), Lecture 10: MPPI Control.

관련 코드(Related codes): github.com/MizuhoAOKI/python_simple_mppi, github.com/kohonda/mppi_playground, github.com/UM-ARM-Lab/pytorch_mppi.

교수님 설명

이 슬라이드는 이어지는 MPPI 유도와 설명이 어디서 왔는지 출처를 정리한 페이지입니다. MPPI를 대중적으로 알린 대표 논문이 2016년 Williams 등의 "공격적 주행(Aggressive driving)" 논문이고, 강의 전개는 HTWG Konstanz·University Freiburg의 강의노트 10강을 많이 참고했습니다.

맨 아래 깃허브 링크 세 개는 MPPI를 직접 돌려볼 수 있는 구현 코드들입니다. 이론 수식이 부담스럽다면, 이런 오픈소스 코드를 받아 간단한 예제부터 실행해 보는 것이 흐름을 체감하는 데 도움이 됩니다. 우리가 앞으로 볼 수식들도 결국 이 자료들에서 가져온 것이라는 점을 기억해 두세요.

Part 5슬라이드 22~27

05제어 전략 개요와 MPC 기반 제어 (1)

slide 22
슬라이드 22 · 제어-어파인 SDE와 위너 프로세스(노이즈의 원천)
slide 23
슬라이드 23 · ODE(결정적) vs SDE(비결정적) 식 비교
slide 24
슬라이드 24 · 결정적·확률적 궤적 겹쳐보기
slide 25
슬라이드 25 · 비용함수 J와 가치함수 V
slide 26
슬라이드 26 · 가치함수 곡면과 제어 정책 비교
slide 27
슬라이드 27 · 정책 유형 비교(최적/공격적/약한 제어)
슬라이드 내용 정리

1. Dynamics제어-어파인 확률미분방정식(control-affine SDE)을 소개합니다.

식: dx_t = f(x_t)dt + G(x_t)u_t dt + B(x_t)dw (빨간 항 + B(x_t)dw가 핵심). 여기서 x_t는 상태(state), u_t는 제어입력(control input), dw위너 프로세스(Wiener process).

제어가 들어가는 형태로는 제어-어파인 G(x_t)u_t (제어입력이 선형으로 곱해짐)와 비-어파인 제어(non-affine) G(x_t, u_t)가 있고, dw(위너 프로세스)가 들어가면 시스템이 확률적(Stochastic)이 됩니다.

아래 박스: dw ~ N(0, dt) — 이 예시에서는 평균 0, 분산 dt인 가우시안 분포. 그래프는 위너 프로세스 W_t가 "무작위성의 원천(The Source of Randomness)"임을 보여줍니다.

교수님 설명

제어를 배웠으니 상태공간(state space) 모델은 다 알고 있을 겁니다. 평소 보던 상태방정식에서, 여기 보면 빨간색 항 하나가 추가됩니다. 바로 B(x_t)dw 항인데, 이 dw위너 프로세스입니다.

위너 프로세스의 dw는 사실 그냥 노이즈(noise)예요. 원래 깔끔하던 방정식에 이 노이즈를 일부러 더해서, 일반 방정식이 아닌 스토캐스틱(stochastic, 통계적) 방정식으로 만든 것이고, 줄여서 SDE라고 부릅니다. 앞에서 MPPI 결과로 회색 경로(샘플 궤적)를 잔뜩 뿌렸던 게 기억나죠? 그 무작위로 흩뿌려진 회색 경로들이 바로 이 빨간색 항(노이즈) 때문에 생긴 결과입니다.

보충 설명

위너 프로세스는 브라운 운동을 수식화한 것으로, 매 순간 독립적인 작은 가우시안 충격이 누적되는 과정입니다. 그래프가 들쭉날쭉한 이유가 이것입니다. "제어-어파인"이란 제어입력 uG(x)·u 꼴로 1차(선형)로만 들어간다는 뜻이라, 최적화가 한결 다루기 쉬워집니다. 이 노이즈 항은 뒤에서 다룰 MPPI(Model Predictive Path Integral)에서 수백 개의 후보 궤적을 만들어내는 근원이 됩니다.

슬라이드 내용 정리

ODE vs SDE를 나란히 비교합니다.

왼쪽 일반 미분방정식(ODE)결정적(Deterministic)! 식: dx_t = f(x_t)dt + G(x_t)u_t dt. 노이즈 항이 없습니다.

오른쪽 확률미분방정식(SDE)비결정적(Non-Deterministic)! 식: dx_t = f(x_t)dt + G(x_t)u_t dt + B(x_t)dw (빨간 항이 추가).

그래프: ② 위너 프로세스가 입력으로 들어가, ① 결정적 해(파란색, 노이즈 없이 매끈하게 감쇠)에 더해지면 ③ 확률적 해(빨간색, 들쭉날쭉)가 나옵니다.

교수님 설명

우리가 아는 상태공간 모델은 왼쪽 파란색처럼 예쁘게 매끈하게 나옵니다. 그런데 오른쪽처럼 노이즈 항을 더하면, 오히려 불안정하고 들쭉날쭉한 빨간색 다이나믹스가 만들어집니다.

겉보기엔 일부러 모델을 망가뜨린 것 같지만, 현실에서는 사실 빨간색이 더 가깝습니다. 실제 환경에는 모델 오차도 많고 외란도 많으니까요. 왼쪽은 이상적인 세계, 오른쪽은 현실에 더 가까운 세계라고 보면 됩니다. MPPI의 핵심 중 하나가 바로 이렇게 모델에 노이즈를 더해 스토캐스틱한 모델로 만든 것입니다. 나중에 스토캐스틱 MPC를 보면 "아, 모델에 노이즈를 추가했구나" 정도로 받아들이면 됩니다.

슬라이드 내용 정리

ODE vs SDE의 결론 그래프. ④ "Comparison: Deterministic vs Stochastic Overlay"에서 파란색(결정적, ODE)과 빨간색(확률적, SDE)을 한 그림에 겹쳐 보여줍니다.

하단 박스 결론: "위너 프로세스(또는 노이즈)가 다이나믹스를 비결정적으로 만든다(Wiener process makes dynamics non-deterministic!)"

교수님 설명

비교 결론입니다. 기존의 결정적(deterministic) 상태공간 모델은 파란색처럼 매끈하게 나오는 반면, 노이즈를 더한 스토캐스틱 모델은 빨간색처럼 불안정한 형태를 갖습니다.

한 문장으로 정리하면 — 위너 프로세스(노이즈)는 다이나믹스를 결정적이지 않게, 즉 확률적으로 만든다는 것입니다.

슬라이드 내용 정리

2. Value function — 먼저 비용(Cost)을 정의합니다.

J = E(x_T) + ∫_t^T ( q(x_τ) + (1/2)·u_τ(x_τ)ᵀ R(x_τ) u_τ(x_τ) ) dτ

구성: 2차 작용 비용(quadratic action cost) L(x_τ,u_τ) = q(x_τ) + (1/2)·u_τᵀ R u_τ (적분 안의 러닝 코스트), 그리고 종단 비용(terminal cost) E(x_T).

가치함수(Value function): V(x_t, t) = min_u E_{x~Q}[ E(x_T) + ∫_t^T (...) dτ ]. 여기서 min_u E_{x~Q}는 "제어입력을 적용한 다이나믹스를 따라 만들어진 궤적들에 대한 기대값(Expectation)"을 의미. 맨 아래엔 그 다이나믹스가 SDE dx_t = f(x_t)dt + G(x_t)u_t dt + B(x_t)dw임을 명시.

교수님 설명

최적 제어를 하려면 먼저 비용함수를 정리합니다. 식에서 E(x_T)는 마지막 시점의 비용인 터미널 코스트(terminal cost), 적분 안쪽은 중간중간 쌓이는 러닝 코스트(running cost)입니다. 최적화의 목표는, 예를 들어 y = x²가 있으면 그 를 최소화하듯이, 이 비용을 최소화하는 것입니다. 그 비용을 정리한 것을 가치함수(value function)라고 부릅니다.

좀 특이한 점은 가치함수 안에 기대값(Expectation) E_{x~Q}가 들어 있다는 것입니다. 앞에서 회색 경로를 수백 개로 잔뜩 뿌렸죠? 궤적이 하나가 아니라 여러 개이기 때문에, 그것들을 다 더해 평균을 내야 합니다. 그래서 단순한 비용이 아니라 "기대값"으로 정의되는 것이고, 여기 들어가는 x는 방금 본 그 확률미분방정식(SDE)을 따라 생성된 상태입니다.

보충 설명

비용함수가 (1/2)uᵀRu 꼴인 건 제어를 많이 쓸수록(에너지) 벌점을 주고, q(x)는 상태가 목표에서 벗어날수록 벌점을 주는 구조입니다. 즉 "오차를 줄이되 힘은 적게 쓰라"는 절충을 수식으로 표현한 것이고, 이 균형점을 찾는 게 곧 최적 정책입니다. 결정적 문제라면 궤적이 하나로 정해지지만, 노이즈가 있으니 가능한 궤적이 무수히 많아 기대값(평균)으로 평가하는 것입니다.

슬라이드 내용 정리

같은 가치함수 식 아래에 두 그래프를 둡니다. 왼쪽 "Optimal Value Function Surface"(최적 가치함수 곡면, 시간·상태에 대한 3차원 곡면), 오른쪽 "Control Policy Comparison"(Optimal vs Aggressive vs Weak 정책 비교).

주석 ① 시간이 지날수록 cost-to-go(잔여 비용) 값은 감소하는 경향, ② 제어 정책(예: LQR)이 상태를 조절(regulate)함, ③ 위너 프로세스로 인한 노이즈가 곡면에 섭동(perturbation)을 만듦.

교수님 설명

가치함수도 그냥 y = x² 꼴이라고 생각하면 편합니다. 그 형태의 문제를 푸는 것인데, 화면이 밝아 잘 안 보이지만 여기서는 시간과 상태에 대해 3차원으로 쭉 펼쳐진 곡면 형태입니다.

그림에서 읽을 핵심은 세 가지입니다. 시간이 흐를수록 남은 비용(cost-to-go)은 점점 줄어드는 경향을 보이고(①), LQR 같은 제어 정책이 상태를 목표로 끌어와 조절하며(②), 위너 프로세스 노이즈 때문에 매끈한 곡면 위에 잔물결 같은 섭동이 생깁니다(③). 오른쪽 그래프는 같은 상황에서 정책을 다르게 줬을 때(최적/공격적/약함) 상태가 어떻게 다르게 흘러가는지를 비교한 것입니다.

슬라이드 내용 정리

세 가지 정책 유형(Policy Type)을 표로 비교합니다.

① 최적(Optimal, 검정): 균형 잡힌 LQR 해 / 효율적 회복 / cost-to-go는 "운 나쁜" 외부 충격 때문에만 약간 상승 / 비최적 사유는 N/A — 총비용 J를 최소화하는 유일해이기 때문.

② 공격적(Aggressive, 파랑): 고에너지·과제어(over-control) / 노이즈에 격렬히 반응 / 노이즈와 싸우느라 과도한 에너지 사용 Ru²로 비용 급등 / 오차는 잘 줄이지만 에너지 비용이 너무 커서 비효율적(Inefficient).

③ 약한(Weak, 빨강): 저에너지·과소제어(under-control) / 노이즈에 너무 느리게 반응 / 상태 오차 Qx²가 누적돼 비용 급격히 상승 / 에너지는 아끼지만 오차 벌점을 못 줄여 효과 없음(Ineffective).

교수님 설명

(이 표는 대본에서 직접 설명한 부분이 거의 없어, 앞서 비용함수에서 다룬 "오차 벌점 Qx² vs 에너지 벌점 Ru²의 절충" 논리로 정리합니다.) 제어를 너무 세게 하면(공격적·파랑) 노이즈마다 과민하게 반응해 에너지 비용 Ru²이 폭발하고, 너무 약하게 하면(약함·빨강) 오차가 그대로 쌓여 상태 벌점 Qx²이 치솟습니다.

최적 정책(검정)은 이 둘 사이의 균형점에 있어, 외부 충격이라는 "운"이 나쁠 때만 비용이 조금 오를 뿐 총비용 J를 최소화하는 유일한 해가 됩니다. 결국 좋은 제어란 힘을 무작정 세게/약하게 쓰는 게 아니라, 오차와 에너지 두 벌점의 합을 가장 작게 만드는 지점을 찾는 것입니다.

Part 6슬라이드 28~30

06제어 전략 개요와 MPC 기반 제어 (2)

slide 28
슬라이드 28 · 확률적 HJB 방정식 유도 (재귀식 → 테일러 전개)
slide 29
슬라이드 29 · 비용함수·동역학을 대입한 확률적 HJB
slide 30
슬라이드 30 · 최적 제어 u* 도출과 차원의 저주
슬라이드 내용 정리

확률적 HJB 방정식(Stochastic HJB equation)을 유도하는 슬라이드입니다. 출발점은 재귀적 가치함수(recursive value function)입니다.

V(x_t, t) = min_u E_{dx_t~Q}[ L(x_t, u_t)dt + V(x_t + dx_t, t + dt) ]

이를 편미분방정식(PDE) 형태로 쓰면 ∂V(x_t,t)/∂t = min_u ( L(x_t,u_t) + ∂V(x_t+dx_t, t+dt)/∂t ) 입니다.

그 다음 V2차 테일러 전개(2nd order Taylor series)합니다:

V(x+dx, t+dt) ≈ V(x,t) + V_t·dt + V_x^T·dx + (1/2)·dx^T·V_xx·dx

여기서 확률항(노이즈)이 들어간 2차 항이 기댓값을 취하면 (1/2)·tr(B(x_t)B(x_t)^T·V_xx) 라는 트레이스(trace) 항으로 바뀝니다. 정리하면

−V_t = min_u ( L(x_t,u_t) + V_x^T·(dx/dt) + (1/2)·tr(B(x_t)B(x_t)^T·V_xx) )

교수님 설명

이제 본격적으로 밸류 펑션(value function, 가치함수)을 정의하고, "그 다음 문제는 이걸 푸는 것"이라고 하셨습니다. 가치함수 Vy = x² 같은 비용 함수라고 생각하면 직관이 잡힌다고 하셨죠. y = x²의 최소점을 찾을 때 미분해서 y' = 2x = 0, 즉 x = 0을 찾는 것과 똑같은 발상이라는 겁니다.

여기서 특이한 점은 기댓값(Expectation)이 들어간다는 것입니다. 앞에서 회색 경로를 500개씩 잔뜩 뿌렸기 때문에(샘플이 한 개가 아니라 여러 개라서) 그것들을 다 더해서 평균을 내야 하고, 그래서 E[...] 라는 기댓값 형태가 식 안에 들어가 있다고 설명하셨습니다.

이렇게 가치함수를 정의한 뒤, 미래 시점의 V를 테일러 전개해서 현재 식으로 끌어내리는 것이 이 슬라이드의 핵심 작업입니다. 결과적으로 시간 미분 −V_t를 최소화하는 형태의 식이 나오고, 이게 바로 HJB로 가는 길목입니다.

보충 설명

HJB(Hamilton–Jacobi–Bellman) 방정식은 "최적 제어 문제의 최소 비용(가치함수)이 만족해야 하는 편미분방정식"입니다. 일반 ODE(상미분방정식)와 달리, 여기서는 동역학에 위너 과정(Wiener process)이라는 노이즈가 섞여 있어서 확률적(stochastic) 버전이 됩니다. 노이즈가 들어가면 단순 1차 항만으로는 부족하고, 분산에 해당하는 2차 항(tr(BB^T V_xx))이 반드시 살아남습니다 — 이게 결정론적 HJB와 확률적 HJB의 결정적 차이입니다.

슬라이드 내용 정리

앞 식을 이어받아, 각 기호의 정의를 대입하는 슬라이드입니다.

V_t = ∂V(x_t,t)/∂t

비용 함수: L(x_t,u_t) = q(x_t) + (1/2)·u_t^T·R(x_t)·u_t — 상태에 대한 비용 q(x_t)와 제어 입력에 대한 비용 (1/2)u^T R u의 합입니다.

동역학(state-space): dx = f(x_t)dt + G(x_t)·u_t·dt

이들을 모두 대입하면 파란 박스의 확률적 HJB 방정식이 완성됩니다:

−∂V(x_t,t)/∂t = min_u ( q(x_t) + (1/2)u_t^T R(x_t)u_t + (f(x_t)+G(x_t)u_t)^T·V_x + (1/2)tr(B(x_t)B(x_t)^T·V_xx) )

교수님 설명

최적 조절을 할 때 비용 함수(cost function)를 정리한다고 하셨습니다. 비용에는 끝 시점의 비용인 터미널 코스트(terminal cost)와, 경로를 따라가는 동안 계속 쌓이는 러닝 코스트(running cost)가 있습니다. 이 슬라이드의 L = q(x) + (1/2)u^T R u가 바로 그 러닝 코스트의 구체적 형태입니다 — 상태가 목표에서 벗어난 정도(q)와 제어를 세게 쓴 정도(u^T R u)에 모두 벌점을 매기는 구조입니다.

최적화의 목표는 결국 y = x²를 최소화하듯 이 비용을 최소화하는 것이고, 그 대상이 되는 함수를 밸류 펑션(value function)으로 정리한다고 하셨습니다. 여기서 x(상태)는 앞에서 본 노이즈가 섞인 분기형 동역학(dx = f dt + G u dt + 위너항)을 따라 만들어집니다.

이렇게 불안정한(노이즈가 섞인) 동역학을 기준으로 가치함수가 정의되면, 이제 남은 문제는 "이 식을 실제로 푸는 것"입니다. 그 풀이가 다음 슬라이드로 이어집니다.

슬라이드 내용 정리

최적 제어(Optimal Control) u*를 HJB에서 뽑아내는 슬라이드입니다.

HJB의 min_u(...) 안의 괄호 전체를 F(u)라 두고, 최솟값 조건으로 u에 대해 미분해서 0으로 둡니다:

∂F(u)/∂u |_{u=u*} = 0 = R(x_t)·u*(x_t,t) + G^T(x_t)·V_x

이를 풀면 구속조건 없는 2차 문제(unconstrained quadratic problem)의 최적 제어:

∴ u*(x_t,t) = −R^{-1}(x_t)·G^T(x_t)·V_x

u*를 HJB에 다시 넣으면 비선형 PDE가 나옵니다:

−∂V(x_t,t)/∂t = q(x_t) + f^T(x_t)V_x − (1/2)V_x^T·G·R^{-1}·G^T·V_x + (1/2)tr(BB^T V_xx)

결론(파란 박스): PDE를 풀면 V(x_t,t)u*를 얻을 수 있지만, 차원의 저주(curse of dimensionality, n ≥ 4) 때문에 직접 풀기 어렵다 → "어떻게 효율적으로 풀까?"가 Part II의 과제.

교수님 설명

여기서도 핵심만 짚고 가셨습니다. y = x²의 최소점을 미분으로 찾듯이, 비용 식 F(u)를 제어 입력 u로 미분해서 0이 되는 지점을 찾는다는 겁니다. 그 결과가 u* = −R^{-1}G^T V_x라는 깔끔한 최적 제어식입니다.

이렇게 얻은 u*를 HJB에 다시 대입하면, 시간에 대한 미분과 상태에 대한 미분이 얽힌 HJB형 비선형 PDE가 나옵니다. 교수님은 "스토캐스틱에서는 이런 HJB 형태가 정말 자주 나온다"고 하셨고, 식이 척 봐도 풀기 매우 어렵게 생겼다고 하셨죠.

그래서 직접 풀기 어려운 이 PDE를, 마치 중·고등학교에서 부정적분 풀 때 치환(transformation)을 쓰듯이, 변수 변환을 통해 풀 수 있는 획기적인 방법이 있다고 예고하셨습니다. 또한 상태 차원이 n ≥ 4만 돼도 차원의 저주로 계산이 폭발하기 때문에, "효율적으로 푸는 법"이 바로 Path Integral Control의 Part II 주제가 됩니다.

보충 설명

차원의 저주(curse of dimensionality)란, 상태 변수의 개수가 늘어날수록 격자(grid)로 PDE를 풀 때 필요한 계산량이 지수적으로 폭발하는 현상입니다. 예컨대 한 축을 100칸으로 나누면 n=2는 1만 칸, n=4는 1억 칸이 되어 사실상 풀 수 없습니다. 그래서 격자로 직접 푸는 대신, 다음 파트에서 등장할 치환(로그 변환)으로 비선형 HJB를 선형 방정식으로 바꾸고, 이를 수많은 샘플 경로(앞의 회색 경로들)의 가중 평균 — 즉 경로 적분(path integral) — 으로 푸는 것이 이 강의 전체의 클라이맥스입니다.

Part 7슬라이드 31~36

07MPPI — 확률적 경로적분 제어 (1)

slide 31
슬라이드 31 · Part 1 복습: 전체 흐름도
slide 32
슬라이드 32 · Part II 시작
slide 33
슬라이드 33 · Part 2 개요: MPPI 제어
slide 34
슬라이드 34 · 경로적분 제어 + 지수 변환
slide 35
슬라이드 35 · 변환 적용 — 아직 비선형
slide 36
슬라이드 36 · 추가 단순화 → 선형 PDE
슬라이드 내용 정리

Part 1 복습 — 전체 흐름(Overall flow). 지난 강의에서 다룬 유도 과정을 한 장의 도표로 정리한 슬라이드입니다. Part 1의 흐름은 다음과 같습니다.

Control Affine 모델 + 위너 프로세스(Wiener process)확률 미분방정식(Stochastic Differential Equation) → ② 2차 비용 함수(Quadratic Cost function)기대값(Expectation)밸류 함수(Value function)최적성 원리(Principle of optimality) → ③ 재귀형(Recursive form)PDE2차 테일러 급수(2nd order Taylor series)확률적 HJB(Stochastic HJB)최적 제어(Optimal control)비선형 PDE(Nonlinear PDE).

오른쪽의 Part 2(Linear PDE, Feynman-Kac Lemma, Path Integral Control, Model Predictive Concept, MPPI, Assumption, Trace, Transformation)는 회색으로 흐려져 있어 "이번 시간에 다룰 것"임을 표시합니다.

교수님 설명

여기까지가 지난 시간에 쌓아온 줄기입니다. 핵심은 우리가 익히 아는 상태공간(state-space) 모델에 빨간색 항 하나가 붙는다는 점이에요. 원래 깔끔한 파란색 방정식에 위너 프로세스(B·dW) 노이즈가 더해지면, 그 결과가 회색 경로 수백 개를 뿌렸을 때 나오는 불안정한 다이내믹스가 됩니다. 이렇게 노이즈를 더한 방정식을 통계적이라는 뜻에서 스토캐스틱(stochastic) 방정식이라고 부릅니다.

왼쪽 파란색은 이상적인 세계, 오른쪽 빨간색은 노이즈가 섞인 현실에 가까운 세계라고 보면 됩니다. 현실에는 모르는 외란이 많으니 오히려 빨간색이 더 진짜에 가깝죠. 여기서 비용을 정리할 때 끝점에서의 터미널 코스트(terminal cost)와 진행 중의 러닝 코스트(running cost)로 나누고, 회색 경로가 여러 개이므로 그것들을 평균 내는 기대값(Expectation)이 들어갑니다.

이렇게 정의한 밸류 함수(value function)를 최소화하는 것이 목표인데, 이는 마치 y = x²의 최솟값을 찾는 문제와 본질적으로 같습니다. 미분해서 0이 되는 지점을 찾는 것이죠. 이 과정을 거치면 HJB(해밀턴-야코비-벨만) 방정식이 나오고, 그 결과가 마지막의 비선형 PDE입니다.

보충 설명

왜 회색 경로를 뿌리나? MPPI의 직관은 단순합니다. 한 번에 정답 경로를 계산하지 않고, 회색 후보 경로 500개쯤을 무작위로 뿌린 뒤(샘플링) 좋은 것들을 가중합해서 최종 빨간색 경로 하나를 만듭니다. 만약 앞에 장애물이 있으면 그쪽으로 가는 회색 경로들은 비용이 커져서 가중치가 거의 0이 되어 자연스럽게 걸러지고, 장애물이 없는 쪽 경로들만 살아남아 합쳐집니다. 이번 섹션의 수식 유도는 바로 "그 가중치를 어떻게 수학적으로 정당화하는가"를 보여주는 과정입니다.

슬라이드 내용 정리

Part II — 2부의 시작을 알리는 표지 슬라이드입니다. 별도 내용은 없습니다.

교수님 설명

여기서부터 본격적으로 2부로 넘어갑니다. 1부에서 세운 비선형 PDE를 "어떻게 효율적으로 풀 것인가", 그리고 그 해를 경로 샘플링과 어떻게 연결하는가를 다룹니다.

슬라이드 내용 정리

Part 2 개요(Overview). 오늘의 주제는 Model Predictive Path Integral (MPPI) Control입니다. 이번 시간에 밟아갈 단계들을 도표로 강조합니다.

Transformation(변환) → Assumption(가정) → Trace(대각합 성질) 를 거쳐 비선형 PDE를 Linear PDE로 바꾸고, Feynman-Kac Lemma로 그 선형 PDE의 해를 기대값(경로적분) 형태로 표현합니다. 이것이 Path Integral Control이고, 여기에 Model Predictive Concept을 합치면 최종적으로 MPPI가 됩니다.

교수님 설명

이번 시간의 로드맵입니다. 큰 그림은 이렇습니다 — 1부에서 만든 복잡한 비선형 PDE를 변환·가정·대각합 성질을 동원해 선형 PDE로 깔끔하게 바꾸고, 그 선형 PDE는 파인만-칵 정리 덕분에 "회색 경로들을 가중합한 기대값" 형태로 풀립니다. 즉 어려운 미분방정식 풀이가 경로 샘플링의 평균으로 바뀌는 것이죠.

거기에 한 가지를 더 얹습니다. MPC(Model Predictive Control) 개념인데, 매 스텝마다 현재 상태에서 다시 계산해 한 스텝만 적용하고 굴려가는 방식입니다. 이 MPC 개념을 경로적분 제어에 합친 것이 바로 MPPI입니다. 자율주행, 내비게이션, 자유도가 높은 매니퓰레이터의 경로 탐색처럼 장애물을 피해 움직여야 할 때 특히 많이 쓰입니다.

슬라이드 내용 정리

경로적분 제어(Path Integral Control) — 최적 제어 복습. 확률적 HJB와 최적 입력 u* 로부터 얻은 비선형 PDE:

−∂V(x_t,t)/∂t = q(x_t) + f^T(x_t)V_x − ½ V_x^T G(x_t)R^−1(x_t)G^T(x_t)V_x + ½ tr(B(x_t)B(x_t)^T V_xx)

이 PDE를 풀면 V(x_t,t) 를 얻고 그로부터 u* 를 구할 수 있지만, 차원의 저주(curse of dimensionality, n ≥ 4) 때문에 직접 풀기가 어렵습니다. → "어떻게 효율적으로 풀까?"가 Part II의 과제.

변환(Transformation). 밸류 함수를 지수 변환합니다. 희망함수(desirability function) Ψ(x_t,t) 를 도입하여 V(x_t,t) = −λ log(Ψ(x_t,t)). 이를 미분하면:

V_t = −(λ/Ψ)Ψ_t, V_x = −(λ/Ψ)Ψ_x, V_xx = −(λ/Ψ)Ψ_xx + (λ/Ψ²)Ψ_x Ψ_x^T

교수님 설명

여기 적힌 비선형 PDE가 1부의 결론입니다. 원리상으로는 이걸 풀면 밸류 함수가 나오고 최적 제어가 나오지만, 상태 차원이 4 이상만 돼도 격자(grid) 기반으로는 도저히 못 풉니다. 이것이 차원의 저주입니다. 그래서 정공법 대신 획기적인 우회로를 씁니다.

그 우회로가 치환(변환)입니다. 중·고등학교 때 적분에서 변수를 치환하면 어려운 식이 갑자기 풀리는 경험 있죠? 똑같은 발상으로, 밸류 함수 V에 지수 변환을 걸어 Ψ라는 새로운 함수로 바꿉니다. V = −λ log Ψ 라는 관계를 시간·공간에 대해 미분해 두면, 다음 슬라이드에서 원래 PDE에 그대로 대입할 준비가 끝납니다.

보충 설명

희망함수(desirability)란? 로그를 씌운 관계 V = −λ log Ψ 에서, 비용 V 가 낮을수록 Ψ 는 커집니다. 즉 Ψ 는 "그 상태가 얼마나 바람직한가"를 나타내는 양으로, 비용을 직접 다루는 대신 '좋음의 정도'를 다루도록 문제를 뒤집은 것입니다. 이 뒤집기 덕분에 곱·지수로 얽혀 있던 비선형 항들이 다음 단계에서 선형 구조로 펴집니다.

슬라이드 내용 정리

변환 적용. 위에서 구한 V_t, V_x, V_xx 를 원래 비선형 PDE에 대입합니다(Transformation!). 정리하면:

(λ/Ψ)Ψ_t = q + f^T(−(λ/Ψ)Ψ_x) − ½(−(λ/Ψ)Ψ_x)^T GR^−1G^T(−(λ/Ψ)Ψ_x) + ½ tr(BB^T(−(λ/Ψ)Ψ_xx + (λ/Ψ²)Ψ_x Ψ_x^T))

양변을 정리하면:

Ψ_t = (Ψ/λ)q − f^T Ψ_x − (λ/2Ψ)Ψ_x^T GR^−1G^T Ψ_x + ½ tr(BB^T Ψ_xx) + (1/2Ψ)tr(BB^T Ψ_x Ψ_x^T)

하지만 빨간 글씨로 Still nonlinear PDE! — 아직 비선형 항(Ψ_x^T … Ψ_x 같은 제곱 형태)이 남아 있습니다.

교수님 설명

앞 슬라이드에서 준비한 미분 관계들을 원래 PDE에 그대로 꽂아 넣는 단계입니다. 식이 길고 복잡해 보이지만, 핵심은 모든 V 항을 Ψ 항으로 갈아 끼우고 양변을 Ψ에 대해 정리했다는 것뿐입니다.

그런데 정리하고 보니 아직 끝이 아닙니다. Ψ_x 가 두 번 곱해진 제곱꼴 항들이 살아남아 있어서, 여전히 비선형 PDE입니다. 그래서 다음 슬라이드에서 한 번 더 손을 봐서 이 거슬리는 항들을 제거합니다.

슬라이드 내용 정리

추가 단순화 → 선형 PDE. 남은 비선형 항을 두 단계로 정리합니다.

대각합 성질(Property of trace): tr(BB^T Ψ_x Ψ_x^T) = Ψ_x^T BB^T Ψ_x 로 바꿔 씁니다.

가정(Assumption): λ G R^−1 G^T = BB^T 로 두면, −(λ/2Ψ)Ψ_x^T GR^−1G^T Ψ_x 항과 +(1/2Ψ)Ψ_x^T BB^T Ψ_x 항이 서로 정확히 상쇄됩니다.

그 결과 비선형 항이 모두 사라지고, 마지막에 선형 PDE를 얻습니다:

Ψ_t = (Ψ/λ)q − f^T Ψ_x − ½ tr(BB^T Ψ_xx)

교수님 설명

마지막 손질입니다. 먼저 대각합(trace) 성질을 써서 제곱꼴 항의 모양을 살짝 바꾸고, 그다음 λ G R^−1 G^T = BB^T 라는 핵심 가정을 둡니다. 이 가정은 "제어가 노이즈와 같은 채널로 들어간다"는 뜻으로, 직관적으로는 내가 힘을 줄 수 있는 방향과 외란이 들어오는 방향이 일치한다는 조건입니다. 이 가정 덕분에 골치 아프던 두 비선형 항이 부호만 반대인 쌍둥이가 되어 깨끗하게 지워집니다.

그래서 드디어 선형 PDE를 얻습니다. 이게 결정적인 분기점이에요. 선형 PDE가 되면 다음 단계인 파인만-칵 정리를 통해 "해를 직접 푸는 대신, 회색 경로들을 시뮬레이션해서 가중 평균하는" 형태로 바꿀 수 있기 때문입니다. 즉 시그마(Σ)로 회색 경로 수백 개를 다 더해 빨간색 최종 경로 하나를 만들어내는, 그 파란색 박스 최종 수식으로 가는 문이 여기서 열립니다.

정리하면, 회색 경로들을 시뮬레이션해 합쳐서 빨간 최종 경로를 만드는 과정 — 그 정당화가 이 변환의 끝에서 시작됩니다. MPPIStochastic MPC 문헌을 보면 이 선형화된 형태와 그로부터 나오는 경로 가중합 공식을 아주 자주 만나게 될 겁니다.

보충 설명

왜 선형 PDE가 되면 좋은가 — 다음 단계 미리보기. 선형 PDE는 파인만-칵 정리(Feynman-Kac Lemma)로 그 해를 "확률 경로들에 대한 기대값"으로 표현할 수 있습니다. 그러면 PDE를 격자로 푸는 대신, 시스템 노이즈를 따라 경로(회색 trajectory)를 잔뜩 뿌리고 각 경로의 비용으로 가중치를 매겨 평균 내는 것만으로 해를 근사할 수 있습니다. 차원의 저주를 샘플링으로 우회하는 셈이죠. 여기에 매 스텝 다시 계산하는 MPC 개념을 더하면 실시간 제어가 가능한 MPPI가 완성되며, 모래밭 드리프트·자율주행·고자유도 매니퓰레이터의 장애물 회피 경로 생성 등에 실제로 쓰입니다.

Part 8슬라이드 37~42

08MPPI — 확률적 경로적분 제어 (2)

slide 37
슬라이드 37 · 파인만–칵 보조정리로 제어를 '기대값'으로
slide 38
슬라이드 38 · 시간 이산화 + 위너 프로세스 샘플링
slide 39
슬라이드 39 · 가정·몬테카를로로 가중합(파란 박스) 도출
slide 40
슬라이드 40 · MPPI = 경로적분 + 모델예측(MPC) 개념
slide 41
슬라이드 41 · 전체 유도 흐름(Part 1 / Part 2)
slide 42
슬라이드 42 · 코드 구현: 자율주행 적용 예
슬라이드 내용 정리

파인만–칵 보조정리(Feynman-Kac Lemma)로 "제어를 기대값(expectation)으로" 표현하는 단계입니다. 편미분방정식 Ψ_t = (w/λ)q − f^T Ψ_x − ½ tr(BB^T Ψ_xx) 와 종단조건 Ψ(x_T,T) = exp(−(1/λ)E(x_T)) 의 해가, 기대값 형태로 적힌다는 것이 핵심입니다.

해: Ψ(x_t,t) = E_{x(·)~P}[ exp(−(1/λ)∫_t^T q(x_τ)dτ) · Ψ(x_T,T) ] = E_{x(·)~P}[ exp(−(1/λ) X(x(·)) ) ].

경로적분 제어의 핵심 개념: 여기서 E_{x(·)~P}제어가 빠진(uncontrolled) 시스템 동역학 dx_t = f(x_t)dt + B(x_t)dw 로 생성된 궤적들에 대한 기대값입니다. 마지막으로 Ψ 를 다시 밸류 함수로 변환하면 V(x_t,t) = −λ log( E_{x(·)~P}[ exp(−(1/λ)X(x(·))) ] ) 이고, 최적 제어는 u*(x_t,t) = R^{-1}(x_t) G^T(x_t) V_x (단, V_x = ∂V/∂x).

교수님 설명

앞 슬라이드에서 본 3차원 그래프(파란/빨간 곡선)는 결국 "최적화가 일어나고 있다"를 보여주는 그림이었습니다. PD 제어로 비유하면 P 게인을 너무 높이면 오버슈팅(overshooting)이 생겨 출렁이고, 반대로 게인을 너무 낮추면 약하게 제어돼 목표를 못 따라가 정상상태 오차(steady-state error)가 남죠. 이런 출렁임을 비용함수·최적제어 관점에서 3차원으로 표현한 것입니다.

이제 진짜 목표는 밸류 함수 V최소로 만드는 제어 입력을 찾는 것입니다. 직관적으로는 y = x² 의 최소점을 찾을 때 미분해서 y' = 2x = 0 인 점을 찾는 것과 똑같아요. 여기서도 밸류 함수를 상태·시간으로 미분해 나가면 최적제어 조건(HJB, 해밀턴–야코비–벨만)이 나오는데, 스토캐스틱(stochastic) 환경이라 그 방정식이 굉장히 풀기 어렵게 생겼습니다.

그런데 여기서 획기적인 변환 트릭이 등장합니다. 고등학교에서 적분할 때 치환(substitution)을 쓰듯, V = −λ log Ψ 라는 변환을 넣으면 어려운 비선형 방정식이 풀 수 있는 형태로 바뀝니다. 이 변환(Feynman-Kac)을 통해 "제어 입력을 직접 푸는 문제"가 "제어 없이 던진 수많은 궤적의 기대값을 계산하는 문제"로 탈바꿈하는 게 이 슬라이드의 핵심입니다.

슬라이드 내용 정리

연속 시간 결과를 시간 이산화(time discretization) 합니다. u*dt → u*Δt = u*·T/N. 이산화된 최적 제어:

u* = R^{-1}G^T(GR^{-1}G^T)^{-1} · E_{x̂~P}[ exp(−(1/λ)X̂(x̂)) B ε_k/√Δt ] / E_{x̂~P}[ exp(−(1/λ)X̂(x̂)) ]

각 기호: [1] 상태열 x̂ = (x̂_0, x̂_1, …, x̂_N), [2] 경로 비용 X̂(x̂) = Σ_{k=0}^{N-1} q(x̂_k)Δt + E(x_N), [3] 위너 프로세스 dw = ε_k√Δt (ε_k ~ N(0,I)), [4] 기대값은 제어 없는 동역학 x̂_{k+1} = x̂_k + f(x̂_k)Δt + B(x̂_k)ε_k√Δt 로 생성한 궤적에 대해 취함, [5] 투영 연산자(projection operator) — 제어 입력의 효과는 시스템 동역학이 아니라 이 투영 연산자에 반영됨. (원래 동역학 dx_t = f dt + G u_t dt + B dw 에서 G(x_k)u_k dt 항이 제거되어 'uncontrolled'가 됨.)

교수님 설명

앞에서 변환으로 얻은 기대값 형태를 컴퓨터로 계산하려면 시간을 잘게 쪼개야 합니다. 그래서 dtΔt = T/N 로 이산화하고, 연속 잡음 dw 를 정규분포 난수 ε_k ~ N(0,I)√Δt 를 곱한 위너 프로세스 샘플로 표현합니다. 이렇게 하면 한 번의 궤적을 단계별로 굴려서 만들 수 있어요.

여기서 강조할 점은 제어 입력 항 G u dt 가 동역학에서 빠져 있다는 것입니다. 즉 궤적 자체는 "제어를 전혀 안 한, 잡음만으로 굴러간 경로"이고, 정작 제어의 효과는 앞에 붙은 투영 연산자(R^{-1}G^T(GR^{-1}G^T)^{-1})와 비용 가중 기대값 안에 녹아 있습니다. 직접 제어를 설계하지 않고, 무작위로 펼친 경로들을 비용으로 평가해 가중하는 방식으로 최적 제어를 얻는 것이죠.

슬라이드 내용 정리

추가 단순화(Further Simplifications) 두 단계입니다. ① 가정 B = G√Σ (단, v_k ~ N(0,Σ))를 넣으면 B ε_k/√Δtv_k 로 정리되어:

u*_k = E_{x̂~P}[ exp(−(1/λ)X̂(x̂)) v_k ] / E_{x̂~P}[ exp(−(1/λ)X̂(x̂)) ]

몬테카를로 추정(Monte Carlo estimation)으로 기대값을 유한 개 샘플의 합으로 근사 — 파란 박스:

u*_k ≈ Σ_{i=0}^{I-1} w_i v_{k,i},   w_i = exp(−(1/λ)X̂(x̂^i)) / Σ_{n=0}^{I-1} exp(−(1/λ)X̂(x̂^n)). 즉 각 샘플 궤적의 입력 v_{k,i} 를 비용 기반 가중치 w_i 로 가중합한 것이 최적 제어입니다.

교수님 설명

변환과 가정을 쭉쭉 밀고 나가서 풀었더니, 결과적으로 식이 이 파란색 박스 형태로 아주 단순하게 정리되기 시작합니다. 여기서 핵심은 시그마(Σ), 즉 "다 더한다"는 것이에요. 앞에서 봤던 그 회색 경로들 — 한 수백 개씩 무작위로 던졌던 경로들 — 을 전부 더하는 과정입니다.

그 회색 경로들을 그냥 똑같이 더하는 게 아니라 경로마다 가중치 w_i 가 붙습니다. 비용이 작은(잘 된) 경로일수록 exp(−(1/λ)X̂) 값이 커서 가중치가 크고, 비용이 큰 경로는 거의 무시되죠. 이 가중치를 앞서 본 복잡한 유도(스토캐스틱 HJB→Feynman-Kac→단순화)로부터 끌어낸 것입니다.

한 번 더 핵심만 말하면: 회색 경로 수백 개를 시뮬레이션해서 비용 가중합으로 합치면, 빨간색 최종 경로(최적 제어) 하나가 탄생합니다. 그 합치는 공식이 바로 이 파란 박스예요. MPPI나 Stochastic MPC를 다루면 이 파란색 최종 수식을 정말 자주 보게 될 겁니다.

슬라이드 내용 정리

MPPI(Model Predictive Path Integral Control) = 경로적분 제어(Path Integral Control) + 모델 예측 개념(Model Predictive Concept).

위 그림: 순수 경로적분 제어는 k=0 에서 파란 박스 공식을 한 번만 계산해 전체 타임스텝(k=0,1,2,…,n)에 적용. 아래 그림: MPPI는 각 스텝마다 현재 상태에서 다시 계산해 한 스텝씩 밀고 나가는 리시딩 호라이즌(receding horizon, MPC 방식)으로 매 스텝 재계산.

교수님 설명

지금까지 설명한 게 PI(Path Integral, 경로적분) 제어입니다. 여기에 MPC(모델 예측 제어) 개념을 합친 게 MPPI예요. 차이를 보면, 위 그림처럼 순수 경로적분/LQR류는 k=0 에서 한 번 계산한 결과를 끝까지 그대로 가져다 씁니다.

반면 MPC는 다릅니다. 지금 스텝에서 계산하고, 한 스텝 실제로 움직인 뒤, 그 새 위치에서 처음부터 다시 계산하고, 또 한 스텝 가서 다시 계산… 이렇게 매번 새로 풀어 가져다 쓰는 구조죠. 이 "계속 다시 푸는" MPC 개념을 경로적분 제어 위에 얹은 것이 MPPI입니다.

파란 박스(경로적분 가중합) + MPC(매 스텝 재계산) = MPPI. 내비게이션, 자율주행, 그리고 자유도가 높은 로봇 매니퓰레이터(manipulator)에서 경로를 찾을 때 특히 많이 씁니다. 예를 들어 장애물을 피해 집기 동작을 할 때 자주 활용됩니다.

슬라이드 내용 정리

전체 유도의 흐름도(Overall flow) 정리. Part 1: Control Affine·Wiener process → 스토캐스틱 미분방정식(Stochastic Differential Equation) / Quadratic Cost function → Expectation → Value function → Principle of optimality → Recursive form → PDE → 2nd order Taylor series → Stochastic HJB → Optimal control·Nonlinear PDE.

Part 2: Linear PDE ← Feynman-Kac Lemma → Path Integral Control ← Model Predictive Concept → MPPI. (보조 단계: Assumption, Trace, Transformation.)

교수님 설명

이 슬라이드는 지금까지 따라온 길을 한 장으로 압축한 지도입니다. Part 1은 제어 아핀 형태와 위너 프로세스에서 출발해 스토캐스틱 미분방정식을 세우고, 2차 비용함수에서 밸류 함수와 최적성 원리를 거쳐 결국 스토캐스틱 HJB(비선형 PDE) 에 도달하는 과정 — 즉 "어렵게 생긴 방정식"이 나오기까지입니다.

Part 2는 그 어려운 비선형 PDE를 가정(Assumption)·트레이스(Trace)·변환(Transformation)으로 선형 PDE로 바꾸고, Feynman-Kac 으로 기대값 형태로 풀어 경로적분 제어를 얻은 뒤, 마지막에 MPC 개념을 더해 MPPI 로 마무리하는 흐름입니다. 화살표만 따라가도 오늘 배운 내용의 큰 그림이 잡힙니다.

슬라이드 내용 정리

코드 구현 — MPPI의 자율주행 적용. 시뮬레이션 화면: 검은 점선은 Reference(기준 경로), 파란 선은 Driven Path(지나온 실제 경로), 빨간 선은 MPPI Optimal(최적 경로), 초록 박스는 Ego Vehicle(자기 차량). 차량 앞쪽에 흩뿌려진 회색 선들이 무작위로 샘플링한 후보 궤적들이고, 이들을 비용 가중합한 결과가 빨간 최적 경로로 나타남.

교수님 설명

자율주행 관점에서 MPPI를 실제로 돌려본 사례입니다. 그림을 보면 앞에서 말한 개념이 그대로 보여요. 초록 차량 앞으로 회색 후보 경로들을 랜덤으로 쫙 띄우고, 그걸 전부 비용 가중합해서 빨간색 최종 경로 하나를 만들어 따라갑니다. 회색 → (가중합) → 빨간색, 이게 이번 섹션 전체의 한 줄 요약입니다.

MPPI는 이미 구현된 예제도 많습니다(예: 자율주행/로보틱스 프레임워크에 포함). 매 스텝마다 다시 샘플링하고 다시 가중합하는 MPC식 재계산 덕분에, 기준 경로를 따라가면서도 실시간으로 상황에 맞춰 부드럽게 경로를 갱신할 수 있다는 점이 핵심입니다.

보충 설명

왜 이 방식이 강력한지 직관적으로 보면: 전통적 최적제어는 "미분 = 0" 으로 정확한 해를 풀어야 하는데, 비선형·고차원이면 사실상 불가능합니다. MPPI는 대신 "수백 개를 그냥 던져보고 잘 된 것에 점수를 더 줘서 평균낸다"는 몬테카를로식 접근이라, 동역학이 미분 불가능하거나 비용이 복잡해도 시뮬레이션만 가능하면 돌아갑니다. GPU로 수천 개 궤적을 병렬로 굴릴 수 있어 실시간성도 확보되죠. 온도 같은 파라미터 λ 는 가중치의 날카로움을 조절합니다 — 작을수록 최저 비용 경로에 몰아주고(공격적), 클수록 여러 경로를 부드럽게 섞습니다(보수적).

Part 9슬라이드 43~44

09MPPI — 확률적 경로적분 제어 (3)

slide 43
슬라이드 43 · SDE 코드 구현(노이즈 주입 + 몬테카를로 롤아웃)과 전체 유도 로드맵
slide 44
슬라이드 44 · 왜 제어입력에 노이즈를? — 변환 가정 λGR⁻¹Gᵀ=BBᵀ
슬라이드 내용 정리

지금까지 칠판으로 유도한 이론을 실제 코드로 옮기는 슬라이드입니다. 왼쪽은 MATLAB 스타일 구현이고, 두 블록으로 나뉩니다.

Theory 3: SDE (노이즈 주입, Noise Injection)noise(:,:,k) = [randn(1,N)*sigma(1); randn(1,N)*sigma(2)]. 가속·조향 두 채널마다 표준편차(sigma)를 곱한 가우시안 난수를, 길이 N의 시간축 × K개의 샘플만큼 미리 뽑아 둡니다.

Theory 5: Feynman-Kac (몬테카를로 롤아웃, Monte Carlo Rollouts)for k = 1:K 루프 안에서 기준 제어열에 노이즈를 더해 교란합니다(빨간 박스). u_perturbed = u_seq + noise(:,:,k) 뒤, max(min(...))로 가속·조향을 ±max_acc, ±max_steer 범위로 클램핑(saturation)합니다.

아래 확률미분방정식(SDE)은 dx_t = f(x_t)dt + G(x_t)u_t dt + B(x_t)dw_t. 여기서 x_t=상태, u_t=제어입력, dw=위너 프로세스(Wiener process). 제어가 G(x_t)u_t 꼴이면 제어-어파인(control-affine), G(x_t,u_t)면 비어파인입니다. dw 항이 들어가 있어 스토캐스틱이 됩니다. 오른쪽 그림은 SDE→밸류함수→재귀형→PDE→스토캐스틱 PDE→(Part 2) 선형 PDE→Feynman-Kac→경로적분 제어→MPPI로 이어지는 전체 유도 로드맵입니다.

교수님 설명

파란색 박스(경로적분 제어)에 MPC 개념을 합친 것이 바로 MPPI입니다. 내비게이션이나 자율주행, 로봇의 경로 탐색에 많이 쓰이고, 특히 매니퓰레이터처럼 자유도가 아주 높아서 — 예를 들어 장애물을 피해 물건을 집을 때 — 활용도가 큽니다.

MPPI는 이미 구현된 오픈소스 예제(ROS 계열 등)가 있어 자율주행 관점에서 곧바로 돌려볼 수 있습니다. 한 번 더 핵심 직관을 반복하면 — MPPI는 회색 롤아웃 경로들을 그냥 랜덤으로 쫙 띄워 보고, 그것들을 비용에 따라 전부 가중합해서 최종 빨간색 경로 하나를 만들어 냅니다.

이 슬라이드의 코드가 정확히 그 과정입니다. Theory 3에서 가우시안 노이즈를 미리 만들고, Theory 5에서 K개의 롤아웃마다 기준 제어열에 그 노이즈를 더해 경로를 흩뿌리는 것이죠. 액추에이터 한계를 넘지 않게 가속·조향을 클램핑하는 부분까지가 실제 로봇에 올릴 때 빠지지 않는 디테일입니다.

슬라이드 내용 정리

같은 SDE를 다시 보며 이번엔 빨간 박스가 u_perturbed = u_seq + noise(:,:,k) 한 줄, 즉 노이즈를 제어입력(control input)에 더하는 지점입니다.

Q) 그런데 왜 노이즈를 상태(system state)가 아니라 제어입력 시퀀스에 더할까요? A) 변환 과정에서 썼던 가정(assumption)을 떠올리면 됩니다. 오른쪽 유도를 보면 PDE에 tr(Bᵀ V_xx B)라는 트레이스(trace) 항이 나오는데, 트레이스 성질로 정리하다가 λ·G·R⁻¹·Gᵀ = B·Bᵀ라는 가정을 도입합니다. 이 가정 덕분에 비선형 항이 사라지고 마지막에 선형 PDE를 얻게 됩니다(로드맵에서 'Assumption' 박스가 강조됨).

교수님 설명

왜 제어입력에 노이즈를 넣느냐는 질문의 답은 변환 때 쓴 가정에 있습니다. λGR⁻¹Gᵀ = BBᵀ 가정은 제어비용 행렬 R노이즈의 확산항 BBᵀ를 묶어 줍니다. 즉 노이즈가 들어오는 통로 B를, 제어가 들어오는 통로 G와 같은 자리에 맞춰 놓은 것이죠. 그래서 제어입력 공간에 노이즈를 뿌리는 것이 SDE의 확산항과 일관됩니다 — 상태에 직접 노이즈를 넣는 것이 아니라요.

여기까지로 MPPID(경로적분+MPC)는 일단락되고, 교수님은 강화학습 쪽 미리보기로 넘어갑니다. 로봇 개(legged robot) 예시를 들며 액터-크리틱(actor-critic) 구조를 소개하는데, '연기자(액터)'는 현실에서 속도 같은 값을 잘 모르는 쪽, '비평가(크리틱)'는 시뮬레이션 안에서 모든 값을 다 아는 지도교수 같은 존재라는 비유였습니다.

마지막으로 모델기반(MPPI)과 학습기반을 합치는 이야기를 예고합니다. 모델기반은 상태공간 모델을 그대로 따라가니 신뢰성·재현성이 거의 100%라는 장점이 있지만, 거기에 한계도 있어 둘을 결합하는 방향으로 이어집니다.

보충 설명

왜 가정 λGR⁻¹Gᵀ=BBᵀ이 핵심인가 — 경로적분/MPPI 이론은 HJB 방정식의 지수변환(Cole–Hopf, V = -λ log Ψ)으로 비선형 HJB를 선형 PDE로 바꿉니다. 이때 변환이 깔끔하게 떨어지려면 제어비용의 역행렬 R⁻¹로 표현된 항과 노이즈 공분산 BBᵀ가 비례해야 합니다(λ가 비례상수=온도). 직관적으로 '제어가 싼 방향일수록 탐색 노이즈도 크게' 주라는 뜻이고, 그래서 노이즈를 제어입력에 더하는 구현이 이론과 정확히 맞아떨어집니다.

보충 설명

교수님이 예고한 강화학습 개념들 (대학원 RL 과제와 연결):

보상 설계(reward design) — 알고리즘 자체보다 보상·환경 설계가 실무에서 가장 중요. 로봇 개가 턱을 넘어 목표까지 가게 하려면: 목표까지 거리가 줄면 +보상, 자세가 너무 기울어 전복되면 페널티, 도착 지점에서 속도가 0에 가까워지면 보상 같은 식으로 직접 디자인합니다.

커리큘럼 러닝(curriculum learning) — 쉬운 것부터 단계적으로. 처음엔 평지 보행, 잘되면 턱을 조금씩 높이고, 백덤블링도 점프→반 바퀴→360도 순으로 난이도를 올려야 학습이 잘 됩니다.

Sim-to-Real & 도메인 랜덤화(domain randomization) — 시뮬레이션과 현실의 차이(대표적으로 마찰계수, 타이어 다이내믹스, 타임 딜레이)를 메우려고, 시뮬에서 마찰을 1.0으로 고정하지 않고 0.9~1.1처럼 랜덤화해 학습합니다. 그래야 현실로 옮겨도(transfer) 잘 동작합니다.

Part 10슬라이드 45~50

10강화학습 — 액터-크리틱·보상·학습 기법 (1)

slide 45
슬라이드 45 · Feynman-Kac 정리 (코드 구현)
slide 46
슬라이드 46 · 경로적분 제어 (코드 구현)
slide 47
슬라이드 47 · 모델 예측 개념 도입 → MPPI
slide 48
슬라이드 48 · 세 가지 제어 전략 개요
slide 49
슬라이드 49 · 비대칭 액터-크리틱 (PPO) 구조
slide 50
슬라이드 50 · 과제 정의 — 위치 기반 보상 설계
슬라이드 내용 정리

Feynman-Kac 정리(Feynman-Kac Lemma)의 코드 구현 단계입니다. 정리의 핵심 문장은 "복잡한 편미분방정식(PDE)의 해는 확률적 궤적(stochastic trajectories)들의 기댓값(expectation)과 같다"는 것입니다.

변환된 함수 Ψ를 가치함수 V로 되돌리면(V = -λ log(Ψ(x_t, t))) 다음 식이 됩니다:

V(x_t, t) = -λ log( E_{x(·)~P}[ exp(-(1/λ) X(x(·))) ] )

코드에서는 동역학을 빠르게 굴리며(update_dynamics_fast) 각 궤적의 비용을 계산합니다. 속도 비용 speed_cost = (x_curr(4) - v_target)^2, 제어 비용 control_cost = 0.01 * Σ u_perturbed(:,i)^2를 합쳐 costs(k)에 저장합니다. 오른쪽 로드맵에서 현재 위치는 Feynman-Kac Lemma 단계입니다.

교수님 설명

이 부분은 앞에서 다룬 MPPI(샘플링 기반 모델 예측 제어)를 실제 코드로 옮기는 과정입니다. 강의 뒤쪽에서 "쫙 뿌리고 그 중에서 팍 찾아내는 방식"이라고 표현했듯이, 제어 입력에 노이즈를 잔뜩 섞어 여러 궤적을 동시에 굴려보고, 각 궤적이 만들어 낸 비용을 평가하는 게 출발점입니다.

Feynman-Kac 정리가 중요한 이유는, 원래라면 풀기 어려운 최적제어의 PDE(HJB 방정식)를 "직접 푸는" 대신 "여러 궤적을 굴려 평균 내는" 문제로 바꿔주기 때문입니다. 즉 어려운 미분방정식을 시뮬레이션 샘플링으로 우회할 수 있게 해 주는 다리 역할을 합니다.

보충 설명

직관적으로 exp(-(1/λ) X) 항은 "비용 X가 작은(좋은) 궤적일수록 가중치를 크게" 주는 부드러운 선택기입니다. λ가 작을수록 최저 비용 궤적 하나에 가깝게 몰리고, λ가 클수록 여러 궤적을 골고루 섞습니다. 다음 슬라이드의 가중 평균이 바로 이 가중치를 쓰는 단계입니다.

슬라이드 내용 정리

경로적분 제어(Path Integral Control)로 최적 제어 입력을 갱신하는 단계입니다. 코드는 세 부분으로 나뉩니다.

① 변환(Transformation): beta = min(costs)로 가장 낮은 비용을 기준 잡고, exp_costs = exp(-(costs - beta)/λ), weights = exp_costs / sum(exp_costs)로 각 궤적의 가중치를 정규화합니다(수치 안정용으로 beta를 빼 줌). ② 최적 제어 갱신: 각 노이즈에 가중치를 곱해 합산(weighted_noise += weights(k) * noise(:,:,k))한 뒤 u_seq = u_seq + weighted_noise. ③ 평활화(Smoothing).

대응 수식:

u*_k ≈ ( Σ_{i=0}^{I-1} exp(-(1/λ) X(x̂^i)) · v_{k,i} ) / ( Σ_{n=0}^{I-1} exp(-(1/λ) X(x̂^n)) )

교수님 설명

강의에서 "뽀글뽀글한 거, 이거는 노이즈를 첨가해서 이렇게 된 거고, 이걸 다 합쳐서 흰색·빨간색 하나로 만들어야겠다"고 한 부분이 정확히 이 단계입니다. 화면에 수없이 뿜어져 나온 후보 궤적들(노이즈 섞인 제어들)을 비용 기반 가중치로 합쳐, 결국 하나의 부드러운 제어 시퀀스로 정리하는 것입니다.

핵심은 "최저 비용 하나만 고르는 게 아니라, 좋은 궤적일수록 큰 비중으로 평균낸다"는 점입니다. 그래서 갑작스럽게 튀지 않고, 여러 그럴듯한 해를 절충한 안정적인 제어가 나옵니다. 마지막 Smoothing은 그렇게 얻은 제어를 시간축으로 더 매끄럽게 다듬는 후처리입니다.

슬라이드 내용 정리

"모델 예측 개념(model predictive concept)"을 더해 최종적으로 MPPI를 완성하는 단계입니다.

핵심 등식: MPPI = [Path Integral Control] + [Model Predictive Concept]

코드의 Apply Control 부분에서, 계산된 시퀀스 중 첫 입력만 실제로 적용하고(u_actual = u_seq(:,1)), 동역학을 한 스텝 진행시킨 뒤(x = update_dynamics_fast(...)), 시퀀스를 한 칸 앞으로 밀고 끝에 0을 채웁니다(u_seq = [u_seq(:,2:end), zeros(2,1)]). 하단 타임스텝 그림 k = 0,1,2,…,n이 이 이동 구간(receding horizon) 방식을 나타냅니다. 수식은 u* = R⁻¹Gᵀ(GR⁻¹Gᵀ)⁻¹ · ( E[exp(-(1/λ)X̃) B δu/√Δt] / E[exp(-(1/λ)X̃)] ).

교수님 설명

경로적분 제어만으로는 한 번 계산한 전체 구간 제어를 끝까지 쓰는 셈인데, 여기에 "모델 예측 개념"을 얹으면 매 스텝마다 다시 계산하게 됩니다. 즉 미래 n 스텝을 내다보고 최적 시퀀스를 뽑되, 실제로는 맨 앞 한 칸만 쓰고 한 칸 전진한 뒤 다시 처음부터 예측하는 것을 반복합니다.

이렇게 하면 예측이 조금 틀려도 매 스텝 새 관측으로 보정되므로, 모델 오차나 외란에 훨씬 강인해집니다. 이 슬라이드까지가 첫 번째 제어 전략 MPPI의 구현 마무리이고, 다음 슬라이드부터 세 가지 전략을 한눈에 비교합니다.

슬라이드 내용 정리

이 강의에서 다루는 세 가지 제어 전략의 목차 슬라이드입니다.

• Introduction
• 전략 1) MPPI [1,2]
• 전략 2) 강화학습(Reinforcement Learning, RL) [3]
• 전략 3) MPPI + RL

참고문헌: Bjelonic 외, "Whole-body MPC and online gait sequence generation for wheeled-legged robots" (IROS 2021); ETH Zurich RSL 강의 〈Robot dynamics〉; Lee, Bjelonic, Hutter, "Control of wheeled-legged quadrupeds using deep reinforcement learning" (2022). 대상은 바퀴 달린 다리 로봇(wheeled-legged robot)입니다.

교수님 설명

교수님은 이 두 갈래를 "모델 기반(고전 기반)"과 "학습 기반"으로 나눠 장단점을 비교하셨습니다. 모델 기반(MPC)은 신뢰성이 매우 높습니다. 상태공간 모델대로 딱딱 움직이고, 가정한 상황(예: 아스팔트 위 테스트)에서는 거의 100% 작동합니다. 다만 가정을 벗어난 상황(빗길 등)에 들어서면 성능이 크게 떨어집니다.

반면 학습 기반(RL)은 100% 보장은 아니지만(99.9%는 되고 0.1%는 실패할 수 있음), 비·눈 같은 약간의 불확실성 속에서도 성능을 "어느 정도 유지(partial functionality)"한다는 장점이 있습니다. 그래서 복잡한 환경이나 복잡한 형태의 로봇에는 학습 기반이 더 유리합니다. 세 번째 전략은 이 둘을 합쳐, "어느 정도 불확실성이 있어도 신뢰할 만한 성능"을 노립니다.

불확실성 관점으로 해석하면: 불확실성이 거의 0인 이상적 상황은 모델 기반이, 어느 정도 예상된 불확실성은 혼합 기법이, 아예 예측 불가능한 불확실성은 모델+학습 결합이 잘 대응한다고 정리할 수 있습니다.

슬라이드 내용 정리

전략 2) 강화학습의 제어 구조(Control Architecture)입니다. 핵심은 비대칭 액터-크리틱(Asymmetric Actor-Critic, PPO)이며, 학습은 Isaac Gym 시뮬레이션에서 이뤄집니다.

액터와 크리틱이 둘 다 보는 관측: 각속도 θ̇, 투영 중력 ĝ, 목표 방향 g_dir, 헤딩 오차 θ_err, 높이 명령 h_target, 지형 불리언 b, 관절 위치/속도 q, q̇, 직전 행동 a_last — 일부에는 노이즈가 더해집니다(예: 각속도 ±20%, 관절속도 ±150%).

크리틱만 보는 특권 정보(privileged information): 선속도 v_g, 기저 높이 h, 상대 목표 위치 g_rel, 지형 높이 H_terrain(크기 187), 접촉력 f_wheels, 마찰계수 μ. 슬라이드 문구처럼 이들은 "현실에서 직접 얻기 까다로운(not straightforward to obtain)" 값들입니다.

교수님 설명

이 구조의 직관은 "지도교수 비유"로 설명되었습니다. 시뮬레이션 안에서는 속도·각도 같은 값을 전부 정확히 알 수 있습니다. 그래서 크리틱은 마치 모든 정답을 다 알고 있는 지도교수처럼 특권 정보를 받아 정확하게 평가합니다. 반면 현실의 액터는 로봇 속도처럼 측정이 까다로운 값을 잘 모릅니다.

따라서 학습할 때, 모든 걸 다 아는 크리틱이 "덜 아는" 액터를 지도(critique)해서 학습시킵니다. 그 결과 현실에서 속도를 정확히 몰라도 제어가 잘 되도록 만드는 것이 비대칭 액터-크리틱의 비법입니다. 액터의 관측에 노이즈를 일부러 섞는 이유도 같은 맥락으로, 현실의 센서 잡음에 미리 적응시키기 위함입니다.

중요한 점은, PPO 같은 강화학습 알고리즘 자체는 그대로 두고 "어떤 정보를 누구에게 주느냐"라는 구조 설계로 성능을 끌어올린다는 것입니다.

슬라이드 내용 정리

강화학습의 과제 정의(Task formulation) — 보상(Reward) 설계입니다. 여기서는 위치 기반 과제(Position-based task)를 써서 "속도 관련 항 없이" 액터가 계단을 오를 다양한 전략을 자유롭게 탐색하도록 합니다.

보상 표(번호 · 보상 · 수식 · 계수):

r_position = (1/T_r)·1/(1+||x⃗−r⃗_goal||²), 단 t > T − T_r일 때 — 위치 추종, 계수 10.0
r_pos_bias = x⃗·(r⃗_goal−x⃗) / (||x⃗||·||r⃗_goal−x⃗||) — 위치 추종, 계수 1.0
r_stall = −1 if ||x⃗̇|| < 0.1 m/s and ||x⃗−r⃗_goal|| > 0.5m — 정지, 계수 1.0
r_face_goal = −||θ−θ_goal|| if ||x⃗−r⃗_goal|| > 0.5m — 헤딩, 계수 0.1

그림은 로봇 개가 계단을 올라 목표 지점으로 향하는 장면입니다.

교수님 설명

교수님은 "강화학습을 계속하다 보면 알고리즘 자체보다 보상 설계와 환경 구성이 제일 중요하다"고 강조하셨습니다. 이론은 이미 포화 상태에 가깝지만, 보상·환경은 본인이 직접 정리해 내야 하는 디자인의 영역이라는 것입니다. (대학원 수업에서 MPPI+RL을 다룰 때, 알고리즘은 건드리지 않고 바로 이 보상 부분을 조작하며 창의성을 발휘하게 된다고 안내하셨습니다.)

예시로, 로봇 개가 턱(계단)을 넘어 목표로 가게 하려면 보상을 어떻게 줄까? ⓐ 목표까지 거리가 줄어들수록(1m 가까워질 때마다) 보상을 더 줍니다 → 위치 추종 보상. ⓑ 넘어지면 안 되므로, 자세 각도가 심하게 기울어 전복되면 벌점(penalty)을 줍니다. ⓒ 목표에 도착하면 딱 멈춰야 하므로, 도착 지점에서 속도가 0에 가까워지도록 유도합니다(r_stall은 멀리 떨어져 있는데 멈춰 버리면 벌점). 즉 "높은 지점까지 가라 + 넘어지지 마라 + 가서 서라"가 보상의 큰 줄기입니다.

보충 설명

이 슬라이드 이후 강의에서는 보상 설계와 짝을 이루는 학습 기법들이 이어집니다. 커리큘럼 러닝(Curriculum Learning)은 쉬운 과제부터 단계적으로 난도를 올리는 방식으로(평지 걷기 → 낮은 턱 → 높은 턱; 백덤블링도 점프 → 반 바퀴 → 한 바퀴), 처음부터 어려운 과제를 주면 학습이 잘 안 되는 문제를 피합니다. 또 Sim-to-Real 전이를 위해 도메인 랜덤화(Domain Randomization)로 마찰계수(예: 0.9~1.1), 타이어 다이내믹스, 시간 지연 등을 무작위화해 학습하면, 시뮬레이션에서 익힌 정책이 실제 환경에서도 잘 적응합니다.

Part 11슬라이드 51~56

11강화학습 — 액터-크리틱·보상·학습 기법 (2)

slide 51
슬라이드 51 · 커리큘럼 러닝 — 쉬운 지형에서 시작
slide 52
슬라이드 52 · Sim-to-real 전이와 도메인 랜덤화
slide 53
슬라이드 53 · MPC vs RL 비교
slide 54
슬라이드 54 · 세 번째 전략: MPPI + RL
slide 55
슬라이드 55 · 안전 자율주행 제어 구조와 세이프티 필터
slide 56
슬라이드 56 · 모델+학습 결합의 장점
슬라이드 내용 정리

3. 커리큘럼(Curriculum)
생성된 4096개의 로봇을 지형 종류(terrain types)별로 균등하게 분배하고, 모두 가장 쉬운 레벨에서 시작하게 한다. 아래 그림에서 위쪽 초록색 영역이 쉬운 지형, 아래쪽 빨간색 영역이 어려운 지형이며, 로봇이 잘 해내면 점점 더 어려운 지형으로 올려 보낸다.

교수님 설명

백덤블링(back tumbling)이나 360도 한 바퀴 회전 같은 어려운 동작을, 처음부터 그 난이도(full quality)로 한 번에 학습시키면 로봇이 잘 배우지 못합니다. 사람이 쉬운 것부터 차근차근 배우듯이, 로봇도 쉬운 과제에서 시작해 점차 난이도를 올려가야 학습이 잘 됩니다.

그래서 적용하는 것이 커리큘럼 러닝(curriculum learning)입니다. 처음에는 모든 로봇을 가장 쉬운 지형·동작에 배치하고, 성공률이 올라가면 더 험한 지형이나 더 어려운 동작 단계로 승급시키는 방식으로 학습을 진행합니다.

보충 설명

커리큘럼 러닝은 "교육과정"이라는 뜻 그대로, 난이도를 단계적으로 높여 학습시키는 기법입니다. 어려운 목표를 처음부터 주면 보상(reward)을 거의 못 받아 학습 신호가 약하지만, 쉬운 단계에서 성공 경험을 쌓으면 정책(policy)이 안정적으로 자라 결국 어려운 과제까지 도달합니다.

슬라이드 내용 정리

4. Sim-to-real 전이(Sim-to-real transfer) — 도메인 랜덤화(Domain randomization)

표는 시뮬레이션(Sim)과 실제(Real)의 차이를 보여줍니다. 화살표 Facilitate transfer(전이를 돕는다)가 Sim → Real 방향으로 그려져 있습니다.

  • Tire Dynamics(타이어 동역학): Sim X → Real O, Friction randomization(마찰 랜덤화)
  • Irregular Time Delay(불규칙 시간 지연): Sim X → Real O, Delay randomization(지연 랜덤화)
교수님 설명

Sim은 시뮬레이션, Real은 실제 세계입니다. 둘은 당연히 다릅니다. 대표적인 것이 마찰입니다. 시뮬레이션에서는 마찰계수가 깔끔하게 1.0인 공간이라도, 실제 지면은 미끄러워서 0.9일 수도 1.1일 수도 있습니다. 그래서 시뮬레이션에서 마찰을 하나의 값으로 고정하지 않고, 어떤 로봇은 0.9, 어떤 로봇은 1.0, 어떤 로봇은 1.1처럼 랜덤화해서 학습시킵니다. 이것이 도메인 랜덤화(domain randomization)이고, 이렇게 학습한 정책이 실제 세계에서도 잘 적응하도록 하는 것이 Sim-to-real transfer입니다.

휠(타이어) 로봇에서는 타이어 동역학(tire dynamics)시간 지연(time delay)을 랜덤화해서 많이 학습합니다. 흔히 쓰는 IsaacGym 같은 시뮬레이터에는 타이어 동역학이 구현되어 있지 않은데, 이 한계를 극복하기 위해 타이어 동역학을 랜덤하게 주입해 학습시키는 것입니다.

슬라이드 내용 정리

비교: MPC vs RL (열: 항목 / MPC 기반 WBC / RL 기반 제어)

  • Principle(원리): 명시적 동역학·접촉에 대한 온라인 최적화 vs 데이터·시뮬레이션으로 학습된 정책
  • Model reliance(모델 의존도): 높음 vs 낮음 (빨간 박스 강조)
  • Robustness(강건성): 모델 불일치에 민감(추정·피드백으로 보완) vs 폭넓게 학습하면 강건(랜덤화)
  • Interpretability(해석성): 높음(비용·제약으로 거동 설명) vs 낮음(블랙박스, 디버깅=재학습)
  • Best use(적합한 용도): 안전 필수·힘/접촉 추론·실현가능성 보장 vs 반사적 기술·휴리스틱 없는 복잡 거동·제한된 센싱(예: 안 보고 계단 오르기)
교수님 설명

모델 기반(MPC)의 장점은 무엇일까요? MPC는 상태공간 모델(state-space model)에 따라 정확하게(딱딱) 움직이므로 신뢰성이 매우 높습니다. 예를 들어 긴급제동(AEB)을 아스팔트에서 테스트했다면 그 가정된 상황에서는 항상 100% 잘 작동합니다. 하지만 빗길처럼 우리가 가정하지 않은 상황으로 벗어나기 시작하면 마찰이 변해서 성능이 뚝 떨어집니다. 즉, 가정 안에서는 완벽하지만 밖으로 나가면 무너지는 것이 모델 기반의 특징입니다.

반면 학습 기반(RL)은 100번 중 99.9번 잘 되고 0.1번은 안 될 수도 있어서 100% 신뢰하긴 어렵습니다. 그러나 비가 오거나 눈이 오는 약간의 불확실성이 있어도 부분적 기능(partial functionality)을 유지하며 성능이 어느 정도 버텨줍니다. 그래서 일반 자동차보다는 복잡한 환경이나 복잡한 형태의 로봇에서 더 유용합니다.

슬라이드 내용 정리

목차 슬라이드입니다. 세 번째 제어 전략으로 넘어갑니다.

  • Introduction
  • Control Strategy 1) MPPI [1][2]
  • Control Strategy 2) Reinforcement Learning(RL) [3]
  • Control Strategy 3) MPPI + RL (이번 차례, 굵게 강조)
교수님 설명

마지막으로 MPPI(모델 기반 최적화)와 RL(강화학습)을 합치는 방법을 보겠습니다. 도대체 어떻게 두 가지를 합칠 수 있을지 궁금하실 텐데, 막상 보면 구조가 생각보다 복잡하지는 않습니다. 앞서 본 모델 기반의 정확성과 학습 기반의 강건성을 결합하려는 시도입니다.

슬라이드 내용 정리

안전 자율주행의 제어 구조(Control scheme of safe autonomous driving)

1) Decision (only): 상위 제어(Upper-level control)의 Decision → 하위 제어(Low level control)의 종방향(Longitudinal)·횡방향(Lateral) 제어 → 플랜트(Plant, 차량).

2) Decision w/ safety filter: Decision 뒤에 Safety Filter를 추가한 구조. 결정은 학습 기반(Learning-based, 예: Tesla FSD)이 담당. 강조 박스: (1) Model-based → Accuracy(정확도), (2) Model-based → Accuracy + Learning-based → Effective to uncertainty(불확실성에 효과적).

교수님 설명

둘을 합친 마지막 모델 + 러닝 방식은, 어느 정도의 불확실성이 존재하더라도 믿을 만한·신뢰할 수 있는 성능을 낼 수 있다는 관점으로 해석할 수 있습니다. 즉 학습 기반(Tesla FSD 같은 것)이 내린 결정을 그대로 쓰는 것이 아니라, 그 뒤에 세이프티 필터(safety filter)를 두어 안전성을 보장하는 구조입니다.

모델 기반만으로는 정확도(Accuracy)는 얻지만 가정 밖 상황에 약하고, 여기에 학습 기반을 더하면 불확실성(uncertainty)에도 효과적으로 대응할 수 있게 됩니다.

보충 설명

세이프티 필터는, 학습 기반 정책이 내놓은 행동이 안전 제약(예: 충돌 회피, 가속 한계)을 위반하지 않는지 모델 기반으로 검사·수정해 통과시키는 안전장치입니다. 학습의 유연함은 살리되 모델의 보장(guarantee)을 덧씌우는, 두 접근의 결합을 가장 직관적으로 보여주는 사례입니다.

슬라이드 내용 정리

"모델 + 학습" 접근의 장점(+) 강점, (-) 한계로 표시.

  • Model-based: (+) 100% 신뢰성으로 동작하지만 (-) 가정되고 정제된 조건(assumed and refined conditions)에서만. 응용 예: AEB(자동 긴급제동).
  • Learning-based: (-) 완벽히 신뢰할 순 없지만 (+) 불확실성 속에서도 부분적 기능(partial functionality)을 유지.
  • Model + Learning-based: (+) 불확실성 속에서도 신뢰할 수 있는 기능(reliable functionality)을 유지.
교수님 설명

이 내용을 불확실성(uncertainty) 관점에서 해석해 보겠습니다. 불확실성이 거의 없는 아주 이상적인 상황에서는 고전적인 모델 기반이 잘 작동합니다. 어느 정도 예상 가능한(예측된) 불확실성이 있는 상황에서는 학습 기반이 강점을 보이고, 마지막으로 우리가 전혀 고려하지 못한·예측할 수 없는 불확실성이 있는 상황에서는 모델과 학습을 합친 기법이 가장 잘 작동합니다.

예컨대 AEB처럼 모델링이 쉬운 문제는 모델 기반으로 100% 신뢰성 있게 처리하고, 복잡하고 예측이 어려운 환경은 학습을 결합해 다룬다는 식으로 정리할 수 있습니다. 결국 모델 기반의 신뢰성과 학습 기반의 불확실성 대응력을 모두 가져가는 것이 이 결합 접근의 핵심 장점입니다.

Part 12슬라이드 57~62

12MPC와 강화학습의 결합 — TD-MPC (1)

slide 57
슬라이드 57 · 불확실성 정도에 따른 제어 전략
slide 58
슬라이드 58 · MPC+RL 결합: Parametric MPC vs TD-MPC
slide 59
슬라이드 59 · Stochastic MPC ① Propagation
slide 60
슬라이드 60 · Stochastic MPC ② Path cost
slide 61
슬라이드 61 · Stochastic MPC ③ Optimal control input
slide 62
슬라이드 62 · 최적 입력 — 궤적 수렴 결과
슬라이드 내용 정리

제목: "Model + Learning"-based approach의 장점 (강점과 한계).

불확실성(uncertainty)의 정도에 따라 세 가지 영역으로 나눠 어떤 제어가 적합한지 보여줍니다.

  • Zero uncertainty (이상적 조건) → Model-based control (모델 기반 제어)
  • Modeled uncertainty (모델링된 불확실성) → Model-based robust control (모델 기반 강건 제어)
  • Unmodeled uncertainty (모델링되지 않은 불확실성) → Model + Learning-based control

핵심 메시지: 학습을 결합한 방식은 모델링되지 않은 불확실성 아래에서도 신뢰할 수 있는 동작(reliable functionality)을 유지한다는 것.

교수님 설명

일반 MPC와 'MPC+RL'을 결합한 방식을 장단점으로 비교하는 슬라이드입니다. 모델링 관점에서 보면, latent dynamics(레이턴트 다이내믹스)를 쓰기 때문에 아주 복잡한 다이내믹스에도 적용이 가능하다는 게 큰 장점입니다. 또 MPC에는 Horizon(예측 구간)이라는 개념이 있는데, LQR이 무한 구간(infinite horizon)을 보듯이 긴 구간의 비용을 내다볼 수 있다는 장점도 있습니다.

적용 기준은 "모델링이 쉬운가/어려운가, 불확실성이 큰가/작은가"입니다. 예를 들어 차선 유지(lane keeping)나 충돌 방지·긴급 제동은 모델링이 쉬워서 그냥 기존 MPC로 충분합니다. 반면 진흙탕 오프로드 주행처럼 횡방향 거동이 불규칙해 모델링이 어려운 경우, 또는 end-track 주행, 자율 보행 로봇(quadruped walking)처럼 모델링이 까다로운 경우에는 TD-MPC가 효과적으로 작동합니다.

단점도 분명합니다. 바로 학습 시 계산 비용입니다. 강화학습은 한 번에 수천 개(예: 4,000개)의 에이전트를 동시에 굴리는데, MPC는 Horizon에 따라 매 스텝을 예측해야 합니다. Horizon이 40스텝이면 4,000 × 40만큼 계산해야 하죠. 순수 RL은 horizon이 사실상 1이라 그런 부담이 없지만, MPC를 합치면 horizon만큼 곱해지므로 GPU뿐 아니라 CPU 성능도 좋아야 하고, 학습이 느려질 수 있습니다.

보충 설명

강건 제어 vs 학습 결합의 차이: '강건 제어(robust control)'는 불확실성을 미리 모델에 포함시켜 최악의 경우에도 견디게 설계하는 방식입니다. 즉 "예상 가능한 불확실성"까지만 다룹니다. 반면 학습 기반은 설계자가 모델로 적지 못한 상황까지 데이터로 흡수하므로, 그림에서 가장 바깥쪽 'unmodeled uncertainty' 영역을 담당합니다.

슬라이드 내용 정리

MPC와 RL을 어떻게 결합하는가? 두 가지 방법: (1) Parametric MPC, (2) TD-MPC. (왼쪽이 model-based, 오른쪽이 learning-based 성격)

(1) Parametric MPC — RL이 MPC의 파라미터를 갱신:

J_i(x_i, U_i) = Σ_{k=i}^{N-1} g(x_k, u_k) + h(x_N)

subject to g = xᵀQx + uᵀRu + Δ'uᵀR'Δu, x_{k+1} = A x_k + B u_k — 여기서 파란색으로 강조된 Q, R', A, B가 RL이 추정하는 대상.

(2) TD-MPC — RL이 장기 리턴(long-term return)을 추정:

J_i(x_i, U_i) = Σ_{k=i}^{N-1} g(x_k, u_k) + h(x_N) — 여기서 종단비용 h(x_N)이 파란색으로 강조.

또는 g: value network(가치 네트워크), x_{k+1}: latent dynamics(레이턴트 다이내믹스)를 따름.

교수님 설명

비용함수(cost function)를 보면 파란색으로 칠한 부분이 핵심입니다. 첫 번째 Parametric MPC는 비용함수 안의 Q, R 같은 파라미터, 그리고 상태방정식의 A, B를 RL이 추정해 정확도를 높여줍니다. 이 값들은 원래 사람이 디자인해야 하는데 완벽하지 않으니, 강화학습이 더 잘 맞춰주는 거죠.

두 번째 TD-MPC는 종단비용(terminal cost) h(x_N) 부분을 RL이 가져갑니다. 즉 비용을 일일이 설계하는 대신 비용(가치) 자체를 강화학습이 예측합니다. 정리하면 — ① cost function의 '파라미터'를 RL이 잡아주는 방식(Parametric), ② '비용함수 자체'를 RL이 대략 계산해주는 방식(TD-MPC), 이 두 가지로 나뉩니다.

TD-MPC는 크게 세 가지 측면에서 일반 MPC와 다릅니다. 첫째, 원래는 상태공간 모델(state-space model)을 쓰는데, 모델링 자체를 네트워크로 대체한 latent dynamics를 사용합니다(슬라이드의 x_{k+1}: follows latent dynamics). 둘째, 비용함수를 계산할 때 value network를 사용합니다. 상태를 네트워크에 맞추는 것을 encoded state라고 하는데, 이걸 활용한다는 점이 큰 차이입니다.

보충 설명

왜 latent dynamics인가? 자동차에서 사이드슬립(side slip)이나 타이어 마찰(tire friction)은 측정이 까다롭고, 정밀 센서는 수천만 원에 달합니다. 게다가 진흙탕처럼 바퀴가 헛도는 상황에서는 휠 정보로 속도를 추정하기도 어렵죠. 이렇게 물리 모델로 적기 어려운 부분을 네트워크로 통째로 대체하는 것이 latent dynamics입니다. 강아지 같은 4족 로봇, 연체동물처럼 움직이는 다관절 시스템도 기존 상태공간 모델로는 표현이 어려운데, 학습으로 대체하면 다룰 수 있습니다.

또 다른 장점은 고장 적응(failure adaptation)입니다. 두 다리로 걷다가 한 다리를 다쳐 한쪽만 쓰게 되거나, 4륜 차량의 바퀴 하나가 펑크나 3륜으로 가야 하거나, 그리퍼(gripper)의 손가락 하나가 고장난 경우 — 상태공간 모델은 모델을 통째로 바꿔야 하지만, latent dynamics는 학습만 잘 시켜두면 유연하게 적응·제어할 수 있습니다.

슬라이드 내용 정리

제목: Stochastic MPC — 3단계 절차 중 ① Propagation(전파).

확률 미분방정식(stochastic differential equation):

dx_t = f(x_t)dt + G(x_t)u_t dt + B(x_t)dw
= f(x_t)dt + G(x_t)(u_t dt + √Σ dw)

단순화를 위해 B = G√ΣNoise aggregation(노이즈 통합).

상태 전파: dx_t = f(x_t)dt + G(x_t)(u_t dt + √Σ dw). 그림은 시작점에서 표본(propagated samples)이 점점 퍼져 나가는 모습.

교수님 설명

여기서부터는 앞서 다룬 stochastic MPC 이야기입니다. 그림에 보풀처럼 뽀글뽀글 뻗어 나가는 표본들이 보이죠? 이건 제어 입력에 노이즈(noise)를 첨가해서 만든 여러 후보 궤적들입니다. 즉 한 점에서 출발해 무작위 성분을 더해가며 가능한 미래 상태들을 쫙 뿌려보는 단계입니다.

슬라이드의 B = G√Σ로 두는 단순화는, 노이즈가 제어 입력과 같은 채널(G)을 통해 들어온다고 보고 노이즈를 한데 묶는(noise aggregation) 처리입니다. 덕분에 입력 항과 노이즈 항을 (u_t dt + √Σ dw) 하나로 합쳐 깔끔하게 표현할 수 있습니다.

슬라이드 내용 정리

제목: Stochastic MPC ② Path cost(경로 비용).

러닝 비용 + 종단 비용(Running & terminal costs):

X̂(x̂) = Σ_{k=0}^{N-1} q(x̂_k)Δt + E(x_N)

각 궤적(trajectory) X̂(x̂)마다 비용을 계산. 그림은 퍼져 나간 수많은 표본 궤적.

교수님 설명

①에서 뿌려놓은 각각의 후보 궤적에 대해 비용을 계산하는 단계입니다. 슬라이드 식처럼, 매 시점의 러닝 비용 q(x̂_k)Δt를 구간에 걸쳐 합하고, 마지막에 종단 비용 E(x_N)을 더해 하나의 궤적이 "얼마나 좋은가/나쁜가"를 점수로 매깁니다.

즉 수백 개의 표본 궤적 각각에 비용 값이 하나씩 붙게 됩니다. 이 점수가 다음 단계에서 "어느 궤적을 더 신뢰할지" 가중치를 매기는 근거가 됩니다.

슬라이드 내용 정리

제목: Stochastic MPC ③ Optimal control input(최적 제어 입력).

제어 갱신 법칙은 중요도 샘플링(importance sampling) 기반으로 유도:

u*_k = E_{x̂~p}[exp(−(1/λ)X̂(x̂)) v_k] / E_{x̂~p}[exp(−(1/λ)X̂(x̂))]

Σ_{i=0}^{l-1} exp(−(1/λ)X̂(x̂^i)) v_{k,i} / Σ_{n=0}^{l-1} exp(−(1/λ)X̂(x̂^n))

Monte Carlo Simulation(몬테카를로 시뮬레이션)으로 근사. 그림은 표본들 중 선택된 궤적(빨간 선)이 목표(×)에 도달.

교수님 설명

마지막은 뿌려놓은 표본들 중에서 좋은 것을 "팍" 찾아내는 단계입니다. 식을 보면 각 궤적의 비용 exp(−(1/λ)X̂)을 씌워 가중치로 삼습니다. 비용이 낮은(좋은) 궤적일수록 지수 가중치가 커져 더 크게 반영되고, 이 가중 평균으로 최적 입력 u*_k를 만듭니다.

기댓값(E)을 직접 구할 수 없으니, 몬테카를로 시뮬레이션으로 표본 합(분자/분모)을 써서 근사합니다. 결과적으로 여러 후보를 흩뿌린 뒤 비용 가중치로 합쳐, 목표(×)를 향하는 하나의 궤적(빨간 선)을 뽑아내는 방식입니다.

보충 설명

이 흐름(노이즈로 표본 전파 → 비용 평가 → 지수 가중 평균)은 MPPI(Model Predictive Path Integral) 계열의 전형적인 구조입니다. λ는 온도(temperature) 파라미터로, 작을수록 비용이 가장 낮은 궤적에 더 집중하고 클수록 여러 궤적을 고르게 섞습니다.

슬라이드 내용 정리

슬라이드 61과 동일한 ③ Optimal control input 화면이지만, 그림 속 표본 궤적들이 시작 지점 부근에서 좁게 수렴한 상태를 보여줍니다. 같은 중요도 샘플링·몬테카를로 식 아래에서, 반복을 거치며 표본 분포가 한 갈래로 모이는 최종 결과를 나타냅니다.

교수님 설명

(Q&A) "stochastic MPC와 policy-based RL의 stochastic policy는 무엇이 다른가?"라는 질문에 대한 핵심은 ②번 비용 계산 구조에 있습니다. TD-MPC는 Horizon 구간까지는 일반적인 MPC 형태를 따르고, 그 이후부터는 강화학습(value network) 형태를 따릅니다. 앞부분은 stochastic policy와 비슷해 보이지만, 뒷부분에서 latent dynamics와 가치 함수를 써서 종단 비용을 계산한다는 점이 가장 큰 차이입니다.

그래서 계산량도 다릅니다. 순수 RL은 가치를 한 번에 평가하면 되지만, TD-MPC는 horizon만큼 N번을 계산해야 합니다. 이 때문에 학습이 느려지는 것이고, 차이가 바로 이 지점에 존재합니다.

보충 설명

(Q&A 보행 생성) 보행 게이트(gait) 프레임 생성에 쓸 수 있냐는 질문에는 — 직접 게이트를 만드는 용도로는 비추천입니다. MPPI의 가장 큰 한계는 결국 "모델링이 가능한 범위"에 묶인다는 점(앞에 턱이 있거나 자세가 무너지는 등 모델 밖 상황에 약함)이고, 강화학습은 그 한계가 훨씬 높습니다.

실무적으로는 계층 구조가 효과적입니다 — 글로벌 플래너는 A*, 로컬 플래너는 MPPI, 더 낮은 제어 단계는 강화학습으로 나누는 4단계 구성. 다만 강화학습의 장점(불확실성 대응)은 "데이터가 충분히 많다"는 전제 위에서 성립하며, 정말 학습에서 본 적 없는 상황엔 약합니다. 이를 극복하려는 시도가 MoE(Mixture of Experts) — 계단 전문가, 두 발로 뛰는 전문가처럼 상황별 전문가(expert)를 모아 시뮬레이션보다 넓은 환경을 커버하는 방식입니다.

Part 13슬라이드 63~67

13MPC와 강화학습의 결합 — TD-MPC (2)

slide 63
슬라이드 63 · 일반 stochastic MPC vs TD-MPC 수식 비교
slide 64
슬라이드 64 · Propagation(모델) 비교 — latent dynamics
slide 65
슬라이드 65 · Sampling 비교 — 노이즈 + 정책 네트워크
slide 66
슬라이드 66 · Horizon 비교 + 요약 표
slide 67
슬라이드 67 · 적용 분야 리스트(언제 무엇을 쓰나)
슬라이드 내용 정리

Q) 어떻게 stochastic MPC와 RL을 결합할 수 있나? — 일반 stochastic MPC와 TD-MPC를 세 가지 구성요소로 나란히 비교합니다.

1. 모델(다이나믹스) · 일반 MPC는 확률 미분방정식 dx_t = f(x_t)dt + G(x_t)(u_t dt + √Σ dw), u_t ~ N(μ_t, σ_t² I). TD-MPC는 레이턴트 다이나믹스(latent dynamics) z_{t+1} = d_θ(z_t, a_t) = d_θ(h_θ(x_t), a_t), 행동은 정책 네트워크(policy network) a_t ~ π_θ(z_t)에서 나옵니다.

2. 경로 비용 → 경로 리턴(path cost → path returns) · 일반 MPC는 비용 X̂(x̂) = Σ q(x̂_k)Δt + E(x_N)를 최소화. TD-MPC는 X̂(ẑ) = Σ γ^k Q_θ(ẑ_k, a_k) + γ^N Q_θ(ẑ_N, a_N)로, 끝에 상태-행동 가치함수(state-action value function) Q를 붙여 미래 보상까지 반영합니다.

3. 최적 제어 입력 · 두 방식 모두 비용/리턴에 대한 지수가중 평균 u_k* = Σ exp(−1/λ · X̂) v_{k,i} / Σ exp(−1/λ · X̂) 형태(MPPI 갱신식)로 입력을 뽑습니다.

교수님 설명

크게 장단점으로 비교할 수 있습니다. 먼저 모델링 관점에서 TD-MPC는 native dynamics가 아니라 학습된 레이턴트 다이나믹스를 쓰기 때문에 아주 복잡한 다이나믹스에도 적용할 수 있다는 게 장점입니다. 또 MPC에는 호라이즌(horizon)이라는 게 존재하는데, infinite-horizon LQR처럼 무한대의 호라이즌까지 가치를 볼 수 있다는 장점도 있습니다.

이 세 가지(레이턴트 다이나믹스 · 정책 네트워크 · 가치함수)를 조합함으로써, 우리가 직접 모델링하지 않은 부분에 대해서도 상당히 잘 동작하는 좋은 방법이 됩니다.

보충 설명

일반 MPC는 호라이즌 N 스텝까지만 비용을 더하고 끝납니다. 그래서 그 너머의 미래는 보지 못하죠. TD-MPC는 마지막 항에 가치함수 Q를 붙여서 "여기서부터 끝까지 받을 미래 보상의 추정치"를 한 번에 대체합니다. 덕분에 짧은 호라이즌만 풀어도 사실상 무한 호라이즌의 효과를 냅니다 — 이게 RL의 부트스트래핑(bootstrapping) 아이디어를 MPC에 이식한 핵심입니다.

슬라이드 내용 정리

1. Propagation(모델/전파) 비교. 일반 stochastic MPC는 시스템 다이나믹스 x_{t+1} = F(x_t, u_t, w)를 그대로 사용합니다.

TD-MPC는 레이턴트 다이나믹스 z_{t+1} = d_θ(z_t, a_t) = d_θ(h_θ(x_t), a_t)를 사용합니다. 상태 x_t는 추정·측정 가능하지만, 인코딩된 레이턴트 상태 z_t = h_θ(x_t)는 직접 추정·측정하기 어렵습니다(intractable to estimate/measure). z_t의 예시로는 차량의 횡슬립각(side slip angle), 로봇의 몸통 속도(torso velocity) 등이 있습니다.

교수님 설명

모델링이 쉬우냐 어려우냐, 불확실성이 크냐 작냐에 따라서 기존 MPC를 쓸지 학습을 합친 MPC를 쓸지가 갈립니다. 예를 들어 자동차를 운전하다 핸들을 돌릴 때, 일반적인 포장도로의 차선 유지(lane keeping)는 사실 모델링이 쉽습니다. 충돌 방지나 긴급 제동도 브레이크만 밟으면 되니 쉽죠. 쉬우니까 그냥 기존 방식(베이스라인)을 씁니다.

그런데 진흙탕 오프로드에서 자율주행을 시킨다고 하면 모델이 어렵습니다. 진흙에서는 횡방향 거동이 매우 불규칙하거든요. 이런 경우에 TD-MPC가 빛을 발합니다. 요즘 잘 아시는 엔드투엔드(end-to-end) 자율주행, 또 자유도가 높은 휠-레그(wheel-legged) 로봇 워크처럼 모델링이 어려운 경우에도 TD-MPC가 효과적으로 작동합니다. 모델링이 어렵고 불확실성이 클 때 TD-MPC를 많이 시도해보면 좋습니다.

슬라이드 내용 정리

2. Sampling(행동 샘플링) 비교. 일반 stochastic MPC는 제어 입력을 랜덤 노이즈에서만 샘플링합니다 — 즉 탐색(exploration)만 합니다.

TD-MPC는 a_t ~ N(μ_t, σ_t² I)의 랜덤 노이즈 + 정책 네트워크 a_t ~ π_θ(z_t)를 함께 씁니다. 즉 노이즈로 탐색(exploration)하면서 정책이 가이던스(guidance)를 제공합니다. 아래 그림은 회색의 수많은 propagation 샘플 중 정책이 이끄는 방향(주황색)이 선택된 궤적임을 보여줍니다.

교수님 설명

샘플링 단계의 가장 큰 차이가 이 부분입니다. 기존 MPC는 순수하게 랜덤 노이즈만 뿌려서 후보 궤적을 만들고 그 중에서 좋은 것을 고릅니다. TD-MPC는 여기에 정책 네트워크가 "대략 이쪽으로 가는 게 좋다"는 방향을 함께 제시해줍니다.

그림에서 회색 선들이 무작위로 퍼진 후보 궤적이고, 주황색이 정책의 가이던스를 받아 선택된 궤적입니다. 노이즈로 넓게 탐색은 하되, 정책이 중심을 잡아주니 더 효율적으로 좋은 행동을 찾아갑니다.

슬라이드 내용 정리

3. Horizon 비교 + 요약. 일반 MPC의 경로 비용 X̂(x̂) = Σ q(x̂_k)Δt + E(x_N)은 고려 호라이즌이 유한(N)입니다. TD-MPC의 경로 리턴 X̂(ẑ) = Σ γ^k Q_θ(ẑ_k, a_k) + γ^N Q_θ(ẑ_N, a_N)은 가치함수 정의 덕분에 고려 호라이즌이 무한대(∞)입니다.

요약 표 — ① 전파(모델): System dynamics vs Latent dynamics(복잡한 다이나믹스에 적용 가능) · ② 행동 샘플링: 랜덤 노이즈(탐색) vs 노이즈 + 정책 네트워크(가이던스) · ③ 예측: 호라이즌 N vs 호라이즌 N + 가치함수(∞). 결론: TD-MPC는 모델링되지 않은 불확실성(unmodeled uncertainty)에 효과적입니다.

교수님 설명

호라이즌 관점에서, 기존 MPC는 N 스텝까지만 보지만 TD-MPC는 가치함수 정의 덕에 사실상 무한 호라이즌을 봅니다. 세 항목을 종합하면 TD-MPC는 모델링하지 않은 불확실성에 효과적입니다.

다만 아주 큰 단점이 하나 있는데, 바로 학습할 때의 계산 비용입니다. 강화학습에서는 에이전트(병렬 환경)를 한 번에 수천 개씩 돌립니다. 그런데 MPC는 호라이즌에 걸쳐 예측을 풀어야 하죠. 예를 들어 40스텝을 예측한다면, 에이전트 4,000개가 한 스텝을 진행하려면 4000 × 40번을 계산해야 합니다.

보통 RL은 호라이즌이 1이라 4,000번이면 되는데, MPC는 호라이즌이 40이면 그 배수만큼 무거워집니다. 그래서 GPU 성능도 좋아야 하지만 오히려 CPU 성능이 더 중요해지고, 학습이 느려질 수 있습니다. 직접 학습을 돌려보면 체감될 겁니다.

보충 설명

Q&A에서 나온 핵심 두 가지를 정리합니다. ① "stochastic MPC vs RL의 stochastic policy, 뭐가 다른가?" — TD-MPC는 비용을 계산할 때 호라이즌까지는 MPC 형태로 풀고, 그 다음(끝단)부터는 가치함수(레이턴트 다이나믹스·가치)로 RL 형태를 따릅니다. 앞부분은 비슷해 보여도 뒷부분에 Q를 붙여 계산하는 것이 결정적 차이입니다. 그래서 원래 RL은 한 번만 계산하면 되는 걸 TD-MPC는 호라이즌만큼 N번 계산해야 해서 느립니다.

"보행(walking) 게이트 생성에 써도 되나?" — 그대로 게이트 생성에 쓰는 건 비추천입니다. 기존 MPPI/PID 제어는 앞에 턱이 있거나 자세가 무너지는 등 모델링의 한계에 부딪힙니다. 대신 계층 구조로 쓰는 게 좋습니다: 글로벌 플래너는 A*, 로컬 플래너는 MPPI, 더 낮은 단계의 정밀 제어는 강화학습 — 이렇게 역할을 4단계로 나누면 효과적입니다. RL은 데이터가 충분하면 불확실성에 잘 대응하지만, 시뮬레이션에서 정리한 환경을 벗어나면 한계가 있습니다. 이를 극복하려는 게 처음에 언급한 MoE(Mixture of Experts)로, 계단 전문가·점프 전문가 등 여러 전문가를 합쳐 더 넓은 환경을 커버합니다.

슬라이드 내용 정리

적용 분야 리스트 — 모델링 난이도(불확실성 수준)에 따라 stochastic MPC와 TD-MPC를 어떻게 선택하는지 표로 정리합니다.

· 차선 유지(Lane keeping, 차량) — 난이도 낮음(↓) → Stochastic MPC(V) · 충돌 회피(Collision avoidance, 차량) — 보통(-) → Stochastic MPC(V) · 오프로드(Offroad, 차량) — 높음(↑) → TD-MPC(V) · 엔드투엔드 주행(End-to-End driving, 차량) — 높음(↑) → TD-MPC(V) · 충돌 회피(휠-레그 로봇) — 높음(↑) → TD-MPC(V).

하단에는 실제 사례로 IROS 2025 Wheel-Legged Robot(WLR) Workshop Competition 우승(Seungho Han 외, Hanyang Univ. Erica · Samsung Research) 및 ANYmal on wheels 데모가 제시됩니다.

교수님 설명

정리하면, 모델링이 쉽고 불확실성이 작은 차선 유지·충돌 회피 같은 과제는 기존 stochastic MPC로 충분합니다. 반대로 진흙탕 오프로드, 엔드투엔드 주행, 휠-레그 로봇처럼 모델링이 어렵고 불확실성이 큰 과제일수록 TD-MPC가 효과적으로 작동합니다.

다만 강화학습의 한계도 분명합니다. 계단·턱·요철 같은 험지를 기존 모델 기반보다 잘 커버할 수는 있지만, 정말 학습해본 적 없는 불확실한 상황이 오면 대응이 어렵습니다. 그래서 시뮬레이션에서 정리한 환경보다 더 넓은 환경을 커버하기 위해 MoE처럼 여러 전문가(expert)를 묶는 방향으로 확장하는 것이 좋습니다. 이상으로 약속한 분량을 마치겠습니다.

용어표 · English ↔ 한글

English
한글
의미
MPC (Model Predictive Control)
모델 예측 제어
예측 구간(horizon)에서 비용함수를 최소화하며 구속조건을 명시적으로 다루는 최적제어.
MPPI (Model Predictive Path Integral)
모델 예측 경로적분 제어
수백 개 경로를 샘플링해 가중평균으로 최적 경로를 만들고 매 스텝 재계산하는 기법.
Path Integral Control
경로적분 제어
여러 후보 경로(roll-out)를 비용에 따라 가중합해 제어 입력을 구하는 방식.
Stochastic / Wiener process
확률 과정 / 위너 프로세스
상태방정식에 노이즈 항을 더해 현실에 가깝게 만든 불확정적 다이나믹스.
Value function
가치 함수
특정 상태에서 앞으로 받을 누적 비용/보상을 나타내며, 최소화 대상이 되는 함수.
HJB (Hamilton-Jacobi-Bellman)
해밀턴-야코비-벨만 방정식
최적제어에서 가치 함수가 만족해야 하는 편미분 방정식.
Actor-Critic
액터-크리틱
행동을 내는 액터와 그를 평가·지도하는 크리틱으로 학습하는 강화학습 구조.
Reward shaping
보상 설계
목표 거리·자세·정지속도 등으로 보상과 벌점을 설계하는 강화학습의 핵심 작업.
Curriculum Learning
커리큘럼 러닝
쉬운 과제부터 점차 난이도를 올려 안정적으로 학습시키는 전략.
Sim-to-Real
심투리얼 전이
시뮬레이션에서 학습한 정책을 실제 환경으로 옮길 때의 격차와 그 극복.
Domain Randomization
도메인 랜덤화
마찰·타이어·지연 등 파라미터를 무작위화해 실제 적응력을 높이는 기법.
Latent Dynamics
잠재 다이나믹스
상태방정식 대신 네트워크로 모델링한 다이나믹스로, 복잡·고장 상황에 유연.
TD-MPC
TD-MPC
스토캐스틱 MPC와 강화학습을 합쳐 레이턴트 다이나믹스·밸류 네트워크를 쓰는 기법.
MoE (Mixture of Experts)
전문가 혼합
직선·코너링·계단 등 환경별 전문가 정책을 섞어 더 넓은 환경을 커버하는 방식.

스스로 점검

  1. 라스트마일 배송에서 드론·바퀴·다리 대비 휠레그드 로봇이 가지는 장점을 에너지 효율과 지형 적응 관점에서 설명할 수 있는가?
  2. 바퀴가 추가되었는데도 MPC 문제의 자유도가 늘지 않고 오히려 단순해지는 이유는 무엇인가?
  3. MPPI에서 회색 경로를 빨간색 최종 경로로 만드는 과정과, 모델에 노이즈(위너 프로세스)를 더하는 이유를 말할 수 있는가?
  4. 액터-크리틱 구조에서 크리틱이 시뮬레이션의 '모든 값'을 알고 액터를 지도한다는 직관은 무엇을 의미하는가?
  5. 커리큘럼 러닝과 도메인 랜덤화는 각각 어떤 문제를 해결하기 위한 기법인가?
  6. Parametric MPC와 TD-MPC는 RL을 어디에 결합하는지, 그리고 둘의 차이는 무엇인가?
  7. 모델링 난이도와 불확실성을 기준으로 기존 MPC와 MPC+RL(TD-MPC) 중 무엇을 쓸지 판단할 수 있는가? TD-MPC의 큰 단점(계산 비용)은 무엇인가?