UFDC Home  myUFDC Home  Help 



Full Text  
NEW ALGORITHM FOR THE TRIANGULATION OF INPITTOUTPITT TABLES AND THE LINEAR ORDERING PROBLEM By BRUJNO H. CHIARINI A THESIS PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FITLFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE UNIVERSITY OF FLORIDA 2004 ACKNOWLEDGMENTS I would like to thank all the people who phali d a role in my career at the University of Florida (Elif Akgahl, Donald Hearn, and Edwin Romeijn, among others). I specially thank my committee members (Stanislay Uryasey and Panos Pardalos) for their time and candid review of my thesis. There is somebody who will forever have a special place in my heart: Panos M. Pardalos. I thank him for all his support and advice throughout my career. I will miss him, but I am leaving with the hope of having other opportunities to work together in the future. The last mention is reserved for some very special people, without whom this would have been an impossible journey. They have endured ups and downs, and grown with me to form a stronger nucleus. They are the source from which I pull strength and wisdom, and the recipients of my work. This work is dedicated to them. I thank Diane and Gianluca for their eternal love, patience, and support. TABLE OF CONTENTS pagfe ACKNOWLEDGMENTS .........i LIST OF TABLES ......... ... .. iv LIST OF FIGURES ......... .. .. v ABSTRACT ......... .... .. v 1 INTRODUCTION . ...... .... 1 2 LINEAR ORDERING PROBLEM ...... .. 5 2.1 Applications ......... .. .. 6 2.2 Problem Formulations . ...... .. 7 2.3 Previous Work ......... .. .. 9 2.3.1 Exact Methods . ...... .. 9 2.3.2 Heuristic Methods . ..... .. 9 :3 A GRASP WITH PATHRELINK(ING ALGORITHM .. .. .. 11 :3.1 Introduction to GR ASP and PathRelinking ... .. .. 11 :3.2 Proposed Algforithm ........ ... .. 1:3 :3.2.1 Construction Phase . ..... .. 15 :3.2.2 Local Search ........ .. 16 :3.2.3 Path Relinkingf ...... .. .. 16 4 COMPUTATIONAL RESULTS . ..... .. 18 5 CONCLUDING REMARK(S ...... .. .. 24 REFERENCES ......._._.. ....... ... 26 BIOGRAPHICAL SK(ETCH ....._._. .. .. 28 LIST OF TABLES Table pagfe 41 Results for the LOLIB Instances after 200 and 5000 iterations. .. 20 42 Results for the Mitchell Instances after 200 and 5000 iterations.. .. 21 43 Summary of results obtained for the LOLIB and Mitchell test sets after 200 and 5000 iterations. ...... .... 21 LIST OF FIGURES Figure page 31 Generic GRASP pseudocode ...... .. 12 32 Visualization of a pathrelinking procedure ... .. .. .. 13 33 GRASP pseudocode .. ... .. 14 34 GRASP construction phase pseudocode ... ... .. 15 35 GRASP pathrelinkingf pseudocode ... .. .. .. 17 41 The LOLIB Instances: gap from optimal solution as a percentage is shown as a function of the number of iterations. .. .. .. 22 42 The LOLIB Instances: gap from optimal solution as a percentage is shown as a function of the time elapsed (seconds). .. .. .. 22 43 Mitchell Instances: gap from optimal solution as a percentage is shown as a function of the number of iterations. .. .. .. 23 44 Mitchell Instances: gap from optimal solution as a percentage is shown as a function of the time elapsed (seconds). .. .. .. 23 Abstract of Thesis Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Master of Science NEW ALGORITHM FOR THE TRIANGULATION OF INPITTOUTPITT TABLES AND THE LINEAR ORDERING PROBLEM By Bruno H. Chiarini Al li 2004 C'I ny~: Panos 31. Pardalos Major Department: Industrial and Systems Engineering Developed by Leontief in the 1930s, inputoutput models have become an indispensable tool for economists and policymakers. They provide a framework on which researchers can systematically analyze interrelations among sectors of an economy. In an inputoutput model, a table is constructed where each entry represents the flow of goods between each pair of sectors. Special features of the structure of this matrix are revealed by a technique called ',.:.<*.l; I.J.;i..n. Triangulation is shown to be equivalent to the linear ordering problem (LOP), which is an HiPhard combinatorial optimization problem. Because of the complexity of the triangulation procedure, it is essential in practice to search for quick approximate (heuristic) algorithms for the linear ordering problem. In addition to the triangulation of inputoutput tables, the LOP has a wide range of applications in practice, including singleserver scheduling and ranking of objects by pairwise comparisons. However, a higher emphasis is placed on the triangulation of inputoutput tables, the original motivation for this work. Our study developed a new heuristic procedure to find highquality solutions for the LOP. The proposed algorithm is based on a Greedy Randomized Adaptive Search Procedure (GR ASP), which is one of the most effective heuristics for solving combinatorial and global optimization problems to date. We propose an improved solution technique by using a new local search scheme and integrating a path relinkingf procedure for intensification. We tested our implementation on a set of 49 realworld instances of inputoutput tables in LOLIB. In addition, we tested a set of 30 large random instances generated by Mitchell. Most of the LOLIB instances were solved to optimality within 0.87 seconds on average. The average gap for the Mitchell instances was 0.01'7:' with an average running time of 21.98 seconds. Results prove the efficiency and highquality of the algorithm, and its potential to be applied to large problems. CHAPTER 1 INTRODUCTION The impact of changes of an economic variable can only be an~ II,. I1 by understanding the complex series of transactions taking place among the sectors of an economy. First introduced by Leontief in the early 1930s, inputoutput models have become an indispensable tool for economists and policymakers in their analysis, providing a systematic description of such interrelations among the sectors [1]. An inputoutput model begins by dividing the economy of a country (or region) into a specified number of sectors. Then a table is constructed, where the entries are the total transactions between every pair of sectors. The total output (input) of a sector can be obtained by summing the entries on the corresponding row (column). The resulting table thus summarizes the interdependence among the economic sectors. Structural properties of the inputoutput tables may not be apparent. A particular choice in the order of the sectors used in constructing the table might conceal an otherwise evident structure. These features are revealed by a process called te.:r,:l,, I.J.;i.. n, whose objective is to find a i 7 I /I of the sectors such that those who are predominantly producers will appear first, while those who are mainly consumers will appear last. The economic significance is that it shows how the effects of changes in final demand propagate through the sectors. Note, however, that in using a hierarchic ordering, there is an underlying assumption that no flow exists from lower to upper sectors. In fact, every economy exhibits a certain J.~iil, h;in the flow of goods e.g., the metallurgy industry supplies the vehicle industry with raw metal products, while the metallurgy sector needs vehicles as part of the cost of doing business. Obviously, the flow between any two sectors is hardly symmetric. The degree to which an economic structure Igees" with a hierarchy of the sectors is called 'ii,.w9i;, In a perfectly linear economy, the flow of goods "cascades" from the upper sectors to the lower sectors of the hierarchic ordering. If we arrange the rows and columns of the inputoutput matrix according to the hierarchy, such a situation would be reflected by a matrix that has an upper triangular structure (that is, all entries below the diagonal would be zero). On the other hand, if there is flow of goods back to the upper sectors, then there would be positive values on the entries below the diagonal. This leads to the definition of a quantitative measure of linearity. Let a denote the number of sectors and E = {es; } be the nsquare matrix representing the inputoutput table. Assume that the rows and columns have been arranged according to the hierarchy. Then, the linearity of an economy is given by That is, linearity is the ratio of the sum of the elements above the diagonal to the sum of all elements (except the diagonal). It follows that A = 1 for a perfectly linear economy. Researchers have observed that large and highly developed economies tend to have a low degree of linearityi.e., there is a high circulation in the flow of goods among sectorswhereas underdeveloped economies tend to exhibit a clearer hierarchy. Typical linearity values are 711I' for a highly developed economy, and 911' for an underdeveloped economy [1]. The introduction of inputoutput tables and other quantitative economic models originated a profusion of research in many areas. For instance, Dantzig's early work in the Air Force (before his development of the simplex algorithm for linear programming) consisted of investigating methods to efficiently solve large systems of linear equations, motivated by the applications to inputoutput tables [1, 2]. However, the triangulation problem described next has not been given much attention. Triangulation. We have assumed so far the knowledge of a hierarchy of sectors. Tr.17ttall;lrl..> n of an inputoutput table is the process of finding such hierarchy among all possible orderings. It is clear from the discussion above that such ordering most closely resembles an upper triangular matrix, and thus has the maximum value of A. Note that every ordering is a permutation of the sectors, and it is applied to both the rows and columns of the inputoutput matrix. Additionally, the denominator of Equation 1.1 is constant for all permutations. Therefore, we can state the te.:~,:l,,~r.: ad./. problem as that of finding a permutation of the rows and columns, such that the sum of the elements above the diagonal is maximum. Clearly, this is equivalent to a combinatorial optimization problem, known as the linear ordering problem (LOP). Finding such permutation is not an easy task. In fact, the linear ordering problem is an AP~Phard problem, and as such we can only aspire to obtain approximate solutions. Furthermore, the extent to which inputoutput methods are useful depends on the efficiency of the computations. Limited by computational power, practitioners often must recur to .I__oegfation, with the consequent loss of information and accuracy, to find optimal solutions within an acceptable time. Therefore, it is essential in practice to search for quick approximate (heuristic) algorithms . In this thesis we propose a new algorithm based on a greedy randomized adaptive search procedure (GRASP) to efficiently solve the LOP. The algorithm is integrated with a pathrelinkingf procedure and a new local search scheme. The remainder of this work is organized as follows. In C'!s Ilter 2 we introduce the LOP, give other applications, and discuss some previous work. In C'!s Ilter 3 we give a detailed implementation of our algorithm, preceded by an introduction describing the GRASP and pathrelinking framework. The computational experimentation is shown in C'! Ilpter 4. The thesis concludes with C'!s Ilter 5, where some practical issues are discussed. CHAPTER 2 LINEAR ORDERING PROBLEM The LOP is an HiPhard combinatorial optimization problem with a wide range of applications in economics, archaeology, and scheduling. It has, however, drawn little attention compared to other closely related problems such as the quadratic assignment problem and the travelling salesman problem. The LOP can be stated as follows. Consider a set NV of a objects and a permutation xr : NV N Each permutation xr = (x (1), x (2), (u)) corresponds onetoone to a linear ordering of the objects. Let eij, i, j = 1, 2,. ., n, be the cost of having i before j in the ordering, and E be the nsquare matrix of costs. Then the linear ordering problem is to find a permutation xr that maximizes the total cost n1 n i=1 j=i+1 Clearly, Equation 2.1 is the sum of the elements above the diagonal of a matrix A, whose elements aij are those resulting from a permutation xr of the rows and columns of matrix Ei.e., A = XEXT, where X is the permutation matrix associated with the permutation xr [3]. In the context of its application in economics, we can restate Equation 1.1 as A = max {Z(x) } (2.2) K ren where II is the set of all permutations, and K is a positive constant representing the sum of all the entries in the matrix. The LOP can also be interpreted as a problem in graphs. Let G(NV, A) be a complete directed graph with node set NV and arc set A = {(i, j) : i, 1 e A i / j}. Let eij be the weight of arc (i, j). A spanning .l ill 1 tournament in G(~. indce a unique linear ordering of the node set NV [4]. A tournament is defined as a directed graph in which each pair of nodes is connected by exactly one arc, which is clearly necessary since either i is before j or j is before i. The complexity of the maximum LOP can be easily proven to be HiPhard by noticing that it is equivalent to the minimum weighted feedback arc set problem on G, which is known to be HiPhard [5]. The LOP has an interesting symmetry property. If a permutation xr = ("(1),wr(2), ..., x(u)) is an optimal solution to the maximization version, then the reverse permutation xr = (xr(u),wr(n 1),...,xr(1)) is an optimal solution to the minimization version. In fact, the LOP accepts a trivial ~approximation algorithm [4]. Let xr be an arbitrary permutation and Wr its reverse. It is easy to see that Z(xr) + Z(Wr) is a constant. Ch.. ..  & such that Z(ii) = max{Z(r), Z(Wr)}, then we get Z(r*) Z(i) 1 Z(xr*) 2 where xr* is an optimal permutation and Z(xr*) > 0. No other approximation algorithm exists [4]. It follows that any permutation is optimal in the unweighted version of the LOP. 2.1 Applications Next, we discuss a few applications of the LOP besides that in economics, which are of particular relevance to the present volume. Reinelt [3] gives an extensive survey. Consider the problem of having a group of people rank n objects. Each individual in the group is asked to express a preference with respect to every possible pair. If we let eij be the number of people who preferred i to j, the solution to the corresponding LOP is the ranking that most likely reflects the preferences of the group. A similar application can be found in the context of sports. For example, consider a tournament of a teams in which every team ptil against every other team. Let eij be the score of the match between i and j if i wins, and 0 otherwise. The ranking obtained by the LOP is considered to be the one that most closely reflects the "true" performance of the teams. Still, it has not gained support for its implementation, probably because the outcome of a particular match is not closely related to the result in the ranking. In archaeology, the LOP is used to determine the inn~I pro' .I I!. chronological ordering of a set of artifacts recovered from different sites. Samples belonging to various time periods are given a value based on their distance to the surface. The objective is to .I_ egate the data and determine an ordering of the artifacts. Finally, it is easy to see that the LOP can be used to determine the optimal sequence of jobs in a single server, where the cost of each job depends upon its position with respect to the entire schedule. 2.2 Problem Formulations As with most combinatorial optimization problems, the linear ordering problem has many alternative formulations. The LOP can be expressed as an integer programming problem as follows. Let G(NV, A) be the complete directed graph associated with the LOP as shown in the previous section. Define 1i if (i, j) E A' otherwise where A' CA is the arc set of' the spanning ... i: lic toraen nG Then the problem of findings the maximum of Equation 2.1 becomes max ) eqxey, (2.3) (i, j) EA s.t. xij + xji = 1 ij Ni< (2.4) xij + Zjk k xi < 2 i,,k Ni ,i kj k (2.5) Xij E {0, 1}. The constraints (Equations 2.4) define the tournament polytope. It can be proven that the 3dicycle inequalities (Equations 2.5) are sufficient to prevent anly cycles [3]. Together the~y defineI the~ linear~ ordering polytope. There~ are~ 2 ( variables,,,, an ") + ')ln ~ontrai~nts in? this formula~ltion. The tournament constraints (Equations 2.4) motivate the use of a single variable to represent the two possible v .s in which every pair of nodes can be connected. Let us substitute xji = 1 xij, for every i, je N ,j > i, then an equivalent integer programming formulation is s.t. xs j k<1Vj ,i xij + Zjk xik > 0 i ,keN (2.8) Xij E {0, 1} whree = e;  eji. Tis formIulaion~V hasI (") varIIiable andI 2(")/ contrintsIII. Finally, the linear ordering problem can be formulated as a quadratic assignment problem (QAP). The distance matrix of the QAP is the matrix of weights E and the flow matrix F = { fgy is constructed as follows, fij = 1 if i < j and fij = 0, otherwise [6]. 2.3 Previous Work 2.3.1 Exact Methods A common approach in the LOP literature is the use of cutting plane algorithms [:3, 7]. The goal is to obtain an approximate description of the convex hull of the solution set by introducing valid inequalities that are violated by current fractional solutions, which are added to the set of inequalities of the current linear programming problem. Reinelt [:3] introduced facets induced by subgraphs. Bolotashvili et al. [8] extended Reinelt's results introducing a generalized method to generate new facets. A complete characterization has only been obtained for very small problems (n = 7) [9]. In fact, we know that unless P = HiP there exist an exponential number of such facets. However, research in this area has resulted in valid inequalities that improve the performance of branchandcut algorithms [:3]. The first authors to consider an interior point algorithm for the LOP were Mitchell and Borchers [10, 11]. The solution given by a interior point algorithm is used as a starting point for a simplex cutting plane algorithm [11]. 2.3.2 Heuristic Methods Most hard problems in combinatorial optimization require the use of heuristics to obtain approximate solutions due to their inherent intractability. In this case, we are interested in findings solutions that are close "enowl,h to the optimal value at a low computational cost. Heuristics, as opposed to approximation algorithms, do not give a guaranteed quality of the obtained solutions. Nevertheless, the flexibility we have in developing heuristics allows us to exploit the special structure of the problem, tailoring the existing methods, and resulting in very well performing algorithms. The quality of a heuristic, however, must he validated by extensive testing. Heuristic methods such as GRASP. Labu .search. .simulated r,,:tr.:...lle genetic .search. and evolution strategies have shown to be able to efficiently find high quality solutions to many combinatorial and global optimization problems by thoroughly exploring the solutions space. A recent survey on multistart heuristic algorithms for global optimization is given by Marti [12]. One of the earliest heuristics for the LOP was proposed by ('I!. in~ a y and Watanabe [13] in the context of the triangulation of inputoutput tables. Given a sector i, the ratio of total input to the total output Ui = Ck(2.9) is used to arrange the sectors in the order of decreasing ui. The use of Equation 2.9 gives a fairly good ordering considering its simplicity. Based on the symmetry property mentioned in C'!s Ilter 2, ('1! I1. I4 and K~obylariski [14] developed a heuristic that performs a sequence of optimal insertions and reversals. Laguna et al. [15] developed an algorithm based on tabu search. They analyzed several intensification and diversification techniques, and compared their algorithm with that of ('I! I1. I; and K~obylariski. Campos et al. [16] used a scatter search approach. A correction term based on the frequency by which an object i appears in a particular position in the ordering is added to Equation 2.9 to reflect previous solutions. GRASP, which is an iterative restart approach, has proven to be one of the most effective heuristics to date. In this thesis, we developed a GRASPbased algorithm for the LOP, offering a significant improvement on the computational time and quality of solution compared to previous heuristics. In the next section, we discuss the basic principles for implementing a new local search scheme and PathRelinkingf in GRASP framework. CHAPTER 3 A GRASP WITH PATHRELINK(ING ALGORITHM\ 3.1 Introduction to GRASP and PathRelinking Since its inception by Feo and Resende in the late 1980s, GR ASP has been successfully used in many applications. In 1995, the authors formally introduced GR ASP as a framework for the development of new heuristics [17]. Festa et al. [18] have compiled an extensive annotated bibliography of GR ASP applications. Each iteration of GR ASP consists of two phases: a construction pherse in which we seek to obtain a feasible solution, and a local .search phase that attempts to improve the solution. Figure :31 shows the pseudocode of a generic GR ASP algorithm. During the construction phase, we iteratively build a solution by randomly selecting objects from a restricted candidate list (RCL). At each step, we form the RCL choosing those objects with the highest measure of attractiveness, we select a random object from the RCL, and adapt the greedy function to reflect the addition to the solution. Figure :34 shows the construction phase for our implementation. The size of the list is typically restricted in one of two Cwi~; by quality, when we choose the elements based on a threshold on the greedy function, or by cardinality. In the literature, they are often referred to as a~ and /3, respectively. The size of the RCL controls the degree of greediness and randomness of the construction phase. A null R CLi.e., of size 1results in a purely greedy solution whereas a RCL size equal to the size of the problem yields a purely random solution. After a solution is constructed, we attempt to improve it by performing a local search in an appropriately defined neighborhood. Given a solution .r, we Procedure GRASP(RCLSize, StoppingCondition) 1 BestSolutionFound = 0:; 2 while StoppingCondition not satisfied, do :3 x = ConstructGreedyRandomizedSolution(RCLSize) 4 LocalSearch(x); 5 UpdateSolution (Best SolutionFound,x) ; 6 en d; 7 return BestSolutionFound; en d; Figure :31: Generic GR ASP pseudocode explore the neighborhood NV(.) aspiring to find a local (global) optimal solution. Although larger neighborhoods increase the probability of finding the global optimum, local search algorithms are often computationally expensive and thus careful consideration must he given to the election of the neighborhood. It is in this part of GR ASP where the particular properties of the problem in question can he exploited to develop schemes that can provide an intensification of the search, while not compromising its running time. Finally, the best solution is updated if necessary with the newly found solution. The procedure is repeated until a stopping condition is metfor example, number of iterations, running time, etc. Pathrelinking was introduced by Glover and Laguna [19] as a method to integrate intensification and diversification to tabu search. It generates new solutions by exploring routes that connect highquality solutions by starting from one of these solutions, socalled initiating .solution. and generating a path in the neighborhood space that leads toward the other solutions, a socalled guiding .solution (Figure :32). This is completed by selecting moves that introduce attributes contained in the guiding solutions. Pathrelinking is a directlyfocused instance of a strategy that seeks to fit in features of high quality solutions. On the other hand, instead of using an incentive that supports the inclusion of such attributes, the path relinkingf approach subordinates all other considerations to the goal of choosing moves that initiate the o Solution Figure 32: Visualization of a pathrelinking procedure. Given the initial solution x and the guiding solution g, we iteratively explore the trajectory linking these solutions, checking for any improvements on the way. attributes of the guiding solutions, in order to generate a good attribute composition in the current solution. The composition at each step is determined by choosing the best move, using customary choice criteria, from the restricted set of moves that incorporate a maximum number of the attributes of guiding solutions. Laguna and Marti [20] were the first to combine GRASP with a pathrelinking procedure, essentially adding memory to a procedure that would otherwise be a multistart algorithm. 3.2 Proposed Algorithm In this section we propose a new heuristic that integrates GRASP with path relinking for the linear ordering problem. Figure 33 shows the pseudocode for the implementation. The measure of attractiveness for each object i consists of the difference between its row and column sums, given by ds= (s y) i 12 ..n (3.1) j=1 Procedure GRASP(P, p, Maxlteration) 01 BestSolutionFound = 0); 02 EliteList = 0); 03 nNonImprovingIt = 0; 04 for k = 1,2,... ,Maxlteration 05 x = ConstructGreedyRandomizedSolution(P); 06 LocalSearch(x); 07 if x is better than worse solution in EliteList 08 DoPathRelinking(EliteList ,x); 09 nNonImprovingfIt = 0; 10 else if nNonImprovingIt > y 11 ExpandEliteList(El; 1i. L1 ,); 12 DoPathRelinking(EliteList ,x); 13 nNonImprovingIt = 0; 14 else nNonImprovingIt = nNonImprovingIt + 1; 13 Up date Solution(Best SolutionFound,x) ; 14 end; 15 return BestSolutionFound; en d; Figure 33: GRASP pseudocode In the context of the inputoutput tables, Equation 3.1 represents the net flow of a sector. In earlier experimentation with a GRASP algorithm, we compared the use of Equation 3.1 with the ratios as defined in Equation 2.9. Although we have not observed significant differences in the quality of the solutions, adapting the greedy function when ratios are used is computationally more expensive. The use of Equation 2.9 demands O(n2) time tO update the greedy function whereas Equation 3.1 requires O(u) time. Linear ordering problems usually have many alternative solutionsoptimal and suboptimalwith the same objective function value. Therefore, it may occur at some point in the algorithm that the elite list becomes mostly populated by alternative solutions. Furthermore, it is increasingly difficult to enter a path relinkingf as the best solution found approaches the optimal. We attempt to avoid such situations by expanding the size of the elite list and forcing a pathrelinking procedure after a certain number of nonimproving iterations. If an improvement is procedure ConstructGreedyRandomizedSolution(P) 1 Solution = 0, RCL = 0; 2 while Solution < NV 3 MakeRCL(RCL,P); 4 s = Select Element At Random( RC L); 5 Insert(Solution,s); 6 AdaptGreedyFunction(s) ; 7 en d; en d; Figure 34: GRASP construction phase pseudocode still not obtained and the elite list size reaches its limit, the elite list is deleted and a new one is constructed. Next we discuss in detail the different components of the algorithm. 3.2.1 Construction Phase We initiate the procedure by creating the restricted candidate list (RCL) (Figure 34). The parameter P of GRASP determines the cardinality limit on the RCLi.e., the number of elements in RCL. Larger values of P achieve greater diversity but at the cost of constructing many lowerquality solutions. The best value of is usually determined by extensive testing. After selecting an element at random from the RCL, we proceed to insert it in the partial solution. A conventional GRASP implementation would simply append the recently selected object a to the end of the partial solution. Instead, we added a procedure named lI! : t" (line 5 on Figure 34) that seeks to insert the object in an optimal position. More precisely, let Tk, 1 t, 2, /k), k = 1,2,..., n, denote the current (partial) solution obtained after k steps. The Insert operation intercalates the most recently selected object s in Tk, in the position r that maximizes r1 breaking ties arbitrarily. First introduced by C'I I1. I4 and K~obylariski [14] as part of their heuristic, it can be considered as a very efficient local search procedure in a relatively small neighborhood. In fact, it can be implemented in O(k). A step of the construction phase finalizes with the task of adapting the greedy function. The row and column corresponding to the object s are removed from the matrix, and the attractiveness of the objects (Equation 3.1) is updated. We set d, = M~, where M~ is a large positive value, and resort the top n k objects that have yet to be selected. The procedure continues until a solution is constructed. The overall complexity of the construction phase is O(n2) 3.2.2 Local Search We used a 2exchange neighborhood for our local search. Given a solution xr, its 2exchange neighborhood NV(x) consists of all the solutions obtained by permuting the position of two objects in the orderingi.e., if xr = (3, 1, 2), then N 1) {1,/3, 2), (2 13)(3, 2,1 ~ ,1)}. Clearly frapolem of size, Nx) =i,\ . Consider a solution xr and two objects xr(i) and xr(j) located in positions i and j respectively. For simplicity assume that i < j. The change in the objective function for an exchange of objects xr(i) and xr(j) is j1 k=i+1 where egj = eij eji. At completion, the local search would have exchanged the pair of objects that maximizes Equation 3.3. The procedure of exploring the neighborhood and performing the exchange can be implemented in O(n2) 3.2.3 Path Relinking The solution provided by the local search procedure is used as the initial solution for the pathrelinking. We randomly select a solution from the elite list as the guiding solution, determining the trajectory to be followed by the procedure. procedure DoPathRelinking(EliteList..r) 1 TenipSolution = 0:; 2 g = Select SolutionAt Randon1(EliteList); :3 while .r / g do 4 TenipSolution = MakeNextMove(.r, g); 5 LocalSearch (TenipSolution); 6 if TenipSolution is better than .r or y then 7 EliteList = EliteList U TenipSolution; 8 en d; 9 Adj ustEliteList (Elite LM 1 ) ; en d; Figure :35: GR ASP pathrelinkingf pseudocode Figure :35 shows the pseudocode for the path relinking procedure. The parameter p determines the size of the elite list as a fraction of the problem size. With the trajectory defined by the two end solutions, we proceed to perform a series of moves that will transform the initial solution into the guiding solution. In each iteration the algorithm performs a single move, thus creating a sequence of intermediate solutions (Figure :32). To add intensification to the process, we search the 2exchange neighborhood of the intermediate solutions. The solutions obtained in this manner are added to the elite list if they are better than either the initial or the guiding solutions. It should be noted that the search on the 2exchange neighborhood may yield a previously examined solution in the path. However, this is not of concern in our intplenientation since we do not use the local nxininia during the procedure. The moving process terminates when the algorithm reaches the guiding solution. At this point, the elite list size could have grown considerably due to the added solutions. The procedure "AdjustEliteList" will discard the worst solutions, keeping the best pn. The list is kept sorted at all times and therefore no sorting is needed. The complexity of the pathrelinking is O(n ). CHAPTER 4 COMPUTATIONAL RESULTS Here we discuss the computational results we obtained when applying our algorithm to two sets of problems: LOLIB. These are realworld instances of linear ordering problems that are publicly available on the internet [21]. They consist of 49 inputoutput tables for some European countries, with sizes up to 60 objects. Mitchell. This is a set of 30 randomlygenerated instances by Mitchell [10], with sizes ranging from 100 to 250 objects. Three different percentages of zero entries were used: 0, 10, and 211' denoted by the last digit on the problem name. The generator as well as the instances are available at the author's web site [22]. The optimal values for all instances are known. The generated instances are similar to those from LOLIB except for the numerical range of the entries considerably larger for the latter. Despite attempts to replicate the characteristics of realworld instances such as those found in LOLIB, Mitchell's test set is significantly harder to solve. All previous work on the linear ordering problem that included computational results predates the Mitchell instances, hence featuring only the LOLIB problems. The algorithm was written in C++ and executed on a Pentium 4, 2.7 GHz, with 512 MB of memory. Empirically, we determined /3 = 0.25 and p = 0.35 as the best values for the parameters (e.g., for a problem of size n, the size of the RCL and the elite list are at most 0.25n and 0.:+, respectively). The algorithm was executed five times for each problem instance, with a limit of 5000 GR ASP iterations on its running time. We report the running time, number of iterations, and the gap between the best solution and the optimal solution. All times are reported in seconds and gaps as percentages. Tables 41 and 42 show the elapsed running time and gap values after 200 and 5000 iterations. The results reported are the averages of 5 runs for each problem instance. A summary of the results is presented in Table 43. Figures 41 and 42 show the evolution of the gap as a function of the number of iterations and the running time for the LOLIB instances, respectively. Corresponding results for the Mitchell instances are shown in Figures 43 and 44. Note that the units on the ordinates are percentage points. The algorithm found optimal solutions for 47 of 49 LOLIB instances, 17 of which were consistently solved to optimality. The average gap for the remaining LOLIB instances was 0.01";' The average running time for these realworld instances was 0.87 seconds. Although none of the Mitchell instances were solved to optimality, the average gap after 5000 iterations was 0.017 :' with an average running time of 21.98 seconds. T~Iabl: 41: Results fo~r thle LOIIB TIlnstaces: alfl~ter c200 d ..:::1 iteraionlCI s. Ins;a~nce Size 20 train ::: : Iterations G:alp( ) TIime (s) C:a~pi )Trn(s be75eec 50 0.0199 0.0282 0.0042 0.4062 bue75np 50 0.0057 0.0188 0.0018! 1.0406 be750oi 50) 0.04359 0.0218 0.0125, 0.706i2 be75tot 50) 0).0056i 01.0218 0.00012 0).j515 stabul 60 0.0124 0.0406 0.0024 1.3030) : 60 0.0059 0.0468 1 : 'L 21624 stabu3il 60i 0.0329 i: ::  0.0090)i 1.9280) 1 1xx 44 0.00 12 0.15 .0012 (,59d11Ixx 44 0.0082 0.0156i 0.000)0 0.5720) 44 1:: ** 0.0124 0.0000 0.6562 t59ill~xx 414 0.0000 0.0156 0.0000 0.76i86 t59n11xx 414 0.0515 0.0186i 0.00)79 0.6592 t65b11lxx 44 0.23 .02 0.0133 03.76324 t65d11lxx 441 0.000:3 0.160.0000 0).5876 44 0.0090 0.0156 0.0006 0.5842 44 0.0137 0.0156 0.000)7 0.5938 44 0.0000 0.16 0.0000 0.8032 44 0.0124 0.0156 0.000)0 0.4624 11xx 44 0.0014 0.0156 0.0000 0.r5594 t69r 1xx 44 0.0122 0).0156 i : ::: : 0.6844 t70b1~,1 xx 44 0.0080 0.01234 0.0080 0.72380 t70d11lxn 442 0).0288 01.0750) 0.0073' 2?.7406~l t70dii11xx 441 0).0232 05 0.012,0 0).4938 ti::: : 44 0.0030 0.0126 0.0012 0.4282 t70~illxx 44 0.0022 0.0126i 0.00019 0.4970) t70k11lxx 441 0).100001 0.0156 0.0000)( 0.7218 170)111xx 44 1* ***** 0.000)0 0.6124 t70n 11xx 44 1:: 0.0126 0.0019 0.3970 t70u.11xx 44 i::::: 0).0126 0.0000 0.7938 t70wl 1xx 44 0.00 12 0.160.0000 0.3874 44 0.0000 0.0 0.0000 0.6906 t74dii11xx 441 0).0125 0.0)188 0.0042% 0.5032 t75d11xxr 44 0.0028! 0.02>18 0.0020 0.7936 t73e11xx 44 0.00418 0.0126i 0.00010 0.4688 t75ilxx 44 0.07 .02 0.0000( 0).6i220 t75k11xx 441 0.0000 005 0.0000 0).7156 t75n11xxr 44 0.0'710 0.0156 0.0000 0.5062 t75ull1xx 44 0.0007 0).0156 : tiwi56n54, 56 0.01 70 0.0374 0.04 .8436 Liw5n5856 0.0127 0.0312 0.000)0 1.0124 tiwov6n62 56 0.0187 : 0.0007 1.0970 tiwb6n66 56 0.0179 0).0342 : ::: : I: : 8 ti  56i 0.006i3 0.0344 0.0006 2.0:312 tiw56in72 56i 0).0078 01.0376 .01 1  tiw5F6r54i 56 0).0157 001 0.002,0 0).7062 tiw56r58 56 0.0046: 0.0438 0.0020 1.>72,0 tiw56ir66 56i 0.0:333 0.0406 0.0061 0.8688 tiw56r67 563 0.0086 0.0312 0).10007 1 * tiw56ir72 56i 0.0006 0.0312 0.000)6 Ta~ble 42: Results fo~r the M~i i: i In~stances after : an~d 5000 iteration s. Instance 200 Itera~tions 5000 Iterations Cap( ) 'Time (s) **** i. 2.5374 0.0207 2.6032 0.0302 2.6376 0.0343 2.4906 0.0165 6.9312 0.0070 8.0562 0.0226 8.3282 0.0102 8.1970 0.0194 9.I000 0.0167 27  0.0191 9.00323 0.0122 : 0.019)1 1 6218 0.0056 33.1438 0.0289 9.5812 0.0080 2 0.0305 22.406i2 0.0151 21.4780 0.27 3.6i062 0.0084 20.4376 0.0219 21.5844 0.0262% 0.01 2 0.0244 35.9750 0.0156 47.1220 0.0102 43.5406 0.0132 52.2126 0.0118 49.1438 0.0146 48.9250 LO)L li i and Mitchell test sets after Gapt ) 0.0462 0.0416 0.0:389 0).0270 0).0137 0.0263 0.0230 0.0'224 0.0146 0.02312 0).0148 0).03X88 0.0181 0.04019 0).0196 0).0333 0.0244 0.0159 0.0297 0.0233 0.0189 0).0159 0.0184 0.0241 Thine (s) 0.2374 0.2L594 0.3094 0.2220 0.7126 0.9720 1.3230 1.2844 i:  1.1970 1.0874 2.6062 2.8906 3.65r32 '2.7312 '2.7720 2.3'780 5.4750 3.8188 8.3'750 5.4844 r100a2 rl300b2 cl100c2 r100d2 r100e2 rl50~a0 rl5Ob0 rI 1 rl1 ** rl50ct r S~l50d r lI == rl50e0 rl5i0el r200a0 r200al r200b0 ~ r200b1 r2L00c0 r200~e1 r20010 r200di 1 r2L00e0 r200el r250a0 r250b0 l r25l0c0 r250d0 Table 4 3: Sur~nmary of results obtained flor the 200 andi 5000 iterations. M~eas~re Average Dpv. Maximum Average Dev. M\1aximum r 5000 Iterations G~apj ) Timet (s) 0.0024 .8685 0.0035 0.5188 0.0133 2.7406 0.0173 21.9791 0.0081 15.6266 0.0343 52 9126 20 i: 0.0710 0.0254 0).0096 nations Timet (s) 0.023'5 0.01:31 0.0750 2.401;55 10.1312 U\LOLIB 0 .10 0.08 0.06 0.04 0.02 1000 2000 3000 4000 5000 Figure 41: The LOLIB Instances: gap from optimal solution as a percentage is shown as a function of the number of iterations. S. 10 0 .08 0 .06 0 .04 0 .02 1 2 3 4 5 Figure 42: The LOLIB Instances: gap from optimal solution as a percentage is shown as a function of the time elapsed (seconds). 0 .10 0.08 0.06 0.04 1000 2000 3000 4000 5000 Figure 43: Mitchell Instances: gap from optimal solution as a percentage is shown as a function of the number of iterations. S. 10 0.08 0.06 Figure 44: Mitchell Instances: gap from optimal solution as a percentage is shown as a function of the time elapsed (seconds). 0.04 0.02 CHAPTER 5 CONCLUDING REMARKS Our study implemented a new heuristic algorithm for the linear ordering problem, inspired by its application to the triangulation of inputoutput tables in economics. The algorithm is based on a greedy randomized adaptive search procedure (GRASP) with the addition of a pathrelinking phase to further intensify the search. The algorithm was tested on two sets of problems, exhibiting a remarkably robust performance as shown in Table 43. For all instances we obtained optimality gaps of less than 0.05' within 200 iterations and times ranging from 0.02 to 2.40 seconds on the average. We found optimal solutions for most of the LOLIB instances. No optimal solutions were obtained for the Mitchell instances, however, the average gap at termination for this set was 0.01'7:' The results confirm the benefit of embedding GRASP with a pathrelinkingf procedure. Researchers in economics often use simulations in which many triangulation problems need to be solved in limited time. The efficiency and highquality performance of our algorithm makes it a superior candidate for such application. Furthermore, since the algorithm is based upon the modelling of the triangulation problem as a linear ordering problem (LOP), it can be used for any application that accepts an LOP formulation such as those mentioned in Section 2.1. We believe that further research is required for analyzing the relation of the LOP with other known problems. In particular, could the LOP be thought of as a travelling salesman problem where, in addition to the distances between locations, we have priorities assigned each of these? Could we use the extensive research done in the TSP as a basis for the LOP? Answers to these and other related questions will be pursued in future research. REFERENCES I1 Wassily Leontief, InputOutput Economics, Oxford University Press, New York, USA, 1986. 121 George B. Dantzig, "Linear programming," Op~erations Research, vol. 50, no. 1, pp. 4247, January 2002. 13 Gerhard Reinelt, The linear ordering problem: rlly.>rithm~s and applications, Number 8 in Research and Exposition in Mathematics. Heldermann \: ~11 I. Berlin, Germany, 1985. 14] Michael Jiinger, Polyhedral C'ombinatoric~s and the Al to II.: S"Io.ll..1/9'r Problem, Number 7 in Research and Exposition in Mathematics. Heldermann \: 11 . Berlin, 1985. [3 Michael R. Garey and David S. Johnson, C'omputer~s and Intracterbility: A Guide to the Ti,*** *U of NPG'omp~leteness, W.H. Freeman and Co., New York, USA, 1979. ::jR.E. Burkard, E. Cela, P.M. Pardalos, and L.S. Pitsoulis, "The quadratic assignment problem," in Handbook of C'ombinatorial Op~timization, P.M. Pardalos and D.Z. Du, Eds., pp. 241338. K~luwer Academic Publishers, 1998. 17 Martin Groitschel, Michael Jiinger, and Gerhard Reinelt, "A cutting plane algorithm for the linear ordering problem," Op~erations Research, vol. 2, no. 6, pp. 11951220, 1984. 18] G. Bolotashvili, 31. K~ovalev, and E. Girlich, N. i. facets of the linear ordering polytope," SIAM~ Journal on Discrete M~athematics, vol. 12, no. 3, pp. 326336, 1999. L: Thomas ('!!itI&*! LowDimensional 0/1Polytopes and BranchandG'ut in Combinatorial Op~timization, Ph.D. dissertation, University of Heidelberg, Heidelberg, Germany, 1997. [10] John E. Mitchell, "Computational experience with an interior point cutting plane algorithm," Tech. Rep., Mathematical Sciences, Rensellaer Polytechnic Intitute, Troy, NY 121803590, USA, 1997. [11] John E. Mitchell and Brian Borchers, "Solving linear ordering problems with a combined interior point/simplex cutting plane algorithm," in High Performance Op~timization, H. Frenk et al., Ed., chapter 14, pp. 345366. K~luwer Academic Publishers, Dordrecht, The Netherlands, 2000. [12] Rafael Marti, jl!Illi:start methods," in Handbook of Ietakeuristics, Fred Glover and Gary A. K~ochenberger, Eds., International Series in Operations Research & Management Sciences, chapter 12, pp. 355368. K~luwer Academic Publishers, Dordrecht, The Netherlands, 2003. [132] Hollis B. C'I..! 31. and Tsunehiko Watanabe, 11.1 ~ ii !. 1..i. i comparisons of the structure of production," Econometrica, vol. 26, no. 4, pp. 487521, October 1958. [14] Stefan C'I I.. s and P1.. In!i1i.x K~obylariski, "A new heuristic algorithm solving the linear ordering problem," Comp~utational Op~timization and Applications, vol. 6, pp. 191205, 1996. [157] Manuel Laguna, Rafael Marti, and Vicente Campos, ls.!i..01 n diversification with elite tabu search solutions for the linear ordering problem," Computers 8I Op~erations Research, vol. 26, pp. 12171230, 1999. [16] Vicente Campos, Fred Glover, Manuel Laguna, and Rafael Marti, "An experimental evaluation of a scatter search for the linear ordering problem," Journal of Global Op~timization, vol. 21, no. 4, pp. 397414, December 2001. [17] Thomas A. Feo and Mauricio G.C. Resende, "Greedy randomized adaptive search procedures," Journal of Global Op~timization, vol. 2, pp. 127, 1995. [18] Paola Festa, Mauricio G.C. Resende, and Geraldo Veiga, "Annotated bibliography of GRASP," AT& T Research Labs, Jan. 2004, http: //www.research.att.com/~mgcr/grasp/annotatd [19)] Fred Glover and Manuel Laguna, Tabu Search, K~luwer Academic Publishers, Boston, USA, 1997. 1: Manuel Laguna and Rafael Marti, "GRASP and path relinking for 21 .v. r straight line crossing minimization," INFORM~S Journal on Companyl.::l vol. 11, no. 1, pp. 4452, 1998. [21] Gerhard Reinelt, "Linear ordering library (LOLIB)," University of Heidelberg, Dec. 2002, http: //www.iwr.uniheidelberg. de/groups/comopt/software/LOLIB/. [22] John E. Mitchell, "Generating linear ordering problems," Rensellaer Polytech nic Intitute, Dec. 2002, http://www.rpi .edu/~mitchj /generators/linord. BIOGRAPHICAL SKETCH Bruno H. Chiarini was born on December 21, 1974, in Buenos Aires, Argentina. In 1996 he was admitted to the Instituto Tecnologico de Buenos Aires (ITBA). He transferred to the University of Florida in January 2001, where he was awarded a Bachelor of Science degree in Industrial and Systems Engineering in August 2002. He then pursued graduate studies at the same institution, obtaining a Master of Science degree in Industrial and Systems Engineering in May 2004. 