Coder Social home page Coder Social logo

ss47816 / fiss_planner Goto Github PK

View Code? Open in Web Editor NEW
149.0 4.0 34.0 8.12 MB

[RA-L 2022] FISS: A Trajectory Planning Framework using Fast Iterative Search and Sampling Strategy for Autonomous Driving

License: Apache License 2.0

CMake 0.50% Python 0.09% C++ 97.88% C 1.53%
autonomous-vehicles autonomous-driving path-planning trajectory-planning frenet fast robotics mobile-robots mobile-robot-path-planning mobile-robot-navigation

fiss_planner's Introduction

FISS Planner

[RA-L 2022] FISS: A Trajectory Planning Framework using Fast Iterative Search and Sampling Strategy for Autonomous Driving

Ubuntu ROS C++ CodeFactor GitHub Repo stars GitHub Repo forks

This is an improved framework based on the framework used in frenet_optimal_planner. We utilize historical planning results as prior information in heuristics and introduce an iterative search-generate-evaluate strategy to look for the optimal trajectory candidate. Compared to the current frameworks, our method can significantly reduce the number of computationally expensive operations spent during the planning and achieve 2-6 times faster.

Our paper has been accepted by RA-L 2022 and IROS 2022.

@article{Sun_FISS_2022,
  author={Sun, Shuo and Liu, Zhiyang and Yin, Huan and Ang, Marcelo H.},
  journal={IEEE Robotics and Automation Letters},
  title={FISS: A Trajectory Planning Framework Using Fast Iterative Search and Sampling Strategy for Autonomous Driving},
  year={2022},
  volume={7},
  number={4},
  pages={9985-9992},
  doi={10.1109/LRA.2022.3191940}
}

Video

video

cover_image

Updates

  • [14 Jul 2023] An improved new version of the method, FISS+, is now available at https://github.com/SS47816/fiss_plus_planner
  • [19 Oct 2022] Major updates in the documentation. Now you should be able use this repo out-of-the box.

Dependencies

Our package is only based on standard ROS pkgs, with no other external dependencies:

  • C++11 above
  • CMake: 3.0.2 above
  • Eigen (included)
  • ROS Packages:
    • roscpp
    • rospy
    • tf
    • tf2_ros
    • std_msgs
    • nav_msgs
    • geometry_msgs
    • autoware_msgs
    • visualization_msgs
    • tf2_geometry_msgs
    • dynamic_reconfigure

Installation

To use this package, you will need to create a catkin_ws first. Details please see the ROS official tutorial.

# locate your catkin workspace (assuming ~/catkin_ws here)
cd ~/catkin_ws/src

# clone the lgsvl_utils repo so that you can use this planner with the lgsvl simulator
git clone https://github.com/SS47816/lgsvl_utils.git
# clone this repo
git clone https://github.com/SS47816/fiss_planner.git

cd ..

# install dependencies
rosdep install --from-paths src --ignore-src -r -y

# build
catkin_make
# source
source devel/setup.bash

Usage

  1. Install the LGSVL simulator by following this guide
  2. Set up your LGSVL simulator and launch the lgsvl_utils nodes by following the guide
  3. Launch the FISS planner nodes by running:
# Launch nodes
roslaunch fiss_planner fiss_planner.launch

The local planner is now waiting for the global route to be published so that it can start planning. 4. You may adjust any config parameters you like in the dynamic_reconfigure window. 5. In the RVIZ window, use the 2D Nav Goal tool to selet a reachable goal point on the road as the global goal. The global planner will immediately plan a global route for you. And you will soon see the local planner starts planning. 6. Press the green A button on your joystick to enter the autonomous mode. 7. Now you should be able to see your ego vehicle moving. Have fun!

Contribution

You are welcome contributing to the package by opening a pull-request

We are following: Google C++ Style Guide, C++ Core Guidelines, and ROS C++ Style Guide

License

Our fiss_planner ROS package is licensed under Apache License 2.0

The included Eigen Library follows its own Mozilla Public License v. 2.0

fiss_planner's People

Contributors

ss47816 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

fiss_planner's Issues

[helper]: Code understanding

Dear Dr.Sun,
I have some code understanding problems. Very disturbing! Thank you very much!
Is global frame equal to map frame? Is candidate_trajs_ generated in frenet frame? checkCollisions is in global frame?
The control outputs is calculated in map frame?

Error with Catkin Make

Hello, Many thanks for your work and open sourcing it. I am getting following error with catkin make. I could setup lgsvl simulator and could run it with arrow keys but not with the fiss planner. Also, I am not able to set a reachable goal point using 2d nav goal. I guess the errors are because catkin make was not successful. Any hints are highly appreciated. Thanks!

-- Configuring done
CMake Error at lgsvl_utils/autoware_ai_common/lanelet2_extension/CMakeLists.txt:73 (add_library):
Cannot find source file:

lib/autoware_osm_parser.cpp

Tried extensions .c .C .c++ .cc .cpp .cxx .cu .m .M .mm .h .hh .h++ .hm
.hpp .hxx .in .txx

CMake Error at lgsvl_utils/autoware_ai_common/vector_map/CMakeLists.txt:27 (add_library):
Cannot find source file:

lib/vector_map/vector_map.cpp

Tried extensions .c .C .c++ .cc .cpp .cxx .cu .m .M .mm .h .hh .h++ .hm
.hpp .hxx .in .txx

CMake Error at lgsvl_utils/autoware_ai_planning/lane_planner/CMakeLists.txt:30 (add_library):
Cannot find source file:

lib/lane_planner/lane_planner_vmap.cpp

Tried extensions .c .C .c++ .cc .cpp .cxx .cu .m .M .mm .h .hh .h++ .hm
.hpp .hxx .in .txx

CMake Error at lgsvl_utils/autoware_ai_common/map_file/CMakeLists.txt:64 (add_library):
Cannot find source file:

lib/map_file/get_file.cpp

Tried extensions .c .C .c++ .cc .cpp .cxx .cu .m .M .mm .h .hh .h++ .hm
.hpp .hxx .in .txx

CMake Error at lgsvl_utils/autoware_ai_common/lanelet2_extension/CMakeLists.txt:73 (add_library):
No SOURCES given to target: lanelet2_extension_lib

CMake Error at lgsvl_utils/autoware_ai_common/vector_map/CMakeLists.txt:27 (add_library):
No SOURCES given to target: vector_map

CMake Error at lgsvl_utils/autoware_ai_planning/lane_planner/CMakeLists.txt:30 (add_library):
No SOURCES given to target: lane_planner

CMake Error at lgsvl_utils/autoware_ai_common/map_file/CMakeLists.txt:64 (add_library):
No SOURCES given to target: get_file

CMake Generate step failed. Build files cannot be regenerated correctly.
make: *** [Makefile:320: cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed

[helper]can't run code。

Hello, I have this problem in the last step when I run the code on your github. need your help, thank you very much:

roslaunch fiss_planner fiss_planner.launch
RLException: [fiss_planner.launch] is neither a launch file in package [fiss_planner] nor is [fiss_planner] a launch file name
The traceback for the exception was written to the log file

i can not run the node

I can see the rqt_reconfigure_param GUI, but there are some wrong messages when i launch, should i install lgsvl and mission first?

ERROR: cannot launch node of type [mission_planner/mission_planner]: mission_planner
ROS path [0]=/opt/ros/melodic/share/ros
ROS path [1]=/home/lzj/ros_ws/src
ROS path [2]=/home/lzj/catkin_ws/src
ROS path [3]=/opt/ros/melodic/share
process[fiss_planner_node-3]: started with pid [1388]
ERROR: cannot launch node of type [lgsvl_utils/detected_objects_visualizer]: lgsvl_utils
ROS path [0]=/opt/ros/melodic/share/ros
ROS path [1]=/home/lzj/ros_ws/src
ROS path [2]=/home/lzj/catkin_ws/src
ROS path [3]=/opt/ros/melodic/share
process[rqt_reconfigure-5]: started with pid [1389]

【Help!!!!!】Get paper pdf

hi ,I'm sorry to bother you,
I can't find the address to download the paper from the Internet,
Can you send a paper to my email?
paper: FISS: A Trajectory Planning Framework Using Fast Iterative Search and Sampling Strategy for Autonomous Driving,
email: [email protected]
Thanks a lot!

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.