Skip to content

Platform for testing state-of-the-art path planning algorithms in environments with dynamic obstacles

Notifications You must be signed in to change notification settings

ggldnl/Robot-Simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robot Simulator

2D online Robot Simulator platform for testing state-of-the-art path planning algorithms in environments with dynamic obstacles.

Installation

$ git clone https://github.com/ggldnl/Robot-Simulator
$ cd Robot-Simulator
$ conda env create -f environment.yml
$ conda activate robot_simulator

How to run

To run the application, from the main folder, simply do the following:

python application.py

This will launch a flask server; open the address on the console from a web browser to reach the web page.

Algorithms

Search-based Planning
├── Best-First Searching
├── Breadth-First Searching (BFS)
├── Depth-First Searching (DFS)
├── A*
└── Dynamic A*

Sampling-based Planning
├── RRT
├── RRT *
├── Dynamic-RRT
└── Informed RRT*

TODO

  • Strip unnecessary stuff from robot stack (e.g. sensors, motors, etc)
  • Rework map and remove moving obstacles. Add obstacles on mouse click instead
  • Add obstacles on mouse click
  • Redefine/Uniform websocket channels names
  • Fix bug with region query in Map class
  • Uniform query and query_region methods in Map class
  • Provide thread safe rtree implementation
  • Rework world json to use map serialization instead of plain polygons serialization
  • Fix bug with search algorithms and new map (seems like sampling doesn't care about obstacles)
  • Algorithms can't find the goal if we set it to positions outside the grid
  • Add missing search algorithms
  • Redefine world serialization
  • Finish left sidebar
  • Add another load button to left sidebar to load a custom URDF
  • Make the save button actually save the last map data received
  • Provide multi robot support
  • Fix bugs with urdf loading (robot stops moving after few steps, maybe step size)
  • Find a way to specify obstacles shape (rectangle, polygon, ...)
  • Find a way to choose the behavior of the map (moving/spawning obstacles)
  • Fix inverted angles in link origin (URDF parser)
  • Add typing and input checking
  • Update documentation

About

Platform for testing state-of-the-art path planning algorithms in environments with dynamic obstacles

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published