Tabu Search

advertisement
Tabu Search
Basic Idea
• Tabu search
– Tabu search is a metaheuristic algorithm that can be used
for solving combinatorial optimization problems, such as
the traveling salesman problem
– Tabu search uses a local or neighborhood search procedure
to iteratively move from a solution x to a solution x' in the
neighborhood of x, until some stopping criterion has been
satisfied.
– To explore regions of the search space that would be left
unexplored by the local search procedure (see local
optimality), tabu search modifies the neighborhood
structure of each solution as the search progresses.
Summer 2010: Dr. M. Ameer Ali
Slide Set 2: State-Space Search 2
Tabu Search
• Tabu Search:
– The solutions admitted to N * (x), the new neighborhood,
are determined through the use of memory structures.
– The search then progresses by iteratively moving from a
solution x to a solution x' in N * (x).
– Perhaps the most important type of memory structure used
to determine the solutions admitted to N * (x) is the tabu
list.
– In its simplest form, a tabu list is a short-term memory
which contains the solutions that have been visited in the
recent past (less than n iterations ago, where n is the
number of previous solutions to be stored (n is also called
the tabu tenure)).
Summer 2010: Dr. M. Ameer Ali
Slide Set 2: State-Space Search 3
Tabu Search
• Tabu Search:
– Tabu search excludes solutions in the tabu list from N * (x).
– A variation of a tabu list prohibits solutions that have
certain attributes (e.g., solutions to the traveling salesman
problem (TSP) which include undesirable arcs) or prevent
certain moves
– Selected attributes in solutions recently visited are labeled
"tabu-active."
– Solutions that contain tabu-active elements are “tabu”. This
type of short-term memory is also called "recency-based"
memory.
Summer 2010: Dr. M. Ameer Ali
Slide Set 2: State-Space Search 4
Tabu Search
• Tabu Search:
– Tabu lists containing attributes can be more effective for
some domains, although they raise a new problem.
– When a single attribute is marked as tabu, this typically
results in more than one solution being tabu.
– Some of these solutions that must now be avoided could be
of excellent quality and might not have been visited.
– To mitigate this problem, "aspiration criteria" are
introduced: these override a solution's tabu state, thereby
including the otherwise-excluded solution in the allowed
set. A commonly used aspiration criterion is to allow
solutions which are better than the currently-known best
solution.
Summer 2010: Dr. M. Ameer Ali
Slide Set 2: State-Space Search 5
Tabu Search
• Tabu Search:
– Local search employs the idea that a given solution S may
be improved by making small changes. Those solutions
obtained by modifying solution S are called neighbors of S.
– The local search algorithm starts with some initial solution
and moves from neighbor to neighbor as long as possible
while decreasing the objective function value.
– The main problem with this strategy is to escape from local
minima where the search cannot find any further
neighborhood solution that decreases the objective function
value.
– Different strategies have been proposed to solve this
problem. One of the most efficient strategies is tabu
search.
Summer 2010: Dr. M. Ameer Ali
Slide Set 2: State-Space Search 6
Tabu Search
• Tabu Search:
– Tabu search allows the search to explore solutions that do
not decrease the objective function value only in those
cases where these solutions are not forbidden.
– This is usually obtained by keeping track of the last
solutions in term of the action used to transform one
solution to the next.
– When an action is performed it is considered tabu for the
next T iterations, where T is the tabu status length.
– A solution is forbidden if it is obtained by applying a tabu
action to the current solution.
Summer 2010: Dr. M. Ameer Ali
Slide Set 2: State-Space Search 7
• Basic Tabu Search Algorithm k := 1.
generate initial solution
WHILE the stopping condition is not met DO
Identify N(s). (Neighbourhood set)
Identify T(s,k). (Tabu set)
Identify A(s,k). (Aspirant set)
Choose the best s’ ε N(s,k) = {N(s) - T(s,k)}+A(s,k).
Memorize s’ if it improves the previous best known solution
s := s’.
k := k+1.
END WHILE
Summer 2010: Dr. M. Ameer Ali
Slide Set 2: State-Space Search 8
Tabu Search
•
Applications:
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Scheduling,
Quadratic assignment,
Frequency assignment,
Car pooling,
Capacitated p-median,
Resource constrained project scheduling (RCPSP),
Vehicle routing problems,
Graph coloring,
Retrieval Layout Problem,
Maximum Clique Problem,
Traveling Salesman Problems,
Database systems,
Nurse Rostering Problem,
Neural Nets,
Grammatical inference,
Knapsack problems,
SAT, Constraint Satisfaction Problems
Telecomunication Network,
Network design,
Global Optimization.
Summer 2010: Dr. M. Ameer Ali
Slide Set 2: State-Space Search 9
Download