2D Pathfinding Algorithms API
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
This API is meant to implement several pathfinding algorithms and highlight pros and cons of each of them. Whether it's computation time or shortest path, each have flaws and strengths that I wished to display with graphs. For that I encapsulated several features to make the program easy to handle.
Here is a comparison of paths' length for each implemented algorithms. ( 0 means no path was found ). It also shows stability and displays a certain trust factors for some that others may not have.
This is the computation time comparison, showing that a fast computation time can hurt the path, but not necessarily. Some may have longer computation time AND longer paths. But some algorithms may not be implemented due to environment issue or lack of knowledge about the environment. For example, you can add several walls to the environment and see many of the algorithms fail while others might be more robust.
- (Optional) Click on
Fork
- Clone the project on your local machine :
git clone https://github.com/master-coro/artin-pathfinding.git
- Install dependencies :
pip3 install -r requirements.txt
As of now the program stores Data from several pathfinding solutions on different environments generated with the same conditions. It runs on a 70x20 matrix with 20% of available space covered by obstacles. Those obstacles change at each generated environments.
- Run
python3 src/main.py
- Enjoy the data plots
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Choose any open issue from here.
- Comment on the issue:
Can I work on this?
and get assigned. - Make changes to your
Fork
and send a PR.
Otherwise just create the issue yourself, and we'll discuss and assign you to it if serves the project !
To create a PR:
Follow the given link to make a successful and valid PR: https://help.github.com/articles/creating-a-pull-request/
To send a PR, follow these rules carefully, otherwise your PR will be closed:
- Make PR title in this formats:
Fixes #IssueNo : Name of Issue
Feature #IssueNo : Name of Issue
Enhancement #IssueNo : Name of Issue
According to what type of issue you believe it is.
For any doubts related to the issues, i.e., to understand the issue better etc, comment down your queries on the respective issue.
Distributed under the MIT License. See LICENSE
for more information.
Erwin Lejeune - @spida_rwin - [email protected]
Everyone part of the original team or that assisted throughout the development.