this project used to compare different searching techniques in a weighted grid with the ability to weight individual nodes, create a goal node and change it's position , change the position of the start node, and create a wall which is a blocking node, the goal of this simulation is to find a route from the starting node to the goal node using the picked algorithm, you can create random grid with defined probability for the wall nodes, and can adjust the speed of the simulation.
this project has both frontend created using react, and backend - developed with python - which contains the implementation of the algorithms and the API endpoints
this simulation contains
- BFS
- DFS
- UCS
- DLS
- IDDS
- A*
- Greedy search
clone this repository locally
git clone https://github.com/hazemayman/AI-Search-techniques.git
make sure python 3.5 or above installed and install FLASK
cd AI-Search-techniques
pip install Flask
pip install -U flask-cors
install all the required dependencies for the front end
npm install
start the server by navigating to the /api folder and running the api.py
python api.py
start the react front end application by navigating. make sure you are in the root folder
npm start
instead of running in development mode using npm start, you can try to build the source code and serve it for optimized more smooth version of the application
make sure you are on the root folder
npm run build
npm install -g serve
serve -s build