Presentation is loading. Please wait.

Presentation is loading. Please wait.

Reactive Tabu Search Contents A brief review of search techniques

Similar presentations


Presentation on theme: "Reactive Tabu Search Contents A brief review of search techniques"— Presentation transcript:

1 Reactive Tabu Search Contents A brief review of search techniques

2 Search Techniques Local search techniques Advanced 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

3 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

4 Tabu Search Tabu List - Memory techniques that help identify cycling

5 Tabu Search Fred Glover (1986): Components of Tabu search
“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

6 An iteration in a tabu search
Basic Idea of TS An iteration in a tabu search Current solution Define neighborhood Evaluate Pick best Non-Tabu neighbor

7 Basic TS Algorithm TS is a local search method.
Tabu search uses a tabu list which stores a fixed number of moves on a FIFO queue. Each time local search makes a move the reverse move is placed on the queue thereby, displacing the last move on the queue. the local search algorithm then prohibits any reverse moves on the tabu list from being made. We viewed the tabu list as a temporarily acquired set of constraints on search Selecting neighborhoods may be done by using a fixed schedule or dynamically selecting Neighborhoods. TS does not visit all possible elements of a neighborhood. The explicit neighborhood is reduced if any element of it is on the tabu list. The algorithm is not allowed to reverse a move which is on the tabu list Tabu search limits the available neighborhood to avoid cycling Local search augmented with Tabu lists may escape local minima

8 Tabu Search Components
Main Components Short Term Memory ( Prevent Cycling ) Medium Term Memory ( Regional Intensification ) Long Term Memory ( Global Diversification ) Aspiration ( Increase flexibility ) Tabu Search principal elements are the followings: 1) Tabu lists T. The tabu list encloses the most recent moves. Its function is to prohibit certain move in a period of time to prevent cycling and avoid local optimum. Heuristic Evaluation Function OPTIMUM(s(x):s∈S(x) - T). This function is used to generate the new solution state s(x) from the current solution state x, which is assumed to be a best "move". If the new solution state improve the objective function value, it would be accepted as the new current solution state. 2) Aspiration Level. The use of an aspiration level function A(s,y), which depends on move s and/or vector y, is one of the tabu search important features. If the objective value c(s(y)) of a move s(y) is less than a prespecified aspiration level A(s,y), then the tabu status of the move may be overridden. The move is now defined as a solution specific move, depending on both s and y. Each solution-specific move is characterized by a set of attributes. The aspiration level might be defined either for a collection of these or for a specific objective. Once a move passes the criterion then its tabu status is overridden. 3) Strategic oscillation. The strategic oscillation is also an important element tabu search, referring to the search stage where the moves are allowed to enter the infeasible region. The search oscillates back and forth between the feasible and infeasible solution space. Thus it provides the opportunities to select paths which otherwise might not be allowed. Strategic oscillation might also be useful for sensitivity analysis by providing a range of solutions. 4) Intermediate and long term memory. The intermediate term memory function records features that are common to a set of best trial solutions during a particular period of the search. The search then continues, using these common features as a heuristics to identify the new solutions. The long term memory function diversifies the search from the current search stage by using a heuristic which is usually generated from the search. It generally works in a manner opposite to the intermediate memory by penalizing good moves rather than rewarding them. This step might achieve an escape from a local optimal solution. Both functions are used for a short number of iterations and then the search continues with the original heuristics or evaluation criteria. Tabu Search Here we briefly review some notations of tabu search [4, 8] and outline the basic steps of the tabu search procedure for solving optimization problems. Tabu search is a meta-heuristic that guides a local heuristic search procedure to explore the solution space beyond local optimum. It is di®erent from the well-known hill-climbing local search techniques because Tabu Search allows moves out of a current solution that makes the objective function worse in the hope that it eventually will achieve a better solution. It is also di®erent from Genetic Algorithm because the Tabu Search includes a memory mechanism. According to Glover’s idea, in order to solve a optimization problem using tabu search, the following components must be defined. Configuration: Configuration is a solution or an assignment of values of variables. Move: A move characterizes the process of generating a feasible solution to the problem that is related to the current solution (i.e. a move is a procedure by which a new solution is generated from the current one). Neighborhood: A neighborhood of the solution is the collection set of all possible moves out of a current configuration. Note that the actual definitions of the neighborhood depend on the particular implementation and the nature of problem. Tabu Conditions: In order to avoid a blind search, tabu search technique uses a prescribed problem-specific set of constraints, known as tabu conditions. They are certain conditions 7 imposed on moves which make some of them forbidden. These forbidden moves are known as tabu . It is done by forming a list of certain size that records these forbidden moves. This is known as tabu list. Aspiration Condition: These are rules that override tabu restrictions, that is, if a certain move is forbidden by tabu restriction, then the aspiration criterion, when satisfied, can make this move allowable. With the above basic components, the Tabu Search algorithm can be described as follows. (i) Start with a certain (current) configuration and evaluate the criterion function for that configuration. (ii) Follow a neighbor of the current configuration, that is, a set of candidate moves. If the best of these moves is not tabu or if the best is tabu, but satisfies the aspiration criterion, then pick that move and consider it to be the new current configuration; otherwise pick the best move that is not tabu and consider it to be the new current configuration. (iii) Repeat (i) and (ii) until some termination criteria are satisfied. The best solution in the final loop is the solution obtained by the algorithm. Note that the move picked at a certain iteration is put in the tabu list so that it is not allowed to be reversed in the next iterations. The tabu list has a certain size, and when the length of the tabu reaches that size and a new move enters that list, then the first move on the tabu list is freed from being tabu and the process continues (i.e. the tabu list is circular).

9 Tabu Search Aspiration function works closely with tabu list, the use of aspiration can be crucial to Tabu search. Aspiration criteria 1. 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.

10 Aspiration Criterion ? Simplest tabu list Mini TSP problem
C2 C3 C4 C5 C1 C3 C4 C2 3 Initial solution C1 C2 C3 C4 C5 f = 100 (accepted) C1 C2 C4 C3 C5 f = 90 C2 C3 C4 C5 ? C2 C1 C4 C3 C5 C1 3 f = 80 (accepted) C2 C3 2 C4

11 Types of Tabu List Strict Tabu Fixed Tabu Reactive 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.

12 The Size of the Tabu List
Prohibition period (the size of tabu list) determines how long a move will remain prohibited. Strict Tabu No fixed prohibition period Fixed Tabu Use fixed prohibition period

13 The Size of the Tabu List
Once a move is made, revisiting this solution is prohibited for a number of iterations (called prohibition period). 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. Tabu Search (TS) is also called Steepest Descent-Mildest Ascent . Fixed TS implements the Local Search technique with two major modifications: 1. it does not terminate a run when the local minimum is found and 2. once a move is made, revisiting this solution is prohibited for a given number of iterations T (called prohibition period). Problem of basic TS: ???????????? On the other hand, reactive schemes aim at obtaining algorithms with an internal feedback (learning) loop, so that the tuning is automated. Reactive schemes are therefore based on memory: information about past events is collected and used in the future part of the search algorithm. The RTS adopts a reactive strategy that is appropriate for the neighborhood structure of the problem: the feedback acts on a single parameter (the prohibition period) that regulates the search diversification and an explicit memory influenced restart is activated periodically. RTS has been successfully applied to a growing number of problems, from Maximum Clique [3] to Graph Partitioning, and RTS is adapted for the ADM minimization problem in WDM traffic grooming. ? What is the proper size of the tabu list

14 The Size of the Tabu List
Once a move is made, revisiting this solution is prohibited for a number of iterations (called prohibition period). A “good” size of tabu list: Subject to the problems; Subject to the ‘moves’ in the solution space . Tabu Search (TS) is also called Steepest Descent-Mildest Ascent . Fixed TS implements the Local Search technique with two major modifications: 1. it does not terminate a run when the local minimum is found and 2. once a move is made, revisiting this solution is prohibited for a given number of iterations T (called prohibition period). Problem of basic TS: ???????????? On the other hand, reactive schemes aim at obtaining algorithms with an internal feedback (learning) loop, so that the tuning is automated. Reactive schemes are therefore based on memory: information about past events is collected and used in the future part of the search algorithm. The TS-based Reactive Local Search (RLS) adopts a reactive strategy that is appropriate for the neighborhood structure of the problem: the feedback acts on a single parameter (the prohibition period) that regulates the search diversification and an explicit memory influenced restart is activated periodically. RLS has been successfully applied to a growing number of problems, from Maximum Clique [3] to Graph Partitioning, and RLS is adapted for the ADM minimization problem in WDM traffic grooming. ? Can we change tabu list dynamically

15 The Size of the Tabu List
Once a move is made, revisiting this solution is prohibited for a number of iterations T (called prohibition period). Basic TS is not capable of avoiding chaotic trapping! ? Tabu Search (TS) is also called Steepest Descent-Mildest Ascent . Fixed TS implements the Local Search technique with two major modifications: 1. it does not terminate a run when the local minimum is found and 2. once a move is made, revisiting this solution is prohibited for a given number of iterations T (called prohibition period). Problem of basic TS: ???????????? On the other hand, reactive schemes aim at obtaining algorithms with an internal feedback (learning) loop, so that the tuning is automated. Reactive schemes are therefore based on memory: information about past events is collected and used in the future part of the search algorithm. The TS-based Reactive Local Search (RLS) adopts a reactive strategy that is appropriate for the neighborhood structure of the problem: the feedback acts on a single parameter (the prohibition period) that regulates the search diversification and an explicit memory influenced restart is activated periodically. RLS has been successfully applied to a growing number of problems, from Maximum Clique [3] to Graph Partitioning, and RLS is adapted for the ADM minimization problem in WDM traffic grooming. Can we avoid it

16 Reactive Tabu Search Characteristics of RTS Parameters & Tabu Size
How does it work Pseudo code Summary

17 The Reactive Tabu Search
History: Proposed in 1994 By Robert Battiti and Giampietro Tecchiolli RTS strives to avoid both smaller-scale cycling and larger-scale chaotic attractors, relying on having a solution history. (Often this solution history is implemented using a hashing scheme) Battiti and Tecchiolli 1994

18 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. RTS implementations, on the other hand, which strive to avoid both smaller-scale cycling and larger-scale chaotic attractors, typically rely on having a complete solution history available. Often this solution history is implemented using a hashing scheme [Battiti and Tecchiolli 1994; Battiti 1995; Barnes and Carlton 1995; Carlton 1995; Nanry 1998], although Battiti and Tecchiolli [1994] also consider other techniques, e.g. the use of digital trees (as a binary-string-keyed binary tree). Learn while searching

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

20 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. As I mentioned before, RTS tries to avoid both smaller-scale cycling and larger-scale chaotic attractors. So what are chaotic attractors? 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.

21 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

22 Changing Tabu List Size
If a possible move is found in the tabu list (a repetition occurs): Increase Tabu list size This 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.

23 Changing Tabu List Size
If a possible move is found in the tabu list (a repetition occurs): Increase Tabu list size (immediate reaction) 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.

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

25 How does it work ? No Yes No Yes No Yes Yes No

26 How does it work ? No Yes No Yes No Yes

27 Basic Tabu Functions for the QAP Problem

28 initialization

29 main default escape

30 Check_for_repetition

31 Increase/decrease tabu size
Decreasing #1 Decreasing #2 Increasing

32 Increase/decrease tabu size
Decreasing #3 Decreasing #1 Reactive mechanism Our reactive search procedure is patterned after that of Battiti and Tecchiolli [1994]. The pseudocode for the metalevel search is presented in Appendix 2. In our previous TS approach, short term memory length (i.e., tabu list length) was allowed to vary adaptively and dynamically by unit increments between preset bounds. In RS, we start with a length of 1 and adaptively adjust upward (downward) by a fractional amount INCREASE (DECREASE) preset as 1.1 (0.9). Each solution is inserted in the solution history binary tree, keyed by the solution checksum; a visit count is associated with each solution. If a solution has been encountered previously (is already in the tree) and has a visit count > REP (preset to 3), a flag, Chaotic, is incremented. If Chaotic > CHAOS (preset to 3), the assumption is made that the search is in the region of an attractor basin, and an escape mechanism is triggered. A moving average cycle length, based on the number of moves since the solution was last seen, is also updated, and is used to help gauge when the short term memory length should be adjusted. An escape which forbids certain moves as having been visited previously (history tree) or recently (tabu list) may well fail for lack of available moves. Therefore, at the start of an escape, we clear all tabu information, disallow the use of oldest-tabu moves, and relax the Suh swap neighborhood to permit the exchange of any critical path operation pair. The short term memory length is then set to the current average cycle length and an equal number of moves are performed (hence no solution on the escape path can be revisited). If no escaping move can be found, short term memory length is decreased (to a minimum of 1) and the escape attempt proceeds. The search continues until an optimal solution is detected, a preset limit on CPU time is exceeded, or a no-moves condition cannot be resolved. (In our tests, the last situation was not observed.) Clean the tabu; Randomly move some steps, the #steps is proportional to moving_average; update the tabu list

33 Changing Tabu List Size

34 Changing Tabu List Size

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

36 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

37 Thank You Thank You

38 A Classification of TS Based on discrete dynamical systems.

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

40 Types of Tabu List Strict Tabu Forbid all previous solutions.

41 Types of Tabu List Fixed Tabu The size of Tabu list is fixed.
The possibility of cycles remain.

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

43 Aspiration Criterion


Download ppt "Reactive Tabu Search Contents A brief review of search techniques"

Similar presentations


Ads by Google