A Modular, and Extensible, Biological Micro-Evolution Simulator.
These days, AI is taking over the jobs of humans. Most of these AIs are powered by neural networks. Training neural networks is commonly seen as a process of making a neural network learn from examples. However, there are cases where it'd be much more suitable to let the neural networks learn by themselves, and often times we lack examples to use to train neural networks. Again, we have nowhere to look, but nature itself - darwinian evolution, which comprises of mutation and natural selection, is one of the coolest ways to get the job done. The applications are endless, and it'd be a shame to repeat the processes of training a neural network through evolution. Thus, the idea of "Darwin" came to existence - it's a modular biological micro-evolution simulator - which can be used to efficiently simulate evolution of neural networks through induced selection, which in turn can be used to train neural networks. You can focus on the training, and simulation, itself while Darwin handles the rest.
Darwin comprises of a core, which handles the evolution of neural networks, and provides all the essential features. Extensions, which themselves are modules, can be fit into Darwin, powered by the core, to create simulations with custom environments, objects, selection, etc.
Darwin deals with mutation of objects of specific class, and utilizes induced selection to make them evolve. Through extensions, you can define objects of your own class, which can be a neural network, and define your own version of induced selection.
For example, you can make an extension which simulates evolution of biological organisms, each controlled by neural networks. You can program the environment as you desire. Moreover, you can program the selection procedure. The core module provides all the common things you need, and also acts as a platform/foundation/base for your simulation to run.