Tabu Search or Taboo Search (TS)

Source: Internet
Author: User

The idea of Taboo Search (tabu search or Taboo Search, or TS) was first proposed by Glover (1986), which is an extension of local domain search, it is a global gradual optimization algorithm and a simulation of human intellectual processes. By introducing a flexible storage structure and corresponding taboo rules, the TS algorithm avoids loose searches and disregards the rules to relieve some of the undesirable states, this ensures a variety of effective explorations to achieve global optimization. Compared with simulated annealing and genetic algorithms, ts is another meta-heuristic algorithm with different search features. So far, TS algorithms have achieved great success in the fields of combination optimization, production scheduling, machine learning, circuit design, and neural networks, in recent years, we have gained a lot of research on global function optimization, with great development trends. This chapter mainly introduces the optimization process, principle, algorithm convergence theory and Implementation Technology of Taboo Search.

1. Introduction

Local Domain Search is based on greedy ideas and is continuously searched in the current field of solution. Although the algorithm is easy to implement and easy to understand, its search performance fully depends on the domain structure and initial solution, this is especially true if you are stuck in a local area and cannot guarantee global optimization. For local domain search, to achieve global optimization, the following methods can be attempted: accept inferior solutions with controllability probability to escape local minimums, such as simulated annealing Algorithms; expand the domain search structure, for example, the 2opt of TSP is extended to K-OPT; Multi-Point parallel search, such as evolutionary computing; variable structure Domain Search (Mladenovic et al, 1997); in addition, it is to use the TS taboo strategy to avoid roundabout search as much as possible. It is a deterministic local extremely small jump strategy.

Taboo Search is an embodiment of artificial intelligence and an extension of local domain search. The most important idea of Taboo Search is to mark some objects corresponding to the local optimal solution that has been searched, and try to avoid these objects (rather than absolute prohibiting loops) in further iterative search ), this ensures the exploration of different effective search methods. Taboo Search involves concepts such as neighborhood, TABU list, Tabu 1 ength, candidate, and candidate, we first use an example to understand Taboo Search and its important concepts, and then give the general process of the algorithm.

2. Example of Taboo Search

Combined Optimization is the most widely used field of TS algorithms. Replacement problems, such as TSP and scheduling problems, are typical representatives of a large number of combined optimization problems. They are used to explain the ideas and operations of simple taboo search algorithms. For the replacement of nelements, the number of all permutation states is n !, When N is large, the size of the search space will be an astronomical number, while the Taboo Search requires satisfactory optimization solutions only by exploring a few solutions.

First, we define a nearby search structure for the placement problem, such as SWAP, where the positions of two random points are exchanged, then the neighbor solution of each State is cn2 = n (n 1)/2. It is called moving from one State to another in its neighborhood. Obviously, each moving will lead to a change in the adaptation value (inverse ratio to the target function value. Second, we use a storage structure to differentiate moving attributes, that is, whether the "object" is a taboo. In the following example: Consider the replacement of 7 elements, use the 5 most optimal moves in the corresponding 21 neighborhood solutions of each State (corresponding to the best 5 adaption values) as the regression solution; To prevent roundabout searches to a certain extent, each adopted move will be stuck in three steps (that is, the taboo length) in the taboo table, and will be regarded as a taboo object in the following three consecutive Search Steps; it should be noted that, because the adaptation value of the corresponding state of the current taboo object may be good, you can set a judgment in the algorithm. If the adaptation value of the taboo object is better than the "best so far" state, in this case, we ignore its taboo attributes and still adopt it as the current choice, which is commonly referred to as "contempt" (or "amnesty ).

It can be seen that simple Taboo Search is based on domain search. You can set a taboo table to forbid some operations that have already been performed, and use the contempt criteria to reward some excellent states, the domain structure, resolution, taboo length, taboo object, contempt criteria, and termination criteria are the key factors affecting the performance of the taboo search algorithm. It should be noted that:

(1) first, because TS is an extension of local domain search, the design of domain structure is critical. It determines the generation form and number of domain solutions for the current solution, and the relationship between each solution.

(2) second, to improve the algorithm's optimization time performance, if the domain structure determines a large number of domain solutions (especially for large-scale problems, for example, the swap operation of TSP will generate two domain solutions), you can only try partial swapping results, and the partial solution also takes only a few of the best states.

(3) taboo length is a key parameter. It determines the term of validity of the taboo object, and its size directly affects the search process and behavior of the entire algorithm. In addition, in the above example, the replacement of taboo objects in the taboo table adopts the FIFO method (regardless of the contempt criteria). Of course, you can also use other methods, or even dynamic adaptive methods.

(4) setting the contempt criteria is a key step for the algorithm to avoid loss of excellent states, motivate local searches for good States, and thus achieve global optimization.

(5) For non-taboo candidate states, the algorithm ignores the relationship between them and the adaptive values of the current State, and only considers the optimal state among them as the next decision, in this way, a transient jump (a deterministic Strategy) can be implemented on a very small part ).

(6) In order to make the algorithm have excellent optimization performance or time performance, a reasonable termination criterion must be set to end the entire search process.

In addition, in many cases, the number of banned objects (frequency) is also used to guide the search to get a larger search space. The higher the number of prohibitions, the higher the probability of loop search.

3. Taboo Search Algorithm Process

The introduction of the above example shows the mechanism and steps of Taboo Search. The basic idea of the simple ts algorithm is to give a current solution (initial solution) and a neighborhood, and then determine several partial solutions in the neighborhood of the current solution; if the target value of the optimal explain solution is better than the "best so far" state, the taboo feature is ignored and the current solution and "best so far" state are replaced with it, add the corresponding objects to the taboo table, and modify the term of each object in the taboo table. If the aforementioned implicit solution does not exist, select the optimal non-taboo state as the current solution, ignore the advantages and disadvantages of the existing solution, add the corresponding objects to the taboo table, and modify the term of the objects in the taboo table. Repeat the above iterative search process until the criteria for stopping are met.

The algorithm steps for simple Taboo Search are described as follows:

(1) given algorithm parameters, the initial solution x is randomly generated, and the taboo table is null.

(2) Determine whether the algorithm termination conditions are met? If yes, end the algorithm and output the optimization results. Otherwise, continue with the following steps.

(3) Use the neighborhood function of the current solution to generate all (or several) neighborhood solutions, and then determine several neighborhood solutions.

(4) Does the contempt criteria for the solution satisfy? If yes, replace X with the best state y that meets the contempt criteria to become the new current solution, that is, x = y, replace the earliest taboo object that enters the taboo table with the corresponding taboo object of Y, replace the "best so far" state with Y, and then go to step 6; otherwise, continue the following steps.

(5) determine the taboo attribute of each object corresponding to the solution, and select the optimal state corresponding to the non-taboo object in the solution set as the new current solution, at the same time, use the corresponding taboo object to replace the taboo object element that first enters the taboo table.

(6) Transfer step (2 ).

At the same time, the above algorithm can be described more intuitively in the following flowchart, 4.1.1.

 

We can see that the neighborhood functions, taboo objects, taboo tables, and contempt criteria constitute the key to the Taboo Search Algorithm. Among them, the neighborhood function follows the idea of local neighborhood search, which is used to implement the Neighborhood Search. the settings of taboo tables and taboo objects reflect the features of the algorithm to avoid roundabout search, it is a reward for the good status and a relaxation of the taboo strategy. It should be pointed out that the above algorithm is only a simple Taboo Search framework. A variety of taboo search algorithms can be constructed for the complex and diversified Design of key links. Meanwhile, taboo objects in an algorithm flow can be search statuses, specific search operations, or even search targets.

In addition, compared with traditional optimization algorithms, TS algorithms have the following features:

(1) poor solution is acceptable in the search process, so it has a strong "mountain climbing" capability;

(2) The new solution is not randomly generated in the neighborhood of the current solution, or better than the "best so far" solution, or a non-taboo best solution, therefore, the probability of selecting a good solution is much higher than that of other solutions. Because the TS algorithm has flexible memory functions and contempt criteria, and can accept inferior solutions during the search process, it has a strong "mountain hill" capability and can jump out of the local optimal solution during the search, the ts algorithm is a global Iterative Optimization Algorithm with strong local search capabilities.

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~

 

Also known as "tabu search algorithm"
In order to find the "global optimal solution", you should not stick to a specific region. The disadvantage of local search is that it is too greedy to search for a certain local area and its neighbors, leading to a blind spot. Taboo Search is a part of the local optimal solution that is found, and consciously avoids it (but not completely isolated) to obtain more search areas. When the rabbits find Taishan, one of them will stay here, and the other will look for it elsewhere. In this way, after a large circle, compare the several peaks found, and mount Everest stands out.

When the rabbits look for it again, they usually consciously avoid Taishan because they know that they have already looked for it and a rabbit is watching it. This is the meaning of "TABU list" in Taboo Search. The rabbit who stays in Taishan will not settle in the house. It will return to the army looking for the highest peak in a certain period of time, because there are a lot of new news at this time, after all, Taishan also has a good height and needs to be re-considered. The team's return time is called "Tabu length" in the Taboo Search; if during the search process, the rabbit who left behind Taishan has not yet returned to the team, but all the places found are the lower-level areas in the North China Plain. The rabbits have to consider selecting Taishan again. That is to say, when a place where rabbits are left behind is superior, beyond the "best to far" state, you can consider this place regardless of whether there are rabbits left behind, this is called "aspiration criterion )". These three concepts are the most different between Taboo Search and general search criteria, and the key to algorithm optimization is here.
Pseudo Code expression:
Procedure tabu search;
Begin
Initialize a string VC at random, clear up the TABU list;
Cur: = VC;
Repeat
Select a new string VN in the neighborhood of VC;
If va> best_to_far then {VA is a string in the TABU list}
Begin
Cur: = Va;
Let va take place of the oldest string in the TABU list;
Best_to_far: = Va;
End else
Begin
Cur: = Vn;
Let VN take place of the oldest string in the TABU list;
End;
Until (termination-condition );
End;
The above procedures have key points:
(1) taboo object: You can select the current value (cur) as the taboo object and put it into the TABU list. You can also put all the values on the same "Contour" as the current value into the TABU list.
(2) In order to reduce the calculation workload, the set of taboo length and taboo table should not be too large, but the taboo length is too small to be searched cyclically, and the taboo table is too small to fall into "Local excellent solution ".
(3) best_to_far operations in the above section are directly assigned with the optimal "unblocking and unblocking". However, sometimes there will be "deadlocks" that are not greater than best_to_far, and all the "deadlocks" that are disabled by the unblocking, at this time, the best solution in the solution should be lifted to continue.
(4) Termination criteria: similar to simulated annealing and genetic algorithms, commonly used algorithms include: given an iterative step number, and terminating the search when the distance from the estimated optimal solution is smaller than a certain range; when the distance from the optimal solution remains unchanged for several consecutive steps, the search is terminated;
Taboo Search is a simulation of the human thinking process itself. It accepts some poor solutions by avoiding some of the local optimal solutions (or memory), thus jumping out of the local search.

Genetic algorithms are a widely used and efficient random search and optimization method developed based on the principle of biological evolution. It is mainly characterized by information exchange between the group search policy and individual in the group. The search does not depend on the gradient information.
Ant Algorithm is the shortest distance that can be used to solve other combined optimization problems. For example, in N cities, all N cities need to be accessed and accessed only once.

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.