We study the use of machine learning techniques to solve a fundamental shortest path problem, which is also known as the single-source many targets shortest path problem (SSMTSP). Given a directed graph with non-negative edge weights, our goal is to compute a shortest path from a given source node to any of several designated target nodes. Basically, our idea is to combine a machine learning approach with an adapted version of Dijkstra's algorithm to solve this problem: Based on the trace of Dijkstra's algorithm, we design a neural network that predicts the shortest path distance after only a few iterations. The prediction is then used to prune the search space explored by Dijkstra's algorithm, which allows us to save a significant fraction of operations on the underlying priority queue. Crucially, our approach always computes the exact shortest path distances, even if the prediction is inaccurate, and never uses more queue operations than the standard algorithm. In fact, we are able to prove a lower bound on the number of queue operations saved by our new algorithm, which depends on the accuracy of the prediction. Our bound applies to arbitrary graphs as long as (some of) the edge weights are drawn at random. Our experimental findings on random graphs confirm these bounds and show that the actual savings are oftentimes significantly higher.
翻译:我们研究使用机器学习技术来解决一个基本最短路径问题,这个方法也称为单一来源的许多目标最短路径问题(SSMTSP )。根据一个带有非负边缘重量的定向图表,我们的目标是从给定源节点到任何几个指定目标节点计算一条最短路径。基本上,我们的想法是将机器学习方法与Dijkstra的修改版算法结合起来,以解决这一问题:根据Dijkstra的算法,我们设计了一个神经网络,预测只经过几次迭代后最短路径距离。然后,预测用于将Dijkstra的算法所探索的搜索空间推平,这使我们能够在基本优先列队列上节省相当一部分的操作。我们的方法总是将机器学习方法与经过修改的Dijkstra的算法的算法结合起来,以解决这一问题:根据Dijkstra的算法的痕迹,我们能够证明我们新算算算算法所保存的排程程程程程程程短,这取决于预测的精确度。我们所测算算算法的随机图通常被任意地标定地显示。我们实际储蓄的高度。