PyGP

Welcome

Welcome to The Python Genetic Programming Project (PyGP). The project currently consists of a full tree-arhitecture genetic programming algorithm written in Python. Results and screenshots from past runs are available in the Runs section

If you would like to learn more about Genetic Programming, or want to help on the project, contact me in the forums. There's still lots to be done. I can also be e-mailed.

More information than you can shake a stick at about genetic programming

Things that are going on:

True Mating

I was dismayed to find that the traditional approach to mating trees was insanely destructive, so I've come up with my own way. In this method, all nodes retain their position, where position is the route down the tree to the node. This is represented as a tuple containing the indeces of children required to traverse to the node. The method will be described in another article shortly, but is already implemented in the current release.

Distributed Processing

Another in-demand feature is distribution. This involves having a number of localised populations on different machines, and after each generation a portion of the population (~5%) migrates to a different machine. There are a number of issues, mainly central control and migration parameters, that need to be resolved before this feature is ready.

Architectural Absurdities

At the moment, an individual consists of a tree and a set of parameters. Nodes within the tree cannot reference any other nodes but their parents. This means things are easy to process, but features like automatically defined functions are not really possible.

Multi-agent Systems

I hope to implement more interesting fitness testing, involving multiple instances of agents, such as ant farms.

Macroscopic Representation Problems For Cellular Automata

For some particle systems like rigid bodies, we have fairly accurate and simple macroscopic representations. When considering an object in motion, it is rarely necessary to consider its individual particles. The same cannot be said for other particle systems, like fluids and reaction/diffusion systems. In this branch, genetic programming will be used to (hopefully) discover macroscopic rules for complex systems like these.

Kindly hosted by
SourceForge Logo

Good HTML