Elsevier

Knowledge-Based Systems

Volume 104, 15 July 2016, Pages 14-23
Knowledge-Based Systems

An adaptive multi-population artificial bee colony algorithm for dynamic optimisation problems

https://doi.org/10.1016/j.knosys.2016.04.005Get rights and content

Abstract

Recently, interest in solving real-world problems that change over the time, so called dynamic optimisation problems (DOPs), has grown due to their practical applications. A DOP requires an optimisation algorithm that can dynamically adapt to changes and several methodologies have been integrated with population-based algorithms to address these problems. Multi-population algorithms have been widely used, but it is hard to determine the number of populations to be used for a given problem. This paper proposes an adaptive multi-population artificial bee colony (ABC) algorithm for DOPs. ABC is a simple, yet efficient, nature inspired algorithm for addressing numerical optimisation, which has been successfully used for tackling other optimisation problems. The proposed ABC algorithm has the following features. Firstly it uses multi-populations to cope with dynamic changes, and a clearing scheme to maintain the diversity and enhance the exploration process. Secondly, the number of sub-populations changes over time, to adapt to changes in the search space. The moving peaks benchmark DOP is used to verify the performance of the proposed ABC. Experimental results show that the proposed ABC is superior to the ABC on all tested instances. Compared to state of the art methodologies, our proposed ABC algorithm produces very good results.

Introduction

Many real-world optimisation problems have the characteristic of changing over time in terms of decision variables, constraints and the objective function [1], [2]. These problems are referred to as dynamic optimisation problems (DOPs) in the scientific literature. A DOP requires an optimisation algorithm that can dynamically adapt to the changes and track the optimum solution during the execution of the algorithm [2]. Given their practical applications and complexity, DOPs have attracted a lot of research attention. Population-based algorithms, which are a set of methodologies that utilise a population of solutions distributed over the search space, have attracted particular attention, due to their good performance [1], [2]. A key challenge in developing an optimisation algorithm for DOPs is how to maintain population diversity during the search process in order to keep track of landscape changes [3]. Several interesting diversity schemes have been developed in order to improve the search capability of population-based algorithms so that they can adapt effectively to the problem as it changes.

Prediction based methods is one of the diversity schemes which has been widely integrated with other algorithms to maintain the diversity. This methodology uses an algorithm to learn patterns from previous searches, which are then used to predict future changes. It should be noted that memory methods can be categorised as a special case of the prediction method as they store a set of solutions to be used when a problem changes [2]. The prediction method is suitable for problems with cyclic changes. Hatzakis and Wallace [4] proposed a hybrid algorithm that combines an evolutionary algorithm and a forecasting methodology for DOPs. Forecasting is used to predict the movement of the optimum based on previous movements. The results demonstrate that this method is suitable for problems which change quickly if the movement of the optimum solution is predicted correctly. Sim et al. [5] used a prediction based method to predict how the environment would change and the time of the next change. The authors utilised a Markov chain that uses the previous movement of the search in order to predict future changes and a linear regression to predict when the change will occur. The results demonstrate that the hybrid algorithm performs with prediction, than without. Branke and Mattfeld [6] proposed an anticipation-based algorithm for DOPs. This algorithm attempts to simultaneously search for a good quality solution and move the search into a different area based on the previous changes. This proposed algorithm was tested on a dynamic job-shop scheduling problem and it was shown to produce very good results compared to other algorithms. The advantage of the prediction method is that it can be effective in detecting the global optima quickly, if the predictions are accurate [2]. The main drawback with this method is that it depends on the training model and in many cases the data used during the training process does not capture real world scenarios and there is a possibility of training errors due to lack of training data [7], [2].

Memory based methodologies aim to maintain diversity. They use a memory with a fixed size to store some of promising solutions that are captured during the search process. When a change is detected, the stored solutions will be reinserted into the current population and the population will be filtered to include only the best solutions. Examples of memory based methodologies can be found in [8], [9], [10], [11]. These methodologies have worked well when the dynamic problems are periodical or cyclic. The drawback is that they have parameter sensitivities that need to be determined in advance, and most real world problems are not cyclic in nature.

Self-adaptive algorithms attempt to adaptively improve the diversification of population-based algorithms based on environmental changes. They use mechanisms to adapt the algorithm to the changes in the search space [2]. Adaptive mechanisms can improve algorithm search behaviour and also reduce the need for manual parameter tuning. The idea is to apply different operators or parameter values for different problems by adaptively changing them during the search process [7], [2]. Grefenstette [12] proposed a self-adaptive genetic algorithm for DOPs. The proposed algorithm adaptively selects different crossover/mutation operators at each generation. The author uses an agent based concept to control the selection process, and each agent represents a crossover or mutation operator. All agents are executed simultaneously and the one that generates the best solution is selected for the current instance. Promising results were achieved when compared to other algorithms. Grefenstette [12] also proposes an idea called a genetic mutation rate for the DOP. The idea is to set the value of the mutation rate based on the fitness of the population. This idea was shown to generate better results compared to the basic genetic algorithm. Ursem [13] proposed a multinational genetic algorithm for the DOP. The main parameters are encoded with the decision variables and are evolved during the solution process. The results show that this algorithm is very good for simple instances in which the velocity of the moving peaks is constant. It is also able to adapt by changing the algorithm parameters during the search. However, encoding the parameters with the solution decision variables requires specialist evolutionary operators. In addition, it is also very difficult to determine the values of the parameters [2].

Multi-population methods improve diversity by dividing the population of solutions into several sub-populations and distributing them throughout the search landscape so that they can more effectively capture the problem changes. The idea is to maintain population diversity by assigning a different sub-population to a different area, where each one is responsible for either intensifying or diversifying the search process [7], [2]. These sub-populations interact with each other via a merge and divide process when a change in the environment is detected. The multi-population method has been shown to be effective in dealing with various problem changes, whether they are cyclic or non-cyclic, and it has outperformed other methods on various problem sizes. Branke et al. [14] proposed a self-organising scouts multi-population evolutionary algorithm for the DOP. The population of solutions is divided into two groups; small and large. The small population group is responsible for tracking promising solutions found so far, while the large population group tries to find a new region of the search space that has a new peak. The proposed algorithm was tested on the moving peaks benchmark (MPB), obtaining very good results. Blackwell and Branke [15] proposed a multi-swarm optimisation algorithm for the DOP. The swarm is divided into subsets of swarms. These multi-swarms interact with each other locally, through algorithm parameters, and globally by using an anti-convergence mechanism. The anti-convergence mechanism searches for new peaks by removing the worst ones and re-initialising them into a different area in the search space. The proposed algorithm obtained very good results when tested on MPB problems. Mendes and Mohais [16] presented a multi-population differential evolution algorithm for the DOP. The population of solutions is divided into several sub-populations. Each sub-population is assigned to a different area of the search space. The experimental results show that this algorithm obtains very good results for MPB problems. Li and Yang [17] proposed a fast multi-swarm Particle Swarm Optimisation (PSO) algorithm for the DOP. The swarm population is divided into two types of swarms; parents and children. The parent swarm explores the entire search space to seek the global optima, while the child swarm is responsible for monitoring the search behaviour around the best solution obtained by the parent swarm. The position of the child swarm is dynamically updated during the process. The algorithm was tested on the MPB problems and produced good results when compared to other methods. Yang and Li [18] presented a clustering-based particle swarm optimiser for the DOP. The swarm is divided based on a hierarchical clustering method to locate and track multiple peaks. The algorithm achieved very good results when tested on the MPB. Turky and Abdullah [19] proposed a multi-population electromagnetic algorithm for DOPs. The proposed algorithm divides the population into several sub-populations to simultaneously explore and exploit the search process. The algorithm was tested on MPB problems and obtained very good results when compared to other population diversity mechanisms. The same authors [20] also presented a multi-population harmony search algorithm for the DOP. The population is divided into sub-populations. Each sub-population is responsible for either exploring or exploiting the search space. An external archive is utilised to track the best solutions found so far, which are used to replace the worst ones when a change is detected. The results show that this algorithm produces good results when compared to other methods. Sharifi et al. [21] proposed a hybrid PSO and local search algorithm for DOPs. The algorithm utilises a fuzzy social-only model to locate the peaks. The results show that this algorithm can produce very good results for MPB problems. In Li et al. [22] comprehensive experimental analysis was reported on the performance of a multi-population method with various algorithms in relation to DOPs. The authors concluded that the multi-population method is able to deal effectively with various DOPs and has the ability to maintain population diversity. It is also able to help the search in locating a new area through a divide and merge process and information exchange. The authors also highlighted several weaknesses of their method that relate to the number of sub-populations, the distribution of solutions and the reaction to problem changes.

Existing works on DOPs demonstrate that employing multi-population methods are the most effective method in maintaining population diversity. The features that make the multi-population methodologies popular are [3]: (i) it divides the population into sub-populations, where the overall population diversity can be maintained since different populations can be located in different areas of the problem landscape, (ii) it has the ability to search different areas simultaneously, enabling it to track the movement of the optimum, and (iii) various single population-based algorithms can be integrated within multi-population methods.

Although multi-population methods have shown success when applied to DOPs, most of them use a number of sub-populations and the population diversity is maintained only through the sub-population distribution [3]. The number of sub-populations has a crucial impact on algorithm performance as it relates to the difficulty of the problem, which is not known in advance, and changes during the search. In addition, the solutions in the sub-populations may not be diverse enough as some methods are only concerned with how to divide the population into sub-populations, rather than focussing on diversification. To address these issues, this work proposes an adaptive multi-population artificial bee colony (ABC) algorithm for the DOP. The proposed ABC utilises a clearing scheme to remove redundant solutions in order to maintain diversity and enhance the exploration process. To efficiently track the landscape changes, the proposed ABC algorithm adaptively updates the number of sub-populations based on the problem change strength.

In this paper, the key objectives are:

  • i.

    To propose an artificial bee colony algorithm that utilises a multi-population and a population clearing scheme to efficiently solve the dynamic optimisation problem.

  • ii.

    To propose an adaptive multi-population algorithm that updates the number of the sub-populations based on the problem change strength.

  • iii.

    To test the performance of the proposed algorithm on dynamic optimisation problems using different scenarios and compare the results with other methodologies.

We used the moving peaks benchmark DOP with a different number of peaks to evaluate the effectiveness of the proposed ABC. Results demonstrate that the proposed ABC performs better than a basic ABC on all tested scenarios. Compared to the state of the art method, the proposed ABC produces very good results for many instances.

Section snippets

The proposed algorithm

This section presents the basic artificial bee colony algorithm, as well as our proposed adaptive multi-population algorithm.

Experimental setup

This section discusses the Moving Peak Benchmark (MPB), evaluation metric and the parameter settings.

Results

We carried out three set of experiments. In first one, we compare the results of Multi-pop-ABC with the basic ABC. In second one, the results obtained by Multi-pop-ABC are compared with state of the art methods. In the third experiment, the results of Multi-pop-ABC on well-known test functions are compared with state of the art methods.

Conclusion

This paper has presented a modified artificial bee colony algorithm for dynamic optimization problems. The aims of our modifications were to enhance the capability of the algorithm to efficiently deal with DOPs. We first integrated it with a multi-population method to scatter the solution over the search process so that they can search and track the optimum solution simultaneously. An adaptive multi-population was also proposed to adaptively change the number of sub-populations based on the

Acknowledgements

This work was supported by the Ministry of Education, Malaysia (FRGS/1/2015/ICT02/UKM/01/2) and the Universiti Kebangsaan Malaysia (DIP-2012-15).

References (37)

  • H. Cui et al.

    A novel single multiplicative neuron model trained by an improved glowworm swarm optimization algorithm for time series prediction

    Knowledge-Based Syst.

    (2015)
  • M. Mitić et al.

    Chaotic fruit fly optimization algorithm

    Know.-Based Syst.

    (2015)
  • W.-C. Yeh

    An improved simplified swarm optimization

    Knowledge-Based Syst.

    (2015)
  • Y. Jin et al.

    Evolutionary optimization in uncertain environments-a survey

    IEEE Trans. Evol. Comput.

    (2005)
  • I. Hatzakis et al.

    Dynamic multi-objective optimization with evolutionary algorithms: a forward-looking approach

  • A. Simões et al.

    Improving prediction in evolutionary algorithms for dynamic environments

  • J. Branke et al.

    Anticipation and flexibility in dynamic scheduling

    Int. J. Prod. Res.

    (2005)
  • C. Cruz et al.

    Optimization in dynamic environments: a survey on problems, methods and measures

    Soft Comput.

    (2011)
  • Cited by (106)

    View all citing articles on Scopus
    View full text