[From Bill Powers (2009.12.26.0300 MDT)]
Martin Taylor 2009.12.25.10.46 –
BP earlier: So if forward is the
opposite of back, tell me what feedforward is.
MT: OK, I will. It’s whatever the user of the term intends the
hearer/reader to understand by it.
BP: Sorry, I should have said “So if we agree that forward is the
opposite of back, tell me what definition of feedforward we can all agree
upon.” As you know, without consensus there is no possibility
of language, communciation, or for that matter, science. We have to
decide here whether we’re just having a slightly boozy argument over a
few beers, or are trying to reach some kind of common understanding of a
technical subject. If it’s science we want to do (and I do), we need a
technical vocabulary that is as internally consistent as we can make it,
and stable so that when we use a term more than once, we mean the same
thing every time.
MT: Different folks, different
intentions. I’ve understood people to intend quite a few different
meanings in the course of this rather dictionary-oriented discussion, and
I have thought of other ones in private correspondence. Here are three
(plus subtypes):
The use of prediction: (a) of the future course of the
controlled perception, (b) of the effect of the output on the controlled
perception at some time in the future, (c) of the effect of a disturbance
to one controlled perception perceived by the perceptual input of a
different control system.
Acting in an environment stable enough that the effect
of an output is likely to bring some variable to a desired state without
the need to observe the effect (a.k.a. “fire-and-forget”).
Examples: setting off a timer-controlled explosive (e.g. a suitcase
bomb). Throwing a glass into the fireplace after a toast (with the intent
that the glass should break). Pulling the trigger of a gun (with the
intent that the bullet should leave the barrel). All of these might
occasionally fail to produce the desired effect, but usually they work,
and the effect cannot be corrected at that level of control if they don’t
work. You can’t retrieve the suitcase bomb and re-set it, because the
target politician would not be there when it went off, though at a higher
level you can still retarget the politician for assassination by some
other means. You can’t pull the glass out of the fire if it failed to
break, and you might well not be able to tell whether it was your glass
that failed to break or that of one of your drinking buddies. And you
certainly don’t want to try pulling the trigger again if the bullet
failed to leave the barrel!
Putting up a shield against a disturbance that you
anticipate might or might not happen in future, so that when and if it
happens you will not need overt output to counter the disturbance. Skin
and cell membranes are shields developed by evolution. Insulating a house
is a more modern example, a shield against fluctuations in the
environmental temperature, reducing the range of outputs necessary to
control against those fluctuations.
BP: All of these I would classify as perfectly good negative feedback
processes, aimed at controlling different present-time perceptions.
Turning on the timer immediately produces, in imagination, an explosion
at some later time. Throwing the glass into the fireplace results
immediately in an imagined broken glass. Pulling the trigger of the gun
results in an immediate flinch and forward push against the imagined
report and kick from the gun. All control processes take place in present
time, no matter how delayed their physical effects might be in some later
present time. We control perceptions, not objective events in the
external world. The relationship between the perceptions and external
events is quite variable, as well as unverifiable.
The main difference when the delay is long is how rapidly disturbances
can be corrected if the resulting perception does not match the reference
perception. If the delay is a transport lag and the result is a brief
event, corrections can’t be made more than once per delay time, so the
longer the delay is, the worse the control will be. If it’s an integral
lag, adding rate of change to the perceptual function can greatly improve
the control of the perception but will also slow the correction of real
errors and increase the high-frequency noise level in the
system.
MT: Let me add another plausible
meaning that seems to incorporate much of the intent of these and other
possibilities.
In a normal elementary control loop, we conventionally use the term
“feedback path” to be the part of the loop that passes through
the environment. So the obvious name for the rest of the loop from
sensory input to functional output is “feedforward path”, and
any signals that use that path would be “feedforward” signals.
That’s simply a normal use of complementary words, in the same way that
the use of “in” implies the possibility of “out”.
BP: Yes, this is what I was suggesting by the question above. Control
systems already use feedforward. Feedback and feedforward go in the same
direction around the loop.
MT:If you define
“feedforward” so that it doesn’t exist when any other complete
control loop is also involved, then of course feedforward never exists.
If you define it as the part of any control loop that is not through the
environment, then it always exists. Neither of these is a very useful way
of looking at the considerable range of situations in which the word has
been used in this discussion and elsewhere. But if you use
“feedforward path” to refer to the signal pathways not in the
environment, and “feedforward” to signals in that pathway not
(yet) influenced by one or both of an anticipated disturbance or feedback
through the environment, then I think the term might be useful. It also
would cover most or all of the cases that have come to my
mind.
BP: Unfortunately it also encourages us to think of all the different
forms of feedforward as if they’re examples of the same thing, the way we
use the word “learning.” But feedforward in the output function
will increase the speed of output responses to actual errors, while
feedforward in the input function will slow the output response by making
the system think it has corrected the error before that has actually
happened. Feedforward in the feedback function (“quickening”)
will slow the response but improve control. So calling all these
different arrangements by the same name can only lead to confusion and
tempt people to draw invalid conclusions about “the”
effects of feedforward.
…
BOP: Yes, like the gun-aiming, a
higher-level control system adjusts its setting of references for the one
to which “feedforward” could be said to apply. A more
extreeeeme example of feedforward with reference influenced by a
higher-level learning system might be the old upper-class English
tradition of setting aside a bottle (or a case) of port for a newborn
son, to be opened on his 21st birthday. The controlled perception is that
the son will have a pleasant experience 21 years later (when at that
time, in England, he attained the age of majority and the parent might
quite probably be dead). Yes, there are feedback loops involved, not
least importantly one analogous to the gun-aiming loop, in which the
“aim” is the choice of port, which has been found to age well,
as opposed to, say, a Beaujolais Nouveau, which
doesn’t.
BP: The longer the delay, the poorer the control will be. I don’t need to
elaborate on that.
Of course all anyone has to do
to change my mind is show me a working model that matches real behavior
better with feedforward (whatever that means) than without it. Fifty
bucks to the first person who does it (all I can afford to lose).
If you accept my comment that the whole issue is a
dictionary squabble, you have lost already!
BP: I don’t accept it. Feedforward has different effects depending on
what is being fed forward and where in the control loop it is happening.
It’s simply a different phenomenon in each case, and using the same term
for all cases implies a nonexistent similarity.
MT: Actually, I think Rick won
some time back in the early 1990s, when he showed that using the
derivative of the perception to alter the reference value improved
tracking of a sine wave (Feedforward class “Prediction type
a”).
BP: That might improve tracking, but would adding this feature to a model
make the model match real behavior better, or make the fit worse? I can
easily design a model that will control far better than a real person
will control in the same tracking task. All I have to do is eliminate the
transport lag in the input function, and the model’s tracking error can
then go essentially to zero. But that’s not how the real person behaves.
To meet my challenge you must show that adding feedforward to a model
(any way you want to define it) makes the model fit real behavior better
than the same model without it, just as adding transport lag to the
tracking model makes it fit real behavior better (as you can easily
verify by using demo 4-1 in LCS3).
…
MT: My bottom line: if
“feedback” is a useful word, then so is
“feedforward”, and its natural meaning is the complement of
“feedback”. To argue simultaneously that the meaning of
feedforward is unknown, and that it doesn’t exist, is to leave
permanently open the escape hatch that THIS (whatever it might be) is not
“feedforward” when someone offers a model that purports to
satisfy your challenge.
BP: OK, then, let’s also add FeedSideways, since that goes naturally with
forward and back, and we can make FeedSideways more specific by
introducing FeedVertically and FeedHorizontally. Grooving on the sounds
of the words does not seem to me like a good reason to introduce
ambiguous and fuzzy terminology, but if you let one camel into the tent
you might as well welcome all the others crowding in behind it.
What really puzzles me is this: Why does critising the use of this
word feedforward elicit such an energetic defense? Is there
something so appealing about this word that we should be willing to adopt
it even without agreeing on any one meaning for it? Could it be that this
is just a defense against a criticism of some popular idea, as in the
case of the word “control”? What do you suppose might be said
if I pointed out how useless the term “intelligence” has proven
to be, or how misleading the term “aggression?” Is it that hard
to let go of the past?
Best,
Bill P.