We present grammatical evolution, an evolutionary algorithm that can evolve complete programs in an arbitrary language using a variable-length binary string. The binary genome determines which production rules in a Backus-Naur form grammar definition are used in a genotype-to-phenotype mapping process to a program. We demonstrate how expressions and programs of arbitrary complexity may be evolved and compare its performance to genetic programming.
Abstract. We describe a Genetic Algorithm that can evolve complete programs. Using a variable length linear genome to govern how a Backus Naur Form grammar definition is mapped to a program, expressions and programs of arbitrary complexity may be evolved. Other automatic programming methods are described, before our system, Grammatical Evolution, is applied to a symbolic regression problem.
Publication informationGenetic Programming and Evolvable Machines, 12 (2): 91-119Publisher Springer Abstract We investigate the effects of semantically-based crossover operators in Genetic Programming, applied to real-valued symbolic regression problems. We propose two new relations derived from the semantic distance between subtrees, known as Semantic Equivalence and Semantic Similarity. These relations are used to guide variants of the crossover operator, resulting in two new crossover operators -Semantics Aware Crossover (SAC) and Semantic Similarity-based Crossover (SSC). SAC, was introduced and previously studied, is added here for the purpose of comparison and analysis. SSC extends SAC by more closely controlling the semantic distance between subtrees to which crossover may be applied. The new operators were tested on some real-valued symbolic regression problems and compared with Standard Crossover (SC), Context Aware Crossover (CAC), Soft Brood Selection (SBS), and No Same Mate (NSM) selection. The experimental results show on the problems examined that, with computational effort measured by the number of function node evaluations, only SSC and SBS were significantly better than SC, and SSC was often better than SBS. Further experiments were also conducted to analyse the perfomance sensitivity to the parameter settings for SSC. This analysis leads to a conclusion that SSC is more constructive and has higher locality than SAC, NSM and SC; we believe these are the main reasons for the improved performance of SSC.
Publication informationGenetic Programming and Evolvable Machines, Abstract Grammar formalisms are one of the key representation structures in Computer Science. So it is not surprising that they have also become important as a method for formalizing constraints in Genetic Programming (GP). Practical grammar-based GP systems first appeared in the mid 1990s, and have subsequently become an important strand in GP research and applications. We trace their subsequent rise, surveying the various grammar-based formalisms that have been used in GP and discussing the contributions they have made to the progress of GP. We illustrate these contributions with a range of applications of grammar-based GP, showing how grammar formalisms contributed to the solutions of these problems. We briefly discuss the likely future development of grammar-based GP systems, and conclude with a brief summary of the field.
PrefaceDynamic environments abound and offer particular challenges for all optimisation and problem solving methods. A well-known strategy for survival in dynamic environments is to adopt a population-based approach. Rather than maintaining a single candidate solution, a population of candidate solutions is employed. This allows a diversity of potential solutions to be maintained, which increases the likelihood that a sufficient solution exists at any point in time to ensure the survival of the population in the long term. Dynamic environments can exhibit different types of change that can be abrupt and random, cyclical, or the product of complex relationships. The changes might range from relatively small smooth transitions to substantial perturbations in all aspects of the domain.Natural Computing (NC) has given rise to a family of population-based algorithms that exhibit varying degrees of success in solving problems in dynamic environments. It is natural to turn to algorithms which are inspired by the natural world when one wishes to solve problems in the natural world. In particular, biological evolution has given rise to effective problem solvers which survive in complex dynamic environments. Without natural evolution, the inspriation for evolutionary compuation, we would not have any of the other NC algorithms such as neurocomputing, immunocomputing, sociocomputing and grammatical and developmental computing; they are inspired by the products of the biological evolutionary process acting in a dynamic environment.In this book we focus on the first steps in the extension of a grammarbased form of Genetic Programming, Grammatical Evolution, in order to improve its ability to solve problems in dynamic environments. A relatively recent, powerful, addition to the stable of Evolutionary Computation, Grammatical Evolution (GE) adopts BNF grammars for the evolution of variable length programs. Thus far, there has been little study of the utility of GE in dynamic environments. Foundations in Grammatical Evolution for Dynamic Environments is the second book to be published on Grammatical Evolution, and it has been six years since Grammatical Evolution: VI Preface Evolutionary Automatic Programming in an Arbitrary Language appeared.A comprehensive analysis of prior work in EC and GE in the context of dynamic environments is presented. From this, it is seen that GE offers substantial potential due to the flexibility provided by the BNF grammar and the many-to-one genotype-to-phenotype mapping.Subsequently, novel methods of constant creation are introduced that incorporate greater levels of latent evolvability through the use of BNF grammars. These methods are demonstrated to be more accurate and adaptable than the standard methods adopted.Through placing GE in the context of a dynamic real-world problem, the trading of financial indices, phenotypic diversity is demonstrated to be a function of the fitness landscape. That is, phenotypic entropy fluctuates with the universe of potentially fit solutions. Evidence is also...
Abstract-This paper presents the use of design grammars to evolve playable 2D platform levels through grammatical evolution (GE). Representing levels using design grammars allows simple encoding of important level design constraints, and allows remarkably compact descriptions of large spaces of levels. The expressive range of the GE-based level generator is analyzed and quantitatively compared to other feature-based and the original level generators by means of aesthetic and similarity based measures. The analysis reveals strengths and shortcomings of each generator and provides a general framework for comparing content generated by different generators. The approach presented can be used as an assistive tool by game designers to compare and analyze generators' capabilities within the same game genre.
It is approximately fifty years since the first computational experiments were conducted in what has become known today as the field of Genetic Programming (GP), twenty years since John Koza named and popularised the method, and ten years since the first issue appeared of the Genetic Programming & Evolvable Machines journal. In particular, during the past two decades there has been a significant range and volume of development in the theory and application of GP, and in recent years the field has become increasingly applied. There remain a number of significant open issues despite the successful application of GP to a number of challenging real-world problem domains and progress in the development of a theory explaining the behavior and dynamics of GP. These issues must be addressed for GP to realise its full potential and to become a trusted mainstream member of the computational problem solving toolkit. In this paper we outline some of the challenges and open issues that face researchers and practitioners of GP. We hope this overview will stimulate debate, focus the direction of future research to deepen our understanding of GP, and further the development of more powerful problem solving algorithms.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.