Computers & Operations Research 27 (2000) 1}14
The multi-hour bandwidth packing problem Ali Amiri *, Reza Barkhi Department of Management, College of Business Administration, Oklahoma State, 210 Business, Stillwater, OK 74078, USA Department of Accounting and Information Systems, Pamplin College of Business, Virginia Polytechnic Institute & State University, Blacksburg, VA 24061-0101, USA Received May 1998; received in revised form November 1998
Abstract We study the multi-hour bandwidth packing problem arising from telecommunications networks. The problem consists of selecting calls from a list of requests with time varying tra$c conditions to be routed on an arc-capacitated network in order to maximize pro"t. The paper represents a signi"cant improvement over previous research by presenting a uni"ed model of the problem that considers all possible paths for each call and allows the tra$c requirements of the calls to vary over the busy-hours of the day. Failure to consider all possible routes and to allow tra$c requirements to vary over the busy-hours would lead to signi"cant revenue loss, excessive costs and/or inferior quality of service to users. The integer programming model for the problem is presented. A solution procedure based on the Lagrangean relaxation technique is developed. The results of extensive computational experiments over a wide range of problem structures indicate that the procedure is both e$cient and e!ective. Scope and purpose In this article we study the multi-hour bandwidth packing problem that involves selecting calls from a list of requests to be routed in a telecommunications network. The tra$c requirements of the calls are allowed to vary during di!erent periods of the day, called busy-hours. The best routes for the selected calls are generated from among all possible calls in the network. The goal of the problem is to maximize the total pro"t from routed calls without exceeding the capacities of the network links. Failure to allow tra$c requirements to vary over the busy-hours and to consider all possible routes would lead to signi"cant revenue loss, excessive costs and/or inferior quality of service to users. A mathematical programming formulation of the problem is presented. An e$cient Lagrangean relaxation based heuristic procedure for generating feasible solutions and bounds to evaluate the quality of the solutions is developed. The results of extensive computational
*Corresponding author. Tel.: #1-405-744-8649; fax: #1-405-744-5180. E-mail address:
[email protected] (A. Amiri) 0305-0548/99/$ - see front matter 1999 Elsevier Science Ltd. All rights reserved. PII: S 0 3 0 5 - 0 5 4 8 ( 9 9 ) 0 0 0 0 4 - 0
2
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
experiments show that the solution procedure is both e$cient and e!ective. 1999 Elsevier Science Ltd. All rights reserved. Keywords: Telecommunications networks; Bandwidth packing; Time-varying tra$c; Lagrangean relaxation; Heuristics
Nomenclature N E M ¹ aKR 1/k dKR rK O(m) D(m) Q GH CR GH
the the the the the the the the the the the the
set of nodes in the network set of undirected links in the network set of available calls. Each call is represented by a communicating node pair set of busy-hours demand arrival rate for call m 3M during busy-hour t3 ¹ average demand size tra$c requirement or demand of call m3 M during busy-hour t 3¹ (dKR"aKR/k) revenue for call m 3M source node for call m 3M destination node for call m 3M capacity of link (i, j) cost for the unit #ow on link (i, j) during busy-hour t3 ¹
1. Introduction This paper considers the bandwidth packing problem under time-varying tra$c conditions. This problem involves deciding which calls on a list of requests, called a call table, should be chosen to route on the network and assigning a path to each call to be routed during each busy-hour of the day. The paths for the routed calls are to be selected from among all possible paths in the network. The objective is to maximize total pro"t. Typically, the network topology, the capacities of the links, the unit #ow costs on the links, the call table and revenue and tra$c requirements or demands of each call are given. Each call is characterized by a communicating node pair. The routing method used in the network is nonbifurcated as it is the case in many network architectures (that is, call splitting is not allowed) [1}4]. The &&single-hour'' bandwidth packing problem in its generic form known in the operations research community has been "rst introduced by Cox et al. [5]. The problem is not just applicable to phone networks. As stated by Parker and Ryan [6], the problem is quite general and applies to telecommunications networks used to carry mainly high bandwidth applications that can share communication channels such as video-on-demand, multimedia services, video teleconferencing, and of course voice and text. It is also important to note that the term &&call'' as used in the literature dealing with this problem refers to a request to use the network resources to transmit tra$c between a pair of communicating nodes usually for extended durations compared to phone conversations. The multi-hour bandwidth packing problem arises in the area of telecommunications networks that are in general large and span several time zones. The amount of tra$c for a pair of
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
3
Fig. 1. Importance of call selection based on actual time-varying tra$c data.
communicating nodes (a call) usually varies over the hours of the day and peaks during di!erent periods called busy-hours. Failure to take into consideration this fact may lead to signi"cant revenue loss, excessive costs and/or inferior quality of service to users. Indeed, a network operating using average tra$c conditions may cost less, but may fail to accommodate demand during the peaks of the di!erent busy-hours resulting in higher response time to users and often may lead to loss of revenues due to the selection of a sub-optimal set of calls to be routed. On the other hand, a network operating using peak tra$cs will result in underutilization of the network resources and/or revenue loss. None of the previous research studies [1, 5}8] dealing with the bandwidth packing problem has considered the multi-hour varying tra$c aspect of the problem. An example to illustrate the problems described above is given in Fig. 1. There are three nodes with tra$c rates speci"ed for two busy-hours for each communicating node pair. For illustration purposes, link capacities can be used fully and link costs are assumed to be zero. The numbers above the links in the graph represent the capacities of the links. Since the nonbifurcated routing method is used (i.e. no call splitting), it can be easily seen that using the average tra$c rates only the "rst two calls are selected for routing resulting in total revenue of 12. The use of average tra$c rates can sometimes result in infeasible routing schedule for the selected calls during one or more busy-hours. Similarly, when the selection of the routes is based on the single-hour tra$c rates given by the maximum of the two tra$c rates during hours t and t for each call, total revenue is not maximized. However, the use of the peak tra$cs does not produce infeasible routing schedule during the di!erent busy-hours. By exploiting, however, the bene"ts of the non-coincidence of tra$c over the busy-hours, total revenue can be maximized by routing all three calls. Anderson et al. [1], Laguna and Glover [7], Cox et al. [5], Parker and Ryan [6] and Park et al. [8] studied a version of the bandwidth packing problem that considers only pro"t (or revenue)
4
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
maximization. They formulated the problem and presented heuristic solution procedures based on tabu search [1, 7], genetic algorithm [5], column generation [6] and branch-and-bound technique using column generation and cutting plane approaches [8]. There are other studies that focused on dynamic routing of phone calls in telephone networks [9, 10]. These studies do not consider the revenue component of the bandwidth packing problem; that is, they assume that all calls have the same revenue or pro"t potential. The term &&call'' used in the studies is restricted to a phone conversation. The model developed in Ash et al. [9] allows for adjustment of link capacities to accommodate increasing demands. However, it is assumed in the bandwidth packing problem as known in the literature that link capacities are "xed (i.e., no expansion is scheduled in the short term) [7]. The dynamic nonhierarchical routing (DNHR) method was successfully implemented in the AT&T telephone network yielding signi"cant improvement in the network connection availability at reduced costs [10]. The method is based on a heuristic termed the uni"ed algorithm that uses link &&marginal'' costs to solve the linear programming formulation of the dynamic routing problem. These costs represent the predicted cost changes due to variations in the link #ow during a particular busy-hour. The interested reader can also consult the references in Ash and Oberer [10] for more insights in the dynamic routing problem in telephone networks. The remainder of this paper is organized as follows. In Section 2, a mathematical formulation of the multi-hour bandwidth packing problem is presented. A Lagrangean relaxation of the problem obtained by dualizing a subset of the constraints is presented in Section 3. A heuristic solution procedure is developed in the following section. Computational results are reported in Section 5. The conclusions are summarized in the last section.
2. Problem formulation In order to formulate the bandwidth packing problem in a telecommunications network, we assume that the network topology, the capacity of the links, and the tra$c requirements and revenues for all the calls are given. Each call is represented by a pair of communicating nodes: an origin and a destination. Tra$c requirement data can be obtained through simulation, by examination of historical data if available or from estimates provided by decision maker. Typically, these parameters are assumed to be deterministic and sensitivity analysis tests are used to evaluate the robustness of the model and the solution procedure to variations in the parameter values. The study of the sensitivity of the problem solutions to variations in tra$c requirement data is reported in Section 5 of this paper and shows that the performance of the solution procedure is not degraded by these variations. We formulate the bandwidth packing problem with time-varying tra$c conditions. The decision variables are
>K"
1 if call m is routed, 0 otherwise,
1 if call m is routed through a path that uses link (i, j) during busy-hour t3 ¹, XKR" GH 0 otherwise,
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
=KR" GH Problem P:
5
1 if call m is routed through a path that used link (i, j) in the direction of i to j during busy-hour t 3¹, 0 otherwise.
Z "Max rK>K! CR dKRXKR . GH GH KZ+ RZ 2 K Z 0 GHZ# subject to
>K
(1)
if i"O (m)
=KR! wKR" !>K if i"D(m) GH HG H Z, H Z, 0 otherwise
∀i3 N, m3 M and t3 ¹,
=KR#=KR)XKR ∀(i, j) 3E, m 3M and t 3¹, GH HG GH dKXKR)Q ∀(i, j)3 E and t 3¹, GH GH K Z+ XKR 3 (0, 1) ∀(i, j) 3 E, m3 M and t3 ¹, GH >K3 (0, 1) ∀m3M,
(2) (3) (4) (5) (6)
=KR 3 (0, 1) ∀(i, j) 3 E, m3 M and t3 ¹. (7) GH In this formulation, the objective function represents total pro"t of routed calls. Constraint set (2) contains the #ow conservation equations which de"ne a route (path) for each routed call represented by a communicating node pair during every busy-hour. Constraints in set (3) link together the XKR and =KR variables. Even though the problem can be correctly formulated with either XKR or GH GH GH =KR variables only, both of them are useful in the Lagrangean relaxation developed in the GH next section. Constraint set (4) represents the capacity constraints on the link during every busy-hour. Constraints sets (5)}(7) enforce the integrality conditions on XKR, >K and =KR variables, GH GH respectively.
3. A Lagrangean relaxation of the problem The problem studied in Anderson et al. [1] is a special case of problem P and is known to be NP-complete. Thus, it is di$cult to solve practical size instances of this problem to optimality in resonable time. We therefore propose a composite upper and lower bounding heuristic procedure based on a Lagrangean relaxation of the problem that provides good solutions to the problem but that are not necessarily optimal. Consider the Lagrangean relaxation of problem P obtained by dualizing constraints in set (3) using nonnegative multipliers aKR for all (i, j) 3E, m3 M and t 3¹. GH Problem ¸: Z "Max rK>K! CR dKRXKR# aKR (XKR!=KR!=KR) * GH GH GH GH GH HG K Z+ R Z2 K Z+ G HZ # R Z2 KZ + G HZ # subject to (2), (4)}(7).
6
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
Problem ¸ can be decomposed into two subproblems as follows: Problem ¸1: Z "Max rK>K! aKR (=KR#=KR) * GH GH HG KZ+ RZ 2 KZ + G HZ# subject to (2), (6) and (7).
(9)
Problem ¸2: Z "Max (aKR!CR dKR)XKR (10) * GH GH GH R Z 2 K Z+ G HZ# subject to (4) and (5). Note that Z "Z #Z . Problem ¸1 can be further decomposed into "M" subproblems (one * * * for each call m3 M) as follows: Max rK>K! aKR (=KR#=KR) GH GH HG R Z2 G HZ# subject to
>K
if i"O (m)
=KR! =KR" !>K if i"D(m) GH HG H Z, H Z, 0 otherwise >K3 (0, 1) ∀(i, j)3 E,
(11)
∀i3 N and t3 ¹,
,(12) (13)
=KR 3 (0, 1) ∀(i, j) 3 E and t 3¹. (14) GH Similarly, Problem ¸2 can be further decomposed into "¹""E" subproblems (one for each busy-hour t3 ¹ and link (i, j)3E) as follows: Max (aKR!CR dKR)XKR GH GH GH KZ+ subject to
(15)
dKRXKR)Q (16) GH GH K Z+ XKR 3 (0, 1) ∀m3M. (17) GH We note that the Lagrangean problem (¸) does not satisfy the integrality property [11, 2] because the linear programming relaxation of (¸) does not necessarily have an integer solution. Thus, our relaxation of problem (P) can theoretically give an upper bound which is at least as good as, and possibly better than the linear programming relaxation of (P). Each subproblem of problem ¸1 for a call m can be solved by solving "¹" shortest path problems from O(m) to D(m) (one every busy-hour t) with aKR as the nonnegative costs of the links using GH Dijkstra's algorithm [12]. If the revenue from the call is greater than the total cost of those shortest paths, then the call is routed through those paths, if not, the call is not routed and we set >K"0 and =KR"=KR"0 ∀(i, j) 3E and t3 ¹. GH HG
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
7
Each subproblem of problem ¸2 corresponding to a link (i, j) during busy-hour t is equivalent to a single constraint (0, 1) knapsack problem. We have chosen, however, to relax the integrality constraints and solve the continuous version using the following greedy type procedure. Procedure PROC1 Step 1: Reorder the XKR variables by sorting them in nonincreasing order of (aKR#CR dKR)/dKR; GH GH GH re-index the variables in this order, and Let m"0. Step 2: Let m"m#1 and set
X if (aKR!CKRdKR)'0, GH GH XKR" GH 0 otherwise,
1 where X "min 1, [Q !SR] and SR" dIRXIR GH dKR GH IK Step 3: If m""M" stop; if XKR(1 then stop and set XIR"0 for k"m#1,2, "M". Otherwise go to GH GH step 2.
4. A heuristic solution procedure Using the Lagrangean relaxation presented in the previous section, we can generate feasible solutions as well as upper bounds for the optimal solution of problem P. The success of this approach depends heavily on the ability to generate good Lagrangean multipliers. If we let Z (a) be the value of the Lagrangean function with a multiplier vector (a), then the best * bound using this relaxation is derived by calculating Z (a*)"Min +Z (a),. The challenging issue * ? * in generating good bounds using Lagrangean relaxation is to "nd a good set of multipliers. This is in general known to be a very di$cult task [2]. In practice, a good but not necessarily optimal set of multipliers is often derived using iterative methods such as the subgradient optimization method and various multipliers adjustment methods known as ascent (descent) methods [11]. In this study we use the subgradient optimization method to search for &&good'' multipliers. The subgradient method is a modi"ed version of the gradient method in which subgradients replace gradients [2]. Given an initial multipliers vector (a ) (set to zero in this study), a sequence of multipliers is generated by updating the vector at iteration k using the following rule: (aKR) "(aKR) !b [(XKR) !(=KR) !(=KR) ] ∀(i, j)3E, t3 ¹ and m 3M, GH I> GH I I GH I GH I HG I where the vector ((X) , (=) , (>) ) is the solution vector to problem ¸ at iteration k and b is I I I I a positive scalar step size that is found to be satisfactory in practice [4, 13] and is determined as follows: (Z ) !Z *I D , b "j I I + [(XKR) !=KR) !(=KR) ], GH I GH I HG I RZ 2 K Z+ GHZ # where (Z ) is the value of the solution to the Lagrangean problem ¸ at iteration k, Z is the value of *I D the best feasible solution found so far and j is a scalar satisfying 0)j )2. This scalar is set to I I 2 at the beginning of the algorithm and is halved whenever the bound does not improve in 20
8
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
consecutive iterations. The algorithm is terminated after a speci"ed number (set to 500 in this study) of iterations. The algorithm is also terminated if the best lower bound does not improve in 100 consecutive iterations by at least 0.01%. In this section we outline a heuristic procedure to solve problem P. This procedure called Procedure-Feas attempts to generate a feasible solution to problem P at very iteration of the subgradient optimization algorithm using information provided by the solution to problem ¸1. The best feasible solution is retained when the subgradient algorithm is terminated. Note that in the solution to problem ¸1 every call is either routed through the links in the network or not. But there may be some links with loads higher than their available capacities. This simple heuristic tries to route calls through the network without exceeding the link capacities. That is why this heuristic guarantees to generate a feasible solution at every iteration of the subgradient optimization procedure. The heuristic is described as follows: Step 1: Order the calls by sorting them in nonincreasing order of the optimal values of the objective functions of their corresponding subproblems of problem ¸1. Step 2: Starting with the "rst call, check if the call can be routed using the paths determined in the solution of its corresponding subproblem of problem ¸1 without exceeding the available link capacities. If yes, the call is routed and the available link capacities are adjusted; otherwise the call is not routed. Proceed with the next call and repeat step 2. Stop when all calls have been examined.
5. Computation results A number of computational experiments were performed on the multi-hour bandwidth packing problem modeled in the previous sections. The purpose of the experiments was twofold: to verify the e$ciency and e!ectiveness of the proposed solution procedure and to analyze the sensitivity of the call selection policies of the problem parameters. The overall solution procedure was coded in Pascal and run on a VAX 7610 computer with 35 VUPS rating. We used 4 sets of networks with 15}60 nodes generated randomly but systematically to capture a wide range of problem structures. Ten problem instances from each group with the same structure were generated in order to achieve a reasonable level of con"dence about the performance of the solution procedure on that problem structure. To evaluate this performance as a result of changes in the total number of available calls and the unit link #ow cost, a total of 740 problem instances were solved. The following test problem generator was used to generate the networks. First, the generator locates the speci"ed number of nodes on a 100;100 grid. Each node has a degree equal to 2, 3 or 4 with probability of 0.6, 0.3 and 0.1, respectively. We repeat the following procedure for each node i 3N. Determine node i's closest neighbor (in terms of Euclidean distance) with unsatis"ed degree requirement, call this node j. Add arc (i, j) and repeat this until "rst, node i's degree requirement is satis"ed or second, all the nodes with unsatis"ed degree requirements have been considered. In the latter case, connect node i to its closest neighbors to which it is not already connected until the degree requirement of node i is satis"ed. At the end check to see if the network is connected; if not, add links necessary to make it connected. Each link is the network is randomly assigned a capacity (Q ) equal to 96, 192, 500, or 1080 with equal probabilities. The average number GH
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
9
of links in the networks with 15, 20, 25, 30, 35, 40, 45, 50, 55, and 60 nodes is 23.2, 27.8, 35.8, 43.8, 52.5, 56.4, 64.2, 75.3, 80.5, and 82.8, respectively. The test problem generator also produces a call table. The percentage of the number of available calls (P) in the table varies between 40 and 90. P is a parameter that is used to control the number of available calls in the test problems. If the network includes n nodes, then the number of all possible calls is n(n!1). P corresponds to the number of available calls as a percentage of all possible calls. For instance, if P"60 (which is actually used in the base case) and n"30, then this means that the network manager will receive 60*30*29/100 or 522 requests from which he/she will choose the most pro"table set of calls to be routed. Each call has an origin and destination nodes determined randomly. There busy-hours are used in the experiments, i.e. "¹""3. The values of the parameters in the model such as revenues of the calls (rK) and unit #ow costs (CR ) are determined in such a way GH that the solution procedure e!ectiveness due to changes in these parameter values can be evaluated with high con"dence level. The tra$c requirements during every busy-hour or each call are generated randomly as dKR"¹RM*hKR, where ¹RM, called the tra$c requirement multiplier, is a constant that varies between 0.50 and 1.50 with increment of 0.25 (this constant is equal to 1 for the base case) and hKR is a number determined randomly from the uniform distribution between 20 and 40. The revenue for each call is generated randomly from a uniform distribution between 500 and 1500. The unit #ow cost for each link (i, j) during busy-hour t is determined randomly as CR "CM*RR , where CM, called the #ow cost multiplier, is a constant that varies between 0 and 2 GH GH with increment of 0.25 (this constant is equal to 1 for the base case) and RR is a number determined GH randomly from the uniform distribution between 2 and 6. Tables 1}4 show the average (over the 10 problem instances) performance measures for the di!erent networks. The results of the experiments are described by providing the number of nodes in the network ("N"), the percentage of the number of available calls (P), the #ow cost multiplier (CM), the tra$c requirement multiplier (¹RM) the &&best'' feasible solution value, the upper bound, the gap between the &&best'' feasible solution value and the upper bound expressed as a percentage of the upper bound, the total cost and revenue, the total link queueing delay in the network, the average and maximum link utilizations, and the CPU times in seconds. The total link queueing delay is used as a measure of tra$c congestion (and therefore response to network users) and is computed as dKRXKR K Z+ GH . dKRXKR Q ! GH R Z2 G HZ # GH KZ+ Note that the values of all the terms in this formula are known in the best feasible solution. Table 1 shows the results for di!erent percentages of the number of available calls. (Note that in this set of test problems we set CM"1 and ¹RM"1.) When this number increases, total revenue of routed calls increases as a result of better selection of calls to be routed from among a larger set of available calls and more e$cient use of the link capacities. However, when this number increases, the average link utilization and total link queueing delay increases signi"cantly indicating a deterioration in the response time to users. The average gap between the feasible solution value and upper bound varies between 1.562 and 3.431% with a mean of 2.542%. The CPU time (in seconds) varies between 33 for networks with 15 nodes and 892 for networks with 30 nodes.
10
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
Table 1 E!ects of changes in the percentage of the number of available calls (P) "N"
P
% Gap
Upper bound
Best solution
Total Revenue
Queueing delay Cost
Link utilization Avg
Max
CPU
15 15 15 15 15 15 15
40 50 60 70 80 85 90
1.562 2.016 2.540 2.701 3.282 2.918 3.152
14 906 18 483 22 461 25 485 27 865 29 618 31 259
14 673 18 111 21 891 24 796 26 951 28 754 30 274
31 125 38 550 44 452 50 087 55 073 58 239 61 402
16 452 20 440 22 561 25 291 28 123 29 485 31 128
106 165 185 293 300 385 310
40.0 45.5 47.8 51.0 53.8 55.8 57.0
91.0 96.6 96.0 98.0 98.4 97.8 97.2
33 41 50 58 67 70 77
20 20 20 20 20 20 20
40 50 60 70 80 85 90
2.041 2.126 1.951 1.978 1.795 2.072 2.623
16 177 19 816 24 228 27 856 31 524 33 385 34 388
15 847 19 395 23 756 27 305 30 958 32 693 33 486
34 850 42 236 50 624 56 810 63 029 66 883 69 184
19 003 22 841 26 868 29 505 32 071 34 190 35 698
116 173 287 323 295 324 372
36.2 40.8 45.0 47.6 49.6 51.4 52.6
95.4 97.0 97.6 97.8 97.2 97.6 97.4
91 115 137 161 184 196 212
25 25 25 25 25 25 25
40 50 60 70 80 85 90
1.590 2.339 2.431 2.918 3.403 3.348 3.431
24 056 28 637 33 631 37 679 42 487 44 944 46 509
23 673 27 967 32 813 36 579 41 042 43 439 44 913
51 594 61 342 71 587 78 558 86 788 90 924 94 519
27 921 33 375 38 774 41 978 45 747 47 485 49 606
239 386 381 478 476 497 452
40.6 44.6 49.4 51.6 54.2 55.4 56.4
97.2 98.6 98.6 99.0 98.6 98.6 98.0
206 261 314 367 421 448 477
30 30 30 30 30 30 30
40 50 60 70 80 85 90
2.046 2.211 2.802 2.626 2.985 3.022 3.283
29 690 35 930 43 347 49 932 56 357 60 343 63 086
29 083 35 136 42 132 48 621 54 675 58 520 61 015
68 560 81 015 93 476 104 580 115 749 121 603 124 925
39 478 45 879 51 344 55 959 61 074 63 083 63 910
374 524 572 629 714 746 727
46.8 51.4 55.2 58.4 60.6 61.4 62.2
98.6 99.0 98.8 98.8 98.6 98.8 98.6
393 493 595 689 786 830 892
CM"1, ¹RM"1
The e!ects of changes in the #ow cost multiplier (CM) are reported in Table 2. (Note that in this set of test problems we set P"60 and ¹RM"1). When the cost multiplier increases, total revenue of routed calls decreases as fewer calls are selected to be routed on the network. This is expected because it becomes more expensive to route a call whereas the revenue from routing the call remains the same. When the cost multiplier increases, total #ow cost increases until it reaches a maximum and starts to decrease as a result of the fewer calls that are selected to be routed over the links of the network. However, when the cost multiplier increases, the response time to users improves as re#ected in the decrease in the total link queueing delay and link utilizations. For example, for the 30 node networks, the total link queueing delay on average decreases from 1353 when the cost multiplier is 0.25 to 53 when this multiplier is 2.00. The average gaps between feasible
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
11
Table 2 E!ects of changes in the link cost multiplier (CM) "N"
CM
% Gap
Upper bound
Best solution
Total Revenue
Queueing delay Cost
Link utilization CPU Avg
Max
15 15 15 15 15 15 15
0.25 0.50 0.75 1.00 1.25 1.50 2.00
4.239 3.785 3.046 2.540 1.714 1.145 0.390
46 710 37 244 29 058 22 461 17 023 12 942 7 696
44 730 35 834 28 173 21 891 16 731 12 794 7 666
53 797 52 062 49 266 44 452 39 958 32 518 22 426
9 066 16 228 21 093 22 561 23 226 19 723 14 761
319 276 247 185 135 89 43
59.6 56.4 53.0 47.8 43.0 34.8 26.0
98.6 97.4 97.8 96.0 95.0 89.6 88.0
48 51 47 50 50 52 48
20 20 20 20 20 20 20
0.25 0.50 0.75 1.00 1.25 1.50 2.00
3.572 3.915 2.749 1.951 1.339 0.622 0.137
56 616 43 981 32 567 24 228 18 102 13 690 8 307
54 594 42 259 31 672 23 756 17 859 13 605 8 295
67 583 66 040 59 335 50 624 42 898 35 045 34 302
12 988 23 780 27 662 26 868 25 037 21 439 16 006
557 663 474 287 161 101 19
62.4 59.4 53.6 45.0 38.2 32.6 22.6
98.8 99.0 98.8 97.6 96.2 91.8 65.0
113 142 138 137 145 139 140
25 25 25 25 25 25 25
0.25 0.50 0.75 1.00 1.25 1.50 2.00
4.263 4.658 3.582 2.431 2.129 1.482 0.676
80 296 62 112 45 905 33 631 24 904 19 059 11 655
76 873 59 219 44 261 32 813 24 374 18 777 11 576
95 153 92 013 83 901 71 587 56 726 46 157 31 155
18 280 32 794 39 639 38 774 32 351 27 380 19 578
673 661 483 381 216 123 24
65.8 62.8 56.8 49.4 40.2 32.0 22.6
98.8 98.6 98.6 98.6 98.0 97.2 67.8
321 325 310 314 308 307 319
30 30 30 30 30 30 30
0.25 0.50 0.75 1.00 1.25 1.50 2.00
4.184 4.836 4.194 2.802 1.452 0.958 0.274
105 660 81 290 59 354 43 347 31 656 23 603 14 420
101 239 77 379 56 864 42 132 31 181 23 364 14 370
126 444 122 762 108 500 93 476 77 471 59 925 39 739
25 204 45 382 51 635 51 344 46 289 36 561 25 369
1353 1362 807 572 316 162 53
73.0 69.2 62.2 55.2 45.0 34.6 24.0
99.4 99.2 98.8 98.8 98.0 94.6 75.2
603 590 609 595 612 581 590
P"60, ¹RM"1.
solution values and upper bounds vary between 0.274% and 4.836% with a mean of 2.467%. The CPU time (in seconds) varies from 48 for networks with 15 nodes to 612 for networks with 30 nodes. The e!ects of changes in the tra$c requirement multiplier (¹RM) are reported in Table 3. (Note that in this set of test problems we set P"60 and CM"1.) When the tra$c requirement multiplier increases, total revenue and #ow cost of routed calls decrease as fewer calls are selected for routing. However, when the cost multiplier increases, the response time to users improves as re#ected in the decrease in the total link queueing delay and link utilizations. For example, for the 30 node networks, the total link queueing delay on average decreases from 1257 when the tra$c requirement multiplier is 0.25 to 254 when this multiplier is 1.50. The average gaps between feasible
12
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
Table 3 E!ects of changes in the tra$c requirement multiplier (¹RM) "N"
¹RM
% Gap
Upper bound
Best solution
Total
Queueing delay
Revenue
Cost
Link utilization CPU Avg
Max
15 15 15 15 15
0.50 0.75 1.00 1.25 1.50
0.689 1.904 2.540 2.863 3.320
40 592 30 681 22 461 16 837 12 506
40 313 30 097 21 891 16 355 12 091
59 759 52 410 44 452 38 208 29 248
19 446 22 313 22 561 21 853 17 157
311 272 185 171 121
56.0 52.8 47.8 37.2 29.2
96.8 98.2 96.0 95.8 96.6
56 48 50 47 51
20 20 20 20 20
0.50 0.75 1.00 1.25 1.50
1.589 1.609 1.951 2.830 2.751
52 137 34 974 24 228 18 008 13 507
51 309 34 411 23 756 17 498 13 136
84 268 67 400 50 624 40 982 31 522
32 959 32 989 26 868 23 484 18 386
406 351 287 134 122
59.6 52.6 45.0 31.6 27.6
98.6 98.4 97.6 96.2 95.2
125 139 137 141 132
25 25 25 25 25
0.50 0.75 1.00 1.25 1.50
2.215 2.548 2.431 2.738 3.159
74 617 49 700 33 631 24 644 18 564
72 964 48 434 32 813 23 969 17 977
120 633 94 411 71 587 54 719 43 156
47 668 45 977 38 774 30 750 25 178
539 458 381 183 167
59.4 53.4 49.4 33.8 29.0
98.8 98.4 98.6 97.0 97.2
302 324 314 316 298
30 30 30 30 30
0.50 0.75 1.00 1.25 1.50
2.423 2.849 2.802 2.652 1.905
102 382 65 216 43 347 31 440 23 286
99 901 63 358 42 132 30 607 22 842
171 893 123 703 93 476 71 454 56 419
71 992 60 345 51 344 40 847 33 557
1257 876 572 289 254
65.8 59.0 55.2 36.8 32.0
99.2 99.0 98.8 97.6 97.0
614 583 595 591 607
P"60, CM"1.
Table 4 Performance of the solution procedure for large networks "N"
35 40 45 50 55 60
% Gap
3.829 3.793 4.127 4.211 4.105 3.836
Upper bound
53 402 63 482 60 242 79 001 79 653 89 318
P"60, CM"1, ¹RM"1
Best solution
51 357 61 074 57 756 75 674 76 383 85 892
Total
Queueing delay
Revenue
Cost
104 713 129 710 113 010 115 863 163 998 195 290
53 356 68 636 55 254 80 189 87 615 109 398
759.26 787.93 524.62 747.31 844.68 977.33
Link utilization Avg
Max
47.3 49.4 53.6 54.7 46.9 48.8
99.1 99.2 99.4 98.6 98.1 99.4
CPU
1040 1580 2412 3865 5241 6848
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
13
solution values and upper bounds vary between 0.689 and 3.320% with a mean of 2.388%. The CPU time (in seconds) varies form 57 for networks with 15 nodes of 614 for networks with 30 nodes. Table 4 shows the results of computational experiments conducted using large test networks with number of nodes varying between 35 and 60. (Note that in this set of test problems we set P"60, CM"1 and ¹RM"1.) The solution procedure continues to perform reasonably well. The average gap for the 60 test problems is only 3.984%. The average CPU time (in seconds) is 3498. The convergence rate for the Lagrangean relaxation is relatively stable for all test problems used in this paper. It is very high in the "rst 200 iterations but it becomes relatively slow after that.
6. Conclusion In this paper, we studied the multi-hour bandwidth packing problem that involves selecting calls from a list of requests to be routed on an arc-capacitated telecommunications network with the objective of maximizing pro"t. The paper represents a signi"cant improvement over previous research by presenting a uni"ed model of the problem that considers all possible paths for each call and allows the tra$c requirements of the calls to vary over the busy-hours of the day. A heuristic solution procedure based on a Lagrangean relaxation of the problem is developed. Extensive computational results across a variety of problem structures are reported. These results indicate that the solution procedure is both e!ective and e$cient for a wide range of problem instances. Future research e!orts will be devoted to adapting our solution approach to the case where tra$c requirement data vary stochastically.
References [1] Anderson CA, Fraughnaugh K, Parkner M, Ryan J. Path assignment for call routing: an application of tabu search. Annals of Operations Research 1993:41:301}12. [2] Gavish B. On obtaining the &best' multipliers for a Lagrangean relaxation for integer programming. Computers & Operations Research 1978;5:55}71. [3] Gavish B, Neuman I. A system for routing and capacity assignment in computer networks. IEEE Transactions on Communications 1989;37:360}6. [4] Gavish B, Altinkemer K, Backbone network design tools with economic tradeo!s. ORSA Journal on Computing 1990;2:226}52. [5] Cox L, Davis L, Qui Y. Dynamic anticipatory routing in cuircuit-switched telecommunications networks. In: Davis L, editor, Handbook of genetic algorithms. New York: Van Norstrand/Reinhold, 1991. [6] Parker M, Ryan J. A column generation algorithm for bandwidth packing. Telecommunication Systems 1995;2:185}96. [7] Laguna M, Glover F. Bandwidth packing: a tabu search approach. Management Science 1993;39:492}500. [8] Park K, King S, Park S. An integer programming approach to the bandwidth packing problem. Management Science 1996;42:1277}91. [9] Ash GR, Cardwell RH, Murray RP, Design and optimization of networks with dynamic routing. The Bell Systems Technical Journal 1981;60:1787}820. [10] Ash GR,, Oberer E. Dynamic routing in the AT&T networks } improved service quality at lower cost. IEEE GLOBCOM Proceedings 1989;9.1.}6. [11] Bazaraa MS, Goode JJ, A survey of various tactics for generating Lagrangean multipliers in the context of Lagrangean duality. European Journal of Operational Research 1979;3:222}8.
14
A. Amiri, R. Barkhi / Computers & Operations Research 27 (2000) 1}14
[12] Syslo MM, Deo N, Kowalik JS. Discrete optimization algorithms with Pascal programs. Englewood Cli!s, NJ: Prentice-Hall, 1983. [13] Poljack BT. A general method of solving extremum problems. Soviet Math. Doklady 1967;8:593}7. [14] Gerla M. The design of store-and forward (S/F) networks for computer communications. PhD Dissertation, Comp. Sci. Dep., Univ. Calif., Los Angeles, 1973.
Ali Amiri is an Assistant Professor of Management Sciences and Information Systems at Oklahoma State University. He received the BS degree in Business Administration from the IHEC, Tunisia, the MBA, the Ph.D. in Management Sciences and Information Systems from Ohio State University. His research interests include data communication and computer network design and analysis, databases, combinatorial and discrete optimization and general OR/MS modeling and analysis. He has published in Computer Communications, Computers & Operations Research, European Journal of Operational Research, and Naval Research Logistics. Reza Barkhi is an Assistant Professor of Information Systems in the Department of Accounting and Information Systems, Pamplin College of Business, at Virginia Polytechnic Institute & State University. His research interests are in the areas of collaborative technologies and problem solving, and topological design of telecommunication networks. He has published in journals such as Location Science, European Journal of Operational Research, Group Decision and Negotiation, Decision Support Systems, and Computers and Operations Research. He received a B.S. in CIS from the College of Engineering, and an M.B.A., an M.A. and a Ph.D. from the College of Business all from the Ohio State University.