Global Index (all files) (short | long) | Local contents | Local Index (files in subdir) (short | long)
[NewChrom, NewObjV, SUBPOP, CompQuality] = compete(Chrom, SUBPOP, CompQuality, CompOpt, ObjV, Rank);
COMPETition between subpopulations
This function performs competition between subpopulations.
The selection of the individuals for deletion can be chosen
between:
- uniform at random selection
- fitness-based selection
For fitness-based competition (worst individuals are deleted)
the fitness values/ranking of the population (Rank) is needed.
If omitted or empty single objective scaling using the first
column of the objective values (ObjV) is assumed.
If the objective values of the population (ObjV) are input
parameter and ObjV is output parameter the objective values
are copied, according to the flowing of individuals, saving
the recomputation of the objective values for the whole popu-
lation.
The function can handle multiple objective values per individual.
Syntax: [NewChrom, NewObjV, SUBPOP, CompQuality] = compete(Chrom, SUBPOP, CompQuality, CompOpt, ObjV, Rank)
Input parameters:
Chrom - Matrix containing the individuals of the current
population. Each row corresponds to one individual.
SUBPOP - Vector/scalar containing number of individuals per
subpopulation/number of subpopulations
if omitted or NaN, 1 subpopulation is assumed
CompQuality -
if omitted, NaN or empty, CompQuality is calculated
equivalent to the size of each subpopulation
CompOpt - (optional) Vector containing competition paremeters
CompOpt(1): COMPR - Rate of individuals to be deleted/
included per subpopulation (% of subpopulation)
if omitted or NaN, 0.2 (20%) is assumed
CompOpt(2): Select - number indicating the selection method
of deleting individuals
0 - uniform selection
1 - fitness-based selection (worst individuals are deleted)
if omitted or NaN, 0 is assumed
CompOpt(3): CompMin - number indicating the minimal number of
individuals in a subpopulation
if omitted or NaN, 5 is assumed
ObjV - Column vector or matrix containing the objective values
of the individuals in the current population,
if Rank is omitted, first column is used for
fitness-based competition, saves recalculation
of objective values for population
Rank - (optional) Column vector containing the fitness
values (obtained by ranking) of the individuals
in the current population, best individual has
highest value,
if omitted or empty, single objective scaling
using first column of ObjV is assumed
Output parameters:
NewChrom - Matrix containing the individuals of the current
population after competition.
NewObjV - (optional) Column vector containing the objective
values of the individuals of the current generation
after competition.
SUBPOP - (optional) Vector/scalar containing number of indi-
viduals per subpopulation/number of subpopulations
after competition
See also: geamain, migrate, compdiv
| This function calls | This function is called by |
|---|---|