Skip to content

Python project that demonstrates the functionality of various graph search algorithms through a graphical user interface (GUI)

Notifications You must be signed in to change notification settings

BigB021/Graph-Algorithm-Visualizer

Repository files navigation

Graph Algorithm Visualizer

Description

Graph Algorithm Visualizer is a Python project that demonstrates the functionality of various graph search algorithms through a graphical user interface (GUI). It allows users to visualize how different algorithms explore a graph to find a path between two nodes. The project utilizes tkinter for the GUI and a custom graph implementation to perform the searches.

Features

  • Visualize Breadth-First Search (BFS), Depth-First Search (DFS), Uniform Cost Search (UCS), Depth-Limited Search (DLS), and Iterative Deepening Search (IDS).
  • Interactive GUI for easy usage and visualization.
  • Customizable graph for testing different scenarios and algorithms. Components

Graph Algorithm Implementation: A custom graph class that supports various search algorithms. GUI: A tkinter based interface for interaction and visualization. Utility Class: Includes utility functions and classes, such as the GraphVisualizer for rendering the graph on the GUI.

Installation

To get started with Graph Algorithm Visualizer, you'll need to have Python installed on your system. This project was developed with Python 3.x.

  1. Clone the repository to your local machine:

git clone https://github.com/BigB021/Graph-Algorithm-Visualizer.git

  1. Navigate to the cloned directory:

cd graph-algorithm-visualizer

  1. Install the required dependencies (if any):

pip install -r requirements.txt

Usage

To run the visualizer, execute the main script :

python main_script.py

This will open up the GUI, where you can interact with the predefined graph or customize it to your liking. You can visualize different search algorithms by clicking on the respective buttons.

Contributing

Contributions to Graph Algorithm Visualizer are welcome! If you have an improvement or bug fix, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or fix.
  3. Commit your changes with descriptive messages.
  4. Push your branch and open a pull request against the main branch. Please ensure your code adheres to the project's coding style and has been tested thoroughly.

Acknowledgments

This project is inspired by the desire to understand and visualize graph search algorithms in action.

Auhtor : Youssef Aitbouddroub

About

Python project that demonstrates the functionality of various graph search algorithms through a graphical user interface (GUI)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages