7.10 전미분과 선형 근사

1. 전미분의 정의

1.1 스칼라 함수의 전미분

다변수 함수 f(x_1, x_2, \ldots, x_n)에서 모든 독립 변수가 동시에 변할 때의 함수값 변화를 나타내는 것이 전미분(total differential)이다.

f가 점 \mathbf{a}에서 전미분 가능(totally differentiable)하면, 함수값의 변화량 \Delta f는 다음과 같이 표현된다.

\Delta f = f(\mathbf{a} + \Delta\mathbf{x}) - f(\mathbf{a}) = \sum_{i=1}^{n} \frac{\partial f}{\partial x_i}(\mathbf{a})\Delta x_i + o(\lVert \Delta\mathbf{x} \rVert)

여기서 o(\lVert \Delta\mathbf{x} \rVert)\lVert \Delta\mathbf{x} \rVert \to 0일 때 \lVert \Delta\mathbf{x} \rVert보다 빠르게 0으로 가는 항이다. 1차 근사의 선형 부분을 전미분이라 정의한다.

df = \sum_{i=1}^{n} \frac{\partial f}{\partial x_i} dx_i = \nabla f \cdot d\mathbf{x}

벡터 표기로:

df = \nabla f(\mathbf{a})^\top d\mathbf{x}

1.2 변수 함수의 경우

z = f(x, y)에 대한 전미분은:

dz = \frac{\partial f}{\partial x}dx + \frac{\partial f}{\partial y}dy

이는 함수 f의 변화량을 각 변수 방향의 변화량으로 분해한 것이다.

1.3 전미분 가능성 (프레셰 미분 가능성)

f: \mathbb{R}^n \to \mathbb{R}가 점 \mathbf{a}에서 전미분 가능하다 함은, 선형 사상 L: \mathbb{R}^n \to \mathbb{R}이 존재하여 다음이 성립하는 것이다.

\lim_{\mathbf{h} \to \mathbf{0}} \frac{f(\mathbf{a} + \mathbf{h}) - f(\mathbf{a}) - L(\mathbf{h})}{\lVert \mathbf{h} \rVert} = 0

이때 Lf의 점 \mathbf{a}에서의 전도함수(total derivative) 또는 프레셰 도함수(Frechet derivative)라 한다. 전미분 가능하면 L(\mathbf{h}) = \nabla f(\mathbf{a})^\top \mathbf{h}이다.

1.4 전미분 가능성의 함의

전미분 가능성은 편미분 가능성보다 강한 조건이며, 다음의 포함 관계가 성립한다.

\text{편도함수 연속} \implies \text{전미분 가능} \implies \begin{cases} \text{연속} \\ \text{모든 방향 도함수 존재} \\ \text{모든 편도함수 존재} \end{cases}

역방향은 일반적으로 성립하지 않는다.

충분 조건: 편도함수가 모두 존재하고 점 \mathbf{a}의 근방에서 연속이면 (f \in C^1), f\mathbf{a}에서 전미분 가능하다.

2. 벡터값 함수의 전미분

2.1 정의

벡터값 함수 \mathbf{f}: \mathbb{R}^n \to \mathbb{R}^m이 점 \mathbf{a}에서 전미분 가능하면, 선형 사상 \mathbf{L}: \mathbb{R}^n \to \mathbb{R}^m이 존재하여:

\lim_{\mathbf{h} \to \mathbf{0}} \frac{\lVert \mathbf{f}(\mathbf{a} + \mathbf{h}) - \mathbf{f}(\mathbf{a}) - \mathbf{L}\mathbf{h} \rVert}{\lVert \mathbf{h} \rVert} = 0

이때 \mathbf{L}은 자코비안 행렬 \mathbf{J}_{\mathbf{f}}(\mathbf{a})이며:

d\mathbf{f} = \mathbf{J}_{\mathbf{f}}(\mathbf{a})\,d\mathbf{x}

성분으로 표현하면:

\begin{bmatrix} df_1 \\ df_2 \\ \vdots \\ df_m \end{bmatrix} = \begin{bmatrix} \frac{\partial f_1}{\partial x_1} & \cdots & \frac{\partial f_1}{\partial x_n} \\ \vdots & \ddots & \vdots \\ \frac{\partial f_m}{\partial x_1} & \cdots & \frac{\partial f_m}{\partial x_n} \end{bmatrix} \begin{bmatrix} dx_1 \\ dx_2 \\ \vdots \\ dx_n \end{bmatrix}

3. 시간에 대한 전미분

3.1 전도함수와 편도함수의 관계

f(\mathbf{q}(t))에서 \mathbf{q}(t)가 시간의 함수일 때, 시간에 대한 전미분(total time derivative)은 다변수 연쇄 법칙에 의해:

\frac{df}{dt} = \sum_{i=1}^{n}\frac{\partial f}{\partial q_i}\dot{q}_i = \nabla f \cdot \dot{\mathbf{q}}

f가 시간 t에도 명시적으로 의존하는 경우 f(\mathbf{q}(t), t):

\frac{df}{dt} = \sum_{i=1}^{n}\frac{\partial f}{\partial q_i}\dot{q}_i + \frac{\partial f}{\partial t}

마지막 항 \frac{\partial f}{\partial t}\mathbf{q}가 변하지 않더라도 시간 자체에 의한 변화를 나타내며, 이를 국소 도함수(local derivative)라 한다.

3.2 로봇공학에서의 전미분

자코비안을 이용한 말단장치 속도 공식 \dot{\mathbf{x}} = \mathbf{J}(\mathbf{q})\dot{\mathbf{q}}는 순기구학 함수 \mathbf{x} = f(\mathbf{q})의 전미분에 해당한다. 이 관계는 미소 변위에 대해서도 성립한다.

\delta\mathbf{x} = \mathbf{J}(\mathbf{q})\,\delta\mathbf{q}

여기서 \delta\mathbf{x}\delta\mathbf{q}는 각각 작업 공간과 관절 공간에서의 미소 변위(virtual displacement)이다.

4. 선형 근사

4.1 차 테일러 근사 (접평면 근사)

전미분 가능한 함수 f(\mathbf{x})의 점 \mathbf{a} 주위에서의 선형 근사(linear approximation)는:

f(\mathbf{x}) \approx f(\mathbf{a}) + \nabla f(\mathbf{a})^\top(\mathbf{x} - \mathbf{a})

이를 접선형 근사(tangent linear approximation) 또는 1차 테일러 근사라 한다. 2변수 함수의 경우 이는 점 (a, b, f(a,b))에서의 접평면(tangent plane)의 방정식에 해당한다.

z \approx f(a, b) + f_x(a, b)(x - a) + f_y(a, b)(y - b)

4.2 근사 오차

선형 근사의 오차는 \lVert \mathbf{x} - \mathbf{a} \rVert의 2차 이상 항이다.

f(\mathbf{x}) - [f(\mathbf{a}) + \nabla f(\mathbf{a})^\top(\mathbf{x} - \mathbf{a})] = \mathcal{O}(\lVert \mathbf{x} - \mathbf{a} \rVert^2)

2차 테일러 전개를 사용하면 오차를 더 정밀하게 추정할 수 있다. 평균값 정리의 다변수 버전에 의해:

\lvert f(\mathbf{x}) - f(\mathbf{a}) - \nabla f(\mathbf{a})^\top(\mathbf{x} - \mathbf{a}) \rvert \leq \frac{1}{2}M\lVert \mathbf{x} - \mathbf{a} \rVert^2

여기서 M = \sup_{\boldsymbol{\xi}} \lVert \mathbf{H}(\boldsymbol{\xi}) \rVert은 연결 선분 위에서의 헤시안 노름의 상한이다.

4.3 벡터값 함수의 선형 근사

\mathbf{f}: \mathbb{R}^n \to \mathbb{R}^m의 선형 근사는:

\mathbf{f}(\mathbf{x}) \approx \mathbf{f}(\mathbf{a}) + \mathbf{J}_{\mathbf{f}}(\mathbf{a})(\mathbf{x} - \mathbf{a})

5. 로봇공학에서의 응용

5.1 비선형 시스템의 선형화

비선형 상태 방정식 \dot{\mathbf{x}} = \mathbf{g}(\mathbf{x}, \mathbf{u})를 평형점 (\mathbf{x}_0, \mathbf{u}_0) 주위에서 선형화하면:

\delta\dot{\mathbf{x}} = \mathbf{A}\,\delta\mathbf{x} + \mathbf{B}\,\delta\mathbf{u}

여기서:

\mathbf{A} = \frac{\partial \mathbf{g}}{\partial \mathbf{x}}\bigg\vert_{(\mathbf{x}_0, \mathbf{u}_0)}, \qquad \mathbf{B} = \frac{\partial \mathbf{g}}{\partial \mathbf{u}}\bigg\vert_{(\mathbf{x}_0, \mathbf{u}_0)}

이 선형화된 시스템에 대해 LQR(Linear Quadratic Regulator), 극배치법 등의 선형 제어 기법을 적용할 수 있다.

예제: 단진자 로봇 ml^2\ddot{\theta} + mgl\sin\theta = \tau\theta_0 = 0 주위에서 선형화

\sin\theta \approx \theta로 근사하면:

ml^2\ddot{\theta} + mgl\theta = \tau

상태 변수 \mathbf{x} = [\theta, \dot{\theta}]^\top, 입력 u = \tau로 놓으면:

\dot{\mathbf{x}} = \begin{bmatrix} 0 & 1 \\ -g/l & 0 \end{bmatrix}\mathbf{x} + \begin{bmatrix} 0 \\ 1/(ml^2) \end{bmatrix}u

5.2 역기구학의 미분 해법

원하는 말단장치 위치 \mathbf{x}_d에서 현재 위치 \mathbf{x} = f(\mathbf{q})까지의 오차 \Delta\mathbf{x} = \mathbf{x}_d - f(\mathbf{q})가 작을 때, 선형 근사에 의해:

\Delta\mathbf{x} \approx \mathbf{J}(\mathbf{q})\Delta\mathbf{q}

따라서 관절 변수의 보정량은:

\Delta\mathbf{q} = \mathbf{J}^{-1}(\mathbf{q})\Delta\mathbf{x} \quad \text{(정방 경우)}

\Delta\mathbf{q} = \mathbf{J}^\dagger(\mathbf{q})\Delta\mathbf{x} \quad \text{(일반 경우)}

이를 반복 적용하는 것이 미분 역기구학(differential inverse kinematics) 알고리즘이다.

\mathbf{q}_{k+1} = \mathbf{q}_k + \mathbf{J}^\dagger(\mathbf{q}_k)(\mathbf{x}_d - f(\mathbf{q}_k))

5.3 오차 전파 (Error Propagation)

관절 변수에 미소 오차 \delta\mathbf{q}가 있을 때, 말단장치 위치의 오차는 선형 근사에 의해:

\delta\mathbf{x} \approx \mathbf{J}(\mathbf{q})\,\delta\mathbf{q}

관절 오차가 공분산 행렬 \boldsymbol{\Sigma}_q = E[\delta\mathbf{q}\,\delta\mathbf{q}^\top]로 특성화되면, 말단장치 위치 오차의 공분산은:

\boldsymbol{\Sigma}_x = \mathbf{J}\boldsymbol{\Sigma}_q\mathbf{J}^\top

이 공식은 로봇의 위치 정확도 분석과 캘리브레이션에서 핵심적으로 사용된다.

5.4 힘-토크 관계

가상 일의 원리에 의해, 말단장치에 가해지는 힘 \mathbf{F}와 관절 토크 \boldsymbol{\tau} 사이의 관계는 전미분을 통해 유도된다.

\delta W = \mathbf{F}^\top \delta\mathbf{x} = \mathbf{F}^\top \mathbf{J}\,\delta\mathbf{q} = \boldsymbol{\tau}^\top \delta\mathbf{q}

모든 가상 변위 \delta\mathbf{q}에 대해 성립하므로:

\boldsymbol{\tau} = \mathbf{J}^\top \mathbf{F}

이 관계는 자코비안의 전치 행렬이 힘의 변환에 사용됨을 보여주며, 속도 변환 \dot{\mathbf{x}} = \mathbf{J}\dot{\mathbf{q}}의 쌍대(dual) 관계이다.

6. 차 근사와 비교

선형 근사가 충분히 정확하지 않은 경우, 2차 근사를 사용한다.

f(\mathbf{x}) \approx f(\mathbf{a}) + \nabla f(\mathbf{a})^\top(\mathbf{x} - \mathbf{a}) + \frac{1}{2}(\mathbf{x} - \mathbf{a})^\top \mathbf{H}(\mathbf{a})(\mathbf{x} - \mathbf{a})

근사 차수필요한 정보정확도계산 비용
0차 (상수)f(\mathbf{a})\mathcal{O}(\lVert\Delta\mathbf{x}\rVert)O(1)
1차 (선형)f(\mathbf{a}), \nabla f(\mathbf{a})\mathcal{O}(\lVert\Delta\mathbf{x}\rVert^2)O(n)
2차 (이차)f(\mathbf{a}), \nabla f(\mathbf{a}), \mathbf{H}(\mathbf{a})\mathcal{O}(\lVert\Delta\mathbf{x}\rVert^3)O(n^2)

로봇공학에서는 대부분의 경우 1차 선형 근사(자코비안 기반)로 충분하며, 뉴턴법 등 빠른 수렴이 필요한 경우에만 2차 근사를 사용한다.


참고 문헌

  • Apostol, T. M. (1974). Mathematical Analysis. 2nd ed. Addison-Wesley.
  • Marsden, J. E., & Tromba, A. J. (2003). Vector Calculus. 5th ed. W. H. Freeman.
  • Craig, J. J. (2005). Introduction to Robotics: Mechanics and Control. 3rd ed. Pearson.
  • Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. (2009). Robotics: Modelling, Planning and Control. Springer.

v 0.1