Professional Documents
Culture Documents
Heuristic optimization
continuous discrete/combinatorial
local global
population-based trajectory-based
hybrid
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 2 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Overview
1 Heuristic optimization
Introduction, examples, motivation
2 Hill climbing
Algorithm
3 Tabu search
Algorithm
4 Simulated annealing
Algorithm
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 3 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Overview
1 Heuristic optimization
Introduction, examples, motivation
2 Hill climbing
Algorithm
3 Tabu search
Algorithm
4 Simulated annealing
Algorithm
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 4 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: Pathfinding
Example: Pathfinding
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 6 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: Pathfinding
Dijkstra...
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 7 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: Pathfinding
Best-first heuristic...
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 8 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: Pathfinding
Dijkstra...
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 9 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: Pathfinding
Best-first heuristic...
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 10 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: Pathfinding
A*...
Combines Dijkstra
(shortest distance to start)
and best-first heuristic
(shortest distance to goal):
Explores vertex with smal-
lest weighted sum in each
step.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 11 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Definition
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 12 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Definition
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 13 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Definition
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 14 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Definition
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 15 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 16 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Conjecture!
Conjecture!
Conjecture!
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 21 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 22 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 23 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 24 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
n cities ⇒ n! possibilities
5 cities ⇒ 120 possibilities
10 cities ⇒ 3’628’800 possibilities
15 cities ⇒ 1’307’674’368’000 possibilities
49 cities ⇒ 608’281’864’034’267’560’872’252’163’321’295’376’887’
’552’831’379’210’240’000’000’000 possibilities
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 25 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 26 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
TSP - records
1954: 49 cities?
TSP - records
1954: 49 cities!
TSP - records
TSP - records
TSP - records
TSP - records
1987: 2’392 points on a circuit board
TSP - records
1994: 7’397 points on a circuit board
TSP - records
TSP - records
TSP - records
TSP - records
TSP - records
5
1
2
2 c
1
b
1 d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 39 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
5
1
2
2 c
1
b
1 d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 40 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
5
1
2
2 c
1
b
1 d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 41 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
5
1
2
2 c
1
b
1 d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 42 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
MST-based Heuristic
Construct a minimal spanning tree.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 43 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
MST-based Heuristic
Construct a minimal spanning tree.
Duplicate each edge and convert them into directed edges
with opposite directions.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 44 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
MST-based Heuristic
Construct a minimal spanning tree.
Duplicate each edge and convert them into directed edges
with opposite directions.
Starting from a node s, traverse the cycle by using every
edge exactly once, such that you visit every node one time:
- Go to unvisited nodes first.
- If a node has only visited neighbors, take a shortcut to
the next unvisited node, following the unused edges.
Do so, until all edges are used and you are back at s.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 45 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Definition
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 46 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Definition
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 47 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Definition
Can be used both when looking for local and for global optima.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 48 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Definition
Can be used both when looking for local and for global optima.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 49 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Trajectory-based metaheuristics
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 50 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Trajectory-based metaheuristics
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 51 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Trajectory-based metaheuristics
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 52 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Trajectory-based metaheuristics
Overview
1 Heuristic optimization
Introduction, examples, motivation
2 Hill climbing
Algorithm
3 Tabu search
Algorithm
4 Simulated annealing
Algorithm
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 54 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 55 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Hill climbing
Hill climbing algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 56 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Hill climbing
Hill climbing algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Explore neighborhood and evaluate new solution
candidates. Continue with best solution found, if this
improves the target function. (Otherwise we’re in a local
optimum.)
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 57 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Hill climbing
Hill climbing algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Explore neighborhood and evaluate new solution
candidates. Continue with best solution found, if this
improves the target function. (Otherwise we’re in a local
optimum.)
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 58 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Hill climbing
Hill climbing algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Explore neighborhood and evaluate new solution
candidates. Continue with best solution found, if this
improves the target function. (Otherwise we’re in a local
optimum.)
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 59 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Hill climbing
Hill climbing algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Explore neighborhood and evaluate new solution
candidates. Continue with best solution found, if this
improves the target function. (Otherwise we’re in a local
optimum.)
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 61 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 62 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 63 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 64 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 65 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
g
i
h
f
e
a
b
c d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 66 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
c d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 67 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
c d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 68 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
c d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 69 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g
i
h
f
a
e
b c
d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 70 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 71 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 72 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 73 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 74 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 75 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 76 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 77 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 78 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 79 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 80 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 81 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 82 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 83 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 84 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 85 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 86 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 87 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 88 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Example: 3-change
g g
i i
h h
f f
a a
e e
b c b c
d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
g g g g
i i i i
h h h h
f f f f
a a a a
e e e e
b c b c b c b c
d d d d
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 89 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 90 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 91 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 92 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 93 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Terminate
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 94 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Terminate
if no significant improvement occurs after a fixed number of
steps without improvement.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 95 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Terminate
if no significant improvement occurs after a fixed number of
steps without improvement.
after a fixed total number of iterations or computing time.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 96 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Terminate
if no significant improvement occurs after a fixed number of
steps without improvement.
after a fixed total number of iterations or computing time.
when a prescribed target value for the target function is
reached.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 97 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
1 Initialization i = 0:
Initial solution x0 .
2 Iteration i → i + 1:
Sample random solution yi near xi .
yi , if f (yi ) ≤ f (xi )
xi+1 = {
xi , if f (yi ) > f (xi )
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 98 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
1 Initialization i = 0:
Initial solution x0 .
2 Iteration i → i + 1:
Sample random solution yi near xi .
yi , if f (yi ) ≤ f (xi )
xi+1 = {
xi , if f (yi ) > f (xi )
3 Return solution.
Similar to gradient descent, but since we don’t rely on
derivatives, the idea also works in discrete settings.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 99 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
1 Initialization i = 0:
Initial solution x0 .
2 Iteration i → i + 1:
Sample random solution yi near xi .
yi , if f (yi ) ≤ f (xi )
xi+1 = {
xi , if f (yi ) > f (xi )
3 Return solution.
Similar to gradient descent, but since we don’t rely on
derivatives, the idea also works in discrete settings.
Again: What does a random solution near xi mean?
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 100 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 101 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
See demo.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 102 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 103 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
800
2.5
20
600
0
2.0
400
1.5
200
1.0
100 ●
50 50
0.5
10 ●
●
●
●●
●
●●●●
0.0
● ●
10
10
−0.5
60
0
0
0
40
0
0
20
0 10
60
50
80
40
20
50
0
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 104 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Overview
1 Heuristic optimization
Introduction, examples, motivation
2 Hill climbing
Algorithm
3 Tabu search
Algorithm
4 Simulated annealing
Algorithm
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 105 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 106 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 107 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Tabu search
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 108 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Tabu search
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 109 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Tabu search
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 110 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 111 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 113 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 114 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 115 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 116 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 119 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 120 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 121 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 122 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Tabu list
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 123 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Tabu list
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 124 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Tabu list
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 125 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Tabu list
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 126 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Tabu list
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 127 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Invalid solutions
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 128 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Invalid solutions
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 129 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Invalid solutions
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 130 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Invalid solutions
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 131 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Stochastic version.
1 Initialization: Start with random solution.
Evaluate initial solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 132 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Stochastic version.
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Choose a random solution from the neighborhood.
Evaluate the new solution candidate, if its not tabu.
If a better solution is found, continue with this solution,
update tabu list and proceed with step 2. Continue until
termination criterion is reached.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 133 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Stochastic version.
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Choose a random solution from the neighborhood.
Evaluate the new solution candidate, if its not tabu.
If a better solution is found, continue with this solution,
update tabu list and proceed with step 2. Continue until
termination criterion is reached.
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 134 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Stochastic version.
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Choose a random solution from the neighborhood.
Evaluate the new solution candidate, if its not tabu.
If a better solution is found, continue with this solution,
update tabu list and proceed with step 2. Continue until
termination criterion is reached.
3 Return solution.
Appropriate tabus, when optimizing a continous function?
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 135 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Stochastic version.
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Choose a random solution from the neighborhood.
Evaluate the new solution candidate, if its not tabu.
If a better solution is found, continue with this solution,
update tabu list and proceed with step 2. Continue until
termination criterion is reached.
3 Return solution.
Appropriate tabus, when optimizing a continous function?
Disable contrary moves, i.e. moves in the opposite direction.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 136 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 137 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 138 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 139 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 140 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
See demo.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 141 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 142 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
800
2.5
20
600
0
2.0
400
1.5
200
1.0
●●
100 ●
●
●
50 50 ●
●
0.5
●
10 ●●
●
●
● ●●
0.0
● ●
10
10
−0.5
60
0
0
0
40
0
0
20
0 10
60
50
80
40
20
50
0
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 143 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Overview
1 Heuristic optimization
Introduction, examples, motivation
2 Hill climbing
Algorithm
3 Tabu search
Algorithm
4 Simulated annealing
Algorithm
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 144 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
◊
◊ ◊
◊
◊
◊
◊◊
◊
◊
liquid fused
crystal substance
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 145 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
◊◊
◊◊
◊
◊◊ ◊
◊◊
fast cooling
defective crystal
◊ structure
◊ ◊
◊
◊
◊
◊◊
◊
◊
liquid fused
crystal substance
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 146 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
◊◊
◊◊
◊
◊◊ ◊
◊◊
fast cooling
defective crystal
◊ structure
◊ ◊
◊
◊
◊
◊◊
◊
◊
liquid fused slow cooling
crystal substance ◊◊◊
◊◊◊◊
◊◊◊
perfect crystal
structure
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 147 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 149 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 150 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Propose random solution in neighborhood and evaluate it.
If it is better, accept it. If it is worse, accept it only with
some probability.
Iterate step 2 until termination criterion is reached.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 151 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Propose random solution in neighborhood and evaluate it.
If it is better, accept it. If it is worse, accept it only with
some probability.
Iterate step 2 until termination criterion is reached.
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 152 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Idea 1: Accept with fixed probability e.g. 0.1
Propose random solution in neighborhood and evaluate it.
If it is better, accept it. If it is worse, accept it only with
some probability.
Iterate step 2 until termination criterion is reached.
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 153 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Idea 1: Accept with fixed probability e.g. 0.1
Propose random solution in neighborhood and evaluate it.
IfIdea
it is 2:
better, accept it.decreases
Probability If it is worse,
overaccept
time it only with
some probability.
Iterate step 2 until termination criterion is reached.
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 154 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Idea 1: Accept with fixed probability e.g. 0.1
Propose random solution in neighborhood and evaluate it.
IfIdea
it is 2:
better, accept it.decreases
Probability If it is worse,
overaccept
time it only with
some probability.
Iterate
Idee 3:step 2 until termination
Probability decreases criterion is reached.
over time and
3 also
Return solution. depends on quality of solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 155 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Algorithm
1 Initialization: Start with random solution.
Evaluate initial solution.
2 Iteratively:
Propose random solution in neighborhood and evaluate it.
If it is better, accept it. If it is worse, accept it only with
some probability.
Iterate step 2 until termination criterion is reached.
3 Return solution.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 156 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Simulated annealing
1 Initialization:
Start with random solution x0 .
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 157 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Simulated annealing
1 Initialization:
Start with random solution x0 .
2 Iteratively: xi → xi+1
Propose random solution yi in the neighborhood of xi and
f (xi )−f (yi )
accept it to be xi+1 with probability min {1, e Ti
}.
Otherwise xi+1 = xi .
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 158 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Simulated annealing
1 Initialization:
Start with random solution x0 .
2 Iteratively: xi → xi+1
Propose random solution yi in the neighborhood of xi and
f (xi )−f (yi )
accept it to be xi+1 with probability min {1, e Ti
}.
Otherwise xi+1 = xi .
Note:
f (xi )−f (yi )
If f (yi ) ≤ f (xi ) we have e Ti
≥ 1 and yi is accepted.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 159 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Simulated annealing
1 Initialization:
Start with random solution x0 .
2 Iteratively: xi → xi+1
Propose random solution yi in the neighborhood of xi and
f (xi )−f (yi )
accept it to be xi+1 with probability min {1, e Ti
}.
Otherwise xi+1 = xi .
Note:
f (xi )−f (yi )
If f (yi ) ≤ f (xi ) we have e Ti
≥ 1 and yi is accepted.
If T is very large, every solution yi will be accepted.
f (xi )−f (yi ) f (xi )−f (yi )
min{1, e Ti
} = min{1, e ∞ } = min{1, e±0 } = 1
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 160 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Simulated annealing
1 Initialization:
Start with random solution x0 .
2 Iteratively: xi → xi+1
Propose random solution yi in the neighborhood of xi and
f (xi )−f (yi )
accept it to be xi+1 with probability min {1, e Ti
}.
Otherwise xi+1 = xi .
Note:
f (xi )−f (yi )
If f (yi ) ≤ f (xi ) we have e Ti
≥ 1 and yi is accepted.
If T is very large, every solution yi will be accepted.
f (xi )−f (yi ) f (xi )−f (yi )
min{1, e Ti
} = min{1, e ∞ } = min{1, e±0 } = 1
If T →0 only better solutions (f (yi )<f (xi )) will be accepted.
f (xi )−f (yi ) f (xi )−f (yi )
min{1, e Ti
} = min{1, e +0 } = min{1, e±∞ } = 0 or 1
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 161 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
temperature
120
100
80
60
40
20
0
0 100 200 300 400 500 600 700 800 900 1000 iteration i
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 162 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
temperature
120
100
80
60
40
20
0
0 100 200 300 400 500 600 700 800 900 1000 iteration i
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 163 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
temperature
120
100
80
60
40
20
0
0 100 200 300 400 500 600 700 800 900 1000 iteration i
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 164 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
temperature
120
100
80
60
40
20
0
0 100 200 300 400 500 600 700 800 900 1000 iteration i
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 165 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
temperature
120
100
80
60
40
20
0
0 100 200 300 400 500 600 700 800 900 1000 iteration i
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 166 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 167 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 168 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 169 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 170 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
See demo.
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 171 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 172 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
800
2.5
20
600
0
2.0
400
1.5
200
1.0
100 ●
50 50
0.5
●
10 ●●
● ●
●
0.0
●●
10
10
−0.5
60
0
0
0
40
0
0
20
0 10
60
50
80
40
20
50
0
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 173 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
What’s next?
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 174 von 174
Heuristic optimization Hill climbing Tabu search Simulated annealing
What’s next?
Optimization (MSE) Autumn 2022 Prof. Dr. Lin Himmelmann 175 von 174