7.17 그래디언트 장과 포텐셜 함수
1. 벡터장과 그래디언트 장
벡터장(vector field)은 공간의 각 점에 벡터를 대응시키는 함수이다. n차원 공간에서 벡터장 \mathbf{F}: \mathbb{R}^n \to \mathbb{R}^n은
\mathbf{F}(\mathbf{x}) = \begin{bmatrix} F_1(\mathbf{x}) \\ F_2(\mathbf{x}) \\ \vdots \\ F_n(\mathbf{x}) \end{bmatrix}
로 표현된다. 벡터장 \mathbf{F}가 어떤 스칼라 함수 \phi: \mathbb{R}^n \to \mathbb{R}의 그래디언트로 표현될 수 있으면, 즉
\mathbf{F}(\mathbf{x}) = \nabla \phi(\mathbf{x})
또는
\mathbf{F}(\mathbf{x}) = -\nabla \phi(\mathbf{x})
이 성립하면, \mathbf{F}를 그래디언트 장(gradient field) 또는 보존 벡터장(conservative vector field)이라 하고, \phi를 \mathbf{F}의 포텐셜 함수(potential function) 또는 스칼라 포텐셜(scalar potential)이라 한다. 물리학적 관례에서는 음의 부호를 취하여 \mathbf{F} = -\nabla \phi로 정의하는 경우가 많다.
2. 보존 벡터장의 판별 조건
2.1 회전 조건 (3차원)
3차원 공간에서 벡터장 \mathbf{F} = (F_1, F_2, F_3)가 단순 연결(simply connected) 영역에서 정의되고 C^1 급이면, \mathbf{F}가 보존적일 필요충분조건은
\nabla \times \mathbf{F} = \mathbf{0}
이다. 즉 회전(curl)이 0이어야 한다. 성분별로 쓰면
\frac{\partial F_3}{\partial y} - \frac{\partial F_2}{\partial z} = 0
\frac{\partial F_1}{\partial z} - \frac{\partial F_3}{\partial x} = 0
\frac{\partial F_2}{\partial x} - \frac{\partial F_1}{\partial y} = 0
이 세 조건이 모두 만족되어야 한다.
2.2 일반 n차원 조건
n차원 공간에서는 회전 조건의 일반화로서, 모든 i, j에 대해
\frac{\partial F_i}{\partial x_j} = \frac{\partial F_j}{\partial x_i}
가 성립해야 한다. 이는 야코비 행렬 \frac{\partial \mathbf{F}}{\partial \mathbf{x}}가 대칭 행렬이어야 함을 의미한다.
3. 포텐셜 함수의 구성
벡터장 \mathbf{F}가 보존적임을 확인한 후, 포텐셜 함수 \phi를 다음의 적분 방법으로 구성할 수 있다.
3.1 선적분 방법
기준점 \mathbf{x}_0에서 임의의 점 \mathbf{x}까지의 경로 \mathcal{C}를 따라
\phi(\mathbf{x}) = \int_{\mathcal{C}} \mathbf{F} \cdot d\mathbf{r} + \phi(\mathbf{x}_0)
로 정의한다. 보존 벡터장이므로 적분값은 경로에 무관하며 \phi가 잘 정의된다.
3.2 축차 적분 방법
2차원 벡터장 \mathbf{F} = (P, Q)에 대해 \nabla \phi = (P, Q)를 만족하는 \phi를 구하려면:
단계 1. P = \frac{\partial \phi}{\partial x}를 x에 대해 적분한다.
\phi(x, y) = \int P(x, y) \, dx + g(y)
단계 2. \frac{\partial \phi}{\partial y} = Q로부터 g(y)를 결정한다.
\frac{\partial}{\partial y} \left[ \int P(x, y) \, dx \right] + g'(y) = Q(x, y)
g'(y) = Q(x, y) - \frac{\partial}{\partial y} \int P(x, y) \, dx
단계 3. g'(y)를 적분하여 g(y)를 구한다.
3.3 차원 예제
\mathbf{F} = (2xy + z, x^2 + 2yz, x + y^2)의 포텐셜 함수를 구하자.
먼저 보존성을 확인한다.
\frac{\partial F_1}{\partial y} = 2x = \frac{\partial F_2}{\partial x}, \quad \frac{\partial F_1}{\partial z} = 1 = \frac{\partial F_3}{\partial x}, \quad \frac{\partial F_2}{\partial z} = 2y = \frac{\partial F_3}{\partial y}
모든 조건이 성립하므로 보존적이다. 축차 적분을 수행하면
\phi = \int (2xy + z) \, dx = x^2 y + xz + g(y, z)
\frac{\partial \phi}{\partial y} = x^2 + \frac{\partial g}{\partial y} = x^2 + 2yz \implies \frac{\partial g}{\partial y} = 2yz
g(y, z) = y^2 z + h(z)
\frac{\partial \phi}{\partial z} = x + y^2 + h'(z) = x + y^2 \implies h'(z) = 0 \implies h(z) = C
따라서
\phi(x, y, z) = x^2 y + xz + y^2 z + C
이다.
4. 로봇공학에서의 포텐셜 함수
4.1 인공 포텐셜 필드 방법
로봇 경로 계획에서 인공 포텐셜 필드(artificial potential field) 방법은 작업 공간에 가상의 포텐셜 함수를 설정하여 로봇을 목표점으로 유도한다. 총 포텐셜 함수는
U(\mathbf{x}) = U_{\text{att}}(\mathbf{x}) + U_{\text{rep}}(\mathbf{x})
이며, 각 성분은 다음과 같이 정의된다.
인력 포텐셜(attractive potential):
U_{\text{att}}(\mathbf{x}) = \frac{1}{2} \xi \lVert \mathbf{x} - \mathbf{x}_g \rVert^2
여기서 \xi > 0는 인력 이득(gain), \mathbf{x}_g는 목표 위치이다. 그래디언트는
\nabla U_{\text{att}}(\mathbf{x}) = \xi (\mathbf{x} - \mathbf{x}_g)
이므로, 인력 \mathbf{F}_{\text{att}} = -\nabla U_{\text{att}} = -\xi(\mathbf{x} - \mathbf{x}_g)는 항상 목표점을 향한다.
반발 포텐셜(repulsive potential):
U_{\text{rep}}(\mathbf{x}) = \begin{cases} \dfrac{1}{2} \eta \left( \dfrac{1}{d(\mathbf{x})} - \dfrac{1}{d_0} \right)^2, & d(\mathbf{x}) \leq d_0 \\[8pt] 0, & d(\mathbf{x}) > d_0 \end{cases}
여기서 \eta > 0는 반발 이득, d(\mathbf{x})는 가장 가까운 장애물까지의 거리, d_0는 영향 범위이다.
4.2 내비게이션 함수
인공 포텐셜 필드의 국소 최소점 문제를 해결하기 위해 내비게이션 함수(navigation function)가 도입되었다. 내비게이션 함수 \varphi: \mathcal{F} \to [0, 1]은 다음 조건을 만족하는 포텐셜 함수이다.
- \mathcal{F} (자유 공간)에서 매끄러운(smooth) 함수이다
- 목표점 \mathbf{x}_g에서 유일한 극소를 가진다: \nabla \varphi(\mathbf{x}_g) = \mathbf{0}이고 \varphi(\mathbf{x}_g) = 0
- 장애물 경계 및 작업 공간 경계에서 최댓값 1을 가진다
- 모스 함수(Morse function)이다: 모든 임계점이 비퇴화(non-degenerate)이다
구면 세계(sphere world) 모델에서 내비게이션 함수의 대표적 형태는
\varphi(\mathbf{x}) = \frac{\lVert \mathbf{x} - \mathbf{x}_g \rVert^{2k}}{\left( \lVert \mathbf{x} - \mathbf{x}_g \rVert^{2k} + \beta(\mathbf{x}) \right)^{1/k}}
이다. 여기서 \beta(\mathbf{x})는 장애물 함수, k는 충분히 큰 양의 정수이다.
4.3 관절 공간에서의 포텐셜 함수
관절 한계(joint limits)를 회피하기 위한 포텐셜 함수를 관절 공간에서 정의할 수 있다.
U_{\text{joint}}(\mathbf{q}) = \sum_{i=1}^{n} \frac{1}{2} \kappa_i \left( \frac{q_i - \bar{q}_i}{q_{i,\max} - q_{i,\min}} \right)^2
여기서 \bar{q}_i = \frac{q_{i,\max} + q_{i,\min}}{2}는 관절 i의 중간값, \kappa_i > 0는 가중치이다. 그래디언트는
\frac{\partial U_{\text{joint}}}{\partial q_i} = \kappa_i \frac{q_i - \bar{q}_i}{(q_{i,\max} - q_{i,\min})^2}
이며, 관절이 한계에 가까워질수록 큰 반발력이 작용한다.
5. 포텐셜 함수의 성질과 한계
5.1 보존성의 물리적 의미
보존 벡터장에서 폐경로를 따라 수행한 일(work)은 항상 0이다.
\oint_{\mathcal{C}} \mathbf{F} \cdot d\mathbf{r} = \oint_{\mathcal{C}} \nabla \phi \cdot d\mathbf{r} = 0
이는 경로에 따른 에너지 보존을 의미한다. 그래디언트 하강법에서 시스템이 포텐셜의 극소점에 수렴하는 것은 이 보존 성질에 기인한다.
5.2 국소 최소점 문제
인공 포텐셜 필드 방법의 주요 한계는 국소 최소점(local minimum)의 존재이다. \nabla U(\mathbf{x}^*) = \mathbf{0}이지만 \mathbf{x}^* \neq \mathbf{x}_g인 점에서 로봇이 정지할 수 있다. 이를 해결하기 위한 방법은 다음과 같다.
| 방법 | 원리 | 장점 | 단점 |
|---|---|---|---|
| 내비게이션 함수 | 국소 최소점 없는 포텐셜 설계 | 이론적 완전성 | 장애물 모델링 어려움 |
| 랜덤 워크 | 국소 최소에서 무작위 탈출 | 구현 간단 | 수렴 보장 없음 |
| 가상 장애물 | 국소 최소에 가상 반발력 추가 | 적응적 | 진동 가능성 |
| 하모닉 함수 | 라플라스 방정식 해 사용 | 국소 최소 없음 | 수치 계산 비용 큼 |
5.3 하모닉 포텐셜 함수
라플라스 방정식(Laplace equation)
\nabla^2 \phi = \sum_{i=1}^{n} \frac{\partial^2 \phi}{\partial x_i^2} = 0
의 해인 조화 함수(harmonic function)를 포텐셜로 사용하면, 최대·최소 원리(maximum principle)에 의해 내부에 극소점이 존재하지 않으므로 국소 최소점 문제를 원천적으로 피할 수 있다.
6. 요약
그래디언트 장은 스칼라 포텐셜 함수의 그래디언트로 정의되는 보존 벡터장이며, 회전이 0이라는 조건으로 판별할 수 있다. 로봇공학에서는 인공 포텐셜 필드 방법, 내비게이션 함수, 관절 한계 회피 등에 포텐셜 함수와 그 그래디언트를 폭넓게 활용한다. 국소 최소점 문제는 내비게이션 함수나 조화 함수 등을 통해 이론적으로 해결할 수 있다.
7. 참고 문헌
- Khatib, O. (1986). “Real-Time Obstacle Avoidance for Manipulators and Mobile Robots.” International Journal of Robotics Research, 5(1), 90–98.
- Rimon, E., & Koditschek, D. E. (1992). “Exact Robot Navigation Using Artificial Potential Functions.” IEEE Transactions on Robotics and Automation, 8(5), 501–518.
- Connolly, C. I., Burns, J. B., & Weiss, R. (1990). “Path Planning Using Laplace’s Equation.” Proceedings of the IEEE International Conference on Robotics and Automation, 2102–2106.
- Marsden, J. E., & Tromba, A. J. (2012). Vector Calculus. 6th ed. W. H. Freeman.
- Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. (2009). Robotics: Modelling, Planning and Control. Springer.
v 0.1