Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

26
Tabu Search Strategy Hachemi Bennaceur 04/28/22 1 iroboapp project, 2013

Transcript of Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Page 1: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Tabu Search Strategy Hachemi Bennaceur

04/18/23

1 iroboapp project, 2013

Page 2: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Learning Outcomes

04/18/232

At the end of the presentation, you willGet an idea about history of TSUnderstand the concepts used in TSUnderstand the TS strategyBe aware of the limits of TS and some improvements.Learn how to use TS for the TSP

Page 3: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

PlanHistoryGeneral overview of TSIllustration ExampleConcepts of TSBasic TS Algorithm Improvements Discussion

04/18/233

Page 4: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

History TS is proposed in 1986 by Fred Glover. Method developed to solve problemscombinatorial (mostly NP-hard) Advantage of this method compared to

others: it allows to overcome the problem of local optima by the use of tabu lists (principle of memory)

04/18/234

Page 5: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

TS: General principle Local search : get stuck in local optimumBasic Idea : continue the search for solutions even

when a local optimum is encountered by,⇒ allowing moves which do not improve the solution⇒ using the principle of memory to avoid cycle moves.

04/18/235

Page 6: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

• Memory:⇒ it is represented by a TABU list that contains (tabu)

moves that are temporarily forbidden ⇒ evolving role during the resolution:

diversification (long-term memory)intensification (short-term memory)

04/18/236

TS: General principle

Page 7: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

A tourist is lost in a mountainous region. He knows that a rescue team regularly passes by the point at the lowest altitude in the region. He doesn’t know how to reach the lowest alitude of the region.So when he arrives to an intersection, he must engage in a direction to see if the way up or down.

Illustration Example 04/18/237

Page 8: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Firstly, he starts to go down as he can, by choosing the path of more high lean at each crossing.

04/18/238

Page 9: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

When there is no way leading to down, he decided to follow the path that goes up with the lower lean because he is aware that may be in a local minimum.

04/18/239

Page 10: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

04/18/2310

However, when he goes up, he goes back down to the point where he was. This strategy does not work. Therefore, he decided to forbid to walk back by storing the direction from which he comes.

Page 11: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

04/18/2311

This strategy allows him to explore other local optimums.

Page 12: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

TS: Variables s : the curent solution

s’ : the next solution to reach (neighboring solution)

04/18/2312

f(s)f(s’)

Page 13: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

TS: variables

04/18/2313

N(s) : the space of neighboring solutionsN(s)={s’ / s’ is a neighboring solution of s}

N(s)

m: a move from s to s’.

Page 14: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

TS: variables

04/18/2314

s* the optimal solution minimizing the objective function.sc : the current best solution.

S*

Sc

Page 15: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

TS: concepts Bad move to escape local optimum.

similar to simulated annealingbut TS selects the best bad move in N(s).

Tabu move undesirable move to avoid to return to a visited solution.A move is considered as tabu during k

iterations.

04/18/2315

Page 16: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

TS: concepts T denotes the list of tabu moves; the

elements of the list are t(s,m).A tabu list with many elements can be too restrictive: it is observed in practice that this enforce the method to ignore interesting solutions.A tabu list containing few elements may be useless and leads to cyclical moves.

a(s,m) : aspiration criterionPerform move m even it is tabu

04/18/2316

Page 17: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Basic TS: Algorithm Step1 : select an initial solution s in S (set of solutions)

sc ← s; k ←0; Step2 : k ← k+1; compute N(s,k) such that

Tabu moves are not consideredAspiration criterion may be applied

Step3 : select the best solution s’ in N(s,k); s ← s’; Step4 : if f(s) < f(sc) then sc←s; Step5 : update the tabu list T and the aspiration

criterions. Step6 : if the stop condition is not reached go to step

2

04/18/2317

Page 18: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

TS for TSP problem Solution : set of arcs composing a tour - the arcs are all

oriented in the same direction chosen arbitrarily. Move m= <(a, b), (c, d)> : remove the two arcs (a, b) and

(c, d) and introducing two new arcs (a, d) and (c, b). You may use two lists IN OUT containing tabu edges. Update the lists when the move <(a, b), (c, d)> is

performed:- add to OUT the elements (a, d) and (c, b) (edges inserted).- add to IN the elements {a, b} and {c, d} (edges deleted).

04/18/2318

Page 19: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

TS for TSP problemTabu moves : If the edge (a, b) belongs to the IN list, then it

prevents any move that leads to introduce (a, b) in the configuration.

If the edge (a, b) belongs to the list OUT, then it prevents any move that leads to remove (a, b) from the configuration.

04/18/2319

Page 20: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Improvements Intensification

The search is intensified in a neighborhood N(s) of S.A high priority is given to solutions s’ of N(s).

04/18/2320

N(s)

Page 21: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Improvements Intensification

Intensify searching in neighborhoods that seem has a chance to lead to solutions close to the optimum.

Make sure that best solutions in these regions are indeed found.

Based-on a recency memory (short-term memory) records the number of consecutive iterations that various solution components have been present in the current solution without interruption.

04/18/2321

Page 22: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Intensification approaches Approach 1 :

Restart the search from the best currently known solution Fix in it the components that seem more attractive.

Approach 2:Restart the search from the best currently known solution Modify the neighborhood in such way to allow more

moves

(increase the size of the neighborhood )

04/18/2322

Page 23: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Improvements Diversification

The search is too local it is displaced from the current neighborhood N(s) to another one.

High priority is given to solutions of another neighborhood than the current one.

04/18/2323

N(s)

Page 24: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Improvements Diversification :

A certain number of local optimums are reached without improving the current best solution.

The search is stagnated during a certain number of consecutive iterations

Based-on a frequency memory (long-term memory) records the number of total iterations from the beginning that various solution components have been present in the current solution.

04/18/2324

Page 25: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Diversification approaches• Restart the search from a solution that

contains components rarely used.

• Add a term to the objective related to the frequency of the components:- The most common components are penalized- Less frequent components are encouraged

04/18/2325

Page 26: Tabu Search Strategy Hachemi Bennaceur 5/1/2015 1 iroboapp project, 2013.

Conclusion & Discussion Many parameters to tune

Size of the tabu list? Size of neighbourhoods? Candidate solutions. Stopping criterions Intensification and diversification

04/18/2326