ant colony optimization and particle swarm · pdf filethomas stidsen 1 dtu-management /...

Post on 15-Mar-2018

213 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1Thomas Stidsen

DTU-Management / Operations Research

Ant Colony Optimization and ParticleSwarm Optimization– welcome to the zoo

Thomas Stidsen

thst@man.dtu.dk

DTU-Management

Technical University of Denmark

2Thomas Stidsen

DTU-Management / Operations Research

OutlineAnt Colony Optimization (ACO)

Particle Swarm Optimization (PSO)

3Thomas Stidsen

DTU-Management / Operations Research

The power of many ...One ant is stupid

But, many ants are smart collectively.

4Thomas Stidsen

DTU-Management / Operations Research

What is Ant Optimization?“Swarm intelligence is a property of systems ofnon-intelligent robots exhibiting collectivelyintelligent behaviour”.

Characteristics:distributed, no central control or data source.ability to change environment.perception of environment, i.e. sensing.

5Thomas Stidsen

DTU-Management / Operations Research

Pheromone Trails

6Thomas Stidsen

DTU-Management / Operations Research

Pheromone Trails Continued

7Thomas Stidsen

DTU-Management / Operations Research

Pheromone Trails Continued Again

8Thomas Stidsen

DTU-Management / Operations Research

The Travelling SalesantWe have given a graph G = (N,A). dij is thedistance between i and j.

Before we start we have k ants in each city.

9Thomas Stidsen

DTU-Management / Operations Research

The actions of an antChoose the next city to go to. The choise is afunction of the distance to the city and theamount of pheromone.

Cities already chosen can not be visited.

When finished: Put out a trail of pheromone onthe TSP-tour.

10Thomas Stidsen

DTU-Management / Operations Research

The pheromone decisionWhen the salesant has to decide which next city tovisit:

0.15

....

0.05

0.01

.....

11Thomas Stidsen

DTU-Management / Operations Research

Choose the next cityThe simple one:pij(t) =

τij(t)∑k∈jτij(t)

Generally the simple method has convergenceproblems as we do not consider the distance dij.

Define the visibility nij : nij = 1dij

.

Now define pij(t) as:

pij(t) =[τij(t)]

α[nij ]β

∑k∈j[τij(t)]α[nij ]β

if transition is allowed, 0

else.

12Thomas Stidsen

DTU-Management / Operations Research

Be aware ofα and β controls the relative importance of trail andvisibility. Note that if α = 0 one would have a randomgreedy algorithm with multiple starting points.

High values of and will lead to stagnation, thatis, early convergence.

Low values of and might lead to weakconvergence.

In papers and values from 0:5 to 5 are often used.Experiments are needed to set them appropriately.

13Thomas Stidsen

DTU-Management / Operations Research

Update of pheromoneBasicly we update the pheromone trail after eachTSP iteration:τij(t + 1) = γτij(t) + ∆τij(t)The factor 0 < γ < 1 is the “evaporation” factor. Thisensures a certain “dynamism” is the system.

14Thomas Stidsen

DTU-Management / Operations Research

Update of pheromon continuedHow should we set ∆τij(t) ?

Arcs not used by the ant does not get anypheromone.

∆τij(t) =∑

k ∆τ kij(t)

15Thomas Stidsen

DTU-Management / Operations Research

Update of pheromone continued again∆τ k

ij(t) = c where c is a constant.

Use the arc length dij of the ant k:∆τ kij(t) = Q

dij

where Q is a constant.

Use the tour length Tk of the ant k: ∆τ kij(t) = Q

Tk

where Q is a constant.

In an elitist strategy we put more emphasis onthe pheromone from the “good” ants.

Good values for γ generally tends to be from 0.5 to0.9.

16Thomas Stidsen

DTU-Management / Operations Research

Stopping criterionRun a fixed number of iterations, or better: Fora fixed amount of time !

Run until stagnation occurs (all ants travel thesame tour).

Run until convergence has occurred (a softversion of stagnation).

17Thomas Stidsen

DTU-Management / Operations Research

ACO - Biological SimilaritiesColony of cooperating individuals.

An (artificial) pheromone track.

A sequence of local moves.

A stochastic decision policy using local

information and no lookahead.

18Thomas Stidsen

DTU-Management / Operations Research

The ACO algorithmInitialise pheromone valuesrepeat

Fora ant k ∈ {1, ...,m}construct k’th ant solution

EndforFor all pheromone values

decrease pheromone (evaporation)EndforFor all good solutions

increase pheromone (intensification)Endfor

until time

19Thomas Stidsen

DTU-Management / Operations Research

ACO - Biological DifferencesTheir moves consists of transitions from state tostate.

Artificial ants has an internal state (= memory).

Artificial ants deposit an amount of pheromonethat is a function of the quality of the solutionfound.

Artificial ants’ timing inpheromone laying isproblem dependent and often does not reflectreal ants’ behaviour.

Extra capabilities are often added to enhancealgorithm performance.

20Thomas Stidsen

DTU-Management / Operations Research

Different NamesAnt Colonies.

Ant Optimization.

Ant Systems.

Collective Intelligence.

21Thomas Stidsen

DTU-Management / Operations Research

Particle Swarm OptimizationMimic a swarm of particles, insects ...

Gradually the swarm zooms in on the optimalsolution

22Thomas Stidsen

DTU-Management / Operations Research

The PSO algorithm

Initialise location and velocity of each particlerepeat

For each particleevaluate objective function for each particle

For each particleupdate best solution

update best global solutionFor each particle

update the velocitycompute the new locations of the articles

until finished()

23Thomas Stidsen

DTU-Management / Operations Research

The parameters are thenxid: The “new” positions ...

vid: The “velocity” of the particle (the newposition of the particle ...)

pid: The “individual” bests of the particles

pgd: The “global” best of all particles

24Thomas Stidsen

DTU-Management / Operations Research

The Updatesvid = w · vid + c1 · r1 · (pid −xid)+ c2 · r2 · (pgd −xid)

xid = xid + vid

The effect is that the good solutions (particle posi-

tions) “attracts” the particles ...

25Thomas Stidsen

DTU-Management / Operations Research

Solved ProblemsPSO is mostly used for continuous optimization(it seems)

There is an example in the book that

To my big surprise, there are actually articles whichdescribe PSO for different combinatorialoptimization problems ...

26Thomas Stidsen

DTU-Management / Operations Research

CommentsFor continuous problems, it is very hard tocompare with gradient methods. PSO could beused if the functions are not differentiable ...

I doubt that it is reasonable for integer problems...

There are a number of suggestions forimprovements in the book.

top related