Call routing and the ratcatcher
- Cite this article as:
- Seymour, P.D. & Thomas, R. Combinatorica (1994) 14: 217. doi:10.1007/BF01215352
Suppose we expect there to bep(ab) phone calls between locationsa andb, all choices ofa, b from some setL of locations. We wish to design a network to optimally handle these calls. More precisely, a “routing tree” is a treeT with set of leavesL, in which every other vertex has valency 3. It has “congestion” <k if for every edgee ofT, there are fewer thank calls which will be routed alonge, that is, between locationa, b in different components ofT/e. Deciding if there is a routing tree with congestion <k is NP-hard, but if the pairsab, withp(ab)>0 form the edges of a planar graphG, there is an efficient, strongly polynomial algorithm.
This is because the problem is equivalent to deciding if a ratcatcher can corner a rat loose in the walls of a house with floor planG, wherep(ab) is a thickness of the wallab. The ratcatcher carries a noisemaker of powerk, and the rat will not move through any wall in which the noise level is too high (determined by the total thickness of the intervening walls between this one and the noisemaker).
It follows that branch-width is polynomially computable for planar graphs—that too is NP-hard for general graphs.