Call Control with k Rejections

16
http://www.elsevier.com/locate/jcss Journal of Computer and System Sciences 67 (2003) 707–722 Call control with k rejections $ R. Sai Anand, 1 Thomas Erlebach, Alexander Hall, 1 and Stamatis Stefanakos Computer Engineering and Networks Laboratory (TIK), ETH Zu¨rich, Gloriastrasse 35, CH-8092 Zu¨rich, Switzerland Received 1 October 2001; revised 4 May 2002 Abstract Given a set of connection requests (calls) in a communication network, the call control problem is to accept a subset of the requests and route them along paths in the network such that no edge capacity is violated, with the goal of rejecting as few requests as possible. We investigate the complexity of parameterized versions of this problem, where the number of rejected requests is taken as the parameter. For the variant with pre-determined paths, the problem is fixed-parameter tractable in arbitrary graphs if the link capacities are bounded by a constant, but W ½2-hard if the link capacities are arbitrary. If the paths are not pre-determined, no FPT algorithm can exist even in series–parallel graphs unless P ¼ NP: Our main results are new FPT algorithms for call control in tree networks with arbitrary edge capacities and in trees of rings with unit edge capacities in the case that the paths are not pre-determined. r 2003 Elsevier Science (USA). All rights reserved. 1. Introduction Given a set of connection requests in a communication network, call admission control is the problem of determining which of the requests can be accepted without exceeding the capacity of the network. The goal is to maximize the number of accepted requests or, equivalently, to minimize the number of rejected requests. In [2], Blum et al. argue that, when considering approximation algorithms, it is more meaningful to consider the number of rejected requests as optimization criterion, because the number of rejected requests is expected to be small in practice ARTICLE IN PRESS $ Research partially supported by the Swiss National Science Foundation. Corresponding author. E-mail addresses: [email protected] (R. Sai Anand), [email protected] (T. Erlebach), [email protected] (A. Hall), [email protected] (S. Stefanakos). 1 Supported by the joint Berlin/Zurich graduate program Combinatorics, Geometry, and Computation (CGC), financed by ETH Zurich and the German Science Foundation (DFG). 0022-0000/03/$ - see front matter r 2003 Elsevier Science (USA). All rights reserved. doi:10.1016/S0022-0000(03)00076-X

Transcript of Call Control with k Rejections

http://www.elsevier.com/locate/jcss

Journal of Computer and System Sciences 67 (2003) 707–722

Call control with k rejections$

R. Sai Anand,1 Thomas Erlebach,� Alexander Hall,1 and Stamatis Stefanakos

Computer Engineering and Networks Laboratory (TIK), ETH Zurich, Gloriastrasse 35,

CH-8092 Zurich, Switzerland

Received 1 October 2001; revised 4 May 2002

Abstract

Given a set of connection requests (calls) in a communication network, the call control problem is toaccept a subset of the requests and route them along paths in the network such that no edge capacity isviolated, with the goal of rejecting as few requests as possible. We investigate the complexity ofparameterized versions of this problem, where the number of rejected requests is taken as the parameter.For the variant with pre-determined paths, the problem is fixed-parameter tractable in arbitrary graphs ifthe link capacities are bounded by a constant, but W ½2�-hard if the link capacities are arbitrary. If the pathsare not pre-determined, no FPT algorithm can exist even in series–parallel graphs unless P ¼ NP: Ourmain results are new FPT algorithms for call control in tree networks with arbitrary edge capacities and intrees of rings with unit edge capacities in the case that the paths are not pre-determined.r 2003 Elsevier Science (USA). All rights reserved.

1. Introduction

Given a set of connection requests in a communication network, call admission control is theproblem of determining which of the requests can be accepted without exceeding the capacity ofthe network. The goal is to maximize the number of accepted requests or, equivalently, tominimize the number of rejected requests. In [2], Blum et al. argue that, when consideringapproximation algorithms, it is more meaningful to consider the number of rejected requests asoptimization criterion, because the number of rejected requests is expected to be small in practice

ARTICLE IN PRESS

$Research partially supported by the Swiss National Science Foundation.�Corresponding author.

E-mail addresses: [email protected] (R. Sai Anand), [email protected] (T. Erlebach), [email protected]

(A. Hall), [email protected] (S. Stefanakos).1 Supported by the joint Berlin/Zurich graduate program Combinatorics, Geometry, and Computation (CGC),

financed by ETH Zurich and the German Science Foundation (DFG).

0022-0000/03/$ - see front matter r 2003 Elsevier Science (USA). All rights reserved.

doi:10.1016/S0022-0000(03)00076-X

due to overprovisioning of network resources. If a network provider was frequently forced toreject a large number of requests, he or she would tend to increase the capacity of the network sothat most requests can be accepted. In this paper, we consider call admission control from theviewpoint of parameterized complexity [7]. Roughly speaking, the approach of parameterizedcomplexity is to capture a part of the input or output of an NP-hard problem by a parameter,usually denoted by k: Then one tries to find a fixed-parameter tractable (FPT) algorithm for theproblem, i.e., an algorithm with running time Oð f ðkÞ polyðnÞÞ; where f ðkÞ is an arbitrary functionof the parameter and polyðnÞ is a polynomial function of the input size n: If such an algorithmexists, this means that there is a good hope of solving large instances of the problem efficientlyprovided that the value of the parameter k is small. Thus, the so-called combinatorial explosion

that is typical for NP-hard problems can be restricted to the parameter. Motivated by thearguments given above, we consider a parameterized version of the call admission controlproblem and take the number of rejected requests as the parameter. We investigate differentvariants of the problem with respect to the network topology, the link capacities, and the existenceof pre-determined routes for the requests.

1.1. Preliminaries

In the undirected version of the problem, the communication network is modelled as anundirected graph G ¼ ðV ;EÞ with edge capacities c : E-N: Connection requests are representedby pairs of nodes. Accepting a request ðu; vÞ requires reserving one unit of bandwidth on all edgesalong a path from u to v: A set of paths is feasible if no edge eAE is contained in more than cðeÞpaths. For a given set P of paths in a graph with edge capacities, an edge e is called violated (by P)if the number of paths in P that contain e is greater than cðeÞ: The basic call admission controlproblem can now be defined as follows.

CallControl: Given a set R of requests in an undirected graph G ¼ ðV ;EÞ and a capacityfunction c : E-N; compute a subset ADR and assign a path to each request in A such that theresulting set of paths is feasible. The goal is to minimize the number jR\Aj of rejected paths.CallControl is NP-hard even in undirected trees with edge capacities 1 or 2 [10] and in trees ofrings with unit edge capacities [8]. Note that in the case of unit edge capacities, all acceptedrequests must be routed along edge-disjoint paths.

We introduce the following parameterized version of the problem:CallControl-k: Given a set R of requests in an undirected graph G ¼ ðV ;EÞ; a capacity function

c : E-N; and an integer kX0; compute a subset ADR and assign a path to each request in A suchthat the resulting set of paths is feasible and at most k requests are rejected, or decide that no suchsubset exists. There are several interesting variations of the call control problem. First, it issometimes the case that the assignment of paths to requests cannot be determined by thealgorithm, but is pre-determined by other constraints (such as routing protocols). In this case, aninstance of the problem includes, for every request r ¼ ðu; vÞ; an undirected path pr from u to v: Ifr is accepted, it must be routed along pr: We denote this variant of CallControl by CallControlPreand its parameterized version by CallControlPre-k: Furthermore, it is sometimes meaningful tomodel the communication network as a directed graph G ¼ ðV ;EÞ: In this case, we assume that arequest ðu; vÞ asks for a directed path from u to v in G: A special case of directed graphs are thebidirected graphs, i.e., graphs that can be obtained from an undirected graph by replacing each

ARTICLE IN PRESS

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722708

undirected edge with two directed edges of opposite directions. Therefore, we use terms like‘‘CallControl in bidirected trees of rings’’ to specify a concrete variant of the problem. We alwaysuse jI j to denote the size of a given instance of a call control problem. An algorithm for aparameterized call control problem is an FPT algorithm if its running time is bounded byOð f ðkÞ polyðjI jÞÞ for some function f : Specific network topologies that we consider are chains(graphs consisting of a single path), rings (graphs consisting of a single cycle with at least threenodes), trees (connected, acyclic graphs) and trees of rings, as well as their bidirected versions. Anundirected graph is a tree of rings if it can be obtained by starting with a ring and then, repeatedly,adding a disjoint ring to the graph and then identifying one node of the new ring with an arbitrarynode of the existing graph. A standard technique in the tool-box of parameterized complexity isthe method of bounded search trees [7]. This technique tackles a problem by searching for asolution in a search tree whose size (number of nodes) is bounded by a function of the parameter

only, for example, 2k: If the work at each node of the search tree is polynomial in the size of theinstance, an FPT algorithm is obtained. This technique lends itself nicely to the parameterized callcontrol problem: If we try to find a solution that rejects at most k requests, we identify a small setRrej of rejection candidates. This set must have the property that, if a solution rejecting at most k

requests exists at all, then there exists a solution rejecting at most k requests that rejects at leastone request in Rrej: Thus we can branch for each request rARrej and check recursively whether the

set R\frg admits a solution rejecting at most k 1 requests. If the resulting search tree is exploredup to depth k and no solution is found, we know that no solution rejecting at most k requests canexist. We will apply the technique of bounded search trees in order to obtain FPT algorithms forparameterized call control problems. The interesting part of each FPT algorithm will be how a setRrej of rejection candidates can be identified and how its size can be proved to be bounded by a

constant or by a function of k:

1.2. Our results

In Section 2, we summarize FPT results and hardness results of parameterized call controlproblems that can be derived from existing results: CallControlPre-k is FPT in general graphsprovided that the edge capacities are bounded by a constant. If the edge capacities can bearbitrary, CallControlPre-k contains HittingSet as a special case and is thus W ½2�-hard.CallControl-k is NP-hard even for k ¼ 0 and unit edge capacities, implying that there cannot bean FPT algorithm unless P ¼ NP: These results apply to undirected and bidirected graphs. Ourmain results are given in Sections 3 and 4. In Section 3, we devise an FPT algorithm forCallControl-k in trees with arbitrary edge capacities. In Section 4, we present an FPT algorithmfor CallControl-k in trees of rings with unit edge capacities. Finally, we draw our conclusions inSection 5.

1.3. Previous work on call control algorithms

We are not aware of any previous work on parameterized versions of call control problems.Previous work on call admission control has focussed on on-line algorithms (that receive theconnection requests over time and must accept or reject each request without knowledge about thefuture) and approximation algorithms. In most of this work, the number of accepted requests has

ARTICLE IN PRESS

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722 709

been used as the objective function. A survey of known results on on-line call control algorithmscan be found in the book by Borodin and El-Yaniv [4, Chapter 13]. However, call controlproblems are not only interesting in the on-line scenario. A number of researchers have studiedoff-line approximation algorithms for the maximum edge-disjoint paths problem (MEDP), i.e.,CallControl with unit edge capacities and the number of accepted requests as the objectivefunction. The problem is polynomial for chains, rings, and undirected trees. Constant-factorapproximation algorithms have been found for bidirected trees [9], trees of rings [8], and a class ofgraphs including two-dimensional meshes [13]. For MEDP in general directed graphs with m

edges, it is known that no approximation algorithm can achieve ratio Oðm12eÞ for any e40 unless

P ¼ NP [11]. Approximation algorithms with ratio Oðffiffiffiffi

mp

Þ have been found for MEDP [12] andalso for its generalization to arbitrary edge capacities, bandwidth requirements and profit valuesassociated with the requests, the unsplittable flow problem [1] (the ratio increases by a logarithmicfactor if the largest bandwidth requirement can exceed the smallest edge capacity). We point outthat, unlike in the unsplittable flow problem, all requests have the same bandwidth requirement inour definition of the call control problem. On-line algorithms and approximation algorithms forCallControlPre with the number of rejected requests as objective function were studied by Blumet al. [2]. They observed that, in the case of unit edge capacities, this problem is a special case ofVertexCover. Concerning on-line algorithms, they gave a 2-competitive algorithm for chains witharbitrary capacities, a ðc þ 1Þ-competitive algorithm for arbitrary networks with capacities

bounded by c; and an Oðffiffiffiffi

mp

Þ-competitive algorithm for arbitrary networks with m edges andarbitrary edge capacities. Their algorithms are allowed to preempt (reject) requests that have beenaccepted earlier. Furthermore, they presented an off-line Oðlog mÞ-approximation algorithm forarbitrary graphs and arbitrary edge capacities.

2. General networks

First, let us consider the problem CallControlPre-k for networks with unit edge capacities, i.e.,cðeÞ ¼ 1 for all eAE: A set of accepted paths is feasible if the paths are pairwise edge-disjoint. Theconflict graph of a given set P of paths is the graph H ¼ ðP;E0Þ with a vertex for each path in P

and an edge between two vertices if the corresponding paths share an edge. Then, any feasiblesubset ADP is an independent set in H; and its complement P\A is a vertex cover in H; i.e., asubset of the vertices such that each edge has at least one endpoint in the subset. Therefore,checking whether there exists a feasible solution that rejects at most k paths is equivalent todetermining whether H contains a vertex cover of size at most k: The vertex cover problem is well

known to be FPT [7]; the best known algorithm so far has running time Oðkn þ 1:271kk2Þ fordeciding whether a graph on n nodes has a vertex cover of size at most k [6]. Thus,CallControlPre-k is FPT for arbitrary graphs with unit edge capacities. Now assume that the edgecapacities are bounded by a constant c: If a set of paths violates some edge e; then we can obtain aset Prej of rejection candidates by taking an arbitrary set of cðeÞ þ 1 paths containing e: Thus we

obtain a search tree of depth k and branching degree at most c þ 1: The size of this tree is

Oððc þ 1ÞkÞ: The task to be carried out at each node of the search tree is determining whetherthere exists a violated edge e and, if so, picking cðeÞ þ 1 paths through e to obtain the set Prej: This

ARTICLE IN PRESS

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722710

can easily be done in polynomial time. Hence, there is an algorithm with running time Oððc þ1Þk polyðjI jÞÞ for CallControlPre-k in arbitrary graphs provided that all edge capacities arebounded by the constant c: (Recall that jI j denotes the size of the given instance ofCallControlPre-k:) This discussion leads to the following proposition.

Proposition 2.1. CallControlPre-k is fixed-parameter tractable for arbitrary directed or undirectedgraphs provided that the edge capacities are bounded by a constant.

Proposition 2.1 leaves open the cases where the edge capacities can be arbitrarily large and/orthe paths are to be determined by the algorithm. We show that these cases are unlikely to be FPTfor arbitrary graphs. Our hardness results apply even to series–parallel graphs, a very restrictedsubclass of planar graphs with treewidth at most two [3]. First, we prove W ½2�-hardness ofCallControlPre-k for arbitrary edge capacities. Hardness for W ½t� for some tX1 is consideredstrong evidence that a problem is not FPT [7].

Proposition 2.2. If the edge capacities can be arbitrarily large, CallControlPre-k is W ½2�-hard even

for series–parallel graphs.

Proof. We show that the problem HittingSet-k is a special case of CallControlPre-k: An instanceof HittingSet-k consists of a family S ¼ fS1;S2;y;Smg of subsets of a ground set U ¼f1; 2;y; ng and a parameter k: The problem is to determine whether there is a subset TDU ;jT jpk; such that T ‘‘hits’’ all sets in S; i.e., T-Sia| for all 1pipm: HittingSet-k is W ½2�-complete [7]. Given an instance of HittingSet-k; we construct a graph as shown in Fig. 1. First,take a row of m þ 1 nodes, the left-most being denoted as s and the right-most as t: Then connecteach pair of consecutive nodes in this row by n þ 1 chains of length two. We refer to the n þ 1chains between the ith node and the ði þ 1Þth as layer i: The chains of one layer are numberedfrom 1 to n þ 1 (top to bottom). The ðn þ 1Þth chain of layer i will correspond to the set Si in thehitting set problem. It is easy to see that this graph is series–parallel. Now, for every element uAU

of the ground set, we introduce a request for a path from s to t: For each layer i with ueSi; thepath uses the uth chain of layer i: For each layer i with uASi; the path uses the ðn þ 1Þth chain oflayer i: The capacities of the edges of the first n chains of each layer are set to 1. The capacities ofthe edges of the ðn þ 1Þth chain of layer i are set to jSij 1; for 1pipm: This completes the

ARTICLE IN PRESS

layer 3 layer 2 layer 1

ts

Fig. 1. The type of graph used in the W ½2�-hardness proof.

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722 711

construction of an instance of CallControlPre-k: By construction, it is easy to see that a feasiblesolution to the resulting instance of CallControlPre-k must reject at least one of the paths goingthrough the ðn þ 1Þth chain of each layer. The paths going through the ðn þ 1Þth chain of layer iare just the elements of the set Si in the hitting set instance. Hence, the set of rejected paths in afeasible call control solution corresponds to a hitting set in the original instance. Similarly, anyhitting set of size c immediately gives a feasible call control solution rejecting c paths. This showsthat HittingSet-k is a special case of CallControlPre-k in series–parallel graphs with arbitrary edgecapacities. Since HittingSet-k is W ½2�-complete, we get that CallControlPre-k is W ½2�-hard. &

Proposition 2.2 shows that CallControlPre-k is W ½2�-hard. Concerning an upper bound on theparameterized complexity of this problem, CallControlPre-k is easily seen to be contained inW ½P�; the class at the top of the W -hierarchy, but we do not know whether the problem lies in anyof the classes W ½t� for tX2: Now we turn to the problem CallControl-k: If a problem is FPT, thisimplies that the problem is polynomial for each fixed value of the parameter k: Therefore, thefollowing proposition shows that CallControl-k is very unlikely to be FPT even for series–parallelgraphs.

Proposition 2.3. CallControl-k is NP-hard for k ¼ 0 even in series–parallel graphs with unit edgecapacities.

Proof. For k ¼ 0; the problem CallControl-k with unit edge capacities reduces to checkingwhether all requests can be accepted and routed along edge-disjoint paths. The edge-disjoint pathsproblem has been proved to be NP-hard for series–parallel graphs by Nishizeki et al. [16]. &

In order to get FPT results not covered by Proposition 2.1, we must allow arbitrary capacitiesor arbitrary (not pre-determined) paths. In view of Propositions 2.2 and 2.3, however, we have torestrict the class of graphs that we allow as network topologies. Consequently, we considerCallControl-k in tree networks with arbitrary edge capacities in Section 3 and CallControl-k intrees of rings with unit edge capacities in Section 4.

3. Trees with arbitrary capacities

In this section, we develop FPT algorithms for trees with arbitrary edge capacities. Section 3.1discusses the algorithm for undirected trees in detail. Section 3.2 explains how the result can beadapted to bidirected trees. Before we start, we remark that CallControl can be solved optimallyin polynomial time for chain networks (using techniques of [5]) and for undirected trees withunit edge capacities, but becomes NP-hard for trees already if edge capacities in f1; 2g areallowed [10].

3.1. The undirected case

Let an instance of CallControl-k in tree networks be given by an undirected tree T ¼ ðV ;EÞwith edge capacities c : E-N; a set P of paths in the tree, and an integer parameter kX0:

ARTICLE IN PRESS

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722712

Consider the tree to be rooted at an arbitrary node. If k ¼ 0; the problem reduces to checkingwhether the set P is feasible, which can be done efficiently. So we assume from now on that k40:If there is no violated edge, answer YES and output P as a solution. Otherwise, let e be a violatededge such that there is no other violated edge in the subtree below e: In what follows, we refer tosuch an edge as a bottom-most violated edge. The algorithm determines a set Pe of pathscontaining edge e such that jPej is small enough (more precisely, jPejp2k) to be taken as the set ofrejection candidates for the bounded search tree technique. Then the algorithm can branch foreach pAPe and check recursively whether there exists a solution for P\fpg that rejects at mostk 1 paths. At depth k of the search tree, k paths have been rejected, and we will have eitherfound a feasible solution or no solution with k or less rejections exists. In the remainder of thissection, we show how the algorithm determines a set Pe of rejection candidates satisfying jPejp2k:Since e is a violated edge, it is clear that at least one of the paths in P that contain e must berejected. Moreover, it is easy to see that there exists a feasible solution that rejects a path throughe which contains a maximal set of violated edges; given any feasible solution, we can construct oneof the same cardinality and with the desired property by replacing a non-maximal path with amaximal one. Therefore, the algorithm needs to consider only paths that contain a maximal set ofviolated edges as rejection candidates. Since we consider only one rejection at a time, we canrestrict the set of rejection candidates even further by considering only one representative fromeach set of paths that contain the same set of violated edges. So let Pe be a set of paths thatcontain e satisfying the properties defined above (i.e., each path containing a maximal set ofviolated edges, and no two paths containing the same set of violated edges). For each path pAPe;let ep be the violated edge on p that is farthest from e; and let Ee ¼ fep j pAPeg be the set of all

such edges ep: (If e is the only violated edge on a path pAPe; we let ep ¼ e: This can happen only if

jPej ¼ 1:) Note that jEej ¼ jPej: We have the following lemmas:

Lemma 3.1. No path in P can contain three edges in Ee:

Proof. Assume to the contrary that P contains a path f that contains three edges in Ee; say,ep; eq; and er: Without loss of generality, assume that eq is between ep and er on f ; as shown

in Fig. 2. Note that f cannot contain e; because otherwise the path q would not contain amaximal set of violated edges. All three paths p; q; and r must meet f at the same node, forotherwise we would have a cycle. Assume that they meet f at a node between ep and eq: Then

eq is contained in r: Since eq is the farthest violated edge in q and e is a bottom-most violated

edge, path q does not contain a maximal set of violated edges, a contradiction to the choice ofPe: The cases where the three paths p; q; and r meet f in a different node lead to a contradictionas well. &

Lemma 3.2. If there exists a solution to the given instance of CallControl-k that rejects at most k

paths, then there can be at most 2k paths in Pe:

Proof. Each path in P can contain at most two edges in Ee: Thus a feasible solution must reject atleast jEej=2 ¼ jPej=2 paths. Therefore, for a feasible solution to exist, there can be at most 2kpaths in Pe: &

ARTICLE IN PRESS

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722 713

The depth of the search tree is at most k: In a node of the search tree where i paths are alreadyrejected, the algorithm needs to consider at most 2ðk iÞ branches; by Lemma 3.2, if jPej42ðk iÞ; there cannot be a feasible solution in the subtree below the current node. Thus the size of the

search tree is bounded by Oð2kk!Þ: Finding a bottom-most violated edge e and determining the setof paths Pe can obviously be done in polynomial time. Thus, the algorithm solves the problem

CallControl-k in time Oð2kk! polyðjI jÞÞ; and we obtain the following theorem.

Theorem 3.3. There is an FPT algorithm for CallControl-k in undirected tree networks witharbitrary edge capacities.

3.2. The bidirected case

The FPT algorithm for call control in undirected trees of the previous section can easily beadapted to bidirected trees, yielding even a better running time. The algorithm proceeds as in theundirected case by picking a bottom-most violated edge e (which is now a directed edge) anddetermining a set Pe of rejection candidates that contain e and a maximal set of violated edges.The set Ee is defined as before. Since the paths and edges are now directed, it is easy to see that nopath in P can contain two edges in Ee (see Fig. 3). Therefore, if after rejecting i paths, there aremore than k i paths in Pe; there does not exist a feasible solution in the subtree of the currentnode of the search tree. Thus the size of the search tree can now be bounded by Oðk!Þ and the totalrunning time is Oðk! polyðjI jÞÞ:

Theorem 3.4. There is an FPT algorithm for CallControl-k in bidirected tree networks witharbitrary edge capacities.

4. Trees of rings with unit capacities

In this section, we present the first FPT results for an NP-hard call control problem where thepaths for the requests must be determined by the algorithm. We restrict the network topology to

ARTICLE IN PRESS

e eq r

e

pe

Fig. 2. Proof of Lemma 3.1.

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722714

be a tree of rings, and we require that all edges have capacity 1. We present FPT algorithms forundirected trees of rings in Section 4.1 and for bidirected trees of rings in Section 4.2. Unlike inSection 3, it turns out that the FPT algorithm for bidirected trees of rings is significantly morecomplicated than that for undirected trees of rings.

4.1. The undirected case

Let an instance of CallControl-k in trees of rings with unit edge capacities be given by anundirected tree of rings T ¼ ðV ;EÞ; a set S of connection requests, and an integer parameterkX0; The algorithm must determine if there exists a subset S0DS such that jS\S0jpk and therequests in S0 can be routed along edge-disjoint paths in T : Again, we employ the technique ofbounded search trees. Before we present the details of the algorithm, we discuss some additionalpreliminaries for trees of rings.

4.1.1. PreliminariesFirst, let us mention some simple facts about paths in trees of rings (see Fig. 4 for an example of

a tree of rings). For any request ðu; vÞ in a tree of rings, all undirected paths from u to v containedges of the same rings. For each ring that a path from u to v passes through (i.e., contains an edgeof that ring), the node at which the path enters the ring (or begins) and the node at which the pathleaves the ring (or terminates) is uniquely determined by the endpoints of the path. Thus, a requestðu; vÞ in a tree of rings can be viewed as a combination of subrequests in all rings that a path from u

to v passes through. Consequently, a set of requests can be routed along edge-disjoint paths if andonly if all subrequests of the requests can be routed along edge-disjoint paths in the individualrings of the tree of rings. Therefore, before we tackle the problem in trees of rings, we need toinvestigate conditions for a set of requests in a ring being routable along edge-disjoint paths. Let R

be a ring. Imagine R drawn as a circle in the plane, with its vertices distributed at equal distancealong the circle. A (sub)request ðu; vÞ between two vertices in R can be represented as a straightline segment joining u and v: We call these line segments chords and use the terms chord andrequest interchangeably if no confusion can arise. Two chords are said to be parallel if they do notintersect, if they intersect at a vertex in R; or if they are identical (see Fig. 5). Note that if two

ARTICLE IN PRESS

epeq

e

Fig. 3. The bidirected case.

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722 715

chords are parallel then we can assign edge disjoint paths to the corresponding requests, and thatthese paths are uniquely determined. A cut in a ring R is a pair of edges in the ring. A requestcrosses a cut if each of the two possible paths connecting the endpoints of the request containsexactly one of the edges in the cut. If p is a path in R then the path formed by the set of remainingedges in R (i.e., by the edges in R\p) is called its complementary path.

4.1.2. The FPT algorithm

The following lemma will be the main ingredient in deriving the FPT algorithm for trees ofrings.

Lemma 4.1. Given a ring R and a set S of requests in R, the requests in S can be routed along edge-

disjoint paths if and only if (i) the chords of the requests in S are pairwise parallel and (ii) no cut iscrossed by three requests.

Proof. If jSj ¼ 1; the lemma is trivially true. So assume that jSjX2: Assume that it is possibleto route S along edge-disjoint paths. Consider a feasible edge-disjoint routing of S: Let ðu; vÞand ðw; xÞ be two arbitrary requests in S: Let p1 and p2 be the paths assigned to them in the

ARTICLE IN PRESS

Fig. 4. A tree of rings.

not parallelparallel parallelparallel

Fig. 5. Examples of pairs of chords that are parallel or not parallel.

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722716

edge-disjoint routing. Since p1 is edge-disjoint from p2; p2 lies in the complementary path of p1:Clearly, the chords of the requests ðu; vÞ and ðw; xÞ must be parallel. This proves (i). Any requestthat crosses a cut must be routed through one of the two edges of the cut. If there were threerequests crossing the same cut, one of the two edges of the cut would be used by at least two paths.Therefore, (ii) must hold as well. Conversely, let S satisfy (i) and (ii). We show that there is anedge-disjoint routing for the requests in S: Consider any two requests ðu; vÞ and ðw; xÞ in S: By (i),they are parallel and can be assigned edge disjoint paths, say, p1 and p2: Furthermore, the paths p1

and p2 are uniquely determined. If jSj ¼ 2; we are done. Otherwise, let ðy; zÞ be an arbitrary thirdrequest in S: Note that the non-trivial connected components of R\ðp1,p2Þ are chains. We claimthat y and z lie in the same non-trivial connected component of R\ðp1,p2Þ: Assume to thecontrary that y or z is an internal node of p1 or p2; say, that y is an internal node of p1: If z is also anode of p1; three requests cross the cut consisting of an edge between y and z on p1 and anarbitrary edge of p2; contradicting (ii). If z is not a node of p1; the request ðy; zÞ is not parallel tothe request routed along p1; contradicting (i). Thus, y and z cannot be internal nodes of p1 or p2: Itremains to show that y and z cannot lie in different non-trivial connected components ofR\ðp1,p2Þ: If y and z were to lie in two different chains of R\ðp1,p2Þ; a cut consisting of arbitraryedges from p1 and p2 would be crossed by three requests, contradicting (ii). Having excluded allother possibilities, we can conclude that y and z lie in the same chain of R\ðp1,p2Þ; as claimed.This implies that ðy; zÞ can be routed in a unique way such that its path is edge-disjoint from p1

and p2: For each remaining request in S; we can apply the same reasoning as above: we show thatboth of its endpoints must be contained in one of the chains remaining after all assigned paths areremoved from R; and we assign the unique path in this chain to it. This completes the proof of theconverse. &

With the result of Lemma 4.1 at our disposal, we are ready to obtain the FPT algorithm forCallControl-k in trees of rings with unit edge capacities. If k ¼ 0; the algorithm checks if theconditions of Lemma 4.1 hold for each ring of the tree of rings. If this is the case, an edge-disjointrouting can be computed efficiently (the proof of Lemma 4.1 is constructive) and the algorithmanswers YES. Otherwise, there is no edge-disjoint routing and the algorithm answers NO. Nowassume that k40: If the condition of Lemma 4.1 holds for the subrequests in each ring of the treeof rings, the answer is YES and an edge-disjoint routing for all requests is obtained. Otherwise,there are either two subrequests in a ring that are not parallel, so that at least one of the two mustbe rejected, or there are three subrequests crossing a cut in some ring, so that at least one of thethree must be rejected. In the former case, we get a set of two rejection candidates, in the lattercase, we have three rejection candidates. For each request r in the set of rejection candidates, wecheck recursively whether there exists a solution rejecting at most k 1 requests from S\frg: Thedegree of any node in the search tree is at most 3. Since the depth of the search tree is bounded by

k; the size of the search tree is Oð3kÞ: As the conditions of Lemma 4.1 can be checked easily inpolynomial time at each node of the search tree, we obtain an FPT algorithm with running time

Oð3kpolyðjI jÞÞ:

Theorem 4.2. There is an FPT algorithm for CallControl-k in undirected trees of rings with unitedge capacities.

ARTICLE IN PRESS

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722 717

The above discussion shows also that CallControl-k in undirected trees of rings with unitedge capacities can be seen as an instance of the problem HittingSet-k in which each set hascardinality at most 3: the ground set U consists of the requests S; and the family S of subsets of Uconsists of all sets of two requests whose subrequests in some ring are not parallel and all sets ofthree requests whose subrequests cross a cut in some ring. An efficient FPT algorithm forHittingSet-k with sets of size at most 3, called 3-HittingSet-k; has been devised by Niedermeierand Rossmanith [15]. The algorithm combines the techniques of bounded search trees andreduction to problem kernel (see [7]) with the technique from [14] in order to obtain running time

Oð2:311k þ nÞ; where n is the size of the input. Thus, by transforming a given instance ofCallControl-k into an instance of 3-HittingSet-k as outlined above, we obtain an FPT algorithmfor CallControl-k in undirected trees of rings with unit edge capacities that runs in time

Oð2:311k þ polyðjI jÞÞ:

4.2. The bidirected case

We turn to bidirected trees of rings. Each accepted request ðu; vÞ must now be assigned adirected path from u to v: As in the undirected case, a set of requests is feasible if and only if allsubrequests are feasible in the individual rings. Thus, we consider an individual bidirected ringfirst. Before we start, let us adapt our terminology to the bidirected case. We can again draw thering as a circle and represent a request ðu; vÞ by a line segment joining u and v: The line segmentis now a directed chord, directed from u to v: A (directed) cut is given by two directed edges ofthe ring, one with counter-clockwise orientation and one with clockwise orientation. The twoedges in a cut must not connect the same pair of nodes. We visualize a cut by marking its twoedges in bold and drawing a straight line between the midpoints of its two edges. A request crosses

a cut if any path that can be assigned to the request uses exactly one of the two edges in thecut. We say that two chords cross if they intersect in exactly one point that is not an endpointof the chords. Two chords that do not cross are parallel if they cross the same directed cut andanti-parallel otherwise. Nodes on the ring are denoted by lower-case letters. Intervals of theform ½a; b� (resp. �a; b½) denote all nodes on the counter-clockwise path between a and b on thering, including (resp. excluding) a and b: Consider a set S of requests in a ring. We proceed bydoing a case analysis. In each case, we will either find that all requests can be routed along edge-disjoint paths, or we will be able to identify a set Srej of requests such that at least one request in

Srej must be rejected in any feasible solution. The cardinality of Srej will be at most 5. Fig. 6

illustrates the two major cases. Case 2 will then be divided into several subcases. The FPTalgorithm for trees of rings results from applying this case analysis to the subrequests of allrequests in each individual ring.

1. Three chords cross a directed cut: There is no feasible routing for all three chords, because oneof the two edges of the directed cut would have to be contained in at least two paths. Thus weget a set Srej consisting of exactly these three chords. When the algorithm has exhausted this

case, i.e., when there are no more triples of chords crossing a directed cut, the algorithmchecks for occurrences of Case 2.

2. Two chords cross a directed cut: Let a; b; c; d be the endpoints of the two chords, defined asshown in Fig. 6. Note that a ¼ d and b ¼ c are possible. Let p and q denote the two chords

ARTICLE IN PRESS

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722718

that cross the cut. If there are several choices for such chords p and q crossing a cut, we choosea maximal pair of chords in the following sense: We require that the set of nodes ½a; b�,½c; d�of the chosen chords p and q is not a strict subset of the nodes ½a0; b0�,½c0; d 0� defined by twoother chords p0 and q0 that cross some cut. We note some facts about the possible routings of pand q:ðwÞ If p and q are accepted, the two paths assigned to them must use all edges on the

clockwise path from b to a and on the counter-clockwise path from c to d: If p andq are parallel, these are the only edges used by the two paths, and the correspond-ing routing is uniquely determined. (The other possible routing for p and q additionallyuses all edges in ½b; c� and ½d; a� and, therefore, is strictly worse and need not beconsidered.)

ðzÞ If p and q cross, there are two ways to route them: in addition to the edges mentionedabove, their paths will either block all edges in ½b; c� in both directions and not use anyedges in ½d; a�; or vice versa.

Now we consider different cases concerning the remaining chords in the ring:(a) There are no other chords: We are done, there is a feasible routing for all requests in this

ring.(b) All other chords have both endpoints in �a; d½ or both endpoints in �c; b½: By ðwÞ; none of the

chords in �a; d½ can be routed via ½d; a�; so the routing for these chords is uniquelydetermined provided that p and q are accepted. The same holds for chords in �c; b½: Forthe routing of p and q there are at most two possibilities. If any of the (p2) possibleroutings for all chords is feasible, we are done. Otherwise, we can select at most twochords r and s from S\fp; qg (as mentioned above, their routing is uniquely determined)that cannot be routed together with p and q; giving Srej ¼ fp; q; r; sg: Either we find two

paths r; s in S\fp; qg that intersect each other, or for each of the routings of p; q we findone other path that intersects the current routing of p or q: Because there are at most twopossible routings of p; q this also gives at most two paths r; s: We have jSrejjp4: Two

examples for this case are shown in Fig. 7.(c) There is exactly one other chord with one endpoint in ½d; a� and the other in ½b; c� (all other

chords are as before): Let this chord be r: Its source endpoint must be in ½d; a� and itstarget endpoint in ½b; c�; because otherwise Case 1 applies. As in the previous case, therouting of all other chords except p; q; and r is uniquely determined (assuming that p andq are accepted). We now show that there are at most two possible routings of p; q and r

ARTICLE IN PRESS

a

cb

dCase (1)

a

cb

d

p p q

Case (2)

orq

Fig. 6. The two major cases discussed in the text.

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722 719

that need to be considered. There are two cases:(i) p and q are parallel: By (w) the routing of p and q is unique. Clearly there are only two

possibilities to route r:(ii) p; q cross: There are two possible routings of p and q alone. In each case there is either

no feasible routing of r or because of ðzÞ the routing of r is uniquely determined. Thisgives again that there are at most two possible routings of p; q and r:Analogously toCase 2b either one of the (p2) routings is feasible or we can find at most two paths s

and t that cannot be routed together with p; q and r; giving Srej ¼ fp; q; r; s; tg and

jSrejjp5:(d) There are two other chords with one endpoint in ½d; a� and the other in ½b; c�: (Note that there

cannot be more than two such chords, because otherwise Case 1 would apply.) Let thetwo chords be r and u: We can assume that S\fr; ug is feasible; otherwise, the analysis ofCase 2b can be applied to S\fr; ug: Because of the maximal choice of p and q; the two newchords are either r ¼ ða; bÞ and u ¼ ðd; cÞ or r ¼ ða; cÞ and u ¼ ðd; bÞ: We distinguish threecases depending on whether the pairs of chords ðp; qÞ and ðr; uÞ are parallel or cross (seealso Fig. 8):

(i) One pair of chords is parallel, the other pair is crossing: Note that accepting p; q; r;and u must use up all edges in ½a; b� and ½c; d� in both directions. If one of the fixedchords sAS\fp; q; r; ug must use edges in ½a; b� or ½c; d�; we get a set Srej ¼ fp; q; r; u; sgof size 5. If there are two other chords, one in ½d; a� and the other in ½b; c�; we can takethese two paths as well as the crossing pair of chords in order to get a set Srej of size 4.

If none of these cases occurs, there is a feasible routing.(ii) p and q cross, r and u cross: If no other chord is present there is a unique feasible

routing for fp; q; r; ug that uses all edges of the ring. If there is another chord s; we geta set Srej ¼ fp; q; r; u; sg of size 5.

(iii) p and q are parallel, r and u are parallel: Accepting p; q; r; and u uses up all edges in½a; b� and ½c; d� in both directions, and no other edges. The routing of all other chordsis fixed. If some other chord s must use an edge in ½a; b� or ½c; d�; we can takeSrej ¼ fp; q; r; u; sg: Otherwise, all other chords use only edges in ½b; c� and ½d; a�; and

since S\fr; ug is feasible, the resulting routing for S is feasible as well.

The only cases not included in the case analysis above are rings with only one chord or rings withseveral chords that are pairwise anti-parallel. In these cases there clearly exists a feasible routing(which can be constructed in a way similar to the proof of Lemma 4.1 in the undirected case).

ARTICLE IN PRESS

a

cb

d

c

d

p q

b

p

q

r

sr

s

a

Fig. 7. Examples of possible chords r and s in Case 2b. The dotted chords are for illustration purposes. If only they

were present, a feasible routing would exist.

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722720

Summarizing, in each case we either find a feasible routing for all chords in the ring or we canidentify a set Srej of size at most 5 such that any feasible solution rejects at least one request in Srej:Thus, we can apply the bounded search tree technique and get an FPT algorithm for CallControl-k in bidirected trees of rings with unit edge capacities. The size of the search tree can be bounded

by Oð5kÞ; so the running time of the algorithm is Oð5k polyðjI jÞÞ: The result of this section can bestated as the following theorem.

Theorem 4.3. There is an FPT algorithm for CallControl-k in bidirected trees of rings with unit edgecapacities.

5. Conclusion

We have considered parameterized versions of call admission control problems. Since thenumber of rejected requests can often be expected to be small in practice, we have taken thisnumber as the parameter. For arbitrary network graphs, the problem was shown to be fixed-parameter tractable provided that the paths are pre-determined and the edge capacities arebounded by a constant. If either of these restrictions is removed, it was shown that even for series–parallel graphs, the problem is unlikely to admit FPT algorithms. Therefore, we studied trees andtrees of rings as network topology. The call control problem is NP-hard for these graphs. Wegave FPT algorithms for trees with arbitrary capacities and for trees of rings with unit edgecapacities if the paths are not pre-determined. Both algorithms can be adapted to the bidirectedcase. There are several interesting directions for future research. First of all, it would be useful toimprove the running time of the presented FPT algorithms. For example, it would be interestingto see whether the technique of reduction to problem kernel can be applied to call control in trees.Furthermore, it may be possible to improve the running time of the algorithm for bidirected treesof rings in a similar way as in the undirected case, for example by devising an efficient FPTalgorithm for the 5-HittingSet-k problem (with set size bounded by 5). Besides, we have notanalyzed the polynomial component polyðjI jÞ in the running time of our algorithms in detail. Itwould be interesting to apply sophisticated data structures in order to make this polynomialcomponent as small as possible. Finally, it would be worthwhile to investigate whether there areother graph classes for which call control problems admit FPT algorithms. Even for trees of rings,it is not known whether CallControl-k or CallControlPre-k admit FPT algorithms in the case ofarbitrary capacities.

ARTICLE IN PRESS

or

a

cb

d

cb

da

cb

d

or

(i) (ii) (iii)

a

Fig. 8. Case 2d.

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722 721

References

[1] Y. Azar, O. Regev, Strongly polynomial algorithms for the unsplittable flow problem, in: Proceedings of the

Eighth Integer Programming and Combinatorial Optimization Conference (IPCO), Lecture Notes in Computer

Science, Vol. 2081, Springer, Berlin, 2001, pp. 15–29.

[2] A. Blum, A. Kalai, J. Kleinberg, Admission control to minimize rejections, in: Proceedings of the Seventh

International Workshop on Algorithms and Data Structures (WADS 2001), Lecture Notes in Computer Science,

Vol. 2125, Springer, Berlin, 2001, pp. 155–164.

[3] H.L. Bodlaender, A partial k-arboretum of graphs with bounded treewidth, Theoret. Comput. Sci. 209 (1998)

1–45.

[4] A. Borodin, R. El-Yaniv, Online Computation and Competitive Analysis, Cambridge University Press,

Cambridge, 1998.

[5] M.C. Carlisle, E.L. Lloyd, On the k-coloring of intervals, Disc. Appl. Math. 59 (1995) 225–235.

[6] J. Chen, I.A. Kanj, W. Jia, Vertex cover: further observations and further improvements, in: Proceedings of the

25th International Workshop on Graph-Theoretic Concepts in Computer Science WG’99, Lecture Notes in

Computer Science, Vol. 1665, Springer, Berlin, 1999, pp. 313–324.

[7] R. Downey, M. Fellows, Parameterized Complexity, Springer, New York, 1999.

[8] T. Erlebach, Approximation algorithms and complexity results for path problems in trees of rings, in: Proceedings

of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS 2001), Lecture

Notes in Computer Science, Vol. 2136, Springer, Berlin, 2001, pp. 351–362.

[9] T. Erlebach, K. Jansen, The maximum edge-disjoint paths problem in bidirected trees, SIAM J. Disc. Math. 14 (3)

(2001) 326–355.

[10] N. Garg, V.V. Vazirani, M. Yannakakis, Primal-dual approximation algorithms for integral flow and multicut in

trees, Algorithmica 18 (1) (1997) 3–20.

[11] V. Guruswami, S. Khanna, R. Rajaraman, B. Shepherd, M. Yannakakis, Near-optimal hardness results and

approximation algorithms for edge-disjoint paths and related problems, in: Proceedings of the 31st Annual ACM

Symposium on Theory of Computing STOC’99, 1999, pp. 19–28.

[12] J. Kleinberg, Approximation algorithms for disjoint paths problems, Ph.D. Thesis, Department of Electrical

Engineering and Computer Science, Massachusetts Institute of Technology, 1996.

[13] J. Kleinberg, E. Tardos, Disjoint paths in densely embedded graphs, in: Proceedings of the 36th Annual

Symposium on Foundations of Computer Science FOCS’95, 1995, pp. 52–61.

[14] R. Niedermeier, P. Rossmanith, A general method to speed up fixed-parameter-tractable algorithms, Inform.

Process. Lett. 73 (2000) 125–129.

[15] R. Niedermeier, P. Rossmanith, An efficient fixed parameter algorithm for 3-Hitting Set, J. Discrete Algorithms

(2003), to appear.

[16] T. Nishizeki, J. Vygen, X. Zhou, The edge-disjoint paths problem is NP-complete for series–parallel graphs,

Discrete Appl. Math. 115 (2001) 177–186.

ARTICLE IN PRESS

R. Sai Anand et al. / Journal of Computer and System Sciences 67 (2003) 707–722722