CDE3310 Systems Approach to Multi-Robot Coordination and Control

This course explores advanced robotics through a system-of-systems lens, where multiple autonomous robots collaborate to solve more complex missions using robotics middleware frameworks. Students will go beyond single-robot control to design, programme, and evaluate multi-robot systems that demonstrate coordination, resilience, and emergent behaviours. By bridging theoretical concepts and real-world deployment, students will gain critical systems-thinking, problem-solving, and collaboration skills transferable to research and industry. Alongside technical mastery, the course fosters curiosity, resilience, and higher awareness in real-world robotics deployment. Through a hands-on project, students will learn not only how to deploy multi-robot systems with a higher-level decision-making layer but also understand the limitations of fully autonomous systems communicating together in real-time.

At the end of this course, students should be able to:

  • Explain and apply key concepts of a robot operating system and multi-robot system principles.
  • Analyse and compare different system architectures for multi-robot coordination and robotic fleet management.
  • Implement effective code management practices to troubleshoot and deploy multi-robot systems.
  • Identify challenges in bridging theoretical concepts with actual implementation of multi-robot systems.
  • Demonstrate practical problem-solving and managing complex project tasks in collaborative teams to achieve a unified mission objective.
  • Understand the fundamentals of UAV systems (mechanical, electrical, electronics, and software).

Workload: 4 units (letter-graded)

Note: This course requires students to have prior experience with ROS2 from CDE2310 Fundamentals of Systems Design, RB2301 Robot Programming, or other courses.

Course syllabus

Introduction to system-of-systems (SoS approach):

  • Systems engineering overview — engineering lifecycle, V-model, requirements decomposition, verification and validation
  • System-of-systems (SoS) approach — definition and characteristics of SoS (operational/managerial independence, emergent behaviour, evolutionary development), SoS versus traditional systems, real-world examples in robotics and logistics
  • System-of-systems synthesiser (SOSS) — role of SOSS in orchestrating heterogeneous systems, interface standardisation, managing emergent behaviour, SOSS design patterns

ROS2 recap and multi-robot foundations:

  • ROS2 fundamentals — node lifecycle, publisher/subscriber model, service call/response patterns, parameter server and dynamic reconfiguration, action servers and clients (goals, feedback, results)
  • ROS2 navigation framework — Nav2 architecture, SLAM and map management, localisation (AMCL), path planning (global/local planners), recovery behaviours
  • ROS2 namespaces, remapping and QoS — namespace isolation strategies, topic/service remapping at launch, QoS profiles (reliability, durability, history, depth), choosing QoS for real-time versus reliable delivery
  • Multi-robot control using ROS2 — running multiple robot instances, shared vs. isolated environments, launch file patterns for fleets, inter-robot communication strategies

Centralised multi-robot coordination using Open-RMF:

  • Introduction to Open-RMF — motivation and design goals, supported robot categories (mobile robots, door/lift systems, workcells), Open-RMF traffic management concepts, conflict avoidance and negotiation
  • Open-RMF deployment — Dashboard: web UI for monitoring and dispatching; API server: REST/WebSocket interface for external integrations; RMF Core: schedule management, traffic negotiation, event system; Fleet adapter: robot-specific adapter design, writing custom adapters, integration with existing fleet software

System architectures for multi-robot coordination:

  • Taxonomy for multi-robot task allocation (MRTA) — single-task versus multi-task robots, single-robot versus multi-robot tasks, instantaneous versus time-extended assignments, ST-SR-IA / MT-MR-TA classification framework
  • Centralised versus decentralised control — trade-offs in scalability, fault tolerance and latency, hybrid architectures
  • Introduction to manufacturing execution systems (MES) — MES role in Industry 4.0, interfacing robots with MES/ERP, ISA-95 standard, work order dispatch and tracking
  • Navigation behaviour trees and cost maps — behaviour tree fundamentals (sequence, fallback, decorator nodes), Nav2 BT XML format, custom BT plugins, global and local cost maps, inflation layers, custom cost map layers

Multi-robot synchronisation:

  • ROS2 clock and time synchronisation — ROS time versus wall time, use_sim_time, clock topics, NTP and PTP for hardware synchronisation, time-stamping best practices
  • Resilience in networked robotic systems — failure mode analysis, network partitioning handling, reconnection and state recovery strategies
  • System integration and verification — integration testing frameworks, simulation-based testing (Gazebo/Ignition), hardware-in-the-loop testing

Codebase management:

  • Monorepo versus multi-repo strategies — trade-offs, workspace structuring with colcon, dependency management
  • Version control workflows — branching strategies for robot software, managing hardware-specific configurations, tagging releases tied to robot firmware
  • Configuration management — separating robot parameters from code, environment-specific configs, over-the-air (OTA) update patterns and management
    Documentation and traceability — documenting interfaces and message types, change logs, linking software versions to system verification records