Coder Social home page Coder Social logo

15418-pastar's Introduction

Parallel Search-Based Planning Algorithms

This repository maintains open-source implementations of several parallel search-based planning algorithms. Currently, the following algorithms are available:

If you use MPLP, please use the following citation:

@article{mukherjee2022mplp,
	title        = {{MPLP}: Massively Parallelized Lazy Planning},
	author       = {Mukherjee, Shohin and Aine, Sandip and Likhachev, Maxim},
	year         = 2022,
	journal      = {IEEE Robotics and Automation Letters},
	publisher    = {IEEE},
	volume       = 7,
	number       = 3,
	pages        = {6067--6074}
}

If you use ePA*SE, please use the following citation:

@inproceedings{mukherjee2022epase,
  author    = {Mukherjee, Shohin and Aine, Sandip and Likhachev, Maxim},
  title     = {{ePA*SE}: Edge-Based Parallel {A*} for Slow Evaluations},
  booktitle = {International Symposium on Combinatorial Search},
  volume={15},
  number={1},
  pages={136--144},
  publisher={{AAAI} Press},
  year={2022}
}

If you use GePA*SE, please use the following citation:

@inproceedings{mukherjee2023gepase,
    title        = {{GePA*SE}: Generalized Edge-based Parallel {A*} for Slow Evaluations},
    author       = {Mukherjee, Shohin and Likhachev, Maxim},
    year         = 2023,
    booktitle    = {International Symposium on Combinatorial Search},
    publisher    = {{AAAI} Press}
}

If you use A-ePA*SE, please use the following citation:

@inproceedings{yang2023aepase,
    title        = {{A-ePA*SE}: Anytime Edge-based Parallel {A*} for Slow Evaluations},
    author       = {Yang, Hanlan and Mukherjee, Shohin and Likhachev, Maxim},
    year         = 2023,
    booktitle    = {International Symposium on Combinatorial Search},
    publisher    = {{AAAI} Press}
}

Usage

Dependencies

The planning code only uses C++ standard libraries and has no external dependencies. However, the robot_nav_2d example has the following dependencies:

  1. Boost C++
  2. OpenCV C++ for visualization
  3. sbpl package

Building

  1. Clone the repository.
    git clone https://github.com/shohinm/parallel_search.git
    
  2. Create build directory and compile.
    cd parallel_search && mkdir build && cd build && cmake ../ -DCMAKE_BUILD_TYPE=Release && make
    

Running the example

Run the following commands from within the build directory:

  • wA*
    ./run_robot_nav_2d wastar
    
  • ARA*
    ./run_robot_nav_2d arastar [time_budget] [heuristic_weight] [heuristic_reduction]
    
  • PwA*, MPLP, PA*SE, ePA*SE, GePA*SE
    ./run_robot_nav_2d [algorithm] [num_threads]
    
  • A-ePA*SE:
    ./run_robot_nav_2d agepase [num_threads] [time_budget] [heuristic_weight] [heuristic_reduction]
    

Maintained by : Shohin Mukherjee

15418-pastar's People

Contributors

shohinm avatar hanlany avatar

Stargazers

Katrina (Yuqiao Hu) avatar

Watchers

 avatar

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.