Brain Modeling with Brytes
Making Big Brains from a Lot of Little Brains
David Zipser
Institute of Cognitive and Brain Science, University of California Berkeley, 1408 Milvia St, Berkeley, CA 94709, U.S.A.
Keywords: Arm Movements, Brain Models, Distributed Decision Making, Cognitive Control.
Abstract: Brytes are small brains used as subunits to model the cognitive processes of larger, smarter brains. A
previously developed model of scratching behaviour that uses brytes to generate the coordinated movements
of two arms, one with the itch site the other with the scratching hand is described. Then new strategies are
described for using large sets of brytes with virtual locations all over the body to make decisions about
whether scratching is safe in the current context and, if so, which appendage to use. Finally, the biological
plausibility of brytes is examined in the contest of brain evolution and brain functional architecture.
1 INTRODUCTION
It has long been believed that explaining the
extraordinary cognitive abilities of the brain will
require the use of large numbers of high-level sub-
systems. From Minsky’s Society of Mind (Minsky,
1988) to the more recent Mixture of Experts (Jacobs
et al, 1991) many such subsystems have been
proposed. However, none of these are well suited for
building biologically plausible brain models
.
I have conjectured that to get the right kind of
subunit we should assume that big brains are made
of many smaller brains (Zipser, 2009, 2010).
Computations can then be simplified by distributing
them to many brain-like subunits. This approach has
already been used to build systems that generate
complex motor behaviours. Here I describe how to
extend the paradigm to a higher cognitive level that
is able to make decisions about when and how to
execute a motor behaviour
.
Thinking about brains made from brains is
confusing so a name is needed to distinguish the
subunit brains from the whole brain. I mixed ‘brain’
with ‘byte’ and got bryte. Brytes are the little brains
of which big brains are made. They have a complete
set of all the usual brain-like abilities, but on a small
scale and adapted to their role as part of a bigger,
smarter brain
.
Whole brains, even the brains of primitive
animals, are very complex so it is not practical to try
to define such a brain mathematically. Instead of
such an a priori definition, the computational
structure of brytes can be built up incrementally by
using them to implement functioning models of
successively more complex cognitive tasks. This is
the approach taken in this paper
From the bryte point of view brains evolved by
incorporating more and more brytes while each of
these brytes slowly mutates to compute a different
aspect of cognition, Figure.1
From a computational point of view brytes do
computations in a distributed way with each bryte
contributing to the task. This can only work if there
is an efficient way to integrate the contributions of
each byte
In this paper I show how local decisions made by
large groups of brytes can be combined to decide
when an agent can act safely, and how best to
accomplish the action. These higher level cognitive
decision tasks are built on a previously implemented
model that uses distributed sets of brytes to generate
the complex coordinated arm movements needed
when the hand on one arm scratches an itch on the
other arm (Zipser, 2012)
The previously implemented itch-scratching
model is reviewed here in some detail to provide a
concrete example of how the local computations
done by brytes can be integrated to generate the
coordinated movement of whole appendages.
124
Zipser D..
Brain Modeling with Brytes - Making Big Brains from a Lot of Little Brains .
DOI: 10.5220/0005036901240129
In Proceedings of the International Conference on Neural Computation Theory and Applications (NCTA-2014), pages 124-129
ISBN: 978-989-758-054-3
Copyright
c
2014 SCITEPRESS (Science and Technology Publications, Lda.)
Figure 1: Schematic depiction of brain evolution. The
‘command’ symbol is used to represent a basic unit brain
or ‘bryte’. All brytes have access to sensory input and can
contribute the final common path for motor output.
2 USING BRYTES TO
GENERATE COORDINATED
ARM MOVEMENTS
Lets start at the last step in the process of scratching
after the decision to scratch has been made and an
appendage chosen to do the job. As we scratch an
itch on one arm with the opposite hand the
scratching arm continuously changes posture to
bring the hand to the itch while the itch arm moves
to make the itch site more accessible and bring it
closer to the scratcher. These coordinated
movements are made without the arms touching
each other. All the information for this action is
available directly within the nervous system so it can
be done with the eyes closed—vision is not required
.
Figure 2: Brytes are physically located in the brain, but
can have arbitrary and changing virtual locations in the
outside world. In the scratching model many brytes are
used with virtual locations all over the arm surface. A
sample of this distribution is shown in the blue ovals.
Examples of an avoider bryte, blue, and a seeker bryte,
red, are shown with the movement vectors they output.
The output vectors of all the brytes are summed and
passed to the gradient arm movement algorithm to
generate movements (See text for details).
These scratching arm movements were
previously modelled using brytes as described
elsewhere, (Zipser, 2009, 2010), and will be only
briefly reviewed here. The model uses a gradient-
based optimal control technique for making goal
directed movements with multi-jointed (Todorov,
2006: Torres & Zipser, 2002). This technique moves
a point on an arm toward, or away from, an external
goal point using gradient decent on the function that
relates joint angles to the spatial locations of point
on the arm. Because the gradient is computed
continually and incrementally so the goal can also
move. The arm movements are actually controlled
for both translation and rotation so both the location
and the orientation of the goal can be matched.
Movements are generated de novo in real time. No
pre-computations, motion capture or learning are
used. Most important for the scratching problem is
the fact that the gradient is a linear operator so
gradients for the movement of different points on an
arm toward different goals can be added to get a
single movement. This allows moving toward one
itch point while avoiding all other points on the
contralateral arm.
To understand how brytes are used to do the
scratching task, imagine that a single ‘seeker’ bryte
with a virtual location on the tip of the scratching
finger, red bryte in Figure 2, has access to the spatial
location of itself and the moving itch. This bryte can
compute how to move to bring itself closer to the
BrainModelingwithBrytes-MakingBigBrainsfromaLotofLittleBrains
125
itch site on the contralateral arm. This function is
coded in parietal cortex neurons (Ferraina et al,
2009). A different seeker bryte at the itch site on the
other arm can at the same time move the itch site
toward the finger that is trying to scratch it. This will
eventually bring the scratcher to the itch, but
unfortunately the arms will not only collide, they
will also try to move through each other. To prevent
this, a several hundred ‘avoider’ brytes are scattered
over the whole surface of both arms. These brytes,
blue bryte in Figure 2, have access to the location of
many points distributed on the contralateral arm.
Using this information each avoider bryte, computes
a direction to move away from the other arm so as
not to hit it. This function is coded in neurons in pre-
motor cortex (Graziano, et al, 1994). The
appropriately weighed sum of the movement
directions of all these avoider brytes will keep the
arms from hitting. When the movements specified
by the scratcher brytes are added to those of the
avoiders, the two arms move so that the itch is
scratched and collisions are avoided
.
Figure 3: Examples of starting and ending postures of both
arms moving to scratch an itch. In A, B and C the
movements are successful while in D a local minimum is
encountered.
Examples of starting and ending arm postures are
show in Figure 3. The important point is that once an
itch and scratch site are specified, brytes can be used
to get the job done. This depends on having a way to
combine together all the computations done by the
brytes from their local viewpoints. In this case a
simple summing operation was all that is needed.
Sometimes the movement vectors for scratching
and avoiding contact cancel and movement is caught
in a local minima before reaching the goal, Figure
1D. This problem arises in many behavioural
contexts. Particular solutions to individual cases are
usually easy to find, but more general cognitive
solutions are of more interest. Some of these general
solutions to local minima are implemented
elsewhere (Zipser, 2009, 2010) in bryte models of
grasping in the presents of obstacles
.
Movies of the running simulation and a GUI that
allows many factors to be manipulated are available
on line (http://crcns.org/data-sets/movements/zipser-
1/). The code for the simulation of this model is
quite concise and the simulation runs rapidly. Those
interested in the mathematical details of the
simulation and a discussion of how the required
information is represented in the nervous system can
find them here (Zipser, 2012).
3 DECIDING TO ACT
3.1 Selecting an Appendage to do the
Scratching
Suppose you have an itch on your right calf. You
could bend over and scratch it with either hand or
you could scratch it with the side of your foot on
your left leg. How do you know that you have these
options, and how do you decide which to use? This
is an example of a kind of problem you constantly
confront, so finding a fairly general solution is of
some interest. One general solution that is often
proposed is ’simulation’ i.e. imagining what will
happen if we do something and then not doing it if it
leads to bad results. Since we can apparently do
mental simulation, it seems reasonable to use it for
this kind of task. But I have found that attempts to
model mental simulation always involve some
method for evaluating the outcome. In what follows
I show that sometimes these ‘outcome’ evaluations
can be done without actually simulating the action.
Doing this involves using many distributed brytes
that are a bit brighter than the ones used so far
.
Each bryte in the coordinated arm movement
model made a contribution to the overall movement
based on its own point of view, i.e. virtual location.
These contributions were combined by summation
to get a global movement. In the same spirit,
imagine that brytes are distributed with virtual
locations over the whole body. If each of these
brytes can compute a value that increases with how
appropriate it is for it to be the scratcher bryte, then
the bryte with the highest value can be chosen to do
the task.
How do the brytes compute their own
appropriateness? There are innumerable factors that
can potentially go into the calculation of
appropriateness. For now we will consider only
two—a default appropriateness, and distance to the
itch. The default value is based roughly on how
likely a bryte is to be chosen as the scratcher, i.e. a
prior. Brytes on the fingertips would have high
NCTA2014-InternationalConferenceonNeuralComputationTheoryandApplications
126
defaults while those on the back would have low
values. The distance contribution to the
appropriateness value simply assumes that being
close to the itch makes a bryte more appropriate to
be the scratcher. A hypothetical example is given in
Figure 4 with only the three most appropriate brytes
shown.
Figure 4: Hypothetical example of the method proposed to
select the most appropriate appendage to use for
scratching. Only the three brytes with the highest priors
are shown. The local estimates of appropriateness are sent
to a central location where the maximum value is
determined and broadcast to all the brytes. The bryte that
produced this value decides that it is the one to do the
scratching.
To pick the scratcher bryte, the appropriateness
values have to be compared and then the bryte with
the largest one informed of its selection. In the arm
movement model the gradients were summed to get
a value that was then sent to a final path for
movement. Here the max rather than the sum is
centrally determined and sent to all the brytes. The
bryte that has this max value acts as scratcher. Note
that all the computations and decisions are made
locally except the max operation, which is context,
independent.
3.2 Deciding Whether to Make a
Movement
How is the decision made that scratching will be
safe in the current context? Here also there are many
factors, but to illustrate how the bryte paradigm can
be used, let us consider just one factor — static
stability, i.e. when there is no movement and no net
force.
Maintaining static stability requires that the ever-
present force of gravity be balanced by a support.
The weight of the body on the support produces
pressure that is measured by sensors on the body
surface. Since body weight is constant, summing all
these pressure measurements that there is sufficient
support to prevent falling. When we are sitting
down, for example the pressure between the chair
and our behind is enough to guarantee stability and
we can sit safely.
The safety of using a selected appendage for
scratching can be determined if brytes on chosen
scratcher set the value of pressure they send to a
central summing device to zero before any
movement is made. This reduces the summed value
of support pressure, indicating a possible loss of
stability. Broadcasting this value to all the other
brytes allows them to detect the possible instability
and output a value of pressure they can handle. This
is a local computation that depends on factors such
as the presence of a support and the strength of the
body part the bryte is located on. If the sum of all the
increased values the brytes can handle is large
enough the scratch will be safe. If, however, the sum
of pressure that can be compensated is too low, the
scratch is unsafe and can lead to a fall.
If stability is being maintained by standing on the
ground or sitting in a chair, there will be no
significant change in net force from moving a hand,
so using it to scratch will not produce instability.
However, if the chosen bryte is at a place that is
contributing a lot of force to stability—as in the case
of hanging by your finger tips— setting its force
vector to zero will have a large affect on the
predicted stability. This predicted instability cannot
be compensated since no other brytes are in contact
with a support. This projected instability can be used
to cancel the scratch.
Our brytes are getting brighter. They can direct
movement, estimate is effects and help decide what
body part should do it. None of these tasks seemed
to require a great amount of intelligence on the part
of the brytes, but the combined contributions of
many local brytes facilitate global cognition that at
first appeared quite difficult.
4 BRYTE WAY TO BRAIN
EVOLUTION
Are brytes biologically plausible? In the 600 million
odd years between the immediate chordate precursor
of vertebrates and the advent of humans the brain
increased in size about a million fold and got a lot
BrainModelingwithBrytes-MakingBigBrainsfromaLotofLittleBrains
127
Figure 5: Is it safe to Scratch? The top hand shows the
situation as it currently exists for the person in the
photograph. The hands grasping the top of the wall
provide contact with a support that cancels gravity. The
bottom sketch shows what happens if the hand is selected
to do the scratching, the brytes at the fingertips determine
that movement will remove support. Setting their pressure
outputs to zero before movement will lower the global
pressure sum by half, allowing the movement to be
cancelled.
smarter. The brains of the vertebrate precursor had
some distinctly vertebrate features as can be seen in
their surviving descendants, i.e. 20 or so species of a
minnow like sea creature called Amphioxus.
The rate of brain evolution has continually sped
up. Only 3% of the time from Amphioxus to humans
separates us from our common ancestor with the
chimpanzee. During these 16 million years the brain
nearly quadrupled in size adding about three times
as many neurons as had been added in the preceding
600,000,000 years. To account for this rapid
increase in size and intelligence it is reasonable to
assume that evolution has used some efficient
strategies for improving things fast.
One simple, but very powerful way evolution has
been accelerated is genome duplication. Animals are
generally diploid--they have two copies of each
chromosome. Each time a cell divides all its
chromosomes are replicated so there is a time before
cell separation when there are 4 copies of each
chromosome in a single cell. Occasionally all four
copies go to the same daughter cell and it becomes
tetraploid. If this occurs during the formation of a
gamete the whole organism becomes tetraploid.
Since no bad genes have been added, tetraploids are
often completely viable. This new copy of the
genome facilitates evolution because it can be
‘experimented’ with without damaging the basic
genetic kit of the original organism. Recent genetic
analysis has found that the genome of Amphioxus
doubled two times on the way to vertebrates.
Amphioxus has six chromosomes we have 23 plus
the runt Y chromosome.
If the genome can get more versatile by
doubling, perhaps the brain can get bigger and
smatter by a similar process. This actually happened
in going from Amphioxus to the earliest vertebrates.
Amphioxus is bilaterally symmetrical, but does not
have paired structures. It has one brain, one frontal
eye, etc. Vertebrates on the other hand have a right
and left brain, two eyes and other paired structures.
The doubling part seems straight forward, perhaps a
single developmental mutation. However, the
modifications required to make this work are not
trivial since they include a requirement that the two
new brains don't give conflicting behavioural
signals, Figure 2. Note that doubling the brain did
not require doubling the genome. It could have been
accomplished with just a few small changes.
This original doubling took place when the brain
was a tiny fraction of its current size. We know from
Amphioxus that this brain already had many of the
basic features of modern vertebrate brains. The bryte
POV suggests that our current brain is made from
NCTA2014-InternationalConferenceonNeuralComputationTheoryandApplications
128
Figure 6: The top of the figure illustrates the two
doublings of the genome in the 100,000,000 or so years
that separated pre-vertebrate chordates from vertebrates.
The doubling of the brain that occurred in the same time
interval is shown below it. Below that one step in the
hypothesised increase in be number of basic brain units or
brytes is shown.
subunits corresponding to a huge number of these
early brains. As with chromosomes, making an
exact copy of an existing structure will not lead to
disruption, but provides an extra copy of a
functioning subunit to experiment with. Note that
unlike the genome, the bryte hypothesis is that the
brain evolves by adding additional copies of a small
basic unit brain, not by doubling the whole brain—
except in the first step. Of course, the subunit brains,
i.e. brytes, get modified in the course of time in
ways to increase their computational power and
facilitate their interaction.
The brain architecture that results from bryte
duplication is not inconstant with existing brains.
Figure 2 shows that in situ multiplication of subunit
brains maps onto the brain structure if we slice the
brain ‘vertically’ so that each slice has a bit of all the
principle brain parts such as cerebral cortex,
cerebellum, basal ganglia, etc..
5 CONCLUSION
My goal here has been to show that the odd point of
view that big smart brains can be constructed from
large numbers of smaller simpler brains is
computationally useful and biologically plausible.
Even from the few things that have been presented
here -- scratching an itch, and hints at possible
biological plausibility— it can reasonably be
concluded that the bryte point of view can be
extended to account for more challenging aspects of
cognition. Consider that most of the computations
used here for scratching are also components of
other tasks. And there are many aspects of brain
function that have not been used at all—most
notably vision. There are many avenues to extend
the bryte paradigm and only time will tell if they
lead to some really new insights.
ACKNOWLEDGEMENTS
I want to thank thr Redwood Center for Theoretical
Neuroscienc at UC Berkeley for providing me with a
venue to air my ideas and for their usefull feedback.
REFERENCES
Ferraina, S., E. Brunamonti, M. A. Giusti, S. Costa, A.
Genovesio, and R. Caminiti, 2009. Reaching in Depth:
Hand Position Dominates over Binocular Eye Position
in the Rostral Superio Parietal Lobule. The Journal of
Neuroscience 29(37):11461.
Graziano, et al., 1994. Coding of visual space by premotor
neurons. Science 11: 1054-1057.
Minsky, M, 1998. The Society of Mind. Simon and
Schuster, New York.
Todorov, E ., 2006. Optimality principles in sensorimotor
control. Nature Neuroscience 7:907-915.
Torres, E. B., Zipser, D., 2002. Reaching to Grasp with a
Multi-jointed Arm (I): A Computational Model.
Journal of Neurophysiology 88: 1-13.
Jacobs, R., Jordan, M. I., Nowlan. S. J. and Hinton, G. E.,
1991. Adaptive mixtures of local experts. Neural
Computation, 3, 79-87.
Zipser, D., 2009, 2010 Brytes or How to make big brains
out of lots of small brains, parts 1, 2, 3 - Redwood
Center for Theoretical Neuroscience.
archive.org/search.php?query=david+zipser.
Zipser, D., 2012. Distributed Control of Complex Arm
Movements in Living Machines Springer-Verlag
Berlin Heidelberg, 309-320.
BrainModelingwithBrytes-MakingBigBrainsfromaLotofLittleBrains
129