## 4 Proposed Approach
Thus, when individuals change their positions in the search space according to the formulas given for the considered component algorithm they can use with some probability \(p_{a}\) the potential solutions stored in the \(i\)-th external archive, where \(i=1,\dots,6\). It should be noted that the value of the probability \(p_{a}\) depends on the considered biology-inspired component algorithm. More specifically, previously conducted research showed that only three components of the COBRA approach, namely the Firefly Algorithm, the Cuckoo Search Algorithm and the Bat Algorithm, demonstrate statistically better results by using an archive for the individual's position adaptation [49]. Thus, only these three algorithms use archives during their execution. First, let us consider the Bat Algorithm [24]. Each \(i\)-th individual from the population in the Bat Algorithm is represented by its coordinates \(x_{i}=(x_{i1},\dots,x_{iD})\) and velocity \(v_{i}=(v_{i1},\dots,v_{iD})\), where \(D\) is the number of dimensions of the search space. The following formulas are used for updating velocities and locations/solutions in the BA approach:  
\[v_{i}(t+1)=v_{i}(t)+(x_{i}(t)-x^{*})\cdot f_{i},\]\[x_{i}(t+1)=v_{i}(t+1)+x_{i}(t), \tag{3}\]  
where \(t\) and \((t+1)\) are the numbers indicating the current and the next iterations, \(x^{*}\) is the current best-found solution by the whole population, and \(f_{i}\) is the frequency of the emitted pulses for the \(i\)-th individual [24]. Thus, with the probability \(p_{a}\) instead of \(x^{*}\) the randomly chosen individual from the external archive (if it is not empty) will be used. It should be noted that the external archive is also selected randomly (it is not necessarily the external archive created for the BA population). It is done with the expectation that individuals will move in multiple directions and, therefore, will be able to find better solutions. For the other two biology-inspired component algorithms, FFA and CSA, the external archives were used in the similar way: with a given probability \(p_{a}\) the current point of attraction \(x^{*}\) was changed to a stored in the archive solution (from a randomly chosen archive). To be more specific, in the CSA approach individuals were sorted according to the objective function [22]. Then part of the worst ones was removed from the population and new individuals instead of them were generated by using the external archives with a given probability \(p_{a}\). On the other hand, in the FFA approach a firefly or individual moves towards another firefly or individual if the latest has a better objective function value [23]. Thus, while using the proposed technique for the FFA approach the firefly can be moved also towards individuals from the external archives. There are two basic steps after the simultaneous execution of all component algorithms: the fuzzy controller makes a decision about the population sizes of components (this step is called competition) and migration, or in other words the exchanging of individuals between populations (co-operation). To be more specific, the size of each population can decrease by removing some of individuals from the population to the minimal value chosen by the end-user or increase (the overall maximum size of all populations together is also established by the end-user beforehand). While increasing the population size or in other words adding new individuals, these new individuals can be generated by using the scheme in Algorithm 2.