The GitHub repository hosts Python scripts for analyzing road network centrality. It offers implementations of Dijkstra's and A* algorithms, Brandes' algorithm for betweenness centrality, and closeness centrality calculations. Visualizations depict centrality distributions, aiding in identifying key cities. Ideal for network analysis tasks.
Welcome to the Road-Network-Analysis repository! This project provides a set of Python scripts for analyzing and visualizing centrality measures in road networks. Centrality measures such as betweenness and closeness are essential for understanding the importance and connectivity of cities within a road network, making them valuable tools for transportation planning, urban development, and network optimization.
- Dijkstra's Algorithm: Calculate shortest paths between cities using Dijkstra's algorithm.
- A-star Algorithm: Find optimal paths between cities using the A* search algorithm.
- Brandes' Algorithm: Compute betweenness centrality for each city in the network using Brandes' algorithm.
- Closeness Centrality: Determine the closeness centrality for each city based on the average shortest path length to all other cities.
- Centrality Analysis: Analyze centrality measures to identify key cities and their importance within the network.
- Centrality Visualization: Visualize centrality distributions with histograms for better insights.
The correct order of the project files is:
- initialization.py
- city_country_distribution.py
- road_connectivity_analysis.py
- country_removal_simulation
- connected_component_analysis
- Astar_pathfinding.py
- dijkstra_shortest_path.py
- pathfinding_comparison.py
- algorithm_performance_analysis.py
- dijkstra_betweenness.py (high runtime)
- brandes_betweenness.py
- closeness_betweenness_analysis.py
- centrality_analysis.py
(data_runtime.txt is just an output example)
Hope you like it!