Download f`(x) - Soft Computing Lab.

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Hologenome theory of evolution wikipedia , lookup

Natural selection wikipedia , lookup

Gene expression programming wikipedia , lookup

Saltation (biology) wikipedia , lookup

Introduction to evolution wikipedia , lookup

Population genetics wikipedia , lookup

The eclipse of Darwinism wikipedia , lookup

Transcript
Lecture 12. Penalty Function
Method
 학습목표
Constraint handling을 위한 Penalty function
method에 대해서 좀더 심도 깊게 이해
Outline
Last lecture
Different constraint handling techniques
The penalty function approach
Static, dynamic, adaptive and self-adaptive
Understanding the penalty function method
An introductory example
How and when does it work?
Stochastic ranking: making it explicit
The repairing approach
Summary
Fitness Function Transformation and Penalties
f(x)
f’(x)
infeasible
region
infeasible
region
feasible
optimum
feasible + infeasible
global optimum
For the same objective function, different penalties will lead to
different transformed fitness function
f(x) is a well transformed function (i.e., the penalty function
is good) because the global optimum of f(x) is exactly what we
want.
f’(x) is poorly transformed function because its global
optimum is infeasible.
Under- and Over-penalization
f’(x) is a typical example we under-penalize constraint violations
We might over-penalize constraint violations if we overdo it
F’’(x)
The bumps created by f’’(x) make moving from one
feasible region to the other rather difficult.
Fitness Function Transformation and Selection
Let f(x) = f(x) + rG(x)
where G(x) = S Gi(x), Gi(x) = max {0, gi(x)}
Given two individuals x1 and x2
If f(x1) < f(x2), then individual x1 will have a higher probability of
being selected as a parent than x2
Hence, transform fitness function  change selection prob
f(x1) < f(x2)  f(x1) +rG(x1) < f(x2) + rG(x2)
f(x1) < f(x2) and G(x1) < G(x2): r has no impact on comparison
f(x1) < f(x2) and G(x1) > G(x2): keeping increasing r will
eventually changes the comparison
f(x1) > f(x2) and G(x1) < G(x2): decreasing r will eventually
change the comparison
How to set an appropriate penalty coefficient r?
 How to compare individuals?
Stochastic Ranking
Since penalty function  change fitness  change selection
probability  why not change selection directly?
Stochastic ranking is a special rank-based selection scheme that
handles constraints. There will be no need to modify an
evolutionary algorithm other than selection. No penalty function is
needed.
Let Pf be the probability of using the objective function only for
comparison in ranking
DO the following until no change in ranking
FOR i := 1 TO m-1 DO …
Pf > 0.5  most comparisons based on f(x)  constrains not
considered  likely to get infeasible solutions
Pf < 0.5  based on G(x)  likely to get feasible solutions
A Coevolutionary Model for Constraint Satisfaction
We consider the case where a constraint is satisfied or not
population of
constraints P1
population of
solutions (may be infeasible) P2
(1)
an individual
Ii
(2)
Ij
an individual
fitness evaluation of Ij(2)
-It depends on the number of
individuals in P1 that can be
satisfied
-It also depends on the fitness
of those P1 individuals that
Ij(2) can satisfy
different constraints  fitter  more attractive for P2 individuals
 more individuals reproduced for dealing with these constraints
fitness evaluation of Ii(1)
-It depends on the number of
individuals in P2 which cannot
satisfy Ii(1)
Repairing Infeasible Individuals (I)
One way to deal with infeasible solutions is to repair them.
The evolutionary process itself does not do anything to prevent
infeasible solutions from being generated.
Given an infeasible solution x, how can we repair it to a feasible
solution x’?
Do we replace x by x’ in the population?
population of
search points (solutions)
can be feasible
or infeasible
Is
This population evolves
population of
reference points
must be
feasible solutions
Ir
The population may change,
but doesn’t evolve
Repairing Infeasible Individuals (II)
Let Is be an infeasible solution, repair as follows:
Select a reference point Ir;
Create a sequence of points zi between Is and Ir:
zi = ai Is + (1 – ai) Ir
where 0 < ai < 1 can be generated either at random or
deterministically
Stop 2 when a feasible zi is found
This zi is the repaired Is; Its objective value will be Is’s fitness
Replace Is by zi with probability Pr
If zi is better than Ir, replace it
Repairing Infeasible Individuals (III)
infeasible feasible
zi
z2
z1
Is
Ir
feasible
Implementation details:
How to select Ir?: uniformly at random, according to fitness of Ir,
according to distance between Ir and Is
How to determine ai?: uniformly at random between 0 and 1,
follow a fixed sequence, e.g., ½, ¼, 1/8, …
How to choose Pr?: It is normally small, should be < 0.5
How to find reference points initially?: preliminary exploration by
an algorithm, human intelligence/knowledge
Repairing, Lamarckian Evolution and Baldwin Effect
Repairing approach is closely linked to a much wider research
area on Lamarckian evolution and Baldwin effect
This is due to the following two characteristics: 1. Repairing
occurs only within one generation; 2. Repaired individual does not
replace the original one in most cases
Individual repairing  individual learning
Although learned characteristics (i.e., repaired individual) are not
inherited, learning helps and guides evolution. It can explain some
evolutionary phenomena that appear to require Lamarckian
inheritance of acquired characteristics
Lamarckian evolution is often very fast and efficient, but can fall
into a local optimum without being able to escape
Learning appears to smooth out bumps in the search space and
thus helps evolution. Because we do not change genotypes,
diversity will not be lost as quickly as in Lamarckian evolution
Summary
Adding a penalty function
 changing fitness function
 changing selection probabilities
Constraints can be handled by manipulating selection explicitly
 stochastic ranking
Co-evolution can be used in constraint handling
Infeasible solutions can be repaired
Repairing approach is related to many other interesting things
References
T. Back, D.B. Fogel and Z. Michalewicz (eds.), Handbook of
Evolutionary Computation, IOP Pub Press, 1997. (C5.1~C5.6)