Skip to content

RO47005 Planning & Decision Making. Quadrotor model planner using probabilistic roadmap (PRM) and collision avoidance using Velocity Obstacles

Notifications You must be signed in to change notification settings

marcoschouten/planning-and-decision-making

Repository files navigation

Quadrotor Planning (RO47005 Project)

Simulation environment

This project is built based on this simulation environment. The already built functionalities in this environment are:

  • Informed-RRT* path planner.
  • Minisnap trajectory generation (solved by closed-form solution) without collision avoidance .
  • A non-linear controller for path following.
  • A quadrotor simulator.

Our contributions

The newly added functionalities by us are:

  • PRM* path planner.
  • Collision free minisnap trajectory optimization using two methods, namely corridor bounding method and waypoint insertion method.
  • Kinodynamics RRT* using polynomial as steering function.
  • Velocity Obstacles (currently under construction).
  • Dynamic window approach (not used due to poor performance).
  • Random generated map for simulation.

Please refer to our report for detailed infomation.

Dependencies

numpy, matplotlib, rtree-linux, scipy, CVXPY, CVXOPT

Usage

K-PRM* with Minisnap and Corridor Bounding Method

python runsim_prm.py

Kinodynamics RRT*

python runsim_kinorrt.py

Velocity Obstacle (still under construction)

python Quadrotor-Simulation/runsim.py

Future work

  • Trajectory optimization of kinodynamics RRT*
  • Using B-spline for collision avoidance
  • Finer adjustment for velocity obstacle
  • Try to implement model predictive control (MPC)

About

RO47005 Planning & Decision Making. Quadrotor model planner using probabilistic roadmap (PRM) and collision avoidance using Velocity Obstacles

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages