1 00:01:15,466 --> 00:01:16,340 PROFESSOR: All right. 2 00:01:16,340 --> 00:01:17,090 Let's get started. 3 00:01:19,460 --> 00:01:23,580 So we have a fun lecture today about efficient origami design. 4 00:01:23,580 --> 00:01:26,670 Last Monday, we did inefficient origami design, 5 00:01:26,670 --> 00:01:27,730 but it was universal. 6 00:01:27,730 --> 00:01:30,000 We could fold anything. 7 00:01:30,000 --> 00:01:31,590 And let's see, Thursday, we talked 8 00:01:31,590 --> 00:01:34,120 about some basic foldability, crease patterns, 9 00:01:34,120 --> 00:01:35,410 what make the valid. 10 00:01:35,410 --> 00:01:37,400 That'll ground us a little bit today 11 00:01:37,400 --> 00:01:40,060 when designing some crease patterns. 12 00:01:40,060 --> 00:01:42,780 Although, we're going to stay fairly high level today 13 00:01:42,780 --> 00:01:45,250 because there are two big methods I want to talk about. 14 00:01:45,250 --> 00:01:47,470 One is tree method which is hit it pretty 15 00:01:47,470 --> 00:01:50,380 big in the impractical origami design. 16 00:01:50,380 --> 00:01:53,070 Lot of modern complex origami designers 17 00:01:53,070 --> 00:01:57,270 use it either in their head or occasionally on a computer. 18 00:01:57,270 --> 00:01:59,160 I demoed it quickly last time. 19 00:01:59,160 --> 00:02:03,390 So we are going to see some level of detail how that works. 20 00:02:03,390 --> 00:02:05,590 And then, I want to talk about Orgamizer 21 00:02:05,590 --> 00:02:08,960 which is one of the latest techniques for designing 22 00:02:08,960 --> 00:02:11,822 crazy, arbitrary, three-dimensional shapes that 23 00:02:11,822 --> 00:02:13,030 seems to be pretty efficient. 24 00:02:13,030 --> 00:02:17,010 Although we don't have a formal sense in which it is efficient, 25 00:02:17,010 --> 00:02:18,990 it has some nice properties. 26 00:02:18,990 --> 00:02:21,260 And it's pretty cool, and I can also demo it. 27 00:02:21,260 --> 00:02:27,330 It's also freely downloadable software for Windows. 28 00:02:27,330 --> 00:02:28,250 Good. 29 00:02:28,250 --> 00:02:32,140 So just to get you motivated a little bit, 30 00:02:32,140 --> 00:02:35,150 I brought a bunch of examples. 31 00:02:35,150 --> 00:02:37,246 I'll show you more later. 32 00:02:37,246 --> 00:02:38,620 But this is the sort of thing you 33 00:02:38,620 --> 00:02:39,786 can do with the tree method. 34 00:02:39,786 --> 00:02:42,540 It's not going to be the tree method as I presented here. 35 00:02:42,540 --> 00:02:44,590 This is a variation on it called box 36 00:02:44,590 --> 00:02:46,760 pleating which you can read about 37 00:02:46,760 --> 00:02:48,430 in Origami Design Secrets. 38 00:02:48,430 --> 00:02:51,120 And I don't think Jason will talk about that either. 39 00:02:51,120 --> 00:02:55,600 But it's a variation on what we'll be talking about. 40 00:02:55,600 --> 00:02:59,640 It lets you do crazy things like these two praying mantises, one 41 00:02:59,640 --> 00:03:01,800 eating the other. 42 00:03:01,800 --> 00:03:03,910 This is a design by Robert Lang. 43 00:03:03,910 --> 00:03:04,849 Fairly new. 44 00:03:04,849 --> 00:03:06,390 I don't have a year here, but I think 45 00:03:06,390 --> 00:03:08,590 it's last year or something. 46 00:03:08,590 --> 00:03:11,700 And that's the sort of thing you can 47 00:03:11,700 --> 00:03:15,070 do getting all the limbs, all the right proportions, even 48 00:03:15,070 --> 00:03:17,870 multiple characters by representing 49 00:03:17,870 --> 00:03:19,630 your model as a stick figure. 50 00:03:19,630 --> 00:03:21,790 And that's what the tree method is 51 00:03:21,790 --> 00:03:24,880 all about and doing that efficiently. 52 00:03:24,880 --> 00:03:30,200 So this is a statement last time of the theorem. 53 00:03:30,200 --> 00:03:32,150 There's some catches to this. 54 00:03:32,150 --> 00:03:33,670 It's an algorithm. 55 00:03:33,670 --> 00:03:35,740 Find a folding of the smallest square 56 00:03:35,740 --> 00:03:40,510 possible into and origami base with the desired 57 00:03:40,510 --> 00:03:45,520 tree as a shadow or as a projection. 58 00:03:45,520 --> 00:03:48,257 So you remember, this kind of picture. 59 00:03:48,257 --> 00:03:49,340 You want to make a lizard. 60 00:03:49,340 --> 00:03:51,900 You specify the lengths of each of these limbs 61 00:03:51,900 --> 00:03:54,120 and how they're connected together into a tree. 62 00:03:54,120 --> 00:04:00,300 And then, you want to build an origami model on top of that, 63 00:04:00,300 --> 00:04:02,290 so to speak. 64 00:04:02,290 --> 00:04:08,160 So that it looks something like this. 65 00:04:12,320 --> 00:04:15,190 And you want to find a square the folds into such a shape. 66 00:04:15,190 --> 00:04:17,200 This projection is exactly that tree. 67 00:04:17,200 --> 00:04:20,320 Now, say it's an algorithm, and it finds the smallest square. 68 00:04:20,320 --> 00:04:23,600 But to do that, essentially requires exponential time. 69 00:04:23,600 --> 00:04:26,670 We'll prove in the next class that this problem, in general, 70 00:04:26,670 --> 00:04:28,370 is NP-complete. 71 00:04:28,370 --> 00:04:30,469 So it's really hard. 72 00:04:30,469 --> 00:04:32,260 But there is an exponential time algorithm, 73 00:04:32,260 --> 00:04:34,270 and I didn't say efficient here. 74 00:04:34,270 --> 00:04:37,080 It's efficient in terms of design, quality, 75 00:04:37,080 --> 00:04:38,260 or in terms of algorithm. 76 00:04:38,260 --> 00:04:40,210 But you have to pick one of the two. 77 00:04:40,210 --> 00:04:43,830 So in TreeMaker the program, there's 78 00:04:43,830 --> 00:04:45,600 an efficient algorithm, which finds 79 00:04:45,600 --> 00:04:47,297 a reasonably good-sized square. 80 00:04:47,297 --> 00:04:48,880 But it's not guaranteed to be optimal. 81 00:04:48,880 --> 00:04:51,200 It's just a local optimum. 82 00:04:51,200 --> 00:04:54,250 In principle, you could spend exponential time here. 83 00:04:54,250 --> 00:04:56,900 So slow algorithm and get the smallest square. 84 00:04:56,900 --> 00:04:58,680 So it depends. 85 00:04:58,680 --> 00:05:00,750 The other catch is this folding. 86 00:05:00,750 --> 00:05:03,570 We're still working on proving that this does not actually 87 00:05:03,570 --> 00:05:07,030 self-intersect in the folded state. 88 00:05:07,030 --> 00:05:08,080 I checked the dates. 89 00:05:08,080 --> 00:05:10,830 We've been working on that for six years. 90 00:05:10,830 --> 00:05:13,340 But it's closing in. 91 00:05:13,340 --> 00:05:16,770 Maybe next year we'll have a draft of this proof. 92 00:05:16,770 --> 00:05:18,405 It's quite-- it's many, many pages. 93 00:05:21,640 --> 00:05:24,010 Good. 94 00:05:24,010 --> 00:05:25,730 So those are the catches. 95 00:05:25,730 --> 00:05:28,960 Now, let me tell you about this term uniaxial. 96 00:05:28,960 --> 00:05:31,470 Essentially, it just means tree shapes. 97 00:05:31,470 --> 00:05:34,050 But I'd like to be a little bit more formal about that. 98 00:05:34,050 --> 00:05:38,120 And last time, I showed you the standard origami bases. 99 00:05:38,120 --> 00:05:41,000 All of these are uniaxial, I think, 100 00:05:41,000 --> 00:05:44,830 except the pinwheel which we folded. 101 00:05:44,830 --> 00:05:47,970 So the pinwheel-- so let me tell you intuitively 102 00:05:47,970 --> 00:05:49,470 what uniaxial means. 103 00:05:49,470 --> 00:05:51,870 It means you can take all these flaps of paper 104 00:05:51,870 --> 00:05:55,590 and lie them, place them along a line. 105 00:05:55,590 --> 00:06:00,120 And the hinges between those flaps 106 00:06:00,120 --> 00:06:02,670 are all perpendicular to that line. 107 00:06:02,670 --> 00:06:06,500 So this is the axis. 108 00:06:06,500 --> 00:06:09,330 Whereas something like this, essentially there 109 00:06:09,330 --> 00:06:10,780 are four axes. 110 00:06:10,780 --> 00:06:14,240 The flaps are here, or two axes I guess. 111 00:06:14,240 --> 00:06:15,980 But definitely not one. 112 00:06:15,980 --> 00:06:18,790 So these cannot be lined up along a line, 113 00:06:18,790 --> 00:06:22,880 even if you've flapped them around some other way. 114 00:06:22,880 --> 00:06:24,740 That's intuitive definition. 115 00:06:24,740 --> 00:06:27,960 Multiaxial is not a formally defined thing. 116 00:06:27,960 --> 00:06:30,390 But uniaxial we can formally define. 117 00:06:30,390 --> 00:06:34,520 And it will capture things like this water bomb base, 118 00:06:34,520 --> 00:06:40,370 all the other bases there, as well as bases like this. 119 00:06:40,370 --> 00:06:43,100 And it's defined by Robert Lang, I 120 00:06:43,100 --> 00:06:48,185 think probably around '94 was the first publication. 121 00:06:59,550 --> 00:07:02,105 And it's just a bunch of conditions. 122 00:07:11,170 --> 00:07:13,600 And a bunch of them are just technical to make things work 123 00:07:13,600 --> 00:07:16,090 out mathematically. 124 00:07:16,090 --> 00:07:20,010 First thing I'd like to say is that the entire base-- base 125 00:07:20,010 --> 00:07:24,380 just means origami for our purposes. 126 00:07:24,380 --> 00:07:27,060 It's sort of practical distinction 127 00:07:27,060 --> 00:07:28,940 not a mathematical one. 128 00:07:28,940 --> 00:07:31,410 Is that everything lies above the floor. 129 00:07:31,410 --> 00:07:34,040 So the floor is equal to zero, and we'll just 130 00:07:34,040 --> 00:07:35,260 say everything's above that. 131 00:07:35,260 --> 00:07:37,260 And the action is going to be in the floor. 132 00:07:37,260 --> 00:07:39,570 That's where I've drawn it that way. 133 00:07:39,570 --> 00:07:41,890 Here, there's a floor. 134 00:07:41,890 --> 00:07:44,460 And the tree is going to lie on the floor, 135 00:07:44,460 --> 00:07:45,890 and everything else is above that. 136 00:07:49,000 --> 00:07:49,935 Second property. 137 00:07:57,670 --> 00:08:01,530 Sort of a shadow property. 138 00:08:01,530 --> 00:08:03,940 If I look at where the base meets 139 00:08:03,940 --> 00:08:08,310 the floor is equals to zero, that's the same thing 140 00:08:08,310 --> 00:08:11,740 as if I look at the shadow onto the floor. 141 00:08:18,890 --> 00:08:21,890 This is essentially saying that this base does not 142 00:08:21,890 --> 00:08:23,730 have any overhang. 143 00:08:23,730 --> 00:08:26,680 So if it had, for example, some feature 144 00:08:26,680 --> 00:08:31,650 like this that hung over its shadow-- was more-- 145 00:08:31,650 --> 00:08:32,340 went out here. 146 00:08:32,340 --> 00:08:34,350 The shadow goes out here, but the base does not. 147 00:08:34,350 --> 00:08:35,610 That's not allowed. 148 00:08:35,610 --> 00:08:37,289 So I want everything-- actually want 149 00:08:37,289 --> 00:08:41,809 things to get smaller as you go up in z. 150 00:08:41,809 --> 00:08:44,735 This is a stronger statement of property two. 151 00:08:48,290 --> 00:08:50,300 And then, I want to define this notion flaps. 152 00:08:53,070 --> 00:08:58,410 And the basic idea is that you have 153 00:08:58,410 --> 00:09:01,020 faces of the crease pattern. 154 00:09:08,310 --> 00:09:12,260 so the faces are just the regions 155 00:09:12,260 --> 00:09:15,250 we get out of the creases, all these triangles for example. 156 00:09:15,250 --> 00:09:17,170 I can divide them, partition them 157 00:09:17,170 --> 00:09:18,930 into groups which I call flaps. 158 00:09:18,930 --> 00:09:23,020 So for example, these two guys over here form one flap. 159 00:09:23,020 --> 00:09:24,360 They fold together. 160 00:09:24,360 --> 00:09:26,430 They're going to be manipulated together. 161 00:09:26,430 --> 00:09:28,955 And so in this case, I'll get four flaps. 162 00:09:42,790 --> 00:09:44,480 Anything I want to say here? 163 00:09:44,480 --> 00:09:45,310 Yeah. 164 00:09:45,310 --> 00:10:01,400 Each flap is going to project to a line segment. 165 00:10:12,470 --> 00:10:14,800 It's going to be one of the edges of the tree. 166 00:10:17,340 --> 00:10:19,760 So then, there's the notion of a hinge crease. 167 00:10:26,300 --> 00:10:31,690 And these are just creases shared by two flaps. 168 00:10:31,690 --> 00:10:38,270 So they're the creases that separate one flap from another. 169 00:10:41,150 --> 00:10:49,300 These will always require that they projects to a point. 170 00:10:51,910 --> 00:10:54,650 So this is equivalent to saying the hinge crease is vertical. 171 00:10:54,650 --> 00:10:56,320 It's perpendicular to the floor. 172 00:10:56,320 --> 00:10:58,800 I'm always projecting straight down onto the floor 173 00:10:58,800 --> 00:11:04,680 orthographically, just setting z to zero. 174 00:11:04,680 --> 00:11:08,950 And so that's saying these are the hinges. 175 00:11:08,950 --> 00:11:12,000 They should be vertical. 176 00:11:12,000 --> 00:11:13,690 So projection is a point. 177 00:11:13,690 --> 00:11:15,390 And then from those two properties, 178 00:11:15,390 --> 00:11:18,225 I can define a graph which I want to be a tree. 179 00:11:28,820 --> 00:11:32,910 So each flap I want to make an edge of my graph. 180 00:11:32,910 --> 00:11:35,050 And that edge is going to be the line segment 181 00:11:35,050 --> 00:11:39,200 that the flap projects, each flat projects to. 182 00:11:39,200 --> 00:11:42,580 And I'm going to connect those edges together 183 00:11:42,580 --> 00:11:52,995 at vertices when the flaps share the hinge crease. 184 00:12:01,620 --> 00:12:02,120 All right. 185 00:12:02,120 --> 00:12:04,630 That's a graph which you can define. 186 00:12:04,630 --> 00:12:07,294 And that graph is a tree. 187 00:12:07,294 --> 00:12:08,210 That's the constraint. 188 00:12:10,720 --> 00:12:12,645 And I think I have even more. 189 00:12:15,680 --> 00:12:16,960 I've got one more property. 190 00:12:37,140 --> 00:12:40,220 I think I actually want projects here. 191 00:12:40,220 --> 00:12:41,451 Let's try that. 192 00:12:45,540 --> 00:12:46,040 All right. 193 00:12:46,040 --> 00:12:49,940 This is a bunch of formalism to state what's pretty intuitive. 194 00:12:49,940 --> 00:12:54,920 I want all the flaps of paper to be vertical, 195 00:12:54,920 --> 00:12:57,710 so they project to a line segment. 196 00:12:57,710 --> 00:13:03,140 When I look from the-- when I look at the projection, 197 00:13:03,140 --> 00:13:06,380 I can define a graph where there's 198 00:13:06,380 --> 00:13:09,200 an edge for each flap, where it's projecting. 199 00:13:09,200 --> 00:13:10,992 And I join those edges together. 200 00:13:10,992 --> 00:13:12,700 Here, I'm joinging four them at a vertex. 201 00:13:12,700 --> 00:13:17,020 Because if you unfold it, they all share hinge creases. 202 00:13:17,020 --> 00:13:19,330 Hinge creases in this case are the perpendicular. 203 00:13:19,330 --> 00:13:22,230 These four guys. 204 00:13:22,230 --> 00:13:26,180 So because-- it's hard to manipulate. 205 00:13:26,180 --> 00:13:27,420 I've got a flap over here. 206 00:13:27,420 --> 00:13:28,340 A flap over here. 207 00:13:28,340 --> 00:13:32,700 They share a hinge, so I connect them together in the graph. 208 00:13:32,700 --> 00:13:35,966 It's just a formal way to make the graph correct. 209 00:13:35,966 --> 00:13:40,090 It may seem tedious, but this definition 210 00:13:40,090 --> 00:13:42,715 sidesteps some issues which would occur if you defined it 211 00:13:42,715 --> 00:13:45,340 in the more obvious way which is just take the projection, 212 00:13:45,340 --> 00:13:46,851 call it a tree. 213 00:13:46,851 --> 00:13:48,350 But I don't want to get into why you 214 00:13:48,350 --> 00:13:49,980 need to do it this way exactly. 215 00:13:49,980 --> 00:13:51,940 Maybe, we'll see it at some point. 216 00:13:51,940 --> 00:13:54,250 Essentially, some flaps can be hidden inside others, 217 00:13:54,250 --> 00:13:56,370 so you need this definition for it to really work. 218 00:13:59,260 --> 00:14:01,110 And then, there's this extra constraint 219 00:14:01,110 --> 00:14:04,580 which is that my base is pointy at the leaves. 220 00:14:04,580 --> 00:14:07,320 Leaves are the vertices of the tree 221 00:14:07,320 --> 00:14:09,320 to have only one incident edge. 222 00:14:09,320 --> 00:14:12,060 And so I want there to be only one 223 00:14:12,060 --> 00:14:13,800 point that lives at the leaf. 224 00:14:13,800 --> 00:14:15,720 Obviously, elsewhere in the tree, 225 00:14:15,720 --> 00:14:18,267 there's a whole bunch of points, a whole vertical segment, 226 00:14:18,267 --> 00:14:19,600 that all projects to that point. 227 00:14:19,600 --> 00:14:21,134 Here, I just want one. 228 00:14:21,134 --> 00:14:22,800 That's important because I want to think 229 00:14:22,800 --> 00:14:24,010 about where the leaves are. 230 00:14:24,010 --> 00:14:25,790 And the whole idea in the tree method 231 00:14:25,790 --> 00:14:28,790 is to think about how to place the leaves on your piece 232 00:14:28,790 --> 00:14:33,790 of paper so that this folding exists. 233 00:14:33,790 --> 00:14:35,330 So that's what we're going to do. 234 00:14:51,220 --> 00:14:54,619 The tree method is kind of surprising in its simplicity. 235 00:14:54,619 --> 00:14:56,410 There's a bunch of details to make it work. 236 00:14:56,410 --> 00:15:00,350 But the idea is actually very simple. 237 00:15:00,350 --> 00:15:04,680 Let's suppose you want ability uniaxial base. 238 00:15:04,680 --> 00:15:06,930 I'll tell you something that must be satisfied 239 00:15:06,930 --> 00:15:09,915 by your uniaxial base, a necessary condition. 240 00:15:12,490 --> 00:15:21,337 Assuming you're starting from a convex piece of paper, which 241 00:15:21,337 --> 00:15:23,725 is the case we usually care about. 242 00:15:23,725 --> 00:15:26,240 Actually, we're starting from a square, a rectangle, 243 00:15:26,240 --> 00:15:29,970 or something convex. 244 00:15:29,970 --> 00:15:31,120 Here's what has to be true. 245 00:15:49,740 --> 00:15:55,900 I didn't give a name, but this graph 246 00:15:55,900 --> 00:15:57,510 that's supposed to be a tree, I'm 247 00:15:57,510 --> 00:16:05,850 going to call the shadow tree for obvious reasons. 248 00:16:05,850 --> 00:16:09,200 And now, I want to take two points in the shadow tree, 249 00:16:09,200 --> 00:16:11,990 measure their distance in a tree sense. 250 00:16:11,990 --> 00:16:16,370 So I have some tree like this. 251 00:16:16,370 --> 00:16:20,130 I have two points like, say, this point and that point. 252 00:16:20,130 --> 00:16:22,910 The distance between them is the distance as 253 00:16:22,910 --> 00:16:26,850 measured if you had to walk in the tree, how far is it 254 00:16:26,850 --> 00:16:28,490 to go from here to here. 255 00:16:28,490 --> 00:16:30,100 And because our tree is a metric tree, 256 00:16:30,100 --> 00:16:31,849 because we specified all the edge lengths, 257 00:16:31,849 --> 00:16:34,850 we can just add up those lengths, measure them. 258 00:16:34,850 --> 00:16:38,160 And that's the distance between two points in the tree. 259 00:16:38,160 --> 00:16:42,330 That must be less than or equal to the distance 260 00:16:42,330 --> 00:16:46,200 between those two points on the piece of paper. 261 00:17:06,960 --> 00:17:08,730 What does that mean? 262 00:17:08,730 --> 00:17:12,160 So on piece of paper that's convex-- 263 00:17:12,160 --> 00:17:17,089 so it might not be a square, but square's easier picture draw. 264 00:17:17,089 --> 00:17:20,060 The distance between them is that. 265 00:17:20,060 --> 00:17:22,260 Pretty simple. 266 00:17:22,260 --> 00:17:24,599 So what does this mean? 267 00:17:24,599 --> 00:17:25,750 I'm taking this square. 268 00:17:25,750 --> 00:17:28,119 Somehow, I'm folding it into a base 269 00:17:28,119 --> 00:17:30,650 whose projection is the tree. 270 00:17:30,650 --> 00:17:36,630 So I look at these two points, p and q, 271 00:17:36,630 --> 00:17:38,940 I fold them somewhere in the 3D picture 272 00:17:38,940 --> 00:17:40,980 which is not drawn up here. 273 00:17:40,980 --> 00:17:46,070 Those points-- so maybe there's a p up here and a q up here. 274 00:17:46,070 --> 00:17:49,380 I project those points down onto the floor which 275 00:17:49,380 --> 00:17:53,000 is going to fall on the tree by this definition. 276 00:17:53,000 --> 00:17:56,390 Call that, let's say, p prime for the projected version of p, 277 00:17:56,390 --> 00:17:58,160 q prime. 278 00:17:58,160 --> 00:18:00,360 I measure the distance here. 279 00:18:00,360 --> 00:18:04,186 That has to be-- the distance between p prime 280 00:18:04,186 --> 00:18:05,560 and q prime in the tree should be 281 00:18:05,560 --> 00:18:07,950 less than or equal to the distance between p and q 282 00:18:07,950 --> 00:18:11,110 in the piece of paper, for every pair points p and q. 283 00:18:11,110 --> 00:18:13,870 That's the condition. 284 00:18:13,870 --> 00:18:19,650 It's almost trivial to show because when 285 00:18:19,650 --> 00:18:23,490 I take this segment of paper, I fold the piece of paper. 286 00:18:23,490 --> 00:18:26,250 But in particular, I fold p and q somehow. 287 00:18:26,250 --> 00:18:29,280 I can't get p and q farther away from each other 288 00:18:29,280 --> 00:18:32,650 because folding only makes things closer. 289 00:18:32,650 --> 00:18:35,530 There, I'm assuming that the piece of paper is convex. 290 00:18:35,530 --> 00:18:37,704 There's no way to fold and stretch pq 291 00:18:37,704 --> 00:18:39,120 because that's a segment of paper. 292 00:18:39,120 --> 00:18:41,670 It can only contract. 293 00:18:41,670 --> 00:18:44,950 I mean, you can fold the segment something like this. 294 00:18:44,950 --> 00:18:47,170 Then, the distance between p and q 295 00:18:47,170 --> 00:18:50,890 gets smaller than the length of this segment. 296 00:18:50,890 --> 00:18:55,460 Because if I took this-- this line segment of paper that got 297 00:18:55,460 --> 00:18:56,650 folded. 298 00:18:56,650 --> 00:18:58,240 If I project it onto the line here, 299 00:18:58,240 --> 00:19:01,120 it's only going to get shorter. 300 00:19:01,120 --> 00:19:02,030 So I fold p and q. 301 00:19:02,030 --> 00:19:05,750 They get closer in three-space. 302 00:19:05,750 --> 00:19:08,430 And then, I project them down to the floor. 303 00:19:08,430 --> 00:19:11,750 They can also only get closer when I do that. 304 00:19:16,170 --> 00:19:18,476 So that's essentially the proof. 305 00:19:18,476 --> 00:19:20,220 Do I need to spell that out? 306 00:19:20,220 --> 00:19:22,850 So you have the line segment on the paper. 307 00:19:22,850 --> 00:19:23,410 You fold it. 308 00:19:23,410 --> 00:19:24,420 It gets shorter. 309 00:19:24,420 --> 00:19:25,880 You project it onto the floor. 310 00:19:25,880 --> 00:19:26,730 It also get shorter. 311 00:19:26,730 --> 00:19:28,465 Therefore, whatever this distance 312 00:19:28,465 --> 00:19:31,320 is on the tree has to be less than or equal to the distance 313 00:19:31,320 --> 00:19:32,310 you started with. 314 00:19:32,310 --> 00:19:34,400 So this may seem kind of trivial. 315 00:19:34,400 --> 00:19:40,180 But the surprising thing is it this is really all you need. 316 00:19:40,180 --> 00:19:43,227 So this is true between any two points in the shadow tree. 317 00:19:43,227 --> 00:19:45,060 In fact, we're going to focus on the leaves. 318 00:19:45,060 --> 00:19:47,750 We'll say, all right, so in particular, I've 319 00:19:47,750 --> 00:19:51,750 got a place this leaf, and each of these six leaves here, 320 00:19:51,750 --> 00:19:54,430 I have to place them somewhere on the piece of paper. 321 00:19:54,430 --> 00:19:58,310 I better do it so that that condition is satisfied. 322 00:19:58,310 --> 00:20:01,150 I have to place these two leaves and the piece of paper-- 323 00:20:01,150 --> 00:20:06,637 let's say this distance is one, and this distance is one. 324 00:20:06,637 --> 00:20:08,970 These two leaves have to be placed on the piece of paper 325 00:20:08,970 --> 00:20:12,110 such that their distance is at least two. 326 00:20:12,110 --> 00:20:14,870 And the distance between these two guys has to be at least two 327 00:20:14,870 --> 00:20:17,300 and between these two guys has to be at least two. 328 00:20:17,300 --> 00:20:18,620 And same over here. 329 00:20:18,620 --> 00:20:20,270 Let's say all the edge lengths are one. 330 00:20:20,270 --> 00:20:24,940 And the distance between, say, this leaf and this leaf 331 00:20:24,940 --> 00:20:27,840 has to be at least three because the distance in the tree 332 00:20:27,840 --> 00:20:29,510 is three. 333 00:20:29,510 --> 00:20:32,945 So at the very least, we should place the points on the paper 334 00:20:32,945 --> 00:20:34,570 so that those conditions are satisfied, 335 00:20:34,570 --> 00:20:36,767 and it turns out, that's enough as long 336 00:20:36,767 --> 00:20:39,350 as you find a placement of the points such as those conditions 337 00:20:39,350 --> 00:20:40,260 are satisfied. 338 00:20:40,260 --> 00:20:43,230 There will be a folding where those leaves actually come 339 00:20:43,230 --> 00:20:44,710 from those points of paper. 340 00:20:44,710 --> 00:20:46,500 That's the crazy part. 341 00:20:46,500 --> 00:20:50,070 But this idea is actually kind of obvious in some sense. 342 00:20:50,070 --> 00:20:52,390 I mean, once you know it, it's really obvious. 343 00:20:52,390 --> 00:20:57,010 But what's surprising is it this is all you need to worry about. 344 00:20:57,010 --> 00:21:01,490 There's a lot of details that make that work, but you can. 345 00:21:01,490 --> 00:21:06,940 So let me just mention one detail 346 00:21:06,940 --> 00:21:09,960 which is the scale factor. 347 00:21:09,960 --> 00:21:12,730 If you fix the size, the edge lengths 348 00:21:12,730 --> 00:21:14,510 on the tree which is the usual, which 349 00:21:14,510 --> 00:21:17,430 is one way to think about it, and you 350 00:21:17,430 --> 00:21:19,750 start with some square-- like if I start with a one 351 00:21:19,750 --> 00:21:22,166 by one square, there's no way I'm going to fold that tree. 352 00:21:22,166 --> 00:21:24,737 There's just not enough distance in the square. 353 00:21:24,737 --> 00:21:26,820 So what I'd like to do is find the smallest square 354 00:21:26,820 --> 00:21:28,970 that can fold into this thing. 355 00:21:28,970 --> 00:21:31,810 Or equivalently find-- you can think of scaling 356 00:21:31,810 --> 00:21:34,110 the piece of paper, or you can think of scaling 357 00:21:34,110 --> 00:21:37,150 the tree with a fixed piece of paper. 358 00:21:37,150 --> 00:21:38,850 Doesn't really matter. 359 00:21:38,850 --> 00:21:42,930 In general, you get this problem which 360 00:21:42,930 --> 00:21:44,259 I'll call scale optimization. 361 00:21:44,259 --> 00:21:45,300 This is the hard problem. 362 00:21:53,970 --> 00:22:19,000 So let's say-- just defining some variables. 363 00:22:19,000 --> 00:22:22,470 So P i, I'm going to maybe number the leaves 364 00:22:22,470 --> 00:22:25,150 or label label them somehow, various letters. 365 00:22:25,150 --> 00:22:27,800 And then, P i is going to be the point where 366 00:22:27,800 --> 00:22:30,200 that-- of paper that actually forms 367 00:22:30,200 --> 00:22:32,020 that leaf in the folded state. 368 00:22:32,020 --> 00:22:36,924 That leaf which corresponds to a single point of paper 369 00:22:36,924 --> 00:22:37,840 projects to that leaf. 370 00:22:40,900 --> 00:22:45,190 And then, my goal is to maximize some scale 371 00:22:45,190 --> 00:22:46,755 factor which I'll call lambda. 372 00:22:50,990 --> 00:22:56,150 Subject to a bunch of constraints which are just 373 00:22:56,150 --> 00:23:00,910 those constraints, except that I add a scale factor. 374 00:23:10,100 --> 00:23:14,705 So for every pair of leaves, i and j, 375 00:23:14,705 --> 00:23:16,080 I'm going to measure the distance 376 00:23:16,080 --> 00:23:18,190 between those leaves in the tree. 377 00:23:18,190 --> 00:23:19,930 This as a tree distance. 378 00:23:19,930 --> 00:23:21,870 Compare that to the distance and the piece 379 00:23:21,870 --> 00:23:25,450 of paper between those two points, the Euclidean distance. 380 00:23:25,450 --> 00:23:26,980 And instead of requiring that this 381 00:23:26,980 --> 00:23:28,820 is greater than or equal to this, which is the usual one, 382 00:23:28,820 --> 00:23:30,950 I'm going to add in the scale factor which 383 00:23:30,950 --> 00:23:35,110 you can think of as shrinking this or expanding that. 384 00:23:35,110 --> 00:23:36,540 It doesn't matter. 385 00:23:36,540 --> 00:23:41,630 But I want to-- because here I'm sort of shrinking this amount. 386 00:23:41,630 --> 00:23:44,840 I want to maximize that factor, so I 387 00:23:44,840 --> 00:23:47,360 shrink it the least possible. 388 00:23:47,360 --> 00:23:51,560 You can formulate it this way or maybe a more intuitive way. 389 00:23:51,560 --> 00:23:54,640 But this is the standard set up. 390 00:23:54,640 --> 00:23:57,500 And this is something-- this is called a nonlinear optimization 391 00:23:57,500 --> 00:23:58,000 problem. 392 00:23:58,000 --> 00:24:01,060 It's something that lots of people think about. 393 00:24:01,060 --> 00:24:02,770 There are heuristics to solve it. 394 00:24:02,770 --> 00:24:04,815 You can solve in an exponential time. 395 00:24:04,815 --> 00:24:06,440 In general, it's NP-complete, and we'll 396 00:24:06,440 --> 00:24:10,190 see next class that actually this problem of origami design 397 00:24:10,190 --> 00:24:11,540 is NP-complete. 398 00:24:11,540 --> 00:24:14,850 So there's not going to be anything better than heuristics 399 00:24:14,850 --> 00:24:16,175 and and slow algorithms. 400 00:24:18,730 --> 00:24:20,670 So the idea is, you solve that. 401 00:24:20,670 --> 00:24:25,610 Now, you have your leaves on your piece of paper somewhere. 402 00:24:25,610 --> 00:24:27,090 Now what? 403 00:24:27,090 --> 00:24:31,730 Now, you have to figure out how everything folds. 404 00:24:31,730 --> 00:24:34,430 That's where we get to some real combinatorial, 405 00:24:34,430 --> 00:24:37,656 some discrete geometry. 406 00:24:37,656 --> 00:24:38,570 Fun stuff. 407 00:24:44,770 --> 00:24:45,270 Yeah. 408 00:24:45,270 --> 00:24:48,750 I have one extra motivation here. 409 00:24:48,750 --> 00:24:50,200 Origami design is fun, but here's 410 00:24:50,200 --> 00:24:51,810 a puzzle you can solve, too. 411 00:24:56,170 --> 00:24:57,550 Which we can already see. 412 00:25:05,020 --> 00:25:07,860 Margulis napkin problem. 413 00:25:07,860 --> 00:25:09,990 Origin of this problem is not entirely clear, 414 00:25:09,990 --> 00:25:13,690 but I think it came from Russia originally. 415 00:25:13,690 --> 00:25:18,060 And the problem, the puzzle is usually stated as follows. 416 00:25:18,060 --> 00:25:21,400 Prove that if you take a unit square paper-- 417 00:25:21,400 --> 00:25:25,400 so it has perimeter four that you can, 418 00:25:25,400 --> 00:25:29,770 no matter how you fold it, the perimeter always gets smaller. 419 00:25:29,770 --> 00:25:31,684 Never bigger than four. 420 00:25:31,684 --> 00:25:33,100 We used a very similar thing here. 421 00:25:33,100 --> 00:25:34,766 We said, if you have two points, they're 422 00:25:34,766 --> 00:25:36,690 distance can only get smaller. 423 00:25:36,690 --> 00:25:38,230 That's true. 424 00:25:38,230 --> 00:25:41,300 Margulis napkin puzzle is not true. 425 00:25:41,300 --> 00:25:42,330 That's the difference. 426 00:25:42,330 --> 00:25:44,481 Perimeter is different from distance. 427 00:25:44,481 --> 00:25:46,230 And in fact, you can fold a piece of paper 428 00:25:46,230 --> 00:25:49,610 to make the perimeter arbitrarily large, 429 00:25:49,610 --> 00:25:50,567 which is pretty crazy. 430 00:25:50,567 --> 00:25:52,150 And this is something that Robert Lang 431 00:25:52,150 --> 00:25:55,720 proved few years ago, using-- 432 00:25:55,720 --> 00:25:58,530 It's sort of easy once you have the fact-- which 433 00:25:58,530 --> 00:26:02,150 I haven't quite written down here, but I've been saying. 434 00:26:02,150 --> 00:26:05,520 As long as you place your points subject to this property, 435 00:26:05,520 --> 00:26:08,290 there is a folding that has that shadow tree. 436 00:26:10,890 --> 00:26:13,620 And so the idea with the Margulis napkin problem 437 00:26:13,620 --> 00:26:17,080 is let's make a really spiky tree, a star. 438 00:26:20,810 --> 00:26:23,720 I want to fold the smallest square possible, 439 00:26:23,720 --> 00:26:25,780 so that projection is this thing. 440 00:26:25,780 --> 00:26:31,750 Let's say that it has-- I won't say how many limbs it has. 441 00:26:31,750 --> 00:26:35,190 But the idea is, if you're using paper efficiently, in fact, 442 00:26:35,190 --> 00:26:37,600 the folding will be very narrow. 443 00:26:37,600 --> 00:26:41,060 It'll be a pretty efficient use of paper, hopefully. 444 00:26:41,060 --> 00:26:43,640 And so the actual 3D state will just 445 00:26:43,640 --> 00:26:46,960 be a little bit taller than that tree. 446 00:26:46,960 --> 00:26:48,510 And then, you just wash it. 447 00:26:48,510 --> 00:26:50,330 And the idea is that then the perimeter is really big. 448 00:26:50,330 --> 00:26:51,788 You've got a-- the perimeter as you 449 00:26:51,788 --> 00:26:53,370 walk around the edges of that tree. 450 00:26:53,370 --> 00:26:56,760 So how big a tree can I get? 451 00:26:56,760 --> 00:26:59,330 I'd like to somehow place these leaves-- now, 452 00:26:59,330 --> 00:27:01,640 what's the constraint on the leaves? 453 00:27:01,640 --> 00:27:04,480 Let's say all of these are length one. 454 00:27:04,480 --> 00:27:06,700 Then, this says it every pair of leaves 455 00:27:06,700 --> 00:27:10,150 must be at least distance two way from each other. 456 00:27:10,150 --> 00:27:12,900 So I got to place these dots in the square 457 00:27:12,900 --> 00:27:15,100 so that every pair has distance at least two. 458 00:27:15,100 --> 00:27:18,350 This is like saying-- here's my square. 459 00:27:18,350 --> 00:27:22,384 --I'd like to place dots so their distance is 460 00:27:22,384 --> 00:27:23,300 at least distance two. 461 00:27:23,300 --> 00:27:25,150 That's like saying if, I drew a unit 462 00:27:25,150 --> 00:27:29,910 disk around two points-- I got to remember. 463 00:27:29,910 --> 00:27:32,530 You should always draw the disk first and then the center. 464 00:27:32,530 --> 00:27:33,900 Much easier. 465 00:27:33,900 --> 00:27:36,460 Those disks should not be overlapping. 466 00:27:36,460 --> 00:27:41,750 If this is length one, and this is length one, 467 00:27:41,750 --> 00:27:43,650 the disks will be overlapping if and only 468 00:27:43,650 --> 00:27:46,140 if this distance is smaller than two. 469 00:27:46,140 --> 00:27:48,420 I want it always to be greater than or equal to two. 470 00:27:48,420 --> 00:27:52,677 So I just have to place a whole bunch of disks in the square 471 00:27:52,677 --> 00:27:54,010 so that they're not overlapping. 472 00:27:54,010 --> 00:27:57,690 So how big a square do I need to do that? 473 00:27:57,690 --> 00:28:00,850 This is a well-studied problem, is the disk packing problem. 474 00:28:00,850 --> 00:28:02,670 A lot of results known about it. 475 00:28:02,670 --> 00:28:04,450 It's quite difficult. 476 00:28:04,450 --> 00:28:07,910 But we don't need to be super smart here to get a good bound. 477 00:28:07,910 --> 00:28:12,830 Let's put a point-- let's put points along a grid. 478 00:28:12,830 --> 00:28:14,660 I'm going to regret making such a big grid. 479 00:28:18,960 --> 00:28:21,640 Let's say, an n by n grid. 480 00:28:27,380 --> 00:28:30,545 And I'm going to set the size of my disks 481 00:28:30,545 --> 00:28:33,305 right so that these guys just barely touch. 482 00:28:38,290 --> 00:28:40,870 This is actually not a terribly good packing. 483 00:28:40,870 --> 00:28:43,810 You should do a triangular grid instead of a square grid. 484 00:28:43,810 --> 00:28:47,610 But it'll be good enough asymptotically. 485 00:28:47,610 --> 00:28:49,070 You get the idea. 486 00:28:49,070 --> 00:28:52,840 If I set the size of my paper to be n by n, 487 00:28:52,840 --> 00:28:58,030 I can fit about n squared unit disks in there. 488 00:28:58,030 --> 00:29:05,340 N by n paper folds something like n plus 1 squared. 489 00:29:05,340 --> 00:29:10,320 But let's just say, approximately n squared disks. 490 00:29:10,320 --> 00:29:16,170 So that means I can make a star with about n squared limbs. 491 00:29:16,170 --> 00:29:17,990 It's insane. 492 00:29:17,990 --> 00:29:19,400 It's like super efficient. 493 00:29:19,400 --> 00:29:21,100 Each of these little portions of paper 494 00:29:21,100 --> 00:29:22,599 ends up being one of these segments. 495 00:29:22,599 --> 00:29:24,620 That's the claim is, you could fold that. 496 00:29:24,620 --> 00:29:27,230 So once you fold this thing, I have an n by n square. 497 00:29:27,230 --> 00:29:30,100 You started with perimeter about four n 498 00:29:30,100 --> 00:29:33,200 And now, I have perimeter about n squared. 499 00:29:33,200 --> 00:29:35,480 That's huge with respect to four n. 500 00:29:35,480 --> 00:29:42,316 So this is much bigger than four n, for n sufficiently large. 501 00:29:42,316 --> 00:29:44,759 AUDIENCE: [INAUDIBLE] about the length flaps. 502 00:29:44,759 --> 00:29:47,300 PROFESSOR: Here, I was assuming all the flaps are length one. 503 00:29:47,300 --> 00:29:50,600 So the disks are size one, and so it's an n by n square. 504 00:29:54,540 --> 00:29:55,040 Clear? 505 00:29:55,040 --> 00:29:56,990 So this is more motivation for why 506 00:29:56,990 --> 00:29:58,210 this theorem is interesting. 507 00:29:58,210 --> 00:30:01,280 It lets you solve this fun math puzzle 508 00:30:01,280 --> 00:30:06,020 and show not only does a perimeter not go-- not only 509 00:30:06,020 --> 00:30:08,716 does the perimeter not only go down, 510 00:30:08,716 --> 00:30:11,229 but it can go arbitrarily high. 511 00:30:11,229 --> 00:30:12,520 It just takes a lot of folding. 512 00:30:16,370 --> 00:30:20,440 So let's say something about how we 513 00:30:20,440 --> 00:30:22,820 prove that once you have a valid placement of the points, 514 00:30:22,820 --> 00:30:26,405 you can actually fill in the creases, find folding. 515 00:30:41,970 --> 00:30:43,145 Let me bring up an example. 516 00:30:46,966 --> 00:30:48,340 So this is actually the example I 517 00:30:48,340 --> 00:30:51,110 keep using which is, you want to make a lizard 518 00:30:51,110 --> 00:30:58,090 or some generic four-legged tail and head kind of creature. 519 00:30:58,090 --> 00:31:00,900 This is the output from TreeMaker, 520 00:31:00,900 --> 00:31:02,810 complete with crease pattern and everything. 521 00:31:02,810 --> 00:31:05,080 But here, I've labeled all the-- or actually 522 00:31:05,080 --> 00:31:07,920 Robert Lang, I think, has labeled all of-- this a figure 523 00:31:07,920 --> 00:31:08,920 from our book. 524 00:31:08,920 --> 00:31:13,270 --all the vertices of the tree and the shadow. 525 00:31:13,270 --> 00:31:15,480 And then, we're labeling where they 526 00:31:15,480 --> 00:31:16,890 come from on the piece of paper. 527 00:31:19,750 --> 00:31:22,730 So in particular, you see something like a leaf h. 528 00:31:22,730 --> 00:31:26,410 And it comes from this one point on the paper. 529 00:31:26,410 --> 00:31:29,380 This leaf d comes from this point, 530 00:31:29,380 --> 00:31:31,030 and g comes from that point. 531 00:31:31,030 --> 00:31:33,710 It's actually kind of similarly oriented to this guy. 532 00:31:33,710 --> 00:31:36,730 The interior vertices, they come from several points. 533 00:31:36,730 --> 00:31:38,440 It's a little messy. 534 00:31:38,440 --> 00:31:41,310 But let's-- one of the things is to try to locate where those 535 00:31:41,310 --> 00:31:43,146 points ought to be. 536 00:31:43,146 --> 00:31:48,810 s So there's this idea of an active path which 537 00:31:48,810 --> 00:31:55,720 is a path in the tree between two leaves. 538 00:31:55,720 --> 00:31:57,227 I'll call them shadow leaves to say 539 00:31:57,227 --> 00:31:58,560 that they're in the shadow tree. 540 00:32:03,650 --> 00:32:12,850 And the length of that path equals 541 00:32:12,850 --> 00:32:19,370 the distance in the paper. 542 00:32:22,120 --> 00:32:25,020 So in the case of making a star graph, 543 00:32:25,020 --> 00:32:28,140 this is exactly when the disks kiss, 544 00:32:28,140 --> 00:32:32,130 when the just touch each other on the boundary. 545 00:32:32,130 --> 00:32:35,860 So in other words, we have this inequality, 546 00:32:35,860 --> 00:32:38,110 saying the distance between in the paper should 547 00:32:38,110 --> 00:32:40,630 be greater than or equal to distance in the tree. 548 00:32:40,630 --> 00:32:43,090 If that inequality is actually an equality, 549 00:32:43,090 --> 00:32:46,640 if they're the same thing, then it's kind of critical. 550 00:32:46,640 --> 00:32:50,730 I can't get those points any closer in the paper. 551 00:32:50,730 --> 00:32:52,970 Those things I call active paths. 552 00:32:52,970 --> 00:32:57,440 And that is some of the lines up here. 553 00:32:57,440 --> 00:33:01,510 I guess the black dashed line, actually, 554 00:33:01,510 --> 00:33:03,880 in a lot of the dash lines. 555 00:33:03,880 --> 00:33:06,360 All of the dash lines, I think. 556 00:33:06,360 --> 00:33:12,650 So for example, d to h, that's a distance between two leaves. 557 00:33:12,650 --> 00:33:14,770 And if you measure the distance here, it's two. 558 00:33:14,770 --> 00:33:17,410 And just imagine, this example has 559 00:33:17,410 --> 00:33:19,130 been set up so this is exactly two. 560 00:33:19,130 --> 00:33:19,910 So this is tight. 561 00:33:19,910 --> 00:33:22,950 I can't move h any closer to d or vice versa. 562 00:33:22,950 --> 00:33:26,210 And also from h to a, a is actually 563 00:33:26,210 --> 00:33:30,180 in the middle of the paper and corresponds to that flap. 564 00:33:30,180 --> 00:33:33,540 That's all of those green, actually 565 00:33:33,540 --> 00:33:37,190 it's just the green lines, green dashed lines are active. 566 00:33:37,190 --> 00:33:38,960 They're kind of critical. 567 00:33:38,960 --> 00:33:41,480 And what's nice is that subdivides my piece of paper 568 00:33:41,480 --> 00:33:43,800 into a bunch of smaller shapes. 569 00:33:43,800 --> 00:33:45,567 So I have a little triangle out here. 570 00:33:45,567 --> 00:33:46,650 That turns out to be junk. 571 00:33:46,650 --> 00:33:48,070 We're not going to need it because the sort 572 00:33:48,070 --> 00:33:49,260 of outside the diagram. 573 00:33:49,260 --> 00:33:50,690 You could folder underneath. 574 00:33:50,690 --> 00:33:53,420 Get rid of it. 575 00:33:53,420 --> 00:33:56,738 You've got a quadrilateral here between the green lines. 576 00:33:56,738 --> 00:33:58,404 We've got a triangle up here, a triangle 577 00:33:58,404 --> 00:34:00,700 at the top, triangle on the left. 578 00:34:00,700 --> 00:34:04,190 All we need to do is fill in those little parts. 579 00:34:04,190 --> 00:34:05,190 Fill in that triangle. 580 00:34:05,190 --> 00:34:06,410 Fill in that quadrilateral. 581 00:34:06,410 --> 00:34:08,868 Of course, in general, there might not be any active paths, 582 00:34:08,868 --> 00:34:10,865 and we haven't simplified the diagram at all. 583 00:34:10,865 --> 00:34:12,239 But if there are no active paths, 584 00:34:12,239 --> 00:34:13,988 you're really probably not very efficient. 585 00:34:13,988 --> 00:34:17,080 That means none of these constraints are tight. 586 00:34:17,080 --> 00:34:21,960 That means you could increase the scale factor lambda, 587 00:34:21,960 --> 00:34:23,544 make a better model. 588 00:34:23,544 --> 00:34:25,460 You can increase lambda at least a little bit. 589 00:34:25,460 --> 00:34:27,909 If all of these are strictly greater, 590 00:34:27,909 --> 00:34:30,846 you can increase lambda until one of them becomes equal. 591 00:34:30,846 --> 00:34:32,679 So you should have at least one active path. 592 00:34:32,679 --> 00:34:34,179 And in fact if you're efficient, you 593 00:34:34,179 --> 00:34:37,300 should have lots of active paths. 594 00:34:37,300 --> 00:34:40,620 I don't think I need to be too formal about that. 595 00:34:46,080 --> 00:34:46,760 But it's true. 596 00:34:49,380 --> 00:34:53,469 And here's one thing you can show about active paths. 597 00:34:53,469 --> 00:34:55,750 So what would be really nice, in this example, 598 00:34:55,750 --> 00:34:57,450 I have triangles and quadrilaterals. 599 00:34:57,450 --> 00:34:59,241 In general, I'm going to have a whole bunch 600 00:34:59,241 --> 00:35:00,369 of different shapes. 601 00:35:00,369 --> 00:35:01,910 Some of them could even be non-convex 602 00:35:01,910 --> 00:35:03,512 which would be annoying. 603 00:35:03,512 --> 00:35:05,470 I would really just like to deal with triangles 604 00:35:05,470 --> 00:35:07,670 because I like triangles-- geometer. 605 00:35:07,670 --> 00:35:09,087 And triangles are simple. 606 00:35:09,087 --> 00:35:11,170 And it looks like the crease pattern in a triangle 607 00:35:11,170 --> 00:35:12,500 is pretty simple. 608 00:35:12,500 --> 00:35:14,440 In fact, it's just angular bisectors 609 00:35:14,440 --> 00:35:19,940 of the triangle plus a few extra perpendicular folds. 610 00:35:19,940 --> 00:35:22,380 So that would be kind of nice if I 611 00:35:22,380 --> 00:35:24,220 could get everything triangles. 612 00:35:24,220 --> 00:35:26,640 To do that, I need lots of active paths. 613 00:35:26,640 --> 00:35:30,360 So how can I guarantee that there's lots of active paths? 614 00:35:30,360 --> 00:35:33,420 I'm going wave my hands a little bit about how this is done. 615 00:35:37,580 --> 00:35:43,200 But the idea is to augment the tree. 616 00:35:43,200 --> 00:35:46,060 So I have some tree that I actually want to make, 617 00:35:46,060 --> 00:35:47,490 like lizard. 618 00:35:47,490 --> 00:35:49,930 And I'm going to add some extra stuff. 619 00:35:49,930 --> 00:35:52,655 Like maybe I'll add a branch here and a branch here 620 00:35:52,655 --> 00:35:53,700 or whatever. 621 00:35:53,700 --> 00:35:54,450 Whatever it takes. 622 00:35:57,130 --> 00:35:59,830 I got to do so carefully. 623 00:35:59,830 --> 00:36:01,160 So let me say what that means. 624 00:36:05,400 --> 00:36:15,360 So I'm going to add extra leaves to the shadow tree. 625 00:36:19,340 --> 00:36:47,300 My goal is to make the active paths triangulate the paper 626 00:36:47,300 --> 00:36:49,030 without changing the scale factor. 627 00:36:57,040 --> 00:36:58,365 So this is kind of a cheat. 628 00:36:58,365 --> 00:37:00,740 And most of the time, you don't actually need this cheat. 629 00:37:00,740 --> 00:37:06,330 But for proving things, it makes life a little easier. 630 00:37:06,330 --> 00:37:08,890 So we want to show that it's enough to place 631 00:37:08,890 --> 00:37:10,800 the vertices subject to this, the leaves 632 00:37:10,800 --> 00:37:14,080 subject to this constraint. 633 00:37:14,080 --> 00:37:16,090 So ideally, we make our tree. 634 00:37:16,090 --> 00:37:18,790 But if we make an even more complicated tree, 635 00:37:18,790 --> 00:37:22,551 like with these extra little limbs, we can get rid of them 636 00:37:22,551 --> 00:37:23,050 at the end. 637 00:37:23,050 --> 00:37:24,930 You just fold them over and collapse 638 00:37:24,930 --> 00:37:27,770 this flap against an adjacent flap. 639 00:37:27,770 --> 00:37:31,872 So if we make our life harder, that's OK, too. 640 00:37:31,872 --> 00:37:33,580 If we could fold a more complicated tree, 641 00:37:33,580 --> 00:37:35,540 in particular we folded the tree we wanted. 642 00:37:35,540 --> 00:37:38,850 If we can do that without changing the scale factor, 643 00:37:38,850 --> 00:37:41,270 then great. 644 00:37:41,270 --> 00:37:43,480 Then, we did what we wanted to do. 645 00:37:43,480 --> 00:37:47,845 We folded our piece of paper with the desired scale factor. 646 00:37:47,845 --> 00:37:49,970 In reality, we're actually going to move the leaves 647 00:37:49,970 --> 00:37:52,709 around a little bit so that we have to do. 648 00:37:52,709 --> 00:37:54,250 We're going to move around the leaves 649 00:37:54,250 --> 00:37:56,125 that you already placed in order to make room 650 00:37:56,125 --> 00:37:57,400 for the new leaves. 651 00:37:57,400 --> 00:37:58,520 But here's the idea. 652 00:37:58,520 --> 00:38:01,600 We have these leaves. 653 00:38:01,600 --> 00:38:04,470 There's some active paths, these green lines. 654 00:38:04,470 --> 00:38:07,610 And we'd really-- we have this quadrilateral in the center. 655 00:38:07,610 --> 00:38:09,380 We'd really like to subdivide it. 656 00:38:09,380 --> 00:38:11,420 Like this black line is kind of asking for it. 657 00:38:11,420 --> 00:38:13,140 It would be really nice if we could just 658 00:38:13,140 --> 00:38:16,590 add in an active paths there. 659 00:38:16,590 --> 00:38:17,930 And you can do it. 660 00:38:17,930 --> 00:38:21,170 Let's see if I can identify what we're talking about here. 661 00:38:21,170 --> 00:38:23,570 So a fun thing about active paths, 662 00:38:23,570 --> 00:38:27,130 you look at two leaves like g d here, which corresponds 663 00:38:27,130 --> 00:38:31,140 to this path g d here, because it's active, 664 00:38:31,140 --> 00:38:35,490 you know this length is exactly the length traced right here. 665 00:38:35,490 --> 00:38:37,100 So that means, this segment has to be 666 00:38:37,100 --> 00:38:39,080 folded right along the tree here. 667 00:38:39,080 --> 00:38:41,340 You know that this segment is that. 668 00:38:41,340 --> 00:38:44,790 And so in particular, you know where c is on that segment. 669 00:38:44,790 --> 00:38:47,360 C actually comes from multiple points in this diagram. 670 00:38:47,360 --> 00:38:52,345 But you know that this point right here must fold to c. 671 00:38:52,345 --> 00:38:55,260 And you know this point must fold here and so on. 672 00:38:55,260 --> 00:38:56,520 These guys correspond. 673 00:39:00,500 --> 00:39:01,730 So that's good. 674 00:39:01,730 --> 00:39:04,590 So if I look at this quadrilateral, 675 00:39:04,590 --> 00:39:13,450 it corresponds so g to c to d to c to h to c to b to a back 676 00:39:13,450 --> 00:39:16,220 to b back to c. 677 00:39:16,220 --> 00:39:25,300 And so my guess is if you add a little limb in here-- 678 00:39:25,300 --> 00:39:26,670 I think I can draw on this. 679 00:39:26,670 --> 00:39:30,050 That would be nice. 680 00:39:30,050 --> 00:39:35,100 Should really tell you about-- is this going to work? 681 00:39:35,100 --> 00:39:35,600 Yes. 682 00:39:35,600 --> 00:39:37,190 It's kind of white, but there we go. 683 00:39:39,940 --> 00:39:44,020 So great. 684 00:39:44,020 --> 00:39:45,380 Draw a fun diagram here. 685 00:39:48,450 --> 00:39:50,760 This is how I make my lecture notes if you're curious. 686 00:39:50,760 --> 00:39:51,730 This is a tablet PC. 687 00:39:56,100 --> 00:40:02,261 Now, I've got some-- Tell me if I 688 00:40:02,261 --> 00:40:04,260 make a mistake, those who know what I'm drawing. 689 00:40:08,088 --> 00:40:10,060 What the hell is this? 690 00:40:10,060 --> 00:40:12,916 I think it goes there. 691 00:40:12,916 --> 00:40:15,320 There. 692 00:40:15,320 --> 00:40:16,150 There. 693 00:40:16,150 --> 00:40:18,880 I'll explain what I'm drawing once I've drawn it. 694 00:40:18,880 --> 00:40:21,920 It's easier. 695 00:40:21,920 --> 00:40:23,180 Something like that. 696 00:40:23,180 --> 00:40:27,330 This is a bunch of disks and a bunch of other things, 697 00:40:27,330 --> 00:40:30,490 there's only one here called rivers. 698 00:40:30,490 --> 00:40:34,260 And this is a geometric way to think about the constraints. 699 00:40:34,260 --> 00:40:41,180 If you look at this structure-- so I have a disk down 700 00:40:41,180 --> 00:40:42,290 here corresponding to d. 701 00:40:42,290 --> 00:40:44,540 I have a disk corresponding to h, a disk corresponding 702 00:40:44,540 --> 00:40:48,392 to g, a river corresponding to the segment b c. 703 00:40:48,392 --> 00:40:49,850 The reason I only have one river is 704 00:40:49,850 --> 00:40:52,420 there's only one interior edge in this tree. 705 00:40:52,420 --> 00:40:54,160 Everything else is a leaf edge. 706 00:40:54,160 --> 00:40:56,330 So leaf edges are going to be disks. 707 00:40:56,330 --> 00:40:58,760 All non leaf edges are going to be rivers. 708 00:40:58,760 --> 00:41:01,300 And the structure, the way that those things connect 709 00:41:01,300 --> 00:41:04,560 to each other is the same as the structure in this tree. 710 00:41:04,560 --> 00:41:07,020 So you've got the three disks down here, 711 00:41:07,020 --> 00:41:08,930 which corresponds to these leaf edges. 712 00:41:08,930 --> 00:41:11,830 They all touch a common river because all of those edges 713 00:41:11,830 --> 00:41:16,096 are incident to that edge in the center. 714 00:41:16,096 --> 00:41:17,720 And there's three disks on the top that 715 00:41:17,720 --> 00:41:21,082 correspond to the three leaf edges up here. 716 00:41:21,082 --> 00:41:22,540 This is really just the same thing. 717 00:41:22,540 --> 00:41:25,100 It's saying that if you want to look, say, 718 00:41:25,100 --> 00:41:28,440 at the distance between h and a here. 719 00:41:28,440 --> 00:41:31,140 The distance between h and a should be length three. 720 00:41:31,140 --> 00:41:32,940 And those three lengths are represented 721 00:41:32,940 --> 00:41:35,400 by the size of this disk, followed 722 00:41:35,400 --> 00:41:37,410 by the width of this river, followed 723 00:41:37,410 --> 00:41:39,660 by the size of the a disk. 724 00:41:39,660 --> 00:41:42,510 It's say exactly the same constraints, just represented 725 00:41:42,510 --> 00:41:43,500 geometrically. 726 00:41:43,500 --> 00:41:45,900 Now, if I'm lucky, these regions actually 727 00:41:45,900 --> 00:41:47,530 kiss, they touch at points. 728 00:41:47,530 --> 00:41:49,550 That's when things are active. 729 00:41:49,550 --> 00:41:53,940 And you could draw straight across from a to h and never go 730 00:41:53,940 --> 00:41:56,050 in these outside regions. 731 00:41:56,050 --> 00:41:58,640 If you're not lucky, they won't touch. 732 00:41:58,640 --> 00:42:01,620 If they don't touch, make them touch. 733 00:42:01,620 --> 00:42:04,210 That's all I want to do. 734 00:42:04,210 --> 00:42:08,240 And so I just want to blow up these regions, 735 00:42:08,240 --> 00:42:13,280 make them longer, for example, until things touch. 736 00:42:13,280 --> 00:42:15,580 When they touch enough, if you do it right, 737 00:42:15,580 --> 00:42:17,670 you can actually get them to triangulate. 738 00:42:17,670 --> 00:42:20,270 That's my very hand wavy argument. 739 00:42:20,270 --> 00:42:22,110 It's proved formally in the book, 740 00:42:22,110 --> 00:42:23,740 and it's a little bit technical. 741 00:42:23,740 --> 00:42:31,137 So I think I will move on and tell you 742 00:42:31,137 --> 00:42:32,220 what to do with triangles. 743 00:43:29,610 --> 00:43:34,310 So suppose you have some triangle. 744 00:43:34,310 --> 00:43:36,970 And each of these edges is an active path. 745 00:43:36,970 --> 00:43:38,160 So there's some leaf here. 746 00:43:41,130 --> 00:43:44,700 We'll call them a, b, and c. 747 00:43:44,700 --> 00:43:49,670 And this segment we know will map right along the floor 748 00:43:49,670 --> 00:43:56,430 to make up that path, that active path in the tree. 749 00:43:56,430 --> 00:43:59,720 Like I said, we're going to follow along angular bisectors. 750 00:44:05,260 --> 00:44:09,560 You may know the angular bisectors of a triangle 751 00:44:09,560 --> 00:44:12,750 meet at a single point. 752 00:44:12,750 --> 00:44:15,200 And then, we're going to make some perpendicular 753 00:44:15,200 --> 00:44:27,705 folds like that. 754 00:44:30,990 --> 00:44:33,280 Where the perpendicular folds go, 755 00:44:33,280 --> 00:44:38,140 well, they go whenever there's a shadow 756 00:44:38,140 --> 00:44:40,680 vertex along this segment. 757 00:44:40,680 --> 00:44:44,920 Remember this edge, b c corresponds 758 00:44:44,920 --> 00:44:49,620 to some path between b and c in the tree which 759 00:44:49,620 --> 00:44:52,134 looks like whatever. 760 00:44:52,134 --> 00:44:53,550 And so for each of these branching 761 00:44:53,550 --> 00:44:56,684 points that we visit along that, we can just measure. 762 00:44:56,684 --> 00:44:59,350 As we move along here, we get to some vertex then another vertex 763 00:44:59,350 --> 00:45:04,630 then another vertex then c, except I did it backwards. 764 00:45:04,630 --> 00:45:07,079 And so for each of these guys, I know 765 00:45:07,079 --> 00:45:08,870 that I need to be able to articulate there. 766 00:45:08,870 --> 00:45:10,510 I need a hinge crease. 767 00:45:10,510 --> 00:45:13,480 And so I just put in a hinge grace perpendicular 768 00:45:13,480 --> 00:45:15,100 to the floor, essentially, because we 769 00:45:15,100 --> 00:45:17,370 know this is mapping to the floor. 770 00:45:17,370 --> 00:45:19,560 And conveniently, those will all line up. 771 00:45:19,560 --> 00:45:22,730 So if I have some vertex here-- let's call it d. 772 00:45:22,730 --> 00:45:24,150 --d will be here. 773 00:45:24,150 --> 00:45:25,900 But d will also be here. 774 00:45:25,900 --> 00:45:27,720 Because if I follow the path from b to a, 775 00:45:27,720 --> 00:45:30,580 a is some other guy, maybe this one, 776 00:45:30,580 --> 00:45:32,960 I also have to go through d. 777 00:45:32,960 --> 00:45:35,464 And so these things will conveniently line up perfectly. 778 00:45:35,464 --> 00:45:36,880 I'm not going to prove that again. 779 00:45:36,880 --> 00:45:39,420 But it's true. 780 00:45:39,420 --> 00:45:42,730 And you just get this really nice simple to fold thing. 781 00:45:45,421 --> 00:45:46,920 Shoot, I'll fold one if you haven't. 782 00:45:46,920 --> 00:45:50,545 This is a standard rabbit ear molecule in making origami. 783 00:45:50,545 --> 00:45:51,670 You have a little triangle. 784 00:45:51,670 --> 00:45:53,080 You want to make it an ear. 785 00:45:53,080 --> 00:45:55,260 You squeeze along the angular bisectors, 786 00:45:55,260 --> 00:45:58,150 and it makes a cute rabbit ear. 787 00:45:58,150 --> 00:46:00,310 And you can see it also, the crease pattern, 788 00:46:00,310 --> 00:46:05,980 in here like in this triangle in the upper right. 789 00:46:05,980 --> 00:46:08,940 You've got the red lines which are the angular bisectors. 790 00:46:08,940 --> 00:46:11,470 And then, you've got all those perpendicular folds. 791 00:46:11,470 --> 00:46:14,680 And they go exactly where those letters go. 792 00:46:14,680 --> 00:46:18,430 And the triangle at the top is similar. 793 00:46:18,430 --> 00:46:22,280 It's a little different because the very top edge of the paper 794 00:46:22,280 --> 00:46:23,550 is not actually active. 795 00:46:23,550 --> 00:46:27,030 So there's really a special case there. 796 00:46:27,030 --> 00:46:28,410 Upper right is also not active. 797 00:46:28,410 --> 00:46:30,460 Oh, that's annoying. 798 00:46:30,460 --> 00:46:33,012 Yeah. 799 00:46:33,012 --> 00:46:34,470 There's a little bit of extra stuff 800 00:46:34,470 --> 00:46:35,850 that happens at the boundary of the paper 801 00:46:35,850 --> 00:46:37,450 where you don't have active paths. 802 00:46:37,450 --> 00:46:39,590 But it's, as you can see from the crease pattern, 803 00:46:39,590 --> 00:46:41,770 it's basically the same. 804 00:46:41,770 --> 00:46:46,200 In fact, I could call it the same. 805 00:46:46,200 --> 00:46:48,595 It's a little bit less pretty because this is not green. 806 00:46:48,595 --> 00:46:50,511 And so you don't actually know that c is here. 807 00:46:50,511 --> 00:46:52,030 And you don't know that b is there. 808 00:46:52,030 --> 00:46:54,542 But you know about all the other edges. 809 00:46:54,542 --> 00:46:56,500 There's just one edge you might not know about. 810 00:46:56,500 --> 00:46:57,890 And so you can figure out what the right edge 811 00:46:57,890 --> 00:47:00,700 is based on the other edges of the triangle, the other two 812 00:47:00,700 --> 00:47:01,200 edges. 813 00:47:04,210 --> 00:47:05,190 That's just a feature. 814 00:47:05,190 --> 00:47:09,000 You can triangulate everything except the boundary. 815 00:47:09,000 --> 00:47:11,700 You may not be able to get active paths in this step. 816 00:47:16,070 --> 00:47:18,300 That kind of does the tree method 817 00:47:18,300 --> 00:47:20,465 in a super abbreviated version. 818 00:47:23,980 --> 00:47:27,930 I showed you a demo last time, just in case you forgot. 819 00:47:27,930 --> 00:47:30,135 You draw your favorite tree. 820 00:47:30,135 --> 00:47:31,760 See if I can get it to do the same one. 821 00:47:37,360 --> 00:47:41,645 And you optimize, generate a crease pattern. 822 00:47:41,645 --> 00:47:43,350 Oh, it's a different one. 823 00:47:43,350 --> 00:47:44,150 Fun. 824 00:47:44,150 --> 00:47:46,930 There it is. 825 00:47:46,930 --> 00:47:49,129 And here, TreeMaker knows how to draw the disks. 826 00:47:49,129 --> 00:47:51,670 It doesn't currently know how to draw the rivers because it's 827 00:47:51,670 --> 00:47:55,790 kind of tricky to make a snakey path in a computer program. 828 00:47:55,790 --> 00:47:59,380 But you see the three disks down here, the three disks up there, 829 00:47:59,380 --> 00:48:01,290 and you can imagine the one river 830 00:48:01,290 --> 00:48:07,437 in the middle representing the central segment of your tree. 831 00:48:07,437 --> 00:48:09,270 And one of the problems on the problems set, 832 00:48:09,270 --> 00:48:11,490 problem set one is released, is to just make 833 00:48:11,490 --> 00:48:12,769 something using TreeMaker. 834 00:48:12,769 --> 00:48:14,310 I would encourage you to start simple 835 00:48:14,310 --> 00:48:15,420 unless you know what you're doing. 836 00:48:15,420 --> 00:48:16,750 You don't have to use the program. 837 00:48:16,750 --> 00:48:18,380 You could do it by hand, placing disks. 838 00:48:18,380 --> 00:48:20,760 That's how most origamists actually do it. 839 00:48:20,760 --> 00:48:23,850 I'm sure Jason will do it that way. 840 00:48:23,850 --> 00:48:27,642 You can use the program, print out a crease pattern, 841 00:48:27,642 --> 00:48:28,600 see what it looks like. 842 00:48:31,760 --> 00:48:32,440 Next thing. 843 00:48:36,320 --> 00:48:38,200 If you want to do this in reality-- 844 00:48:38,200 --> 00:48:40,962 and what TreeMaker is doing is not this triangulation. 845 00:48:40,962 --> 00:48:42,670 Doing a triangulation is a bit of a pain, 846 00:48:42,670 --> 00:48:44,474 but you could keep modifying your tree 847 00:48:44,474 --> 00:48:45,390 until it triangulates. 848 00:48:45,390 --> 00:48:47,860 The alternative is you just deal with polygons 849 00:48:47,860 --> 00:48:49,654 that are bigger than triangles. 850 00:48:49,654 --> 00:48:51,820 And there's this thing called the universal molecule 851 00:48:51,820 --> 00:48:52,980 by Robert Lang. 852 00:48:52,980 --> 00:48:55,610 Here it is for a quadrilateral. 853 00:48:55,610 --> 00:49:01,070 And it makes it-- this works for any convex polygon. 854 00:49:01,070 --> 00:49:03,430 Now sometimes, you're active paths don't decompose 855 00:49:03,430 --> 00:49:05,360 your shape into convex polygons. 856 00:49:05,360 --> 00:49:06,710 And this still doesn't work. 857 00:49:06,710 --> 00:49:08,370 You still have to do something here. 858 00:49:08,370 --> 00:49:10,080 You need to add some extra leaf edges 859 00:49:10,080 --> 00:49:13,790 to the tree to just fill things up. 860 00:49:13,790 --> 00:49:15,910 But you don't have to stop. 861 00:49:15,910 --> 00:49:18,440 You have to go all the way to the point of triangulation. 862 00:49:18,440 --> 00:49:21,370 You can stop at the point which happens most the time when 863 00:49:21,370 --> 00:49:23,150 all of the faces are convex. 864 00:49:23,150 --> 00:49:27,440 And then, it's a slightly more general picture what happens. 865 00:49:27,440 --> 00:49:29,060 Intuitively, what you want to do is, 866 00:49:29,060 --> 00:49:33,010 this is the tree you want to make among those leaves. 867 00:49:33,010 --> 00:49:35,305 All the boundary edges here are active paths. 868 00:49:35,305 --> 00:49:37,502 You have g d h a. 869 00:49:37,502 --> 00:49:38,960 Those are active paths, so you know 870 00:49:38,960 --> 00:49:43,679 where all of those branching points are in the middle. 871 00:49:43,679 --> 00:49:44,720 You'd like to build that. 872 00:49:44,720 --> 00:49:47,460 And so what we're going to do is build it bottom up 873 00:49:47,460 --> 00:49:52,050 in the literal sense from z equals zero, increasing z. 874 00:49:52,050 --> 00:49:54,650 And what that corresponds to in this picture 875 00:49:54,650 --> 00:49:59,580 is shrinking or offsetting these edges inward. 876 00:49:59,580 --> 00:50:01,790 So you offset these all by the same amount. 877 00:50:01,790 --> 00:50:04,014 That's like traveling up over here. 878 00:50:04,014 --> 00:50:05,680 So you see the red lines here correspond 879 00:50:05,680 --> 00:50:07,890 to the red cross sections. 880 00:50:07,890 --> 00:50:10,010 So I just see what happens in cross section is 881 00:50:10,010 --> 00:50:11,460 I shrink things in. 882 00:50:11,460 --> 00:50:15,580 And the first thing that happens at this first critical red 883 00:50:15,580 --> 00:50:20,890 drawing is that the path from d to a becomes critical, 884 00:50:20,890 --> 00:50:22,860 becomes active. 885 00:50:22,860 --> 00:50:25,364 Before it was inactive that-- that 886 00:50:25,364 --> 00:50:26,530 was kind of annoying for me. 887 00:50:26,530 --> 00:50:28,680 I wanted it to be triangulated, but it wasn't. 888 00:50:28,680 --> 00:50:32,070 The distance from a to d in the piece of paper 889 00:50:32,070 --> 00:50:40,180 was bigger than the distance between the leaves in the tree. 890 00:50:40,180 --> 00:50:41,264 I wanted them to be equal. 891 00:50:41,264 --> 00:50:43,138 Well, it turns out, if you shrink this thing, 892 00:50:43,138 --> 00:50:44,650 eventually they might become equal. 893 00:50:44,650 --> 00:50:45,650 And that's what happens. 894 00:50:45,650 --> 00:50:47,109 And that's what TreeMaker computes. 895 00:50:47,109 --> 00:50:48,816 And what you should do if you're building 896 00:50:48,816 --> 00:50:49,800 the universal molecule. 897 00:50:49,800 --> 00:50:53,680 If you discover, oh, now a d is active, 898 00:50:53,680 --> 00:50:55,730 now, I subdivide into two triangles. 899 00:50:55,730 --> 00:50:57,960 And then, I do the thing in the two triangles. 900 00:50:57,960 --> 00:51:00,167 And generally, you start with some convex polygon. 901 00:51:00,167 --> 00:51:00,750 You shrink it. 902 00:51:00,750 --> 00:51:03,370 At some point, some diagonal might become active. 903 00:51:03,370 --> 00:51:07,240 You split it into two, just keep going in the two. 904 00:51:07,240 --> 00:51:10,510 And there's one other thing which can happen, 905 00:51:10,510 --> 00:51:12,640 which is what's happening at the end of a triangle. 906 00:51:12,640 --> 00:51:13,585 You shrink. 907 00:51:13,585 --> 00:51:15,710 And then, it could be two vertices actually collide 908 00:51:15,710 --> 00:51:16,704 with each other. 909 00:51:16,704 --> 00:51:18,620 And then, you just think of them as one vertex 910 00:51:18,620 --> 00:51:20,360 and keep shrinking. 911 00:51:20,360 --> 00:51:23,250 So that's the general universal molecule construction. 912 00:51:23,250 --> 00:51:29,380 You see in a sort of-- these are the cross sections from above. 913 00:51:29,380 --> 00:51:32,290 You see that as you go up, things are getting smaller. 914 00:51:32,290 --> 00:51:36,870 That is one of the statements of the uniaxial base as you go up. 915 00:51:36,870 --> 00:51:40,467 Cross sections get tinier. 916 00:51:40,467 --> 00:51:42,050 And that gives you the crease pattern. 917 00:51:42,050 --> 00:51:44,780 If you follow along where the vertices go 918 00:51:44,780 --> 00:51:46,290 during this process, and you draw in 919 00:51:46,290 --> 00:51:48,760 and all the active path that you create along the way, 920 00:51:48,760 --> 00:51:49,884 that's your crease pattern. 921 00:51:54,490 --> 00:51:56,579 So that's how you do it more practically is 922 00:51:56,579 --> 00:51:57,870 you use the universal molecule. 923 00:51:57,870 --> 00:51:59,786 But to prove it, you don't actually need that. 924 00:52:02,560 --> 00:52:03,450 All right. 925 00:52:03,450 --> 00:52:10,725 I have now some more real examples by Robert Lang 926 00:52:10,725 --> 00:52:13,030 and by Jason Ku. 927 00:52:13,030 --> 00:52:15,850 So here is Roosevelt elk. 928 00:52:15,850 --> 00:52:21,900 And Rob is all about getting very realistic form. 929 00:52:21,900 --> 00:52:25,070 So all of the branching measurements and-- I'm 930 00:52:25,070 --> 00:52:26,839 sure if you knew a lot about elks, 931 00:52:26,839 --> 00:52:28,380 you could recognizes this a Roosevelt 932 00:52:28,380 --> 00:52:30,380 elk not some other elk. 933 00:52:30,380 --> 00:52:33,506 And you can achieve that level of detail and realism 934 00:52:33,506 --> 00:52:34,880 using the tree method because you 935 00:52:34,880 --> 00:52:38,080 can control all of the relative lengths of those segments 936 00:52:38,080 --> 00:52:39,719 and get perfect branching structure 937 00:52:39,719 --> 00:52:41,843 and get the right proportions for the legs and tail 938 00:52:41,843 --> 00:52:43,310 and so on. 939 00:52:43,310 --> 00:52:46,730 And you can see here, the-- and you 940 00:52:46,730 --> 00:52:50,640 can go to Robert Lang's webpage, landorigami.com and print this 941 00:52:50,640 --> 00:52:51,190 out. 942 00:52:51,190 --> 00:52:52,790 And try it out if you want. 943 00:52:52,790 --> 00:52:56,110 This will fold not this but the base for that model. 944 00:52:56,110 --> 00:52:57,570 And you could see the disks. 945 00:52:57,570 --> 00:52:59,740 And you can see some approximation of the rivers 946 00:52:59,740 --> 00:53:01,220 here. 947 00:53:01,220 --> 00:53:06,220 But they're not quite drawn in in this particular diagram. 948 00:53:06,220 --> 00:53:07,302 But a lot of detail. 949 00:53:07,302 --> 00:53:09,010 And if you look carefully, you can really 950 00:53:09,010 --> 00:53:10,360 read off what the tree is here. 951 00:53:10,360 --> 00:53:12,500 You can see how these things are separated, 952 00:53:12,500 --> 00:53:16,850 and it will correspond to the branching structure over there. 953 00:53:16,850 --> 00:53:19,390 Here's a more complicated one. 954 00:53:19,390 --> 00:53:23,010 Scorpion varleg which you can also 955 00:53:23,010 --> 00:53:27,450 fold at lifesize if you're really crazy. 956 00:53:27,450 --> 00:53:32,420 And you can also see from these kinds of diagrams 957 00:53:32,420 --> 00:53:36,530 that paper usage is super efficient in these designs. 958 00:53:36,530 --> 00:53:40,200 And presumably that's how Robert design them. 959 00:53:40,200 --> 00:53:42,340 The only paper we're wasting in some sense 960 00:53:42,340 --> 00:53:47,910 is the little regions between the disks and the rivers 961 00:53:47,910 --> 00:53:49,341 which is quite small. 962 00:53:49,341 --> 00:53:51,465 Most of the papers getting absorbed into the flaps. 963 00:53:54,570 --> 00:53:57,810 Here's one of the first models by Jason Ku that I saw, 964 00:53:57,810 --> 00:54:00,380 the Nazgul from Lord of the Rings. 965 00:54:00,380 --> 00:54:02,890 And pretty complicated. 966 00:54:02,890 --> 00:54:05,760 So here, the bold lines show you essentially 967 00:54:05,760 --> 00:54:07,900 where the disks and the rivers are that have been-- 968 00:54:07,900 --> 00:54:09,320 AUDIENCE: Those are actually the hinge creases. 969 00:54:09,320 --> 00:54:10,944 PROFESSOR: Oh, those are hinge creases. 970 00:54:10,944 --> 00:54:12,200 Yeah. 971 00:54:12,200 --> 00:54:12,820 Good. 972 00:54:12,820 --> 00:54:16,150 And the top is the actual crease pattern. 973 00:54:16,150 --> 00:54:17,860 And it's pretty awesome. 974 00:54:17,860 --> 00:54:20,400 You've got a horse and rider out of one square paper. 975 00:54:24,110 --> 00:54:26,260 Here's a shrimp. 976 00:54:26,260 --> 00:54:29,440 He's super complicated and super realistic. 977 00:54:29,440 --> 00:54:32,010 It looks very shrimpy. 978 00:54:32,010 --> 00:54:34,210 I know some people who are freaked out by shrimp. 979 00:54:34,210 --> 00:54:37,320 And so this should really elicit that similar response. 980 00:54:37,320 --> 00:54:42,140 Or other people get really hungry at this point, I guess. 981 00:54:42,140 --> 00:54:45,180 But you could see the tree is pretty dense here, 982 00:54:45,180 --> 00:54:49,980 lots of little features getting that branching right. 983 00:54:49,980 --> 00:54:52,770 And one last example is this butterfly 984 00:54:52,770 --> 00:54:56,790 which is pretty awesome in its realism. 985 00:54:56,790 --> 00:55:00,160 And I guess the tree is a lot simpler here. 986 00:55:00,160 --> 00:55:03,120 But there's a lot of extra creases here. 987 00:55:03,120 --> 00:55:07,130 You see just for getting the flaps nice and narrow. 988 00:55:07,130 --> 00:55:11,740 So in general, these kinds of constructions 989 00:55:11,740 --> 00:55:14,590 will make this guy rather pointy and tall. 990 00:55:14,590 --> 00:55:16,540 And you can just squash it back. 991 00:55:16,540 --> 00:55:18,430 And it's called a sync fold and make 992 00:55:18,430 --> 00:55:23,180 it tinier like-- you have something like this. 993 00:55:23,180 --> 00:55:25,280 The flaps are you think are too tall. 994 00:55:25,280 --> 00:55:30,300 You just fold here. 995 00:55:30,300 --> 00:55:32,600 Which, if you look at the crease pattern, 996 00:55:32,600 --> 00:55:35,840 makes just an offset version of the original. 997 00:55:35,840 --> 00:55:38,050 And hey, now your flaps are half is tall. 998 00:55:38,050 --> 00:55:41,140 And if you're a proper origamist, 999 00:55:41,140 --> 00:55:45,878 you-- I shouldn't do this live. 1000 00:55:50,760 --> 00:55:53,400 You change the mountain valley assignment a little bit, 1001 00:55:53,400 --> 00:55:55,840 and you sync everything on the inside 1002 00:55:55,840 --> 00:55:57,470 instead of just folding it over. 1003 00:56:02,728 --> 00:56:05,370 It's not going to look super pretty. 1004 00:56:05,370 --> 00:56:11,680 But same tree structure, just the flaps are half as tall. 1005 00:56:11,680 --> 00:56:14,740 So that's all this pleating here. 1006 00:56:14,740 --> 00:56:18,310 And I think that's it for my little tour. 1007 00:56:18,310 --> 00:56:21,350 And Jason Ku next. 1008 00:56:21,350 --> 00:56:23,220 Next Monday we'll be talking more 1009 00:56:23,220 --> 00:56:26,290 about the artistic side, history of origami design, 1010 00:56:26,290 --> 00:56:29,300 and what it takes to really make something 1011 00:56:29,300 --> 00:56:31,150 real by these approaches. 1012 00:56:31,150 --> 00:56:33,690 That should be lots of fun. 1013 00:56:33,690 --> 00:56:37,380 I want to move on to other kinds of efficient origami design. 1014 00:56:37,380 --> 00:56:43,510 Less directly applicable to real origami design 1015 00:56:43,510 --> 00:56:46,400 so to speak, at least currently. 1016 00:56:46,400 --> 00:56:48,370 But mathematically more powerful. 1017 00:56:48,370 --> 00:56:50,700 Uniaxial bases are nice, but it's not 1018 00:56:50,700 --> 00:56:52,840 everything you might want to fold. 1019 00:56:52,840 --> 00:56:56,940 So what if we want to fold other stuff. 1020 00:57:03,180 --> 00:57:06,290 And to a geometer, most natural version 1021 00:57:06,290 --> 00:57:08,650 of folding other stuff or folding anything 1022 00:57:08,650 --> 00:57:09,740 is a polyhedron. 1023 00:57:09,740 --> 00:57:13,300 You have a bunch of polygons, flat panels in 3D, 1024 00:57:13,300 --> 00:57:15,570 somehow joined together to make some surface. 1025 00:57:15,570 --> 00:57:17,130 How do I fold that? 1026 00:57:17,130 --> 00:57:20,410 And let's start with a super simple example which is I 1027 00:57:20,410 --> 00:57:25,600 want to fold a square into a cube. 1028 00:57:25,600 --> 00:57:30,590 How big a square do I need to fold a unit cube? 1029 00:57:30,590 --> 00:57:33,850 Or how big cube can I fold for a unit square? 1030 00:57:33,850 --> 00:57:36,450 Either way. 1031 00:57:36,450 --> 00:57:43,700 And I'm going to make it a one by one square. 1032 00:57:43,700 --> 00:57:51,060 And I'm going to fold it into a cube of dimension x. 1033 00:57:51,060 --> 00:57:55,160 And I want to know-- it looks funny. 1034 00:57:55,160 --> 00:57:56,930 It's the quintuple x cubed. 1035 00:57:59,460 --> 00:58:00,586 It's the x-coordinate. 1036 00:58:00,586 --> 00:58:01,460 That's my motivation. 1037 00:58:06,800 --> 00:58:09,660 So we talked-- one thing we can think about 1038 00:58:09,660 --> 00:58:13,330 is what makes the corners of the cubes 1039 00:58:13,330 --> 00:58:15,910 and how far away should they be. 1040 00:58:15,910 --> 00:58:18,650 So if I want to fold this cube, I look at, 1041 00:58:18,650 --> 00:58:22,420 let's say, the opposite corners of the cube. 1042 00:58:22,420 --> 00:58:24,920 They're pretty far away on the cube. 1043 00:58:24,920 --> 00:58:26,560 And I know that by folding I could only 1044 00:58:26,560 --> 00:58:28,400 make distance is smaller. 1045 00:58:28,400 --> 00:58:33,370 So somehow, if I measure the shortest path on the cube, 1046 00:58:33,370 --> 00:58:36,460 from this point to this point, it's 1047 00:58:36,460 --> 00:58:40,980 that if you believe-- when you unfold this thing, 1048 00:58:40,980 --> 00:58:42,720 it should be flat. 1049 00:58:42,720 --> 00:58:45,240 If I unfolds to just those two squares, 1050 00:58:45,240 --> 00:58:48,686 it's a straight line between the two. 1051 00:58:48,686 --> 00:58:50,560 And so that goes to the midpoint of this edge 1052 00:58:50,560 --> 00:58:51,610 and then over there. 1053 00:58:51,610 --> 00:58:53,700 And you measure that length. 1054 00:58:53,700 --> 00:58:54,960 And oh, trigonometry. 1055 00:58:57,510 --> 00:58:59,730 Root five, that's not what I wanted. 1056 00:59:04,090 --> 00:59:09,460 So we have x here, 2x here. 1057 00:59:09,460 --> 00:59:18,310 So this distance is-- yeah, I see. 1058 00:59:23,959 --> 00:59:26,125 Why is that different from what I have written down? 1059 00:59:33,674 --> 00:59:35,590 Because that was not the diameter of the cube. 1060 00:59:35,590 --> 00:59:37,710 I see. 1061 00:59:37,710 --> 00:59:40,287 AUDIENCE: You want them equidistant. 1062 00:59:40,287 --> 00:59:40,870 PROFESSOR: No. 1063 00:59:40,870 --> 00:59:44,750 I do want this but, I think if I go 1064 00:59:44,750 --> 00:59:48,120 from the center of this square-- this is hard to draw. 1065 00:59:48,120 --> 00:59:54,570 --to the center of the back square, which is back here, 1066 00:59:54,570 --> 00:59:58,980 that distance is going to be wrapping around. 1067 00:59:58,980 --> 01:00:02,550 Which is just going to be like 2x. 1068 01:00:02,550 --> 01:00:04,812 Is that bigger or smaller than root 5x? 1069 01:00:04,812 --> 01:00:05,770 AUDIENCE: It's smaller. 1070 01:00:05,770 --> 01:00:07,560 PROFESSOR: Smaller. 1071 01:00:07,560 --> 01:00:08,060 Interesting. 1072 01:00:11,676 --> 01:00:16,100 One, two, three, four. 1073 01:00:16,100 --> 01:00:17,317 What did I do wrong? 1074 01:00:21,610 --> 01:00:22,410 Oh, I see. 1075 01:00:22,410 --> 01:00:23,710 OK. 1076 01:00:23,710 --> 01:00:25,600 Here's a fun fact. 1077 01:00:25,600 --> 01:00:29,280 This is actually the smallest antipodal distance. 1078 01:00:29,280 --> 01:00:30,470 Get this right. 1079 01:00:30,470 --> 01:00:32,530 So if you take some point on the cube, 1080 01:00:32,530 --> 01:00:34,290 and you look at the point farthest away 1081 01:00:34,290 --> 01:00:35,873 from it on the other side of the cube, 1082 01:00:35,873 --> 01:00:38,780 it will always be at least 2x away. 1083 01:00:38,780 --> 01:00:39,830 So here, it's bigger. 1084 01:00:39,830 --> 01:00:41,450 This is probably the diameter. 1085 01:00:41,450 --> 01:00:44,130 It's bigger than 2x, but it will always be at least 2x away. 1086 01:00:44,130 --> 01:00:48,380 This is actually the smallest situation you can get. 1087 01:00:48,380 --> 01:00:50,850 And so I want to think about the point that 1088 01:00:50,850 --> 01:00:53,260 corresponds to the center of the square. 1089 01:00:53,260 --> 01:00:53,870 Right? 1090 01:00:53,870 --> 01:00:55,880 Yes. 1091 01:00:55,880 --> 01:00:59,810 Now maybe that maps to the center like this. 1092 01:00:59,810 --> 01:01:03,390 And the antipodal points is 2x away, or maybe it's bigger. 1093 01:01:03,390 --> 01:01:09,060 But at least I know that this length is greater than or equal 1094 01:01:09,060 --> 01:01:15,200 to 2x because that's-- the antipodal point has to be made 1095 01:01:15,200 --> 01:01:16,540 from that. 1096 01:01:16,540 --> 01:01:18,290 I need to think about all situation 1097 01:01:18,290 --> 01:01:20,873 because I really want to think about the center of the square. 1098 01:01:20,873 --> 01:01:23,260 Once that is at least 2x, then I know 1099 01:01:23,260 --> 01:01:29,570 that the side of the square is at least 2 root 2x. 1100 01:01:29,570 --> 01:01:30,070 Yes. 1101 01:01:35,450 --> 01:01:40,780 And so I know that this is one. 1102 01:01:40,780 --> 01:01:41,880 And you work it out. 1103 01:01:41,880 --> 01:01:43,740 And x is root 2 over 4. 1104 01:01:46,910 --> 01:01:49,370 Or it's at most that. 1105 01:01:49,370 --> 01:01:52,235 And so that gives you some bound on what it takes. 1106 01:01:52,235 --> 01:01:54,110 So this is actually really the only technique 1107 01:01:54,110 --> 01:01:57,550 we know to prove lower bounds on how much-- how big 1108 01:01:57,550 --> 01:01:59,520 a square you need to make something. 1109 01:01:59,520 --> 01:02:02,540 It's this kind of distance increasing argument. 1110 01:02:02,540 --> 01:02:05,390 And it turns out you can actually achieve x equals this. 1111 01:02:05,390 --> 01:02:07,230 So this is what I call lower bound. 1112 01:02:07,230 --> 01:02:09,440 It says, you can't do any better than this. 1113 01:02:09,440 --> 01:02:16,310 But there's also a matching upper bound which achieves this 1114 01:02:16,310 --> 01:02:29,840 and not going to draw it perfectly. 1115 01:02:40,950 --> 01:02:42,760 So there are the six sides of the cube. 1116 01:02:42,760 --> 01:02:45,220 You've got one, two, three, four, five. 1117 01:02:45,220 --> 01:02:47,470 And the sixth one is split into quarters. 1118 01:02:47,470 --> 01:02:51,390 And you can see, you just actually fold here, here, 1119 01:02:51,390 --> 01:02:53,880 here, and here to get rid of that excess. 1120 01:02:53,880 --> 01:02:55,440 And it will come together as a cube. 1121 01:02:55,440 --> 01:02:57,320 You also fold along the edges of the cube. 1122 01:02:57,320 --> 01:03:00,180 And it perfectly achieves this property. 1123 01:03:00,180 --> 01:03:02,870 That from the center of the paper, 1124 01:03:02,870 --> 01:03:07,400 you have exactly one this distance 2 root 1125 01:03:07,400 --> 01:03:10,590 2x to the antipodal point which is 1126 01:03:10,590 --> 01:03:12,630 the center of the opposite face. 1127 01:03:12,630 --> 01:03:13,130 Question? 1128 01:03:13,130 --> 01:03:13,796 AUDIENCE: Sorry. 1129 01:03:13,796 --> 01:03:17,670 Can you explain where the 2x came from [INAUDIBLE]? 1130 01:03:17,670 --> 01:03:20,440 PROFESSOR: I wave my hands. 1131 01:03:20,440 --> 01:03:22,530 So I'm thinking about an arbitrary 1132 01:03:22,530 --> 01:03:24,410 point on the surface of the cube. 1133 01:03:24,410 --> 01:03:26,560 Here, it should be clear it's 2x. 1134 01:03:26,560 --> 01:03:28,350 There's x right here. 1135 01:03:28,350 --> 01:03:30,290 And there's 1/2x here. 1136 01:03:30,290 --> 01:03:32,800 And there's 1/2x on the back. 1137 01:03:32,800 --> 01:03:34,860 And I looked at another situation 1138 01:03:34,860 --> 01:03:38,335 which is when it was at a corner that bigger than 2x. 1139 01:03:38,335 --> 01:03:40,210 And I claim if you interpolate in the middle, 1140 01:03:40,210 --> 01:03:41,668 you'll get something in the middle, 1141 01:03:41,668 --> 01:03:44,920 in between 2x and root 5x. 1142 01:03:44,920 --> 01:03:46,830 For example, if take a point here 1143 01:03:46,830 --> 01:03:50,530 that's closer to the corner, then that 1144 01:03:50,530 --> 01:03:53,300 point-- you should probably also think about the edge case. 1145 01:03:53,300 --> 01:03:55,780 But you check all of them, and they're at least 2x. 1146 01:03:55,780 --> 01:03:57,480 That's what I'm claiming. 1147 01:03:57,480 --> 01:03:59,330 So I didn't really prove that formally. 1148 01:03:59,330 --> 01:04:03,820 But claim is 2x is the smallest antepodal pair you could get. 1149 01:04:03,820 --> 01:04:05,480 AUDIENCE: What does antipodal mean? 1150 01:04:05,480 --> 01:04:07,750 PROFESSOR: Antipodal simple means on the other side. 1151 01:04:07,750 --> 01:04:10,980 The anti pode, the opposite pole, like from North Pole 1152 01:04:10,980 --> 01:04:11,600 to South Pole. 1153 01:04:11,600 --> 01:04:12,516 AUDIENCE: [INAUDIBLE]. 1154 01:04:14,532 --> 01:04:15,990 PROFESSOR: Right now, we know we're 1155 01:04:15,990 --> 01:04:18,430 taking whatever point is the center of the square. 1156 01:04:18,430 --> 01:04:20,350 It maps somewhere in the cube. 1157 01:04:20,350 --> 01:04:21,760 I take the antipode from there. 1158 01:04:21,760 --> 01:04:26,540 I know that has to be at least 2x away. 1159 01:04:26,540 --> 01:04:29,850 And if you look at the distance map here, 1160 01:04:29,850 --> 01:04:32,480 the farthest away point in the squared from the center 1161 01:04:32,480 --> 01:04:34,230 is the corner point. 1162 01:04:34,230 --> 01:04:36,760 So I know that that distance can only get smaller. 1163 01:04:36,760 --> 01:04:38,800 And other distances only get smaller. 1164 01:04:38,800 --> 01:04:41,610 So if I have to make a 2x distance from there, 1165 01:04:41,610 --> 01:04:43,770 this is my best chance for doing it. 1166 01:04:43,770 --> 01:04:45,200 And that gives you a lower bound. 1167 01:04:45,200 --> 01:04:46,533 Doesn't mean it can be achieved. 1168 01:04:46,533 --> 01:04:49,260 But this shows you that you can achieve it. 1169 01:04:49,260 --> 01:04:53,550 This is a result by Catalano, Johnson, and Lobe in 2001. 1170 01:04:53,550 --> 01:04:56,341 It's like the only optimality result we have for folding 3D 1171 01:04:56,341 --> 01:04:56,840 shapes. 1172 01:04:56,840 --> 01:04:58,110 That's why I mention it. 1173 01:04:58,110 --> 01:05:00,379 Tons of fun open problems like you 1174 01:05:00,379 --> 01:05:01,920 don't want to make a square-- a cube. 1175 01:05:01,920 --> 01:05:06,190 Maybe you want to make a triangle. 1176 01:05:06,190 --> 01:05:08,240 If you want to cover a triangle on both sides, 1177 01:05:08,240 --> 01:05:09,280 that's probably open. 1178 01:05:09,280 --> 01:05:10,946 If you want to make regular tetrahedron, 1179 01:05:10,946 --> 01:05:12,050 that's probably open. 1180 01:05:12,050 --> 01:05:14,030 Pretty much any problem you pose here is open. 1181 01:05:14,030 --> 01:05:16,385 It would make fun project. 1182 01:05:16,385 --> 01:05:17,760 You can also think about, instead 1183 01:05:17,760 --> 01:05:19,176 of starting from square, you start 1184 01:05:19,176 --> 01:05:22,000 with a rectangle of some given aspect ratio. 1185 01:05:22,000 --> 01:05:23,696 What's the biggest cube you can make? 1186 01:05:23,696 --> 01:05:25,320 That's kind of fun because in the limit 1187 01:05:25,320 --> 01:05:28,800 for a super long rectangle, you should do strip wrapping. 1188 01:05:28,800 --> 01:05:30,520 For a square, we have the right answer. 1189 01:05:30,520 --> 01:05:32,760 What's the right answer in between? 1190 01:05:32,760 --> 01:05:33,260 Who knows. 1191 01:05:37,550 --> 01:05:42,070 The next thing I wanted to talk about where there's 1192 01:05:42,070 --> 01:05:45,080 been some recent progress is checkerboard folding. 1193 01:05:53,630 --> 01:05:57,190 In lecture one, I showed you this model which I never 1194 01:05:57,190 --> 01:05:59,950 go anywhere without, the four by four 1195 01:05:59,950 --> 01:06:06,460 checkerboard folded from one square paper, white on one side 1196 01:06:06,460 --> 01:06:08,020 and red on the other. 1197 01:06:08,020 --> 01:06:11,260 And so I think this is probably the most efficient way 1198 01:06:11,260 --> 01:06:13,310 to fold a four by four checkerboard. 1199 01:06:13,310 --> 01:06:14,835 You start with a square of one size, 1200 01:06:14,835 --> 01:06:16,874 and you shrink both dimensions by two. 1201 01:06:16,874 --> 01:06:18,540 And you get a four by four checkerboard. 1202 01:06:18,540 --> 01:06:20,081 But we don't know if this is the best 1203 01:06:20,081 --> 01:06:21,310 way to fold a checkerboard. 1204 01:06:21,310 --> 01:06:22,940 Be nice to know. 1205 01:06:22,940 --> 01:06:28,610 And this has been studied for a while. 1206 01:06:28,610 --> 01:06:31,110 And this is not the standard method 1207 01:06:31,110 --> 01:06:32,500 for folding a checkerboard. 1208 01:06:32,500 --> 01:06:34,010 But it's actually pretty efficient 1209 01:06:34,010 --> 01:06:37,180 which is kind of crazy. 1210 01:06:37,180 --> 01:06:39,000 So you take a square, white on one 1211 01:06:39,000 --> 01:06:40,620 side and brown on the other. 1212 01:06:40,620 --> 01:06:42,310 You do this accordion pleat. 1213 01:06:42,310 --> 01:06:46,420 You get a bunch of nice color reversals, bunch of squares. 1214 01:06:46,420 --> 01:06:50,910 And then, you just need to make a square of squares from that. 1215 01:06:50,910 --> 01:06:53,870 So general problem is, I want to fold an n by n checkerboard 1216 01:06:53,870 --> 01:06:55,360 from the smallest possible square. 1217 01:06:55,360 --> 01:06:58,340 How big does it have to be as a function of n? 1218 01:06:58,340 --> 01:07:01,670 And the standard approach is-- well, 1219 01:07:01,670 --> 01:07:03,700 this is the first method that does it 1220 01:07:03,700 --> 01:07:06,590 for all n in a general simple way. 1221 01:07:06,590 --> 01:07:08,120 But the practical foldings people 1222 01:07:08,120 --> 01:07:09,955 have designed, like four by four and there are a bunch of eight 1223 01:07:09,955 --> 01:07:12,850 by eights out there, are little more efficient than this. 1224 01:07:12,850 --> 01:07:14,410 But they have the same asymptotics 1225 01:07:14,410 --> 01:07:17,060 which is the perimeter of the square you start 1226 01:07:17,060 --> 01:07:20,580 with has to be about twice n squared 1227 01:07:20,580 --> 01:07:22,600 to make an n by n checkerboard. 1228 01:07:22,600 --> 01:07:24,800 And the reason that is, is if you 1229 01:07:24,800 --> 01:07:27,010 look at the checkerboard pattern, 1230 01:07:27,010 --> 01:07:29,700 we're trying to get color reversals along all 1231 01:07:29,700 --> 01:07:35,370 of these lines between the red and the white, brown and white. 1232 01:07:35,370 --> 01:07:37,120 And the way we're doing that here is we're 1233 01:07:37,120 --> 01:07:39,020 taking the boundary of the paper, 1234 01:07:39,020 --> 01:07:42,710 and we're mapping it along all the color reversals. 1235 01:07:42,710 --> 01:07:45,320 And if you work out how much color reversal is there 1236 01:07:45,320 --> 01:07:49,200 in an n by n thing, it's about twice n squared. 1237 01:07:49,200 --> 01:07:52,100 And so either your perimeter has to be at least that large 1238 01:07:52,100 --> 01:07:54,960 if you're going to cover the color reversals with perimeter. 1239 01:07:54,960 --> 01:07:58,130 And for a long time, we thought that was the best we could do 1240 01:07:58,130 --> 01:08:01,090 was to cover color reversals with a perimeter of paper. 1241 01:08:01,090 --> 01:08:03,620 Of course, know that you can take a square of paper 1242 01:08:03,620 --> 01:08:05,630 make the perimeter arbitrarily large. 1243 01:08:05,630 --> 01:08:08,770 So this was never really a lower bound. 1244 01:08:08,770 --> 01:08:12,890 We never really knew that you needed 2n squared. 1245 01:08:12,890 --> 01:08:15,440 The four by four achieves 2n squared. 1246 01:08:15,440 --> 01:08:18,720 We think it's the best for four by four, 1247 01:08:18,720 --> 01:08:20,939 but we proved last year-- this is 1248 01:08:20,939 --> 01:08:25,359 with Marty and [INAUDIBLE] and Robert Lang-- 1249 01:08:25,359 --> 01:08:28,735 that you can do better and get perimeter about n squared. 1250 01:08:28,735 --> 01:08:31,359 Now, there are some lower order terms there, the order n parts. 1251 01:08:31,359 --> 01:08:33,880 So this is really only practical for large n. 1252 01:08:33,880 --> 01:08:38,850 I think-- I'll elaborate on that a little more in a moment. 1253 01:08:38,850 --> 01:08:39,689 But here's the idea. 1254 01:08:39,689 --> 01:08:43,609 Instead of visiting all the boundaries 1255 01:08:43,609 --> 01:08:45,319 between red and white squares, I just 1256 01:08:45,319 --> 01:08:47,620 want to visit the squares themselves. 1257 01:08:47,620 --> 01:08:50,439 So if I could fold a, in this case 1258 01:08:50,439 --> 01:08:52,830 a rectangle paper into this shape 1259 01:08:52,830 --> 01:08:55,529 which has slits down the sides, and it 1260 01:08:55,529 --> 01:08:57,250 has these flaps hanging out. 1261 01:08:57,250 --> 01:08:59,620 Now, you've seen how to make flaps super efficiently. 1262 01:08:59,620 --> 01:09:01,550 You really don't need to shrink the paper 1263 01:09:01,550 --> 01:09:04,370 by very much to make this pattern. 1264 01:09:04,370 --> 01:09:08,779 Then, you take these guys-- and everything is white side up. 1265 01:09:08,779 --> 01:09:13,090 You take these flaps, fold them over. 1266 01:09:13,090 --> 01:09:15,189 They become brown. 1267 01:09:15,189 --> 01:09:17,229 And these guys fall over. 1268 01:09:17,229 --> 01:09:18,470 These fall down. 1269 01:09:18,470 --> 01:09:19,289 These guys fall up. 1270 01:09:19,289 --> 01:09:21,330 You can actually make any two color pixel pattern 1271 01:09:21,330 --> 01:09:22,770 from this idea. 1272 01:09:22,770 --> 01:09:26,710 And it will make white squares on top of the brown surface 1273 01:09:26,710 --> 01:09:28,420 that you folded. 1274 01:09:28,420 --> 01:09:29,870 So this is the starting point. 1275 01:09:29,870 --> 01:09:31,140 You just fold everything over. 1276 01:09:31,140 --> 01:09:33,350 And you get your checkerboard. 1277 01:09:33,350 --> 01:09:36,760 And now, essentially, you're visiting each square only once 1278 01:09:36,760 --> 01:09:38,850 instead of the boundary edge for all the squares. 1279 01:09:38,850 --> 01:09:40,439 And so you end up using only n squared 1280 01:09:40,439 --> 01:09:41,696 instead of twice n squared. 1281 01:09:41,696 --> 01:09:43,779 And you can do it if you start from a square also. 1282 01:09:43,779 --> 01:09:47,260 You just need more flaps. 1283 01:09:47,260 --> 01:09:50,920 And there's a bunch of tabs sticking up here, 1284 01:09:50,920 --> 01:09:52,800 and a bunch of tabs sticking up there. 1285 01:09:52,800 --> 01:09:54,550 You can fold this again super efficiently, 1286 01:09:54,550 --> 01:09:57,590 using all these standard techniques. 1287 01:09:57,590 --> 01:09:59,640 And then, you make a checkerboard twice as 1288 01:09:59,640 --> 01:10:04,370 efficient for large n as we've previously thought possible. 1289 01:10:04,370 --> 01:10:07,200 Now, we still don't know whether this is optimal. 1290 01:10:07,200 --> 01:10:08,330 We think it is. 1291 01:10:08,330 --> 01:10:11,370 But we thought so before also. 1292 01:10:14,340 --> 01:10:16,640 Who knows? 1293 01:10:16,640 --> 01:10:19,410 So big open problem is [INAUDIBLE] for anything. 1294 01:10:19,410 --> 01:10:25,270 In terms of actual values of n, for n bigger than 16, 1295 01:10:25,270 --> 01:10:31,120 this method is better than the standard approach. 1296 01:10:31,120 --> 01:10:36,756 Although if you look just at seamless-- so seamless, 1297 01:10:36,756 --> 01:10:38,130 I didn't mention, but we're going 1298 01:10:38,130 --> 01:10:39,820 to talk about it more in a moment. 1299 01:10:39,820 --> 01:10:41,870 When I make a square of a checkerboard, 1300 01:10:41,870 --> 01:10:45,160 I'd really like this to be a single panel of paper 1301 01:10:45,160 --> 01:10:47,200 not divided into little panels. 1302 01:10:47,200 --> 01:10:50,030 And like in this checkerboard, this white square 1303 01:10:50,030 --> 01:10:51,450 has a bunch of seems on it. 1304 01:10:51,450 --> 01:10:54,080 It's made out of three smaller triangles. 1305 01:10:54,080 --> 01:10:55,710 And that's not so nice. 1306 01:10:55,710 --> 01:10:57,240 This method is seamless. 1307 01:10:57,240 --> 01:11:00,230 You get whole panels making each of your squares, 1308 01:11:00,230 --> 01:11:01,930 so it looks a little prettier. 1309 01:11:01,930 --> 01:11:04,450 If you look at the best eight by eight seamless folding, 1310 01:11:04,450 --> 01:11:07,550 this beats the best seamless eight by eight folding. 1311 01:11:07,550 --> 01:11:09,700 Although it's rather difficult to fold. 1312 01:11:09,700 --> 01:11:11,214 Hasn't yet been folded. 1313 01:11:11,214 --> 01:11:12,630 That would be a good project also. 1314 01:11:16,070 --> 01:11:18,010 Build an actual checkerboard with this method. 1315 01:11:21,450 --> 01:11:24,040 Questions? 1316 01:11:24,040 --> 01:11:25,810 Now, I want to move to the general case. 1317 01:11:25,810 --> 01:11:29,100 So I talked a little bit about checkerboards and about cubes. 1318 01:11:29,100 --> 01:11:31,320 Let's think about arbitrary polyhedra. 1319 01:11:31,320 --> 01:11:32,660 And this is the Origamizer. 1320 01:11:54,340 --> 01:11:56,880 So Origamizer's actually two things. 1321 01:11:56,880 --> 01:12:00,460 It's a computer program for Windows that you can download, 1322 01:12:00,460 --> 01:12:02,880 and it's an algorithm. 1323 01:12:02,880 --> 01:12:04,730 And they're not quite the same. 1324 01:12:04,730 --> 01:12:06,990 So there's original computer program 1325 01:12:06,990 --> 01:12:09,750 and Tomohiro Tachi wrote a couple papers about it. 1326 01:12:09,750 --> 01:12:13,020 That program does not always work. 1327 01:12:13,020 --> 01:12:15,140 Doesn't make every polyhedron. 1328 01:12:15,140 --> 01:12:19,990 It need some finesse to make it work, but it's super efficient. 1329 01:12:19,990 --> 01:12:20,790 And it's practical. 1330 01:12:20,790 --> 01:12:23,060 He's made lots of models with it like the bunny 1331 01:12:23,060 --> 01:12:25,450 you've seen on the poster. 1332 01:12:25,450 --> 01:12:27,980 There's the algorithm, which we developed together. 1333 01:12:27,980 --> 01:12:30,520 And we know it's similar. 1334 01:12:30,520 --> 01:12:32,630 And we know it always works. 1335 01:12:32,630 --> 01:12:35,910 But it's a little bit less practical. 1336 01:12:35,910 --> 01:12:39,960 So it's-- theory's always a little behind practice, 1337 01:12:39,960 --> 01:12:40,460 let's say. 1338 01:12:40,460 --> 01:12:42,046 So there's a practical thing here. 1339 01:12:42,046 --> 01:12:44,170 There's also a theoretically guaranteed thing here. 1340 01:12:44,170 --> 01:12:46,399 They're not quite the same, but they're very similar. 1341 01:12:46,399 --> 01:12:47,690 I'm going to tell you a little. 1342 01:12:47,690 --> 01:12:50,640 I'll show you both, basically. 1343 01:12:50,640 --> 01:12:56,160 But the idea is, a practical algorithm 1344 01:12:56,160 --> 01:12:58,215 to fold any polyhedron. 1345 01:13:11,710 --> 01:13:14,360 And practical here is a bit vague. 1346 01:13:14,360 --> 01:13:16,920 We don't-- that's not a theorem. 1347 01:13:16,920 --> 01:13:20,791 We don't know how to define practical in mathematics 1348 01:13:20,791 --> 01:13:21,290 anyway. 1349 01:13:24,550 --> 01:13:27,200 It has some fun features, though, mathematically. 1350 01:13:27,200 --> 01:13:29,050 One is that it's seamless. 1351 01:13:29,050 --> 01:13:34,076 So for it to be seamless, I need to assume convex faces. 1352 01:13:36,690 --> 01:13:39,130 So faces are the sides of the polyhedron. 1353 01:13:39,130 --> 01:13:41,890 So like in a cube, every face is a square. 1354 01:13:41,890 --> 01:13:43,510 Those are convex. 1355 01:13:43,510 --> 01:13:45,930 And provided all the faces are convex, if they're not, 1356 01:13:45,930 --> 01:13:48,920 you have to cut them up into convex pieces. 1357 01:13:48,920 --> 01:13:51,320 My folding will be seamless in that 1358 01:13:51,320 --> 01:13:53,740 it will be covered by an entire piece of paper. 1359 01:13:53,740 --> 01:13:56,090 There maybe other things hidden underneath. 1360 01:13:56,090 --> 01:14:01,300 But there won't be any visible seems on the top side. 1361 01:14:01,300 --> 01:14:02,290 So that's nice. 1362 01:14:04,870 --> 01:14:07,055 It's also water tight. 1363 01:14:13,290 --> 01:14:15,700 And for this, I have an illustration. 1364 01:14:15,700 --> 01:14:17,854 This is a feature missed by the strip method. 1365 01:14:17,854 --> 01:14:19,520 And if you've always felt like the strip 1366 01:14:19,520 --> 01:14:21,270 method of making anything is cheating, 1367 01:14:21,270 --> 01:14:25,220 here's a nice formal sense in which it's cheating. 1368 01:14:25,220 --> 01:14:28,560 We didn't realize it until we start talking about Origamizer 1369 01:14:28,560 --> 01:14:31,820 which does not have this cheating sense. 1370 01:14:31,820 --> 01:14:35,140 So here I'm trying to make a 3D surface, looks 1371 01:14:35,140 --> 01:14:38,590 like a saddle surface, by a strip. 1372 01:14:38,590 --> 01:14:41,835 If I just visited the guys in this nice zigzag order, which 1373 01:14:41,835 --> 01:14:46,020 I know is possible, I get all these slits down the sides. 1374 01:14:46,020 --> 01:14:47,550 This thing would not hold water. 1375 01:14:47,550 --> 01:14:49,008 If you poured water on it, it would 1376 01:14:49,008 --> 01:14:51,270 fall through all the cracks. 1377 01:14:51,270 --> 01:14:55,110 And if I fold it right, like in this picture, 1378 01:14:55,110 --> 01:14:56,690 there should be no seems in here. 1379 01:14:56,690 --> 01:15:00,450 The square, the boundary of the squares is what's drawn in red. 1380 01:15:00,450 --> 01:15:02,740 So here the boundary of your piece of paper 1381 01:15:02,740 --> 01:15:04,160 gets mapped all over the place. 1382 01:15:04,160 --> 01:15:05,600 So it's lots of holes. 1383 01:15:05,600 --> 01:15:07,480 Here, I want the boundary of the paper 1384 01:15:07,480 --> 01:15:11,600 to be the same as the boundary of the surface. 1385 01:15:11,600 --> 01:15:14,980 So the only place the water to run off is at the edge. 1386 01:15:14,980 --> 01:15:18,690 I mean, obviously, this thing is not a closed solid. 1387 01:15:18,690 --> 01:15:20,469 But if you actually made a cube, you're 1388 01:15:20,469 --> 01:15:22,510 still going to get some edge because the boundary 1389 01:15:22,510 --> 01:15:24,090 paper has to go somewhere. 1390 01:15:24,090 --> 01:15:26,440 But if you then sewed up the edge, 1391 01:15:26,440 --> 01:15:30,220 it would totally hold water. 1392 01:15:30,220 --> 01:15:33,390 So that is the informal version of watertight. 1393 01:15:33,390 --> 01:15:36,470 The formal version is the boundary 1394 01:15:36,470 --> 01:15:47,890 of the paper maps within some tiny distance 1395 01:15:47,890 --> 01:15:51,245 epsilon of the boundary of the surface, boundary 1396 01:15:51,245 --> 01:15:52,000 of the polyhedron. 1397 01:15:58,470 --> 01:16:02,730 And here, when I say polyhedron, I really 1398 01:16:02,730 --> 01:16:05,875 means something that's topologically a disk. 1399 01:16:12,770 --> 01:16:15,410 Brief topology. 1400 01:16:15,410 --> 01:16:18,050 This is a disk. 1401 01:16:18,050 --> 01:16:20,730 This is a disk. 1402 01:16:20,730 --> 01:16:23,995 This is not a disk. 1403 01:16:28,520 --> 01:16:30,586 Cube is not a disk. 1404 01:16:30,586 --> 01:16:31,450 It's a sphere. 1405 01:16:34,590 --> 01:16:36,010 This is a disk. 1406 01:16:36,010 --> 01:16:37,140 A piece of paper is a disk. 1407 01:16:37,140 --> 01:16:39,390 So really the only things you could fold topologically 1408 01:16:39,390 --> 01:16:43,270 in a pure sense in a water tight sense are disks. 1409 01:16:43,270 --> 01:16:44,900 You can't glue things together. 1410 01:16:44,900 --> 01:16:46,760 That's not in the rules. 1411 01:16:46,760 --> 01:16:49,550 So I can't make-- I could fold this. 1412 01:16:49,550 --> 01:16:51,910 But I'd have to have an extra seem somewhere 1413 01:16:51,910 --> 01:16:54,730 in order to make this thing just be a disk. 1414 01:16:54,730 --> 01:16:56,160 I could fold a cube. 1415 01:16:56,160 --> 01:16:58,950 But I have to have some seem somewhere. 1416 01:16:58,950 --> 01:17:02,840 Here-- the top-- a square gets cut into four pieces 1417 01:17:02,840 --> 01:17:04,280 in order to make it into a disk. 1418 01:17:04,280 --> 01:17:08,590 Any higher topology can be cut down and made a disk. 1419 01:17:08,590 --> 01:17:09,770 So this is still universal. 1420 01:17:09,770 --> 01:17:11,270 But in terms of the water tightness, 1421 01:17:11,270 --> 01:17:14,270 you have to think about the disk version. 1422 01:17:14,270 --> 01:17:15,035 AUDIENCE: Erik? 1423 01:17:15,035 --> 01:17:15,660 PROFESSOR: Yes. 1424 01:17:15,660 --> 01:17:18,588 AUDIENCE: Even when you go back and forth with the script 1425 01:17:18,588 --> 01:17:21,887 method, you could argue that that was topologically a disk. 1426 01:17:21,887 --> 01:17:22,720 PROFESSOR: Oh, yeah. 1427 01:17:22,720 --> 01:17:25,650 Anything, any folding you make is still topologically a disk. 1428 01:17:25,650 --> 01:17:26,940 This is making a disk. 1429 01:17:26,940 --> 01:17:29,060 But it's doesn't preserve the boundary. 1430 01:17:29,060 --> 01:17:29,820 AUDIENCE: It what? 1431 01:17:29,820 --> 01:17:30,980 PROFESSOR: It's not preserving the boundary. 1432 01:17:30,980 --> 01:17:31,480 So yeah. 1433 01:17:31,480 --> 01:17:33,620 Any origami, you're still disk like, 1434 01:17:33,620 --> 01:17:36,300 and you're watertight for some disk surface. 1435 01:17:36,300 --> 01:17:40,520 But I want to make this disk surface with that boundary. 1436 01:17:40,520 --> 01:17:44,310 And watertightness is supposed to match the given boundary. 1437 01:17:44,310 --> 01:17:46,270 But that boundary must form a disk. 1438 01:17:46,270 --> 01:17:46,980 That's the point. 1439 01:17:46,980 --> 01:17:48,950 I can't say, oh, there's no boundary in a cube. 1440 01:17:48,950 --> 01:17:51,490 So you have-- so the boundary of paper goes nowhere. 1441 01:17:51,490 --> 01:17:53,530 That's not allowed. 1442 01:17:53,530 --> 01:17:57,892 So you get to specify it, but it has to be a disk. 1443 01:17:57,892 --> 01:17:59,724 I'm going to wave my hand some more. 1444 01:17:59,724 --> 01:18:02,140 There's another feature which you can see in this picture. 1445 01:18:02,140 --> 01:18:05,860 This is a schematic of what Origamizer would produce which 1446 01:18:05,860 --> 01:18:09,510 is that there's some extra stuff underneath. 1447 01:18:09,510 --> 01:18:13,020 It's slightly lighter because it's on the bottom side there. 1448 01:18:13,020 --> 01:18:14,850 But you can see along every edge, 1449 01:18:14,850 --> 01:18:16,770 these are the edges of the actual polyhedron. 1450 01:18:16,770 --> 01:18:18,650 And then, there's these extra little tabs, 1451 01:18:18,650 --> 01:18:21,190 extra flaps on the underside. 1452 01:18:21,190 --> 01:18:22,440 This is actually necessary. 1453 01:18:22,440 --> 01:18:24,600 If you want watertightness, you can't 1454 01:18:24,600 --> 01:18:27,100 fold exactly that polyhedron. 1455 01:18:27,100 --> 01:18:29,720 You fold a slightly thickened version. 1456 01:18:29,720 --> 01:18:31,980 But you can keep all those flaps on one side. 1457 01:18:31,980 --> 01:18:34,127 So if you're making something like a cube, 1458 01:18:34,127 --> 01:18:35,835 you can put all the garbage on the inside 1459 01:18:35,835 --> 01:18:38,320 where no one can see it. 1460 01:18:38,320 --> 01:18:42,455 So there's another feature here is we get a little extra. 1461 01:18:48,200 --> 01:18:50,869 And that's necessary if you want watertightness. 1462 01:18:50,869 --> 01:18:52,410 And it's sort of the trick that makes 1463 01:18:52,410 --> 01:18:54,640 all of this possible and efficient and so on. 1464 01:18:57,570 --> 01:19:00,455 So the high level idea of Origamizer 1465 01:19:00,455 --> 01:19:03,030 is we're going to say, there's all these faces 1466 01:19:03,030 --> 01:19:05,780 that we need to make. 1467 01:19:05,780 --> 01:19:09,010 So just plop them down on the piece of paper somewhere. 1468 01:19:09,010 --> 01:19:11,390 And then, fold away the excess. 1469 01:19:11,390 --> 01:19:13,850 Get rid of it by tucking. 1470 01:19:13,850 --> 01:19:15,700 And that excess paper is going to get 1471 01:19:15,700 --> 01:19:19,480 mapped into these little chunks here. 1472 01:19:19,480 --> 01:19:21,980 And maybe I'll show you a demo. 1473 01:19:28,110 --> 01:19:31,600 So you takes something like-- this 1474 01:19:31,600 --> 01:19:34,510 is similar to the thing I was showing. 1475 01:19:34,510 --> 01:19:36,335 And I forgot a mouse. 1476 01:19:40,610 --> 01:19:42,660 There are all the faces in the plane. 1477 01:19:42,660 --> 01:19:45,490 And they've conveniently already been arranged. 1478 01:19:45,490 --> 01:19:48,720 I can't zoom out because I lack scroll wheel. 1479 01:19:48,720 --> 01:19:55,450 But there's a square that makes the-- yeah, 1480 01:19:55,450 --> 01:19:57,460 or a multi-touch trackpad. 1481 01:19:57,460 --> 01:19:59,300 Sorry. 1482 01:19:59,300 --> 01:20:00,900 And all the faces are just there. 1483 01:20:00,900 --> 01:20:02,350 And then there's this extra stuff. 1484 01:20:02,350 --> 01:20:06,760 And now I say-- I should probably do this, too. 1485 01:20:06,760 --> 01:20:08,130 Maybe not. 1486 01:20:08,130 --> 01:20:09,520 Well, all right. 1487 01:20:09,520 --> 01:20:15,010 And then I say, crease pattern. 1488 01:20:15,010 --> 01:20:15,510 Boom. 1489 01:20:15,510 --> 01:20:16,810 That folds away the excess. 1490 01:20:16,810 --> 01:20:18,930 And then, just the white faces, these guys 1491 01:20:18,930 --> 01:20:24,520 which correspond faces over there, are used. 1492 01:20:24,520 --> 01:20:27,440 And then, you just fold away the extra junk. 1493 01:20:27,440 --> 01:20:29,940 Easy. 1494 01:20:29,940 --> 01:20:31,170 You want to make a bunny. 1495 01:20:35,280 --> 01:20:36,770 This is actually an example where 1496 01:20:36,770 --> 01:20:40,985 it will not work by itself. 1497 01:20:40,985 --> 01:20:42,360 Because as I said, this algorithm 1498 01:20:42,360 --> 01:20:45,550 is not quite guaranteed to work. 1499 01:20:45,550 --> 01:20:49,780 So I'm going to change the boundary little bit 1500 01:20:49,780 --> 01:20:55,180 by cutting to the ears. 1501 01:20:55,180 --> 01:20:57,360 And so this is still-- it was a disk before. 1502 01:20:57,360 --> 01:21:00,810 It's a disk after because there's this boundary here. 1503 01:21:00,810 --> 01:21:02,520 But it turns out, now the algorithm 1504 01:21:02,520 --> 01:21:04,900 will work, assuming I didn't mess up. 1505 01:21:09,070 --> 01:21:11,760 It's bouncing around a little bit. 1506 01:21:11,760 --> 01:21:13,480 You can see it's pretty efficient here. 1507 01:21:13,480 --> 01:21:17,010 There's very tiny gaps between the triangles. 1508 01:21:17,010 --> 01:21:19,090 There's actually a little bit a violation here. 1509 01:21:19,090 --> 01:21:23,350 What's happening, which you can see here, is, on the inside 1510 01:21:23,350 --> 01:21:26,160 are all this extra structure, these flaps. 1511 01:21:26,160 --> 01:21:28,340 And sometimes they're so big that they actually 1512 01:21:28,340 --> 01:21:29,780 penetrate the surface. 1513 01:21:29,780 --> 01:21:34,480 But that can be dealt with by just a little bit of cutting, 1514 01:21:34,480 --> 01:21:36,730 maybe a little more cutting. 1515 01:21:36,730 --> 01:21:38,800 Not cutting in the literal sense. 1516 01:21:38,800 --> 01:21:40,600 But we just subdivided these panels 1517 01:21:40,600 --> 01:21:42,260 into lots of smaller panels. 1518 01:21:42,260 --> 01:21:45,450 And now, it is valid. 1519 01:21:45,450 --> 01:21:48,310 This not the design that you've seen on the poster. 1520 01:21:48,310 --> 01:21:50,390 The design on poster's little more efficient. 1521 01:21:50,390 --> 01:21:52,020 I'm not so expert. 1522 01:21:52,020 --> 01:21:54,820 I'm not so pro that I can make exactly that design. 1523 01:21:54,820 --> 01:21:57,020 So it's a little inefficient on the sides here. 1524 01:21:57,020 --> 01:21:59,840 But you can use this tool to make super complicated 3D 1525 01:21:59,840 --> 01:22:01,120 models. 1526 01:22:01,120 --> 01:22:06,110 Let me quickly tell you what goes into the algorithm. 1527 01:22:06,110 --> 01:22:08,560 So the first part is to figure out 1528 01:22:08,560 --> 01:22:10,820 where all these tucks are going to go. 1529 01:22:10,820 --> 01:22:13,970 They lie essentially along angular bisectors 1530 01:22:13,970 --> 01:22:16,410 on one side of every edge. 1531 01:22:16,410 --> 01:22:19,820 But at the vertices, things are super complicated. 1532 01:22:19,820 --> 01:22:22,880 And in general, if you have a non-convex surface with tons 1533 01:22:22,880 --> 01:22:25,770 of material coming together, what I'd like to do 1534 01:22:25,770 --> 01:22:28,570 is add lots of little flaps on the side. 1535 01:22:28,570 --> 01:22:31,450 So that when I open it up-- so let 1536 01:22:31,450 --> 01:22:33,700 me draw you a generic picture. 1537 01:22:33,700 --> 01:22:36,350 So we have two faces coming together. 1538 01:22:36,350 --> 01:22:40,680 What I'd like to do is add a flap here 1539 01:22:40,680 --> 01:22:43,900 and a corresponding one just behind it. 1540 01:22:43,900 --> 01:22:45,105 So that's sort of a tab. 1541 01:22:49,110 --> 01:22:52,220 And I can unfold that and think of some other surface 1542 01:22:52,220 --> 01:22:53,470 that I'm trying to fold. 1543 01:22:53,470 --> 01:22:56,450 So I really wanted just those two polygons. 1544 01:22:56,450 --> 01:22:59,610 But now, I've made some other thing which is still a disk. 1545 01:22:59,610 --> 01:23:02,980 You can add those faces in such a way that you will have, 1546 01:23:02,980 --> 01:23:05,690 at most, 360 degrees of material everywhere. 1547 01:23:05,690 --> 01:23:07,760 So even though in the original thing, 1548 01:23:07,760 --> 01:23:10,190 you had maybe tons of material coming together which you 1549 01:23:10,190 --> 01:23:13,360 cannot make with real paper, you add in a bunch of tabs along 1550 01:23:13,360 --> 01:23:15,480 the edges and a few more at the vertices. 1551 01:23:15,480 --> 01:23:18,660 You can fix things so that the thing is actually 1552 01:23:18,660 --> 01:23:20,940 makeable from one sheet of paper. 1553 01:23:20,940 --> 01:23:22,852 That's the high level idea. 1554 01:23:22,852 --> 01:23:24,060 Doing that is a bit detailed. 1555 01:23:24,060 --> 01:23:25,351 The paper isn't even published. 1556 01:23:25,351 --> 01:23:26,784 These are some figures from it. 1557 01:23:26,784 --> 01:23:28,200 But this is some-- way this is how 1558 01:23:28,200 --> 01:23:31,050 you resolve a vertex with some triangulation stuff. 1559 01:23:31,050 --> 01:23:35,180 Each of these corresponds to a flap in the original thing. 1560 01:23:35,180 --> 01:23:40,216 And then, this is where we're a little impractical. 1561 01:23:40,216 --> 01:23:42,030 It doesn't quite match what we do 1562 01:23:42,030 --> 01:23:44,900 in practice in the computer program. 1563 01:23:44,900 --> 01:23:47,300 But the idea is, you imagine, you have your faces which 1564 01:23:47,300 --> 01:23:50,430 you want to bring together somehow. 1565 01:23:50,430 --> 01:23:54,690 They're distributed in the piece of paper somewhere. 1566 01:23:54,690 --> 01:23:56,810 But you'd really like to connect them together 1567 01:23:56,810 --> 01:23:58,270 when they have matching edges. 1568 01:23:58,270 --> 01:24:00,570 So this edge might be glued to some edge 1569 01:24:00,570 --> 01:24:02,700 of some other triangle. 1570 01:24:02,700 --> 01:24:07,775 And I need to just navigate these little river-like strips 1571 01:24:07,775 --> 01:24:09,150 to visit one edge from the other. 1572 01:24:09,150 --> 01:24:12,050 And we proved that if these guys are sufficiently tiny, 1573 01:24:12,050 --> 01:24:13,270 you can always do that. 1574 01:24:13,270 --> 01:24:15,659 And of course, in reality, you want to arrange things, 1575 01:24:15,659 --> 01:24:17,700 so you can do it efficiently with little wastage. 1576 01:24:17,700 --> 01:24:19,825 But we proved at least it's possible with this kind 1577 01:24:19,825 --> 01:24:21,005 of wiggly path stuff. 1578 01:24:24,530 --> 01:24:26,850 So now our picture, the thing we're trying to make 1579 01:24:26,850 --> 01:24:28,190 looks something like that. 1580 01:24:28,190 --> 01:24:30,400 Where we have-- originally it was four triangles, 1581 01:24:30,400 --> 01:24:31,480 the gray triangles. 1582 01:24:31,480 --> 01:24:34,350 We added in these extra flaps so that it's 1583 01:24:34,350 --> 01:24:36,720 nice and well-behaved. 1584 01:24:36,720 --> 01:24:40,780 And each of those flaps we're covering from both sides. 1585 01:24:40,780 --> 01:24:48,610 And if you think the red diagram-- I'll get this right. 1586 01:24:48,610 --> 01:24:50,190 The red diagram corresponds to that. 1587 01:24:50,190 --> 01:24:52,060 It's just been kind of squashed. 1588 01:24:52,060 --> 01:24:53,620 So there are four triangles, which 1589 01:24:53,620 --> 01:24:55,530 correspond to the four top flaps. 1590 01:24:55,530 --> 01:25:02,010 And there's this outer chunk which corresponds to that flap. 1591 01:25:02,010 --> 01:25:05,950 And then, you look at the dual which is the blue diagram. 1592 01:25:05,950 --> 01:25:07,820 You take that picture, and that's 1593 01:25:07,820 --> 01:25:11,390 how you set up the crease pattern essentially. 1594 01:25:11,390 --> 01:25:13,430 So these are the original four triangles. 1595 01:25:13,430 --> 01:25:13,930 And then. 1596 01:25:13,930 --> 01:25:16,190 There's all this stuff that represents 1597 01:25:16,190 --> 01:25:19,230 the structure of that thing that we want to make. 1598 01:25:19,230 --> 01:25:22,220 And then, you just have to fill in the creases in the middle. 1599 01:25:22,220 --> 01:25:24,900 And you do that just with something-- 1600 01:25:24,900 --> 01:25:26,900 this is how you do it guaranteed correct. 1601 01:25:26,900 --> 01:25:29,570 And we saw I had to do lots of subdivision here. 1602 01:25:29,570 --> 01:25:32,030 What I called, accidentally, cutting. 1603 01:25:32,030 --> 01:25:34,660 But just lots of pleats there. 1604 01:25:34,660 --> 01:25:37,350 Because, essentially, this is the edge. 1605 01:25:37,350 --> 01:25:40,091 And we want that edge to lie in a tiny little tab. 1606 01:25:40,091 --> 01:25:41,965 So it's got to go up and down and up and down 1607 01:25:41,965 --> 01:25:43,970 and up and down, accordion style. 1608 01:25:43,970 --> 01:25:46,110 And if you do it right, all those things 1609 01:25:46,110 --> 01:25:49,400 will collapse down to a little tab attached 1610 01:25:49,400 --> 01:25:51,530 to that edge which is also attach that edge. 1611 01:25:51,530 --> 01:25:52,771 And they will get joined up. 1612 01:25:52,771 --> 01:25:55,270 Then, you've got to get rid of all this stuff in the middle. 1613 01:25:55,270 --> 01:25:57,980 And rough idea is, if you pack it with-- 1614 01:25:57,980 --> 01:26:00,230 or I guess you cover it with disks 1615 01:26:00,230 --> 01:26:02,730 so that everything is again very tiny. 1616 01:26:02,730 --> 01:26:06,430 And you fold what's called the [INAUDIBLE] with those points. 1617 01:26:06,430 --> 01:26:09,020 And it works. 1618 01:26:09,020 --> 01:26:11,850 It's a complicated but very cool. 1619 01:26:11,850 --> 01:26:16,650 And the paper hopefully will be released later this year 1620 01:26:16,650 --> 01:26:17,560 finally. 1621 01:26:17,560 --> 01:26:19,560 And that's Origamizer. 1622 01:26:19,560 --> 01:26:22,030 And that's efficient origami design.