* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download f`(x) - Soft Computing Lab.
Survey
Document related concepts
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)