Linear and Nonlinear Lagrange Relaxation ... - Semantic Scholar

1 downloads 871 Views 405KB Size Report
Nov 11, 2002 - tion Technology Institute, Florida International University,. Miami, FL 33174 ... The earliest work probably should be accredited to Has- sin's two ...
IEICE TRANS. COMMUN., VOL.E85–B, NO.11 NOVEMBER 2002

2437

PAPER

Linear and Nonlinear Lagrange Relaxation Algorithms for Delay-Constrained Least-Cost QoS Routing∗ Gang FENG† , Christos DOULIGERIS†† , Kia MAKKI† , and Niki PISSINOU† , Nonmembers

SUMMARY The development of efficient quality of service (QoS) routing algorithms in a high-speed network environment is a very important and at the same time very difficult task due to the need to provide divergent services with multiple QoS requirements. Recently heuristic algorithms based on Lagrange relaxation techniques have been proposed to resolve the contradiction between the time complexity and the quality of solution. In this paper, we investigate the performance of two heuristic algorithms, LR DCLC and NR DCLC, for the delay-constrained least-cost (DCLC) routing problem. Algorithm LR DCLC is based on linear relaxation, while algorithm NR DCLC, which is proposed in this paper, is based on nonlinear relaxation. A large number of simulations demonstrate that even though both algorithms have very good performance, NR DCLC can obtain much better solutions than LR DCLC by running Dijkstra’s algorithm on average a few more times, especially in the case when the optimal solutions are hard to find. key words: QoS routing, delay-constrained least-cost path, additive QoS constraints, Lagrange relaxation, high-speed networking

1.

Introduction

The need for high-speed networks to support a wide range of services (video, audio, interactive multimedia, teleconferencing, etc.) with divergent and stringent service requirements poses a particular difficulty for the quality of service (QoS) routing problem [2], [14], [15]. On one hand, a path selection algorithm for the QoS routing must be very fast so that the corresponding routing protocol can achieve a very low set-up time, while on the other hand it should also provide solutions of high quality to ensure the best utilization of network resources [12]. In recent years great progress has been made for providing efficient algorithms, thanks to the incessant efforts of several researchers. QoS requirements are generally represented by constraints imposed upon the corresponding performance metrics such as delay, jitter, cost, etc. In [2], Chen et al. classified these QoS constraints into link constraint, which specifies a bound on the minimal (or maximal) value of a metric, and path constraint, Manuscript received October 11, 2001. Manuscript revised April 1, 2002. † The authors are with Telecommunications & Information Technology Institute, Florida International University, Miami, FL 33174 USA. †† The author is with Department of Informatics, University of Piraeus, Piraeus, 18534, Greece. ∗ This work is supported in part by NSF under grants No. 9810534, No. 9726253, No. 0196557 and No. 0123950, and the Greek GSRT under PENED grant.

which specifies a bound on the summation of a metric. Based on these concepts, the QoS routing problems are divided into several categories. Among the unicast routing problems, the path-constrained pathoptimization (PCPO) problem and the multi-path constrained (MCP) problem have been proved to be NPcomplete [7]. A PCPO problem needs to find a path with the minimal cost subject to one or more path constraints, while a MCP problem needs to find a path subject to two or more path constraints without necessarily finding an “optimal” solution. Regarding the two classes of problems, much work has been done when the number of constraints is small. For instance, for the MCP problem with two constraints, i.e., the delay-costconstrained (DCC) problem [1], [5], previous works include the two heuristic algorithms proposed by Jaffe [9], and the “extended Dijkstra’s shortest path” (EDSP) and the “extended Bellman-Ford” (EBF) algorithms proposed by Chen et al. [1]. It was proved that EDSP and EBF are much more efficient than Jaffe’s algorithms either in time complexity or in quality of solution. Meanwhile, the PCPO problem with one constraint, which is also called the delay-constrained leastcost (DCLC) path problem [14] or restricted shortest path problem [8], have also attracted much attention. The earliest work probably should be accredited to Hassin’s two -optimal approximation algorithms [8] which can produce solutions with their costs less than 1 +  times the cost of the optimal solution∗∗ . These two algorithms, albeit very efficient in finding feasible solutions, have very high time complexities [11]. In 1994, Widyono [17] proposed a constrained Bellman-Forman (CBF) algorithm that can solve the DCLC problem exactly. Since the DCLC problem is NP-complete, it is not surprising that in the worst case the time complexity of CBF grows exponentially with the network size. Despite the good performance of some of the prior works, in the past two or three years a few authors [4], [10], [11], [13] found that the heuristic algorithms based on Lagrange relaxation techniques are much more attractive. The basic idea is to first construct an aggregate weight, and then use Dijkstra’s algorithm [3] ∗∗ For most PCPO problems there exist multiple optimal solutions, thus the expression “the optimal” in this paper does not necessarily mean that there is only one optimal solution.

IEICE TRANS. COMMUN., VOL.E85–B, NO.11 NOVEMBER 2002

2438

to find the corresponding shortest path. It has been proved through extensive simulations that these algorithms not only have very low time complexities, but also can achieve very high probabilities of finding feasible or optimal solutions. For example, J¨ uttner et al. [10] and Feng et al. [4] proposed similar iterative algorithms for the DCLC problem, which are based on linear Lagrange relaxation. Large numbers of experiments indicate that even for 200-node networks these algorithms can obtain the optimal solution with a very high probability by running Dijkstra’s algorithm on average three or four times [4]. Feng et al. further extended the idea behind these algorithms to solve the DCC problem [5], showing that in this case it outperforms most existing algorithms as well. In the mean time, Korkmaz et al. proposed a heuristic H MCOP which only needs to run Dijkstra’s algorithms (with slight modifications) twice to solve the PCPO problem with multiple constraints based on nonlinear Lagrange relaxation. Simulations indicated that H MCOP can outperform almost all known heuristic algorithms such as those proposed by Jaffe, Hassin and Chen et al. in terms of the success ratio of finding feasible solutions. Furthermore, our recent work [6] demonstrated that the success ratio of H MCOP is actually very close to that of an exact algorithm. Nevertheless, we also found that in certain cases the solution of H MCOP has a much higher cost than the optimal solution. In addition, it is inappropriate to solve the DCLC problem since the construction of an aggregate weight does not make sense if there is only one constraint. In this paper, we propose a modified algorithm based on H MCOP to solve the DCLC problem. The basic idea is to first find an initial feasible solution, and then convert the DCLC problem to a DCC problem, which is solved by a heuristic algorithm derived from H MCOP. The proposed algorithm achieves a very high success ratio of finding the optimal solution, as will be verified through numerical experiments. Even though the basic idea in this paper is very similar to the one in our recent work [6] for solving the PCPO problem subject to multiple constraints, a number of issues need to be discussed at great length due to the particularity of the DCLC problem. Moreover, the performance comparison between the up-to-date heuristic algorithms based on linear and nonlinear relaxation techniques might also be of interest to many researchers and the professionals in the area. The remainder of the paper is organized as follows. The DCLC problem is first formally defined in Sect. 2. In Sect. 3, the algorithm based on linear Lagrange relaxation is described. The modified algorithm based on H MCOP for the DCLC problem is described in Sect. 4. In Sect. 5, we analyze the performance of the two heuristic algorithms by comparing their solutions with the optimal solution. Section 6 concludes the paper.

2.

Notations and Definitions

A network is represented by a directed graph G(V, E), where V is the set of nodes, and E is the set of links. Associated with each link e there are two non-negative weights w1 (e) and w2 (e), which are called delay and cost, respectively. The upper bound of the delay constraint is denoted by C1 . A path is a sequence of non-repeated nodes p = (v1 , v2 , · · · , vk ) such that for a given 1 ≤ i < k there exists a link from vi to vi+1 . The notation e ∈ p means that path p passes through link e. The w-weight of path p is given by  w(e). w(p) = e∈p

Apparently, the w1 -weight and w2 -weight of a path are its delay and cost, respectively. By means of the above notations, the DCLC problem can be defined as follows. Definition 1: Given a routing request between a source s and a destination t, the DCLC problem is to find a path p between s and t such that (i) w1 (p) ≤ C1 , (ii) w2 (p) ≤ w2 (q) for any path q that satisfies (i). A path satisfying (i) is called a feasible path (or feasible solution), and otherwise an infeasible path (or infeasible solution). If a path satisfies both (i) and (ii), it is called an optimal solution. If part (ii) in the above definition is replaced by w2 (p) ≤ C2 , where C2 is the upper bound of the cost constraint, then we get the definition of the DCC problem. A solution to the DCC problem is either feasible or infeasible. In order to describe the proposed algorithm, we define the notation Dijk(w) to be the shortest path w.r.t. w between s and t found by Dijkstra’s algorithm. Apparently, Dijk(w1 ) and Dijk(w2 ) are the least delay (LD) path and the least cost (LC) path, respectively. 3.

Heuristic Algorithm LR DCLC Based on Linear Lagrange Relaxation

In this section, we describe the heuristic algorithm for the DCLC problem based on linear Lagrange relaxation proposed in [4], and [10], which is called LR DCLC in this paper (LR stands for linear relaxation). The basic idea of algorithm LR DCLC is to first combine the delay and cost in terms of a parameter α to form an aggreagate weight w = w1 + αw2 for each link, and then use Dijkstra’s algorithm to find the shortest path w.r.t. w. As long as an appropriate parameter value is obtained, the resulting shortest path could be a feasible solution of high quality. The fundamental relationship between the parameter value and the cost and

FENG et al.: LINEAR AND NONLINEAR LAGRANGE RELAXATION FOR QOS ROUTING

2439

delay of the resulting shortest path can be illustrated by the following proposition. Proposition 1: If p = Dijk(w1 + αw2 ), q = Dijk(w1 + βw2 ), α and β are non-negative with α ≥ β, then w1 (p) ≥ w1 (q), w2 (p) ≤ w2 (q). Proof: See [4]. ✷ From the above proposition we can see that the impact of the parameter on the delay and cost of the resulting shortest path can be simply stated as follows: The larger the parameter, the larger the delay, while the smaller the cost. This indicates that as long as the resulting shortest path does not violate the delay constraint, a larger parameter will definitely give rise to a better solution. In order to find the largest parameter with the corresponding shortest path not violating the delay constraint, the following proposition is provided as the theoretical basis of algorithm LR DCLC. Proposition 2: If r = Dijk(w1 +αw2 ), p = Dijk(w1 + βw2 ), q = Dijk(w1 + γw2 ), where β < γ, w2 (p) = 1 (q)−w1 (p) w2 (q), α = w w2 (p)−w2 (q) , then w1 (p) ≤ w1 (r) ≤ w1 (q), w2 (p) ≥ w2 (r) ≥ w2 (q). Proof: See [4]. ✷ w1 (q)−w1 (p) Proposition 2 indicates that with α = w2 (p)−w2 (q) , the resulting shortest path must have a delay between the delays of paths p and q, and a cost between the costs of the two paths. As shown in Fig. 1, the heuristic LR DCLC is actually based on the above proposition. The LC path is first obtained, and if it is feasible then it must be an optimal solution. Otherwise the LD path is found, and if it violates the delay constraint then no feasible path can be found. If none of the above conditions is true, the algorithm enters an iterative procedure. In each iteration, either p is updated with a “better” feasible solution r in the sense that r has a lower cost, or q is updated with a better infeasible solution r in the sense

LR DCLC (G, s, t, w1 , w2 , C1 ) 1 q ← Dijk(w2 ) 2 if (w1 (q) ≤ C1 ) then 3 return q 4 p ← Dijk(w1 ) 5 if (w1 (p) > C1 ) then 6 return NULL 7 if (w2 (p) = w2 (q)) then 8 continue = TRUE 9 while continue do w (q)−w (p) 10 α ← w1 (p)−w1 (q) 2 2 11 r ← Dijk(w1 + αw2 ) 12 if (w2 (r) = w2 (q) or w2 (r) = w2 (p)) then 13 continue = FALSE 14 else if (w1 (r) ≤ C1 ) then 15 p←r 16 else 17 q←r 18 return p Fig. 1

The heuristic algorithm LR DCLC.

that r has a lower delay. The algorithm terminates if no better solution can be found. By comparing LR DCLC with the algorithm LARAC proposed in [10], one may notice two overlooks in LARAC. First, line 7 of LR DCLC was not taken into account in LARAC. However, this line is necessary since even if the LC path is infeasible and the LD path is feasible, the two paths might have the same cost because Dijkstra’s algorithm breaks ties arbitrarily. Second, the condition w2 (r) = w2 (p) in line 12 of LR DCLC was also not considered in LARAC. However, if this condition is true, the algorithm should also stop. Otherwise, if the newly obtained path r is path p of the previous iteration, the algorithm will fall into a deadlock. LR DCLC can find the optimal solution with a very high probability while the time complexity is satisfactorily low [4], [10]. In spite of this, we can possibly achieve better performance by using a nonlinear Lagrange relaxation technique, as discussed in the next section. 4.

Heuristic Algorithm NR DCLC Based on Nonlinear Lagrange Relaxation

In this section, we first briefly review the basic principle for the application of nonlinear Lagrange relaxation in QoS routing, and then discuss in detail how to use this technique to solve the DCLC problem. 4.1 The Nonlinear Lagrange Relaxation The basic principle of the nonlinear Lagrange relaxation technique can be illustrated by considering the solving of the DCC problem. Recall that for such a problem we need to find a path p such that its delay and cost do not exceed the upper bounds C1 and C2 , respectively. Using the notations defined in Sect. 2, we consider the following cost function:  λ  λ w1 (p) w2 (p) + (1) gλ (p) = C1 C2 where λ ≥ 1. If there exists an algorithm that can find a path p that exactly minimizes the above cost function, then by setting λ to a large value we must be able to find a feasible path if such a path exists. An example is shown in Fig. 2(a), where each small black square represents a path with its normalized delay and cost being the horizontal and vertical coordinates, respectively. p1 and p2 are the LD and the LC paths, respectively. Apparently, the rectangular area represents the feasibility region. Each curve denotes the set of paths that have the same value for the cost function gλ (·) when λ takes a specific value. In this example, when λ = 2 and λ = 3, the obtained shortest paths are u and v, respectively, which are infeasible. However,

IEICE TRANS. COMMUN., VOL.E85–B, NO.11 NOVEMBER 2002

2440

H DCC(G(V, E), s, t, wj , Cj , j = 1, 2) 1 Reverse Dijkstra (G(V, E), t, wj , j = 1, 2) 2 if (r[s] > 2) then 3 return NULL /* no feasible path available */ 4 if (Rj [s] ≤ Cj , ∀j = 1, 2) then 5 return the path found by Reverse Dijkstra 6 Look Ahead Dijkstra(G(V, E), s, wj , Cj , j = 1, 2) 7 if (Gj [t] ≤ Cj , ∀j = 1, 2) then 8 return the path found by Look Ahead Dijkstra 9 return NULL (a) Nonlinear relaxation

(b) Linear relaxation

Fig. 3

The heuristic algorithm H DCC for the DCC problem.

Fig. 2 Illustration of the linear and nonlinear Lagrange relaxation.

by increasing λ to 5 we can find the feasible path x. The major difficulty of this idea lies in that when λ > 1 there does not exist a polynomial-time algorithm that can find a path exactly minimizing cost function is not an additive weight gλ (·). This is because gλ (·)  when λ > 1, i.e., gλ (p) = e∈p gλ (e). In contrast, in case of linear  relaxation where w = w1 + αw2 , the relation w(p) = e∈p w(e) always holds, ensuring that Dijkstra’s algorithm can be used to find the shortest path w.r.t. w. For the above reason, the heuristic H MCOP proposed in [11] runs Dijkstra’s algorithm (with modifications) twice, one in reverse direction with linear relaxation (i.e., λ = 1) and the other in forward direction with nonlinear relaxation (i.e., λ > 1). During the execution of H MCOP the parameter λ in the nonlinear relaxation procedure is given by a fixed value. It has been experimentally proved that generally a larger value for λ can result in better performance. A large number of computer simulations also indicate that H MCOP can achieve a very high success ratio of finding feasible paths in various situations even though the cost of its solution could be high. Please see Appendix or [11] for a complete description of H MCOP. One should notice the difference between the notations in H MCOP and those defined in Sect. 2. In H MCOP, a notation c is specially defined to represent the “primary cost,” and w2 is just an ordinary link weight, unlike in this paper w2 is called cost. In the remainder of this section, we describe a heuristic algorithm for the DCLC problem, which takes advantage of H MCOP. Before doing that, we need to present a heuristic algorithm H DCC for the DCC problem, which is a variant of the heuristic H MCP described in our recent work [6]. 4.2 Heuristic Algorithm H DCC Heuristic algorithm H DCC is based on H MCOP. Even though H MCOP can be directly used to solve a DCC problem by considering only two constraints and skipping all codes regarding the “primary cost,” such a method does not achieve the best performance. Given a DCC problem, we are only concerned with whether

Look Ahead Dijkstra Relax(u, v) 1 Let tmp be a temporary node 2a if λ < ∞ then  g[tmp] =

2

j=1

Gj [u]+wj (u,v)+Rj [v] Cj



2b

if λ = ∞ then   Gj [u]+wj (u,v)+Rj [v] |1 ≤ j ≤ 2 g[tmp] = max C

3 4 5 6 7 8

Gj [tmp] = Gj [u] + wj (u, v) for j = 1, 2 Rj [tmp] = Rj [v] for j = 1, 2 if (Prefer the best(tmp, v) = tmp) then g[v] = g[tmp] Gj [v] = Gj [tmp] for k = 1, 2 πg [v] = u

j

Fig. 4 The relaxation procedure of subroutine Look Ahead Dijkstra for H DCC.

there exists a feasible solution or not. Thus, if an algorithm for the DCC problem finds a feasible path, it may stop immediately by returning the path. For this reason, we may make slight modifications on H MCOP and thus describe a heuristic algorithm for the DCC problem. Shown in Fig. 3, algorithm H DCC is very similar to H MCOP when considering only two constraints. Comparing Fig. 3 and Fig. A· 1 (in Appendix), we may notice that the major difference lies in that if a feasible path is found after calling the Reverse Dijkstra, H DCC will stop and return this path (lines 4–5 in Fig. 3). Subroutine Reverse Dijkstra in H DCC, together with its relaxation procedure, is almost the same as that in H MCOP except that variable K in Fig. A· 2 is fixed to be 2 for H DCC. Look Ahead Dijkstra runs a standard Dijkstra’s algorithm with a modified relaxation procedure, as stated in Appendix. The relaxation procedure Look Ahead Dijkstra Relax in H DCC, which is shown in Fig. 4, is slightly different from the relaxation procedure used in H MCOP, which is shown in Fig. A· 3. The difference lies in that in the relaxation procedure for H DCC those lines related to the “primary cost” are taken out since for the DCC problem we are only concerned with the feasibility of a path. Due to the same reason, procedure Prefer the best for H DCC, which is shown in Fig. 5, is also slightly different from the procedure for the H MCOP, which is shown in Fig. A· 4. Apparently, H DCC can achieve the same suc-

FENG et al.: LINEAR AND NONLINEAR LAGRANGE RELAXATION FOR QOS ROUTING

2441 Table 1

Prefer the best (a, b) 1 if (∀j = 1, 2, Gj [a] + Rj [a] ≤ Cj ) then return (a) 2 if (∀j = 1, 2, Gj [b] + Rj [b] ≤ Cj ) then return (b) 3 if (g[a] < g[b]) then return (a) 4 return (b) Fig. 5

Set number w1 w2

Three sets of link-weight intervals.

1 [1, 500] [500, 1000]

2 [1, 500] [1, 500]

3 [1, 500] [1, 10000]

The preference rule used in H DCC.

NR DCLC(G(V, E), s, t, w1 , w2 , C1 ) 1 q ← Dijk(w2 ) 2 if (w1 (q) ≤ C1 ) then 3 return q 4 p ← Dijk(w1 ) 5 if (w1 (p) > C1 ) then 6 return NULL 7 if (w2 (p) = w2 (q)) then 8 set C2 = w2 (p) −  9 repeat 10 r ← H DCC(G(V, E), s, t, wj , Cj , j = 1, 2) /*solved as a DCC problem */ 11 if (r = NULL) then 12 p←r 13 set C2 = w2 (p) −  14 until r = NULL 15 return p Fig. 6 The heuristic algorithm NR DCLC for the DCLC problem.

cess ratio of finding feasible solutions as H MCOP does. However, unlike H MCOP which always needs to run Dijkstra’s algorithm twice, H DCC could run only once if a feasible path is found by subroutine Reverse Dijkstra. 4.3 Heuristic Algorithm NR DCLC The pseudocode of heuristic NR DCLC is shown in Fig. 6. As we see, the first few lines are the same as in LR DCLC. In case that the LC path q is infeasible, while the LD path p is feasible, the DCLC problem is converted to a DCC problem by setting w2 (p) −  to the upper bound C2 of the cost constraint.  is a small positive number such that no path between s and t has a cost in [w2 (p) − , w2 (p)]. H DCC is hence employed to solve this DCC problem. Obviously if a feasible solution r is found by H DCC, r must have a lower cost than p. To further search for better solutions, we can replace p by r, update the upper bound C2 , and repeat this procedure until no feasible solution is found by H DCC. In order to choose the value of  in Fig. 6, we need to know how the link cost (i.e., w2 ) is distributed. If the minimum positive difference between any two link costs is δ, then  should take a value such that 0 <  < δ, and typically we let  = δ/2. As an example, if all link costs are integers, we may set  = 1/2. The reason behind this is easy to understand. Since the minimum positive difference between any two link costs is δ, the minimum positive difference between the costs of any two different paths must be greater than or equal to

δ. If in certain iteration NR DCLC obtains a solution with cost w2 (p), the next better solution should have a cost less than or equal to w2 (p) − δ. Therefore, by setting the upper bound C2 = w2 (p) −  = w2 (p) − δ/2, H DCC will not lose any chance to search for a better solution. It can be further illustrated that the heuristic algorithm NR DCLC can possibly find a better solution than algorithm LR DCLC. For instance, if we take the problem shown in Fig. 2(a) as a DCLC problem, then NR DCLC can possibly find the best solution x. In contrast, if algorithm LR DCLC is used to solve this problem, the final solution must be u. This is illustrated in Fig. 2(b). With linear relaxation where w = w1 + αw2 , the set of paths that have the same value for the aggregate weight w must be on a straight line, rather than a curve as in the case of nonlinear relaxation. Using LR DCLC to solve this problem, the aggregate weights of u and y must be equal at the final iteration, and no matter what parameter is used the best solution x can not have the smallest aggregate weight. 5.

Performance Evaluation

In this section we investigate the performance of the two heuristic algorithms LR DCLC and NR DCLC through computer simulations. Waxman’s method [16] is employed to generate three types of networks, i.e., 50-, 100-, and 200-node, each of which includes 10 instances. The link weights, i.e., delay and cost, are uniformly distributed on specific intervals, and three sets of distributions are investigated, as shown in Table 1. For a specific set of link-weight intervals, 10 instances of link weights are generated. Given a network instance and a link-weight instance, 1000 routing requests are generated. To generate a routing request, a source and a destination are first randomly selected, then the LD path p1 and the LC path p2 are obtained, and finally the upper bound C1 of the delay constraint is given by C1 = w1 (p1 ) + ∆ · (w1 (p2 ) − w1 (p1 )) where ∆ is called constraint factor. ∆ is a parameter introduced here to control the difficulty of finding the optimal solution. Obviously, if ∆ < 0, then there is no feasible path. On the other hand, if ∆ ≥ 1, then the LC path must be the optimal solution. In either case, the two heuristic algorithms can make a conclusion before entering the loop. For this reason, in the subsequent experiments we let ∆ take values between 0 and 1 so that the optimal solutions are much more difficult to be found.

IEICE TRANS. COMMUN., VOL.E85–B, NO.11 NOVEMBER 2002

2442 Table 2 The maximum number of executions for LR DCLC/ NR DCLC with link-weight set 1. ∆ 50-node 100-node 200-node

0.1 7/10 7/10 8/12

0.3 7/12 8/12 8/14

(a) Optimality

0.5 7/12 7/14 8/14

0.7 7/12 7/12 8/14

0.9 7/16 7/14 7/14

Table 3 The maximum number of executions for LR DCLC/ NR DCLC with link-weight set 2. ∆ 50-node 100-node 200-node

(b) Average cost deviation

0.1 7/12 8/12 8/14

0.3 7/14 8/14 8/16

0.5 8/14 8/14 8/16

0.7 7/16 8/14 8/16

0.9 7/14 8/16 8/16

(c) Average number of executions

Fig. 7 Performance comparison between algorithms LR DCLC and NR DCLC with link-weight set 1.

For each type of network with a specific value for the constraint factor, the following performance measures are computed based on 100,000 experimental results (10 network instances × 10 link-weight instances × 1000 routing requests): • Optimality, which is the percentage of times that the optimal solutions have been found, • Average cost deviation (AvgDeviation), which is the average deviation in percentage of the solution of a heuristic from the optimal solution, • Average number of the executions of Dijkstra’s algorithm, • Maximum number of the executions of Dijkstra’s algorithm. Since Dijkstra’s algorithm has a fixed time complexity, the third and fourth performance measures can be used to evaluate the time complexities of the heuristics. For simplicity, the executions of standard and modified Dijkstra’s algorithm are counted together. Besides, 95% confidence intervals are also computed for the first three performance measures. Before presenting the experimental results, we need to clarify a couple of related issues. First, λ in the nonlinear relaxation procedure is fixed to be 30, which is chosen based on the experimental results in [11]. Second, all link weights are normalized to integers in our simulations, and we let  in NR DCLC equal to 0.5. In doing so, NR DCLC will try to search for the best solution and thus the performance measure Average number of the execution indicates the time complexity of the algorithm in the most difficult case with specific link weights and network topologies. Figure 7 shows the first three performance mea-

sures when the link weights are distributed on the first set of intervals in Table 1, while the maximum number of executions in such case is shown in Table 2. Corresponding to link-weight-interval sets 2 and 3, the performance measures are shown in Fig. 8 and Table 3, and Fig. 9 and Table 4, respectively. From Fig. 7(a), we may see that with the increase of ∆ the optimality decreases. This is because the larger the value of ∆ (on condition that ∆ < 1), the more the feasible paths, and the harder to find the optimal solution. One may also notice that for a given heuristic the optimality decreases with the increase of the network size. On the other hand, the difference between the performance of the two heuristic algorithms becomes more and more conspicuous with the increase of ∆. For example, for 200-node networks with ∆ = 0.7 and ∆ = 0.9, the differences between the optimality of the two algorithms are approximately 0.13 and 0.18, respectively. Opposed to the change of the optimality, the average cost deviation increases with ∆, as illustrated in Fig. 7(b). However, it should be noted that the AvgDeviation of NR DCLC changes much more steadily than that of LR DCLC. The price paid by NR DCLC for achieving the higher quality solutions is the higher time complexity. From Fig. 7(c), we can see that on average NR DCLC needs to run Dijkstra’s algorithm once or twice more than LR DCLC. In the worst case, NR DCLC needs to run 16 times, while LR DCLC only 8 times, as shown in Table 2. By investigating Figs. 8 and 9 and Tables 3 and 4, we can obtain very similar observations when link weights are distributed on the other two sets of intervals. The only difference is that in such cases the average cost deviation and the average number of ex-

FENG et al.: LINEAR AND NONLINEAR LAGRANGE RELAXATION FOR QOS ROUTING

2443

(a) Optimality

(b) Average cost deviation

(c) Average number of executions

Fig. 8 Performance comparison between algorithms LR DCLC and NR DCLC with link-weight set 2.

(a) Optimality

(b) Average cost deviation

(c) Average number of executions

Fig. 9 Performance comparison between algorithms LR DCLC and NR DCLC with link-weight set 3.

Table 4 The maximum number of executions for LR DCLC/ NR DCLC with link-weight set 3. ∆ 50-node 100-node 200-node

0.1 8/12 7/12 8/14

0.3 8/15 8/15 8/14

0.5 7/14 7/14 8/16

0.7 8/14 8/14 8/15

0.9 8/15 7/16 8/15

ecutions are slightly higher, which indicates that it is slightly more difficult to find the optimal solution. The significance of the simulation results can be further recognized from an engineering perspective. In some applications, the user may have a loose constraint on the delay, while the cost means a lot to the user. For instance, during the transmission of a video program, the jitter (delay variation) between two consecutive frames has a much more significant impact on the quality of the program than the end-to-end delay. By taking the jitter on each link as the cost, both LR DCLC and NR DCLC can be used to find a delayconstrained least-jitter path. In case that the delay upper bound C1 is very close but less than the delay of the LC path (least-jitter path for this case), NR DCLC will have a much higher chance than LR DCLC to find a path that can provide better quality of video program

to the user. 6.

Conclusions

A QoS routing algorithm that can find solutions of high quality yet has a low time complexity is very important for high-speed networks to provide services with stringent and diverse QoS requirements. In this paper, we investigated the up-to-date heuristic algorithms for the DCLC problem based on linear and nonlinear Lagrange relaxation techniques. Algorithm NR DCLC proposed in this paper is based on the nonlinear relaxation, while algorithm LR DCLC published in prior works is based on the linear relaxation. A large number of simulations indicate that NR DCLC can achieve better solutions than LR DCLC by running Dijksra’s algorithm a few more times, and its superiority becomes more appreciable in case that the optimal solution is more difficult to be found. One should notice that the experiments designed in this paper are the most difficult cases for searching for optimal solutions. In actual applications, both of the two algorithms might achieve better performance.

IEICE TRANS. COMMUN., VOL.E85–B, NO.11 NOVEMBER 2002

2444

References [1] S. Chen and K. Nahrstedt, “On finding multi-constrained paths,” ICC’98, pp.874–879, Atlanta, GA, June 1998. [2] S. Chen and K. Nahrstedt, “An overview of quality of service routing for next-generation high-speed networks: Problems and solutions,” IEEE Network, pp.64–79, Nov./Dec. 1998. [3] E. Dijkstra, “A note on two problems in connexion with graphs,” Numerische Mathematik, vol.1, pp.269–271, 1959. [4] G. Feng and C. Douligeris, “Fast algorithms for delayconstrained least-cost unicast routing,” shortened version presented in INFORMS 2001, Miami Beach, FL, Nov. 2001, available at http://www.students.miami.edu/˜gfeng/. [5] G. Feng, K. Makki, N. Pissinou, and C. Douligeris, “An efficient approximate algorithm for delay-cost-constrained QoS routing,” ICCCN 2001, pp.395–400, Phoenix, AZ, Oct. 2001. [6] G. Feng, K. Makki, N. Pissinou, and C. Douligeris, “Heuristic and exact algorithms for QoS routing with multiple constraints,” accepted to IEICE Trans. Commun., available at http://www.students.miami.edu/˜gfeng/. [7] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, Freeman, San Francisco, CA, 1979. [8] R. Hassin, “Approximation scheme for the restricted shortest path problem,” Mathematics of Operation Research, vol.17, no.1, pp.36–42, Feb. 1992. [9] J.M. Jaffe, “Algorithms for finding paths with multiple constraints,” Networks, vol.14, pp.95–116, 1984. [10] A. J¨ uttner, B. Szviatovszki, I. M¨ecs, and Z. Rajk¨ o, “Lagrange relaxation based method for the QoS routing problem,” INFOCOM 2001, Alaska, USA, 2001. [11] T. Korkmaz and M. Krunz, “Multi-constrained optimal path selection,” INFOCOM 2001, Alaska, USA, 2001. [12] K. Makki, N. Pissinou, and O. Frieder, “Efficient solutions to multicast routing in communication networks,” Mobile networks and Applications, vol.1, pp.221–232, 1996. [13] H. Neve and P. Mieghem, “A multiple quality of service routing algorithm for PNNI,” Proc. ATM Workshop, pp.324–328, May 1998. [14] A. Orda and A. Sprintson, “QoS routing: The precomputation perspective,” INFOCOM 2000, vol.1, pp.128–136, TelAviv, Israel, March 2000. [15] Z. Wang and J. Crowcroft, “Quality-of-Service routing for supporting multimedia applications,” IEEE J. Sel. Areas Commun., vol.14, no.7, pp.1288–1387, Sept. 1996. [16] B.M. Waxman, “Routing of multipoint connections,” IEEE J. Sel. Areas Commun., vol.6, no.9, pp.1617–1622, Dec. 1988. [17] R. Widyono, “The design and evaluation of routing algorithms for real-time channels,” Tech. Rep. ICSI TR-94-024, University of California at Berkley, International Computer Science Institute, June 1994.

Appendix:

Heuristic Algorithm H MCOP

Figure A· 1 shows the heuristic algorithm H MCOP proposed in [11], which intends to find a path that satisfies a total number of K additive constraints. The cost function in H MCOP is given by  λ  λ w1 (p) w2 (p) gλ (p) = + + ··· C1 C2

H MCOP(G(V, E), s, t, wj , Cj , j = 1, 2, . . . , K) 1 Reverse Dijkstra (G(V, E), t) 2 if (r[s] > K) then 3 return failure /* no feasible path available */ 4 Look Ahead Dijkstra(G(V, E), s) 5 if (Gj [t] ≤ Cj , ∀j = 1, 2, . . . , K) then 6 return the path 7 return failure Fig. A· 1 The heuristic algorithm H MCOP for multiconstrained optimal path (MCOP) problem.

Reverse Dijkstra Relax(u, v) K Rk [v]+wk (u,v) 1 if r[u] > then C k=1 2 3 4

K

k

R [v]+w (u,v)

k k r[u] = Ck k=1 Rk [u] = Rk [v] + wk (u, v) πr [v] = u

Fig. A· 2 The relaxation procedure of subroutine Reverse Dijkstra.

 +

wK (p) CK

λ .

The inputs of this algorithm include: a directed graph G(V, E) in which each link is associated with a primary cost c and K weights wk , k = 1, 2, . . . , K, an upper bound Ck for each constraint, a source s and a destination t. The algorithm maintains for each node u the following labels: r[u], Rk [u], πr [u], g[u], Gk [u], πg [u], and c[u],k = 1, 2, . . . , K. Label r[u] denotes the cost of the shortest path from u to t w.r.t. the cost function g1 , i.e., gλ with λ = 1. Labels Rk [u], k = 1, 2, · · · , K represent individually the accumulated link weights along that path. The predecessor of u along the path is stored in πr [u]. Label g[u] represents the cost of a complete path from s to t via node u w.r.t. cost function gλ (λ > 1). Labels Gk [u], k = 1, 2, · · · , K and c[u] represent individually the accumulated link weights and the primary cost from s to u along the path. The predecessor of u along the path is stored in πg [u]. Subroutine Reverse Dijkstra runs Dijkstra’s algorithm in a reverse direction with node t being the input value. The relaxation procedure used in this subroutine is shown in Fig. A· 2. One should notice that notation (u, v) denotes the link from u to v. As a result, Reverse Dijkstra can find the shortest path from every node u to t w.r.t. the cost function g1 (·). After the execution of Reverse Dijkstra, H MCOP checks the condition r[s] > K to judge if a feasible path exists based on a theorem proved in [11]. In case that the condition is false, H MCOP precedes to call subroutine Look Ahead Dijkstra, which runs the standard Dijkstra’s algorithm with a modified relaxation procedure described in Fig. A· 3. This subroutine starts with s and choose the next node based on the preference rule in Fig. A· 4. This rule will choose the next node that can lead to the primary cost being minimized if there exists a foreseen feasible path between s and t,

FENG et al.: LINEAR AND NONLINEAR LAGRANGE RELAXATION FOR QOS ROUTING

2445

Look 1 2 3a 3b 4 5 6 7 8 9 10

Ahead Dijkstra Relax(u, v) Let tmp be a temporary node c[tmp] = c[u] + c(u, v) if λ < ∞ then K Gk [u]+wk (u,v)+Rk [v] λ g[tmp] = Ck k=1 if λ = ∞ then Gk [u]+wk (u,v)+Rk [v] |1 ≤ k ≤ K g[tmp] = max Ck Gk [tmp] = Gk [u] + wk (u, v) for k = 1, 2, . . . , K Rk [tmp] = Rk [v] for k = 1, 2, . . . , K if (Prefer the best(tmp, v) = tmp) then c[v] = c[tmp] g[v] = g[tmp] Gk [v] = Gk [tmp] for k = 1, 2, . . . , K πg [v] = u

Fig. A· 3 Dijkstra.

The relaxation procedure of subroutine Look Ahead

Prefer the best (a, b) 1 if c[a] < c[b] and (∀k, Gk [a] + Rk [a] ≤ Ck ) then return (a) 2 if c[a] > c[b] and (∀k, Gk [b] + Rk [b] ≤ Ck ) then return (b) 3 if (g[a] < g[b]) then return (a) 4 return (b) Fig. A· 4

The preference rule used in H MCOP.

and otherwise the cost function gλ (·) being minimized. After the execution of Look Ahead Dijkstra, H MCOP will return the feasible path recovered from labels πg [·] if such a path exists.

Gang Feng received his B.E. and M.E. from University of Electronic Science and Technology of China in 1992 and 1995 respectively, and Dr.Eng. from Beijing University of Posts and Telecommunications in 1998, all in electrical engineering. Between 1998 and 2001, he was studying in University of Miami, where he was granted Ph.D. in December 2001. Since July 2001, he has been working in Telecommunications & Information Technology Institute at Florida International University as a Research Associate. His major research interests include routing in next generation broadband wired/wireless networks, optical networking, combinatorial optimization, neural networks and evolutionary computation.

Christos Douligeris was born in Melissopetra, Arcadia, Greece. He received his Diploma in Electrical Engineering from the National Technical University of Athens in 1984 and the M.S., M.Phil. and Ph.D. degrees from Columbia University in 1985, 1987, 1990 respectively. He has held positions with the Department of Electrical and Computer Engineering at the University of Miami, where he reached the rank of associate professor and was the associate director for engineering of the Ocean Pollution Research Center. He has also held visiting positions at the National Technical Univ. of Athens and the Univ. of Piraeus, Greece. He has served in technical program committees of several conferences. His main technical interests lie in the areas of performance evaluation of high speed networks, neurocomputing in networking, resource allocation in wireless networks and information management, risk assessment and evaluation for emergency response operations. He is an editor of the IEEE Communications Letters and the IEEE Network, a technical editor of the IEEE Communications Magazine, a technical editor of the IEEE Communications Magazine Interactive, an associate editor of Computer Networks, a senior member of IEEE, and a member of INFORMS (formerly ORSA) and the Technical Chamber of Greece. During the academic year 1999–2000 he worked in the National Greek Agricultural Foundation as a Senior Fulbright Scholar.

Kia Makki received his Ph.D. in computer science from the University of California, Davis, and two M.S. degrees from The Ohio State University and West Coast University. He is currently a tenure professor with an endowed chair professorship at Telecommunications & Information Technology Institute in Florida International University. His technical interests include wireless and optical telecommunications. He has over hundred refereed publications and his work has been extensively cited in books and papers. He has been Associate Editor, Editorial Board Member, Guest Editor of several International Journals including Editorial Board Member of several telecommunication journals. He has been involved in numerous conferences as a Steering Committee Member, General Chair, Program Chair, Program ViceChair and Program Committee Member.

IEICE TRANS. COMMUN., VOL.E85–B, NO.11 NOVEMBER 2002

2446

Niki Pissinou received her Ph.D. in Computer Science from the University of Southern California, her M.S. in Computer Science from the University of California at Riverside, and her B.S.I.S.E. in Industrial and Systems Engineering from The Ohio State University. She is currently as a tenured professor and the director of the Telecommunication & Information Technology Institute at FIU. She has published over hundred refereed publications and has received best paper awards. She has also coedited seven volumes and is the author of an upcoming book on wireless Internet computing. She has also served as a steering committee, general chair and program committee member of over hundred programs and organizational committees of IEEE and ACM sponsored technical conferences. She has also refereed for a wide variety of conferences and journals, and has served as a reviewer on NSF and NASA panel reviews including the KDI and ITR panels. She has been the editor of eight journals including IEEE TKDE and guest editor of seven journals. She has received seven achievements awards and an invited speaker and keynote speaker of conferences.

Suggest Documents