9.36 로드리게스 공식의 행렬 형태

1. 표준 행렬 형태

로드리게스 회전 공식의 행렬 형태는 축-각도 (\hat{\mathbf{u}}, \phi)로부터 3 \times 3 회전 행렬을 직접 산출하는 표현이다.

\mathbf{R}(\hat{\mathbf{u}}, \phi) = \mathbf{I} + \sin\phi\,[\hat{\mathbf{u}}]_\times + (1 - \cos\phi)\,[\hat{\mathbf{u}}]_\times^2

여기서 [\hat{\mathbf{u}}]_\times는 단위 회전 축 \hat{\mathbf{u}} = (u_x, u_y, u_z)^T의 반대칭 행렬이다.

[\hat{\mathbf{u}}]_\times = \begin{bmatrix}0 & -u_z & u_y \\ u_z & 0 & -u_x \\ -u_y & u_x & 0\end{bmatrix}

2. 대체 형태

\hat{\mathbf{u}}\hat{\mathbf{u}}^T = \mathbf{I} + [\hat{\mathbf{u}}]_\times^2이라는 항등식에서 다음의 등가 형태를 유도할 수 있다.

\mathbf{R} = \cos\phi\,\mathbf{I} + (1 - \cos\phi)\,\hat{\mathbf{u}}\hat{\mathbf{u}}^T + \sin\phi\,[\hat{\mathbf{u}}]_\times

이 형태는 회전 행렬을 세 개의 명확한 기하학적 연산으로 분해한다.

  • \cos\phi\,\mathbf{I}: 스케일링 성분
  • (1 - \cos\phi)\,\hat{\mathbf{u}}\hat{\mathbf{u}}^T: 회전 축 방향의 투영
  • \sin\phi\,[\hat{\mathbf{u}}]_\times: 회전 축에 수직한 방향의 회전 (외적)

3. 원소별 명시적 형태

c = \cos\phi, s = \sin\phi, v = 1 - \cos\phi라 하면 회전 행렬의 각 원소는 다음과 같이 계산된다.

\mathbf{R} = \begin{bmatrix} c + u_x^2 v & u_x u_y v - u_z s & u_x u_z v + u_y s \\ u_y u_x v + u_z s & c + u_y^2 v & u_y u_z v - u_x s \\ u_z u_x v - u_y s & u_z u_y v + u_x s & c + u_z^2 v \end{bmatrix}

대각 성분과 비대각 성분이 다음의 구조를 이룬다.

3.1 대각 성분

r_{ii} = \cos\phi + u_i^2(1 - \cos\phi)

3.2 비대각 성분

r_{ij} = u_i u_j (1 - \cos\phi) + \epsilon_{ijk}u_k \sin\phi \quad (i \neq j)

여기서 \epsilon_{ijk}는 레비-치비타 기호(Levi-Civita symbol)이고, kij와 다른 유일한 인덱스이다.

4. 반대칭 부분과 대칭 부분의 분해

로드리게스 공식의 행렬 형태는 회전 행렬을 대칭 부분과 반대칭 부분으로 자연스럽게 분해한다.

4.1 대칭 부분

\mathbf{R}_{\text{sym}} = \frac{\mathbf{R} + \mathbf{R}^T}{2} = \cos\phi\,\mathbf{I} + (1 - \cos\phi)\,\hat{\mathbf{u}}\hat{\mathbf{u}}^T

회전 축에 대한 정보(대칭적 투영)와 코사인 값을 담고 있다.

4.2 반대칭 부분

\mathbf{R}_{\text{skew}} = \frac{\mathbf{R} - \mathbf{R}^T}{2} = \sin\phi\,[\hat{\mathbf{u}}]_\times

회전 축 벡터와 사인 값을 담고 있다.

이 분해는 회전 행렬에서 축과 각도를 추출하는 수치 알고리즘의 기초가 된다.

5. 대각합과 회전 각

회전 행렬의 대각합(trace)은 다음과 같이 계산된다.

\mathrm{tr}(\mathbf{R}) = 3\cos\phi + (1 - \cos\phi)(u_x^2 + u_y^2 + u_z^2) = 3\cos\phi + (1 - \cos\phi) = 1 + 2\cos\phi

\lVert \hat{\mathbf{u}} \rVert = 1이므로 u_x^2 + u_y^2 + u_z^2 = 1을 사용했다. 이 관계로부터 회전 각을 추출할 수 있다.

\cos\phi = \frac{\mathrm{tr}(\mathbf{R}) - 1}{2}

대각합이 회전 축과 무관하게 오직 회전 각에만 의존한다는 것은 회전 불변량(rotation invariant)의 예이다.

6. 반대칭 행렬의 지수와의 관계

로드리게스 공식의 행렬 형태는 행렬 지수의 닫힌 형태이다.

\mathbf{R} = \exp(\phi[\hat{\mathbf{u}}]_\times) = \exp([\boldsymbol{\phi}]_\times)

여기서 \boldsymbol{\phi} = \phi\hat{\mathbf{u}}는 회전 벡터이고, [\boldsymbol{\phi}]_\times = \phi[\hat{\mathbf{u}}]_\times는 회전 벡터의 반대칭 행렬이다. 이 지수 관계는 SO(3)이 리 군이고 \mathfrak{so}(3)이 그 리 대수임을 반영한다.

6.1 단위가 없는 축과 크기를 가진 회전 벡터의 구분

로드리게스 공식에서 \hat{\mathbf{u}}는 단위 벡터이고 \phi는 별도의 스칼라이다. 그러나 회전 벡터 \boldsymbol{\phi} = \phi\hat{\mathbf{u}}를 사용할 때는 \phi = \lVert \boldsymbol{\phi} \rVert이고 축은 \boldsymbol{\phi}/\phi로부터 추출된다. 두 표현은 수학적으로 등가이지만, 구현 시 어느 것을 사용하는지에 따라 코드 구조가 달라진다.

7. 로드리게스 공식의 특이 경우

7.1 작은 회전 각: \phi \to 0

\phi가 0에 가까울 때 \sin\phi \approx \phi, 1 - \cos\phi \approx \phi^2/2이므로

\mathbf{R} \approx \mathbf{I} + \phi[\hat{\mathbf{u}}]_\times + \frac{\phi^2}{2}[\hat{\mathbf{u}}]_\times^2

이 성립한다. 1차 근사만 취하면

\mathbf{R} \approx \mathbf{I} + \phi[\hat{\mathbf{u}}]_\times = \mathbf{I} + [\boldsymbol{\phi}]_\times

이며, 이는 무한소 회전(infinitesimal rotation)의 선형 근사이다. 무한소 회전이 반대칭 행렬로 직접 표현되는 것은 \mathfrak{so}(3)의 접선 공간 구조를 반영한다.

7.2 도 회전: \phi = \pi

\sin\pi = 0, \cos\pi = -1이므로

\mathbf{R} = \mathbf{I} + 0 \cdot [\hat{\mathbf{u}}]_\times + 2[\hat{\mathbf{u}}]_\times^2

[\hat{\mathbf{u}}]_\times^2 = \hat{\mathbf{u}}\hat{\mathbf{u}}^T - \mathbf{I}를 대입하면

\mathbf{R} = \mathbf{I} + 2(\hat{\mathbf{u}}\hat{\mathbf{u}}^T - \mathbf{I}) = 2\hat{\mathbf{u}}\hat{\mathbf{u}}^T - \mathbf{I}

이 된다. 이 형태로부터 \hat{\mathbf{u}}는 대각선 기반의 제곱근 추출로 얻어진다.

7.3 항등 회전: \phi = 0

\sin 0 = 0, 1 - \cos 0 = 0이므로 \mathbf{R} = \mathbf{I}가 된다. 이는 어떤 축을 선택하든 성립한다.

8. 행렬 형태의 속성 확인

8.1 직교성

로드리게스 공식으로부터 얻은 행렬이 직교 행렬임을 직접 확인할 수 있다.

\mathbf{R}^T\mathbf{R} = [\mathbf{I} - \sin\phi\,[\hat{\mathbf{u}}]_\times + (1 - \cos\phi)\,[\hat{\mathbf{u}}]_\times^2][\mathbf{I} + \sin\phi\,[\hat{\mathbf{u}}]_\times + (1 - \cos\phi)\,[\hat{\mathbf{u}}]_\times^2]

[\hat{\mathbf{u}}]_\times^T = -[\hat{\mathbf{u}}]_\times임을 이용하여 전개하면 \mathbf{I}가 얻어진다. 이는 \mathbf{R} \in O(3)을 보증한다.

8.2 행렬식

\det(\mathbf{R}) = 1임도 유도할 수 있다. 이는 행렬 지수 \exp의 일반 성질 \det(\exp(\mathbf{A})) = e^{\mathrm{tr}(\mathbf{A})}에서 \mathrm{tr}([\hat{\mathbf{u}}]_\times) = 0이므로 \det(\mathbf{R}) = e^0 = 1로 확인된다. 따라서 \mathbf{R} \in SO(3)이다.

9. 계산 효율성

로드리게스 공식의 행렬 형태는 원소별 명시적 공식을 통해 효율적으로 계산될 수 있다. 대략적인 연산 비용은 다음과 같다.

  • 삼각 함수: \sin\phi, \cos\phi 각 1회
  • 곱셈: 대략 15회 (실제 구현에 따라 다름)
  • 덧셈: 대략 10회

이는 오일러 각 기반의 세 기본 회전 행렬 곱(\sim 30회의 곱셈과 27회의 덧셈)보다 효율적이다.

10. 로봇 공학에서의 사용

10.1 축-각도 명령에서 회전 행렬로의 직접 변환

제어 시스템이 축-각도 형태의 회전 명령을 수신할 때, 로드리게스 행렬 형태가 회전 행렬로의 직접 변환을 제공한다.

10.2 쿼터니언에서 회전 행렬로의 변환

쿼터니언 \mathbf{q} = (\cos(\phi/2), \sin(\phi/2)\hat{\mathbf{u}})로부터 축 \hat{\mathbf{u}}와 각 \phi를 추출한 후 로드리게스 공식을 적용하는 방식이 흔히 사용된다. 단, 쿼터니언에서 회전 행렬로의 직접 공식도 존재하며 이는 로드리게스 공식의 특수한 적용에 해당한다.

10.3 반복 적분

시간 적분 과정에서 작은 각속도 증분을 축-각도 형태로 해석하고, 로드리게스 공식으로 회전 행렬을 갱신하는 방법이 표준적이다.

\mathbf{R}_{k+1} = \mathbf{R}_k \exp([\boldsymbol{\omega}\Delta t]_\times) = \mathbf{R}_k \mathrm{Rodrigues}(\hat{\boldsymbol{\omega}}, \lVert \boldsymbol{\omega} \rVert \Delta t)

10.4 리 대수 기반 최적화

SLAM과 번들 조정에서 리 대수의 접선 섭동 \delta\boldsymbol{\phi}를 회전 행렬에 적용할 때 로드리게스 공식이 사용된다.

11. 참고 문헌

  • Rodrigues, O. (1840). “Des lois géométriques qui régissent les déplacements d’un système solide dans l’espace.” Journal de Mathématiques Pures et Appliquées, 5, 380–440.
  • Murray, R. M., Li, Z., & Sastry, S. S. (1994). A Mathematical Introduction to Robotic Manipulation. CRC Press.
  • Hall, B. C. (2015). Lie Groups, Lie Algebras, and Representations (2nd ed.). Springer.
  • Barfoot, T. D. (2017). State Estimation for Robotics. Cambridge University Press.
  • Sola, J., Deray, J., & Atchuthan, D. (2018). “A Micro Lie Theory for State Estimation in Robotics.” arXiv:1812.01537.

version: 1.0