Presentation is loading. Please wait.

Presentation is loading. Please wait.

A memory-based multistart heuristic for a discrete cost multicommodity network design problem Daniel Aloise Celso C. Ribeiro MATHEURISTICS Bertinoro, Italy.

Similar presentations


Presentation on theme: "A memory-based multistart heuristic for a discrete cost multicommodity network design problem Daniel Aloise Celso C. Ribeiro MATHEURISTICS Bertinoro, Italy."— Presentation transcript:

1 A memory-based multistart heuristic for a discrete cost multicommodity network design problem Daniel Aloise Celso C. Ribeiro MATHEURISTICS Bertinoro, Italy August 2006

2 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions2/48 Outline Problem statement Constructive heuristics Local search Memory-based multistart heuristic Vocabulary building Results Concluding remarks

3 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions3/48 Problem statement Undirected network G=( V,U ) Problem: determine the capacities to be installed in the edges : Satisfying a set of demands D = {D 1,…,D K } defined by triples D k ={s k,t k,f k } source destination value Satisfying capacity constraints Minimizing the total network cost given in terms of the capacity installed in the edges

4 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions4/48 Problem statement Stepwise discrete cost function A step-increasing cost function is associated to each edge u U

5 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions5/48 Short literature review Stoer and Dahl (1994) Cutting planes Gabrel, Knippel and Minoux (1999) Benders decomposition method Gabrel, Knippel and Minoux (2003) Heuristic implementation of the exact Benders cutting plane method Exact methods are limited, in practice, to small instances not exceeding 20 nodes and 40 edges with cost functions with six steps per link and dense matrices of demands.

6 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions6/48 Constructive heuristic Procedure: 1. An initial capacity x u = v u i is selected to each edge u U, favouring steps with the best ratios between the capacity v u i and the associated cost u i 2. Route each demand using a maximum flow algorithm 3. Capacities are augmented to route the yet unrouted demands 4. Unused capacity steps are eliminated

7 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions7/48 Infeasible routing!!! Minimum cut capacity: 4 We must consider the edges of the minimum cut!!! Initial installed capacities Constructive heuristic – step 3Constructive heuristic – step 4Constructive heuristic – step 1Constructive heuristic – step 2 New minimum cut capacity: 5 edge (1,3) (7-4)/(4-2) = 3/2 edge (1,2) (4-2)/(2-1) = 2 (2,4)(4,4) f 3 = 1 s 3 = 4 t 3 = 2 UR = {f 2 = 5 s 2 = 1 t 2 = 4} f 1 = 2 s 1 = 1 t 1 = 3 f 2 = 5 s 2 = 1 t 2 = 4 1 3 4 2 (0,4) (0,2) (0,4) (0,2) G (1,4) (0,4)(3,4) (4,4) (2,2) UR = (0,0)

8 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions8/48 Local search: link rerouting Reroutes a fraction of the total flow traversing an edge. Considered quantities of the flow to be rerouted are those for which the edge capacity steps down in the objective function.

9 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions9/48 Rerouting one unity of flow Rerouting three unities of flowRerouting five unities of flow Local search: link rerouting Suppose 5 unities of flow traverse edge u 5

10 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions10/48 Local search: link rerouting Large neighborhood: number of paths for flow rerouting is not polynomially bounded Neighborhood exploration can be confined to a single path for each rerouted flow quantity

11 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions11/48 For each quantity of flow considered for rerouting in a given edge, a graph is built with edge lenghts where y u is the total flow using edge u in the current solution. Reroute flow through the shortest path from a to b in G 1 Local search: link rerouting

12 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions12/48 Additional cost of rerouting five unities of flow of u is 10. Cost variation: 10 - (4-0) = 6 Additional cost of rerouting one unity of flow of u is 0. Cost variation: 0 - (4-2) = -2 Additional cost of rerouting three unities of flow of u is 3. Cost variation: 3 - (4-1) = 0 1 3 4 2 0 0 0 1 G1G1 Local search: link rerouting 1 3 4 2 (1,2) (5,7) (3,4) (1,2) (0,0) G 1 1 2 2 3 3 inf 4 5

13 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions13/48 Local search: link rerouting Minimum rerouting cost is equal to the shortest path from a to b in G 1. In each iteration of the local search method, all edges have their rerouting possibilities evaluated Perform link rerouting which reduces the most the cost of the current solution Local search stops when improvements are no longer possible

14 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions14/48 Instead of rerouting aggregated flows in the edges, demands are individually considered for rerouting: 1. Remove from the edges the flows associated to the demand to be rerouted, updating the current solution and its cost 2. Reroute the demand Discrete cost multicommodity flow problem NP-hard (Chopra et. Al., 1996) Discrete cost multicommodity flow problem NP-hard (Chopra et. Al., 1996) Local search: demand rerouting

15 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions15/48 Local search: demand rerouting Heuristic devised for exploring the demand rerouting neighborhood Local search algorithm first attempts to reroute each demand using the residual capacities of the graph

16 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions16/48 capacity installed on edge capacity installed on edge u Solution cost equal to 12. Capacity of the minimum cut between nodes 1 and 4 is 1. Impossible to reroute D k using the residual capacities! (0,2,2,1)(0,3,4,2) Local search: demand rerouting 1 3 4 2 (2,3,4,2) (2,2,2,1) ( u k, y u, x u, u ) D k = {s k =1, t k =4, f k =4} (2,5,7,4)(4,6,7,4) (0,1,2,1) 3 5 (0,0,0,0) 6 1 flow of demand k using edge u total flow using edge u cost associated to edge cost associated to edge u

17 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions17/48 Local search: demand rerouting Additional capacities are installed in the edges of the minimum cut which separates s k from t k (sequentially, choosing one edge for capacity augmentation from the current minimum cut). Next additional capacity step is always installed in the edge of the minimum cut with the smallest ratio between the additional cost and the additional capacity

18 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions18/48 Finally, capacity of the minimum cut between nodes 1 and 4 is equal to 4. Capacity of the minimum cut between nodes 1 and 4 is still equal to 2. Regarding the edge (1,2): (7-4)/(4-2) = 3/2 Regarding the edge (1,3): (4-2)/(2-1) = 2 The value of the capacity of the minimum cut between the nodes 1 and 4 equals 2. flow of demand k using edge u Demand D k can be rerouted with solution cost equal to 8 (initial cost was 12) (0,3,4,2)(1,4,4,2)(0,2,2,1)(0,2,4,2)(1,3,4,2) (0,0,0,0) (0,1,2,1) (0,1,4,2) (3,4,4,2) Local search: demand rerouting 1 3 4 2 ( u k, y u, x u, u ) D k = {s k =1, t k =4, f k =4} (0,1,2,1) (0,1,4,2)(3,4,4,2) total flow using edge u capacity installed on edge capacity installed on edge u cost associated to edge cost associated to edge u

19 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions19/48 Local search: demand rerouting Demands are exhaustively tested for rerouting until improvements are no longer possible The original routing is restored when a demand rerouting does not lead to an improvement in the solution cost

20 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions20/48 Memory-based multistart Multistart heuristics are iterative two- phase procedures: 1. Constructive heuristic 2. Local search A multistart algorithm can be obtained by combining the constructive heuristic with the proposed local search strategies. Basic multistart heuristics do not take advantage of regions previously explored

21 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions21/48 Memory-based multistart Multistart heuristic with adaptive memory based on the ideas of [Fleurent & Glover, 1999]. Pool of elite solutions stores the best solutions found during the search Construction of new solutions is intensified by using the information extracted from the elite solutions

22 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions22/48 Memory-based multistart Parameter controls the relative weigth of the greedy information and the information contained in the pool of elite solutions during the construction In the beggining, weight of the greedy information is stronger (information in the pool is not relevant) At the end, weight of the information extracted from the pool is stronger, focusing the search into promising regions

23 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions23/48 Vocabulary building Vocabulary building [Glover & Laguna, 1997] creates new solutions from pieces of solutions previously found Two basic steps: Identification of pieces (words) common to good solutions Building of new solutions (phrases) from the combination of words

24 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions24/48 Vocabulary building: finding words Input: pool of elite solutions Installed capacities in the elite solutions Employs the Int operator Searches for words of size greater than a given length l, while maximizing the number of solutions used by the Int operator. Considering two capacity vectors x and x associated to two different solutions s and s, the resulting capacity vector z obtained from the application of Int( s, s ) is given by:

25 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions25/48 for the capacity installed in each edge u U. Vocabulary building: finding words if

26 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions26/48 Vocabulary building: example 1 l = 3 O 1 = { p 1,p 4,p 2,p 5,p 6,p 3,p 7,p 8 } word identified

27 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions27/48 Vocabulary building: example 2 l = 3 O 2 = { p 3,p 4,p 8,p 5,p 7,p 6,p 1,p 2 } From this solution, any operation Int can only decrease the length of the word

28 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions28/48 Vocabulary building: build phrases Input: set Z of extracted blocks from elite solutions (words). Logical inconsistencies generated by the Int operator are replaced by blank spaces. Employs the EInt operator New extended operator (EInt) is defined for combining words. After the elimination of inconsistences, a capacity vector w = EInt( z, z ), where z and z are identified words, is given by the following rules:

29 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions29/48 Vocabulary building: build phrases - - if z u and z u are both non blank, the rules that define Int are used. - - otherwise, w u = z u if z u is equal to blank, and w u = z u if z u is equal to blank. for the capacity installed in each edge u U.

30 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions30/48 Vocabulary building: example 1 Complete phrase

31 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions31/48 Vocabulary building: example 2 incomplete phrase

32 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions32/48 Vocabulary building: complete phrases With the phrases at hand, a minimum cost multicommodity flow problem is solved to: Route the demands Define the values of the still undefined capacity variables in incomplete phrases, thereby building a complete solution To accomplish the second goal, the edges with undefined capacities are considered in the linear model with: Maximum allowed capacities (upper bounds) High utilization costs (big M)

33 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions33/48 Due to their high utilization costs, these edges are used for routing the demands only if strictly necessary. The installed capacities are given by the upper limit of the capacity step routing the aggregated flow in each edge obtained from the solution of this LP. Vocabulary building: complete phrases

34 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions34/48 Algorithm overview

35 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions35/48 Computational results Instances are the same as those in [Gabrel, Knippel & Minoux, 2003]. Instances with up to 20 nodes: optimal solutions obtained by exact methods reported in [Minoux,2001]. Experiments performed on a Pentium IV 2 GHz with 512 Mb of RAM memory. Algorithms implemented in C++, compiled with gcc 3.2, and run on Linux Red Hat 9.0 platform.

36 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions36/48 Computational experiments In the proposed heuristics, the demands are routed by a minimum cost flow algorithm. Two different strategies for the attribution of values to the utilization costs of the edges were tested: unitary utilization costs (strategy A). utilization costs inversely proportional to the residual capacity (strategy B). Constructive heuristics

37 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions37/48 Computational experiments Strategy B obtained better results, measured by the quantity of flow delayed to the set of unrouted demands UR. Less flow delayed to UR: initial capacities are better used. Constructive heuristics

38 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions38/48 Computational results Constructive heuristics rn40_10 / HC1 A - HC1 B

39 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions39/48 Computational experiments Local search followed the VND strategy. Better results obtained when demand rerouting is applied first, followed by link rerouting. Local search

40 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions40/48 Computational experiments Multistart algorithm with adaptive memory (MS mem ) Three paramers were adjusted for using the adaptive memory: Size of the pool of elite solutions (|Pool|=30) Minimum hamming distance ( ham min =3 ) among solutions in the pool Weight ( ) of the greedy and memory information, continuously decreasing the value of this parameter as the algorithm proceeds.

41 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions41/48 Computational experiments Solution values after local search

42 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions42/48 Computational experiments Solution values after local search

43 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions43/48 Computational experiments Normalized average results obtained in ten executions of the heuristics MS, MS mem and OtimRedDisc for each size of instance.

44 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions44/48 Computational experiments Heuristics MS mem and OtimRedDisc were compared with the best heuristics in the literature, named here H1 and H2 [Gabrel, Knippel & Minoux,2003]. Results and CPU times with heuristics H1 and H2 obtained in a UltraSparc 10.

45 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions45/48 Computational experiments avg best

46 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions46/48 Computational experiments avg best

47 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions47/48 OtimRedDisc and MS mem can perform fewer iterations still obtaining feasible solution, while... OtimRedDisc and MS mem can be further improved (max-flow and LP).... H1 and H2 visit infeasible solutions and stop at the first feasible one. Computational experiments Average CPU times for H1, H2, MS mem and OtimRedDisc for each size of instance.

48 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions48/48 Concluding remarks New heuristics are competitive with those in the literature. Better solutions for some benchmark instances. Computational experiments showed the efficiency of adaptive memory and vocabulary building to improve multistart heuristics. Other methods can be used to find and combine words. This approach can benefit from other (perhaps still to come) solution methods the minimum cost multicommodity flow problem.

49 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions49/48 References R. Ahuja, T. Magnanti e J. Orlin. Network flows: Theory, algorithms and applications. Prentice Hall, 1993. C. Fleurent e F. Glover. Improved constructive multistart strategies for the quadratic assignment problem using memory adaptative. INFORMS Journal on Computing, 11:198-204, 1999. V. Gabrel, A. Knippel e M. Minoux. A comparison of heuristics for the discrete cost multicommodity network problem. Journal of Heuristics, 9: 429-445, 2003. F. Glover e M. Laguna. Tabu Search. Kluwer Academic Publishers, 1997. M. Minoux. Network synthesis and optimum network design problems: Models, solution methods and applications. Networks, 19: 313-360, 1989.

50 MATHEURISTICS, August 2006Multicommodity network design with stepwise cost functions50/48 Computational experiments Average results obtained in ten executions of the heuristics MS, MS mem and OtimRedDisc for each size of instance.


Download ppt "A memory-based multistart heuristic for a discrete cost multicommodity network design problem Daniel Aloise Celso C. Ribeiro MATHEURISTICS Bertinoro, Italy."

Similar presentations


Ads by Google