# Genetic Programming: On the Programming of Computers by Means of Natural Selection (Complex Adaptive Systems)

## Discover the world's research

**15+ million**members**118+ million**publications**700k+**research projects

- ... We use the concepts of CI to design an algorithm supporting the process redesign problem. To match CI capabilities as problem solution and BPM requirements as problem domain, we are confronted with decisions about the appropriate algorithm, about design elements and about constructional aspects of the chosen CI algorithm (Koza, 1992 ). Design decisions cover requirements from the problem domain, its representation and objects for optimization , as well as the representation of the design solutions. ...... In the set of nature-inspired computational methodologies from CI, EAs fit best the proven improvement strategy of evolutionary principles. They draw from genetic algorithms (Holland 1992 ), evolutionary strategies (Rechenberg 1973; Schwefel 1977), evolutionary programming (Fogel et al. 1966), and genetic programming (Koza 1992) abstracting the evolutionary reproduction cycle (Abraham 2005 ). Additionally, EAs represent a suitable solution to any optimization problem in the absence of any specialized technique. ...... In doing so, the processing of nested lists starts from the left hand side, similar to functional notations in MS Excel and LISP. The latter has already proven to serve many optimization problems (Koza 1992). Following the object perspective and to ensure proper object flows, a process design always begins with the process input and ends with the process output represented by the variable 78 or 79 respectively. ...Article
- Nov 2016
- Inform Syst Front

Business process management (BPM) is an acknowledged source of corporate performance. Despite the mature body of knowledge, computational support is considered as a highly relevant research gap for rede-signing business processes. Therefore, this paper applies Evolutionary Algorithms (EAs) that, on a concep-tual level, mimic the BPM lifecycle – the most popular BPM approach – by incrementally improving the status quo and bridging the trade-off between maintaining well-performing design structures and continu-ously evolving new designs. Beginning with describing process elements and their characteristics in matri-ces to aggregate process information, the EA then processes this information and combines the elements to new designs. These designs are then assessed by a function from value-based management. This economic paradigm reduces designs to their value contributions and facilitates an objective prioritization. Altogether, our triad of management science, BPM and information systems research results in a promising tool for process redesign and avoids subjective vagueness inherent to current redesign projects. - ... Genetic Programming (GP) is a class of evolutionary computation techniques to evolve computer programs originally introduced by Koza [16]. GP uses genetic algorithm mutation, crossover and selection operators adapted to work on pop- ulations of program structures. ...... One of the main points regarding GP made by Koza is that a wide vari- ety of different problems from many different fields can be recast as requiring the discovery of a computer program that produces some desired output when presented with particular inputs [16]. Ideally, this process of discovery could take place without requiring a human to explicitly make decisions about the size, shape, or structural complexity of the solutions in advance. ...... The problems of evolving Boolean functions of arity n, such as conjunctions (AND) or parity (XOR), have long been used as benchmarks in the field of GP [16,19], and are well-understood in the PAC-learning framework [51] - conjunctions are evolvable efficiently, while parity problems are not. Unlike the problems considered in the previous sections, Boolean functions have a clear input/output behavior, allowing a natural definition of a fitness function related to program inputs and outputs, and can naturally support larger function and terminal sets. ...Preprint
- Nov 2018

Genetic Programming (GP) is an evolutionary computation technique to solve problems in an automated, domain-independent way. Rather than identifying the optimum of a function as in more traditional evolutionary optimization, the aim of GP is to evolve computer programs with a given functionality. A population of programs is evolved using variation operators inspired by Darwinian evolution (crossover and mutation) and natural selection principles to guide the search process towards better programs. While many GP applications have produced human competitive results, the theoretical understanding of what problem characteristics and algorithm properties allow GP to be effective is comparatively limited. Compared to traditional evolutionary algorithms for function optimization, GP applications are further complicated by two additional factors: the variable length representation of candidate programs, and the difficulty of evaluating their quality efficiently. Such difficulties considerably impact the runtime analysis of GP where space complexity also comes into play. As a result initial complexity analyses of GP focused on restricted settings such as evolving trees with given structures or estimating the quality of solutions using only a small polynomial number of input/output examples. However, the first runtime analyses concerning GP applications for evolving proper functions with defined input/output behavior have recently appeared. In this chapter, we present an overview of the state-of-the-art. - ... Mangasarian et al. [2] employed the Multisurface Method, Recurrence Surface Approximation, and a modified Back-propagation Artificial Neural Network (ANN) to automatically classify a patient's data into benign or malignant case achieving an acceptable classification accuracy. Such dataset has been investigated by many researchers with many distinct techniques with varied results [4]–[13] For the last decades, Evolutionary Computation (EC) algorithms , more specifically methods such as the Genetic Programming (GP) [14]–[17] algorithm that can be used as hyper-heuristics, have been employed to generate rule or treebased classifiers that could be interpreted by humans, as opposed to what happens to ANNs. Another interesting use of EC algorithms is to search for useful transformations of the dataset or to construct new features that are combinations of the original features of the dataset. ...... In this section, we first present some work related to KP; then, we introduce related work from the literature that investigated feature construction to improve classification of the Breast Cancer dataset (WDBC). Most works are based on evolutionary algorithms such as Genetic Programming (GP [14]). A Michigan-style Learning Classifier Systems (LCS, [37]) uses a Genetic Algorithm where each individual is a rule, and the classifier is composed of various individuals of the population. ...
- ... Most works focus on developing or modifying methods in the GBMH component. However, few researchers have focused on developments of the Fuzzy Inference component to improve the performance obtained by the GFS and there is a lack of works using Genetic Programming (GP) [17,18] as a GBMH for a GFS [6]. Our objective in the current work is first to take advantage of data mining techniques such as the feature selection method to eliminate data redundancy and irrelevant features in order to analyze the huge data namely the NSL-KDD. ...... The second objective is the use of a new model of GFS which was not used in the intrusion detection area in order to solve the problem of classification and therefore to obtain a reliable IDS. The proposed model is the Genetic Programming Fuzzy Inference System for Classification (GFIS-CLASS).GPFIS- CLASS is a genetic fuzzy system based on Multi- Gene Genetic Programming (MGGP) [16,17,18] GPFIS-CLASS is an improvement to the GPF CLASS model [7]. This work is organized as follows: Section 2 describes GPFIS-CLASS and some basic concepts of the metaheuristic Multi-Gene Genetic Programming [11]. ...ArticleFull-text available
- Dec 2016

Information system is vital for any company. However, the opening to the outside world makes the computer system more vulnerable to attack. It is essential to protect it. Intrusion Detection System (IDS) is an auditing mechanism that analyzes the traffic system and applications to identify normal use of the system and an intrusion attempt and also it prevent security managers. Despite the advantages of IDS, they suffer from a few problems. The major problem in the field of intrusion detection is the classification problem. Genetic Fuzzy System (GFS) are models capable of integrating accuracy and high comprehensibility in their results. They have been widely employed to solve classification problems. In this paper, we use a new GFS model called Genetic Programming Fuzzy Inference System for Classification (GPFIS-Class). It based on Multi-Gene Genetic Programming (MGGP). This model is not used in the intrusion detection area. We use an efficient feature selection method to eliminate data redundancy and irrelevant features in order to analyze the huge data namely the NSL-KDD data set. - ... Even with this disadvantage, algorithms that exploit phylogenetic mechanisms are carving themselves a niche in the world of computing. These algorithms, commonly referred to as evolutionary algorithms (a label that regroups domains such as genetic algorithms [3], evolutionary programming [4], and genetic programming [5]), are usually applied to problems which are either too ill-defined or intractable by deterministic approaches, and whose solutions can be represented as a finite string of symbols (which thus becomes the equivalent of the biological genome). An initial, random population of individuals (i.e., of genomes), each representing a possible solution to the problem, is iteratively "evolved" through the application of mutation and crossover. ...... To date, however, its impact has been felt mostly in the development of software algorithms, and only mar-ginally in the conception of digital hardware. Koza et al. pioneered the attempt to apply evolutionary strategies to the synthesis of electronic circuits when they applied genetic algorithms to the evolution of a three-variable multiplexer and of a two-bit adder [5]. Also, evolutionary strategies have been applied to the development of the control circuits for autonomous robots [6], [7]. ...ArticleFull-text available
- Jan 2003

It is clear to all, after a moments thought, that nature has much wemight be inspired by when designing our systems, for example: robustness, adaptability and complexity, to name a few. The implementation of bio-inspired systems in hardware has however been limited, and more often than not been more a matter of artistry than engineering. The reasons for this are many, but one of the main problems has always been the lack of a universal platform, and of a proper methodology for the implementation of such systems. The ideas presented in this paper are early results of a new research project, "Reconfigurable POEtic Tissue". The goal of the project is the development of a hardware platform capable of implementing systems inspired by all three major axes (phylogenesis, ontogenesis, and epigenesis) of bio-inspiration, in digital hardware. - ... More specifically, we use a form of genetic programming [34] to automatically learn a deterministic timed automaton (TA) consistent with a given set of test cases. Our main contribution is the development of a genetic-programming framework for TA which includes mutation operators, a crossover procedure, and a corresponding, fine-grained fitnessevaluation. ...... Genetic programming [34] is a search-based technique to automatically generate programs exhibiting some desired behaviour. Like Genetic Algorithms [41], it is inspired by nature. ...Preprint
- Aug 2018

Model learning has gained increasing interest in recent years. It derives behavioural models from test data of black-box systems. The main advantage offered by such techniques is that they enable model-based analysis without access to the internals of a system. Applications range from testing to model checking and system understanding. Current work focuses on learning variations of finite state machines. However, most techniques consider discrete time. In this paper, we introduce and demonstrate a method for learning timed automata, finite state machines extended with real-valued clocks. The method is passive, i.e. it generates a model consistent with a set of timed traces produced by a black-box timed system, but does not actively query the system. It is based on genetic programming, a search-based method for automatic program creation. We evaluate our approach on four manually created timed systems and on 40 randomly generated timed automata - ... Over the generation sequence, individuals with increasingly better fitness values are generated (Simon 2013). Primary examples include genetic algorithms (Holland 1975), evolutionary strategies (Rechenberg 1973; Schwefel 1981), evolutionary programming (Fogel et al. 1966), and genetic programming (Koza 1992). These methods are comprised of algorithms that operate using a population of alternative solutions or designs, each represented by a potential decision vector. ...... Genetic programming is one of the many machine-learning methods. Within the machine-learning community, it is common to use " genetic programming " as shorthand for any machine-learning system that evolves tree structures (Koza 1992). While there is no GP today that will automatically generate a model to solve any problem, there are some examples where GP has evolved programs that are better than the best programs written by people to solve a number of difficult engineering problems. ...ChapterFull-text available
- Mar 2017

Clearly, all model outputs depend on model inputs. The optimization and simulation models discussed in the previous chapters are no exception. This chapter introduces some alternative modeling approaches that depend on observed data. These approaches include artificial neural networks and various evolutionary models. The chapter ends with some qualitative modeling. These data-driven models can serve as substitutes for more process-based models in applications where computational speed is critical or where the underlying relationships are poorly understood or too complex to be easily incorporated into calculus-based, linear, nonlinear, or dynamic programming models. - ... Frequently, software testing is used as an oracle for correct system behaviour. In this regard, genetic improvement draws on the rich heritage of genetic programming [29], which is also generally guided by software testing, and does not claim correctness-by-construction. ...... (The name 'genetic programming' was coined by Goldberg, also a PhD student of Holland [36].) However, it is the series of four books by Koza, starting in 1993 [29] and the accompanying videos [37], that really established genetic programming and saw the enormous expansion of number of publications with the Genetic Programming Bibliography 4 passing 10,000 entries [38]. By 2016 there were nineteen GP books including several intended for students [39], [40], [41]. ...Genetic improvement uses automated search to find improved versions of existing software. We present a comprehensive survey of this nascent field of research with a focus on the core papers in the area published between 1995 and 2015. We identified core publications including empirical studies, 96% of which use evolutionary algorithms (genetic programming in particular). Although we can trace the foundations of genetic improvement back to the origins of computer science itself, our analysis reveals a significant upsurge in activity since 2012. Genetic improvement has resulted in dramatic performance improvements for a diverse set of properties such as execution time, energy and memory consumption, as well as results for fixing and extending existing system functionality. Moreover, we present examples of research work that lies on the boundary between genetic improvement and other areas, such as program transformation, approximate computing, and software repair, with the intention of encouraging further exchange of ideas between researchers in these fields.
- ... A genetic programming is an approach from family of evolutional algorithms where an individual is represented by a graph, more specifically by a tree. The common genetic algorithm is described in [5]. These trees are used for decision making whether to accept or to reject an offered task. ...... The initial population is generated by modified ramped-half-and-half method [5]. The mod- ification is as follows: part of all trees with fixed depth was not generated fully at random. ...Article
- Jan 2017

This paper deals with an agent-based implementation of data mining system where a set of tasks is being processed in a distributed manner. The key role within such a system is the decision strategy of a computational agent which should consider accepting or rejecting a particular task based on various decision strategies. We present several adaptive decision strategies and compare them to traditional auction-based task distribution. Results show that optimal decision making strategy depends on the task set characteristic properties { e.g. how distinct are the best and the worst average results of each task type in dataset. - ... All these works assume that the workflow has been previously generated or manually created. One exception to this is the work presented in [61], which employs Genetic Programming [39] to generate semantic web services compositions. In order to be able to generate the (prospective) solutions, the algorithm relies on context-free grammars to build the valid structures of the composite services (chromosomes), i.e., the types of composite services that are going to be build. ...ArticleFull-text available
- Apr 2014

This survey evaluates a number of techniques for the automatic composition of Semantic Web Services. The evaluation takes into account the different workflow patterns that can be expressed by the solutions proposed by each individual technique. Only fully automatic approaches are considered here, i.e., composition techniques that do not demand user interference in the composition process nor rely on complex input (such as templates or other forms of abstract composition models). The main contribution of this paper is to discuss the strengths and weaknesses of the approaches presented in the literature for the automatic generation of semantic web services composition from the workflow patterns perspective. - ... Again the evolutionary strategy ( Fig. 3a) with λ μ + selection has been adopted. The initial population (parents) of size μ is generated by using the Grow Method [20,21]. The values of nodes are chosen randomly from the function set (AND, OR, NOT, XOR…) and the terminal leaves are selected from state variables (a, b, X…). ...ArticleFull-text available
- Dec 2017

Sequential actuation of pneumatic cylinders is a common form of automation in small and medium scale industries. By changing such actuation sequences to suit the different products being processed, flexible automation can be economically realized. However, changing the actuation sequence involves manually reprogramming Programmable Logic Controllers (PLC), which consumes time and hinders the implementation of flexible automation. This paper presents a novel methodology to automatically program PLCs by evolving logic equations using Genetic Algorithm and Genetic Programming for the desired actuation sequence. Case studies have been presented to demonstrate the possibility of using the proposed methodology to reliably implement flexible automation. - ... In evolutionary program- ming [20], individuals are presented by a real-valued vector, and they are evolved by only considering the mutation operator with a probability following a normal distribution. Meanwhile, genetic programming (GP) [21] can be taken into account as a GA with special encoding. In GP, the solu- tions to the problem are represented by means of trees [22], which enable any kind of function and domain knowledge to be considered. ...Finding optimal solutions of a numerical function of more than one independent variable is an important problem with many practical applications including process control systems, data fitting, and engineering designs. Over the last few decades, techniques for solving unconstrained optimization problems have been proposed. Evolutionary Algorithms have emerged as one of the most popular selections for tackling these problems, among which Genetic Algorithms (GAs) are widely used in practice. In recent literature on GAs, a Genetic Algorithm with multi-parent crossover (GA-MPC) was found to be superior over other algorithms. Nevertheless, the GA-MPC still has some difficulties when dealing with separable test issues and convergence to global optima in the high-dimensional search space. Meanwhile, quaternions, which are an extension of complex numbers, can allow algorithms to expand the search space to avoid getting stuck in the local optima. Therefore, this study aims to employ quaternions for representing individuals in the GA-MPC to enhance the effectiveness of the GA-MPC. Experimental results for ten benchmark functions indicated that the GA-MPC using the quaternion representation of individuals improved the quality of solutions compared with the original GA-MPC.
- ... 1. Random generation of individuals (initial population), using the available functions and terminals. A widely used strategy is the so called ramped half-and-half generation [32]. In this strategy half of the individuals are created using full method and the other half are generated using the grow method. ...
- ... Principe, et al. (2000) is only one of many textbooks currently available on the subject. The foundation of GP was first documented in Koza (1992). About half a dozen other books followed, but because the method has many applications, it is important to briefly review how it is used to produce models to forecast with here. ...Article
- Sep 2001

Forecasting oil prices remains an important empirical issue. This paper compares three forecasts of short-term oil prices using two compumetric methods and naive random walk. Compumetric methods use model specifications generated by computers with limited human intervention. Users are responsible only for selecting the appropriate set of explanatory variables. The compumetric methods employed here are genetic programming and artificial neural networks. The variable to forecast is monthly US imports FOB oil prices. Each method is used to forecast one and three months ahead. The results suggest that neural networks deliver better predictions. - ... Ge- netic programming (GP) is an evolutionary algorithm that optimizes a population of computer programs according to a fitness landscape determined by a program's ability to perform a user-defined task. The first experiments with GP were reported by Smith (1980) and Cramer (1985), and the seminal book is Koza (1992). On average, GP is no better or worse than any other search/optimization algorithm (Wolpert and Macready, 1997). ...Thesis
- Apr 2017

This multidisciplinary thesis investigates the application of machine learning to financial time series analysis. The research is motivated by the following thesis question: ‘Can one improve upon the state of the art in financial time series analysis through the application of machine learning?’ The work is split according to the following time series trichotomy: 1) characterization — determine the fundamental properties of the time series; 2) modelling — find a description that accurately captures features of the long-term behaviour of the system; and 3) forecasting — accurately predict the short-term evolution of the system. - ... Genetic programming is an artificial intelligence technique used for symbolic optimization based on the evolutionary process of the species ( Madar et al., 2004). It was developed by John Koza (Koza, 1998), and has as principle the combination of trees used to represent symbolic expressions. ...Conference PaperFull-text available
- Jul 2017

Abstract: In this paper, we apply genetic programming as a tool for identifying an inverse response system. In previous works, the genetic programming has been used in the context of identification problems, where the goal is to obtain the descriptions of a given system. Identification problems have been studied much from control theory, due to their practical application in industry. In some cases, a description of a system in terms of mathematical equations is not possible, for these cases are necessary new heuristic approaches like the genetic programming. Here, we like to test the quality of the genetic programming to identify inverse response systems, which are systems where the initial response is in a direction opposite to the final outcome. The tool used to develop the model of identification is GPTIPS V2, we use our approach in two cases: in the first one, the equation that describes inverse response system is determined; and in the second case, the transfer function of the system in the frequency domain is found. - ... These functions are learned in an offline phase from training data. Genetic programming is a program synthesis method inspired by biological evolution[72]. It involves maintaining a population of individual programs, and using that to produce program variants by leveraging computational analogs of biological mutation and crossover. ...
- ... Appendix A. GENETIC PROGRAMMING Genetic programming (GP) belongs to methods frequently used to solve the symbolic regression problem. Besides the standard Koza's tree-based GP ( Koza, 1992), many other variants have been proposed such as Grammatical Evolution ( Ryan et al., 1998) which evolves programs whose syntax is defined by a user-specified grammar, Gene Expression Programming ( Ferreira, 2001) that evolves linear chromosomes that express as tree structures through a genotype-phenotype mapping or graph-based Cartesian GP which represents programs in the form of a directed graph ( Miller and Thomson, 2000). A Single Node Genetic Programming (SNGP) (Jackson, 2012a,b), used in this work, is a graph-based GP method that evolves a population of individuals, each representing a single program node. ...Article
- Oct 2017

Model-based reinforcement learning (RL) algorithms can be used to derive optimal control laws for nonlinear dynamic systems. With continuous-valued state and input variables, RL algorithms have to rely on function approximators to represent the value function and policy mappings. This paper addresses the problem of finding a smooth policy based on the value function represented by means of a basis-function approximator. We first show that policies derived directly from the value function or represented explicitly by the same type of approximator lead to inferior control performance, manifested by non-smooth control signals and steady-state errors. We then propose a novel method to construct a smooth policy represented by an analytic equation, obtained by means of symbolic regression. The proposed method is illustrated on a reference-tracking problem of a 1-DOF robot arm operating under the influence of gravity. The results show that the analytic control law performs at least equally well as the original numerically approximated policy, while it leads to much smoother control signals. In addition, the analytic function is readable (as opposed to black-box approximators) and can be used in further analysis and synthesis of the closed loop. - ... The GP paradigm is often used to build decision trees in classification problems [33], also exploiting the tree-based representation of this paradigm. In fact, the problem of building a tree by using the GP representation can be easily defined by defining the function set, which includes all the attributes to test and the terminal set including all the classes to predict. ...Evolutionary algorithms, i.e., Genetic Programming (GP), have been successfully used for the task of classification, mainly because they are less likely to get stuck in the local optimum, can operate on chunks of data and allow to compute more solutions in parallel. Ensemble techniques are usually more accurate than component learners constituting the ensemble and can be built in an incremental way, improving flexibility, adapting to changes and maintaining part of the history present in the data. This paper proposes a framework based on a distributed GP ensemble algorithm for coping with different types of concept drift for the task of classification of large data streams. The framework is able to detect changes in a very efficient way using only a detection function based on the fractal dimension, which can also works on new incoming unclassified data. Thus, a distributed GP algorithm is performed only when a change is detected in order to improve classification accuracy and this, together with the exploitation of an adaptive procedure, permits to answer in short time to these changes. Experiments are conducted on a real and on some artificial datasets in order to assess the capacity of the framework to detect the drift and quickly respond to it.
- ... However, they are not that pow- erful in exploiting each search space region to which they con- verge ( Blum & Roli, 2003 ). Examples of EAs are genetic algo- rithm ( Holland, 1975 ), genetic programming ( Koza, 1992 ), evolu- tionary algorithm ( Rechenberg, 1965 ), and harmony search algo- rithm (HSA) ( Geem, Kim, & Loganathan, 2001 ). On the other hand, TAs are initiated with a single solution. ...Article
- Jul 2018
- EXPERT SYST APPL

The selection process is the most attractive operator in the optimization algorithms. It normally mimics the natural selection of survival of the fittest principle. When the selection is too greedy, the selection pressure will be high and therefore the search becomes biased toward exploitation. In contrast, when the selection has a tendency to be random, the selection pressure will be low and thus the exploration is observed more. The selection process in Grey Wolf Optimizer (GWO) tends to be too greedy since the search is driven by the three best solutions. In this paper, different selection methods extracted from other evolutionary algorithms (EAs) are investigated for GWO. Along with the original selection method of GWO called greedy-based selection method, five others selection methods which are proportional, tournament, universal sampling, linear rank, and random selection methods are investigated. Accordingly, six versions of GWO are proposed which are Greedy-based GWO (GGWO), Proportional-based GWO (PGWO), Tournament-based GWO (TGWO), Universal sampling-based GWO (UGWO), Linear rank-based GWO (LGWO), Random-based GWO (RGWO). The six versions are evaluated using 23 test functions circulated in the literature with different characteristics and complexity. The sensitivity analysis of the control parameters of some new versions are discussed. Interestingly, TGWO achieved the best results for almost all benchmark functions. This proves that the selection methods have a high impact on the performance of GWO. - ... Evolutionary Program- ming (EP) was first presented in the 1960s by L.J. Fogel as an evolutionary approach to artificial intel- ligence [38]. The Genetic Programming (GP) is an automated d method for creating a working com- puter program from a high-level problem statement of 'what needs to be done' [39]. Differential Evolution (DE) algorithm is one of the most popular algorithm for the continuo us global optimization problems. ...Article
- Oct 2017
- J INTELL FUZZY SYST

Nature is a huge source of inspiration for solving difficult and complex problems in science. Nature-based problem solvers always find an optimal solution (whether local or global) to any given problem; so they are sometimes considered as black-box problem solvers. Meta-heuristic algorithms that are inspired by nature (through imitating the nature) have opened a new approach to solving optimization problems. In the past decades, numerous research efforts have been focused in this specific area. In this paper, an optimization algorithm inspired by the nature has been introduced which is modeled from the behavior of the chicks of a type of bird called see-see partridge. We name the algorithm SSPCO. SSPCO optimization algorithm is an algorithm similar to the algorithm of particle swarm optimization (PSO) that the motion equation and the variables' velocity are modeled from the behavior of this type of bird. Simulation of the algorithm was done with MATLAB software and the results of the 6 primary known algorithms and 8 advanced ones were compared with 14 unconstrained continuous functions. The results indicate that the proposed algorithm is an efficient algorithm comparing the others. - ... A diferencia de otros métodos que usan la selección natural como inspiración (los algoritmos genéticos) usa estructuras dédé arboles como individuos lo que hace posible usar operaciones como nodos de donde se desprenderán las ramas deí arbol y las entradas y salidas como hojas que serán los nodos finales (las ramas). Por esto mismo los arboles hijos resultado de un cruzamiento pueden variar tanto en la cantidad de nodos como en la profundidad respecto a los padres [12]. En este caso tenemos un robot móvil en configuración dife- rencial con cuatro sensores de proximidad: uno en su parte frontal, parte izquierda, derecha y atrás; que nos darán valores de unos o ceros si hay o no un objeto alrededor de este, la tarea a realizar será encontrar una caja en un espacio definido y empujarla hasta sacarla del mismo. ...ArticleFull-text available
- Oct 2017

We developed a program that automatically generates algorithms for a mobile robot in a differential configuration with four proximity sensors to find and push a box out of a defined space, implemented genetic programming with elitism, mutation and selection of parents through tournament, validating Always the children resulting from the crossing to comply with parameters given as depth. Trees are composed of the and, or, not, if and else operations as branches, the logical values of the sensors as inputs and as outputs the actions: forward, ninetydegree rotation left or right. For the search of the best program, the number of times the box is moved as a measure of suitability is used. With this an algorithm is automatically found that performs this specific task. - ... MGGP is a combination of GP and statistical regression methods and serves as a data-driven technique. Since the original presentation of GP by Koza (1992), its formulation has diversified, which are outlined in the paper in due course including Multi-Gene GP (MGGP), see Hinchliffe et al. (1996). The state-of-the-art on applying these techniques to river flow modelling is also successful, and includes Danandeh Mehr et al., 2014bMehr et al., , 2013Danandeh Mehr and Demirel, 2016;Guven, 2009;Guven and Aytek, 2009;Londhe and Charhate, 2010;Makkeasorn et al., 2008;Savic et al., 1999;Shoaib et al., 2015;Wang et al., 2009;Whigham and Crapper, 2001. ...Article
- Apr 2018
- J HYDROL

Chaos theory is integrated with Multi-Gene Genetic Programming (MGGP) engine as a new hybrid model for river flow forecasting. This is to be referred to as Chaos-MGGP and its performance is tested using daily historic flow time series at four gauging stations in two countries with a mix of both intermittent and perennial rivers. Three models are developed: (i) Local Prediction Model (LPM); (ii) standalone MGGP; and (iii) Chaos-MGGP, where the first two models serve as the benchmark for comparison purposes. The Phase-Space Reconstruction (PSR) parameters of delay time and embedding dimension form the dominant input signals derived from original time series using chaos theory and these are transferred to Chaos-MGGP. The paper develops a procedure to identify global optimum values of the PSR parameters for the construction of a regression-type prediction model to implement the Chaos-MGGP model. The inter-comparison of the results at the selected four gauging stations shows that the Chaos-MGGP model provides more accurate forecasts than those of stand-alone MGGP or LPM models. - ... Over the last years, SR has been widely studied with Evolutionary Computation (EC) techniques able to produce computer code. As examples one may cite Genetic Programming (GP, [25,5]), Multi Expression Programming (MEP, [31]), Gene Expression Programming (GEP, [15]), Grammatical Evolution (GE, [34]), Linear Genetic Programming (LGP, [8]), Cartesian Genetic Programming (CGP, [29]), Behavioral Programming (BP, [26]), and Stack-based Genetic Programming (Stack-based GP, [32,39]). These methods evolve populations of individuals, each being a single model. ...Symbolic Regression (SR) is a well-studied task in Evolutionary Computation (EC), where adequate free-form mathematical models must be automatically discovered from observed data. Statisticians, engineers, and general data scientists still prefer traditional regression methods over EC methods because of the solid mathematical foundations, the interpretability of the models, and the lack of randomness, even though such deterministic methods tend to provide lower quality prediction than stochastic EC methods. On the other hand, while EC solutions can be big and uninterpretable, they can be created with less bias, finding high-quality solutions that would be avoided by human researchers. Another interesting possibility is using EC methods to perform automatic feature engineering for a deterministic regression method instead of evolving a single model; this may lead to smaller solutions that can be easy to understand. In this contribution, we evaluate an approach called Kaizen Programming (KP) to develop a hybrid method employing EC and Statistics. While the EC method builds the features, the statistical method efficiently builds the models, which are also used to provide the importance of the features; thus, features are improved over the iterations resulting in better models. Here we examine a large set of benchmark SR problems known from the EC literature. Our experiments show that KP outperforms traditional Genetic Programming - a popular EC method for SR - and also shows improvements over other methods, including other hybrids and well-known statistical and Machine Learning (ML) ones. More in line with ML than EC approaches, KP is able to provide high-quality solutions while requiring only a small number of function evaluations.
- ... On the other hand, the search space in SR is huge so when a pure GP is applied to a SR task, it needs a long time to find an ac- ceptable solution. Besides the standard Koza's tree- based GP (Koza, 1992), many other variants have been proposed such as Grammatical Evolution, Gene Expression Programming, Cartesian GP or Single Node Genetic Programming. Grammatical Evolution ( Ryan et al., 1998) evolves programs whose syntax is defined by a user-specified grammar. ...Conference Paper
- Nov 2017

Genetic programming (GP) is a technique widely used in a range of symbolic regression problems, in particular when there is no prior knowledge about the symbolic function sought. In this paper, we present a GP extension introducing a new concept of local transformed variables, based on a locally applied affine transformation of the original variables. This approach facilitates finding accurate parsimonious models. We have evaluated the proposed extension in the context of the Single Node Genetic Programming (SNGP) algorithm on synthetic as well as real-problem datasets. The results confirm our hypothesis that the transformed variables significantly improve the performance of the standard SNGP algorithm. - Chapter
- Nov 2017

Genetic programming (GP) is inspired by the popular genetic algorithm (GA). The searching result of GP is a program that includes both opera-tors and operands. The operators are the obstacle to the crossover and mutation process because invalid programs would be generated. In this paper, the concepts of VLIW is incorporated in the design of a GP scheme. A program in the proposed scheme is represented using only operands. The simulation results show that this approach is feasible and the performance could be increased by the instruction-level parallelism of the VLIW structure. - Article
- Sep 2016
- J Manag Stud

Decision making (DM) is an important problem in most of the army operations. One of the challenging issues in this area is uncertainty in wars with uncertain information which causes many destructive effects on the results of strategies in battlefields. In the Heravi et al. article’s, published in the year 2013, utilizing a combination of Cognitive Agent (CA) and Classification based on Fuzzy Association Rules (CFAR) as the most effective and widely used methods, was able to relatively reduce this problem and tried to reduce uncertainty. But still in critical condition, can’t deny the need to act quickly and remove most invalid and inefficient rules extracted in the effective decisions. This paper aims to utilize the capabilities of Genetic Algorithm (GA) in a more realistic selection rules as a meta-heuristic way to combine complementary methods to minimize the uncertainty in DM. In comparison with previous method, experimental results achieved, clearly show that this combination in addition to the advantages of the previous method, due to the further reduction of production rules for DM, are more understandable and accurate and has more rational risk acceptance. - Conference Paper
- Jul 2016

Grammatical Evolution (GE) is a genetic programming technique in which the candidate solutions are represented using a binary genotype and the programs can be generated through production rules of a formal grammar. Similarly to other evolutionary computation methods, the GE's performance can be improved when an adequate initial population seeding is adopted. Decision trees are widely used to model classifiers in machine learning and their symbolic form can be mapped back to the GE's binary representation of the candidate individuals. Thus, the use of machine learning techniques to generate decision trees to compose the initial population of GE is investigated here. Computational experiments with a real world data set are carried out and the results show an increase of performance when compared to the traditional seeding approach. - Chapter
- Dec 2016

In the last thirty years, a great interest has been devoted to metaheuristics. We can try to point out some of the steps that have marked the history of metaheuristics. - Conference Paper
- Aug 2015

Often in science and engineering we are faced with complicated nonlinear problems in optimization that involve simultaneously minimizing or maximizing various non-commensurate quantities. For example, a basic task in design engineering or technology management is to balance suitable measures of performance against the cost. We present a simplified approach for performing multiple objective optimization by combining standard single objective Evolution Strategies with Data Envelopment Analysis. This latter method employs linear programming to compute an L1 distance of a given solution from the Pareto frontier defined by the evolving population of solutions, or from a related frontier defined by DEA. This quantity is then used in a fitness function. Real variable linear programs must be solved for the optimization of convex problems, while the solution of mixed integer linear programs is required to optimize general non-convex problems. This hybrid method yields highly converged results with good coverage of the Pareto frontier when applied to a standardized suite of multiple objective problems. Several current applications will be discussed that employ a massively parallel program (MOES) written in C and MPI that runs on supercomputers. This material was assigned a clearance of CLEARED, Case Number 88ABW-2015-0638. - Conference Paper
- Aug 2016

This paper presents the inception and the basic concepts of a hybrid classification algorithm called Genetic-AIRS [1]. Genetic-AIRS, is a combination of the Artificial Immune Resource System (AIRS) algorithm witch uses evolutionary computation techniques. An analysis is presented to determine the final algorithm architecture and parameters. The paper also includes an experimental evaluation on various publicly available datasets of Genetic-AIRS vs AIRS. - Search Based Software Engineering techniques are emerging as important tools for software maintenance. Foremost among these is Genetic Improvement, which has historically applied the stochastic techniques of Genetic Programming to optimize pre-existing program code. Previous work in this area has not generally preserved program semantics and this article describes an alternative to the traditional mutation operators used, employing deterministic proof search in the sequent calculus to yield semantics-preserving transformations on algebraic data types. Two case studies are described, both of which are applicable to the recently-introduced ‘grow and graft’ technique of Genetic Improvement: the first extends the expressiveness of the ‘grafting’ phase and the second transforms the representation of a list data type to yield an asymptotic efficiency improvement.
- ThesisFull-text available
- Feb 2017

One of the constraints of wireless mesh networks and vehicular ad hoc networks is the problem of data transmission from a source node to a group of destination nodes with a real need of quality of service (QoS) guarantee. This problem, called multicast routing with QoS problem, is an NP-hard optimization problem, it is impossible to solve it by traditional exact methods. Several metaheuristics have been used to solve this problem and find a minimized cost multicast tree that satisfies the constraints of delay, jitter, bandwidth, and packet loss rate. In this work, we propose two contributions. In the first contribution, we propose an improved bat algorithm BA to solve the problem of multicast routing with QoS. We introduce two modification methods in the binary bats algorithm BBA. In the first method, we use the two most representative chaotic maps, namely the logistic map and the tent map, to determine the value of the β parameter of the pulse frequency fi. In the second method, we use the dynamic formulation to update the parameter α of the loudness Ai. The experimental results show the superiority of the proposed algorithms compared with other existing methods in the literature. In the second contribution, we propose two hybrid approaches based on hybridization of the binary bats algorithm BBA with quantum evolutionary algorithm QEA. The first approach, called BBAQEA1, is based on the integration of the evolutionary equation of BBA in the quantum operator of QEA. The second approach, called BBAQEA2, is based on the replacement of quantum evolutionary operator of QEA by the evolutionary equation of BBA. The experimental results show that BBAQEA2 is the best solution in most cases for the two types of wireless networks - Chapter
- Jan 2017

Evolutionary algorithms (EAs) are inherently parallel, because they evolve a population of distinct individuals in a generational loop. These algorithms are therefore very good candidates to be ported on massively multicore architectures. EAsy Specification of EA (EASEA) is a software platform dedicated to EAs that allows to exploit parallel architectures, which range from a single-general-purpose graphics processing unit (GPGPU) equipped machine to multi-GPGPU machines and, to a cluster or even several clusters of GPGPU machines. This chapter presents parallel algorithms that implemented by the EASEA platform for EAs and evolution strategies, genetic programming (GP) and multiobjective optimization (MOO). The EASEA platform was initially designed to assist users in the creation of EAs. It is designed to produce an EA from a problem description. This description is written in a C-like language, which contains code for the genetic operators and the genome structure. - Conference Paper
- Dec 2016

The new ESA Sentinel-2 satellite delivers images of the red-edge band at a spatial resolution of 20m. These bands are particular useful for vegetation monitoring in general and present high potential of application in precision agriculture. For this, we propose a data fusion methodology for downscaling rededge bands to 10 m spatial resolution using the information of visible and near infrared band. The methodology is based on inverse modelling by combining geostatistical stochastic simulation methods and genetic programming. A case study case presents the preliminary results. - Article
- Apr 2017
- Automat Software Eng

Model-driven engineering (MDE) and search-based software engineering (SBSE) are both relevant approaches to software engineering. MDE aims to raise the level of abstraction in order to cope with the complexity of software systems, while SBSE involves the application of metaheuristic search techniques to complex software engineering problems, reformulating engineering tasks as optimization problems. The purpose of this paper is to survey the relatively recent research activity lying at the interface between these two fields, an area that has come to be known as search-based model-driven engineering. We begin with an introduction to MDE, the concepts of models, of metamodels and of model transformations. We also give a brief introduction to SBSE and metaheuristics. Then, we survey the current research work centered around the combination of search-based techniques and MDE. The literature survey is accompanied by the presentation of references for further details. - Artificial bee colony (ABC) algorithm is one of the most recent swarm intelligence-based algorithms simulate the foraging behavior of honey bees in their hive. ABC starts with a colony of artificial bees with sole aim of discovering the place of food sources with high nectar amount using the solution search equation in the employed bee and onlooker bee operators. However, the solution search equation is good in exploration and poor in exploitation. In this paper, the solution search equation of the onlooker bee is modified by using a value of the fittest food sources selected by a set of selection schemes inspired from the evolutionary algorithms. This is to guide the search process of onlooker bee toward the fittest food sources from the population in order to empower the exploitation capability and convergence. Four selection schemes are incorporated with the ABC algorithm to choose the fittest food sources in four versions as follows: global-best, tournament, linear rank, and exponential rank. For evaluation purposes, 10 classical benchmark optimization functions are used to study the sensitivity analysis of each ABC algorithm to its parameters. The performance of the proposed ABC versions is compared with the original ABC version in order to study the effectiveness of the modifications. In addition, a comparative evaluation of ABC algorithms is carried out against the state-of-the-art methods that worked on CEC2005 benchmark functions, CEC2015 benchmark functions, and two real-world cases of economic load dispatch problem. The experimental results show that the selection schemes incorporated within the search equation of the onlooker bee directly affects the performance of ABC algorithm.
- This paper addresses the use of heuristic optimization algorithms to generate generally valid analytic equations for estimating the initial pressure drop of square and Dutch woven screens in polymer recycling. We present a mathematical description of the isothermal initial pressure drop of non‐Newtonian polymer melt flows through woven screens without the need for numerical methods. We first performed numerical CFD simulations to create a set of 9,000 physically independent modeling set‐ups as a basis for heuristic modeling. Then, we applied symbolic regression based on genetic programming to develop pecScreen models, achieving coefficients of determination R2 > 0.9995. For verification of our models, we performed experiments using both virgin and slightly contaminated in‐house and post‐industrial recycling materials. The experimentally determined data are in good agreement with the approximation results, which yielded a coefficient of determination R2 of 0.926. Our modeling approach, the accuracy of which we have proven, allows fast and stable computational modeling of the initial pressure drop of polymer melt flows through woven screens. POLYM. ENG. SCI., 2019. © 2019 The Authors. Polymer Engineering & Science published by Wiley Periodicals, Inc. on behalf of Society of Plastics Engineers.
- Conference Paper
- Jul 2017

Econometric Genetic Programming (EGP) evolves multiple linear regressions through Genetic Programming (GP), which is responsible for model selection, aiming to generate high accuracy regressions with potential interpretability of parameters. It uses statistical significance as a feature selection tool, directly and efficiently identifying introns and controlling bloat. In this paper, EGP is tested against traditional feature-selection econometric algorithms in regression tasks - namely Partial Least Squares Regression, Ridge Regression and Stepwise Forward Regression - outperforming them in all three datasets. The way EGP explores search space of possible regressors and models is crucial for its results. EGP is carefully constructed considering econometric theory on cross-sectional datasets, giving rigorous treatment on topics like homoscedasticity and heteroscedasticity, statistical inference for estimated parameters and sampling criteria. It also benefits by the mathematical proof on accuracy and statistical significance: accuracy will only increase if the regressor presents a test's statistics module in a two-sided hypothesis testing higher than a predefined value. - Conference Paper
- Aug 2017

Logistic Regression and Genetic Programming (GP) have already been compared to each other in classification tasks. In this paper, Econometric Genetic Programming (EGP), first introduced as a regression methodology, is extended to binary classification tasks and evolves logistic regressions through GP, aiming to generate high accuracy classifications with potential interpretability of parameters, while uses statistical significance as a feature-selection tool and GP for model selection. EGP-Classification (or EGP-C), the name of this proposed EGP’s extension, was tested against a large group of algorithms in three cross-sectional datasets, showing competitive results in most of them. EGP-C successfully competed against highly non-linear algorithms, like Support Vector Machines and Multilayer Perceptron with Back Propagation, and still allows interpretability of parameters and models generated. - Chapter
- Jun 2015

Evolutionary algorithms (EAs) are search methods that can be used for solving optimization problems. They mimic principles of natural evolution by employing a population-based approach (or swarm-like), associating each individual of the population with the so-called fitness and including elements of randomness, although the random is directed through a selection process. This article presents the basic principles of evolutionary algorithms and discusses their dynamics, structure, and applications. In doing so, it is particularly shown how the fundamental understanding of natural evolution processes has cleared the ground for the origin of evolutionary algorithms. Major implementation variants and their structural as well as functional elements are discussed here with attention on examples from electrical engineering. - Chapter
- Jul 2010

This chapter discusses system quality cost information available in the literature and to show a practical and straightforward way to obtain such quantitative data. This process is illustrated utilizing a real-life pilot project conducted by the Israel Aerospace Industries (IAI)/Lahav division during the SysTest project. The chapter then discusses the verification, validation, and testing (VVT)-Tool, which was developed at IAI to support the modeling of quality cost and optimization of the VVT strategy. Finally, it provides a collection of optimization techniques which may be used during the development of engineered systems, facilitating a reduction of 10 - 15% in engineering manpower or schedule. Usually, system quality data may be obtained from the following sources: (1) available databases of past projects, (2) measuring quality information during a specific project and (3) eliciting information from domain experts. data models

This research doesn't cite any other publications.