N-genes 0.9 review
Downloadn-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.
Performances Optimisations
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