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.3 Locomotion Controller

1. Introduction

The leg controllers take care of the details of lifting the leg and swinging it back and forth in the correct order for the leg to take a step forward or backward. However, There needs to be some way of synchronizing all of the legs together. Otherwise the insect may attempt to raise all of its legs at the same time and fall down. The system that provides this synchronization is the locomotion controller. The insect must be able to move forward or backward while maintaining its stability. If a real roach falls down while it is walking then it could be in big trouble. Especially if it is trying to flee the oncoming boot that will squish it into a nasty grease spot. So just moving the legs so they take steps is not enough. It must be able to move forward while maintaining its balance.

2. Locomotion Neural System

Locomotion Controller Neural Layout
Figure 1. This is the neural layout for the locomotion controller.

Actual Leg Controller Neural Layout
Figure 2. This is a diagram of the actual leg controller for leg 0. It shows the connections to locomotion controller and the other leg controllers. Specifically, it shows the inhibitory connections that enter this pacemaker from the pacemakers of legs 1 and 2.

Figure 1 shows the layout of the locomotion controller. The important things to notice in this diagram are the inhibitory connections that occur between the different leg controllers. A good rule of thumb that can be used to maintain stability is that adjacent legs should be discouraged from swinging at the same time. For example, If leg 0 and leg 1 swing at the same time then the front legs of the insect will be off the ground and it will have a tendency to tip forward. If leg 0 and leg 2 swing at the same time then two adjacent legs on the same side of the body will be off the ground and it will have a tendency to fall sideways. The inhibitory connections between the pacemakers is what implements this rule. If leg 0 is swinging then pacemaker 0 will inhibit pacemakers 1 and 2, and most likely keep them from also swinging even if they are being stimulated by the back sensors. Once leg 0 begins the stance phase then pacemaker 0 will go silent and allow the other two pacemakers the chance to fire.

3. Locomotion Controller Analysis

Disconnected Locomotion Controller Analysis
Video 1. This graph shows the output from the leg controllers when they are not connected using inhibitory connections.

Video Size: 5.2 Mb

Video 1 shows the output from the insect leg controllers when they do not have the inhibitory connections of the locomotion controller in place. This graph clearly shows that each of the leg controllers are operating completely independently of each other. When one leg reaches the end of its stance phase it automatically starts swinging regardless of what the other legs are doing. The video also demonstrates this rather dramatically. When the insect turns red it is unstable. In the video the insect legs are somewhat synchronized in that most of them start their swing and stance phase at roughly the same times. This is determined by the initial rotation of the legs however. By putting the legs with the proper initial rotation it is possible to make the insect perform the tripod gate simply because the timing just happens to work out correctly. But in this case where the legs are not in the proper alignment, the insect ends up flat on its belly for half of the time and then has roughly all of the legs in stance mode for the rest of the time. Almost like the rows on an ancient boat. This insect is clearly not stable, and its legs are not working together to move it forward efficiently.

Locomotion Controller Analysis
Video 2. This graph shows the output from the leg controllers when they are connected using inhibitory connections.

Video Size: 5 Mb

Video 2 shows the output from the insect leg controllers when they do have the inhibitory connections of the locomotion controller in place. It is easy to see the differences between the output of this graph and that of video 1. The pacemakers no longer fire in the same old rhythm they started with. Even though this insect had exactly the same initial leg rotations, it quickly establishes an ordered firing pattern. As one of the pacemakers fires, it inhibits the adjacent pacemakers and prevents them from firing at the same time. This imposes a synchronization on the all of the legs and naturally brings about the tripod gait. This is easy to see in the (red, blue, red), and (blue, red, blue) patterns of the pacemaker firing at a given moment in time. The video also clearly shows the difference that comes about from these simple inhibitory connections. The insect is now completely stable with a tripod gait throughout the entire step cycle. This allows all of the legs to work together to move the insect forward in a more efficient manner. The insect is able to cover considerably more distance in the same amount of time than the insect with disconnected leg controllers.

4. Locomotion Control Neuron

Locomotion Control Neuron Analysis
Video 3. This graph shows the output from the locomotion control neuron stopping the insect.

Video Size: 3.8 Mb

The locomotion control neuron that was shown in the leg controller section has been split into two separate neurons in figure 1. These are the locomotion speed control (LSC) and the locomotion gate control (LGC). The LSC neuron is equivalent to the old LC neuron. It is responsible for controlling how fast the insect travels. The locomotion controller has a difficult time adjusting to too rapid a change in speed. Therefore the LSC neuron has a high capacitance. This way changes in speed are applied slowly and minor variations in the stimulation of LSC are filtered out. However, when the animal wants to stop completely it will need to do so rapidly. Attempting to change the LSC neuron would be to slow because of the large capacitance it has. This is the purpose of LGC. It functions as a fast acting gate. It normally just passes through the output of the LSC neuron on to the pacemakers of the leg controllers. But if the insect needs to stop, then it inhibits the LGC neuron. This cuts off the output from the LSC neuron to the pacemakers. Also, the LGC neuron is connected to the Stop neuron. The Stop neuron is a tonic neuron that is constantly trying to fire. While the LGC neuron is uninhibited and acting as a simple pass through, it actively inhibits the Stop neuron and keeps it from firing. But when LGC is inhibited it can no longer inhibit the Stop neuron, and it then fires. The Stop neuron is connected to several places throughout the insect neural system. In figure 2 it can be seen that one of those places is a direct connection to the pacemakers. This immediately inhibits all of the pacemakers. Another important connection for the stop neurons is in the turn subsystem that will be discussed later. Video 3 shows the insect walking and then at 4 seconds the LGC neuron is strongly inhibited, causing the insect to stop completely. Once the inhibition is removed the insect reestablished its tripod gate and continues walking.

5. Backward Locomotion Control

Backward Control Neurons Analysis
Video 4. This graph shows the output from the backward control neurons.

Video Size: 3.9 Mb

There are two neurons that are involved in controlling if the insect is walking backwards. The first was discussed in the leg controller section. This was the backward control neuron (BC). Its job is to control the gated synapses that decide when the foot is up and down in the leg controller. When the insect walks forward its foot is down during the stance phase. But when the insect is moving backwards its foot is down during the swing phase. The backwards memory neuron (BM) is the other neuron involved with walking backwards. This neuron has a large capacitance and directly stimulates the BC neuron. It is used primarily when the insect wants to walk backward for a short period of time. It will inject a current into the BM neuron to stimulate it, and the large capacitance of the BM neuron ensures that it continues to stimulate the BC neuron for a period of time even once the original current stimulating BM is gone. Video 4 and its video demonstrate the use of neuron BM. The insect initially is walking forward for a short period of time. At 3 seconds 20 na of current is injected into BM for 200 ms. BM is then stimulated and the insect begins walking backwards. Once BM ceases to fire the insect again walks forward. One thing to notice in video 4 is that after BC begins firing the order of the pacemaker firing changes. For instance, P0 was firing right before BC began firing and normally it would then go quiet and P1 would fire. But when BC was stimulated P0 began firing again and the order of pacemaker firing reversed. 

6. Overview

This section has shown that there is a lot more involved in walking that just getting the timing for an individual leg correct. All of the feet and the rest of the body must be synchronized globally for the insect to maintain stability and walk efficiently. Without this upper level control the legs all operate independently of each other and of the goals of the insect as a whole. This section also showed the LSC neuron that is responsible for controlling the speed of the insect, and the LGC neuron that is in charge of whether the insect is moving or completely stopped. Finally, the neurons responsible for controlling the direction of walking were also discussed. The backward control neuron is in charge of making the insect walk forward or backward, and the backward memory neuron allows the insect to walk backwards for a brief moment. This is primarily used when the insect runs into an obstacle. With all of these neurons working together the insect has complete control over its walking behavior. It can go forward and backwards while maintaining its stability and controlling its speed. However, so far the insect can only travel in straight lines. The next section will discuss the turning system that will be used to allow the insect to wander around in its environment.

<< 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.