Presentation is loading. Please wait.

Presentation is loading. Please wait.

MAE 552 – Heuristic Optimization

Similar presentations


Presentation on theme: "MAE 552 – Heuristic Optimization"— Presentation transcript:

1 MAE 552 – Heuristic Optimization
Lecture 22 March 15, 2002 Topic: Tabu Search

2

3 Tabu Search – When we discussed Simulated Annealing the use of the Temperature parameter allowed the search to escape local optima. Another method ‘Tabu Search’ uses another method to accomplish the same task. A ‘memory’ forces the search to explore new areas of the search space.

4 Tabu Search – Unexplored Already Explored Already Explored
Algorithm ‘remembers’ where is was and is directed to new unexplored areas of the search space

5 Tabu Search - Characteristics
Unlike SA, Tabu Search is deterministic The overall approach is to avoid entrainment in cycles by forbidding or penalizing moves which take the solution, in the next iteration, to points in the solution space previously visited ( hence "Tabu"). Tabu search is essentially an extension of steepest descent. At each iteration we examine the entire neighborhood and choose the best move not classified `Tabu.

6 Tabu Search –Origins The Tabu search is fairly new, Glover attributes it's origin to about 1977 (see Glover, 1977). The method is still actively researched, and is continuing to evolve and improve. The Tabu method was partly motivated by the observation that human behavior appears to operate with a random element that leads to inconsistent behavior given similar circumstances. As Glover points out, the resulting tendency to deviate from a charted course, might be regretted as a source of error but can also prove to be source of gain.

7 Tabu Search – Instead the Tabu search proceeds according to the supposition that there is no point in accepting a new (poor) solution unless it is to avoid a path already investigated. This insures new regions of a problems solution space will be investigated in with the goal of avoiding local minima and ultimately finding the desired solution.

8 Tabu Search –Move 1 F(x) X

9 Tabu Search – Move 2 Solution 1 F(x) X

10 Tabu Search – Move 3 Solutions 1 and 2 ‘Tabu’ F(x) X

11 Tabu Search – Move 4 Solutions 1 and 2 and 3 ‘Tabu’ F(x) X
Making previous candidate solutions Tabu allows search to escape local optima

12 Tabu Search – Move 4 Poor Move allows escape from local opt.
Improving Move returns to local opt. F(x) X This is important because a strategy of simply choosing the best move would lead us to get stuck at a local optimum

13 Tabu Search The Tabu search begins by marching to a local minima.To avoid retracing the steps used, the method records recent moves in one or more Tabu lists. The role of the memory can change as the algorithm proceeds. At initialization the goal is make a coarse examination of the solution space, known as 'diversification’. As candidate locations are identified the search is more focused to produce local optimal solutions in a process of 'intensification'.

14 Tabu Search In many cases the differences between the various implementations of the Tabu method have to do with the size, variability, and adaptability of the Tabu memory to a particular problem domain. The Tabu search has traditionally been used on combinatorial optimization problems. The technique is straightforwardly applied to continuous functions by choosing a discrete encoding of the problem. Many of the applications in the literature involve integer programming problems, scheduling, routing, traveling salesman and related problems.

15 Tabu Search –Basic Ingredients
Many solution approaches are characterized by identifying a neighborhood of a given solution which contains other so-called transformed solutions that can be reached in a single iteration. A transition from a feasible solution to a transformed feasible solution is referred to as a move. A starting point for Tabu search is to note that such a move may be described by a set of one or more attributes (or elements). These attributes (properly chosen) can become the foundation for creating an attribute based memory.

16 Tabu Search Following a steepest descent / mildest ascent approach, a move may either result in a best possible improvement or a least possible deterioration of the objective function value. Without additional control, however, such a process can cause a locally optimal solution to be re-visited immediately after moving to a neighbor, or in a future stage of the search process, respectively. To prevent the search from endlessly cycling between the same solutions, a tabu list is created which operates like a short term memory.

17 Tabu Search – Attributes of all explored moves are stored in a list named a running list representing the trajectory of solutions encountered. Then, related to a sublist of the running list a so-called tabu list may be introduced. Based on certain restrictions The tabu list implicitly keeps track of moves (or more precisely, salient features of these moves) by recording attributes complementary to those of the running list.

18 Tabu Search – These attributes will be forbidden from being embodied in moves selected in at least one subsequent iteration because their inclusion might lead back to a previously visited solution. Thus, the tabu list restricts the search to a subset of admissible moves (consisting of admissible attributes or combinations of attributes). The goal is to permit "good" moves in each iteration without re-visiting solutions already encountered.

19 Tabu Search – Pseudo-Code
Given a feasible solution x* with objective function value z*: Let x := x* with z(x) = z*. Iteration: while stopping criterion is not fulfilled do begin (1) select best admissible move that transforms x into x' with objective function value z(x') and add its attributes to the running list (2) perform tabu list management: compute moves (or attributes) to be set tabu, i.e., update the tabu list (3) perform exchanges: x = x', z(x) = z(x'); if z(x) < z* then z* = z(x), x* = x endif endwhile Result: x* is the best of all determined solutions, with objective function value z*.


Download ppt "MAE 552 – Heuristic Optimization"

Similar presentations


Ads by Google