Given an undirected graph G, the edge orientation problem asks for assigning a direction to each edge to convert G into a directed graph. The aim is to minimize the maximum out degree of a vertex in the resulting directed graph. This problem, which is solvable in polynomial time, arises in many applications. An ongoing challenge in edge orientation algorithms is their scalability, particularly in handling large-scale networks with millions or billions of edges efficiently. We propose a novel algorithmic framework based on finding and manipulating simple paths to face this challenge. Our framework is based on an existing algorithm and allows many algorithmic choices. By carefully exploring these choices and engineering the underlying algorithms, we obtain an implementation which is more efficient and scalable than the current state-of-the-art. Our experiments demonstrate significant performance improvements compared to state-of-the-art solvers. On average our algorithm is 6.59 times faster when compared to the state-of-the-art.
翻译:给定一个无向图G,边定向问题要求为每条边指定一个方向,从而将G转换为有向图,其目标是最小化结果有向图中顶点的最大出度。该问题可在多项式时间内求解,并广泛应用于众多场景。边定向算法当前面临的持续挑战是可扩展性,特别是高效处理包含数百万或数十亿条边的大规模网络。我们提出了一种基于查找和操作简单路径的新型算法框架以应对这一挑战。该框架基于现有算法,并允许多种算法选择。通过仔细探索这些选择并工程化底层算法,我们获得了一个比当前最先进技术更高效、可扩展性更强的实现。实验表明,与最先进的求解器相比,我们的算法性能显著提升:平均运行速度是现有技术的6.59倍。