[From Bill Powers (950519.08-- MDT)]
Avery Andrews (950519)--
And of course Srinivasan sent winds down the tunnels, etc. to show
that the bees weren't counting wingbeats, energy expended, time
elapsed, etc.
I think he's managed to do what I have only managed to fantasize
about, which is produce convincing answers to classic `how do they
do that' questions by *implicitly assuming* the truth of the
principle that behavior is the control of perception. Since the
assumption is implicit, it's hard to challenge, and since the
results are so convincing, it tends to incline people to accept it.
Actually Srinivasan was applying the Test for the Controlled Variable in
all the variations he used -- the stripes in the tunnel, moving a wall
of the tunnel toward the bee, using the wind, etc. He was testing to see
what the bee was maintaining constant by its behavior, applying
disturbances that would alter various variables if they were _not_ under
control, until he could deduce which variable was being controlled. One
of the tests, which involved making parallel stripes down the tunnel so
they looked the same no matter how far the bee moved, even mimicked the
step in the Test where you check to make sure the perception is what you
think it is, by eliminating it. Sure enough, when it was impossible for
the bee to visually perceive its progress down the tunnel, the bee lost
control of the distance flown.
The only hypothesis that survived was that the bee is controlling the
integral of perceived visual flow outward from the center of vision.
This was done by expanding the tunnel to change the perception of flow
and showing that the bee brought the integral of this perception to the
same value as before by flying further.
If you really grasp what the Test is all about, it's nothing but common
sense applied to a control process. Srinivasan obviously has a great
deal of common sense as well as an intuitive understanding of control
theory. How about writing him a nice friendly letter telling him about
PCT and inviting him to join us on the net?
···
----------------------------------------------------------------------
Hans Blom (950518) --
(writing to Rick Marken)
------------------------------
In the engineering literature, the quality of control is usually
measured in terms of
SUM {r (i) - x (i)}^2, over some (finite or infinite) range of i
That is the same measure we use. We call it the RMS (root-mean-square)
error, because we take the square root of it.
(Rick)
By the way, Hans, I have developed a simple PCT type control model that
meets and exceeds your specifications for a controller that has
"approximately zero response time" while it "tracks a repeating
waveform".
Great! Show me! Does it work with all kinds of "arbitrary"
disturbances?
Actually the model Rick is working on will work with arbitrary
disturbances in the sense that it works better than proportional or pure
integral control works. But in general, predictive control, particularly
of repeating waveforms, is not suited for controlling in the presence of
smoothed random disturbances, because nothing repeats. The best you can
do is add a little "anticipation" to raise the bandwidth of control. Of
course if you classify this also as predictive control, even if it
involves a different kind of prediction, then you can say that
predictive control works for arbitrary disturbances, too. However, if
you broaden the definition of predictive control so much, you start to
find that a predictive controller that works in one situation can't work
in a different one that requires a different definition of "predictive."
-----------------------------
(writing to Martin Taylor about my simple model)
The "world" is modeled as having a transfer function of 1: p = o in
the absence of noise. No delays, no bandwidth limitations, no
inertia, no phase shifts, no problems: the simplest world of all.
And I am not even sure that Bill is aware of the fact that he
introduces a "world-model" in these equations!
I don't use a world-model in your sense of the term: in my model there
is no internal world-model that creates an internal signal that depends
on the controller's output in the same way that qi depends on o. In the
equations
p := qi
e := r - p
o := o + (1000*e - o)/1001
---------------
qi:= d + o
... the "world" is in the fourth equation, below the dashed line: the
model of the world says that the input quantity qi is always equal to
the sum of the output o and the disturbance d. The transfer function is,
indeed, 1.
The "world" is modeled as having a transfer function of 1: p = o in
the absence of noise. No delays, no bandwidth limitations, no
inertia, no phase shifts, no problems: the simplest world of all.
Right. I was not illustrating stabilization or other features of control
systems design. Want to try a harder environmental transfer function?
I think we can save a lot of words by doing a little comparison. Here is
a model of a mass on a spring with damping, the "plant.".
arbitrary disturbance
>
+ V
F ---> force-->INTEGRAL->velocity---->INTEGRAL -----> position
- ^ ^ - (mass) | |
> > > >
> -<--damping--Kd--- |
> >
---------------<------spring constant--Ks-------
The program equations as program steps would be
vel := vel + force/mass*dt
pos := pos + vel*dt
force := F - Kd*vel - Ks*pos + dist
Where Kd is a damping coefficient and Ks is a spring constant.
Coming in from the left, the controller's output produces a force F on a
mass; there are also negative contributions to the total force from
viscous friction proportional to velocity and from a spring that creates
a restoring force proportional to position of the mass. Also there is a
contribution to total force from an arbitrary disturbing force.
The arbitrary disturbing force I want to use is not a white noise, but
is generated by the following algorithm:
temp := random(1000)
temp1 := temp1 + 0.1*(temp - temp1)
temp2 := temp2 + 0.1*(temp1 - temp2)
disturbance := kd*temp2.
(where the temporary variables are initialized to 0)
We can add a white-noise force disturbance if you want to.
Let's say that the mass is at most 10 Kg and at least 0.1 Kg, the
damping coefficient Kd is between 0 and 100 Newtons per meter/sec, and
that the spring constant Ks is between 0 and 500 newtons per meter.
Also, the maximum force that the controller can produce in either
direction is 200 Newtons (with a simple hard limit at that magnitude).
We can forget the perceptual limit for this example. Let's restrict the
intended movement of the mass to about 1 meter by the way we vary the
reference signal.
If you like, we can introduce a white noise force, too, with a bandwidth
limited only by the iteration rate. Oh, and while we're at it, let's say
that one iteration equals 0.001 sec (dt = 0.001). If we stick to these
specs we will be able to make direct comparisons of our models.
We want to design a control system that will adaptively control the
position of the mass by applying a force to it. To test the quality of
control we can use the RMS error or squared error as you suggested. We
want to show how well the position follows the reference signal setting,
and how much effect external disturbances have on the position error.
The mass, spring constant, and damping coefficient of the "plant" model
should be variable from the keyboard so we can watch the controller
adapt when they are changed. We can use an "oscilloscope" display that
just keeps scanning until we exit with the Esc key.
I should warn you that I do not gamble.
I'll wait for your go-ahead before starting on my program. If you want
to add or change any conditions, say so.
------------------------------------------------------------------------
From Paul Stokes (950518.1040)
I suggest that our sociologists work with you on this. How about it,
Clark, Chuck, Kent?
Since my last post to this list I have actually managed to tie down
what can be meant by relational control in social relationships
(with thanks to Thomas Scheff for this) and am keen to demonstrate
controlling behaviour around this topic.
We would be interested in hearing your thoughts on relational control.
When you say you're interesting in demonstrating controlling behavior,
exactly what do you mean? One person control another's behavior? One
person varying his actions in order to control the consequences of his
own behavior? On this formum, it makes a difference.
-----------------------------------------------------------------------
Best to all,
Bill P.