Citation

Arroyo, J. E. C.; Vieira, P. S. and Vianna, D. S. A GRASP algorithm for the multi-criteria minimum spanning tree problem. Annals of Operations Research, 159 (1): 125-133, 2008.

Selected


Abstract

This paper proposes a GRASP (Greedy Randomized Adaptive Search Procedure) algorithm for the multi-criteria minimum spanning tree problem, which is NP-hard. In this problem a vector of costs is defined for each edge of the graph and the problem is to find all Pareto optimal or efficient spanning trees (solutions). The algorithm is based on the optimization of different weighted utility functions. In each iteration, a weight vector is defined and a solution is built using a greedy randomized constructive procedure. The found solution is submitted to a local search trying to improve the value of the weighted utility function. We use a drop-and-add neighborhood where the spanning trees are represented by Prufer numbers. In order to find a variety of efficient solutions, we use different weight vectors, which are distributed uniformly on the Pareto frontier. The proposed algorithm is tested on problems with r = 2 and 3 criteria. For non-complete graphs with n = 10, 20 and 30 nodes, the performance of the algorithm is tested against a complete enumeration. For complete graphs with n = 20, 30 and 50 nodes the performance of the algorithm is tested using two types of weighted utility functions. The algorithm is also compared with the multi-criteria version of the Kruskalís algorithm, which generates supported efficient solutions.


pdf

There is no pdf available for this paper. You might like to try to obtain the original source (see the doi, for example)


doi

The doi for this publication is 10.1007/s10479-007-0263-4 You can link directly to the original paper, via the doi, from here

What is a doi?: A doi (Document Object Identifier) is a unique identifier for sicientific papers (and occasionally other material). This provides direct access to the location where the original article is published using the URL http://dx.doi/org/xxxx (replacing xxx with the doi). See http://dx.doi.org/ for more information



URL

This pubication does not have a URL associated with it.

The URL is only provided if there is additional information that might be useful. For example, where the entry is a book chapter, the URL might link to the book itself.


Bibtex

@ARTICLE{2008-125-133-SI, author = {J. Elias Claudio Arroyo and P. Sampaio Vieira and D. Soares Vianna},
title = {A GRASP algorithm for the multi-criteria minimum spanning tree problem},
journal = {Annals of Operations Research},
year = {2008},
volume = {159},
pages = {125--133},
number = {1},
note = {Selected},
abstract = {This paper proposes a GRASP (Greedy Randomized Adaptive Search Procedure) algorithm for the multi-criteria minimum spanning tree problem, which is NP-hard. In this problem a vector of costs is defined for each edge of the graph and the problem is to find all Pareto optimal or efficient spanning trees (solutions). The algorithm is based on the optimization of different weighted utility functions. In each iteration, a weight vector is defined and a solution is built using a greedy randomized constructive procedure. The found solution is submitted to a local search trying to improve the value of the weighted utility function. We use a drop-and-add neighborhood where the spanning trees are represented by Prufer numbers. In order to find a variety of efficient solutions, we use different weight vectors, which are distributed uniformly on the Pareto frontier. The proposed algorithm is tested on problems with r = 2 and 3 criteria. For non-complete graphs with n = 10, 20 and 30 nodes, the performance of the algorithm is tested against a complete enumeration. For complete graphs with n = 20, 30 and 50 nodes the performance of the algorithm is tested using two types of weighted utility functions. The algorithm is also compared with the multi-criteria version of the Kruskalís algorithm, which generates supported efficient solutions.},
doi = {10.1007/s10479-007-0263-4},
owner = {user},
timestamp = {2012.05.25} }