Download presentation
Presentation is loading. Please wait.
Published byKarli Hazelip Modified over 10 years ago
1
1 Tabu Search Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations
2
2 Literature 1. Modern Heuristic Techniques for Combinatorial Problems, (Ed) C.Reeves 1995, McGraw-Hill. Chapter 3. 2.Operations Scheduling with Applications in Manufacturing and Services, Michael Pinedo and Xiuli Chao, McGraw Hill, 2000, Chapter 3.6. or Scheduling, Theory, Algorithms, and Systems, Second Addition, Michael Pinedo, Prentice Hall, 2002, Chapter 14.4
3
3 Basic Concepts Tabu-lists contains moves which have been made in the recent past but are forbidden for a certain number of iterations. Algorithm Step 1. k=1 Select an initial schedule S 1 using some heuristic and set S best = S 1 Step 2. Select S c N(S k ) If the move S k S c is prohibited by a move on the tabu-list then go to Step 2
4
4 If the move S k S c is not prohibited by a move on the tabu-list then S k+1 = S c Enter reverse move at the top of the tabu-list Push all other entries in the tabu-list one position down Delete the entry at the bottom of the tabu-list If F(S c ) < F(S best ) then S best = S c Go to Step 3. Step 3. k = k+1 ; If stopping condition = true then STOP else go to Step 2
5
5 Example. 1 | d j | w j T j Neighbourhood: all schedules that can be obtained through adjacent pairwise interchanges. Tabu-list: pairs of jobs (j, k) that were swapped within the last two moves S 1 = 2, 1, 4, 3 F(S 1 ) = w j T j = 12·8 + 14·16 + 12·12 + 1 ·36 = 500 = F(S best ) F(1, 2, 4, 3) = 480 F(2, 4, 1, 3) = 436 = F(S best ) F(2, 1, 3, 4) = 652 Tabu-list: { (1, 4) }
6
6 S 2 = 2, 4, 1, 3, F(S 2 ) = 436 F(4, 2, 1, 3) = 460 F(2, 1, 4, 3) (= 500)tabu! F(2, 4, 3, 1) = 608 Tabu-list: { (2, 4), (1, 4) } S 3 = 4, 2, 1, 3, F(S 3 ) = 460 F(2, 4, 1, 3) (= 436) tabu! F(4, 1, 2, 3) = 440 F(4, 2, 3, 1) = 632 Tabu-list: { (2, 1), (2, 4) } S 4 = 4, 1, 2, 3, F(S 4 ) = 440 F(1, 4, 2, 3) = 408 = F(S best ) F(4, 2, 1, 3) (= 460)tabu! F(4, 1, 3, 2) = 586 Tabu-list: { (4, 1), (2, 4) } F(S best )= 408
7
7 Practical considerations Tabu tenure: the length of time t for which a move is forbiden t too small - risk of cycling t too large - may restrict the search too much t=7 has often been found sufficient to prevent cycling Number of tabu moves: 5 - 9 If a tabu move is smaller than the aspiration level then we accept the move
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.