This was my final project for 6.849: Geometric Folding Algorithms by Prof. Erik Demaine, the happiest genius of the world.
In fact I prefer to call it ‘the origami class’, which sounds more obscure to my friends. And complex, curving origami was indeed what I expected myself to do at the beginning. Well, the field turned out to be much broader and even more interesting (absolutely an understatement).
Anyway one day we were introduced to Kemp’s Universality Theorem, which says ‘there is a linkage that signs your name’. In proving that Kemp invented 3 gadgets: multiplicator, additor and translator, which perform arithmetic operations on any input angle. Then the idea came to me that if we can design gadgets that perform boolean operations, we can build a computer from just hinged bars.
I always had a thing for mechanical computers. The spoof article that talks about the rope-and-pulley computer by Apraphulians was one of my all-time favorite of Scientific Americans. This project might be a little nerdy, but who knows – mechanical logic gates do make sense on nanoscale and in extreme environments like outer space.
Here is how I represent bits with bars. Note that each bar is constrained to rotate in half plane so I gain a nice ‘black box’ feature where the implementation of one gadget does not disrupt the rest of the machine.
Here are the logic gates: translator (moving a logic state across space), invertor (X -> not X), AND gate / OR gate (they are mirrored image of each other). Watch the video to see how they work.
Using the above gadgets I will be able to build a full adder (A, B, Cin as input and S, Cout as output). I’ve made a simple simulation with Processing. Click the input bars to switch states.
The models I constructed use wood sticks and rivets. I also proposed another way of building the gadgets – cut and fold them from one piece of flat material. It would be awesome to cut a whole mechanical computer out of one piece of thin metal, roll it and take it with you to a place with no electricity and do some crazy computation.
I’ll be continuing this project during the winter break. Many thanks to Erik & Martin Demaine and Tomohiro Tachi. It’s been so cool!