Athens: Heuristic Optimization
Other optimization techniques
Oscar Cubo Medina ([email protected])
Slide 2
Slide 2 text
Outline
1. Ant Colony Optimization
2. Cultural Algorithms
3. Memetic Algorithms
Slide 3
Slide 3 text
ACO: Ant Colony Optimization
l Based on the
behaviour of real
ants
l The key concept is
pheromone
l Multi-agent system
l Each agent is an
artificial ant
l All ants collaborate
in the generation of
the solution
Slide 4
Slide 4 text
ACO: Example
E
A
F
B
Nest Food
C D
2
2
4
4
2
2
2
2
5
2
4
5 2
Slide 5
Slide 5 text
ACO: Example
E
A
Nest C
2
2
4
( )
( )
1
1
0
i
ij
ij
i
k
ij
ij
j N ij
i
d
j N
p
d
j N
β
α
β
α
τ
τ
∈
⎧ ⎛ ⎞
⎪ ×⎜ ⎟
⎜ ⎟
⎪ ⎝ ⎠ ∈
⎪
⎛ ⎞
= ⎛ ⎞
⎨
⎜ ⎟
×⎜ ⎟
⎪ ⎜ ⎟
⎜ ⎟
⎝ ⎠
⎪ ⎝ ⎠
⎪
∉
⎩
∑
Arc Prob
Nest A 2/5
Nest C 1/5
Nest E 2/5
Slide 6
Slide 6 text
ACO: Example
E
A
F
B
Nest Food
C D
2
2
4
4
2
2
2
2
5
2
4
5 2
( ) ( )
1
ij ij
t t
τ τ τ
+ = + Δ
Slide 7
Slide 7 text
ACO: Example
E
A
F
B
Nest Food
C D
2
2
4
4
2
2
2
2
5
2
4
5 2
Slide 8
Slide 8 text
ACO: Example
E
A
F
B
Nest Food
C D
2
2
4
4
2
2
2
2
5
2
4
5 2
Slide 9
Slide 9 text
ACO: Example
E
A
F
B
Nest Food
C D
2
2
4
4
2
2
2
2
5
2
4
5 2 Ant 1: 15
Slide 10
Slide 10 text
ACO: Example
E
A
F
B
Nest Food
C D
2
2
4
4
2
2
2
2
5
2
4
5 2 Ant 1: 15
Ant 2: 11
Slide 11
Slide 11 text
ACO: Example
E
A
F
B
Nest Food
C D
2
2
4
4
2
2
2
2
5
2
4
5 2 Ant 1: 15
Ant 2: 11
Ant 3: 12
Slide 12
Slide 12 text
ACO: Requirements
l Finite set of components (nodes)
l Finite set of transitions between the
components (arcs)
l Assigned a cost for each transition
l Existence of neighbourhood
l Solutions are a sequence of
components
l Each solution has a cost (sum of the costs
of the arcs)
Slide 13
Slide 13 text
Cultural Algorithms
l Based on the learning of culture
l Two spaces:
l Population Space
l Belief Space
l Communication between spaces:
l Best individuals of population influences in
belief space
l The belief space influences the generation
of new individuals
Slide 14
Slide 14 text
CA: Pseudocode
cultural_algorithm
p = create_population();
b = create_beliefs();
for(t=0;end condition; t++) {
fitness = evaluate(p);
b = update(b,accept(p));
p = envolve(p, influence(b));
} // for
Slide 15
Slide 15 text
CA: Types of beliefs
l Normative: Best ranges for variables
l Situational: Set of examples
l Topographical: Best individuals of each
zone
l Domain: Knowledge about the problem
that guides the search
l Historical or temporal: Records the
principal events
Slide 16
Slide 16 text
Memetic Algorithms
l Hybrid population based algorithms
l Local Search + Crossover operators
l Faster than Genetic Algorithms
l Also called: Parallel Genetic Algorithms,
Genetic Local Search…
Slide 17
Slide 17 text
Memetic Algorithms
l Genetic algorithm but:
l Individuals (called agents) has a internal
local search optimization
l Convergence of population implies a
restart procedure
l New operators definitions:
l Cross
l Mutation
l Meta-mutation: local search
Slide 18
Slide 18 text
Memetic Algorithms
memetic_algorithm()
p = create_population();
do {
p = envolve(p);
if convergence(p) {
p = restart_population(p);
} // if
} until (convergence_ma);