Approximation algorithms for finding low-degree subgraphs

  • Published on

  • View

  • Download


  • Approximation Algorithms for Finding Low-DegreeSubgraphs

    Philip N. KleinDepartment of Computer Science, Box 1910, Brown University, Providence, Rhode Island 02912-1910

    Radha Krishnan and Balaji RaghavachariDepartment of Computer Science, University of Texas at Dallas, Richardson, Texas 75080-0688

    R. RaviTepper School of Business, Carnegie Mellon University, Schenley Park,Pittsburgh, Pennsylvania 15213-3890

    We give quasipolynomial-time approximation algorithmsfor designing networks with a minimum degree. Usingour methods, one can design networks whose connec-tivity is specied by proper functions, a class of 01functions indicating the number of edges crossing eachcut. We also provide quasipolynomial-time approxima-tion algorithms for nding two-edge-connected span-ning subgraphs of approximately minimum degree of agiven two-edge-connected graph, and a spanning tree(branching) of approximately minimum degree of a di-rected graph. The degree of the output network in allcases is guaranteed to be at most (1 ) times theoptimal degree, plus an additive O(log1n) for any > 0.Our analysis indicates that the degree of an optimalsubgraph for each of the problems above is well esti-mated by certain polynomially solvable linear programs.This suggests that the linear programs we describecould be useful in obtaining optimal solutions via branchand bound. 2004 Wiley Periodicals, Inc. NETWORKS, Vol.44(3), 203215 2004

    Keywords: approximation algorithms; minimum-degree sub-graphs; graph algorithms; network design; graph connectivity; NP-hard problems


    Minimizing the maximum degree is desirable in commu-nications networks. The advantage of a network with a lowmaximum degree is that the failure of a single node does notresult in adverse conditions for a large part of the network.Keeping the maximum degree small is also essential indesigning switching networks with identical switches in-stalled at all nodes. In this case, switches for the networkneed to be designed to handle as many connections as themaximum degree of any node. Minimum-degree networksare also useful in building networks for broadcast where wewish to minimize the amount of work done at each site, andalso in designing power grids where the cost of a nodeincreases with the degree of splitting the power [6]. Thus,the very nature of the network itself gives rise to certainconnectivity requirements in the network. In this article, westudy algorithms for designing such low-degree communi-cations networks.

    The following versions of the basic minimum-degreesubgraph problems are considered.

    1. Network design problems where the connectivity re-quirements can be modeled by a {0, 1}-valued functionf on all the cuts in the graph. This framework is generalenough to capture the Steiner and generalized Steinertree problems.

    2. Two-edge-connected spanning subgraph of a givengraph.

    3. Spanning trees in directed graphs.

    In each case, the goal is to find, for the given graph, aminimum-degree subgraph that satisfies the given connec-tivity constraints. We provide approximation algorithmsthat output networks in each case, whose degrees are guar-

    Received November 2002; accepted May 2004Correspondence to: B. Raghavachari; e-mail: rbk@utdallas.eduContract grant sponsor: NSF; contract grant number: CCR-9012357 (toP.N.K.)Contract grant sponsor: NSF PYI award; contract grant number: CCR-9157620 (to P.N.K. and R.R.)Contract grant sponsor: DARPA; contract grant number: N 0014-91-J-4052 (ARPA order No. 8225, to P.N.K. and R.R.)Contract grant sponsor: NSF; contract grant number: CCR-9820902 (to B.R.)Contract grant sponsor: IBM grant fellowship (to R.R.)DOI 10.1002/net.20031Published online in Wiley InterScience ( 2004 Wiley Periodicals, Inc.


  • anteed to be at most (1 ) times optimal, plus an additiveterm of O(log1n) for any 0. The algorithms run inquasipolynomial time O(nlog1n). As a direct consequence,we obtain polynomial-time approximation algorithms for allproblems above with a performance ratio O(n1/) for any 0 (by setting n). In addition to the same perfor-mance guarantees and running times, all the algorithms wedescribe here also have in common the technique of localoptimization, wherein we perform local improvements tothe current solution to iteratively decrease the degrees ofhigh-degree nodes.

    In Section 2, we review previously known results forspecial cases of the problems we consider in this article. InSection 3, we describe our results on general minimum-degree one-connected networks. In Section 4, we addressthe minimum-degree two-edge-connected spanning net-work-design problem. The directed minimum-degree span-ning tree problem is considered in Section 5.


    2.1. The Basic Minimum-Degree Spanning Tree (MDST)Problem

    Given an undirected graph G, the problem is to find aspanning tree of G whose maximum degree is minimal. Thisproblem is a generalization of the Hamiltonian Path prob-lem, and hence, is NP-hard [9]. Furer and Raghavachari [5]gave a polynomial-time approximation algorithm for thisproblem with O(log n) performance guarantee. In subse-quent work [6], they improved their previous results andprovided another polynomial-time algorithm to approximatethe minimum-degree spanning tree to within 1 of the opti-mal. Clearly, no better approximation algorithms are possi-ble for this problem.

    Lawler [16] showed that matroid methods sufficed tosolve the following variant of the minimum-degree span-ning tree problem in polynomial time: given a graph G andan independent set I of nodes of G, find a spanning tree thatminimizes the maximum degree of any node in I. Gavish[10] formulated the minimum-degree spanning tree problemas a mixed-integer program and provided an exact solutionusing the method of Lagrangian multipliers.

    2.2. The Minimum-Degree Steiner Tree Problem

    In this extension to the MDST problem, given an inputgraph and a distinguished subset of the nodes D, we seek tofind a Steiner tree (spanning at least the set D) whosemaximum degree is minimum. The first polynomial-timeapproximation algorithm was provided by Agrawal, Klein,and Ravi [1]. The performance guarantee is a factor ofO(log k), where k is the size of D. This was improved uponby Furer and Raghavachari [6], who provide a polynomial-time approximation algorithm for the problem. Their per-formance guarantee is essentially the same as that shown by

    us. In fact, our work is a generalization of their algorithm,and reduces to their algorithm for this special case. Furerand Raghavachari [7] later demonstrated a polynomial-timealgorithm that finds a tree whose degree is within 1 fromoptimal.

    2.3. The Directed Minimum-Degree Spanning TreeProblem

    Given a directed graph G and a root node r V, theproblem is to find a spanning tree of G rooted at r whosemaximum degree is minimized. For this problem, Furer andRaghavachari [5] gave an algorithm with an approximationratio of O(log n) for this problem. Our article improves themultiplicative factor of O(log n) to an additive term ofO(log n). Unfortunately, the plus one algorithm [7] doesnot generalize to directed graphs.


    We begin this section by describing a framework forformulating general one-connected network problems. Weformulate the minimum degree problem in this framework.

    3.1. Formulation

    A framework for specifying connectivity requirementsfor networks was proposed by Goemans and Williamson[11]. This framework captures a wide variety of requirementspecifications, including Steiner and generalized Steinerconnectivity, general point-to-point connectivity, and T-joins. Building on the work of Agrawal, Klein, and Ravi onthe generalized Steiner tree problem [2], Goemans andWilliamson showed a way to find a network satisfying givenconnectivity requirements that has nearly minimum totaledge cost. In this article, we show how to find a networksatisfying the requirements that has nearly minimum de-gree. We use the framework from [11] for specifying con-nectivity requirements. Our algorithm and analysis arebased on the work of Furer and Raghavachari [6].

    Consider a spanning tree of a graph, and any cut in thegraph. At least one edge of the spanning tree must cross thiscut. Conversely, if a network crosses every cut, it must spanall nodes. More generally, to specify connectivity require-ments for a network, we designate a subset of the cuts in agraph as active cuts, and we require that the network beingdesigned cross every active cut.

    A broad class of requirements can be specified using anapproach of Goemans and Williamson [11]. They specifywhich cuts are active using a 01 function f on the node-subsets of a graph. For a node-subset S, let (S) denote theset of edges each having exactly one endpoint in S. Tospecify that the cut (S) is active, we set f(S) to be 1. Onecan now formulate an integer program for a minimum-degree network crossing all active cuts:

    204 NETWORKS2004

  • Min d

    subject to constraints:

    xS fS S V

    xv d v V (IP)

    xe 0, 1 e E

    Here, for any subset F of edges, x(F) is defined to be eFxe. We call any feasible solution to the above IP, an f-join.It is easy to verify that minimal f-joins are forests.

    Goemans and Williamson [11] focus on a special class offunctions f that can be used to formulate many importantconnectivity requirements. They called these functionsproper. A function f : 2V 3 {0, 1} is proper if thefollowing properties hold.

    1. [Null] f(A) 0;2. [Symmetry] f(S) f(V S) for all S V; and3. [Disjointness] If A and B are disjoint, then f( A) f(B) 0 implies f( A B) 0.

    We are interested in solutions to (IP) for the class of properfunctions f. Examples of problems that fit within this frame-work other than the minimum-degree Steiner trees are min-imum-degree generalized Steiner forests, minimum-degreeT-joins, and minimum-degree point-to-point connectionproblems.

    3.2. Preliminaries: Toughness, Weakness and LowerBounds

    Toughness, first defined by Chvatal in [4], is a measureof how hard it is to disconnect a graph into many compo-nents by removing a small number of nodes. The toughnessof a graph is the minimum (over all nontrivial node subsets)of the ratio of the number of nodes removed (X) to thenumber of connected components in the remaining graph.That is, it is the minimum of all ratios of X to the numberof components in G X, where X ranges over all nontrivialnode subsets of G. Computing the toughness of a graph wasshown to be NP-complete by Bauer, Hakimi, andSchmeichel [3]. Win [20] has shown the following interest-ing relationship between the toughness of a graph and theminimum-degree spanning tree problem. He showed that ifthe toughness of a graph is at least 1/(k 2), then it has aspanning tree whose degree is at most k (for k 2).

    The definition of toughness we have given differsslightly from Chvatals original definition in [4]. Accordingto our definition, the minimum toughness ratio is nevermore than 1 (for nonsingleton graphs), because even asingleton X yields a ratio of at most 1. Chvatal definestoughness to be the same minimum ratio, but the minimumis taken only over those node subsets X for which G X

    has at least two components. According to this definition,the minimum ratio can be arbitrarily large.

    We generalize the above notion to allow active compo-nents defined by proper functions f. For any X V, aconnected component Y of G X is active under a properfunction f whenever f(Y) 1. The f-toughness of a graphfor any given function f is the minimum ratio of the numberof nodes removed to the number of active componentsformed. In other words, it is the minimum ratio of X to thenumber of active components in G X, where X rangesover all nontrivial node subsets of G. For any subset X ofnodes, this ratio is termed the f-toughness of the set X. Thus,the f-toughness of the graph is the minimum f-toughness ofany of its nontrivial node subsets. Note that ordinary tough-ness is a special case of f-toughness as we have defined it,because it corresponds to a function f where every nontrivialsubset of the nodes of the graph is active. We are interestedin computing the f-toughness of the graph for proper func-tions f. Call any single node that forms an active set aterminal. Note that as long as there is at least one terminal,the f-toughness ratio is at most 1, because this is the ratioachieved on removing a single terminal.

    We shall refer to the reciprocal of the f-toughness of agraph as its f-weakness. The notion of weakness of a grapharises as a dual to the problem of constructing minimum-degree networks. The f-weakness of the graph is an estimateof the vulnerability of any f-join. A node subset with highvalue of f-weakness represents a weak spot in such a net-work: damage to this subset results in nearly the worstdisconnection among the nodes in the network. To motivatethe relationship between the minimum degree of any f-joinand the f-weakness, we prove the following lemma.

    Lemma 3.1. For any function f, the optimum value of (IP)is at least the f-weakness of the graph.

    Proof. Consider the node set X achieving the optimalf-weakness (see Fig. 1). Let the number of active compo-nents in G X under f be k. In any f-join, each of the kactive components in G X must have an edge to X. Thus,

    FIG. 1. f-weakness is a lower bound on the maximum degree of an f-join.In a feasible f-join, the degree of nodes in X is at least ratio of number ofactive components created on deleting X to the cardinality of X.

    NETWORKS2004 205

  • the average degree (and, hence, the maximum degree) of anode of X in an optimal solution to (IP) is at least k/X, thef-weakness of the graph.

    3.3. The Algorithm and Its Analysis

    We now describe the algorithm for providing an approx-imate solution to (IP) and analyze its performance. As inputwe are given an undirected graph G (V, E), an arbitrarynumber 0 to determine the performance accuracy, anda proper function f defined on the cuts of G. We can assumewithout loss of generality that the graph G is connected, forotherwise we can work on each connected component of Gindependently. Our algorithm uses iterative local improve-ments and outputs a forest F that is feasible for the coveringconstraints of (IP). Note that we can always assume withoutloss of generality that any feasible solution to (IP) is theincidence vector of a forest [11]. Feasible solutions satisfythe following lemma.

    Lemma 3.2 ([12]). Let F denote a subset of the edge set ofG. F is a feasible solution to (IP) if and only if f(N) 0 foreach connected component N of F.

    3.3.1. OverviewThe algorithm starts with a feasible solution to (IP) and

    iteratively applies improvement steps aimed at reducing thedegree of high-degree nodes. Intuitively, if we find a cyclein the graph that contains a node w of high degree, and if alledges that must be added to the current feasible solution toform this cycle are incident to low-degree nodes, then wecan improve the current solution by adding in th...


View more >