Giter VIP home page Giter VIP logo

path-planning-simulator's Introduction

Path-Planning-Simulator

The repository contains two simulators -

Python Simulator

Path Planning Algorithms

A python based simulator for path planning algorithms such as A*, JPS, Dijkstra, and other state-of-the-art algorithms.

The project builds upon the Cluster Allocate Cover (CAC) simulator implemented by Prof.Avinash to make it faster and more efficient. The bottle neck, as found by profiling the code was turning out to be the path planning algorithm for the simulator. To tackle this issue, comparative analysis of state-of-the-art path planning and exploration algorithms via simulation and experimentation was performed in this project. The simulation is performed on 50+ custom grid maps of size 50 x 50 on a python based simulator. Experiments are also performed on a Turtlebot, on which a node containing all studied path planning algorithms is written on the ROS Indigo platform and tests on 10+ real maps are performed (On Gazebo/Rviz as well as in the lab). The following graph search algorithms were tested in the study:

  1. Breadth First Search
  2. Depth First Search
  3. Dijkstra's Algorithm
  4. A-Star Algorithm
  5. D-Star Algorithm
  6. Greedy Best First Search
  7. Jump Point Search (JPS)
  8. Jump Point Search extensions - JPS+ and JPS+B

JPS was found to be the best performing algorithm on the simulator as well as the Turtlebot.

Exploration Algorithms

The srepository also includes implementations of the following frontier based exploration algorithms

  1. Yamauchi's Frontier Algorithm
  2. Burgard's Frontier Algorithm
  3. Faigl's Frontier Algorithm
  4. Cluster Allocate Cover

Javascript Simulator

A simple extension of the simulator has been implemented in JavaScript for ease of viewing in web browsers. The JavaScript version contains the following algorithms:

  1. Breadth First Search
  2. Depth First Search
  3. Dijkstra's Algorithm
  4. Greedy Best First Search
  5. A-Star Algorithm
  6. Rapidly Exploring Random Trees (RRT)
  7. RRT-Connect
  8. RRT-Star
Just one map has been created for this simulator, this being the secondary version to the Python Simluator.

TurtleBot Path Planning Node

A path planning node for Robot Operating System (ROS-Indigo) has been implemented and can be found in the /Turtlebot Node - Path Planning/ folder of this repository. To integrate this node into your ROS package, you may follow this article. This package contains implementations of the following algorithms:

  1. Depth First Search
  2. Breadth First Search
  3. Greedy Best First Search
  4. Dijkstra's Algorithm
  5. A-Star Algorithm
  6. D-Star Algorithm
  7. Jump Point Search

path-planning-simulator's People

Contributors

sahibdhanjal 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.