In the field of programming, optimization is the selection of a best element, with regard to some criterion, from some set of available alternatives, and a metaheuristic is a strategy designed to find, generate, or select a heuristic that may provide a sufficiently good solution to an optimization problem.
|
Individual
|
Represents a solution
|
|
Phenotype
|
The representation of an individual
|
|
Genotype
|
The representation used for solving the problem
|
|
Gene
|
A simple value from the genotype
|
|
Fitness
|
A numeric value that represents the quality of the solution
|
|
Population
|
It is a group of individuals that recombine and mutate their properties. The initial population is randomly created
|
|
Selection of parents:
|
The parents must be selected based on their fitness
|
|
Crossover (Reproduction)
|
The parents inherit their characteristics to their offspring.
|
|
Mutation
|
Individuals modify their characteristics or behavior to improve themselves
|
|
Survival
|
The fittness. individuals survive and can live more time
|
|
Termination Condition
|
If you know the value of good fitness, the algorithm can stop when you find an individual with good fitness
|
BEGIN
INITIALISE population with random candidate solutions;
EVALUATE each candidate;
REPEAT UNTIL ( TERMINATION CONDITION is satisfied ) DO
1 SELECT parents;
2 RECOMBINE pairs of parents;
3 MUTATE the resulting offspring;
4 EVALUATE new candidates;
5 SELECT individuals for the next generation;
OD
END
|
The idea was evolving finite state machines (FSMs). There are five generally usable mutation operators to generate new FSMs:
|
|
Changing an output symbol
|
|
Changing a state transition
|
|
Adding a state
|
|
Deleting a state
|
|
Changing the initial state
|
|
Representation
|
Real-valued vectors
|
|
Parent selection
|
Deterministic (each parent creates one offspring via mutation)
|
|
Recombination
|
None
|
|
Mutation
|
Gaussian perturbation
|
|
Survivor selection
|
(π + π)
|
|
Specialty
|
Self-adaptation of mutation step sizes
|
|
Roulette selection
|
You can imagine a roulette where each section is assigned to an individual. If we have 10 individuals, the roulette is divided into 10 sections. The section size is proportioned to the individualβs fitness.
|
|
Tournament selection
|
It consists of randomly choosing k individuals and selecting the fittest one. k represents the tournament size.
|
|
1 point crossover
|
This technique divides the parents into two sections randomly choosing a crossover point.
|
|
N point crossover
|
The parents are divided into several sections.
|
|
Uniform crossover
|
For each gene, it copies the gene of the first or the second parent randomly.
|
|
Bitwise mutation
|
Consists of randomly selecting one or several genes and changing their values.
|
|
Random resetting
|
Consists of randomly selecting one or several genes and resets its values.
|
|
Uniform mutation
|
It randomly selects one or several genes and chooses a random value between the minimum and maximum values.
|
|
Swap mutation
|
Consists of randomly selecting two elements and swapping their values.
|
|
Representation
|
The individuals are represented as vectors whose entries are the variables values.
|
|
Mutation
|
Mutation is the main operation in Differential Evolution. The new individual π£ π is calculated as follows:
π£π = π₯π1 + πΉ(π₯π2 β π₯π3 ) |
|
Crossover
|
For each variable k of π’ π , the value is selected randomly between π£π or π’π
|
|
Selection
|
The selection is performed by tournament.
|
|
The presence of constraints implies that not all possible combinations of variable values represent valid solutions to the problem at hand.
|
|
Unfortunately, constraint handling is not straightforward in an EA, because the variation operators are typically βblind" to constraints.
|
|
There is no guarantee that even if the parents satisfy some constraints, the offspring will satisfy them as well.
|
|
Static
|
Relies on the ability to specify a distance metric that accurately reflects the difficulty of repairing the solution, which is obviously problem-dependent, and may also vary from constraint to constraint
|
|
Dynamic
|
The fitness function used to evaluate the population is a combination of the distance function for constraint i with a death penalty for all solutions violating constraints
|
|
Individual's Representation
|
The individualsβ solutions are represented as vectors whose inputs are the values of the variables
|
|
Mutation
|
The individualβs position is modified by adding a random number, noise, to each entry
|
|
Recombination
|
In ES there are two recombination variants
|
|
Intermediate recombination
|
The values of the parents are averaged.
|
|
Discrete recombination
|
One of the parentβs values is randomly chosen with equal chance for either parents
|
|
Parent selection
|
Parent selection in ES is completely random, because here the whole population is seen as parent
|
|
Survivor Selection
|
(π, π) selection, where only the best π offspring are selected. (π + π) selection, where the best π individuals (from the union of parents and offspring) are selected
|
|
Specialty
|
Self-adaptation of mutation step sizes
|
|
Terminals
|
Leave nodes in a syntax tree. Variables that can be predefined or randomly generated.
|
|
Functions
|
Internal nodes in a syntax tree. Operations
|
|
Initial population
|
1. Full, where all the trees are randomly created, and all the leaves have the same depth
2. Grow, each node selects an element randomly from either the function set or the terminal set 3. Ramped half-and-half where half of the population is created with the full technique and the other half with grow |
|
Selection
|
Tournament Selection
|
|
Crossover
|
Classic Crossover
|
|
Mutation
|
Subtree mutation, randomly selects a mutation point in a tree and substitutes the subtree rooted there with a randomly generated subtree
|
|
Cij
|
Path from the node i to the node j
|
|
Tij
|
Pheromones in the path from the node i to the node j
|
|
Nij
|
Heuristic in the path from the node i to the node j
|
|
p
|
Evaporation rate, between 0 and 1
|
|
First
|
All the pheromones can be initialized with a small value.
|
|
Second
|
Ants start to move around the graph node by node using the previous equation.
|
|
Last
|
The pheromones must be updated. Ants deposit pheromones to their path proportional to its distance. The pheromones evaporate.
|
No comments yet.
Cheatography n. The art of mapping complex subjects into clear, instantly navigable reference guides.