397.5 작업 공간(Task Space)과 임무 공간(Mission Space)의 모델링
1. 개요
임무 계획 수립에서 작업 공간(Task Space)과 임무 공간(Mission Space)의 적절한 모델링은 계획 문제의 정식화와 해결의 기반을 형성한다. 작업 공간은 로봇이 개별 작업을 수행하는 물리적 또는 추상적 영역을 나타내며, 임무 공간은 임무의 전체적인 구조와 진행 상황을 추적하기 위한 고수준 추상 공간을 의미한다. 이 두 공간의 명확한 정의와 상호 관계 설정은 임무 계획기(Mission Planner)가 효과적으로 행동 순서를 탐색하고 제약 조건을 관리하는 데 필수적이다.
2. 작업 공간의 정의와 분류
2.1 물리적 작업 공간 (Physical Task Space)
물리적 작업 공간 \mathcal{W} \subseteq \mathbb{R}^d는 로봇이 실제로 활동하는 물리적 환경의 기하학적 표현이다. 여기서 d는 공간의 차원으로, 지상 로봇의 경우 d = 2 (2차원 평면), 비행 로봇이나 수중 로봇의 경우 d = 3 (3차원 공간)이 일반적이다.
물리적 작업 공간은 자유 영역(Free Space)과 장애물 영역(Obstacle Space)으로 분할된다.
\mathcal{W} = \mathcal{W}_{\text{free}} \cup \mathcal{W}_{\text{obs}}
\mathcal{W}_{\text{free}} \cap \mathcal{W}_{\text{obs}} = \emptyset
여기서 \mathcal{W}_{\text{free}}는 로봇이 이동 가능한 자유 영역, \mathcal{W}_{\text{obs}}는 장애물이 차지하는 영역이다.
임무 계획의 관점에서 물리적 작업 공간은 추가적인 의미론적(Semantic) 정보로 보강된다. 관심 지점(Point of Interest, PoI), 작업 영역(Task Region), 금지 구역(No-Go Zone), 안전 통로(Safe Corridor) 등이 작업 공간 위에 오버레이(Overlay)되어 임무 수준의 공간 제약을 형성한다.
2.2 구성 공간 (Configuration Space)
로봇의 구성 공간(Configuration Space) \mathcal{C}는 로봇의 자유도(Degrees of Freedom)에 의하여 정의되는 공간이다 (LaValle, 2006). 구성 q \in \mathcal{C}는 로봇의 모든 관절 각도와 위치를 포함하는 벡터이다.
q = (q_1, q_2, \ldots, q_n) \in \mathcal{C} \subseteq \mathbb{R}^n
구성 공간과 작업 공간의 관계는 순기구학(Forward Kinematics) 함수 \mathcal{FK}: \mathcal{C} \rightarrow \mathcal{W}에 의하여 정의된다.
x = \mathcal{FK}(q)
여기서 x \in \mathcal{W}는 작업 공간에서의 로봇 말단 효과기(End-Effector)의 위치와 자세이다.
2.3 추상적 작업 공간 (Abstract Task Space)
임무 계획에서의 추상적 작업 공간은 물리적 위치가 아닌 작업의 논리적 속성에 의하여 정의되는 공간이다. 이 공간에서 각 차원은 작업의 특정 속성(예: 완료 여부, 진행률, 품질 수준)을 나타낸다.
\mathcal{T}_{\text{abstract}} = \prod_{i=1}^{n} D_i
여기서 D_i는 i번째 작업 속성의 정의역(Domain)이다. 예를 들어, 이산적 완료 상태 D_i = \{0, 1\} 또는 연속적 진행률 D_i = [0, 1]이 될 수 있다.
3. 임무 공간의 정의와 구성
3.1 임무 공간의 형식적 정의
임무 공간(Mission Space) \mathcal{M}_S는 임무의 전체적인 상태를 추적하기 위한 고수준 추상 공간이다. 임무 공간의 한 점은 현재 임무의 진행 상태를 완전히 기술한다. 임무 공간은 다음과 같은 다중 차원 구조로 정의된다.
\mathcal{M}_S = \mathcal{S}_{\text{task}} \times \mathcal{S}_{\text{resource}} \times \mathcal{S}_{\text{time}} \times \mathcal{S}_{\text{env}}
각 부분 공간의 의미는 다음과 같다.
| 부분 공간 | 기호 | 설명 |
|---|---|---|
| 작업 상태 공간 | \mathcal{S}_{\text{task}} | 각 하위 작업의 완료 상태 |
| 자원 상태 공간 | \mathcal{S}_{\text{resource}} | 잔여 자원(배터리, 연료 등)의 상태 |
| 시간 상태 공간 | \mathcal{S}_{\text{time}} | 경과 시간, 마감 시한까지의 잔여 시간 |
| 환경 상태 공간 | \mathcal{S}_{\text{env}} | 환경의 동적 변화 상태 |
3.2 임무 상태 벡터
임무 공간의 한 점, 즉 임무 상태 벡터(Mission State Vector) \mathbf{m}는 다음과 같이 표현된다.
\mathbf{m} = (\boldsymbol{\phi}, \mathbf{r}, t, \mathbf{e})
각 구성 요소의 세부 정의는 다음과 같다.
작업 상태 벡터 \boldsymbol{\phi} = (\phi_1, \phi_2, \ldots, \phi_N)는 각 하위 작업의 완료 여부 또는 진행률을 나타낸다.
\phi_i \in \{0, 1\} \quad \text{(이산 모델)} \quad \text{또는} \quad \phi_i \in [0, 1] \quad \text{(연속 모델)}
자원 상태 벡터 \mathbf{r} = (r_1, r_2, \ldots, r_K)는 K종류의 자원에 대한 잔여량을 나타낸다.
r_k \in [0, R_k^{\max}], \quad k = 1, \ldots, K
여기서 R_k^{\max}는 자원 k의 최대 용량이다.
시간 상태 t \in \mathbb{R}^+는 임무 시작으로부터 경과한 시간이다.
환경 상태 벡터 \mathbf{e} = (e_1, e_2, \ldots, e_L)는 환경의 동적 변수(예: 풍속, 해류, 가시 거리)를 나타낸다.
3.3 임무 공간에서의 전이
임무 공간에서의 상태 전이(State Transition)는 행동의 실행에 의하여 발생한다. 행동 a에 의한 임무 상태 전이는 다음과 같이 정의된다.
\mathbf{m}_{t+1} = F(\mathbf{m}_t, a_t)
이를 각 부분 공간에 대하여 분해하면 다음과 같다.
\boldsymbol{\phi}_{t+1} = F_{\phi}(\boldsymbol{\phi}_t, a_t)
\mathbf{r}_{t+1} = \mathbf{r}_t - \mathbf{d}(a_t)
t_{t+1} = t_t + \Delta t(a_t)
\mathbf{e}_{t+1} = F_e(\mathbf{e}_t, \Delta t(a_t))
여기서 \mathbf{d}(a_t)는 행동 a_t에 의한 자원 소모 벡터, \Delta t(a_t)는 행동의 소요 시간, F_e는 환경 역학 함수(Environmental Dynamics Function)이다.
4. 작업 공간과 임무 공간의 관계
작업 공간과 임무 공간은 매핑 함수(Mapping Function)를 통하여 연결된다. 이 매핑은 물리적 행동의 수행이 임무 수준의 상태 변화로 어떻게 반영되는지를 정의한다.
4.1 심볼릭 추상화 (Symbolic Abstraction)
심볼릭 추상화는 연속적인 물리적 작업 공간을 이산적인 심볼릭 상태로 변환하는 과정이다 (Belta et al., 2017). 작업 공간의 영역 분할(Partition) \Pi = \{R_1, R_2, \ldots, R_M\}이 주어졌을 때, 추상화 함수 \alpha는 다음과 같이 정의된다.
\alpha: \mathcal{W}_{\text{free}} \rightarrow \Pi, \quad \alpha(x) = R_i \iff x \in R_i
이를 통하여 연속적인 로봇의 이동이 이산적인 영역 전이(Region Transition)로 추상화되며, 임무 계획기는 이 추상화된 표현 위에서 탐색을 수행한다.
4.2 전이 시스템 표현 (Transition System Representation)
추상화된 작업 공간은 가중 전이 시스템(Weighted Transition System) \mathcal{TS}로 모델링할 수 있다.
\mathcal{TS} = (Q, q_0, \delta, W, \mathcal{AP}, L)
여기서 각 구성 요소의 의미는 다음과 같다.
- Q: 상태의 유한 집합 (추상화된 영역에 대응)
- q_0 \in Q: 초기 상태
- \delta \subseteq Q \times Q: 전이 관계
- W: \delta \rightarrow \mathbb{R}^+: 전이 비용(가중치) 함수
- \mathcal{AP}: 원자 명제(Atomic Proposition)의 집합
- L: Q \rightarrow 2^{\mathcal{AP}}: 라벨링 함수(Labeling Function)
라벨링 함수 L은 각 상태에 대하여 해당 상태에서 성립하는 원자 명제의 집합을 부여한다. 예를 들어, L(q_3) = \{\text{at\_target}, \text{sensor\_active}\}는 상태 q_3에서 로봇이 목표 지점에 도착하였고 센서가 활성화되어 있음을 나타낸다.
4.3 계층적 모델링 (Hierarchical Modeling)
대규모 임무에서는 작업 공간과 임무 공간을 계층적으로 모델링하는 것이 계산적 효율성을 위하여 필요하다. 계층적 모델링에서는 작업 공간을 여러 수준의 해상도(Resolution)로 표현하며, 상위 수준에서는 대략적인(Coarse) 표현을, 하위 수준에서는 정밀한(Fine) 표현을 사용한다.
\mathcal{W}^{(0)} \xrightarrow{\text{refine}} \mathcal{W}^{(1)} \xrightarrow{\text{refine}} \cdots \xrightarrow{\text{refine}} \mathcal{W}^{(L)}
여기서 \mathcal{W}^{(0)}은 최상위(최소 해상도) 표현, \mathcal{W}^{(L)}은 최하위(최고 해상도) 표현이다. 상위 수준에서 대략적인 경로를 탐색한 후, 하위 수준에서 구체적인 경로를 정교화(Refine)하는 방식으로 계산 효율을 향상시킨다.
5. 임무 공간의 고급 모델링 기법
5.1 그래프 기반 임무 모델
임무의 구조를 방향 비순환 그래프(Directed Acyclic Graph, DAG) G_M = (V, E)로 모델링할 수 있다. 여기서 노드 v_i \in V는 개별 작업을 나타내고, 간선 (v_i, v_j) \in E는 작업 v_i가 작업 v_j보다 먼저 수행되어야 함을 나타내는 선후 관계(Precedence Constraint)이다.
(v_i, v_j) \in E \implies S_j \geq C_i
여기서 S_j는 작업 v_j의 시작 시각, C_i는 작업 v_i의 완료 시각이다.
5.2 페트리 네트 기반 모델
페트리 네트(Petri Net)는 동시성(Concurrency), 동기화(Synchronization), 자원 공유(Resource Sharing)를 표현할 수 있는 형식 모델로서 임무 공간의 모델링에 활용된다 (Murata, 1989). 페트리 네트 \mathcal{PN} = (P, T, F, W, M_0)에서 각 구성 요소는 다음과 같다.
- P: 장소(Place)의 집합 — 조건이나 자원을 표현
- T: 전이(Transition)의 집합 — 행동이나 사건을 표현
- F \subseteq (P \times T) \cup (T \times P): 흐름 관계(Flow Relation)
- W: F \rightarrow \mathbb{N}^+: 가중치 함수
- M_0: P \rightarrow \mathbb{N}: 초기 마킹(Initial Marking)
시간 페트리 네트(Timed Petri Net)와 색 페트리 네트(Colored Petri Net)는 시간 제약과 자원의 유형을 보다 정밀하게 표현할 수 있는 확장된 모델이다.
5.3 온톨로지 기반 임무 공간
온톨로지(Ontology) 기반 접근법은 임무 공간의 요소와 관계를 의미론적으로 풍부하게 표현한다 (Noy & McGuinness, 2001). OWL(Web Ontology Language)이나 KnowRob과 같은 지식 표현 프레임워크를 사용하여 임무 개념(Mission Concept), 작업 유형(Task Type), 자원 종류(Resource Type), 제약 유형(Constraint Type) 등을 계층적으로 정의하고, 이들 간의 관계를 추론 가능한(Reasoner가 처리할 수 있는) 형태로 기술한다.
6. 참고 문헌
- LaValle, S. M. (2006). Planning Algorithms. Cambridge University Press.
- Belta, C., Yordanov, B., & Gol, E. A. (2017). Formal Methods for Discrete-Time Dynamical Systems. Springer.
- Murata, T. (1989). Petri nets: Properties, analysis and applications. Proceedings of the IEEE, 77(4), 541-580.
- Noy, N. F., & McGuinness, D. L. (2001). Ontology development 101: A guide to creating your first ontology. Stanford Knowledge Systems Laboratory Technical Report.
버전: 2026-03-24 v1.0