7.13 로봇 기구학에서의 편미분 응용

1. 기구학과 편미분의 관계

로봇 기구학(robot kinematics)에서는 관절 변수(joint variables)와 말단장치(end-effector)의 위치·자세 사이의 비선형 매핑을 다루어야 한다. 이 매핑의 국소적 변화율을 기술하는 데 편미분(partial derivative)이 핵심 도구가 된다. n개의 관절 변수 q_1, q_2, \dots, q_n으로 구성된 관절 벡터를

\mathbf{q} = \begin{bmatrix} q_1 \\ q_2 \\ \vdots \\ q_n \end{bmatrix}

라 하고, 말단장치의 작업 공간(task space) 좌표를

\mathbf{x} = \begin{bmatrix} x_1 \\ x_2 \\ \vdots \\ x_m \end{bmatrix}

라 하면, 순기구학(forward kinematics) 함수는

\mathbf{x} = \mathbf{f}(\mathbf{q})

로 표현된다. 여기서 \mathbf{f}: \mathbb{R}^n \to \mathbb{R}^m은 일반적으로 비선형 함수이다.

2. 야코비 행렬과 편미분

순기구학 함수의 각 성분을 관절 변수에 대하여 편미분하면 야코비 행렬(Jacobian matrix)을 얻는다. 야코비 행렬 \mathbf{J}(\mathbf{q})m \times n 행렬로서 다음과 같이 정의된다.

\mathbf{J}(\mathbf{q}) = \frac{\partial \mathbf{f}}{\partial \mathbf{q}} = \begin{bmatrix} \dfrac{\partial f_1}{\partial q_1} & \dfrac{\partial f_1}{\partial q_2} & \cdots & \dfrac{\partial f_1}{\partial q_n} \\[10pt] \dfrac{\partial f_2}{\partial q_1} & \dfrac{\partial f_2}{\partial q_2} & \cdots & \dfrac{\partial f_2}{\partial q_n} \\[10pt] \vdots & \vdots & \ddots & \vdots \\[10pt] \dfrac{\partial f_m}{\partial q_1} & \dfrac{\partial f_m}{\partial q_2} & \cdots & \dfrac{\partial f_m}{\partial q_n} \end{bmatrix}

야코비 행렬의 (i, j) 성분은

J_{ij} = \frac{\partial f_i}{\partial q_j}

이며, 이는 관절 변수 q_j의 미소 변화가 작업 공간 좌표 x_i에 미치는 영향을 나타낸다.

3. 미분 기구학

야코비 행렬을 사용하면 관절 속도와 말단장치 속도 사이의 선형 관계를 나타낼 수 있다. 순기구학 함수를 시간에 대해 미분하고 연쇄 법칙(chain rule)을 적용하면

\dot{\mathbf{x}} = \frac{d\mathbf{x}}{dt} = \sum_{j=1}^{n} \frac{\partial \mathbf{f}}{\partial q_j} \dot{q}_j = \mathbf{J}(\mathbf{q}) \dot{\mathbf{q}}

를 얻는다. 여기서 \dot{\mathbf{q}}는 관절 속도 벡터, \dot{\mathbf{x}}는 말단장치 속도 벡터이다. 이 관계식이 미분 기구학(differential kinematics)의 기본 방정식이다.

3.1 회전 관절의 편미분 계산

i번째 관절이 회전 관절(revolute joint)인 경우, 해당 관절 축의 단위 벡터를 \hat{\mathbf{z}}_i, 관절 i에서 말단장치까지의 위치 벡터를 \mathbf{p}_{i,e}라 하면, 야코비 행렬의 해당 열은

\mathbf{J}_i = \begin{bmatrix} \hat{\mathbf{z}}_i \times \mathbf{p}_{i,e} \\ \hat{\mathbf{z}}_i \end{bmatrix}

로 주어진다. 윗부분은 선속도(linear velocity) 성분이고, 아랫부분은 각속도(angular velocity) 성분이다.

3.2 병진 관절의 편미분 계산

i번째 관절이 병진 관절(prismatic joint)인 경우,

\mathbf{J}_i = \begin{bmatrix} \hat{\mathbf{z}}_i \\ \mathbf{0} \end{bmatrix}

로 주어진다. 병진 관절은 말단장치의 각속도에 기여하지 않으므로 하단 성분이 영벡터가 된다.

4. -링크 평면 매니퓰레이터 예제

두 개의 회전 관절로 구성된 평면 매니퓰레이터를 고려하자. 각 링크의 길이를 l_1, l_2라 하면, 순기구학은 다음과 같다.

x = l_1 \cos q_1 + l_2 \cos(q_1 + q_2)

y = l_1 \sin q_1 + l_2 \sin(q_1 + q_2)

각 성분을 관절 변수에 대해 편미분하면 야코비 행렬을 구할 수 있다.

\frac{\partial x}{\partial q_1} = -l_1 \sin q_1 - l_2 \sin(q_1 + q_2)

\frac{\partial x}{\partial q_2} = -l_2 \sin(q_1 + q_2)

\frac{\partial y}{\partial q_1} = l_1 \cos q_1 + l_2 \cos(q_1 + q_2)

\frac{\partial y}{\partial q_2} = l_2 \cos(q_1 + q_2)

따라서 야코비 행렬은

\mathbf{J}(\mathbf{q}) = \begin{bmatrix} -l_1 \sin q_1 - l_2 \sin(q_1 + q_2) & -l_2 \sin(q_1 + q_2) \\ l_1 \cos q_1 + l_2 \cos(q_1 + q_2) & l_2 \cos(q_1 + q_2) \end{bmatrix}

이며, 행렬식(determinant)은

\det(\mathbf{J}) = l_1 l_2 \sin q_2

이다. q_2 = 0 또는 q_2 = \pi일 때 행렬식이 0이 되어 특이점(singularity)이 발생한다.

5. 편미분을 이용한 역기구학

역기구학(inverse kinematics)에서는 원하는 말단장치 위치 \mathbf{x}_d에 대응하는 관절 변수 \mathbf{q}를 구해야 한다. 뉴턴-랩슨(Newton-Raphson) 방법을 적용하면, 현재 추정값 \mathbf{q}_k에서의 오차를

\Delta \mathbf{x} = \mathbf{x}_d - \mathbf{f}(\mathbf{q}_k)

로 정의하고, 관절 변수의 수정량을

\Delta \mathbf{q} = \mathbf{J}^{-1}(\mathbf{q}_k) \Delta \mathbf{x}

로 계산하여 반복적으로

\mathbf{q}_{k+1} = \mathbf{q}_k + \Delta \mathbf{q}

를 갱신한다. 야코비 행렬이 정사각 행렬이 아니거나 특이점 근방에서는 의사역행렬(pseudoinverse)을 사용한다.

\mathbf{J}^{\dagger} = \mathbf{J}^T (\mathbf{J} \mathbf{J}^T)^{-1}

6. 고차 편미분과 헤세 행렬

기구학적 해석에서 가속도 수준의 관계를 도출하려면 야코비 행렬을 시간에 대해 다시 미분해야 한다.

\ddot{\mathbf{x}} = \mathbf{J}(\mathbf{q}) \ddot{\mathbf{q}} + \dot{\mathbf{J}}(\mathbf{q}) \dot{\mathbf{q}}

여기서 \dot{\mathbf{J}}의 성분은 2차 편미분을 포함한다.

\dot{J}_{ij} = \sum_{k=1}^{n} \frac{\partial^2 f_i}{\partial q_j \partial q_k} \dot{q}_k

i번째 작업 공간 좌표에 대한 헤세 텐서(Hessian tensor)는

H_{ijk}^{(i)} = \frac{\partial^2 f_i}{\partial q_j \partial q_k}

로 정의되며, 이는 특이점 해석 및 경로 계획에서 중요한 역할을 한다.

7. 편미분을 이용한 특이점 해석

야코비 행렬의 행렬식을 관절 변수의 함수로 보고, 이를 편미분하면 특이점의 성질을 파악할 수 있다. 행렬식 함수를

\sigma(\mathbf{q}) = \det(\mathbf{J}(\mathbf{q}))

로 정의하면, 특이점 조건은 \sigma(\mathbf{q}) = 0이다. 특이점 근방에서의 행동을 분석하기 위해

\frac{\partial \sigma}{\partial q_i} \bigg\vert_{\mathbf{q} = \mathbf{q}_s}

를 계산한다. 이 편미분이 0이 아닌 방향은 특이점에서 벗어나는 관절 운동 방향을 나타내며, 특이점 회피 전략을 수립하는 데 활용된다.

8. 가조작성과 편미분

가조작성(manipulability)은 야코비 행렬의 특이값(singular values)으로부터 정의되는 성능 지표이다. 요시카와(Yoshikawa)의 가조작성 지표는

w(\mathbf{q}) = \sqrt{\det\bigl(\mathbf{J}(\mathbf{q}) \mathbf{J}^T(\mathbf{q})\bigr)}

로 정의된다. 이 지표의 편미분

\frac{\partial w}{\partial q_i}

를 구하면, 가조작성을 최대화하는 방향으로 관절을 운동시키는 경사 상승(gradient ascent) 알고리즘을 구성할 수 있다. 여유 자유도(redundant degrees of freedom)가 있는 매니퓰레이터에서는 이 기울기를 영공간(null space)에 투영하여 주 작업에 영향을 주지 않으면서 가조작성을 최적화한다.

\dot{\mathbf{q}} = \mathbf{J}^{\dagger} \dot{\mathbf{x}} + \bigl(\mathbf{I} - \mathbf{J}^{\dagger} \mathbf{J}\bigr) \frac{\partial w}{\partial \mathbf{q}}^T

9. 편미분의 수치적 계산

해석적으로 편미분을 구하기 어려운 복잡한 기구학 구조에서는 수치 미분(numerical differentiation)을 사용한다.

9.1 전방 차분법

\frac{\partial f_i}{\partial q_j} \approx \frac{f_i(q_1, \dots, q_j + h, \dots, q_n) - f_i(q_1, \dots, q_j, \dots, q_n)}{h}

이 방법의 절단 오차(truncation error)는 O(h)이다.

9.2 중앙 차분법

\frac{\partial f_i}{\partial q_j} \approx \frac{f_i(q_1, \dots, q_j + h, \dots, q_n) - f_i(q_1, \dots, q_j - h, \dots, q_n)}{2h}

중앙 차분법은 절단 오차가 O(h^2)로 더 정확하지만 함수 평가 횟수가 두 배이다.

차분 방법공식절단 오차함수 평가 횟수
전방 차분\dfrac{f(q_j+h)-f(q_j)}{h}O(h)n+1
중앙 차분\dfrac{f(q_j+h)-f(q_j-h)}{2h}O(h^2)2n

10. 요약

편미분은 로봇 기구학 전반에 걸쳐 핵심적인 수학적 도구이다. 야코비 행렬의 구성, 미분 기구학의 정립, 역기구학의 반복 해법, 특이점 해석, 가조작성 최적화 등 기구학의 거의 모든 분야에서 편미분이 본질적으로 사용된다. 로봇 시스템의 복잡도가 증가함에 따라 고차 편미분과 수치 미분 기법의 중요성도 더욱 커지고 있다.


11. 참고 문헌

  • 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.
  • Spong, M. W., Hutchinson, S., & Vidyasagar, M. (2006). Robot Modeling and Control. Wiley.
  • Yoshikawa, T. (1985). “Manipulability of Robotic Mechanisms.” International Journal of Robotics Research, 4(2), 3–9.
  • Murray, R. M., Li, Z., & Sastry, S. S. (1994). A Mathematical Introduction to Robotic Manipulation. CRC Press.

v 0.1