Affiliation:
1. Department of Computer and Information Science, University of Konstanz, 78464 Konstanz, Germany
Abstract
Given an undirected graph, a balanced node separator is a set of nodes whose removal splits the graph into connected components of limited size. Balanced node separators are used for graph partitioning, for the construction of graph data structures, and for measuring network reliability. It is NP-hard to decide whether a graph has a balanced node separator of size at most [Formula: see text]. Therefore, practical algorithms typically try to find small separators in a heuristic fashion. In this paper, we present a branching algorithm that for a given value [Formula: see text] either outputs a balanced node separator of size at most [Formula: see text] or certifies that [Formula: see text] is a valid lower bound. Using this algorithm iteratively for growing values of [Formula: see text] allows us to find a minimum balanced node separator. To make this algorithm scalable to real-world (road) networks of considerable size, we first describe pruning rules to reduce the graph size without affecting the minimum balanced separator size. In addition, we prove several structural properties of minimum balanced node separators which are then used to reduce the branching factor and search depth of our algorithm. We experimentally demonstrate the applicability of our algorithm to graphs with thousands of nodes and edges. We showcase the usefulness of having minimum balanced separators for judging the quality of existing heuristics, for improving preprocessing-based route planning techniques on road networks, and for lower bounding important graph parameters. Finally, we discuss how our ideas and methods can also be leveraged to accelerate the heuristic computation of balanced node separators.
Publisher
World Scientific Pub Co Pte Ltd
Subject
Discrete Mathematics and Combinatorics