Lecture_11_Nature - Romsdal Myntforening

advertisement
Heuristic Optimization Methods
Nature-Inspired Metaheuristics
Metaheuristics covered so far
•
•
•
•
Simulated Annealing (SA)
Threshold Acceptance (TA)
Tabu Search (TS)
Variable Neighborhood Search (VNS)
• Iterative Local Search (ILS)
• Guided Local Search (GLS)
• Genetic Algorithms ( GA)
• Scatter Search (SS)
• Ant Colony Optimization (ACO)
• Memetic Algorithms (MA)
• Greedy Randomized Adaptive Search Procedure (GRASP)
2
Other classe of Heuristics
Inspired By Nature
• Evolutionary Algorithms (EA)
– All methods inspired by the evolution
• Swarm Intelligence
– All methods inspired by collective intelligence
3
Examples of Heuristics
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
The Harmony Method,
Shuffled Leaping-Frog Algorithm,
Squeaky Wheel Optimization,
Ruin and Recreate
Intelligent Water Drops
Honey-Bee Mating Dance
Gravitational Search
River Formation Dynamics
Charged System Search
Stochastic Diffusion Search
Particle Swarm Optimization
Artificial Immune Systems
Bee Colony Optimization
Bacterial Foraging Optimization
The Great Deluge Algorithm
4
Swarm Intelligence (SI)
• The collective behaviour of decentralized, self-organized systems, natural or
artificial.
• The expression was introduced by Gerardo Beni and Jing Wang in 1989
• SI systems are typically made up of a population of simple agents interacting
locally with one another and with their environment.
• The agents follow very simple rules, and although there is no centralized
control structure dictating how individual agents should behave, local, and to
a certain degree random, interactions between such agents lead to the
emergence of "intelligent" global behavior, unknown to the individual agents.
• Natural examples of SI include
–
–
–
–
–
ant colonies
bird flocking
animal herding,
bacterial growth
fish schooling.
5
Particle Swarm Optimization (PSO)
• Particle swarm optimization (PSO) is a global optimization algorithm
• problems in which a best solution can be represented as a point or surface in
an n-dimensional space.
• Hypotheses (initial solutions) are plotted in this space and seeded with an
initial velocity, as well as a communication channel between the particles.
• Particles then move through the solution space, and are evaluated according
to some fitness criterion after each timestep.
• Over time, particles are accelerated towards those particles within their
communication grouping which have better fitness values.
• The main advantage of such an approach over other global minimization
strategies such as simulated annealing is that the large number of members
that make up the particle swarm make the technique impressively resilient to
the problem of local minima.
6
Particle Swarm Optimization
• A basic variant of the PSO algorithm works by having a
population (called a swarm) of candidate solutions (called
particles).
• These particles are moved around in the search-space according
to a few simple formulae.
• The movements of the particles are guided by their own best
known position in the search-space as well as the entire swarm's
best known position.
• When improved positions are being discovered these will then
come to guide the movements of the swarm.
• The process is repeated and by doing so it is hoped, but not
guaranteed, that a satisfactory solution will eventually be
7
discovered.
PSO
• Formally, let f: ℝn → ℝ be the fitness or cost function
which must be minimized.
• Let S be the number of particles in the swarm, each
having a position xi ∈ ℝn in the search-space and a
velocity vi ∈ ℝn.
• Let pi be the best known position of particle i and
• let g be the best known position of the entire swarm.
8
Basic PSO Algorithm - init
• For each particle i = 1, ..., S do:
– Initialize the particle's position with a uniformly distributed random
vector: xi ~ U(blo, bup), where blo and bup are the lower and upper
boundaries of the search-space.
– Initialize the particle's best known position to its initial position: pi ← xi
– If (f(pi) < f(g)) update the swarm's best known position: g ← pi
– Initialize the particle's velocity: vi ~ U(-|bup-blo|, |bup-blo|)
• The parameters ω, φp, and φg are selected by the practitioner and
control the behaviour and efficacy of the PSO method.
9
Basic PSO – Main Loop
• Until a termination criterion is met (e.g. number of
iterations performed, or adequate fitness reached),
repeat:
– For each particle i = 1, ..., S do:
•
•
•
•
Pick random numbers: rp, rg ~ U(0,1)
Update the particle's velocity: vi ← ω vi + φp rp (pi-xi) + φg rg (g-xi)
Update the particle's position: xi ← xi + vi
If (f(xi) < f(pi)) do:
– Update the particle's best known position: pi ← xi
– If (f(pi) < f(g)) update the swarm's best known position: g ← pi
• Now g holds the best found solution.
10
Discrete PSO
• Most particle swarm optimization algorithms are designed to
search in continuous domains. However, there are a number of
variants that operate in discrete spaces
• In this algorithm, a particle's position is discrete but its velocity
is continuous. The jth component of a particle's velocity vector
is used to compute the probability with which the jth component
of the particle's position vector takes a value of 1.
• Velocities are updated as in the standard PSO algorithm, but
positions are updated using the following rule:
– If the velocity is positive, position is 1, otherwise 0
11
River Formation Dynamics (RFD)
• RFD can be seen as a gradient version of ACO, based on copying how water
forms rivers by eroding the ground and depositing sediments.
• As water transforms the environment, altitudes of places are dynamically
modified, and decreasing gradients are constructed.
• The gradients are followed by subsequent drops to create new gradients,
reinforcing the best ones.
• By doing so, good solutions are given in the form of decreasing altitudes.
• This method has been applied to solve different NP-complete problems
• The gradient orientation of RFD makes it specially suitable for solving these
problems and provides a good tradeoff between finding good results and not
spending much computational time.
• In fact, RFD fits particularly well for problems consisting in forming a kind
of covering tree.
12
Intelligent Water Drops
• IWD is a swarm-based nature-inspired optimization algorithm,
which has been inspired from natural rivers and how they find
almost optimal paths to their destination.
• These near optimal or optimal paths follow from actions and
reactions occurring among the water drops and the water drops
with their riverbeds.
• In the IWD algorithm, several artificial water drops cooperate to
change their environment in such a way that the optimal path is
revealed as the one with the lowest soil on its links. The
solutions are incrementally constructed by the IWD algorithm.
• Consequently, the IWD algorithm is generally a constructive
population-based optimization algorithm.
13
Stochastic Diffusion Search
• An agent-based probabilistic global search and optimization technique
• Best suited to problems where the objective function can be decomposed into
multiple independent partial-functions.
• Each agent maintains a hypothesis (solution) which is iteratively tested by
evaluating a randomly selected partial objective function parameterised by
the agent's current hypothesis.
• In the standard version of SDS such partial function evaluations are binary,
resulting in each agent becoming active or inactive.
• Information on hypotheses is diffused across the population via one-to-one
inter-agent communication.
• A positive feedback mechanism ensures that, over time, a population of
agents stabilise around the global-best solution.
• SDS is both an efficient and robust search and optimization algorithm, which
has been extensively mathematically described.
14
Charged System Search
•
•
•
•
•
•
•
CSS is an optimization algorithm based on some principles from physics and
mechanics.
CSS utilizes the governing laws of Coulomb and Gauss from electrostatics and the
Newtonian laws of mechanics.
CSS is a multi-agent approach in which each agent is a Charged Particle (CP).
CPs can affect each other based on their fitness values and their separation distances.
The quantity of the resultant force is determined by using the electrostatics laws and
the quality of the movement is determined using Newtonian mechanics laws.
CSS is applicable to all optimization fields; especially it is suitable for non-smooth or
non-convex domains.
This algorithm provides a good balance between the exploration and the exploitation
paradigms of the algorithm which can considerably improve the efficiency of the
algorithm and therefore the CSS also can be considered as a good global and local
optimizer simultaneously.
15
Gravitational Search Algorithm
•
•
•
•
GSA is constructed based on the law of gravity and the notion of mass interactions.
The GSA algorithm uses the theory of Newtonian physics and its searcher agents are
the collection of masses.
In GSA, we have an isolated system of masses. Using the gravitational force, every
mass in the system can see the situation of other masses. The gravitational force is
therefore a way of transferring information between different masses
In GSA, agents are considered as objects and their performance is measured by their
masses.
–
–
–
•
•
All these objects attract each other by a gravity force, and this force causes a movement of all objects
globally towards the objects with heavier masses.
The heavy masses correspond to good solutions of the problem.
The position of the agent corresponds to a solution of the problem, and its mass is determined using a
fitness function.
By lapse of time, masses are attracted by the heaviest mass. We hope that this mass
would present an optimum solution in the search space.
The GSA could be considered as an isolated system of masses. It is like a small
artificial world of masses obeying the Newtonian laws of gravitation and motion.
16
Bee Colony Optimization
•
•
•
•
•
•
The honey bees' effective foraging strategy can be applied to job shop scheduling
problems.
A feasible solution in a job shop scheduling problem is a complete schedule of
operations specified in the problem. Each solution can be thought of as a path from
the hive to the food source.
The makespan of the solution is analogous to the profitability of the food source in
terms of distance and sweetness of the nectar. Hence, the shorter the makespan, the
higher the profitability of the solution path.
We can thus maintain a colony of bees, where each bee will traverse a potential
solution path. Once a feasible solution is found, each bee will return to the hive to
perform a waggle dance. The waggle dance will be represented by a list of "elite
solutions", from which other bees can choose to follow another bee's path.
Bees with a better makespan will have a higher probability of adding its path to the
list of "elite solutions", promoting a convergence to an optimal solution.
Using the above scheme, the natural honey bee's self organizing foraging strategy can
be applied to the job shop scheduling problem.
17
Bee’s Algorithm
1.
2.
3.
4.
5.
Initialise population with random solutions.
Evaluate fitness of the population.
While (stopping criterion not met)
Select sites for neighbourhood search.
Recruit bees for selected sites (more bees for best e sites) and
evaluate fitnesses.
6. Select the fittest bee from each patch.
7. Assign remaining bees to search randomly and evaluate their
fitnesses.
8. End While.
18
Queen-Bee Mating Dance
• N – number of genes.
• The queen has duploid genes, the Drones are
haploid.
• The queen selects a few drones to mate with,
based on fitness.
– The offspring will be N/4 distant from the queen
• The offspring is raised by workers (e.g. VNS)
• The best, if better, replaces the queen.
• Repeat.
19
Bacterial Foraging Optimization
• Bacterial foraging optimization algorithm
(BFOA) has been widely accepted as a global
optimization algorithm of current interest for
distributed optimization and control.
• BFOA is inspired by the social foraging
behavior of Escherichia coli.
• Used for continuous optimization
20
Artificial Immune Systems
• The common techniques are inspired by specific
immunological theories that explain the
function and behavior of the mammalian
adaptive immune system.
• Clonal Selection Algorithm
• Negative Selection Algorithm
• Immune Network Algorithms
• Dendritic Cell Algorithms
21
Clonal Selection Algorithm
• A class of algorithms inspired by the clonal selection theory of
acquired immunity that explains how B and T lymphocytes
improve their response to antigens over time called affinity
maturation.
• These algorithms focus on the Darwinian attributes of the theory
where
– selection is inspired by the affinity of antigen-antibody interactions,
– reproduction is inspired by cell division
– variation is inspired by somatic hypermutation.
• Clonal selection algorithms are most commonly applied to
optimization and pattern recognition domains, some of which
resemble parallel hill climbing and the genetic algorithm
without the recombination operator
22
The Great Deluge Algorithm
• The basic idea is very similar to simulated
annealing or target analysis.
• A new candidate solution is accepted
if it is better or equal than the current solution.
• A candidate solution worse than the current
solution will only be accepted if the penalty of
the candidate solution is less than or equal to a
pre-defined limit called water level.
– But the water is rising
23
The Harmony Method
•
•
•
•
Harmony search tries to find a vector that optimizes (minimizes or maximizes) a
certain objective function.
The algorithm has the following steps:
Step 1: Generate initial random vectors (solutions), and store them in harmony
memory (HM)
Step 2: Generate a new vector . For each component ,
–
–
•
Step 3: Perform additional work if the value in Step 2 came from HM
–
–
•
•
with probability hmcr (harmony memory considering rate), pick the stored value from HM,
with probability 1 − hmcr, pick a random value within the allowed range.
with probability par (pitch adjusting rate), change x by a small amount
with probability 1 − par, do nothing.
Step 4: If new solution is better than the worst vector in HM, replace the worst.
Step 5: Repeat from Step 2 to Step 4 until termination criterion (e.g. maximum
iterations) is satisfied.
24
Harmony Method - Parameters
• hms = the size of the harmony memory. A typical value ranges
from 1 to 100.
• hmcr = the rate of choosing a value from the harmony memory.
Typical value ranges from 0.7 to 0.99.
• par = the rate of choosing a neighboring value. Typical value
ranges from 0.1 to 0.5.
• δ = the amount between two neighboring values in discrete
candidate set.
• fw (fret width, formerly bandwidth) = the amount of maximum
change in pitch adjustment.
• It is possible to vary the parameter values as the search
progresses, which gives an effect similar to simulated annealing.
25
Shuffled Leaping-Frog Algorithm
•
•
•
•
•
•
•
•
SFLA is a memetic meta-heuristic and a population-based cooperative search
metaphor inspired by natural memetics.
The algorithm contains elements of local search and global information exchange.
The SFLA consists of a set of interacting virtual population of frogs partitioned into
different memeplexes.
The virtual frogs act as hosts or carriers of memes where a meme is a unit of cultural
evolution.
The algorithm performs simultaneously an independent local search in each
memeplex.
The local search is completed using a particle swarm optimization-like method
adapted for discrete problems but emphasizing a local search.
To ensure global exploration, the virtual frogs are periodically shuffled and
reorganized into new memplexes in a technique similar to that used in the shuffled
complex evolution algorithm.
In addition, to provide the opportunity for random generation of improved
information, random virtual frogs are generated and substituted in the population
26
Download