An open-source implementation of the original An Intelligent Bi-Directional Parallel B* Routing Algorithm, reconstructed from the authoritative paper and provided in both Python and C++.
-
Multi-language support:
- Python script implementations (
IBP-B-Star Pathfinding.py,AStar-BStar New Implementation.py) - C++ implementation with CMake (
IBP-B-Star Pathfinding.cpp,IBP-B-Star Pathfinding.hpp,main.cpp)
- Python script implementations (
-
Original paper included for reference (
An Intelligent Bi-Directional Parallel B-Star Routing Algorithm.pdf) -
Dual-mode operation: simple proof‑of‑concept vs. engineering‑grade maze support
-
Licensed under GNU GPL‑3.0 for free use, modification, and distribution
An Intelligent Bi-Directional Parallel B-Star Routing Algorithm.pdfContains the full paper with algorithm description, pseudocode, and performance analysis.IBP-B-Star Pathfinding.hppHeader file defining core classes and functions for the C++ implementation.IBP-B-Star Pathfinding (OldVersion).cppEarly C++ prototype with basic interval evaluation logic.main.cppExample driver to compile, run, and benchmark the C++ implementation.CMakeLists.txtBuild configuration for generating the C++ executable.IBP-B-Star Pathfinding.pyFull-featured Python implementation handling complex mazes.AStar-BStar New Implementation.pyLean Python version illustrating the core B* idea alongside A* for comparison..clang-formatCode style settings for consistent C/C++ formatting.LICENSEText of the GNU GPL‑3.0 license governing this project.
- The original B- idea excels in interval‑based expansion but may stall in complex mazes.
- The engineering‑grade version handles labyrinths reliably but runs roughly twice as slow as a tuned A- on standard grids.
- See the paper’s benchmarks or run your own tests via
main.cppfor detailed comparisons.
Contributions, bug reports, and improvements are welcome! Please fork the repository, create a feature branch, and submit a pull request.
This project is released under the GNU General Public License v3.0. See LICENSE for full terms.