The sequential or classic calibration has substantial limitations: (i) it cannot automatically choose the pressure levels and temporal windows (hour of the day) for a given meteorological variable, (ii) it cannot handle dependencies between parameters, and (iii) it cannot easily handle new degrees of freedom. For this reason, genetic algorithms (GAs) were implemented in AtmoSwing Optimizer to perform a global optimization of AMs. It allows for the optimization of all parameters jointly in a fully automatic and objective way. See more details in Horton et al. .
Genetic algorithms are powerful but very demanding in terms of computational capacity. They require thousands of assessments to evolve towards the global optimum and should thus be used on a cluster rather than a single computer.
Many options and operator variants are available for genetic algorithms. Based on systematic tests detailed in Horton et al. , some presets were established in order to ease the use of genetic algorithms in AtmoSwing Optimizer. These presets are listed below, and all options are provided further down.
Some general options are provided below:
The population size is the number of individuals in the population.
The intermediate generation ratio is the ratio of individuals that are kept after natural selection.
The convergence steps is the number of generations without improvement after which the algorithm stops.
The use of batches allows to reduce the computational time by using batches of data instead of the whole dataset.
The batch size is the number of days in each batch.
The number of epochs is the number of times the whole dataset is used for the optimization.
The batch size and the number of epochs are only used if batches are used (in which case the number of generations for convergence is not used).
Size of the population (default 500)
Ratio of the intermediate generation (default 0.5)
Number of generations for convergence (default 30)
Size of the batches
Number of epochs if using batches
Operator options presets¶
Many options and operator variants control the optimization by genetic algorithms. Recommended configurations were predefined in presets.
For all presets, the following options are identical:
The difference between the presets concerns the mutation operator. Providing the following numbers (1-5) to the option
--ga-config is equivalent to these corresponding presets:
Chromosome of adaptive search radius:
Nonuniform mutation (pmut=0.1, Gmr=50, w=0.1):
Nonuniform mutation (pmut=0.1, Gmr=100, w=0.1):
Nonuniform mutation (pmut=0.2, Gmr=100, w=0.1):
Any of these options can be overridden by specifying it along with
The different operators can be controlled with the following options:
Operator choice for natural selection:
ratio elitism (default)
Operator choice for couples selection:
roulette wheel on rank (default)
roulette wheel on score
Operator choice for chromosome crossover:
single point crossover
double points crossover
multiple points crossover
binary-like crossover (default)
Operator choice for mutation:
random uniform constant
random uniform variable
random normal constant
random normal variable
self-adaptation rate chromosome
self-adaptation radius chromosome
Natural selection - tournament probability (default 0.9)
Couples selection - tournament candidates (2/3) (default 3)
Standard crossover - number of points (default 3)
Blending crossover - number of points (default 3)
Blending crossover - beta shared (1/0) (default 1)
Linear crossover - number of points (default 2)
Heuristic crossover - number of points (default 2)
Heuristic crossover - beta shared (1/0) (default 1)
Binary-like crossover - number of points (default 2)
Binary-like crossover - beta shared (1/0) (default 1)
Uniform mutation - probability (default 0.2)
Normal mutation - probability (default 0.2)
Normal mutation - standard deviation (default 0.1)
Variable uniform mutation - generations nb (default 50)
Variable uniform mutation - starting probability (default 0.5)
Variable uniform mutation - end probability (default 0.01)
Variable normal mutation - generations nb for probability (default 50)
Variable normal mutation - generations nb for std deviation (default 50)
Variable normal mutation - starting probability (default 0.5)
Variable normal mutation - end probability (default 0.05)
Variable normal mutation - starting std deviation (default 0.5)
Variable normal mutation - end std deviation (default 0.01)
Non uniform mutation - probability (default 0.1-0.2)
Non uniform mutation - generations nb (default 50-100)
Non uniform mutation - minimum rate (default 0.1)
Multi-scale mutation - probability (default 0.1)