These days the worlds of biology, particularly microbiology, and computing are rapidly converging. Biological references made their way into computing a long time ago. We always find bugs in our code, though worms are a lot less common.
Equally, the biological world at very low levels has become increasingly computerized, with simulations of protein folding algorithms used to identify possible new drugs. Then there is DNA sequencing that involves searching for nucleotides, the building block molecules of life. That involves string searching algorithms, machine learning and database theory in the growing field of bioinformatics.
Now, the ever increasing processing power of silicon has led to the OpenWorm project, an attempt to synthesize a digital nematode, C. elegans. This is short for Caenorhabditis elegans, Greek and Latin words meaning recent, elegant rod-like. It’s better known as a roundworm, one of man’s oldest enemies. Think hookworms and pinworms.
The project’s intention is to try and understand how a roundworm works by simulating it digitally from the bottom up. Nematodes have just under 1,000 cells yet they are good at finding food, mates and avoiding predators. How they manage to do this remains something of a mystery, and the hope is that the project will bring new insights.
The OpenWorm project has several activities going on in parallel. These look at
- “Thought” Processes. This uses NeuroML, which is XML used to define biophysical and anatomical properties of the worm’s neurons.
- A simulation engine called “Gepetto,” which includes a WebGL visualizer. More details below.
- An OpenWorm Browser to let you view a 3D representation of each cell. This is also available as a 99 cent
- iOS app to help fund the project.
- A Fluid Mechanic Simulator to simulate the body of the worm and its environment.
- An Optimization engine using genetic algorithms.
Gepetto Simulation Engine
Written in Java, Gepetto is an open source platform that allows anyone to develop and test their algorithms. A clever part of the design is the flexibility this gives: Algorithms can be for behavior, movement, whatever is needed to be tested.
Gepetto builds on the OSGI component platform to allow individual deployable bundles to be constructed. In simple terms, you take a complicated application and break it down into smaller bundles. A bundle is a collection of Java classes and other resources plus a manifest, much like a .NET assembly. The OSGI framework handles deployment, security, and starting and stopping the application
Unusually for an open source project, this is very much an enterprise type of environment. It even includes Eclipse Virgo, an Enterprise application server, to underpin Gepetto.
One of the strengths of open source is that anyone can take it and try something new, and maybe even give back. They can be a professional researcher, or an amateur. A warning, though: It’s too easy for newcomers to be overwhelmed by the complexity of enterprise development, and that’s the case here. “Where do I begin?” As architected, it provides a very robust system which splits everything down into modules, but there’s a significant learning curve. One way to approach the issue is to look at the available bundles, start running and try to understand them to see how you do.
Reality v Hollywood
In recent films, like Transformers, CGI Graphics are astonishingly realistic looking. It probably wouldn’t be too hard to bring that kind of quality to the OpenWorm project, though it wouldn’t help with its goal. OpenWorm is trying to understand the reality of nematodes and displaying them realistically probably wouldn’t contribute much. Besides which, what does a 1-mm long worm really look like?
Though strangely enough, it’s the research being done now that may yet lead to even greater realism in movies in the future. The battles fought in Peter Jackson’s Lord of the Rings films used software to simulate the monsters in action.
If you’re hungry for more biological information on C. elegans and other species of nematodes, the WormBase and WormBook websites should satisfy your curiosity. You’ll find great welcome in the OpenWorm project where volunteers are eagerly sought after, whether they’re writers, coders, scientists or just curious individuals.