TD3 and a Velodyne teach robots to find their way
This repo is a complete ROS Gazebo training environment where a TD3 agent learns to steer a mobile robot toward random goals using simulated laser scans and polar coordinates.

What it does This is a ROS Noetic simulation stack that trains a mobile robot to reach randomly placed goals without crashing into walls. A Twin Delayed Deep Deterministic Policy Gradient (TD3) network built in PyTorch ingests simulated laser readings—by default from a 3D Velodyne—and goal coordinates in polar form to spit out velocity commands. The whole loop lives inside Gazebo, with training, testing, and a headless Docker variant ready to go.
The interesting bit Rather than tuning a classical path planner, the robot learns end-to-end from raw range data and relative goal angles. The code is the exact artifact behind an ICRA 2022 / IEEE RA-L paper, so it carries more academic weight than your average weekend RL tutorial.
Key highlights
- End-to-end TD3 agent in PyTorch for mobile robot navigation.
- Simulated 3D Velodyne sensor for obstacle detection (a standard 2D laser is also supported).
- Goal represented in polar coordinates relative to the robot frame.
- Headless Docker container available for training without a GUI.
- Published research artifact from an IEEE Robotics and Automation Letters paper.
Caveats
- Tightly bound to ROS Noetic, Ubuntu 20.04, Python 3.8, and PyTorch 1.10; newer setups are untested.
- The README’s suggested shutdown method is a blanket kill of all ROS and Python processes, which hints at messy lifecycle management.
- Real-world hardware deployment is not discussed; this is strictly a simulation study.
Verdict Grab it if you need a reproducible TD3 baseline for robotics coursework or ROS Gazebo experiments. Leave it if you are looking for a drop-in navigation stack for a physical robot.
Frequently asked
- What is reiniscimurs/DRL-robot-navigation?
- This repo is a complete ROS Gazebo training environment where a TD3 agent learns to steer a mobile robot toward random goals using simulated laser scans and polar coordinates.
- Is DRL-robot-navigation open source?
- Yes — reiniscimurs/DRL-robot-navigation is open source, released under the MIT license.
- What language is DRL-robot-navigation written in?
- reiniscimurs/DRL-robot-navigation is primarily written in Python.
- How popular is DRL-robot-navigation?
- reiniscimurs/DRL-robot-navigation has 1.3k stars on GitHub.
- Where can I find DRL-robot-navigation?
- reiniscimurs/DRL-robot-navigation is on GitHub at https://github.com/reiniscimurs/DRL-robot-navigation.