Elsevier

Information Sciences

Volume 502, October 2019, Pages 346-362
Information Sciences

A quick semantic artificial bee colony programming (qsABCP) for symbolic regression

https://doi.org/10.1016/j.ins.2019.06.052Get rights and content

Abstract

Artificial bee colony programming (ABCP) is a novel evolutionary computation based automatic programming method, which uses the basic structure of artificial bee colony (ABC) algorithm. In this paper, some studies were conducted to improve the performance of ABCP and three new versions of ABCP are introduced. One of these improvements is related to the convergence performance of ABCP. In order to increase the local search ability and achieve higher quality solutions in early cycles, quick ABCP algorithm was developed. Experimental studies validate the enhancement of the convergence performance when the quick ABC approach is used in ABCP. The second improvement introduced in this paper is about providing high locality. Using semantic similarity based operators in the information sharing mechanism of ABCP, semantic ABCP was developed and experiment results show that semantic based information sharing improves solution quality. Finally, combining these two methods, quick semantic ABCP is introduced. Performance of these novel methods was compared with some well known automatic programming algorithms on literature test problems. Additionally, ABCP based methods were used to find approximations of the Colebrook equation for flow friction. Simulation results show that, the proposed methods can be used to solve symbolic regression problems effectively.

Introduction

Automatic programming is a method, which is used to automatically generate computer programs. Symbolic regression problems can be solved by automatic programming techniques because, a system model or a computer program that produces the desired outputs according to the input values is searched in this problem. In literature, many evolutionary computation based automatic programming algorithms like genetic programming (GP) [32], ant programming [43], dynamic ant programming [45], artificial immune system programming [23], immune programming [37], clone selection programming [11], and biogeography based programming [14] are used for symbolic regression. Including symbolic regression problems, these algorithms have a wide range of application fields such as circuit design [32], [43], [49], data mining [5], [38], [39], classification [5], [10], [12], [39], path planning [24], [32], [47], neural network design [7], fuzzy system design [6], time series prediction [6], [7], prediction [15], [17], [18], [35], [46], etc.

Artificial bee colony programming (ABCP) is one of the evolutionary computation based automatic programming algorithms and it was introduced into literature in 2012 [31] by Karaboga et al. Using this algorithm, various types of problems like symbolic regression can be successfully solved. Golafshani and Ashour used ABCP for the prediction of self-compacting concrete elastic modulus [16]. Golafshani and Behnood also employed ABCP to predict the elastic modulus of recycled aggregate concrete (RAC)[17]. Boudardara and Gorkemli applied ABCP to the Santa Fe and Los Altos Hills trails of artificial ant problem, which is a kind of robotic path planning problem [3]. ABCP is based on artificial bee colony (ABC) algorithm [25], which is a very popular, simple, and flexible optimization algorithm that simulates the foraging behavior of honeybees and this algorithm has been widely used successfully in different fields [1], [27], [30]. However, some researchers argue that the convergence performance of the ABC algorithm for local minimum needs to be improved [30]. In order to cope with this problem, many studies have been carried out [9], [22], [30], [36], [50]. Since having the same algorithmic structure as ABC, disadvantages of ABC and the provided improvements on this point also are related to ABCP. However, ABC and ABCP employ different solution representations, so we cannot use the same formulations in some basic mechanisms of these methods. For example, the formulation of the candidate solution production of ABC cannot be used directly in ABCP. This situation causes some problems when some new ideas which work for ABC algorithm are applied to ABCP, especially ones based on string representation. Considering this kind of problem, we use the quick ABC (qABC) idea introduced in [28], [29] for improving the convergence performance of the ABCP because, the qABC algorithm does not employ a distinct modification of a neighborhood searching formulation or other representation dependent distinct modifications. It is a new version of ABC, which models the behavior of onlooker bees more accurately and improves the performance of the standard ABC in terms of local search ability [28], [29]. More over being a modified version of the standard ABC, qABC uses a new idea for modelling the foraging behavior of honeybees. Therefore, in this paper, as one of the improvements in the ABCP algorithm, this qABC idea was applied to standard ABCP.

In evolutionary computation, locality is a highly important property for the performance of the search [20], [41], [42]. Actually, the locality is about a balance as a small change in genotype also causes a small change in phenotype. Generally, it is hard to design searching operators that provide locality using existing GP representations. In order to achieve locality, some researchers consider syntax [21] while others consider semantics [33], [48] of the representation of individuals. In automatic programming methods like GP, semantics of the program (or the individual) is usually understood as the behavior of this program when it uses the given input values [33], [48]. Uy et al. showed that semantic locality is more efficient than syntactic locality on the GP crossover operator [48]. In our study, in order to improve the performance of the standard ABCP, we also try to achieve semantic locality in the neighborhood searching mechanism, which is used for producing a candidate solution. Using this modified version of ABCP, we expect to get more controlled fluctuations in the employed and onlooker bees’ phases.

As mentioned above, standard ABCP has some drawbacks like poor convergence speed and low locality. The main contribution of this study is improving the performance of ABCP in terms of two different ways. One of them is the algorithmic structure of the swarm intelligence algorithm that ABCP is based on. In this subject, we consider the qABC idea to achieve a better convergence performance with ABCP and propose a new automatic programming method called quick ABCP (qABCP). We can say that, this improvement is about what the algorithm does. The other improvement in standard ABCP provides a higher locality while using the same representation (tree structure) for individuals. This time, considering the semantic locality we modified the information sharing mechanism of the standard ABCP and called this algorithm semantic ABCP (sABCP). By applying this, we modified how the algorithm does something. Then, we applied these two modifications together and called this new version of ABCP quick semantic ABCP (qsABCP). In the experimental studies, ABCP, qABCP, sABCP, and qsABCP algorithms were compared with each other, and with some GP and Cartesian ant programming (CAP) versions on literature test problems. Then, the proposed approaches and ABCP were applied to a real world problem for finding the approximations of the Colebrook equation for flow friction, and their results were compared. The results show that, these new modifications obtain new successful automatic programming methods comparing to competitive ones in the literature and improve the performance of the standard ABCP.

The rest of the paper is organized as follows: The standard ABCP method is explained in Section 2. The proposed new versions of ABCP (qABCP, sABCP, and qsABCP) are introduced in Section 3. Then, the experimental studies and the simulation results are given in Section 4 and finally, Section 5 concludes the paper.

Section snippets

Artificial bee colony programming (ABCP)

ABCP is an automatic programming algorithm like GP. As mentioned before, ABCP is based on ABC, which is a swarm intelligence based optimization algorithm. They use the same analogy. Since the food sources refer to the functional models composed of given terminals and functions in ABCP, each solution shows an alternative model for the considered system.

Representation of solutions: In ABCP, food sources (solutions, individuals, or programs) are represented using tree structure. Every tree node

Quick ABCP (qABCP)

Previous studies show the positive effect of the qABC idea on the convergence performance of ABC based algorithms on both numeric [29] and combinatorial [19] problems. Since the symbolic regression problem has some properties of combinatorial optimization and some properties of numerical optimization, the qABC idea was applied to ABCP, and the qABCP algorithm was developed. Actually, there is only one difference between the standard ABC and qABC models, the behavior of the onlookers. It is

Experimental studies

In order to see the performance of the ABCP, sABCP, qABCP, and qsABCP algorithms on symbolic regression problems, some experimental studies were conducted. Firstly, these algorithms were compared with four GP algorithms, which use different crossover operators. In this comparison study, the test problems and results of GPs were taken from [48]. Then, in order to compare the performances of the ABCPs on different kinds of problems and examine the effect of the qABC model and semantic operators

Conclusions

ABCP is one of the youngest GP-like automatic programming methods, which is based on evolutionary computation, particularly swarm intelligence. It uses the general structure of the ABC algorithm developed by inspiring from the foraging behavior of honeybees. Studies related to ABCP showed that it is successful and usable on symbolic regression problems comparing to GP. However, ABCP has some drawbacks. One of them is about the convergence performance of ABC algorithm to local minimum. Other one

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

The authors declare the following financial interests/personal relationships which may be considered as potential competing interests:

1. There is a patent application for the proposed method in this study.

Applicant: Erciyes University

Inventors: Dervis Karaboga and Beyza Gorkemli

References (50)

  • D. Karaboga et al.

    A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm

    J. Glob. Optim.

    (2007)
  • D. Karaboga et al.

    A comprehensive survey: artificial bee colony (ABC) algorithm and applications

    Artif. Intell. Rev.

    (2014)
  • J. Kushida et al.

    Cartesian ant programming introducing symbiotic relationship between ants and aphids

    Proceedings of the 10th IEEE International Workshop on Computational Intelligence and Applications (IWCIA)

    (2017)
  • G.H. Li et al.

    Artificial bee colony algorithm with gene recombination for numerical function optimization

    Appl. Soft Comput.

    (2017)
  • F. Rothlauf

    Representations for Genetic and Evolutionary Algorithms

    (2006)
  • F. Rothlauf et al.

    On the locality of grammatical evolution

    9th European conference on Genetic Programming (EuroGP’06)

    (2006)
  • O. Roux et al.

    Ant programming: or how to use ants for automatic programming

    2nd International Workshop on Ant Algorithms (ANTS’2000)

    (2000)
  • B. Basturk et al.

    An artificial bee colony (ABC) algorithm for numeric function optimization

    Proceedings of the IEEE Swarm Intelligence Symposium 2006, Indianapolis, Indiana, USA, May 12–14

    (2006)
  • A. Beluco et al.

    An improved expression for a classical type of explicit approximation of the colebrook white equation with only one internal iteration

    Int. J. Hydraul. Eng.

    (2016)
  • F. Boudardara et al.

    Application of artificial bee colony programming to two trails of the artificial ant problem

    Proceedings of the 2nd International Symposium on Multidisciplinary Studies and Innovative Technologies (ISMSIT 2018), Ankara, Turkey, Oct 19–21

    (2018)
  • Y.H. Chen et al.

    Automatic design of hierarchical TS-FS model using ant programming and PSO algorithm

    Proceedings of the 11th International Conference on Artificial Intelligence – Methodology, Systems, and Applications, Varna, Bulgaria, Sep 02–04,

    (2004)
  • Y.H. Chen et al.

    Evolving flexible neural networks using ant programming and PSO algorithm

    Proceedings of the International Symposium on Neural Networks (ISNN 2004), Dalian, Peoples R China, Aug 19–21

    (2004)
  • C.F. Colebrook

    Turbulent flow in pipes with particular reference to the transition region between the smooth and rough pipe laws

    J. Inst. Civ. Eng.

    (1939)
  • L.Z. Cui et al.

    A novel artificial bee colony algorithm with depth-first search framework and elite-guided search equation

    Inf. Sci.

    (2016)
  • P.G. Espejo et al.

    A survey on the application of genetic programming to classification

    IEEE Trans. Syst. Man Cybern. Part C-Appl. Rev.

    (2010)
  • Cited by (26)

    • Application of artificial bee colony programming techniques for predicting the compressive strength of recycled aggregate concrete

      2022, Applied Soft Computing
      Citation Excerpt :

      Next, the best answer is saved, and the following steps continue iteratively: This technique implements a novel information-sharing mechanism for the employed and onlooker bees to obtain a higher locality and more controlled oscillations [56]. In this regard, a random food source is initially generated.

    • Finding physical insights in catalysis with machine learning

      2022, Current Opinion in Chemical Engineering
    View all citing articles on Scopus
    View full text