A micro Lie theory ๋ ผ๋ฌธ์ด ์ด๋ ต๋ค๋ฉด โฆ
- ์ด ๊ธ์ ๋จผ์ ์ฝ์ด๋ณด์.
- a.k.a A nano Lie theory!
๊ฐ์
- ์์ ๋ธ๋ก๊ทธ ํํ ๋ฆฌ์ผ ๋ฐ ์์ ๋ธ๋ก๊ทธ ์์๋ ๋งจ๋ ์ ๋ฆฌํ๋ rotation ์ด์ผ๊ธฐ๋ฅผ ๋ค์ ํ๋ฒ, ์ข ๋ consiceํ๊ฒ, ํด๋ณด๋ ค๊ณ ํ๋ค.
- ์ด๋ฅธ๋ฐ Nano Lie Theory!
- Joan Sola ์ A micro Lie theory for state estimation in robotics ๋ฅผ ์ฝ๊ธฐ ์ ์ ํบ์๋ณด๊ณ ๊ฐ๋ฉด ์ข์ ์ด์ผ๊ธฐ๋ค์ ์ํ์์ด ์ ์ด๋ณด์๋ค.
- ์ค์ํ ๊ฒ์ How ๋ณด๋ค Why์ด๋ค. Lie theory๋ฅผ ์ ์์์ผ ํ๋๊ฐ?
- micro ๋ณด๋ค ์ข ๋ ๊ฐ๊ฒฐํ๊ฒ ์ด์ผ๊ธฐํ๋ค๋ ์ธก๋ฉด์์ nano Lie theory.
Nano Lie Theory
์์ง๋์ด์ ์ผ
- ์ฐ๋ฆฌ๋ ์ด๋ค ๋ณ์๋ค์ ์ต์ ๊ฐ์ ์๊ณ ์ถ๋ค.
- ์ฐ๋ฆฌ๊ฐ ์๊ณ ์ถ์ ๊ฐ๋ค์ ๋ชจ์์ vector (== multi dimensional 1-d tensor) ์ด๋ค. let it $\textbf{x}$.
- ๊ทธ๋ฆฌ๊ณ ๊ทธ ๋ณ์๋ค์ด ๋ง์กฑํด์ผ ํ๋ ์ด๋ค ์ ์ฝ๋ค์ด ์ฃผ์ด์ง๋ค.
- ์๋ฅผ ๋ค์ด ์ด๋ค ๋จ๊ฑฐ์ด ๋ฌผ์ฒด๋ฅผ ๊ฐ์ํ๋ ๋ก๋ด์ด ์๋ค๊ณ ํ์. ๊ทธ ๋ก๋ด์ ๋จ๊ฑฐ์ด ๋ฌผ์ฒด ์ฃผ๋ณ์ ์ด๋ป๊ฒ ๋๋ฉด์ ๊ฐ์ํด์ผํ ๊น?
- x = (๋ก๋ด์ ์์น, ๋ก๋ด์ ์์ธ, ๋ก๋ด์ด ๋๋ผ๋ ์จ๋) ๋ผ๊ณ ํ๋ฉด,
- ์์ธ ์ ์ฝ: ๋ก๋ด์ ์์ธ๋ ๊ทธ ๋ฌผ์ฒด๋ฅผ ์ต์ํ ์ด๋์ ๋ ์ด์์ผ๋ก๋ ์์ง์ ๊ฐ๊น๊ฒ ๋ฐ๋ผ๋ณด์์ผ ํ๋ฉฐ,
- ์์น ์ ์ฝ: ๋ก๋ด์ ์์น๋ ๊ทธ ์ด์์ ์ ๊ฐ์ํ๊ธฐ ์ํด ์ด๋์ ๋ ๊ฑฐ๋ฆฌ ๊น์ง ๊ฐ๊น์์ง๋ ค๊ณ ๋ ธ๋ ฅํด์ผํ๋ค.
- ์จ๋ ์ ์ฝ: ํ์ง๋ง ๊ทธ ๋ ๋ก๋ด ์์ฒด๊ฐ ๋๋ฌด ๋จ๊ฑฐ์์ง๋ฉด ๊ธฐ๋ฅ์ ํ ์ ์์ผ๋ฏ๋ก ๊ทธ ๋ฌผ์ฒด์ ๋๋ฌด ๊ฐ๊น์์ง๋ฉด ๋ ์๋๋ค.
- ๊ทธ ์ ์ฝ๋ค์ ๋ง์กฑํ๋ ์ต์ ๊ฐ $\textbf{x}^{*}$ ๋ฅผ ์ฐพ๊ณ ์ถ๋ค.
์ต์ ํ์ ๋ณธ์ง 1: Ax = b
- ์ด ์ต์ ํ๋ผ๋ ๊ฒ์ ํญ์ $\textbf{A}\textbf{x} = \textbf{b}$ ๊ผด์ด ๋๋ค.
- ps. ์ ๊ทธ๋ฐ์ง ์์ธํ ์ค๋ช
์ ์๋ตํ๋ค. ์ด์ ๋ํด์๋ Numerical Optimization ์ด๋ผ๊ณ ๊ฒ์ํด์ ๋์ค๋ ์ฌ๋ฌ ํ
์คํธ๋ถ๋ค์ ์ถ์ฒํ๋ค. ๋ํ์ ์ผ๋ก๋
Nocedal, Jorge, and Stephen J. Wright, eds. Numerical optimization. New York, NY: Springer New York, 1999.
. ํ์ฌ ์ธ์ฉ์ด 40000ํ๊ฐ ๋๋๋ค.
- ps. ์ ๊ทธ๋ฐ์ง ์์ธํ ์ค๋ช
์ ์๋ตํ๋ค. ์ด์ ๋ํด์๋ Numerical Optimization ์ด๋ผ๊ณ ๊ฒ์ํด์ ๋์ค๋ ์ฌ๋ฌ ํ
์คํธ๋ถ๋ค์ ์ถ์ฒํ๋ค. ๋ํ์ ์ผ๋ก๋
- ์ฌ์ค ํ์ค ์ธ๊ณ์์๋ $\textbf{A}\textbf{x} = \textbf{b}$ ์ ๊ฐ์ด ์ ์ฝ๋ค์ด ์์ ๋งคํธ๋ฆญ์ค ๊ณฑ์ผ๋ก ๋ฑ ๋จ์ด์ง์ง ์๊ณ , $\mathcal{A}(\textbf{x}) = \textbf{b}$ ์ ๊ฐ์ ์ด๋ค ํจ์ ํํ๋ก ์ ์ฝ์ด ์กด์ฌํ๋ค (โฆ ์ ๋ง ์๋ฌด ์๋ฅผ ๋ค์๋ฉด $(\textbf{A}\textbf{A}^{T})^{-1}\textbf{x} + \textbf{x}^{T}\textbf{A}\textbf{x} = \textbf{b}$)
- ps. ์ด๋ฅผ ํ์ค์ธ๊ณ๋ nonlinear ํ๋ค๋ผ๊ณ ๋ถ๋ฅธ๋ค.
- ์๋ฌดํผ๊ฐ์ ๋ฌด์กฐ๊ฑด ์ ํํ(๋๋๋ง๊ณ ๋๋๋ง๊ณ ๋ฑ $\textbf{A}\textbf{x} = \textbf{b}$ ๋ชจ์์) ๋ฅผ ๋ง๋ค์ด ๋ด๋ ๊ฒ์ด ๊ด๊ฑด์ด๋ค. ๊ทธ ์ดํ๋ถํฐ ์ด์ ๊ท์น์ ์ธ ์ต์ ํ ๋ฉ์ปค๋์ฆ์ด ๋๊ธฐ ์์ํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
- โ๊ท์น์ ์ธ ์ต์ ํ ๋ฉ์ปค๋์ฆโ ์ด๋ โ๋งค์ฐ ์ ์ ๋ฆฝ๋ ๊ธฐ๊ณ์ ์ธ ๊ณผ์ โ ์ ์๋ฏธํ๋ค. ์ฆ ์์ฃผ ๊ณ์ฐ๊ธฐ์ค๋ฌ์ด. ์๋ฅผ ๋ค์ด $1+1$ ์ ์ํํ๋ฉด ๋ฌด์กฐ๊ฑด 2๊ฐ ๋์ฌ ์ ๋ฐ์ ์๋ ์ฐ์ ๊ทธ ์์ฒด.
- $\mathcal{A}(\textbf{x}) = \textbf{b}$ ๋ผ๋ ๋ชจ์์ $\textbf{A}\textbf{x} = \textbf{b}$ ๋ผ๋ ํํ๋ก ๋ง๋ค์ด๋ด๋ ๊ฒ์ด ํ
์ผ๋ฌ expansion ๊ธฐ๋ฒ์ด๋ค (Power series ๋ก ํธ๋ค, ์ ๊ฐ์ด ๋งํ๊ธฐ๋ ํ๋ค).
- ๊ทธ๋ฆฌ๊ณ ์ด ๋์ $\textbf{A}$์ ๋ชจ์์์ ๋ฐ๋ผ $\textbf{A}$๋ ์ฌ๋ฌ ์๋ก ๋ค๋ฅธ ์ฑ๊ฒฉ์ ์ง๋ ์ ์๊ฒ ๋๋ค.
- $\textbf{A}$์ ์ฑ๊ฒฉ์ ์ต์ ํ์ ๊ฒฐ๊ณผ์ ์ํฅ์ ์ค ์ ์๋ค. ๋ฐ๋ผ์ ์ $\textbf{A}$์ ๋ชจ์์๋ฅผ ์ดํดํ๋ ๊ฒ์ด ์ค์ํ๋ค.
- ๊ธฐ์ด์ ์ธ ๊ฒ๋ง ์๊ธฐํ๋ฉด under-determinant, over-determination ์ด๋ฐ ์ด์ผ๊ธฐ๋ฅผ ํ ์ ์๊ฒ ๋ค. ํน์ ์ $\textbf{A}$๊ฐ dense ํ๋ sparse ํ๋ ์ด๋ฐ ๊ฒ๋ ์ค์ํ ์ฃผ์ ์ด๋ค. ๊ทธ๋์ ์ต์ ํ๋ฅผ ์ํด์๋ ๊ธฐ์ด์ ์ผ๋ก ์ ํ๋์ํ์ด ์ค์ํ๋ค๊ณ ์ด์ผ๊ธฐํ๋ ๊ฒ์ด๋ค. ๋ชจ๋ ๊ณตํ์ ๋ฌธ์ ์ ๋ชจ๋ ์ต์ ํ๋ $\textbf{A}\textbf{x} = \textbf{b}$ ํํ์ ์ ๋๋ดํ ํฌ๋งท์ผ๋ก ๊ฒฐ๊ตญ ๊ท๊ฒฐ๋๊ธฐ ๋๋ฌธ์ด๋ค.
- ์๋ฌดํผ $\textbf{A}\textbf{x} = \textbf{b}$ ๋ผ๋ ์์ ๋ง์กฑํ๋ ์ต์ ๊ฐ $\textbf{x}^{*}$ ๋ฅผ ๊ตฌํ๋ ๊ฒ์ด ์ฐ๋ฆฌ์ ๋ชฉํ์ด๋ค.
์ต์ ํ์ ๋ณธ์ง 2: Iterative Optimization on vector space
- $\textbf{A}\textbf{x} = \textbf{b}$ ์ ํธ๋ ๊ณผ์ ์ ๋์ฒด๋ก (์๋ ์ฌ์ค ์ค์ ๋ฌธ์ ์์ ๋ชจ๋ ๊ฒฝ์ฐโฆ) iterative ํ๊ฒ ์ด๋ฃจ์ด์ง๋ค.
- ์์ ํค์๋: Gauss-Newton
- ์ด ๋ iterative ๋ผ ํจ์ $\textbf{x}$ ์ ์ต์ ๊ฐ์ด closed form์ผ๋ก ๋ ํ๊ณ ๋ฐ๋ก ๋์ค์ง ์๋๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
- ๋์ ์ ์ฐ๋ฆฌ๋ $ \delta \textbf{x}$ ์ ์ต์ ๊ฐ์ ๊ตฌํ๋ค. ๊ทธ ์ต์ ๊ฐ์ $ \delta \textbf{x}^{*}$๋ผ๊ณ ํ์
- ps. ๊ตณ์ด ์ฒจ์ธํ์๋ฉด (์์ธํ notation ์ค๋ช ์ ์ธ์ ๋ ๋ ์ณ๋ค).. $ \delta \textbf{x}$ ๋ ๋น์ฐํ ๋ธํ ๊ณฑํ๊ธฐ $x$ ๊ฐ ์๋๋ค. $\textbf{x}$๋ $\textbf{x}$์ธ๋ฐ $\textbf{x}$ ์ฃผ๋ณ์์์ ์์ฃผ ์์ $\textbf{x}$ ๋ผ๋ ๋ป์ด๋ค.
- ๊ทธ๋ฌ๋ฉด i ๋ฒ์งธ ํด์์์ $\textbf{x}^{*}_{i}$๋
- ์ง์ ํด์์์ (์์ ์ต์ ๊ฐ) $\textbf{x}^{\ast-}_{i-1}$์ (${}^{\ast-}$ ๋ ๊ทธ ํด๊น์ง์ ์ต์ ๊ฐ์ ์๋ฏธ)
- ์ด๋ฒ ํด์์์ ์ต์ ์กฐ๊ธ์์ง์๊ฐ $\delta\textbf{x}^{\ast}_{i}$ ๋ฅผ ๋ํ ๊ฒ์ด ๋๋ค.
- ์ฆ $\textbf{x}^{\ast}_{i}$ = $\textbf{x}^{\ast-}_{i-1}$ $+$ $\delta\textbf{x}^{\ast}_{i}$
- ์ด ๋ ์ ์ต์ ์กฐ๊ธ์์ง์์ ์์ด ๋๋ฌด ์๊ฑฐ๋ ์๋๋ฉด ๊ทธ๋ฅ 3๋ฒ๋ง iteration ์ ๋๊ธฐ๋ก ํ๋ค๋๊ฐ ํ๋, ์๋ฌดํผ๊ฐ์ ์์ง๋์ด์ ๊ท์น์ ๋๋ฌํ๊ฒ ๋๋ฉด $\textbf{x}^{\ast-}_{i}$ ๋ฅผ ์ต์ข ์ต์ ๊ฐ์ธ $\textbf{x}^{\ast}_{i}$ ์ด๋ค ๋ผ๊ณ ๋ ๋ ๊ฒฐ์ ํ๋ค.
- ์ด ๋ $\delta\textbf{x}^{\ast}$ ๋ฅผ ๊ตฌํ๋ ๊ฒ์ ๋คํํ closed form ์ผ๋ก ํธํ๊ฒ ์ด๋ฃจ์ด์ง๋ค.
- ์ฐ๋ฆฌ๋ ์์ $\textbf{A}\textbf{x} = \textbf{b}$ ๋ผ๋ ๋ฌธ์ ๋ฅผ $\textbf{A}(\textbf{x} + \delta \textbf{x}) = \textbf{b}$ ๋ผ๋ ๋ฌธ์ ๋ฅผ ํธ๋ ๊ฒ ์ผ๋ก ๋ณํํ๋ค.
- ์ฌ๊ธฐ์์ $\textbf{x}$๋ ์ง์ ํด์ ๊ฐ์ด๋ ์์์ด๊ณ , $ \delta \textbf{x}$๋ง์ด ๋ณ์์์ ๋ช ์ฌ!
- ๊ทธ๋ฌ๋ฉด ๋ค์ ๋ณ์๋ง์ ๋จ๊ธฐ๋ฉด, ์ด ๋ฌธ์ ๋ $\textbf{C} \cdot \delta \textbf{x} = \textbf{d}$ ๋ผ๋ ๋ฌธ์ ๋ก ์นํ๋๋ค ($\cdot$๋ (์์์๋ ์ฐ๋ ๊ฒ์ ์๋ตํ์ง๋ง) ๋จ์ํ ๋งคํธ๋ฆญ์ค-๋ฒกํฐ ๊ณฑ ์ฐ์ฐ์ ์๋ฏธ).
- ์ด ๋ ์๋ณ์ transposed C๋ฅผ ๊ณฑํด์ฃผ๋ฉด $\textbf{C}^T \cdot \textbf{C} \cdot dx = \textbf{C}^T \cdot \textbf{d}$ ์ด๊ณ ,
- ์ด๊ฑธ ๋๊ฒจ์ฃผ๋ฉด $\delta \textbf{x}^{\ast} = (\textbf{C}^T \textbf{C})^{-1} \textbf{C}^{T} \textbf{d} $ ๊ฐ ๋๋ค. ์ด๋ฅผ ์ ํ๋์ํ์ฉ์ด๋ก โnormal equationโ์ ํผ๋ค, ๋ผ๊ณ ๋งํ๊ธฐ๋ ํ๋ค.
- ๊ทธ๋ผ ๋ค์ ์ฝ๊ฐ ์์ผ๋ก ๋์๊ฐ์,
- $\textbf{A}\textbf{x} = \textbf{b}$ ๋ $\textbf{C} \cdot \delta \textbf{x} = \textbf{d}$ ๋ ์ฌ์ค ์์ ํ ๋์ผํ ๋ชจ์์์ด๋ค.
- ๊ทธ๋ฐ๋ฐ ์ $\textbf{x}$์ ๋ํด์๋ normal equatoin ์ ํตํด $\textbf{x}^{\ast}$ ๋ฅผ ๋ฐ๋ก ๊ณ์ฐํ๋ฉด (ํ๋ ค๋ฉด ํ ํฌ๋์ปฌ๋ฆฌ ๋น์ฐํ ํ ์์ผ ์์ง๋ง) ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ง์ด ์๋๊ณ ,
- ์ $\delta \textbf{x}$์ ๋ํด์๋ normal equation ์ ํตํด์ $\delta \textbf{x}^{\ast}$๋ฅผ ๊ณ์ฐํ๋ฉด ๋ง์ด ๋ ๊น?
- ๊ทธ๊ฒ์ normal equation ์ Vector space ์ ๋ํด์๋ง ์ ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
- ๋ง์ฝ์ x์ ์ฑ๋ถ์ ์ํ์ ์ผ๋ก vector space ๊ฐ ์๋ ์์๋ค์ ๊ฐ์ด ๋จ์ํ ๋์ด๋์ด์ ๋ค์ด์๋ค๋ฉด, ์ ์ด์ ๋ ผ๋ฆฌ์ ์ผ๋ก ํ๋ฆฐ ์ด์ผ๊ธฐ๊ฐ ๋๋ค๋ ๋ป์ด๋ค.
- ๋ก๋ณดํฑ์ค์์ ์ด๋ฌํ non-vector space์ธ ์์๋ rotation ์ด ๋ํ์ ์ด๋ค.
- ์๋ฅผ ๋ค์ด, ์์ x = (๋ก๋ด์ ์์น, ๋ก๋ด์ ์์ธ, ๋ก๋ด์ด ๋๋ผ๋ ์จ๋) ๋ผ๊ณ ํ์ ๋, ๋ก๋ด์ ์์ธ (attitude)๋ฅผ 3x3 matrix ๋ก ํํํ๋ค๊ณ ํ์ (์ฆ, SO(3)). ์ด ํ๋ ฌ์ ๊ฐ 9๊ฐ๋ฅผ x์ ์ ํด์ ๋์ดํด์ ๋ฃ์ผ๋ฉด ๋ ๊น? ๋ฌผ๋ก ๋๊ธฐ๋ ๋๋ค. ํ์ง๋ง $\textbf{A}\textbf{x} = \textbf{b}$ ๋ฅผ ํ ๋, normal equation ์ $\textbf{x}$์ ๋ํด์ ๋ฐ๋ก ํ์ด๋ฒ๋ฆฌ๋ฉด ๊ทธ ๋ ๋์ค๋ $\textbf{x}^{\ast}$ ์ค ์์ธ ๋ถ๋ถ์ 9๊ฐ ๊ฐ์ ๋ ผ๋ฆฌ์ ์ผ๋ก ๊ทธ๋ฅ ๋ง์ด ์๋๋ค๋ ๊ฒ์ด๋ค.
- ๋ค์ ๊ฐ์กฐ: ์ต์ ํ๋ฅผ ๋นํ๋ x ๋ vector space ์ ์ด๊ณ ์์ด์ผ ํ๋ค!
- ๋จ์ํ ํ๋ก๊ทธ๋๋ฐ์์ ๋งํ๋ ๊ทธ๋ฅ array (e.g., std::vector)๋ฅผ ๋งํ๋๊ฒ ์๋๋ผ ์ํ์์ ๋งํ๋ vector space ์ฌ์ผํ๋ค๋ ๋ป.
- ๊ทธ๋์ ์ฐ๋ฆฌ๋ SO(3) ํํ๋ก ์ฆ๊ฒจ์ฌ์ฉํ๋ rotation์ vector space ์ ์ด๊ณ ์๋ ํํ๋ก ๋ฐ๊พธ์ด ์ฃผ์ด์ผ ํ๋ค.
Rotation ์ต์ ํ์ ๋ณธ์ง preview: Optimization not on Lie group, but on Lie algebra
- 3x3ํํ์ ํํ ์ฌ์ฉํ๋ SO(3) rotation์ Lie group์ด๋ผ๊ณ ํ๋ค. Lie group์ manifold ๋ผ๊ณ ๋ถ๋ฆฌ๊ธฐ๋ ํ๋ค.
- ์ด๋ค SO(3) rotation ์ (identity ์ฃผ๋ณ์์์) tangent space ์ ์ด๊ณ ์๋ ์์ด๋ค์ Lie algebra ๋ผ๊ณ ํ๋ค.
- ์ฐ์์ ์ผ๋ก,
- ์ด๋ค 3์ฐจ์ vector (3์์ array) ๊ฐ ์์ผ๋ฉด ๊ทธ๊ฒ์ cross operator๋ฅผ ์ทจํ 3x3 matrix ๊ฐ Lie algebra ์ด๋ค.
- ps. cross operator ๋ hat operator ๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค. Quaternion kinematics for the error-state KF ์ 7์ชฝ ์๋ ์ฐธ๊ณ .
- ๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ Lie algebra๋ 3-dim vector ์ ๋ํ(isomorphic)์ด๋ค๋ผ๊ณ ์ด์ผ๊ธฐํ๋ค. ๊ทธ๊ฒ ๊ทธ๊ฑฐ๋ค ๋ผ๊ณ ์ดํดํ๋ฉด ๋๊ฒ ๋ค.
- ๋น๋ก Lie algebra ๋ 3x3 matrix ์ ํํ๋ฅผ ๊ฐ์ง๊ณ ์์ง๋ง ์ฌ์ค์ 3๊ฐ์ ๊ฐ (3-dof) ์ผ๋ก๋ถํฐ ์์ฑ๋๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ ์ด๋ค. ๋ฐ๋ผ์ ์ฌ์ค์ Lie algebra ์ ๋ณธ์ง์ 3๊ฐ์ ์์๋ฅผ ๊ฐ์ง๋ vector (3-dim array) ์ด๋ค.
- ์ด๋ค 3์ฐจ์ vector (3์์ array) ๊ฐ ์์ผ๋ฉด ๊ทธ๊ฒ์ cross operator๋ฅผ ์ทจํ 3x3 matrix ๊ฐ Lie algebra ์ด๋ค.
- ์ด ๋, ์ด tangent space (Lie algebra) ๋ vector space์ด๋ค.
- ์ฐ์์ ์ผ๋ก,
- Recap: optimization์ vector space ์์ ์ํ๋์ด์ผ ํ๋ค.
- ์ฆ, ์ฐ๋ฆฌ๋ ์์์ ์์ ํ iterative ํ ๋ฐฉ๋ฒ์ (== Gauss-Newton with normal equation) ์ Lie group (SO(3))์ด ์๋ Lie algebra ์ ์ด๊ณ ์๋ ์์์ ๋ํด์๋ง ์ ์ฉํ ์ ์๋ค.
- ๊ทธ๊ณณ๋ง์ด vector space์ด๊ธฐ ๋๋ฌธ์ด๋ค. ์ด๋ค ๋ ผ๋ฌธ๋ค์์๋ Euclidean space ๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค.
- (ํธ์์ $\textbf{x}$์ rotation๋ง ์๋ค๊ณ ํ๋ฉด)
- SO(3)๋ ์ด๋ฅธ ๋ฐ $\textbf{x}$์ด๊ณ , Lie algebra ์ ์ต์ ๊ฐ์ ์์ ์ด์ผ๊ธฐํ๋ $\delta \textbf{x}^{*}$ ์ธ๊ฒ์ด๋ค.
- $\textbf{x}$ ๊ฐ ์ํ ๊ณต๊ฐ์ ๊ผญ vector space ์ผ ํ์๋ ์๊ณ (์ด๋ค group์ด์ด์ ์ฐ์ฐ์ ๋ซํ์๊ธฐ๋ง ํ๋ฉด ๋๊ณ )
- $\delta \textbf{x}$ ๊ฐ ์ฌ๋ ๊ณต๊ฐ์ ๊ผญ vector space ์ฌ์ผ ํ๋ค๋ ๋ป.
- ์๋ํ๋ฉด ์ต์ ํ๋ vector space ์์๋ง ์ํ๋ ์ ์๊ธฐ ๋๋ฌธ.
- ์์ง ์ด ๋ง์ด ์ดํด๊ฐ ์๊ฐ๋๋ผ๋ ๊ณ์ ์ฝ์ด๋ณด์.
- ํน์ (๋ช
ํํ notation์ ๋นํด ์ข์ํ์ง ์์ง๋ง) ๊ตณ์ด ๋น์ ๋ฅผ ๋ค์ด๋ณด์๋ฉด โฆ
- ๊ธฐ๋ฌํ ์ด์ผ๊ธฐ์ ๋์ค๋ upside down ๊ฐ์๊ฑฐ๋๊นโฆ? ๋ ๊ณต๊ฐ ์ฌ์ด์๋ bijective map ์ด ์กด์ฌํ๋ค.. ์งํ๊ณต๊ฐ์์๋ง ์
๋ง๋ฅผ ์ฒ์นํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ๋ค์ ์ง์๊ณต๊ฐ์ผ๋ก ์ฌ๋ผ์์ผ ํ๋คโฆ (
์ด ์คํ ๋ฆฌ๊ฐ ๋ง๋๊ฐ?!)
- ๊ธฐ๋ฌํ ์ด์ผ๊ธฐ์ ๋์ค๋ upside down ๊ฐ์๊ฑฐ๋๊นโฆ? ๋ ๊ณต๊ฐ ์ฌ์ด์๋ bijective map ์ด ์กด์ฌํ๋ค.. ์งํ๊ณต๊ฐ์์๋ง ์
๋ง๋ฅผ ์ฒ์นํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ๋ค์ ์ง์๊ณต๊ฐ์ผ๋ก ์ฌ๋ผ์์ผ ํ๋คโฆ (
- SO(3)๋ ์ด๋ฅธ ๋ฐ $\textbf{x}$์ด๊ณ , Lie algebra ์ ์ต์ ๊ฐ์ ์์ ์ด์ผ๊ธฐํ๋ $\delta \textbf{x}^{*}$ ์ธ๊ฒ์ด๋ค.
Rotation ์ต์ ํ์ ๋ณธ์ง: lift-solve-retract
- Recap: ๊ทธ๋ ๋ค๋ฉด $i$๋ฒ์งธ turn์ ์ต์ SO(3) ๊ฐ์ $\textbf{x}^{\ast}_{i}$ = $\textbf{x}^{\ast-}_{i-1}$ $+$ $\delta\textbf{x}^{\ast}_{i}$ ๊ฐ ๋๋ ๊ฒ์ด๋ค.
- ๊ทธ๋ฐ๋ฐ ์ด๋ฒ์ ์ฃผ์ํด์ผํ ๊ฒ์ ๋ฐฉ๊ธ ์์์ $+$ ๋ผ๋ ์๋นํ ์ผ๋ฐ์ ์ธ ๊ธฐํธ๊ฐ ์ฐ์๋๋ฐ ์ ๋ ๊ฒ ๋์ด๋ธํ๊ฒ ์๊ฐํ๋ฉด ์๋๋ค๋ ๊ฒ์ด๋ค.
- ์๋ํ๋ฉด $\textbf{x}^{\ast-}_{i-1}$ (๋ SO(3)) ์ $\delta\textbf{x}^{\ast}_{i}$ (๋ SO(3)๊ฐ ์๋) ๋ ๋ค๋ฅธ ๊ณต๊ฐ์ ์ด๊ณ ์๊ธฐ ๋๋ฌธ์ด๋ค.
- ์๋ก ๋ค๋ฅธ ๊ณต๊ฐ์ ์ด๊ณ ์๋ ๋ ์์ ์ฌ์ด์ ์ฐ์ฐ์ ํด์ค ์๋ ์๋ ๋ ธ๋ฆ์ด๋ค.
- ๋ฐ๋ผ์ ์ด ๋ ํด๋ฒ์ Lie algebra ์ ์ด๊ณ ์๋ $\delta\textbf{x}^{\ast}_{i}$ ๋ฅผ Lie group (==SO(3)) ์ผ๋ก ๋ณํํด์ฃผ๋ฉด ๋๋ค.
- ๊ทธ๋ ๋ค๋ฉด ๊ทธ ์ดํ์๋ ํต์์ ์ธ matrix multiplication์ ํตํด ๋ rotation์ compose ํด์ฃผ๋ฉด ๋๋ค.
- ๊ทผ๋ฐ ์ด๋ป๊ฒ ๋ณํํ๋๊ฐ? ๊ทธ๊ฒ์ ๊ดํ์ด์ผ๊ธฐ๊ฐ ์ด์ the exponential map, the logarithm map ์ด๋ฐ ๊ธฐ์ ๋ค์ด๋ค.
- ์ด์ ๋ํ ์์ธํ ๋ด์ฉ์ A micro lie theory ์ Example 4 ๋ถ๋ถ์ ์ฐธ๊ณ .
- ์๊ณ ๋๋ฉด ๊ทธ๋ฅ ๊ฐ๋จํ matrix exponential ๊ธฐ๋ฒ์ด๋ฉฐ ์ํ์ด ์๋๋ผ ์ฌ์ค์์ ์ฐ์์ ๊ฐ๊น๋ค (==๊ณ์ฐ๊ธฐ).
- ps. ๋ํ๊ต ์ ํ๋ ์ ์ฅ์์ ์ ํ๋์ํ ํธ๋ฆญ๋ค์ ์ต์ํ์ง ์๋ค๋ฉด matrix ๋ฅผ ์ด๋ป๊ฒ expํ์ง? ๋ผ๋ ๊ฒ๋จน์์ด ๋ฐ๋ก ๋ค์๋ ์๊ฒ ์ผ๋, ์ฌ์ค์ exp ๋ฅผ ํ ์ผ๋ฌ๊ธ์๋ก ํผ์ณ์ matrix ์ ์ ๊ณฑ๋ค์ linear combination ๋ชจ์์ผ๋ก ๋ณํํ๋ ๊ฒ์ด๋ฏ๋ก ์ ํ ์ด๋ ค์ธ ๊ฒ์ด ์๋ค. ์ด ๋ ๋ด๊ฐ ๊ณ์ฐํ๊ธฐ ๊ท์ฐฎ๊ณ ์ด๋ ต๋ค๊ณ ์ด๋ ค์ด ๊ฒ์ด ์๋๋ค. ๊ณ์ฐ์ ์ด์งํผ ์ปดํจํฐ๊ฐ ํ๋ ๊ฒ.
- ์ฝ๊ฐ ์ค๋ช
์ด ์ฅํฉํ๋๋ฐ ์ ๋ฆฌํด๋ณด์.
- Rotation ์ต์ ํ๋ฅผ ํ์ค์์ฝํ์๋ฉด
lift-solve-retract
์ด๋ค. - ์ด ๋ง์ ๋ด๊ฐ ์ง์ด๋ธ ๋ง์ ์๋๊ณ ์๋ ๋
ผ๋ฌธ์์ ์ด๋ฏธ ์ ์ ๋ฆฌ๋์ด์๋ ์ฉ์ด์ด๋ค.
Absil, P-A., Christopher G. Baker, and Kyle A. Gallivan. "Trust-region methods on Riemannian manifolds." Foundations of Computational Mathematics 7 (2007): 303-330.
- 2023๋ 12์ ๊ธฐ์ค ์ธ์ฉ 500ํ ์ ๋ ๋๋ค.
- SLAM ์
๊ณ์์ ์ ๋ช
ํ ๋
ผ๋ฌธ์ธ IMU Preintegration on Manifold for Efficient Visual-Inertial Maximum-a-Posteriori Estimation (RSS 2015) ๋
ผ๋ฌธ์์๋ ๊ทธ๋ฐ ๋ง์ด ์๋ค.
- ์ ๋ง์ด ๋ด ๋ง์ธ๋ฐ โฆ
- ์ข ๋ ์ ๋ฆฌํด์ ํํํ๊ธฐ ์ํด GPT4์๊ฒ ์์ฝ์ ๋ถํํ์.
- Rotation ์ต์ ํ๋ฅผ ํ์ค์์ฝํ์๋ฉด
-
์์ฝ:
์ด ๊ธ์์ ์ธ๊ธ๋ โliftingโ๊ณผ โretractionโ์ ๋ค์์ฒด(manifold) ์์์์ ์ต์ ํ ๋ฌธ์ ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค. ๋ค์์ฒด (e.g., SO(3))๋ ์ผ๋ฐ์ ์ธ ์ ํด๋ฆฌ๋ ๊ณต๊ฐ(Euclidean space)๊ณผ ๋ฌ๋ฆฌ ๋น์ ํ์ ์ธ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์, ์ด๋ฌํ ๊ณต๊ฐ์์์ ์ต์ ํ๋ ํน๋ณํ ์ ๊ทผ ๋ฐฉ์์ด ํ์ํฉ๋๋ค. โLiftingโ๊ณผ โretractionโ์ ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ์ผ๋ถ์ ๋๋ค.
-
Lifting (๋ฆฌํํ ): Lifting์ ๋ค์์ฒด (e.g., SO(3)) ์์ ์ ์ฃผ๋ณ์์์ ์ต์ ํ ๋ฌธ์ ๋ฅผ ํด๋น ์ ์์์ ์ ๊ณต๊ฐ(tangent space) (e.g., Lie algebra)์ผ๋ก โ๋์ด์ฌ๋ฆฌ๋โ ๊ณผ์ ์ ๋งํฉ๋๋ค. ์ ๊ณต๊ฐ์ ํด๋น ์ ๊ทผ์ฒ์์ ๋ค์์ฒด๋ฅผ ๊ตญ์์ ์ผ๋ก ๊ทผ์ฌํ๋ ์ ํด๋ฆฌ๋ ๊ณต๊ฐ์ผ๋ก ๋ณผ ์ ์์ต๋๋ค. Lifting์ ์๋์ ๋น์ ํ ๋ฌธ์ ๋ฅผ ์ ๊ณต๊ฐ์์์ ์ ํ ๋๋ ์ ํ์ ๊ฐ๊น์ด ๋ฌธ์ ๋ก ๋ณํํ์ฌ, ํ์ค์ ์ธ ์ต์ ํ ๊ธฐ๋ฒ์ ์ ์ฉํ ์ ์๊ฒ ํฉ๋๋ค.
-
Retraction (๋ฆฌํธ๋์ ): Retraction์ ์ ๊ณต๊ฐ์์ ์ป์ ํด๋ฅผ ์๋์ ๋ค์์ฒด๋ก โ๋๋๋ฆฌ๋โ ๊ณผ์ ์ ๋งํฉ๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ๋ฆฌํธ๋์ ์ ์ ๊ณต๊ฐ์ ์์(๋ฒกํฐ)๋ฅผ ๋ค์์ฒด ์์ ์ ์ผ๋ก ๋งคํํ๋ ํจ์์ ๋๋ค. ์ด ๊ณผ์ ์ ์ ๊ณต๊ฐ์์์ ์ต์ ํ ๊ฒฐ๊ณผ๋ฅผ ๋ค์์ฒด ์์ ์ ํจํ ํด๋ก ๋ณํํฉ๋๋ค.
์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ์๋ก ๊ฐ์ฐ์ค-๋ดํด(Gauss-Newton) ๋ฐฉ๋ฒ์ ์ ์ฉํ ์ ์์ต๋๋ค. ๋ค์์ฒด ์์์์ ์ต์ ํ ๋ฌธ์ ๋ฅผ ์ ๊ณต๊ฐ์ผ๋ก โ๋ฆฌํํ โํ๊ณ , ์ด ๊ณต๊ฐ์์ ํ์ค ์ต์ ํ ๋ฐฉ๋ฒ์ ์ ์ฉํ ๋ค์, ๊ทธ ๊ฒฐ๊ณผ๋ฅผ โ๋ฆฌํธ๋์ โ์ ํตํด ๋ค์ ๋ค์์ฒด๋ก ๋๋๋ฆฝ๋๋ค. ์ด๋ ๊ฒ ํจ์ผ๋ก์จ, ๋ณต์กํ ๋น์ ํ ๋ค์์ฒด ์์ ๋ฌธ์ ๋ฅผ ๋ณด๋ค ์ฝ๊ฒ ํด๊ฒฐํ ์ ์์ต๋๋ค.
์ด๋ฌํ ๋ฐฉ๋ฒ์ ํนํ ๋ก๋ด ๊ณตํ, ์ปดํจํฐ ๋น์ , ๊ธฐ๊ณ ํ์ต ๋ฑ์์ ๋ค์์ฒด ์์ ๋ฐ์ดํฐ๋ ๋ชจ๋ธ์ ๋ค๋ฃฐ ๋ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์นด๋ฉ๋ผ์ ์์ง์์ ์ถ์ ํ๊ฑฐ๋ 3D ํํ๋ฅผ ๋ณต์ํ๋ ๋ฌธ์ ์์ ์ด๋ฌํ ๋ฐฉ๋ฒ๋ค์ด ์ฌ์ฉ๋ฉ๋๋ค.
-
- ์ฒจ์ธ
- Manifold (SO(3)) ์์ tangent space (Lie algebra) ๋ก ๊ฐ๋ ๊ฑธ ๋์ด์ฌ๋ฆฌ๋ ๊ฒ์ผ๋ก ํํํ๊ณ ์๋ค. ๋งค๋ํด๋๋ฅผ ๋ณผ๋กํ ์(circle)์ ๋ฉด, ๊ทธ๋ฆฌ๊ณ tangent space ๋ฅผ ๊ทธ ์์ ๋ณผ๋กํ ์ง์ ์์์ ์ ํ๋ช
์ด๋ผ๊ณ ์๊ฐ์ ์ผ๋ก ์๊ฐํด๋ณธ๋ค๋ฉด, ๋์ด์ฌ๋ฆฐ๋ค๋ ํํ์ด ๋ฉ๋์ด ๋๋ค.
- ๋ฐ๋๋ก, Lie algebra (tangent space) ์์ Lie group (manifold) ๋ก ๋์๊ฐ๋ ๊ฑด, (์๊ฐ์ ์ผ๋ก ํธ์์) ๋ด๋ ค๊ฐ๋ ๊ฒ์ด๋ฏ๋ก, retract (== draw back) ๋ผ๊ณ ํํํ๋ค.
- Trust-region methods on Riemannian manifolds ๋ ผ๋ฌธ์ Figure 1 ์ ๋ณด๋ฉด ์ ๊ทธ๋ฐ ํํ์ ์ผ๋์ง ์ดํด๊ฐ ์ฝ๊ฒ ๋๋ค.
- Manifold (SO(3)) ์์ tangent space (Lie algebra) ๋ก ๊ฐ๋ ๊ฑธ ๋์ด์ฌ๋ฆฌ๋ ๊ฒ์ผ๋ก ํํํ๊ณ ์๋ค. ๋งค๋ํด๋๋ฅผ ๋ณผ๋กํ ์(circle)์ ๋ฉด, ๊ทธ๋ฆฌ๊ณ tangent space ๋ฅผ ๊ทธ ์์ ๋ณผ๋กํ ์ง์ ์์์ ์ ํ๋ช
์ด๋ผ๊ณ ์๊ฐ์ ์ผ๋ก ์๊ฐํด๋ณธ๋ค๋ฉด, ๋์ด์ฌ๋ฆฐ๋ค๋ ํํ์ด ๋ฉ๋์ด ๋๋ค.
- ๊ฒฐ๋ก : Rotation ์ต์ ํ๋ฅผ ํ์ค์์ฝํ์๋ฉด
lift-solve-retract
์ด๋ค.
Rotation ์ต์ ํ: ์์ฝ
- ๊ทธ๋ฌ๋ฉด ์์ฝํด๋ณด์.
- vector space ์ ์์์ ๋ํด์ $\textbf{x}^{\ast}_{i}$ = $\textbf{x}^{\ast-}_{i-1}$ $+$ $\delta\textbf{x}^{\ast}_{i}$ ์ด๋ ๊ฒ ์ผ๋ ๊ฒ์ด
- ์ฌ์ค์ rotation (Lie group) ์ ๋ํด์๋ $\textbf{x}^{\ast}_{i}$ = $\textbf{x}^{\ast-}_{i-1}$ $\cdot \textbf{Exp}$ $(\delta\textbf{x}^{\ast}_{i})$ ์ด๋ ๊ฒ ์จ์ผ ์๋ฐํ๊ฒ ๋ง๋๊ฒ์ด๋ค.
- $ \delta\textbf{x}^{\ast}_{i} $ ๊ฐ Lie algebra ์ ์ด๊ณ ์์ผ๋ $\textbf{Exp}(\cdot)$์ ํตํด์ ๊ทธ๊ฑธ
Retract
ํด์ Lie group์ผ๋ก ๊ฐ์ ธ์จ ๋ค์์์ผ, ๋์ผํ ๊ณต๊ฐ์ ์ด๊ณ ์๋ ๋ ์์๋ผ๋ฆฌ์ ์ฐ์ฐ (i.e., matrix multiplication) ์ ๋จน์ฌ์ค ์ ์๋ ๊ฒ์ด๋ค. - ๊ทธ๋ฐ๋ฐ ๋งค๋ฒ ์ ๋ ๊ฒ ์ฐ์๋ ์ข ๊ท์ฐฎ๊ณ ์์์ง๋ ์๋ค. ์๋ํ๋ฉด (Lie group์ ๋ํด ์ ์๊ณ ์๋ ์ฌ๋์ด ๋ ์๋ผ๋ฉด) ์ข ๋ ์ถ์์ ์ธ ๊ฐ๋ ์ ์ผ๋ก๋ ๊ฐ์ ๊ณต๊ฐ์ ์ด๋ ๋ง๋ ์๋ฌดํผ ๊ธฐ์กด ๊ฐ์ ๋ฏธ์์ต์ ๋ฒ์๋ฅผ ๋ํด์ฃผ์๋ค ๋ผ๋ ์ฌ์ค์ ๋ณํ์ง ์๊ธฐ ๋๋ฌธ์ด๋ค.
- ๋ฐ๋ผ์ ์ด๋ค ์ฑ ์ด๋ ๋ ผ๋ฌธ๋ค์์๋ $\textbf{x}^{\ast}_{i}$ = $\textbf{x}^{\ast-}_{i-1}$ $\oplus$ $\delta\textbf{x}^{\ast}_{i}$ ๋ผ๋๊ฐ
- $\textbf{x}^{\ast}_{i}$ = $\textbf{x}^{\ast-}_{i-1}$ $\boxplus$ $\delta\textbf{x}^{\ast}_{i}$ ์ด๋ฐ์์ผ๋ก +์ box ๋ O ๋ฅผ ๋๋ฌ์ ํํํ๊ธฐ๋ ํ๋ค (boxplus, oplus ๋ผ๊ณ ์ฝ์).
- ps. ๊ทธ๋ฆฌ๊ณ ์์๋ฐํ๊ฒ $\textbf{Exp}$๋ผ๋ ์ฐ์ฐ์๋ ์กด์ฌํ์ง ์๋๋ค (์๋ฌธ์์ธ $\textbf{exp}$ ๋ง ์กด์ฌ).
- ๋ฐ๋ผ์ ์ฌ์ค์ $\textbf{exp}({\delta \textbf{x}_{i}}^{\wedge})$ ์ด๋ ๊ฒ ์จ์ผ ๋ง๋ ๊ฒ์ด๋ค (์ด ๋ ${}^{\wedge}$ ๋ hat operator. 3-dim vector๋ฅผ skew symmetric matrix๋ก ๋ง๋ ๋ค). ๊ทธ๋ฐ๋ฐ ๊ทธ๋ฌ๋ฉด ์ฐ๋๊ฒ ๋๋ฌด ๊ท์ฐฎ๊ณ ์์ด์๋ e๋ฅผ ๋๋ฌธ์ E๋ก ๋ฐ๊พธ์ด์ ์ฐ๊ณ ${}^{\wedge}$๋ฅผ ๊ตณ์ด ์ ์ง์๋๋ผ๋, ์ ๊ฑธ ์๋ฏธํ๋ ๊ฒ์์ ์ ์์๋ค์ผ๋ ดใ ๋ผ๊ณ ์ฝ์ํ๊ณ ์๋ค.
- $ \delta\textbf{x}^{\ast}_{i} $ ๊ฐ Lie algebra ์ ์ด๊ณ ์์ผ๋ $\textbf{Exp}(\cdot)$์ ํตํด์ ๊ทธ๊ฑธ
- ๋ฐฉ๊ธ ํ ์๊ธฐ์์ ํต์ฌ์ ์์ฝํด๋ณด์.
- ํํ ์ฐ๋ SO(3) ํํ์ rotation์ vector space ์ ์ด์ง ์๋๋ค.
- ๋ฐ๋ผ์ iterative optimization (e.g., Gauss-newton) ์ ๋ฐ๋ก ์ ์ฉํ ์ ์๋ค. ๋ฐ๋ผ์ SO(3)๋ฅผ Lie algebra๋ผ๋ (์๋ ๊ณต๊ฐ๊ณผ bijectiveํ) vector space ์์์ ํํ๋ฒ์ผ๋ก ์ฎ๊ฒจ ๊ฐ ํ์๊ฐ ์๋ค. ==
Lift
- vector space์ ๋ํ์ธ Lie algebra ๊ณต๊ฐ์์ ์ต์ ํ ๋ฅผ ์งํํ๋ค (e.g., solve the normal equation: $\delta \textbf{x}^{\ast} = (\textbf{C}^T \textbf{C})^{-1} \textbf{C}^{T} \textbf{d} $) ==
Solve
- ๊ทธ ์ต์ ๊ฐ์ ์๋์ SO(3) ๊ณต๊ฐ์ผ๋ก ๊ฐ์ ธ์จ ๋ค์ ๊ธฐ์กด ๊ฐ์ ๋ฏธ์์ต์ ๊ฐ์ ๋ํด์ ์ด๋ฒ ํด์ ์ต์ SO(3) ๊ฐ์ ์์ฑ (i.e., $\textbf{x}^{\ast}_{i}$ = $\textbf{x}^{\ast-}_{i-1}$ $\oplus$ $\delta\textbf{x}^{\ast}_{i}$) ํ๋ค. ==
Retract
Rotation ์ต์ ํ: Notations, and Terminologies
- group ์ด๋ algebra์ด๋ ํ๋ ์ํ์ ์ธ ๊ฐ๋ ์ ๋ ๋์๋ผ๋, ์๋ฌดํผ rotation์ parametrization ์ด ์ฌ๋ฌ ์ข ๋ฅ๊ฐ ์๋ค ๋ผ๋ ์ฌ์ค์ ์๊ฒ๋์๋ค.
- ๊ทธ๋์ rotation parametrization ์ ๋ํด์ ๊ณต๋ถํ๋ ๊ฒ์ด ์ค์ํ๋ค.
- ์ด๋ ์ง๊ธ๊น์ง ์ด์ผ๊ธฐํ๋ฏ์ด ์ผ๋จ ์ต์ ํ ๊ด์ ์์ ์ค์ํ๋ค.
- ๊ทธ๋ฆฌ๊ณ ๊ทธ ์ธ์๋ quaternion ๊ณผ ๊ฐ์ ๋ ๋ค๋ฅธ ํํ๋ฒ๋ ์กด์ฌํ๋ค. quaternion์ SO(3)๋ณด๋ค ๊ฐ๊ฒฐํ ํํ (4๊ฐ์ ์ซ์๋ง ํ์) ์ผ๋ก global orientation ์ ํํํ๋ ๋ฐ ์ ์ฉํ๋ค๋ ์ฅ์ ์ด ์๋ค.
- Terminologies: Lie algebra (3-dim array์ hat ์ฐ์ฐ์ด ์ทจํด์ง 3x3 matrix) ์ ๋ณธ์ฒด์ธ the 3-dim array ๋ฅผ rotation parametrization ๊ด์ ์์
- ์ด๋ค ์ฑ
๋ค์ angle-axis representation, rotation vector ์ด๋ฐ์์ผ๋ก ๋ถ๋ฅด๊ธฐ๋ ํ๋ค.
- ์ฆ๊ฒจ ์ฐ๋ scipy ์ rotation library ์์๋ ์ด๋ฅผ ๋ถ๋ฅผ ๋
rotvec
์ด๋ผ๊ณ ์นญํ๊ณ ์๋ค.
- ์ฆ๊ฒจ ์ฐ๋ scipy ์ rotation library ์์๋ ์ด๋ฅผ ๋ถ๋ฅผ ๋
- ํน์ state estimation ์ฑ
/๋
ผ๋ฌธ๋ค์์๋ SO(3)์ error-state ์ด๋ค~ ๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค.
- Lie algebra (SO(3)์ tangent space) ์ ์์๋ฅผ ๊ณ์ $\delta \textbf{x}$ ์ ๊ฐ์ด ํ๊ธฐํด์๋ ๊ฒ์ ๋ ์ฌ๋ ค๋ณด์. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๋ฌผ๋ฆฌ์ ์ธ ์๋ฏธ๋ ๋ฏธ์๋ณ์๋ฅผ ์ผ๋ง๋งํผ ์ต์ ์ผ๋ก ์กฐ์ ํด์ผ ์ ์ฒด์ ์ธ ๊ด์ (==์๋ ๊ณต๊ฐ)์์๋ ์ต์ ๊ฐ์ ๋ ๊ฐ๊น์์ง๊น, ๋ฅผ ์๋ฏธํ๋ฏ๋ก <
์ ๋ต์ง์์ ์ฝ๊ฐ ์์ง์ ์ด๋์ ๋ ๋จ์ด์ ธ์๋ ์์ ์๋ฌ
> ํน์ <๊ทธ๊ฑธ ๊ทน๋ณตํ๊ธฐ ์ํด ๋ณด์ํด์ฃผ์ด์ผ ํ๋ ๋ฏธ์ ๋ณ์
> ๋ผ๋ ์๋ฏธ์์error-state
๋ผ๋ ์ฉ์ด๊ฐ ์ฐ์ด๊ณ ์๊ตฌ๋ ๋ผ๊ณ ์ดํดํ๋ฉด ๋๊ฒ ๋ค.
- Lie algebra (SO(3)์ tangent space) ์ ์์๋ฅผ ๊ณ์ $\delta \textbf{x}$ ์ ๊ฐ์ด ํ๊ธฐํด์๋ ๊ฒ์ ๋ ์ฌ๋ ค๋ณด์. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๋ฌผ๋ฆฌ์ ์ธ ์๋ฏธ๋ ๋ฏธ์๋ณ์๋ฅผ ์ผ๋ง๋งํผ ์ต์ ์ผ๋ก ์กฐ์ ํด์ผ ์ ์ฒด์ ์ธ ๊ด์ (==์๋ ๊ณต๊ฐ)์์๋ ์ต์ ๊ฐ์ ๋ ๊ฐ๊น์์ง๊น, ๋ฅผ ์๋ฏธํ๋ฏ๋ก <
- ์ด๋ค ์ฑ
๋ค์ angle-axis representation, rotation vector ์ด๋ฐ์์ผ๋ก ๋ถ๋ฅด๊ธฐ๋ ํ๋ค.
Nano Lie Theory: Beyond the Basics
- ๊ธฐ๋ณธ์ ๋์ด 1
- ์ฌ๊ธฐ๊น์ง๊ฐ A micro Lie theory for state estimation in robotics ์ II-E ๊น์ง์ ๋ด์ฉ์ด๋ค.
- ์ด์ ๋จ์ ๊ฒ (II-F,G,H,I) ์ adjoint, ๋ฏธ๋ถ, covariance propagatoin, ์ ๋ถ ์ ๋์ด๋ค.
- rotation parametrization ์ ๋ํด ์ฒ์ ์ ํ ๋์ ๋๋ ค์์ ์ฑ ๋ง๋ค ๋ค๋ฅธ ์ฉ์ด๋ค, Lie algebra ์ ๋ํ ๊ฐ์์ค๋ฌ์ด ์ ์๋ถํฐ ๋ฒ์ต ํ๋ฉด์ ๋์ค๋ ์ , ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ด ์ ํ์ํ์ง ๋ฉ๋์ํค์ง ์๊ณ ์์ํ๋ ์ , ์ด๋ผ๊ณ ์๊ฐํ๋๋ฐ ์ด๋ฐ ์ฐ๋ ค๋ค์ ๋ํด ์ด Nano Lie theory ์์ ์ ๋ฆฌ๊ฐ ๋์์ผ๋ฆฌ๋ผ ์๊ฐํ๋ค.
- ๊ทธ๋ฌ๋ฉด ๋จ์ derivatives on Lie groups, Discrete integration on manifolds ๋ฑ์ ์ข ๋ ์ฝ๊ฒ ๊ฐ์ ์ฝ์ ์ ์์ ๊ฒ์ด๋ค.
- ๋ฐ๋ผ์ ๋จ์ ๊ฒ๋ค์ ๋ํ ์ค๋ช ์ ์๋ตํ๋ค!
- ๊ธฐ๋ณธ์ ๋์ด 2
- ๊ทธ๋ฐ๋ฐ $\textbf{x}^{\ast}_{i}$ = $\textbf{x}^{\ast-}_{i-1}$ $\oplus$ $\delta\textbf{x}^{\ast}_{i}$ ์ฒ๋ผ ์ $\delta\textbf{x}^{\ast}_{i}$๋ฅผ ๊ณ์ $\textbf{x}^{\ast-}_{i-1}$ ์ ์ค๋ฅธ์ชฝ์๋ง ์ธ๊น?
- $\oplus$ ๋ ๊ตํ๋ฒ์น์ด ์ฑ๋ฆฝํ์ง ์๊ธฐ ๋๋ฌธ์ ์ผ์ชฝ์ ์ฐ์ฐํด์ฃผ๋ ๊ฒ๊ณผ ์ค๋ฅธ์ชฝ์ ์ฐ์ฐํ๋ ๊ฒ์ ๋ถ๋ช ํ ๋ค๋ฅด๋ค.
- ๊ทธ๋ฌ๋ฉด ์ด๋ป๊ฒ ๋ค๋ฅผ๊น? ์ด์ ๋ํด์๋ Quaternion kinematics for the error-state KF์ section 4.4.1 ๋ฐ 4.4.2 ๋ฅผ ์ฐธ๊ณ ๋ฐ๋.
- ํ์ค์์ฝํ์๋ฉด local coordinate์์ ๋ฐ๋ผ๋ณธ ์กฐ๊ธ ์ ๋ํด์ค ๊ฑฐ๋, world coordinate์์ ๋ฐ๋ผ๋ณธ ์กฐ๊ธ ์ ๋ํด์ค๊ฑฐ๋ ๋ผ๋ ์๋ฏธ์ฐจ์ด๊ฐ ์๋ค.
์ถ์ฒ ์ฝ๊ธฐ์๋ฃ
- 2018, A micro Lie theory for state estimation in robotics
- 2017, Quaternion kinematics for the error-state Kalman filter
- 2015, IMU Preintegration on Manifold for Efficient Visual-Inertial Maximum-a-Posteriori Estimation
- ํ๋ฅญํ ์๊ฐํ ์๋ฃ - https://thenumb.at/Exponential-Rotations
Next work
- C++ library๋ค์ ํตํด Lie group ๋ฐ Lie algebra ์ ์ฌ๋ฌ ์ฐ์ฐ๋ค์ ๋ํด ์ค์ตํด๋ณด์ (A nano Lie theory: 2ํธ (์ค์ต ํธ)).