The
LEGO company is
developing a
piece of software called Digital
Designer. In this program you can build virtual LEGO models on the
computer. Most modern LEGO models contain hinges that allow different
parts of the model to move relative to one another. The aim is to be
able to simulate these movements in Digital Designer as well.
To
simulate the movements of a LEGO
structure one first makes an abstract model of the structure that
neglects all details except how the moving parts are
interconnected. This gives a graph which is a kind of "skeleton" of
the LEGO structure. The graph to the left is such a skeleton of the
dinosaur above (except for its arms). When the graph is acyclic like
this one, all movements are independent. The movement of
the teeth of the dinosaur (corresponding to leftmost nodes) is
independent of the movement of its tail (corresponding to the
rightmost nodes) -- so the dinosaur will not start biting just because
you pull its tail (note! Don't be too sure that the same will hold for
a real dinosaur).
LEGO structures in which all movements are independent are quite simple to
simulate. It only gets non-trivial when the movements are
interdependent, that is, when the graph is cyclic. The animation to the left shows a LEGO structure which in planar kinematics
is called a four-bar linkage. It corresponds to the simple cyclic
graph with four nodes and four edges (a quadrangle). All movements in
this structure are interdependent.

To the left is a picture of a LEGO
Technics excavator and the corresponding graph. The graph has several
cycles, that is, several interdependent hinges. This makes it
complicated to simulate its movement.
|
|
(thanks to LEGO for providing the bricks and to my nephew for building the excavator) |