10.11 단위 쿼터니언(Unit Quaternion)의 정의

1. 단위 쿼터니언의 정의

단위 쿼터니언(unit quaternion)은 노름이 1인 쿼터니언이다.

\mathbf{q} \text{ is a unit quaternion} \quad \Leftrightarrow \quad \lVert \mathbf{q} \rVert = 1

성분으로 표현하면

q_w^2 + q_x^2 + q_y^2 + q_z^2 = 1

이는 4차원 공간 \mathbb{R}^4에서 단위 구면 S^3의 정의와 같다. 따라서 단위 쿼터니언의 집합은 4차원 단위 구면이다.

\{\text{unit quaternions}\} = S^3 = \{(q_w, q_x, q_y, q_z) \in \mathbb{R}^4 : q_w^2 + q_x^2 + q_y^2 + q_z^2 = 1\}

2. 단위 쿼터니언의 자유도

쿼터니언은 4 매개변수를 가지지만 단위 노름 제약이 1차원을 제거한다. 따라서 단위 쿼터니언의 독립 자유도는 3이다.

\dim(S^3) = 4 - 1 = 3

이는 3차원 회전군 SO(3)의 자유도와 일치하며, 단위 쿼터니언이 3차원 회전을 매개화하기에 적합한 이유 중 하나이다.

3. 단위 쿼터니언과 회전

3.1 회전 표현

단위 쿼터니언은 3차원 회전을 표현하는 표준 방법 중 하나이다. 회전 축 \hat{\mathbf{u}} 주위의 각도 \phi 회전은 다음의 단위 쿼터니언으로 표현된다.

\mathbf{q} = (\cos(\phi/2), \sin(\phi/2)\hat{\mathbf{u}})

3.2 단위 노름의 검증

이 형태가 단위 노름을 가짐을 확인할 수 있다.

\lVert \mathbf{q} \rVert^2 = \cos^2(\phi/2) + \sin^2(\phi/2)\lVert\hat{\mathbf{u}}\rVert^2 = \cos^2(\phi/2) + \sin^2(\phi/2) = 1

여기서 \hat{\mathbf{u}}가 단위 벡터이므로 \lVert\hat{\mathbf{u}}\rVert^2 = 1이다.

3.3 회전 각의 절반

흥미로운 점은 쿼터니언이 회전 각의 절반을 사용한다는 것이다. 즉, 쿼터니언 \mathbf{q}는 각도 \phi의 회전을 \phi/2를 사용하여 인코딩한다. 이는 쿼터니언이 회전군 SO(3)의 이중 피복(double cover)이라는 사실의 표현이다.

4. 부호 이중성

단위 쿼터니언과 회전 사이의 대응에는 부호 이중성이 있다.

\mathbf{q} \text{와 } -\mathbf{q} \text{는 같은 회전을 나타낸다}

증명: \mathbf{q} = (\cos(\phi/2), \sin(\phi/2)\hat{\mathbf{u}})가 각도 \phi 회전을 나타낸다면, -\mathbf{q} = (-\cos(\phi/2), -\sin(\phi/2)\hat{\mathbf{u}})는 다음과 같이 해석된다.

-\mathbf{q} = (\cos((\phi + 2\pi)/2), \sin((\phi + 2\pi)/2)\hat{\mathbf{u}})

이는 각도 \phi + 2\pi 회전이며, 이는 \phi 회전과 같다(2\pi 주기성). 따라서 \mathbf{q}-\mathbf{q}가 같은 회전을 나타낸다.

또는 더 간단히, -\mathbf{q}는 회전 각이 \phi 대신 \phi + 2\pi 또는 회전 축이 -\hat{\mathbf{u}}인 같은 회전이다.

5. 이중 피복

단위 쿼터니언 군 \mathrm{Sp}(1) = S^3이 회전군 SO(3)을 이중적으로 덮는다(double cover). 즉, S^3에서 SO(3)으로의 사상이 2대 1이다.

\pi: S^3 \to SO(3), \quad \mathbf{q} \mapsto R(\mathbf{q})

\pi(\mathbf{q}) = \pi(-\mathbf{q})이며, 다른 모든 쿼터니언은 다른 회전에 대응된다.

이 이중 피복은 SO(3)의 위상적 구조를 반영한다. SO(3)이 단순 연결이 아니므로(고리가 점으로 수축되지 않음), 그 보편 피복인 \mathrm{Sp}(1) \cong S^3이 두 배의 점을 가진다.

6. 단위 쿼터니언의 성질

6.1 곱에 대한 닫힘

두 단위 쿼터니언의 곱은 단위 쿼터니언이다. 이는 노름의 곱셈성으로부터 직접 얻어진다.

\lVert\mathbf{q}_1\rVert = 1, \lVert\mathbf{q}_2\rVert = 1 \quad \Rightarrow \quad \lVert\mathbf{q}_1\mathbf{q}_2\rVert = 1

6.2 역원이 켤레

단위 쿼터니언의 역원은 켤레와 같다.

\mathbf{q}^{-1} = \mathbf{q}^* \quad \text{(단위 쿼터니언)}

이는 매우 중요한 성질이며, 회전 표현의 효율성에 큰 기여를 한다.

6.3 항등 쿼터니언

항등 쿼터니언 1 = (1, \mathbf{0})은 단위 쿼터니언이며, 항등 회전(회전 없음)을 나타낸다.

6.4 4차원 단위 구면

단위 쿼터니언의 집합은 4차원 단위 구면 S^3이다. 이는 위상적으로 컴팩트한 매니폴드이다.

7. 단위 쿼터니언 군

단위 쿼터니언의 집합은 곱에 관해 군을 형성한다. 이 군을 다양한 방식으로 부른다.

  • \mathrm{Sp}(1): 1차원 심플렉틱 군
  • \mathrm{SU}(2): 2차원 특수 유니타리 군 (행렬 표현 사용)
  • S^3: 위상적으로 4차원 단위 구면

이 군은 SO(3)의 보편 피복이며, SO(3) \cong \mathrm{Sp}(1)/\{\pm 1\}의 관계가 성립한다.

8. SO(3)과의 관계

8.1 사상

단위 쿼터니언에서 회전 행렬로의 사상은 다음과 같다.

\mathbf{R}(\mathbf{q}) = (q_w^2 - \mathbf{q}_v^T\mathbf{q}_v)\mathbf{I}_3 + 2\mathbf{q}_v\mathbf{q}_v^T + 2q_w[\mathbf{q}_v]_\times

이 행렬이 회전 행렬임은 노름이 1이라는 조건과 다른 성질로부터 확인된다.

8.2 군 동형

쿼터니언 곱과 회전 행렬의 곱이 호환된다.

\mathbf{R}(\mathbf{q}_1\mathbf{q}_2) = \mathbf{R}(\mathbf{q}_1)\mathbf{R}(\mathbf{q}_2)

이는 단위 쿼터니언 군에서 회전군 SO(3)으로의 군 준동형 사상이며, 사상이 2대 1이라는 점에서 동형은 아니지만 군 구조를 보존한다.

9. 단위 쿼터니언의 특수한 형태

9.1 항등 회전

\mathbf{q}_{\text{identity}} = (1, 0, 0, 0)

회전 각이 0인 경우이다.

9.2 도 회전

회전 각이 \pi이면

\mathbf{q}_{180^\circ} = (\cos(\pi/2), \sin(\pi/2)\hat{\mathbf{u}}) = (0, \hat{\mathbf{u}})

이는 순수 벡터 쿼터니언이며, 스칼라 부분이 0이다.

9.3 도 회전

회전 각이 \pi/2이면

\mathbf{q}_{90^\circ} = (\cos(\pi/4), \sin(\pi/4)\hat{\mathbf{u}}) = \left(\frac{\sqrt{2}}{2}, \frac{\sqrt{2}}{2}\hat{\mathbf{u}}\right)

스칼라와 벡터 부분의 크기가 같다.

9.4 기본 축 회전

9.4.1 x축 주위

\mathbf{q}_x(\phi) = (\cos(\phi/2), \sin(\phi/2), 0, 0)

9.4.2 y축 주위

\mathbf{q}_y(\phi) = (\cos(\phi/2), 0, \sin(\phi/2), 0)

9.4.3 z축 주위

\mathbf{q}_z(\phi) = (\cos(\phi/2), 0, 0, \sin(\phi/2))

이러한 기본 회전은 매니퓰레이터 기구학과 자세 변환에서 자주 사용된다.

10. 단위 쿼터니언의 매개화

10.1 축-각도 매개화

가장 자연스러운 매개화는 회전 축과 회전 각이다.

(\hat{\mathbf{u}}, \phi) \mapsto (\cos(\phi/2), \sin(\phi/2)\hat{\mathbf{u}})

10.2 매개변수 직접 매개화

(q_w, q_x, q_y, q_z)를 직접 사용하되 단위 노름 제약을 부과한다. 이는 코드 구현에서 가장 단순하다.

10.3 매개변수 매개화

벡터 부분 (q_x, q_y, q_z)만으로 매개화하고 스칼라 부분을 q_w = \sqrt{1 - q_x^2 - q_y^2 - q_z^2}로 결정한다. 이는 4 매개변수를 3 매개변수로 줄이지만, q_w의 부호가 모호해지는 문제가 있다.

10.4 회전 벡터 매개화

회전 벡터 \boldsymbol{\phi} = \phi\hat{\mathbf{u}}로부터 단위 쿼터니언을 다음과 같이 계산한다.

\mathbf{q} = (\cos(\lVert\boldsymbol{\phi}\rVert/2), \sin(\lVert\boldsymbol{\phi}\rVert/2)\boldsymbol{\phi}/\lVert\boldsymbol{\phi}\rVert)

이는 \mathfrak{so}(3) 리 대수에서 S^3로의 지수 사상이다.

11. 정규화

단위 쿼터니언이 아닌 쿼터니언을 단위 쿼터니언으로 변환하는 과정이 정규화이다.

\hat{\mathbf{q}} = \frac{\mathbf{q}}{\lVert\mathbf{q}\rVert}

부동 소수점 오차로 인해 단위 노름이 손실되었을 때 주기적으로 정규화한다.

12. 단위 쿼터니언의 응용

12.1 회전 표현

3차원 회전을 효율적으로 표현하는 표준 방법이다.

12.2 회전 합성

두 회전의 합성이 단위 쿼터니언 곱으로 표현된다.

12.3 회전 보간

SLERP를 통한 매끄러운 회전 보간이 단위 쿼터니언에서 정의된다.

12.4 자세 추정

쿼터니언 기반 칼만 필터, 보완 필터(complementary filter) 등이 사용된다.

12.5 자세 제어

자세 오차를 단위 쿼터니언의 차이로 표현하고 제어 입력을 산출한다.

13. 단위 쿼터니언의 한계

13.1 부호 이중성

\mathbf{q}-\mathbf{q}의 모호성이 보간이나 평균 계산에서 처리되어야 한다.

13.2 단위 노름 제약

단위 노름 제약은 비선형 최적화에서 불편할 수 있다. 자유 매개변수가 아니므로 매개화나 라그랑주 승수가 필요하다.

13.3 직관성

쿼터니언의 4 매개변수가 직관적이지 않다. 사용자에게는 오일러 각이 더 친숙하다.

14. 단위 쿼터니언의 위상

14.1 컴팩트성

S^3\mathbb{R}^4의 컴팩트 부분 집합이다. 모든 단위 쿼터니언이 유계이므로, 컴팩트성은 자동으로 따른다.

14.2 연결성

S^3는 연결된 매니폴드이다. 임의의 두 단위 쿼터니언 사이에 S^3 내의 연속 경로가 존재한다.

14.3 단순 연결성

S^3는 단순 연결이다. 즉, 임의의 폐곡선이 점으로 수축될 수 있다. 이는 S^3SO(3)의 보편 피복이라는 사실과 관련된다.

15. 참고 문헌

  • Hamilton, W. R. (1844). “On Quaternions; or on a New System of Imaginaries in Algebra.” Philosophical Magazine, Vol. 25, 489–495.
  • Kuipers, J. B. (1999). Quaternions and Rotation Sequences. Princeton University Press.
  • Sola, J. (2017). “Quaternion Kinematics for the Error-State Kalman Filter.” arXiv:1711.02508.
  • Conway, J. H., & Smith, D. A. (2003). On Quaternions and Octonions. A K Peters.
  • Stillwell, J. (2010). Mathematics and Its History (3rd ed.). Springer.

version: 1.0