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

