Computational Design and Fabrication

Professor Jonathan Bachrach
with Austin Buchan and Duncan Haldane
EECS, UC Berkeley
Jacobs Design Institute

CS294-119/CS194-028
Fall 2015
Tue/Thu 3:30-5p, Soda 320

4 Units or 3 hours lecture and 3+ hours lab time per week

Prerequisites

Students are required to have strong programming background including CS61AB. CS164 CS184 and CS169 are also important as well as background in basic linear algebra.

Description

This class introduces computational techniques useful for design and fabrication and explores software compilation of high level 3D designs into simple and inexpensive parts ready for rapid manufacturing. Topics include: fabrication processes, material systems, and modern computational techniques for domain specific design, geometric transformations, and algorithmic preparation for fabrication.

Many new computer controlled machines exist theoretically speeding up fabrication, but yet 3D design remains difficult and fabrication remains manually intensive. Breaking with tradition, this course explores the idea of a shape compiler as well as the application of the declarative design method to the design and fabrication of articulated forms to make design and fabrication dramatically more productive. Shape compilers are software applications which transform a high level design into simple and inexpensive parts ready for rapid manufacturing.

Lectures

The lectures and labs cover a progression of building blocks necessary for writing software that describes the fabrication of articulating 3D structures. The class starts by introducing basic geometry and simple CNC machines working from 1D to 3D. From there the class expands into the notion of time, motion and mechanisms to effectively move shapes through space. A series of lectures chosen from below will be offered on topics relevant to the aim of the course:

Readings

Companion readings will be assigned weekly and students will be expected to read them, write a paragraph on them, and report on the reading when randomly called on.

Labs

A series of labs will be offered throughout the semester to introduce required techniques and technologies, and to assist students in the development of their projects. The labs primarily cover geometry, CNC machines, mechanisms, and basic computational techniques. We cover wire bending, laser cutting, milling, and 3d printing. Students work on labs in groups of two. Five late days are available to use at student's discretion.

Project

A single 8 week project will guide student's contributions to the course. In this project, students will study available fabrication processes and material systems in order to develop an "thing compiler", understood as an automated pipeline that rationalizes a personal sized physical form and produces the data required for analysis and fabrication. The project overall will be developed in collaboration with technicians at Jacob's design workshop facilities. Students will work on projects in groups of two or three. Projects should include a formal specification and design rationale as well as a demonstration that the design optimizes a specification.