This project, developed by Amir Saberhabibi, is based on a project for the Algorithms Design course, mentored by Dr. Maziar Salahi at the University of Guilan, Faculty of Mathematical Sciences. This project aims to provide tools for better network analysis and visualization using graph-based algorithms (currently Dijkstra).
-
Install Dependencies:
pip install -r requirements.txt
-
Run the Application:
streamlit run main.py
- Loads and processes the Unicauca Network Flows Dataset.
- Visualizes the network graph.
- Allows users to select source and destination nodes to compute the shortest path using Dijkstra's Algorithm.
- Displays the shortest path and its total cost.
- Demonstrates Dijkstra's Algorithm on a randomly generated graph.
- Users can adjust the number of nodes, edges, and other parameters.
- Visualizes the graph and highlights the shortest path.
- Analyzes the performance of Dijkstra's Algorithm.
- Allows users to configure the number of nodes, edges, and other parameters.
- Measures and visualizes the average runtime of the algorithm for different configurations.
This project is licensed under the MIT License.