Graph learning with a nearest neighbor approach
In this paper, we study how to traverse all edges of an unknown graph G = (V;E) that is bi-directed and strongly connected. This problem can be solved with a simple algorithm that traverses all edges at most twice, and no algorithm can do better in the worst case. Artificial Intelligence researchers, however, often use the following online nearest neighbor algorithm: “repeatedly take a shortest path to the closest unexplored edge and traverse it.” We prove bounds on the worst-case complexity of this algorithm. We show, for example, that its worst-case complexity is close to optimal for some classes of graphs, such as graphs with linear or star topology and dense graphs with edge lengths one. In general, however, its complexity can grow faster than linear in the sum of all edge lengths, although not faster than log(V ) times the sum of all edge lengths.