Skip to content

Implementation of path planning algorithms in 2D space

Notifications You must be signed in to change notification settings

rushikajoshi/Path-planning

Repository files navigation

Path planning algorithms

Table of Contents
  1. About The Project
  2. Results
  3. References

About The Project

It is essential to develop techniques that allow a robot or any vehicle to automatically decide on how to move from one position or configuration to another. This can be done by finding a path that minimizes some cost or distance metric to reach to the ultimate goal. This project aims to study and test different such path planning algorithms for autonomous navigation of vehicles.

Results

Following are some of the motion planning algorithms implemented on 2D space.

Generating a configuration space

Since, in the real world, most of the robots move continuously through space, therefore, it is essential to have a complete specification of the position of every point in the system for motion planning. The configuration space of a robot is the set of all configurations and/or positions that the robot can attain.

A* algorithm

It is used to calculate the shortest distance between the source (initial state) and the destination (final state). Here, a square grid is provided as a map which possesses many obstacles, scattered randomly. The initial and the final cells are known. The aim is to reach the final cell in the shortest amount of time.

Dijkstra's algorithm

It finds a shortest path tree from a single source node, by building a set of nodes that have minimum distance from the source. It has been found that A* is a more time efficient approach as it chooses which node to explore at the next iteration.

Potential field based planning

The artificial potential field repels the robot from obstacles and guides it to the desired location. A total potential function is generated as a sum of attractive and repulsive potential functions based on configuration space. The robot then continually evaluates the gradient of the artificial potential field and steps in that direction until it is close enough to the desired goal.

1) Attractive, Repulsive and total potential field

These fields are constructed based on a function that gives high values as it approaches towards the obstacles and low values as it moves away from them.

2) Generating quiver plot

It is an alternate method to depict the same information, where the arrows indicate the direction of the gradient field at various locations in the configuration space.

3) Gradient based control

The robot is steered by choosing the velocity based on the gradient of the total function.

References

About

Implementation of path planning algorithms in 2D space

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages