Demystifying BEAM technology; Implicit Control; Synchronization In Nervous Nets; Alternative Ring Topologies; Periodic motion and Walking Control

Hi, I was thinking of posting the text bellow as a commentary on a
robotics page I might add to my website. But before I do this I would
like to get some feedback to make sure the content is sound. Or in
other wards I want to make sure my first impressions of BEAM
technology are correct despite my limited reading on the subject and
having not focused my studies on electronics. I will leave out the
location of the website for now because it has been years since I have
done anything to it. If the post is too long feel free to just read
one section and make comments with regard to that section only.
John's Robotics Page
----------------------------------------------------------------------
-------------------Who am I and Why Create a Robotics Page.-----------
----------------------------------------------------------------------
I have two undergraduate degrees. One degree is in physics and the
other degree is in electrical engineering. I am currently studying my
masters in control system. My thesis is about parameter estimation
using a quasi linear Kalman filter. I choose physics because I wanted
to understand how things work. I choose electrical engineering because
I wanted a job where I could create things. I considered the
electrical control aspects to be the most crucial knowledge I needed
to obtain these goals. I originally thought I would go into robotics
until I discovered the elegant mathematics involved in control systems
and signal processing. My discovery of two fields revitalized my
interest in robotics. The two fields are BEAM robotics and genetic
algorithms.
My attraction to beam robotics was its simplicity. I realized that I
could create a walking robot from only two motors and very few
transistors. It is likely that I will be able to find all of the parts
I need from old electronic junk. Genetic algorithms closely relates to
my research interest in the sense that a genetic algorithm could be
used as an estimation algorithm. However, a more ambitious goal of a
genetic algorithm is to evolve behaviour that may be construed as
intelligent.
Regardless of these claims I realize that I can easily create simple
robots by following simple BEAM designs. By analyzing these designs I
can get new I ideas about controls. I can review the electronics I
have learned and extend my knowledge of electronics. From these fist
steps I can go two roots, I can learn more about AI techniques by
applying genetic algorithms and simulations to improve upon these
simple designs, or I can add two the simple BEAM design higher level
controls and functionality such as microprocessors that would not
normally be considered BEAM technology. Regardless, I get to enhance
important skills well talking a break from my main areas or research.
--------------------------------------------------------------
----------------Demystifying BEAM technology------------------
--------------------------------------------------------------
Some proponents of BEAM technology believe that their design approach
will evolve machine behaviour that resembles lower level organisms.
Although, evolution approaches could be used to evolve intelligent
like behaviour it is not clear what complexity is required to achieve
this behaviour. Nor is it clear that a BEAM architecture would be an
intelligent architecture. This ambiguity comes from two questions: the
ambiguity of what electronics are considered BEAM robotics; and the a
lack of knowledge of the required architecture for artificial
intelligence. Regardless, the strength of genetic algorithms is it can
find solutions outside of conventional design approaches. Consequently
genetic algorithms produce what may be thought of as more creative
solutions to problems then people often produce.
The less we understand about how beam robotics works the easer the
technology becomes to mystify. The control of a BEAM robot is
accomplished by pulses that are transmitted around a ring and coupled
to other rings, actuators and sensors. The pulse travels from one node
to another.
In BEAM technology each node is called a nerve and the group of nerves
forms what is called a nervous net. Typically the nerves are
nonlinearly band pass filters. In the design used in [1] a capacitor
blocks the DC current at the input, the output of the capacitor is a
node of a resistor to ground and an inverter to the output. When the
input changes from low to high the voltage one the other side of the
capacitor goes from low to high because the voltage across the
capacitor cannot change incautiously. This causes the output of the
inverter to switch from high to low. The capacitor will then drain
charge through the resistor until the voltage across the resistor is
bellow some threshold value and then the inverter will switch from low
to high.
If you connect four of these nerves in a ring then there are two
possible modes. In one mode, one pulse travels around the ring and in
another mode two pulses travel around the ring. In [1] this simple
four nerve, nervous net is used to control a two motor walking
BEAMbot.
This very simple BEAMbot moves forward by shifting its weight with the
back legs, then pulling the BEAMbot forward with the front legs. Only
one motor is used for the front legs and one motor is used for the
back legs. The front motor is connected to nodes one and four in the
ring and the back motor is connected to nodes two and three. Thus with
very few motors and very few transistors a very simple walking robot
was created.
Two very important observations should be made. The first is that all
that was needed to provide the same level of control was an oscillator
and an inverter. Thus the BEAM bias towards a ring of "nerves" was not
the simplest design. Moreover, in [1] to reverse the direction of the
BEAMbot required changing the initial conditions of the circuit. A
simpler way to change the direction of the BEAMbot would be to switch
the terminals of the rear motor.
We conclude that there is nothing special about this single ring
nervous net. It is merely a two mode oscillator. This does not mean
networks of nervous nets couldn't perform useful computational
functions, however, it is not obvious that such an architecture would
be the simplest architecture that would accomplish the same function.
Higher level approaches must be developed by understanding and
planning or by optimization. The first step of optimization is to
weight the objective of various behaviours and applying an
optimization algorithm such as genetic algorithms.
---------------------------------------------------------------
--------------------------Implicit Control---------------------
---------------------------------------------------------------
Another false assumption made by proponents of BEAM technology is that
the control of the BEAMbot is accomplished by pulses. There are two
problems with such an assumption. The first problem is that aside from
the synchronization benefits of networks of nervous nets, the motor is
essentially controlled in open loop.
There is nothing special about an open loop controller. In many cases
an open loop controller will provide satisfactory performance.
Moreover, although this design contains no position feedback to the
electrical subsystem, there is mechanical feedback to help control the
position of the legs.
For instance when the rear motor pushes the right back leg against the
ground the rear motor does not even turn because it does not have
enough torque to counter act the torque produced by the reaction the
left front leg. Thus mechanical feed back is used to control the
position of the back motor. Similarly the front legs cannot turn past
the body, thus by mechanical (position saturation)\(collision
feedback) the robots motions is constrained. It is not obvious from
the design out of the range of possible forward directions if straight
forward is preferred or if sometime the robot circles to the right and
other times the robot circles to the left in sort of a random fashion.
Thus like any control system feedback is applied to correct error on
the output. If the feedback was obtained by using a potentiometer to
determine the position of the legs it is not clear if the technology
would be considered BEAM technology. Moreover if the ring of nervous
nets was replaced by a single oscillators and an inverter, with using
position feedback to the electrical subsystem, the design may still be
simpler then the BEAM design but it probably wound not be considered a
beam design. This raises the question is BEAM, a technology, a
philosophy or an ideology. Is there anything special or different
about BEAM technology or is just a buzzword used to create interest.
------------------------------------------------------------------
--------------------Synchronization In Nervous Nets---------------
------------------------------------------------------------------
I have read that coupled rings of nervous nets are self-synchronizing.
This raises two questions, what do we want to synchronize with this
architecture and are nervous nets the best architecture to accomplish
this goal. Consider the control of a mechanical spider. The spider may
move forward by moving front left legs 1 and 3 backward well moving
right legs 2 and 4 backwards. Again this kind of motion is just a
simple periodic motion. It is not obvious that the spider couldn't be
controlled by a single oscillator and inverter running the motors in
open loop and using mechanical feedback to limit the range of motion.
However, if it was desirable to synchronize the movement of the legs a
simpler scheme may be to just use a single voltage controlled
oscillator instead of a separate loop for each leg. If the leg is too
far ahead the voltage applied to the VCL would be reduced if the leg
is too far back the voltage is increased. Such an approach is very
similar to a pahse locked loop. Moreover a phase locked loop is not
considered BEAM technology.
-----------------------------------------------------------------
------------------------Alternative Ring Topologies--------------
-----------------------------------------------------------------
Even the ring topology is not a sacrosanct technology. GPS satellites
used feedback between several shift registers to provide a pseudo
random sequence. Thus a shift register could be used to form the ring.
The shift register has the advantage that a four bit shift register
has four modes of operation well the four nerve ring in [1] can only
support two modes. Another advantage of a shift register is the speed
at which it shifts data can easily be changed by changing the clock
signal. Moreover a flop flow can be constructed from only four logic
gates. And each of those logic gates has only a small number of
transistors. Alternatively a flip flop could replace one of the nodes
in the nervous nets to help regulate the speed and provide away to
clock in a new signal to the ring nervous net. Another alternative
ring topology is a transmission line. A transmission line can be
simulated with inductors in series and capacitors in shunt. The
advantage of a transmission line is it is completely analog and there
are more possible periodic modes that could be formed around a
transmission line. A flipflop could be used to close the loop around a
transmission line.
----------------------------------------------------------------
-----------------Periodic motion and Walking Control------------
----------------------------------------------------------------
Walking is essentially a periodic motion of the mussels. BEAM
technology causes periodic signals to be created by propagation around
rings. It is clear that by combining periodic signals complex
trajectories can be described. Essentially this is just a
generalization of the Fourier series. It is also clear that rings can
be combined to create signals of longer period. For instance if we
multiply one point from one ring with one point from the other ring,
the resulting signal has a period that is the sum of the period of
each ring. Other ways of combining ring include coupling and various
forms of feedback. If the connections between nerves could be
dynamically controlled a large number of signals could be described
with less information then might be required if the entire time
sequence was stored. Thus rings of nervous nets could be use to
compress complex motions.
----------------------------------------------------------------
---------------------------Conclusion---------------------------
----------------------------------------------------------------
BEAM technology has a number of advantageous. It is simple and it is
effective. It provides a good starting point for someone wishing to
create simple robots as a hobby. Because there are numerous ways to
propagate a signal in a ring, it should be easy to find the necessary
components from junk electronics. However, BEAM technology is not
magic, it doesn't always provide the simplest solution and in clearly
doesn't provide the highest performance control. Moreover, when the
complexity of a robot design increase it becomes less clear if the
resulting product used beam technology. Thus some points should be
remembered. Complex periodic motions can be created by combining loop
nervous nets or shift registers. Often open loop electrical control
with mechanical feedback is a sufficient to meet the performance
requirements of a multiple leg-walking robot. Three methods that can
be used to provide synchronization in walking robots are; coupling
between loop nervous nets, mechanical limiting and phase locked loops.
There is no need to categorize these techniques with the term BEAM
robotics. Finally development of higher level robots should proceed
with both the use of optimization techniques such as genetic
algorithms and human planning.
[1] Susanne Still, Mark W. Tilden*,Controller for a four legged
walking machine
ETH Zuerich, Institute of Neuroinformatics, Gloriastr.32, CH-8006
Zuerich, Switzerland
Biophysics Division, Los Alamos National Laboratory, Los Alamos, NM
87545, USA
formatting link

Reply to
John Creighton
Loading thread data ...
I appreciate the opportunity to make comments!
GA is something that I've always found fascinating. I hope you get to explore it more.
This is an avenue we're pursuing presently as well. Using a BEAM-style control system as the base for additional support electronics is working out well in our experiments on a new Walker kit.
THAT's been a topic of debate in the past. I consider the BEAM lable more of a "toolbox" collection of circuits, some of which are original, some are hacks, and some are simple, core elements of most electronics (R/C timing, etc). To pin that down seems superfluous to your analysis.
Find that out, and you'll be a successful man...
Some pulse trains are dead ends, that only actuate a single set of behaviours before stopping. (See the patent, featuring MWT's 8 motor Spider)
More often called "Neurons". Don't debate me on that one - I didn't invent the nomenclature; I just use it.
It might be worth referencing the physical geometry of the robot at this time. The rear motor output shaft axis is often perpendicular to the terrain, providing only thrust. The front motor can vary from parallel to the terrain to almost perpendicular. Of course, there are combinations of lift/thrust that have yet to be explored.
Assuming the nodes/neurons are arranged CW from top right corner, and you're talking about microcore circuits, and not Bicores. Bicores are 2 Nv oscillators that master/slave to other Nv's, Microcores pass one or more "processes" around the loop.
Transistors have been used, but logic gates are more convenient, and take less space.
Hmmmm. I think I'd like to hear more about this. If you want to use an oscillator to "lock-step" all the Neurons, you'll loose flexibility. It should still work, but it isn't as capable.
Most builders use a MUX of sorts to swap around the control signals from the microcore control-ring to the motor driver, which is effectively the same as what you have said above.
Again, I'd like to see an example of what you have in mind.
I'm confused by this statement. I'm not sure why you mention pulses in associate with synchronization, AND open-loop motor control. Do you mean that a single pulse ("process") microcore isn't taking advantage of being able to synchronize with other parts of the network? As for the motor being in open-loop, that's not entirely true. There is a feedback effect due to motor load that will either shorten or lengthen the period depending on circuit configuration. But ultimately, no, there is no "shaft encoder" equivalent on most BEAM devices, although there is some development using trimpot as position feedback.
Again, putting a lable on it isn't a useful use of effort, although if you can apply some sort of obvious analog component to the feedback, that would conform more to the "analog" roots of BEAM.
Ah, here's the point I've been looking for. IMHO, I consider it a design philosophy more than anything else. As for being a buzzword, I don't think you'll see the word "BEAM" used as nearly as much as "Analog Control Systems" in anything Mark Tilden's promoted in the last few years.
Hmmm. I'd have to evaluate that idea on a breadboard. I'm not convinced it would be very effective.
Interesting...interesting... Again, a breadboard is called for. I haven't seen the need to start using PLL-style circuits in any of my BEAM designs.
You might want to check out some Bicore designs, which aren't rings, but more like ladders of Master/slave/slave arrangements. They're pretty effective.
I haven't seen anything simpler with as much flexibility...yet.
Bah - pretty much irrelevant, unless if you have a NEED to define it as such.
Now, start building! I wanna see some of your PLL ideas in action ;>
Regards, Dave
Reply to
Dave Hrynkiw
I'm not a big fan of the BEAM approach, but in their defense, I think that there is more to it than a simple oscillator. The one point which your paper seems to miss is the influence of reluctance on the oscillator. This provides a simple force-feedback which alters the behavior of the oscillator.
Additionally, I think I would agree with BEAM proponents that the pulse-operation is beneficial. The fact is that you CAN put them into small self-propagating loops. In this way, they're closer to actual neurons than what are used in traditional neural nets.
However, I think that the behaviors seen from the pulsed circuits could probably be duplicated in software using spiking neural nets (see:
formatting link
only thing that couldn't be directly modelled is the feedback effect of the motor's reluctance/inductance. However, it's probably possible to make some kind of feedback circuit which could detect the current draw on a component and create a feedback from that. Then, you could probably make far more sophisticated neuronal circuits using spiking neural nets.
Cheers, Ed L
Reply to
Ed LeBouthillier
Cool, If I got this right you are the president of Solar Robotics and have published with Mark. I have so far only published one paper "REAL TIME IMPLEMENTATION OF AN ADAPTIVE FILTER FOR SPEECH ENHANCEMENT, Presented at CCECE May 2004", and have no engineering work experience. Oh well, give me time.
Anyway, thank your for your feedback.
I think I will. Did you ever read, Genetic Programming IV: Routine Human-Competitive Machine Intelligence
formatting link
I saw the introductory DVD. It was quite interesting. I think though if I am ever to make good use of genetic programming I would like to study some stuff on databases and distributed computing. Genetic algorithms should only be one of the optimization algorithms. There should also be many niches and it is important to properly organize what is learned. There should be an interchange of information between human designs, artificial intelligence and optimization.
Hmmm?.This sounds interesting. What was the role of the microprocessor in the walker.
Is there any good references that have attempted to pin the label down. Superfluous or not I am still interested.
Okay, I guess one sub theme of my post was to question the connection between BEAM and artificial intelligence. I conceded that the some architecture that may be considered a BEAM architrave could provide the necessary computational architecture. It is just there seems to be some vibe on the net from some people that these simple devices have intelligence. This seems to be reinforced by Marks paper
Living Machines
formatting link
If intelligent behavior could be evolved from such simple feedback systems, then the real work horse would be genetic algorithms. BEAM is just one architecture that could be used to execute an intelligent program. I tried reading MWT's patent again.
formatting link
I originally looked at it at Christmas time but it wasn't immediately obvious to me how it worked and I had courses and stuff to worry about when Christmas was over. After reading:
Controller for a four legged walking machine
formatting link
That patent became a much easier read, although I think he made some mistakes in it.
I can see how the branching of signals from a central core out to the extremities resembles a biological organism. It is interesting to note that a tree representation of a lisp program also has a branching structure. The major difference a BEAM architecture and a program is in a program feedback is not as natural. The major advantage of a BEAM type architecture is it is very simple and it is more naturally parallel. When Mark published his patent, microprocessors were a lot bigger, more expensive and more power hunger. For robots the size of a micron or bellow I think BEAM is still the way to go. For someone looking for a Hobby by building robots out of Junk BEAM is the way to go.
For the Sony dog BEAM is currently not the way to go because the flexibility of software makes the Sony dogs easier to upgrade and modify. However, with the invention of the FPGA the connection between software and hardware is blurring. Clearly a higher performance can be obtained by specialized hardware.
For example one grad student at my university is using an FPGA to develop a hardware implementation of singular value decomposition. In robotics singular value decomposition is sometimes used to find the quickest motion for an over determined manipulator.
Similarly programmable circuits could be developed that perform the same function as BEAM circuits. There would be a write pin, read pin, input pins and output pins. Complex motions could be described by bit streams and feedback could delay the propagation of the bit streams. Learning architectures could be employed to find the optimal bit streams allowed by the programmable hardware architecture. The end result would be something that is similar to muscle memory.
BTW one bit over sampled analog to digital converters often outperform multiple bit analog to digital converters. There are two types, and there is a close connection between the AD converter and control theory.
Reply to
John Creighton
This one right?
formatting link

My mistake.
Okay, My next reading assignment.
Yeah, but logic gates are made up of transistors. A transistor is just a convenient way of measuring the size of a device. Granted the resisters and capacitors might not be as easy to scale to small sizes as the transistors. The interest in reducing the number of components comes both form the area of miniaturization and with a desire to minimize the use of scares resources in extraterrestrial resource utilization.
See:
formatting link
formatting link
The components to make electronics use a lot of rear elements for doping and in the case of possible future extraterrestrial resource utilization this could be one of the limiting factors. Of course I am not sure if it matters given microprocessors are the size of a finger nail and amplifiers are a millimeter squared. So what is a few more transistors?
Okay, I should of worded this more carefully. Anyway, I did notice that in MWT's patient that the motors were servomotors. So maybe there was at least some local electrical feedback. It wasn't clear in the patient.
Okay, kind of like KISS is good for some problems but not every problem. It is interesting how sometimes a word helps you promote something and sometimes it does the opposite. For instance if you use the word wavlet in a signal processing paper it will get more attention. Of course a wavlet is just another basis. It is funny how fads in publishing come and go.
Okay, I guess it is time to try some stuff out. What do I need to get started? Probably a millimeter from Canadian tire would be enough. An oscilloscope would be nice and/or and analog interface to a computer. I have this stuff at school but it would be more fun to keep it as a home project.
Reply to
John Creighton

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.