Git Product home page Git Product logo

arena-rosnav-3d's Introduction

arena-rosnav-3D

This repository combines the 3D ROS simulator Gazebo with Pedsim to provide realistic dynamic 3D scenarios and tasks to evaluate and and benchmark ROS navigation approaches. It is fully compatible with the planning algorithms trained and developed with arena-rosnav (2D). This presents an essential step in deploying the navigation approaches from arena-rosnav towards real robots.

The repo currently contains:

  • Task generator with modes: random, scenario, manual, staged
  • Multiple detailed scenario-worlds
  • Robot models: turtlebot3_burger, ridgeback, jackal, agv-ota
  • Creation of random 3D-words with static and dynamic obstacles
  • Realistic behavior patterns and semantic states of dynamic obstacles (by including pedsim's extended social force model)
  • Implementation of intermediate planner classes to combine local DRL planner with global map-based planning of ROS Navigation stack: teb, dwa, mpc, cadrl, rlca, arena
  • Integration with arena-tools map generator and LIRS-World_Construction_Tool. Providing seamless conversion from randomly generated ROS maps to actual Gazebo worlds.
  • "Random world" task mode, where with each Task reset, a new Gazebo world is loaded

1. Installation

Please refer to Installation.md for detailed explanations about the installation process.

NOTE: This repo is using ros-noetic and python 3.8

2. Usage

Refer to Usage.md for command-line use, as well as detailed explanations about agent, policy and training setups.

Sample usage

After successful installation, run the following command with your python-env activated (workon rosnav).

roslaunch arena_bringup start_arena_gazebo.launch local_planner:=teb task_mode:=random world:=small_warehouse actors:=6 

3. Examples

Here you can see some examples using our different world generating modes

Random task mode Arena Generated

Scenario mode

  • Use the supplied scenario or create your own using arena-tools.
  • In scenario mode, all objects will be spawned at their specified position and everything will reset back to this position once the robot reaches its goal.

Training

To quick start drl training run the following lines. For more detailed information see this documentation.

roslaunch arena_bringup start_arena_gazebo.launch  train_mode:=true use_viz:=true  task_mode:=random

# in a new terminal
roscd arena_local_planner_drl
python scripts/training/train_agent.py --agent MLP_ARENA2D

Miscellaneous

Used third party repos:

arena-rosnav-3d's People

Contributors

eliastreis avatar jacenty00 avatar niloufarkh avatar linhdoan8 avatar tuananhroman avatar ducanor avatar tehamc avatar ignc-research avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.