Computers and Operations Research 106 (2019) 28–35
Contents lists available at ScienceDirect
Computers and Operations Research journal homepage: www.elsevier.com/locate/cor
An exact and polynomial approach for a bi-objective integer programming problem regarding network flow routing Leizer L. Pinto a,∗, Kátia C.C. Fernandes a, Kleber V. Cardoso a, Nelson Maculan b a b
Instituto de Informática, Universidade Federal de Goiás (UFG), Goiânia, GO, Brasil COPPE, Universidade Federal do Rio de Janeiro (UFRJ), Rio de Janeiro, RJ, Brasil
a r t i c l e
i n f o
Article history: Received 19 February 2018 Revised 7 November 2018 Accepted 7 February 2019 Available online 13 February 2019 Keywords: Polynomial time Network flow routing problem Bi-objective optimization -constraint technique
a b s t r a c t This paper presents a bi-objective network flow routing problem regarding network load balancing and flow path length. The problem is formulated within the integer programming framework and an exact and polynomial approach based on the -constraint technique is presented. In each iteration, our algorithm solves a single-objective linear integer programming subproblem. The goal of our approach is to obtain a minimal complete set of Pareto-optimal solutions. Our proposal was evaluated through several computational experiments, which included grid and random networks. The random topology was generated by the Barabási–Albert model and the settings of the network flows defined here are those commonly used in wireless sensor networks and wireless mesh networks. The analysis of the computational results provide a decision maker with valuable information about which factors most affect the solutions, for example, the smallest and largest bottleneck, the size of increment in the shortest path of the last Pareto-optimal solution and the difference between the path lengths of the first and last Pareto-optimal solutions generated. © 2019 Elsevier Ltd. All rights reserved.
1. Introduction An important class of bi-objective problems on graphs is modeled by means of two performance measurements, a cost function and a bottleneck function (e.g., see Berman et al. (1990) and Hansen (1980)). This class of bi-objective problems has many applications in areas such as transportation and communication networks. In the following, we illustrate an application in wireless mesh networks in which the cost function corresponds to the sum of the path lengths of the network flows, while purpose of the bottleneck function is to carry out the network load balancing. Network densification is identified as one of the key strategies to evolve the communication infrastructure, mainly in the context of wireless devices, according to Bhushan et al. (2014). The aim of a cost-effective approach for network densification is to create high capillary infrastructures, i.e., networks in which most of the nodes have multiple path options for communication. This sort of network can provide both improved performance and robustness. However, load balancing strategies are needed to improve performance, and make effective use of the network capillarity, as described by Pham and Perreau (2004). Although from the point of
∗
Corresponding author. E-mail address:
[email protected] (L.L. Pinto).
https://doi.org/10.1016/j.cor.2019.02.004 0305-0548/© 2019 Elsevier Ltd. All rights reserved.
view of the network operator, a single objective solution focused on the load balancing can be satisfactory, this solution is generally inappropriate for many network users. The reason for this is that the path lengths of the flows are not taken into account, and this may create unacceptably long routes. Some proposals available in the literature assume that the bicriteria optimization problem of load balancing and aggregate path length is too computationally expensive to be solved in an exact manner. Thus, they create heuristics to efficiently solve the problem of jointly optimizing the network bottleneck (i.e., load balancing) and the flow path length, such as in the case of Gálvez and Ruiz (2013), Liu et al. (2012), and de Mello et al. (2016). However, this approach has two serious drawbacks. First, there is no guarantee about the quality of the solutions. Second, in general, the solutions include design factors that prevent decision makers from specifying their preferences. Exact and polynomial algorithms for solving bi-objective problems with a cost function and a bottleneck function have been created by Berman et al. (1990), Hansen (1980), Clímaco and Martins (1982) and Gadegaard et al. (2016), for example. Bornstein et al. (2012) designed an exact and polynomial algorithm to solve problems with a cost function and multiple bottleneck functions. In all these problems, the values of the bottleneck functions are related to a given bij , which corresponds to some edge property (i, j).
L.L. Pinto, K.C.C. Fernandes and K.V. Cardoso et al. / Computers and Operations Research 106 (2019) 28–35
In this paper, we address a problem in which r flows should be routed independently through network paths, i.e., each flow is routed through a path. The problem consists of establishing these routes while at the same time, minimizing the total cost of the routing (e.g., the total length of the paths of all the flows) and the network bottleneck, i.e., to minimize the maximum number of flows on a link. In other words, in our problem the values assigned to the bottleneck function are not input data but depend on the number of flows that will be routed through the links. Thus, we present a bi-objective integer programming formulation to this problem and a polynomial algorithm for solving the model in an exact manner. The algorithm is based on the -constraint method (e.g., see Ehrgott (2005)) and operates iteratively, by solving a single-objective linear integer programming subproblem in each iteration. The objective function of these single-objective subproblems consists in minimizing the total cost for routing the flows. The network bottleneck is dealt with in the constraints, which are updated during the iterations of the algorithm that implements the method. As a result, the method provides a minimal complete set of Pareto-optimal solutions to the problem. The paper is organized as follows. The system model and problem formulation are presented in Section 2, and the algorithm employed as the solution method is described in Section 3. The computational results can be found in Section 4, and the conclusions follow in Section 5.
29
constraints ensure that each flow f ∈ F leaves the source sf and arrives at the destination df , by passing through exactly one path. f If ci j = 1, ∀ (i, j ) ∈ E and ∀ f ∈ F, the second objective function minimizes the total number of hops (edges) of all the flows. In this case, the desired result is to choose the shortest paths needed to route the flows, which can be useful in many real-world applications. In this paper, we are interested in finding a special set of solutions for problem (P), which is defined in the following. Definitions 1. Let X be the set of all feasible solutions of (P). 2. Let z(x ) = [z1 (x ), z2 (x )] be the objective vector that is associated with x ∈ X, where:
z1 (x ) = max
(i, j ) ∈ E
xifj
and z2 (x ) =
f ∈ F (i, j ) ∈ E
f ∈F
cifj xifj .
3. Given two solutions x, x ∈ X, the solution x dominates x when:
z1 (x ) < z1 (x ) and z2 (x ) ≤ z2 (x )
or
z1 (x ) ≤ z1 (x ) and z2 (x ) < z2 (x ).
2. System model and problem formulation In a general multi-objective integer linear programming problem, the objective functions are linear and, naturally, the problem is NP-hard because the integer linear programming problem is NPhard (e.g., see Schrijver (1986)). There have been a lot of papers about multi-objective integer programming in the field of mathematical optimization (e.g., see Boland et al., 2016; Chalmet et al., 1986; Ehrgott, 2006; Klein and Hannan, 1982; Lokman and Köksalan, 2013; Ozlen et al., 2014). As we will present in the following, one objective function of our model, the bottleneck function, is not linear. The other objective function and the constraints are linear, with 0–1 integer variables. Thus, the bi-objective model presented here is integer but not linear. Given a set of flows F, in which |F | = r, to be routed in an oriented graph G = (V, E ), where V represents the set of nodes and E the set of edges, in which |V | = n and |E | = m. Each flow f ∈ F must only be routed through a path in G, going from the source sf ∈ V to the destination df ∈ V. For each edge (i, j) ∈ E, from i ∈ V to j ∈ V, and f flow f ∈ F, we define a binary variable xi j that indicates whether or not the flow f passes through the edge (i, j). The cost of the flow f f ∈ F while passing through the edge (i, j) ∈ E is given by ci j . The bi-objective integer programming model formulating to the aforementioned problem, here denoted (P), is presented in the following. minimize minimize
max
(i, j ) ∈ E
xifj
s.t.
3. Exact solution – polynomial algorithm In this section, we present an -constraint algorithm for finding a minimal complete set of Pareto-optimal solutions for the problem (P). In each iteration of the algorithm, a single-objective problem, (P ), is solved. The integer and positive parameter is used to control the values of the bottleneck objective function and to ensure the optimality of the algorithm. The problem (P ) will now be presented. minimize
cifj xifj
1, if i = s f 0 , ∀i ∈ V − {d f , s f } (i, j ) ∈ E ( j,i ) ∈ E −1, if i = d f f xi j ≤ , ∀(i, j ) ∈ E
xifj
−
x jif
=
∀f ∈ F
f ∈F
1, if i = s f − = 0 , ∀i ∈ V − {d f , s f } ∀ f ∈ F (i, j ) ∈ E ( j,i ) ∈ E −1, if i = d f xifj ∈ {0, 1}, ∀ (i, j ) ∈ E and ∀ f ∈ F .
f ∈ F (i, j ) ∈ E
s.t.
f ∈ F (i, j ) ∈ E
xifj
In general, multi-objective optimization problems aim at finding a minimal complete set of Pareto-optimal solutions (Hansen, 1980).
f ∈ Ff f c i j xi j
4. A feasible solution x ∈ X is a Pareto-optimal solution if there is no other solution in X that dominates x. 5. The set X∗ ⊆ X, composed of Pareto-optimal solutions, is a minimal complete set when: (a) for any x∗ , x¯ ∈ X ∗ we have z(x∗ ) = z(x¯ ); and, (b) for any Pareto-optimal solution x ∈ X there exists x∗ ∈ X∗ such that z(x ) = z(x∗ ).
xifj ∈ {0, 1}, ∀(i, j ) ∈ E and ∀ f ∈ F .
x jif
(2) (1)
While the first objective function minimizes the load in the most congested edges, i.e., the network bottlenecks, the second objective function minimizes the total cost of routing the flows. The
Let Im be the identity matrix of order m and consider Aj as a technology matrix associated to the constraints that define the path of the jth flow of F. After the m slack variables in the constraints associated to have been included, the technology matrix of (P ) is given by
30
L.L. Pinto, K.C.C. Fernandes and K.V. Cardoso et al. / Computers and Operations Research 106 (2019) 28–35
⎡
A1 ⎢0 ⎢. A=⎢ ⎢ .. ⎣0 Im
0 A2 .. . 0 Im
··· ··· .. . ··· ···
0 0 .. . Ar Im
⎤
0 0⎥ .. ⎥ ⎥ . ⎥. 0⎦ Im
Since the matrices A1 , A2 , . . . , Ar , and Im are totally unimodular, A is also totally unimodular (see Schrijver (1986)). In addition, the right-hand side vector of (P ) only has integer values and so (P ) can be solved in polynomial time (see Maurras et al. (1981)). The algorithm for the problem (P) is presented in Algorithm 1. The number of iterations of the algorithm is at most equal to r because initially = r and then it is decreased at least by one unit in each iteration. If = 0 then (P ) is infeasible, i.e., zero is a lower bound to . Thus, the complexity of Algorithm 1 is O(r.g( )), where g( ) is
Fig. 1. Cardinality of X∗ .
Algorithm 1 An -constraint approach to the problem (P). 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
X∗ ← ∅ ←r while (P ) not infeasible do x¯ ← optimal solution of (P ) X ∗ ← X ∗ ∪ {x¯} ← z1 (x¯ ) − 1 if |X ∗ | > 1 and z2 (x¯ ) = z2 (xˆ) then X ∗ ← X ∗ − {xˆ} end if xˆ ← x¯ end while
the complexity of (P ). Since (P ) can be solved in polynomial time, the complexity of Algorithm 1 is also polynomial. As the potential dominated solutions are filtered out during the algorithm execution, lines 7–9, the method provides a minimal complete set of Pareto-optimal solutions for the problem. The proof of the algorithm’s optimality is similar to that presented by Bornstein et al. (2012). The similarity comes from the fact that for any feasible solution x, z1 (x) is integer and 1 ≤ z1 (x) ≤ r. 4. Computational results We present results from two types of network topologies, square grid graphs and random generated graphs, both with 100 nodes. In the grid topology, a node can communicate directly with all the closest nodes, including those in the diagonal. The random topology was generated by the Barabási–Albert model, see Barabási and Albert (1999), which is described as follows. The network (or graph) starts with n¯ 0 nodes. Each new node establishes a connection with n¯ previously added nodes, such that n¯ ≤ n¯ 0 . The probability pi that a new node will be connected to a node i depends on its connectivity ki , so that pi =
k
i
j∈V
kj
. We built our ran-
domly generated topology with n¯ = n¯ 0 = 3, by adding new nodes f until they reach 100. In this evaluation, we employed ci j = 1, for all f ∈ F and for all (i, j) ∈ E. The network flows were distributed in accordance with two settings: (1) multiple random sources and multiple random destinations, and (2) multiple random sources and a single random destination. The first setting is common in general mesh networks, i.e., wired or wireless networks in which the nodes are connected directly and in non-hierarchical way. The second setting often appears in wireless sensor networks and some types of wireless mesh networks, (de Mello et al., 2016). In each setting, we evaluated two scenarios, with 80 and 300 flows, employing 100 randomly generated instances of each topology type. The topology
Fig. 2. Number of (P ) solved.
generator and the algorithm were implemented as C++ programs. Each solution was computed by CPLEX version 12.4, which was linked to the program through the Concert library. The following metrics were used to evaluate our algorithm: the cardinality of the minimal complete set (|X∗ |), the number of iterations in which (P ) was solved, and the execution time. It should be noted that the first Pareto-optimal solution of (P) generated by the algorithm has the largest bottleneck (z1o (x¯ )) and the lowest total cost of all flows (z2o (x¯ )) in X∗ . The last Paretooptimal solution of (P) generated by the algorithm has the smallf f est bottleneck (z1 (x¯ )) and the highest total cost of all flows (z2 (x¯ )). The following metrics were used to evaluate the characteristics of the Pareto-optimal solutions returned by the algorithm: the smallf est (z1 (x¯ )) and largest bottleneck (z1o (x¯ )) in X∗ , the size of increment in the shortest path of the last Pareto-optimal solution, and total amplitude of the path lengths. The total amplitude is the diff ference between z2 (x¯ ) and z2o (x¯ ). 4.1. Grid topology Figs. 1–3 present the cumulative distribution function (CDF) of the metrics used for the evaluation of our algorithm in a grid topology. The cardinality of the minimal complete set is strongly influenced by the traffic flow distribution. Multiple sources and multiple destinations imply a small minimal complete set, since the bottlenecks are spread out in the network and there are few opportunities to reduce them. Having a single destination concentrates the bottlenecks around a node, and thus provides more opportunities for bottleneck reduction at the cost of an increase in the path length. We observed the same behavior in scenarios with single source and multiple destinations, and single source and single destination. As expected, the number of iterations of our
L.L. Pinto, K.C.C. Fernandes and K.V. Cardoso et al. / Computers and Operations Research 106 (2019) 28–35
31
Table 4.1 Mean and standard deviation of results over 100 instances. Grid topology Multiple sources and multiple destinations It z1o z2o r Value |X ∗ | 80 Mean 2 5 2 375 Dev. Std. 0.5 0.9 0.2 18.3 300 Mean 1 9 4 1,408 Dev. Std. 0.4 1.5 0.1 37.3
z1f 1 0.5 4 0.4
z2f 382 18.6 1,410 37.9
t(s) 79.13 54.66 1,243.31 1,112.62
Multiple sources and single destination It z1o r Value |X ∗ | 80 Mean 6 21 17 Dev. Std. 2.1 9.2 3.4 300 Mean 16 66 62 Dev. Std. 6.6 29.3 13.3
z1f 13 3.8 47 13.5
z2f 400 66.8 1,455 241.3
t(s) 158.78 73.68 1,996,60 1,001.50
z2o 379 65.0 1,386 233.4
Fig. 3. Execution time.
algorithm is also strongly influenced by the traffic flow distribution, i.e., multiple sources and multiple destinations imply a small number of iterations and any other setting with a single end implies a higher number of iterations. On the other hand, the execution time of the algorithm is strongly influenced by the number of flows. While computing the flow routing, there is a large difference between the execution time consumed by our algorithm with an input of 300 flows compared with when there was an input of 80 flows. The reason for this is the increase in the number of iterations of the algorithm and the increase in the time spent during each iteration, while the latter is a function of the number of variables. In addition, the grid topology provides a larger number of paths than other topologies, e.g., the random topology used in Section 4.2. Naturally, there is also a difference between multiple destinations and single destination caused by the number of iterations of our algorithm, but this difference is smaller. Figs. 4(a) and (b) show the CDF of the bottleneck of the first Pareto-optimal solution of our algorithm (i.e., the largest bottleneck in X∗ ), and the last Pareto-optimal solution (i.e., the smallest bottleneck in X∗ ), respectively. As described earlier, multiple sources and multiple destinations spread out the bottlenecks, and this reduces their values. Despite the small values of the bottlenecks in this context, many of the sets X∗ have a last Pareto-optimal solution with smaller bottlenecks than the first Pareto-optimal solution. For example, with 80 flows and multiple destinations, there is no X∗ with a bottleneck lower than 2 in the first Pareto-optimal solution. In the same scenario, 60% of X∗ sets have the last Pareto-optimal solution with a bottleneck equal to 1. The performance is similar in the setting with a single destination, although it has a larger impact. Since a single destination yields larger bottlenecks, there are also large differences between the first and the last Pareto-optimal solution of the algorithm. For example, when there are 300 flows and a single destination, only 4% of X∗ sets have the first Pareto-optimal solution with a bottleneck equal to, or less than, 38 compared with 63% for the last Pareto-optimal solution. Figs. 5(a) and (b) show the sum of the path lengths of all the flows in each instance. The instances are ordered by the shortest path length of all the flows. The figures illustrate the increase in the total amplitude, which is the difference between the bars (the last Pareto-optimal solution of our algorithm) and the line (the first Pareto-optimal solution of the algorithm). In the grid topology, the nodes have a similar number of neighbors, which reduces the number of alternative paths (e.g., 300 flows in multiple destinations, Fig. 5(a)) or offers alternative paths with small increases (e.g., 300 flows in a single destination, Fig. 5(b)). This information, combined with the previous one, can give valuable insights to a
decision maker. For example, in a regular topology (e.g., a grid) with a proportionally large number of flows (e.g., 300 flows in a 100-node network) that tend to converge (e.g., flows that have single destination), the differences in the path lengths of the Paretooptimal solutions are small. In other words, the decision maker should concentrate on reducing the bottleneck in this scenario. The problem formulation implies that the sum of the path lengths of all the flows is an objective to pursue, but the path length of any individual flow is not taken into account. Thus, the fairness property of the Pareto-optimal solutions is a common issue. Figs. 6(a) and (b) show the CDF of the percent increase in the path length of each flow f ∈ F of the last Pareto-optimal solution with regard to its own minimum path, which is provided by the first Pareto-optimal solution. As expected, unfairness can be observed in the path length increase, but the overall impact is relatively small. For example, at most, 1.22% of the flows increase by 50% or more in any configuration. The longest of the shortest path lengths of these flows has 8 edges. Additionally, at most 0.625% of the flows have increased by 100% or more in any configuration. In the 100 instances, the longest of the shortest path lengths of these flows has 4 edges. Table 4.1 presents the number of flows (r), the cardinality of complete minimal set (|X ∗ |), the number of iterations in which (P ) was solved (It), the components of the first Pareto-optimal solution generated (z1o and z2o ), the components of the last Paretof
f
optimal solution generated (z1 and z2 ), and the execution time (t(s)). The results presented are the mean and standard deviation values calculated on 100 instances. 4.2. Random topology Figs. 7–9 present the CDF of the metrics used for the evaluation of our algorithm in a random topology. Again, the cardinality of the minimal complete set and the number of iterations are strongly influenced by the traffic flow distribution. The execution time of the algorithm also repeats its behavior, being strongly influenced by the number of flows. However, the random topology created by the Barabási model has some peculiarities. For example, 22% of the instances with single destination flows have only one Pareto-optimal solution compared with 5% in the grid topology. The results of the multiple destinations are in the opposite direction. For example, in the random topology, 1% of the instances for 300 flows and multiple destinations have only one Pareto-optimal solution in contrast with 75% in the grid topology. Additionally, the random topology tends to have a larger |X∗ |, which means more bottleneck values and larger variations in the path lengths, as will be presented in the following paragraphs. Figs. 10(a) and (b) show the CDF of the bottleneck of the first Pareto-optimal solution of our algorithm, and the last Paretooptimal solution, respectively. In general, the trends that can be
32
L.L. Pinto, K.C.C. Fernandes and K.V. Cardoso et al. / Computers and Operations Research 106 (2019) 28–35
Fig. 4. Bottleneck information – grid.
Fig. 5. Total amplitude of the path lengths – grid.
Fig. 6. Increase in the path length of individual flows – grid.
Fig. 7. Cardinality of X∗ .
Fig. 8. Number of (P ) solved.
observed are similar to those of the grid topology. Naturally, there are also some peculiar features due to the different topology properties of the Barabási model. For example, the random topology
has a larger number of bottleneck values than the grid topologies, even though the range is smaller. This is noticeable in the smallest bottlenecks of the single destination flows.
L.L. Pinto, K.C.C. Fernandes and K.V. Cardoso et al. / Computers and Operations Research 106 (2019) 28–35
33
Table 4.2 Mean and standard deviation of results over 100 instances. Random topology
Fig. 9. Execution time.
Multiple sources and multiple destinations It z1o z2o r Value |X ∗ | 80 Mean 2 4 2 208 Std. Dev. 0.7 0.7 0.5 6.4 300 Mean 3 6 5 778 Std. Dev. 0.9 0.9 0.9 11.0
z1f 2 0.5 3 0.2
z2f 213 8.5 786 12.1
t(s) 27.61 5.04 174.88 45.07
Multiple sources and single destination It z1o r Value |X ∗ | 80 Mean 7 19 25 Std. Dev. 5.2 8.4 8.1 300 Mean 23 66 97 Std. Dev. 18.0 33.1 27.6
z1f 19 7.3 76 24.4
z2f 222 22.6 833 64.9
t(s) 127.63 56.67 1,511.35 764.28
z2o 211 26.8 796 76.9
Table 4.3 Mean and standard deviation considering different values for edge cost. Grid topology
Figs. 11(a) and (b) show the sum of the path lengths of all the flows in each instance, ordered by the sum of shortest path lengths of all the flows. As previously stated, the path lengths are strongly affected by the topology. In comparison with the grid topology, the random topology has proportionally larger variations in the sum of the lengths of all the flows. This results from the non-regularity of the random topology, which can generate larger stretchings in path lengths of the flows. Additionally, the random topology results in smaller sums of the path lengths caused by their topological properties, see Barabási and Albert (1999), such as the presence of vertices that are highly connected, i.e., high degree vertices. Figs. 12(c) and (b) show the CDF of the percent increase in the path length of each flow f ∈ F of the last Pareto-optimal solution with regard to its own minimum path, which is provided by the first Pareto-optimal solution. Again, it can be seen that there is unfairness in the path length increase, but the overall impact is small. For example, in the 100 instances, a maximum of 0.55% of the flows have increased by 50% or more in any configuration. The longest of the shortest path lengths of these flows has 5 edges. Additionally, a maximum of 0.0125% of the flows have increased by 100% or more in any configuration. The longest of the shortest path lengths of these flows have only two edges. Thus, the topology also has a noticeable effect on these results. The path lengths of the random topology generated by the Barabási model tend to be shorter than the grid topology. Also due to the presence of highly connected nodes in the random topology, the increase of the path lengths in the last Pareto-optimal solution tends to be smaller. Table 4.2 presents the number of flows (r), the cardinality of complete minimal set (|X∗ |), the number of iterations in which (P ) was solved (It), the components of the first Pareto-optimal solution generated (z1o and z2o ), the components of the last Pareto-optimal f
f
solution generated (z1 and z2 ), and the execution time (t(s)). The
Multiple sources and multiple destinations It z1o z2o r Value |X ∗ | 80 Mean 7 9 8 608 Dev. Std. 1.5 1.4 1.4 28.4 300 Mean 20 24 23 2335 Dev. Std. 2.8 3.0 2.8 78.7
z1f 1 0.5 4 0.3
z2f 807 96.6 2934 153.5
t(s) 162.98 255.32 1,086.53 664.27
Multiple sources and single destination It z1o r Value |X∗ | 80 Mean 28 35 39 Dev. Std. 11.7 12.4 12.9 300 Mean 105 126 152 Dev. Std. 51.5 49.8 55.0
z1f 12 3.3 48 14.8
z2f 712 108.6 2711 430.7
t(s) 77.64 30.45 1,220.98 504.88
z2o 601 96.9 2277 415,5
results presented are the mean and standard deviation values calculated on 100 instances. 4.3. Additional evaluation In this subsection, we extend our evaluation in order to investigate the impact of employing different values for the edge cost and also the network size. 4.3.1. Edge cost f In this evaluation, each edge cost ci j was randomly chosen from the set {1, 2, 3, 4, 5}, for all edges (i, j) ∈ E and for all flows f ∈ F. Table 4.3 presents, for the grid topology, the number of flows (r), the cardinality of minimal complete set (|X ∗ |), the number of iterations in which (P ) was solved (It), the components of the first Pareto-optimal solution generated (z1o and z2o ), the components f
f
of the last Pareto-optimal solution generated (z1 and z2 ), and the execution time (t(s)). Table 4.4 presents the same metrics for the
Fig. 10. Bottleneck information – Barabási.
34
L.L. Pinto, K.C.C. Fernandes and K.V. Cardoso et al. / Computers and Operations Research 106 (2019) 28–35
Fig. 11. Total amplitude of the path lengths – Barabási.
Fig. 12. Increase in the path length of individual flows – Barabási.
Table 4.4 Mean and standard deviation considering different values for edge cost.
Table 4.5 Mean and standard deviation considering different network sizes.
Random topology
Grid topology
Multiple sources and multiple destinations It z1o z2o r Value |X ∗ | 80 Mean 5 6 5 387 Dev. Std. 1.2 1.3 1.1 13.7 300 Mean 12 17 14 1456 Dev. Std. 2.2 2.7 2.2 26.7
z1f 1 0.5 3 0.3
z2f 440 36.3 1643 42.9
t(s) 14.17 2.77 155.23 22.58
Multiple sources and single destination It z1o r Value |X ∗ | 80 Mean 29 36 46 Dev. Std. 14.6 14.0 17.3 300 Mean 97 117 165 Dev. Std. 56.6 54.1 67.2
z1f 19 7.1 69 26.5
z2f 459 60.3 1749 240.8
t(s) 67.83 27.97 885.81 420.41
z2o 378 70.2 1474 273.0
random topology. The results presented are the mean and standard deviation values calculated on 100 instances. The cardinality of minimal complete set (|X∗ |) with different values for the edge cost is notably higher than this cardinality with f a single value for the edge cost, e.g., ci j = 1. This happens because, with different values for the edge cost, there is a higher chance of finding a single optimal solution for (P ) in each iteration. This solution is Pareto-optimal for (P) (see Chankong and Haimes (2008)) and so few solutions generated by the algorithm are deleted. Indeed, if there is a large number of distinct values for the edge cost, the chance of not deleting every generated solution becomes very high, i.e., most of the generated solutions become Pareto-optimal of (P). Additionally, the different values for the edge cost implies a larger number of iterations because there are more path options of different lengths for each flow. As a consequence, the execution time of the algorithm is also higher. Naturally, the total amplitude of the path lengths is larger when different values are used for the edge cost.
Multiple sources and multiple destinations It z1o z2o n Value |X ∗ | 49 Mean 1 6 2 264 Dev. Std. 0.5 0.8 0.5 13.2 100 Mean 2 5 2 374 Dev. Std. 0.5 0.9 0.2 22.8 225 Mean 2 4 2 563 0.5 0.7 0.5 28.9 Dev. Std. 400 Mean 1 4 1 754 Dev. Std. 0.4 0.7 0.4 38.3
z1f 2 0.1 1 0.5 1 0.1 1 0.0
z2f 264 13.3 380 22.4 564 29.1 754 38.2
t(s) 9.74 1.56 27.06 21.69 32.94 6.05 55.51 11.20
Multiple sources and single destination It z1o n Value |X∗ | 49 Mean 5 18 18 Dev. Std. 2.3 5.4 4.2 100 Mean 6 22 17 Dev. Std. 2.1 9.0 3.6 225 Mean 6 22 16 2.2 10.5 3.4 Dev. Std. 400 Mean 6 24 16 Dev. Std. 2.1 9.5 2.9
z1f 14 5.6 13 4.1 11 3.4 11 2.7
z2f 283 43.2 400 58.1 567 106.2 779 130.4
t(s) 18.07 5.76 44.47 19.13 126.14 65.97 282.83 125.15
z2o 263 46.1 379 57.3 546 101.1 755 125.8
4.3.2. Network size Here, the performance of our algorithm is evaluated in different network sizes. For the grid topology, the network size n ∈ {49, 100, 225, 400} and, for the random topology, n ∈ {50, 10 0, 20 0, 40 0}. In both topologies, the number of flows r = 80. Table 4.5 presents, for the grid topology, the network size (n), the cardinality of minimal complete set (|X∗ |), the number of iterations in which (P ) was solved (It), the components of the first Pareto-optimal solution generated (z1o and z2o ), the components of f
f
the last Pareto-optimal solution generated (z1 and z2 ), and the execution time (t(s)). Table 4.6 presents the same metrics for the random topology. The results presented are the mean and standard
L.L. Pinto, K.C.C. Fernandes and K.V. Cardoso et al. / Computers and Operations Research 106 (2019) 28–35 Table 4.6 Mean and standard deviation considering different network sizes. Random topology Multiple sources and multiple destinations It z1o z2o n Value |X ∗ | 50 Mean 2 4 3 180 Dev. Std. 0.6 0.8 0.6 6.7 100 Mean 2 4 3 208 Dev. Std. 0.7 0.8 0.6 5.9 200 Mean 2 4 2 231 0.4 0.7 0.3 6.1 Dev. Std. 400 Mean 2 4 2 252 Dev. Std. 0.3 0.6 0.3 6.7
z1f 2 0.2 2 0.5 1 0.3 1 0.0
z2f 182 6.5 213 7.1 236 6.5 256 6.5
t(s) 5.27 0.82 8.04 1.41 14.97 2.74 26.91 5.96
Multiple sources and single destination It z1o n Value |X ∗ | 50 Mean 6 17 23 Dev. Std. 4.2 6.9 8.0 100 Mean 7 21 25 Dev. Std. 5.7 9.5 7.5 200 Mean 8 22 26 7.4 10.0 10.4 Dev. Std. 400 Mean 10 24 28 Dev. Std. 9.4 11.9 11.3
z1f 18 7.2 18 6.6 19 7.2 19 7.6
z2f 189 21.0 219 19.2 243 18.4 265 20.1
t(s) 16.17 7.56 53.65 26.77 89.31 41.99 200.74 100.30
z2o 180 23.1 209 22.1 233 22.3 252 26.1
deviation values calculated on 100 instances. In general, the impact of varying the network size is similar to varying the number of flows while the network size is kept fixed. For example, as the netf work size increases the mean total cost of the routing (z2o and z2 ) and the mean execution time (t(s)) increase also. At first, the behavior of the iteration number (It) may seem unusual for multiples destinations in both topologies, i.e., grid and random. Since the execution time increases as the network increases, it could be expected that the iteration number would also increases, similar to the single destination results. However, as the network size increases the flows tend to be spread, implying in f a decreasing trend in the bottleneck (z1o and z1 ) and also in the number of iterations of the algorithm. On the other hand, as the network size increases the execution time of each iteration also increases because increases the number of edges and consequently the number of variables and the time consumed in each subproblem. 5. Conclusion and final remarks This paper has introduced a bi-objective integer programming formulation, with an application in communication networks, and a polynomial time algorithm to solve it. We also performed a wide performance evaluation. Several factors were evaluated, such as topology, the number of flows, and flow distribution, and those that had most impact were identified in each context. For example, the topology type has a significant effect on the size of the minimal complete set. We also observed that the unfairness in the path length caused by the load balancing has little effect in general, which might at first seem surprising. Our exact approach might be regarded as computationally expensive in some scenarios, e.g., in Gálvez and Ruiz (2013) and de Mello et al. (2016), where the traffic flow dynamics and the demand for fast decisions require heuristic approaches. However, our exact approach is a valuable tool for evaluating these heuristics. For example, the network state and the corresponding solution generated by a heuristic approach could be regularly recorded, and then our exact approach would be run to obtain a minimal
35
complete set. Finally, the objective values of the solution from the heuristic approach would be compared with the objective values of solutions in this minimal complete set. Still, in this context, our exact approach could be combined with a heuristic one to obtain a hybrid approach. For example, since the quality of the solutions generated by the heuristic part of the approach tend to degrade as the network traffic flows change, the exact algorithm could be deployed from time to time to bring the network to an optimal state again. In many real-world applications, the links of the network have different levels of quality (or capacity). Our model can be adapted to properly represent this fact. However, it is essential to keep the bottleneck objective function realistic by taking into account the quality of the links. One means of achieving this is to consider the product between the link quality and the number of flows on the link, instead of only being concerned with the number of flows on the link. Acknowledgments The authors would like to thank Gilbert Laporte for his valuable comments and suggestions on a preliminary version of this manuscript. References Barabási, A.-L., Albert, R., 1999. Emergence of scaling in random networks. Science 286 (5439), 509–512. Berman, O., Einav, D., Handler, G., 1990. The constrained bottleneck problem in networks. Oper. Res. 38 (1), 178–181. Bhushan, N., Li, J., Malladi, D., Gilmore, R., Brenner, D., Damnjanovic, A., Sukhavasi, R.T., Patel, C., Geirhofer, S., 2014. Network densification: the dominant theme for wireless evolution into 5G. IEEE Commun. Mag. 52 (2), 82–89. Boland, N., Charkhgard, H., Savelsbergh, M., 2016. The L-shape search method for triobjective integer programming. Math. Program. Comput. 8 (2), 217–251. Bornstein, C.T., Maculan, N., Pascoal, M., Pinto, L.L., 2012. Multiobjective combinatorial optimization problems with a cost and several bottleneck objective functions: an algorithm with reoptimization. Comput. Oper. Res. 39 (9), 1969–1976. Chalmet, L., Lemonidis, L., Elzinga, D., 1986. An algorithm for the bi-criterion integer programming problem. Eur. J. Oper. Res. 25 (2), 292–300. Chankong, V., Haimes, Y.Y., 2008. Multiobjective Decision Making: Theory and Methodology. Courier Dover Publications. Clímaco, J.C.N., Martins, E.Q.V., 1982. A bicriterion shortest path algorithm. Eur. J. Oper. Res. 11 (4), 399–404. Ehrgott, M., 2005. Multicriteria Optimization, Vol. 491. Springer Science & Business Media. Ehrgott, M., 2006. A discussion of scalarization techniques for multiple objective integer programming. Ann. Oper. Res. 147 (1), 343–360. Gadegaard, S.L., Klose, A., Nielsen, L.R., 2016. A bi-objective approach to discrete cost-bottleneck location problems. Ann. Oper. Res. 1–23. Gálvez, J.J., Ruiz, P.M., 2013. Efficient rate allocation, routing and channel assignment in wireless mesh networks supporting dynamic traffic flows. Ad. Hoc Netw. 11 (6), 1765–1781. Hansen, P., 1980. Bicriterion Path Problems. Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 109–127. Klein, D., Hannan, E., 1982. An algorithm for the multiple objective integer linear programming problem. Eur. J. Oper. Res. 9 (4), 378–385. Liu, Q., Yin, J., Leung, V.C.M., Cai, Z., 2012. ISAR: improved situation-aware routing method for wireless mesh backbones. IEEE Commun. Lett. 16 (9), 1404–1407. Lokman, B., Köksalan, M., 2013. Finding all nondominated points of multi-objective integer programs. J. Global Optim. 57 (2), 347–365. Maurras, J.F., Truemper, K., Akgül, M., 1981. Polynomial algorithms for a class of linear programs. Math. Program. 21 (1), 121–136. de Mello, M.O., Borges, V.C., Pinto, L.L., Cardoso, K.V., 2016. Improving load balancing, path length, and stability in low-cost wireless backhauls. Ad Hoc Netw. 48, 16–28. Ozlen, M., Burton, B.A., MacRae, C.A.G., 2014. Multi-objective integer programming: an improved recursive algorithm. J. Optim. Theory Appl. 160 (2), 470–482. Pham, P.P., Perreau, S., 2004. Increasing the network performance using multi-path routing mechanism with load balance. Ad Hoc Netw. 2 (4), 433–459. Schrijver, A., 1986. Theory of Linear and Integer Programming. John Wiley & Sons, Inc., New York, NY, USA.