Robot Bushes

Dr. Hans Moravec

Robot Bushes

Most present day remote controlled and robot arms fall short of human dexterity, especially in their vicelike "hands," which are unable to manipulate complicated objects, or apply the combinations of forces needed to accomplish some simple tasks. These limitations, among others, exclude them from many interesting applications in construction, repair and exploration.

Some research manipulators achieve better dexterity by imitating the structure of the human hand, often at the expense of precision, strength, reliability and especially economy. Robot hands with three, four and five dexterous fingers have demonstrated the ability to roll eggs, twirl batons and tie knots.

There are imaginable tasks (for instance, those requiring simultaneously maneuvering together more than three uncooperative components in a precise way) for which even human dexterity is inadequate. Today, most are never attempted, while a few are approximated using specialized tools and fixtures.

Finer Fingers

It may be possible in future to leapfrog the dexterity not only of conventional mechanical manipulators, but of human hands. Consider the following observation.

Once upon a time, the most complex animal was a worm. The stick-like shape was poorly adapted for manipulation and even locomotion. Then these stick-like animals grew smaller sticks, called legs, and locomotion was much improved, although they were still poor at manipulating. Then the smaller sticks grew yet smaller sticks, and hands, with manipulating fingers were invented and precise manipulation of the environment became possible.

Generalize the concept. Visualize a robot that looks like a tree, with a big stem, repeatedly branching into thinner, shorter and more numerous twigs, finally ending up in vast numbers of microscopic cilia. Each intermediate branch would have several degrees of freedom of sensed and controlled motion. Though each branch would be a rigid "mechanical" object, the overall structure would have an "organic" flexibility because of the huge numbers of degrees of freedom. At the outer extremes, the machine would have an enormous number of individually positionable and naturally swift manipulators, coordinated for simultaneous execution of otherwise unimaginable tasks by signals and power from the central regions.

Taken far enough, the smallest fingers operate at nanoscale, able to shape matter at the atomic level. Compared to the free-floating, self-powered, self-directed nanobots envisioned by others, each nano finger in a bush robot would be a simple device, controlled, coordinated and powered by mechanically connected computers and energy sources located in the direction of its stem. Bush robots may provide a uniform, top down, incremental bridge to nanotechnology. Macroscopic machines with a few levels of branching could be built today, and could exhibit human-like dexterity. As microtechnology advances, the number of branching levels could be increased with ever finer sub-fingers. An ultimate nanoscale bush robot might begin with a stem a meter in length and a few centimeters in diameter, able to move with a one second timescale. At 30 levels of branching, one might find a billion fingers each a micron long, able to move at a megahertz. At 50 levels, there could be 1015 fingers, each a nanometer long, and in principle able to move at gigahertz rates, if not constrained by exotic physical effects.

Fractal Parameters

Though not necessarily the optimum design, bush robots with uniform structure are a good way to introduce some of the key ideas. In a "regular" bush robot, subtrees are scaled miniatures of the whole structure. The overall geometry of this class of bush robots is defined by just a few parameters, primarily the branching factor B, stating how many smaller twigs branch from each larger twig, and the scaling factor S, giving the linear size ratio of each smaller twig relative to its parent.

The B and S parameters define other quantities, such as the robot's fractal dimension D. The dimension of an object can be inferred from its scaling properties. For instance, a one-dimensional line becomes the equivalent of two of the original line when its size is doubled. A two-dimensional square, on the other hand, grows into an area encompassing four of its original selves when its scale is doubled, and a three dimensional cube grows to the size of eight of itself. This observation generalizes to the formula

	R   =   M^D

or	D   =   log(R) / log(M)

where R is the replication factor, M is the magnification factor and D is the dimension. Fractal objects have the peculiar property that their dimension can have non-integer values. In a mathematically idealized, unbounded bush robot, whose branching goes on endlessly at both the small and large ends, it can be seen that magnifying the whole robot by a factor of 1/S, then shifting our attention up one branching level to regain the original scale, produces the equivalent of B copies of the original-sized robot. The fractal dimension of the robot is thus

	D   =   log(B) / log(1/S)

Since B can be chosen to be any integer, and S any value whatever, the fractal dimension can be set to anything. In fact, values of D greater than 2 will not work for very many levels, since they cause the cross section each smaller level of branchlets to occupy more area (proportional to B^n x S^(2n), where n is the level in the tree), forcing increasingly severe crowding, then overlapping. D values of exactly 2 allow a bush with unlimited branching to arrange its fingers to exactly cover a surface, which may be a useful feature, for instance in a robot that constructs solid objects layer by layer. A robot with B = 2 and D = 2 (thus S = 1/sqrt(2)) can cover a surface in just two distinct patterns, one corresponding to a straightforward rectangular grid, the other to a fractal edged "double dragon curve." Both patterns are illustrated by the pose of such a robot in Figure 1 (rendered to only 17 branching levels). Most of the upper portion shows fingers in grid configurations, covering surfaces of various curvatures. The quarter subtree at the bottom of the picture covers a surface in a double-dragon pattern. A 1/8 subtree on the left is configured to loosely fill a volume, leaving a fractal pattern of voids (as a D = 2 robot must do to cover a higher dimensional space).

Very high branching factors seem impractical, but the other extreme of B =2 is not necessarily best. Consider a property we can call routing cost. A bush with a given B and N levels of branching has B^N fingertips, any one of which can be specified with log(B^N) = N log(B) quantity of information (bits, if the logarithm base is 2). A signal from the stem to one of these fingertips must pass through N levels, each forking in to B alternate directions, of which it must choose one, providing log(B) of routing information in doing so. If there is a cost in proportion to B in this decision (eg. a rotation of a B-way switch), the cost/benefit ratio is B/log(B). The analytic maximum of this expression happens when B = e(= 2.71828...). There is no obvious way to implement non-integer values of B, but B=3 is the best integer under this measure, better than either 2 or 4, which score equally. B = 3 gives access to the most number of fingers for the least amount of routing distraction (the same analysis minimizes the number of teeth in a cogwheel based counter). More investigation may reveal if this property is actually of consequence, but a B = 3, D = 2 robot is interesting in itself. It has only one regular mapping into 2D surfaces, with a triangular fractal boundary more symmetric than the double-dragon of B = 2.

Beyond Geometry

Fractal geometry is fundamental, but among the simplest considerations in a bush robot design. Myriads of other issues have hardly been formulated, but should emerge as we begin to build bush robot simulations, and define mechanical implementations. A few of the issues we expect to encounter emerge from contemplating particular designs. A B =2, D = 1, N = 20 (call it a [2,1,20]) robot would have a million end effectors, each one millionth the scale of its trunk. We are led to ask what thickness is appropriate for the elements, give some assumptions about the power and energy density we expect in actuators, distributed power and computation. Too thick, and the robot's motion will be impeded, too thin and there will not be enough room for adequate actuators and processing. Perhaps the branches should taper or bulge. How many degrees of freedom of motion are needed at each branch? Surely at least pan and tilt at the base, and roll anywhere along the length. Would a telescoping action be worth the complication, or could the massively redundant articulation achieve the same effect with an accordion pose? The answer probably depends on the overall geometry, and how much excursion the pan and tilt joints can achieve.

Each robot branch moves the entire subtree that grows from it. Fortunately the exponential shrinkage in scale over the levels limits the total mass of that subtree. In a B = 2, D = 1 robot the volume of a subtree is only 1/3 the volume of the branch that supports it. A B = 2, D = 2 robot is something of a worst case, with subtrees 2.4 times as massive as their supporting branches, but a B = 3, D = 2 robot branch supports only 1.4 times its weight, and a B = 4, D = 2 branch carries exactly its own weight. In general lowering D or increasing B decreases the relative weight (whose exact value is B/((B^3)^(1/D) - B) ).

Assuming a constant power density across all scales, the smallest branches of a [2,1,20] robot can move a million times as fast as its trunk, possibly 1 MHz to the trunk's 1 Hz. End motions might be decomposed into low frequency, big excursion components produced by the large branches, on which are superimposed high frequency, small excursion corrections executed by upper branchlets, as in a series expansion. On the other hand, there is much more volume for computer power in the trunk than the fingers. This suggests motion control that leans heavily towards elaborate planning near the trunk, and simple, fast reactive control at the tips (with the reactive strategy probably delivered from the trunk for each new purpose). Devising a continuum of control strategies ranging from complex but slow for the "big" end to simple and fast for the "small" ends may be one of the most interesting and challenging tasks of the bush robot project. Not only will bush robots bridge the gap between macrotechnology and nanotechnology, they will stretch between the opposing camps of model-based and reactive robotics! The bush robot's tremendous range of potential behavior will tax just about any control approach, from precise control theory, to reflexive behavior, to cerebellum-type learning, to genetic algorithms.

The many actuators on a bush robot, especially the vast array of microscopic ones, would be excellent touch sensors if not only their position, but the forces they exert are measured. The fingertips of the [2,1,20] robot are like a million miniature stereo phonograph (or scanning tunneling microscope) needles, each with a 1 MHz bandwidth, giving an overall touch sensing bandwidth a million times greater than the data rate of human vision! An interesting, and surely important, behavior to simulate is the detailed scanning of objects, even moving or flexible ones, using the whole tree linkage to follow the motion, while maintaining highly precise position and force relationships between millions of fingertips and the surface. A bush robot could also, of course, manipulate and reconstruct a surface wholesale, providing an even more interesting simulation challenge. Such abilities would allow an advanced bush robot to reach into a complicated piece of machinery (or biology), almost instantly feel out the internal state, then rearrange things to effect an equally speedy repair or upgrade.

The simulation part of the project (whose results may be obtained in slower than real time, and often only for tiny fragments of complete bush) may address questions of mechanical strength and speed, power storage and computational requirements only superficially (there are, after all, so many interesting questions besides those). We propose also to undertake a paper mechanical design of a primitive, few level, bush, which should help focus on some of the practical considerations. We also plan to survey the micromechanics field and speculate on developments that would make more advanced robot bushes possible.


The idea of tree-structured (dendritic) robots is unexplored. Some lessons can be learned from other configurations with many actuators, especially tentacle or snake-like robots. An excellent reference is:

Qualitative descriptions of the bush robot idea are found in:

Fictional portrayals of bush robots are found in