consider a genetic algorithm (GA) for the choice of 
the number of layers, the number of neurons in each 
layer and the type of the activation function of each 
neuron for the multi-layered perceptron in the case 
of semi-supervised learning. 
4.1  ANN in Binary String 
First of all, we choose the perceptron with 5 hidden 
layers and 5 neurons in each hidden layer as the 
maximum size of the structure for ANN. Each node 
is represented by a binary string of length 4. If the 
string consists of zeros (“0000”) then this node does 
not exist in ANN. So, the whole structure of the 
neural network is represented by a binary string of 
length 100 (25x4); each 20 variables represent one 
hidden layer. The number of input neurons depends 
on the problem in hand. ANN has one output layer. 
We use 15 activation functions such as a bipolar 
sigmoid, a unipolar sigmoid, Gaussian, a threshold 
function and a linear function. For determining 
which activation function will be used on a given 
node, the integer that corresponds to its binary string 
is calculated.  
Thus, we use optimization methods for problems 
with binary variables for finding the best structure 
and the optimization method for problems with real-
valued variables for the weight coefficient 
adjustment of each structure. 
Although the automated design of the ANN 
structure by self-adapting optimization techniques 
improves their efficiency, it can work unsatis-
factorily with large real-world problems. Therefore, 
the automation of the most important input selection 
can have a significant impact on the efficiency of 
neural networks. In this paper, we use additional bits 
in every string for the choice of relevant variables to 
put them in model. The number of these bits equals 
the number of input variables. If this bit is equal to 
‘0’ then the corresponding input variable is not used 
in the model and is removed from the sample. 
During initialization, the probability for a variable to 
be significant will be equal to 1/3. This idea can help 
end users to avoid the significant and complicated 
procedure of choosing the appropriate set of input 
variables with the necessary impact on the model 
performance.  
For the choice of more flexible models, more 
sophisticated tools must be used. 
4.2  Self-configuring Genetic Algorithm 
If the decision is made to use evolutionary 
algorithms for solving real world optimization 
problems, it will be necessary to choose an effective 
variant of algorithm parameters such as the kind of 
selection, recombination and mutation operators. 
Choosing the right EA setting for each problem is a 
difficult task even for experts in the field of 
evolutionary computation. It is the main problem in 
effectively implementing evolutionary algorithms 
for end users. We can conclude that it is necessary to 
find the solution for the main problem of 
evolutionary algorithms before suggesting for end 
users any EA application for the automated design 
of tools for solving real world problems.  
We propose using the self-configuring 
evolutionary algorithms (SelfCEA) which do not 
need any end user efforts as the algorithm itself 
adjusts automatically to the given problem. In these 
algorithms (Semenkin, 2012), the dynamic 
adaptation of operators’ probabilistic rates on the 
level of the population with centralized control 
techniques is applied. 
Instead of adjusting real parameters, setting 
variants were used, namely the types of selection 
(fitness proportional, rank-based, and tournament-
based with three tournament sizes), crossover (one-
point, two-point, as well as equiprobable, fitness 
proportional, rank-based, and tournament-based 
uniform crossovers (Semenkin, 2012)), population 
control and level of mutation (medium, low, high for 
two mutation types). Each of these has its own initial 
probability distribution which is changed as the 
algorithm executes.  
This self-configuring technique can be used both 
for the genetic algorithm (SelfCGA). In (Semenkin, 
2012) SelfCGA performance was estimated on 14 
test problems from (Finck, 2009). The statistical 
significance was estimated with ANOVA.  
Analysing the results related to SelfCGA 
(Semenkin, 2012), it can be seen that self-
configuring evolutionary algorithms demonstrate 
higher reliability than the average reliability of the 
corresponding single best algorithm but sometimes 
worse than the best reliability of this algorithm. 
SelfCGA can be used for the automated choice 
of effective structures and weight tuning of ANN-
based predictors. For such purposes, classification 
accuracy can be used as a fitness function. 
4.3  Semi-Supervised ANN Design by 
Evolutionary Algorithms 
Generally, any supervised techniques contain two 
stages:
 
1.  extracted attributes or the most relevant of them