11.22 리 군 기반 궤적 최적화

1. 궤적 최적화의 개요

궤적 최적화(trajectory optimization)는 로봇의 운동을 시간의 함수로 표현하고 특정 비용 함수를 최소화하는 운동을 찾는 문제이다. 매니퓰레이터의 작업 공간 운동, 모바일 로봇의 경로 계획, 무인 항공기의 비행 경로 등 다양한 응용에서 핵심적인 기술이다. 강체의 자세가 SE(3)의 원소이므로 궤적도 SE(3) 위의 곡선이며, 궤적 최적화는 본질적으로 다양체 위의 최적화 문제이다. 리 군 이론은 이러한 문제에 자연스럽고 효율적인 접근 방법을 제공한다.

2. 궤적의 수학적 표현

2.1 시간 매개변수화

궤적은 시간을 매개변수로 한 강체 변환의 함수이다.

\mathbf{T}(t) : [t_0, t_f] \to SE(3)

여기서 t_0는 시작 시간, t_f는 종료 시간이다.

2.2 매끄러움

궤적은 일반적으로 매끄러운(미분 가능한) 곡선으로 가정된다. 이는 부드러운 운동을 위해 필요하다.

2.3 미분

궤적의 미분은 트위스트(또는 그 시간 미분)이다.

\dot{\mathbf{T}}(t) = \mathbf{T}(t)\hat{\mathcal{V}}_b(t)

여기서 \mathcal{V}_b(t)는 본체 트위스트이다.

3. 비용 함수의 정의

3.1 일반적 형태

궤적 최적화의 비용 함수는 일반적으로 다음의 형태이다.

J = \int_{t_0}^{t_f}L(\mathbf{T}(t), \mathcal{V}(t), \mathbf{u}(t))\,dt + \Phi(\mathbf{T}(t_f))

여기서

  • L: 라그랑주 항(즉시 비용)
  • \Phi: 종료 비용
  • \mathbf{u}(t): 제어 입력

3.2 일반적 비용 항

자주 사용되는 비용 항은 다음과 같다.

3.2.1 시간 최소화

L = 1

이는 작업 시간을 최소화한다.

3.2.2 에너지 최소화

L = \frac{1}{2}\mathbf{u}^T\mathbf{R}\mathbf{u}

여기서 \mathbf{R}은 가중치 행렬이다.

3.2.3 부드러움 (스내프 최소화)

L = \lVert\dddot{\mathcal{V}}\rVert^2

이는 트위스트의 3차 미분(스내프)을 최소화한다.

3.2.4 목표 추적

L = \lVert\log(\mathbf{T}^{-1}\mathbf{T}_d)\rVert^2

여기서 \mathbf{T}_d는 목표 자세이다.

4. 제약 조건

4.1 경계 조건

궤적은 시작과 종료 자세가 지정된다.

\mathbf{T}(t_0) = \mathbf{T}_0, \quad \mathbf{T}(t_f) = \mathbf{T}_f

또한 시작과 종료 트위스트가 지정될 수 있다.

4.2 동역학 제약

로봇의 동역학이 제약으로 포함된다. 매니퓰레이터의 경우

\mathbf{M}(\mathbf{q})\ddot{\mathbf{q}} + \mathbf{C}(\mathbf{q}, \dot{\mathbf{q}})\dot{\mathbf{q}} + \mathbf{g}(\mathbf{q}) = \boldsymbol{\tau}

이러한 동역학이 경로의 실현 가능성을 결정한다.

4.3 입력 제약

제어 입력에는 한계가 있다.

\boldsymbol{\tau}_{\min} \leq \boldsymbol{\tau}(t) \leq \boldsymbol{\tau}_{\max}

4.4 상태 제약

상태(자세, 속도)에도 제약이 있다.

  • 관절 각도 한계
  • 자세 한계
  • 속도 한계
  • 가속도 한계
  • 충돌 회피

5. 직접 방법과 간접 방법

5.1 직접 방법

직접 방법(direct method)은 궤적을 시간의 매개변수화된 형태로 표현하고, 매개변수에 대한 최적화를 수행한다.

5.1.1 직접 콜로케이션

직접 콜로케이션(direct collocation)은 시간을 이산화하고 각 시간 단계에서의 상태와 입력을 최적화 변수로 사용한다. 동역학 제약이 콜로케이션 점에서 만족되어야 한다.

5.1.2 직접 단발

직접 단발(direct shooting)은 입력을 매개변수화하고, 동역학을 적분하여 궤적을 생성한다. 입력 매개변수에 대한 최적화가 수행된다.

5.2 간접 방법

간접 방법(indirect method)은 변분법(calculus of variations)이나 폰트랴긴의 최대 원리(Pontryagin’s maximum principle)를 사용하여 최적성 조건을 유도하고, 그 조건을 만족하는 궤적을 찾는다.

5.2.1 폰트랴긴의 최대 원리

해밀턴 함수를 정의하고, 입력이 해밀턴 함수를 최대화(또는 최소화)하는 조건을 유도한다.

5.2.2 응용

간접 방법은 이론적으로 우아하지만, 실제 구현이 복잡하다. 직접 방법이 더 일반적으로 사용된다.

6. 매개변수화

6.1 매끄러운 곡선의 매개변수화

리 군 위의 매끄러운 곡선을 매개변수화하는 다양한 방법이 있다.

6.1.1 다항식 매개변수화

각 시간 구간에서 트위스트를 시간의 다항식으로 표현한다.

\mathcal{V}(t) = \sum_{i=0}^{N}\mathbf{c}_i t^i

여기서 \mathbf{c}_i가 최적화 변수이다.

6.1.2 스플라인

B-스플라인이나 다른 스플라인을 사용하여 매끄러운 곡선을 표현한다.

6.1.3 푸리에 급수

주기 운동의 경우 푸리에 급수가 적합하다.

6.2 다양체 위의 보간

리 군 위의 매끄러운 보간은 일반적으로 리 대수에서의 매끄러운 보간을 통해 이루어진다.

7. 부드러운 궤적의 생성

7.1 다항식 궤적

가장 단순한 부드러운 궤적은 다항식이다. 5차 다항식이 일반적으로 사용되며, 시작과 종료의 위치, 속도, 가속도를 만족한다.

7.2 미니멈 자크

자크(jerk, 가속도의 시간 미분)를 최소화하는 궤적이 부드럽고 자연스럽다.

7.3 미니멈 스내프

스내프(snap, 자크의 시간 미분)를 최소화하는 궤적이 더욱 부드럽다. 드론의 곡예 비행에서 자주 사용된다.

7.4 시간 최적

작업 시간을 최소화하면서 동역학 제약을 만족하는 궤적이 시간 최적 궤적이다. 일반적으로 입력이 한계에 도달하는 형태이다.

8. 매니퓰레이터의 궤적 최적화

8.1 작업 공간 궤적

매니퓰레이터의 작업 공간 궤적은 말단 장치의 자세 함수이다. 시작과 목표 자세, 그리고 경유점이 지정된다.

8.2 관절 공간 궤적

작업 공간 궤적이 결정되면, 역기구학을 통해 관절 공간 궤적이 계산된다. 또는 관절 공간에서 직접 궤적이 생성될 수도 있다.

8.3 시간 매개변수화

궤적의 시간 매개변수화는 동역학 제약을 고려하여 결정된다. 자코비안의 특이성과 관절 한계가 고려된다.

8.4 응용

산업 매니퓰레이터의 픽 앤 플레이스, 용접, 도장 등에서 궤적 최적화가 사용된다.

9. 무인 항공기의 궤적 최적화

9.1 미니멈 스내프 궤적

쿼드콥터의 부드러운 비행에는 미니멈 스내프 궤적이 사용된다. 멜링거(Mellinger)와 쿠마르(Kumar)가 제안한 방법이 표준이다.

9.2 다항식 표현

위치를 시간의 다항식으로 표현하고, 다항식 계수가 최적화 변수이다.

\mathbf{p}(t) = \sum_{i=0}^{N}\mathbf{c}_i t^i

자세는 위치와 가속도로부터 유도된다.

9.3 미분 평탄성

쿼드콥터는 미분 평탄(differentially flat) 시스템이며, 이로 인해 위치와 요 각도만으로 모든 상태와 입력을 결정할 수 있다.

9.4 응용

드론의 자율 비행, 곡예 비행, 경로 추종 등에서 궤적 최적화가 활용된다.

10. 모바일 로봇의 궤적 최적화

10.1 평면 운동

평면 모바일 로봇의 궤적은 SE(2) 위의 곡선이다. 위치와 방향이 시간의 함수이다.

10.2 비홀로노믹 제약

자동차와 같은 비홀로노믹 시스템은 운동에 제약이 있다. 측면 이동이 직접 불가능하다.

10.3 Dubins 경로

Dubins 경로는 비홀로노믹 시스템의 시간 최적 경로이며, 직선과 호의 결합으로 표현된다.

10.4 Reeds-Shepp 경로

Reeds-Shepp 경로는 후진을 허용하는 Dubins 경로의 확장이다.

11. 곡예 비행 궤적

11.1 동적 한계

곡예 비행에서 드론은 동역학적 한계에 가깝게 동작한다. 추력 한계, 각속도 한계 등이 제약이 된다.

11.2 시간 최적

시간 최적 궤적은 작업 시간을 최소화한다. 일반적으로 입력이 한계에 도달하는 형태이다.

11.3 통과 게이트

여러 게이트를 통과하는 드론 레이싱에서 궤적 최적화가 핵심이다. 각 게이트의 통과 자세가 경유점이 된다.

12. 모델 예측 제어

12.1 개념

모델 예측 제어(Model Predictive Control, MPC)는 미래 상태를 예측하고 비용을 최소화하는 최적 입력을 계산하는 제어 방법이다.

12.2 궤적 최적화로서의 MPC

MPC는 매 시간 단계마다 궤적 최적화 문제를 풀고, 최적 입력의 첫 번째 값만 적용한다. 다음 시간 단계에서 다시 최적화한다.

12.3 다양체 위의 MPC

자세 변수의 경우 MPC도 다양체 위에서 동작한다. 매개변수화와 자코비안에 리 군 이론이 활용된다.

12.4 응용

MPC는 자율 주행, 드론 제어, 매니퓰레이터 제어 등에서 광범위하게 사용된다.

13. 알고리즘과 솔버

13.1 비선형 프로그래밍

궤적 최적화는 일반적으로 비선형 프로그래밍(nonlinear programming) 문제로 표현된다. 솔버는 IPOPT, SNOPT, NLOPT 등이 있다.

13.2 직접 콜로케이션 도구

CasADi, OpenOCL 등의 도구가 직접 콜로케이션을 지원한다. CasADi는 자동 미분과 최적화 솔버를 통합한다.

13.3 매니퓰레이터 운동 계획

OMPL, MoveIt 등의 라이브러리가 매니퓰레이터의 운동 계획과 궤적 최적화를 지원한다.

13.4 드론 궤적 생성

PX4, ArduPilot 등의 비행 제어 시스템에 궤적 생성 모듈이 포함되어 있다.

14. 학습 기반 궤적 최적화

14.1 강화 학습

강화 학습은 궤적 최적화의 대안이 될 수 있다. 학습된 정책이 최적 행동을 결정한다.

14.2 모방 학습

전문가의 시범으로부터 궤적을 학습하는 모방 학습이 활발히 연구되고 있다.

14.3 학습과 최적화의 결합

학습 기반 초기 추정과 최적화 기반 정제를 결합한 방법이 효과적이다.

15. 강건성

15.1 외란에 대한 강건성

실제 환경에서는 외란이 존재한다. 강건한 궤적은 외란이 있어도 작업을 완수할 수 있다.

15.2 모형 불확실성

로봇의 동역학 모형에는 불확실성이 있다. 강건한 궤적 최적화는 이를 명시적으로 고려한다.

15.3 페드백과의 결합

궤적 최적화는 일반적으로 피드백 제어와 결합된다. 미리 계산된 궤적이 명령으로 사용되고, 피드백 제어기가 외란을 보상한다.

16. 다중 작업 궤적 최적화

16.1 우선 순위

여러 작업이 있을 때 우선 순위가 부여된다. 가장 중요한 작업이 먼저 처리되고, 그 다음 작업이 잉여 자유도를 활용한다.

16.2 결합 비용

여러 비용을 가중치로 결합하여 단일 비용 함수를 만들 수 있다.

J = \sum_i w_iJ_i

가중치 선택이 결과에 큰 영향을 준다.

17. 분산 궤적 최적화

17.1 다중 로봇

여러 로봇이 협력하는 작업에서 각 로봇의 궤적이 동시에 최적화된다. 충돌 회피와 협력 작업이 고려된다.

17.2 분산 알고리즘

분산 최적화 알고리즘이 여러 로봇의 궤적을 효율적으로 결정한다. 통신 비용과 정확도의 균형이 중요하다.

18. 궤적 최적화의 한계

18.1 국소 최소

비선형 최적화는 국소 최소에 빠질 수 있다. 좋은 초기 추정이 중요하다.

18.2 계산 복잡도

큰 문제에서 계산 비용이 크다. 실시간 동작을 위해서는 효율적인 알고리즘이 필요하다.

18.3 실시간 보장

실시간 시스템에서는 최적화가 일정 시간 내에 완료되어야 한다. 차선 해를 빠르게 산출하는 것이 중요할 수 있다.

19. 학습의 가치

리 군 기반 궤적 최적화를 깊이 이해하는 것은 다음과 같은 이점을 제공한다.

  • 다양한 로봇 시스템의 운동 계획을 통합적으로 다룰 수 있다.
  • 매니퓰레이터, 모바일 로봇, 드론 등의 궤적을 효율적으로 생성할 수 있다.
  • MPC와 같은 고급 제어 방법을 이해할 수 있다.
  • 실제 시스템의 성능과 안전성을 최적화할 수 있다.
  • 학술 문헌의 표준 방법을 이해할 수 있다.

20. 응용 예시: 매니퓰레이터의 픽 앤 플레이스

매니퓰레이터가 부품을 집어 옮기는 작업에서 궤적 최적화가 사용된다. 시작 자세에서 부품 위치, 그리고 목표 위치까지의 매끄러운 궤적이 생성된다. 동역학 제약과 관절 한계가 고려된다.

21. 응용 예시: 드론의 자율 비행

자율 드론은 미니멈 스내프 궤적을 따라 비행한다. 경유점과 속도 제약이 지정되고, 다항식 계수가 최적화된다.

22. 응용 예시: 자율 주행

자율 주행 차량의 차선 변경, 교차로 통과 등에서 궤적 최적화가 사용된다. MPC가 실시간으로 최적 궤적을 생성한다.

23. 응용 예시: 보행 로봇

이족 보행 로봇의 보행 궤적은 균형, 안정성, 에너지 효율성을 동시에 고려한다. ZMP(Zero Moment Point)나 LIPM(Linear Inverted Pendulum Model)이 활용된다.

24. 응용 예시: 매니퓰레이션의 충돌 회피

장애물이 있는 환경에서 매니퓰레이터의 궤적은 충돌을 회피해야 한다. 충돌 회피 제약이 최적화 문제에 포함된다.

25. 미래의 발전

25.1 학습과의 결합

학습 기반 방법과 모형 기반 최적화의 결합이 연구되고 있다. 학습된 모형이 최적화의 초기 추정을 제공한다.

25.2 실시간 최적화

GPU 가속, 병렬화 등을 통한 실시간 궤적 최적화가 발전하고 있다.

25.3 안전 보장

강건성과 안전성을 보장하는 궤적 최적화가 중요해지고 있다. 형식적 검증 방법이 활용된다.

25.4 의미 통합

객체 정보와 의미 분할을 궤적 최적화에 통합하는 연구가 진행되고 있다.

26. 참고 문헌

  • Mellinger, D., & Kumar, V. (2011). “Minimum snap trajectory generation and control for quadrotors.” IEEE International Conference on Robotics and Automation, 2520–2525.
  • Betts, J. T. (2010). Practical Methods for Optimal Control and Estimation Using Nonlinear Programming (2nd ed.). SIAM.
  • Diehl, M., Bock, H. G., Diedam, H., & Wieber, P. B. (2006). “Fast direct multiple shooting algorithms for optimal robot control.” Fast Motions in Biomechanics and Robotics, 65–93.
  • Schulman, J., Duan, Y., Ho, J., Lee, A., Awwal, I., Bradlow, H., Pan, J., Patil, S., Goldberg, K., & Abbeel, P. (2014). “Motion planning with sequential convex optimization and convex collision checking.” International Journal of Robotics Research, 33(9), 1251–1270.
  • Lynch, K. M., & Park, F. C. (2017). Modern Robotics: Mechanics, Planning, and Control. Cambridge University Press.
  • Andersson, J. A. E., Gillis, J., Horn, G., Rawlings, J. B., & Diehl, M. (2019). “CasADi: a software framework for nonlinear optimization and optimal control.” Mathematical Programming Computation, 11(1), 1–36.

version: 1.0