[ieee xxv international conference of the chilean computer science society (sccc'05) -...

7

Click here to load reader

Upload: tr

Post on 22-Feb-2017

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [IEEE XXV International Conference of the Chilean Computer Science Society (SCCC'05) - Valdivia, Chile (07-11 Nov. 2005)] XXV International Conference of the Chilean Computer Science

Parallel strategies for a multi-criteria GRASP algorithm ∗

Dalessandro Soares Vianna1

Jose Elias Claudio Arroyo2

Pedro Sampaio Vieira3

Thiago Ribeiro de Azeredo4

Universidade Candido Mendes - UCAM-Campos,Nucleo de Pesquisa e Desenvolvimento em Informatica - NPDI,

Campos dos Goytazazes, RJ 28040-320, Brazil.1. [email protected], 2. [email protected],

3. [email protected], 4. [email protected]

Abstract

This paper proposes different strategies of paralleliz-ing a multi-criteria GRASP (Greedy Randomized AdaptiveSearch Problem) algorithm. The parallel GRASP algorithmis applied to the multi-criteria minimum spanning tree prob-lem, which is NP-hard. In this problem, a vector of costsis defined for each edge of the graph and the goal is to findall the efficient or Pareto optimal spanning trees (solutions).Each process finds a subset of efficient solutions. These sub-sets are joined using different strategies to obtain the finalset of efficient solutions.

The multi-criteria GRASP algorithm with the differentparallel strategies are tested on complete graphs with n =20, 30 and 50 nodes and r = 2 and 3 criteria. The compu-tational results show that the proposed parallel algorithmsreduce the execution time and the results obtained by thesequential version were improved.

Keywords: Parallel GRASP algorithm, multi-criteria com-binatorial optimization, minimum spanning tree.

1. Introduction

Many practical optimization problems, generally, in-volve the minimization (or maximization) of several con-flicting decision criteria. For example, in the topologicalnetwork design problem is desirable to find the best layoutof components optimizing performance criteria, such as fi-nancial cost, message delay, traffic, link reliability, and so

∗This work was funded by the Municipal Town Hall of Campos dosGoytacazes city. The computational experiments were done at the Labo-ratorio Nacional de Computacao Cientıfica – LNCC.

on. These criteria are conflicting and cannot be optimizedsimultaneously. Instead, a satisfactory trade-off has to befound. So a Decision Maker has to select the best com-promise solution, taking into account the preference of thecriteria.

The goal of multi-criteria combinatorial optimization(MCCO) is to optimize simultaneously r > 1 criteria or ob-jectives finding a satisfactory trade-off. MCCO problemshave a set of optimal solutions (instead of a single optimum)in the sense that no other solutions are superior to themwhen all criteria are taken into account. They are knownas Pareto optimal or efficient solutions.

Solving MCCO problems is quite different from single-objective case (r = 1), where an optimal solution issearched. The difficulty is not only due to the combina-torial complexity as in single-objective case, but also to theresearch of all elements of the efficient set, whose cardinal-ity grows with the number of objectives.

In the literature, some authors have proposed exact meth-ods for solving specific MCCO problems [4]. These meth-ods are generally valid to two criteria (r = 2) problems butcan not be adapted easily to a higher number of criteria.Also, the exact methods are inefficient to solve large-scaleNP-hard MCCO problems. As in the single-criterion case,the use of heuristic/metaheuristic techniques seems to bethe most promising approach to MCCO because of their ef-ficiency, generality and relative simplicity of implementa-tion. Hard problems require large search spaces resultingin high computacional costs. In this context, metaheuristicsmay require a large amont of time to find good feasible solu-tions, encouraging the use of parallel techniques [2, 16, 18].Although the main goal of a parallel metaheuristic is thereduction of the execution time necessary to find an accept-

Proceedings of the XXV International Conference of the Chilean Computer Science Society (SCCC’05) 0-7695-2491-5/05 $20.00 © 2005 IEEE

Page 2: [IEEE XXV International Conference of the Chilean Computer Science Society (SCCC'05) - Valdivia, Chile (07-11 Nov. 2005)] XXV International Conference of the Chilean Computer Science

able solution, sometimes it can also be used to improve theresults obtained by sequential versions.

In a recent overview of multi-criteria metaheuristics,Jones et al. [9] report the increase of papers published inthe nineties and also note that almost 80% of the papers arededicated to real problems, especially in the discipline ofengineering. This number reflects not only the increasingawareness of problems with multiple criteria, but also thatmetaheuristics are effective techniques to cope with suchproblems. Metaheuristics such as genetic algorithms [8],tabu search [6] and simulated annealing [10] were origi-nally conceived for single-criterion combinatorial optimiza-tion and the success achieved in their application to a verylarge number of problems has stimulated researchers to ex-tend them to MCCO problems. In [9] is commented that,there is no sign in the literature reviewed of the newer meta-heuristic techniques, such as GRASP, being applied in themulti-criteria case. More recently, the first papers using theGRASP metaheuristic for multi-criteria problems were pro-posed [1, 19].

In the multi-criteria minimum spanning tree (mc-MST)problem, a vector of costs is defined for each edge of thegraph and the problem is to find all Pareto optimal or effi-cient spanning trees (solutions). The literature on mc-MSTproblem is rather scarce. An exact method is proposedin [17]. In [3] and [7] are proposed approximate polyno-mial algorithms. The method proposed in [13] and [20] arebased on genetic algorithms.

In this paper, we propose three different ways of par-allelizing a multi-criteria GRASP algorithm. The parallelGRASP algorithm is applied to the mc-MST problem withtwo and three criteria.

The organization of the paper is described as following.In the next section, we present the formulation of the mc-MST problem. In section 3, we discuss with more detailsthe mc-GRASP algorithm. The parallel GRASP strategiesare presented in Section 4. We present computational re-sults in Section 5. Finally, Section 6 contains our conclud-ing remarks.

2. Multi-criteria minimum spanning tree prob-lem

Let G = (V , A) be a connected and undirected graph,where V = {v1, ..., vn} is a finite set of nodes and A = {e1,..., em} is a finite set of arcs or edges ek = (i, j), i ∈ V ,j ∈ V , i �= j. Each edge ek = (i, j) has associated a vectorcij = (c1

ij , ..., crij) of r positive real numbers (costs). A

spanning tree of graph G is a subgraph T = (V , AT ) withAT ⊆ A, such that T contains all nodes in V and connectsthem with exactly n - 1 edges, so that there are no cycles.

The mc-MST problem can be formulated as:

Minimize f(T ) = (f1(T ), ..., fr(T ))subject to

T ∈ Ω,

where fk(T ) = Σ∀(i,j)∈ATckij is the k-th objective function

and Ω is the set of all the spanning trees of graph G. Theimage of a solution T ∈ Ω is the point z = f(T ) in theobjective space f(Ω).

A point z dominates z’ if zj = fj(T ) ≤ zj’ = fj(T ’),∀j = 1, ..., r, and zj < zj’ for at least one j. A solution Tdominates T ’ if f(T ) dominates f(T ’). A solution T ∗ ∈ Ωis Pareto optimal (or efficient) if there is no T ∈ Ω such thatz = f(T ) dominates z∗ = f(T ∗). The goal is to determinethe set E of efficient solution. We call the representation ofset E in f(Ω) Pareto frontier.

A utility function is a model of the Decision Maker’spreferences that maps each point in the objective space intoa value of utility. It assumed that the goal of the Deci-sion Maker is to minimize the utility. In this paper is usedthe weighted linear utility function defined in the followingway:

u(T ) = Σrj=1λjfj(T ),

whereΣr

j=1λj = 1,λj ≥ 0, j = 1, ..., r.

3. The multi-criteria GRASP heuristic(mc-GRASP)

GRASP - Greedy Randomized Adaptive Search Proce-dure [5] is a multi-start metaheuristic, in which each itera-tion consists of two phases: construction and local search.The construction phase builds a feasible solution using agreedy randomized algorithm, whose neighborhood is in-vestigated until a local minimum is found during the localsearch phase. The best overall solution is kept as the result.

The mc-GRASP heuristic is based on the optimizationof the weighted linear utility function u(T ). The main ideaof the heuristic is to define a weight vector for each it-eration, which is used to calculate the function u(T ). Ineach iteration of the heuristic a solution T is built using thegreedy randomized Kruskal’s algorithm (see Section 3.1).The Kruskal algorithm [12] is used replacing the vector ofedges costs by a weighted linear combination of these costs.The built solution is submitted to a local search procedure(see Section 3.2).

The weight vector λ = (λ1, ..., λr), generally, determi-nates a search direction on the Pareto optimal frontier andvarious search directions are required to find a variety of

Proceedings of the XXV International Conference of the Chilean Computer Science Society (SCCC’05) 0-7695-2491-5/05 $20.00 © 2005 IEEE

Page 3: [IEEE XXV International Conference of the Chilean Computer Science Society (SCCC'05) - Valdivia, Chile (07-11 Nov. 2005)] XXV International Conference of the Chilean Computer Science

Pareto optimal solutions. Murata et al. [15] introduces away of generating weight vectors distributed uniformly onthe Pareto frontier. The vectors are generated combining rnon-negatives integers with the sum of s:

w1 + w2 + ...+ wr = s, where wi ∈ {0, 1, 2, ..., s}.

As an example, for r = 2 criteria and s = 5 we have 6vectors: (5,0), (4,1), (3,2), (2,3), (1,4) and (0,5). For r =3 and s = 3 we have 10 vectors: (3,0,0), (2,1,0), (2,0,1),(1,2,0), (1,1,1), (0,2,1), (0,3,0), (1,0,2), (0,1,2) and (0,0,3).

In order to obtain normalized weights (∑r

j=1 λj = 1),we considered j = wj /s, wj ∈ {0, ..., s}.

The number of generated vectors for r objectives and fora value of s, Nr(s), is calculated as follows:

N2(s) = s+1.N3(s) =

∑si=0 N2(i) = (s+1)(s+2)/2.

N4(s) =∑s

i=0 N3(i) =∑s

i=0(i + 1)(i + 2)/2.

Algorithm 1 presents the implemented mc-GRASP algo-rithm that receives as input parameters the number of itera-tions N iter, the percentage α ∈[0,1] (controls the amountof greediness and randomness) used at the constructionphase and the weighted utility function to be optimized. Asoutput, the algorithm returns the lPareto list, where theefficient solutions or nondominanted solutions are stored.The number of iterations of the algorithm corresponds tothe number of weight vectors.

Algorithm 1: mc-GRASP(N iter, α, u)01. lPareto = ∅;02. Define a set of weight vectors Λ = {λi = (λ1,..., λr);

i =1,..., N iter};03. For i = 1 to N iter do04. T = Greedy Randomized Kruskal(α, λi);05. Update The Pareto List(T , lPareto);06. Local Search(T , λi, u(T ), lPareto);07. End-ForEnd-Algorithm

3.1. Greedy randomized construction

In the construction algorithm (Greedy -Randomized Kruskal), for each edge (i, j) of thegraph is computed the weighted sum λ.cij = Σr

k=1λkckij ,

where cij = (c1ij , ..., c

rij) is the cost vector of the edge (i, j)

and λ = (λ1, ..., λr) is the weight vector.The candidate list C contains all the edges, in a no de-

creasing order of λ.cij (C = {e1, ..., em}). The restricted

candidate list is defined as RCL = {e1, ..., e|RLC|}, where|RLC| = max(1, α×|C|) is the cardinality of RLC and α ∈[0,1]. In each iteration of the constructive phase, an edge isselected randomly from RCL and it is added to the partialspanning tree as in the Kruskal’s algorithm. This phase fi-nalizes when the spanning tree has n-1 edges. The random-ization is necessary to construct different initial solutions,which can not be obtained by the Kruskal algorithm.

3.2. Local search

In the Local Search procedure, a feasible spanningtree T is represented by a Prufer number P (vector with n-2 nodes) [14] and by a permutation of the n nodes B. P andB are constructed using the Algorithm 2.

Algorithm 2: Encode (T )01. P = ∅, B = ∅. All n-1 edges in the tree T are labeled as

temporary.02. Construct a set D1 ⊂ V formed by degree 1 nodes of

the temporarily labeled edges of T .03. Choose node k, such that k is the least index in D1.04. Consider edge (k, j) ∈ T . B = B + k and P = P + j.05. Give edge (k, j) ∈ T a permanent label. If there is only

a remaining edge (u, v) with temporary label, add u andv to B, return P and B, stop. Else, go to Step 2.

End-Algorithm

1

2

3

4

5

6

7T

1

2

3

4

5

6

7

T1

T2

(a) (b)

1

2

3

4

5

6

7T

1

2

3

4

5

6

7

T1

T2

(a) (b)

Figure 1. (a) An example of an encoding, (b) drop-and-addneighborhood.

The tree T in Figure 1(a) is represented by B = (bj) = [13 4 2 6 5 7] and P = (pj) = [6 7 2 6 5]. A new spanningtree T ∗ is formed by dropping and adding edges. To finda neighbor T ∗ of T , we select a index j ∈ {1,...,n-2}. Theedge e = (bj , pj) ∈ T is to be dropped. This deletion createstwo sub-trees T1 and T2, rooted at bj and pj respectively. Anew tree T ∗ is generated adding a edge e∗ = (bj , k), k ∈T2, k �= pj . T ∗ is evaluated as follows: fi(T ∗) = fi(T )- ci

e + cie∗ , i = 1,...,r. If the new solution is accepted, we

constructed the representations B∗ and P ∗ of the tree T ∗

Proceedings of the XXV International Conference of the Chilean Computer Science Society (SCCC’05) 0-7695-2491-5/05 $20.00 © 2005 IEEE

Page 4: [IEEE XXV International Conference of the Chilean Computer Science Society (SCCC'05) - Valdivia, Chile (07-11 Nov. 2005)] XXV International Conference of the Chilean Computer Science

doing two passes trough B. In the first step, all the verticesbl ∈ T1 ∩ B - {bj}, are added to B∗ and the correspondentadjacent vertices pl ∈ P to P ∗. Next, the vertices in (bj , k)are added to B∗ and P ∗, respectively, and finally all thevertices bl ∈ T2∩B are added to B∗ (and the correspondingvertices pl ∈ P to P ∗, l ≤ n-2). A neighbor T ∗ of T(Figure 3(a)) is showed in Figure 1(b). The dropped edge is(bj , pj) = (6, 5), j = 5, and the added edge is (bj , k) = (6,7). The new tree T ∗ is represented by B∗ = [1 4 2 6 3 5 7]and P ∗ = [6 2 6 7 7].

4. Parallel GRASP strategies

Three different ways of parallelizing a multi-criteriaGRASP algorithm were implemented for the mc-GRASPalgorithm, described in Section 3. In these algorithms, theset of weight vectors λ is divided among the p processesand each one executes N iter/p GRASP iterations, whereN iter is the total number of iterations to be executed. Eachprocess i (1 ≤ i ≤ p) works with its own local Pareto list(lParetoi). These lists are joined to generate the globalPareto list lPareto. Each algorithm has a different way ofjoining the local Pareto lists.

4.1. mc-ParGRASP1

In this algorithm, the local Pareto lists are joined onlyat the end of the algorithm. Each process i (1 ≤ i ≤ p)executes all the N iter/p iterations and, at the end, sendsthe obtained list lParetoi to the master process (process 1).

This strategy has a simple implementation, but it has theinconvenience of all processes j (2 ≤ j ≤ p) stay idle whilethe master process receives the local lists and joins theminto the global Pareto list lPareto. Depending on the num-ber of solutions in each local Pareto list, this join procedurecan consume a considerable time.

4.2. mc-ParGRASP2

In this algorithm, each process i (2 ≤ i ≤ p) sends,at each z iteration, the new nondominated solutions (newsolutions of lParetoi) to the master process (process 1).

The goal of this implementation is to reduce the idlenesstime of the processes. After sending the solutions to themaster process at iteration y, the process i (2 ≤ i ≤ p) canstart the iteration y+1, while the master process updates the

global Pareto list lPareto.

4.3. mc-ParGRASP3

In this algorithm, at the moment process i (2 ≤ i ≤ p)finds a nondominated solution T , T is sent to process i-1.At the moment process i-1 receives the solution T , it veri-fies if T is a nondominated solution comparing it with thesolutions in lParetoi−1. If T is a nondominated solution,it is inserted in lParetoi−1 and it is sent to the process i-2.This procedure is repeated until T is received by the mas-ter process or it is not a nondominated solution in lParetoj

(1 ≤ j ≤ p). In this way, the lParetoj−1 is always moreupdated than lParetoj , for 2 ≤ j ≤ p.

The goal of this implementation is to decentralize theupdating of the global Pareto list (lPareto).

5. Computational experiments

The proposed parallel algorithms were implemented us-ing the C programming language and MPI library for theparallelism.

The computational experiments were carried out in aSUN FIRE 6800 with SPARC III 750MHZ processors and24Gb RAM.

The proposed parallel algorithms are tested on completegraphs with n = 20, 30 and 50 nodes and r = 2 and 3 criteria.

In the experiments done, N iter=5000 GRASP itera-tions were executed. The values of α, used during the con-struction phase in the mc-GRASP algorithm, are α = 0.08,0.03 and 0.01 for graphs with n = 20, 30 and 50 nodes, re-spectively.

Inst. n r mc-ParGRASP1 mc-ParGRASP2Sol t(s) Sol t(s)

g20 2 20 2 125 9 125 8g20 3 20 3 4763 34 4763 41g30 2 30 2 249 13 249 10g30 3 30 3 12971 89 12971 170g50 2 50 2 528 15 528 16g50 3 50 3 28266 188 28266 401

Table 1. Results of mc-ParGRASP1 andmc-ParGRASP2 algorithms on complete graphs with n =20, 30 and 50 nodes and r = 2 and 3 criteria.

In the first experiment, the proposed parallel algorithmswere executed with p=4 processors. The interval to sendnondominated solutions by the mc-ParGRASP2 algorithm

Proceedings of the XXV International Conference of the Chilean Computer Science Society (SCCC’05) 0-7695-2491-5/05 $20.00 © 2005 IEEE

Page 5: [IEEE XXV International Conference of the Chilean Computer Science Society (SCCC'05) - Valdivia, Chile (07-11 Nov. 2005)] XXV International Conference of the Chilean Computer Science

was z=1 iteration. Tables 1 and 2 present, for each instance,the number n of nodes, the number r of criteria and, foreach algorithm, the consumed time in seconds (t) and thetotal number of nondominated solutions found (Sol).

Inst. n r mc-ParGRASP1 mc-ParGRASP3Sol t(s) Sol t(s)

g20 2 20 2 125 9 125 10g20 3 20 3 4763 34 4763 91g30 2 30 2 249 13 249 8g30 3 30 3 12971 89 12791 293g50 2 50 2 528 15 528 25g50 3 50 3 28266 188 28266 456

Table 2. Results of mc-ParGRASP1 andmc-ParGRASP3 algorithms on complete graphs with n =20, 30 and 50 nodes and r = 2 and 3 criteria.

As expected, the results show that, for all instances, thenumber of nondominated solutions found was the same forall algorithms. However, when the consumed times arecompared, the mc-ParGRASP1 algorithm outperformedthe others.

The mc-ParGRASP2 algorithm reduces the idlenesstime of the mc-ParGRASP1 algorithm. However, it con-sumes more time sending, to the master process, a totalnumber of solutions greater than the necessary. A non-dominated solution T at iteration y can be dominated bya solution T ′ found at iteration y+1. The sending of T wasunnecessary.

Experiments were done varying the value of z (intervalto send nondominated solutions) for the mc-ParGRASP2algorithm and it was verified that, for instances with r=3 cri-teria, the consumed time decreases according to the valueof z increases, obtaining an equal consumed time to themc-ParGRASP1 algorithm when z=N iter. In this sit-uation, the mc-ParGRASP2 algorithm is equivalent to themc-ParGRASP1 algorithm.

With the goal of decentralizing the procedure of updatingthe global Pareto list lPareto, the mc-ParGRASP3 algo-rithm also sent a number of solutions greater than the neces-sary to the master process, generating a superior consumedtime when compared with the other algorithms.

It was verified, in the mc-ParGRASP1 algorithm, thatthe processes do not consume the same computational timeto execute the N iter/p iterations. Some of them fin-ish before the others. Based on this observation, a vari-ation of this algorithm is proposed. In this new algorithm,called mc-ParGRASP1 wT (mc-ParGRASP1 with termi-nation), each process i (1 ≤ i ≤ p) has a logic vector ψi,where each position j (1 ≤ j ≤ p) of this vector is true

if the process j has already finished the N iter/p iterations,and false otherwise. When a process i finishes the N iter/piterations, it sends a communication message to the otherprocesses and verifies if the vector ψi is with true at allpositions. If it is true, the process i starts to send the lo-cal Pareto list lParetoi to the master process. Otherwise,the process i executes other iteration and, at the end of it, itrepeats the verification at vector ψi.

Inst. mc-ParGRASP1 mc-ParGRASP1 wTSol t(s) Sol t(s)

g20 2 125 9 125 9g20 3 4763 34 4911 40g30 2 249 13 249 12g30 3 12971 89 13194 104g50 2 528 15 528 15g50 3 28266 188 29790 205

Table 3. Results of mc-ParGRASP1 andmc-ParGRASP1 wT on complete graphs with n =20, 30 and 50 nodes and r = 2 and 3 criteria.

The previous experiment was exe-cuted again with the mc-ParGRASP1 andmc-ParGRASP1 wT algorithms. Table 3 presentsthe results. For the instances with r=2 criteria, where thenumber of nondominated solutions found is smaller, theconsumed time was similar. For the instances with r=3criteria, the consumed time of the mc-ParGRASP1 wTalgorithm was superior. It can be explained by the greaternumber of nondominated solutions obtained. It demandsa greater computational time to send the solutions to themaster process.

p mc-ParGRASP1 mc-ParGRASP1 wTSol t(s) Sp. Sol t(s) Sp.

1 28251 713 1.00 28251 715 1.002 28251 361 1.98 28449 378 1.894 28251 188 3.79 29790 205 3.498 28251 160 4.46 30433 180 3.97

Table 4. Results of mc-ParGRASP1 andmc-ParGRASP1 wT on a complete graph with 50nodes and 3 criteria.

In another experiment, the mc-ParGRASP1 andmc-ParGRASP1 wT algorithms were executed varying thenumber p of processors. It was used the larger instance,g50 3. Table 4 presents, for each algorithm, the number of

Proceedings of the XXV International Conference of the Chilean Computer Science Society (SCCC’05) 0-7695-2491-5/05 $20.00 © 2005 IEEE

Page 6: [IEEE XXV International Conference of the Chilean Computer Science Society (SCCC'05) - Valdivia, Chile (07-11 Nov. 2005)] XXV International Conference of the Chilean Computer Science

nondominated solutions found (Sol), the consumed time inseconds (t) and the speedup (Sp). The speedup was calcu-lated for k (1 ≤ k ≤ 8) processors using the ratio t1/tk,where t1 is the consumed time by the algorithm using oneprocessor and tk is the consumed time using k processors.

The results show that according to the number p ofprocessors increases, the difference between the consumedtimes increases. However, the difference between the num-bers of nondominated solutions found increases too, achiev-ing 2218 solutions (increase of 7.86%) with p=8. The in-crease of the consumed time can be explained by the in-crease of the number of nondominated solutions.

6. Conclusion

The use of the GRASP metaheuristic for multi-criteriaproblems is recent [1, 19]. We believe that the first parallelmulti-criteria GRASP strategies are being proposed in thiswork.

The strategy described on mc-ParGRASP1 algorithmpresented the best results for the mc-MST problem. A vari-ation of this algorithm, called mc-ParGRASP1 wT, ob-tained good computational times and improved the globalPareto list found by the sequential version (mc-GRASP).

The results show that parallelizing a multi-criteriaGRASP algorithm reduces execution time and can also im-prove the set of nondominated solutions obtained by the se-quential version.

References

[1] Arroyo, J.E.C., Vieira, P.S., and Vianna, D.S. AGRASP algorithm for the multi-criteria minimumspanning tree problem. Second Multidisciplinary Con-ference on Scheduling: Theory and Applications,Nova York, (2005).

[2] Drummond, L.M.A., Ochi, L.S., and Vianna, D.S. Anasynchronous parallel metaheuristic for the period ve-hicle routing problem, Future generation computersystems, v.17, p.379-386, (2001).

[3] Ehrgott M., and Klamroth K. Connectedness of effi-cient solutions in multiple criteria combinatorial opti-mization, European Journal Operations Research, 97,159-166, (1997).

[4] Ehrgott, M., and Gandibleux, X. A survey and anno-tated bibliography of multiobjective combinatorial op-timization. OR Spektrum 22, 425-460, (2000).

[5] Feo T.A., and Resende M.G.C. Greedy randomizedadaptive search procedures, Global Optimization 6,109-133, (1995).

[6] Glover, F., and Laguna M. Tabu search, Kluwer Aca-demic Publishers, (1997).

[7] Hamacher H.W., and Ruhe G. On spanning tree prob-lems with multiple objectives, Annals of OperationsResearch 52, 209-230, (1994).

[8] Holland, J. H. Adaptation in Natural and ArtificialSystems, University of Michigan Press, (1975).

[9] Jones, D.F., Mirrazavi, S.K., and Tamiz, M. Multi-objective metaheuristics: An overview of the currentstate-of-art, European Journal Operations Research,137, 1-19, (2002).

[10] Kirkpatrick, S., Gellat Jr., C.D., and Vecchi, M.P.Optimization by Simulated Annealing, Science, 220,671-680, (1983).

[11] Krishnamoorth, M., Ernst, A.T., and Sharaiha, Y.M.Comparison of Algorithms for the Degree ConstrainedMinimum Spanning Tree, Journal of Heuristics, 7,587-611, (2001).

[12] Kruskal J.B. On the shortest spanning tree of graphand the traveling salesman problem. Proceedings ofthe American Mathematical Society, 7: 48-50 (1956).

[13] Knowles J.D. Local search and hybrid evolutionary al-gorithms for Pareto optimization. Thesis of Doctorate.University of Reading, UK, (2002).

[14] Moon, J.W. Various Proofs of Cayleys Formula forCounting Trees. In F. Harary (ed.), A Seminar onGraph Theory. New York: Holt, Rinehart and Win-ston, 7078 (1967).

[15] Murata T., Ishibuchi H., and Gen M. Specification ofgenetic Search directions in cellular multi-objectivegenetic algorithms. Evolutionary Multi-Criterion op-timization, EMO. LNCS. v.1993, Zurich: Springer, 82-95 (2001).

[16] Ochi, L.S., Vianna, D.S., Drummond L.M.A., andVictor, A.O. A parallel evolutionary algorithm for thevehicle routing problem with heterogeneous fleet, Fu-ture Generation Computer Systems, v.14, p.285-292,(1999).

[17] Ramos R.M., Alonso, S., Sicılia J., and GonzalesC. The problem of the optimal biobjective spanningtree problem, European Journal Operations Research,111, 617-628, (1998).

[18] Vianna, D.S., Ochi, L.S., and Drummond L.M.A. Aparallel hybrid evolutionary metaheuristic for the pe-riod vehicle routing problem, II workshop on bio-inspired solution to parallel processing problems

Proceedings of the XXV International Conference of the Chilean Computer Science Society (SCCC’05) 0-7695-2491-5/05 $20.00 © 2005 IEEE

Page 7: [IEEE XXV International Conference of the Chilean Computer Science Society (SCCC'05) - Valdivia, Chile (07-11 Nov. 2005)] XXV International Conference of the Chilean Computer Science

(BIO’99), Lecture notes in computer science, v.1586,p.183-191, San Juan, (1999).

[19] Vianna, D.S., and Arroyo, J.E.C. A GRASP algorithmfor the multi-objective knapsack problem. XIV Inter-national Conference of the Chilean Computer ScienceSociety, Arica, IEEE CS Press, p.69-75, (2004).

[20] Zhou G., and Gen M. Genetic algorithm approach onMulti-criteria minimum spanning tree problem, Eu-ropean Journal Operations Research, 114, 141-152,(1999).

Proceedings of the XXV International Conference of the Chilean Computer Science Society (SCCC’05) 0-7695-2491-5/05 $20.00 © 2005 IEEE