MIC’2001 - 4th Metaheuristics International Conference
181
A Variable Neighborhood Search for Solving the Linear Ordering Problem Carlos Garc´ıa Gonz´ alez∗
Dionisio P´erez-Brito†
∗
Dpto. de Econom´ıa de las Instituciones. Estad´ıstica Econ´ omica y Econometr´ıa Fac. de Econ´ omicas. Universidad de La Laguna. 38271 La Laguna, Tenerife, Spain Email:
[email protected] † Dpto. de Estad´ıstica. Investigaci´ on Operativa y Computaci´ on Fac. de Matem´ atica. Universidad de La Laguna. 38271 La Laguna, Tenerife, Spain Email:
[email protected]
1
Introduction
A Systematic change of Neighborhood within a possibly randomized local search algorithm yields a simple and effective metaheuristic for combinatorial and global optimization. In this paper we present a Variable Neighborhood Search implementation designed to find high quality solutions for the NP-hard Linear Ordering Problem, which has a significant number of application in practice, such triangulation of input-output matrices, archeological seriation, minimizing total weighted completion time in onemachine scheduling, and aggregation of individual preferences.We perform our implementation on the set of 49 instances in LOLIB, in order to compare our results with the Tabu Search of Laguna, et al.
2
The Linear Ordering Problem
The linear ordering problem (LOP) is an NP-hard combinatorial optimization problem which has a wide range of applications in several fields. Perhaps, the best known application of the LOP occurs in the field of economics. In this application, the economy (regional or national) is first subdivided into sectors. Then, an input/output matrix is created, in which the entry (i, j) represents the flow of money from the sector i to the sector j. Economist are often interested in ordering the sectors so that suppliers tend to come first followed by consumers. This is achieved by permuting the rows and columns of the matrix so that the sum of entries above the diagonal is maximized, which is the objective of the LOP. In group decision making, for example, the linear ordering problem can be used to provide a ranking by paired comparison (or aggregation of individual preferences). A matrix entry (i, j) in this context may represent the strength of the preference that the group shows for option i over option j. Since the data may be inconsistent, there may not be a direct way of finding an ordering for the options. The solution to the corresponding LOP emerges as viable alternative for ranking the options under consideration. The practical significance of the linear ordering problem has been well documented in the literature (see e.g. Grotschel, et al., 1984 [6] and Chanas and Kobylansky, 1996 [1]). Solution methods for the LOP have been proposed since 1958, when Chenery and Watanabe outlined some ideas on how to obtain solutions for this problem. The interest on this problem has continued over the years, resulting in a book by Reinelt (1985) [14] and in the most recent solution method due to Chanas and Kobylansky (1996) [1]. Porto, Portugal, July 16-20, 2001
182
MIC’2001 - 4th Metaheuristics International Conference
Following Laguna, et al. [9] notation, let E = {eij }mxm a matrix of weights, the LOP consists of finding a permutation p of the columns (and rows) in order to maximize the sum of the weights in the upper triangle. In mathematical terms, we seek to maximize:
CE (ρ) =
m−1
m
epi pj
i=1 j=i+1
where pi is the index of the column (and row) in position i in the permutation. Note that in the LOP, the permutation ρ provides the ordering of both the columns and the rows. The equivalent problem in graphs is that of finding, in a complete weighted graph, an acyclic tournament with a maximal sum of arc weights (Reinelt, 1985 [14]).
3
The Tabu Search procedure.
In this section, we describe the best procedure for the LOP reported in the literature, and due to that, it will be used for comparison purposes in our computational experiments. The Tabu search (TS) technique is rapidly becoming a method of choice for designing solution procedures for hard combinatorial optimization problems. A comprehensive examination of this methodology can be found in the book by Glover and Laguna (1997) [5]. The following describes the tabu search procedure for the linear ordering problem (TS-LOP). Starting from the randomly generated permutation ρ, the basic TS procedure alternates between an intensification and a diversification phase as described below. An iteration in the intensification phase begins by randomly selecting a sector. The probability of selecting sector j is proportional to its weight Wj . The move with the largest move value is selected. The moved sector becomes tabu-active for iterations, and therefore it cannot be selected for insertions during this time. The number of times that sector j has been chosen to be moved is accumulated. This frequency information is used for diversification purposes. The intensification phase terminates after Maxint consecutive iterations without improvement. In each diversification phase iteration, a sector is randomly selected, where the probability of selecting sector j is inversely proportional to the frequency count. The chosen sector is placed in the best position, as determined by the move values associated with the insert moves. The procedure stops when MaxGlo global iterations are performed without improving. A global iteration is an application of the intensification phase followed by the application of the diversification phase.
4
Variable Neighborhood Search procedure
In local (or neighbourhood) search heuristic methods the set of Neighborhood solutions N (x) of any solution x is defined. The procedure starts with a feasible solution x0 ; then, at iteration k, the objective function value of each xk ∈ Vk ⊆ N (xk ) is evaluated. If a better solution xk+1 ∈ Vk is found the procedure continues with xk+1 as a new current solution. Otherwise, it stops in a local minimum, whose objective function value could be much larger than the global minimum one. Several ways to do better within the local search framework have been suggested in the literature. The easiest is the Multistart approach, where the same procedure is restarted a given number of times, from different initial solutions and the best local minimum is retained. Simulated Annealing [Kirkpatrick Porto, Portugal, July 16-20, 2001
MIC’2001 - 4th Metaheuristics International Conference
183
et al., 1983 [8]], Tabu Search [Glover, 1989, 1990 [2] [3]], Glover and Laguna, 1993, 1997 [4] [5]] and Variable Neighborhood Search [Mladenovi´c, 1995 [10]], [Mladenovi´c and Hansen, 1997, [11]], [Hansen and Mladenovi´c, 1998 [7]], [Mladenovi´c and Hansen, 1999 [12]] methods, explore the vicinity of the local minimum, as they are found. The first two methods follow trajectory and accept ascent moves, by different means and both use a single Neighborhood structure in the search. On the other hand, the third method explores increasingly far Neighborhood of the current local minimum, with a descent method, and re-centers the search if a better solution than the incumbent is found. Let us denote a finite set of pre-selected neighbourhood structures with Nk , (k = 1, . . . , kmax ), and with Nk (x) the set of solutions in the k th neighbourhood of x. Note that local search heuristics usually use one Neighborhood structure, i.e., kmax = 1. VNS for the LOP comprises the following steps: Initialization Select the set of neighborhood structures Nk by interchanging k sectors k = 1, . . . , kmax , that will be used in the search. Denote random permutation of sectors {1,. . . ,m} with xopt (i), i = 1, . . . , m.. Find corresponding objective function value fopt Copy fopt and xopt into fcur and xcur , respectively. Main step (1) Set k ← 1 (2) Until k = kmax , repeat the following steps: • (a) Shaking.(* Generate a solution at random from the kth neighborhood of xcur (x ∈ Nk (xc ur))*) – For i = 1 to k, do the following: ∗ Take a sector sec1 to be moved at random ∗ Find the position to place sec1 by using the function select best, which gives the maximum value w and the position where it is reached – Update xcur and fcur accordingly • (b) Local search.(* Apply a greedy local search using the same Neighborhood N2 as Laguna et al.*) – Iteration step. ∗ wopt = −∞ ∗ For j = 1 to m, do the following: · Find the best position to place xcur (j) using select best · If w > wopt then wopt = w and keep the two positions to change: change1 and change2 – Termination. ∗ If wopt ≤ 0 stop (* There is not any improvement in the Neighborhood.*) – Update. ∗ Update objective function value fopt = fopt + wopt ∗ Update xopt , introducing the sector xopt (change1) in the position change2 of xopt ∗ Return to Iteration step. • (c) Move or not.(* If this local optimum is better than the incumbent, move there and continue the search *) – If fcur > fopt then fopt = fcur ; xopt = xcur ; and set k ← 1 – Else fcur = fopt ; xcur = xopt ; and set k ← k + 1
Porto, Portugal, July 16-20, 2001
184
5
MIC’2001 - 4th Metaheuristics International Conference
Computational Experiments
In the preliminary experimentation we use the same two neighborhood that Laguna et al. [9], the first, N1 , consists of permutations that are reached by switching the positions of contiguous sectors, and the second, N2 , consist of all permutations resulting from executing general insertion moves as defined in [9]. We obtained like TS-LOP the best results with N2 . In our implementation we generate two version of VNS called VNS-LOP and VNS-LOP-Rv, the first one is VNS (pure, like the description above), and the last one, includes permutation reversal, like Chanas et al [1] when a local optimal is found, i.e., once a local optimal (x1 , ..., xn ) is found, the process is re-start from the permutation (xn , xn−1 , ..., x1 ). Because, when the sum of the elements above the main diagonal is maximized, the sum of the elements below the diagonal is minimized. For our computational experiment we employ like a set of instances the 49 instances in LOLIB [13]. These instances correspond to real input-output matrices which optimal sector ordering are known. We found the best results when the parameter kmax is equal to 10. The next table shows for each VNS variant and for the TS-LOP, the average objective function value, the average percent deviation from optimality, the number the optimal solutions, and the average CPU time (seconds on a Pentium 166 MHz).
Obj. Function Deviation Num. of Opt. CPU seconds
VNS-LOP-Rv 22,041,259.0 0.00 % 38 1.11
VNS-LOP 22,041,260.8 0.00 % 44 0.87
TS-LOP 22,041,261.5 0.00 % 47 0.93
The table reveals that for the LOLIB set of problems our procedures reach the same quality solution that TS-LOP, in 9% less time that the TS-LOP.
6
Conclusions
Experiments in the context of Linear Ordering Problem demonstrate that VNS provides an interesting trade-off between solution quality and computation times. The performance of the procedure has been assessed using 49 instances of different types and sizes. The proposed procedure was compared with the recently TS-LOP due to Laguna et al (1999). The comparisons show that the procedures are quite similar.
References [1] S. Chanas and P. Kobylanski. A New Heuristic Algorithm Solving the Linear Ordering Problem. Computational Optimization and Applications, vol. 6,pp. 191-205. (1996). [2] F. Glover. Tabu Search-Part I. ORSA Journal on Computing, 1, pp. 190-206. (1989). [3] F. Glover. Tabu Search-Part II. ORSA Journal on Computing, 2, pp. 4-32. (1990). [4] F. Glover and M. Laguna. Tabu Search In C. Reeves, editor, Modern Heuristic techniques for combinatorial problems (chapter 3), Oxford: Blackwell. (1993). [5] F. Glover and M. Laguna. Tabu Search. Kluwer Academic Plublishers, Boston. (1997). [6] M. Grotschel, M. Junger and G. Reinelt. A Cutting Plane Algorithm for the Linear Ordering Problem. Operation Reseach, vol.32, no 6, pp. 1195-1220. (1984). Porto, Portugal, July 16-20, 2001
MIC’2001 - 4th Metaheuristics International Conference
185
[7] P. Hansen and N. Mladenovic. An Introduction to Variable Neighborhood Search. In S. Voss et al., editors, Proceeding of the 2nd International Conference on Metaheurists-MIC97, Kluwer, Dordrecht. (1998). [8] S. Kirkpatrick, C.D. Gelatt Jr. y M.P. Vecchi. Optimization by Simulated Annealing. Science, 220, 671-680. (1983). [9] M. Laguna, R. Mart´ın and V. Campos. Intensification and Diversification with Elite Tabu Search Solutions for the Linear Ordering Problem. Computer and Operation Research, vol 26, pp. 12171230. (1999). [10] N. Mladenovic. Variable neighborhood algorithm -a new meta-heuristic for combinatorial optimization. Presented at Optimization days 1995, pp22, Montreal, Canada. [11] N. Mladenovic and P. Hansen. Variable neighborhood search. Computers and Operations Research. Vol. 24 pp. 1097-1100, (1997). [12] P. Hansen and N. Mladenovic. An Introduction to Variable Neighborhood Search in S. Voss et al., editors, Metaheuristics, Advances and Trends in Local Search Paradigms for Optimization, pp. 433–458, Kluwer, Dordrecht, (1999). [13] LOLIB (1997) http://www.iwr.uni-heildelberg.de/iwr/comopt/soft/LOLIB/LOLIB.html [14] P. Hansen and N. Mladenovic. The Linear Ordering Problem: Algorithms and Applications. In H. H. Hofmann and R. Wille, editors, Research and Exposition in Mathematics, Vol. 8. (1985).
Porto, Portugal, July 16-20, 2001