Dec 6, 2017
Today, I would like to introduce a term called “Computational Design” and its relevant research: Computational design is the application of computational strategies to the design process.
Traditionally, humans have been the ones who learn the logic of the computer (designing software), draw or model the result and decide the final result. The idea behind the Computational Design is that, if the human can describe the principles driving the design in a form that the computer can understand (i.e as an algorithm), then the computer can begin to take on a much larger role in the design process, becoming not just a recipient of the data but also a generator of it, creating the design representation from the rules the designers set. This shift is what marks Computational Design as distinct from the conventional use of computers in more traditional design exercise.
Let’s take a look at the computational design research conducted by the Disney Research Lab. This simulating and fabricating of mechanical characters by an algorithm is slightly outdated (introduced in 2013), but it still gives us good inspiration to how much extend the computer algorithm can be applied. They developed an interactive design system that allows non-expert users to create animated mechanical characters. Given an articulated character as input, the user iteratively creates an animation by sketching motion curves indicating how different parts of the character should move. For each motion curve, their framework creates an optimized mechanism that reproduces it as closely as possible. The resulting mechanisms are attached to the character and then connected to each other using gear trains, which are created in a semi-automated fashion. The mechanical assemblies generated by their system can be driven with a single input driver, such as a hand-operated crank or an electric motor, and they can be fabricated using rapid prototyping devices.
The current computational design research of them is even more exciting. Instead of using different mechanical components (ex. gears or motors) for the joints, they use parameterized flexures (plastic with parameterized flexibility) and made an algorithm that optimizes the mechanical structure for desired target motion.