Successfully Applying PCT

[From Bruce Abbott (2002.03.25.1540 EST)]

Bill Powers (2002.03.25.0644 MST)

Before you can apply PCT successfully to any
kind of behavior, you must study that behavior to determine the variables
that are actually significant (as opposed to those that merely interest
you), and the specific kinds of control processes and parameters of control
that are involved. This means not armchair speculation but experimentation
with the system itself, or a valid simulation of it. It means demanding
that all facts on which a theory is based be real facts, solid facts that
are true all of the time and under all circumstances -- not educated
guesses or reasonable expectations or, worst of all, things that simply
have to be true because of some belief system.

Bill, I've mentioned this to you, but thought it might be of interest to
CSGnet subscribers. There is a nice web site that presents a program of
research that seems to fit the above description perfectly. The URL is:

http://www.uni-bielefeld.de/biologie/Kybernetik/research/walk.html

The website presents work by Professor Holk Cruse (and colleagues) of the
Department of Biological Cybernetics, Faculty of Biology, University of
Bielefeld, Germany. Three related projects are described involving,
respectively, walking in the "stick insect," walking in the crayfish, and
human arm movement (at this point, constrained to motion in the horizontal
plane). In the case of the stick insect, work was done to identify the
systems orchestrating the coordinated movement of of the legs. Here's the
introductory paragraphs for the section entitled "Control of Walking: The
Problems."

"The study of biological motor systems is difficult because in most such
systems, the number of degrees of freedom is normally larger than that
necessary to perform the task. This requires the system to select among
different alternatives according to some, often context-dependent
optimization criteria, which means that the system usually has a high degree
of autonomy. Therefore, the experimenter does not have direct control of
some important inputs to the motor system. Furthermore, such systems must
adapt to complex, often unpredicatable environments. By this "loop through
the real world," the unknown properties of the environment affect the
behavior of the system. Despite these experimental and theoretical
difficulties, the complexity makes the
study of motor mechanisms especially challenging, particularly because they
illustrate to a high degree the task of integrating influences from the
environment, mediated through peripheral, sensory systems, with central
processes reflecting the state and needs of the organism. Furthermore, it is
exactly the autonomy of animals, expressed in their ability to act
adaptively in complex environments without external control and to select
among alternative actions in a seemingly efficient way, that has become a
focus of interest in recent years in robotics and artificial life as
possible models for artificial systems."

"Three problems, not logically separable, are of interest here. One is the
question of how the spatio-temporal movements of the different legs are
coordinated. The second question concerns the control of the movement of the
individual leg. A third question, not independent from these two problems,
is how the body height is controlled when walking over uneven terrain."

The research disclosed at least six types of influence between legs, three
for ipsilateral (same-side) legs and three for directly contralateral
(opposite-side) legs. Computer simulations were written to model these
influences and the results displayed as real-time movies showing the
simulated stick insect walking under various conditions.

Under the section on "Robots" there is a link to another German site where
you can see still and motion pictures of two six-legged "insects" that walk
about and handle various disturbances appropriately. I was a little
saddened by these as I had planned about two years ago to create a similar
robot using, as these researchers did, RC servos as the "muscles" and a PC
(attached to the robot via umbilical cord) to program HPCT-style
higher-level control systems. My plan called for three servos per leg, one
to move the leg forward/backward, one to lift the leg at the "shoulder," and
one to vary the "knee" angle. I had gotten as far as locating a supplier of
boards by which the servos could be controlled via the PC and working out
the basic platform design. My idea was to implement Richard Kennaway's
model in hardware, eliminating the need to simulate the physics of the
environment by substituting the real physics. Ah, well, perhaps it's still
not too late.

If anyone would care to read over the material at the site given above and
comment on it, I'd sure be interested in having a conversation about it.
Don't neglect to download the simulation files and run them!

Best wishes,

Bruce A.

[From Bill Powers (2002.03.26.0847 MST)]

Bruce Abbott (2002.03.25.1540 EST) --

>There is a nice web site that presents a program of

research that seems to fit the above description perfectly. The URL is:

http://www.uni-bielefeld.de/biologie/Kybernetik/research/walk.html

The website presents work by Professor Holk Cruse (and colleagues) of the
Department of Biological Cybernetics, Faculty of Biology, University of
Bielefeld, Germany. Three related projects are described involving,
respectively, walking in the "stick insect," walking in the crayfish, and
human arm movement (at this point, constrained to motion in the horizontal
plane). In the case of the stick insect, work was done to identify the
systems orchestrating the coordinated movement of of the legs. Here's the
introductory paragraphs for the section entitled "Control of Walking: The
Problems."

It's a very interesting web site and I haven't finished studying it
(haven't looked at the Human Arm Control section, for example). However,
it's not PCT. I agree that this work satisfies one of the conditions I
described, namely, to study real systems and determine in that way the
variables and behaviors that are important. But the model that is proposed
is far from a PCT model -- there is, for example, no explicit control
system described (that I can find). I shouldn't say too much about this,
though, because I can't claim to understand how they _do_ design the
system. It would be interesting to know how these systems keep the bug's
body at a fixed height above the ground, alter its yaw, roll, and pitch
angles, and so forth. In Richard Kennaway's model, all these control
systems are completely explicit.

Generally, I'm suspicious of the neural-network approach, because we end up
not knowing how the system actually works. The model could be doing
something trivially easy, but in such a complex way that we would never
recognize the underlying simplicity of the system. I'm not an admirer of
complexity for its own sake.

Here is some more of what the authors say:

···

=================================================================================
In the stick insect three different mechanisms influence the PEP, i.e., the
transition from
power stroke to return stroke. Two influences are rostrally directed; that
is, they are transmitted
towards the front from one leg to the next. One (no. 1, Figs. 3,4), hinders
a leg from starting a
return stroke as long as the posterior leg performs its return stroke and
possibly up to about
100 ms thereafter. This influence can prolong the power stroke (Cruse and
Epstein 1982, Cruse
and Schwarze 1988, Dean and Wendler 1982, Foth and B�ssler 1985a).
Experimental results
indicate that this is done by shifting the threshold for beginning a return
stroke to a more posterior
position (Cruse 1985a). In contrast to this "inhibitory" influence two
additional influences have an
"excitatory" effect. The second rostrally directed influence (no. 2, Figs.
3,4) can elicit a return
stroke in a leg when the posterior leg starts a power stroke (Cruse and
Schwarze 1988). This
influence shortens the duration of the power stroke. A third influence is
caudally directed (no. 3,
Figs. 3,4); that is, it is transmitted towards the rear from one leg to the
next. The start of a return
stroke of a leg is more strongly excited, i.e., occurs earlier, the farther
the anterior leg is moved
rearward during its power stroke (Cruse and Schwarze 1988, Dean and Wendler
1982, Foth and
B�ssler 1985b, B�ssler et al. 1987). This has the effect that the posterior
leg performs a return
stroke before the anterior leg begins its return stroke. These three
mechanisms are redundant in
the sense that they produce the same effect: the nearly immediate
re-establishment of coordination
in the case of any disturbance.

Sorry about the margins -- the original was in a smaller font, I guess.

As you can see in the diagrams in the original, the observed relationships
are simply translated into functions that connect causes to effects in a
six-element network. Beer did essentially the same thing with his cockroach
model. While this can reproduce the behavior of the system, it isn't the
only possible model that will behave in the same way, and it makes no
provision for the kinds of detailed control processes you find in
Kennaway's model. On the positive side, the behavior of the simulations is
very smooth and graceful, not at all like the klunky behavior shown by
compute-then-act models and robots I've seen. For all I know, of course,
there could be actual continuous control systems hidden inside those
adaptive networks.

I think your plans for building a walking Kennaway Robot are extremely
interesting, and I propose that the CSG start a Robot Fund for helping you
to put it together. I will pledge $200 a year to this fund as long as it's
needed (maybe more, I haven't talked with Mary about this), and invite
other CSGers to chip in also if you agree to making it a formal CSG project
and there are enough other donors to reach the threshold of feasibility.
Maybe you could drag matching funds out of the University, or from a grant.
Note that contributions to the CSG are tax-deductible: CSG is a 501-c-3
not-for-profit scientific and educational organization with a Federal tax
number and everything.

Only one caution. RC controllers are generally pretty frictional -- that
is, they resist disturbances in large part through the friction of worm
gears or other gear reducers, so that little or no current is required to
hold a joint in position. I don't know if you want to deal with this right
away -- probably not -- but eventually such a model has to incorporate some
of of real properties of muscles and limbs. One reason for the lack of
smoothness and grace in most robots is that they use position controllers
that simply force the joints to assume certain angles, with very little
interaction with external forces or limb mass and momentum. When the motor
stops the joint angle stops changing, regardless of physical interactions
of the limbs with other objects. This is what leads to the typical
robot-like movements that actors so cleverly portray to make it clear that
this is not a living system. When the head turns to one side, it starts
moving instantly, travels at a constant speed, and then stops instantly in
the new position, often with a subtle little damped oscillation. Limb
movements are similarly done. People who remark on how "natural" the Little
Man's movements look are probably referring to the more natural
accelerations and decelerations, which are under feedback control rather
than just being a matter of turning motors on and off.

While this is probably beyond the scope of the project as currently
visualized, it would be possible to use RC controllers to simulate muscles
more realistically. The RC servo itself could be used to simulate the
contractile portion of a muscle, which gets longer and shorter with very
little influence from external forces. In series with the muscle would be
one spring and in parallel, another spring, so the end-to-end muscle would
have properties nearly like a real muscle. With a dashpot across the
parallel spring the resemblance would be even closer. Alternatively, a
computer could sense muscle tension and length, and by adjusting the
contractions, force the overall muscle properties to match observed properties.

I would suggest, in any case, building ONE limb first. If you can get one
limb to behave realistically, adding 5 more and superimposing the Kennaway
model on it would be relatively easy.

Best,

Bill P.

[From Bruce Abbott (2002.03.26.1910 EST)]

Bill Powers (2002.03.26.0847 MST) --

Bruce Abbott (2002.03.25.1540 EST) --

>There is a nice web site that presents a program of

research that seems to fit the above description perfectly. The URL is:

http://www.uni-bielefeld.de/biologie/Kybernetik/research/walk.html

The website presents work by Professor Holk Cruse (and colleagues) of the
Department of Biological Cybernetics, Faculty of Biology, University of
Bielefeld, Germany. Three related projects are described involving,
respectively, walking in the "stick insect," walking in the crayfish, and
human arm movement (at this point, constrained to motion in the horizontal
plane). In the case of the stick insect, work was done to identify the
systems orchestrating the coordinated movement of of the legs. Here's the
introductory paragraphs for the section entitled "Control of Walking: The
Problems."

It's a very interesting web site and I haven't finished studying it
(haven't looked at the Human Arm Control section, for example). However,
it's not PCT. I agree that this work satisfies one of the conditions I
described, namely, to study real systems and determine in that way the
variables and behaviors that are important. But the model that is proposed
is far from a PCT model -- there is, for example, no explicit control
system described (that I can find). I shouldn't say too much about this,
though, because I can't claim to understand how they _do_ design the
system. It would be interesting to know how these systems keep the bug's
body at a fixed height above the ground, alter its yaw, roll, and pitch
angles, and so forth. In Richard Kennaway's model, all these control
systems are completely explicit.

I can't understand their model, either, perhaps because they don't give
enough information about it in the web presentation. I'll probably be
taking a look at the publications cited and see whether they don't make
things a bit clearer. Of course, for the servo-based robot the bottom
level is a set of control systems -- as you know, the RC servos used are
rotational position control systems.

Generally, I'm suspicious of the neural-network approach, because we end up
not knowing how the system actually works. The model could be doing
something trivially easy, but in such a complex way that we would never
recognize the underlying simplicity of the system. I'm not an admirer of
complexity for its own sake.

> . . .

As you can see in the diagrams in the original, the observed relationships
are simply translated into functions that connect causes to effects in a
six-element network. Beer did essentially the same thing with his cockroach
model. While this can reproduce the behavior of the system, it isn't the
only possible model that will behave in the same way, and it makes no
provision for the kinds of detailed control processes you find in
Kennaway's model. On the positive side, the behavior of the simulations is
very smooth and graceful, not at all like the klunky behavior shown by
compute-then-act models and robots I've seen. For all I know, of course,
there could be actual continuous control systems hidden inside those
adaptive networks.

There probably are, but it would be nice as you say to have them explicitly
defined in the model.

I think your plans for building a walking Kennaway Robot are extremely
interesting, and I propose that the CSG start a Robot Fund for helping you
to put it together. I will pledge $200 a year to this fund as long as it's
needed (maybe more, I haven't talked with Mary about this), and invite
other CSGers to chip in also if you agree to making it a formal CSG project
and there are enough other donors to reach the threshold of feasibility.
Maybe you could drag matching funds out of the University, or from a grant.
Note that contributions to the CSG are tax-deductible: CSG is a 501-c-3
not-for-profit scientific and educational organization with a Federal tax
number and everything.

Thanks for the offer! Funding by my department is likely to be minimal or
nonexistent in the short term as the State of Indiana is in financial
crisis and our operating budgets have recently been slashed, effective
immediately. However, I think I can keep the overall costs fairly low, at
least for the initial prototyping. I suspect that the most costly aspect
will be the servo-control boards for the computer and any extra servos I
will have to purchase.

Yesterday the Psych Department hosted a Pizza lunch-meeting for our majors,
a kind of "meet the faculty" thing. Among the students attending was an
older student who has a degree in electrical engineering technology and is
currently employed as a software engineer (programming Windows in
C++). He's taking courses in psychology because he's interested in the
subject and wants to learn more about it. I described for him some of the
research involving control theory that I'm planning to pursue and he seemed
very interested, to the point of later sending me a not via email asking me
to keep him in mind. If I can talk him into it, this seems like a project
that could take advantage of his special skills.

Only one caution. RC controllers are generally pretty frictional -- that
is, they resist disturbances in large part through the friction of worm
gears or other gear reducers, so that little or no current is required to
hold a joint in position. I don't know if you want to deal with this right
away -- probably not -- but eventually such a model has to incorporate some
of of real properties of muscles and limbs.

> . . .

While this is probably beyond the scope of the project as currently
visualized, it would be possible to use RC controllers to simulate muscles
more realistically. The RC servo itself could be used to simulate the
contractile portion of a muscle, which gets longer and shorter with very
little influence from external forces. In series with the muscle would be
one spring and in parallel, another spring, so the end-to-end muscle would
have properties nearly like a real muscle. With a dashpot across the
parallel spring the resemblance would be even closer. Alternatively, a
computer could sense muscle tension and length, and by adjusting the
contractions, force the overall muscle properties to match observed
properties.

I've been sensitive to this problem and have given some thought to it
already, but concluded that as a first cut it would probably be sufficient
to use the servos just as in the Tarry I and II models. I've also given
some thought to using pistons (made from hypodermic syringes), pulled in by
vacuum, to simulate muscle, but again, that perhaps should come
later. Even using the servos directly, the robot can serve as a good
test-bed for proposed higher-lever control organizations.

I would suggest, in any case, building ONE limb first. If you can get one
limb to behave realistically, adding 5 more and superimposing the Kennaway
model on it would be relatively easy.

That shouldn't prove too difficult -- I already have enough servos to
operate a single leg. A prototype could be built using readily available
hobby materials. It should be possible to have something ready to show at
the CSG conference this year.

The real challenge, I suspect, will be to equip the model with appropriate
sensors, in sufficient quantities, and get all this input into the computer
in real time. I'd like to implement the control systems (beyond the servos
themselves) in software as this will make it easy to test different control
configurations and strategies without having to change the
hardware. Sensors should include switches to sense foot ground contact,
contact of the legs with objects (including other legs!), and contact of
the body with the ground. Eventually there should be something to provide
visual guidance (photocells?) and perhaps a sensor for body orientation
with respect to the horizontal. Of course, even a fairly large array of
sensors will never come close to duplicating the number present in any real
organism, which is one of the basic deficiencies in all robotic simulations
of living designs. Still, you have to start somewhere.

Bruce A.