Subsystems

Neural circuits can quickly become large and complicated. The neural subsystem was added to allow you to organize your circuits into discreet subsystems that can talk to each other. This allows you to get high-level views of how your system operates and how all the pieces are connected.

A good example of where this type of organization is useful is the leg control circuit for walking. Figure 1 shows a neural circuit for this behavior. The biomechanical organism has six legs. Each leg has a central pattern generator (CPG) that produces the motor pattern that controls its movements. These CPG's are almost identical. The main difference between them is that the motor and sensory neurons are connected different parts of the body. This makes it very convenient to put each of the CPG's into their own subsystem. It allows you to build and test the CPG for one leg, and then you can simply copy and paste new ones for the other legs and make changes that reflect the differences between the legs.

Once you have a subsystem for each leg you can add connections between them to synchronize their movements. Using this type of organization is again helpful because even though each subsystem may have 100 or more neurons you are treating it as a single unit. It makes it much easier to see how the parts as a whole are connected together to produce the synchronization. This is done by reciprocal inhibition of the pacemaker neurons in adjacent leg CPG's. Using a higher level overview of the system makes this jump out at you instead of having it buried in a complicated mess of hundreds of neurons and synapses.

Figure 1. Subsystem nodes are used for the CPG for each leg and reciprocal inhibition between adjacent legs is used to synchronize their motions. The hierarchy toolbar shows how the subsystems are nested.

Using a Subsystem

Adding a new subsystem is very simple. You do it just like adding any other node. Drag the subsystem node from the toolbox and add it to a diagram. A new node will be shown in that diagram, and a new diagram will be added to the editor that has the same name as the subsystem node. If you change the name of the subsystem the name of the diagram will be changed to match. When you add a subsystem you will immediately be taken to the new diagram screen. If you look at the tabs on the top of the page you will see one for the new diagram. Double clicking on a subsystem operates a little differently from other nodes. When you double click on a subsystem node it takes you to the diagram for that system.

The main differences between a subsystem and a standard node are in the ways it functions. It is directly associated with a diagram. So operations that you perform on the node are done to the whole diagram. Changing the name of the node changes the name of the diagram. Deleting the node will delete the diagram and ALL nodes, links, and subsystems that are contained in that diagram. So be very careful when deleting a subsystem. It would be quite easy to take out a sizeable portion of your neural circuit by deleting a subsystem node. However, as we mentioned above it also makes it easier to add to your circuit as well because if you copy and paste a subsystem node you are making a copy of every node, link and subsystem that it contains.

This item has the same properties as its base Node class. For a description of the basic node properties please click here. You can use these properties to change the way the subsystem node looks.

The neural subsystem node allows us to split our circuits up into discrete parts. But how do you connect the parts together? This is done using an offpage connector. This node stands in for another node somewhere in the system. It can be on the same diagram or a different diagram. This allows you to connect the nodes in your subsystem to any node anywhere else in your circuit. Please see the details for the offpage connector for more details on how this works.