Contents — find the section you need
드론 쇼에서 수백 대의 드론이 동시에 대형을 재배치하거나, 창고 로봇들이 충돌 없이 움직일 때, 모든 움직임을 실시간으로 제어하는 단일 "지휘 센터"는 존재하지 않습니다. 대부분의 경우, 각 로봇은 주변 환경에 대한 제한된 정보만을 가지고 간단한 규칙을 따르며 움직입니다. 그리고 이러한 과정을 통해 전체 로봇 집단은 질서 있고 의미 있는 행동을 보이게 됩니다. 이 글에서는 군집 제어(다중 로봇 제어)라는 개념, 즉 단순한 구성 요소들을 조합하여 복잡한 전체를 만들어내는 과정을 세 가지 관점, 즉 무리짓기 운동, 합의 형성, 그리고 대형 제어를 통해 살펴봅니다.
들판의 군집 로봇(킬로봇)이미지: Kilobot 로봇 군집 (asuscreative, CC BY-SA 4.0), Wikimedia Commons. 본문에서 논의된 드론이나 창고 로봇이 아닌, 오직 로컬 규칙만을 기반으로 작동하는 군집 로봇 연구의 대표적인 예입니다.
0. 이 글에서 다루는 내용
- 군집 제어가 해결하고자 하는 문제와 단일 로봇으로는 충분하지 않은 이유
- 각 로봇이 실제로 얻을 수 있는 정보(입력)와 그로부터 생성되는 출력(속도 명령) 간의 관계
- 중앙 집중식 설계와 분산식 설계의 아키텍처적 차이
- Boids로 대표되는 로컬 규칙 기반 군집 행동의 작동 방식
- 합의 알고리즘을 통한 합의 형성의 수학적 원리
- 세 가지 편대 제어 방식(리더-팔로워, 가상 구조, 행동 기반)의 차이점
- 통신 제약 조건(지연 시간, 데이터 손실, 대역폭)이 군집 제어 설계에 미치는 영향
- 드론 쇼, 창고 로봇, 재난 수색 등 어떤 응용 분야에 어떤 방식을 선택해야 하는가
1. 핵심 요약: 군집 제어란 무엇인가
한 문장으로 요약하면, 군집 제어는 의미 있는 집단 행동을 생성하는 제어 프레임워크입니다. 전체 그룹의 정렬, 대형 유지, 합의 도출, 분업 등은 각 로봇이 보유한 제한된 정보와 단순한 행동 규칙만으로 구현할 수 있습니다.
핵심은 "어느 로봇도 전체의 청사진을 가지고 있을 필요가 없다"는 것입니다. 마치 새 떼에 지휘자가 없는 것처럼, 많은 군집 제어 알고리즘은 각 로봇이 주변의 다른 로봇(이웃 로봇)에 대한 정보만을 사용하도록 설계되어 있습니다. 전체 그룹의 상태를 완벽하게 알지 못하더라도, 군집 전체는 하나의 일관된 단위로 움직입니다. "지역적인 정보로 전체적인 질서를 구축한다"는 이 아이디어가 군집 제어를 단일 로봇 제어와 근본적으로 구분 짓는 요소입니다.
2. 군집 제어가 필요한 이유는 무엇일까요?
만약 고성능 로봇 한 대로 문제를 해결할 수 있다면, 군집 제어는 필요하지 않습니다. 군집 제어는 단일 로봇이 원칙적으로 또는 실질적으로 불리한 상황에서 실제로 선택됩니다. 예를 들면 다음과 같습니다.
-
공간적 범위: 단일 로봇으로는 넓은 재난 현장이나 들판의 한쪽 끝에서 다른 쪽 끝까지 수색하는 데 너무 오랜 시간이 걸립니다. 작업을 여러 로봇으로 분산하면 로봇 수에 비례하여 수색 시간이 단축됩니다.
-
중복성 및 내결함성: 단일 로봇 구성에서는 한 대의 로봇이 고장 나면 전체 임무가 중단되지만, 여러 대의 로봇으로 구성된 군집은 일부 로봇이 작동을 멈추더라도 나머지 로봇으로 임무를 계속 수행할 수 있습니다.
-
다중 지점 동시 작업: 일부 임무는 본질적으로 여러 장소에 동시에 있어야 합니다. 예를 들어 드론 쇼에서 특정 모양을 만들거나 창고에서 여러 위치로 동시에 물품을 운반하는 경우입니다.
-
단위당 비용: 고성능 로봇 한 대를 제작하는 대신, 단순하고 저렴한 로봇 여러 대를 사용하는 것이 전체 비용과 배치 유연성 측면에서 유리할 수 있습니다.
이러한 이점을 실제로 실현하려면 단순히 로봇 수를 늘리는 것 이상의 것이 필요합니다. 로봇 간의 충돌을 방지하면서 목표에 부합하는 집단 행동을 유지하는 제어 법칙이 필요합니다. 이것이 바로 군집 제어의 역할입니다.
3. 입력 정보는 무엇인가요?
각 로봇이 군집 제어에 사용할 수 있는 정보는 통신 및 센싱 방식에 따라 다음과 같이 분류할 수 있습니다.
-
자체 상태: 로봇 자신의 위치, 속도, 방향. 일반적으로 GPS, 주행 거리계 또는 VIO/LIO와 같은 자체 위치 추정 방법을 통해 얻습니다.
-
인접 로봇에 대한 상대 정보: 카메라, LiDAR 또는 UWB(초광대역) 거리 측정과 같은 센서로 직접 관찰한 주변 로봇의 상대 위치 및 속도.
-
통신을 통한 메시지: 다른 로봇에서 무선 링크를 통해 명시적으로 전송하는 위치, 속도, 의도(다음 이동 방향) 정보.
-
(중앙 집중식 설계에서) 중앙 노드로부터의 명령: 전체 군집의 상태를 추적하는 중앙 컴퓨터(예: 지상 스테이션)에서 개별 로봇에게 전달되는 목표 위치 또는 역할 할당.
중요한 점은 많은 실제 군집 제어 알고리즘이 "전체 군집의 완전한 상태"를 입력으로 요구하지 않는다는 것입니다. 몇몇 근접한 로봇의 상대적인 정보만을 사용하여 작동하는 알고리즘이 주류 접근 방식이며, 바로 이러한 방식 덕분에 로봇 수가 증가함에 따라 각 로봇이 처리해야 하는 정보량이 기하급수적으로 증가하는 것을 방지할 수 있습니다.
4. 우리가 해결하고자 하는 목표는 무엇인가? 출력은 무엇인가?
군집 제어는 궁극적으로 각 로봇에게 다음 순간에 어떻게 움직여야 하는지(속도 명령 또는 목표 위치)를 출력합니다. 이 출력이 달성하고자 하는 "전체의 바람직한 상태"는 목표에 따라 다음과 같은 범주로 나뉩니다.
-
합의(Consensus): 모든 로봇이 특정 상태량(위치, 속도 또는 추정치)을 하나의 공통 값으로 수렴시키는 것.
-
편대(Formation): 각 로봇이 다른 로봇들과 지정된 상대적 위치 관계(삼각형, 직선, 원 등)를 지속적으로 유지하는 것.
-
군집(Flocking): 명확한 목표 형태 없이, 군집이 하나의 응집된 덩어리처럼 움직이며, 이웃 로봇들과 속도를 맞추면서 충돌을 피하는 것.
-
작업 할당(Task allocation): 탐색, 운반 등 여러 가지 개별 작업 중 각 로봇이 어떤 작업을 수행할지 결정하는 것.
이 모든 과정은 "각 로봇의 로컬 출력을 누적하여 전체에 대해 의도된 집합적 속성을 만족시키는" 구조를 공유하며, 다음 섹션의 기본 아키텍처 다이어그램에서 이러한 누적 루프를 설명합니다.
5. 기본 아키텍처
각 로봇 내부에서 실행되는 처리 루프는 군집 제어 알고리즘과 관계없이 대략 동일한 네 단계를 따릅니다.
그림 1 — 각 로봇은 고주파 루프를 지속적으로 실행합니다. 이웃 정보를 수집하고, 로컬 규칙을 적용하고, 속도 명령을 내리고, 결과적인 움직임을 다음 주기의 감지에 피드백합니다.
이 루프는 여러 로봇에 걸쳐 동시에 실행되므로 개별 로봇이 전체 설계도를 알지 못하더라도 전체 군집이 질서 있는 행동을 보일 수 있습니다. "전체에 대한 정보를 누가 보유할 것인가"에 대한 설계 결정은 다음에 논의할 아키텍처 차이의 원인이 됩니다.
그림 2 — 중앙 집중식 아키텍처는 중앙 노드가 모든 로봇의 상태를 알고 명령을 보내는 스타 구조입니다. 분산형 아키텍처는 로봇들이 이웃 로봇들과만 정보를 교환하는 메시 구조이므로 중앙 노드의 오류가 전체 시스템을 멈추지 않습니다.
6. 대표 알고리즘
보이드 — 로컬 규칙으로 무리 짓기 운동 구현
보이드는 크레이그 W. 레이놀즈가 1987년 논문 "무리, 떼, 그리고 학교: 분산 행동 모델"에서 새와 물고기의 무리 짓기 운동을 컴퓨터 그래픽으로 재현하기 위해 제안한 모델입니다. 각 개체(보이드)는 이웃 로봇만 보고 세 가지 간단한 규칙에 가중치를 부여하고 합산하여 얻은 방향으로 움직입니다.
- 분리: 너무 가까운 이웃과의 거리를 유지하세요.
-
정렬: 자신의 속도를 이웃들의 평균 진행 방향에 맞추세요.
-
응집: 이웃들의 평균 위치를 향해 이동하세요.
이러한 규칙들에서 각 개체는 단지 몇몇 이웃의 상대적인 위치와 속도만을 알고 있을 뿐입니다. 전체 무리의 형태나 중심을 명시적으로 추적하는 개체는 없습니다. 그럼에도 불구하고, 단 세 가지 규칙의 중첩만으로 자연스러운 무리 운동이 나타납니다. 즉, 무리는 충돌을 피하면서 하나의 덩어리처럼 함께 움직입니다. 이러한 현상, 즉 "단순한 지역 규칙의 중첩에서 복잡한 전역 패턴이 나타나는 것"은 군집 제어 분야 전체를 관통하는 가장 기본적인 개념입니다.
잠재장 — 인력과 척력을 이용한 운동 생성
우사마 카티브(Oussama Khatib)가 1986년 논문 "조작기 및 이동 로봇을 위한 실시간 장애물 회피(Real-Time Obstacle Avoidance for Manipulators and Mobile Robots)"에서 제안한 인공 잠재장 방법은 원래 단일 로봇의 장애물 회피를 위해 고안되었지만, 목표 방향으로의 인력 잠재장과 이웃 로봇으로부터의 척력 잠재장을 결합함으로써 군집 제어에도 자연스럽게 적용될 수 있습니다.
목표에 가까워질수록 감소하는 인력 잠재장 U_{\text{att}}과 이웃 로봇에 너무 가까워질수록 급격히 증가하는 척력 잠재장 U_{\text{rep}}의 기울기를 따라 이동하는 것만으로도 다른 로봇과의 충돌을 피하면서 목표를 향해 나아갈 수 있습니다. 보이드(Boids) 분리 규칙은 본질적으로 이러한 척력 잠재장과 같은 개념입니다.
빅섹 모델과 합의 알고리즘 — 합의 형성의 수학
보이드(Boids)가 "동물의 움직임을 재현"한다는 공학적이고 시각적인 동기에서 탄생했다면, 물리학은 보다 단순화된 수학적 모델을 통해 무리 운동을 연구하는 다른 경로를 택했습니다. 1995년 타마스 빅섹(Tamás Vicsek)과 그의 동료들이 Physical Review Letters에 발표한 빅섹 모델은 보이드의 정렬 규칙만 추출한 것과 거의 같은 단순한 모델입니다. 이 모델에서 각 입자는 일정한 속도로 움직이며, 주변 입자들의 평균 진행 방향에 노이즈가 더해집니다. 이 모델은 노이즈의 강도에 따라 무리가 전체 그룹이 일관되게 움직이는 질서상과 움직임이 산발적인 무질서상 사이의 상전이를 겪는다는 것을 보여주었습니다.
이 빅섹 모델의 아이디어를 제어 이론적 관점에서 엄밀하게 형식화한 프레임워크가 바로 합의 알고리즘입니다. Reza Olfati-Saber와 Richard M. Murray가 2004년 IEEE Transactions on Automatic Control에 발표한 논문을 비롯한 여러 프레임워크에서, 각 로봇의 상태 x_i (위치, 방향, 추정치 등 무엇이든 될 수 있음)는 이웃 로봇과의 차이를 줄이는 방향으로 지속적으로 업데이트됩니다.
모든 로봇의 상태를 종합하면 \dot{\mathbf{x}} = -L\mathbf{x} 형태가 됩니다. L는 그래프 라플라시안이라는 행렬로, 통신 네트워크의 구조, 즉 누가 누구와 통신할 수 있는지를 나타냅니다. 통신 그래프가 연결되어 있는 한 (모든 로봇 쌍 사이에 직접 또는 다른 경로를 통해 연결되는 경로가 있는 한), 이 간단한 업데이트 규칙만으로도 모든 로봇의 상태가 하나의 공통 값으로 수렴한다는 것이 증명되었습니다. 이것이 바로 군집 정렬뿐만 아니라 시간 동기화, 추정치의 분산 평균화 등 다양한 문제에 적용 가능한 합의 알고리즘의 수학적 핵심입니다.
편대 제어 — 리더-팔로워, 가상 구조, 행동 기반
명시적인 기하학적 편대(삼각형, 일렬 등)를 유지하려면 보다 구체적인 목표를 가진 프레임워크인 편대 제어를 사용합니다. 대표적인 설계 접근 방식은 세 가지입니다.
-
리더-팔로워: 하나의 로봇(또는 일부 로봇)이 리더 역할을 하고, 나머지 로봇들은 리더를 따라가며 상대적인 위치를 유지합니다. 1998년 ICRA에서 Jaydev P. Desai, James P. Ostrowski, Vijay Kumar가 발표하고 2001년 IEEE Transactions on Robotics and Automation에 게재된 프레임워크가 대표적인 예입니다. 이 프레임워크는 그래프 이론을 사용하여 어떤 로봇이 누구를 따라갈지 명시적으로 설계합니다. 직관적이고 구현하기 쉽지만, 리더 로봇이 실패할 경우 전체 편대가 붕괴될 수 있다는 단점이 있습니다.
-
가상 구조: M. Anthony Lewis와 Kar-Han Tan이 1997년 논문 "가상 구조를 이용한 이동 로봇의 고정밀 편대 제어"에서 제안한 접근 방식으로, 전체 편대를 하나의 가상 강체 구조로 간주하고 각 로봇이 해당 구조 상의 고정된 위치를 따라 이동하도록 합니다. 이 방식은 편대 전체의 정확도를 높이지만, 전체 구조에 대한 목표 궤적을 계산해야 하므로 완전한 분산형 설계를 구현하기 어렵습니다.
-
행동 기반: Tucker Balch와 Ronald C. Arkin이 1998년 IEEE Transactions on Robotics and Automation에 발표한 접근 방식으로, "편대 유지", "목표 지점으로 이동", "장애물 회피"와 같은 여러 반응형 행동을 병렬로 계산하고 가중치를 부여하여 실제 움직임을 생성합니다. Boids와 유사한 방식으로 각 로봇에게 높은 자율성과 견고성을 제공하지만, 편대의 기하학적 정확도는 다른 두 접근 방식보다 떨어지는 경향이 있습니다.
7. 알고리즘의 차이점
| 방법 | 원리 | 정확도 (형성 정밀도) | 통신/계산 비용 | 견고성 (부분적 오류/통신 손실에 대한 내성) | 구현 난이도 |
|---|---|---|---|---|---|
| 보이드(Boids) | 세 가지 규칙(분리, 정렬, 응집)의 중첩 | 명시적인 형성 규칙 없음 (그룹 응집만 적용) | 낮음 (이웃이 소수에 불과) | 높음 (중심 요소 없음) | 낮음 |
| 포텐셜 필드(Potential Field) | 인력/척력 포텐셜에 대한 경사 하강법 | 중간 (지역 균형에 따라 다름) | 낮음 | 높음 | 낮음 |
| 합의 알고리즘 (Vicsek/Olfati-Saber 계열) | 이웃과의 차이를 줄이는 업데이트 규칙; 그래프 라플라시안을 통해 수렴 보장 | 합의된 양에 따라 정확하게 수렴 | 낮음 (이웃 간 통신만 사용) | 통신 그래프가 연결되어 있으면 높음 | 중간 (수렴에 대한 수학적 이해 필요) |
리더-팔로워 | 리더에 대한 상대적 위치 유지 | 높음 (리더에 대한 상대적 정확도 높음) | 중간 (리더 정보 전파 필요) | 낮음 (리더 이탈 위험 높음) | 낮음 |
가상 구조 | 전체 대형을 하나의 강체로 취급 | 매우 높음 | 높음 (전체 구조의 궤적 계산 필요) | 중간 (구조 재계산 비용 높음) | 높음 |
행동 기반 | 여러 반응 행동의 가중치 조합 | 중간 (행동 간의 절충에 따라 다름) | 낮음 | 높음 | 중간 (행동 설계 및 조정 필요) |
일반적으로 대형의 기하학적 정확도(가상 구조)를 우선시할수록 정보 공유 및 계산 비용이 증가하고, 분산화 및 견고성(Boids, 행동 기반)을 우선시할수록 대형 자체의 정확도는 희생됩니다. 합의 알고리즘은 이론적으로 다루기 쉬운 두 가지 극단적인 방식 사이의 중간 지점에 위치하여 "엄격한 수학적 수렴 보장"과 "이웃과의 통신만 필요로 하는 분산화"를 모두 달성합니다.
8. 어려움/난제 환경
군집 제어의 구현 및 운영에서 발생하는 많은 어려움은 단일 로봇 제어에는 없는 집단 특유의 문제입니다.
-
통신 지연 및 연결 끊김: 대부분의 합의 알고리즘 수렴 보장은 통신 그래프가 연결되어 있다고 가정합니다. 실제 환경에서는 무선 범위나 장애물로 인해 통신이 끊기거나 지연될 수 있으며, 이러한 가정이 무너지면 합의가 수렴하지 않거나 잘못된 값으로 수렴하는 등의 문제가 발생합니다.
-
확장성: 중앙 집중식 아키텍처에서 중앙 노드의 연산 부하와 통신 대역폭 요구 사항은 로봇 수가 증가함에 따라 급격히 증가하며, 특정 수를 넘어서면 실시간 성능을 유지할 수 없습니다. 분산형 아키텍처에서도 이웃이 많은 밀집 환경에서는 감지 및 통신 부하가 증가합니다. - 국소 최소값 및 교착 상태: 잠재장 기반 방법은 여러 반발력과 인력이 균형을 이루는 "국소 최소값"에 로봇이 갇혀 목표에 도달하지 못하게 할 수 있습니다(대표적인 예로 여러 로봇이 동시에 좁은 통로로 진입하려는 교착 상태를 들 수 있습니다).
-
불충분한 내결함성 설계: 분산형 설계는 이론적으로 부분적인 고장에 강건하다고 하지만, 실제로는 리더-팔로워와 같이 내재적인 비대칭성을 가진 설계에서 예상보다 취약한 고장 모드가 발생할 수 있습니다.
-
혼합된 이질적인 로봇 및 센서: 로봇 모델과 온보드 센서가 균일하지 않은 실제 환경에서는 각 로봇이 얻는 정보의 정밀도와 빈도가 다르며, 단일 이상화된 모델을 기반으로 하는 알고리즘은 그대로 제대로 작동하지 않는 경향이 있습니다.
9. 실제적인 선택
군집 제어 알고리즘을 선택하는 방법은 주로 응용 분야에서 "편대 정확도"와 "견고성/분산성" 중 무엇을 우선시하는지에 따라 달라집니다.
-
드론 쇼: 미리 정해진 궤적과 대형을 매우 높은 정밀도로 표현해야 하며, 많은 생산 시스템은 중앙 집중식/가상 구조에 가까운 설계를 채택하여 각 드론에 미리 계산된 궤적을 분배합니다(자율적인 비행 중 의사 결정보다는 정확도와 재현성이 우선시됨).
-
창고/물류 로봇 군집: 많은 운반 로봇은 동적으로 변화하는 작업(어떤 선반에서 어떤 목적지로)을 분담해야 하며, 중앙 관리 시스템이 작업 할당을 처리하고 개별 로봇의 경로 생성 및 충돌 회피는 분산 방식으로 처리되는 중앙 집중식/분산식 혼합 설계가 일반적입니다. 경로 계획의 기본 사항은 경로 계획 입문을 참조하십시오.
-
재난 수색, 농업 모니터링 및 기타 광역 감시: 이러한 환경에서는 통신이 불안정한 경향이 있으므로, 중앙 제어에 대한 의존도가 낮은 분산형 접근 방식(Boids와 같은 군집 행동 또는 합의 기반 감시)이 선호됩니다. 개별 로봇의 행동 결정은 종종 행동 계획 프레임워크와 결합됩니다.
-
소규모 연구 및 교육용 군집 로봇: 로봇 수가 적고 통신이 안정적인 실험 환경이므로, 편대 정확도를 추구하는 가상 구조 또는 리더-팔로워 방식이 채택되는 경향이 있습니다.
어떤 응용 분야이든, "작동할 로봇의 수는 몇 대인가?", "통신 환경은 얼마나 안정적인가?", "편대 정확도 또는 견고성 중 어떤 것이 고장에 대한 허용치가 낮은가?"라는 세 가지 질문에 대한 답을 찾는 것이 군집 제어 아키텍처를 선택하는 출발점입니다.
10. 요약 (세 줄 요약)
-
군집 제어는 각 로봇이 이웃에 대해 가진 제한된 정보만을 사용하여 지역 규칙으로부터 전체 그룹의 질서 있는 행동을 만들어내는 프레임워크입니다.
-
보이드(Boids)와 잠재장(potential field) 방법은 분산된 군집 운동을 구현하는 반면, 합의 알고리즘은 그래프 라플라시안을 통해 수학적으로 확립된 수렴 보장을 통해 합의 형성을 구현합니다.
-
리더-팔로워, 가상 구조, 행동 기반 편대 제어는 편대 정확도와 견고성/분산성 사이의 절충점에서 서로 다른 위치를 차지하며, 적용 분야에 따라 선택해야 합니다.
지역 충돌 회피가 군집의 전역적 임무를 보장합니까?
지역적 안전성과 전역적 도착 또는 범위는 다릅니다.
통신 범위, 교착 상태 및 단편화를 평가합니다.
댓글
먼저 로그인해 주세요.
아직 데이터가 없습니다.