Hybrid Metaheuristics for the Prize Collecting Traveling Salesman Problem
This presentation is the property of its rightful owner.
Sponsored Links
1 / 29

Antonio Augusto Chaves - Luiz Antonio Nogueira Lorena National Institute for Space Research - INPE PowerPoint PPT Presentation


  • 87 Views
  • Uploaded on
  • Presentation posted in: General

Hybrid Metaheuristics for the Prize Collecting Traveling Salesman Problem. Antonio Augusto Chaves - Luiz Antonio Nogueira Lorena National Institute for Space Research - INPE São José dos Campos, Brazil chaves;[email protected]

Download Presentation

Antonio Augusto Chaves - Luiz Antonio Nogueira Lorena National Institute for Space Research - INPE

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Antonio augusto chaves luiz antonio nogueira lorena national institute for space research inpe

Hybrid Metaheuristics for the Prize Collecting Traveling Salesman Problem

Antonio Augusto Chaves - Luiz Antonio Nogueira Lorena

National Institute for Space Research - INPE

São José dos Campos, Brazil

chaves;[email protected]

EvoCOP 2008 - Eighth European Conference on Evolutionary Computation in Combinatorial Optimization


Introduction

Introduction

  • Objective: Solve the Prize Collecting Traveling Salesman Problem (PCTSP) using a new hybrid metaheuristic, known as Clustering Search (CS).

  • The CS consists of detecting promising areas of the search space using an algorithm that generates solutions to be clustered. These promising areas may then be explored through local search as soon as they are discovered.

  • The commercial solver CPLEX has been used to solve a formulation of the PCTSP in order to validate the computational results of CS algorithm.

  • The optimal solution for the PCTSP is hard to find due the large number of possible solutions:

    • It is classified as NP-hard


Pctsp

PCTSP

cij

  • The PCTSP is a generalization of the Traveling Salesman Problem (TSP), where a salesman collects a prize piin each city visited and pays a penalty i for each city not visited, considering travel costs cijbetween the cities.

  • The problemis to minimize the sum of the costs of the tour and penalties paid, while including in the tour enough cities to collect a minimum prize pmin, defined a priori. In this tour, each city visited at most once.

Example of a solution with 10 nodes

i

pi

Balas, E.:The prize collecting traveling salesman problem. Networks 19 (1989) 621–636


Mathematical model

Mathematical Model

  • The PCTSP can be formulated as an integer linear programming problem as follows:

(1)

(2)

(3)

(4)


Mathematical model1

Mathematical Model

(5)

(6)

(7)

(8)

(9)

(10)

(11)


Mathematical model2

Mathematical Model

  • CPLEX 10.0 was used to solve the PCTSP.

  • CPLEX solved PCTSP small instances in a reasonable execution time.

  • For the test problems with 80 nodes, the CPLEX took several hours execution to find the optimal solution,

  • For test problems with 100 nodes the CPLEX failed in close the gap between lower and upper bounds in 100,000 seconds.

  • The CPLEX failed in finding a feasible solution for test problems with n200 in 100,000 seconds.

  • Due to the limitation of the CPLEX, the study of heuristic techniques for solving this problem become interesting.


Clustering search metaheuristic

Clustering Search Metaheuristic

  • Clustering Search (Oliveira and Lorena, 2004)

    Oliveira, A.C.M., Lorena, L.A.N.: Detecting promising areas by evolutionary clustering search. Advances in Artificial Intelligence. Springer Lecture Notes in Artificial Intelligence Series 3171 (2004) 385–394

  • The CS employs clustering for detecting promising areas of the search space. A clustering process is executed simultaneously to a metaheuristic, identifying groups of solutions that deserve special interest.

  • These promising areas should be explored through local search methods as soon as they are discovered.

  • The idea of the CS is to avoid applying a local search heuristic to all solutions generated by a metaheuristic.

  • To detect promising regionsbecomes an interesting alternative preventing the indiscriminate application of local search heuristics.


Example non linear optimization

Example: Non-linear optimization


Clustering search

Clustering Search

  • Iterative clustering behavior


Diagram for the cs algorithm

Diagram for the CS algorithm

center of

clusters

Begin

Clustering Process

LS

Create

Clusters

yes

promising cluster?

SM

no

IC

AM

Stop criterion?

Legend:

yes

CS flow

Clusters update flow

End

Clustering process flow


Search metaheuristic sm

Search Metaheuristic (SM)

  • The search metaheuristic (SM) component works as a full-time solution generator. The algorithm is executed independently of the remaining components and must be able to provide a continuous generation of solutions to the clustering process. Clusters are simultaneously maintained to represent these solutions.


Cs for the pctsp sm

CS for the PCTSP – SM

The GRASP/VNS metaheuristic

  • The GRASP is basically composed of two phases:

    • a construction phase, in which a feasible solution is generated, and

    • alocal search phase, in which the constructed solution is improved.

  • Construction phase: The greedy evaluation function for adding a node k between the nodes i and j is

    g(k) = cij + k – cik – ckj

  • Local Search Phase: uses the VNS, which is a metaheuristic going on a systematic change of the neighborhood within a local search algorithm.


Cs for the pctsp sm1

CS for the PCTSP – SM

procedure GRASP/VNS

for (number of iterations is not satisfied) do

s = 

while (solution not built) do

compute candidate list (C)

RCL = C * 

e = select at random a value of RCL

s = s {e}

end while

kmax = number of neighborhoods

while (stop condition is not satisfied) do

k 1

while (kkmax)

generate at random s‘Nk(s)

s” = apply VND with s’

if ( f (s”) < f (s)) then

ss”

k 1

else

kk + 1

end while

end while

end for

end GRASP/VNS

Construction Phase

Local Search Phase (VNS)


Antonio augusto chaves luiz antonio nogueira lorena national institute for space research inpe

CS for the PCTSP – SM

procedure GRASP/VNS

for (number of iterations is not satisfied) do

s = 

while (solution not built) do

compute candidate list (C)

RCL = C * 

e = select at random a value of RCL

s = s {e}

end while

kmax = number of neighborhoods

while (stop condition is not satisfied) do

k 1

while (kkmax)

generate at random s‘Nk(s)

s” = apply VND with s’

if ( f (s”) < f (s)) then

ss”

k 1

else

kk + 1

end while

end while

end for

end GRASP/VNS

Construction Phase

Neighborhood structures of VNS

  • Add one node (AD)

  • Drop one node (DR)

  • Swap two nodes (SW)

  • (AD)2

  • (DR)2

  • (SW)2

  • (AD)3

  • (DR)3

  • (SW)3

Local Search Phase (VNS)


Antonio augusto chaves luiz antonio nogueira lorena national institute for space research inpe

CS for the PCTSP – SM

procedure GRASP/VNS

for (number of iterations is not satisfied) do

s = 

while (solution not built) do

compute candidate list (C)

RCL = C * 

e = select at random a value of RCL

s = s {e}

end while

kmax = number of neighborhoods

while (stop condition is not satisfied) do

k 1

while (kkmax)

generate at random s‘Nk(s)

s” = apply VND with s’

if ( f (s”) < f (s)) then

ss”

k 1

else

kk + 1

end while

end while

end for

end GRASP/VNS

Construction Phase

Neighborhood structures of VND

  • SeqAdd

  • AddDrop

  • SeqDrop

Local Search Phase (VNS)

* At each step of VND, the neighborhood Nt(s’) of s’ is explored completely.


Iterative clustering ic

Iterative Clustering (IC)

  • The iterative clustering (IC) component aims to gather similar solutions into groups, identifying a representative cluster center for them.The clustering is progressively fed by solutions generated in each iteration of SM. A distance metricmust be defined, a priori, allowing a similarity measure for the clustering process.


Cs for the pctsp ic

CS for the PCTSP – IC

0 -4 1 3 -2

0 -4 2 3 1

-4 -1 0 3 -2

-4 -1 2 3 0

1 -4 0 3 -2

0 1 2 3 -4

0 -1 2 3 -4

1 -4 2 3 0

(initial)

(guide)

1 0 2 3 -4

0 -1 2 3 -4

1 -2 0 3 -4

  • The metric distanceis the number of different edges between the GRASP/VNS and the center of the cluster solutions. A large number of different edges between them increases the dissimilarity.

  • The assimilationprocess uses the path-relinking method.


Analyzer module am

Analyzer Module (AM)

  • The analyzer module (AM) provides an analysis of each cluster, indicating a probable promising cluster. A cluster density is a measure that indicates the activity level inside the cluster. Whenever the densityreaches a certain threshold, that information cluster must be better investigated to accelerate the convergence process on it.


Cs for the pctsp am

CS for the PCTSP – AM

NS

³

PD

.

Clus

  • The AM component is executed whenever a solution is assigned to a cluster, verifying if the cluster can be considered promising.

  • A cluster becomes promising when reaches a certain density,

    where, NS is the number of solutions generated in the interval of analysis of the

    clusters, |Clus| is the number of clusters, and PD is the desirable cluster density beyond the normal density, obtained if NS was equally divided to all clusters.

    – number of solutions generated at each analysis of the clusters NS = 200;

    – maximum number of clusters NC = 20;

    – density pressure PD = 2.5;

    The center of a promising cluster is improved through the LS component.


Local searcher ls

Local Searcher (LS)

  • The local search (LS) component is a local search module that provides the exploitationof a supposed promising search area framed by the cluster. This process is executed each time AM finds a promising cluster and the local search is applied on the center of the cluster.


Cs for the pctsp ls

CS for the PCTSP – LS

1 2 3 4 5 6

1 2 5 4 3 6

1

1

2

6

2

6

3

3

5

5

4

4

  • The LS component was implemented by the 2-Opt heuristic.

  • The 2-Opt consists in 2-changes over a tour, deleting two arcs and replacing them by two other arcs to form a new tour. This method continues while there is improvement in the tour through this movement.


Cs for the pctsp

CS for the PCTSP


Computational results http www lac inpe br lorena instancias html

Computational Resultshttp://www.lac.inpe.br/~lorena/instancias.html

  • The CS was coded in C++ and it was run on a 3 GHz Pentium 4.

  • There are no available test problems for the PCTSP in the literature. In this paper, test problems were randomly generated as in Dell’Amico et al.:

    • n = (20, 40, 60, 80, 100, 200, 300, 400, 500) vertices

    • travel costs cij [1, M] with M  {1000, 10000}

    • prizes pi [1, 100]

    • penalties i [1, N] with N  {100, 1000, 10000}.

  • The value of minimum prize (pmin) has been generated as

    with  {0.2, 0.5, 0.8}.


Pctsp c ij 1 1000 i 1 100

PCTSP: cij [1, 1000]; i [1, 100]


Pctsp c ij 1 10 000 i 1 1000

PCTSP: cij [1, 10,000]; i [1, 1000]


Pctsp c ij 1 1000 i 1 10 000

PCTSP: cij [1, 1000]; i [1, 10,000]


Pctsp c ij 1 10 000 i 1 100

PCTSP: cij [1, 10,000]; i [1, 100]


Conclusions

Conclusions

  • The Clustering Search (CS) uses the concept of hybrid algorithms, combining metaheuristics with a clustering process.

  • The idea of the CS is to avoid applying a local search heuristic to all solutions generated by a metaheuristic.

  • The CS detects the promising regions in the search space during the solution generation process and applies the local search heuristics only in these regions.

  • CS algorithm got better results than GRASP/VNS without clustering process and it founds good values comparing to CPLEX.

  • CS has two advantages over CPLEX: execution time, and the cost of a commercial solver.

  • These results validate the CS application to the PCTSP.


References

References

  • Oliveira, A.C.M., Lorena, L.A.N.: Detecting promising areas by evolutionary clustering search. Advances in Artificial Intelligence. Springer Lecture Notes in Artificial Intelligence Series 3171 (2004) 385–394

  • Oliveira, A.C.M., Lorena, L.A.N.: Hybrid evolutionary algorithms and clustering search. In Grosan, C., Abraham, A., Ishibuchi, H., eds.: Hybrid Evolutionary Systems - Studies in Computational Intelligence. Springer SCI Series (2007) 81–102

  • Dell’Amico, M., Mafioli, F., Sciomanchen, A.: A lagrangian heuristic for the prize collecting traveling salesman problem. Annals of Operations Research 81 (1998) 289–305

  • Feo, T., Resende, M.: Greedy randomized adaptive search procedures. Journal of Global Optimization 6 (1995) 109–133

  • Mladenovic, N., Hansen, P.: Variable neighborhood search. Computers and Operations Research 24 (1997) 1097–1100

  • Balas, E.: The prize collecting traveling salesman problem. Networks 19 (1989) 621–636


  • Login