feedforward and "tuning"

[Hans Blom, 931116]

The discussion on feedforward starts to run amok. I have never intend-
ed to propose feedforward as the SOLE control mechanism, or as the
sole important one. In my view, feedforward has an important place in
control, and is most fruitfully combined with feedback control. Let me
give you a short note on my terminology regarding "feedforward" and
some more -- hopefully clear -- examples of what I mean. I assure you
that I do not mean to fight you: I propose an addition to an otherwise
incomplete theory.

0. Technically, "feedforward" denotes a type of control in which no
"feedback" (perception of outcome) is required. Feedforward normally
refers to a process of computation of output based on inputs only.

Example: the linkage between the direction of the front wheels of my
car with the steering wheel is feedforward. This is true even for cars
with power steering.

A technical definition of feedforward control is the following: "The
reason for applying control to a process is that there are inherent
disturbances in the process. When none of these disturbances can be
observed at their source, then their joint effect at the output can be
characterized by some stochastic model and a feedback controller which
uses the output error signal to make compensatory control action can
be developed. However, when some of these disturbances can be measured
prior to reaching the output it will usually be more desirable to use
these measurements to make some of the appropriate control action.
This is referred to as feedforward control. More generally, since
feedforward control will rarely eliminate all the sources of disturb-
ance, some combination of feedforward and feedback control will be
necessary". Quoted from: John MacGregor and George E.P. Box. Technical
Report no 308, "Topics in Control; Chapter 3. Feedforward Control".
University of Wisconsin, Madison, Wisconsin, Department of Statistics,
July 1972.

1. In this discussion, I limit my definition of "feedforward control"
to the mechanism that, whatever its form, is required to remain in
control when one or more feedback perceptions are (temporarily or
continuously) unavailable.

Example: When it is my intention to walk along a white line painted on
the pavement, I normally do so by visually observing where I step.
When I close my eyes, I can still have the same intention of following
that white line (note: this intention is based on my expectation that
the white line will remain in the same place, i.e. we assume a pre-
dictable world). Feedforward control is the mechanism that allows me
to follow the line as well as possible, regardless of the fact that I
cannot see or otherwise perceive it.

2. I define "being in control" as a state in which a (uni- or multi-
dimensional) perception is close to a reference value for that per-
ception, even if that perception is (temporarily) unavailable to the
organism.

Example: The missing perception is that of the white line. Yet the
intention is to follow it. More precisely: the intention is to follow
the "virtual white line" that exists in my memory or imagination. This
imagined "virtual white line" is useful in controlling my behavior
only in so far as it corresponds with a "real white line".

3. In all cases, the feedforward mechanism uses a MODEL, a form of
memory or an extrapolation thereof (a "prediction" or "imagination"),
however simple or complex: stored variables, the output of an integra-
tor (which is a form of memory), an "imagination connection" or what
have you.

Example: Things get difficult here. People with eidetic vision may
have it easy. If I concentrate mightily, I can consciously evoke
something like a very fuzzy mental-visual picture -- as if my eyes are
open but my vision is blurry and clouded. I can only assume that such
a "picture" is still available (but not consciously) if I don't con-
centrate. In my case, the mental "picture" is moderately robust
against perturbations (moving my head, turning around a little). I
have no idea how robust eidetic vision is in the face of small active
and passive movements.

4. This memory or extrapolation thereof is the best estimate that a
person can generate of the missing perception given all other in-
formation that IS available, due to momentary perceptions or to other
memories or extrapolations thereof.

Example: Presumably my vestibular receptors provide the robustness
against changes of body/head movements relative to my initial posi-
tion. If there are other perceptions of the environment, such as
traffic noise, they might help as well, although not as accurately as
I would like. My visual memory of the surroundings is another source
of information. That "mental picture" is only a best estimate based on
past information. It is not exact and it is not robust against unob-
served changes of the world: wiping out the line and painting a new
one will be experienced as cheating.

5. Models (memories and extrapolations thereof) provide "expectat-
ions". An expectation might be simple: "no changes are to be expected
over small periods of time" or complex and based on discovered or
learned "rules of the game".

6. Feedforward is often part of a feedback system. In that case, it
fills in gaps in perception.

Example: When I talk about my bedroom but don't provide you with the
details of what it looks like and what it contains, you -- if you want
to continue the discussion -- use your mental model of "bedroom" in
order to "understand", extrapolate, predict, continue the process.
Your mental model might, however, not correspond all too well with
reality -- because it is not based on perceptions of my bedroom. In
that case, you start to make errors in your communication/control and
start to talk about a bedroom that I don't recognize as mine. Fre-
quently, errors like these are small enough to keep the (communica-
tion) system stable. Stability can, of course, be regained or improved
by more communication/feedback. But often we don't bother and rely on
our approximate internal models -- for the sake of efficiency, I pre-
sume. This kind of feedforward is ubiquitous, I think.

7. Most interesting control systems, including the ones internal to
humans, contain both feedback and feedforward. A single mechanism can
contain both, such as the Lang-Ham model. Better models have been
proposed, however. Indeed, a complete theory is now available to
design "optimal" systems. This theory comes under the headings of
"adaptive control theory", "optimal control theory", "dual control
theory" and such, formalisms that are very different from the one
discussed on csg-l and intimately related to (some branches of)
information theory and statistics. Let me give you a brief description
of their basics -- very, very brief and incomplete.

The basis is always a partly known description (model) of the object
to be controlled. The structure of this model is usually chosen fixed
but it has unknown parameters. Such a model might be:

x(k+1) = a1*x(k) + a2*x(k-1) + b1*u(k) + b2*u(k-1) + c + d*w(k) (1)

where x(k) is called the "state" of the system at time t, a vector
that encapsulates everything that is thought important enough to
model; components of an arm model might be positions, velocities,
accelerations, or angles of segments. Likewise, u(k) is a vector of
inputs to the system; muscle forces, for instance. The (matrix) para-
meters a1, a2, ... describe the "free" dynamics of the system, i.e.
how the system behaves if no inputs are applied. The (matrix) para-
meters b1, b2, ... describe the influence of the inputs on the state
variables. Parameter c is a constant vector, w(k) is called the "sys-
tem noise" vector, normally taken to be Gaussian noise (if not, the
mathematics becomes intractable), while d is a matrix that describes
the influences of the noise on the state variables. If you are lucky,
you have no noise and can disregard d and w. If you can choose a nice
coordinate frame, you might not need c.

To this model is added an "observation equation"

y(k) = m*x(k) + n*v(k) (2)

where y is the vector that describes which observations can be per-
formed, while the matrix m (usually assumed known) describes the type
of relationships between x and y. The vector v is called the "measure-
ment noise"; it too, is usually assumed to be Gaussian. Vector para-
meter n is the standard deviation of the noise.

These two equations define the "systems identification" part of the
adaptive controller. Initially, the unknown parameters are assigned an
initial value (a best guess) and an initial standard deviation (or
cross-correlation matrix, in the multi-dimensional case). The initial
standard deviations are chosen to be large, which reflects a very in-
accurate knowledge of their values. It may not surprise you that given
a number of observations y(1), y(2), ..., the unknown parameters a, b,
c and d will become progressively better known; that is, their stand-
ard deviation will decrease over time. (For those interested, the
mechanics of this process may be found in Kalman filtering theory).

The controller takes on an equation like

u(k+1) = p1*x(k) + p2*x(k-1) + q1*u(k) + q2*u(k-1) + r1*ref(k+1) +
         r2*ref(k+2) + ... + s (3)

where ref(k) denotes the future trajectory for x to follow. It will
not surprise you that the control parameters p, q, r and s (a con-
stant) can be computed from the prescribed reference trajectory, the
estimated parameters a, b, c and d, and their (co)variances.

These equations look gruesome, but the result is very interesting. The
identification procedure consists of two steps. The first is a so-
called "prediction" step that is based on equation 1. Note that equat-
ion 1 does not contain observations (those are modelled in equation
2). In this sense, it is "feedforward". But the uncertainty of the
prediction over longer time intervals would grow if no observations
were forthcoming. This is the second step, the so-called "correction".
Each observation decreases the uncertainty. Generally, if the "real
world" parameters a, b, c and d are constant, their estimates will
converge to these "true" values. This procedure thus establishes a
correspondence between the "outside world" and its "inner model".

I hope that I have not lost you by now. Three points are important
here. The first is that the scheme is robust against missing observ-
ations. One of its first applications was satellite tracking, in those
early stages a notoriously difficult process with frequent sensor
malfunction resulting in loss of observations. The second is that
"control" is, more or less, a side-result of systems identification:
if you can acquire reliable knowledge of what is out there, the
question of how to control is, more or less, an "unintended side
effect". The third is that "feedforward" (step 1), "learning" (inform-
ation processing of the observations, step 2) and "control" (step 3)
are one inseparable whole.

This is about where I come from. My emphasis on feedforward must not
be construed as a dislike of feedback. From my point of view, the two
go together. My emphasis on feedforward does not go back to "outdated"
psychological paradigms, but has to do with control engineering themes
like "graceful degradation" in the face of sensor malfunction, "inher-
ently safe" controllers and the like. Are these issues that would have
been unimportant in biological evolution?

Let me explain briefly why I think that these issues are worthwhile.
Somewhen in the early 70's I encountered a report from a Swedish group
(I think one of the authors was Bjorn Wittenmark, from prof. Astrom's
lab in Lund) who showed that in an adaptive control system things like
"depression" and "crisis" can arise. He did not use those terms, of
course, and did not see (at least did not indicate) a relation with
psychological processes. "Depression" was called "the switch-off phe-
nomenon" (the title of the report was something like "On the switch-
off phenomenon in adaptive control"; I treasured this report for a
good many years but unfortunately lost it). "Depression" occurred in a
situation where two goals were to be obeyed simultaneously: control of
a variable x and conservation of energy. That is, the system should
try to control with small values of the control variable u. Also,
there was a large estimated uncertainty in the parameter that
described the effect of u on x. The result was a complete switch-off
of all control effort: u = 0, for an extended period of time. The
large estimated uncertainty was unwarranted (the estimated value of
the parameter was approximately correct) and only the effect of an
initially prescribed very large uncertainty and a too short period of
learning. "Rational behavior" for the controller, but not for an
outside observer who saw that the controller knew much better (more
accurately) than it assumed in its "pessimism".

"Crisis" occurred in a situation where, because of a slow drift of the
parameters of the "real world out there", the parameter estimates were
off too far from the true values and the standard deviations of the
parameter estimates had become too small. In other words: the knowl-
edge of the world had become (too) firmly established, but the world
had changed. The result? Momentary loss of control with huge fluctu-
ations in the control variable and, secundarily, in the estimates of
the variables. After a while, however, this extreme process of "expe-
rimentation" allowed reliable estimates of the cross-correlations to
be established again, resulting in once again reliable parameters and
hence good control.

For these reasons, amongst others, I find that expanding the model
with feedforward/adaptation might result in explanations of additional
phenomena that cannot be explained by the current PCT-model.

Greetings,

Hans

[From: Bruce Nevin (Mon 931129 16:21:33 EST)]

I'm really out of my depth now, and floundering hopelessly to catch up on
missed mail to boot, but this struck me in the feedforward controversy:

( Hans Blom, 931116 ) --

A technical definition of feedforward control is the following: "The
reason for applying control to a process is that there are inherent
disturbances in the process. When none of these disturbances can be
observed at their source, then their joint effect at the output can be
characterized by some stochastic model and a feedback controller which
uses the output error signal to make compensatory control action can
be developed. However, when some of these disturbances can be measured
prior to reaching the output it will usually be more desirable to use
these measurements to make some of the appropriate control action.
This is referred to as feedforward control. More generally, since
feedforward control will rarely eliminate all the sources of disturb-
ance, some combination of feedforward and feedback control will be
necessary". Quoted from: John MacGregor and George E.P. Box. Technical
Report no 308, "Topics in Control; Chapter 3. Feedforward Control".

As I recall, the "output" in engineering control theory corresponds to
the perceptual input in PCT. But if measurements are made prior to the
erstwhile perceptual input (aka "output"), and if those measurements are
used in some way "to make some of the appropriate control action," then
those measurements or their transforms within the system are additional
perceptual input signals coming in to the control system from the
environment by way of its sensors (the things that accomplish the
measurements). Looks like parallel feedback control to me. Am I
hopelessly lost?

    Bruce
    bn@bbn.com