MIT Self-Driving Cars (2018)

Lex Fridman presents MIT's research on autonomous vehicles using data from 25 Tesla Autopilot cars that logged over 300,000 miles and 5 billion video frames. He breaks autonomy into two paths: human-centered systems requiring oversight and full autonomy where AI takes responsibility. The lecture covers sensors, machine learning challenges, and where the industry stands: Waymo at 4 million miles, Uber at 2 million.
Chapters
Welcome back to 6S094 Deep Learning for Self driving cars. Today we will talk about autonomous vehicles. Also referred to as driverless cars, autonomous cars, robocars. First, the utopian view, where for many, autonomous vehicles have the opportunity to transform our society into a positive direction. 1.3 million people die every year in automobile crashes. Globally, 35, 38, 40,000 die every year in the United States. So the one opportunity that's huge, that's one of the biggest focus for us here at mit, for people who truly care about this, is to design autonomous systems, artificial intelligence systems that saves lives. And those systems help work with, deal with or take away what NHTSA calls the four Ds of human folly. Drunk, drugged, distracted and drowsy driving autonomous vehicles have the ability to take away drunk driving, distracted, drowsy and drugged, eliminate car ownership. So taking shared mobility to another level, eliminating car ownership from the business side, has the opportunity to save people money and increase mobility and access. Making vehicles, removing ownership makes vehicles more accessible because the cost of getting from point A to point B drops an order or 2 magnitude. And the insertion of software and intelligence into vehicles makes those vehicles, makes the idea of transportation, makes the way we see moving from A to point B a totally different experience. Much like with our smartphone, it makes it a personalized, efficient and reliable experience. Now for the negative view, for the dystopian view. Eliminate jobs. Any technology throughout its history, throughout our history of human civilization, has always created fear that jobs that rely on the prior technology will be lost. This is a huge fear, especially in trucking, because so many people in the United States and across the world rely work in the transportation industry, transportation sector. And the possibility that AI will remove those jobs has potential catastrophic consequences. The idea, one that we have to struggle with in the 21st century, of the role of intelligent systems that aren't human beings being further and further integrated into our lives, is the idea that a failure of an autonomous vehicle, even if they're much rarer, even if they're much safer, that there is a possibility for an AI algorithm designed by probably one of the engineers in this room, will kill a person where that person would not have died if they were in control of the vehicle. The idea of an intelligent system, one in direct interaction with a human being, killing that human being, is one that we have to struggle with in a philosophical, ethical and technological level. Artificial intelligence systems in popular culture, less so in engineering concerns, may not be grounded, ethically grounded at this time. Much of the focus of building these systems as we'll talk about today and throughout this course, the focus is on the technology. How do we make these things work? But of course, decades out, years or decades out, the ethical concern starts arising. For Rodney Brooks, one of the seminal people from mit, those ethical concerns will not be an issue for another several decades, at least five decades, but they're still important. It continues the thought, the idea of what is the role of AI in our society? When that car gets to make a decision about human life, what is it making that decision based on? Especially when it's a black box, what is the ethical grounding of that system? Does it conform with our social norms? Does it go against them? There's many other concerns. Security is definitely a big one. A car that's not even artificial intelligence based, a car that's software based. As they're becoming more and more millions, most of the cars on road today are run by millions of lines of source code. The idea that those lines of source code, written again by some of the engineers in this room, get to decide the life of a human being means then a hacker from outside of the car can manipulate that code to also decide the fate of that human being. That's a huge concern for us. From the engineering perspective, the truth is somewhere in the middle. We want to find what is the best positive way we can build these systems to transform our society, to improve the quality of life of everyone amongst us. But there's a grain of salt to the hype of autonomous vehicles. We have to remember, as we discussed in the previous lecture, and it will come up again and again, our intuition about what is difficult and what is easy for deep learning for autonomous systems is flawed. If we use our, if you use ourselves as an example, human beings are extremely good at driving. This will come up again and again. Our intuition has to be grounded in understanding of what is the source of data, what is the annotation and what is the approach, what is the algorithm. So you have to be careful about using our intuition, extending it decades out and making predictions, whether it's towards the utopian or the dystopian view. And as we'll talk about some of the advancements of companies working in the space today, you have to take what people say in the media, what the companies say, Some of the speakers that will be speaking at this class say about their plans for the future and their current capabilities. I think a guide I can provide is what, when there's a promise of a future technology, future vehicles that are two years out or more, that has to be. That's a very doubtful prediction, one that is within a year, as we'll give a few examples today, is skeptical. The real proof comes in actual testing of public roads or in the most impressive, the most amazing. The reality of it is when it's available to consumer purchase. I would like to use Rodney Brooks as a so it doesn't come from my mouth, but I happen to agree. His prediction is no earlier than 2032, a driver's taxi service in a major US city will provide arbitrary pickup and drop off locations fully autonomously. That's 14 years away. And by 2045 it will do so in multiple cities across the United States. So think about that. A lot of the engineers working in this space, a lot of folks who are actually building these systems agree with this idea. And that is the earliest I believe this will happen. And Rodney believes But as all technophobes have been wrong, who could be wrong? This is a map on the X axis, a plot on the X axis of time throughout the 20th century and the adoption rate on the y axis from 0 to 100% of the various technologies, from electricity to cars to radio to telephone and so on. And as we get closer to today, the technology adoption rate, when it goes from 0 to 100%, the number of years it takes to adopt that technology is getting shorter and shorter and shorter. As a society, we're better at throwing away the technology of old and accepting the technology of new. So if a brilliant idea to solve some of the problems we're discussing comes along, it could change everything overnight. So let's talk about different approaches to autonomy. We'll talk about sensors afterwards, we'll talk about companies, players in this space. And then we'll talk about AI and the actual algorithms and how they can help solve some of the problems of autonomous vehicles. Levels of autonomy Here's a useful taxonomization of levels of autonomy. Useful for initial discussion, for legal discussion, and for policy making, and for blog posts and media reports. But it's not useful, I would argue, for design and engineering of the underlying intelligence and the system viewed from a holistic perspective. The entire thing creating an experience that's safe and enjoyable. So let's go over those levels, the six levels. This is presented by SAE Report J3016, the most widely accepted taxonomization of autonomy. No automation at level zero. Level one and level two is increasing levels automation. Level one is cruise control. Level two is adaptive cruise control, lane keeping level three. I don't know what level three is. There's a lot of people that will explain that level three is conditional automation, meaning it's constrained to certain geographic location. I will explain that from an engineering perspective. I'm personally a little bit confused of where that stands. I'll try to redefine how we should view automation. Level four and level five is high full level automation. Level four is when the vehicle can drive itself fully for part of the time. There's certain areas in which you can take care of everything no matter what. No human inter interaction input safekeeping is required. Level five, automation is the car does everything, everything. I would argue that those levels aren't useful for designing systems that actually work in the real world. I would argue that there's two systems, but first a starting point that every system to some degree involves a human. It starts with manual control from a human, a human getting in the car and a human electing to do something. So that's the manual control what we're talking about. When the human engages the system, when the system is first available and the human chooses to turn it on, that's when we have two AI systems. Human centered autonomy when the human is needed, is involved and full autonomy when AI is fully responsible for everything. From the legal perspective, that means a two full autonomy means the car, the designer of the AI system is liable, is responsible and for the human centered autonomy, the human is responsible. What does this practically mean for human centered autonomy? And we'll discuss examples of all of these. When a human interaction is necessary, the question then becomes is how often is the system available? Is it available in traffic conditions? So for traffic, by bumper to bumper, is it available on the highway? Is it sensor based, like in a Tesla vehicle? Meaning based on the visual characteristics of the scene, the vehicle is confident enough to be able to control, to make control decisions, perception control decisions. The other factor not discussed enough, and I think poorly imprecisely discussed, when it is, is the number of seconds given to the driver not guaranteed, but provided as a sort of feature to the driver to take over. In the Tesla vehicle, in all vehicles on the road today, that time is zero. Zero seconds are guaranteed. Zero seconds are provided. There is some, there's some room. Sometimes it's hundreds of milliseconds, sometimes it's multiple seconds. But really there's no standard of how many seconds you, you get to say wake up, take control, then teleop operation. Something that some of the companies will mention are playing with is when a human being is involved remotely controlling the vehicle remotely. So being able to take over control of the vehicle when you're not able to control it. So support by a human that's not inside the car. That's a very interesting idea to explore. But for the human centered autonomy side, all of those features are not required. They're not guaranteed. The human driver, the human inside the car is always responsible. At the end of the day, they must pay attention to a degree that's required to take over when the system fails. And no matter under this consideration, under this level of autonomy, the system will fail at some point. That is the, that is the point that is a collaboration between human and robot is the system will fail and the human has to catch it when it does. And then full autonomy is AI is fully responsible. Now that doesn't again, as we'll present some companies in the marketing material and the PR side of things, they might present that there is significant degrees of autonomy. If you're talking about L3 or L4 or L5, you have to read between the lines. You're not allowed to have teleoperation. If a human is remotely operating the vehicle. A human is still in the loop. A human is still evolved. It's still a human centered autonomy system. You don't get the 10 second rule, which is just because you give the driver 10 seconds to take control. That somehow removes liability for you. If you say that that's it as an AI system, I can't take, can't resolve, can't deal, can't control the vehicle in this situation and you have 10 seconds to take over. That's not good enough. The driver might be sleeping. The driver may have had a heart attack. They're not able to control the vehicle. Full autonomous systems must find safe harbor. They must get you full stop from point A to point B. That point B might be your desired destination or might be a safe parking lot, but it has to bring you to a safe location. This is a clear definition of the two systems. And the human, of course is as far as our certain current conception of artificial intelligence in cars today is. A human always overrides the AI system. So we should. In the general case, the human gets to choose to take control. The AI can't take control of the human except when danger is imminent, meaning sudden crashes like in AAB events. We're not yet ready for AI systems to say, as a society to say, no, no, no, you're drunk, you can't drive. So beyond the traditional levels, from level zero to level five, the starting point is level zero. No automation. All cars start here. Level one, level two and level three. I would argue fall into human centered autonomy systems A1 because they involve some degree of a human. Then L4, L5 to some degree, there's some crossover fall into full autonomy. Even though with L4 with Waymo, as you can ask on Friday and anyone cruise Uber playing in this space, there's very often a human driver involved. One of the huge accomplishments of Waymo over the past month, incredible accomplishment. Where in Phoenix, Arizona. They drove without the car, drove without a driver, meaning there was no safety driver to catch. There was no engineer staff member there to catch the car. A human being that doesn't work for Google or Waymo got into that car and got from A to point B without a safety driver. That's an incredible accomplishment. And that particular trip was a fully autonomous trip that is full autonomy when there's no human to catch the car. No AI presentation is good without cats. So full autonomy A2 system is when you do nothing but ride along. Human centered autonomy system is when you have some control. I'm sorry, I had to. So the two paths for autonomous systems A1 and A2 in blue on the left is A1, human centered on the right is A2 full autonomy. And then blue is, from the artificial intelligence perspective, is easy, easier. And then red is harder easier, meaning we do not have to achieve 100% accuracy. Harder means everything that's off of 100% accuracy, no matter how small, has a potential of costing human lives and huge amounts of money for companies. So let's discuss, we'll discuss later in the lecture about the algorithms behind each of these methods on the left and the right. But this summarizes the two approaches. The localization mapping for the car to determine where it's located. For the human centered autonomy, it's easy. It still has to do the perception. It has to localize itself within the lane. It has to find all the neighboring pedestrians and the vehicles in order to be able to control the vehicle to some degree. But because a human is there, it doesn't have to do so perfectly. When it fails, a human is there to catch it. Scene understanding, perceiving everything in the environment from the camera, whether it's lidar, radar, ultrasonic, the planning of the vehicle, whether it's just staying within the lane, or for adaptive cruise control, controlling the longitudinal movement of the vehicle, or it's changing lanes as the Tesla autopilot or higher degrees of automation. All of those movement planning decisions can be made autonomously. When the human is there to catch, it's easier because you're allowed to be wrong. Rarely but wrong. The hard part is getting the human robot interaction piece right. That's next Wednesday lecture as we'll discuss about how deep learning can be used to interact. First, perceive everything about the driver and second to interact with the driver. That part is hard because you can't screw up on that part. You have to make sure you help the driver know where your flaws are so they can take over. If the driver's not paying attention, you have to bring their attention back to the road, back to the interaction. You have to get that piece right. Because for a flawed system, one that's rarely flawed, the rarity is the challenge in fact has to get the interaction right. And then the final piece. Communication. The autonomous vehicle A fully autonomous vehicle must communicate extremely well with the external world, with the pedestrians, the jaywalkers, the humans in this world, the cyclists. That communication piece one, at least that is part of a safe and enjoyable driving experience is extremely difficult on a Waymo vehicle. I wish them luck if they come to Boston from getting from point A to point B because pedestrians will take advantage. A vehicle must assert itself in order to be able to navigate Boston streets. And that assertion is communication. That piece is extremely difficult for a Tesla vehicle for for a human centered autonomy vehicle L2L3. The way you deal with Boston pedestrians is you take over, roll down the window, yell something and then speed up getting the piece. For an artificial intelligence system to actually be able to accomplish something like that, as we'll discuss on the ethics side and the engineering side, is extremely difficult. That said, most of the literature in the human factors field, in the autonomous vehicle field, anyone that studied autonomy in aviation and in vehicles is extremely skeptical about the human centered approach. They think it's deeply irresponsible. It's deeply irresponsible because as argued, because human beings, when you give them a technology which will take control part of the time, they will get lazy. They will take advantage of that technology. They will over trust that technology. They'll assume it will work perfectly always. This is the idea that this idea extended beyond further and further means that the better the system gets, the better the car gets at driving itself. The the more the humans will sit back and be completely distracted. It will not be able to re engage themselves in order to safely catch when the system fails. This is Chris Urmson, the founder of the Google self driving cars program and now the co founder of one. The other co founder is the speaker of this class on next Friday. Sterling Anderson of a company called Aurora, a startup. He was one of the big proponents or the, I should say opponents of the idea that human centered autonomy could work, they tried it publicly. Has spoken about the fact that Google, in the early self driving car program, they've tried shared Autonomy, they've tried L2 and it failed because their engineers, the people driving their vehicles, fell asleep. And that's the belief that people have. And we'll talk about why that may not be true. There's a fascinating truth in the way human beings can interact with artificial intelligence systems that may work in this case, as I mentioned, it's the human robot interaction building that deep connection between human and machine learning of understanding, of communication. This is what we believe happens. So there's a lot of videos like this. It's fun, but it's also representative of what society believes happens when automation is allowed to enter the human experience. And driving where human life is at stake, that you can become completely disengaged. It's kind of a natural thing to think. But the question is, does this actually happen? What actually happens on public roads? The amazing thing that people don't often talk about is that there is hundreds of thousands of vehicles on the road today equipped with Autopilot, Tesla Autopilot, that have a significant degree of autonomy. That's data, that's information. So we can answer the question what actually happens? So many of the people behind this team have instrumented 25 vehicles, 21 of which are Tesla Autopilot vehicles. Now with over collected, recording everything about the driver, two cameras, two HD cameras on the driver, two cameras on the one camera on the external roadway and collecting everything about the car including audio, the state pulling everything from the cam, bus, the kinematics of the vehicle, IMU, GPS, all of that information. Now over 300,000 miles, over 5 billion video frames, all as we'll talk about analyzed with computer vision. You extract from that video of the driver of everything they're doing. The level of distraction, the allocation of attention, the drowsiness, emotional states, the hands on wheel, hands off wheel, body pose activity, smartphone usage, all these factors, all of these things that you would think would fall apart when you start letting autonomy into your life. We'll talk about what the initial reality is. That should be inspiring and thought provoking. As I said, three cameras, single board computer recording all the data over a thousand machines in Holyoke and distributed computation, running the deep learning algorithms that I have mentioned on these five plus billion video frames. Going from the raw data to the actionable useful information. The slides are up online if you'd like to look through them. I'll fly through some of them. And this is the video of one of thousands of trips we have in autopilot. In our data, a car driving autonomously a large fraction of the time on highways from here to California, from here to Chicago to Florida and all across the United States. We take that data and using the supervised learning algorithms, semi supervised, the number of frames here is huge. For those that work in computer vision, 5 billion frames is several order orders of magnitude larger than any data set that people are working with in computer vision, actively annotated. So we want to use that data for understanding the behavior of what people actually doing in the cars. And we want to train the algorithms that do perception and control. A quick summary. Over 300,000 miles, 25 vehicles. The colors are true to the actual colors of the vehicles. Little fun fact. Tesla Model X, Model S and now a model three. 500 plus sorry miles a day and growing. Now most days in 2018 are over 1,000 miles a day. This is a quick GPS map. In red is manual driving across the Boston area. In blue, cyan is autonomous driving. This is giving you the sense of just the scope of this data. This is a huge number of miles with automated driving several orders of magnitude larger than what Waymo is doing, than what Cruise is doing and what Uber is doing. The miles driven in this data, with autopilot confirming what Elon Musk has stated is 33% of miles are driven autonomously. This is a remarkable number for those of you who drive and for those of you who are familiar with these technologies, that is remarkable. Adoption rate that 33% of the miles are driven in autopilot. That means these drivers are getting use out of the system. It's working for them. That's an incredible number. It's also incredible because under the decades of literature from aviation to automation and vehicles, to Chris Urmson and Waymo, the belief is such high numbers are likely to lead to crashes, to fatalities, to at the very least highly responsible behavior. Drivers over trusting the systems and getting in trouble. We can run the glance classification algorithms again. This is for next Wednesday discussion of the actual algorithm. It's the algorithm that tells you the region that the driver is looking at. And it's comparing road, instrument, cluster, left rear view, center stack and right. Does the allocation of glance change with autopilot or with manual driving? It does not appear to in any significant noticeable way. Meaning you don't start playing chess, you don't start, you don't get in the back seat to sleep. You don't start texting in your smartphone, watching a movie. At least in this data set, there's promise here for the human centered approach. The observation to summarize this particular data is that people are using it a lot. The percentage of miles, the percentage of hours is incredibly high, at least relative to what was will be expected from these systems. And given that there's no crashes, there's no near crashes. In autopilot, the road type is mostly highway traveling at high speeds. The mental engagement looked at 8,000 transfer of control from machine to human. So human beings taking control of the vehicle, saying, you know what? I'm going to take control now. I'm not comfortable with the situation for whatever reason, either not comfortable or electing to do something that the vehicle is not able to, like turn off the highway, make a right or left turn, stop for a stop sign, these kinds of things. Physical engagement. As I said, glance remains the same. And what do we take from this? It's just something that I'd like to really emphasize as we talked, as we talk about autonomous vehicles in this class and the guest speakers who are all on the other side. So I'm representing the human center side. All our speakers are focused on the full autonomy side because that's the side roboticists know how to solve. That's the fascinating algorithm nerd side, and that's the side I love as well. Just my belief stands that solving the perception control problem is extremely difficult and two, three decades away. So in the meantime, we have to utilize the human robot interaction to actually bring these AI systems onto the road to successfully operate. And the way we do that counterintuitively is we have to have, we have to let the artificial intelligence systems reveal their flaws. One of the most endearing things two human beings can do to each other friends, is reveal their flaws to each other. Now, from an automotive perspective, from a company perspective, it's perhaps not appealing for an AI system to reveal what it sees about the world and what it doesn't see about the world, where it succeeds and where it fails. But that is perhaps exactly what it needs to do. In the case of autopilot, the way the very limited but I believe successful way it's currently doing that is allowing you to use Autopilot basically anywhere. So what people are doing is they're trying to engage their turn on autopilot in places where they really shouldn't. Rural roads curvy with terrible road markings, in heavy rain conditions, with snow, with lots of cars driving at high speeds all around. They turn Autopilot on to understand, to experience the limitations of the system to interact. That human robot interaction is through it's tactile, by turning it on and seeing is it going to work here, how's it going to fail? And the human is always there to catch it. That interaction, that's communication, that intimate understanding is what creates successful integration of AI in the car. Before we're able to solve the full autonomy puzzle, learn the limitations by exploring. It starts with this guy and hundreds of others. If you search on YouTube first time with Autopilot. The amazing experience of direct transfer of control of your life to an artificial intelligence system. In this case, giving control to a Tesla autopilot system. This is why in the human centered camp of autonomy, I believe that autonomous vehicles can be viewed as personal robots with which you build a relationship where the human robot interaction is the key problem, not the perception control. And there the flaws of both humans and machines must be clearly communicated and perceived. Perceived because he used the computer vision algorithms to detect everything about the human and communicated because on the displays of the car or even through voice, it has to be able to reveal when it doesn't see different aspects of the scene. From the human centered approach. Then we can focus on the left, the perception and control side, perceiving everything about the external environment and controlling the vehicle without having to worry about being 99.9999% correct, approaching 100% correct. Because in the cases where it's extremely difficult, we can let the human catch the system, we can reveal the flaws and let the human take over when the system can't. So let's get to the sensors, the sources of raw data that we get to work with. There's three. There's cameras, so image sensors, RGB, infrared, visual data, there's radar and ultrasonic, and there's LiDAR. So let's discuss the strengths first, discuss really what these sensors are, the strength and weaknesses and how they can be integrated together for sensor fusion. So radar is the trusted, the old trusted friend, the sensor that's commonly available in most vehicles that have any degree of autonomy. On the left is a visualization of the kind of data on high resolution radar that's able to be extracted. It's cheap. Both radar, which works with electromagnetic waves and ultrasonic, which works with sound waves. Sending a wave, letting it bounce off the obstacles, knowing the speed of that wave, being able to calculate the distance to the obstacle based on that. It does extremely well in challenging weather, rain, snow. The downside is low resolution compared to the other sensors we'll discuss. But it is the one that's most reliable and used in automotive industry today. And it's the one that's in sensor fusion is always there. Lidar visualized on the right. The downside is expensive, but it produces an extremely accurate depth information and a high resolution map of the environment that has 360 degrees of visibility. It has some of the big strengths of radar in terms of reliability, but with much higher resolution and accuracy. The downside is cost. Here's a quick visualization comparing the two of the kind of information you get to work with. The density and the quality of information with LIDAR is much higher. And LIDAR has been the successful source of ground truth. The reliable sensor relied upon on vehicles that don't care about cost. And camera the thing that most people here should be passionate about. Because machine learning, deep learning has the most ability to have a significant impact there. Why? First, it's cheap, so it's everywhere. Second, it's the highest resolution, so there's the most. The most highly dense amount of information. Which means information is something that can be learned and inferred to interpret the external scene. So that's why it's the best source of data for understanding the scene. And the other reason it's awesome for deep learning is because of the hugeness of data involved. The it's many orders of magnitude more data available for driving in camera, visible light or infrared than it is in lidar. And our world is designed for visible light. Our eyes work in similar ways. The cameras at least crudely. So the source data is similar. The lane markings, the traffic signs, the traffic lights, the other vehicles, the other pedestrians all operate with each other in this RGB space. In terms of visual characteristics, the downside is cameras are bad at depth estimation. It's noisy and difficult even with stereo vision cameras to estimate depth relative to lidar. And they're not good in extreme weather and they're not good at least visible light cameras at night. So let's compare the ranges. Here's a plot in meters on the X axis of the range and acuity on the Y axis. With ultrasonic lidar radar and camera passive visual sensor plotted the range of cameras is the greatest. This is looking at. We're going to look at several different conditions. This is for clear, well lit conditions. So during the day no rain, no fog. Lidar and radar have a smaller range under 200 meters. And ultrasonic sensors used mostly for park assistance and these kinds of things. And blind spot warning has terrible range Is designed for extremely close, has high resolution, distance estimation for extremely close distances. Here a little bit small, but looking at up top is clear, well lit conditions. The plot we just looked at and on bottom is clear dark conditions. So just a clear night, day, no rain, but night. And on the bottom right is heavy rain, snow or fog. Vision falls apart in terms of range and accuracy under dark conditions and in rain, snow or fog. Radar, our old trusted friend, stays strong. The same range, just under 200 meters and at the same acuity. Same with sonar. Lidar works well at night, but it does not do well with rain or fog or snow. One of the biggest downsides of lidar other than cost. So here's another interesting way to visualize this that I think is productive for our discussion of which sensor will win out. Is it the Elon Musk prediction of camera or is it the Waymo prediction of lidar for lidar in this kind of plot that will look for every single sensor, the greater the radius of the blue, the more successful that sensor is at accomplishing that feature with a bunch of features lined up around the circle. So range for LIDAR is pretty good. Not great, but pretty good. Resolution is also pretty good. It works in the dark, it works in bright light, but it falls apart in the snow. It does not provide color information, texture information, contrast. It's able to detect speed, but the sensor size, at least to date is huge. The sensor cost, at least to date is extremely expensive. And it doesn't do well in proximity where ultrasonic shines. Speaking of which, ultrasonic, same kind of plot does well in proximity detection. It's cheap, the cheapest sensor of the 4. In sensor size you can get it to be tiny. It works in snow, fog and rain, but its resolution is terrible. Its range is non existent and it's not able to detect speed. That's where radar steps up. It's able to detect speed. It's also cheap. It's also small, but the resolution is very low. And it's just like LIDAR is not able to provide texture information, color information, camera. The sensor cost is cheap. The sensor size is small, not good up close proximity. The range is the longest of all of them. Resolution is the best of all of them. It doesn't work in the dark, it works in bright light, but not always. One of the biggest downfalls of camera sensors is the sensitivity to lighting variation. It works, it's. It doesn't work in the snow, fog, rain. So it suffers much like lidar from that. But it provides rich interesting textual Information, the very kind that deep learning needs to make sense of this world. So let's look at the cheap sensors, ultrasonic radar and cameras, which is one approach. Putting a bunch of those in a car and fusing them together, the cost there is low. One of the nice ways to visualize using this visualization technique, when they're fused together on the bottom, it gives you a sense of them working together to complement each other's strength. And the question is whether camera or LIDAR will win out for partial autonomy or full autonomy. On the bottom, showing this kind of visualization for a LiDAR sensor. And on top, showing this kind of visualization for fused radar, ultrasonic and camera. At least under these considerations, the fusion of the cheap sensors can do as well as LiDAR. Now the open question is whether lidar in the future of this technology can become cheap and its range can increase because then lidar can win out. Solid state lidar and a lot of developments with a lot of startup LiDAR, companies are promising to decrease the cost and increase the range of these sensors. But for now, we plow along with dedication. On the camera front, the annotated driving data grows exponentially. More and more people are beginning to annotate and study the particular driving perception and control problems. And the very algorithms for the supervised and semi supervised and generative networks that we use to work with this data are improving. So it's a race. And of course, radar and ultrasonic are always there to help. So companies that are playing in the space, some of them are speaking here, Waymo. In April 2017, they exited their testing, their extensive impressive testing process and allowed a first rider in Phoenix, public rider in November 2017. It's an incredible accomplishment for a company and for an artificial intelligence system. In November 2017, no safety driver. So the car truly achieved full autonomy under a lot of constraints. But it's full autonomy. It's a step, it's an amazing step in the direction towards full autonomy, much sooner than people would otherwise predict. And the miles, 4 million miles driven autonomously by November 2017, and growing quickly growing in terms of full autonomous driving, if I can say so cautiously, because most of those miles have a safety driver. So I would argue it's not full autonomy. But however they define full autonomy, it's 4 million miles driven. Incredible Uber in terms of miles, second on that list, they have driven 2 million miles autonomously by December of this of last year, 2017. The quiet player here, in terms of not making any declarations of being fully autonomous, just quietly driving in A Human Centered Way L2 Over 1 billion miles in autopilot Over 300,000 vehicles today are equipped with Autopilot technology, with the ability to drive, control the car laterally and longitudinally. And if Anyone believes the CEO of Tesla, there will be over 1 million such vehicles by the end of 2018. But no matter what, the 300,000 is an incredible number and the 1 billion miles is an incredible number. Autopilot was first released in September 2014, one of the first systems on the road to do so. Autopilot and I count myself as one of the skeptics. In October 2016, autopilot decided to let go of of an incredible work done by mobileye now intel with designing their perception control system. They decided to let go of it completely and start from scratch. Using mostly deep learning methods. The Drive PX2 system from Nvidia and eight cameras. They decided to start from scratch. That's the kind of boldness, the kind of risk taking that can come with naivety. But in this case it worked. Incredible. Audi A8 system is going to be released at the end of 2018 and is promising one of the first vehicles. That's promising. What they're calling L3. And the definition of L3 according to Thorsten Lionheart, the head of the automated driving in Audi, is when the function is operated as intended, if the customer turns the traffic jam pilot on. Now this L3 system is designed only for traffic jams. Bumper to bumper traffic under 60 kilometers an hour. If the customer turns the traffic jam pilot on and uses it as intended, and the car was in control at the time of the accident, the driver goes to the insurance company and the insurance company will compensate the victims of the accident. And in aftermath they come to us, we will pay them. So that means the car is liable. The problem is under the definition of L2. L3. Perhaps there is some truth to this being an L3 system. The important thing here is it's nevertheless deeply and fundamentally human centered. Because even as you see here in this demonstration video with a reporter, the car, for a poorly understood reason, transferred control to the driver, says, that's it, I can't take care of the situation and you take control.
How, how much time do you have in terms of seconds before you really.
Need to know to take over?
Well, this is the new thing about Level 3. With Level 3, the system allows the driver to give the prompt to take over vehicle control again ahead of time, which is in this case up to 10 seconds. Okay, so if the traffic jam situation clears up or any failure in the system occurs. Everything you might think of, the system still needs to be able to drive automatically because the driver has this time to take over. You might ask what is new about this? So why is Audi saying this is the first Level 3 system worldwide on.
The market.
When talking about these levels of automation? There's a classification which starts at level zero, which is basically the driver is doing everything. There's no assistance, nothing. And then it gradually becomes into partly automation. And we're talking about these assistance functions like lane keeping and distance keeping. We're talking about level two assistance functions, okay? Which is meaning that the driver is obliged to permanently monitor the traffic situation, to keep the hands on the wheel even though there's a support and an assistance, and to intervene immediately if anything is not quite right. So you know that from lane assistance systems, when the steering is not perfectly in the right lane, you have to intervene and correct immediately. And that is the main difference. Now we got a takeover request.
So what?
So let's, let's talk about what.
That means. This is still a human centered system. It still struggles, it still must solve the human robot interaction problem. And there's many others playing in the space on the full autonomy side. Waymo, Uber, GM Cruise, nuTonomy, the CTO of which will speak here on Tuesday. Optimus Ride His Annuity Voyage, the CEO of which will speak here next Thursday. And Aurora not listed, the founder of which will speak here next Friday. And the human centered autonomy side. The reason I am speaking about it so much today is we don't have any speakers. I'm the speaker. The Tesla Autopilot is for several years now doing incredible work on that side. We are also working with Volvo Pilot Assist. There's a lot of different approaches there, more conservative, interesting. The Audi Traffic Jam Assist, as I mentioned, the A8 being released at the end of this year. The Mercedes Dry Pilot Assist in the E Class. An interesting vehicle that I got to drive quite a bit is the Cadillac super cruise, the CT6, which is very much constrained geographically to highway driving. And the loudest, proudest of them all, George Hotz of the Comma AI Open Pilot. Just leave that there. So where can AI help? We'll get into the details over the coming lectures on each individual component. I'd like to give some examples. The key areas problem spaces that we can use machine learning to solve from data is localization and mapping. So being able to localize yourself in the space. The very first question that a robot needs to answer, where am I? Scene understanding, taking the scene in and interpreting that scene, detecting all the entities in the scene, detecting the class of those entities in order to then do movement, planning to move around those entities and finally driver state essential element for the human robot interaction. Perceive everything about the driver and everything about the pedestrian and the cyclist and the cars outside the human element of those the human perception side. So first the where am I Visual odometry using camera sensors, which is really where once again, deep learning is most. The vision sensor is the most amenable to learning based approaches. And visual odometry is using camera to localize yourself to answer the where am I question. The traditional approaches of SLAM detect features in the scene and track them through time from frame to frame and from the movement of those features are able to estimate thousands of features tracking estimate the location, the orientation of the vehicle or the camera. Those methods with stereo vision first requires taking two camera streams, undistorting them, computing disparity map from the different perspectives of the two camera, computing the matching between the two, the feature detection, the sift and fast or any of the methods of extracting non deep learning methods of extracting features, strong detectable features that can be tracked through from frame to frame, tracking those features and estimating the trajectory, the orientation of the camera. That's the traditional approach to visual odometry in the recent years since 2015. But most success in the last year has been the end to end deep learning approaches either stereo or monocular cameras. Deepvo is one of the most successful. The end to end method is taking a sequence of images, extracting with a CNN from each image, essential features from each image and then using RNN recurrent neural network to track over time the trajectory, the pose of the camera image to pose end to end. Here's the visualization on the kiddie Data set using DeepVo again taking the video up on the top right as the input and estimating what's visualized is the position of the vehicle. In red is the estimate based again end to end with a CNN and RNN in red is the estimate. In blue is the ground truth in the kitty data set. So this removes a lot of the modular parts of SLAM a visual odometry and allows it to be end to end, which means it's learnable, which means it gets better with data that's huge and that's vision alone. This is one of the exciting opportunities for AI or people working in AI is the ability to use a single sensor. And perhaps the most inspiring because that sensor is similar to our own. The sensor that we ourselves use of our eyes to use that alone as the primary sensor to control a vehicle. That's really exciting. And the fact that deep learning, that the vision visible light is the most amenable to deep learning approaches makes this particularly an exciting area for deep learning research. Scene understanding. Of course we can do a thousand slides on this. Traditionally object detection, pedestrians, vehicles, there is a bunch of different types of classifiers and feature extractors, hard like features. And deep learning has basically taken over and dominated every aspect of scene. Interpretation, perception, understanding, tracking, recognition, classification, detection problems. And audio. Can't forget audio that we can use audio as source of information. Whether that's detecting honks or in this case using the audio of the tires, microphones on the tires to determine visualize. There's a spectrogram of the audio coming in. For those of you who are particularly have a particularly tuned ear can listen to the different audio coming in here of wet road and dry road after the rain. So there's no rain, but the road is nevertheless wet. And detecting that is extremely important for vehicles because they still don't have traction control, they still have poor control in road to road surface, tire to road surface connection. And being able to detect that from just audio is a very interesting approach. Finally or not finally. Next for the perception control side, finally is the movement planning. Getting from A to point, from point A to point B. Traditional approaches, the optimization based approach, determine optimal control, try to reduce the problem, formalize the problem in a way that's amenable to optimization based approaches. There's a lot of assumptions that need to be made, but once those assumptions are made, you're able to determine to generate thousands or millions of possible trajectories and have an objective function to determine which of the trajectories to take. Here's a race car optimizing how to take a turn at high speed with deep learning. Reinforcement learning. The application of neural networks to reinforcement learning is particularly exciting for both the control and the planning side. So that's where two of the competitions we're doing in this class come into play. The simplistic two dimensional world of deep traffic and the high speed moving, high risk world of deep crash. We'll explore those tomorrow. Tomorrow's lectures on deep reinforcement learning and finally driver state. Detecting everything about the driver and then interacting with them. On the left in green are the easier problems on the right and red are the harder problems in terms of perception, in terms of how amenable they are to deep learning methods. Body pose estimation is a very well Studied problem. We have extremely good detectors for estimating the pose, the hands, the elbows, the shoulders and every aspect visible aspect of the body. Head pose, the orientation of the head, we're extremely good at that. And as we get smaller and smaller in terms of size, blink rate, blink duration, eye pose and blink dynamics start getting more and more difficult. All of these metrics extremely important for detecting things like drowsiness or as components of detecting emotion or where people are looking. In driving, where your head is turned is not necessarily where you're looking in regular life. Non driving life. When you look somewhere, you usually turn your head to look with your eyes. In driving, your head often stays still or moves very subtly. Your eyes do a lot more moving. It's the kind of effect that we described as the lizard owl effect. Some fraction of people, a small fraction, are owls, meaning they move their head a lot. And some people, most people are lizards moving eyes to allocate their attention. The problem with eyes is from the computer vision perspective, they're much harder to detect in lighting variation. In real world conditions they get harder and we'll discuss how to deal with it. Of course that's where deep learning steps up and really helps with real world data. Cognitive load we'll discuss as well. Estimating the cognitive load of the driver to give a quick clip is this is the driver glance we've seen before. Estimating the very most important problem on driver state side is determining whether they're looking on road or off road. It's the dumbest, simplest but most important aspect. Are they looking? Are they in the seat and looking on the road or are they not? That's driver glance classification. Not estimating the XYZ geometric orientation where they're looking, but actually binary class classification on road or off road body pose estimation. Determining if the hands are on wheel or not. Determining if the body alignment is standard is good for seat belt for safety. This is one of the important things for autonomous vehicles. If there's an imminent danger to the driver, the driver should be asked to return to a position that is safe for them. In the case of a crash driver in motion. On the top is a satisfied, on the bottom is a frustrated driver. They self reported satisfied. This is with a voice based navigation. One of the biggest sources of frustrations for people in cars is voice based navigation. Trying to tell an artificial intelligence system using your voice alone where you would like to go. Huge source of frustration. One of the interesting things in our large data set that we have from the effective computing perspective is determining which of the features are most commonly associated with frustrated voice based interaction. And that's a smile as shown there. It's the counterintuitive notion that emotion, in particular emotion in the car, is very context dependent, that smiling is not necessarily a sign of happiness and the stoic bored look of the driver up top is not necessarily a reflection of unhappiness. He is indeed a 10 out of 10 in terms of satisfaction with the experience. If he has ever been satisfied with anything, happens to be Dan Brown, one of the amazing engineers in our team. Cognitive load estimating from the eye region estimate and sequences of images. 3D convolutional neural networks taking in a sequence of images from the eye, looking at the blink dynamics and the eye position to determine the cognitive load from 0 to 2, how deep in thought you are. Two paths to autonomous future Again, I would like to maybe for the last time, but probably not argue for the one on the left because our brilliant, much smarter than me guest speakers will argue for the one on the right. The human centered approach allows us to solve the problems at 99% accuracy of localization, scene understanding, movement planning. Those are the problems we're taking on in this class. The scene segmentation that we'll talk about on Thursday, the control that we'll talk about tomorrow, and the driver state that we'll talk about next Wednesday. These problems can be solved with deep learning today. The problems on the right, solving them to close to 100% accuracy are extremely difficult and may be decades away. Because for full autonomy to be here, we have to solve this situation. I've shown this many times, Arc de Triomphe. We have to solve this situation. I give you just a few examples. What do you do? You have to solve this situation. A sort of subtler situation. Here is a busy crosswalk where no autonomous vehicle will ever have a hope of getting through unless it asserts itself. And there's a couple of vehicles here that kind of nudge themselves through, or at least when they have the right of way. Don't necessarily nudge, but don't hesitate when a pedestrian is present, an ambulance flying by, even though if you use a trajectory so pedestrian intent modeling algorithm to predict the momentum of the pedestrian to estimate where they can possibly go, then autonomous vehicle would stop. But these vehicles don't stop, they assert themselves, they move forward. Now for a full autonomy system. This may not be the last time I show this video, but because it's taking full control, it's following a reward function, an objective function and all of the problems, the ethical and the AI problems that arise, like this coastrunner problem, will arise. So we have to solve those problems. We have to design that objective function. So with that, I'd like to thank you and encourage you to come tomorrow because you get a chance to participate in Deep Traffic, in deep Reinforcement Learning competition. Thank you very much.










