Keywords

1 Introduction

Human learning optimization (HLO) [1] is an emerging metaheuristic algorithm which is motivated by the learning process of human beings to improve the equality of solutions and achieve the purpose of searching for optimization. HLO consists of three learning operators, namely random learning operator (RLO), individual learning operator (ILO) and social learning operator (SLO), that imitate the random learning strategy, the individual learning strategy and the social learning strategy in the learning activities of humans, respectively. Considering the ease of implementation and excellent global search ability, HLO is a very promising optimization algorithm.

To improve the performance of HLO, different kinds of variants of HLO have been proposed. An adaptive simplified human learning optimization (ASHLO) [2] algorithm, which adopts the linear adaptive strategies for pr and pi, is proposed to balance the exploration and exploitation. Inspired by the fact of the IQ of human follows a normal distribution curve [3], a diverse human learning optimization algorithm (DHLO) [4] is proposed to dynamically adjust the value of pi for enhancing the global search ability of the algorithm. Later, a new adaptive mechanism based on the sine-cosine functions [5] is designed to strengthen the search efficiency and reduce the workload of the parameter settings. Recently, a hybrid-coded human learning optimization [6] is proposed to solve mixed-variable optimization problems, in which the binary and discrete variables are optimized by the standard HLO while the real variables are searched out by a continuous HLO. In [7], ASHLO is hybridized with Genetic Algorithms as well as Particle Swarm Optimization (PSO) to solve the supply chain network design problem with possibility of direct shipment, and the obtained results reveal the effectiveness of the hybrid strategy. Besides, the hybrid of HLO and PSO [8] is used to solve groups of the flexible job-shop scheduling problems (FJSP), and the results prove that HLO-PSO can tackle most of single-objective FJSP more efficiently. Nowadays, the HLO algorithms have been successfully applied to knapsack problems [1, 2, 4], multi-dimensional knapsack problems [4, 9] scheduling optimization [10], extractive text summarization [11], financial markets forecasting [5], optimal power flow calculation [12], mixed-variable engineering optimization problems [6], and etc.

The original HLO has advantages of simple structure, few control parameters and easy understanding. Because HLO performs individual learning and social learning by copying the individual optima and social optima, it has an excellent search efficiency and high convergence speed. However, on the other hand, HLO may suffer from the premature convergence problem and fall into local optimum due to these characteristics. Multi-swarm technique has attracted more attention during the recent decade [13] as it can maintain the diversity of the population effectively [14]. Therefore, a multi-population human learning optimization algorithm (MPHLO) is proposed in this paper. Specifically, the population is divided into two sub-populations according to the finesses of individuals, which are named as the elite subpopulation and ordinary subpopulation, respectively, and the information transfers between the subpopulations is achieved by learning the best optima of the population along with the evolutionary process. Besides, two different neighborhood topologies are used in the subpopulations to improve the population diversity and sear efficiency simultaneously.

This paper is arranged as follows. Section 2 presents the proposed multi-populations human learning optimization algorithm in details. Then, MPHLO is applied to tackle CEC14 benchmark functions to evaluate its performance, and results and discussion are provided in Sect. 3. Section 4 concludes this paper.

2 Multi-Populations Human Learning Optimization

The multi-population approaches are useful for maintaining the population diversity, because various sub-populations can be situated in different regions of search space [15]. Inspired by this fact, the population of MPHLO is partitioned into two subpopulations according to the fitness values, i.e. the elite sub-population and ordinary sub-population. The neighborhood topology significantly affects the information interaction between individuals, and therefore controls the exploration and exploitation of the algorithms [13]. To enable MPHLO to maintain diversity and have the fast convergence, different topologies are used for the two subpopulations to generate the new solutions. To maintain the fast convergence of HLO, the global topology is used in the elite subpopulation, and the ring topology is used in the ordinary subpopulation to increase the diversity of the algorithm. In addition, each subpopulation learns from the global optimal individual to prevent the two subpopulations from falling into local optimum due to lack of information exchange. The learning mechanism MPHLO is depicted as Fig. 1 where the red dot represents the individual with the global optimal value of the whole population, the blue dots represent the individual with the optimal fitness value in each subpopulation, and the black dots represent the other individuals of the subpopulations. The blue lines in the two subpopulations represent the connections of individuals. Note that the individuals in the elite subpopulation are fully connected and those in the ordinary population are connected in a ring topology. The two dotted lines with two arrows indicate that the social optimal of the whole population is obtained by comparing the socially optimal values of two subpopulations. Two solid lines with black arrows indicate that the individuals of the two subpopulations learn from the global optima with a certain probability.

Fig. 1.
figure 1

The learning mechanism of MPHLO

MPHLO adopts the binary-coding framework in which each bit corresponds to a basic component of knowledge of problems. Therefore, an individual is initialized as “0” or “1” randomly assuming that there is no prior-knowledge of problems, which is represented by a binary string as Eq. (1)

$$ x_{i} = \left[ {\begin{array}{*{20}c} {x_{i1} } & {x_{i2} } & \cdots & {x_{ij} } & \cdots & {x_{iM} } \\ \end{array} } \right],1 \le i \le N,1 \le j \le M $$
(1)

where \(x_{ij}\) is the j-th bit of i-th individual, N is the number of the population, and M is the length of solution. After initializing all the individuals, the initial population of MPHLO is generated as Eq. (2)

$$ X = \left[ {\begin{array}{*{20}c} {x_{1} } \\ {x_{2} } \\ \vdots \\ {x_{i} } \\ \vdots \\ {x_{N} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {x_{11} } & {x_{12} } & \cdots & {x_{1j} } & \cdots & {x_{1M} } \\ {x_{21} } & {x_{22} } & \cdots & {x_{2j} } & \cdots & {x_{iM} } \\ \vdots & \vdots & {} & \vdots & {} & \vdots \\ {x_{i1} } & {x_{i2} } & \cdots & {x_{ij} } & \cdots & {x_{iM} } \\ \vdots & \vdots & {} & \vdots & {} & \vdots \\ {x_{N1} } & {x_{N2} } & \cdots & {x_{Nj} } & \cdots & {x_{NM} } \\ \end{array} } \right],x_{ij} \in \left\{ {0,1} \right\},1 \le i \le N,1 \le j \le M $$
(2)

2.1 Topologies of MPHLO

As mentioned above, two different topologies, the global topology and the ring topology, are used in the elite subpopulation and ordinary subpopulation, respectively.

2.1.1 Global Topology of Elite Sub-population

The individuals with the fitness value ranked in the top \(\left\lceil {\lambda N} \right\rceil\) are selected to constitute the elite subpopulation and the remaining \(\left( {N{ - }\left\lceil {\lambda N} \right\rceil } \right)\) individual constitute the ordinary subpopulation, where \(\lambda\) is the proportion coefficient. To guarantee the search efficiency, the global topology is adopted in the elite sub-population. In global topology, all the individuals are connected by each other and therefore the optimal information can spread very fast, which can fasten the convergence.

2.1.2 Ring Topology of Ordinary Sub-population

It is known that population topology can increase the diversity of population. Ring topology in which the individuals could interact with its neighbors is one of the most commonly used topologies. Inspired by this, the ordinary subpopulation employs a ring topology to maintain the diversity and explore solution space. In the ring topology, it is a point-to-point closed structure and each individual is only connected with its left and right neighbors. Specifically, each individual is directly connected to k individuals on the left and right adjacent sides according to the number during initialization where k is set to 1 in this paper based on trial-and-error methods for better diversity.

2.2 Learning Operators of MPHLO

In MPHLO, the four learning operators, i.e. the random learning operator, individual learning operator and two social learning operators, are used to generate new candidates, which are described as follows.

2.2.1 Random Learning Operator

Random learning is very important and is always accompanying with the learning process. In the early stage of learning process, people always learn by their random acts due to the lack of understanding of a new problem. In the following study, humans still learn randomly because of interference, forgetting, only knowing partial knowledge of problems and other factors [2, 16]. In addition, in the process of learning, people constantly explore new ways to better solve problems. Thus, MPHLO uses the random operator to simulate random learning as Eq. (3)

$$ x_{ij} = \left\{ {\begin{array}{*{20}c} {0,} & {0 \le r_{1} \le 0.5} \\ {1,} & {else} \\ \end{array} } \right. $$
(3)

where \(r_{1}\) is a stochastic number generated in the interval [0,1].

2.2.2 Individual Learning Operator

Individual learning refers to the individual acquiring new skills and knowledge in the course of behavior and through the results of behavior [17]. People remember useful experience and learn from previous experience, when encountering similar problems, people can avoid mistakes and learn more efficiently. To mimic individual learning of human, MPHLO store personal best experience in an individual knowledge database (IKD), which can be described as Eq. (4)

$$ ikd_{i} = \left[ {\begin{array}{*{20}c} {ikd_{i1} } \\ {ikd_{i12} } \\ \vdots \\ {ikd_{ip} } \\ \vdots \\ {ikd_{iL} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {ik_{i11} } & {ik_{i12} } & \cdots & {ik_{i1j} } & \cdots & {ik_{i1M} } \\ {ik_{i21} } & {ik_{i22} } & \cdots & {ik_{i2j} } & \cdots & {ik_{i2M} } \\ \vdots & \vdots & {} & \vdots & {} & \vdots \\ {ik_{ip1} } & {ik_{ip2} } & \cdots & {ik_{ipj} } & \cdots & {ik_{ipM} } \\ \vdots & \vdots & {} & \vdots & {} & \vdots \\ {ik_{iL1} } & {ik_{iL2} } & \cdots & {ik_{iLj} } & \cdots & {ik_{iLM} } \\ \end{array} } \right],1 \le p \le L $$
(4)

where \(ikd_{i}\) denotes the IKD of person i, L is the number of solutions saved in the IKD, and \(ikd_{ip}\) stands for the p-th best solution of person i.

The individual learning of MPHLO generates new solutions according to the knowledge in the IKD as Eq. (5)

$$ x_{ij} = ikd_{ipj} $$
(5)

2.2.3 Social Learning Operators

In a social environment, people can further develop their abilities and achieve more efficient and effective through learn from each other. In MPHLO, the social learning operators include the social learning operator in the elite subpopulation, the social network learning operator in the ordinary subpopulation and the global social learning operator.

  1. a)

    Social learning operator in the elite subpopulation (SLOES)

    To possess the efficient search ability, like HLO, the best solution of elite subpopulation is also stored in the social knowledge database of elite subpopulation (SKDE) which can be described as Eq. (6)

    $$ SKDE = \left[ {\begin{array}{*{20}c} {skde_{1} } \\ {skde_{2} } \\ \vdots \\ {skde_{s} } \\ \vdots \\ {skde_{Q} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {ske_{11} } & {ske_{12} } & \cdots & {ske_{1j} } & \cdots & {ske_{1M} } \\ {ske_{21} } & {ske_{22} } & \cdots & {ske_{2j} } & \cdots & {ske_{2M} } \\ \vdots & \vdots & {} & \vdots & {} & \vdots \\ {ske_{s1} } & {ske_{s1} } & \cdots & {ske_{sj} } & \cdots & {ske_{sM} } \\ \vdots & \vdots & {} & \vdots & {} & \vdots \\ {ske_{Q1} } & {ske_{Q2} } & \cdots & {ske_{Qj} } & \cdots & {ske_{QM} } \\ \end{array} } \right],1 \le s \le Q $$
    (6)

    where \(skde_{s}\) denotes the s-th solution in the SKDE and Q is the size of the SKDE. Based on the knowledge in the SKDE, MPHLO can perform the social learning operator in the elite subpopulation to generate new solutions as Eq. (7).

    $$ x_{ij} = ske_{sj} $$
    (7)
  2. b)

    Social network learning operator in the ordinary subpopulation (SLOOS)

    In the ordinary subpopulation, each individual stores the best solution of its neighbors in the social knowledge database of neighbors (SKN) for social learning, which can be indicated as Eq. (8)

    $$ SKN = \left[ {\begin{array}{*{20}c} {skn_{1} } \\ {skn_{2} } \\ \vdots \\ {skn_{l} } \\ \vdots \\ {skn_{G} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {sk_{i11} } & {sk_{i12} } & \cdots & {sk_{i1j} } & \cdots & {sk_{i1M} } \\ {sk_{21} } & {sk_{22} } & \cdots & {sk_{2j} } & \cdots & {sk_{2M} } \\ \vdots & \vdots & {} & \vdots & {} & \vdots \\ {sk_{l1} } & {sk_{l2} } & \cdots & {sk_{lj} } & \cdots & {sk_{lM} } \\ \vdots & \vdots & {} & \vdots & {} & \vdots \\ {sk_{i1} } & {sk_{G2} } & \cdots & {sk_{Gj} } & \cdots & {sk_{GM} } \\ \end{array} } \right],1 \le l \le G $$
    (8)

    where \(skn_{l}\) denotes the l-th solution in the SKN and G is the size of the SKN.

    When the ordinary sub-population executes the SLOOS, it chooses the best solution in the SKN and then copies the corresponding value as Eq. (9).

    $$ x_{ij} = skn_{lj} $$
    (9)
  3. c)

    Global social learning operator

    To enhance the information interaction between subpopulations and improve the search result, both of subpopulations learn the social optimum of the whole population with certain probability, which is stored in social knowledge database (SKD) as Eq. (10).

    $$ SKD = \left[ {skd_{1} } \right] = \left[ {\begin{array}{*{20}c} {sk_{11} } & {sk_{12} } & \cdots & {sk_{1j} } & \cdots & {sk_{1M} } \\ \end{array} } \right] $$
    (10)

MPHLO performs the global social learning operator to generate a new solution as Eq. (11)

$$ x_{ij} = sk_{1j} $$
(11)

2.3 Implementation of MPHLO

In summary, the individual in the elite subpopulation yields a new solution by performing the random learning operator, individual learning operator, social learning operator in the elite subpopulation and global social learning operator as Eq. (12)

$$ x_{ij} = \left\{ {\begin{array}{*{20}c} {Rand\left( {0,1} \right)} & {0 \le r_{2} \le pr} \\ {ik_{ipj} } & {pr \le r_{2} \le pi_{{1}} } \\ {ske_{sj} } & {pi_{{1}} \le r_{2} \le pm_{{1}} } \\ {sk_{1j} } & {else} \\ \end{array} } \right. $$
(12)

where \(r_{2}\) is a random number generated between 0 and 1 using a uniform distribution. \(pr\), \(pi_{1}\) and \(pm_{1}\) are three control parameters used to determine the probability of running the different operators. Specifically, \(pr\) is the probability of random learning. In addition to individual learning, social learning of elite subpopulation and the global social learning are represented by the values of \(\left( {pi_{1} - pr} \right)\), \(\left( {pm_{1} - pi_{1} } \right)\) and \(\left( {1 - pm_{1} } \right)\) respectively.

The process of the ordinary subpopulation generating new solutions can be described as Eq. (13)

$$ x_{ij} = \left\{ {\begin{array}{*{20}c} {Rand\left( {0,1} \right)} & {0 \le r_{3} \le pr} \\ {ik_{ipj} } & {pr \le r_{3} \le pi_{{2}} } \\ {skn_{lj} } & {pi_{{2}} \le r_{3} \le pm_{{2}} } \\ {sk_{1j} } & {else} \\ \end{array} } \right. $$
(13)

where \(r_{3}\) is a stochastic number between 0 and 1. \(pr\), \(pi_{2}\) and \(pm_{2}\) are three control three control parameters deciding the probability of running the operators. Specifically, \(pr\) is the probability of random learning. In addition to individual learning, social learning of ordinary subpopulation and the global social learning are represented by the values of \(\left( {pi_{2} - pr} \right)\), \(\left( {pm_{2} - pi_{2} } \right)\) and \(\left( {1 - pm_{2} } \right)\), respectively.

The implementation of MPHLO is presented as Algorithm 1.

Algorithm 1: The framework of MPHLO algorithm

figure a

3 Experimental Results and Discussions

The proposed algorithm MPHLO is compared with a simple human learning optimization (SHLO) [1], moreover, other recent binary optimization algorithms, i.e. artificial algae algorithm (AAA) [18], adaptive harmony search (ABHS) [19], improved binary differential evolution (IBDE) [20], modified binary bat algorithm (MBBA) [21] and time-varying mirrored S-shaped transfer function for binary particle swarm optimization (TVMS-BPSO) [22], were also used in the comparison. The CEC14 benchmark functions [23] were selected to evaluate the performance of these algorithms. A set of parameters of MPHLO were obtained by trail-and -error. For a fair comparison, SHLO, AAA, IBDE, MBBA, ABHS and TVMS-BPSO tales the recommended parameters to tackle these problems. Table 1 illustrates the parameters used in all the algorithms. In addition, all the algorithms ran 100 times on all the function independently. And the population size was set to 50 and the maximum iterations was 3000 in the 10-dimensional functions, for all algorithms. For the 30-dimensional functions, the population size and the maximum iterations were set to 100 and 6000, respectively. Each decision variable was coded by 30 bits.

Table 1. Parameters setting of MPHLO, SHLO, AAA, ABHS, IBDE, MBBA and TVMS-BPSO

The numerical results, the t-test and the Wilcoxon signed-rand test (W-test) results on 10-dimensinal and 30-dimensinal functions are given in Table 2 and Table 4, respectively. The values equal to “1” or “−1” denotes the results obtained by MPHLO is significantly better or worse than the compared algorithms at 95% confidence, while the value equal to “0” represents that the achieved results by MPHLO and the compared algorithm are not statistically different. For clearing analyzing and comparing the performance, the summary results of the t-test and W-test on the 10-dimensinal and 30-dimensinal functions are listed in Table 3 and Table 5, respectively.

3.1 Low-Dimensional Benchmark Functions

From Table 2 and Table 3, it is evident that MPHLO is superior to the other algorithms on 10-dimensional functions. Specifically, MPHLO obtains the optimal Mean values on all the functions. The t-test in Table 3 clearly show that MPHLO is outperform than SHLO, AAA, ABHS, IBDE, MBBA and TVMS-BPSO on 15, 15, 14, 14, 15, 15 out of 30 functions, respectively, at the same time it is inferior to them on none. In addition, the W-test results represent that MPHLO significantly surpasses SHLO, AAA, ABHS, IBDE, MBBA and TVMS-BPSO on all the benchmark functions.

Table 2. Results of all the algorithms on the 10-dimensional benchmark functions
Table 3. Summary result of the t-test and W-test on the 10-dimensional functions

3.2 High-Dimensional Benchmark Functions

Table 4 indicates that MPHLO seek out the best Mean solutions on 13 out of 15 functions, while it is inferior to SHLO, AAA, ABHS, IBDE, MBBA and TVMS-BPSO on 0, 0, 0, 1, 0 and 2 functions. And t-test results of Table 5 show that MPHLO is superior than SHLO, AAA, ABHS, IBDE, MBBA and TVMS-BPSO on 14, 15, 15, 14, 15, and 14 functions, respectively, while it is inferior to them on 0, 0, 0, 1, 0 and 1 functions. Besides, the results of the W-test display that MPHLO is better than AAA, ABHS and MBBA on all the functions. MPHLO is obviously outperform than SHLO, IBDE and TVMS-BPSO on 14, 14 and 14 functions while is worse than them on 0, 1 and 1 functions, respectively. According to the results of Table 4 and Table 5, MPHLO can obtain superior or similar results than SHLO, AAA, ABHS, IBDE, MBBA and TVMS-BPSO on the 30-dimensional benchmark functions. The results indicates that the proposed algorithm can achieve better solutions compared to other binary algorithms.

Table 4. Results of all the algorithms on the 30-dimensional benchmark functions
Table 5. Summary results of the t-test and W-test on the 30-dimensional functions

4 Conclusion

As HLO generates new solutions mainly through copying the individual and social best solutions, it is likely to lose the diversity quickly, and therefore it may easily fall into local optimum. Inspired by the fact that the multiple-populations mechanism can increase the diversity, a new multi-population human optimal learning algorithm is proposed in this paper. According to the fitness value, the population is divided into two subpopulations, which are named as the elite subpopulation and ordinary subpopulation, respectively. The elite population uses a global topology to fasten the convergence of the algorithm, while the ordinary population uses a ring topology to maintain the diversity of the algorithm. Besides, the two subpopulations have a certain probability to learn the global optimal individual of the whole population to guarantee the global search ability of the algorithm. The CEC14 benchmark functions were adopted to test MPHLO for evaluating its performance. The results were compared with those of the other six state-of-art optimization algorithms, i.e. SHLO AAA, ABHS, IBDE, MBBA and TVMS-BPSO, which demonstrate that MPHLO is significantly better than the compared algorithms.