1261.76 분산 행동 제어와 에지 컴퓨팅
1. 분산 행동 제어의 개념
분산 행동 제어(distributed behavior control)란 로봇의 행동 제어 로직을 단일 중앙 컴퓨팅 장치에 집중하지 않고, 복수의 컴퓨팅 노드에 분산 배치하여 실행하는 아키텍처 패러다임을 의미한다. 분산 행동 제어는 단일 장애점(single point of failure)의 제거, 연산 부하의 분산, 통신 지연의 감소, 그리고 시스템 확장성의 향상을 목표로 한다(Parker, 2008).
전통적인 중앙 집중형(centralized) 행동 제어에서는 모든 센서 데이터가 중앙 컴퓨팅 장치로 전송되고, 행동 결정과 제어 명령 생성이 단일 장치에서 수행된다. 이 구조는 구현이 단순하지만, 센서 데이터의 전송 지연, 중앙 장치의 연산 병목, 중앙 장치 고장 시 전체 시스템의 마비라는 근본적 한계를 갖는다. 분산 행동 제어는 이러한 한계를 극복하기 위해, 행동 제어 로직의 일부 또는 전부를 데이터 발생 지점에 근접한 컴퓨팅 자원에서 실행하는 전략을 채택한다.
2. 에지 컴퓨팅의 정의와 로봇 시스템에서의 역할
에지 컴퓨팅(edge computing)은 데이터 처리를 중앙 클라우드(cloud)가 아닌 데이터 발생 지점에 근접한 에지(edge) 장치에서 수행하는 분산 컴퓨팅 패러다임이다(Shi et al., 2016). 에지 컴퓨팅은 지연 시간(latency) 감소, 대역폭 절약, 데이터 프라이버시 보호, 오프라인 운용 능력 확보 등의 이점을 제공한다.
로봇 시스템에서 에지 컴퓨팅은 다음의 맥락에서 활용된다.
로봇 온보드(on-board) 에지: 로봇 자체에 탑재된 임베디드 컴퓨팅 장치(NVIDIA Jetson, Raspberry Pi, Intel NUC 등)에서 센서 데이터의 전처리, 저수준 행동 제어, 실시간 장애물 회피 등의 지연 민감(latency-sensitive) 작업을 처리한다.
근접 에지(near-edge): 로봇 운용 환경 내에 설치된 로컬 서버 또는 게이트웨이에서, 복수의 로봇이 공유하는 지도(map) 관리, 작업 할당(task allocation), 교통 관리(traffic management) 등의 중간 수준 연산을 수행한다.
클라우드(cloud): 원격 데이터 센터에서 대규모 기계학습 모델의 학습(training), 대용량 데이터의 장기 저장, 글로벌 임무 계획(global mission planning) 등의 지연 허용(latency-tolerant) 작업을 처리한다.
3. 분산 행동 제어의 아키텍처 패턴
3.1 계층적 분산 아키텍처
계층적 분산(hierarchical distributed) 아키텍처는 행동 제어 로직을 복수의 계층으로 분리하고, 각 계층을 상이한 컴퓨팅 자원에 배치하는 구조이다.
- 반응 계층(reactive layer): 로봇 온보드 에지에 배치한다. 센서 데이터의 실시간 전처리, 장애물 회피, 비상 정지 등 밀리초(millisecond) 수준의 응답 시간이 요구되는 반응적 행동을 실행한다. 이 계층은 외부 통신의 단절 상황에서도 독립적으로 동작하여 로봇의 기본적 안전을 보장한다.
- 심의 계층(deliberative layer): 근접 에지 또는 온보드 장치에 배치한다. 행동 트리의 틱(tick) 실행, 상태 머신의 전이 관리, 경로 계획 등 수십~수백 밀리초 수준의 응답 시간이 허용되는 전술적 행동 결정을 수행한다.
- 전략 계층(strategic layer): 클라우드 또는 근접 에지에 배치한다. 전체 임무 할당, 자원 최적화, 장기 계획 등 초(second) 단위 이상의 응답 시간이 허용되는 고수준 의사결정을 담당한다.
이 구조에서는 하위 계층이 상위 계층과의 통신 단절 시에도 자율적으로 동작할 수 있어야 하며, 통신 복구 시 상위 계층의 지시에 따라 행동을 조정하는 자율성 미끄러짐(autonomy sliding) 기능이 요구된다.
3.2 피어-투-피어 분산 아키텍처
피어-투-피어(peer-to-peer) 분산 아키텍처는 중앙 조율자 없이 로봇 간에 행동 제어 정보를 직접 교환하는 구조이다. 각 로봇은 자신의 행동 상태, 의도(intention), 관찰 정보를 주변 로봇에게 발행하고, 수신된 정보를 기반으로 자율적으로 행동을 결정한다.
ROS2의 DDS(Data Distribution Service) 미들웨어는 중앙 브로커 없는 피어-투-피어 발견(peer-to-peer discovery) 프로토콜을 기본으로 지원하므로, 피어-투-피어 분산 행동 제어의 통신 기반을 자연스럽게 제공한다. 그러나 참여 노드의 수가 증가하면 DDS 발견 프로토콜의 오버헤드가 급증하므로, 발견 서버(discovery server) 모드의 사용 또는 Zenoh 프로토콜로의 전환이 필요할 수 있다.
3.3 오프로딩 아키텍처
연산 오프로딩(computational offloading) 아키텍처는 로봇 온보드 장치의 연산 능력이 부족한 경우, 행동 제어 로직의 일부를 에지 서버 또는 클라우드로 전송하여 처리하는 구조이다(Mach and Becvar, 2017).
오프로딩 대상의 선정은 다음의 기준에 따라 결정된다.
- 지연 민감도(latency sensitivity): 지연 민감도가 높은 행동(비상 정지, 충돌 회피)은 오프로딩 대상에서 제외하고 반드시 온보드에서 실행한다.
- 연산 부하(computational load): 깊은 신경망(deep neural network) 기반 인식, 경로 최적화 등 연산 집약적 작업은 에지 서버로 오프로딩한다.
- 데이터 전송량(data transfer volume): 오프로딩에 수반되는 데이터 전송 비용(대역폭, 지연)이 오프로딩으로 얻는 연산 이득을 상회하지 않아야 한다.
4. ROS2를 활용한 분산 행동 제어 구현
4.1 분산 노드 배치
ROS2의 아키텍처는 본질적으로 분산 시스템을 지원한다. 동일한 DDS 도메인(domain)에 참여하는 노드는 물리적 위치에 무관하게 투명한 통신이 가능하다. 행동 제어 노드를 로봇 온보드, 에지 서버, 클라우드의 각 컴퓨팅 장치에 배포하고, DDS 또는 Zenoh를 통해 연결하면 분산 행동 제어 시스템이 구성된다.
분산 배치 시 고려해야 할 사항은 다음과 같다.
- DDS 도메인 설계: 도메인 ID(domain ID)를 적절히 분리하여, 관련 없는 노드 간의 발견 트래픽을 차단한다.
- QoS 정책 조정: 네트워크 특성(대역폭, 지연, 패킷 유실률)에 맞추어 QoS 정책(Reliable vs. Best-Effort, 히스토리 깊이 등)을 조정한다.
- 보안 설정: ROS2의 SROS2(Secure ROS2) 프레임워크를 활용하여 노드 간 통신의 인증(authentication), 권한 부여(authorization), 암호화(encryption)를 구성한다.
4.2 Zenoh를 활용한 에지-클라우드 연동
Zenoh 프로토콜은 DDS에 비해 경량의 프로토콜 오버헤드를 가지며, WAN(Wide Area Network) 환경에서의 효율적인 데이터 전달, 데이터 캐싱(caching), 라우팅(routing) 기능을 제공한다. Zenoh의 라우터(router)를 에지 서버에 배치하고, 로봇 온보드의 ROS2 노드와 클라우드의 서비스를 Zenoh 라우터를 통해 연결하면, 방화벽(firewall)이나 NAT(Network Address Translation) 뒤에 위치한 로봇에서도 에지-클라우드 간 투명한 통신이 가능하다.
zenoh-bridge-ros2dds 모듈을 사용하면 ROS2 토픽, 서비스, 액션을 Zenoh 네트워크에 투명하게 브리징(bridging)할 수 있으며, 이를 통해 기존 ROS2 행동 제어 코드의 변경 없이 분산 에지 아키텍처로의 전환이 가능하다.
4.3 통신 단절 시의 자율 행동
분산 행동 제어 시스템에서 에지 서버 또는 클라우드와의 통신이 단절되는 상황에 대비하여, 로봇 온보드에서 독립적으로 동작하는 자율 행동(autonomous fallback behavior)을 사전에 설계하여야 한다.
통신 단절 탐지(disconnection detection)는 토픽 구독의 타임아웃, 서비스 호출의 실패, 하트비트 메시지의 유실 등으로 수행한다. 통신 단절이 탐지되면, 행동 제어 시스템은 다음의 전략 중 적절한 것을 실행한다.
- 현 행동 계속(continue current behavior): 마지막으로 수신된 명령에 따라 현재 행동을 계속 수행한다.
- 안전 대기(safe wait): 현재 위치에서 안전한 자세를 취하고 통신 복구를 대기한다.
- 기지 복귀(return to base): 사전 저장된 기지 좌표로 자율 복귀한다.
- 지역 자율 임무(local autonomous mission): 온보드에 캐시(cache)된 임무 계획에 따라 제한된 범위의 자율 임무를 계속 수행한다.
5. 에지 컴퓨팅의 자원 관리
5.1 연산 자원 할당
에지 장치는 클라우드에 비해 제한된 연산 자원(CPU, GPU, 메모리)을 보유하므로, 행동 제어 로직의 자원 할당을 체계적으로 관리하여야 한다. 실시간 행동 제어 루프에는 우선순위가 높은 CPU 코어를 전용으로 할당(CPU affinity)하고, 비실시간 작업(로깅, 진단)은 별도의 코어에서 실행하여 제어 루프의 타이밍 안정성을 보장한다.
Linux 운영체제에서는 cgroups(control groups)를 통해 프로세스 그룹 단위의 CPU, 메모리, I/O 자원 할당을 제어할 수 있으며, SCHED_FIFO 또는 SCHED_RR 스케줄링 정책을 적용하여 실시간 콜백의 스케줄링 우선순위를 보장한다.
5.2 전력 관리
모바일 로봇의 에지 장치는 배터리로 구동되므로, 전력 소비의 최적화가 중요하다. 행동 제어 시스템에서 전력 관리를 위한 전략에는 다음이 포함된다.
- 동적 주파수 조정(DVFS, Dynamic Voltage and Frequency Scaling): 행동 제어의 연산 부하에 따라 프로세서의 동작 주파수를 동적으로 조절하여 전력 소비를 감소시킨다.
- 선택적 오프로딩(selective offloading): 배터리 잔량이 낮을 때 연산 집약적 행동 로직을 에지 서버로 오프로딩하여 온보드 장치의 전력 소비를 감소시킨다.
- 센서 듀티 사이클링(sensor duty cycling): 행동 제어 상태에 따라 불필요한 센서의 전원을 차단하거나 샘플링 주기를 감소시킨다.
6. 분산 행동 제어의 과제
분산 행동 제어와 에지 컴퓨팅의 통합은 다음의 기술적 과제를 수반한다.
| 과제 | 설명 |
|---|---|
| 일관성 유지(consistency) | 분산된 행동 제어 노드 간의 상태 일관성을 보장하는 것이 곤란하다. 네트워크 분할(network partition) 시 CAP 정리(Brewer, 2000)에 의해 일관성과 가용성 간의 상충이 발생한다. |
| 결정론적 동작(determinism) | 네트워크 지연의 변동과 분산 스케줄링의 비결정성으로 인해, 분산 행동 제어의 결정론적 실행이 어렵다. |
| 보안(security) | 네트워크를 통해 행동 제어 명령이 전달되므로, 비인가 접근, 명령 위변조, 도청(eavesdropping) 등의 보안 위협에 노출된다. |
| 이질적 자원 관리(heterogeneous resource management) | 온보드 장치, 에지 서버, 클라우드의 이질적 컴퓨팅 자원을 통합적으로 관리하는 프레임워크가 필요하다. |
이러한 과제의 해결을 위해서는 분산 시스템 이론, 실시간 시스템 이론, 네트워크 보안의 학제적 연구가 필수적이다.
참고 문헌
- Brewer, E. A. (2000). “Towards Robust Distributed Systems.” Proceedings of the 19th Annual ACM Symposium on Principles of Distributed Computing (PODC ’00), 7.
- Mach, P. & Becvar, Z. (2017). “Mobile Edge Computing: A Survey on Architecture and Computation Offloading.” IEEE Communications Surveys & Tutorials, 19(3), 1628–1656.
- Parker, L. E. (2008). “Distributed Intelligence: Overview of the Field and its Application in Multi-Robot Systems.” Journal of Physical Agents, 2(1), 5–14.
- Shi, W., Cao, J., Zhang, Q., Li, Y., & Xu, L. (2016). “Edge Computing: Vision and Challenges.” IEEE Internet of Things Journal, 3(5), 637–646.
- Macenski, S., Foote, T., Gerkey, B., Lalancette, C., & Woodall, W. (2022). “Robot Operating System 2: Design, Architecture, and Uses in the Wild.” Science Robotics, 7(66), eabm6074.
v0.2.0