John Mark Swafford’s research while affiliated with University College Dublin and other places

What is this page?


This page lists works of an author who doesn't have a ResearchGate profile or hasn't added the works to their profile yet. It is automatically generated from public (personal) data to further our legitimate goal of comprehensive and accurate scientific recordkeeping. If you are this author and want this page removed, please let us know.

Publications (12)


Analyzing Module Usage in Grammatical Evolution
  • Conference Paper

September 2012

·

22 Reads

·

4 Citations

Lecture Notes in Computer Science

John Mark Swafford

·

·

Michael O’Neill

·

Being able to exploit modularity in genetic programming (GP) is an open issue and a promising vein of research. Previous work has identified a variety of methods of finding and using modules, but little is reported on how the modules are being used in order to yield the observed performance gains. In this work, multiple methods for identifying modules are applied to some common, dynamic benchmark problems. Results show there is little difference in the performance of the approaches. However, trends in how modules are used and how “good” individuals use these modules are seen. These trends indicate that discovered modules can be used frequently and by good individuals. Further examination of the modules uncovers that useful as well as unhelpful modules are discovered and used frequently. The results suggest directions for future work in improving module manipulation via crossover and mutation and module usage in the population.


Comparing Methods for Module Identification in Grammatical Evolution

July 2012

·

33 Reads

·

4 Citations

John Mark Swafford

·

·

·

[...]

·

Modularity has been an important vein of research in evolutionary algorithms. Past research in evolutionary computation has shown that techniques able to decompose the benchmark problems examined in this work into smaller, more easily solved, sub-problems have an advantage over those which do not. This work describes and analyzes a number of approaches to discover sub-solutions (modules) in the grammatical evolution algorithm. Data from the experiments carried out show that particular approaches to identifying modules are better suited to certain problem types, at varying levels of difficulty. The results presented here show that some of these approaches are able to significantly outperform standard grammatical evolution and grammatical evolution using automatically defined functions on a subset of the problems tested. The results also point to a number of possibilities for extending this work to further enhance approaches to modularity.


Figure 1: A typical evolutionary algorithm.
Figure 4: The GEVA/Blender GUI. Evolution is controlled by keyboard shortcuts or the mouse controls on the left. The 3D view of the current design on the right can be zoomed, rotated, and aligned with the mouse. 
Figure 13: The process of "widening" the design language.
Figure 14: Various bridges achieved with other versions of the grammar.
Figure 15: A simple shape grammar (a) which duplicates and offsets the square which is its LHS. After two applications, smaller squares "emerge" and are available for use as the LHS, as in the final application (b).
String-rewriting grammars for evolutionary architectural design
  • Article
  • Full-text available

January 2012

·

336 Reads

·

20 Citations

Environment and Planning B Planning and Design

Evolutionary methods afford a productive and creative alternative design workflow. Crucial to success is the choice of formal representation of the problem. String-rewriting context-free grammars (CFGs) are one common option in evolutionary computation, but their suitability for design is not obvious. Here, a CFG-based evolutionary algorithm for design is presented. The process of meta-design is described, in which the CFG is created and then refined to produce an improved design language. CFGs are contrasted with another grammatical formalism better known in architectural design: Stiny's shape grammars. The advantages and disadvantages of the two types of grammars for design tasks are discussed.

Download

Table 1 : Experimental setup for all evolutionary runs unless otherwise noted 
Figure 2: Average Derivation Tree Depth-12 × 12 Lawn Mower Problem 
. Note that a run for the Symbolic Regression benchmark is considered a success if the best fitness is less than or equal to 0.01. For every other benchmark, a run is a success if the best fitness is 0. 
A non-destructive grammar modification approach to modularity in grammatical evolution

July 2011

·

161 Reads

·

16 Citations

Modularity has proven to be an important aspect of evolutionary computation. This work is concerned with discovering and using modules in one form of grammar-based genetic programming, grammatical evolution (GE). Previous work has shown that simply adding modules to GE's grammar has the potential to disrupt fit individuals developed by evolution up to that point. This paper presents a solution to prevent the disturbance in fitness that can come with modifying GE's grammar with previously discovered modules. The results show an increase in performance from a previously examined grammar modification approach and also an increase in performance when compared to standard GE.


Table 1 : Experimental setup for all evolutionary runs unless otherwise noted Parameter Value
Exploring Grammatical Modification with Modules in Grammatical Evolution

April 2011

·

93 Reads

·

11 Citations

Lecture Notes in Computer Science

There have been many approaches to modularity in the field of evolutionary computation, each tailored to function with a particular representation. This research examines one approach to modularity and grammar modification with a grammar-based approach to genetic programming, grammatical evolution (GE). Here, GE’s grammar was modified over the course of an evolutionary run with modules in order to facilitate their appearance in the population. This is the first step in what will be a series of analysis on methods of modifying GE’s grammar to enhance evolutionary performance. The results show that identifying modules and using them to modify GE’s grammar can have a negative effect on search performance when done improperly. But, if undertaken thoughtfully, there are possible benefits to dynamically enhancing the grammar with modules identified during evolution.


Fig. 7. Scatter plots showing the correlation between modularity and best fitness  
An examination on the modularity of grammars in grammatical evolutionary design

August 2010

·

33 Reads

·

3 Citations

This work furthers the understanding of modularity in grammar-based genetic programming approaches by analyzing how different grammars may be capable of producing the same phenotypes, but still display differences in performance on the same problems. This is done by creating four grammars with varying levels of modularity and using them with grammatical evolution to evolve floor plan designs. The results of this experimentation show how increases in modularity, brought about by simple modifications in the grammars, and increases in the quality of solutions go hand in hand. It also demonstrates how more modular grammars explore more individuals even while fitness remains the same or changes in only minor increments.


Comparing the performance of the evolvable πGrammatical Evolution genotype-phenotype map to Grammatical Evolution in the dynamic Ms. Pac-Man environment

August 2010

·

78 Reads

·

15 Citations

In this work, we examine the capabilities of two forms of mappings by means of Grammatical Evolution (GE) to successfully generate controllers by combining high-level functions in a dynamic environment. In this work we adopted the Ms. Pac-Man game as a benchmark test bed. We show that the standard GE mapping and Position Independent GE (πGE) mapping achieve similar performance in terms of maximising the score. We also show that the controllers produced by both approaches have an overall better performance in terms of maximising the score compared to a hand-coded agent. There are, however, significant differences in the controllers produced by these two approaches: standard GE produces more controllers with invalid code, whereas the opposite is seen with πGE.


Fig. 1. In (a), no re-use. In (b), re-use without higher-order combination.
Fig. 3. Simplified version of the grammar used to produce our architectural designs.  
Fig. 5. W-shaped gate: each of the three individuals created from the original by a single mutation retain a strong stylistic similarity to the original. The design's organisation is not destroyed, even though many components are changed in some way.  
Higher-order functions in aesthetic EC encodings

July 2010

·

112 Reads

·

12 Citations

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.


Table 2 . Results of the five different Ms. Pac-Man agents vs. three different ghost teams over 100 independent runs. Highest scores are shown in boldface.
Evolving a Ms. PacMan Controller Using Grammatical Evolution

April 2010

·

348 Reads

·

29 Citations

Lecture Notes in Computer Science

In this paper we propose an evolutionary approach capable of successfully combining rules to play the popular video game, Ms. Pac-Man. In particular we focus our attention on the benefits of using Grammatical Evolution to combine rules in the form of “if condition> then perform action>”. We defined a set of high-level functions that we think are necessary to successfully maneuver Ms. Pac-Man through a maze while trying to get the highest possible score. For comparison purposes, we used four Ms. Pac-Man agents, including a hand-coded agent, and tested them against three different ghosts teams. Our approach shows that the evolved controller achieved the highest score among all the other tested controllers, regardless of the ghost team used.



Citations (12)


... What is happening in direct mutation is that continually drifts from the original, destroying patterns and only very rarely introducing new patterns. The behavior of direct mutations can be described as entropic [10]. ...

Reference:

Graph-Based Mutations for Music Generation
Higher-order functions in aesthetic EC encodings
  • Citing Article
  • January 2010

... In [7], the authors examined the usefulness of explicit loops and the patterns captured by those loops in a couple of problems in a tree-based genetic programming setting. Trends in the module usage in Grammatical Evolution (GE)-for example, the number of individuals in the population at a given generation that are using a certain module and the average fitness for such individuals-are studied in [12]. The dynamics of the evolving populations in terms of various structural and behavioral measures of diversity has been studied in [1], where the authors found that some diversity measures such as the edit distance metric have a strong correlation with the fitness of a given population, while others have a weak one. ...

Analyzing Module Usage in Grammatical Evolution
  • Citing Conference Paper
  • September 2012

Lecture Notes in Computer Science

... Multiple ways exist to auto-generate 3D items including manipulating the colour and visibility of voxels using CPPNs [19] or Context-Free Grammars [4], [29], [34], using Graph Grammars to generate a set of points in 3D space [28], using Shape Grammars to create 3D items [10], [31], [33] and evolving parameters to use within an external generation system [27], [32]. However, to ensure that a wide range of visually different sculptures was created, the Axial Generation Process (AGP) was selected [16], which places geometric items around a central axis and is capable of creating a wide range of visually different sculptures. ...

String-rewriting grammars for evolutionary architectural design

Environment and Planning B Planning and Design

... Recently, many MI algorithms have been proposed for disease module identification [56], [57], [58], [59], [60], [61], [62], [63], [64]. According to local hypothesis, all cellular components in the same topological module are very likely to have the same molecular function and thus to be involved in the same disease [55]. ...

Comparing Methods for Module Identification in Grammatical Evolution
  • Citing Article
  • July 2012

... Other measures like Benford's Law [1], Global Contrast Factor [23] and Ross & Ralph Bell [38] curve are used to gauge colour and texture of art, while concepts like Information theory [32], composition, Depth of Field (DoF) and colourfulness are employed to evaluate 2D artwork colours [37]. Research in 3D art assessment is rare but uses concepts like symmetry [10], entropy [2], smoothness, 1/f noise and fractal dimension largely concentrating on geometric properties more than aesthetic ones [3,33]. Even though most of the related work is on adapting 2D art evolution metrics to generate 3D art, recent work by Murali & Avudaiappan [28] showed that 3D specific metrics were rated higher by users, when compared to adapting 2D features. ...

Evolutionary design using grammatical evolution and shape grammars: Designing a shelter

International Journal of Design Engineering

... Games are great test benchmark problem and are becoming more common in AI to carry out interesting research, ranging from logical-based combinatorial puzzle games [17], [19], board games [2], to video games [18], [22]. In this work, we decide to use a popular board game named Carcassonne. ...

Comparing the performance of the evolvable πGrammatical Evolution genotype-phenotype map to Grammatical Evolution in the dynamic Ms. Pac-Man environment

... In a modular system, a module has more frequent interaction within the subsystem than outside the subsystem [61], so modularity is the measure of interaction between different components in a system [53,61]. For example, a highly modular grammar enabled a GE algorithm to evolve better multiagent solutions [69]. Evolving resilience might require additional evolutionary operations, such as lateral gene transfer [25,35,54]. ...

An examination on the modularity of grammars in grammatical evolutionary design

... Likewise, the modules are unable to propagate in the population. Swafford et al. (2011b) propose another approach that augments the grammar during the evolutionary process with useful modules. However, Swafford et al. (2011b) must use the heuristic rules for determining good modules, and require extra computational cost for adding the discovered modules to the grammar. ...

Exploring Grammatical Modification with Modules in Grammatical Evolution

Lecture Notes in Computer Science

... Each chromosome is a series of production rules from the underlying BNF grammar and it can be used to construct valid programs in the target language. During the recent years, Grammatical Evolution was applied in a wide range of problems from different areas, such as music synthesis [57], video games [58,59], design of fractal curves [60], constant creation [61], robotics [62,63], modeling glycemia in humans [64], Wikipedia taxonomies [65], economics [66] etc. The grammars used in the Grammatical Evolution procedure are expressed as sets G = (N, T, S, P) where • N represents the set of non-terminal symbols included in the grammar. ...

Evolving a Ms. PacMan Controller Using Grammatical Evolution

Lecture Notes in Computer Science