6.118 행렬 지수 함수의 정의와 수렴성

6.118 행렬 지수 함수의 정의와 수렴성

1. 개요

행렬 지수 함수(matrix exponential)는 로봇공학에서 회전과 강체 운동의 수학적 표현, 선형 상미분 방정식의 해, 그리고 리 군(Lie group)과 리 대수(Lie algebra) 사이의 사상(mapping)을 기술하는 데 핵심적인 역할을 한다. 스칼라 지수 함수 e^x의 자연스러운 확장인 행렬 지수 함수는 정방 행렬에 대해 정의되며, 그 수렴성은 엄밀하게 증명할 수 있다. 본 절에서는 행렬 지수 함수의 정의, 수렴성 증명, 기본 성질, 그리고 로봇공학에서의 의미를 다룬다.

2. 행렬 지수 함수의 정의

2.1 급수 정의

정방 행렬 \mathbf{A} \in \mathbb{R}^{n \times n} (또는 \mathbb{C}^{n \times n})에 대해, 행렬 지수 함수 e^{\mathbf{A}}는 다음과 같은 멱급수(power series)로 정의한다.

e^{\mathbf{A}} = \sum_{k=0}^{\infty} \frac{\mathbf{A}^k}{k!} = \mathbf{I} + \mathbf{A} + \frac{\mathbf{A}^2}{2!} + \frac{\mathbf{A}^3}{3!} + \cdots

여기서 \mathbf{A}^0 = \mathbf{I}는 단위 행렬이고, \mathbf{A}^k\mathbf{A}k번째 거듭제곱이다.

매개변수가 포함된 형태로는, 스칼라 t \in \mathbb{R}에 대해 다음과 같이 정의한다.

e^{t\mathbf{A}} = \sum_{k=0}^{\infty} \frac{(t\mathbf{A})^k}{k!} = \sum_{k=0}^{\infty} \frac{t^k \mathbf{A}^k}{k!}

2.2 극한 정의

스칼라 지수 함수의 극한 정의 e^x = \lim_{n \to \infty}(1 + x/n)^n와 유사하게, 행렬 지수 함수도 다음과 같이 극한으로 정의할 수 있다.

e^{\mathbf{A}} = \lim_{m \to \infty} \left(\mathbf{I} + \frac{\mathbf{A}}{m}\right)^m

이 정의는 수치 계산에서 스케일링-제곱(scaling and squaring) 알고리즘의 이론적 기초가 된다.

3. 수렴성 증명

3.1 행렬 노름의 준비

수렴성 증명을 위해 행렬 노름의 성질을 이용한다. 임의의 호환 행렬 노름(compatible matrix norm) \|\cdot\|에 대해 다음이 성립한다.

  1. \|\mathbf{A}\mathbf{B}\| \leq \|\mathbf{A}\| \cdot \|\mathbf{B}\| (부분곱 부등식)
  2. \|\mathbf{A}^k\| \leq \|\mathbf{A}\|^k

특히 자주 사용되는 노름은 다음과 같다.

노름정의표기
프로베니우스 노름\sqrt{\sum_{i,j} \vert a_{ij}\vert^2}\lVert\mathbf{A}\rVert_F
스펙트럼 노름\sigma_{\max}(\mathbf{A})\lVert\mathbf{A}\rVert_2
1-노름\max_j \sum_i \vert a_{ij}\vert\lVert\mathbf{A}\rVert_1
무한대 노름\max_i \sum_j \vert a_{ij}\vert\lVert\mathbf{A}\rVert_\infty

3.2 절대 수렴 증명

정리: 임의의 정방 행렬 \mathbf{A} \in \mathbb{C}^{n \times n}에 대해, 급수 \sum_{k=0}^{\infty} \frac{\mathbf{A}^k}{k!}는 절대 수렴한다.

증명: 임의의 호환 행렬 노름 \|\cdot\|에 대해 다음이 성립한다.

\sum_{k=0}^{\infty} \left\|\frac{\mathbf{A}^k}{k!}\right\| \leq \sum_{k=0}^{\infty} \frac{\|\mathbf{A}\|^k}{k!} = e^{\|\mathbf{A}\|}

우변은 스칼라 \|\mathbf{A}\| \geq 0에 대한 지수 함수이므로 유한하다. 따라서 급수는 절대 수렴한다.

좀 더 상세하게, 부분합 \mathbf{S}_N = \sum_{k=0}^{N} \frac{\mathbf{A}^k}{k!}이 코시 수열(Cauchy sequence)임을 보인다. M > N일 때,

\|\mathbf{S}_M - \mathbf{S}_N\| = \left\|\sum_{k=N+1}^{M} \frac{\mathbf{A}^k}{k!}\right\| \leq \sum_{k=N+1}^{M} \frac{\|\mathbf{A}\|^k}{k!}

스칼라 급수 \sum_{k=0}^{\infty} \frac{\|\mathbf{A}\|^k}{k!}가 수렴하므로, 그 나머지(tail)는 0에 수렴한다. 즉 임의의 \epsilon > 0에 대해, 충분히 큰 N_0가 존재하여 N > N_0이면 \sum_{k=N+1}^{\infty} \frac{\|\mathbf{A}\|^k}{k!} < \epsilon이다.

따라서 \{\mathbf{S}_N\}\mathbb{C}^{n \times n}에서 코시 수열이며, \mathbb{C}^{n \times n}은 완비 노름 공간(Banach space)이므로 극한이 존재한다. \blacksquare

3.3 수렴 속도

부분합 \mathbf{S}_N과 행렬 지수의 오차는 다음과 같이 한정된다.

\|e^{\mathbf{A}} - \mathbf{S}_N\| \leq \sum_{k=N+1}^{\infty} \frac{\|\mathbf{A}\|^k}{k!} = e^{\|\mathbf{A}\|} - \sum_{k=0}^{N} \frac{\|\mathbf{A}\|^k}{k!}

\|\mathbf{A}\|가 작을수록 급수는 빠르게 수렴한다. \|\mathbf{A}\| \leq 1이면 N = 20 정도에서 배정밀도 수준의 정밀도를 얻을 수 있다. 반면 \|\mathbf{A}\|가 크면 수렴이 느리므로, 실용적인 계산에서는 스케일링 기법을 사용한다.

4. 행렬 지수 함수의 기본 성질

4.1 대수적 성질

행렬 지수 함수는 다음과 같은 성질을 갖는다.

성질 1 (영행렬): e^{\mathbf{0}} = \mathbf{I}

성질 2 (역행렬): e^{\mathbf{A}}는 항상 가역(invertible)이며, (e^{\mathbf{A}})^{-1} = e^{-\mathbf{A}}

증명: e^{\mathbf{A}} \cdot e^{-\mathbf{A}} = e^{\mathbf{A} + (-\mathbf{A})} = e^{\mathbf{0}} = \mathbf{I} (단, \mathbf{A}-\mathbf{A}는 당연히 교환 가능하다.)

성질 3 (교환 가능한 행렬의 곱): \mathbf{A}\mathbf{B} = \mathbf{B}\mathbf{A}이면, e^{\mathbf{A}+\mathbf{B}} = e^{\mathbf{A}} e^{\mathbf{B}}

주의: 일반적으로 \mathbf{A}\mathbf{B} \neq \mathbf{B}\mathbf{A}이면 e^{\mathbf{A}+\mathbf{B}} \neq e^{\mathbf{A}} e^{\mathbf{B}}이다. 이 비가환성(non-commutativity)은 로봇공학에서 회전의 순서 의존성과 직접적으로 관련된다.

성질 4 (행렬식): \det(e^{\mathbf{A}}) = e^{\text{tr}(\mathbf{A})}

여기서 \text{tr}(\mathbf{A})\mathbf{A}의 대각합(trace)이다. 이 성질은 야코비 공식(Jacobi’s formula)로부터 유도된다.

성질 5 (전치): (e^{\mathbf{A}})^T = e^{\mathbf{A}^T}

성질 6 (유사 변환): e^{\mathbf{P}\mathbf{A}\mathbf{P}^{-1}} = \mathbf{P} e^{\mathbf{A}} \mathbf{P}^{-1}

4.2 미분 성질

행렬 지수 함수의 가장 중요한 미분 성질은 다음과 같다.

\frac{d}{dt} e^{t\mathbf{A}} = \mathbf{A}\, e^{t\mathbf{A}} = e^{t\mathbf{A}}\, \mathbf{A}

이 성질은 e^{t\mathbf{A}}가 선형 상미분 방정식 \dot{\mathbf{X}}(t) = \mathbf{A}\mathbf{X}(t), \mathbf{X}(0) = \mathbf{I}의 해임을 보여준다.

증명: 급수 정의에서 항별 미분을 수행한다.

\frac{d}{dt} e^{t\mathbf{A}} = \frac{d}{dt} \sum_{k=0}^{\infty} \frac{t^k \mathbf{A}^k}{k!} = \sum_{k=1}^{\infty} \frac{k t^{k-1} \mathbf{A}^k}{k!} = \sum_{k=1}^{\infty} \frac{t^{k-1} \mathbf{A}^k}{(k-1)!} = \mathbf{A} \sum_{j=0}^{\infty} \frac{t^j \mathbf{A}^j}{j!} = \mathbf{A}\, e^{t\mathbf{A}}

항별 미분의 정당성은 급수의 균등 수렴(uniform convergence)에 의해 보장된다. \blacksquare

5. 특수 행렬에 대한 행렬 지수

5.1 대각 행렬

\mathbf{A} = \text{diag}(\lambda_1, \lambda_2, \ldots, \lambda_n)이면 다음과 같다.

e^{\mathbf{A}} = \text{diag}(e^{\lambda_1}, e^{\lambda_2}, \ldots, e^{\lambda_n})

5.2 대각화 가능 행렬

\mathbf{A} = \mathbf{P}\boldsymbol{\Lambda}\mathbf{P}^{-1}이면 성질 6에 의해 다음과 같다.

e^{\mathbf{A}} = \mathbf{P}\, e^{\boldsymbol{\Lambda}}\, \mathbf{P}^{-1} = \mathbf{P}\, \text{diag}(e^{\lambda_1}, \ldots, e^{\lambda_n})\, \mathbf{P}^{-1}

5.3 멱영 행렬

\mathbf{N}^m = \mathbf{0}인 멱영 행렬(nilpotent matrix) \mathbf{N}에 대해, 급수는 유한합으로 축소된다.

e^{\mathbf{N}} = \mathbf{I} + \mathbf{N} + \frac{\mathbf{N}^2}{2!} + \cdots + \frac{\mathbf{N}^{m-1}}{(m-1)!}

5.4 반대칭 행렬과 직교 행렬

\mathbf{A}가 반대칭 행렬(skew-symmetric matrix), 즉 \mathbf{A}^T = -\mathbf{A}이면, e^{\mathbf{A}}는 직교 행렬(orthogonal matrix)이다.

증명:

(e^{\mathbf{A}})^T e^{\mathbf{A}} = e^{\mathbf{A}^T} e^{\mathbf{A}} = e^{-\mathbf{A}} e^{\mathbf{A}} = e^{-\mathbf{A}+\mathbf{A}} = e^{\mathbf{0}} = \mathbf{I}

여기서 -\mathbf{A}\mathbf{A}는 교환 가능하므로 성질 3을 적용하였다. 또한 성질 4에 의해 \det(e^{\mathbf{A}}) = e^{\text{tr}(\mathbf{A})} = e^0 = 1이므로 적절한 직교 행렬, 즉 회전 행렬이다. \blacksquare

이 결과는 로봇공학에서 매우 중요하다. 3차원 반대칭 행렬 [\boldsymbol{\omega}]_\times의 행렬 지수가 회전 행렬 \mathbf{R} \in SO(3)을 생성함을 의미하기 때문이다.

6. 로봇공학에서의 의미

6.1 리 군과 리 대수

3차원 회전 행렬의 집합 SO(3) = \{\mathbf{R} \in \mathbb{R}^{3 \times 3} : \mathbf{R}^T\mathbf{R} = \mathbf{I}, \det(\mathbf{R}) = 1\}은 리 군이다. 이에 대응하는 리 대수 \mathfrak{so}(3)3 \times 3 반대칭 행렬의 집합이다.

행렬 지수 함수는 리 대수에서 리 군으로의 사상을 제공한다.

\exp: \mathfrak{so}(3) \to SO(3), \quad [\boldsymbol{\omega}]_\times \mapsto e^{[\boldsymbol{\omega}]_\times}

여기서 벡터 \boldsymbol{\omega} = \theta\hat{\boldsymbol{\omega}}에 대해, [\boldsymbol{\omega}]_\times는 다음과 같은 반대칭 행렬이다.

[\boldsymbol{\omega}]_\times = \begin{bmatrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 & -\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{bmatrix}

유사하게, 강체 운동의 집합 SE(3)와 그 리 대수 \mathfrak{se}(3) 사이에서도 행렬 지수 함수가 동일한 역할을 수행한다.

6.2 속도와 변위의 관계

로봇 매니퓰레이터의 관절이 일정한 속도로 운동할 때, 말단 장치의 변위는 행렬 지수로 표현된다. 트위스트(twist) \boldsymbol{\xi}에 대응하는 운동은 다음과 같다.

\mathbf{T}(t) = e^{[\boldsymbol{\xi}]t}\, \mathbf{T}(0)

여기서 [\boldsymbol{\xi}] \in \mathfrak{se}(3)는 트위스트의 행렬 표현이고, \mathbf{T} \in SE(3)는 동차 변환 행렬이다.

7. 수렴 반경과 실용적 고려사항

행렬 지수의 급수는 모든 정방 행렬에 대해 수렴하므로, 수렴 반경은 무한대이다. 그러나 실용적인 수치 계산에서는 \|\mathbf{A}\|가 클 때 직접 급수 합산이 비효율적이다. 이를 해결하기 위한 스케일링-제곱 방법은 다음과 같다.

  1. 정수 s를 선택하여 \|\mathbf{A}/2^s\|가 충분히 작도록 한다 (보통 \leq 1).
  2. e^{\mathbf{A}/2^s}를 급수 또는 파데 근사(Pade approximation)로 계산한다.
  3. e^{\mathbf{A}} = (e^{\mathbf{A}/2^s})^{2^s}를 반복 제곱으로 계산한다.

이 방법은 수렴 속도와 수치 안정성 모두를 확보하며, 현대 수치 라이브러리에서 표준적으로 사용된다.

8. 참고 문헌

  • Murray, R. M., Li, Z., & Sastry, S. S. (1994). A Mathematical Introduction to Robotic Manipulation. CRC Press.
  • Moler, C., & Van Loan, C. (2003). “Nineteen Dubious Ways to Compute the Exponential of a Matrix, Twenty-Five Years Later.” SIAM Review, 45(1), 3–49.
  • Higham, N. J. (2008). Functions of Matrices: Theory and Computation. SIAM.
  • Lynch, K. M., & Park, F. C. (2017). Modern Robotics: Mechanics, Planning, and Control. Cambridge University Press.
  • Golub, G. H., & Van Loan, C. F. (2013). Matrix Computations (4th ed.). Johns Hopkins University Press.
  • Hall, B. C. (2015). Lie Groups, Lie Algebras, and Representations (2nd ed.). Springer.

v 0.1