6.97 과결정 시스템과 최소 제곱 해

과결정(overdetermined) 시스템은 방정식의 수가 미지수의 수보다 많은 연립 방정식으로서, 일반적으로 정확한 해가 존재하지 않는다. 이러한 시스템에서 잔차(residual)를 최소화하는 최적의 근사 해를 구하는 방법이 최소 제곱법(least squares method)이다. 본 절에서는 과결정 시스템의 수학적 정의, 최소 제곱 해의 유도, 그리고 로봇 공학에서의 응용을 다룬다.

1. 과결정 시스템의 정의

행렬 방정식 A\mathbf{x} = \mathbf{b}에서 A \in \mathbb{R}^{m \times n}이고 m > n인 경우를 과결정 시스템이라 한다. 이는 n개의 미지수에 대해 m개의 조건이 부과된 것으로, 모든 조건을 동시에 만족하는 정확한 해 \mathbf{x}가 일반적으로 존재하지 않는다. 즉, \mathbf{b} \notin \mathcal{R}(A)인 경우가 일반적이다.

로봇 공학에서 과결정 시스템이 발생하는 대표적 상황은 다음과 같다.

  • 작업 공간 차원이 관절 수보다 큰 경우 (m > n)
  • 다수의 센서 측정치로부터 소수의 매개변수를 추정하는 경우
  • 기구학적 캘리브레이션에서 다수의 측정 데이터를 사용하는 경우

2. 최소 제곱 문제의 정식화

정확한 해가 존재하지 않으므로, 잔차 벡터 \mathbf{r} = A\mathbf{x} - \mathbf{b}의 유클리드 노름을 최소화하는 해를 구한다.

\mathbf{x}^* = \arg\min_{\mathbf{x} \in \mathbb{R}^n} \|A\mathbf{x} - \mathbf{b}\|^2

비용 함수를 전개하면 다음과 같다.

f(\mathbf{x}) = \|A\mathbf{x} - \mathbf{b}\|^2 = \mathbf{x}^\top A^\top A \mathbf{x} - 2\mathbf{b}^\top A \mathbf{x} + \mathbf{b}^\top \mathbf{b}

3. 정규 방정식에 의한 해

비용 함수의 경사를 영으로 놓으면 다음의 정규 방정식(normal equation)을 얻는다.

\nabla f(\mathbf{x}) = 2A^\top A \mathbf{x} - 2A^\top \mathbf{b} = \mathbf{0}

A^\top A \, \mathbf{x}^* = A^\top \mathbf{b}

A가 열 풀랭크(full column rank), 즉 \text{rank}(A) = n인 경우, A^\top A \in \mathbb{R}^{n \times n}는 양정치 행렬이므로 역행렬이 존재하며, 유일한 최소 제곱 해는 다음과 같다.

\mathbf{x}^* = (A^\top A)^{-1} A^\top \mathbf{b}

여기서 (A^\top A)^{-1} A^\top은 좌측 의사 역행렬(left pseudoinverse)이며, A^\dagger = (A^\top A)^{-1} A^\top로 표기한다.

4. 기하학적 해석

최소 제곱 해의 기하학적 의미는 다음과 같다. A\mathbf{x}A의 열 공간 \mathcal{R}(A)에 속하는 벡터이다. 최소 제곱 해 \mathbf{x}^*A의 열 공간 위의 점 A\mathbf{x}^* 중에서 \mathbf{b}에 가장 가까운 점을 제공한다. 이는 \mathbf{b}\mathcal{R}(A)에 직교 사영(orthogonal projection)한 것에 해당한다.

A\mathbf{x}^* = P_A \mathbf{b}

여기서 P_A = A(A^\top A)^{-1} A^\top\mathcal{R}(A)로의 직교 사영 행렬이다. 잔차 벡터 \mathbf{r}^* = A\mathbf{x}^* - \mathbf{b}\mathcal{R}(A)에 직교한다.

A^\top \mathbf{r}^* = A^\top(A\mathbf{x}^* - \mathbf{b}) = \mathbf{0}

5. QR 분해를 이용한 풀이

정규 방정식의 직접적인 풀이는 A^\top A의 조건수가 A의 조건수의 제곱이 되어 수치적으로 불안정할 수 있다. 보다 안정적인 방법은 QR 분해를 이용하는 것이다.

A = QR로 분해하면, 여기서 Q \in \mathbb{R}^{m \times n}는 직교 열을 가지는 행렬(Q^\top Q = I_n)이고 R \in \mathbb{R}^{n \times n}는 상삼각 행렬이다. 정규 방정식에 대입하면 다음을 얻는다.

R \mathbf{x}^* = Q^\top \mathbf{b}

R이 비특이이면 후진 대입법(back substitution)으로 효율적으로 풀 수 있다. 이 방법은 정규 방정식 방법보다 수치적으로 더 안정적이다.

6. SVD를 이용한 풀이

A의 특이값 분해 A = U \Sigma V^\top을 이용하면, 최소 제곱 해는 다음과 같이 표현된다.

\mathbf{x}^* = V \Sigma^{-1} U^\top \mathbf{b} = \sum_{i=1}^{n} \frac{\mathbf{u}_i^\top \mathbf{b}}{\sigma_i} \mathbf{v}_i

여기서 \sigma_i는 특이값, \mathbf{u}_i\mathbf{v}_i는 각각 좌특이벡터와 우특이벡터이다. SVD 기반 풀이는 랭크 부족(rank deficiency)의 경우에도 적용 가능하며, 특이값의 크기를 통해 해의 민감도를 분석할 수 있다.

7. 로봇 공학에서의 응용

7.1 기구학적 캘리브레이션

로봇의 기구학적 매개변수 오차 \Delta\boldsymbol{\phi} \in \mathbb{R}^p를 추정하기 위해 다수의 형상에서 측정된 말단 장치 위치 오차를 수집하면 과결정 시스템이 형성된다.

\delta\mathbf{x} = \Phi(\mathbf{q}) \, \Delta\boldsymbol{\phi}

여기서 \Phi \in \mathbb{R}^{m \times p} (m \gg p)는 식별 자코비안(identification Jacobian)이다. 최소 제곱 해로 매개변수 오차를 추정한다.

\Delta\hat{\boldsymbol{\phi}} = (\Phi^\top \Phi)^{-1} \Phi^\top \delta\mathbf{x}

7.2 과결정 역기구학

작업 공간 차원이 관절 수보다 큰 비여유 로봇에서 모든 작업 요구를 동시에 만족할 수 없을 때, 최소 제곱 의미에서의 최적 근사 해를 구한다.

\dot{\mathbf{q}}^* = (J^\top J)^{-1} J^\top \dot{\mathbf{x}}_d = J^\dagger \dot{\mathbf{x}}_d

7.3 다중 센서 데이터 융합

여러 센서의 측정치를 결합하여 로봇의 상태를 추정할 때, 측정 방정식이 과결정 시스템을 형성하며 최소 제곱법으로 최적 추정치를 구한다.


8. 참고 문헌

  • Golub, G. H., & Van Loan, C. F. (2013). Matrix Computations. 4th ed. Johns Hopkins University Press.
  • Strang, G. (2019). Linear Algebra and Its Applications. 5th ed. Wellesley-Cambridge Press.
  • Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. (2009). Robotics: Modelling, Planning and Control. Springer.
  • Hollerbach, J. M. (1989). “A Survey of Kinematic Calibration.” In The Robotics Review 1, MIT Press, 207–242.
  • Craig, J. J. (2005). Introduction to Robotics: Mechanics and Control. 3rd ed. Pearson Prentice Hall.

v 0.1