Updating imagination; Rick's new expt.;programming

[From Bill Powers (940203.1430 MST)]

Mark Olson (940202.1645) --

I'm not sure what you mean by imagined perceptions since in my
post I was suggesting that all perceptions are imagined unless
sense data constrain it.

All perceptions have to be caused by something, even imagined
ones. In the PCT model, imagined perceptions are caused by the
output of a control system that is routed right back into its own
perceptual function instead of passing to lower systems to serve
as a reference signal. In this way, a perception is created just
as if the lower systems had perfectly matched their perceptual
signals to the (now short-circuited) reference signals.

The behavior of imagined perceptions is what a perfect control
system would produce: when the control system is given a
reference signal to produce a certain state of its perceptual
signal, that signal instantly appears -- even if the lower
systems and environment happen to make that perception
impossible. So still-higher systems can manipulate an imagined
world by manipulating reference signals sent to lower system in
the imagination mode.

Perhaps I misunderstand what you mean by imagined perceptions.
What do you mean?

I'm not sure why its a problem updating real-time disturbances

It's not the disturbance that needs updating, but the perception.
Perceptions are controlled by acting on the world from which they
are drawn. That's what I call real-time, non-imaginary control.
If we control an imagined world instead, one that is internally
manufactured independently of the outside world, then that
control can succeed only as long as the consequences of actions
are correctly predicted by the internal model. If disturbances
occur in the outside world, they will alter the consequences of
any given action, so now the behavior of the model will be
different from the behavior of the world. The actions appropriate
for controlling the model will no longer be appropriate for
controlling the world.

Even without disturbances, the properties of the world slowly
change and the calibration of the model slowly drifts. So it's
necessary somehow to update the model frequently; otherwise the
actions that control the model, when applied to the world, will
have a different effect on the world. You can walk through a
pitch-black room only for a limited length of time without a
collision, because the model gets out of synch with the real room
and you start running into things which are not where your
internal model says they are.

... it seems that updating often does NOT occur in real neural
systems. For instance, the world can change quite alot during
saccadic eye movements without one noticing it at all.

We obviously have very different concepts of what "updating"
means. All I mean is keeping perception congruent with the
external world. Since we don't know about the external world
except through perceptions, this means cross-checking one
perception against others to assure that the same relationships
exist as before. A saccadic eye movement occupies only 0.2 sec at
most -- I'm talking about updating over a period of hours or
days. If perceptions were totally imaginary, generated totally by
internal processes with no relationship to sensory inputs, how
would it be possible for an organism to control what is happening
to it?

So does model-based control "change the diagrams" or can it all
be clumped into the Input box? I think you said the former,
but I want to be clear.

It requires a new box between the output of the output function
and the input to the perceptual function, a short-cut that does
not include lower systems. Please read the chapter on memory in
BCP -- it has diagrams showing the details which I can't transmit
over the net.


Rick Marken (940202.1330)--

This is a beautiful new approach to multi-level modeling. If we
can get a definite large difference between predictable and
unpredictable control, we should be able to find a model that
explains that difference.

By the way, a stability factor of 15 is much more than twice a
stability factor of 6+. We're talking standard deviations here:
you're finding a difference in stability of 9 standard
deviations, so that chances against its being real are one in

The only fly in the ointment I can see is in comparing the
"variance" of a sine wave with that of a random wave. But I think
your control experiment ("control" in the statistical sense)
takes care of that problem. I guess we'll have to call them
"baseline" experiments or something.
Dag Forssell (940202.1030) --

Bill (P), sometimes mixes up names. I asked Jim Dundon about his
computer and ...

I thought your question was more generally addressed. See below.
Bill Leach (940202.1858) --

I'll believe you about being able to get accurate sampling
intervals on an Amiga. I was NOT an expert Amiga programmer --
still trying to get through the foreplay when I gave up. My
experience was that when I moved the mouse, the interval between
samples increased due to the overhead of servicing multiple and
closely-space interrupts. Of course I had only the original slow
Amiga. If you can make sure that the mouse samples are a uniform
1/30 or 1/60 sec apart, you should have no problems.

I gather that these programs involve "user" or "test subject"

Yes, indeed. The simplest task involves putting up a short
horizontal line on the screen that is moved vertically by the sum
of mouse position and a smoothed random disturbance generated by
the program (we usually store disturbances in tables). The task
is to maintain the cursor level with a stationary line
("compensatory tracking" is the traditional term). Experimental
runs normally last 1 minute, and 1800 data points are recorded
(at 30 samples per sec). Then a control-system model is put into
the same task with the same disturbance, and its parameters are
adjusted until its simulated mouse positions match the real mouse
positions over the whole run with a minimum RMS difference. We
can easily get correlations between model and real mouse
positions of 0.99+.

Then, using the obtained best-fit parameters, we predict future
patterns of handle movement with new disturbance patterns; the
predictions are usually also good to 0.99+ correlation.

Can Amigas read data disks created by a PC? If so, I can send you
a large assortment of disturbance patterns with bandwidths from
0.05 Hz to 1 Hz and distributions that are uniform or Gaussian,
with 7 different patterns for each case. These were generated by
starting with an artificial Fourier transform with random phase
components and cut off at a specific frequency, then taking the
inverse transform to get the disturbance pattern. Specify disc
type and size, and send me your snail-mail address.

In post to Martin:

I wonder if you guys have played around much with "control loop
delay" considerations?

Yes. The model Martin Taylor is currently using in an ongoing
experiment with sleep deprivation has two parameters: delay in
the perceptual function, and integration factor in the output
function. The integration factor alone can produce matches with
real behavior within 6-10 % RMS. Adding the delay adjustment
roughly halves that prediction error.

The outstanding project yet to be done is to add nonlinearity in
the output function (or comparator or perceptual function -- all
are worth trying and may give different results). We find that
there are systematic differences in the best-fit parameters that
depend on bandwidth of the disturbance. I think this is
interpretable as a nonlinearity in the system response. If we add
a nonlinearity parameter, the model might predict well over all
degrees of difficulty, too.

Bill P.

<Bill Leach 04 Feb 1994 20:20:01

Bill Powers (940203.1430 MST)

..., the interval between samples increased due to the overhead

OK, I will have to try to see if I can pick up on the problem that you
are describing. There are a number of ways of handling the mouse
(including writing your own handler). One of my "complaints" with PCs
has always been the "poor" performance of the mouse. Of course I
recognize that PCs have "grown up" too.

The simulations:

So, if I understand correctly; you have a subroutine that moves the
cursor up and down relative to its' current position in some time based
function. This change in current cursor position is the disturbance and
is the input signal for the perception.

You have another subroutine that compares the mouse position to the
"desired" position (the fixed line) at some sampling interval, storing
the results in a table.

I presume that you perform your analysis after the fact (or off-line).

Now here is where I get real vague on just what you are doing...
You "connect up the model" to this program and re-run the experiment.

Do you feed the mouse positions to the "model" and allow it to generate a
delta that is summed with the disturbance signal and actually used to
move the cursor?

Do you just record the output signal into a table (at the same sampling
rate as before)? Do you record the difference between the cursor
position and the model output while also feeding that delta in as the
current cursor position?

More Questions (possibly bred of ignorance):
Since these tasks are being run on a single processor (I think), and
since if the model control system just given the algorithm to match the
cursor to the desired position, the desired positions and the present
position the error would only be the RMS value of the successive
disturbance deltas. This obviously (I think) would be of no value.
Thus, I suspect that I don't know what you ARE doing. Though I suspect
that the algorithm may be interesting!

Have you run any correlations between sampling rate and performance? I
gather from your Amiga experience that you have reasons to believe that
it can be significant.

Has any work been done to insure that the "lock step" behaviour of a
computer program that is both conducting the experiment and running the
model does not introduce errors due just to the "phase" relationship?

Can Amigas read data disks created by a PC?

Yes, no problem. Best for me would be either 1.44 Meg or 720K 3.5 inch

US Snail... er, Mail:
         W.R. Leach
         P.O. Box 1228
         Apex, NC 27502