32.39 의사 역행렬(Moore-Penrose Pseudoinverse) 자코비안
Moore-Penrose 의사 역행렬(pseudoinverse)은 일반 비정사각 행렬에 대한 역행렬 개념의 확장이다. 자코비안이 정사각이 아닌 경우(여유 자유도 또는 자유도 부족), 의사 역행렬이 역속도 기구학의 학술적 기초가 된다. 본 절에서는 의사 역행렬 자코비안을 다룬다.
1. Moore-Penrose 의사 역행렬의 정의
1.1 정의
행렬 \mathbf{J} \in \mathbb{R}^{m \times n}의 Moore-Penrose 의사 역행렬 \mathbf{J}^+는 다음의 네 조건을 만족하는 유일한 행렬이다.
\mathbf{J} \mathbf{J}^+ \mathbf{J} = \mathbf{J}
\mathbf{J}^+ \mathbf{J} \mathbf{J}^+ = \mathbf{J}^+
(\mathbf{J} \mathbf{J}^+)^\top = \mathbf{J} \mathbf{J}^+
(\mathbf{J}^+ \mathbf{J})^\top = \mathbf{J}^+ \mathbf{J}
1.2 유일성
이 네 조건을 만족하는 행렬은 유일하게 존재한다.
1.3 정사각 경우
정사각 가역 행렬의 경우 의사 역행렬은 통상의 역행렬과 같다.
2. 의사 역행렬의 계산
2.1 행 완전 계수
\mathbf{J}가 행 완전 계수(m \leq n, \text{rank}(\mathbf{J}) = m)이면 다음과 같다.
\mathbf{J}^+ = \mathbf{J}^\top (\mathbf{J} \mathbf{J}^\top)^{-1}
32.39.2.2 열 완전 계수
\mathbf{J}가 열 완전 계수(m \geq n, \text{rank}(\mathbf{J}) = n)이면 다음과 같다.
\mathbf{J}^+ = (\mathbf{J}^\top \mathbf{J})^{-1} \mathbf{J}^\top
2.2 SVD 기반
일반적 경우 SVD를 활용한다. \mathbf{J} = \mathbf{U} \mathbf{\Sigma} \mathbf{V}^\top이면 \mathbf{J}^+ = \mathbf{V} \mathbf{\Sigma}^+ \mathbf{U}^\top이다.
3. 최소 노름 해
3.1 여유 자유도 로봇
여유 자유도 로봇(n > m)에서 원하는 엔드 이펙터 속도에 대한 해는 무한히 많다. 의사 역행렬은 그 중 최소 노름 해를 제공한다.
\dot{\vec{q}}^* = \mathbf{J}^+ \dot{\vec{x}}_d
32.39.3.2 최소화 문제
\dot{\vec{q}}^*는 다음 문제의 해이다.
\min_{\dot{\vec{q}}} \|\dot{\vec{q}}\|^2 \quad \text{subject to} \quad \mathbf{J} \dot{\vec{q}} = \dot{\vec{x}}_d
3.2 실무적 의미
에너지 효율적이고 관절 속도가 작은 해를 제공한다.
4. 최소 제곱 해
4.1 자유도 부족 로봇
자유도 부족 로봇(n < m)에서 해가 존재하지 않을 수 있다. 의사 역행렬은 최소 제곱 해를 제공한다.
4.2 최소화 문제
의사 역행렬 해는 다음 문제의 해이다.
\min_{\dot{\vec{q}}} \|\mathbf{J} \dot{\vec{q}} - \dot{\vec{x}}_d\|^2
32.39.4.3 실무적 의미
가장 가까운 근사 해를 제공한다.
32.39.5 의사 역행렬의 응용
32.39.5.1 역속도 기구학
여유 자유도 로봇의 기본 역속도 기구학 방법이다.
\dot{\vec{q}} = \mathbf{J}^+ \dot{\vec{x}}_d + (\mathbf{I} - \mathbf{J}^+ \mathbf{J}) \dot{\vec{q}}_0
4.3 영공간 투영
\mathbf{I} - \mathbf{J}^+ \mathbf{J}는 영공간 투영 행렬이다.
4.4 보조 작업
영공간에서 보조 작업을 수행할 수 있다.
5. 의사 역행렬의 수치적 계산
5.1 SVD 알고리즘
SVD 기반 계산이 가장 수치적으로 안정적이다.
5.2 LU 분해
LU 분해를 활용한 계산도 가능하지만 정확도가 낮다.
5.3 실시간 계산
실시간 제어에서 효율적 알고리즘이 필요하다.
6. 특이점 근방의 거동
6.1 불연속성
의사 역행렬은 특이점에서 불연속적일 수 있다.
6.2 수치적 불안정성
특이점 근방에서 의사 역행렬의 원소 크기가 급격히 증가한다.
6.3 개선된 방법
감쇠 최소 제곱법이 의사 역행렬의 수치적 문제를 개선한다.
7. 의사 역행렬의 특성
7.1 비선형성
의사 역행렬은 비선형 연산이다. 즉, (\mathbf{A}\mathbf{B})^+ \neq \mathbf{B}^+ \mathbf{A}^+이 일반적이다.
7.2 관절 속도 불연속성
시간 흐름에서 의사 역행렬 기반 관절 속도가 불연속적일 수 있다.
7.3 반복 실행
동일한 엔드 이펙터 경로를 여러 번 실행할 때 관절 변수 경로가 일관되지 않을 수 있다(수렴 문제).
8. 개선된 방법
8.1 가중 의사 역행렬
관절 변수에 가중치를 적용한 가중 의사 역행렬이 있다.
8.2 감쇠 최소 제곱법
특이점 근방에서 안정성을 확보한다.
8.3 확장된 자코비안
여유 자유도 로봇에서 확장된 자코비안이 관절 변수 경로의 일관성을 제공한다.
9. 학술적 활용
본 절에서 다룬 의사 역행렬 자코비안은 현대 로봇 역기구학의 학술적 기초이다. 여유 자유도 로봇의 제어, 특이점 근방의 수치 안정화, 계층적 제어 등에 광범위하게 활용된다.
10. 출처
- Penrose, R., “A generalized inverse for matrices”, Proceedings of the Cambridge Philosophical Society, Vol. 51, No. 3, pp. 406–413, 1955.
- Whitney, D. E., “Resolved motion rate control of manipulators and human prostheses”, IEEE Transactions on Man-Machine Systems, Vol. 10, No. 2, pp. 47–53, 1969.
- Nakamura, Y., Advanced Robotics: Redundancy and Optimization, Addison-Wesley, 1991.
- Golub, G. H. and Van Loan, C. F., Matrix Computations, 4th edition, Johns Hopkins University Press, 2013.
- Siciliano, B., Sciavicco, L., Villani, L., and Oriolo, G., Robotics: Modelling, Planning and Control, Springer, 2009.
11. 버전
- 문서 버전: 1.0
- 작성일: 2026-04-18