number of generations can be substituted with any
other stop condition (for example, time-based
condition).
Finally, the following algorithm is used:
Input: n, N, , ,
, MaxFE, the
GA operators’ parameters.
Initialization:
Randomly generate a population of N
individuals of the length n.
Calculate P(0) using formula (1).
Main loop.
Until MaxFE is reached:
1. Problem decomposition stage: Start
new adaptation period. Fix random
components in chromosomes and in the
probability vector.
2. Subcomponent optimization stage:
Run the GA for
generations:
a. Fitness evaluation. Set
values in fixed positions of chromosomes
according to P(t) using formula (2).
b. Perform selection, crossover
and mutation operations.
c. Create next generation, update
the probability vector P(t) for active
components.
Output: the best-found solution.
3.3 Parallel Modification with
Self-Configuration
Many proposed LSGO approaches with the
subcomponent grouping are based on cooperative
coevolution. In this case, many populations are used,
which evolve different groups of subcomponents. The
cooperation is used on the fitness evaluation step to
define the values of components that were fixed
during the algorithm run. Usually, components of the
best individuals from other populations are used.
We will introduce many parallel populations
using the following scheme. At the main loop, the
total population of size N is divided into K
populations of size M, where =∙. For each
population the problem decomposition and the
subcomponent optimization steps are independently
performed. Thus each population can be viewed as an
island with its own decomposition strategy. When the
adaptation period is over, all individuals from all
populations are collected back into the total
population and the summary statistic is updated. This
step can be viewed as the cooperation.
As is known, the island model GA can outperform
the standard single-population GA for many complex
optimization problems (Gonga et al., 2015). We can
also decrease the computational time by
implementing the GA with a parallel multi-core or
multi-processor computer.
We will use the following approach for self-
configuration of the GA parameters. First, we define
a list of different genetic operators: selection types,
crossover types and values of mutation intensity.
Next, we set probabilities for each operator to be
chosen. All probabilities are initialized with equal
values. During the GA run, we define a combination
of genetic operators, which is used for producing
offspring according to the given probabilities
distribution. Finally, after each generation we
redistribute the probabilities in order to increase
probabilities of operators that have produced
offspring with better fitness values. More detailed
information about the approach can be found in
(Semenkin and Semenkina, 2012).
Also we will provide additional interaction of
subpopulation in the island model using concept
proposed in (Sopov, 2015). We will increase the size
of island with the best performance over some
predefined number of generations (adaptation
period). The migration operation will copy the current
best-found solution to each island to equate the start
positions of all population for the next adaptation
period.
4 EXPERIMENTAL RESULTS
To estimate the proposed approach performance, we
have used 15 large-scale benchmark problems from
the CEC’2013 Special Session and Competition on
Large-Scale Global Optimization (Li et al., 2013a).
These problems represent a wider range of real-world
large-scale optimization problems and provide
convenience and flexibility for comparing various
evolutionary algorithms specifically designed for
large-scale global optimization. There are 3 fully-
separable problems (denoted as f1-f3), 8 partially
separable problems (f4-f7 with a separable
subcomponent and f8-f11 with no separable
subcomponents), 3 problems with overlapping
subcomponents (f12-f14), and 1 non-separable
problem (f15).
The experiment settings are:
Dimensions for all problem are D=1000;
The standard binary encoding is used with
accuracies: =0.1 for f1, f4, f7, f8 and f11-15,
=0.05 for f3, f6 and f10, and =0.01 for f2, f5
and f9;