Next Article in Journal
The Study of Multiple Classes Boosting Classification Method Based on Local Similarity
Next Article in Special Issue
A Survey of Advances in Landscape Analysis for Optimisation
Previous Article in Journal
Network Creation Games with Traceroute-Based Strategies
Previous Article in Special Issue
Sampling Effects on Algorithm Selection for Continuous Black-Box Optimization
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Diversity Measures for Niching Algorithms

by
Jonathan Mwaura
1,*,
Andries P. Engelbrecht
2 and
Filipe V. Nepomuceno
3
1
Department of Computer Science, The University of Massachusetts Lowell, Lowell, MA 01854, USA
2
Department of Industrial Engineering and Computer Science Division, University of Stellenbosch, Stellenbosch 7602, South Africa
3
Merlynn Intelligent Technologies, Pretoria 0140, South Africa
*
Author to whom correspondence should be addressed.
Algorithms 2021, 14(2), 36; https://doi.org/10.3390/a14020036
Submission received: 14 November 2020 / Revised: 13 January 2021 / Accepted: 18 January 2021 / Published: 26 January 2021

Abstract

:
Multimodal problems are single objective optimisation problems with multiple local and global optima. The objective of multimodal optimisation is to locate all or most of the optima. Niching algorithms are the techniques utilised to locate these optima. A critical factor in determining the success of niching algorithms is how well the search space is covered by the candidate solutions. For niching algorithms, high diversity during the exploration phase will facilitate location and identification of many solutions while a low diversity means that the candidate solutions are clustered at optima. This paper provides a review of measures used to quantify diversity, and how they can be utilised to quantify the dispersion of both the candidate solutions and the solutions of niching algorithms (i.e., found optima). The investigated diversity measures are then used to evaluate the distribution of candidate solutions and solutions when the enhanced species-based particle swarm optimisation (ESPSO) algorithm is utilised to optimise a selected set of multimodal problems.

1. Introduction

For population-based search algorithms such as genetic algorithms (GA), differential evolution (DE) and particle swarm optimisation (PSO), population diversity (note that, for PSO, the term swarm diversity is preferred as the particles (candidate solutions) are said to be part of a swarm. The rest of the paper uses PSO specific terminology.) provides an indication of the amount of exploration or exploitation done in the population/swarm. High diversity means that the solutions are dissimilar which implies that the algorithm is still exploring the search space. Conversely, low diversity means that the algorithm is converging to a solution [1].
Diversity measures are used to provide insight on the search state, i.e., exploring or exploiting [2], as well as to provide information on how an algorithm spreads its candidate solutions within the search space.
Multimodal optimisation involves locating all or most of the optima present in a multimodal problem. These optima could be both local or global. The objective of multimodal optimisation techniques is to find as many of these optima as the designer might find interesting and satisfying for a particular problem [3,4].
For a niching algorithm, a high swarm diversity may either imply a wide exploration of the search space or a diverse set of found optima (or niches), here referred to as solutions. As such, while investigating diversity for niching algorithms, it is important to make distinctions between:
  • Swarm diversity which refers to the diversity with respect to the decision space, i.e., particle positions of the current swarm.
  • Niche diversity which refers to the diversity with respect to the solution space, i.e., actual found solutions. Niching algorithms obtain multiple solutions by forming clusters of a few particles around the positions of optima. The cluster of particles is referred to as a niche while the fittest particle in the niche, the so called neighbourhood best (nbest), represents an optimum. Niche diversity refers to the spread of these neighbourhood bests in the solution space.
  • Phenotypical diversity which refers to the diversity with respect to the objective space, i.e., the diversity with respect to the objective function values of the current particles or the nbests (depending on the research interest in question).
The review and empirical study reported in this paper focus on the first two diversity criteria, in the context of niching algorithms.
The main goal of this paper is to review diversity measures and to propose a set of diversity measures for niching algorithms. As such, the paper does not include a review of PSO and other complimentary algorithms. In addition, whereas the experiments make use of the enhanced species-based PSO niching technique (ESPSO) [5], this paper does not revisit niching algorithms in general or the ESPSO in particular. The ESPSO niching algorithm is only used to illustrate the capability of the diversity measures to quantify particle and niche dispersion in the search space. The reader is directed to find a comprehensive review of PSO niching algorithms in [6,7].
The rest of this paper is organised as follows: A sufficient review of diversity measures is presented in Section 2. The diversity measures are used in Section 3 to quantify the dispersion of particles and niches when the ESPSO is utilised to optimise a selected set of multimodal problems. Section 4 provides a discussion of the results. Conclusions are drawn in Section 5.

2. Diversity Measures Utilised in Population Based Algorithms

In this section, diversity measures’ developed for single solution (non-niching) population-based algorithms are analysed for their applicability as diversity measures for niching algorithms. Where the discussed measures’ applicability is not sufficient for niching algorithms, modifications are proposed to make them suitable for niching algorithms.
Throughout the paper, the following terminology is used:
  • Swarm, S = { x 1 , , x i , x n } ( 2 < n < ) , which refers to all particles in a PSO algorithm. In other complimentary techniques such as a GA, S refers to the population.
  • Candidate solution, x i , which refers to a particle in a swarm, S. A candidate solution is incrementally adapted to find an optimum.
  • Candidate niche, N k = { x i , , x m } ( m n ) , which is formed by a cluster of candidate solutions. A candidate niche can still be refined to find an actual solution, or optimum.
  • Neighbourhood best (nbest), x ^ i N k , which is the particle with the best fitness in a candidate niche. This then represents an optimum.
  • Solution(s): The final neighbourhood best or optimum (i.e., particle with the best fitness) in a particular identified niche.
The remainder of this section focuses on swarm diversity measures in Section 2.1 and niche diversity measures in Section 2.2.

2.1. Swarm Diversity

Diversity with respect to the decision space, i.e., swarm diversity, aims to quantify how an algorithm spreads candidate solutions (particles) in the search/decision space. This section reviews swarm diversity measures. In addition, the discussion focuses on how the reviewed measures can be used to quantify spread in niching algorithms.

2.1.1. Sum of Distances

The sum of distances (SD) measure finds the dissimilarity between candidates solutions, by calculating the square root of the sum of their distances from one another [4]. Equation (1) shows how this is computed:
D SD = x i S x j S j i x i x j 2
where S is the set of all candidate solutions at a given time, while x i and x j are different candidate solutions in S.
Over time, niching algorithms drive particles to cluster around optima (or niches). Thus, at convergence of a niching algorithm, particles will be clustered around a niche, with the best particle of a niche (i.e., the neighbourhood best) representing one of the found optima. Figure 1a illustrates the spread of particles during a search process, while Figure 1b illustrates the convergence of particles, in the form of niches, around positions of optima. Appendix A, Appendix B and Appendix C show progression of particles from initial (random) positions as well as their positions at different iterations during a typical run.
The expected behaviour in niching algorithms is that, when candidate solutions start converging near their neighbourhood bests, intra-niche (distances between particles in the same niche) distances start to approach zero. This means that the swarm diversity at convergence should approach zero. For the case of the SD measure, the expected behaviour is that even at convergence, calculated SD values will be high, in particular if the inter-niche (distances between the best particles of the niches) distances are large. Thus, calculated SD values gives an incorrect impression of diversity at convergence. Figure 2 depicts how swarm diversity compares to inter- and intra-niche distances over time.
In order to adapt the SD measure to correctly quantify spread for a niching algorithm, the SD measure should be computed for each identified candidate niche. The values of the SD measure for each of the candidate niches are then summed and averaged. The modification of Equation (1) to calculate diversity for a niching algorithm is then given by
D m SD = 1 μ k = 1 μ x i N k x j N k j i x i x j 2
where μ is the number of candidate niches, N k is the set of particles in a candidate niche, k , while x i and x j are different candidate solutions in N k .
Computing the swarm diversity as an average of the candidate niches’ diversity eliminates the inter-niche distances problem reported earlier. The illustration shown in Figure 2 depicts that, as niches converge, the average SD over all niches approaches zero. As shown, an averaged candidate niches’ diversity (SD diversity per niche) corresponds to the intra-niche distances, which is the expected behaviour for a niching algorithm.

2.1.2. Sum of Distances to Nearest Neighbour

As the name suggests, the sum of distances to the nearest neighbour (SDNN) [8] calculates diversity of candidate solutions by summing up the pairwise distances of each candidate solution to its closest neighbour [9]. The SDNN is calculated as
D SDNN = x i S min x j j i x i x j 2
While it is reasonable to assume that a pair of nearest neighbours (NN) are particles in the same niche, it is still possible that a candidate solutions’ nearest neighbour is a particle in a niche that has already converged. This may lead to the calculated D SDNN values being high even if niches are converged. As a result, the diversity computed using the SDNN measure may not be as expected during convergence.
For the SDNN measure to be applicable for niching algorithms, the diversity should be calculated for each candidate niche, i.e., the NN of each particle is selected from that particle’s niche. The obtained values should then be summed and averaged to give one SDNN score for the swarm. The adapted SDNN measure is computed as
D m SDNN = 1 μ k = 1 μ x i N k min x j j i x i x j 2
The adapted measure ensures that the computed D m SDNN value is a measure of the sum of intra-niche nearest neighbours distances.
Niching algorithms define niche formation differently. For instance, the ESPSO algorithm [5] utilises the concept of different species in a population to form niches. Broadly, the algorithm starts by firstly identifying species seed which form the candidate niches(N). For the ESPSO, each identified species seed is the best fit particle in a neighbourhood, i.e., the nbest. Species seed is determined by initially sorting all particles, x i in the main swarm, in decreasing order of fitness. In addition, a parameter r s is defined which is the Euclidean distance between the species seed and the boundary of the species (i.e., the candidate niche(N)). Particles that fall within r s distance from the species seed are part of the species. If a particle is found that falls outside the radius of that seed, then it is also added to the set N as a new species seed. As N continues to be filled, subsequent particles are checked against all seeds N adding only those particles that do not fall within any radii of any of the seeds in N. The set of species seed is complete once all particles have been checked. This means that in ESPSO each particle is part of a distinct specie (candidate niche).
Unlike the ESPSO, in other PSO niching algorithms, particles could still belong to a particular niche even if their Euclidean distance from their neighbourhood best is somewhat large. As a result, while a high SDNN value means that particles in a niche are far from each other, a low SDNN value may not indicate niche convergence because the calculated distance is only with respect to NNs and not entire members of a candidate niche. Thus, the modified SDNN measure is affected by how a niching algorithm defines niche membership. A potential solution to this problem is to calculate the average SDNN for each niche and then to average over all niches. In essence, this will yield an average intra-niche NNs distance. However, for the purpose of this work, the D m SDNN measure was calculated as per Equation (4).

2.1.3. Average Distance around the Swarm Centre

The average distance around the swarm centre (ADSC) computes the swarm diversity by calculating the average distance of particles x i to a central point x ¯ in each dimension [10,11]. The central point, x ¯ , can be either the average over all particles or the best particle in the swarm. This diversity measure is calculated as
D ADSC = 1 n i = 1 x i S n x i x ¯ 2
where n is the number of particles in the swarm S.
A small value of the ADSC indicates convergence around the centre of the particles, while a larger value means that the solutions are scattered around the centre.
If the ADSC was to be used to compute the swarm diversity for niching algorithms using a central position or a best particle position, an incorrect niche diversity trend will be illustrated. This is because of the large distances that are likely to exist between a central point and a candidate niche or between the global best position and the candidate niches. As such, the ADSC measure has to be adapted in order to be applied to niching algorithms.
The ADSC measure is adapted for niching algorithms by using the neighbourhood best in a candidate niche as the reference point for all particles in that candidate niche or using an average point over all particles in a candidate niche. For the reported work, the neighbourhood best was used. That is, in Equation (5), the term x ¯ refers to the neighbourhood best position in the candidate niche to which particle x i is a member. Using this adaptation, ADSC is a suitable diversity measure to quantify diversity for niching algorithms because it now computes the average distances of each particle to its neighbourhood best.

2.1.4. Average of the Mean Distance around All Candidate Solutions

The average of the mean distance around all candidate solutions (ADAA) is used to measure the average distance between each pair of particles [11]. This measure is calculated as
D ADAA = 1 n i = 1 n 1 n x i x j S j i n x i x j 2
This measure shares similar characteristics with the SD measure. The only difference is that an average distance of a candidate solution from all other solutions is calculated and an overall average distance is computed. As such, when utilised for calculating diversity for niching solutions, ADAA will encounter similar drawbacks as the SD measure.
To adapt the ADAA measure for niching algorithms, an ADAA diversity value is computed for each candidate niche. The values are then summed for all candidate niches and an average calculated. This ensures that the result implies the average of the mean distance around all candidate solutions in each candidate niche.

2.1.5. Entropy

Entropy is defined as a measure of the uncertainty involved in choosing an element from a source according to some probability distribution [12]. In the context of diversity, a high entropy measure value means a high diversity index [13,14,15,16,17]. In the work presented here, the entropy measure value was normalised between 0 and 1. In this case, 1 represents high diversity while 0 represents no diversity.
To calculate entropy, values of each dimension of particle positions are first placed into a number of bins b. The b-ary entropy measure of the probability distribution is then calculated as
E = w = 1 b p w log b p w
where b refers to the number of bins that the values of particle positions have been binned into. p w refers to the probability of a value of a one-dimensional, particle position to be in a bin w; that is, the number of particles in bin w divided by the total number of particles used in the search space.
To adapt Equation (7) to multi-dimensional problems, each dimension d of particle positions is first placed into b bins. The entropy for each dimension d over all particle positions in that dimension is then calculated. The average is then calculated from the ensuing D entropy measures as
D E ^ = 1 D d = 1 D E d
where D is the number of dimensions for the problem in question. The entropy of each dimension d is computed as E d = w = 1 b p w , d log b p w , d , where p w , d is the probability of a particle position in dimension d to be in w.
The value derived from the entropy measure quantifies the uncertainty of drawing a solution from the swarm of candidate solutions. However, it does not indicate whether there are any solutions converged at certain locations of the objective space. Since the goal of niching algorithms is to locate niches of solutions for different optima, the entropy measure needs to be adapted for niching algorithms. In the work reported here, the entropy, D E ^ , was calculated per niche, then averaged.

2.1.6. Solow–Polasky Diversity

Preuss and Wessing [4] proposed the use of the Solow–Polasky diversity measure (SPD) [18] as a technique to quantify diversity in niching algorithms. The SPD is computed by first creating an n × n matrix, M, whose entries make use of the candidate solutions’ positions. The entries of the matrix are defined as m i , j = exp ( θ x i x j 2 ) . Consequently, M is a correlation matrix between candidate solutions x i and x j [18]. The parameter θ is a user defined variable that normalises the relationship between the distance x i x j 2 and n, which is the total number of candidate solutions [9]. Preuss and Wessing [4] have shown that the choice of the value of θ is problem dependent, and therefore SPD is only efficient if θ is tuned per problem.
Once the matrix is constructed, the SPD value is then calculated as
D SPD = e M 1 e
where e = ( 1 , , 1 ) and e is its transpose.
From Equation (9), it can be deduced that D SPD is the sum of all entries of M 1 .
As shown by Equation (9), the SPD measure relies on the use of the inverse of the matrix, M. This means that, in circumstances where the matrix is singular, an inverse cannot be taken, rendering the diversity measure unusable.

2.1.7. Swarm Diameter and Swarm Radius

Olorunda and Engelbrecht [11] investigated the use of swarm diameter (SDM) and swarm radius (SR) in quantifying dispersion. These two measures are calculated with respect to the swarm, where the SDM is the maximum distance between any two candidate solutions. SDM is calculated as
D SDM = max x i x j S j i x i x j 2
The SR, on the other hand, is the maximum distance between the centre of the swarm (or the candidate with the best objective function value) and any of the candidate solutions. SR is calculated as
D SR = max x i S i = 1 x i x ¯ 2
When utilised for measuring diversity for non-niching techniques, Olorunda and Engelbrecht [11] showed that SDM and SR are greatly affected by the presence of outliers. Nevertheless, these measures could be modified to compute diversity in niching algorithms by subjecting each candidate niche to the measures and then calculating the mean. For instance, a modified SDM is calculated as
D m SDM = 1 μ k = 1 μ max x i x j N k j i x i x j 2

2.1.8. Other Measures of Diversity

Olorunda and Engelbrecht [11] also studied the normalised average distance around the swarm center and the swarm coherence. The normalised average distance around the swarm center is similar to ADSC with the only exception that a further normalisation with regard to the diameter of the swarm is carried out. The work in [11] showed that the normalised average distance around the swarm center followed a uniform distribution between [0,1] and was thus rendered unsuitable to measure diversity over time. Whereas the goal of this work is not to measure diversity over the number iterations, since the diversity of the solutions of niching algorithms is affected by the extent of the exploration carried out by the swarm, average distance around the swarm center is unlikely to work where multiple optima are considered. As such, it is not considered in this study.
Furthermore, Olorunda and Engelbrecht [11] showed that the results of swarm coherence were unequivocal and hence not suitable for measuring diversity for non-niching techniques. Since swarm coherence is based on average speed of particles in a swarm relative to that of the swarm centre, this measure is applicable to only PSO techniques. As such, its applicability to other complementary niching techniques cannot be determined.

2.2. Niche Diversity

At the beginning of a search process, candidate solutions are scattered around the search space. Depending on how a niching algorithm defines a niche, all particles at the beginning of a search process may be categorised as belonging to one niche, i.e., the entire swarm is referred to as a niche. Alternatively, each particle could represent its own niche. That is, if a swarm has n particles, then there exist n niches. As iterations increase, particles start to group together, forming candidate niches. The grouping could be based on an already defined niche radius or a particular algorithm may have its own niche determination strategy. Each candidate niche contains a neighbourhood best (i.e, the best candidate in a niche also known as the niche best. This does not mean that a neighbourhood topology is being used.) or a candidate solution that has the best fitness within that niche.
Niche diversity refers to diversity with respect to the neighbourhood bests in each of the identified candidate niches. For instance, in Figure 1b, there are four identified candidate niches clustered around the position of the optima. To calculate niche diversity using any of the methods discussed in Section 2.1, only the four neighbourhood bests will be considered.
A niching algorithm will have many candidate niches during exploration. These candidate niches are later merged if it is determined that they are converging towards the same optimum. Different niching algorithms have different merging strategies. However, merging occurs during the exploitation phase. Due to this, niche diversity is expected to be high during the exploration phase and starts to decrease as the exploitation phase starts. However, at the end of the search process, niche diversity is still expected to be high if many of the candidate niches were located and maintained. Algorithms that are not able to maintain found potential niches will have a low diversity at the end of the search process, that is, all candidate niches have converged towards one optimum.
Unlike swarm diversity, niche diversity helps to determine how candidate niches identify and maintain niches. A good niching algorithm is expected to have a considerable high diversity both at the exploration and exploitation phases of the search process, i.e., for a good algorithm, niche diversity is not expected to be zero unless only one optimum exists in the search space. However, niche diversity is still affected by such drawbacks as “outliers” and niche identification strategies.

3. Materials and Methods

In this section, the methodology used to conduct the empirical analysis is discussed. Furthermore, a method to correctly determine unique solutions is introduced.
The main objective of the empirical analysis conducted for this paper is to illustrate the applicability of the discussed measures to correctly reflect diversity for niching algorithms. As discussed earlier, diversity in niching algorithms can be calculated with respect to the decision space (i.e., swarm diversity) and also with respect to solution space (i.e., niche diversity).
In order to calculate the entropy measure, the values of each dimension of particle positions were divided into different numbers of bins. The number of bins used were 10, 20, 50 and 100 in each dimension. The number of bins were used as the logarithm base for the entropy measure defined in Equation (8). There is, therefore, four types of entropies that were carried out, i.e., E ^ 10 , E ^ 20 , etc. The reason for using different numbers of bins is to determine how the number of bins affect diversity values.
The iterated F-Race algorithm [19] was used to tune the ESPSO parameters. Parameter tuning was carried out for every problem listed in Table 1. Consequently, different parameters were obtained and are therefore not listed in this paper. The ESPSO algorithm was implemented using CIlib (http://www.cilib.net).
To ensure that the obtained results were not affected by randomisation, 30 independent runs were carried out for every function listed in Table 1. For each measure, the same starting points were used. The reader is directed to Appendix D and Appendix E for a visual representation of these functions in two dimensions. Each epoch was made up of 1000 iterations. The population size for the ESPSO algorithm was made up of 100 particles. During the search, particles that bounced off the search space were randomly re-initialised within the search space. The Inverted Rosenbrock function ( f 7 ), was investigated in four dimensions while the rest of the functions were tested in two-dimensional search spaces. The results obtained from the 30 independent runs were used to calculate all the investigated diversity measures using the following equation
z = 1 30 i 30 z i
where z is the scaled (reported) diversity value, z i is the observed/computed diversity value for a particular diversity measure in the i th independent run.

Determining Unique Solutions

At the end of a niching algorithm run, the best solution in each candidate niche is usually reported. It is possible for an algorithm run to terminate before all optima have been found and/or before particles optimising a particular location of optimum fully converged. In order to correctly report the obtained results, it is important to evaluate the reported solutions in order to weed out candidate solutions that were optimising the same optimum. This helps to remove duplicate solutions and to report only those solutions that are unique in terms of their positions in the search space.
In order to determine the unique solutions to be used for the measurement of the niche diversity, the work reported here used the mid-point technique [20]. The mid-point technique ascertains that a particular candidate solution, x ˘ i , is distinctive from another candidate solution, x ˘ j , by determining whether the relation shown by Equation (14) holds (assuming maximisation).
f ( x ¯ k ) min { f ( x ˘ i ) , f ( x ˘ j ) } | k { 1 , , m }
where x ¯ k is a point between x ˘ i and x ˘ j and m is the total number of points between x i ˘ and x j ˘ . If the relation does not hold, then a local minimum exists between x ˘ i and x ˘ j , implying that both are moving towards different maxima; i.e., x ˘ i and x ˘ j represent different niches. If the relation holds, then the candidate solution with the better objective function value is considered as the unique solution. Note that m = 10 is used in the experiments here as it was shown to be effective in [20]. In addition, the m points were sampled at equal intervals between x ˘ i and x ˘ j .

4. Results and Discussion

The purpose of this section is to present and discuss the results of the observed diversity values as quantified using the previously discussed diversity measures. Since the goal is to review and analyse the effectiveness of each of the listed measures in quantifying diversity; for the remainder of this section, each diversity measure is evaluated on its performance on all the listed multimodal problems and a conclusion is drawn. The curves shown by the figures are values of each diversity measure as an average of the 30 independent runs over 1000 iterations. There is no attempt made at comparing the measures directly.

4.1. Sum of Distances

Table 2 as well as Figure 3 and Figure 4 show the quantification of diversity using the sum of distance measure (SD) and its proposed variants, i.e., modified SD (mSD) and niche SD (nSD).
The results for all the considered multimodal problems show that the diversity quantified using the standard SD is high. For swarm diversity, the expectation is for diversity to decrease monotonically as the particles converge towards the locations of optima. However, for the standard SD, since the pairwise distance of each particle to all other particles in the swarm is considered, the diversity predicted will be high. These results show that the standard SD is not suitable for niching algorithms.
For the mSD, the expectation is that, as the particles converge towards the location of optima, the measured diversity should monotonically decrease. It is also expected that, if each particle forms a niche, then the diversity predicted should be low. The results obtained correlates to the expectations, that is, the obtained mSD predicts low diversity towards convergence.
The nSD calculates diversity as standard SD does, but only using the unique solutions. As such, achieved diversity should be high. In addition, even in the case where the unique solutions are close to each other, it is expected that the diversity will never converge. The obtained results agree with this expectation.
In conclusion, the standard SD is not a good measure to quantify diversity in niching algorithms, as is expected. If the diversity of all candidate solutions is required, the mSD should be used. Finally, if only the diversity of found solutions is required, then nSD is a good measure.

4.2. Sum of Distances to the Nearest Neighbour

Figure 5 and Figure 6 and Table 3 show the quantification of diversity using the sum of distance to the nearest neighbour measure (SDNN) and its proposed variants, i.e., modified SDNN (mSDNN) and niche SDNN (nSDNN).
The standard SDNN obtains diversity as the sum of all the nearest neighbours for the particles in the swarm. As such, it is expected that, as the particles converge towards the optima, SDNN will obtain low diversity scores because a nearest neighbour of a particle will be another particle in the same niche. The results showed in Figure 5 and Figure 6 do not seem to correlate with the expected behaviour. The figures show that diversity starts to decrease monotonically and then rises either at the 100th iteration ( f 2 , f 6 , f 7 , f 8 ) or around the 400th iteration ( f 1 , f 5 ) iteration. A trace of the particle positions at various iterations (refer to Appendix A, Appendix B and Appendix C) shows that, whereas the particles start to converge, there is a high presence of outliers (the assumption is that since these problems have 3, 1, and 1 global peaks, respectively, the presence of multiple unique solutions means that these are outliers or unknown local optima). For these outliers, the nearest neighbours are likely to be particles in already converged niches. As such, the consideration of these outliers in the calculation raises the diversity.
The mSDNN considers the nearest neighbours at the niche level, and is therefore not affected by the presence of outliers. In the discussed work, a niche could be formed using one particle and therefore the diversity at that niche is zero. As such, the results obtained mirror what is expected. This means that, although the mSDNN seems to be a good measure, the decrease of diversity does not indicate the true picture of the search space. More investigations into this are required.
For the nSDNN, the calculation is based on the unique solutions found. Since the outliers will be considered as unique solutions, this has the effect of raising the niche diversity. As such, although the expectation is for the nSDNN to show high diversity in both the exploration and exploitation phases, outliers do play a role in the value obtained.
In summary, the SDNN as a measure has shown to be highly affected by the presence of outliers. As such, although the results obtained by the nSDNN is as expected, if this measure is used for quantifying dispersion for candidate solutions of niching algorithms, care has to be taken and a technique devised to remove the outliers.

4.3. Average Distance around the Swarm Centre

Figure 7 and Figure 8 and Table 4 show the quantification of diversity using the average distance around the swarm centre measure (ADSC) and its proposed variants, i.e., modified ADSC (mADSC) and niche ADSC (nADSC). The intial posit in the article was that standard ADSC and the nASDC will show high diversity because the distances will be computed from a swarm “best” in both cases. The results do not seem to correlate with this expectation. Analysis of the ADSC led to the following observations.
The standard ADSC sums the distances from each particle to the best particle in the swarm and then computes the average. For niching algorithms, there is a high likelihood of multiple global bests, based on the modality of the problem being investigated. As such, each particle’s distance from the global best is dependent on which optimum the particle was optimising. This behaviour explains why the diversity as quantified using the ADSC decreased monotonically as the search progressed.
For the mADSC, it was expected that the diversity will decrease monotonically. This is because the computation is done using the best particle in the niche.
Similar to the standard ADSC, the nADSC measure was computed using the nbests. As such, although the final particle positions (as shown in Appendix A, Appendix B and Appendix C) suggest that, in the presence of outliers, the use of nbests in the computation meant that there were multiple “centres” being used. This led to the low diversity.
These results suggest that a better strategy needs to be devised in working with both ADSC and nADSC. Further work on this area will compare the use of a central position in the swarm with the current use of a swarm “best”.

4.4. Average of the Mean Distance around All Solutions

Figure 9 and Figure 10 as well as Table 5 show the quantification of diversity using the average of the mean distance around all solutions (ADAA) and its proposed variants, i.e., modified ADAA (mADAA) and niche ADAA (nADAA).
The ADAA computes the sum of the average pairwise distances of each particle to all other particles in the swarm and then finds the average. In essence, the ADAA computes the average spread of the entire swarm. The effect is that, as the particles converge towards optima, the diversity will decrease and then stagnate at a relatively high diversity value.
The results obtained by the standard ADAA correlate with the expectation, i.e., for the diversity to decrease gradually. However, for some of the problems, e.g., f 2 and f 8 , this was not the case. Analysis of the positions of the particles in various iterations showed that, for these two problems, convergence started to occur early in the search. As such, particles were only exploiting near their points of convergence, leading to larger distances from other particles. This too should be expected of this measure as niching algorithms are expected to explore widely over the entire search space.
For the mADAA, the results are as expected. The pairwise average distances was calculated with respect to each niche and then averaged. As such, it was expected that the small intra-niche distances would lead to small diversity.
The behaviour of the nADAA was somewhat similar to that of the standard ADAA. Since the pairwise distances are calculated using only unique solutions, it is therefore correct to posit that the quantified diversity will be high in both the exploitation and the exploration phase.
In summary, the nADAA is a suitable measure to quantify the spread of the solutions of niching algorithms, while the mADAA is a suitable measure to quantify diversity within the candidate niches.

4.5. Entropy

Figure 11 and Figure 12 and Table 6 illustrate the diversity as measured using entropy with 20 bins. From the investigations carried out, no discernible difference was seen between E ^ 10 , E ^ 20 , E ^ 50 and E ^ 100 . As such, the discussion is carried out using the swarm diversity measures, E ^ 20 and m E ^ 20 , and the niche diversity, n E ^ 20 .
To calculate the standard entropy measure using E ^ 20 , the values of each dimension of particle positions are placed in 20 bins. The computation involves sampling in those 20 bins in each dimension. For the work reported here, there were 100 particles and, apart from the Inverted Rosenbrock function which was investigated in four dimensions, all of the other problems were investigated in two dimensions. Since the nature of niching algorithms is to spread particles across the search space in an attempt to locate multiple optima, it was expected that sampling across the four and two dimensions in 20 bins would result in high diversity. This diversity would decrease gradually as particles started to converge towards optima but would still be maintained at high levels. As such, the results shown in Figure 11 and Figure 12 mirror what was expected.
For the m E ^ 20 , particle positions in the mentioned dimensions are also placed in 20 bins. However, since particles in a niche are likely to have converged, or are very close to each other, the diversity is expected to be low and tends to zero as particles converge towards the optima. Results shown are thus as expected.
In the case of n E ^ 20 , the computation is similar to the standard E ^ 20 with the exception that only unique solutions are used. As such, a diversity measure using n E ^ 20 will be high, but not as high as that obtained using E ^ 20 . The obtained results correctly predict this outcome.
Various research [12,13,14,15,16,17] has shown that entropy is a suitable measure to quantify dispersion. The work presented here postulates that entropy is a suitable measure for quantifying dispersion for solutions and candidate solutions of niching algorithms.

4.6. Solow–Polasky Diversity

Figure 13 and Figure 14 and Table 7 show the diversity results as computed using the Solow–Polasky diversity measure, i.e., standard SPD, modified SPD (mSPD), and the niche diversity (nSPD).
As shown in Equation (9), the SPD is computed based on an n × n matrix, M, with entries m i , j = exp ( θ x i x j 2 ) . For the standard SPD, the entries are therefore the exponent of the pairwise distance of each particle to another particle, normalised using a user defined parameter, θ . In this work, θ = 1 . Following this, the expectation is that the computed diversity will gradually decrease but stagnate at high values when particles converge to the location of the optima. The obtained results are therefore as expected.
For the mSPD, the entries m i , j = exp ( θ x i x j 2 ) are computed from the particles in each niche and then an average is calculated. Since it is expected for the intra-niche distances to be small as particles converge towards an optimum, the obtained diversity should be low and tend towards zero. The results shown are therefore as expected.
The nSPD is computed similarly to the standard SPD, but with the exception that only the unique solutions are used. As such, whereas the distances for each of the unique solutions are the same as in SPD, the matrix is smaller because the number of niches is less. As such, the nSPD values will be smaller than those of the standard SPD, but the computed diversity will still be high. Results obtained from the experiment are therefore as expected.
The results obtained here concurs with [4] on the suitability of using the SPD measure to compute diversity of solutions and candidate solutions of niching algorithms.

4.7. Swarm Radius

Figure 15 and Figure 16 as well as Table 8 show the results of diversity as quantified using the standard swarm radius, SR, modified SR (mSR) and niche diversity (nSR).
For the SR measure, both the standard SR and the nSR were computed using the “swarm best”, i.e., the solution with the best objective function value. Since the goal of niching algorithms is to obtain multiple optima, the SR measure obtained the largest distance between any of the “swarm best” and a candidate solution. Since each candidate solution is optimising an optimum, the expectation is that the diversity quantified using SR will monotonically decrease as candidate solutions converge. This is because the diversity is not measured on how far apart the solutions are from each other but from the “swarm best” which are multiple. Following this, where SR reports high diversity, it is likely to be as a result of the presence of outliers. This is the case with the obtained results.
In the case of mSR, the distances are computed with respect to each niche, and therefore the neighbourhood best is used. Diversity is thus expected to be low and tending towards zero as particles converge towards an optimum. As such, the achieved results are as expected.
For the nSR, unique solutions are used. As such, the obtained results will be somewhat similar to those of the standard SR. This is because, for both cases, the particle with the best objective function value is used. Where two candidate solutions have the same objective function value, the computed distance is zero. Where the nSR value is smaller than SR, the likely explanation is that the furthest particle among the set of unique solutions was closer to a solution than in the general swarm. This too is expected.
These results mirror those of the ADSC. For both cases, the distances are calculated from a candidate solution with the best objective fitness. For niching algorithms, the presence of multiple optima for which the distances can be calculated from means that lower diversity will be expected. As such, the only explanation to the reported high diversity is likely to be the presence of outliers. A similar result was reported in [11].

4.8. Swarm Diameter

Figure 17 and Figure 18 as well as Table 9 show the diversity results as computed using the swarm diameter measures, i.e., standard SDM, modified SDM (mSDM) and the niche diversity (nSDM).
For the SDM, the computation is geared towards the maximum distance between any two particles/candidate solutions. As such, the expectation is that standard SDM will obtain high diversity during both the exploration and the exploitation phases. The obtained results are therefore as expected.
The mSDM is only computed per each niche and then an average is calculated. As such, it is expected that the diversity will be small and tending towards zero as convergence towards the location of optima is achieved. As such, results of the mSDM are as expected.
The nSDM is computed in a similar manner to that of the SDM. The only difference is that the nSDM is computed using only unique solutions. As such, the nSDM is expected to show a high diversity both at the exploration and exploitation phases.
In summary, whereas the SDM measure can truly reflect how far apart both the solutions and candidate solutions are, these solutions are likely to also contain outliers. The high diversity as shown may thus not be a measure of how truly diverse the obtained solutions are.

5. Conclusions

This paper offers a concise understanding of diversity measures for quantifying the spread of candidate solutions and solutions of a niching algorithm. The paper does not attempt to compare the diversity measures, but instead analyse whether they can correctly quantify diversity when used with niching algorithms. The diversity measures are discussed with respect to the search space, i.e., swarm diversity, and with respect to solution space, i.e., niche diversity.
An empirical study involving the reviewed measures was carried out using a set of multimodal functions optimised using the enhanced species-based particle swarm optimisation (ESPSO) niching algorithm. The obtained diversity results showed that some measures are more suited to the task than others. However, the conclusions were drawn as remarks for each diversity measure rather than a conclusive determination on which diversity measure is better than the other.
The discussion shows that both swarm diversity and niche diversity are important for the purpose of niching algorithms. The calculation of swarm diversity, by first subjecting the measures to each of the candidate niches, is critical because niching algorithms cluster candidate solutions during the search process. The niche diversity is important because it shows diversity of the unique solutions (“would-be solutions”) during exploration and during exploitation. High niche diversity during the exploration phase indicates that a niching algorithm is capable of identifying potential niches, while high diversity at the exploitation phase means that the algorithm is able to maintain the found niches. It is, however, expected that niche diversity will decrease as the swarm moves from the exploration phase to the exploitation phase.
Diversity is an important aspect of a population-based algorithm because it determines the performance over a given set of problems. It is thus important to investigate diversity measures that can be utilised to analyse the spread of candidate solutions. The presented study can thus only be seen as a first step towards this investigation.

Author Contributions

The conceptualization of this work was carried out by J.M. and A.P.E. The two authors also devised the methodology for the work; J.M. and F.V.N. designed the experiments and F.V.N. was pivotal in both software development and the validation of the experiments. The experiments’ formal analysis and investigation were carried out by J.M. In addition, J.M. wrote the original draft of the paper. The review and editing of the work was carried out by J.M. and A.P.E. The visualization of the experiment results was carried out by J.M. and F.V.N., whereas the overall supervision of the work was carried out by A.P.E. Furthermore, J.M. and A.P.E. were involved in funding acquisition. All authors have read and agreed to the published version of the manuscript.

Funding

This work is based on the research supported by the National Research Foundation (NRF) of South Africa (Grant Number 89630). The opinions, findings and conclusions or recommendations expressed in this article is that of the author(s) alone, and not that of the NRF.

Acknowledgments

The authors would like to thank the Centre for High Performance Computing (CHPC) based in Cape Town, South Africa for allowing the use of their servers to run the simulation for the experiments reported in this paper. The authors would also like to thank the entire development team of Computation Intelligence Library (CILib) based in South Africa.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
PSOParticle Swarm Optimisation
DEDifferential Evolution
GAGenetic Algorithms
ESPOEnhanced Species-Based Particle Swarm Optimisation
SDSum of Distances
SDNNSum of Distances to Nearest Neighbour
ADSCAverage Distance Around the Swarm Centre
ADAAAverage of the Mean Distance around all Candidate Solutions
SPDSolow–Polasky Diversity
SDMSwarm Diameter
SRSwarm Radius

Appendix A. Branin

Figure A1. Branin Rcos at different iterations. (a) f 1 : iteration 50; (b) f 1 : iteration 100; (c) f 1 : iteration 250; (d) f 1 : iteration 500; (e) f 1 : iteration 750; (f) f 1 : iteration 1000.
Figure A1. Branin Rcos at different iterations. (a) f 1 : iteration 50; (b) f 1 : iteration 100; (c) f 1 : iteration 250; (d) f 1 : iteration 500; (e) f 1 : iteration 750; (f) f 1 : iteration 1000.
Algorithms 14 00036 g0a1aAlgorithms 14 00036 g0a1b

Appendix B. EggHolder

Figure A2. Inverted Egg Holder at different iterations. (a) f 2 : iteration 50; (b) f 2 : iteration 100; (c) f 2 : iteration 250; (d) f 2 : iteration 500; (e); f 2 : iteration 750.
Figure A2. Inverted Egg Holder at different iterations. (a) f 2 : iteration 50; (b) f 2 : iteration 100; (c) f 2 : iteration 250; (d) f 2 : iteration 500; (e); f 2 : iteration 750.
Algorithms 14 00036 g0a2aAlgorithms 14 00036 g0a2b

Appendix C. Inverted Schwefel Problem 2_26

Figure A3. Inverted Schwefel Problem 2_26 at different iterations. (a) f 8 : iteration 50; (b) f 8 : iteration 100; (c) f 8 : iteration 250; (d) f 8 : iteration 500; (e) f 8 : iteration 750.
Figure A3. Inverted Schwefel Problem 2_26 at different iterations. (a) f 8 : iteration 50; (b) f 8 : iteration 100; (c) f 8 : iteration 250; (d) f 8 : iteration 500; (e) f 8 : iteration 750.
Algorithms 14 00036 g0a3aAlgorithms 14 00036 g0a3b

Appendix D. Test Functions in 2D

Figure A4. Test Functions shown in 2D. (a) f 1 ; (b) f 2 ; (c) f 3 ; (d) f 4 ; (e) f 5 .
Figure A4. Test Functions shown in 2D. (a) f 1 ; (b) f 2 ; (c) f 3 ; (d) f 4 ; (e) f 5 .
Algorithms 14 00036 g0a4aAlgorithms 14 00036 g0a4b

Appendix E. Test Functions in 2D

Figure A5. Test Functions shown in 2D. (a) f 6 ; (b) f 7 ; (c) f 8 ; (d) f 9 .
Figure A5. Test Functions shown in 2D. (a) f 6 ; (b) f 7 ; (c) f 8 ; (d) f 9 .
Algorithms 14 00036 g0a5aAlgorithms 14 00036 g0a5b

References

  1. Zhan, Z.; Zhang, J.; Li, Y.; Chung, H. Adaptive Particle Swarm Optimization. IEEE Trans. Syst. Man Cybern. Part B Cybern. 2009, 139, 1362–1381. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  2. Bosman, P.; Engelbrecht, A.P. Diversity Rate of Change Measurement for Particle Swarm Optimisers. In Proceedings of the Swarm Intelligence: 9th International Conference, ANTS 2014, Brussels, Belgium, 10–12 September 2014; Dorigo, M., Birattari, M., Garnier, S., Hamann, H., Montes de Oca, M., Solnon, C., Stützle, T., Eds.; Springer International Publishing: Berlin/Heidelberg, Germany, 2014; pp. 86–97. [Google Scholar]
  3. Li, X. Developing Niching Algorithms in Particle Swarm Optimisation. In Handbook of Swarm Intelligence; Springer: Berlin/Heidelberg, Germany, 2011; Volume 8, pp. 67–88. [Google Scholar]
  4. Preuss, M.; Wessing, S. Measuring Multimodal Optimisation Solution sets with a View to Multiobjective Techniques. In EVOLVE—A Bridge between Probability, Set Oriented Numerics, and Evolutionary Computation; Advances in Intelligent Systems and Computing; Emmerich, M., Ed.; Springer International Publishing: Cham, Switzerland, 2013; Volume 227, pp. 123–137. [Google Scholar]
  5. Li, X. Adaptively Choosing Neighbourhood Bests using Species in a Particle Swarm Optimizer for Multimodal Function Optimization. In Genetic and Evolutionary Computation Conference; Springer: Berlin/Heidelberg, Germany, 2004; pp. 105–116. [Google Scholar]
  6. Passaro, A. Niching in Particle Swarm Optimisation. Ph.D. Thesis, University of Pisa, Pisa, Italy, 2007. [Google Scholar]
  7. Schoeman, I. Niching in Particle Swarm Optimisation. Ph.D. Thesis, University of Pretoria, Pretoria, South Africa, 2010. [Google Scholar]
  8. Deb, K.; Tiwari, S. Omni-optimizer: A Procedure for Single and Multi-objective Optimization. In Evolutionary Multi-Criterion Optimization; Lecture Notes in Computer Science; Coello Coello, C., Hernández Aguirre, A., Zitzler, E., Eds.; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3410, pp. 47–61. [Google Scholar]
  9. Ulrich, T.; Bader, J.; Thiele, L. Defining and Optimising Indicator-Based Diversity Measures in Multiobjective Search. In Parallel Problem; Lecture Notes in Computer Science; Schaefer, R., Cotta, C., Kolodziej, J., Rudolf, G., Eds.; Springer: Heidelberg, Germany, 2010; Volume 6238, pp. 707–717. [Google Scholar]
  10. Krink, T.; Vesterstrøm, A.; Riget, J. Particle Swarm Optimisation with Spatial Particle Extension. In Proceedings of the Fourth Congress on Evolutionary Computation, Honolulu, HI, USA, 12–17 May 2002; pp. 1474–1479. [Google Scholar]
  11. Olorunda, O.; Engelbrecht, A. Measuring Exploration/Exploitation in Particle Swarms using Swarm Diversity. In Proceedings of the IEEE Congress on Evolutionary Computation, Hong Kong, China, 1–6 June 2008; pp. 1128–1134. [Google Scholar]
  12. Roman, S. Coding and Information Theory; Springer: New York, NY, USA, 1992. [Google Scholar]
  13. Solteiro Pires, E.; Tenreiro Machado, J.; de Moura Oliveira, P. Entropy Diversity in Multi-Objective Particle Swarm Optimisation. Entropy 2013, 15, 5475–5491. [Google Scholar] [CrossRef] [Green Version]
  14. Masisi, L.; Nelwamondo, V.; Marwala, T. The use of entropy to measure structural diversity. In Proceedings of the IEEE 6th International Conference on Computational Cybernetics, Stara Lesna, Slovakia, 27–29 November 2008; pp. 41–45. [Google Scholar]
  15. Ni, Q.; Deng, J. Analysis of Population Diversity of Dynamic Probabilistic Particle Swarm Optimisation Algorithms. Math. Probl. Eng. 2014, 1–9. [Google Scholar] [CrossRef]
  16. Morrison, R.; De Jong, K. Measurement of Population Diversity. In Artificial Evolution; Lecture Notes in Computer Science; Collet, P., Fonlupt, C., Hao, J.K., Lutton, E., Schoenauer, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2002; Volume 2310, pp. 31–41. [Google Scholar]
  17. Rajaram, R.; Castellani, B.; Wilson, A. Advancing Shannon Entropy for Measuring Diversity in Systems. Complexity 2017, 2017. [Google Scholar] [CrossRef] [Green Version]
  18. Solow, A.; Polasky, S. Measuring Biological Diversity. J. Environ. Ecol. Stat. 1994, 1, 95–103. [Google Scholar] [CrossRef]
  19. Balaprakash, P.; Birattari, M.; Stützle, T. Improvement strategies for the F-Race algorithm: Sampling design and iterative refinement. In International Workshop on Hybrid Metaheuristics; Springer: Berlin/Heidelberg, Germany, 2007; pp. 108–122. [Google Scholar]
  20. Mwaura, J.; Engelbrecht, A.; Nepocumeno, F. Performance measures for niching algorithms. In Proceedings of the IEEE Congress on Evolutionary Computation, Vancouver, BC, Canada, 24–29 July 2016; pp. 4775–4784. [Google Scholar] [CrossRef]
Figure 1. Illustration of swarm diversity for niching algorithms. The crosses show the positions of optima. (a) particles during search process; (b) particles at convergence.
Figure 1. Illustration of swarm diversity for niching algorithms. The crosses show the positions of optima. (a) particles during search process; (b) particles at convergence.
Algorithms 14 00036 g001
Figure 2. Illustration of the expected diversity values when quantified using the SD measure.
Figure 2. Illustration of the expected diversity values when quantified using the SD measure.
Algorithms 14 00036 g002
Figure 3. Quantification of diversity using the sum of distance measure.
Figure 3. Quantification of diversity using the sum of distance measure.
Algorithms 14 00036 g003
Figure 4. Quantification of diversity using the sum of distances measure ( Cont . ).
Figure 4. Quantification of diversity using the sum of distances measure ( Cont . ).
Algorithms 14 00036 g004
Figure 5. Quantification of diversity using the sum of distances to the nearest neighbour.
Figure 5. Quantification of diversity using the sum of distances to the nearest neighbour.
Algorithms 14 00036 g005
Figure 6. Quantification of diversity using the sum of distances to the nearest neighbour ( Cont . ).
Figure 6. Quantification of diversity using the sum of distances to the nearest neighbour ( Cont . ).
Algorithms 14 00036 g006
Figure 7. Quantification of diversity using the average distance around the swarm centre measure.
Figure 7. Quantification of diversity using the average distance around the swarm centre measure.
Algorithms 14 00036 g007
Figure 8. Quantification of diversity using the average distance around the swarm centre measure ( Cont . ).
Figure 8. Quantification of diversity using the average distance around the swarm centre measure ( Cont . ).
Algorithms 14 00036 g008
Figure 9. Quantification of diversity using the average of the mean distance around all solutions.
Figure 9. Quantification of diversity using the average of the mean distance around all solutions.
Algorithms 14 00036 g009
Figure 10. Quantification of diversity using the average of the mean distance around all solutions ( Cont . ).
Figure 10. Quantification of diversity using the average of the mean distance around all solutions ( Cont . ).
Algorithms 14 00036 g010
Figure 11. Quantification of diversity using the Entropy measure.
Figure 11. Quantification of diversity using the Entropy measure.
Algorithms 14 00036 g011
Figure 12. Quantification of diversity using the Entropy measure ( Cont . ).
Figure 12. Quantification of diversity using the Entropy measure ( Cont . ).
Algorithms 14 00036 g012
Figure 13. Quantification of diversity using the Solow–Polasky Diversity.
Figure 13. Quantification of diversity using the Solow–Polasky Diversity.
Algorithms 14 00036 g013
Figure 14. Quantification of diversity using the Solow–Polasky Diversity ( Cont . ).
Figure 14. Quantification of diversity using the Solow–Polasky Diversity ( Cont . ).
Algorithms 14 00036 g014
Figure 15. Quantification of diversity using the Swarm Radius.
Figure 15. Quantification of diversity using the Swarm Radius.
Algorithms 14 00036 g015
Figure 16. Quantification of diversity using the Swarm Radius ( Cont . ).
Figure 16. Quantification of diversity using the Swarm Radius ( Cont . ).
Algorithms 14 00036 g016
Figure 17. Quantification of diversity using the Swarm Diameter.
Figure 17. Quantification of diversity using the Swarm Diameter.
Algorithms 14 00036 g017
Figure 18. Quantification of diversity using the Swarm Diameter ( Cont . ).
Figure 18. Quantification of diversity using the Swarm Diameter ( Cont . ).
Algorithms 14 00036 g018
Table 1. Multimodal functions used for the experiments.
Table 1. Multimodal functions used for the experiments.
Function & NameCharacteristics
Inverted Branin’s RCOS3 global peaks
f1 = ( ( x 2 5.1 x 1 2 4 π 2 + 5 x 1 π 6 ) 2 + 10 ( 1 1 8 π ) cos x 1 + 10 ) x 1 [ 5 , 10 ]
x 2 [ 0 , 15 ]
Inverted Egg Holder1 global peak
f2 = i = 1 n 1 ( x i + 1 + 47 ) α + β ( x i ) Many local peaks
α = sin ( | x i + 1 + x i / 2 + 47 | ) x i [ 512 , 512 ] 2
β = sin ( | x i ( x i + 1 + 47 | ) )
Equal Maxima 5 n global peaks
f3 = i = 1 n sin 6 ( 5 π x i ) x i [ 0 , 1 ] 2
Modified Himmelblau4 global peaks
f4 = 200 x 1 2 + x 2 11 2 + x 1 + x 2 2 7 2 x i [ 6 , 6 ] 2
Inverted Michalewicz1 global peak
f5 = i = 1 n [ sin ( x i ) . sin 20 ( i * x i 2 π ) ] n ! 1 local peaks
x i [ 0 , π ] 2
Inverted Rastrigin1 global peak
f6 = i = 1 n [ x i 2 10 cos ( 2 π x i ) + 10 ] Many local peaks
x i [ 0 , π ] 2
Inverted Rosenbrock1 global peak
f7 ( x ) = i = 1 n 1 { ( 100 ( x i + 1 x i 2 ) 2 Many local peaks
+ ( x i 1 ) 2 ) } x i [ 5 , 5 ] 4
Inverted Schwefel Problem 2_261 global peaks
f8 = i = 1 n x i sin ( | x i | ) 8 n 1 local peaks
x i [ 500 , 500 ] 2
Inverted Six-Hump Camel Back2 global peaks
f9 = i = 1 n 1 { ( 4 2.1 x i 2 + x i 4 3 ) x i 2 + x i x i + 1 + ( 4 + 4 x i + 1 2 ) x i + 1 2 } 4 local peaks
x i [ 0 , π ] 2
Table 2. Mean ( μ ) and standard deviation ( σ ) for SD measure at the last iteration.
Table 2. Mean ( μ ) and standard deviation ( σ ) for SD measure at the last iteration.
FunctionMeanStdevMeanStdevMeanStdev
(SD)(SD)(mSD)(mSD)(nSD)(nSD)
f 1 3.02 × 10 2 9.12 × 10 0 2.76 × 10 1 1.01 × 10 1 1.41 × 10 1 4.40 × 10 0
f 2 3.62 × 10 3 4.87 × 10 2 7.93 × 10 0 8.11 × 10 0 1.31 × 10 3 4.47 × 10 2
f 3 7.39 × 10 1 2.30 × 10 0 1.13 × 10 0 2.67 × 10 1 2.15 × 10 1 2.57 × 10 0
f 4 2.26 × 10 2 5.43 × 10 0 1.38 × 10 1 2.74 × 10 0 1.31 × 10 1 2.17 × 10 0
f 5 3.32 × 10 1 2.50 × 10 1 0.00 × 10 0 0.00 × 10 0 3.32 × 10 1 2.50 × 10 1
f 6 9.22 × 10 1 1.82 × 10 1 2.14 × 10 1 3.37 × 10 1 1.94 × 10 1 1.14 × 10 1
f 7 4.30 × 10 2 5.75 × 10 1 4.28 × 10 1 2.19 × 10 1 1.70 × 10 1 8.44 × 10 0
f 8 3.35 × 10 3 4.11 × 10 2 2.03 × 10 1 2.03 × 10 1 3.32 × 10 3 4.15 × 10 2
f 9 1.41 × 10 2 1.15 × 10 1 8.32 × 10 0 3.47 × 10 0 1.09 × 10 1 3.45 × 10 0
Table 3. Mean ( μ ) and standard deviation ( σ ) for SDNN measure at the last iteration.
Table 3. Mean ( μ ) and standard deviation ( σ ) for SDNN measure at the last iteration.
FunctionMeanStdevMeanStdevMeanStdev
(SDNN)(SDNN)(mSDNN)(mSDNN)(nSDNN)(nSDNN)
f 1 4.28 × 10 1 1.29 × 10 1 9.77 × 10 0 4.09 × 10 0 4.41 × 10 1 1.41 × 10 1
f 2 7.29 × 10 3 3.03 × 10 3 7.52 × 10 1 1.13 × 10 2 6.54 × 10 3 2.37 × 10 3
f 3 4.26 × 10 0 5.30 × 10 1 2.35 × 10 1 5.02 × 10 2 5.58 × 10 0 7.37 × 10 1
f 4 1.89 × 10 1 3.73 × 10 0 4.22 × 10 0 1.39 × 10 0 2.97 × 10 1 5.04 × 10 0
f 5 6.18 × 10 0 6.61 × 10 0 0.00 × 10 0 0.00 × 10 0 6.18 × 10 0 6.61 × 10 0
f 6 1.88 × 10 1 1.78 × 10 1 1.52 × 10 1 4.77 × 10 1 9.62 × 10 0 3.96 × 10 0
f 7 2.90 × 10 2 4.15 × 10 1 3.51 × 10 1 1.91 × 10 1 2.23 × 10 1 9.92 × 10 0
f 8 5.47 × 10 3 1.67 × 10 3 6.40 × 10 0 7.23 × 10 0 5.59 × 10 3 1.63 × 10 3
f 9 1.97 × 10 1 7.05 × 10 0 2.97 × 10 0 1.70 × 10 0 1.37 × 10 1 4.03 × 10 0
Table 4. Mean ( μ ) and standard deviation ( σ ) for ADSC measure and its variants at the last iteration.
Table 4. Mean ( μ ) and standard deviation ( σ ) for ADSC measure and its variants at the last iteration.
FunctionMeanStdevMeanStdevMeanStdev
(ADSC)(ADSC)(mADSC)(mADSC)(nADSC)(nADSC)
f 1 4.55 × 10 1 1.62 × 10 1 3.42 × 10 1 1.54 × 10 1 0.00 × 10 0 0.00 × 10 0
f 2 1.23 × 10 1 9.74 × 10 0 4.06 × 10 0 3.54 × 10 0 1.65 × 10 0 2.59 × 10 0
f 3 6.54 × 10 2 1.23 × 10 2 3.52 × 10 2 7.87 × 10 3 5.95 × 10 3 6.99 × 10 3
f 4 2.69 × 10 1 6.93 × 10 2 2.44 × 10 1 1.32 × 10 1 0.00 × 10 0 0.00 × 10 0
f 5 8.45 × 10 10 3.74 × 10 9 8.45 × 10 10 3.74 × 10 9 8.45 × 10 10 3.74 × 10 9
f 6 5.27 × 10 3 9.36 × 10 3 7.67 × 10 3 1.21 × 10 2 1.42 × 10 3 5.35 × 10 3
f 7 6.81 × 10 3 1.10 × 10 2 1.03 × 10 3 1.83 × 10 3 1.41 × 10 6 7.58 × 10 6
f 8 4.76 × 10 0 3.44 × 10 0 4.15 × 10 0 2.71 × 10 0 3.98 × 10 0 2.71 × 10 0
f 9 1.13 × 10 1 4.00 × 10 2 6.54 × 10 2 4.15 × 10 2 6.34 × 10 3 3.42 × 10 2
Table 5. Mean ( μ ) and standard deviation ( σ ) for ADAA measure and its variants at the last iteration.
Table 5. Mean ( μ ) and standard deviation ( σ ) for ADAA measure and its variants at the last iteration.
FunctionMeanStdevMeanStdevMeanStdev
(ADAA)(ADAA)(mADAA)(mADAA)(nADAA)(nADAA)
f 1 8.49 × 10 0 3.56 × 10 1 1.21 × 10 0 4.91 × 10 1 7.02 × 10 0 7.98 × 10 1
f 2 6.92 × 10 2 2.47 × 10 1 9.98 × 10 0 1.16 × 10 1 6.15 × 10 2 5.42 × 10 1
f 3 5.06 × 10 1 2.43 × 10 2 6.83 × 10 2 1.38 × 10 2 5.17 × 10 1 2.58 × 10 2
f 4 4.83 × 10 0 1.94 × 10 1 5.59 × 10 1 1.96 × 10 1 4.89 × 10 0 1.67 × 10 1
f 5 1.36 × 10 1 1.15 × 10 1 0.00 × 10 0 0.00 × 10 0 1.36 × 10 1 1.15 × 10 1
f 6 7.53 × 10 1 2.75 × 10 1 6.40 × 10 3 1.38 × 10 2 9.98 × 10 1 2.63 × 10 1
f 7 5.16 × 10 0 3.39 × 10 1 8.99 × 10 1 4.54 × 10 1 2.40 × 10 0 6.37 × 10 1
f 8 5.96 × 10 2 1.96 × 10 1 1.64 × 10 0 1.82 × 10 0 5.96 × 10 2 2.00 × 10 1
f 9 1.60 × 10 0 2.02 × 10 1 2.54 × 10 1 1.31 × 10 1 1.45 × 10 0 1.41 × 10 1
Table 6. Mean ( μ ) and standard deviation ( σ ) for the Entropy measure and its variants at the last iteration.
Table 6. Mean ( μ ) and standard deviation ( σ ) for the Entropy measure and its variants at the last iteration.
FunctionMeanStdevMeanStdevMeanStdev
( E ^ 20 )( E ^ 20 )(m E ^ 20 )(m E ^ 20 )(n E ^ 20 )(n E ^ 20 )
f 1 6.29 × 10 1 3.71 × 10 2 2.14 × 10 1 7.44 × 10 2 2.82 × 10 1 3.24 × 10 2
f 2 6.58 × 10 1 4.72 × 10 2 7.55 × 10 3 7.01 × 10 3 5.76 × 10 1 6.93 × 10 2
f 3 9.12 × 10 1 2.35 × 10 2 1.38 × 10 1 1.98 × 10 2 7.31 × 10 1 3.20 × 10 2
f 4 5.97 × 10 1 3.31 × 10 2 1.63 × 10 1 4.16 × 10 2 4.29 × 10 1 2.91 × 10 2
f 5 1.29 × 10 1 2.92 × 10 2 0.00 × 10 0 0.00 × 10 0 1.29 × 10 1 2.92 × 10 2
f 6 3.24 × 10 1 6.80 × 10 2 1.39 × 10 2 1.38 × 10 2 3.47 × 10 1 5.91 × 10 2
f 7 8.12 × 10 1 3.21 × 10 2 1.45 × 10 1 7.05 × 10 2 3.76 × 10 1 5.05 × 10 2
f 8 5.34 × 10 1 4.06 × 10 2 1.29 × 10 3 1.20 × 10 3 5.27 × 10 1 3.66 × 10 2
f 9 5.14 × 10 1 5.78 × 10 2 9.38 × 10 2 3.82 × 10 2 3.18 × 10 1 3.11 × 10 2
Table 7. Mean ( μ ) and standard deviation ( σ ) for the SPD measure and its variants at the last iteration.
Table 7. Mean ( μ ) and standard deviation ( σ ) for the SPD measure and its variants at the last iteration.
FunctionMeanStdevMeanStdevMeanStdev
(SPD)(SPD)(mSPD)(mSPD)(nSPD)(nSPD)
f 1 1.11 × 10 0 6.63 × 10 3 1.03 × 10 0 1.05 × 10 2 1.08 × 10 0 1.30 × 10 4
f 2 1.03 × 10 1 1.35 × 10 0 1.04 × 10 0 3.99 × 10 2 9.52 × 10 0 1.27 × 10 0
f 3 1.01 × 10 0 3.34 × 10 4 1.00 × 10 0 1.88 × 10 4 1.01 × 10 0 1.91 × 10 4
f 4 1.06 × 10 0 4.19 × 10 3 1.01 × 10 0 3.49 × 10 3 1.05 × 10 0 5.76 × 10 5
f 5 1.00 × 10 0 3.49 × 10 3 1.00 × 10 0 0.00 × 10 0 1.00 × 10 0 3.49 × 10 3
f 6 1.01 × 10 0 1.87 × 10 3 1.00 × 10 0 2.41 × 10 4 1.01 × 10 0 1.47 × 10 3
f 7 1.09 × 10 0 6.42 × 10 3 1.01 × 10 0 6.84 × 10 3 1.03 × 10 0 6.30 × 10 3
f 8 1.21 × 10 1 1.31 × 10 0 1.01 × 10 0 5.51 × 10 3 1.19 × 10 1 1.28 × 10 0
f 9 1.03 × 10 0 4.96 × 10 3 1.00 × 10 0 1.96 × 10 3 1.02 × 10 0 6.19 × 10 4
Table 8. Mean ( μ ) and standard deviation ( σ ) for SR measure and its variants at the last iteration.
Table 8. Mean ( μ ) and standard deviation ( σ ) for SR measure and its variants at the last iteration.
FunctionMeanStdevMeanStdevMeanStdev
(SR)(SR)(mSR)(mSR)(nSR)(nSR)
f 1 1.67 × 10 1 1.44 × 10 0 3.81 × 10 0 1.63 × 10 0 1.54 × 10 1 1.40 × 10 0
f 2 1.25 × 10 3 4.04 × 10 1 2.62 × 10 1 2.99 × 10 1 1.24 × 10 3 3.19 × 10 1
f 3 9.95 × 10 1 1.41 × 10 1 1.50 × 10 1 3.32 × 10 2 9.84 × 10 1 1.31 × 10 1
f 4 8.96 × 10 0 7.36 × 10 1 2.10 × 10 0 5.99 × 10 1 8.46 × 10 0 2.15 × 10 1
f 5 8.13 × 10 1 6.34 × 10 1 0.00 × 10 0 0.00 × 10 0 8.13 × 10 1 6.34 × 10 1
f 6 1.44 × 10 0 2.01 × 10 1 2.27 × 10 2 4.81 × 10 2 1.39 × 10 0 1.08 × 10 1
f 7 7.62 × 10 0 6.12 × 10 1 1.47 × 10 0 7.20 × 10 1 4.40 × 10 0 1.07 × 10 0
f 8 1.17 × 10 3 6.37 × 10 1 3.30 × 10 0 3.64 × 10 0 1.17 × 10 3 6.37 × 10 1
f 9 3.00 × 10 0 5.31 × 10 1 6.07 × 10 1 3.04 × 10 1 2.33 × 10 0 7.54 × 10 2
Table 9. Mean ( μ ) and standard deviation ( σ ) for SDM measure and its variants at the last iteration.
Table 9. Mean ( μ ) and standard deviation ( σ ) for SDM measure and its variants at the last iteration.
FunctionMeanStdevMeanStdevMeanStdev
(SDM)(SDM)(mSDM)(mSDM)(nSDM)(nSDM)
f 1 1.86 × 10 1 5.09 × 10 1 4.82 × 10 0 1.97 × 10 0 1.59 × 10 1 3.25 × 10 2
f 2 1.28 × 10 3 4.07 × 10 1 2.63 × 10 1 3.00 × 10 1 1.25 × 10 3 2.79 × 10 1
f 3 1.17 × 10 0 6.38 × 10 2 1.65 × 10 1 3.62 × 10 2 1.13 × 10 0 2.36 × 10 2
f 4 9.54 × 10 0 9.28 × 10 1 2.38 × 10 0 6.42 × 10 1 8.59 × 10 0 1.04 × 10 2
f 5 8.45 × 10 1 6.72 × 10 1 0.00 × 10 0 0.00 × 10 0 8.45 × 10 1 6.72 × 10 1
f 6 2.43 × 10 0 3.61 × 10 1 2.27 × 10 2 4.81 × 10 2 2.38 × 10 0 2.76 × 10 1
f 7 1.28 × 10 1 9.33 × 10 1 2.06 × 10 0 1.01 × 10 0 4.95 × 10 0 1.04 × 10 0
f 8 1.22 × 10 3 6.35 × 10 1 3.30 × 10 0 3.64 × 10 0 1.22 × 10 3 6.37 × 10 1
f 9 4.94 × 10 0 8.02 × 10 1 7.74 × 10 1 3.43 × 10 1 3.73 × 10 0 9.46 × 10 2
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Mwaura, J.; Engelbrecht, A.P.; Nepomuceno, F.V. Diversity Measures for Niching Algorithms. Algorithms 2021, 14, 36. https://doi.org/10.3390/a14020036

AMA Style

Mwaura J, Engelbrecht AP, Nepomuceno FV. Diversity Measures for Niching Algorithms. Algorithms. 2021; 14(2):36. https://doi.org/10.3390/a14020036

Chicago/Turabian Style

Mwaura, Jonathan, Andries P. Engelbrecht, and Filipe V. Nepomuceno. 2021. "Diversity Measures for Niching Algorithms" Algorithms 14, no. 2: 36. https://doi.org/10.3390/a14020036

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop