Skip to content

Latest commit

 

History

History
32 lines (24 loc) · 1.48 KB

README.md

File metadata and controls

32 lines (24 loc) · 1.48 KB

Probabilistic Roadmap (PRM) Path Planning

This project implements a Probabilistic Roadmap (PRM) for robot path planning in environments with obstacles. The PRM uses random sampling to generate nodes in the robot's configuration space and performs collision-free pathfinding using the A* algorithm. It was a small educational project for myself, but I am happy if it helps someone else as well.

Features

  • A-star Pathfinding: Find the shortest path between start and goal nodes.
  • Graph Visualization: Visualize the PRM graph and the computed path for 2-DOF robots.
  • Simulation: Simulate the robot moving along the computed path in a 3D environment.
  • Parallel Edge Checking: Relatively efficient collision detection along edges using multiprocessing (given the speed limitations due to slow collision check calls).

Requirements

The project dependencies are listed in the requirements.txt file. To install the required packages, run the following command (preferably in a virtual environment):

pip install -r requirements.txt

Usage

The project example with default arguments can be run using the following command:

python prm.py

For more information on the available options, run:

python prm.py --help

Examples

Below is an example of the PRM path planning for a 2-DOF robot in a 2D environment. The PRM graph is visualized with the computed path from the start to the goal node. 2-DOF Robot Path Planning