|
Java GE (jGE) is an implementation of Grammatical Evolution (GE) in the Java language.
The main goal of the Java GE (jGE) project at Bangor is the implementation of an Evolutionary Algorithms (EA)
framework which will facilitate further research into Evolutionary Algorithms (and especially Grammatical Evolution).
Grammatical Evolution was chosen as the main Evolutionary Algorithm of the jGE Project because it facilitates,
due the use of a BNF Grammar, the evolution of arbitrary structures and programming languages.
Other objectives of the jGE Library (and some further reasons as to why Java was chosen as the implementation language)
are as follows:
- An open and extendable framework for the experimentation with EAs;
- The creation of an Agent-Oriented Evolutionary System (an agent-based framework);
- Bootstrap project for further research on the application of the principles of the Evolutionary Synthesis theory in machines;
- Integration and interoperability with other projects such as evolutionary algorithms with knowledge sharing;
- Integration with other open source and free Java projects like Robocode (e.g. evolution of simulated robots using GE).
|
|
The jGE Library is free software released under the GNU General Public License v3
"It is not the strongest of the species that survive, nor the most intelligent,
but the one most responsive to change."
Charles Darwin, On the Origin of Species
Grammatical Evolution
Grammatical Evolution is an evolutionary algorithm that can evolve complete programs in an arbitrary language using a
variable-length binary string. The binary string (genome) determines which production rules in a Backus Naur Form (BNF)
grammar definition are used in a genotype-to-phenotype mapping process to generate a program.
|
| |
|
|
jGE NetLogo extension
jGE NetLogo is an extension of jGE for NetLogo. One of the goals for the development of this extension (it is a subproject of the jGE project) was to allow both NetLogo users to get familiar with and use Grammatical Evolution
within their models, and people interested in Evolutionary Computation to use Evolutionary Algorithms (like Grammatical Evolution) directly within a modelling
environment like NetLogo for the evolution of the morphology and behaviour of agents.
In order to install the extension, download the archive file from the download page of this site and just unzip it to the extensions folder of the NetLogo installation. Then you can use the Grammatical Evolution algorithm in your NetLogo models.
The archive file includes also:
- The Documentation and Manual.
- The source code of the extension.
- A Demonstration model of how to use the jGE NetLogo extension.
- The jGE Library.
- Some demo BNF grammars.
|
|
Santa Fe Ant Trail simulation
This NetLogo model is a simulation of the Santa Fe Ant Trail, which is a standard problem in the areas of Genetic Programming and Grammatical Evolution.
The objective of this problem is to find a computer program to control an Artificial Ant, so that it can find all 89 pieces of food located on the grid.
This model has been developed (as subproject of the jGE project) in order to enable the user to do the following things:
- Write a set of actions (in the NetLogo programming language) and run them to observe the behaviour of the Artificial Ant.
- Simulate, verify, and investigate the Santa Fe Ant Trail solutions of other related programs (for example, some Genetic Programming and Grammatical Evolution software packages).
|
|