Post

Centralized Intelligence for Dynamic Swarm Navigation

Centralized intelligence, dynamic trajectory forecasting, and multi-AMR swarm navigation using ROS 2, Nav2, YOLOv8, and MongoDB for industrial warehouses.

Centralized Intelligence for Dynamic Swarm Navigation
System Specifications
Domain Multi-Agent Systems & Swarm Navigation
Middleware & Stack ROS 2 Humble, Nav2, Dynamic Window Approach (DWA)
Perception & Vision YOLOv8 Real-time Obstacle & Dynamic Object Labeling
Data Architecture Shared MongoDB NoSQL for Multi-Robot Map Persistence
Simulation Testbed Gazebo 10x10m+ Dynamic Warehouse (4+ AMRs)
Context & Challenge Inter-IIT Tech Meet 13.0 (Kalyani Bharat Forge Statement)

The Problem Statement: Multi-Robot Navigation System for Dynamic Industrial Environments

To design a system for a centralized Intelligence based path planning & navigation in a dynamic condition like a warehouse with moving instruments, forklifts & humans

Swarm Robots in Warehouse Simulation Swarm Robots in Warehouse Simulation

Background

Bharat Forge Ltd., a flagship company of the Kalyani Group, is a global leader in precision engineering and advanced manufacturing. With complex factory and warehouse environments that are constantly evolving, their need was clear:

How can autonomous robots navigate and perform tasks efficiently in dynamic indoor environments — without GPS, markers, or manual intervention?

The Inter-IIT Tech Meet 2025 problem statement challenged us to engineer a centralized intelligence system for a swarm of autonomous mobile robots (AMRs) to navigate and complete tasks in such unpredictable spaces.


Our Approach

We designed a ROS 2-based multi-agent system backed by a shared NoSQL database, capable of:

  • Real-time dynamic obstacle avoidance using DWA
  • Semantic obstacle labeling with computer vision
  • Global map persistence and inter-robot state sharing
  • Scalable task assignment and navigation

System Architecture

flowchart TD
    subgraph Perception["Perception Layer"]
        A[Overhead Surveillance Camera / Sensors] -->|RTSP Video Stream| B[YOLOv8 Object Detection & Tracking]
    end
    subgraph Central["Central Intelligence Server"]
        B -->|Dynamic Obstacle Vectors| C[Central Trajectory Forecaster]
        C <-->|Read / Write Global Grid| D[(Shared MongoDB NoSQL)]
    end
    subgraph Planning["Fleet Coordination Layer"]
        C -->|Dynamic Costmap Updates| E[ROS 2 Nav2 Global Planner]
        E -->|Local Waypoint Paths| F[Dynamic Window Approach DWA]
    end
    subgraph Execution["AMR Execution Fleet"]
        F -->|WiFi / ROS2 DDS| G[AMR Unit 1: Diff-Drive]
        F -->|WiFi / ROS2 DDS| H[AMR Unit 2: Quadruped]
        F -->|WiFi / ROS2 DDS| I[AMR Unit N: Payload Carrier]
    end

Core Components

  1. ROS 2 Humble: Middleware for multi-robot control, topic streaming, and communication.
  2. Gazebo: Simulation testbed representing a 10x10m+ industrial workspace with dynamic and static obstacles.
  3. MongoDB: Shared NoSQL database for map persistence, state sharing, and telemetry logging.
  4. YOLOv8: Real-time object detection of obstacles, tools, and moving agents.
  5. Reinforcement Learning (RL): Policy network for dynamic prioritization and path planning.

Multi-Bot Simulation Setup

We created a custom Gazebo environment configured with:

  • 4+ autonomous mobile robots (Differential Drive and Quadruped platforms)
  • 3+ dynamic obstacles (human avatars, moving carts)
  • 10+ static target objects (tools, extinguishers, crates)
  • Deterministic and random spawning logic for scalability verification

Each robot published its odometry, task state, and sensory feedback via ROS 2 nodes into MongoDB.


Object Detection & Environment Mapping

To operate markerless, we fine-tuned YOLOv8 on industrial warehouse objects:

  • Fire extinguishers
  • Toolboxes
  • Human workers
  • Industrial equipment

Detections were timestamped and stored in MongoDB as structured records (object_id, type, position, velocity). These updates were fed into the global costmap layer in Nav2.


Shared Database & Persistent Memory

Custom collections made in Mongodb server Custom collections made in MongoDB server

We implemented a logging and synchronization pipeline using two primary MongoDB collections:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
  "robot_logs": {
    "timestamp": "2024-11-05T15:00:00Z",
    "robot_id": "bot_1",
    "X": 3.1, "Y": 7.2,
    "obstacles": [...],
    "confidence_score": 0.94,
    "scan_ranges": [...],
    "tasks_done": "navigating"
  },
  "dynamic_map": {
    "environment_id": "sector_2",
    "map_data": [...],
    "last_updated": "2024-11-05T14:58:10Z"
  }
}

This enabled state recovery, persistent map caching, and seamless task reassignment upon robot fault or restart.


Task Ranking & Autonomous Scheduling

Robots dynamically queried tasks from the central MongoDB queue, evaluated by:

  • Estimated travel time / cost to target
  • Object priority ranking (e.g., safety equipment > routine inspection points)
  • Agent battery level and availability

Using PPO (Proximal Policy Optimization) alongside Nav2’s Dynamic Window Approach (DWA), robots recalculated local trajectories in real-time around unmodeled moving agents.

Dynamic Obstacle avoidance in RL paper Dynamic obstacle avoidance using RL formulation


Simulation Verification

We verified the architecture across 4 industrial test cases in Gazebo:

  • Scalability in Cluttered Spaces: 20×20m layouts with high obstacle density.
  • Swarm Size Scalability: 8+ robots operating concurrently without topic contention.
  • Dynamic Obstacle Avoidance: Navigating around non-linear moving worker models.
  • Map Persistence & Recovery: Reloading pre-cached environmental maps after process restart.

Technical Summary

Component / SubsystemImplementation Status
Multi-Robot CoordinationImplemented
Dynamic Obstacle AvoidanceIntegrated (Nav2 + DWA)
Map Persistence (NoSQL)Completed (MongoDB)
Object DetectionCustom-trained YOLOv8
Swarm ScalabilityVerified in Gazebo

Repository & References

Robotics Team #2, IIT Bhilai

This post is licensed under CC BY 4.0 by the author.