1 00:00:11,307 --> 00:00:14,491 So what does it mean for a machine to be athletic? 2 00:00:14,491 --> 00:00:17,908 We will demonstrate the concept of machine athleticism 3 00:00:17,908 --> 00:00:19,628 and the research to achieve it 4 00:00:19,628 --> 00:00:22,139 with the help of these flying machines called quadrocopters, 5 00:00:22,139 --> 00:00:24,026 or quads, for short. 6 00:00:26,034 --> 00:00:28,563 Quads have been around for a long time. 7 00:00:28,563 --> 00:00:30,162 The reason that they're so popular these days 8 00:00:30,162 --> 00:00:32,127 is because they're mechanically simple. 9 00:00:32,127 --> 00:00:34,235 By controlling the speeds of these four propellers, 10 00:00:34,235 --> 00:00:37,283 these machines can roll, pitch, yaw, 11 00:00:37,283 --> 00:00:40,108 and accelerate along their common orientation. 12 00:00:40,108 --> 00:00:43,179 On board are also a battery, a computer, 13 00:00:43,179 --> 00:00:47,133 various sensors and wireless radios. 14 00:00:47,133 --> 00:00:51,762 Quads are extremely agile, but this agility comes at a cost. 15 00:00:51,762 --> 00:00:54,754 They are inherently unstable, and they need some form 16 00:00:54,754 --> 00:00:58,726 of automatic feedback control in order to be able to fly. 17 00:01:04,259 --> 00:01:07,497 So, how did it just do that? 18 00:01:07,497 --> 00:01:09,315 Cameras on the ceiling and a laptop 19 00:01:09,315 --> 00:01:11,891 serve as an indoor global positioning system. 20 00:01:11,891 --> 00:01:14,076 It's used to locate objects in the space 21 00:01:14,076 --> 00:01:16,603 that have these reflective markers on them. 22 00:01:16,603 --> 00:01:18,664 This data is then sent to another laptop 23 00:01:18,664 --> 00:01:20,875 that is running estimation and control algorithms, 24 00:01:20,875 --> 00:01:22,761 which in turn sends commands to the quad, 25 00:01:22,761 --> 00:01:26,246 which is also running estimation and control algorithms. 26 00:01:29,620 --> 00:01:32,130 The bulk of our research is algorithms. 27 00:01:32,130 --> 00:01:36,291 It's the magic that brings these machines to life. 28 00:01:36,291 --> 00:01:38,334 So how does one design the algorithms 29 00:01:38,334 --> 00:01:40,611 that create a machine athlete? 30 00:01:40,611 --> 00:01:43,491 We use something broadly called model-based design. 31 00:01:43,491 --> 00:01:46,645 We first capture the physics with a mathematical model 32 00:01:46,645 --> 00:01:48,779 of how the machines behave. 33 00:01:48,779 --> 00:01:51,076 We then use a branch of mathematics 34 00:01:51,076 --> 00:01:53,907 called control theory to analyze these models 35 00:01:53,907 --> 00:01:57,820 and also to synthesize algorithms for controlling them. 36 00:01:57,820 --> 00:02:00,868 For example, that's how we can make the quad hover. 37 00:02:00,868 --> 00:02:02,276 We first captured the dynamics 38 00:02:02,276 --> 00:02:04,182 with a set of differential equations. 39 00:02:04,182 --> 00:02:06,531 We then manipulate these equations with the help 40 00:02:06,531 --> 00:02:11,171 of control theory to create algorithms that stabilize the quad. 41 00:02:11,171 --> 00:02:14,117 Let me demonstrate the strength of this approach. 42 00:02:17,198 --> 00:02:19,747 Suppose that we want this quad to not only hover 43 00:02:19,747 --> 00:02:22,529 but to also balance this pole. 44 00:02:22,529 --> 00:02:24,373 With a little bit of practice, 45 00:02:24,373 --> 00:02:26,764 it's pretty straightforward for a human being to do this, 46 00:02:26,764 --> 00:02:28,519 although we do have the advantage of having 47 00:02:28,519 --> 00:02:29,847 two feet on the ground 48 00:02:29,847 --> 00:02:32,804 and the use of our very versatile hands. 49 00:02:32,804 --> 00:02:35,273 It becomes a little bit more difficult 50 00:02:35,273 --> 00:02:37,569 when I only have one foot on the ground 51 00:02:37,569 --> 00:02:40,368 and when I don't use my hands. 52 00:02:40,368 --> 00:02:43,319 Notice how this pole has a reflective marker on top, 53 00:02:43,319 --> 00:02:47,213 which means that it can be located in the space. 54 00:02:52,971 --> 00:02:58,947 (Applause) 55 00:02:58,947 --> 00:03:01,773 You can notice that this quad is making fine adjustments 56 00:03:01,773 --> 00:03:03,968 to keep the pole balanced. 57 00:03:03,968 --> 00:03:07,027 How did we design the algorithms to do this? 58 00:03:07,027 --> 00:03:09,132 We added the mathematical model of the pole 59 00:03:09,132 --> 00:03:10,651 to that of the quad. 60 00:03:10,651 --> 00:03:13,605 Once we have a model of the combined quad-pole system, 61 00:03:13,605 --> 00:03:18,538 we can use control theory to create algorithms for controlling it. 62 00:03:18,538 --> 00:03:20,126 Here, you see that it's stable, 63 00:03:20,126 --> 00:03:22,819 and even if I give it little nudges, 64 00:03:22,819 --> 00:03:28,222 it goes back to the nice, balanced position. 65 00:03:28,222 --> 00:03:29,885 We can also augment the model to include 66 00:03:29,885 --> 00:03:32,326 where we want the quad to be in space. 67 00:03:32,326 --> 00:03:35,395 Using this pointer, made out of reflective markers, 68 00:03:35,395 --> 00:03:37,619 I can point to where I want the quad to be in space 69 00:03:37,619 --> 00:03:40,986 a fixed distance away from me. 70 00:03:55,763 --> 00:03:58,665 The key to these acrobatic maneuvers is algorithms, 71 00:03:58,665 --> 00:04:01,091 designed with the help of mathematical models 72 00:04:01,091 --> 00:04:03,041 and control theory. 73 00:04:03,041 --> 00:04:05,255 Let's tell the quad to come back here 74 00:04:05,255 --> 00:04:07,074 and let the pole drop, 75 00:04:07,074 --> 00:04:08,992 and I will next demonstrate the importance 76 00:04:08,992 --> 00:04:11,111 of understanding physical models 77 00:04:11,111 --> 00:04:15,231 and the workings of the physical world. 78 00:04:25,462 --> 00:04:27,232 Notice how the quad lost altitude 79 00:04:27,232 --> 00:04:29,314 when I put this glass of water on it. 80 00:04:29,314 --> 00:04:32,115 Unlike the balancing pole, I did not include 81 00:04:32,115 --> 00:04:34,699 the mathematical model of the glass in the system. 82 00:04:34,699 --> 00:04:37,618 In fact, the system doesn't even know that the glass of water is there. 83 00:04:37,618 --> 00:04:40,910 Like before, I could use the pointer to tell the quad 84 00:04:40,910 --> 00:04:43,499 where I want it to be in space. 85 00:04:43,499 --> 00:04:53,096 (Applause) 86 00:04:53,096 --> 00:04:55,206 Okay, you should be asking yourself, 87 00:04:55,206 --> 00:04:57,715 why doesn't the water fall out of the glass? 88 00:04:57,715 --> 00:05:00,926 Two facts: The first is that gravity acts 89 00:05:00,926 --> 00:05:03,051 on all objects in the same way. 90 00:05:03,051 --> 00:05:05,515 The second is that the propellers are all pointing 91 00:05:05,515 --> 00:05:08,642 in the same direction of the glass, pointing up. 92 00:05:08,642 --> 00:05:11,019 You put these two things together, the net result 93 00:05:11,019 --> 00:05:13,306 is that all side forces on the glass are small 94 00:05:13,306 --> 00:05:16,091 and are mainly dominated by aerodynamic effects, 95 00:05:16,091 --> 00:05:19,932 which as these speeds are negligible. 96 00:05:23,336 --> 00:05:25,407 And that's why you don't need to model the glass. 97 00:05:25,407 --> 00:05:29,255 It naturally doesn't spill no matter what the quad does. 98 00:05:38,651 --> 00:05:45,702 (Applause) 99 00:05:45,702 --> 00:05:49,718 The lesson here is that some high-performance tasks 100 00:05:49,718 --> 00:05:51,115 are easier than others, 101 00:05:51,115 --> 00:05:53,411 and that understanding the physics of the problem 102 00:05:53,411 --> 00:05:56,027 tells you which ones are easy and which ones are hard. 103 00:05:56,027 --> 00:05:58,386 In this instance, carrying a glass of water is easy. 104 00:05:58,386 --> 00:06:02,171 Balancing a pole is hard. 105 00:06:02,171 --> 00:06:03,973 We've all heard stories of athletes 106 00:06:03,973 --> 00:06:06,466 performing feats while physically injured. 107 00:06:06,466 --> 00:06:07,985 Can a machine also perform 108 00:06:07,985 --> 00:06:10,636 with extreme physical damage? 109 00:06:10,636 --> 00:06:12,362 Conventional wisdom says that you need 110 00:06:12,362 --> 00:06:16,052 at least four fixed motor propeller pairs in order to fly, 111 00:06:16,052 --> 00:06:18,164 because there are four degrees of freedom to control: 112 00:06:18,164 --> 00:06:21,192 roll, pitch, yaw and acceleration. 113 00:06:21,192 --> 00:06:24,437 Hexacopters and octocopters, with six and eight propellers, 114 00:06:24,437 --> 00:06:25,920 can provide redundancy, 115 00:06:25,920 --> 00:06:27,909 but quadrocopters are much more popular 116 00:06:27,909 --> 00:06:29,724 because they have the minimum number 117 00:06:29,724 --> 00:06:32,200 of fixed motor propeller pairs: four. 118 00:06:32,200 --> 00:06:34,165 Or do they? 119 00:06:49,476 --> 00:06:52,076 If we analyze the mathematical model of this machine 120 00:06:52,076 --> 00:06:54,252 with only two working propellers, 121 00:06:54,252 --> 00:07:01,008 we discover that there's an unconventional way to fly it. 122 00:07:07,980 --> 00:07:09,686 We relinquish control of yaw, 123 00:07:09,686 --> 00:07:12,756 but roll, pitch and acceleration can still be controlled 124 00:07:12,756 --> 00:07:18,208 with algorithms that exploit this new configuration. 125 00:07:21,668 --> 00:07:24,100 Mathematical models tell us exactly when 126 00:07:24,100 --> 00:07:26,172 and why this is possible. 127 00:07:26,172 --> 00:07:28,540 In this instance, this knowledge allows us to design 128 00:07:28,540 --> 00:07:30,796 novel machine architectures 129 00:07:30,796 --> 00:07:34,972 or to design clever algorithms that gracefully handle damage, 130 00:07:34,972 --> 00:07:36,696 just like human athletes do, 131 00:07:36,696 --> 00:07:40,519 instead of building machines with redundancy. 132 00:07:40,519 --> 00:07:42,631 We can't help but hold our breath when we watch 133 00:07:42,631 --> 00:07:45,068 a diver somersaulting into the water, 134 00:07:45,068 --> 00:07:46,858 or when a vaulter is twisting in the air, 135 00:07:46,858 --> 00:07:48,576 the ground fast approaching. 136 00:07:48,576 --> 00:07:51,144 Will the diver be able to pull off a rip entry? 137 00:07:51,144 --> 00:07:53,144 Will the vaulter stick the landing? 138 00:07:53,144 --> 00:07:54,812 Suppose we want this quad here 139 00:07:54,812 --> 00:07:57,263 to perform a triple flip and finish off 140 00:07:57,263 --> 00:07:59,532 at the exact same spot that it started. 141 00:07:59,532 --> 00:08:01,879 This maneuver is going to happen so quickly 142 00:08:01,879 --> 00:08:05,508 that we can't use position feedback to correct the motion during execution. 143 00:08:05,508 --> 00:08:07,782 There simply isn't enough time. 144 00:08:07,782 --> 00:08:11,476 Instead, what the quad can do is perform the maneuver blindly, 145 00:08:11,476 --> 00:08:13,708 observe how it finishes the maneuver, 146 00:08:13,708 --> 00:08:16,132 and then use that information to modify its behavior 147 00:08:16,132 --> 00:08:18,421 so that the next flip is better. 148 00:08:18,421 --> 00:08:20,233 Similar to the diver and the vaulter, 149 00:08:20,233 --> 00:08:22,152 it is only through repeated practice 150 00:08:22,152 --> 00:08:24,077 that the maneuver can be learned and executed 151 00:08:24,077 --> 00:08:26,210 to the highest standard. 152 00:08:34,412 --> 00:08:39,164 (Applause) 153 00:08:39,164 --> 00:08:42,636 Striking a moving ball is a necessary skill in many sports. 154 00:08:42,636 --> 00:08:44,431 How do we make a machine do 155 00:08:44,431 --> 00:08:48,184 what an athlete does seemingly without effort? 156 00:09:03,943 --> 00:09:10,542 (Applause) 157 00:09:10,542 --> 00:09:13,192 This quad has a racket strapped onto its head 158 00:09:13,192 --> 00:09:16,679 with a sweet spot roughly the size of an apple, so not too large. 159 00:09:16,679 --> 00:09:19,846 The following calculations are made every 20 milliseconds, 160 00:09:19,846 --> 00:09:21,602 or 50 times per second. 161 00:09:21,602 --> 00:09:24,414 We first figure out where the ball is going. 162 00:09:24,414 --> 00:09:26,851 We then next calculate how the quad should hit the ball 163 00:09:26,851 --> 00:09:29,950 so that it flies to where it was thrown from. 164 00:09:29,950 --> 00:09:34,406 Third, a trajectory is planned that carries the quad 165 00:09:34,406 --> 00:09:37,430 from its current state to the impact point with the ball. 166 00:09:37,430 --> 00:09:41,239 Fourth, we only execute 20 milliseconds' worth of that strategy. 167 00:09:41,239 --> 00:09:44,046 Twenty milliseconds later, the whole process is repeated 168 00:09:44,046 --> 00:09:46,289 until the quad strikes the ball. 169 00:09:55,560 --> 00:09:58,206 (Applause) 170 00:09:58,206 --> 00:10:01,578 Machines can not only perform dynamic maneuvers on their own, 171 00:10:01,578 --> 00:10:03,441 they can do it collectively. 172 00:10:03,441 --> 00:10:07,028 These three quads are cooperatively carrying a sky net. 173 00:10:16,574 --> 00:10:21,985 (Applause) 174 00:10:21,985 --> 00:10:24,182 They perform an extremely dynamic 175 00:10:24,182 --> 00:10:26,350 and collective maneuver 176 00:10:26,350 --> 00:10:28,042 to launch the ball back to me. 177 00:10:28,042 --> 00:10:31,553 Notice that, at full extension, these quads are vertical. 178 00:10:36,486 --> 00:10:38,258 (Applause) 179 00:10:38,258 --> 00:10:40,545 In fact, when fully extended, 180 00:10:40,545 --> 00:10:43,230 this is roughly five times greater than what a bungee jumper feels 181 00:10:43,230 --> 00:10:47,818 at the end of their launch. 182 00:10:51,009 --> 00:10:53,686 The algorithms to do this are very similar 183 00:10:53,686 --> 00:10:57,070 to what the single quad used to hit the ball back to me. 184 00:10:57,070 --> 00:10:59,934 Mathematical models are used to continuously re-plan 185 00:10:59,934 --> 00:11:04,449 a cooperative strategy 50 times per second. 186 00:11:04,449 --> 00:11:06,326 Everything we have seen so far has been 187 00:11:06,326 --> 00:11:08,789 about the machines and their capabilities. 188 00:11:08,789 --> 00:11:11,804 What happens when we couple this machine athleticism 189 00:11:11,804 --> 00:11:13,580 with that of a human being? 190 00:11:13,580 --> 00:11:17,385 What I have in front of me is a commercial gesture sensor 191 00:11:17,385 --> 00:11:18,694 mainly used in gaming. 192 00:11:18,694 --> 00:11:20,498 It can recognize what my various body parts 193 00:11:20,498 --> 00:11:22,546 are doing in real time. 194 00:11:22,546 --> 00:11:24,662 Similar to the pointer that I used earlier, 195 00:11:24,662 --> 00:11:27,454 we can use this as inputs to the system. 196 00:11:27,454 --> 00:11:29,850 We now have a natural way of interacting 197 00:11:29,850 --> 00:11:34,794 with the raw athleticism of these quads with my gestures. 198 00:12:10,453 --> 00:12:14,853 (Applause) 199 00:12:23,982 --> 00:12:27,989 Interaction doesn't have to be virtual. It can be physical. 200 00:12:27,989 --> 00:12:29,714 Take this quad, for example. 201 00:12:29,714 --> 00:12:32,342 It's trying to stay at a fixed point in space. 202 00:12:32,342 --> 00:12:36,179 If I try to move it out of the way, it fights me, 203 00:12:36,179 --> 00:12:40,334 and moves back to where it wants to be. 204 00:12:40,334 --> 00:12:43,373 We can change this behavior, however. 205 00:12:43,373 --> 00:12:45,072 We can use mathematical models 206 00:12:45,072 --> 00:12:48,205 to estimate the force that I'm applying to the quad. 207 00:12:48,205 --> 00:12:51,443 Once we know this force, we can also change the laws of physics, 208 00:12:51,443 --> 00:12:55,942 as far as the quad is concerned, of course. 209 00:12:55,942 --> 00:12:58,205 Here the quad is behaving as if it were 210 00:12:58,205 --> 00:13:02,570 in a viscous fluid. 211 00:13:02,570 --> 00:13:04,744 We now have an intimate way 212 00:13:04,744 --> 00:13:06,593 of interacting with a machine. 213 00:13:06,593 --> 00:13:09,099 I will use this new capability to position 214 00:13:09,099 --> 00:13:11,676 this camera-carrying quad to the appropriate location 215 00:13:11,676 --> 00:13:14,862 for filming the remainder of this demonstration. 216 00:13:24,222 --> 00:13:26,990 So we can physically interact with these quads 217 00:13:26,990 --> 00:13:29,393 and we can change the laws of physics. 218 00:13:29,393 --> 00:13:31,706 Let's have a little bit of fun with this. 219 00:13:31,706 --> 00:13:33,410 For what you will see next, these quads 220 00:13:33,410 --> 00:13:36,906 will initially behave as if they were on Pluto. 221 00:13:36,906 --> 00:13:39,218 As time goes on, gravity will be increased 222 00:13:39,218 --> 00:13:41,338 until we're all back on planet Earth, 223 00:13:41,338 --> 00:13:43,057 but I assure you we won't get there. 224 00:13:43,057 --> 00:13:46,558 Okay, here goes. 225 00:13:53,667 --> 00:13:57,079 (Laughter) 226 00:14:22,778 --> 00:14:25,986 (Laughter) 227 00:14:25,986 --> 00:14:29,372 (Applause) 228 00:14:29,372 --> 00:14:30,579 Whew! 229 00:14:34,779 --> 00:14:36,296 You're all thinking now, 230 00:14:36,296 --> 00:14:38,271 these guys are having way too much fun, 231 00:14:38,271 --> 00:14:40,350 and you're probably also asking yourself, 232 00:14:40,350 --> 00:14:44,286 why exactly are they building machine athletes? 233 00:14:44,286 --> 00:14:46,938 Some conjecture that the role of play in the animal kingdom 234 00:14:46,938 --> 00:14:49,690 is to hone skills and develop capabilities. 235 00:14:49,690 --> 00:14:51,756 Others think that it has more of a social role, 236 00:14:51,756 --> 00:14:53,430 that it's used to bind the group. 237 00:14:53,430 --> 00:14:56,963 Similarly, we use the analogy of sports and athleticism 238 00:14:56,963 --> 00:14:59,042 to create new algorithms for machines 239 00:14:59,042 --> 00:15:01,189 to push them to their limits. 240 00:15:01,189 --> 00:15:04,866 What impact will the speed of machines have on our way of life? 241 00:15:04,866 --> 00:15:07,255 Like all our past creations and innovations, 242 00:15:07,255 --> 00:15:10,082 they may be used to improve the human condition 243 00:15:10,082 --> 00:15:12,583 or they may be misused and abused. 244 00:15:12,583 --> 00:15:14,506 This is not a technical choice we are faced with; 245 00:15:14,506 --> 00:15:16,261 it's a social one. 246 00:15:16,261 --> 00:15:17,651 Let's make the right choice, 247 00:15:17,651 --> 00:15:20,056 the choice that brings out the best in the future of machines, 248 00:15:20,056 --> 00:15:21,868 just like athleticism in sports 249 00:15:21,868 --> 00:15:24,029 can bring out the best in us. 250 00:15:24,029 --> 00:15:27,479 Let me introduce you to the wizards behind the green curtain. 251 00:15:27,479 --> 00:15:30,379 They're the current members of the Flying Machine Arena research team. 252 00:15:30,379 --> 00:15:35,148 (Applause) 253 00:15:35,148 --> 00:15:38,194 Federico Augugliaro, Dario Brescianini, Markus Hehn, 254 00:15:38,194 --> 00:15:41,018 Sergei Lupashin, Mark Muller and Robin Ritz. 255 00:15:41,018 --> 00:15:42,950 Look out for them. They're destined for great things. 256 00:15:42,950 --> 00:15:44,128 Thank you. 257 00:15:44,128 --> 00:15:50,482 (Applause)