(주)마이크로시스템 소프트웨어 개발자 채용
연구동향
조회수 16386 좋아요 7 댓글 0
ICRA 2020 참관기
장인모 (The Univ. of Manchester)





본 참관기는 (1) COVID-19으로 인해 Virtual Conference로 치러진 ICRA(IEEE International Conference on Robotics and Automation) 2020을 간략하게 소개하고, (2) ICRA2020에 소개된 멀티로봇/스웜 로봇(Multi-Robot Systems/Swarm Robotics)관련 연구에 대한 동향 (기관별/국가별 논문 편수, 연구주제별 논문 편수, 논문에 사용된 방법론 등)을 살펴본다. (3) 그리고 세부 연구 주제별로 인상적인 연구에 대해서 한두 편씩 조금 더 자세히 소개하도록 한다.

본 참관기를 통해 (1) 일반 대중 및 연구자에게는 멀티로봇/스웜 로봇 관련 연구가 어떤 것이 있는지 소개될 수 있는 기회가 되기를 바라며, (2) 현업에서 직접 관련 연구/개발/사업을 하는 사람들에게는 본 참관기에서 소개될 최신 연구 동향 및 분석이 그들의 업무에 직간접적으로 도움이 되기를 바람이다.


ICRA(IEEE International Conference on Robotics and Automation)는 IROS(IEEE/RSJ International Conference on Intelligent Robots and Systems) 및 RSS(Robotics: Science and Systems) 등과 함께 전 세계 로봇 연구자들이 가장 참여하고 싶어 하는 컨퍼런스중 하나이다. 요즘 영국에서 로봇 분야로 신규 교수로 임용되는 사람들을 보면 웬만한 중저수준 저널 논문보다는 ICRA/IROS/RSS 실적 및 인공지능 관련 학회 실적을 바탕으로 교수로 임용되는 추세가 나타나는 것으로 보일 정도이다 (저자 개인 의견). 실제로 Amazon, NVIDIA, Bosch 등 글로벌기업의 로봇 관련 연구직(Research Scientist, Applied Scientist) 혹은 글로벌 탑 스쿨 박사후연구원(Postdoc)직에 대한 공고를 살펴보면 ICRA/IROS/RSS/CVPR/ICCV/ECCV/NeurIPS/CoRL 등의 실적을 우대 및 요구하기도 한다.

COVID-19의 영향으로 전 세계 많은 국가가 록다운(lockdown) 이 되는 가운데 올해 상반기 대부분의 컨퍼런스는 온라인으로 진행되었고, ICRA 2020 역시 예외가 아니었다. 온라인으로 진행되는 만큼 기존의 형태와 많은 것이 달라졌다. 첫째로는, 대략 1주일 동안 Offline conference로 진행되었던 형식에서 벗어나, 5월 말부터 8월 말까지 3개월간 Virtual conference로 진행이 되었다. 둘째로는, 일반적으로 컨퍼런스는 (1) Keynotes, (2) Workshop & Tutorial, (3) Main Sessions (4) Exhibition 등으로 구성되는데, 활발한 Discussion이 많이 일어나는 Keynotes와 Workshop & Tutorial은 실시간으로 진행하는 반면 (일부는 Recorded talk와 실시간 질의응답으로 진행), Main sessions는 On-demand 형식으로 3개월 동안 언제나 Recorded talk를 시청할 수 있게 하였다. Main sessions 용 질의응답은 Slack에 개별 채널을 개설하여 저자와 별도로 소통할 수 있게끔 구성하였다. 셋째로, 무엇보다 등록비를 아주 저렴하게 Non-member 기준 150유로 (Non-member student는 25유로)로 책정하였다. 일반적인 컨퍼런스에 비해서 시간/비용적으로 훨씬 경제적이기에 접근성 측면에서 훨씬 향상된 형태라고 생각되며, 아마도 예년보다 더욱더 많은 사람들이 참여하였을 것으로 예상이 된다.

개인적으로는 이러한 형태의 Virtual Conference는 정보 전달의 측면에서는 훨씬 유용했다고 생각한다. 발표 영상을 멈춰가면서 시청하고 논문도 같이 병행해서 봄으로써, 연구 내용 파악이 더욱 용이했다. 아무리 해외에서 유학하고 연구원으로 경험을 했다고 하더라도, 가끔은 부족한 영어 능력으로 인해 소통의 어려움을 겪는 경우가 있는데, 그런 것 없이 Slack을 통해서 명확하게 Discussion을 할 수 있다는 측면에서도 유용했다고 생각한다. 하지만 상대방과 실제로 보면서 소통하는 것이 아니었기에, Potential Collaboration에 대해 논의를 하기 어렵다는 점과 Networking 측면에서 제한이 많았다는 점이 제일 아쉬운 부분이었다.




ICRA2020에서는 총 261개의 세션(Session) (Award 세션 제외)이 진행되었으며, 각 세션당 6편의 논문이 발표되어 대략 총 1,566개의 발표가 있었다. 그 중에서 멀티로봇/스웜로봇(Multi-Robot Systems/Swarm Robotics) 관련 세션은 다음과 같이 11개가 있었다.

o Multi-Robot Systems I, II, III, IV, V, VI, VII
o Aerial Systems: Multi-Robots
o Swarms
o Path Planning for Multiple Mobile Robots or Agents I, II



본 참관기에서는 위 세션에서 발표된 (일부 발표 영상이 없거나 세션이 잘못 배정된 연구를 제외하고) 총 61편의 연구 결과를 간략하게 분석해보았다. (1) 국가별/기관별로 어느 곳에서 많은 결과가 나왔는지 살펴볼 것이며, (2) 어떤 연구주제가 가장 많이 다뤄졌는지, (3) 어떤 방법론들이 많이 쓰였는지 살펴볼 것이다. 참고로 Disclaimer를 언급하자면, 다른 세션(Autonomous Driving 등)에도 멀티로봇 시스템 연구가 있을 수 있는데, 다른 세션에 포함된 연구 내용은 본 참관기 및 분석에 포함하진 않았다. 참고로, 분석에 사용된 Raw data 및 논문 리스트는 다음의 link에 포함되어있다. (https://docs.google.com/spreadsheets/d/1uwYMiOw3lmmeKiXDtcIdHY_I7AhkBHkhE-8A4kjk3Go/edit?usp=sharing)




먼저 국가별/기관별 논문 개수를 살펴본다. 논문 한 편은 소속이 다른 여러 공저자의 결과물인 경우가 대부분이지만, 본 분석에서는 실제로 논문이 1편이더라도 공저자 소속기관별로 별도의 “+1편”이라고 간주하였다. 예를 들어, 논문 A를 G 대학, M 대학, S 대학이 함께 공저했다면, 기관별로 논문 편수에 +1을 하였다. 유사하게 논문 B를 H 대학에서 10명이 함께 공저했다고 하더라도, H 대학에만 +1을 하였다. 이러한 분석방식으로 기관별 연구기여도를 절대적으로 살펴볼 수는 없겠지만, 다른 기관과의 협력 정도가 반영된 결과를 볼 수 있을 것이라 생각한다.



Figure 1을 보면, 국가별로는 압도적으로 미국에서 제일 많은 연구 결과(총 41편)가 나왔다. 즉 총 61편의 연구 중에서 67%의 연구가 미국 기관들이 주도/협력한 연구였다. Figure 2를 보면, 세부적으로는 Georgia Tech, University of Pennsylvania, Stanford University, Carnegie Mellon University, Virginia Tech 등에서 각각 7편, 5편, 4편, 3편, 3편의 연구성과를 내었다. 다음으로는 영국, 캐나다, 중국, 이탈리아에서 각각 6편, 5편, 5편, 5편의 연구성과를 발표했다. 영국에서는 6편 중 University of Cambridge에서 3편이 나왔고, 캐나다에서는 5편 중 Ecole Polytechnique De Montreal, University of Toronto에서 각 2편씩 나왔다. 중국에서는 5편 중 Harbin Instute of Technology에서 2편이 나왔다. 이탈리아는 5편 중 University of Modena and ReggioEmilia에서 2편이 나왔다.

좀 더 세부적인 특징을 살펴보자면 Georgia Tech에서 나온 7편의 연구 중 6편이 Magnus Egerstedt 교수가 관여된 논문인데, 해당 랩에서 2017년 ICRA에서 보여준 Robotarium이라는 원격 스웜로봇 실험플랫폼[1]의 기여가 큰 것으로 보인다. 멀티로봇/스웜로봇 연구의 가장 큰 진입장벽 중 하나가, 아무리 새로운 알고리듬을 개발하여도 실험적으로 테스트하기가 어렵다는 점인데, Robotarium을 통해 원격으로 실험을 진행할 수 있다고 알려져 있다. 실제로도 이번 ICRA2020내 꽤 많은 연구가 Robotarium을 통해 제안 방법을 실험적으로 구현하였고, 그러다 보니 Egerstedt 교수가 공저자로서 많이 참여한 것으로 보인다. 참고로 최근(2020년 8월 20일) MATLAB Youtube 채널에 Robotarium에 대한 Keynote (ACC 2020 Special Session)가 공유되기도 하였다.

(https://youtu.be/rwN-FNWuJZY)








멀티로봇/스웜로봇분야는 다른 로봇 분야와 마찬가지로 여러 가지 분야 지식이 복합적으로 필요하고, 아주 다양한 주제로 연구가 진행되고 있다. 본 참관기에서는 ICRA2020에 소개된 61편의 멀티로봇/스웜로봇분야 논문을 대략적이고 큰 개념에 따른 주제로 분류해보았다. 앞선 분석과 유사하게, 논문 A가 연구주제 a, b, c를 혼합하여 다루고 있는 경우, 각 주제별로 “+1”편이라고 간주하고 통계를 내었다.





가장 주된 연구 주제는 Multi-Robot Path Planning이었다 (16편, 26.2%). Path Planning은 큰 개념으로는 Motion Planning의 한 세부분야로 볼 수 있는데, 주어진 목적지가 있을 때 모바일로봇/드론이 주어진 환경(장애물 회피 등)을 고려하여 어떻게 경로를 목적에 맞게 최적화할 것인지에 대한 연구이다. 그중에서도 Multi-Robot Path Planning은 로봇 간에 발생할 수 있는 충돌/갈등(진로 방해 등)을 고려해서 경로계획을 해야 한다는 점이 차별점이라고 할 수 있다. 16편의 논문 중 11편의 논문이 Path Planning에 집중된 연구였고, 5편은 Task Allocation과 혼합된 연구주제였다. 전자의 경우, 목적지가 주어졌다고 가정하고 경로계획에 초점을 맞춘다면, 후자는 목적지를 어떻게 할당할 것인지(즉, 어느 로봇이 어느 임무/위치를 향해 움직여야 하는지)도 함께 고려해서 경로계획을 하는 연구이다.

두 번째로는 Communication Network와 관련된 주제였다. 현재 Amazon 등 산업계에서 사용되는 멀티로봇 시스템은 “중앙에서 모든 로봇을 컨트롤하는 방식(Centralisation)”이지만, 최근 학계에서 연구하고 있는 멀티로봇 시스템은 “개별 로봇이 스스로 주변 로봇과 소통하면서 협력하는 방식”인 분산화(Decentralisation)를 거의 기본 전제로 하고 있다. 따라서 로봇 간의 Communication Network 연결이 중요한 이슈인데, 이번 ICRA2020에서는 12편의 연구 (약 19.6%)가 이러한 주제와 관련된 것이었다.

세 번째는 Formation Control이었다 (11편, 18.0%). 이 분야는 로봇들이 주어진 Formation에 맞는 상대적인 위치를 유지하게 하는 제어 방법과 관련된 연구(예를 들면 드론쇼)가 전통적인 주제였다. 하지만 이번에는 11편 중 5편이 앞서 2위를 차지한 Communication Network와 혼합된 연구주제였다. 예를 들면, 멀티로봇이 임무 수행을 위해서는 최소한 일정한 주기 안에서 서로가 통신 범위 안에 위치해야 하는데, 이를 위해서 로봇들이 어떠한 형태로 Formation(즉 Network Topology)을 만들어야 하는지를 다루는 연구이다.

네 번째는 Task Allocation이었다 (8편, 13.1%). 앞서 1위를 차지한 Path Planning과 연계된 연구가 8편 중 5편이었다.

다섯 번째는 Cooperative Estimation이었다 (7편, 11.5%). 멀티로봇을 여러 지역으로 동시에 보냄으로써 개별 로봇은 각 위치에서 목표 대상물에 대한 Local Information을 획득하고, 이것을 다시 다른 로봇과 정보교환을 함으로써 전체 시스템 레벨에서 Sensor fusion을 하는 것을 목적으로 하는 것과 관련된 연구라고 볼 수 있다.

여섯 번째는 Coverage Problem이었다 (5편, 8.2%). 예를 들면, 한 번에 여러 로봇청소기를 보내서 큰 공간을 청소하려고 할 때 로봇들이 각자 어느 지역을 담당하고 어떻게 움직여야 하는지를 주제로 하는 연구이다.

일곱 번째는 Localisation인데 (4편, 6.6 %), 어떤 면에서는 이것도 멀티로봇이 각자의 위치를 (다른 로봇이 가진 정보를 활용하여) 협력하여 Estimation 한다는 측면에서 Cooperative Estimation이라고 볼 수도 있는데, 본 분석에서는 이를 구분하였다. 만약 두 항목을 하나로 간주하였다면 Cooperative Estimation은 11편으로 공동 3위의 주제가 되었을 것이다.




멀티로봇/스웜 로봇 분야 연구에서 주로 사용되는 기초이론 및 방법론이 무엇인지 살펴보았다. 사실 논문별로 세부적으로 살펴보면 사용되는 방법론이 서로 아주 다르지만, 대략적인 개념으로 분류하였다. 본 분석에서 사용된 분류항목은 사실 서로가 레벨이 맞지 않기도 한다. 예를 들면 Optimisation이나 Control Theory 같은 경우는 아주 광범위한 주제이고 관련 서적도 어마어마하게 많은 반면, Control Barrier Function 같은 경우는 (Optimisation 안에 포함된다고도 간주할 수 있는) 세부적인 Technique이다. 하지만 이렇게 세부적인 레벨의 항목이더라도 61편의 논문 중에서 특징적으로 많은 언급이 되어있는 경우에는 별도의 항목으로 구분하였다. 본 분석을 통해 멀티로봇/스웜 로봇을 연구하거나/하고자 하는 연구자에게, 새롭게 혹은 좀 더 깊이 있게 살펴봐야 할 키워드가 무엇인지 소개하고자 한다.




Figure 4에서 보여주듯, 가장 많이 사용된 방법론은 Optimisation 이었다 (20편, 33%). 세부 키워드로는 QP (Quadratic Programming), MILP (Mixed Integer Linear Programming), MISP (Mixed Integer Semidefinite Programming), Combinatorial Optimisation, Model Predictive Control, Ant Colony Optimisation, Bilevel Optimisation 등이 있었다.

두 번째는 Graph Theory이었다 (19편, 31%). 많은 경우 멀티로봇 시스템을 모델링할때 로봇을 Node로 로봇 간의 Communication을 Edge로 표시하여 Graph로서 나타내는데, 그래서 Graph Theory가 많이 사용되는 편이다.

공동 3위로는 Control Theory와 Sensor Fusion (Estimation Theory/Probability Theory 등)이었다 (13편, 21%). 다섯 번째로는 Control Barrier Function이었다 (5편, 8.2%). 이것은 앞서 언급했듯 큰 주제의 방법론이라고 보기는 어려운데, 5편이나 이 개념을 적용하여 연구 결과를 발표하였다. 주로 로봇 간의 충돌 회피 등을 위해서 적용이 되었다.

여섯 번째로는 DNN(Deep Neural Network) 이었다 (4편, 6.6%). 최근 인공지능 분야의 발달로 DNN은 많은 연구 분야로 접목이 되어가고 있고, 로봇 분야도 이러한 현상은 마찬가지라고 생각된다. 하지만, 멀티로봇/스웜로봇 분야는 아직은 그 융합의 정도가 상대적으로 적다고 개인적으로 느끼고 있었는데, 본 통계가 보여주듯 아직 7% 미만의 연구만이 DNN을 적용하고 있었다. DNN을 적용한 방식이 Low-level control 측면에서는 많은 성과를 보여주고 있어서 타 로봇 분야에서는 많이 사용되는 데에 비해, 멀티로봇 시스템 분야는 주된 연구 초점이 High-level coordination이라 DNN 방식 보다는 전통적인 Optimisation 방식이 아직은 선호되는 것 같다.






일반적인 Path Planning 연구와 달리, Multi-Robot Path Planning 연구에서는 로봇 간의 충돌을 방지하는 경로를 계획하는 것이 주된 이슈이다. 특히 분산화된 시스템(Decentralised System)에서는 로봇들이 알아서 Coordination이 되어야 하며 필요시 다른 로봇에게 길을 양보함으로써 임무가 진행되어야 한다. 하지만 만약 좁은 길을 따라 반대편으로 넘어가야 하는 마주하는 두 로봇이 있다고 할 때, 서로 먼저 지나가려고만 하면 충돌이 일어날 것이고, 서로 양보만 하려고 해도 누구도 그 길을 건너지 않음으로 임무가 진행되지 않는다. 이러한 현상을 Deadlock이라고 하는데, 아래와 같은 두 연구가 간단한 아이디어로 이것을 해결하였다.


A. Weighted Buffered Voronoi Cells for Distributed Semi-Cooperative Behavior (MIT, US) [2]


본 연구의 아이디어는 기본적으로 Buffered Voronoi Cell을 사용하는 것이다. 각 로봇은 각자의 Cell 영역내에서 목적지를 향하여 이동하고, 변경된 위치를 기반으로 새로운 Voronoi Cell을 만들고 다시 이동하는 것을 반복적으로 수행함으로써, 충돌회피를 이뤄내는 방식이다. Deadlock 해결을 위하여 Righthand rule을 적용하였는데, 쉽게 표현하면 회전교차로(Roundabout)같은 개념이라고 생각하면 된다. 두 로봇이 가까워지면 서로 오른쪽으로 회전함으로써 충돌을 회피하는 방식이다. 사실 본 연구의 Main contribution은 각 로봇의 Selfishness특성을 반영하였다는 점이었는데, 빨리 이동하고자 하는 로봇에게는 높은 Weight를, 양보를 많이 하고자하는 로봇에게 낮은 Weight를 부여한 Weighted Voronoi Cell안에서 로봇의 움직임을 제한하였다. 실제 활용시에는 각 로봇의 임무수행에 따른 중요도에 따라 Selfishness를 높임으로써, 긴급임무를 수행하는 로봇을 먼저 이동할수 있도록 하는데에 사용될 수 있다고 생각한다.




(발표동영상: https://youtu.be/AzLwY8K3VHY)




B. Multi-Robot Path Deconfliction through Prioritization by Path Prospects (University of Cambridge, UK) [3]



로봇마다 목적지를 향한 경로 옵션 개수가 다를 수가 있다. 본 연구는 이러한 특성을 활용하여 적은 숫자의 Path options이 있는 로봇에게 경로를 선택할 수 있는 높은 Priority를 부여하는 방식으로 로봇들을 Coordination 한다 (Figure 6 참조). 예를 들면, 타인과의 갈등상황에서도 만약 우리에게 여러 가지 옵션이 있다면 굳이 한가지 옵션만 고집하지 않고 해당 옵션을 상대방에게 양보함으로써 조화롭게 살아갈 수 있는데, 본 연구에서는 이러한 아이디어를 멀티로봇 시스템에 적용했다고 볼 수 있다. 본 연구에서 소개된 방식으로 로봇에게 Priority를 부여할 수 있다면, Path planner 자체(A* 등)는 어느 것을 사용해도 상관이 없다는 측면에서, Additional plug-in으로서 활용성이 높은 연구라고 생각한다. Priority를 주는 방식을 제안방식과 기타 여러 가지 방법 6개를 비교하였는데, 실험적으로 Pareto optimal을 얻었다고 한다.
 



산업계에서 멀티로봇 시스템이 사용되는 대표적인 예시는 Amazon 및 Ocado 등의 자동물류창고이다. 이 두 경우 모두, 2D 공간을 바둑판 같은 Grid space로 정의하고 그 위에서 로봇들이 움직이게 되는데, 아래의 두 연구가 이러한 Grid space 하에서의 Path Planning을 다루었다.



C. Walk, Stop, Count, and Swap: Decentralized Multi-Agent Path Finding with Theoretical Guarantees (Northwestern University, US) [4]


본 연구에서 로봇이 취할 수 있는 동작은, 이동하거나 (Walk), 멈추거나 (Stop), 기다리거나 (Count), 자리를 바꾸거나 (Swap) 하는 등 총 4가지가 있다. 특히 다른 로봇과 마주하게 되어 갈등상황에 놓여있을 때 Count와 Swap을 적절히 사용함으로써 멀티로봇의 경로계획을 수행한다. 본 연구에서는 이러한 Heuristics를 사용하였더라도, 제안 알고리듬에 대한 이론적인 분석(Completeness, Optimality, Complexity 등)을 자세하게 하였고, 실제 로봇 실험으로도 구현을 보여주었다. 성능 결과를 보면, Distance 측면에서는 대부분의 경우에 성능이 좋은 것 같으나 (다른 로봇을 고려하지 않은 Nominal Path 대비, 2~12배 증가), Makespan 측면에서는 경우에 따라서 1배에서 500배까지 되는 것으로 변동 폭이 심한 것으로 보인다. 또한 아직 Deadlock문제가 완벽한 해결되지 않았다고 한다.




D. DDM: Fast Near-Optimal Multi-Robot Path Planning Using Diversified-Path and Optimal Sub-Problem Solution Database Heuristics (Rutgers University, US)[5]


본 연구에서는 특히 로봇의 목적지가 갑자기 바뀌는 Dynamic 한 상황에서도 빠르게 replanning을 할 수 있는 방법을 제안하였다. 기본적으로 두 단계로 이루어져 있는데 (Figure 8 참조), 먼저 개별로봇에 대하여 A*등의 Path planner로 초기경로계획(다른 로봇과의 충돌은 일단 무시)을 수행한다. 그리고 임의의 두 로봇의 예상되는 충돌지점에서 Path diversification이라는 개념과 Local solution database를 이용해서 충돌 회피를 구현을 한다. Path diversification은 앞서 [3] 에서 선보인 것과 비슷하게 두 로봇 중에 경로를 양보할 수 있는 로봇이 우회로를 선택하게끔 유도하는 방식이다. Local solution database는 일어날 수 있는 충돌 경우의 수를 고려하여 미리 database를 구축하여 국소적인 충돌 회피 경로를 빠르게 도출하게 하는 방식인데, 이것은 주어진 환경이 Grid space라는 가정이기 때문에 가능한 방법이다.





다양한 시뮬레이션 결과를 선보였는데, 69 x 36 grid warehouse 환경에서 200개 및 300개의 로봇에 대한 경로계획 결과(Figure 9)를 각각 0.1초 및 0.5초 안에 산출한다는 점이 인상적이었다.



(동영상:https://youtu.be/0MUGrg5CphM)
 





다음의 세 논문은 Aerial Swarm Robots를 위한 Path Planning에 대한 연구이다. Aerial Swarm을 위해서는, 앞서 소개했던 2차원에서의 연구와는 달리, (1) 드론의 Flight Dynamics를 고려한 Feasible smooth path 생성을 할 수 있어야 하고, (2) 드론이 빠르게 움직이는 만큼 충돌 회피를 위해 더욱더 빠른 Computation이 요구된다.


E. Efficient Multi-Agent Trajectory Planning with Feasibility Guarantee Using Relative Bernstein Polynomial (Seoul National University, S Korea) [6]


본 연구는 61편 중 유일하게 한국에서 나온 연구로서 Award Candidate로 뽑힌 연구이다. 드론의 Feasible path를 얻기 위해 Bernstein polynomial이란 것을 이용하였고, 장애물 및 다른 드론과의 충돌 회피를 위해서는 Safe Flight Corridor라는 Safezone 개념을 이용하였다. Sequential Convex Programming에 기반한 기존연구[7] 대비 계산 시간이 적게 소요되었으며 (제안연구는 0.65초, 기존연구는 2.8~156초), 충돌 회피 측면에서도 훨씬 높은 Safety Margin Ratio를 보여주었다 (제안연구는 101%, 기존연구는 12~96%). 하지만, 경로 자체는 조금 더 길어진 측면이 있었는데 (제안연구는 90.7 m, 기존연구는 77.3 m), 실제 활용단계에서는 안전성이 더욱 중요하므로 이 정도의 degradation은 크게 문제가 되지 않는다고 생각된다.




(동영상: https://youtu.be/zzHHOYPARiM)



F. Online Trajectory Generation with Distributed Model Predictive Control for Multi-Robot Motion Planning (University of Toronto, Canada) [8]



본 연구도 앞서 소개한 연구[6]와 아주 유사한 주제(Online Point-to-Point Path planning)를 다루고 있다. 기본 아이디어는 MPC(Model Predictive Control)를 활용하여 Time horizon 내에서 충돌 회피를 고려한 Discrete path를 먼저 구하고, Bezier curve를 활용하여 초기경로를 smooth 하게 만드는 방식이다. 로봇 간의 충돌 회피를 위해서 On-demand collision avoidance strategy [9]를 활용하였는데, 이는 [2] 에서 소개된 Buffered Voronoi Cells와 유사하게, 각 로봇은 주어진 영역에서만 움직일 수 있도록 제한하는 방식이되, Deadlock을 해소하는 방식에서 조금 차별점이 있는 방식으로 보인다.





(발표동영상: https://youtu.be/zXNARg6eiaI)




10대의 초소형 드론을 활용한 실험 영상이 인상적이었는데, 중간에 한 개의 고리를 통과하여 양쪽에 5대가 반대편으로 움직여야 하는 상황에서도 충돌 없이 위치변경을 잘 수행하였으며(Figure 11), 중간에 사람이 개입하여 드론의 위치를 갑작스럽게 바꾸더라도 곧바로 replanning을 수행하여 원래의 목적 위치로 이동하는 모습(영상링크 참조)을 보였다.





멀티로봇 시스템은 “개별 로봇들끼리 서로 Network로 연결”되어 있어야 하며, 기존의 많은 연구는 이것을 기본전제로 해왔다. 특히 분산화된 시스템(Decentralised system)의 경우에는, 각 로봇의 통신반경 범위 안에 있는 주변 로봇만이 Network로 연결이 되고, 그 안에서 일어나는 정보공유를 기반으로 임무를 수행해야 한다. 하지만, 통신반경 범위보다 더욱더 넓은 범위에서 임무를 수행하는 상황에서는 일부 로봇은 통신 중계(communicaton relay) 역할을 수행하여야 하는데, 해당 로봇들이 어떤 Formation으로 위치를 할 것이며 어떤 형태로 Network topology를 구성할 것인지가 새로운 이슈가 된다. 전체 로봇 중에서 일부를 “통신 중계”로 사용해야 하고, 그만큼 “임무”로 사용되는 로봇의 숫자는 감소하게 되기 때문에, 여기에서 Tradeoff 관계가 나타난다고 볼 수 있다. 이러한 Challenge는 “어느 로봇이 본연의 임무를, 어느 로봇이 통신 중계 역할을 해야 하는지 결정”해야 한다는 부분에서 Task Allocation 성격도 있고, “통신 중계 로봇이 어떤 형태로 Formation을 구성해야 하는지”를 다루는 측면에서는 Formation Control 분야와도 연관이 된다. 다음 두 편의 연구도 이러한 주제를 다루고 있다.


A. Mobile Wireless Network Infrastructure on Demand (University of Pennsylvania, US) [10]


본 연구는 Task performing agents와 Network providing agents를 일단 구분하고, Network providing agents의 Formation Control에 관한 주제를 다루었다. 전자 그룹이 임무수행을 하다보면 위치를 바꾸게 되고 그에 따라 요구되는 Network relay topology 형태도 바뀌게 되는데, 이에 따라서 Network providing agents 역시도 위치를 같이 Controller를 구현하였다. 6개의 로봇이 넓은 원형의 테두리를 Patrol하는 것을 적용예시로 시뮬레이션을 구현하였는데(Figure 12), 3개의 로봇이 순찰을 하고 3개의 로봇은 가운데에서 Mobile network relay system의 역할을 수행을 하였다. 3개의 Fixed network relay system을 둔 형태와 비교하였는데, 이러한 방식은 Task performing agents가 너무 멀어지게 되는 경우 Network connection이 가끔씩 끊기기도 했다. 하지만 제안방식으로 Mobile network relay system을 사용하면 전체 멀티로봇시스템의 Network가 항상 연결될수 있음을 보여주었다.





B. Synthesis of a Time-Varying Communication Network by Robot Teams with Information Propagation Guarantees (University of Pennsylvania, US) [11]


본 연구도 앞서 소개한 연구[10]와 유사하게 Time-varying communication network를 구현하는 것을 목표로 하고 있다. 하지만 주된 차이점은, sup>[10]에서는 “Network가 항상 연결”되게 하는 것을 목표로 한다면, 본 연구에서는 “Network가 주기적으로 연결만 된다면 가끔은 끊어져도 괜찮다”라는 것을 고려하고 있다.

17개의 로봇이 17개의 건물의 테두리를 순찰하는 상황을 시뮬레이션으로 구현하였는데(Figure 13), 로봇들의 Communication radius가 주변 이웃 로봇들과만 가끔 연결이 되더라도, 제안 방법을 이용하는 경우, 궁극적으로는 전체 멀티로봇 시스템에 Information consensus가 일어남을 보여주었다.







Formation Control 연구는 주어진 임무/목적에 맞게 멀티로봇을 어떻게 위치적으로 배치할 것이며 그것을 위해서 어떻게 (Position-level) Controller를 만들 것인가에 대한 연구가 주류를 이루고 있다. 앞서 “Communication Network”에서 소개한 연구도 어떤 의미에선 Formation Control 연구라고 볼 수 있을 만큼, Multi-robot system 분야에서는 Formation Control 주제는 주요 혹은 부차적 연구주제로서 많이 다뤄지고 있다. 이번 ICRA2020에서도 많은 Formation Control 관련 연구가 이런류의 주제였는데, 다음의 논문은 좀 더 Low-level에서 발생하는 이슈를 다뤘다는 점, 그리고 거기에 DNN(Deep Neural Network)을 사용했다는 점에서 차별점이 있어서 소개하고자 한다.


A. Neural-Swarm: Decentralized Close-Proximity Multirobot Control Using Learned Interactions (Caltech, US) [12]


드론이 군집 비행을 할 때 개별 드론에서 하방으로 발생하는 Thrust로 인한 Downwash는 아래에 위치한 다른 드론에게는 외란으로서 영향을 미치게 된다. Crazyflie 2.0 같은 초소형 드론(34 g)의 경우에는 그 영향성이 너무 크게 되어 50 Cm 아래의 드론은 Stable 한 비행이 어렵게 되어 휘청휘청하게 된다고 한다(9g 정도의 Thrust loss 발생). 따라서 개별 드론의 Controller는 이러한 외란에도Robust하게 비행 제어를 할 수 있어야 하는데, 본 연구에서는 DNN을 이용한 Learning 기법을 활용하여 Robust Controller를 설계하였다. 특히 (1) 단순히 두 개의 드론 간에 발생하는 영향이 아니라 여러 개의 드론 사이에 발생하는 영향성을 고려해야 한다는 점, (2) Crazyflie의 Limited computational power를 고려해 Decentralised solution을 만들어야 한다는 점에서 Challenges가 있었다고 한다. 전자는 DNN을 기반으로 Permutation Invariant Approximation [13] 이라는 개념을 적용하여 다루었고, 후자는 DNN으로 생성한 Learned controller를 기존의 Nominal controller에 additional term으로 추가 적용하는 Hybrid 방식으로 계산량을 줄였다고 한다.

Training시 Labeled data를 이용한 Supervised learning을 이용하였고, 드론을 2개부터 4개까지 늘려가면서 데이터를 모아서 적용한 결과를 보여주었다. 인상적인 결과는, 3개의 이상의 드론으로 데이터를 모은 경우는 그 결과가 Generalisation 이 되어서, 4개 및 5개 드론 군집 비행(Figure 14)에 적용하여도 향상된 결과를 얻을 수 있다는 점이었다.

(동영상: https://youtu.be/v4j-9pH11Q8)






Multi-Robot Task Allocation은 간략히 표현하면 “주어진 Task가 있을 때 이것을 멀티로봇에 어떻게/어떤 방식으로 배분해야 목적에 맞게 효율적일 수 있는지”를 연구하는 분야이다. 대부분 Optimisation Problem으로 문제를 정의하는데, 많은 경우에 정의된 문제는 단시간 내에 풀기 어려운 형태로 귀결된다. 따라서 문제의 사이즈가 커지면 Optimal solution을 찾는다는 것이 현실적으로 어렵게 되고, Optimal에 가까운 근사결과를 빠른 시간내에 구해내는 것을 목표로 다양한 이론들을 활용하고 있다. 많은 경우의 논문이 (1) 이론적으로 Suboptimality를 얼마나 보장할 수 있는지, Algorithmic computational complexity는 어떻게 되는지 증명하고 (2) 시뮬레이션을 활용하여 통계적인 성능평가 결과는 어떻게 되는지를 보여줌으로써 제안 방법을 검증하는 방식으로 논문의 스토리가 전개된다. 다음의 논문은 Game Theory를 이용하였다는 점, 그리고 시뮬레이션의 Visualisation이 직관적이고 인상적이었다는 점에서, 흥미로운 연구였기에 소개하고자 한다.


A. Cooperative Team Strategies for Multi-Player Perimeter-Defense Games (University of Pennsylvania, US) [14]


본 연구는 다분히 Military application을 염두하고 있는 연구로서, 어느 멀티로봇 시스템(Defender System이라 칭한다)이 어느 지역의 외곽(Perimeter)을 방어하고 있는 상황에서 또 다른 멀티로봇 시스템(Intruder System이라 칭한다)이 공격해올 때, 어떻게 협력하여 방어를 할 수 있는지를 주제로 하고 있다(Figure 15 참조). 시나리오 기본 전제는 (1) Defender System의 로봇 A는 Perimeter를 따라서만 움직일 수 있고, (2) 공격해오는 Intruder System의 로봇 B를 Capture 하여 부딪힌다면 해당 로봇에 대하여 방어를 성공한 것으로 간주한다. (3) 또한 방어를 성공한 이후에는 로봇 A는 사용하지 못한다. 본 연구는 이러한 시나리오에 대한 모델링을 직관적으로 잘 보여주었고, 1:1로는 방어할 수 없는 상황에서 N:1이 되면 방어를 성공할 수 있으며, N:M 상황에서는 어떻게 Target assignment를 해야 하는지에 대하여 Game theory를 활용한 방법을 제안하였다. 이론적으로도 제안 알고리듬이 Polynomial time complexity를 가지며, 어느 수준의 Performance guarantee를 제공함을 증명하였다는 점에서 의미가 있다고 볼 수 있다. 특히 Visualisation 동영상이 인상적이었다.


 



(동영상: https://youtu.be/6zUPkzh_iPU)






A. Line Coverage with Multiple Robots (University of North Carolina at Charlotte, US) [15]


Coverage Problem은 “한 번에 여러 로봇청소기를 보내서 큰 공간을 청소하려고 할 때 로봇들이 각자 어느 지역을 담당하고 어떻게 움직여야 하는지”를 주제로 하는 연구로서, 기존의 많은 연구는 2D Space에 대해서 다뤄왔다. 이와 달리 본 연구는 Line Coverage Problem을 다루고 있는데, 이는 도로망(Road network)이나 전기망/상하수도망 같은 파이프라인(Pipeline network)처럼 선(Line)으로 이루어진 Linear environment를 다루는 Coverage Problem이다. 본 논문에서는 Line Coverage Problem을 MILP (Mixed Integer Linear Programming)로 정의하고, Merge-Embed-Merge라는 Heuristics를 이용한 알고리듬을 제안하였다. 실제 University of North Carolina Charlotte 캠퍼스 주변 지역 (16 ㎢)을 대상으로 시뮬레이션 결과를 보여주었는데, 제안 방법을 활용하면 0.6초 안에 Coverage Planning 결과를 도출할 수 있다고 한다. 시뮬레이션 동영상이 인상적이었다. (영상링크 참조)



(발표동영상: https://youtu.be/KJFTMasvHjk)





A. CAPRICORN: Communication Aware Place Recognition Using Interpretable Constellations of Objects in Robot Networks (Polytechnique Montreal, Canada) [16]



SLAM(Simultaneous Localisation and Mapping)을 수행하는 로봇은 예전에 있었던 위치에 다시 돌아감으로써 Environment에 대한 그동안의 Estimation을 보정하게 되는데, 이를 Loop closure라고 하며 SLAM에서 중요한 Challenges 중 하나이다 (참고로 Brian’s MATLAB Tech Talk에서 SLAM에 대한 기본 원리를 잘 설명해주고 있다: https://youtu.be/saVZtgPyyJQ).

본 논문에서 다루는 분야는 Multi-Robot SLAM으로서 “개별 로봇이 직접 Loop closure를 하지 않더라도 이웃 로봇의 정보를 대신 활용하는 방법으로 대체 할 수 있지 않을까”에 대한 주제를 다루고 있다. 하지만 일반적인 SLAM에서도 Lidar 등을 통해 획득된 고용량의 데이터를 처리해야 하는데, 멀티로봇 시스템의 제한적인 Communication network를 고려할 때 이러한 정보를 로봇들끼리 그대로 공유하는 것은 많은 제약이 따른다. 따라서 본 논문에서는 Deep learning-based Vision 기법을 활용하여, 카메라 이미지로부터 Semantic feature information을 Constellation 형태로 추출하고, 이렇게 압축된 정보를 로봇끼리 정보 공유하는 방식을 제안했다.



제안 방법을 검증하는 방식이 참신하였다. 일반 SLAM data set (실제로는 한 개 로봇이 획득한 정보)을 활용하되, 여러 로봇이 구간별로 나누어서 데이터를 획득했다고 가정하고, 제안 방법으로서 멀티로봇이 서로 정보공유를 함으로써 SLAM 프로세스를 수행하게 하였다. 이러한 방식의 실험을 통해 다른 기존 방식대비 정확도는 유지하되, 정보공유량을 줄일 수 있었음을 보여주었다.
(동영상: https://youtu.be/cDzetPrEsPQ)




B. Decentralized Visual-Inertial-UWB Fusion for Relative State Estimation of Aerial Swarm (HKUST, China) [17]


본 연구도 Multi-Robot SLAM의 한 갈래라고 볼 수도 있는데, 다른 로봇의 정보를 활용하여 각 로봇 간의 상대적인 위치를 Estimation하는 연구이다. 특히 실내와 같이 GPS가 되지 않는 환경에서 Vision sensor, IMU, UWB를 활용하여 Cm 레벨로 위치 정확도를 제공하는 방법론을 제안했다는 점에서 인상적이었다. 또한 Estimation에 필요한 모든 정보 획득 및 계산을 onboard로 수행하고 이를 실험적으로 검증했다는 점에서도 상당히 인상적이었다.


(동영상: https://youtu.be/81Tm6EQYw1E)






A. Online Motion Planning for Deforming Maneuvering and Manipulation by Multilinked Aerial Robot Based on Differential Kinematics (University of Tokyo, Japan) [18]


본 연구는 개인 의견으로는 Multi-Robot System과 관련된 연구라고 보기는 어려우나, 실험 결과가 상당히 흥미로워서 본 참관기에 포함하였다. 소개된 로봇은 Multilinked Aerial Robot으로서, 각 링크에 Rotor가 달려있고 이러한 링크 여러 개가 결합한 형태인데, 쉽게 설명하면 하늘을 나는 용(Dragon)같이 생긴 Aerial Robot이라고 생각하면 된다. 실제로 이 로봇은 DRAGON이라는 이름이 붙여졌다. 이 로봇은 기본적으로 Aerial Robot이기 때문에 공중을 날아다닐 수 있고, Manipulator처럼 Configuration을 변화시키면서 주변환경과 Interaction 할 수도 있다는 점에서 실제적인 활용도도 있어 보였다. 특히 실험 영상에서 1kg의 Hatch를 열고 그사이를 지나가고 하는 모습이 상당히 인상적이었다.


(동영상: https://youtu.be/0ficKzX_2Kw)






이번 ICRA2020은 Virtual Conference로 치러졌기에 직접 사람들과 Networking 할 수 없었다는 점에서는 아쉬웠지만, 최신 연구논문 한 편을 10분 내외의 영상으로 빠르게 접할 수 있다는 점, 등록비가 저렴했다는 점, 그리고 그럴 수 있는 시간을 3개월이나 주었다는 점에서 “가성비가 뛰어나다”라고 생각되었다. 그런 면에서 향후 COVID-19 사태가 종식되더라도 예전 방식의 Conference와 Virtual Conference가 병행하는 Hybrid 방식으로 진행되면 좋겠다고 생각해본다. 개인적으로는, 참관기를 작성하면서 멀티로봇 시스템 연구 분야에 대하여 최신동향을 정리해볼 수 있었고 앞으로의 연구 방향에 대해서 생각해볼 수 있었던 좋은 시간이었다.




[1] D. Pickem et al., “The Robotarium: A remotely accessible swarm robotics research testbed,” in IEEE International Conference on Robotics and Automation, 2017, pp. 1699–1706.
[2] A. Pierson, W. Schwarting, S. Karaman, and D. Rus, “Weighted Buffered Voronoi Cells for Distributed Semi-Cooperative Behavior,” ICRA 2020, pp. 5611–5617, 2020.
[3] W. Wu, S. Bhattacharya, and A. Prorok, “Multi-Robot Path Deconfliction through Prioritization by Path Prospects,” ICRA 2020, pp. 9809–9815, 2020.
[4] H. Wang and M. Rubenstein, “Walk, stop, count, and swap: Decentralized multi-Agent path finding with theoretical guarantees,” IEEE Robot. Autom. Lett., vol. 5, no. 2, pp. 1119–1126, 2020.
[5] S. D. Han and J. Yu, “DDM: Fast Near-Optimal Multi-Robot Path Planning Using Diversified-Path and Optimal Sub-Problem Solution Database Heuristics,” IEEE Robot. Autom. Lett., vol. 5, no. 2, pp. 1350–1357, 2020.
[6] J. Park, J. Kim, I. Jang, and H. J. Kim, “Efficient Multi-Agent Trajectory Planning with Feasibility Guarantee using Relative Bernstein Polynomial,” ICRA 2020, 2020.
[7] F. Augugliaro, A. P. Schoellig, and R. D’Andrea, “Generation of collision-free trajectories for a quadrocopter fleet: A sequential convex programming approach,” IEEE Int. Conf. Intell. Robot. Syst., pp. 1917–1922, 2012.
[8] C. E. Luis, M. Vukosavljev, and A. P. Schoellig, “Online Trajectory Generation with Distributed Model Predictive Control for Multi-Robot Motion Planning,” IEEE Robot. Autom. Lett., vol. 5, no. 2, pp. 604–611, 2020.
[9] C. E. Luis and A. P. Schoellig, “Trajectory Generation for Multiagent Point-To-Point Transitions via Distributed Model Predictive Control,” IEEE Robot. Autom. Lett., vol. 4, no. 2, pp. 375–382, 2019.
[10] D. Mox, M. Calvo-Fullana, M. Gerasimenko, J. Fink, V. Kumar, and A. Ribeiro, “Mobile Wireless Network Infrastructure on Demand,” pp. 7726–7732, 2020.
[11] X. Yu and M. Ani Hsieh, “Synthesis of a Time-Varying Communication Network by Robot Teams with Information Propagation Guarantees,” IEEE Robot. Autom. Lett., vol. 5, no. 2, pp. 1413–1420, 2020.
[12] G. Shi, W. Hönig, Y. Yue, and S.-J. Chung, “Neural-Swarm: Decentralized Close-Proximity Multirotor Control Using Learned Interactions,” ICRA 2020, pp. 3241–3247, 2020.
[13] M. Zaheer, S. Kottur, S. Ravanbhakhsh, B. Póczos, R. Salakhutdinov, and A. J. Smola, “Deep sets,” Adv. Neural Inf. Process. Syst., vol. 2017-Decem, no. ii, pp. 3392–3402, 2017.
[14] D. Shishika, J. Paulos, and V. Kumar, “Cooperative Team Strategies for Multi-Player Perimeter-Defense Games,” IEEE Robot. Autom. Lett., vol. 5, no. 2, pp. 2738–2745, 2020.
[15] S. Agarwal and S. Akella, “Line Coverage with Multiple Robots,” IEEE Int. Conf. Robot. Autom., pp. 3248–3254, 2020.
[16] B. Ramtoula, R. de Azambuja, and G. Beltrame, “CAPRICORN: Communication Aware Place Recognition using Interpretable Constellations of Objects in Robot Networks,” pp. 8761–8768, 2020.
[17] H. Xu, L. Wang, Y. Zhang, K. Qiu, and S. Shen, “Decentralized Visual-Inertial-UWB Fusion for Relative State Estimation of Aerial Swarm,” ICRA 2020, pp. 8776–8782, 2020.
[18] M. Zhao, F. Shi, T. Anzai, K. Okada, and M. Inaba, “Online Motion Planning for Deforming Maneuvering and Manipulation by Multilinked Aerial Robot Based on Differential Kinematics,” IEEE Robot. Autom. Lett., vol. 5, no. 2, pp. 1602–1609, 2020.





 
  • IICRA 2020 참관기
  • ICRA
  • ICRA2020
인쇄 Facebook Twitter 스크랩

  전체댓글 0

[로그인]

댓글 입력란
프로필 이미지
0/500자