WEBVTT 00:00:11.307 --> 00:00:14.491 So what does it mean for a machine to be athletic? 00:00:14.491 --> 00:00:17.908 We will demonstrate the concept of machine athleticism 00:00:17.908 --> 00:00:19.628 and the research to achieve it 00:00:19.628 --> 00:00:22.139 with the help of these flying machines called quadrocopters, 00:00:22.139 --> 00:00:24.026 or quads, for short. NOTE Paragraph 00:00:26.034 --> 00:00:28.563 Quads have been around for a long time. 00:00:28.563 --> 00:00:30.162 The reason that they're so popular these days 00:00:30.162 --> 00:00:32.127 is because they're mechanically simple. 00:00:32.127 --> 00:00:34.235 By controlling the speeds of these four propellers, 00:00:34.235 --> 00:00:37.283 these machines can roll, pitch, yaw, 00:00:37.283 --> 00:00:40.108 and accelerate along their common orientation. 00:00:40.108 --> 00:00:43.179 On board are also a battery, a computer, 00:00:43.179 --> 00:00:47.133 various sensors and wireless radios. NOTE Paragraph 00:00:47.133 --> 00:00:51.762 Quads are extremely agile, but this agility comes at a cost. 00:00:51.762 --> 00:00:54.754 They are inherently unstable, and they need some form 00:00:54.754 --> 00:00:58.726 of automatic feedback control in order to be able to fly. NOTE Paragraph 00:01:04.259 --> 00:01:07.497 So, how did it just do that? 00:01:07.497 --> 00:01:09.315 Cameras on the ceiling and a laptop 00:01:09.315 --> 00:01:11.891 serve as an indoor global positioning system. 00:01:11.891 --> 00:01:14.076 It's used to locate objects in the space 00:01:14.076 --> 00:01:16.603 that have these reflective markers on them. 00:01:16.603 --> 00:01:18.664 This data is then sent to another laptop 00:01:18.664 --> 00:01:20.875 that is running estimation and control algorithms, 00:01:20.875 --> 00:01:22.761 which in turn sends commands to the quad, 00:01:22.761 --> 00:01:26.246 which is also running estimation and control algorithms. 00:01:29.620 --> 00:01:32.130 The bulk of our research is algorithms. 00:01:32.130 --> 00:01:36.291 It's the magic that brings these machines to life. NOTE Paragraph 00:01:36.291 --> 00:01:38.334 So how does one design the algorithms 00:01:38.334 --> 00:01:40.611 that create a machine athlete? 00:01:40.611 --> 00:01:43.491 We use something broadly called model-based design. 00:01:43.491 --> 00:01:46.645 We first capture the physics with a mathematical model 00:01:46.645 --> 00:01:48.779 of how the machines behave. 00:01:48.779 --> 00:01:51.076 We then use a branch of mathematics 00:01:51.076 --> 00:01:53.907 called control theory to analyze these models 00:01:53.907 --> 00:01:57.820 and also to synthesize algorithms for controlling them. 00:01:57.820 --> 00:02:00.868 For example, that's how we can make the quad hover. 00:02:00.868 --> 00:02:02.276 We first captured the dynamics 00:02:02.276 --> 00:02:04.182 with a set of differential equations. 00:02:04.182 --> 00:02:06.531 We then manipulate these equations with the help 00:02:06.531 --> 00:02:11.171 of control theory to create algorithms that stabilize the quad. NOTE Paragraph 00:02:11.171 --> 00:02:14.117 Let me demonstrate the strength of this approach. 00:02:17.198 --> 00:02:19.747 Suppose that we want this quad to not only hover 00:02:19.747 --> 00:02:22.529 but to also balance this pole. 00:02:22.529 --> 00:02:24.373 With a little bit of practice, 00:02:24.373 --> 00:02:26.764 it's pretty straightforward for a human being to do this, 00:02:26.764 --> 00:02:28.519 although we do have the advantage of having 00:02:28.519 --> 00:02:29.847 two feet on the ground 00:02:29.847 --> 00:02:32.804 and the use of our very versatile hands. 00:02:32.804 --> 00:02:35.273 It becomes a little bit more difficult 00:02:35.273 --> 00:02:37.569 when I only have one foot on the ground 00:02:37.569 --> 00:02:40.368 and when I don't use my hands. 00:02:40.368 --> 00:02:43.319 Notice how this pole has a reflective marker on top, 00:02:43.319 --> 00:02:47.213 which means that it can be located in the space. NOTE Paragraph 00:02:52.971 --> 00:02:58.947 (Applause) NOTE Paragraph 00:02:58.947 --> 00:03:01.773 You can notice that this quad is making fine adjustments 00:03:01.773 --> 00:03:03.968 to keep the pole balanced. 00:03:03.968 --> 00:03:07.027 How did we design the algorithms to do this? 00:03:07.027 --> 00:03:09.132 We added the mathematical model of the pole 00:03:09.132 --> 00:03:10.651 to that of the quad. 00:03:10.651 --> 00:03:13.605 Once we have a model of the combined quad-pole system, 00:03:13.605 --> 00:03:18.538 we can use control theory to create algorithms for controlling it. 00:03:18.538 --> 00:03:20.126 Here, you see that it's stable, 00:03:20.126 --> 00:03:22.819 and even if I give it little nudges, 00:03:22.819 --> 00:03:28.222 it goes back to the nice, balanced position. NOTE Paragraph 00:03:28.222 --> 00:03:29.885 We can also augment the model to include 00:03:29.885 --> 00:03:32.326 where we want the quad to be in space. 00:03:32.326 --> 00:03:35.395 Using this pointer, made out of reflective markers, 00:03:35.395 --> 00:03:37.619 I can point to where I want the quad to be in space 00:03:37.619 --> 00:03:40.986 a fixed distance away from me. 00:03:55.763 --> 00:03:58.665 The key to these acrobatic maneuvers is algorithms, 00:03:58.665 --> 00:04:01.091 designed with the help of mathematical models 00:04:01.091 --> 00:04:03.041 and control theory. 00:04:03.041 --> 00:04:05.255 Let's tell the quad to come back here 00:04:05.255 --> 00:04:07.074 and let the pole drop, 00:04:07.074 --> 00:04:08.992 and I will next demonstrate the importance 00:04:08.992 --> 00:04:11.111 of understanding physical models 00:04:11.111 --> 00:04:15.231 and the workings of the physical world. 00:04:25.462 --> 00:04:27.232 Notice how the quad lost altitude 00:04:27.232 --> 00:04:29.314 when I put this glass of water on it. 00:04:29.314 --> 00:04:32.115 Unlike the balancing pole, I did not include 00:04:32.115 --> 00:04:34.699 the mathematical model of the glass in the system. 00:04:34.699 --> 00:04:37.618 In fact, the system doesn't even know that the glass of water is there. 00:04:37.618 --> 00:04:40.910 Like before, I could use the pointer to tell the quad 00:04:40.910 --> 00:04:43.499 where I want it to be in space. 00:04:43.499 --> 00:04:53.096 (Applause) NOTE Paragraph 00:04:53.096 --> 00:04:55.206 Okay, you should be asking yourself, 00:04:55.206 --> 00:04:57.715 why doesn't the water fall out of the glass? 00:04:57.715 --> 00:05:00.926 Two facts: The first is that gravity acts 00:05:00.926 --> 00:05:03.051 on all objects in the same way. 00:05:03.051 --> 00:05:05.515 The second is that the propellers are all pointing 00:05:05.515 --> 00:05:08.642 in the same direction of the glass, pointing up. 00:05:08.642 --> 00:05:11.019 You put these two things together, the net result 00:05:11.019 --> 00:05:13.306 is that all side forces on the glass are small 00:05:13.306 --> 00:05:16.091 and are mainly dominated by aerodynamic effects, 00:05:16.091 --> 00:05:19.932 which as these speeds are negligible. 00:05:23.336 --> 00:05:25.407 And that's why you don't need to model the glass. 00:05:25.407 --> 00:05:29.255 It naturally doesn't spill no matter what the quad does. NOTE Paragraph 00:05:38.651 --> 00:05:45.702 (Applause) NOTE Paragraph 00:05:45.702 --> 00:05:49.718 The lesson here is that some high-performance tasks 00:05:49.718 --> 00:05:51.115 are easier than others, 00:05:51.115 --> 00:05:53.411 and that understanding the physics of the problem 00:05:53.411 --> 00:05:56.027 tells you which ones are easy and which ones are hard. 00:05:56.027 --> 00:05:58.386 In this instance, carrying a glass of water is easy. 00:05:58.386 --> 00:06:02.171 Balancing a pole is hard. NOTE Paragraph 00:06:02.171 --> 00:06:03.973 We've all heard stories of athletes 00:06:03.973 --> 00:06:06.466 performing feats while physically injured. 00:06:06.466 --> 00:06:07.985 Can a machine also perform 00:06:07.985 --> 00:06:10.636 with extreme physical damage? 00:06:10.636 --> 00:06:12.362 Conventional wisdom says that you need 00:06:12.362 --> 00:06:16.052 at least four fixed motor propeller pairs in order to fly, 00:06:16.052 --> 00:06:18.164 because there are four degrees of freedom to control: 00:06:18.164 --> 00:06:21.192 roll, pitch, yaw and acceleration. 00:06:21.192 --> 00:06:24.437 Hexacopters and octocopters, with six and eight propellers, 00:06:24.437 --> 00:06:25.920 can provide redundancy, 00:06:25.920 --> 00:06:27.909 but quadrocopters are much more popular 00:06:27.909 --> 00:06:29.724 because they have the minimum number 00:06:29.724 --> 00:06:32.200 of fixed motor propeller pairs: four. 00:06:32.200 --> 00:06:34.165 Or do they? 00:06:49.476 --> 00:06:52.076 If we analyze the mathematical model of this machine 00:06:52.076 --> 00:06:54.252 with only two working propellers, 00:06:54.252 --> 00:07:01.008 we discover that there's an unconventional way to fly it. 00:07:07.980 --> 00:07:09.686 We relinquish control of yaw, 00:07:09.686 --> 00:07:12.756 but roll, pitch and acceleration can still be controlled 00:07:12.756 --> 00:07:18.208 with algorithms that exploit this new configuration. 00:07:21.668 --> 00:07:24.100 Mathematical models tell us exactly when 00:07:24.100 --> 00:07:26.172 and why this is possible. 00:07:26.172 --> 00:07:28.540 In this instance, this knowledge allows us to design 00:07:28.540 --> 00:07:30.796 novel machine architectures 00:07:30.796 --> 00:07:34.972 or to design clever algorithms that gracefully handle damage, 00:07:34.972 --> 00:07:36.696 just like human athletes do, 00:07:36.696 --> 00:07:40.519 instead of building machines with redundancy. NOTE Paragraph 00:07:40.519 --> 00:07:42.631 We can't help but hold our breath when we watch 00:07:42.631 --> 00:07:45.068 a diver somersaulting into the water, 00:07:45.068 --> 00:07:46.858 or when a vaulter is twisting in the air, 00:07:46.858 --> 00:07:48.576 the ground fast approaching. 00:07:48.576 --> 00:07:51.144 Will the diver be able to pull off a rip entry? 00:07:51.144 --> 00:07:53.144 Will the vaulter stick the landing? 00:07:53.144 --> 00:07:54.812 Suppose we want this quad here 00:07:54.812 --> 00:07:57.263 to perform a triple flip and finish off 00:07:57.263 --> 00:07:59.532 at the exact same spot that it started. 00:07:59.532 --> 00:08:01.879 This maneuver is going to happen so quickly 00:08:01.879 --> 00:08:05.508 that we can't use position feedback to correct the motion during execution. 00:08:05.508 --> 00:08:07.782 There simply isn't enough time. 00:08:07.782 --> 00:08:11.476 Instead, what the quad can do is perform the maneuver blindly, 00:08:11.476 --> 00:08:13.708 observe how it finishes the maneuver, 00:08:13.708 --> 00:08:16.132 and then use that information to modify its behavior 00:08:16.132 --> 00:08:18.421 so that the next flip is better. 00:08:18.421 --> 00:08:20.233 Similar to the diver and the vaulter, 00:08:20.233 --> 00:08:22.152 it is only through repeated practice 00:08:22.152 --> 00:08:24.077 that the maneuver can be learned and executed 00:08:24.077 --> 00:08:26.210 to the highest standard. NOTE Paragraph 00:08:34.412 --> 00:08:39.164 (Applause) NOTE Paragraph 00:08:39.164 --> 00:08:42.636 Striking a moving ball is a necessary skill in many sports. 00:08:42.636 --> 00:08:44.431 How do we make a machine do 00:08:44.431 --> 00:08:48.184 what an athlete does seemingly without effort? NOTE Paragraph 00:09:03.943 --> 00:09:10.542 (Applause) NOTE Paragraph 00:09:10.542 --> 00:09:13.192 This quad has a racket strapped onto its head 00:09:13.192 --> 00:09:16.679 with a sweet spot roughly the size of an apple, so not too large. 00:09:16.679 --> 00:09:19.846 The following calculations are made every 20 milliseconds, 00:09:19.846 --> 00:09:21.602 or 50 times per second. 00:09:21.602 --> 00:09:24.414 We first figure out where the ball is going. 00:09:24.414 --> 00:09:26.851 We then next calculate how the quad should hit the ball 00:09:26.851 --> 00:09:29.950 so that it flies to where it was thrown from. 00:09:29.950 --> 00:09:34.406 Third, a trajectory is planned that carries the quad 00:09:34.406 --> 00:09:37.430 from its current state to the impact point with the ball. 00:09:37.430 --> 00:09:41.239 Fourth, we only execute 20 milliseconds' worth of that strategy. 00:09:41.239 --> 00:09:44.046 Twenty milliseconds later, the whole process is repeated 00:09:44.046 --> 00:09:46.289 until the quad strikes the ball. NOTE Paragraph 00:09:55.560 --> 00:09:58.206 (Applause) NOTE Paragraph 00:09:58.206 --> 00:10:01.578 Machines can not only perform dynamic maneuvers on their own, 00:10:01.578 --> 00:10:03.441 they can do it collectively. 00:10:03.441 --> 00:10:07.028 These three quads are cooperatively carrying a sky net. NOTE Paragraph 00:10:16.574 --> 00:10:21.985 (Applause) NOTE Paragraph 00:10:21.985 --> 00:10:24.182 They perform an extremely dynamic 00:10:24.182 --> 00:10:26.350 and collective maneuver 00:10:26.350 --> 00:10:28.042 to launch the ball back to me. 00:10:28.042 --> 00:10:31.553 Notice that, at full extension, these quads are vertical. 00:10:36.486 --> 00:10:38.258 (Applause) 00:10:38.258 --> 00:10:40.545 In fact, when fully extended, 00:10:40.545 --> 00:10:43.230 this is roughly five times greater than what a bungee jumper feels 00:10:43.230 --> 00:10:47.818 at the end of their launch. NOTE Paragraph 00:10:51.009 --> 00:10:53.686 The algorithms to do this are very similar 00:10:53.686 --> 00:10:57.070 to what the single quad used to hit the ball back to me. 00:10:57.070 --> 00:10:59.934 Mathematical models are used to continuously re-plan 00:10:59.934 --> 00:11:04.449 a cooperative strategy 50 times per second. NOTE Paragraph 00:11:04.449 --> 00:11:06.326 Everything we have seen so far has been 00:11:06.326 --> 00:11:08.789 about the machines and their capabilities. 00:11:08.789 --> 00:11:11.804 What happens when we couple this machine athleticism 00:11:11.804 --> 00:11:13.580 with that of a human being? 00:11:13.580 --> 00:11:17.385 What I have in front of me is a commercial gesture sensor 00:11:17.385 --> 00:11:18.694 mainly used in gaming. 00:11:18.694 --> 00:11:20.498 It can recognize what my various body parts 00:11:20.498 --> 00:11:22.546 are doing in real time. 00:11:22.546 --> 00:11:24.662 Similar to the pointer that I used earlier, 00:11:24.662 --> 00:11:27.454 we can use this as inputs to the system. 00:11:27.454 --> 00:11:29.850 We now have a natural way of interacting 00:11:29.850 --> 00:11:34.794 with the raw athleticism of these quads with my gestures. NOTE Paragraph 00:12:10.453 --> 00:12:14.853 (Applause) NOTE Paragraph 00:12:23.982 --> 00:12:27.989 Interaction doesn't have to be virtual. It can be physical. 00:12:27.989 --> 00:12:29.714 Take this quad, for example. 00:12:29.714 --> 00:12:32.342 It's trying to stay at a fixed point in space. 00:12:32.342 --> 00:12:36.179 If I try to move it out of the way, it fights me, 00:12:36.179 --> 00:12:40.334 and moves back to where it wants to be. 00:12:40.334 --> 00:12:43.373 We can change this behavior, however. 00:12:43.373 --> 00:12:45.072 We can use mathematical models 00:12:45.072 --> 00:12:48.205 to estimate the force that I'm applying to the quad. 00:12:48.205 --> 00:12:51.443 Once we know this force, we can also change the laws of physics, 00:12:51.443 --> 00:12:55.942 as far as the quad is concerned, of course. 00:12:55.942 --> 00:12:58.205 Here the quad is behaving as if it were 00:12:58.205 --> 00:13:02.570 in a viscous fluid. NOTE Paragraph 00:13:02.570 --> 00:13:04.744 We now have an intimate way 00:13:04.744 --> 00:13:06.593 of interacting with a machine. 00:13:06.593 --> 00:13:09.099 I will use this new capability to position 00:13:09.099 --> 00:13:11.676 this camera-carrying quad to the appropriate location 00:13:11.676 --> 00:13:14.862 for filming the remainder of this demonstration. NOTE Paragraph 00:13:24.222 --> 00:13:26.990 So we can physically interact with these quads 00:13:26.990 --> 00:13:29.393 and we can change the laws of physics. 00:13:29.393 --> 00:13:31.706 Let's have a little bit of fun with this. 00:13:31.706 --> 00:13:33.410 For what you will see next, these quads 00:13:33.410 --> 00:13:36.906 will initially behave as if they were on Pluto. 00:13:36.906 --> 00:13:39.218 As time goes on, gravity will be increased 00:13:39.218 --> 00:13:41.338 until we're all back on planet Earth, 00:13:41.338 --> 00:13:43.057 but I assure you we won't get there. 00:13:43.057 --> 00:13:46.558 Okay, here goes. NOTE Paragraph 00:13:53.667 --> 00:13:57.079 (Laughter) NOTE Paragraph 00:14:22.778 --> 00:14:25.986 (Laughter) NOTE Paragraph 00:14:25.986 --> 00:14:29.372 (Applause) 00:14:29.372 --> 00:14:30.579 Whew! 00:14:34.779 --> 00:14:36.296 You're all thinking now, 00:14:36.296 --> 00:14:38.271 these guys are having way too much fun, 00:14:38.271 --> 00:14:40.350 and you're probably also asking yourself, 00:14:40.350 --> 00:14:44.286 why exactly are they building machine athletes? 00:14:44.286 --> 00:14:46.938 Some conjecture that the role of play in the animal kingdom 00:14:46.938 --> 00:14:49.690 is to hone skills and develop capabilities. 00:14:49.690 --> 00:14:51.756 Others think that it has more of a social role, 00:14:51.756 --> 00:14:53.430 that it's used to bind the group. 00:14:53.430 --> 00:14:56.963 Similarly, we use the analogy of sports and athleticism 00:14:56.963 --> 00:14:59.042 to create new algorithms for machines 00:14:59.042 --> 00:15:01.189 to push them to their limits. 00:15:01.189 --> 00:15:04.866 What impact will the speed of machines have on our way of life? 00:15:04.866 --> 00:15:07.255 Like all our past creations and innovations, 00:15:07.255 --> 00:15:10.082 they may be used to improve the human condition 00:15:10.082 --> 00:15:12.583 or they may be misused and abused. 00:15:12.583 --> 00:15:14.506 This is not a technical choice we are faced with; 00:15:14.506 --> 00:15:16.261 it's a social one. 00:15:16.261 --> 00:15:17.651 Let's make the right choice, 00:15:17.651 --> 00:15:20.056 the choice that brings out the best in the future of machines, 00:15:20.056 --> 00:15:21.868 just like athleticism in sports 00:15:21.868 --> 00:15:24.029 can bring out the best in us. NOTE Paragraph 00:15:24.029 --> 00:15:27.479 Let me introduce you to the wizards behind the green curtain. 00:15:27.479 --> 00:15:30.379 They're the current members of the Flying Machine Arena research team. 00:15:30.379 --> 00:15:35.148 (Applause) 00:15:35.148 --> 00:15:38.194 Federico Augugliaro, Dario Brescianini , Markus Hehn, 00:15:38.194 --> 00:15:41.018 Sergei Lupashin, Mark Muller and Robin Ritz. 00:15:41.018 --> 00:15:42.950 Look out for them. They're destined for great things. NOTE Paragraph 00:15:42.950 --> 00:15:44.128 Thank you. NOTE Paragraph 00:15:44.128 --> 00:15:50.482 (Applause)