RE Hans' model: conclusions

[From Bill Powers (950604.0530 MDT)]

Hans Blom (various) --

I've been doing more experimenting with your model, and have become more
familiar with its various modes of operation. As I can see it, there are
four primary modes.

1. Undisturbed.

     In this mode, the value of pvv is set manually to 0.0000001 and no
     external disturbance is applied either to y or to xt (other than a
     high-frequency normally distributed zero-average noise of small
     amplitude). The model converges to a state where x = xt = xopt.

2. "Perception" y disturbed, xt undisturbed.

     The value of pvv must be manually set to agree with the square of
     the [RMS?] amplitude of the disturbance. This adjustment results in
     pxx =pvv and xt = x = xopt. As long as the disturbance has a zero
     average value, it has no effect on the model. Setting the value of
     pvv to a nonzero value in effect tells the model that uncorrelated
     changes in y do not represent actual disturbances of xt.

3. Real system output xt disturbed, perception y undisturbed.

     The value of pvv must be manually set to 0.0000001 to agree with
     the lack of disturbance of y. This tells the model that variations
     in y are due to variations in xt, and are thus to be compensated.

     The value of pxx is derived by the program, and attains a value
     such that pxx/(pxx + pvv) closely approaches 1 (0.99993 is
     typical). In this condition, the world-model calculations have no
     effect on x, and x is set to the same value as xt on each
     iteration. The world-model parameters may continue to be modified
     by the Kalman calculations.

     The resulting model configuration is that of a negative feedback
     control system without adaptation and with the loop closed through
     the external world instead of the world-model. The parameters of
     the world-model are used in the calculation of u; they produce
     values of a and b different from those in the real system, such
     that the gain in the world-model approaches exactly twice the gain
     in the real system. This results in the external loop gain being
     greater than 1; I believe it is about 10. As a consequence, the
     control system opposes about 90% of the effect of the disturbance
     on xt.

     Note that the value of pvv thus acts as a switch: pvv = 0 means
     "control the actual value of xt" and pvv > 0 means "control the
     output of the world model." This switch is actuated by an outside

4. Independent disturbances applied to both y and xt. All relevant
parameters manually set to agree with disturbance amplitudes.

     Now the control system makes x = xopt, and xt = xopt + (disturbance
     of xt). There is no resistance to disturbances of xt. The model
     output x follows the reference signal xopt, but the real system
     output does not.

The critical factor in this model is the manual setting of pvv to tell
the model whether variations in y that are uncorrelated with xopt
represent real variations in xt or are only noise in the input function.
With pvv set nonzero, the model ignores the uncorrelated variations.
When pvv is set to zero, the model changes to an ordinary feedback
control system that resists disturbance-induced fluctuations in y (and
thus in xt) without assistance from the world-model. The only effect of
the world model (due to the way the output u is computed) is to vary the
gain of the external loop.


Let's examine how a "modeled disturbance" would enter into the adaptive
control model. Let the real disturbance applied to xt be d(t).

In this case, a model of d(t) would be required inside the control
system's world model:

x = c + ax + bu + d(t).

By your strategy for deriving u, we would say

xopt = c + ax + bu + d(t), or

u = (xopt - c - ax - d(t))/b.

Substituting this value of u into the first equation, we have

x = c + ax + xopt - c - ax - d(t) + d(t), or

x = xopt.

In fact, d(t) is a subtractive term in u, which simply cancels the
effect of the modeled d(t) on the world-model. At the same time, since u
is also an input to the real system, the modeled d(t) cancels the real
d(t) that is disturbing xt.

This shows that we have here not a feedback control model but a
compensating model. Somehow the controller must generate a d(t) signal
that is equal and opposite to the disturbance that is affecting the
controlled variable.

This is essentially W. Ross Ashby's concept of a regulator, described in
_Design for a Brain_. In Ashby's regulator, the regulator senses the
state of a disturbance that is acting on a critical variable. It
converts the sensory signal into an output effect that acts on the
critical variable in the opposite direction, and by an equal amount.
Thus with the regulator adjusted correctly, the disturbance will have no
effect on the critical variable.

If your control system had a sensor (or any other process) that could
represent the real d(t) as a d(t) inside the world-model, you would have
essentially Ashby's regulator. From what you have said so far, this is
essentially your concept of how all control works, because you have said
that ALL control systems required a model of the disturbance in order to
resist it. The only reason for needing a model of the disturbance is in
order to output a compensating effect that will cancel the effect of the
disturbance on the controlled variable. Please tell me if I am assuming

Bill P.