N-genes 0.9 reviewDownload
n-genes is a powerful Genetic Algorithms and Programming toolkit written for Java 5. Using advanced object oriented techniques, li
n-genes is a powerful Genetic Algorithms and Programming toolkit written for Java 5.
Using advanced object oriented techniques, like generics and introspection, it is one the simplest system to learn and use. N-genes's design allows fast coding and a total flexibility.
n-genes is an open-source project released under GPL. It is free of charges.
Here are some key features of "N genes":
Stack-based Genetic Programming
The Genetic Programming implemented in n-genes relies on a linear postfix programs, close to Forth or Postscript programming languages. They allow the following advantages:
High-level and turing-complete language (through flow-control instructions);
Extendable and customisable instruction set;
Possibility of using faster and simpler GA operators;
Efficient bloat removing/controlling algorithms.
Modularity and Dynamic Config Files
All parts of evolutionary computing have been made components, through " Design Patterns" methodology. The benefits are:
Separation of the behaviour from the representation, i.e. we can use the same operators for a GA doubles individual or for a GP problem;
Short and readable code, since each object represents only a single operation and therfore has few and shorts methods.
The possibility to change the components or their behaviour during evolution, for example changing dynamically the size of a population or using self-adaptating mutation operators.
The n-genes platform is coupled with a dynamic config file system. This system is able to instanciate whatever class, passing arbitrary parameters of whaterver types, whithout needing to extend the parser. Object introspection is used at initialisation.
n-genes was written with high performance computing in mind. Here are the optimisations you get for free, using our platform:
Object-recycling memory management, eliminating the time spent on objects allocation and garbage-collections;
Efficient individual-level fitness cache, the fitness is lazy-computed and cached until the individual is mutated;
Population-level individual cache, saving computation time when the population diversity dimish.
N-genes 0.9 keywords