Client/server PCT

[From Rick Marken (960120.1100)]

Modern network computing provides what I believe might be a helpful
way to think about the control theory model of the brain: client/server
architecture.

In client/server achitecture, client computers (usually PCs and Macs)
send requests for data to a server computer (usually a workstation
like a Sun). A client provides the specification of the data that
is to be provided by the server; the server's job is to do whatever
processing is necessary to produce the data that meets the client's
specifications. The client does't care what the server has to do to
provide the specified data; it just wants the data. The server doesn't
care _why_ the client wants the data; it just does what it has to
do provide it.

The PCT model of the brain and this kind of client/server architecture
seem to have some interesting similarities. In PCT, reference signals
are like "clients"; they are neural signals that specify what data
(perceptual signal values) are to be provided by the control loop,
which is like a "server". Actually, the "server" that provides the
perceptual signal data is the neural component of a control loop
(afferent neurons, efferent neurons and interneurons); the "neural
controller". The environmental component of these control loops is
like the database upon which the server operates.

Here's a diagrammatic representation of the analogy between
client/server architecture and PCT:

             Client/server system

user---> client --> server <--> database
  ^ ^ |
  > > >
  >-------data <------|

                     PCT

user----- >reference --> neural <--> environment
  ^ ^ controller
  > > >
  >------- perception <-----|

The "user" of the client/server system is a person who wants to use the
data obtained by the client from the server. The "user" of the control
system is another control system (or systems) that wants to use the
perception obtained by the reference signal from the neural controller.

One difference between client/server and PCT systems is that the
specifications to the server (controller) are analog quantities in
in PCT and digital codes in client/server architecture. Another,
related difference is that the proper function of the PCT system
depends on adjusting the controller to the physical contraints of
the real world while the proper function of the client/server system
depends on writing server algorithms that can deal with the logical
characteristics of the database.

Despite these differences, I think that there are a number of things that
recommend client/server architecture as a way of explaining the PCT model
of behavior, not the least of which being that client/server technology
is very "trendy" at the moment. I'm not suggesting that someone write a
book called "Behavior: The server of perception" but I do think that
presenting PCT in terms of a reasonably accurate analogy with a "hot"
technology could get people's attention. Intellectual and scientific
integrity certainly hasn't helped PCT very much;-)

There are other, more substantive reasons, for looking seriously at
the client/server anology with PCT. First, the analogy forces us to look
at behavior from the perspective of the behaving system . The goal of
both client/server and PCT system is to produce a particular input (data,
percepion) , not a particular output. The client (reference signal)
doesn't care how the server (controller) produces the requested data;
indeed, due to the dynamically changing nature of the database (or
environment) the server (like the controller) produces the same data
using slightly different means every time.

Second, the analogy shows how different behavior looks from the point
of view of the behaving system (client) compared to the point of view
of the observer of the behaving system (the system administrator, who
sees only the the relationship between the server and the database).
The system administrator sees large changes in server behavior (search
time, search tables, etc) with changes in database content and structure;
similarly, observers of living systems see large changes in the externally
visible actions of an organism with changes in the characteristics of
the organism's environment.In both cases, these changes in observable
behavior (of server or organism) can occur when the system is actually
producing the same behavior from its own perspective (producing the
same data or the same perception). In both client/server and PCT
system, you can't tell what the system is doing (what data the client
wants, what perception the organism wants) by looking only at the
actions of the server (controller) in response to changes in the
database (environent). You must test for "served" (controlled) data.

Third, the client/server analogy captures the fact that the operation
of the server on the database (like the operation of the controller
on the environment) is "used" by the client. The disturbance resistance
that characterizes the behavior of server and control loop is what
makes it possible for these components of the system to provide
the client with requested data. The client (reference signal) doesn't
tell the server (controller) what to _do_ (what actions to take in order
to get the requested data); it just tells the server (controller) what
input it wants. The client/server analogy shows the different between
a programmed output (cognitive) system and a requested input (perceptual
control) system. The client/server system is not a programmed output
system;the server doesn't carry out a particular program in response to
the client's input; similarly, the controller doesn't produce a particular
action in response to the reference input; both server and controller
produce a requested input for the client (reference signal).

I'm thinking of writing an article describing PCT as a kind of
client/server system. Any thoughtsor opinions, pro or con, would
be most welcome.

Best

Rick

<[Bill Leach 960121.12:15 U.S. Eastern Time Zone]

[Rick Marken (960120.1100)]

Rick, that was a really clever posting. I think that you did an
outstanding job of drawing the analogy.

The only warning that I can think of is that at some level of computer
knowledge terms could be a bit confusing if you were to try to
significantly simplify your presentation. If you are familiar with some
network computing involving X-Windows and RPC then you will recognize
that the appearent functions of the "client" and "server" are reversed.

For example, in an X-Windows application the "server" is the software
that the user is "looking" at and using directly (that is the software in
the machine that the user is physically using is the "server" software.
The "client" then is in the remote machine.

I only mention this because, 1 it is true, and 2 it is just possible that
someone in the computer field might "attack" your presentation based upon
incorrect assumptions.

-bill