380 likes | 780 Views
TABU SEARCH. WHAT IS TABU SEARCH. TABU SEARCH IS WIDELY USED METAHEURISTIC THAT USES COMMON IDEAS TO ENABLE THE SEARCH PROCESS TO ESCAPE FROM A LOCAL OPTIMUM IN A NON LINEAR PROGRAMMING PROBLEM WITH MULTIPLE LOCAL OPTIMUM. NON LINEAR PROGRAMMING PROBLEM.
E N D
WHAT IS TABU SEARCH • TABU SEARCH IS WIDELY USED METAHEURISTIC THAT USES COMMON IDEAS TO ENABLE THE SEARCH PROCESS TO ESCAPE FROM A LOCAL OPTIMUM IN A NON LINEAR PROGRAMMING PROBLEM WITH MULTIPLE LOCAL OPTIMUM
NON LINEAR PROGRAMMING PROBLEM • IN A NON LINEAR PROGRAMMING PROBLEM OUR OBJECTIVE IS TO FIND THE MAXIMUM VALUE FOR A FUNCTION f(x) BY CHANGING THE VALUE OF x • WE START THE PROBLEM BY TAKING x as 0 AND FIND THE CORRROSPONDING VALUE FOR f(x) AND GO ON INCREASING THE VALUE OF x IN NEXT ITERATIONS
USE OF TABU SEARCH IN NON LINEAR PROGRAMMING PROBLEM • TABU SEARCH USES “LOCAL SEARCH PROCEDURE” TO FIND THE VALUE OF f(x) • IN TABU SEARCH IF A VALUE OF X PRODUCES LOCAL OPTIMUM WHICH IS LESS THAN THE PREVIOUSLY OBTAINED LOCAL OPTIMUM THEN THAT VALUE IS IGNORED AND STORED IN TABU LIST
TABU SEARCH USES MEMORY BY USING TABU LISTS TO FIND BEST LOCAL OPTIMUM THIS IS THE MOST IMPORTANT FEATURE OF TABU SEARCH. TABU SEARCH ALGORITHM SHOULD USE STOPPING RULE TO STOP THE SEARCH PROCESS STOPPING RULE CAN BE NUMBER OF ITERATIONS,FIXED AMOUNT OF CPU TIME.
Minimum spanning tree problem with constraints • The problem is to determine which links should be inserted into the network. • The objective is to minimize the total cost of inserted links that will provide a path between every pair of nodes. • For a network with n nodes, (n-1) links with no cycles are needed to provide a path between every pair of node, such a network is referred to as a spanning tree.
B 30 20 • The above fig. shows a network with 5 nodes, the dashed lines represents the potential links to be inserted into the network. • The number shows next to the each dashed line represent the cost. 10 5 A E C 15 25 40 D
B 30 20 • The problem is to determine which four of these links should be inserted into the network to minimize the total cost of these link. • These problem can be solved as follow, 10 5 A E C 15 25 40 D
Some time the spanning tree problem may contain certain constraints. Such problems can be solved by Tabu search. • Consider the constraints to the above problem, • Link AD can be included only if link DE also included. • At most one of the three links-AD, CD and AB- can be included. • applying penalties • constraint 1:charge a penalty of 100, if it violated. • constraint 2: charge 100, if two of the three links specified constraints are included. Increase this penalty to 200 if all three of the links are included.
There are different steps to solve spanning problem in tabu search, there are • Local search procedure: at each iteration, choose the best immediate neighbor of the current trial solution that is not ruled out by its tabu status. • Neighborhood structure: an immediate neighbor of the current trial solution is one that is reached by adding a single link and then deleting one of the other link in the cycle that is formed by addition of this link.
Form a tabu moves: list the links that should not be deleted. • Addition of tabu moves: at each iteration, after choosing the links to be added to the network, also add this link to the tabu list. • Maximum size of tabu list: when ever a tabu move is added to a full list, delete the older of the two tabu moves that already were in the list. • Stopping rule: stop after three consecutive iterations without an improvement in the best objectives function value.
The previous problem can be solved by tabu search algorithm. • To get started, a reasonable choice for the initial trial solution is the optimal for unconstrained problems. Because these solution violates both of these constraints. So penalties of 100 need to be imposed twice. There for total cost will be, cost = 20 + 10 + 5 + 15 + 200 = 250.
Iteration 1:- the three options for adding a link to network are BE, CD and DE. So the three options for deleting a link would be CE, AC and AB. We can form a table that specify the cost when we adding and deleting nodes. Minimum
B 30 20 • Since the minimum cost will get when adding DE and deleting AD, So graph is as follow, 10 5 A E C 15 25 40 D Cost = 75
Iteration 2: Minimum
B 30 20 10 5 A E C 15 25 40 D Cost = 85
Iteration 3: Minimum
Optimal Solution B 30 20 10 5 A E C 15 25 40 D Cost = 70