reactive tabu search contents 1.a brief review of search techniques 2.tabu search 3.reactive tabu...

Post on 17-Jan-2016

238 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Reactive Tabu Search

Contents

1. A brief review of search techniques

2. Tabu Search

3. Reactive Tabu Search

Search Techniques

Local search techniques– Iterative Improvement

Select an improving neighbor in the neighborhood

– Steepest Descent

Select the best solution in the neighborhood

Advanced search techniques– GRASP, Tabu Search, Simulated Annealing,

Genetic Algorithm

Go Beyond Local Optimums

Repetition of local search with different starting points.– GRASP

Acceptance of back tracking or bad moves.– Tabu Search, Simulated Annealing

Combination and selection of suboptimal solutions.– Genetic Algorithm

Tabu Search

Tabu List- Memory techniques that help identify cycling

Tabu Search

Fred Glover (1986): “The overall approach is to avoid entrapment in cycles

by forbidding or penalizing moves which take the solution, in the next iteration, to points in the solution space previously visited.”

Components of Tabu search Steepest Descent

Prohibition - based

Memory - based

Basic Idea of TS

Currentsolution

Defineneighborhood

Evaluateneighborhood

Pick bestNon-Tabuneighbor

An iteration in a tabu search

Basic TS Algorithm

s'Return

met iscondition stopping Until

1 k k

memoryTabu Update

(update) s s'

)(

V ssolution best theFind

) ( k) N(s, Vset candidate a Generate

Repeat

memoryTabu Initialize

iteration) ofnumber the-(k 0k

far sosolution best thebe s'Let

S ssolution initialan Choose

e functiono objectivioration tast deter or the lemprovementthe most i

u list N(s)- TabN(s, k)

Tabu SearchMain Components

Tabu Search Components

Short Term Memory( Prevent Cycling ) Long Term Memory

( Global Diversification )Medium Term Memory

( Regional Intensification )Aspiration

( Increase flexibility )

Tabu Search

Aspiration function works closely with tabu list, the use of aspiration can be crucial to Tabu search.

Aspiration criteria1. If the cost associated with a tabu solution is less than

the aspiration value associated with the cost of current solution, then the tabu solution is temporarily ignored.

2. If a tabu move yields a solution better than the best one obtained so far.

Aspiration Criterion

C2 C3 C4 C5

C1

C3

C4

C2

2

C2 C3 C4 C5

C1

C3

C4

C2

3

3

Simplest tabu list Mini TSP problem

C1 C2 C4 C3 C5

C2 C1 C4 C3 C5

C1 C2 C3 C4 C5

?

Initial solutionf = 100

f = 90

f = 80

(accepted)

(accepted)

Types of Tabu List

Strict Tabu Forbid all previous solutions.

Fixed Tabu The size of Tabu list is fixed.

The possibility of cycles remain.

Reactive Tabu Adapt list size to properties of a problem dynamically.

The Size of the Tabu List

Strict Tabu No fixed prohibition period

Fixed Tabu Use fixed prohibition period

Prohibition period (the size of tabu list) determines how long a move will remain prohibited.

The Size of the Tabu List

Finding the tabu list size that works well on one’s problem is not a trivial task.• Too Small: Not be able to prevent cycling;• Too Long: Create too many restrictions.

Once a move is made, revisiting this solution is prohibited for a number of iterations (called prohibition period).

What is the proper size of the tabu list

The Size of the Tabu List

A “good” size of tabu list:

• Subject to the problems;• Subject to the ‘moves’ in the solution space .

Once a move is made, revisiting this solution is prohibited for a number of iterations (called prohibition period).

Can we change tabu list dynamically

The Size of the Tabu List

Basic TS is not capable of avoiding chaotic trapping!

Once a move is made, revisiting this solution is prohibited for a number of iterations T (called prohibition period).

Can we avoid it

Reactive Tabu Search

Characteristics of RTSParameters & Tabu SizeHow does it workPseudo codeSummary

The Reactive Tabu Search

History:

Proposed in 1994 By Robert Battiti and Giampietro Tecchiolli

Characteristics of RTS

RTS maintains the basic ideas of tabu search;

And adds more, A fully automated way of adapting the size to

the problem and to the current evolution of the search;

An escape strategy for diversifying the search when the first mechanism is not sufficient.

Learn while searching

Characteristics of RTS

Self-adjusted tabu list size dynamically Tabu list size increases when there is

evidence that diversification is needed, it decreases when this evidence disappears.

Escape mechanism The escape phase is triggered when too many

solutions are repeated too often. It avoids long cycles and chaotic trapping.

Fast algorithm for using the search history The storage and access of the past events is

executed through a hashing scheme.

Characteristics of RTS

Terminology:

Chaotic attractors are characterized by: a contraction of the areas, so that trajectories starting with

different initial solutions will be compressed in a limited area in the solution space;

a sensitive dependence upon the initial conditions, so that different trajectories will diverge.

RTS: Required Parameters

list_size - tabu list size repetition - the number of repetitions length - cycle length (number of moves) chaotic - the number of often-repeated moves moving_average

an average of the detected cycle length steps_since_last_size_change

the number of iterations executed after the last change of list size

Changing Tabu List Size

If a possible move is found in the tabu list (a repetition occurs):

• Increase Tabu list sizeThis is a basic “immediate reaction”. After some reactions of repetitions, the size is increased and becomes large enough to break any limit cycle and explore new regions.

However, this mechanism may not be sufficient to avoid the “chaotic trapping” of the trajectory in limited area of the solution space. Also, the increased size could be larger than necessary in the later search phases.

Changing Tabu List Size

If a possible move is found in the tabu list (a repetition occurs):

• Decrease Tabu list size– If the number of “chaotic” ( the repetition of a solution is more than

a specific times) is greater than the threshold. => Reset the tabu (escape )

– If a number of iterations is greater than moving_average.– When the list grows too much that all movements become tabu

and none satisfies the aspiration criterion.

• Increase Tabu list size (immediate reaction)

Escape Strategy: Diversification

Escape: execution of a series of random moves.

How far it should escape to?

------Since the long average cycles are evidence of a larger basin, more escape steps are required. Therefore, this number of random moves is proportional to the move_average.

How does it work ?

No

No

No

No

Yes

Yes

Yes

Yes

How does it work ?

No

No

No

Yes

Yes

Yes

Basic Tabu Functions for the QAP Problem

QAP problem

initialization

main

default

escape

Check_for_repetition

Increase/decrease tabu size

Increasing

Decreasing #1

Decreasing #2

Increase/decrease tabu size

Decreasing #3

Decreasing #1

Clean the tabu; Randomly move some steps, the #steps is

proportional to moving_average; update the tabu list

Changing Tabu List Size

Changing Tabu List Size

Applications

Quadratic Assignment Problem (QAP) 0-1 Knapsack Multi-Knapsack with multiple constraints Max-Clique Biquadratic Assignment Problem (Bi-QAP) … …

Summary for Reactive TS

Advantages– Take advantage of history intensively– Avoid chaotic trappings– Explore and exploit the solution space

effectively– Adapt a wide spectrum of problems

Disadvantages– Many parameter tunings– Provides little insight into the solution space

Currentsolution

Defineneighborhood

Evaluateneighborhood

Pick bestNon-Tabuneighbor

Thank You

Thank You

A Classification of TS

Based on discrete dynamical systems.

A Classification of TS

Stochastic methods: Can be obtained by substituting the prohibition rules

with probabilistic generation-acceptance rules for the related deterministic TS methods… …

Types of Tabu List

Strict Tabu Forbid all previous solutions.

Types of Tabu List

Fixed Tabu The size of Tabu list is fixed.

The possibility of cycles remain.

Types of Tabu List

Reactive Tabu Adapt list size to properties of a problem dynamically.

Aspiration Criterion

top related