Now showing 1 - 10 of 12
  • Publication
    Defining locality as a problem difficulty measure in genetic programming
    A mapping is local if it preserves neighbourhood. In Evolutionary Computation, locality is generally described as the property that neighbouring genotypes correspond to neighbouring phenotypes. A representation has high locality if most genotypic neighbours are mapped to phenotypic neighbours. Locality is seen as a key element in performing effective evolutionary search. It is believed that a representation that has high locality will perform better in evolutionary search and the contrary is true for a representation that has low locality. When locality was introduced, it was the genotype-phenotype mapping in bitstring-based Genetic Algorithms which was of interest; more recently, it has also been used to study the same mapping in Grammatical Evolution. To our knowledge, there are few explicit studies of locality in Genetic Programming (GP). The goal of this paper is to shed some light on locality in GP and use it as an indicator of problem difficulty. Strictly speaking, in GP the genotype and the phenotype are not distinct. We attempt to extend the standard quantitative definition of genotype-phenotype locality to the genotype-fitness mapping by considering three possible definitions. We consider the effects of these definitions in both continuous- and discrete-valued fitness functions. We compare three different GP representations (two of them induced by using different function sets and the other using a slightly different GP encoding) and six different mutation operators. Results indicate that one definition of locality is better in predicting performance.
      552Scopus© Citations 37
  • Publication
    Combining structural analysis and multi-objective criteria for evolutionary architectural design
    This study evolves and categorises a population of conceptual designs by their ability to handle physical constraints. The design process involves a trade-off between form and function. The aesthetic considerations of the designer are constrained by physical considerations and material cost. In previous work, we developed a design grammar capable of evolving aesthetically pleasing designs through the use of an interactive evolutionary algorithm. This work implements a fitness function capable of applying engineering objectives to automatically evaluate designs and, in turn, reduce the search space that is presented to the user.
      1095Scopus© Citations 27
  • Publication
    Interactive interpolating crossover in grammatical evolution
    Interactive interpolating crossover allows a user to quickly see a large number of individuals formed by interactively-controlled interpolation between two or more parents. We study it here for the first time in the context of grammatical evolution (GE). We define methods of quantifying the behaviour of interpolations and use them to compare two methods of performing interpolation and two encodings for GE, one standard and one new. We conclude that a Cartesian interpolation combined with a novel developmental-style GE encoding gives the most usable results. We make connections between our work and broader issues of genotype-phenotype mappings, landscapes, and operators.
      511Scopus© Citations 1
  • Publication
    Evolutionary design using grammatical evolution and shape grammars : designing a shelter
    A new evolutionary design tool is presented, which uses shape grammars and a grammar-based form of evolutionary computation, grammatical evolution (GE). Shape grammars allow the user to specify possible forms, and GE allows forms to be iteratively selected, recombined and mutated: this is shown to be a powerful combination of techniques. The potential of GE and shape grammars for evolutionary design is examined by attempting to design a single-person shelter to be evaluated by collaborators from the University College Dublin School of Architecture, Landscape, and Engineering. The team was able to successfully generate conceptual shelter designs based on scrutiny from the collaborators. A number of avenues for future work are highlighted arising from the case study.
  • Publication
    GEVA - Grammatical Evolution in Java (v1.0)
    (University College Dublin. School of Computer Science and Informatics, 2008-12-05) ; ; ; ; ;
    GEVA is an open source implementation of Grammatical Evolution in Java developed at UCD’s Natural Computing Research & Applications group. As well as providing the characteristic genotype-phenotype mapper of GE a search algorithm engine and a simple GUI are also provided. A number of sample problems and tutorials on how to use and adapt GEVA have been developed.
  • Publication
    Higher-order functions in aesthetic EC encodings
    The use of higher-order functions, as a method of abstraction and re-use in EC encodings, has been the subject of relatively little research. In this paper we introduce and give motivation for the ideas of higher-order functions, and describe their general advantages in EC encodings. We implement grammars using higher-order ideas for two problem domains, music and 3D architectural design, and use these grammars in the grammatical evolution paradigm. We demonstrate four advantages of higher-order functions (patterning of phenotypes, non-entropic mutations, compression of genotypes, and natural expression of artistic knowledge) which lead to beneficial results on our problems.
      840Scopus© Citations 13
  • Publication
    GEVA : grammatical evolution in Java
    We are delighted to announce the release of GEVA an open source software implementation of Grammatical Evolution (GE) in Java. Grammatical Evolution in Java (GEVA) was developed at UCD’s Natural Computing Research & Applications group (
  • Publication
    Program Optimisation with Dependency Injection
    (Springer, 2013-04) ;
    For many real-world problems, there exist non-deterministic heuristics which generate valid but possibly sub-optimal solutions. The program optimisation with dependency injection method, introduced here, allows such a heuristic to be placed under evolutionary control, allowing search for the optimum. Essentially, the heuristic is “fooled” into using a genome, supplied by a genetic algorithm, in place of the output of its random number generator. The method is demonstrated with generative heuristics in the domains of 3D design and communications network design. It is also used in novel approaches to genetic programming.
      505Scopus© Citations 3
  • Publication
    Implementing an intuitive mutation operator for interactive evolutionary 3D design
    Locality - how well neighbouring genotypes correspond to neighbouring phenotypes - has been described as a key element in Evolutionary Computation. Grammatical Evolution (GE) is a generative system as it uses grammar rules to derive a program from an integer encoded genome. The genome, upon which the evolutionary process is carried out, goes through several transformations before it produces an output. The aim of this paper is to investigate the impact of locality during the generative process using both qualitative and quantitative techniques. To explore this, we examine the effects of standard GE mutation using distance metrics and conduct a survey of the output designs. There are two different kinds of event that occur during standard GE Mutation. We investigate how each event type affects the locality on different phenotypic stages when applied to the problem of interactive design generation.
      617Scopus© Citations 9
  • Publication
    Interactive EC control of synthesized timbre
    Perhaps the biggest limitation of interactive EC is the fitness evaluation bottleneck, caused by slow user evaluation and leading to small populations and user fatigue. In this study these problems are addressed through the proposal of new user interface techniques for interactive EC, which allow faster evaluation of large numbers of indi- viduals and the combination of interactive with noninteractive evaluation. For the first time in the interactive EC literature a set of rigorous usability experiments compares these techniques with existing interactive EC and non-EC interfaces, for the application domain of sound synthesis. The results show that a new user interface for interactive EC improves performance, and further experiments lead to refinement of its design. The experimental protocol shows, again for the first time, that formal usability ex- periments are useful in the interactive EC setting. Statistically significant results are obtained on clearly-defined performance metrics, and the protocol is general enough to be of potential interest to all interactive EC researchers.
      1426Scopus© Citations 7