lect 6 ts

30
Department of Biomedical, Human Factors, & Industrial Engineering 1 Tabu Search: Fundamentals

Upload: icko-judha-dharma-putra

Post on 16-Jan-2016

216 views

Category:

Documents


0 download

DESCRIPTION

or 3

TRANSCRIPT

Page 1: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering1

Tabu Search: Fundamentals

Page 2: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering2

Scenario #1:

You are playing fetch with your dog

Challenge:

Why does he/she not find the ball if you throw it a different direction?

Page 3: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering3

Scenario #2:

You have misplaced your car keys.

Challenge:

How might you go about locating them?

Page 4: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering4

Key Concepts of Scenario

• Avoid self-defeating actions

• Keep a memory of search experience

• Thoroughly search promising areas

• Examine new search areas if necessary

• Learn from the search

Page 5: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering5

Background

• According to Fred Glover, these were concepts he uncovered– Arose from an AI project course as a student– Trying to get the computer to emulate (human)

problem solving– His scenario involved fellow students solving an

optimization problem– Found they followed a fairly systematic approach

Page 6: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering6

Motivation for Tabu Search

Escaping Trap of Local Optimality

Page 7: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering7

Tabu Search - An Abstract

• A Meta-Heuristic

–Can be used to guide subordinate methods

• Employs adaptive memory functions

–Avoid repeat solutions using a “tabu list”

–Intensifies the search in local regions

• Employs a responsive exploration function

–Diversifies to new areas of search space

Page 8: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering8

Why Memory

• Memory-less searches– Genetic algorithms– Simulated annealing– No explicit use or exploitation of memory

• Rigid memory methods– Branch and bound methods– The solution approach completely dictated

• Inherited memory– Evolutionary methods (genetic algorithms)

Page 9: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering9

Resistance to Memory

• TS use of memory not immediately accepted

• Provides many more degrees of freedom– Result is approaches harder to prove– Not as mathematically tractable

• Use of memory also brings pitfalls– Proper use of memory is not immediately known

• Large part of the tabu search research now is finding integrating principles that provide guidelines for best use of memory

Page 10: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering10

Tabu Search Functions

ShortTerm

LongTerm

IntermediateTerm

Glover, 1990

MEMORY FUNCTIONS

Current Focus

Page 11: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering11

Purpose of Functions

AggressiveExploration

Diversification Intensification

Glover, 1990

STRATEGIC COMPONENTS

Page 12: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering12

Short-Term Tabu Search

Tabu Move

Tabu Search moves among neighborhoodsTabu Search moves among neighborhoods

Page 13: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering13

What are Moves?

• Toggle variable between 0 and 1

• Swap nodes in a routing tour

• Swap nodes between tours

• Insert/delete edge operation on graph

• Interchange variables from basis

There are common moves, but generally There are common moves, but generally moves aremoves arespecific to the application area. specific to the application area. Moves Moves define the neighborhood for the problem.define the neighborhood for the problem.

Page 14: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering14

Definition of Terms

• Tabu – Characteristic provided a move, or attributes of a

move, that put that move “off limits”

• Tabu list– Memory structure of move attributes that are

currently in “off limits” status

• Tabu tenure– Number of iterations for which a move, or its

attributes, remain on the tabu list

Page 15: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering15

What is considered Tabu?

• Keep recent variables from toggling

• Freeze in-place recently moved nodes

• Freeze recently moved edges

• Keep variables in or out of basis

The Tabu restriction simply prevents The Tabu restriction simply prevents revisiting, or cycling which is a non-revisiting, or cycling which is a non-productive process. Needed to escape the productive process. Needed to escape the local optima trap.local optima trap.

Page 16: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering16

Definition of Terms

• Attributes of solutions– Those aspects that define a solution– A move between solutions can be defined as a

change to some defined set of attributes of the solution

• Attributive memory– Stores information about solution attributes that are

changed implementing a move

• Explicit memory– Records the actual solution

Page 17: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering17

Still More Definitions

• Aggressive exploration– Make the best move possible subject to the tabu

restrictions in place

• Cycling– Cycling occurs when, after a series of moves, the

search returns to a previously visited solution and assumes the same search trajectory as previously explored

• Neighborhood– Defined within the context of the application

Page 18: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering18

Interesting Concepts

• Dynamic tabu tenure– Change the tabu tenure for any attribute– Can have each entry in tabu list have varied tenures– Can change the tenure based on knowledge gleaned

from the search• Called a reactive tabu search strategy

• Aspiration criteria– Means to override tabu status– Do not want to miss good solutions– Provides additional flexibility in the search

Page 19: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering19

More on Aspiration Criteria?

• Motivation - do NOT pass on good solutions

• Typical criteria:

–Best-so-far

–Best found in some set of solutions

–Best according to some other criteria

• Multiple types of aspiration criteria are fine

Page 20: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering20

Short-Term Tabu Search• Sufficient for many problems

– Hands-on will only focus on short-term aspects

• Tabu tenure can provide enough of an escape mechanism for an effective search–Concept of non-improving moves forces route out of

local optimality basin–Reactively increasing the tabu tenure improves the

escape mechanism• The more difficult problems require additional tabu

search constructs

Page 21: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering21

Page 22: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering22

Page 23: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering23

A Simple Example

(use the spreadsheet provided)

Page 24: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering24

Maximize:

78x1+ 73x2 + 81x3 + 68x4 + 59x5 + 48x6 + 45x7 + 22x8+ 46x9 +

96x10 + 29x11 + 56x12 + 26x13 + 74x14 + 18x15

Subject to:

29x1+ 33x2 + 28x3 + 7x4 + 6x5 + 27x6 + 6x7 + 1x8+

32x9 + 38x10 + 31x11 + 22x12 + 27x13 + 1x14 + 9x15 153.5

1x1+ 10x2 + 7x3 + 14x4 + 14x5 + 13x6 + 8x7 + 13x8 +

10x9 + 7x10 + 3x11 + 11x12 + 10x13 + 8x14 + 9x15 69

32x1+ 24x2 + 26x3 + 12x4 + 14x5 + 1x6 + 34x7 + 6x8 +

3x9 + 18x10 + 20x11 + 15x12 + 8x13 + 7x14 + 36x15 128

xi = 0,1

MKP Example(should look somewhat familiar)

Page 25: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering25

Consider Simple Model

Page 26: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering26

• Move - Toggle a variable to 1 and another to 0

• Selected Move - Largest change, to include non-improving moves–All moves will remain feasibility

• Tabu list - prohibit variable toggled to 0 from toggling back to 1 again for 4 iterations

Simple Case One

Page 27: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering27

Problems with Simple Case

• Solution does not improve very much

• Never really comes near the constraint limits for feasibility

• A safe search, but not nearly aggressive enough to provide good solutions

Page 28: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering28

• Move Part 1 - Toggle a variable to 1–Pick largest improvement as the move–Allow solution to become infeasible–Consider allowing infeasibility for multiple

steps

• Move Part 2 - Toggle a variable to 0–Continue until feasibility achieved–Drop item from most violated constraint whose

constraint coefficient is largest

A Better Simple Case

Page 29: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering29

• Better initial solutions to start the search• Move and solution attributes you might

want to track• How might we diversify the search?• What type of solutions might we

consider saving in an elite list?• Could we make random moves?

Possible Extensions

Page 30: Lect 6 TS

Department of Biomedical, Human Factors, & Industrial Engineering30

Questions?