A solution clustering based guidance mechanism for parallel cooperative metaheuristic

Download Presentation

A solution clustering based guidance mechanism for parallel cooperative metaheuristic

Loading in 2 Seconds...

- 77 Views
- Uploaded on
- Presentation posted in: General

A solution clustering based guidance mechanism for parallel cooperative metaheuristic

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 - - - - - - - - - - - - - - - - - - - - - - - - - -

A solution clustering based guidance mechanism for parallel cooperativemetaheuristic

- Jianyong Jin Molde University College, Specialized University in Logistics
- Arne Løkketangen Molde University College, Specialized University in Logistics
- Teodor Gabriel Crainic Interuniversity Research Centre on Enterprise Networks,
- Logistics and Transportation (CIRRELT)

Outline

1. Introduction

2. Cooperative search framework

3. Guidance mechanism

4. Heuristic search threads

5. Some computational results

6. Conclusion

• The quality of a metaheuristic is largely a result of the interplay between intensification and diversification.

• Intensification drives the search to intensively investigate the vicinity of previously found good solutions.

• Diversification encourages searching in the unexplored search space. (Glover and Laguna, 1997).

To perform intensification/diversification, it would be beneficial to have some search history knowledge which refers to:

• How search effort has been consumed.

• Which region has been intensively searched and which has not.

• What kinds of solutions have been

found in a certain search region.

The focus of this work:

• Cluster solutions found into groups according to their similarities.

• Use solution clusters to represent search regions which have been explored.

• Use the attributes of the solutions in a cluster to estimate how promising a search region may be.

• Use cluster knowledge to guide the search towards the promising or less explored regions.

The capacitated vehicle routing problem (CVRP) is used to examine the effectiveness of the algorithm.

To solve CVRP is to

determine a set of

vehicle routes which

satisfy customers’

demands and minimize

the cost of delivery.

• Multiple Tabu search threads work in parallel.

• Search threads exchange solutions with the pool.

• Solution pool manages the solutions, does the clustering and identifies features.

Communication strategies:

• Each search thread exchanges solutions with the pool periodically, they decide when to exchange solution on their own, the exchange is asynchronous.

- If a thread finds a feasible solution better than its starting solution, then sends the solution to the pool.
- If a thread does not find a better feasible solution, the best infeasible solution found can be sent to the pool.
- During exchange, a thread also receives a solution from the pool as its new starting solution

The definition of the cluster:

• A cluster is a collection of solutions which share a certain number of solution elements (edges for CVRP) in common.

• A cluster is used to approximately represent a search region.

• The number of solutions a cluster contains can indicate how thoroughly a search region has been explored.

• The quality of the solutions a cluster contains can indicate how promising a search region may be.

The components of a cluster:

• Feasible solution list,

• Infeasible solution list,

• Accumulative edge frequency list,

• Average feasible solution value,

• Average infeasible solution value,

• Feasible solution counter,

• Infeasible solution counter,

• Cluster ID.

The similarity measure:

: the number feasible solutions in a cluster in which edge (i j) occurs, this number is countered and saved in the accumulativeedge frequency list.

: 1 if edge (i j) occurs in solution s, 0 otherwise.

FSC: Feasible solution counter, the number of feasible solutions that have been put into a cluster.

: the number of edges included in solution s.

similarity=

The clustering approach:

When a solution enters the pool,

1) it will be added into an existing cluster if the similarity is bigger than the minimum requirement,

2) create a new cluster if the solution does not satisfy the similarity requirement to any existing cluster or there is no existing cluster.

Only feasible solutions are used to update accumulative edge frequency.

TS threads for Intensification

• Only receive solutions from the cluster with the lowest average feasible solution value.

• Use smaller Tabu tenure.

• Use 3 TS threads among every

7 search threads.

TS threads for Diversification

• Receive solutions only from clusters which have been less explored (the number of feasible solutions a cluster contains is below a threshold).

• Use bigger Tabu tenure.

• Use 4 TS threads among every

7 search threads.

Evolvement of the focus of TS threads:

• During the beginning of the search, intensification and diversification mechanism is not active.

• When there are more than one clusters, intensification threads will always focus on the cluster with the lowest average feasible solution value.

• When the number of solutions in a cluster exceeds a threshold, the cluster will be ignored by diversification threads.

Features of the TS threads:

• Use multiple neighborhood structures,

- Use granular neighborhood reduction technique.
- Randomly select a neighborhood structure at each iteration with equal probability.
- Use different types of implementation of reinsertion.
- Infeasible solutions are allowed.
- The tabu status of moves leading to new best solutions are overridden.
- Initial solution is constructed with the saving algorithm.

Tabu search procedure:

1: Construct a feasible starting solution.

2: Initialization (best sol, current sol, Tabu list, penalty multipliers).

3: While termination conditions not met do

4: Randomly select a neighborhood.

5: Generate and evaluate neighboring solutions.

6: Select and perform the best non-tabu move.

7: Set the attributes of reverse moves as tabu.

8: Refine the routes modified.

9: Update best found solutions.

10: If communication, exchange solution and re-initialize the search.

11: end while

12: Print best found solution.

Inter-route neighborhood structures :

Reinsertion: move a node to another route.

2-opt*: swap the head/tail parts of two routes.

CROSS-exchange: swap two segments between two routes.

Neighbors generation and evaluation:

Reinsertion: for a customer node i, move i to the position after one of its K nearest nodes (node j). Node i and j are not in the same route.

2-opt*: for a customer node i, connect i with one of its K nearest nodes (node j), connect the nodes right after i and j.

i, j are in two different routes.

Cross-exchange: exchange route segments containing less than 4 nodes for pairs of routes. Among new edges, at least one node is connected to one of its K nearest nodes.

Augmented objective function: F(s) = C(s)+αQ(s)+βD(s),

Four types of implementation of reinsertion:

Purpose. Increase the possibilities of modifying the route structure that is far from the depot.

Theme: Divide customer nodes equally into groups according to their distance to the depot, generate neighbors for each group separately, Select and perform a move for each group at every iteration.

Sorted node list:

Four types of implementation of reinsertion:

Implementation:

- The number of groups can be from 1 to 4. Thus there are 4 types of reinsertion implementations.
- Such reinsertion implementations are only for inter-route operations.
- Using these 4 types of reinsertion, together with other neighborhood structures, 4 types of TS threads are built.

Intra-route neighborhood structures:

Reinsertion: move a node to another position.

2-opt: remove and add two edges.

The two neighborhoods are implemented as local search procedures. For improving a route, 2-opt is used first, then reinsertion.

- The algorithm can be configured to use different numbers of threads for utilizing various levels of computing power.
- The following results are obtained from a version with 24 threads.
TS threads for diversification: 14

TS threads for intensification: 9

Solution pool: 1

Benchmark set 1

Benchmark set 2

• The computational experiments show that the suggested metaheuristic is effective and competitive.

• The guidance mechanism can improve the performance of the algorithm.

• The clustering approach can provide insight regarding how the search effort have been consumed.

• The potential of the cluster knowledge seems not fully utilized.

- Crainic, T.G. (2008), Parallel solution methods for vehicle routing problems. In B. Golden, S. Raghavan, and E. Wasil, editors, The Vehicle Routing Problem: Latest Advances and New Challenges, pages 171–198. Springer, New York.
- Glover, F. and Laguna, M. (1997). Tabu Search, Kluwer.
- Golden, B.L., Wasil, E.A. , Kelly, J.P. and Chao, I.-M. (1998), The impact of metaheuristics on solving the vehicle routing problem: algorithms, problem sets, and computational results. In: T. Crainic and G. Laporte, Editors, Fleet management and logistics, Kluwer, Boston, pp. 33–56.
- Groer, C. B.L. Golden, and E.A. Wasil. A parallel algorithm for the vehicle routing problems. INFORMS Journal on Computing, 23:315–330, 2011.
- Li, F., B.L. Golden and E.A. Wasil (2005). Very large-scale vehicle routing: New test problems, algorithms and results. Computers & Operations Research 32, 1165–1179.
- Toth, P. and Vigo, D. (2003), The granular tabu search and its application to the vehicle routing problem, INFORMS Journal on Computing 15, 333–346.
- Vidal, T., Crainic, T.G., Gendreau M., Lahrichi, N., Rei, W. (2012). A hybrid genetic algorithm for multi-depot and periodic vehicle routing problems. Operations Research, Forthcoming