Lecture 12. MPC 고급 주제
SAIL 연구실의 핵심 연구 주제. 안정성·재귀 실현가능성에서 확률적·경제적·학습 기반 MPC까지.
목차
- 안정성과 재귀 실현가능성 — 왜 MPC가 "그냥" 수렴하지 않는가
- 종단 비용 · 종단 제약 · 보조 제어기
- MPC 변형의 큰 지도
- Nominal → Robust → Stochastic MPC
- Tube-based MPC 심화
- Economic MPC
- Explicit MPC — 오프라인 해
- 실시간 MPC와 RTI 스킴
- 학습 기반 MPC
- Koopman Operator
- MPPI (Sampling-based MPC)
- MPC + CBF — 안전 임베디드 최적화
- 정리 · 더 읽어볼 자료
1. 안정성과 재귀 실현가능성
명목 MPC(nominal MPC)는 유한 호라이즌 OCP를 반복해 푸는 것입니다. 그런데 유한 호라이즌 최적성이 무한 호라이즌 폐루프 안정성을 보장하지는 않습니다. 이 간극이 MPC 이론의 핵심입니다.
두 가지 근본 개념을 먼저 이해해야 합니다:
- 실현가능성 (Feasibility) — 현재 상태 $x$에서 OCP가 해를 가지는가? 해가 없으면 MPC는 그 자리에서 "멈춘" 것과 같습니다.
- 재귀 실현가능성 (Recursive feasibility) — 이번 스텝에서 실현가능하면 다음 스텝에서도 실현가능한가? 이것이 보장되지 않으면 갑자기 MPC가 "해 없음" 상태에 빠질 수 있습니다.
이 두 성질과 폐루프 점근 안정성을 동시에 보장하는 고전적 도구가 바로 종단 요소입니다.
2. 종단 비용 · 종단 제약 · 보조 제어기
Mayne et al. (2000)의 "sufficient conditions for stability" — 다음 세 조건이 갖춰지면 nominal MPC는 안정합니다:
- 종단 집합 $\mathcal{X}_f$는 원점을 포함하는 invariant set이어야 한다. 즉 보조 제어기 $\kappa_f(x)$ 아래에서 $x \in \mathcal{X}_f \Rightarrow f(x, \kappa_f(x)) \in \mathcal{X}_f$.
- 보조 제어기 $\kappa_f$는 $\mathcal{X}_f$에서 상태·입력 제약을 만족시킨다.
- 종단 비용 $p(x)$는 종단 집합 위에서 무한 호라이즌 비용의 control Lyapunov function이다: $p(f(x,\kappa_f(x))) - p(x) \le -q(x, \kappa_f(x))$.
직관: 호라이즌 끝에서 "LQR과 같은 안정적인 국소 제어기"로 부드럽게 착륙시키고, 그때부터의 나머지 비용을 $p(x)$로 대체하면, 유한 호라이즌 해가 사실은 무한 호라이즌 해의 상한이 되어 Lyapunov 감소 논증이 닫힙니다.
실전에서 가장 흔한 선택:
- $\kappa_f(x) = -K_\text{LQR} x$ (무한 호라이즌 LQR 게인)
- $p(x) = x^\top P x$, $P$는 이산 리카티 방정식의 해
- $\mathcal{X}_f$ = 이 LQR 게인 하에서 제약을 어기지 않는 최대 invariant ellipsoid
3. MPC 변형의 큰 지도
지난 30년간 MPC는 여러 방향으로 확장되었습니다. 축은 대체로 세 가지입니다:
| 축 | 질문 | 변형 |
|---|---|---|
| 불확실성 처리 | 모델 오차와 외란을 어떻게? | Nominal · Robust (min-max, tube) · Stochastic (chance constraint, scenario) |
| 비용 구조 | 무엇을 최소화? | Tracking MPC · Economic MPC · Lyapunov-based EMPC |
| 해법 방식 | 어떻게 풀 것인가? | Implicit (온라인 QP/NLP) · Explicit (오프라인 parametric) · Sampling (MPPI) · Learning-based (DNN 근사) |
4. Nominal → Robust → Stochastic MPC
4.1 Nominal MPC
외란 $w=0$을 가정하고 $f(x,u)$만으로 예측. 실제 외란이 있으면 성능과 제약 만족이 망가질 수 있습니다.
4.2 Robust MPC — 최악의 경우 보장
유계 외란 $w \in \mathcal{W}$에 대해 어떤 외란이 와도 제약이 지켜지도록 설계. 가장 단순한 접근은 min-max MPC:
$$ \min_{U} \max_{w \in \mathcal{W}} \; \sum_k q(x_k, u_k) $$하지만 min-max는 일반적으로 계산이 매우 비쌉니다. 이 때문에 실전에서는 tube-based 방식이 표준이 되었습니다 (아래 5장).
4.3 Stochastic MPC — 확률적 보장
외란이 확률 분포 $w \sim \mathcal{D}$로 주어지면, 제약을 확률로 완화합니다:
$$ \mathrm{Pr}\bigl(x_k \in \mathcal{X}\bigr) \ge 1 - \varepsilon $$이를 Chance Constraint라 부릅니다. $\varepsilon$이 작을수록 안전하지만 보수적입니다. 풀이 기법: scenario approach (Calafiore & Campi), analytic reformulation (Gaussian 가정 시), Polynomial Chaos Expansion 등.
5. Tube-based MPC 심화
Mayne, Seron, Raković (Automatica 2005)의 Tube MPC는 다음 발상에 기반합니다:
그러면 명목 OCP는 원래 제약을 타이트닝된 제약으로 풉니다:
$$ \bar{x}_k \in \mathcal{X} \ominus \mathcal{S}, \quad \bar{u}_k \in \mathcal{U} \ominus K\mathcal{S} $$여기서 $\ominus$는 Pontryagin 차집합입니다. 즉 "외란이 만들어낼 수 있는 최대 편차만큼 제약을 미리 당긴다"는 뜻입니다.
장점:
- 온라인 문제가 여전히 볼록 QP — 실시간 구현 가능
- 재귀 실현가능성과 강건 점근 안정성 이론적 보장
- mRPI 집합은 오프라인으로 한 번만 계산
단점: 선형 시스템에만 깔끔하게 적용. 비선형에서는 근사 기법(homothetic tube, elastic tube)이 필요합니다.
6. Economic MPC
전통적 MPC는 항상 "참조로부터의 거리"를 최소화합니다 (tracking MPC). 반면 Economic MPC는 직접적인 경제적 비용(에너지 요금, 연료 소모, 수율 감소)을 그대로 비용 함수로 사용합니다.
$$ \min \; \sum_k \ell_\text{econ}(x_k, u_k) $$문제: $\ell_\text{econ}$은 일반적으로 양정치(positive definite)가 아니므로 고전적 Lyapunov 논증이 직접 적용되지 않습니다. 해결책: dissipativity를 이용한 turnpike 분석 (Diehl, Amrit, Rawlings 2011; Grüne 2013).
응용: 화학 플랜트에서 스팀·전력 가격이 시간에 따라 변할 때, "중간 세트포인트를 쫓지 말고 돈을 최소화하라"라는 식으로 쓸 수 있습니다.
7. Explicit MPC — 오프라인 해
선형 MPC의 해 $u^*(x)$는 사실 상태 $x$에 대한 조각별 아핀 함수입니다 (Bemporad, Morari, Dua, Pistikopoulos, 2002). 이 관찰을 이용하면 MPC 문제를 오프라인에서 한 번 풀어 상태공간을 다면체 조각으로 나누고, 각 조각에 아핀 게인 $u = F_i x + g_i$를 저장해 둘 수 있습니다.
- 온라인에서는 현재 $x$가 어느 조각에 속하는지 검색만 하면 됨 (나노초 단위)
- PLC나 저전력 MCU에도 탑재 가능
- 단점: 조각 수가 $n, N, $ 제약 수에 지수적으로 증가 — 중대형 문제엔 부적합
8. 실시간 MPC와 RTI 스킴
비선형 MPC는 매 스텝 SQP를 풀어야 해 느릴 수 있습니다. Real-Time Iteration (RTI) (Diehl, Bock, Schlöder, 2002)은 다음 트릭을 씁니다:
- SQP를 한 번만 반복하고 그 결과를 그냥 쓴다.
- 다음 스텝에서는 새로운 측정값으로 다시 한 번 반복.
- "수렴 전이라도 써먹는다" — 시간에 따라 자연스럽게 최적점으로 수렴
이 덕분에 50–100 Hz 속도의 드론·레이싱카 NMPC가 가능해졌습니다. acados, CasADi가 RTI를 기본 지원합니다.
9. 학습 기반 MPC
최근 10년간 가장 활발한 방향입니다. 세 갈래로 나뉩니다:
- 모델 학습 — $f(x,u)$를 가우시안 프로세스(GP-MPC) 또는 신경망으로 학습해 사용. 모델 불확실성을 Bayes 후행으로 다룰 수 있어 robust MPC로 자연스럽게 확장.
- 정책 근사 — MPC 법칙 $u^*(x)$ 자체를 DNN으로 모사해 온라인 계산을 제거 (Imitation learning from MPC).
- 안전 강화학습 — MPC를 RL 정책의 "안전 필터"로 사용 (Zanon & Gros 2021, "Safe RL via MPC").
10. Koopman Operator
비선형 시스템을 직접 다루기는 어렵습니다. Koopman 이론은 상태 $x$를 더 높은 차원의 관측 함수 $g(x)$로 "들어 올리면" 그 공간에서는 시스템이 선형이 된다고 말합니다.
$$ g(x_{k+1}) \approx \mathcal{K} \, g(x_k) $$한 번 선형화되면 우리가 아는 모든 선형 제어 도구(LQR, 칼만 필터, 선형 MPC)를 그대로 쓸 수 있어 매우 강력합니다. 데이터 기반 식별 방법으로 DMD (Dynamic Mode Decomposition), EDMD, SINDy가 있습니다.
11. MPPI (Model Predictive Path Integral)
최적화 대신 샘플링으로 푸는 MPC입니다.
- 현재 입력 시퀀스 $U$에 노이즈 $\epsilon \sim \mathcal{N}(0, \Sigma)$를 더해 $K$개의 후보 $U^{(k)} = U + \epsilon^{(k)}$를 만듭니다.
- 각 후보에 대해 시스템을 forward simulate해 비용 $S^{(k)}$를 평가합니다.
- Gibbs 분포의 가중치 $w^{(k)} \propto \exp(-S^{(k)}/\lambda)$를 계산합니다.
- 가중 평균 $U \leftarrow \sum_k w^{(k)} U^{(k)}$로 입력을 갱신합니다.
미분이 필요 없어 매우 비선형이거나 불연속적인 비용에도 잘 작동하고, GPU 병렬화에 이상적입니다. 자율주행 레이싱(Georgia Tech AutoRally, 2016)과 legged 로봇에서 주류가 되었습니다.
12. MPC + CBF — 안전 임베디드 최적화
L11의 MPC와 L8의 CBF를 결합하면, 매 스텝의 최적화 안에서 안전 제약을 discrete-time CBF 형태로 함께 풀 수 있습니다.
$$ \min \;\sum \|x_i - x_\text{ref}\|_Q^2 + \|u_i\|_R^2 \quad \text{s.t.}\quad h_j(x_{i+1}) \ge (1-\gamma)\, h_j(x_i),\;\forall i, j $$SAIL 연구실의 대표 변형 중 하나가 TC-CBF (Turning Circle CBF)로, 차량의 회전 반경 한계까지 고려해 비현실적으로 급격한 회피를 방지합니다. 자율수상선(ASV)의 경우 조류와 관성이 커서 고전 CBF가 쉽게 실현불가능(infeasible)해지는데, TC-CBF는 회피 반경을 기구학적으로 일관되게 잡아 이 문제를 해결합니다.
13. 정리: 어디까지 왔나
- L1–L3 — 로봇을 수학으로 묘사하는 법 (동역학, 상태공간)
- L4–L5 — 잡음 속에서 상태를 추정 (칼만 필터)
- L6 — 경로 찾기 (A*, RRT)
- L7–L8 — 추종과 안전 (PID, CBF)
- L9–L10 — 데이터로부터 학습 (회귀, 신경망)
- L11–L12 — 미래를 보고 최적 제어 (MPC와 변형들)
📖 더 읽어볼 자료
- Jones, Borrelli, Morari, Model Predictive Control — Part I: Introduction, ETH 강의노트 2015. 본 강의의 응용 예시와 구조적 설명이 이 슬라이드에 크게 빚지고 있습니다.
- Mayne, Rawlings, Rao, Scokaert, "Constrained model predictive control: Stability and optimality", Automatica 2000 — 종단 비용·종단 집합 기반 안정성 증명의 표준 논문.
- Bemporad, Morari, Dua, Pistikopoulos, "The explicit linear quadratic regulator for constrained systems", Automatica 2002 — Explicit MPC 원논문.
- Diehl, Bock, Schlöder, "A real-time iteration scheme for nonlinear optimization in optimal feedback control", SIAM J. Control Opt. 2005 — RTI 스킴.
- Diehl, Amrit, Rawlings, "A Lyapunov function for economic optimizing model predictive control", IEEE TAC 2011.
- Hewing, Wabersich, Menner, Zeilinger, "Learning-Based Model Predictive Control: Toward Safe Learning in Control", Annual Review 2020 — 학습 기반 MPC 리뷰.
- acados — 고성능 임베디드 MPC 오픈소스 프레임워크.
- PythonRobotics — 모든 알고리즘의 짧은 파이썬 구현
- CasADi — MPC를 위한 자동 미분 + 비선형 최적화 라이브러리
- MIT Underactuated Robotics — Russ Tedrake의 무료 교재
- Mayne, Seron, Raković, "Robust model predictive control of constrained linear systems with bounded disturbances", Automatica 2005 — Tube MPC의 원논문.
- Williams, Drews, Goldfain, Rehg, Theodorou, "Aggressive driving with model predictive path integral control", ICRA 2016 — MPPI의 자율주행 응용.
- Brunton, Budišić, Kaiser, Kutz, "Modern Koopman Theory for Dynamical Systems", SIAM Review 2022 — Koopman 이론 리뷰.
- SAIL Publications — 본 강의의 토대가 된 우리 연구실 논문들