Empirical Time Complexity of Generic Dijkstra Algorithm
Generic Dijkstra is a novel algorithm for finding the optimal shortest path in both wavelength-division multiplexed networks (WDM) and elastic optical networks (EON), claimed to outperform known algorithms considerably. Because of its novelty, it has not been independently implemented and verified. Its time complexity also remains unknown. In this paper we provide an independent open source implementation of Generic Dijkstra in the Python language. We confirm correctness of the algorithm and its superior performance. In comparison to the Filtered Graphs algorithm, Generic Dijkstra is approximately 3.5 times faster. In 95 Dijkstra is faster than Filtered Graphs. Moreover, we perform run-time analysis and show that Generic Dijkstra running time grows quadratically with the number of graph vertices and logarithmically with the number of edge units. We also discover that the running time of the Generic Dijkstra algorithm in function of network utilization is not monotonic - peak running time is at approximately 0.25 network utilization. This is the first complexity analysis of Generic Dijkstra algorithm.
READ FULL TEXT