WormWorx: Help the C. Elegans worm find food!
(by
tuning its nervous system)
C. elegans
is a little worm with a simple nervous system that allows it to find food (and do
other useful activities) as it wriggles around in wet soil. The WormWorx app simulates the worm’s locomotion system and the
part of its nervous system that senses the food that it likes (bacteria) by the
“scent” of dissolved salt that comes from the bacteria. The worm follows the
scent to the food.
The muscles that make it move
and the nerve cells (neurons) that
sense the salt and control the muscles are called its neuromuscular system. The worm actually has 302 neurons but we only
need to look at some of these to show how the worm can “steer” toward food. We
also have 12 pairs of muscles along its body that rhythmically contract to move
the worm.
Neurons talk to each other by
connections called synapses. How they are wired is called a connectome. Your job is to change the
strengths (or weights) of the synapses to allow the worm to steer properly.
There are three patches of
food. Below is a screenshot of the worm after eating at one patch (blue) and undulating
toward the next (green). There are three food patches in all.
The next image shows the
connectome. The neurons are circles and rectangles. There are three types of
neurons:
·
Sensory neurons
sense some condition in the environment and activate when it happens. There are
two of these:
o
ASEL activates when the salt concentration is increasing.
o
ASER activates when the salt concentration is decreasing.
·
Interneurons
connect and transfer signals between neurons. These activate when incoming
synapse signals build up and then send out signals on outgoing synapses to
other neurons.
·
Motor neurons
connect to and turn on or off muscles.
The synapse connections are
weighted to indicate how strongly they transfer signals between neurons. The
weights are what you will be adjusting. The motor neurons are arranged 12
modules that alternately contract and relax the muscles they control.
Again, the game is to adjust
the synapse weights such that signals from the neurons make the muscles move
the worm to the food. Remember the difference between how ASEL and ASER work
and good luck!
Hint: When you change a
weight, the worm resets to the beginning. Of course, you can use that to start
over!
What happens when the worm
eats all three food patches? Take a snapshot and get a WormWorx badge!
WormWorx is
brought to you by OpenWorm, an
international project to build a virtual C. elegans.
Check it out!
Boyle, Berri and Cohen, “Gait
modulation in C. elegans: an integrated neuromechanical model”,
Front. Comput. Neurosci., 2012.
Eduardo J. Izquierdo and Randall
D. Beer, "An
Integrated Neuromechanical Model of Steering in C. elegans", ECAL15
If you want to play with the WormWorx
code, here’s how:
1. WormWorx is
made with the Marmalade cross-platform tool kit. Download and install Marmalade.
2. Clone
or download WormWorx from GitHub.
3. Start
the Marmalade Hub and open the WormWorx.mkb project
file.
4. Run in
simulator.
The WormWorx++ code is also
included in GitHub:
1. WormWorx++ is
made with Android
Studio.
2. Start
Android Studio and open the WormWorx++ project file.
3. Run in
simulator or on USB connected device.