1261.11 단기 행동과 장기 행동의 구분

1. 단기 행동과 장기 행동의 개념적 정의

로봇 행동 제어에서 단기 행동(short-term behavior)과 장기 행동(long-term behavior)의 구분은 행동의 시간적 지속 범위(temporal span)에 근거한 분류 체계이다. 이 구분은 단순히 절대적 실행 시간의 차이만을 의미하지 않으며, 행동의 내부 구조, 상태 관리 방식, 그리고 요구되는 통신 패러다임에 있어서 본질적인 차이를 반영한다.

단기 행동은 개시에서 종료까지의 소요 시간이 비교적 짧고, 실행 과정에서 외부 개입이나 중간 상태 보고가 불필요한 행동을 지칭한다. 반면, 장기 행동은 실행에 상당한 시간이 소요되며, 실행 중 진행 상황의 모니터링, 중간 피드백의 제공, 그리고 외부로부터의 취소 또는 수정 요청의 처리가 필수적인 행동을 의미한다. Simmons와 Apfelbaum(1998)은 이러한 구분이 로봇 아키텍처에서 제어 계층 간의 인터페이스 설계에 직접적인 영향을 미친다고 제시하였다.

2. 단기 행동의 특성

2.1 구조적 특성

단기 행동은 원자적 실행(atomic execution) 특성을 갖는다. 즉, 행동의 개시와 종료 사이에 중간 상태가 외부에 노출되지 않으며, 호출자(caller)의 관점에서 단일 연산(single operation)으로 취급할 수 있다. 이러한 원자성(atomicity)은 다음과 같이 정식화할 수 있다.

b_{\text{short}} : s_{\text{init}} \xrightarrow{\tau_{\text{short}}} s_{\text{final}}

여기서 s_{\text{init}}는 초기 상태, s_{\text{final}}는 최종 상태, \tau_{\text{short}}는 단기 행동의 실행 시간이다. 중간 상태 s_{\text{intermediate}}는 외부에 관측되지 않는다.

2.2 시간적 범위

단기 행동의 실행 시간은 통상적으로 제어 루프의 주기와 동일한 수준 또는 그보다 약간 긴 범위에 해당한다. 일반적으로 수 밀리초에서 수 초 이내의 실행 시간을 갖는다. 관절 자세 변경(joint posture change), 단일 센서 데이터 취득(single sensor acquisition), 그립퍼 개폐(gripper open/close), 특정 지점으로의 단순 회전(simple rotation) 등이 단기 행동의 대표적 사례이다.

2.3 통신 패러다임과의 관계

단기 행동은 ROS2에서 서비스(Service) 통신 패러다임에 적합하다. 서비스 통신은 요청-응답(request-response) 패턴을 제공하며, 클라이언트가 요청을 전송하면 서버가 처리를 완료한 후 결과를 반환한다. 단기 행동의 원자적 특성은 서비스 통신의 동기적(synchronous) 특성과 자연스러운 대응 관계를 형성한다.

\text{Client} \xrightarrow{\text{Request}} \text{Server} \xrightarrow{\tau_{\text{process}}} \text{Client} \xleftarrow{\text{Response}}

이 경우, 클라이언트는 응답을 수신할 때까지 대기(blocking)하거나, 비동기적(asynchronous) 콜백을 통해 응답을 수신할 수 있다.

3. 장기 행동의 특성

3.1 구조적 특성

장기 행동은 복합적 실행(compound execution) 구조를 가진다. 행동의 실행 과정이 복수의 단계(phase)로 구성되며, 각 단계에서의 중간 상태가 외부에 관측 가능하여야 한다. 장기 행동의 실행 구조는 다음과 같이 모형화할 수 있다.

b_{\text{long}} : s_0 \xrightarrow{\tau_1} s_1 \xrightarrow{\tau_2} s_2 \xrightarrow{\tau_3} \cdots \xrightarrow{\tau_n} s_n

여기서 \{s_0, s_1, \ldots, s_n\}은 관측 가능한 중간 상태의 시퀀스이며, 각 \tau_i는 단계 간 전이 시간이다. 장기 행동의 총 실행 시간은 \tau_{\text{long}} = \sum_{i=1}^{n} \tau_i로 산출된다.

3.2 시간적 범위

장기 행동의 실행 시간은 수 초에서 수 분, 나아가 수 시간에 이를 수 있다. 자율 주행에서의 목적지 도달(goal navigation), 환경 탐색(exploration), 물체 탐색 및 조작(search and manipulation), 대규모 지도 구축(large-scale mapping) 등이 장기 행동의 사례이다.

3.3 장기 행동의 필수 요구사항

장기 행동은 다음의 요구사항을 충족하여야 한다.

진행 상황 피드백(Progress Feedback): 행동의 실행 중 현재 진행 정도를 호출자에게 주기적으로 보고하여야 한다. 이는 호출자가 행동의 정상 진행 여부를 판단하고 필요 시 의사결정을 수행하는 근거가 된다.

취소 가능성(Cancellability): 외부의 요청에 의해 실행 중인 행동을 안전하게 중단할 수 있어야 한다. 취소 요청의 처리는 시스템의 일관성(consistency)을 유지한 채 이루어져야 하며, 취소 후의 상태 복원 또는 안전 상태로의 전이가 보장되어야 한다.

선점 가능성(Preemptability): 우선순위가 높은 다른 행동이 현재 실행 중인 행동을 대체할 수 있어야 한다. 선점은 취소와 새로운 행동의 개시가 원자적으로 이루어지는 과정이다.

결과 보고(Result Reporting): 행동의 완료, 실패, 또는 취소 시 최종 결과를 구조화된 형태로 호출자에게 전달하여야 한다.

3.4 통신 패러다임과의 관계

장기 행동은 ROS2 액션(Action) 통신 패러다임에 적합하다. 액션 통신은 목표 전달(goal submission), 피드백 스트리밍(feedback streaming), 결과 수신(result reception), 그리고 취소 요청(cancel request)의 네 가지 통신 흐름을 통합적으로 제공한다. 이는 장기 행동의 구조적 요구사항과 정합한다.

4. 단기 행동과 장기 행동의 비교

특성단기 행동장기 행동
실행 시간ms ~ ss ~ min (이상)
실행 구조원자적 (atomic)복합적 (compound)
중간 상태 관측불필요필수
피드백없음주기적 피드백
취소 가능성불필요/미지원필수
선점 가능성불필요요구됨
적합한 통신서비스 (Service)액션 (Action)
상태 관리 복잡도낮음높음
오류 복구단순 재시도부분 롤백, 대체 경로

5. 경계 사례와 분류 기준의 모호성

단기 행동과 장기 행동의 경계는 절대적이지 않으며, 응용 영역과 시스템 요구사항에 따라 유동적이다. 예를 들어, 로봇 팔의 물체 파지(grasping)는 단순한 그립퍼 폐합만을 고려할 경우 단기 행동이나, 접근(approach)→정렬(alignment)→파지(grasp)→확인(verification)의 전체 시퀀스를 하나의 행동으로 간주할 경우 장기 행동으로 분류할 수 있다.

이러한 분류의 모호성을 해소하기 위해 다음의 기준을 적용할 수 있다.

첫째, 행동의 실행 중 호출자가 진행 상황을 알아야 하는가의 여부이다. 진행 상황 모니터링이 필요한 경우 해당 행동은 장기 행동으로 분류한다.

둘째, 행동의 실행 중 외부로부터의 취소 요청이 합리적으로 발생할 수 있는가의 여부이다. 취소 가능성이 요구되면 장기 행동으로 분류한다.

셋째, 행동의 실행 시간이 통신 타임아웃(timeout)을 초과할 가능성이 있는가의 여부이다. ROS2 서비스 통신의 기본 타임아웃 범위를 초과하는 행동은 장기 행동으로 간주하여야 한다.

6. 계층적 관점에서의 구분

단기 행동과 장기 행동의 구분은 절대적인 것이 아니라 관찰 계층(observation level)에 의존한다. Kaelbling과 Lozano-Pérez(2011)가 제안한 계층적 작업 분해(hierarchical task decomposition)의 관점에서, 하나의 장기 행동은 복수의 단기 행동으로 분해할 수 있으며, 복수의 단기 행동은 상위 수준에서 하나의 장기 행동으로 통합될 수 있다.

b_{\text{long}} = \{b_{\text{short},1}, b_{\text{short},2}, \ldots, b_{\text{short},k}\}

이러한 계층적 분해는 행동 제어 시스템의 모듈성(modularity)과 재사용성(reusability)을 보장하는 핵심 원리이며, 유한 상태 머신(FSM), 행동 트리(BT), 그리고 계층적 작업 네트워크(Hierarchical Task Network, HTN)와 같은 제어 프레임워크에서 체계적으로 구현된다.

단기 행동과 장기 행동의 명확한 구분과 적절한 통신 패러다임의 선택은 로봇 행동 제어 시스템의 신뢰성, 응답성, 그리고 유지보수성을 결정짓는 설계상의 핵심 요소이다.