Macro Self-Replication At Cornell





Anyone who reads slashdot or nanodot will have seen this already. For
those who don't, a group at Cornell (Zykov, Mytilinaios, Adams, and
Lipson) have designed and built a self-replicating, modular robot at the
macroscale.

I'm torn being being impressed and non-plussed. On the non-plussed
side, this is about the cheapest form of self-replication possible. A
grouping of three or four already-assembled units can take other,
disassembled modules and plop them together. The only lower form, as a
slashdot commenter quipped, would be an assembled unit finding the "on"
switch for another assembled unit....

(Interestingly, the writers do acknowledge the question of "what is
self-replication?" Their answer is reasonable, but not fully
articulated. To paraphrase, they posit that self-replication is a
figure of merit, not a binary condition. They go on to suggest an
information theoretic measure related to the probability of a machine
arising spontaneously vs a machine arising in the presence of another,
all in some given environment.

(I think their notion is interesting, but so wildly environmentally
dominated that it simply requires a similar measure on the environments
to be useful or complete.)

On the other hand, from a strictly engineering standpoint, it's an
impressive piece of work with obvious room for more modularity and
articulation in future units. There are three engineering levels to
this device-- electrical engineering, software engineering, and
mechanical engineering-- and I can judge the first two professionally,
and the second with day to day familiarity.

The mechanical engineering consists of the articulation of the modules,
which are split-cubes which rotate along the split. The engineering is
precise enough that both data and power can be transferred from module
to module through the faces. (The device is powered from its base.) To
a very educated layman, this looks fairly clever but not revolutionary.

The electrical engineering consists of on-board processors in each
module which can pass data back and forth, which is also clever but
certainly not revolutionary.

And the software engineering consists of the distributed software
required to assemble the new device. Without looking at the code, it's
difficult to judge. I'm not even certain, for instance, if the
components of the new unit come pre-programmed or if they are programmed
by the old units as they go. (This is not trivial, in my opinion-- if a
four-cube unit is building another four-cube unit, the pieces of the new
unit *do* act in that new production once they're picked up.)

It seems like there's great potential for future cleverness in
distributed programming, here, even if there is not much cleverness at
present.

At the very least, it's interesting.

The paper can be found here:
http://www.mae.cornell.edu/ccsl/research/selfrep/selfrep_brief5.pdf

A sped-up video can be found here:
http://www.mae.cornell.edu/ccsl/research/selfrep/video/4x4ht4a.mpg

I find it likely that the slashdot effect will take hold shortly.
The full paper will be published in Nature tomorrow, May 12. Nature
typically charges for its articles, though. I'll be having a copy sent
to me from my library.

--
John S. Novak, III
The Humblest Man On The Net

.



Relevant Pages