1. Introduction
In the realm of optimization, the emerging heuristic algorithm has become a focus of researchers due to its convenience and comprehensibility. Swarm intelligence (SI) is an important branch of biological heuristic computing. The SI algorithm takes advantage of the collaborative competitive relationship among populations to pilot the population to conduct the optimal solution, which fascinates a great deal of investigators. Several novel algorithms have been put forward in recent years. For example, SFO [
1], HHO [
2], BMO [
3], EJS [
4], MCSA [
5], SDABWO [
6], STOA [
7], SCA [
8], SSA [
9] et al. Swarm-based intelligent optimization algorithm has greatly promoted its application in engineering optimization because it has abandoned gradient information in traditional optimization algorithms, such as time series prediction [
10], image segmentation [
11], feature selection [
12] and cloud computing scheduling tasks [
13].
The AEO algorithm [
14] is a SI algorithm introduced by Zhao et al. in 2019. The AEO algorithm is designed according to energy flow and material circulation in natural ecosystem. The algorithm model is established through three stages of production, consumption and decomposition. The first stage is the producer, who itself obtains energy from nature and uses it to describe the plants in the ecosystem. The second stage is consumer, whose main body is an animal; the final stage is the decomposer, which feeds on both the producer and the consumer.
In the population of AEO algorithm, all individuals are called consumers except for one producer and decomposer. Consumers can be divided into herbivorous animals, carnivorous animals and omnivorous animals according to their different ways of foraging. Energy levels in an ecosystem decrease along the food chain, so producers have the highest energy levels, and decomposers have the lowest. AEO algorithm has a strong ability to equilibrium the whole search and local exploitation, and is easy to implement, with few design parameters, and has good applications in many fields. One study [
15] improved AEO by introducing self-adaption nonlinear weight, optional cross-learning and Gaussian mutation strategies, as well as an excogitated IAEO algorithm to handle the optimization problem of PEMFC. In [
16], the authors applied an EAEO to settle the actuality problem of distributed power distribution in the distribution system by combining AEO with the sine and cosine operator so as to cut down the power wastage of the distribution network. In [
17], the authors proposed the MAEO algorithm to handle the parameter estimation of the PEMFC problem by introducing the linear operator H to balance exploration and exploitation. The authors of [
18] proposed a promising blend multi-population algorithm HMPA for managing multiple engineering optimization problems. HMPA adopts a new population division method, which divides the population into several subpopulations, each of which dynamically exchanges solutions. An associative algorithm based on AEO and HHO was presented. Regarding this knowledge, multiple strategies were mixed to get the maximum efficiency of HMPA. For [
19], the authors proposed a new random vector function chain (RVFL) network combined with the AEO algorithm to calculate the optimal outcome of the SWGH system. The authors of [
20] proposed a new fitness function reconstruction technology based on the AEO algorithm for photovoltaic array reconstruction optimization. The authors of [
21] used an AEO algorithm to acquire the ideal modulation parameters of a PID controller for an AVR system.
Although the AEO algorithm has been successfully used in the above domains, the AEO algorithm first explores all individuals and then executes the exploitation in sequence mode, which aggrandizes the computational burden and retards the optimization speed of the AEO. Secondly, the correcting of the AEO in the exploration stage puts individuals at the end of the biological chain, which does not account for the biological competition in nature—that is, every creature preys on other species and is itself the target of prey, so the solution accuracy is not high.
For the sake of making the AEO characteristics better and ameliorating the accuracy of an optimization scheme, inspired by environmental stimulation and rival mechanism, when the population diversity in the environment is large, there are fewer similar organisms distributed in unit space, and the exploration ability is strong. In this case, the exploitation should be strengthened, and vice versa. Based on this, this paper proposes a combination of environmental stimuli and biological competition mechanism improved the artificial ecological optimization algorithm (SIAEO), improvements on AEO to do the following two aspects: (1) the environmental stimulation mechanism is introduced into the AEO algorithm, the external environment stimulation to achieve defined by the population diversity population interaction perform manipulations of consumption and, reduce the computational complexity of algorithm; (2) In the consumption stage, considering the biological competition, an individual is added to die due to predation, and the maximum cumulative success rate of each individual performing different tasks is used to guide the individual to choose a more suitable consumption renewal strategy, which redounds to the exploitation of the algorithm in the exploration stage. In the decomposition stage, two arbitrarily chosen individuals are introduced to define a potential exploitation and update formula, which can excellently assist the algorithm apart from the local optimal so as to build on proportionate the overall search and local optimization of the algorithm.
K-means [
22,
23] is an excellent clustering algorithm in a complex clustering problem. After determining the number of classes as well as clustering centers, the nearest neighbor principle is used to allocate samples to the categories determined by K clustering centers, and the in-class distance is minimized, and the inter-class distance is maximized by constantly updating the K-clustering centers. Among them, the determination of K cluster centers belongs to the high-dimensional optimization problem.
To demonstrate the effectiveness and functionality of the SIAEO algorithm, this experiment consists of two parts. Firstly, 40 benchmark functions composed of the CEC2017 and CEC2019 are designed to measure the performance of SIAEO to reply to complex high-dimension numerical optimization, and the results are paralleled with nine other excellent algorithms. The numerical optimization potential of the SIAEO is proved. Secondly, the validity of SIAEO solving the engineering optimization and K-means optimal clustering center was verified, and four engineering optimization problems and nine criterion data sets of a UCI machine learning knowledge base were clustered. The results confirmed the significance and competitiveness of the SIAEO–K-means algorithm.
The structure of this article is that
Section 2 outlines the AEO, and
Section 3 gives a list of the improvement strategy of the improved AEO algorithm. In
Section 4, numerical examples and practical application examples and cluster optimization show the excellent performance of the SIAEO. In the conclusions, we review the entire paper and point out directions for future research.
2. AEO Algorithm
For the
-dimensional optimization problem:
where
represents the optimization function,
is the
decision variable and
and
are the upper and lower bounds of
, respectively.
The AEO algorithm simulates the energy flow of the ecosystem, which is presented in 2019. According to the composition of the food chain, it is divided into three stages: production, consumption and decomposition. The detailed steps for solving the optimization problem AEO algorithm are:
- (1)
Initialization: Suppose
expresses the population size, randomly generate
individuals in the
-dimensional decision space to compose the early generation population ed by
, the
j-th dimension of the individual
is created by
in which
is a random number within (0, 1).
- (2)
Production phase: Suppose the
t-th population is
, which are ranked in descending order with optimal value, in the production stage, only a temporary location update is performed on producer
. The specific update strategy is a linear combination of best
and randomly generated individual
, and the updated formula is:
where
expresses the coefficient used for linear weighting,
,
, represents a member arbitrarily generated in the solution space;
respectively represent this iteration and the final iteration.
indicates a random value between [0, 1]. Equation (2) shows that in the pre-development stage of the algorithm, producers tend to explore
extensively, while in the later stage, focus on further exploitation near
.
- (3)
Consumption phase: In this stage, the second to
N-th individuals are temporarily updated according to the random walk strategy generated by Levy’s flight. Let
and
be two random numbers with standard normal distribution and the consumption factor is defined:
in which
represents the normal distribution.
The
i-th individual was classified and updated according to probability by using the formula of herbivorous (
1), carnivorous (
2) and omnivorous (
3), i.e.,
where
is a positive integer with a random value in
,
are the random values in [0, 1].
- (4)
Decomposition phase: The temporarily updated population
is further revised to obtain the final revised population:
where
is a random number that is normally distributed,
,
and
is a random number between [0, 1].
In summary, the AEO algorithm wantonly creates initial solutions. In the process of updating and optimizing the population of each generation, the position of the producer is revised by relying on Equation (2), while the updating of consumers are carried out according to the isoprobability decision method by using Equation (4) and the final decomposition process is performed by Equation (5) until the termination conditions are met, the algorithm ends.
3. An Improved Interactive Artificial Ecological Optimization Algorithm Based on Environmental Stimulus and Biological Competition Mechanism
In an ecosystem, the survival and death of various organisms in the ecosystem, the predation of animals, and the stability and balance of the ecological chain are all greatly affected by the environment. In the process of predation, animals respond to different environmental stimuli in order to cope with the impact of the intensity of environmental stimulus on the predation patterns of animals. The incentive mechanism is a mechanism to describe the relationship between environmental stimulus and individual response. Combined with the AEO algorithm, environmental stimulus S is defined to guide individuals to carry out task conversion between consumption and decomposition, thereby meaning that consumption and decomposition can be executed interactively rather than sequentially, thereupon then reducing the complexity of the algorithm. In the process of predation, animals have incentive responses to different environmental stimuli and form their own preferences that are influenced by natural enemies. Furthermore, since the survival of organisms itself follows the competition mechanism of survival of the fittest, the introduction of competitive trend in the consumption stage can better simulate the real situation of the ecosystem.
The purpose of this paper is to better improve the exploration and development ability of the AEO algorithm. Therefore, we introduced an interactive execution environment to stimulate the consumption and decomposition of tasks through the incentive mechanism and biological competition relations into the AEO algorithm. The consumption phase of the population individuals changes by searching the environment, and the largest accumulation of mission success rates guides the best-performing way to feed. The method of isoprobability execution of the AEO is abandoned, the convergence ability of the AEO is accelerated, and the exploitation function of the AEO in the exploration stage is intensified. At the same time, during the decomposition stage, through the introduction of arbitrary individuals, the exploration ability in the exploitation stage is boosted.
3.1. Environmental Stimulus
Environmental stimulus describes the external drive of an individual to perform a task. In the process of an algorithm search, the execution opportunity of consumption and decomposition can be measured by population diversity.
Population diversity is an indicator that describes the differences between individuals and reflects the distribution of populations [
24]. For the
t-generation population, population diversity [
25] was measured as:
where
and
represent the size of population and reconciliation space, respectively,
is the dimension,
is the population center,
.
Environmental stimulus is defined as:
as well as
indicates the sensitivity coefficient of the stimulus to diversity. Referring to the value in reference [
25] and simulation experiment,
is 50 in this paper.
When , the variety of the group is better and the current algorithm is in the exploration stage. This moment increasing the exploitation potential of the algorithm while carrying out exploration can be helpful to improve the calculation accuracy. Therefore, when , the consumption stage of AEO algorithm is implemented, and the updated formula is modified using a competition relationship to enhance the exploitation ability. When , the population diversity is relatively poor, and the individuals of the population have converged to the vicinity of the optimal solution. At this time, the exploitation should be strengthened to help the algorithm seek out the best solution, nevertheless at the same time, the scope of the population should be maintained to forestall individuals from getting bogged down in the local optimal. Therefore, when , the decomposition stage of AEO algorithm is implemented in which the individuals emulate from the best individuals as well as the random mean is integrated to enhance the exploration performance. To boost the global and local searching of the AEO, the calculation precision of the algorithm is improved.
3.2. Incentive Mechanism
In the incentive mechanism, the individual’s success in performing a search task refers to the improvement of its fitness, and the individual’s propensity to perform a task is measured by the cumulative success rate. The cumulative success rate should increase when the individual successfully performs the task and decrease when the individual fails to perform the task. The greater the cumulative success rate, the greater the propensity to perform the task, and vice versa.
By absorbing the advantages of the incentive mechanism, the three different consumer predation modes (Task 1), (Task 2) and (Task 3) in the consumption stage are regarded as three different search tasks. Therefore, we utilize the cumulative times of individual successfully executing task until the -th iteration to calculate the cumulative success rate. The specific methods are as follows:
- (a)
Cumulative success rate initialization. For each individual
in the initial population, a three-dimensional cumulative success rate vector
is initialized, where
represents the initial cumulative success rate of the
-th individual performing the
-th task. The assignment method is:
where
stands for the random value in
, and Formula (10) ensures that the sum of the elements after initialization is 1. Then initialize the three dimensional count vector
to store the times of individual
successfully executing task
, where
.
- (b)
Cumulative success rate update process. Firstly, the update process of count vector
is introduced. Let
represent the identifier of the
-th task performed by the
-th individual of in the
-th generation. When individual
i performs task
j, let
; otherwise, it is 0. Since each individual in each generation performs only one of the three tasks in Equation (4). Therefore, for individual
i, only one element of
(
) is 1. Let
represent the new individual obtained by individual
i of in the
t-th generation after performing task
j, then the
. If
is superior to
, that is, individual
i successfully performs task
j, then the possibility of executing task
j next time should be increased while the chance of executing other tasks should be weakened. The
-th element of the corresponding count vector
increases by 1 while the remaining elements remain unchanged, that is,
where
refers to the individual’s fitness, which is defined as the objective function value in this paper.
If
is inferior to
, that is, individual
i fails to execute task
j, then the possibility of executing task
j next time should be reduced and the chance of executing other tasks should be increased. The
-th element of the corresponding count vector
remains unchanged, while the current value of other elements increases by 1, that is
At this point, the vector
of the cumulative success rate of the next generation of individual
i is updated with the count vector
as:
For each individual, cumulative success rate vector
can be calculated. Let
and take
as a definite indicator of the task to be executed in the next consumption phase. In the consumption phase of the AEO, the corresponding updatings is executed with equal probability without considering the incentive mechanism. Now, formula (13) is used to calculate the cumulative success rate of each individual performing the three tasks, and the strategy corresponding to the * task is determined according to the indicator of task propensity
, so as to motivate individuals to explore more promising areas in a more appropriate way. The incentive mechanism pseudocode is named Algorithm 1.
Algorithm 1: Incentive mechanism (N, , , ) |
1 | For t-th generation population |
2 | Calculated population diversity and environmental stimulus |
3 |
|
4 | for i = 1:N |
5 |
|
6 | Perform *; |
7 | end for % Get the updated population |
8 |
|
9 |
|
10 |
|
11 | Update optimal solution and fitness value |
12 | |
13 |
|
14 | end if |
15 |
|
16 |
|
17 |
|
18 |
|
19 |
|
20 | for i=1:N |
21 | Execute the decomposition phase |
22 | end for |
23 |
|
Output: generation population |
3.3. Updating Based on Competition Mechanism
Due to ecological competition, the individuals in the consumption stage of the ecosystem eat both the low-ranking organisms and the high-ranking natural enemies. In Equation (4), the influence of natural enemies is not taken into account, which makes the algorithm have strong exploration ability but poor exploitation ability in the consumption stage. In Equation (5), the algorithm is apt to stumble into local optimization as a result of only considering the lead of the optimal individual. When choosing the execution strategy of the algorithm according to the environmental stimulus, each strategy should have both exploration and exploitation performance. Therefore, the influence of predator predation is integrated into (4), and the Task to be executed is determined according to the maximum cumulative success rate. That is, if the
, then the Task* is executed and updated as
where
means a positive integer of the random value in interval
,
indicates a positive integer of the random value of
, and
are random numbers at (0, 1).
In Equation (5), the drag of random individuals is integrated into enabling the algorithm to from local optimum. For two randomly selected individuals
and
in the current population, a more reasonable updating formula is put forward to substitute for the decomposition strategy of the original algorithm. Formula (15) is adopted to displace the intrinsic individual position updating strategy of Formula (5):
Other parameters are the same as Equation (5). In Equation (15), the insertion of two heterogeneous individuals in the population can perfectly heighten the universality of exploration of the algorithm and aid the algorithm in averting the local optimum.
3.4. Implementation Steps of SIAEO Algorithm
To make the above preparations, the incentive mechanism and competition relationship were integrated into AEO, the environmental stimuli were defined according to population diversity, and the next-generation search strategy was determined according to the cumulative success rate of the search tasks, so as to effectively make the convergence speed and the precision in the calculation of the AEO better. The global searching and local optimization of the AEO balance are further promoted by modifying the updated formula of consumption and decomposition stage through competition relationship. Based on this, this paper provides an improved artificial ecological optimization algorithm (SIAEO) that integrates into environmental stimulus and competition mechanism. The execution programs of the SIAEO are described as:
Step 1: Set algorithm parameters.
Step 2: According to Equation (1), the initial population is randomly generated and the cumulative success rate of each individual performing three different search tasks is initialized and assigned.
Step 3: The diversity () of the population and the environmental stimulus were calculated through Equations (6)–(8), and the individuals were rearranged in ascending order in light of the fitness value.
Step 4: According to the numerical value of , the corresponding strategy is executed to obtain the new population, as follows:
If , execute the consumption operator, each individual adopts the corresponding formula in Formula (14) to update according to the maximum cumulative success rate; The cumulative success rate of each individual performing three search tasks was calculated;
If , then use Equation (15) to perform the decomposition operator.
Step 5: Judge whether is true; if so, make , then the algorithm turn to Step 3. Otherwise, the algorithm ends and outputs the best solution and corresponding function value.
The working frame of the SIAEO is displayed in
Figure 1.
3.5. Time Complexity Analysis of the Algorithm
In the SIAEO, if the meanings of
,
and
are shown above, then the time complexity of the beginning phase is
. The time complexity of the population diversity and the production are
and
, while consumption and the decomposition phase are both
. According to the incentive mechanism, only one of the two can be executed in an iteration, but because the consumption operator and the decomposition operator contain exploration and exploitation capacity in the meantime, the stimulus incentive mechanism properly uses these two operators and better balances the relationship between them. The complexity of evaluating fitness values for each individual is
. The complexity of sorting fitness values is
. As a consequence, the total computational time complexity of the SIAEO algorithm is:
5. Conclusions
In artificial ecosystem optimization algorithms, the relationship between exploration and exploitation has always been the focus of research. In this paper, by introducing the environmental stimulus incentives mechanism, which was defined by the population diversity of the external environment stimulus to assist populations to realize the conversion between consumption and decomposition, the largest cumulative success rate by individuals performing different tasks to guide the consumption of individual choice was found to be more suitable for an update strategy. This method decreases the complexity of the AEO and improves the calculation precision.
At the same time, in the consumption stage, a new exploration and updating method that uses biological competition to make it have successfully random search features is proposed. Because of this, an improved artificial ecosystem optimization algorithm (SIAEO) on account of environmental stimulus incentive mechanisms and biological competition was proposed. Two types of tests were developed to confirm the superiority of the SIAEO. The validity of the SIAEO and other intelligent algorithms and the AEO variant algorithms to resolve the CEC2017 and CEC2019 benchmark functions was confirmed in the first set of experiments. The SIAEO has a greater solving precision and convergence speed than contrast algorithms, according to the findings of the experiments. The SIAEO’s better stability and robustness are further demonstrated through statistical tests and the convergence curve.
The second group of experiments verified the usefulness of the SIAEO. Four engineering minimize problems verify the efficiency of the SIAEO in light of the complex engineering nonlinear search problems. The SIAEO–K-means model was established to optimize the K-means clustering center, and nine UCI standard data sets were applied in the experiment. The results showed that SIAEO–K-means obtained higher evaluation index values and had better performance in high-dimensional clustering data sets. The SIAEO exceeds the comparative algorithms according to optimization ability and performance in addressing high-dimensional problems in light of the two groups of experimental data.
As the AEO is a new heuristic algorithm, a more effective improvement strategy to balance its exploration and exploitation ability is studied to improve its optimization ability. The authors of [
54] provided a dynamic data flow clustering method based on intelligent algorithms, providing a reference for the fusion of dynamic data clustering and heuristic algorithms. Another study [
55] required an optimized estimation of hydraulic jump roller length. These new requirements need further exploration of the large-scale clustering ability of AEO algorithm and its deep application in the mechanical field in the future.