# MotionPlanning **Repository Path**: git_yandan/MotionPlanning ## Basic Information - **Project Name**: MotionPlanning - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2021-10-27 - **Last Updated**: 2021-10-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## Overview This repository implemented some common motion planners used on autonomous vehicles, including * [Hybrid A* Planner](https://ai.stanford.edu/~ddolgov/papers/dolgov_gpp_stair08.pdf) * [Frenet Optimal Trajectory](https://www.researchgate.net/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame) * [Hierarchical Optimization-Based Collision Avoidance (H-OBCA)](https://ieeexplore.ieee.org/document/9062306) (Incomplete) Also, this repository provides some controllers for path tracking, including * [Pure Pursuit + PID](https://www.ri.cmu.edu/pub_files/pub3/coulter_r_craig_1992_1/coulter_r_craig_1992_1.pdf) * [Rear-Wheel Feedback + PID](https://www.ri.cmu.edu/pub_files/2009/2/Automatic_Steering_Methods_for_Autonomous_Automobile_Path_Tracking.pdf) * [Front-Wheel Feedback / Stanley + PID](http://robots.stanford.edu/papers/thrun.stanley05.pdf) * [LQR + PID](https://github.com/ApolloAuto/apollo/tree/master/modules/control/controller) * [Linear MPC](https://borrelli.me.berkeley.edu/pdfpub/pub-6.pdf) ## Requirement * Python 3.6 or above * [SciPy](https://www.scipy.org/) * [cvxpy](https://github.com/cvxgrp/cvxpy) * [Reeds-Shepp Curves](https://github.com/zhm-real/ReedsSheppCurves) * [pycubicspline](https://github.com/AtsushiSakai/pycubicspline) ## Vehicle models This repository uses two models: simple car model and [car pulling trailers model](http://planning.cs.uiuc.edu/node661.html#77556). ## Hybrid A* Planner
1 2
11 12
13 14
## State Lattice Planner
1 2
## Controllers
1 2
1 2
1 2
## Paper ### Planning * [Basic Path Planning Algorithms: ](https://github.com/zhm-real/PathPlanning) PathPlanning * [Overview: ](https://arxiv.org/pdf/1604.07446.pdf) A Survey of Motion Planning and Control Techniques for Self-driving Urban Vehicles * [Hybrid A* Planner: ](https://ai.stanford.edu/~ddolgov/papers/dolgov_gpp_stair08.pdf) Practical Search Techniques in Path Planning for Autonomous Driving * [Frenet Optimal Trajectory: ](https://www.researchgate.net/publication/224156269_Optimal_Trajectory_Generation_for_Dynamic_Street_Scenarios_in_a_Frenet_Frame) Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame * [EM Planner: ](https://arxiv.org/abs/1807.08048) Baidu Apollo EM Motion Planner ### Control * [Pure Pursuit: ](https://www.ri.cmu.edu/pub_files/pub3/coulter_r_craig_1992_1/coulter_r_craig_1992_1.pdf) Implementation of the Pure Pursuit Path Tracking Algorithm * [Rear-Wheel Feedback: ](https://www.ri.cmu.edu/pub_files/2009/2/Automatic_Steering_Methods_for_Autonomous_Automobile_Path_Tracking.pdf) Automatic Steering Methods for Autonomous Automobile Path Tracking * [Front-Wheel Feedback / Stanley: ](http://robots.stanford.edu/papers/thrun.stanley05.pdf) Stanley: The Robot that Won the DARPA Grand Challenge * [LQR: ](https://github.com/ApolloAuto/apollo/tree/master/modules/control/controller) ApolloAuto/apollo: An open autonomous driving platform * [Linear MPC: ](https://borrelli.me.berkeley.edu/pdfpub/pub-6.pdf) MPC-Based Approach to Active Steering for Autonomous Vehicle Systems ## Useful Material * [ApolloAuto/apollo: ](https://github.com/ApolloAuto/apollo) by Baidu * [Hybrid Path Planner (C++): ](https://github.com/karlkurzer/path_planner) by KTH Research Concept Vehicle * [hybrid-astar-planner (MATLAB): ](https://github.com/wanghuohuo0716/hybrid_A_star) by Mengli Liu * [HybridAStarTrailer (Julia): ](https://github.com/AtsushiSakai/HybridAStarTrailer) by AtsushiSakai