7.79 최적 제어의 로봇 궤적 생성 응용
1. 로봇 궤적 생성의 최적 제어 관점
로봇 궤적 생성(trajectory generation)은 초기 상태에서 목표 상태로의 시간 매개변수화된 경로를 계산하는 과정이다. 최적 제어 이론은 이 과정에 체계적인 수학적 틀을 제공하여, 시스템 동역학을 만족하면서 원하는 성능 기준을 최적화하는 궤적을 도출할 수 있게 한다. 단순한 다항식 보간이나 사다리꼴 속도 프로파일과 달리, 최적 제어 기반 궤적 생성은 동역학 모델, 물리적 제약, 성능 목표를 통합적으로 고려한다.
2. 매니퓰레이터의 점대점 궤적 최적화
2.1 문제의 구성
n자유도 로봇 매니퓰레이터가 초기 자세 \mathbf{q}_0에서 목표 자세 \mathbf{q}_f로 이동하는 점대점(point-to-point) 궤적 문제를 고려하라. 상태 벡터를 \mathbf{x} = [\mathbf{q}^T, \dot{\mathbf{q}}^T]^T로, 제어 입력을 관절 토크 \boldsymbol{\tau}로 정의하면, 동역학 제약은 다음과 같다.
\mathbf{M}(\mathbf{q})\ddot{\mathbf{q}} + \mathbf{C}(\mathbf{q}, \dot{\mathbf{q}})\dot{\mathbf{q}} + \mathbf{g}(\mathbf{q}) = \boldsymbol{\tau}
경계 조건은 다음과 같이 설정된다.
\mathbf{q}(t_0) = \mathbf{q}_0, \quad \dot{\mathbf{q}}(t_0) = \mathbf{0}, \quad \mathbf{q}(t_f) = \mathbf{q}_f, \quad \dot{\mathbf{q}}(t_f) = \mathbf{0}
물리적 제약으로 관절 토크 한계 \lvert \tau_i \rvert \leq \tau_{i,\max}, 관절 속도 한계 \lvert \dot{q}_i \rvert \leq \dot{q}_{i,\max}, 관절 범위 q_{i,\min} \leq q_i \leq q_{i,\max}가 부과된다.
2.2 다양한 성능 지표
궤적의 품질을 결정하는 성능 지표의 선택에 따라 최적 궤적의 특성이 달라진다.
최소 토크 노름 궤적: 액추에이터 부하를 최소화한다.
J = \int_{t_0}^{t_f} \boldsymbol{\tau}^T \mathbf{R} \boldsymbol{\tau} \, dt
최소 저크(jerk) 궤적: 관절 가가속도의 적분을 최소화하여 기계적 충격을 저감한다.
J = \int_{t_0}^{t_f} \dddot{\mathbf{q}}^T \dddot{\mathbf{q}} \, dt
최소 시간 궤적: 작업 시간을 최소화한다.
J = t_f
복합 지표: 여러 목표를 동시에 고려한다.
J = \alpha \int_{t_0}^{t_f} \boldsymbol{\tau}^T \boldsymbol{\tau} \, dt + \beta \int_{t_0}^{t_f} \lVert \mathbf{q}(t) - \mathbf{q}_d(t) \rVert^2 dt
3. 경로 매개변수화 기반 시간 최적 궤적
3.1 경로-시간 분리 기법
경로의 기하학적 형상이 사전에 결정되어 있고, 해당 경로를 따르는 시간 할당만을 최적화하는 경우, 경로 매개변수 s \in [0, 1]을 도입하여 관절 좌표를 \mathbf{q}(s)로 표현한다. 이때 관절 속도와 가속도는 다음과 같이 분해된다.
\dot{\mathbf{q}} = \mathbf{q}'(s) \dot{s}, \quad \ddot{\mathbf{q}} = \mathbf{q}'(s) \ddot{s} + \mathbf{q}''(s) \dot{s}^2
여기서 \mathbf{q}' = d\mathbf{q}/ds이다. 이를 운동 방정식에 대입하면, 토크 제약 \lvert \tau_i \rvert \leq \tau_{i,\max}는 (\dot{s}^2, \ddot{s}) 평면에서 선형 부등식 제약으로 변환된다. 변수 치환 b(s) = \dot{s}^2를 통해 시간 최적 문제가 다음의 볼록 최적화 문제로 변환된다.
\min_{b(s)} \int_0^1 \frac{1}{\sqrt{b(s)}} ds
이 기법은 Bobrow, Dubowsky, Gibson(1985)에 의해 제안되었으며, Verscheure 등(2009)에 의해 볼록 최적화 형태로 재정식화되었다.
4. 직접법에 의한 궤적 최적화
4.1 직접 배치법(Direct Collocation)
연속 시간 최적 제어 문제를 유한 차원 비선형 계획 문제로 변환하는 대표적인 직접법이다. 시간 구간 [t_0, t_f]를 N개의 구간으로 분할하고, 각 격자점에서의 상태와 제어 입력을 결정 변수로 취급한다.
\min_{\mathbf{x}_0, \ldots, \mathbf{x}_N, \, \mathbf{u}_0, \ldots, \mathbf{u}_N} \quad \phi(\mathbf{x}_N) + \sum_{k=0}^{N-1} L_k(\mathbf{x}_k, \mathbf{u}_k) \Delta t_k
동역학 제약은 배치점(collocation point)에서의 결함 조건(defect constraint)으로 이산화된다. 에르미트-심프슨(Hermite-Simpson) 배치의 경우 구간 중점에서 다음의 등식 제약이 부과된다.
\mathbf{x}_{k+1/2} - \frac{1}{2}(\mathbf{x}_k + \mathbf{x}_{k+1}) - \frac{\Delta t_k}{8}(\mathbf{f}_k - \mathbf{f}_{k+1}) = \mathbf{0}
\mathbf{x}_{k+1} - \mathbf{x}_k - \frac{\Delta t_k}{6}(\mathbf{f}_k + 4\mathbf{f}_{k+1/2} + \mathbf{f}_{k+1}) = \mathbf{0}
이렇게 구성된 대규모 비선형 계획 문제는 순차적 이차 계획법(SQP)이나 내점법(interior point method)으로 풀 수 있다.
4.2 직접 사격법(Direct Shooting)
제어 입력을 구분 상수 또는 다항식으로 매개변수화하고, 각 구간에서 상태 방정식을 수치적으로 전방 적분하여 상태 궤적을 생성하는 방법이다. 결정 변수는 제어 입력의 매개변수만으로 구성되며, 상태는 순방향 시뮬레이션으로 결정된다. 단일 사격법(single shooting)은 초기값에 민감한 반면, 다중 사격법(multiple shooting)은 구간별로 독립적인 초기 조건을 도입하여 수치적 안정성을 향상시킨다.
5. 간접법에 의한 궤적 최적화
간접법(indirect method)은 폰트랴긴의 최대 원리로부터 유도되는 최적성의 필요 조건을 직접 풀어 최적 궤적을 구하는 방법이다. 상태 방정식과 공상태 방정식으로 구성된 두 점 경계값 문제(TPBVP)를 사격법 또는 배치법으로 해결한다.
간접법의 장점은 이론적으로 최적성 조건을 정확히 만족하는 해를 제공한다는 점이다. 그러나 공상태 변수의 초기 추정이 어렵고, 제어 입력에 구간 제약이 있는 경우 전환 시각의 결정이 필요하며, 부등식 상태 제약의 처리가 복잡하다. 이러한 한계로 인해 로봇 공학 응용에서는 직접법이 더 널리 사용된다.
6. 선형화 기반 궤적 안정화
6.1 iLQR(Iterative Linear Quadratic Regulator)
비선형 시스템의 궤적 최적화를 위한 효율적인 방법으로, 현재 궤적 주위에서 동역학을 선형화하고 비용 함수를 이차 근사하여 LQR 하위 문제를 반복적으로 풀어 궤적을 개선한다.
k번째 반복에서의 명목 궤적 (\bar{\mathbf{x}}_i, \bar{\mathbf{u}}_i) 주위의 편차를 \delta \mathbf{x}_i = \mathbf{x}_i - \bar{\mathbf{x}}_i, \delta \mathbf{u}_i = \mathbf{u}_i - \bar{\mathbf{u}}_i로 정의하면, 선형화된 동역학과 이차 근사 비용 함수에 대한 최적 피드백 법칙은 다음과 같다.
\delta \mathbf{u}_i^* = \mathbf{k}_i + \mathbf{K}_i \delta \mathbf{x}_i
여기서 \mathbf{k}_i는 피드포워드 항, \mathbf{K}_i는 피드백 이득이다. 이 법칙은 시간 역방향의 동적 계획법(backward pass)으로 계산되며, 갱신된 제어를 적용하여 상태 궤적을 순방향 시뮬레이션(forward pass)으로 재생성한다.
6.2 DDP(Differential Dynamic Programming)
iLQR의 확장으로, 비용 함수와 동역학의 이차 근사에서 동역학의 2차 미분 항까지 포함하여 더 정확한 이차 모델을 구성한다. 2차 미분의 계산 비용이 추가되지만, 수렴 속도가 향상되며 최적해 근방에서 이차 수렴 특성을 보인다.
7. 무인 비행체의 궤적 생성
7.1 멀티로터의 최소 스냅 궤적
멀티로터 무인 비행체의 위치 궤적에서 스냅(snap, 가가가속도)의 적분을 최소화하면, 기체의 추력 변동이 최소화되어 매끄러운 비행이 실현된다. 위치 벡터 \mathbf{r}(t)의 각 성분에 대해 다음의 성능 지표를 최소화한다.
J = \int_{t_0}^{t_f} \lVert \mathbf{r}^{(4)}(t) \rVert^2 dt
경유점(waypoint) \mathbf{r}_0, \mathbf{r}_1, \ldots, \mathbf{r}_M이 주어진 경우, 각 구간에서 7차 다항식으로 궤적을 표현하면 문제가 이차 계획 문제(QP)로 변환된다. Mellinger와 Kumar(2011)는 이 접근법을 체계적으로 정립하였으며, 이후 연구에서 시간 할당의 동시 최적화, 안전 복도(safe corridor) 제약의 통합 등이 발전되었다.
7.2 고정익 항공기의 궤적 최적화
고정익 항공기나 전환비행(transition flight) 기체에서는 공기역학적 제약이 궤적 최적화에 핵심적으로 관여한다. 받음각(angle of attack), 양력 계수, 실속(stall) 한계 등이 상태 제약으로 포함되며, 에너지 최적화와 함께 비행 봉투(flight envelope) 내에서의 안전한 궤적을 보장해야 한다.
8. 보행 로봇의 궤적 최적화
8.1 접촉 포함 궤적 최적화
보행 로봇(legged robot)의 궤적 최적화는 접촉 전환(contact switching)에 의한 불연속성이 핵심 난제이다. 발이 지면에 접촉하는 구간과 공중에 있는 구간이 교대하며, 각 구간의 동역학이 다르다. 이를 처리하기 위해 다음의 접근법이 사용된다.
다상 궤적 최적화(multi-phase trajectory optimization): 각 접촉 구간을 별도의 상(phase)으로 분리하고, 상 전환 조건(접촉 조건, 이탈 조건)을 등식 제약으로 부과한다.
접촉력 기반 정식화: 접촉력을 추가 결정 변수로 포함하고, 마찰 원추 제약 \lVert \mathbf{f}_t \rVert \leq \mu f_n과 상보성 제약(접촉 시에만 힘 발생)을 부과한다.
8.2 중심 동역학 기반 궤적 생성
전신 동역학 모델의 복잡성을 회피하기 위해, 무게 중심(center of mass)의 동역학만을 고려하는 축소 모델이 사용된다. 선형 도립 진자 모델(Linear Inverted Pendulum Model, LIPM)은 이족 보행 로봇의 보행 패턴 생성에 널리 적용되며, 이 모델에 기반한 궤적 최적화는 해석적 해를 허용하는 경우가 많다.
9. 실시간 궤적 재계획
동적 환경에서 로봇이 운용될 때, 사전에 계획된 궤적을 실시간으로 수정해야 하는 상황이 발생한다. 모델 예측 제어(Model Predictive Control, MPC) 프레임워크는 유한 시간 지평(finite horizon)에서의 최적 제어 문제를 매 제어 주기마다 반복적으로 풀어, 변화하는 환경과 상태 추정 오차에 적응하는 궤적을 생성한다. 실시간 성능을 확보하기 위해 다음의 기법이 활용된다.
- 웜 스타트(warm start): 이전 해를 초기 추정으로 활용하여 수렴 속도를 가속한다.
- 부분 최적화: 전체 수렴이 아닌 제한된 반복 횟수 내에서의 부분적 개선을 수용한다.
- 문제 규모 축소: 예측 지평의 길이와 이산화 격자의 밀도를 조절하여 계산량과 해의 품질 사이의 균형을 확보한다.
10. 참고 문헌
- Betts, J. T. (2010). Practical Methods for Optimal Control and Estimation Using Nonlinear Programming (2nd ed.). SIAM.
- Bobrow, J. E., Dubowsky, S., & Gibson, J. S. (1985). “Time-Optimal Control of Robotic Manipulators Along Specified Paths.” The International Journal of Robotics Research, 4(3), 3–17.
- Mellinger, D., & Kumar, V. (2011). “Minimum Snap Trajectory Generation and Control for Quadrotors.” Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), 2520–2525.
- Verscheure, D., Demeulenaere, B., Swevers, J., De Schutter, J., & Diehl, M. (2009). “Time-Optimal Path Tracking for Robots: A Convex Optimization Approach.” IEEE Transactions on Automatic Control, 54(10), 2318–2327.
- Tassa, Y., Erez, T., & Todorov, E. (2012). “Synthesis and Stabilization of Complex Behaviors through Online Trajectory Optimization.” Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 4906–4913.
version: 1.0