6.77 회전 행렬의 보간과 경로 생성

1. 도입

로봇의 자세는 회전 행렬로 표현되며, 시작 자세와 목표 자세 사이를 부드럽게 잇는 회전 경로를 생성하는 일은 매니퓰레이터의 작업 공간 계획, 무인기의 자세 천이, 가상 카메라의 시점 전환, 강체 애니메이션 등 광범위한 응용에서 빈번히 요구된다. 그러나 회전 행렬은 유클리드 공간이 아니라 곡면 다양체 SO(3) 위의 점이므로, 단순한 선형 보간으로는 회전을 보간할 수 없다. 두 회전 행렬의 성분별 평균은 일반적으로 회전 행렬이 아니며, 이는 직교성과 행렬식 조건을 동시에 깨뜨리기 때문이다. 따라서 회전 보간은 다양체 위의 측지선을 따라 정의되어야 하며, 이 절에서는 그러한 보간 방법의 수학적 정의, 성질, 그리고 로봇 공학에서의 활용을 학술적으로 기술한다.

2. 회전 보간의 수학적 기초

2.1 문제의 정식화

두 회전 행렬 R_{0}, R_{1} \in SO(3) 와 보간 변수 s \in [0, 1] 가 주어졌을 때, 다음 두 조건을 만족하는 곡선 R(s) : [0, 1] \to SO(3) 를 구성하는 것이 회전 보간 문제이다.

R(0) = R_{0}, \qquad R(1) = R_{1}

또한 곡선이 가능한 한 짧고 매끄러우며, SO(3) 위의 한 점에서 다른 점으로 자연스럽게 옮겨가는 성질을 만족하는 것이 바람직하다. 이를 위해서는 SO(3) 위의 거리 개념과 측지선의 개념이 필요하다.

2.2 SO(3) 위의 측지선

SO(3) 는 양의 정칙 리만 다양체이며, 양 불변 리만 계량(bi-invariant Riemannian metric)을 부여할 수 있다. 이 계량 아래에서 두 점 사이의 측지선은 단일 회전축에 대한 일정 속도 회전으로 주어지며, 다음과 같은 닫힌 형태로 표현된다.

R(s) = R_{0} \, \exp\!\left( s \, \log(R_{0}^{T} R_{1}) \right)

여기서 \log 는 행렬 로그 함수이고 \exp 는 행렬 지수 함수이다. 이 곡선은 R_{0} 에서 R_{1} 로 가는 가장 짧은 회전 경로이며, 회전축이 시간에 따라 변하지 않는다는 점에서 가장 단순한 형태의 회전 운동에 해당한다.

2.3 상대 회전과 회전 벡터

R_{0}^{T} R_{1}R_{0} 좌표계에서 본 R_{1} 의 상대 회전이며, 그 행렬 로그는 반대칭 행렬 [\boldsymbol{\phi}]_{\times} 를 산출한다. 여기서 \boldsymbol{\phi} = \theta \hat{\mathbf{n}} 는 회전축 \hat{\mathbf{n}} 과 회전각 \theta 를 결합한 회전 벡터이다. 측지 보간은 이 회전 벡터를 매개변수 s 에 비례하여 점진적으로 적용하는 절차로 해석될 수 있다.

3. 측지 보간의 성질

3.1 일정 각속도 보간

측지 보간 곡선의 시간 미분을 계산하면 다음을 얻는다.

\dot{R}(s) = R(s) \, [\boldsymbol{\phi}]_{\times}

즉 보간 변수 s 에 대한 미분이 일정한 반대칭 행렬과 회전 행렬의 곱으로 주어지므로, 보간 곡선은 일정한 각속도(보간 변수에 대한)로 회전한다. 이는 보간이 가능한 한 부드럽고 균일하며, 별도의 가속이나 감속 없이 두 자세 사이를 잇는다는 것을 의미한다.

3.2 길이의 최소성

측지 보간은 양 불변 계량 아래에서 두 회전 사이의 길이를 최소화한다. 이때 두 회전 사이의 거리는 다음과 같이 정의된다.

d(R_{0}, R_{1}) = \| \log(R_{0}^{T} R_{1}) \|_{F} / \sqrt{2} = | \theta |

여기서 \theta 는 상대 회전의 회전각이며, 0 \leq \theta \leq \pi 의 범위를 가진다. 두 회전 사이의 측지 거리는 회전각 그 자체와 일치하며, 이는 회전 보간이 가지는 기하학적 자연스러움의 근거이다.

3.3 양 불변성

측지 보간은 좌측과 우측 회전 작용에 대하여 모두 동변(equivariant)하다. 즉 임의의 회전 Q \in SO(3) 에 대하여 다음이 성립한다.

Q R_{0} \to Q R_{1} \;\Longrightarrow\; Q R(s)

R_{0} Q \to R_{1} Q \;\Longrightarrow\; R(s) Q

이러한 양 불변성은 보간 결과가 좌표계의 선택에 의존하지 않음을 의미하며, 보간이 회전이라는 추상적 개념 자체에 대한 작용으로서 일관성을 가짐을 보장한다.

4. 보간 방법의 분류

4.1 측지 선형 보간

앞서 정의한 R(s) = R_{0} \exp(s \log(R_{0}^{T} R_{1})) 가 가장 기본적인 측지 선형 보간이며, 쿼터니언 표현에서는 구면 선형 보간(spherical linear interpolation)이라는 이름으로 잘 알려져 있다. 단순성과 측지성, 일정 각속도 성질을 모두 갖추고 있어 두 자세 사이의 단일 구간 보간에 가장 널리 사용된다.

4.2 다중 구간 보간과 매끄러움

여러 자세 R_{0}, R_{1}, \ldots, R_{n} 을 차례로 통과하는 보간 경로를 생성할 때, 각 구간에 측지 선형 보간을 단순히 이어 붙이면 자세는 연속이지만 각속도는 각 자세 통과점에서 불연속이 된다. 이러한 문제를 해결하기 위하여 다음과 같은 고차 보간법이 고안되었다.

첫째, 회전군 위의 베지에 곡선과 데 카스텔자우 알고리듬(de Casteljau algorithm)을 측지 보간으로 일반화한 방법이 있다. 둘째, 회전군 위의 B-스플라인 곡선이 있으며, 셋째, 쿼터니언 영역에서 정의된 SQUAD(Spherical and Quadrangle interpolation) 알고리듬도 널리 사용된다. 이들 방법은 보간 곡선이 위치 연속성뿐 아니라 속도 연속성, 더 나아가 가속도 연속성까지 만족하도록 설계된다.

4.3 행렬 영역에서의 보간과 사영

직접적으로 회전 행렬의 성분을 선형 결합한 후 결과를 가장 가까운 회전 행렬로 사영하는 방법도 존재한다. 즉 다음과 같이 정의한다.

M(s) = (1 - s) R_{0} + s R_{1}, \qquad R(s) = \mathrm{Proj}_{SO(3)}(M(s))

여기서 사영 연산자는 특이값 분해를 통하여 정의되며, 가장 가까운 회전 행렬을 산출한다. 이 방법은 측지 보간보다 단순하지만, 보간 속도가 일정하지 않으며 측지선과는 일반적으로 일치하지 않는다. 그러나 구현이 간단하다는 이점이 있어 실시간 응용에서 활용될 수 있다.

5. 회전 경로 생성과 시간 매개화

5.1 시간 매개화의 분리

회전 경로의 형상과 시간에 따른 진행 속도는 분리하여 다루는 것이 일반적이다. 즉 보간 변수 s 가 시간 t 의 함수 s(t) 로 정의되며, 이 함수는 부드러운 가속과 감속을 위한 시간 프로파일을 결정한다. 흔히 사용되는 시간 프로파일에는 다음과 같은 것들이 있다.

첫째, 사다리꼴 속도 프로파일(trapezoidal velocity profile)이며, 일정 가속, 일정 속도, 일정 감속의 세 구간으로 구성된다. 둘째, 5차 다항식 프로파일(quintic polynomial profile)이며, 시작과 종료에서의 속도와 가속도를 모두 영으로 강제한다. 셋째, S-곡선 프로파일이며, 가속도의 변화율(저크)까지 제한하여 더욱 부드러운 운동을 산출한다.

5.2 각속도와 각가속도의 계산

보간 변수에 대한 시간 매개화가 주어지면, 회전 경로의 각속도와 각가속도는 다음과 같이 유도된다.

\boldsymbol{\omega}(t) = \dot{s}(t) \, \boldsymbol{\phi}, \qquad \dot{\boldsymbol{\omega}}(t) = \ddot{s}(t) \, \boldsymbol{\phi}

여기서 \boldsymbol{\phi} 는 측지 보간의 회전 벡터이다. 이 표현은 회전 경로 추종 제어기에서 직접적으로 사용되며, 시간 프로파일과 회전 경로가 분리되어 있어 설계가 용이하다.

6. 수치적 구현과 안정성

6.1 행렬 로그와 지수의 닫힌 형태

회전 행렬의 로그와 지수는 일반적인 행렬 로그/지수와 달리 3차원에서 닫힌 형태로 계산된다. 회전각 \theta 와 회전축 \hat{\mathbf{n}} 에 대하여 다음 관계가 성립한다.

\exp([\boldsymbol{\phi}]_{\times}) = I + \frac{\sin \theta}{\theta} [\boldsymbol{\phi}]_{\times} + \frac{1 - \cos \theta}{\theta^{2}} [\boldsymbol{\phi}]_{\times}^{2}

이는 로드리게스 공식이며, 회전 보간의 수치적 구현에서 핵심적으로 사용된다. 회전 로그 또한 트레이스로부터 회전각을 추출하고 반대칭 부분으로부터 회전축을 추출하는 닫힌 형태로 계산할 수 있다.

6.2 작은 회전과 대척점 근방의 처리

\theta 가 영에 가까운 경우 위 공식에서 \sin \theta / \theta(1 - \cos \theta)/\theta^{2} 의 계산이 수치적 불안정성을 야기할 수 있다. 이러한 경우 테일러 전개를 이용한 대체 표현이 사용된다. 또한 \theta\pi 에 가까운 대척점 근방에서는 회전축의 부호 결정에 모호성이 생기므로, 안정적인 회전 로그 알고리듬이 요구된다. 이러한 수치적 처리는 보간의 신뢰성을 결정짓는 핵심 요소이다.

6.3 직교성 보존

이산 시간 단계에서 회전 보간을 누적적으로 갱신할 때, 부동 소수점 오차로 인해 직교성이 점진적으로 손상될 수 있다. 이를 방지하기 위해 매 단계마다 그람-슈미트 정규 직교화 또는 특이값 분해를 통한 사영이 적용되며, 이는 보간 결과의 장기적 일관성을 보장한다.

7. 로봇 공학에서의 활용

7.1 매니퓰레이터 작업 공간 경로 계획

매니퓰레이터의 말단 장치가 시작 자세에서 목표 자세로 이동할 때, 위치 성분은 직선 또는 곡선 경로로 보간되고 자세 성분은 회전 행렬의 측지 보간으로 보간된다. 이 두 가지를 결합한 경로 계획은 작업 공간 좌표 제어의 기본이며, 특히 용접, 도장, 드릴링과 같이 정밀한 자세 조정이 요구되는 작업에서 필수적이다.

7.2 무인기 자세 천이

무인기가 한 자세에서 다른 자세로 부드럽게 천이할 때, 자세 명령 신호 생성 단계에서 회전 보간이 활용된다. 측지 보간을 이용하면 천이가 가능한 한 짧은 회전축 회전으로 이루어지며, 이는 에너지 소모를 최소화하고 동역학적 부담을 줄인다.

7.3 카메라 시점 보간과 가상 시뮬레이션

가상 환경 시뮬레이션과 시각화 도구에서 카메라의 시점을 한 자세에서 다른 자세로 부드럽게 이동시킬 때 회전 보간이 사용된다. 측지 보간은 시점 변화가 자연스럽고 균일한 인상을 주며, 사용자에게 안정적인 시각 경험을 제공한다.

7.4 자세 추정에서의 평균과 평활화

여러 자세 측정값으로부터 평균 자세를 계산하거나, 시간에 따른 자세 추정 결과를 평활화할 때 회전 보간이 활용된다. 단순한 산술 평균은 회전 행렬이 되지 않으므로, 측지 보간의 일반화된 형태인 카르처 평균(Karcher mean) 또는 프레셰 평균(Fréchet mean)이 사용된다. 이는 자세 추정의 통계적 일관성을 확보하는 데 필수적인 도구이다.

7.5 학습 기반 운동 모델링

시연 학습(learning from demonstration)에서 사람의 시연으로부터 추출된 자세 시계열을 학습하고 재생성할 때, 자세 표현은 회전 행렬 또는 그 동등한 표현으로 다루어진다. 이때 회전 행렬의 보간과 사영은 학습된 운동을 회전군 위에서 일관되게 표현하기 위한 핵심 도구이다.

8. 결론

회전 행렬의 보간은 단순한 선형 결합으로 환원될 수 없으며, 회전군 SO(3) 가 가지는 곡면 다양체 구조와 그 위의 측지선 개념에 기반하여 정의되어야 한다. 행렬 로그와 지수를 이용한 측지 보간은 일정 각속도, 길이 최소성, 양 불변성을 모두 만족하는 가장 자연스러운 보간 방법이며, 다중 구간으로의 확장과 시간 매개화의 분리, 수치적 안정성 처리 등을 통하여 실제 응용에서 견고하게 활용된다. 매니퓰레이터의 작업 경로 계획, 무인기의 자세 천이, 카메라 시점 보간, 자세 추정의 평활화, 학습 기반 운동 생성 등 회전 보간이 활용되는 영역은 광범위하며, 그 수학적 토대에 대한 명확한 이해는 신뢰성 있는 알고리듬 설계의 출발점이 된다.


참고문헌

  • Shoemake, K. (1985). “Animating rotation with quaternion curves.” Computer Graphics (SIGGRAPH ’85), 19(3), 245–254.
  • Park, F. C., & Ravani, B. (1995). “Smooth invariant interpolation of rotations.” ACM Transactions on Graphics, 16(3), 277–295.
  • Crouch, P., Kun, G., & Silva Leite, F. (1999). “The de Casteljau algorithm on Lie groups and spheres.” Journal of Dynamical and Control Systems, 5(3), 397–429.
  • Kim, M.-J., Kim, M.-S., & Shin, S. Y. (1995). “A general construction scheme for unit quaternion curves with simple high order derivatives.” Computer Graphics (SIGGRAPH ’95), 369–376.
  • Murray, R. M., Li, Z., & Sastry, S. S. (1994). A Mathematical Introduction to Robotic Manipulation. CRC Press.
  • Lynch, K. M., & Park, F. C. (2017). Modern Robotics: Mechanics, Planning, and Control. Cambridge University Press.
  • Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. (2009). Robotics: Modelling, Planning and Control. Springer.
  • Spong, M. W., Hutchinson, S., & Vidyasagar, M. (2020). Robot Modeling and Control (2nd ed.). Wiley.
  • Selig, J. M. (2005). Geometric Fundamentals of Robotics (2nd ed.). Springer.
  • Moakher, M. (2002). “Means and averaging in the group of rotations.” SIAM Journal on Matrix Analysis and Applications, 24(1), 1–16.

Version: 1.0