Git Product home page Git Product logo

kinodynamic_frontend's Introduction

Kinodynamic Frontend

This project focus on quadrotor's Kinodynamic planning frontend, including Kinodynamic-RRT* and Kinodynamic-A*. The word frontend means that it will search a coarse(not optimal) trajectory(not path), and the word kinodynamic means that the trajectory obeys kinamatic constraint(collision free) and dynamic constraint(a differential equation).

If this project benefit you in any way, please don't skimp on your star 🌟 .


Kinodynamic-RRT*

The project is based on Paper: Kinodynamic RRT*: Asymptotically optimal motion planning for robots with linear dynamics. And some minor changes:

  • There are few impelement of KD tree can do a range search in each dimension, so this project only search neigbhors with position(3 dimension).

  • The paper samples full state (in a quadrotor with minimum jerk performance index, full state means 9 dimension: pos, vel, acc), but this project only samples the position of quadrotor. Accordingly, when calculating trajectory we solve partial state OBVP for new sample point and solve full state OBVP for rewriting the tree.

With my test, Kinodynamic-RRT* sample the state space randomly, which it is inefficient. It might be horrible in real-time large scale planning.

quick start

Build the project:

catkin_make clean && catkin_make -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=1 -j8

Run in terminal:

roslaunch my_simple_planner rviz.launch

another terminal:

roslaunch my_simple_planner test_rrtstar.launch

press G in rviz and select your goal.

Example

Search a trajectory in a maze-like 30m x 20m x 3m environment:

Kinodynamic-RRT*


Kinodynamic-A*

Not start yet, but in TODO list.

Thanks

I use some source file from repo like mockamap, Teach-Repeat-Replan, kdtree.

Thanks for their high quality code.

kinodynamic_frontend's People

Contributors

zamesng avatar

Stargazers

zhenting avatar Chunxin Zheng avatar Wisdom Tree avatar  avatar  avatar  avatar Zichen avatar  avatar  avatar  avatar  avatar Guo Zhanyu avatar Hill Bao avatar  avatar Peiyu Cui avatar  avatar  avatar  avatar chuyaqifei avatar  avatar Yu Hu avatar  avatar Yvaine avatar  avatar  avatar  avatar  avatar  avatar  avatar Tianyou Yu avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar Li Yiming avatar Vinson Sheep avatar Zhewei Ye avatar  avatar  avatar Hugo Chiang avatar  avatar

Watchers

 avatar

kinodynamic_frontend's Issues

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.