11.7 se(3) 리 대수와 트위스트 표현
1. \mathfrak{se}(3)의 정의와 의미
\mathfrak{se}(3)은 3차원 강체 변환군 SE(3)의 리 대수이며, 항등 변환 근방에서의 무한소 강체 운동을 표현한다. 강체의 6자유도 속도(각속도와 선형 속도)가 결합된 형태이며, 트위스트(twist)라는 6차원 벡터로 표현된다. \mathfrak{se}(3)은 매니퓰레이터의 기구학과 동역학, 강체 운동의 분석, 자세 추정 등 6자유도 운동을 다루는 거의 모든 영역에서 핵심 도구이다.
2. \mathfrak{se}(3)의 형식적 정의
2.1 행렬 형태
\mathfrak{se}(3)의 원소는 다음의 4 \times 4 행렬 형태를 가진다.
\hat{\boldsymbol{\xi}} = \begin{bmatrix}[\boldsymbol{\omega}]_\times & \mathbf{v} \\ \mathbf{0}^T & 0\end{bmatrix}
여기서
- [\boldsymbol{\omega}]_\times \in \mathfrak{so}(3): 각속도에 대응하는 반대칭 행렬
- \mathbf{v} \in \mathbb{R}^3: 선형 속도 벡터
- \mathbf{0}^T = [0, 0, 0]
- 마지막 원소는 0
이 행렬의 우상 블록이 선형 속도이고, 좌상 블록이 회전을 위한 반대칭 행렬이다.
2.2 차원
\mathfrak{se}(3)의 차원은 6이다. 이는 회전 부분 3차원과 병진 부분 3차원의 합이며, SE(3)의 차원과 일치한다.
2.3 선형 공간 구조
\mathfrak{se}(3)은 4 \times 4 행렬의 부분 공간이며, 다음의 선형 공간 구조를 가진다.
- 두 원소의 합도 \mathfrak{se}(3)의 원소이다.
- 스칼라 곱도 \mathfrak{se}(3)의 원소이다.
- 영원은 영 행렬이다.
3. 트위스트 벡터
3.1 차원 벡터 표현
\mathfrak{se}(3)의 원소를 6차원 벡터로 표현할 수 있다.
\boldsymbol{\xi} = \begin{bmatrix}\boldsymbol{\omega} \\ \mathbf{v}\end{bmatrix} \in \mathbb{R}^6
이 벡터를 트위스트(twist)라 한다. 처음 3개 성분이 회전 부분(각속도), 다음 3개 성분이 병진 부분(선형 속도)이다.
3.2 트위스트의 두 표현
트위스트의 표현은 어느 좌표계에서 정의되는지에 따라 두 가지로 구분된다.
3.2.1 공간 트위스트(Spatial Twist)
공간 좌표계(또는 월드 좌표계)에서 표현되는 트위스트이다.
\mathcal{V}_s = \begin{bmatrix}\boldsymbol{\omega}_s \\ \mathbf{v}_s\end{bmatrix}
여기서 \boldsymbol{\omega}_s는 공간 좌표계에서의 각속도, \mathbf{v}_s는 공간 좌표계의 원점에 위치한 강체상의 가상 점의 속도이다.
3.2.2 본체 트위스트(Body Twist)
본체 좌표계에서 표현되는 트위스트이다.
\mathcal{V}_b = \begin{bmatrix}\boldsymbol{\omega}_b \\ \mathbf{v}_b\end{bmatrix}
여기서 \boldsymbol{\omega}_b는 본체 좌표계에서의 각속도, \mathbf{v}_b는 본체 좌표계의 원점의 속도(본체 좌표계에서 표현)이다.
3.3 두 표현 사이의 변환
공간 트위스트와 본체 트위스트는 동일한 강체 운동을 다른 좌표계에서 표현한 것이며, 공역(adjoint) 사상으로 변환된다.
\mathcal{V}_s = [\mathrm{Ad}_{\mathbf{T}}]\mathcal{V}_b
여기서 [\mathrm{Ad}_{\mathbf{T}}]는 6 \times 6 공역 행렬이다.
4. 해트와 베 사상
4.1 해트 사상
6차원 트위스트 벡터에서 4 \times 4 행렬로의 사상을 해트 사상이라 한다.
[\cdot]^\wedge : \mathbb{R}^6 \to \mathfrak{se}(3)
\boldsymbol{\xi}^\wedge = \begin{bmatrix}\boldsymbol{\omega} \\ \mathbf{v}\end{bmatrix}^\wedge = \begin{bmatrix}[\boldsymbol{\omega}]_\times & \mathbf{v} \\ \mathbf{0}^T & 0\end{bmatrix}
다른 표기로 \hat{\boldsymbol{\xi}}나 [\boldsymbol{\xi}]를 사용하기도 한다.
4.2 베 사상
행렬에서 벡터로의 역 사상이다.
(\cdot)^\vee : \mathfrak{se}(3) \to \mathbb{R}^6
\left(\begin{bmatrix}[\boldsymbol{\omega}]_\times & \mathbf{v} \\ \mathbf{0}^T & 0\end{bmatrix}\right)^\vee = \begin{bmatrix}\boldsymbol{\omega} \\ \mathbf{v}\end{bmatrix}
4.3 동형사상
해트와 베 사상은 서로의 역이며, \mathbb{R}^6과 \mathfrak{se}(3) 사이의 선형 동형사상을 제공한다.
5. \mathfrak{se}(3)의 리 괄호
5.1 행렬 교환자
\mathfrak{se}(3)의 리 괄호는 행렬 교환자로 정의된다.
[\hat{\boldsymbol{\xi}}_1, \hat{\boldsymbol{\xi}}_2] = \hat{\boldsymbol{\xi}}_1\hat{\boldsymbol{\xi}}_2 - \hat{\boldsymbol{\xi}}_2\hat{\boldsymbol{\xi}}_1
두 트위스트의 행렬 형태를 곱하고 빼면 다시 \mathfrak{se}(3)의 원소가 된다.
5.2 벡터 표현
벡터 표현에서 리 괄호는 다음과 같이 계산된다.
[\boldsymbol{\xi}_1, \boldsymbol{\xi}_2] = \begin{bmatrix}\boldsymbol{\omega}_1 \times \boldsymbol{\omega}_2 \\ \boldsymbol{\omega}_1 \times \mathbf{v}_2 - \boldsymbol{\omega}_2 \times \mathbf{v}_1\end{bmatrix}
회전 부분은 두 각속도의 외적이고, 병진 부분은 회전과 병진의 결합 항이다.
5.3 행렬 형태에서의 유도
\hat{\boldsymbol{\xi}}_1\hat{\boldsymbol{\xi}}_2를 계산하면
\hat{\boldsymbol{\xi}}_1\hat{\boldsymbol{\xi}}_2 = \begin{bmatrix}[\boldsymbol{\omega}_1]_\times[\boldsymbol{\omega}_2]_\times & [\boldsymbol{\omega}_1]_\times\mathbf{v}_2 \\ \mathbf{0}^T & 0\end{bmatrix}
마찬가지로 \hat{\boldsymbol{\xi}}_2\hat{\boldsymbol{\xi}}_1를 계산하고 두 결과를 빼면
[\hat{\boldsymbol{\xi}}_1, \hat{\boldsymbol{\xi}}_2] = \begin{bmatrix}[\boldsymbol{\omega}_1 \times \boldsymbol{\omega}_2]_\times & \boldsymbol{\omega}_1 \times \mathbf{v}_2 - \boldsymbol{\omega}_2 \times \mathbf{v}_1 \\ \mathbf{0}^T & 0\end{bmatrix}
이는 위의 벡터 표현과 일치한다.
5.4 \mathrm{ad} 사상
리 괄호는 \mathrm{ad} 사상으로 표현될 수 있다.
\mathrm{ad}_{\boldsymbol{\xi}_1}(\boldsymbol{\xi}_2) = [\boldsymbol{\xi}_1, \boldsymbol{\xi}_2]
이를 행렬로 표현하면 다음의 6 \times 6 행렬이다.
[\mathrm{ad}_{\boldsymbol{\xi}}] = \begin{bmatrix}[\boldsymbol{\omega}]_\times & \mathbf{0} \\ [\mathbf{v}]_\times & [\boldsymbol{\omega}]_\times\end{bmatrix}
이 행렬을 트위스트 벡터에 곱하면 리 괄호의 결과가 얻어진다.
6. \mathfrak{se}(3)의 기저
6.1 표준 기저
\mathfrak{se}(3)의 표준 기저는 6개의 행렬이며, 각각 회전 또는 병진의 한 방향에 해당한다.
회전 부분의 기저:
\hat{\mathbf{e}}_1 = \begin{bmatrix}\mathbf{E}_x & \mathbf{0} \\ \mathbf{0}^T & 0\end{bmatrix}, \quad \hat{\mathbf{e}}_2 = \begin{bmatrix}\mathbf{E}_y & \mathbf{0} \\ \mathbf{0}^T & 0\end{bmatrix}, \quad \hat{\mathbf{e}}_3 = \begin{bmatrix}\mathbf{E}_z & \mathbf{0} \\ \mathbf{0}^T & 0\end{bmatrix}
병진 부분의 기저:
\hat{\mathbf{e}}_4 = \begin{bmatrix}\mathbf{0} & \hat{\mathbf{x}} \\ \mathbf{0}^T & 0\end{bmatrix}, \quad \hat{\mathbf{e}}_5 = \begin{bmatrix}\mathbf{0} & \hat{\mathbf{y}} \\ \mathbf{0}^T & 0\end{bmatrix}, \quad \hat{\mathbf{e}}_6 = \begin{bmatrix}\mathbf{0} & \hat{\mathbf{z}} \\ \mathbf{0}^T & 0\end{bmatrix}
여기서 \mathbf{E}_x, \mathbf{E}_y, \mathbf{E}_z는 \mathfrak{so}(3)의 표준 기저이고, \hat{\mathbf{x}}, \hat{\mathbf{y}}, \hat{\mathbf{z}}는 표준 단위 벡터이다.
6.2 일반 원소의 표현
임의의 트위스트는 표준 기저의 선형 결합이다.
\hat{\boldsymbol{\xi}} = \omega_x\hat{\mathbf{e}}_1 + \omega_y\hat{\mathbf{e}}_2 + \omega_z\hat{\mathbf{e}}_3 + v_x\hat{\mathbf{e}}_4 + v_y\hat{\mathbf{e}}_5 + v_z\hat{\mathbf{e}}_6
좌표 (\omega_x, \omega_y, \omega_z, v_x, v_y, v_z)가 트위스트의 6차원 벡터 표현이다.
7. 트위스트와 강체 운동
7.1 강체의 운동학
강체 변환 \mathbf{T}(t)의 시간 미분과 트위스트의 관계는 다음과 같다.
\dot{\mathbf{T}}\mathbf{T}^{-1} = \hat{\mathcal{V}}_s
\mathbf{T}^{-1}\dot{\mathbf{T}} = \hat{\mathcal{V}}_b
이 두 식이 공간 트위스트와 본체 트위스트를 정의한다. 좌측 곱 형태가 공간 트위스트이고, 우측 곱 형태가 본체 트위스트이다.
7.2 운동학 방정식
이로부터 강체 변환의 시간 진화는 다음과 같이 표현된다.
\dot{\mathbf{T}} = \hat{\mathcal{V}}_s\mathbf{T} = \mathbf{T}\hat{\mathcal{V}}_b
이는 1차 행렬 미분 방정식이며, 트위스트가 시간에 따라 변하지 않는 경우 닫힌 형태의 해를 가진다.
7.3 매개 변수 부분 군
상수 트위스트 \hat{\boldsymbol{\xi}}에 의해 생성되는 강체 변환의 1매개 변수 부분 군은 다음과 같다.
\mathbf{T}(t) = \exp(t\hat{\boldsymbol{\xi}})
이는 단위 시간당 트위스트만큼 강체가 운동하는 경우의 변환이다.
8. 스크류 운동과의 관계
8.1 슈아세의 정리
슈아세의 정리에 의해 임의의 강체 변환은 단일 스크류 운동(어떤 직선 주위의 회전과 그 직선 방향의 병진)으로 표현될 수 있다. 트위스트는 이러한 스크류 운동의 무한소 형태이다.
8.2 스크류 매개변수와 트위스트
스크류 운동의 매개변수(축 방향, 축 위치, 회전 각, 피치)와 트위스트의 성분 사이에 다음의 관계가 있다.
\boldsymbol{\omega} = \dot{\phi}\hat{\mathbf{s}}
\mathbf{v} = -\dot{\phi}(\hat{\mathbf{s}} \times \mathbf{q}) + \dot{d}\hat{\mathbf{s}}
여기서 \hat{\mathbf{s}}는 스크류 축 방향, \mathbf{q}는 축 위의 한 점, \dot{\phi}는 회전 각속도, \dot{d}는 병진 속도이다.
8.3 회전 관절과 직선 관절
매니퓰레이터의 회전 관절은 \mathbf{v} = -\boldsymbol{\omega} \times \mathbf{q}이고 \dot{d} = 0인 트위스트로 표현된다. 직선 관절은 \boldsymbol{\omega} = 0이고 \mathbf{v} = \dot{d}\hat{\mathbf{s}}인 트위스트로 표현된다.
이러한 통일된 표현이 매니퓰레이터의 운동학을 다루는 데 강력한 도구가 된다.
9. 공역 사상
9.1 공역 행렬
SE(3)의 원소 \mathbf{T} = (\mathbf{R}, \mathbf{p})의 공역 사상은 다음의 6 \times 6 행렬이다.
[\mathrm{Ad}_{\mathbf{T}}] = \begin{bmatrix}\mathbf{R} & \mathbf{0} \\ [\mathbf{p}]_\times\mathbf{R} & \mathbf{R}\end{bmatrix}
이 행렬이 한 좌표계의 트위스트를 다른 좌표계의 트위스트로 변환한다.
9.2 변환 공식
\mathcal{V}_s = [\mathrm{Ad}_{\mathbf{T}_{sb}}]\mathcal{V}_b
여기서 \mathbf{T}_{sb}는 본체 좌표계에서 공간 좌표계로의 변환이다.
9.3 역 변환
\mathcal{V}_b = [\mathrm{Ad}_{\mathbf{T}_{bs}}]\mathcal{V}_s = [\mathrm{Ad}_{\mathbf{T}_{sb}^{-1}}]\mathcal{V}_s
9.4 공역의 성질
공역 사상은 다음의 성질을 가진다.
- [\mathrm{Ad}_{\mathbf{T}_1\mathbf{T}_2}] = [\mathrm{Ad}_{\mathbf{T}_1}][\mathrm{Ad}_{\mathbf{T}_2}]
- [\mathrm{Ad}_{\mathbf{T}}]^{-1} = [\mathrm{Ad}_{\mathbf{T}^{-1}}]
- [\mathrm{Ad}_{\mathbf{I}}] = \mathbf{I}_{6 \times 6}
10. \mathfrak{se}(3)의 지수 사상
10.1 정의
\mathfrak{se}(3)의 원소 \hat{\boldsymbol{\xi}}의 지수 사상은 행렬 지수로 정의된다.
\exp(\hat{\boldsymbol{\xi}}) = \sum_{k=0}^{\infty}\frac{\hat{\boldsymbol{\xi}}^k}{k!}
10.2 닫힌 형태
이 무한 급수는 닫힌 형태로 표현된다.
\exp(\hat{\boldsymbol{\xi}}) = \begin{bmatrix}\exp([\boldsymbol{\omega}]_\times) & \mathbf{V}\mathbf{v} \\ \mathbf{0}^T & 1\end{bmatrix}
여기서
- \exp([\boldsymbol{\omega}]_\times): 로드리게스 공식에 의한 회전 행렬
- \mathbf{V}: 좌측 야코비안
좌측 야코비안의 형태는 다음과 같다.
\mathbf{V} = \mathbf{I} + \frac{1 - \cos\theta}{\theta^2}[\boldsymbol{\omega}]_\times + \frac{\theta - \sin\theta}{\theta^3}[\boldsymbol{\omega}]_\times^2
여기서 \theta = \lVert\boldsymbol{\omega}\rVert이다.
10.3 의미
지수 사상은 트위스트(무한소 강체 운동)를 유한 강체 변환으로 변환한다. 이는 강체의 운동학에서 핵심 역할을 한다.
11. 매니퓰레이터에서의 활용
11.1 곱지수 공식
매니퓰레이터의 순기구학은 곱지수 공식으로 표현된다.
\mathbf{T}(\boldsymbol{\theta}) = e^{\hat{\boldsymbol{\xi}}_1\theta_1}e^{\hat{\boldsymbol{\xi}}_2\theta_2}\cdots e^{\hat{\boldsymbol{\xi}}_n\theta_n}\mathbf{M}
여기서 \hat{\boldsymbol{\xi}}_i는 i번째 관절의 스크류 축(트위스트 형태)이고 \theta_i는 관절 변수, \mathbf{M}은 영 자세에서의 말단 장치 변환이다. 각 트위스트가 \mathfrak{se}(3)의 원소이다.
11.2 매니퓰레이터 자코비안
매니퓰레이터의 공간 자코비안은 각 관절의 트위스트로 구성된다.
\mathbf{J}_s(\boldsymbol{\theta}) = [\mathcal{V}_{s,1}, \mathcal{V}_{s,2}, \ldots, \mathcal{V}_{s,n}]
각 열이 한 관절의 현재 트위스트이며, 자코비안이 관절 속도를 말단 장치 트위스트로 매핑한다.
\mathcal{V}_s = \mathbf{J}_s(\boldsymbol{\theta})\dot{\boldsymbol{\theta}}
12. 동역학에서의 활용
12.1 강체 동역학
강체의 운동 방정식은 트위스트와 그 시간 미분으로 표현된다. 본체 좌표계에서 강체의 운동 방정식은 다음과 같이 표현된다.
\mathbf{I}\dot{\mathcal{V}}_b - [\mathrm{ad}_{\mathcal{V}_b}]^T\mathbf{I}\mathcal{V}_b = \mathcal{F}_b
여기서 \mathbf{I}는 일반화된 관성 행렬, \mathcal{F}_b는 일반화된 힘(렌치)이다.
12.2 Featherstone 알고리즘
Featherstone의 articulated body algorithm은 트위스트와 렌치를 사용하여 매니퓰레이터의 순동역학과 역동역학을 효율적으로 계산한다.
13. 시각적 SLAM에서의 활용
13.1 카메라 자세
시각적 SLAM에서 카메라의 자세는 SE(3)의 원소이며, 갱신과 미분에서 \mathfrak{se}(3)의 표현이 사용된다.
13.2 비선형 최적화
번들 조정 등 비선형 최적화에서 카메라 자세의 갱신이 \mathfrak{se}(3) 위에서 이루어진다.
\mathbf{T}_{k+1} = \mathbf{T}_k\exp(\hat{\boldsymbol{\xi}})
여기서 \boldsymbol{\xi}가 갱신 방향이며, 이를 미세하게 변화시키며 비용 함수를 최적화한다.
14. 트위스트의 물리적 해석
14.1 차원 속도
트위스트는 강체의 6자유도 속도이다. 한 순간에 강체가 어떻게 움직이고 있는지를 6개의 숫자로 완전히 기술한다.
14.2 회전 부분과 병진 부분
회전 부분 \boldsymbol{\omega}는 각속도이며 단위는 라디안/초이다. 병진 부분 \mathbf{v}는 선형 속도이며 단위는 미터/초이다.
14.3 좌표계의 의미
공간 트위스트와 본체 트위스트는 서로 다른 좌표계에서 측정된 같은 물리적 운동이다. 어느 표현을 사용할지는 응용에 따라 결정된다.
15. 학습의 가치
\mathfrak{se}(3)을 깊이 이해하는 것은 다음과 같은 이점을 제공한다.
- 강체의 6자유도 운동을 통합적으로 다룰 수 있다.
- 매니퓰레이터의 운동학과 동역학을 효율적으로 분석할 수 있다.
- 자세 추정과 시각적 SLAM의 알고리즘을 깊이 이해할 수 있다.
- 트위스트와 스크류 이론의 연결을 명확히 한다.
- 학술 문헌의 표준 표기를 이해할 수 있다.
16. 참고 문헌
- Hall, B. C. (2015). Lie Groups, Lie Algebras, and Representations: An Elementary Introduction (2nd ed.). Springer.
- 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.
- Featherstone, R. (2008). Rigid Body Dynamics Algorithms. Springer.
- Selig, J. M. (2005). Geometric Fundamentals of Robotics (2nd ed.). Springer.
- Sola, J., Deray, J., & Atchuthan, D. (2018). “A Micro Lie Theory for State Estimation in Robotics.” arXiv:1812.01537.
version: 1.0