Long Sunday thoughts: robotics;association; demos; problems

[From Bill Powers (950115.0600 MST)]

John Gardner (950114.10:30 EST)--

Glad to hear from you again!

     I think it's wrong to assume that all research in robotics is
     attempting to emulate human or other biological behavior... To say
     that we're trying to 'copy' human behaviour is a bit like saying
     that an automobile is an attempt at copying (and then,
     understanding) a horse. Of course, with that interpretation, the
     car is an utter failure but.....

Right, it's understood that industrial roboticists are primarily trying
to get a job done, not model living systems. Trying to build PCT
machines is difficult in part because we can't build the perceptual
systems that are required. The sensors are there, but how do you go from
a TV picture to perceptions of shape, size, rate of rotation,
trajectory, category, etc.? Somebody at MIT (I think) was trying to
build a touch-sensitive arm that could avoid crashing into things, and
ended up with an expensive monstrosity bristling with IR sensors. The
state of the sensing art hasn't gone far enough -- although perhaps if
the role of perception in control were more widely recognized, that
aspect of the solution would be further along by now.

On the other hand, natural systems do have a lot of design hints even in
their physical construction. A horse is a far better ATV than the ones
we buy at car stores. Its suspension can deal with much more irregular
terrain (ground clearance of several feet) and steeper slopes, as well
as mud, ice, and loose gravel. It doesn't require roads and it can find
fuel almost anywhere in a natural terrain. If the driver's attention
wanders it won't run itself into a wall or off a cliff. It will repair
modest amounts of damage all by itself. And its emissions are a rich
source of fertilizer instead of poison gas. On the other hand, the horse
design is not well suited for urban applications, which is one reason we
have cars.

     Anyway, there *are* a lot of robotics people who claim that their
     research will provide valuable clues to understanding biological-
     based motion, and perhaps they are the target of your attention,and
     perhaps correctly so. I just wanted to point out that there are a
     lot more (IMHO) robot/control engineers who are just trying to make
     machines.

Right, and more power to them. I do wish that they would caution the
biological modelers that the engineering principles they have developed
are dictated largely by limitations on the engineering state of the art
and should not automatically be assumed to underlie the workings of
living control systems.

RE: your six-legged robot driven by a human being:

     The fact is, it walked and did better than any other legged vehicle
     of that scale before (or since, as far as I know).

Because it could use human sensors and perceptual equipment! I presume
you saw Dante at work in that volcanic crater. I saw it on NASA Select
for many hours and I was beating on the table in frustration. Long
before it fell over I was predicting disaster. I think Dante was the
perfect multi-million dollar demonstration of what is wrong with the
approach of figuring out what move to make and then making it. This
philosophy was carried to a ridiculous extreme, with computers
generating a model of the terrain with the vehicle in it, trying to
identify obstacles and compute the limb motions required to get past or
over them. The result was that the robot could move only about ten feet
per HOUR and spent long periods between steps trying to figure out which
way to lift or move its legs while maintaining support. The human
operator had to intervene very often to get it out of impasses (which
the human operator did quite easily, if slowly). Eventually, Dante got
on a slope of loose rock; a rock rolled, and it slid into a posture from
which it couldn't recover. Even the human operators couldn't save it;
its motions were much too slow, and eventually it simply rolled onto its
back and had to be hoisted out. I look on Dante as a horrible example of
a certain philosophy of robotics gone mad.

     I would argue that these [inverse kinematic/dynamic] approaches
     represent perfectly valid and appropriate approaches to the problem
     of controlling *machines*.

I see them as necessities, not virtues. A lot of the problems with robot
arms, as I understand what I've read, come from the fact that they are
multijointed and are designed for 360-degree rotations at the joints.
This leads to multiple ambiguities in the relationship between joint
angles and the positions and orientations of end-effectors. In non-
homomorphic applications, the robotic controls are added to already-
existing machines and so have to adapt to the properties that are
already given, with their "unbelievably complex, nonlinear dynamics." If
one were doing mechanical design with feedback control in mind from the
start, the basic machines would probably be built very differently. The
human arm is built with limited ranges of movement so that ambiguities
are minimal and are easily resolved with a second layer of perception
and control on top of the basic angle servos. Nobody has claimed that
human beings are less versatile than industrial robots: only that they
get tired, insist on good working conditions, and sometimes lose
interest in what they're asked to do. Of course they're not very strong,
either, but a servo boost would take care of that if that were the only
problem.

In the "14df" program on which Avery Andrews and I have been working
(Avery more than me), an attempt has been made to build a second layer
of control that converts the joint-centered coordinate systems into
other coordinate systems within which ambiguities are minimized and
simple control system can work. As Little Man v. 2 shows, if the basic
movements about joints are controlled in the right way (modeled after
stretch and tendon reflexes), the dynamics of the arm are taken care of
at the lowest level, and the problem for higher systems is mainly just
position control in a single rational coordinate system. Avery has begun
to suspect that there may be many higher-level control systems that
establish different coordinate systems for specific applications and are
chosen by still higher-level systems as required. All this, no doubt,
can be expressed as Jacobians, but the final system uses only a few of
the possible transformations and they are embodied in the design of the
control systems, not computed in real time.

     Bill has mentioned in the past that the simulations used in your
     demonstrations are kinematic in nature: mass and rotary inertia
     are neglected.

Yes, this is true of the demos that involve real people controlling
screen displays, and in many demos of basic PCT control principles. But
this is possible because real people have already solved the problem of
stabilizing the dynamics of physical operation: from the point of view
of a higher control system, moving an arm from one position to another
is just a matter of smoothly adjusting reference signals from one set of
values to another set of values. Trajectories result from the way in
which the reference signals are changed; they don't take dynamics into
account, because on the time-scale at which the higher systems work, the
lower control systems make the limbs seem essentially massless and
frictionless. They just assume whatever positions are implied by the
reference signals, at whatever speed the reference signals are changing.

Little Man Version 2, on the other hand, employs a model of a 3-df arm
with full treatment of dynamics and kinematics. The control systems
themselves, however, do no inverse calculations; the dynamics are used
strictly to calculate the arm's response to torques at the joints, and
the kinematics to compute where the fingertip is for various joint
angles. The negative feedback processes effectively compute the inverse
dynamics of the arm by the method of implicit solutions, as in analog
computing, without ever explicitly solving the equations. The whole
neuromuscular-physical arm system solves the equations in the analog
manner.

     I wonder if evolution hasn't arranged some of the muscle groups in
     such a way to make control (perhaps *perceptual*) control easier.
     It certainly seems easier than the approach we use in hardware
     right now.

That's more or less what I meant above in talking about designing the
system with control in mind from the start.

     So, let me leave you with this suggestion. I've seen the 7 DOF arm
     simulation that Bill has written but I just can't see myself
     spending the time to thrashthrough the dynamic equations of motion
     for such a beast (I hate 3-dimensionalcoordinate tranformations,
     they make my brain hurt)

Please, it's 14 degrees (of course 7 of them work as a single unit to
clench the fist, but don't quibble). If this system were coupled with
the spinal-reflex systems of Little Man Version 2, the dynamics would be
included as well. As in yuour case, three-dimensional transformations
give me a headache too, and I hope that someone proficient in this area
will give us a hand. But the seat-of-the-pants approach seems to work,
and if it does, the mathematical hotshots can follow along afterward to
show us why it works and trim up the design.

     BUT-- I have a two-link, two-motor direct-drive robot arm,
     controlled by a 486PC, programmed in "C" which is always looking
     for interesting experiments. The robot works in a horizontal
     plane, positioning it's end-effector (a plotter pen) in a circular
     workpace that's about .8 m in diameter (I use only one quadrant of
     the workspace....What makes it interesting is that the direct-drive
     nature of the robot makes the multi-body dynamic effects very
     significant. Decent control of this beast if very difficult.

Well, now, that's extremely interesting. The design is just what I would
have wanted as a real test of the arm model. I think that with a little
ingenuity we could simulate the properties of the human stretch-tendon
reflex and muscles closely enough to come up with a real test. How about
sending me the specs for the inputs to and sensory outputs from the arm?
I'll see if I can't work up at least a beginning design for you to fool
around with. I trust that there are signals indicating at least joint
angle for each joint.

The only thing I'm not sure of is whether we can get along without the
strain-gauge equivalent of the tendon reflex: a direct measure of the
torque applied to the joint. But maybe if the torque motors are fast
enough (torque proportional to driving signal at all speeds
encountered), we can fake that by using the driving output signal as if
it indicated torque directly. We can use the position feedback to
simulate the way the muscles work and get derivative and position
feedback too. It's sure worth a try!

     The bottom line is that I'd be interested in implementing a
     proposed control scheme and report the results.

You're on! Let's do it.

···

--------------------------------------------------------------------
Avery Andrews (950115)--

Loved your remarks on motor control, today and yesterday!
--------------------------------------------------------------------
Bruce Abbott (950114.1930 EST)--

RE: Habits, association.

OK, with the perception-vs-action question out of the way, the
discussion gets easier (if not the arriving at answers).

     What I am asking is whether you see any use for associative
     principles to account for the "construction" of such sequences.

I'm not sure that "associative principles" constitute an explanation of
anything -- they're more like a description of a phenomenon that needs
an explanation. If you actually had to build or program a sequence
control device, you wouldn't put "association" into it, but actual
processes that trigger off other actual processes. After you got it to
work you could say that this is what you mean by association, but that's
just a description, not a design. I don't think there's any actual
process called association. At least I can't find a procedure or
function in my Pascal library called "associate".

     There may in fact have been several ways I could have accomplished
     each of these goals (I could have skipped into the next room rather
     than walking, for example). As you so nicely pointed out, I am not
     really planning a set of movements but rather a series of
     perceptions. Now, how is it that the program control level
     "chooses" one set of subgoals over another, perhaps equally
     feasible set?

This is a problem that keeps showing up in various forms. I think it
boils down to asking why a system is designed as it is rather than some
other way it might have been designed. Behind this idea lurks the notion
of optimization, of a system that works as it does because there is no
better or other way to work. I don't think human (or animal) behavior
works that way.

I used to put the silverware away, long ago, by holding a bunch of it in
my left hand, picking out the pieces with my right hand to put them in
the drawer. Then a friend demonstrated to me that I could hold the bunch
in my right hand, and drop the bottom pieces directly into the drawer by
manipulating them with my fingers, and do the whole thing three times as
fast. That's how I do it now. There may be an even better way that
someone else knows, but since I don't know it (and have little reason to
want to shorten the 30 seconds this task takes) I use this way.

My point is that when we learn how to do something, we stop learning
when we have found a way that controls the variable we want to control.
There's nothing "optimal" or "best" about this way: it's just the way we
learned, one that does what we want without too much cost in time or
effort. There might be other equally feasible ways or even better ways,
but unless we have some reason to be dissatisfied with the present way,
we don't change the way that works for us. Habits are habits mainly by
default; there isn't any reason to do things differently.

However, the big problem at the higher levels is how the choice of
lower-level reference signals is _varied_ as disturbances occur. When
there is a disturbance, the old choices of reference signals won't work
any more; they lead to the wrong result. At the lower levels, where
things work in nice connected analog ways, we can see how the design can
automatically change the output in just the direction needed to oppose
the effect of the disturbance. But an analogous design at the logic or
other levels isn't so easy to figure out, except in very simple made-up
simulations.

The cop-out design is simply to say that through experience we learn
exactly which lower reference signals to set for each possible error at
the higher level, sort of a table lookup. A more elegant design would
involve an output function that converts each degree of error to a
_direction of change_ of the outputs to lower systems, so there is a
fixed output rule that takes care of the details. If the changes in
output due to the error signal always tend to reduce the error signal,
then the error will converge to zero without having to consider each
degree of error as a separate case. If the convergence is rapid enough,
we get good control.

There are some hints about this in the fact that we can create what seem
to be continua on discrete perceptions. Try arranging foods along the
dimension of sweetness. You'll come up with a row of discrete objects
which are ordered in terms of some perception, with perhaps a piece of
tofu at one end and a ripe Christmas pear at the other end. You can
select the degree of sweetness by running a pointer up and down, or
along, the row. So you create a way in which you can make discrete
selections by doing a basically analog operation. Consider the body
configurations by which you would resist a force applied to you (or by
which you would create variable forces on something else, like a door).
If the force is very small, you just push back, or push, using a hand
and leaning slightly into the push. But on different occasions of the
"same" behavior, you might have to use both hands or move one foot
backward to brace yourself, or both feet, or you might have to reach out
and grab a support to keep from being pushed backward. If you're trying
to move a piece of furniture you might just try dragging it behind you;
if that doesn't work you might go around and push it from behind, and if
that doesn't work you might turn and push on it with your back. So there
is a sort of continuum of discrete body configurations that is arranged
in order of increasing ability to resist or apply a force.

This suggests how a one-dimensional scalar error signal at a high level
might be turned into an analog output variation that becomes a choice in
an ordered list of possible output reference signals.
----------------------------
You bring up memory association. I think it's a real phenomenon, and it
might help explain how errors at one level get translated into reference
signals at a lower level (where the perceptual meaning is quite
different from what it is at the higher level). In B:CP I suggested the
possibility that reference signals from higher systems might actually
work by addressing memories of previous perceptions at the lower level.
This might work in the upper regions of the hierarchy. So the output of
the higher system wouldn't directly set the reference signals of the
lower system. Instead, it would address memory (associatively) and evoke
as reference signals the perceptual signals that served in the past to
correct some higher-level error. This method would have the nice
property that the higher system wouldn't have to choose every reference
signal at the lower level individually. Through lateral memory
association, addressing one remembered perception to serve as a
reference signal would tend to evoke associated memories of other
perceptions for other lower control systems: n for the price of one.
Also, another neat feature of this arrangement is that the higher system
wouldn't have to understand the world in terms of the lower perceptions.
All it would say is "create the perception you created before in this
situation". And of course with memory being associated with each control
system, an evoked reference signal would automatically have the right
meaning for that control system, the same one whose perceptions were
recorded as memories.

All that is a lot of wild guessing, of course: design, not analysis.
---------------------
     At times we may be consciously aware of debating alternatives and
     choosing among them; at other times we just "mindlessly" let the
     lower-level control systems pick.

I don't think the lower systems can ever pick their own reference
signals -- at least not the way HPCT is designed. But higher systems can
work whether we are conscious of them or not. When we are attending to a
particular control system, we experience its perceptual signals and
whatever else there is about the operation of a control system that we
can experience (an open question). But when we're attending to some
other perceptual signal, the first system still goes on working, and it
can still pick alternatives or whatever it is doing, just as your hands
keep typing even though your attention has turned to the words that are
appearing on the screen, or the next idea you want to write as soon as
this sentence finishes itself. I don't know what the limits on this idea
are; we need to do some experiments with attention to find out just what
control processes can go on without attention or awareness, and what
difference it makes when they are or are not part of the field of
consciousness.

My basic notion of consciousness involves two parts. One part is simply
the electrochemical neural net operating according to its design. The
other part involves the phenomenon of awareness: our _knowing_ something
about the operation of the neural net. I don't know whether the
awareness component is just another neural net, or whether it's a
phenomenon involving a nonphysical entity. In my state of ignorance and
agnosticism I don't feel compelled to assume any answer.

When the awareness thing is receiving information from neural signals in
the brain, we say that the associated neural processes are "conscious."
The content of consciousness is whatever is going on in the neural net.
But the Observer is the awareness thing, whatever it is. The awareness
thing can observe, and perhaps act, but the content of whatever it
observes (at whatever level of the hierarchy from action to thought)
takes place in the neural net, and is the object of awareness. So the
entire brain becomes a sort of sensory organ for awareness, giving the
world of awareness shape and content.

The reason for making this distinction is that awareness is highly
mobile and appears capable of selectively observing activities at any
level in the neural hierarchy from top to bottom. When you bite into a
juicy Christmas pear, all your consciousness is filled with that
incredible taste, a sensation at the second level in the hierarchy. But
a moment later, a vague feeling of guilt might call your attention to a
system concept in which this display of hedonism is unseemly on such a
holy day (that wouldn't be me, but suppose), and the pear sensations
would fade into the background, even though the taste buds are
undoubtedly still sending signals to higher systems.

This means that any system at any level could, in principle, operate
either in consciousness or out of consciousness. So it's a mistake to
try to analyze behavior only in terms of conscious processes. We, as
conscious entities, can experience parts of the world as represented in
the brain, and perhaps we can influence certain localized aspects of the
system by "force of will," but the world that is presented to us is the
world that the neural hierarchy has become organized to perceive, and
for the most part all the processes in that hierarchy are the processes
it has become organized to carry out automatically, including thinking,
deciding, and choosing.

Mary had the great insight that decisions and choices are really
conflict situations: we feel we have to make a decision when there is no
logical or other basis on which to choose between mutually exclusive
outcomes. This is what we mean when we say we are "mulling over" a
choice. We're in conflict; if we weren't, we would already have taken
action. What we're looking for is something that will decide the issue
for us, that will remove the conflict. But if we can't find anything to
force the issue, we then must actually make an arbitrary decision, pick
one reference signal and abandon the other.

So that suggests that the awareness thing also has an output that can
cause arbitrary changes in the hierarchy. This means we have awareness
that seems to seek out conflicts, and volition that can cause arbitrary
changes. If the changes are made in a place where no higher system in
the hierarchy will experience an error and counteract the changes, the
conflict is resolved -- not by picking the "better" choice, but by
picking one choice and dropping the other, for no reason but to resolve
the conflict.

This begins to sound vaguely like a reorganizing system. But it's all
very unformed. I'm just trying to find some organized picture of some
phenomena that don't seem to find any comfortable place in the neural
hierarchy. All this is much easier to explain to someone who has
independently realized that thoughts are not the observer of thoughts.

     Walter Schneider likes to distinguish those things requiring
     conscious intervention from those which have become habitual as
     "controlled" versus "automatic" processes. The choice of the term
     "controlled" is unfortunate; what he really means is that some
     processes involve higher-level ("conscious") control systems than
     do others.

As you can see, I believe that basically all activities in the brain at
all levels are "automatic." But it does seem that certain control
processes _require_ conscious attention for a time, until reorganization
is so complete that they can be left to run by themselves. We really
need to do a lot of experimental work on this. The picture I have formed
is very tentative; it's an attempt to capture the main phenomena of
awareness, but it's not so clear that I'm ready to believe it. I'm quite
sure that consciousness is NOT a matter of "higher levels." We can be
just as conscious of the brightness of a light as we are of a system
concept. And just as unconscious, either way.

You'll see some parallels between what I'm saying and what you're
saying.
------------------------------------
THREECV update:

It's really great of you to take over on this and develop the program
toward a useful state. A lot of picky programming and debugging, I'm
sure, which I am delighted not to be doing.

As to the volume of data, it's perfectly fine just to record the handle
position and the three cursor positions. It took me many years to get
comfortable with the idea that computers either work perfectly or they
fail altogether (not _quite_ true, but enough to bet on). From the
cursor positions and the handle positions, you can reconstruct the
disturbances _exactly_, because in each case, the integer cursor
position is simply the sum of handle position and disturbance, both
integers. So you can save just the data that an experimenter would see.
Actually, this is part of the challenge: for the experimenter to see
that the only way to make sense of the behavior of the handle and the
cursors is to realize that there must be invisible disturbances acting,
which can be deduced from the data.

Another approach that saves even more storage is to prerecord the
disturbances as tables just once, and then record only handle positions
and the name of the program that creates the display. If you have the
disturbance tables and a record of handle positions, you can reconstruct
what happened on the screen, given knowledge of the experimental program
and which disturbance table was used in the experiment.

The results you report are in line with what I got from the program.
It's nice to know that it works for someone else!

     Are we having fun yet?

I just checked. Yes, we're having fun now.
------------------------------------------
A word about getting other psychologists to explain these control
phenomena.

Mary recorded a PBS "Frontline" program on "facilitated communication"
with autistic children; I saw it last night. After spending half an hour
showing how beautifully it works, the program then turned to the
problems. The problems arose when all over the country, autistic
children were communicating that they had been sexually abused by
father, mother, sibling, grandfather, grandmother, teacher, and just
about everyone else. Children were being removed from their parents and
being put in foster care.

So a lawyer got a psychologist to think up a test to see who was
orginating the communications, and the psychologist came up with a
dilly. He showed one picture to the facilitator and another to the
autistic child. When both pictures showed the same object, the autistic
child and facilitator pecked out the keys on the alphabet board to
produce the right name of the object. When the objects were different,
however, the name that was written was the name of the object the
facilitator saw. In 180 trials where the pictures were different, there
was not a single instance of the "communicated" name being the object
the autistic child saw. This was repeated over and over; in all the
tests where the pictures were different, there was not a single instance
of the communicated word describing what the child saw. What was
communicated was ALWAYS what the facilitator saw.

You might be thinking "fraud," but that is not what it was. What it was
was BELIEF. The facilitators, trained in a university program devoted to
facilitated communication, cooperated fully in the tests, confident that
the results would dispose of all questions about facilitated
communication. When they saw the experimental results, they were
completely devastated. One woman said that several months had to pass
before she could keep from bursting into tears every time she thought
about it. A man said that the experience was just like dying for him:
everything he believed in and valued was destroyed. This was a
widespread reaction, because many facilitators participated in the
tests. They were not frauds; they desperately wanted to help the
autistic children, and they really thought they were restoring them to
normal communications and a normal life. They were sure the tests would
vindicate their work.

The outcome was that many facilitated communication programs around the
country were shut down, and the people went back to the old methods,
just trying to help a little. But the most important fact was that many
parents and facilitators banded together to survive what they saw as an
unfair and biased attack. They simply ignored the results of the tests,
despite the 100% proof that all the communications originated from the
facilitators and none from the autistic children. They continued to
believe that their children were conversing with them, learning
Shakespeare and algebra, and earning As in high school and college (yes,
college), always, of course, with a facilitator present.

By now the moral of my story is probably evident. When we come up with
demonstrations that positively prove that behavior is the control of
perceptions, we may think that gaining support is simply a matter of
showing the evidence and letting it speak for itself, after which the
conventional psychologist will say, "Oh, yes, I see. How interesting. I
guess I'll have to use that interpretation now." That is not what will
happen. What will happen is that some people will be profoundly shaken,
even devastated, by these demonstrations, if they are capable of
admitting what their own eyes are telling them. In many instances their
careers will be destroyed and they will be unable to continue the kind
of work they had always done. Everything they had thought they had
accomplished in life, helping people or furthering scientific knowledge,
will lie in ruins. Not everyone will be so destroyed, but many will.

And what of the rest? What about the people who look at the
demonstrations and simply refuse to believe them? These, I am afraid,
will be in the majority. Their reactions will range from indifference to
outrage. They will behave just like those facilitators and parents who
could not bear to face the implications of the tests, who said they just
KNEW that facilitation worked and had brought their sick children back
to life. And psychologists will behave this way for very much the same
reasons.

So, Bruce, when you start handing out your data to other psychologists
to analyze, I hope you will be prepared for the consequences. This could
cause very great problems for you. You could find yourself labelled as a
nut and isolated from your colleagues. You will be attacking the very
foundations of many beliefs, no matter how kindly your manner or how
gentle your persuasion. If the PCT model of behavior is anywhere close
to the truth about how behavior works, then practically every other
conception of it is wrong. You don't have to say that. The data will say
it, to those who can stand to see what they mean. Those who see it will
be your triumphs, but those who refuse --- they will be a problem.
-----------------------------------------------------------------------
Best to all,

Bill P.