[From Bill Powers (950606.1115 MDT)]
Hans Blom (950606)--
I have always taken it to be the task of the basic PCT controller
to bring about a best match between perceptions AT THE LOWEST
LEVEL, i.e. the intensities that directly impinge upon our sensors,
and internal reference levels. Now that might not necessarily be
true, but somehow I have always thought so.
This does explain some disconnects between us.
[Here follows an essay that is germane to the subject, and which has
also been requested by Dag Forssell as further explanation of the Little
Man v. 2 model. Dag can clip this essay and put it where he wants it.
This is called killing two birds with one stone.]
The hierarchical concept of control in HPCT (hierarchical PCT) is built
on the idea that perceptions of various levels of derivation from the
world are controlled by means of varying reference signals for sets of
lower-level control systems. Only at the lowest level do the control
system outputs produce forces that act on the physical environment.
I exploited this concept in the Little Man model. The lowest level of
control in this model is force control.
> ref force
>
--->[Comparator] ---
> >
Tendon Muscle
force tension (model of muscle)
> >
<--[local effects]<--
This control system contains a transport lag of about 10 milliseconds,
and the muscle model puts in a time constant of about 50 milliseconds
(the muscle model works through shortening a contractile element and
thus stretching a passive series spring). The closed-loop control has
the effect of making the tendon force very nearly a function of the
reference force alone, with the system time constant greatly reduced
below that of the muscle alone. This thus becomes an _angular
acceleration_ control system which makes angular acceleration very
nearly inversely proportional to the moment of inertia about the joint,
and equal to the reference-force setting.
The next level of control acts by varying the reference force, and
senses the angular velocity about the joint.
[start new page]
> reference angular velocity
>
----------->[Comparator] ---> second-order error signal
> >
> amplifier
sensed angular vel |
> > ref force
[rate of change] |
sensor --->[Comparator] ---
> > >
> Sensed tendon Muscle
> force tension
> > >
> <--[local effects]<-
> >
<---[velocity = f(torque)]<-
The sensed angular velocity is derived from the first derivative of the
muscle-spindle length signal. Since angular velocity of the arm about
the joint is essentially the integral of torque divided by moment of
inertia, we have a direct angular velocity control system at the second
level, which acts through a force control system that is very fast and
makes applied torque nearly proportional to the force reference signal.
Disturbances of tendon force due to friction, mechanical forces, and
inertial effects ("jerk") are removed by the first-level system, so the
second-level system sees a much more ideal environment that it would
without the first-level system.
The third level of control is an angular position control system, this
time using the proportional signal from muscle spindles and acting by
varying the second-level velocity reference signal:
[Start new page]
position reference signal
>
--------->[comparator] -->
>
amplifier
>
angular | reference angular velocity
position sensor V
----------->[Comparator] ---> second-order error signal
> >
> amplifier
sensed angular vel |
> > ref force
[rate of change] V
sensor --->[Comparator] ---
> > >
> Sensed tendon Muscle
> force tension
^ | | |
> <--[local effects]<-
> >
<---[velocity = f(torque)]<-
>
>
<-pos = f(velocity)<---
The third-level system now sees an environment that responds almost
ideally to a velocity reference signal. It senses angular position as
represented by muscle length, compares sensed muscle length with a
reference muscle length, and corrects the error by varying the second-
level velocity reference signal. Because the lower-level systems remove
system dynamics almost completely, the highest-level system sees a world
in which position follows the reference position with only a single
first-order lag, which requires no added frequency compensation.
Each degree of freedom of the 3-df arm is controlled by a three-level
system of this kind. The feedback functions shown as vel = f(torque) and
pos = f(velocity) are actually computed in a physical model of the arm
which receives torque inputs and returns angles, angular velocities, and
angular positions, recomputed for each degree of freedom on each
iteration of the model.
There is no special compensation for coriolis forces and other
interactions. This way of organizing control counteracts such
interactions as if they were external disturbances, and does so at the
appropriate level for the type of interaction. Direct force interactions
are countered at the force-control level; dynamic interactions like
coriolis forces due to conservation of angular momentum are countered at
the velocity control level. As a result, the position control level
experiences almost no dynamic disturbances as angular position follows
changes in the independent position reference signals for each degree of
freedom.
Actually this unconventional way of representing a three-level control
system exists anatomically collapsed into a very clever two-level system
with rate feedback providing damping. The entire model could be
represented as a single control system with suitably complex functions,
but by breaking out the various levels of control this way, we get a far
simpler picture of how the whole system works. Basically, every variable
is controlled at the lowest level possible, where control involves the
simplest possible loop. No individual control system becomes very
complex, even though the overall system is quite complex, involving
nonlinear second-order differential equations.
I should mention that the second level, velocity control, is not one of
the levels in the semi-official hierarchy. We have mulled over adding
this level, but never reached any final decision. Since this level can
be viewed as just adding damping to a position control system, perhaps
we should not assign a general level of this sort to the overall model.
But we made decide otherwise, depending on how many other low-level
systems turn out to have a similar distinguishable level of control.
There is a fourth level of control in the Little Man which receives
position perceptual signals, and in effect changes the coordinate system
in which control takes place. Where the three 3-level systems control in
coordinates centered on the various arm joints, this fourth level senses
and controls angular position in x angle, y angle, and radius with the
origin at the shoulder. Each system at this level also involves an
integrating output function, which makes overall resistance to sustained
constant disturbances (like gravity) much stronger. The result is to
remove ambiguities from the standpoint of higher-level systems. The
fourth level of control receives three reference signals, one specifying
lateral angle, another specifying vertical angle, and the last
specifying radial distance of the end of the arm from the shoulder (all
measures at this level are relative to the shoulder). So these reference
signals are the points of action available to still higher-level
systems.
If you now imagine all these four levels of control as a set of three
output functions providing reliable effects in x, y, and radius, we can
add still another level, a visual control level. I won't try to draw it;
the block diagram is essentially the same as the block diagram that can
be displayed in Little Man version 1. Through ray-tracing we locate the
tip of the arm (the "fingertip") on the retinas of two eyes, and also
the position of a movable target on the two retinas. We assume that
there is a visual input function that can report two sets of x-y
position signals, one set from each eye. The eyes and head are
controlled in x and y by two control systems each of which centers the
image of the target on each retina by moving both eyes and head. The
distance of the fingertip relative to the target is then computed from
the discrepany in the lateral fingertip-to-target position in the two
retinal images. The right eye alone is used to provide x and y signals
representing the lateral and vertical angular distance between the
fingertip image and the image of the target. Needless to say, the model
does NOT describe the machinery by which these signals are produced from
the retinal images.
So we have three visual perceptual signals representing x, y, and radial
distances between target and fingertip relative to the eyes. We can
supply three reference signals for the desired visual distances, and
route the three error signals through appropriate amplifiers to vary the
three reference signal inputs to the fourth-level kinesthetic systems
already discussed. The center of the visual coordinate system is
displaced from the center of the kinesthetic coordinate system (the
shoulder), but over the whole range of possible positions within a
normal 180-degree field of view, there are no ambiguities between these
two coordinate systems. So even though there are some rather strong
nonlinearities in the connection between the visual control systems and
the kinesthetic ones, the visual systems can bring the fingertip to the
target and make it track the target, moving the arm as necessary in its
three degrees of freedom. With, I should add, gravity turned either on
or off at any time.
We can touch on one final level of control, which in the model is
represented by a pattern generator rather than a complete control
system. On command, the x and y visual reference signals can be made
into slow sine and cosine waves (normally they are zero, meaning that
the fingertip is to be held _at_ the target position). This pair of
varying reference signals represents a still-higher system that is
perceiving and controlling some variable relationship between fingertip
and target. With the sine and cosine waves going, the fingertip
describes a continuous circle around the target, still tracking the
target movements in three dimensions. Obviously, by choosing reference
signal patterns other than a sine and cosine wave, and varying all three
reference signals, we could make the fingertip describe any desired
trajectory in three-dimensional space relative to a stationary or moving
target. Note that such trajectories are not simply an expression of arm
dynamics. They are arbitrary and independent of arm dynamics.
This model was meant primarily as a test of the control-system model as
a way of explaining how arm position control works. The visual control
level was added to show how hierarchical control is built up level by
level, and also as an antidote to certain published models of how
visually-controlled pointing works. To this extent, the model is a
success.
However, the model is unfinished and needs several refinements. One
needed refinement is a way of compensating for the difference in origins
of the visual and kinesthetic perceptual control systems. For slow
movements of the target this difference has no important effects, but
when the target jumps suddenly to a new position, the initial movement
of the fingertip can be in a severely wrong direction. That would be all
right if the human system did the same thing, but it doesn't. I tried to
install an adaptive map which converts a visual error into the correct
direction of change of the three kinesthetic reference signals, but this
map works only approximately and takes days of continuous running to
converge to a reasonable form. Also, this map lies on the output side of
the visual control systems, whereas it would be nicer to have it on the
input side, making the perception of visual space map onto the
perception of kinesthetic space. The mathematical problems in achieving
a simple and smooth-working adaptive map have been beyond me, and I have
left the model in this state hoping that someone else with more skill
could carry it further.
Even with such improvements, the current model would be far from a
definitive explanation of human motor behavior. But it is a start on a
new approach, and for those specifically interested in movement control
might serve as a first approximation for further development.
···
---------------------------------
OK, Hans, back to you -- but not in this post, which is very long
already. I hope this has given you a better idea of how hierarchical
control is treated in PCT, even though it covers only a narrow range of
behaviors.
-----------------------------------------------------------------------
Best,
Bill P.