What the Victorians were missing
Make your own ancient Lego tech: āNo magnet required: How to build a compass out of Legoā
Historyās greatest fantastical contraptions ā the Difference Engine and the Antikythera mechanism ā are back, with a playful twist
Advertisement
ANDREW CAROLāS computers can calculate the solutions to mathematical equations and tell you the exact time and date of a lunar eclipse several hundred years into the future.
Yet these machines compute without a hint of silicon. They crunch numbers without hard drives, wires or batteries. All Carol needs to build his computers are plastic blocks, gears and a hand-operated crank, because his machines are made .
Carolās creations are Toys-R-Us meets steampunk, the science-fiction genre in which modern technology is anachronistically re-imagined in pre-20th century materials like brass, wood and leather. One of his machines is a 1000-piece Lego reconstruction of the Difference Engine, a Victorian mechanical calculator designed to crunch the answers to mathematical formulae automatically. His latest creation is a Lego-based Antikythera mechanism, an ancient Greek machine considered by some historians to be the worldās first computer. With about 2000 parts and 100 gears, it can calculate the position of the sun and moon in the sky centuries ahead of time, something you might expect from a smartphone app but not from a bunch of plastic bricks.
To be sure, he operates outside the traditional Legoverse: you wonāt find many standard Lego bricks in Carolās home in California, and you certainly wonāt see any of the iconic, tiny yellow men known to fans as āminifigsā. Instead, stacks of large, meticulously labelled containers hold thousands of gears, axles and chains from the Danish companyās Technics range ā a more sophisticated line for builders who have exhausted the possibilities of mere bricks. This kind of Lego turns, whirrs and clicks. It forms the guts of Carolās mechanical computers. āThereās probably $8000 to $10,000 worth of parts in this room,ā he says. Like many of Lego hobbyists and artists who build from scratch, Carol scoffs at the notion of buying kits from toy stores, and trades parts on the unofficial website .
His fascination with Lego-based computation began with the Difference Engine, which was conceived by British mathematician Charles Babbage in the 1820s but never fully assembled in his lifetime. It was designed to calculate mathematical tables using gears and levers. Before digital calculators came along, such tables provided the results of functions such as logarithms, which could help sailors to navigate and astronomers to look up the dates and times of celestial events, for example. Babbage wanted to automate the calculations used to build the tables because human errors were rife. āBabbage was so close to creating a mechanical computer, and doing it 100 years before anybody built an electronic one,ā says Carol.
The first complete version of Babbageās design wasnāt built until the 1990s, when a group at the London Science Museum constructed a full-size Difference Engine in metal. āIt really moved me and set me thinking how I could build such a thing in miniature,ā recalls Carol.
Unfortunately, while he certainly knows his onions when it comes to computer programming ā his day job is developing software for Apple ā Carol acknowledges that he doesnāt have much of a knack for welding metal. He was inspired to use Lego as his medium when he stumbled on the work of fellow Californian , who had built a Difference Engine out of , which lets you build your creations with metal girders, gears and bolts. āHe does just astounding things,ā says Carol.
Carolās Lego Difference Engine converts some smart mathematics into the motion of gears. Underlying Babbageās original design is a mathematical approach called the āmethod of finite differencesā. This method breaks down relatively complex mathematics into brute-force repetitions of simple addition.
āCarolās Lego Difference Engine converts smart mathematics into the motion of plastic gearsā
In simple terms, if the work has already been done to multiply 5 by 6, simply adding 5 to your previous total gives you the answer to 5 by 7. Carolās difference engine achieves these sequential additions by passing numerical information between modular clusters of gears (see picture). Each module performs a stage of the method of finite differences by rotating its gears a specific amount, and then passing the result to the next module, which uses that result as the basis of its next calculation, and so on. Each gear cluster is linked to a numerical read-out on the front of the machine (for which Carol stole the wheel hubs of Lego cars).
To get a result from the machine, first you manually programme the rotors with an initial set of numbers. The calculation works upwards from the bottom of the machine, displaying interim results on rows of read-outs as it whirrs and turns toward a final answer. Eventually, the solution appears on a three-digit read-out on the top row.
Carol created three increasingly capable machines. After exhausting the variations on the Difference Engine, he turned to ancient Greece for his next contraption: the Antikythera mechanism, one of the most computationally advanced machines of the ancient world. But he soon realised that building such a thing would necessitate raising his Lego game. āI had to solve the same mathematical problems,ā he says. āBut my mechanisms are very different.ā
To mechanically track the relationship between eclipse cycles and the advance of years, the creators of the Antikythera used gears that turned at specific rates relative to each other. They knew that eclipses in their region of Earth occurred every 18 years, 11 days and 8 hours ā an interval known as a Saros cycle. So they fashioned bronze gears of different sizes that, when combined, would represent key mathematical ratios: for example, enough of these specialised gears working in tandem would represent the 223 lunar months in a Saros cycle.
Yet replicating the gear ratios of the Antikythera design is impossible in Lego ā the company only makes certain gear sizes, and no matter how you combine them, they donāt add up to the crucial ratios.
After many failed attempts, Carol solved the problem by using a type of gear called a differential. These mechanisms are found in car axles to prevent engine damage as you turn corners. As a car steers left or right, one wheel will turn faster than the other. Differential gears on the axle ensure that the average rotation of both wheels matches the engine transmission.
The breakthrough came when Carol realised that these differentials could help him reach the elusive ratios. Their averaging effect could coax adjacent Lego gears into turning at rates that were otherwise impossible. Luckily, Lego manufactured these parts. Four months later, he had a working machine. It even accounts for leap years.
Carolās next project is perhaps his most ambitious ā he wants to build a simple mechanical artificial intelligence. His proto-AI could beat a human at the game noughts and crosses (tic-tac-toe). āIf you make a mistake, it will always win,ā he says. For this undertaking, however, gears wonāt be enough; heāll need to add two different types of Lego chains. Wide links and narrow links could express binary code instructions when fed through a mechanical reader. He has already made a prototype as proof-of-concept. Building a fully operational machine will be something else. āThe mechanical sophistication would have to be pretty serious,ā he says. A toy-de-force indeed.
Make your own ancient Lego tech: āNo magnet required: How to build a compass out of Legoā
This article has had minor edits since it was first posted.