NetLogo User Community Models
(back to the NetLogo User Community Models)
by Jun Wang
WHAT IS IT?
This model illustrates how a small array of microscopic loops (CB modules),
each coupled with a neuromuscular (NM) module, can generate motor commands and
movements in the "center-out" task, a classical movement task that requires a
subject to move rapidly from a starting point in the center of a workspace to
one of eight radially symmetric targets.
A CB module consists of a loop between a motor cortex (MC) neuron and a
cerebellar nucleus (CN) neuron, and an inhibitory Purkinje cell (PC) that
regulates the positive feedback between the MC and CN neurons. For a MC neuron
to generate a motor command, the PC needs to switch from its spontaneous state
(i.e., inhibitory) to a programming state. During the programming state, if the
MC neuron receives external sensory input that is strong enough to initiate
positive feedback between MC and CN, the MC neuron will be able to generate a motor
command. At the end of the programming state, PC goes back to the spontaneous
state, thus terminating the generation of a motor command. We assume that given
a movement task, a PC neuron knows when to change its state and how to change. This
knowledge is called the motor program; it is stored in the form of synaptic weights
from parallel fibers to the PC, and acquired through movement training. In the
center-out task, there are eight specific tasks, each corresponding to reaching
one of the eight targets. Given a specific task (e.g., reaching the top-most
target), the PCs in the array of CB modules will be programmed according to
some training-acquired motor program.
An NM module consists of a muscle and its sensory feedback (stretch reflex)
that can translate a motor command into a muscle force. Under the framework of
the equilibrium point hypothesis proposed by Feldman, the strength of a muscle
force depends on a muscle threshold length (which is regulated by a motor
command): increase motor command => decrease threshold length (lambda) =>
increase muscle force. Muscle force also includes a velocity-dependent damping
component that can prevent oscillation in spring-mass systems.
HOW TO USE IT
SETUP: set up eight NM modules, each with a spring-like muscle connecting its
fixed anchor (bar labeled from 1 to 8) to a limb object (a hexagon in gray at
center). Also shown are eight standard targets (black boxes) in the middle
between the center and the eight NM module anchors. Every time when you change
any parameter, you may press button SETUP to reset the model.
GO: simulate the rapid movement of the limb object from the center to a target
colored in red.
The TARGET-DIRECTION slider lets you define a target with a specific direction.
The standard eight directions are 0 (or 360), 45, 90, 135, 180, 225, 270, 315
The PC-SPONTANEOUS-SIZE slider controls how strongly PC inhibits the positive
feedback of the CB module. Note that there is some tradeoff in setting this
parameter: a high PC-SPONTANEOUS-SIZE number will make the positive feedback
hard to initiate, and a low PC-SPONTANEOUS-SIZE number will make the
already-initiated motor command hard to terminate.
The TRIGGER-PULSE slider controls how strong the external stimulus to the MC
neuron should be. For a high PC-SPONTANEOUS-SIZE, you may need to make a
bigger TRIGGER-PULSE in order to initiate a motor command.
The PC-PROGRAMMING-DURATION slider controls how long the PC programming state
M: the mass of the limb object. The greater the mass, usually the slower the
B: viscoity factor of the damping movement. The greater the viscosity, the
unlikely the movement oscillation. When B=0, there is no oscillation.
K: stiffness of the spring-like muscle. The greater the stiffness, the faster
THINGS TO NOTICE
First, notice the trajectory of the limb movement in the view (represented as a
sequence of black dots when total-time slider is set no more than 1000ms,
otherwise a line). The dots are dense at the beginning as well as the end of
the movement, but are sparse in the middle, caused by rapid movement. (This is
also illustrated in the bell-shaped velocity profile in the two
Second, notice how the PC of the modules changes during the programming state.
For the module whose direction aligns the most with the direction of the
selected target, its PC inhibition value drops the most. On contrast, the PC
inhibition of those modules with opposite direction gets even higher. As the
PCs change, the membrane potential (Vm) of the MC neurons in the CB modules and
their corresponding output (motor command) change too. Then these generated
motor commands cause the change of the muscle threshold length (lambda) in
corresponding NM modules, thus produce muscle forces to drive the movement of
the limb object.
Third, when you choose a target whose position is NOT standard, you will find
that the movement toward the target is not well controlled as expected. If we
have many more modules, the movement control on reaching these non-standard
targets could be better because of the effect of the population.
THINGS TO TRY
Set total-time to its maximum (40000ms), B=0 (no damping), M=0.5. and setup a
non-standard-position target, then you will get some interesting oscillatory
patterns of the trajectory of the limb object. The oscillatory patterns are
called Lissajous curves (see the last three citations in REFERENCES.)
For example, try these two settings:
(a) K=20, target-direction=10
(b) K=30 and target-direction=20.
Wang J, Dam G, Yildrim S, Rand W, Wilensky U, and Houk JC (2008, to submit) Reciprocity
Between the Cerebellum and the Cerebral Cortex: Nonlinear Dynamics in
Houk JC, Fagg A, and Barto A (2002) Fractional Power Damping Model of Joint Motion.
Progress in Motor Control Vol 2.
Feldman AG (1986) Once more on the equilibrium-point hypothesis (lambda model) for motor control. J Mot Behav. 18(1):17-54.
Ivar E (1998) Nonlinear modes of vibration. Nature 395, 116-117. doi:10.1038/25847
Morris R (from The Wolfram Demonstrations Project) Paths of Two-Dimensional Oscillators