[Erik holding a box-pleated MIT]
sample frame from lecture video (L05)

6.849: Geometric Folding Algorithms: Linkages, Origami, Polyhedra (Fall 2010)

Prof. Erik Demaine


[Home] [Problem Sets] [Project] [Lectures] [Problem Session Notes] [Accessibility]

Erik's Lectures (including video)

These lectures consist of

The video-playing websites below automatically show the relevant handwritten notes and slides (as well as letting you flip through manually), while you watch the video in HTML5 or Flash. Alternatively, you can view the notes and slides in PDF, ideally in Acrobat/Reader or another PDF viewer that supports text annotations. The slides are restricted to images for which Erik owns copyright or a license for distribution, which unfortunately biases their selection.

L01 Sept. 8 Overview of the entire class: Topics and problems considered. [Notes] [Slides] [Video]
L02 Sept. 13

[+] Origami intro: Piece of paper, crease pattern, mountain-valley assignment.
Simple folds: Folding any shape (silhouette or gift wrapping), 1D flat-foldability characterization, 2D map-folding algorithm.

[Notes] [Slides] [Video]
This lecture kicks off a series of lectures about origami. It focuses on a relatively simple kind of origami, called “simple folds”, which involve folding along one straight line by ±180 degrees. These are some of the most “practical” types of folds from an automated manufacturing standpoint, are well-studied mathematically, and a good warmup before we get to complex origami folds which fold many creases at once.

On the design side, we'll see how simple folds are enough to fold any 2D shape, and with slightly more general folds, we can fold any 3D shape even with a two-color pattern on the surface.

On the foldability side, we'll see how to efficiently determine whether a crease pattern with mountains and valleys indicated can be folded flat in two interesting cases: 1D pieces of paper (in other words, parallel creases in a strip of paper) and 2D rectangular maps.

L03 Sept. 15

[+] Single-vertex crease patterns: Characterizations of flat-foldable crease patterns and mountain-valley patterns, combinatorics of the latter, local flat foldability is easy.
Tree method of origami design: Introduction, uniaxial base, demo.

[Notes] [Slides] [Video]
This lecture is about the local behavior of flat folding around each vertex of a crease pattern. In other words, we study each vertex individually, by characterizing all single-vertex crease patterns and mountain-valley patterns that are flat foldable. Then we look at how to combine multiple vertices into a "locally foldable" crease pattern.

We also get started on the tree method of origami design, developed by many Japanese origami designers over the years, and turned into an algorithm and computer program TreeMaker by Robert Lang. This method has been the most successful in transforming complex origami design, and we'll cover more of it next lecture.

L04 Sept. 20

[+] Efficient origami design: Tree method, TreeMaker, uniaxial base, active path, rabbit-ear molecule, universal molecule, Margulis Napkin Problem; cube folding, checkerboard folding; Origamizer, watertight, tuck proxy.

[Notes] [Slides] [Video]
This lecture is all about efficient origami design. We saw in Lecture 2 how to fold anything impractically. Now we'll see how to fold many shapes practically.

First up is the tree method, whose software implementation TreeMaker I demoed at the end of Lecture 3. I'll describe how it lets us fold an optimum stick-figure (tree) origami base, although computing that optimum is actually NP-complete (as we'll see in Lecture 5). This algorithm is used throughout modern complex origami design; I'll show some examples by Robert Lang and our own Jason Ku.

Second we'll look at a simple, fully understood case: the smallest square to fold a cube.

Third we'll look at a classic problem that we made progress on recently: folding an n × n checkerboard from the smallest bicolor square.

Finally we'll look at the latest and most general method, Origamizer, for folding any polyhedron reasonably efficiently. Here we don't have a nice theoretical guarantee on optimality, but the method works well in practice, provably always works, and has other nice features such as watertightness.

L05 Sept. 22

[+] Universal hinge patterns: box pleating, polycubes; orthogonal maze folding.
NP-hardness: introduction, reductions; simple foldability; crease pattern flat foldability; disk packing (for tree method).

[Notes] [Slides] [Video]
This lecture covers two main topics:

First, continuing our theme from Lecture 4 on efficient origami design, we'll see how subsets of a single hinge pattern are enough to fold any orthogonal shape made up of cubes, whereas other approaches use a completely different set of creases for each origami model you want. In general, we can fold n cubes from an O(n) × O(n) square of paper. In the special case of “orthogonal mazes”, we can waste almost no paper, with the folding only a small constant factor smaller than the original piece of paper. You can try out this yourself.

Second, we'll see a few ways in which origami is hard. Specifically, I'll give a brief, practical introduction to NP-hardness, and prove three origami problems NP-hard:

  • folding a given crease pattern via a sequence of simple folds;
  • flat folding a given crease pattern (using any folded state);
  • optimal design of a uniaxial base, even when the tree is just a star.
L06 Sept. 26

[+] Artistic origami design: sampling of representational origami art; tree method and its use.
(guest lecture by Jason Ku)

[Slides] [Video]
This is a guest lecture by Jason Ku, president of OrigaMIT (the MIT origami club), PhD student in mechanical engineering, and prominent origami designer.

His lecture will be about his perspectives on artistic origami design. Lecture 4 outlined the tree method algorithm of origami design. Now we'll see how this method applies in real-world examples.

The first half of the lecture will introduce the artistic side of representational origami. In origami, as in many disciplines, familiarity with the canon of work that already exists can be quite useful in understanding avenues for future creative development. Thus we'll cover the works and styles of a sampling of the world's most renowned paper folders.

The second half of the lecture will focus on the actual design of representational origami art. We will briefly review tree theory, weigh the pros and cons of this design method, and emphasize the relationships between a tree, a circle/river packing, and the locus of possible hinge crease in a uniaxial base. Finally, we'll go through the process of designing an origami model with, then without, the help of TreeMaker.

L07 Sept. 28

[+] Fold and one cut: history, straight-skeleton method, disk-packing method, simple folds, higher dimensions, flattening polyhedra.

[Notes] [Slides] [Video]
This lecture is about my first work in computational origami: folding a piece of paper flat so that one complete straight cut makes a desired pattern of cuts (and resulting polygonal shapes). The problem has a long history (back to the 1700s) and possible applications to airbag folding through a problem called flattening. We'll see two different methods for this problem, each with connections to the tree method of origami design: the first generalizes the universal molecule to nonconvex polygons, but loses the ability to control the shadow tree; the second uses disk packing (but no rivers) and universal molecules for triangles and quadrangles. I'll also talk about a brand new result that started from this class three years ago: what shapes can you make only with simple folds?
L08 Oct. 4

[+] Folding motions: folded states vs. motions; universal foldability of polygonal paper.
Linkages to sign your name: graphs vs. linkages vs. configurations, configuration space; Kempe Universality Theorem, original proof, bug, corrections, generalizations and strengthenings.

[Notes] [Slides] [Video]
This lecture kicks off the beginning of linkage folding. We'll segue from origami by thinking about folding motions of pieces of paper, and prove that it's always possible to reach any folded state of a polygonal piece of paper. How many extra creases do we need? This unsolved question leads to problems in the linkage-folding domain.

Then we'll focus on Kempe's Universality Theorem: there's a linkage to sign your name, or more mathematically, trace any polynomial curve. This proof introduces a bunch of cool gadgets, in particular to add angles and multiply (or divide) angles by constant factors.

L09 Oct. 6

[+] Rigidity theory: Rigidity, generic rigidity, minimal generic rigidity, Henneberg characterization, Laman characterization, polynomial-time algorithm, convex polyhedra.

[Notes] [Slides] [Video]
This lecture is about rigidity theory, which is about telling when a linkage can fold at all. This field goes back to mechanical engineering of the 18th and 19th centuries, with applications to structural engineering and architecture (getting buildings and bridges to stand up), biology (understanding which parts of a protein still move after folding up), and linkage folding itself (beyond just “does it move at all?”, as we'll see in the next lecture).

We'll cover two main theorems characterizing “generically” rigid graphs in 2D. Henneberg's Theorem, from 1911, gives a nice and direct characterization, but it's hard to turn into an algorithm. Laman's Theorem, from 1970, is intuitively harder to work with, but turns into a fast (quadratic-time) algorithm.

Unfortunately, this is all just for 2D, and we don't know any good characterizations for generic rigidity in 3D. I'll briefly describe some nice theorems about the rigidity of convex polyhedra in 3D, though, which in particular explain why Buckminster Fuller's geodesic domes stand up.

L10 Oct. 13

[+] Rigidity theory: Infinitesimal rigidity, rigidity matrix.
Tensegrity theory: tensegrities, equilibrium stress, duality, polyhedral lifting, Maxwell-Cremona Theorem.
Locked linkages: Carpenter's Rule Theorem.

[Notes] [Slides] [Video]
This lecture continues our tour through rigidity theory, introducing two more big ideas: infinitesimal rigidity and tensegrities. Infinitesimal rigidity is a nice way to capture the generic case using linear algebra, and it nicely generalizes (and is efficiently computable) in any dimension. Tensegrities (a term coined by Buckminster Fuller) allow the addition of struts (which prevent compression) and cables (which prevent expansion) in addition to bars (which prevent both—which is what we've mostly been thinking about). A nice special case of tensegrities are “spider webs”, which turn out to relate to the algorithmic design of origami tessellations.

Although not obviously related, the rigidity tools we build up allow us to prove the existence of actual folding motions between any two configurations of “chain linkages” (whose graphs are paths or cycles) whose edges aren't allowed to cross. This Carpenter's Rule Theorem (which was essentially my PhD thesis) kicks off our coverage of understanding when linkages can “lock”.

L11 Oct. 18

[+] Locked linkages: Algorithms for unfolding 2D chains, pseudotriangulation, energy; rigid folding of single-vertex origami; locked trees, infinitesimally locked linkages, Rules 1 and 2; locked 3D chains, knitting needles.

[Notes] [Slides] [Video]
This lecture is about locked linkages. Continuing on from the Carpenter's Rule Theorem from last lecture, which says that 2D chains can't lock, we'll see three different algorithms for folding 2D chains. Each algorithm has varying levels of expansiveness, symmetry, and efficiency, with applications to 2D robot-arm motion planning. We'll also see an application of a spherical version of the Carpenter's Rule Problem to rigid folding of single-vertex origami. Then we'll tour the world of locked 2D trees, which has had significant progress recently. To this end, I'll describe the extensive technology for proving 2D linkages to be locked. Finally we'll briefly look at locked 3D chains, which relates to protein folding.
L12 Oct. 20

[+] Hinged dissections: Locked and unlocked chains of planar shapes, adorned chains, slender adornments, slender implies not locked, Kirszbaun's Theorem, locked triangles with apex angle > 90°; existence of hinged dissections, refinement.

[Notes] [Slides] [Video]
This lecture is about chains of polygons, or other 2D shapes, connected together by hinges in 2D. These structures are classically called “hinged dissections”. On the foldability side, we'll see some surprisingly general situations, called “slender adornments”, where these chains cannot lock, building on the Carpenter's Rule Theorem and expansiveness (Lecture 10). We'll also see some examples that do lock, building on our theory of infinitesimally locked linkages and Rules 1 and 2 (Lecture 11). On the design side, we'll show that we can actually design hinged dissections that fold into any finite collection of desired polygonal shapes, using slender adornments to guarantee foldable motions.
L13 Oct. 25

[+] Polyhedron unfolding: Edge unfoldings, general unfoldings, big questions, curvature, general unfolding of convex polyhedra, source unfolding, star unfolding, edge-unfolding special convex polyhedra, fewest nets, edge-ununfoldable nonconvex polyhedra.

[Notes] [Slides] [Video]
This lecture begins our coverage of polyhedron (un)folding. Specifically, we'll talk about how to cut open a polyhedral surface into one piece without overlap so that that piece can be cut out of sheet material and assembled into the 3D surface. What distinguishes this field from origami is that we're not allowed to cover any part of the surface more than once. Two of the biggest open problems in geometric folding are here:
  1. Does every convex polyhedron have an edge unfolding? This is also the oldest problem, implicit back to 1525.
  2. Does every polyhedron (without boundary) have a general unfolding? This is one of my favorite open problems.
I'll describe the various attacks and partial results toward solving the first problem, as well as the reverse situations where we know much more: general unfolding of convex polyhedra and edge unfolding of general polyhedra.
L14 Oct. 27

[+] Polyhedron unfolding: Vertex unfolding, facet paths, generally unfolding orthogonal polyhedra, grid unfolding, refinement, Manhattan towers, orthostacks, orthotubes, orthotrees.
Polyhedron folding: Cauchy's Rigidity Theorem, Alexandrov's uniqueness of folding.

[Notes] [Slides] [Video]
This lecture continues the theme of unfolding polyhedra, and kicks off our coverage of folding polygons into polyhedra.

On the unfolding side, we'll cover “vertex unfolding”, which is a variation on edge unfolding kind of like hinged dissections. We'll prove that this type of unfolding exists, even for nonconvex polyhedra, provided every face is a triangle. Then we'll cover recent breakthroughs in general unfolding, for orthogonal polyhedra.

On the folding side, we'll prove Cauchy's Rigidity Theorem: convex polyhedra have exactly one convex realization (viewing faces as rigid and edges as hinges). Then we'll show how to extend this to Alexandrov's Uniqueness Theorem: if you glue up the boundary of a polygon, there's at most one convex polyhedron you can make. (Next lecture we'll see how to actually get one.)

L15 Nov. 1

[+] Polyhedron folding: Decision problem, enumeration problem, combinatorial problem, nonconvex solution, convex polyhedral metrics, Alexandrov gluings, Alexandrov's Theorem, Bobenko-Izmestiev constructive proof, pseudopolynomial algorithm, ungluable polygons, perimeter halving, gluing tree, rolling belts.

[Notes] [Slides] [Video]
This lecture dives into the problem of folding polygons into polyhedra. The focus here is on folding convex polyhedra, though there is one nice result about the nonconvex case by Burago & Zalgaller.

The main tool in this area is called Alexandrov's Theorem, from 1941, which characterizes when a gluing of the boundary of a polygon will result in a convex polyhedron; plus, as we saw last lecture, that convex result is always unique. We'll sketch a proof of this theorem as well as recent algorithms for finding the convex polyhedron.

With this tool in hand, we'll explore some different properties of gluings. Some polygons, in fact "most" in a certain sense, have no Alexandrov gluings. Convex polygons, on the other hand, always do. Some polygons have infinitely many gluings, but this always happens in a controlled way with a few "rolling belts". Along the way we'll see gluing trees, a useful tool for analyzing gluings that we'll use in the next lecture for algorithms to find gluings.

L16 Nov. 8

[+] Polyhedron folding: Combinatorial type of gluing, exponential upper and lower bounds for combinatorially distinct gluings, polynomial upper bound for polygons of bounded sharpness, dynamic program for edge-to-edge gluing, including polynomial-time decision, exponential-time dynamic program for general gluing; case studies of Latin cross, equilateral triangle, and square.

[Notes] [Slides] [Video]
This lecture continues our discussion of gluing polygons up and folding them into convex polyhedra, namely, via Alexandrov gluings. Now we'll see algorithms to actually find Alexandrov gluings, as well as give good bounds on how many there can be. Then I'll describe a few case studies: the Latin cross, the equilateral triangle, and the square.
L17 Nov. 10

[+] Polyhedron refolding: Dissection-like open problem, regular tetrahedron to box, Platonic solids to tetrahedra, box to box, polycubes, orthogonal unfoldings with nonorthogonal foldings.
Smooth polyhedron folding: Smooth Alexandrov, D-forms, ribbon curves.
Smooth polyhedron unfolding: Smooth prismatoids.
Smooth origami: wrapping smooth surfaces with flat paper, Mozartkugel, contractive mapping, Burago-Zalgaller Theorem (crinkling/crumpling), stretched path, stretched wrapping, source wrapping, strip wrapping, petal wrapping, comb wrapping, Pareto curve.

[Notes] [Slides] [Video]
This lecture is a big collection of fun results related to unfolding, refolding, and smooth folding:
  • common unfolding of a regular tetrahedron and near-cube
  • common unfoldings of Platonic solids and near-regular tetrahedra
  • common unfoldings of boxes of different sizes
  • common unfoldings of many polycubes
  • orthogonal unfoldings with nonorthgonal foldings
  • smooth Alexandrov's theorem, applied to smooth convex shapes (D-forms)
  • unfolding smooth convex polyhedra (prismatoids)
  • wrapping (paper folding) smooth surfaces like spheres, using a new definition of origami, where distances can shrink instead of necessarily staying the same
The last section has practical applications to computational confectionery, reducing the material usage in wrappings of spherical chocolates such as Mozartkugel. Yum!
L18 Nov. 15

[+] Protein folding: Fixed-angle linkages, tree, and chains; span; flattening; flat-state connectivity, disconnectivity of orthogonal partially rigid trees, connectivity of orthogonal open chains; locked fixed-angle chains; producible protein (fixed-angle) chains, ribosome, β-producible chains, helix-like canonical configuration, flat states are producible, producible states are connected.

[Notes] [Slides] [Video]
This lecture is about fixed-angle linkages in 3D, which have the constraint that the angles (in addition to the lengths) must remain fixed at all times. Fixed-angle linkages model the mechanics of chemical bonds between atoms in a molecule. In particular, the backbone of a biological protein is a fixed-angle tree in this model, and can be approximated by a fixed-angle chain. We'll cover several results about fixed-angle linkages, all motivated by questions about protein folding:
  • Span: What's the farthest or nearest you can fold the endpoints of a fixed-angle chain?
  • Flattening: When does a fixed-angle chain have a non-self-intersecting flat state?
  • Flat-state connectivity: When can a fixed-angle chain be folded without self-intersection between every pair of flat states?
  • Locked: When is a fixed-angle linkage locked? In particular, we'll show that all states of a fixed-angle chain producible by a simple model of the ribosome (which includes all flat states) can reach each other.
A lot is known about each question, though many problems remain open.
L19 Nov. 17

[+] Protein folding: HP model of protein folding, NP-hardness and approximation, unique optimal foldings, protein design.
Interlocked 3D chains: Lubiw's problem, unlocking 2-chains, unlocking two 3-chains and 2-chains, interlocking 3-chains, interlocking 3-chain with 4-chain, interlocking 4-chain with triangle, interlocking 3-chain with quadrangle, topological vs. geometric arguments, rigid and fixed-angle variations.

[Notes] [Slides] [Video]
This lecture continues our discussion on protein folding, this time focusing on simple theoretical models of the forces, rather than the mechanics, behind protein folding. In particular, we'll see the HP model, a lattice model capturing the hydrophobia of certain amino, which try to hide from the surrounding water. Finding the optimal folding a given protein is NP-complete, but there are some decent constant-factor approximations, and it's also not known whether protein design is similarly hard. We'll see one step in the direction of design: guaranteeing a unique optimal folding.

Then we'll turn to a fun problem of interlocked linkages. It's known that you need five bars to lock an open chain, but can you interlock multiple chains each with less than five bars? The answer is yes, with a nearly complete characterization of the possibilities. One consequence we'll see is how to cut a chain of n bars into around n/2 pieces that are not interlocked, while n/4 pieces are necessary.

L20 Nov. 21

[+] Maekawa and Kawasaki's Theorems Revisited and Extended: Maekawa's Theorem, Kawasaki's Theorem, history (Justin, Huffman, Husimi), Robertson's 1977 paper, manifolds without boundary, strata, volumes, degree of map, higher dimensions, Justin's Theorem, Gauss-Bonnet Theorem, tessellations on a sphere
(guest lecture by Thomas Hull)

[Slides] [Video]
The theorems named after Maekawa and Kawasaki are the fundamental theorems of flat origami. They are bread & butter results for modern origami design. What is seldom seen is a result of Jacques Justin that generalizes both of these theorems and shows that they are fundamentally related to each other. We will prove Justin's Theorem in a way that shows how all these flat origami results are just a consequence of the Gauss-Bonnet Theorem. We will also see how Kawasaki's Theorem was actually (kind of) proved previously by a British mathematician named Robertson, except that Robertson's version holds in arbitrary dimension.
L21 Nov. 22

[+] Flips and friends: Pockets, flips, “Erdős-Nagy Theorem”, false and correct proofs; flipturns; deflations; pops.
4D linkages: Chains, trees.

[Notes] [Slides] [Video]
This lecture covers two topics: flipping polygons and unlocking linkages in 4D. We'll see several notions of "flipping", restricted types of motions on 2D polygons that typically use the third dimension during a motion. In particular, we'll look at a problem posed by Erdős in 1935, for which several solutions have appeared in the literature, but most of which are incorrect (and discovered so during this class six years ago). Finally, we'll see how to straighten open chains in 4D, which is a fun stretch of the brain (but surprisingly easy).
L22 Nov. 24

[+] Pleat folding: “Hyperbolic paraboloid”, circular pleat, self-folding origami, plastic deformation and elastic memory; triangulation, interval arithmetic; how paper folds between creases, ruled surfaces, torsal, straight creases stay straight, polygons stay flat; nonexistence.
Inflation: Teabag problem, inflating polyhedra.
Curved creases: Recreating David Huffman's curved-crease folding.

[Notes] [Slides] [Video]
This lecture is primarily about pleat folding, specifically the so-called “hyperbolic paraboloid” model common in origami and originating at the Bauhaus in the late 1920s. Surprisingly, this origami model does not exist: it's impossible to fold anything nonflat with a crease pattern consisting of concentric squares and diagonals. We'll prove this, using a new theory for how paper folds in between creases, in particular showing that straight creases stay straight when folded, and interior polygons stay flat when folded. By contrast, we'll show how the “hyperbolic paraboloid” folds fine after adding specific diagonal creases to the trapezoidal faces.

Afterward, we'll briefly look at a couple of related topics: how to maximally inflate a teabag or other polyhedral surface by folding, and what kind of foldings are possible with curved creases. On the latter topic, I'll overview a big ongoing project in which we're trying to reconstruct the mathematics underlying a beautiful series of sculptures folded by David Huffman from the 1970s–1990s.

L23 Dec. 8

[+] Architectural Origami: Origamizer, Freeform Origami, Rigid Origami Simulator, cylindrical origami, thick origami
(guest lecture by Tomohiro Tachi)

[Slides] [Video]
Origami, the art of folding a sheet of paper into various forms without stretching or cutting, can be applied to structural engineering and design purposes. The applications include the forming of a 3D surface without assembling multiple parts and the construction of kinetic structures such as retractable roofs, openings, temporary shelters, and space structures. In the design process of such applied origami, it is very difficult for the designer to control the form to fit design contexts while preserving the necessary functionalities of the original patterns. Therefore, without sufficient knowledge or intelligent design systems, the resulting designs would end up in either just a mere copy and paste of an existing origami pattern or an "origami inspired" design which is not using the properties of origami in functional ways.

This lecture will present my recent studies on computational origami algorithms and interactive systems to enable architectural designs. The topics include the algorithm for origamizing arbitrary polyhedral surfaces, freeform variation method of different types of origami patterns, and rigid origami theory, design, and physical implementation. The proposed systems are freely available from my website (http://www.tsg.ne.jp/TT/software/): Rigid Origami Simulator, Origamizer, and Freeform Origami. These systems enable origami designs for architecture, i.e., architectural origami, as well as an origami bunny.


Credits

Videography: Martin Demaine Equipment: Video shot with a Canon VIXIA HG21 camera using Manfrotto 701HDV Pro Fluid Video Mini Head on Manfrotto 055XPROB Aluminum Tripod Legs. Audio recorded using Countryman IsoMax E6 EarSet Microphone on camera using Sennheiser EW 112-p G3 wireless microphone system. See our guide to recording video lectures.
Editor: Erik Demaine
Subtitles: OCW