Search the Mindcreators site: 

Update Alert!

I have now finished work on a much more advanced version of the insect simulator named AnimatLab. AnimatLab is a software tool that combines biomechanical simulation and biologically realistic neural networks. You can build the body of an animal, robot, or other machine and place it in a virtual 3-D world where the physics of its interaction with the environment are accurate and realistic. You can then design a nervous system that controls the behavior of the body in the environment. The software currently has support for simple firing rate neuron models and leaky integrate and fire spiking neural models. In addition, there a number of different synapse model types that can be used to connect the various neural models to produce your nervous system. On the biomechanics side there is support for a variety of different rigid body types, including custom meshes that can be made to match skeletal structures exactly. The biomechanics system also has hill-based muscle and muscle spindle models. These muscle models allow the nervous system to produce movements around joints. In addition, there are also motorized joints for those interested in controlling robots or other biomimetic machines. This allows the user to generate incredibly complicated artificial lifeforms that are based on real biological systems. Best of all AnimatLab is completely free and it includes free C++ source code!

4.3.2 Leg Controller

1. Introduction

The section on insect locomotion discussed the concept of the central pattern generator. The CPG is the set of interconnected neurons that are responsible for generating the rhythmic motor patterns that animals use in locomotion. In the insect simulator system the CPG is modeled by the leg controller subsystem. A pacemaker generates the rhythmic pattern and controls the neurons responsible for swinging the legs back and forth and for raising and lowering the foot. It also receives inputs from forward and back sensors that help control the timing of the pacemaker. 

2. Basic Leg Controller System

Basic Leg Controller Neural Layout
Figure 1. This is the neural layout for a simple leg controller subsystem.

The leg controller that is used in the final insect simulation is fairly complex. It has to be able to handle moving forward and backward, and has to be able to be controlled by other systems. The leg controller that will be discussed here is a much simpler version and has all of those complications stripped away. It is provided simply to help the reader understand the core concepts of how the controller actually works. Complication will be added later. Figure 1 shows the neural layout for this simplified leg controller circuit. The neuron LC is the locomotion control neuron. It is really not a part of this subsystem, but is above it. It is shown here for clarity. The neuron LC has the same connections to all of the leg controllers. Its basic function is to control the speed of the insect. It is setup so that it fires at a minimum frequency even when it is not being stimulated. The more stimulation that LC is given, the higher its output frequency goes, and the faster the insect moves. The heart of the controller is the pacemaker P0. It functions as the heartbeat, and helps control when to initiate leg swings and foot motions. The muscles of the insect leg are controlled by three different neurons. The stance neuron is responsible for moving the leg backwards. The swing neuron moves the leg forward. The foot neuron controls moving the foot up and down. There are also two sensor neurons in this system. The forward sensor simulates the role of the hair receptors of the cockroach by firing when the leg begins to get near its maximum forward position. The back sensor is related to the stress receptors of the cockroach. It fires when the leg is reaching its maximum backward position. These neurons are connected in such a way that this network generates all of the correct signals, in the correct sequence, to make a leg take one step forward. This temporally extended pattern of motor activity is what is known as a fixed action pattern. And it is the generation of this rhythmic behavior that defines a central pattern generator.

3. Basic Leg Controller Analysis

Basic Leg Controller Analysis
Video 1. This graph shows the output from the key neurons of the basic leg controller.

Video Size: 3.8 Mb

The fixed action pattern is really just that. It is a pattern of events that allow the insect to take a step. This pattern is then repeated over and over again to allow the insect to walk. The pattern can be broken down into a number of simpler parts. These are outlined in the list below. When watching video 1, it is possible to identify each of these parts with specific data on the graph.

1. The LC neuron stimulates the stance neuron and causes it to move the leg backwards. The foot is also down because the pacemaker is silent. This is the stance phase of the step.
2. When the leg begins to near its maximum backward angle it causes the back sensor to fire.
3. The back sensor stimulates the pacemaker neuron to fire.
4. The pacemaker then inhibits the stance neuron and stops it from moving the leg backward.
5. The pacemaker inhibits the foot neuron and causes the insect to raise its foot.
6. The pacemaker stimulates the swing neuron which causes the leg to begin moving forward. This is the swing phase of the step.
7. When the leg moves to the point where it is reaching its maximum forward position it causes the forward sensor neuron to fire.
8. The forward sensor neuron then inhibits the pacemaker and shuts it down. This causes the foot to come into contact with the ground, and the leg to stop moving forward
9. The LC neuron stimulates the stance neuron and causes it to move the leg backwards. And the whole cycle is repeated again.

It is easy to see why the pacemaker was referred to as the heartbeat of the controller. It is the pulsing of the pacemaker, in combination with the sensory inputs, that control the timing and pattern of leg and foot movements.    

4. Advanced Leg Controller System

Advanced Leg Controller Neural Layout
Figure 2. This is the neural layout for the actual leg controller subsystem.

Clearly, the actual leg controller used in the insect simulator appears to be much more complex than the basic system that was just discussed. However, it is really not that much different. The biggest change is that is that the motor neurons that control the swing and stance of the legs have been duplicated. This was done so that the insect could walk backwards as well as forward. In this layout the LC, Stop, and BC neurons are not really members of the leg controller subsystem. They are in a system that is higher up and make the same connections to all of the leg controllers. They are shown here for clarity. The LC neuron performs the same job that it did in the basic system. BC is the backward control neuron. If it is silent then the insect walks forward. If it is firing then it walks backwards. The stop neuron inhibits the pacemaker neuron and stops the step cycle. Later on, when the insect needs to come to a complete stop when it is over top of food it will use this stop neuron. All of the other neurons work just as they did in the above basic system. The difference is the way they are connected. By looking closely it can be seen that the basic connections are still present on the left side of this system. But there are also mirror image connections on the right side. For instance, normally the forward neuron excites the stance and foot neurons, and inhibits the pacemaker and swing neurons. But in the backward connections, the backward sensor excites the swing and foot neurons, and inhibits the pacemaker and stance neurons. The gated synapses coming from the BC neuron into most of the other neurons then controls which set of synapses are active. When BC is silent, the set of connections from the basic system above are used. When BC is firing, then the opposite set of connections are used. 

5. Advanced Leg Controller Analysis

Advanced Leg Controller Backward Analysis
Video 2. This graph shows the output from the key neurons of the actual leg controller for backward walking.

Video Size: 3.8 Mb

The output for forward walking looks exactly like the output from video 1. Video 2 shows the output that occurs when the insect is walking backwards. The major difference here is that the foot is down for the swing phase instead of the stance phase. It is tempting to think that this behavior can be more easily obtained by simply adding a new foot neuron and driving it differently so that when the insect wants to go forward it puts its foot down during stance and puts it down during swing for backward walking. Unfortunately, things are not quite that simple. The problem is that the foot is setup to always be firing to keep the foot down. There are ways around this, but they end up being of similar complexity to the system that was actually used. There are many possible ways to build a  leg controller that can do what is needed. This is almost certainly not the most efficient network that could be created to perform this function. But it does work. 

6. Overview

The leg controller is key to understanding how the insect will be able to walk. It is responsible for sequencing the musculature contractions in the correct pattern so that the leg performs a stepping motion. The pacemaker is the key neuron that drives the rhythmic nature of the stepping motion. It then controls the action of the motor neurons. And the sensory neurons feed back into the pacemaker to allow it to respond to the natural environment. The next section will show how to take these individual leg controllers that each operate independently and tie them together so that they operate in a synchronous manner.

<< Previous Contents Home Next >>

MindCreators.Com is edited and maintained by David Cofer. If you have any questions, comments, or just want to discuss the contents of this website, then email me at:

Copyright © 2002 by David Cofer. All rights reserved.