A quick semantic artificial bee colony programming (qsABCP) for symbolic regression
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)
Review of explicit approximations to the colebrook relation for flow friction
J. Pet. Sci. Eng.
(2011)- et al.
Evolving rule-based classifiers with genetic programming on GPUs for drifting data streams
Pattern Recognit.
(2019) - et al.
Clone selection programming and its application to symbolic regression
Expert Syst. Appl.
(2009) - et al.
A study on the use of non- parametrictests for analyzing the evolutionary algorithms behaviour: a case study on the CEC2005 special session on real parameter optimization
J. Heuristics
(2009) Introduction of biogeograph-based programming as a new algorithm for solving problems
Appl. Math. Comput.
(2015)- et al.
Prediction of self-compacting concrete elastic modulus using two symbolic regression techniques
Automat. Constr.
(2016) - et al.
Automatic regression methods for formulation of elastic modulus of recycled aggregate concrete
Appl. Soft Comput.
(2018) - et al.
Predicting the climbing rate of slip formwork systems using linear biogeography-based programming
Appl. Soft Comput.
(2018) - et al.
Quick combinatorial artificial bee colony -qCABC- optimization algorithm for TSP
the Second International Symposium on Computing in Informatics and Mathematics (ISCIM 2013)
(2013) - et al.
The effects of locality on the dynamics of decoder-based evolutionary search
Proceedings of the Genetic and Evolutionary Computation Conference
(2000)
A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm
J. Glob. Optim.
A comprehensive survey: artificial bee colony (ABC) algorithm and applications
Artif. Intell. Rev.
Cartesian ant programming introducing symbiotic relationship between ants and aphids
Proceedings of the 10th IEEE International Workshop on Computational Intelligence and Applications (IWCIA)
Artificial bee colony algorithm with gene recombination for numerical function optimization
Appl. Soft Comput.
Representations for Genetic and Evolutionary Algorithms
On the locality of grammatical evolution
9th European conference on Genetic Programming (EuroGP’06)
Ant programming: or how to use ants for automatic programming
2nd International Workshop on Ant Algorithms (ANTS’2000)
An artificial bee colony (ABC) algorithm for numeric function optimization
Proceedings of the IEEE Swarm Intelligence Symposium 2006, Indianapolis, Indiana, USA, May 12–14
An improved expression for a classical type of explicit approximation of the colebrook white equation with only one internal iteration
Int. J. Hydraul. Eng.
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
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,
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
Turbulent flow in pipes with particular reference to the transition region between the smooth and rough pipe laws
J. Inst. Civ. Eng.
A novel artificial bee colony algorithm with depth-first search framework and elite-guided search equation
Inf. Sci.
A survey on the application of genetic programming to classification
IEEE Trans. Syst. Man Cybern. Part C-Appl. Rev.
Cited by (26)
Immune Plasma Programming: A new evolutionary computation-based automatic programming method
2024, Applied Soft ComputingA comprehensive review of automatic programming methods
2023, Applied Soft ComputingInvestigating the best automatic programming method in predicting the aerodynamic characteristics of wind turbine blade
2023, Engineering Applications of Artificial IntelligenceDifference-based firefly programming for symbolic regression problems
2023, Computer Standards and InterfacesApplication of artificial bee colony programming techniques for predicting the compressive strength of recycled aggregate concrete
2022, Applied Soft ComputingCitation 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