From 781709c2aaf63850349a0a64cb40c23d4816e69f Mon Sep 17 00:00:00 2001 From: Tim Peng <61765933+typg93@users.noreply.github.com> Date: Fri, 2 Oct 2020 01:09:42 -0400 Subject: [PATCH] Create A*-Algorithm-GUI --- Projects/2-Intermediate/A*-Algorithm-GUI | 38 ++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Projects/2-Intermediate/A*-Algorithm-GUI diff --git a/Projects/2-Intermediate/A*-Algorithm-GUI b/Projects/2-Intermediate/A*-Algorithm-GUI new file mode 100644 index 00000000..72a8b9f9 --- /dev/null +++ b/Projects/2-Intermediate/A*-Algorithm-GUI @@ -0,0 +1,38 @@ +# A* Algorithm + +**Tier:** 2-Intermediate + +The A* Algorithm is very popular graph search algorithm especially in game developement. Unlike Djikstra or Breadth First Search, +A* algorithm is an informed path finding algorithm. You can learn more about it here: + +https://www.geeksforgeeks.org/a-search-algorithm/ + + +The project should have a graphical interface where there are: +- A Starting point +- A End point +- Obstacles + +The purpose of the app is to find the shortest path from the starting point to the end point by implimenting the A* algorithm + +## User Stories + +- [ ] User can change the starting and end point +- [ ] User can add or delete obstacles + +## Useful links and resources + +A* Algorithm: + +https://www.geeksforgeeks.org/a-search-algorithm/ +https://en.wikipedia.org/wiki/A*_search_algorithm#:~:text=*%2Dlike%20algorithm.-,Description,shortest%20time%2C%20etc.). + +If you are new to graph traversals you might want to check out Dijkstra's algorithm and Breadth First Search First: + +https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm +https://en.wikipedia.org/wiki/Breadth-first_search + +## Example projects + +https://www.redblobgames.com/pathfinding/a-star/introduction.html +https://arongranberg.com/astar/