Finding the Center and Centroid of a Graph with Multiple Sources
Matthew Chou
TL;DR
The paper tackles finding a fair meeting place among $S$ sources on a graph by defining center as the node minimizing $ecc(v)=\max_{s_j\in S} d(v,s_j)$ and centroid as the node minimizing $g(v)=\sum_{j} d(v,s_j)$. It introduces a multiple-source alternating Dijkstra's framework, with optimized stopping conditions to significantly reduce exploration while preserving accuracy, and extends this with an A*-based variant. The center problem is solved optimally within this framework, while the centroid solution is near-optimal and experimentally exhibits substantial savings in compute, achieving roughly 2x–12x reductions in explored nodes. The work demonstrates practical, low-complexity algorithms for online or continuously updated meeting-place decisions and outlines future directions for dynamic updates and improved centroid accuracy.
Abstract
We consider the problem of finding a "fair" meeting place when S people want to get together. Specifically, we will consider the cases where a "fair" meeting place is defined to be either 1) a node on a graph that minimizes the maximum time/distance to each person or 2) a node on a graph that minimizes the sum of times/distances to each of the sources. In graph theory, these nodes are denoted as the center and centroid of a graph respectively. In this paper, we propose a novel solution for finding the center and centroid of a graph by using a multiple source alternating Dijkstra's Algorithm. Additionally, we introduce a stopping condition that significantly saves on time complexity without compromising the accuracy of the solution. The results of this paper are a low complexity algorithm that is optimal in computing the center of S sources among N nodes and a low complexity algorithm that is close to optimal for computing the centroid of S sources among N nodes.
