ランキングに戻る

reiniscimurs/DRL-robot-navigation

Python

Deep Reinforcement Learning for mobile robot navigation in ROS Gazebo simulator. Using Twin Delayed Deep Deterministic Policy Gradient (TD3) neural network, a robot learns to navigate to a random goal point in a simulated environment while avoiding obstacles.

deep-reinforcement-learningdeep-learningrobot-navigationtd3rosgazeboobstacle-avoidanceobstacle-avoidance-robotreinforcement-learning
スター成長
スター
1.3k
フォーク
194
週間成長
Issue
62
5001k
2021年11月2023年5月2024年12月2026年7月
成果物PyPIpip install drl-robot-navigation
README

DRL-robot-navigation

Deep Reinforcement Learning for mobile robot navigation in ROS Gazebo simulator. Using Twin Delayed Deep Deterministic Policy Gradient (TD3) neural network, a robot learns to navigate to a random goal point in a simulated environment while avoiding obstacles. Obstacles are detected by laser readings and a goal is given to the robot in polar coordinates. Trained in ROS Gazebo simulator with PyTorch. Tested with ROS Noetic on Ubuntu 20.04 with python 3.8.10 and pytorch 1.10.

!!!Use the issue template to submit your issue

Installation and code overview tutorial available here

Training example:

ICRA 2022 and IEEE RA-L paper:

Some more information about the implementation is available here

Please cite as:

@ARTICLE{9645287,
  author={Cimurs, Reinis and Suh, Il Hong and Lee, Jin Han},
  journal={IEEE Robotics and Automation Letters}, 
  title={Goal-Driven Autonomous Exploration Through Deep Reinforcement Learning}, 
  year={2022},
  volume={7},
  number={2},
  pages={730-737},
  doi={10.1109/LRA.2021.3133591}}

Installation

Main dependencies:

Clone the repository:

$ cd ~
### Clone this repo
$ git clone https://github.com/reiniscimurs/DRL-robot-navigation

The network can be run with a standard 2D laser, but this implementation uses a simulated 3D Velodyne sensor

Compile the workspace:

$ cd ~/DRL-robot-navigation/catkin_ws
### Compile
$ catkin_make_isolated

Open a terminal and set up sources:

$ export ROS_HOSTNAME=localhost
$ export ROS_MASTER_URI=http://localhost:11311
$ export ROS_PORT_SIM=11311
$ export GAZEBO_RESOURCE_PATH=~/DRL-robot-navigation/catkin_ws/src/multi_robot_scenario/launch
$ source ~/.bashrc
$ cd ~/DRL-robot-navigation/catkin_ws
$ source devel_isolated/setup.bash

Run the training:

$ cd ~/DRL-robot-navigation/TD3
$ python3 train_velodyne_td3.py

To check the training process on tensorboard:

$ cd ~/DRL-robot-navigation/TD3
$ tensorboard --logdir runs

To kill the training process:

$ killall -9 rosout roslaunch rosmaster gzserver nodelet robot_state_publisher gzclient python python3

Once training is completed, test the model:

$ cd ~/DRL-robot-navigation/TD3
$ python3 test_velodyne_td3.py

Gazebo environment:

Rviz:

Running in Docker

It is also possible to run the training inside a docker container in headless mode (no rviz/gazebo).
Build the docker image:

$ sudo docker build -t drl_noetic .

Then run the docker image in interactive mode:

$ sudo docker run -it --rm drl_noetic

Inside the docker, start the training:

$ cd DRL-robot-navigation/TD3
$ python3 train_velodyne_td3.py
関連リポジトリ
eriklindernoren/ML-From-Scratch

Machine Learning From Scratch. Bare bones NumPy implementations of machine learning models and algorithms with a focus on accessibility. Aims to cover everything from linear regression to deep learning.

PythonPyPIMIT Licensemachine-learningdeep-learning
32.3k5.4k
Unity-Technologies/ml-agents

The Unity Machine Learning Agents Toolkit (ML-Agents) is an open-source project that enables games and simulations to serve as environments for training intelligent agents using deep reinforcement learning and imitation learning.

C#Otherreinforcement-learningunity3d
unity.com/products/machine-learning-agents
19.6k4.5k
microsoft/AirSim

Open source simulator for autonomous vehicles built on Unreal Engine / Unity, from Microsoft AI & Research

C++Otherdronesai
microsoft.github.io/AirSim/
18.3k4.9k
AI4Finance-Foundation/FinRL

FinRL®: Financial Reinforcement Learning. 🔥

Jupyter NotebookMIT Licensedeep-reinforcement-learningdrl-trading-agents
ai4finance.org
15.8k3.4k
datawhalechina/easy-rl

强化学习中文教程(蘑菇书🍄),在线阅读地址:https://datawhalechina.github.io/easy-rl/

Jupyter NotebookOtherdeep-reinforcement-learningreinforcement-learning
14.5k2.3k
carla-simulator/carla

Open-source simulator for autonomous driving research.

C++MIT Licensesimulatorautonomous-vehicles
carla.org
14.2k4.6k
kmario23/deep-learning-drizzle

Drench yourself in Deep Learning, Reinforcement Learning, Machine Learning, Computer Vision, and NLP by learning from these exciting lectures!!

HTMLmachine-learningdeep-learning
deep-learning-drizzle.github.io
12.9k3k
lexfridman/mit-deep-learning

Tutorials, assignments, and competitions for MIT Deep Learning related courses.

Jupyter NotebookMIT Licensedeep-learningmit
deeplearning.mit.edu
10.4k2.2k
vwxyzjn/cleanrl

High-quality single file implementation of Deep Reinforcement Learning algorithms with research-friendly features (PPO, DQN, C51, DDPG, TD3, SAC, PPG)

PythonPyPIOtherwandbreinforcement-learning
docs.cleanrl.dev
10.1k1.1k
evilsocket/pwnagotchi

(⌐■_■) - Deep Reinforcement Learning instrumenting bettercap for WiFi pwning.

PythonPyPIOtheraideep-reinforcement-learning
pwnagotchi.ai
9.1k1.2k
MITDeepLearning/introtodeeplearning

Lab Materials for MIT 6.S191: Introduction to Deep Learning

Jupyter NotebookMIT Licensemitdeep-learning
8.7k4.5k
google/trax

Trax — Deep Learning with Clear Code and Speed

PythonPyPIApache License 2.0jaxnumpy
8.3k820