What Is This All About?
The Silverlight and .Net Genetic Programming (SLNGP) project aims to enable easy and simple .Net software development using Genetic Programming. Semi-Formal definition:
Genetic Programming is a sub-branch of metaheuristic algorithms using computer program population evolution with the goal of evolving an optimal solution in a given search domain. Informal definition:
Genetic Programming is so cool it makes you bleed from the eyes when you first encounter it.
Empires and kings have long sought out the magic secret of Genetic Programming.
Learning Genetic Programming will make your software development skills more marketable, enable you to build skynet, make you a better person and increase your sex appeal.
What's the Silverlight and .Net Genetic Programming edge?
- Barrier of Entry: Getting started with Genetic Programming requires spending days learning the fundamentals and rolling out your own implementation. This project means to reduce barrier of entry to Genetic Programming down to 30 minutes.
- Debugging: Debugging evolutionary programs is extremely hard. Through the cunning use of rich data visualization we hope to enable straight and simple debugging of evolutionary algorithms.
- Extensibility: There are many variants of Genetic Programming Operators. This project takes on extensibility as a 1st class citizen and makes absolutely no hard coded assumptions about anything that can be avoided.
- Documentation: Lots of code samples, unit tests and documentation will be available on this wiki once the project ships.
Silverlight brings to the table a nexus of 3 powerful attributes:
- The .Net framework in the Browser - Enabling Genetic Programming to use the full .net framework through in-browser applications.
- Top-notch UI framework - Enabling best of breed visual debugging experience for your Genetic Programming runs.
- Easy networking - Genetic Programming has multiple models that require splitting up runs to multiple machines (Island models, Client-Server, Spatially embedded, etc). Using Silverlight we can easily distribute work to multiple clients without installing any additional software.
When is this shipping?
Soon. Here's a print screen to tie you over:
- Hunting for a program that can derive "(X + 1)" from a collection of 1->2, 2->3, 3->4, 4->5, 5->6 etc.