A fast algorithm for All-Pairs-Shortest-Paths suitable for neural networks

08/06/2023
by   Markus Meister, et al.
0

Given a directed graph of nodes and edges connecting them, a common problem is to find the shortest path between any two nodes. Here I show that the shortest path distances can be found by a simple matrix inversion: If the edges are given by the adjacency matrix A_ij then with a suitably small value of γ the shortest path distances are D_ij = ceil( log[ (1-γ𝐀)^-1]_ij/logγ) I derive some bounds on γ useful for a practical application. Even when the distance function is not globally accurate across the entire graph, it still works locally to instruct pursuit of the shortest path. In this mode, it also extends to weighted graphs with positive edge weights. For a wide range of dense graphs this distance function is computationally faster than the best available alternative. Finally I show that this method leads naturally to a neural network solution of the all-pairs-shortest-path problem.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset