Driverless Cars - Computerphile

The Efficiency of Autonomous Vehicles: A Complex Problem

One question that has been raised by some experts is whether it would be more efficient to have a human sitting in an autonomous vehicle instead of all the computation and technology that currently go into them. This is an excellent question, as many of the computational resources are there because we don't know how to solve the problem in a collaborative way. Additionally, a lot of this computation is just commercial-grade computers that have been put there because nobody has built a special-purpose unit for people who are serious about it.

The Tesla Model as an Example

One excellent example is the Tesla model, which has expended an enormous amount of effort to make it a product that is compact and sellable. This has led to good progress in the field of autonomous driving. However, if we were to dedicate a manufacturing enterprise solely to this problem, some of this would get better. The big players, such as NVIDIA or Intel, have not yet developed plans for how exactly they will come up with an embedded systems platform that is more compact than what's currently available.

The Early Days of Autonomous Driving

In the early days of autonomous driving, cars were equipped with PC units purchased from commercial suppliers and stacked in the back. This was clearly not a viable solution, but it also shows that the big players have not yet figured out how to create an embedded systems platform that is more compact than what's currently available.

The Importance of Testing

One of the classic things to ask anyone who's talking about any technology is whether it ever goes wrong. In the case of autonomous vehicles, there are certainly instances where tests go wrong, although these are often not reported in the media. More interestingly, there are also the smaller problems that continually crop up, such as hesitation at roundabouts. These types of issues are not yet fully understood and require further research.

Communication Between Autonomous Vehicles

One potential solution to these problems is for autonomous vehicles to communicate with each other. This could work, but it would require a significant investment in infrastructure costs, including instrumenting street signs and roads. However, if countries such as the US or China were to invest heavily in this technology, it's possible that we could see widespread adoption of this type of system.

Simultaneous Localization and Mapping

One area of artificial intelligence that has been applied to autonomous driving is simultaneous localization and mapping (SLAM). This field has grown spectacularly and has become extremely robust. However, it only tells you where the road is and where you are on the road - it doesn't tell you what other cars will do or how to navigate through roundabouts.

The Challenge of Belief Updates

One of the biggest challenges in autonomous driving is updating a car's belief about its surroundings. For example, if there is a door in front of the vehicle, the system needs to update its understanding of where the door is and whether it should stop or go around it. This requires complex calculations that are still not yet fully understood.

The Future of Autonomous Driving

Despite these challenges, many experts believe that autonomous driving will become increasingly common in the near future. As the technology improves, we can expect to see more widespread adoption of self-driving cars. However, it's likely that there will be a period of time where both human drivers and autonomous vehicles are on the road at the same time, with human drivers providing oversight and control as needed.

"WEBVTTKind: captionsLanguage: enwe're going to talk a little bit about how robots learn but more specifically perhaps well how autonomous vehicles or self-driving vehicles let me begin with sort of our conception of what it means for a robot to learn or even to just know anything people are often mystified when we say you know a robot is learning and and people say no only only children can learn only people can learn what's a robot doing maybe the first question to ask is what does a robot need to know in order to do anything useful so you mentioned self-driving cars what do we need to know as a car in order to be able to drive we need to know what is a road what is not a road what is an obstacle what's not an obstacle which is literally the very minimum you must know before you can do anything at all the robot must know how the car behaves so what happens if i press this pedal what happens if i turn the steering wheel a little bit so these are all physical systems if you like of one kind or the other how the car behaves is literally what we are taught in high school physics so the robot must have some idea of high school physics we don't mean make a robot sit there and learn like we did but but some of that information about what will happen if you do something must be in the robot likewise uh the robot needs to understand you know if i see the these kind of perceptions it it must be the road and and it needs to be able to do this robustly you know under rain under snow under all of these conditions lighting so these are all uh you know bits of knowledge that the robot needs likewise uh you also need to know as the robot what will somebody do if i do this now when somebody starts to break and you see their brake light what should i expect just as what should i expect if i press this pedal and then once you understand that then you say okay if i expect this then what can i do so maybe i can cut in front of this person because they have slowed down and maybe i can indicate to see if they let me in and so on and so forth so the knowledge gets more and more sophisticated until at the very limit you're trying to ask what kind of a person am i facing and all of this is knowledge so when we say a robot learns what we mean is that the robot has some kind of a representation of these bits of knowledge it could be a map it could be a function that says if you do this this will happen and then what the robot is doing is changing something in the representation to better fit what it sees in reality that's what learning is in any industry they have the saying rubbish in rubbish out so how much information do you need to feed these before they can make some kind of sense of it i mean because we are talking about cars and how they learn it's very interesting because at the moment uh the the biggest barrier that the industry as a whole faces is to get enough data to represent everything at one level if you're thinking about what's the minimum you need to learn uh or you need to know in order to get started it's not a whole lot uh in fact i mean think about it this way so we have uh you know high school students come in for weekend hackathons and we get them to take lego lego robots and follow a line on the uh you know on the floor uh and it's not that hard uh it's so people can put these together in a more serious note it's an undergraduate project to get a car to just follow the road somewhere but that's not what we are talking about when we say self-driving cars what we're really talking about is a car that can cope with multiple conditions multiple environmental kind of behaviors different actors on the road unknowns in the form of you know maybe a paper bag flying in front of you and is that a rock or is it just a paper bag that i can drive through by the time you're talking about all of this you need an enormous amount of data or you need some way in which people can teach you efficiently so when we were taught how to drive we were leveraging common sense that we had learned over a lifetime but also people gave us rules so people told us you know make sure that you know somebody else is not in your way and and they didn't just show you one or two examples they gave you this high level instruction that covered a lot of things so sometimes that's how you get good data it's it's a combination of all of these there's obviously got to be a huge amount of processing going on here as well how do you deal with that amount of data and how you know the amount of processing that's required with a lot of care and with a lot of resources so in terms of resources so to give you an example if if you drove around the car with let's say eight cameras and radar and lidar units and if you drove it around all day nine to five by the end of the day you'd have accumulated enough information that you wouldn't use wi-fi or something to transmit it you would unplug the hard disk and you know plug it back in that's the level at which uh information is gonna be collected uh one can be clever about this this is what computer science is about so one can curate compress uh all of that uh but ultimately uh what you really want is many many months and years of campaigns like this in many places all of that compressed and distilled and that's what the frontier of machine learning today is i'm just imagining those gigabytes of data and and what will you do with them but i mean presumably a lot of the processing has to happen in real time and then what you're talking about is perhaps analyzing that information is it the acquisition has to be real time because you don't know at one time what is useful and what is not but we are not the first kind of industry in robotics to think about this so if you take as an example what's going on with these big particle accelerators they're doing exactly the same thing you know they they conduct this experiment they don't know what happened uh it it everything happens so fast that they're collecting terabytes of data for you know fractions of a second uh and then they have a a high resolution very fast layer that quickly does a basic level of processing and all of the analysis happens afterwards so it would be a little bit like that in this pipeline as well it's definitely not the first time i've said it so apologies if you're bored of hearing this but it seems to me that the the big problem with anything that's autonomous is actually mixing it with things that are not autonomous if you change everything overnight to be autonomous you just implement some rules and off you go but how do you make sense of a world where some things are not acting in the same way you do this is exactly what is making this problem interesting because as you say if if all vehicles on the road were autonomous if there were no people running around and there were no kids jumping in front of you the problem is much simpler then we really have just the tcp protocol for your computer uh just running on physical uh you know packets and and that would be much simpler it wouldn't be trivial but we understand those problems what makes this problem hard is exactly that you need to understand what is the person in front of me doing if i see this if i think this is what they're doing and i do this what will they do and all of that that complexity is what the robot needs to cope with the way we do it in practice is that we take a combination of behave a little bit conservatively you know assume that the other person uh you know might be doing things you don't fully understand assume if you're going in a school zone that a kid could you know jump in front of you so act a little bit conservatively is a good uh starting heuristic and the second is to learn over time in the beginning maybe we don't know what people are doing but after a while you've seen enough number of instances that maybe some of these things aren't a surprise anymore and over time slowly you've understood all of what we call edge cases different countries people behave in different ways so would these autonomous vehicles have to be localized in some way they would they are quite far away i think uh from the point when country level kind of behavioral nuances matter because there are much bigger problems that are still unsolved uh there certainly are differences so one prominent difference so i spent many years living in the us and then now i've spent many years living in the uk and a big difference is uh you know walking on the on the street jaywalking as it's called is illegal in most parts of the us but it's not illegal in the uk and in fact we have a completely different approach to transportation regulation on that front this makes a big difference for the car because you can make certain assumptions in one setting that you cannot make in another setting and also the importance of do you need models of how people behave uh changes because of this uh so like this there are a number of differences so if you're in an uh you know suburban environment where lane discipline is all you need driving is a lot simpler if you're in a tight urban setting in which you have to squeeze your way in and things like that driving is much harder and i know that um there are trails going on there are places where you can use autonomous vehicles or at least in a limited fashion but just before you mention that there is still someone solve problems so what what the biggest um unsolved problems in this area i think what people are struggling with is this business of edge cases uh so so uh at one level the way it manifests itself is that when something slightly odd happens you know somebody didn't stop the way you thought they should or maybe people double parked in a way that you weren't expecting these things can confuse the system because it hasn't been trained in quite that setting i think most road trials and most serious players have gotten past this these kinds of problems have been solved but the next level of problems now is you know how do you interact with people in a meaningful way so one of my students and i we recently wrote a paper in which we were arguing that you know the act of driving is fundamentally an act of conflict uh anybody who's seriously driven would immediately agree uh it may you know it may not seem that way uh up front but but that's naturally what it is you know every time we give way every time you know somebody pushes in it just a little bit faster so that they go first they're all situations of conflict mild conflict i mean nothing too bad but but it's still something that the agent must learn to deal with uh in turn this calls for uh interesting mathematical techniques so there are fields like game theory that try to describe these kinds of phenomena and so one could look at how do you bring those kinds of constructions along with you know modern driven machine learning uh reasoning methods so people are looking at a variety of ways in which one could tackle this the edge cases we're sort of getting getting beyond but i mean i suppose there are edge cases where humans fail and make problems otherwise we wouldn't have any accidents on the road or collisions um what is the holy grail in this field what is it that everyone's striving to to solve so people are struggling to say what it means to be competent some of it is actually social acceptance and political realities uh so so there needs to be a conversation at the societal level about you know now that these technologies are looking serious what do we want i don't think that conversation has fully happened yet uh so for the longest time this was just quaint technology happening in a few places uh then it got picked up in the political circles as this is emerging technology but i i think we still have not had conversation sitting down with the layperson you know ultimately the people who are going to be affected are people who don't even know what this technology is you know kids and elderly and so on uh so that conversation has to happen for one version of this answer but but if you kind of think about it in terms of what do the engineers and the technologists think is the holy grail i would say at the minimum we would like you know robust autonomy in what we call you know operating design domains that are large enough you know so right now one might say we only drive if it's sunny or we only drive between nine to five uh and that's okay and you could imagine kind of operating vehicles like this but we want these conditions to be reasonably permissive that it's useful it's economically useful and we're not quite there because you know in in the uk if you said i'm only going to drive if it's sunny you're not going to run a very useful business uh so you have to be able to at least cope with weather conditions and then you have to be able to cope with traffic conditions then you have to cope with seasonality and so so the the holy grail is really to be able to include all of this in the design domain there's a slightly out there question i want to put to you that some of these um cars vehicles have got so much computation on is it not more efficient just to have a human sitting there this is an excellent question at the moment uh i would say that a lot of that computation is there because we don't know how to solve the problem in a collaborative way uh also a lot of that computation is just commercial grade you know regular computers that have been put there because nobody has built a special purpose unit for people who are serious i mean a very good example is tesla where they've expended an enormous model effort to make it a product that's compact and kind of sellable and and they've made good progress um so like that i think when when the full uh you know manufacturing enterprise is dedicated to this problem some of this will get better so we'll have uh raspberry pi running our uh that i do not know uh what i would really expect is that you know the the big players whether it's an nvidia or an intel or whoever the new entrant is i would not be surprised if uh you know they all don't have plans for how exactly you're going to come up with an embedded systems platform that is more compact than what's going around so if you looked at some of the early days of autonomous driving they just you know pc units uh you know bought from commercial suppliers and just stacked in the back uh so clearly that's not how you want to run this uh but that's also clearly just a matter of the big players not having done something for it one of the classic things to ask anyone who's talking about any technology is does it ever go wrong um and it's kind of we read in the newspapers occasionally that some of these trials go wrong does it putting aside the you know the tragic cases where it's goes horribly wrong what's the sort of thing that it might it just gets slightly wrong is there something that just continually crops up it does and and in fact those are the more interesting ones to give you a very trivial example hesitation at roundabouts uh so you might have a car uh you know that wants to acquire enough information and and only then enter a roundabout but if you if you look carefully they look like you know student drivers who annoy everybody on the road right and they're not quite going in and like no you can go now i would have gone but then the car doesn't go and if you're in a dense enough area this might mean that you hold up traffic this is not quite called a failure in public discussion but it is a failure and until you can solve these kinds of problems you're not going to get acceptance but i suppose that different autonomous vehicles could communicate with each other and make is that how it would work it could work this is an issue that's not explored nearly enough but i'm beginning to think more and more that it's only a matter of time it's only really a matter of time before something like this also comes in so the real reason it's not explored at the moment is that it takes a certain amount of infrastructure cost for the you know street signs the roads uh everything to be instrumented but in the scheme of things if you think about the you know number of billions and you know nearly trillions that are going to be spent on infrastructure all the big countries are seriously thinking about it uh then it's not inconceivable that we can put in place technologies like this and if we did we would completely uh you know change the game for the amount of intelligence that's needed of course because there's so much computer vision going on at the moment is gps not sufficient then an up-to-date map and gps no that was the early days so in the early days uh people started out with you know i have gps and and in fact that the in the beginning when this problem was being looked at the most interesting and exciting area of artificial intelligence that was being applied here was called simultaneous localization and mapping can you figure out the map as you're driving and then having figured out that map can you figure out where you are on that map and that that field has grown spectacularly it's become extremely robust but as i was saying at the beginning that only tells you where is the road and where are you on the road it doesn't really tell you what's the other car going to do how should i actually drive what happens when i get stuck in a roundabout you know all of these other things that we teach learner drivers all of that still needs to be solved a door in front of it so the belief would be updated to say that i'm probably here here we just talk about five roads because i've always been here a little bit longer then we've got 60 possible positions one we've got a two three out of five and then they can all go in any slotwe're going to talk a little bit about how robots learn but more specifically perhaps well how autonomous vehicles or self-driving vehicles let me begin with sort of our conception of what it means for a robot to learn or even to just know anything people are often mystified when we say you know a robot is learning and and people say no only only children can learn only people can learn what's a robot doing maybe the first question to ask is what does a robot need to know in order to do anything useful so you mentioned self-driving cars what do we need to know as a car in order to be able to drive we need to know what is a road what is not a road what is an obstacle what's not an obstacle which is literally the very minimum you must know before you can do anything at all the robot must know how the car behaves so what happens if i press this pedal what happens if i turn the steering wheel a little bit so these are all physical systems if you like of one kind or the other how the car behaves is literally what we are taught in high school physics so the robot must have some idea of high school physics we don't mean make a robot sit there and learn like we did but but some of that information about what will happen if you do something must be in the robot likewise uh the robot needs to understand you know if i see the these kind of perceptions it it must be the road and and it needs to be able to do this robustly you know under rain under snow under all of these conditions lighting so these are all uh you know bits of knowledge that the robot needs likewise uh you also need to know as the robot what will somebody do if i do this now when somebody starts to break and you see their brake light what should i expect just as what should i expect if i press this pedal and then once you understand that then you say okay if i expect this then what can i do so maybe i can cut in front of this person because they have slowed down and maybe i can indicate to see if they let me in and so on and so forth so the knowledge gets more and more sophisticated until at the very limit you're trying to ask what kind of a person am i facing and all of this is knowledge so when we say a robot learns what we mean is that the robot has some kind of a representation of these bits of knowledge it could be a map it could be a function that says if you do this this will happen and then what the robot is doing is changing something in the representation to better fit what it sees in reality that's what learning is in any industry they have the saying rubbish in rubbish out so how much information do you need to feed these before they can make some kind of sense of it i mean because we are talking about cars and how they learn it's very interesting because at the moment uh the the biggest barrier that the industry as a whole faces is to get enough data to represent everything at one level if you're thinking about what's the minimum you need to learn uh or you need to know in order to get started it's not a whole lot uh in fact i mean think about it this way so we have uh you know high school students come in for weekend hackathons and we get them to take lego lego robots and follow a line on the uh you know on the floor uh and it's not that hard uh it's so people can put these together in a more serious note it's an undergraduate project to get a car to just follow the road somewhere but that's not what we are talking about when we say self-driving cars what we're really talking about is a car that can cope with multiple conditions multiple environmental kind of behaviors different actors on the road unknowns in the form of you know maybe a paper bag flying in front of you and is that a rock or is it just a paper bag that i can drive through by the time you're talking about all of this you need an enormous amount of data or you need some way in which people can teach you efficiently so when we were taught how to drive we were leveraging common sense that we had learned over a lifetime but also people gave us rules so people told us you know make sure that you know somebody else is not in your way and and they didn't just show you one or two examples they gave you this high level instruction that covered a lot of things so sometimes that's how you get good data it's it's a combination of all of these there's obviously got to be a huge amount of processing going on here as well how do you deal with that amount of data and how you know the amount of processing that's required with a lot of care and with a lot of resources so in terms of resources so to give you an example if if you drove around the car with let's say eight cameras and radar and lidar units and if you drove it around all day nine to five by the end of the day you'd have accumulated enough information that you wouldn't use wi-fi or something to transmit it you would unplug the hard disk and you know plug it back in that's the level at which uh information is gonna be collected uh one can be clever about this this is what computer science is about so one can curate compress uh all of that uh but ultimately uh what you really want is many many months and years of campaigns like this in many places all of that compressed and distilled and that's what the frontier of machine learning today is i'm just imagining those gigabytes of data and and what will you do with them but i mean presumably a lot of the processing has to happen in real time and then what you're talking about is perhaps analyzing that information is it the acquisition has to be real time because you don't know at one time what is useful and what is not but we are not the first kind of industry in robotics to think about this so if you take as an example what's going on with these big particle accelerators they're doing exactly the same thing you know they they conduct this experiment they don't know what happened uh it it everything happens so fast that they're collecting terabytes of data for you know fractions of a second uh and then they have a a high resolution very fast layer that quickly does a basic level of processing and all of the analysis happens afterwards so it would be a little bit like that in this pipeline as well it's definitely not the first time i've said it so apologies if you're bored of hearing this but it seems to me that the the big problem with anything that's autonomous is actually mixing it with things that are not autonomous if you change everything overnight to be autonomous you just implement some rules and off you go but how do you make sense of a world where some things are not acting in the same way you do this is exactly what is making this problem interesting because as you say if if all vehicles on the road were autonomous if there were no people running around and there were no kids jumping in front of you the problem is much simpler then we really have just the tcp protocol for your computer uh just running on physical uh you know packets and and that would be much simpler it wouldn't be trivial but we understand those problems what makes this problem hard is exactly that you need to understand what is the person in front of me doing if i see this if i think this is what they're doing and i do this what will they do and all of that that complexity is what the robot needs to cope with the way we do it in practice is that we take a combination of behave a little bit conservatively you know assume that the other person uh you know might be doing things you don't fully understand assume if you're going in a school zone that a kid could you know jump in front of you so act a little bit conservatively is a good uh starting heuristic and the second is to learn over time in the beginning maybe we don't know what people are doing but after a while you've seen enough number of instances that maybe some of these things aren't a surprise anymore and over time slowly you've understood all of what we call edge cases different countries people behave in different ways so would these autonomous vehicles have to be localized in some way they would they are quite far away i think uh from the point when country level kind of behavioral nuances matter because there are much bigger problems that are still unsolved uh there certainly are differences so one prominent difference so i spent many years living in the us and then now i've spent many years living in the uk and a big difference is uh you know walking on the on the street jaywalking as it's called is illegal in most parts of the us but it's not illegal in the uk and in fact we have a completely different approach to transportation regulation on that front this makes a big difference for the car because you can make certain assumptions in one setting that you cannot make in another setting and also the importance of do you need models of how people behave uh changes because of this uh so like this there are a number of differences so if you're in an uh you know suburban environment where lane discipline is all you need driving is a lot simpler if you're in a tight urban setting in which you have to squeeze your way in and things like that driving is much harder and i know that um there are trails going on there are places where you can use autonomous vehicles or at least in a limited fashion but just before you mention that there is still someone solve problems so what what the biggest um unsolved problems in this area i think what people are struggling with is this business of edge cases uh so so uh at one level the way it manifests itself is that when something slightly odd happens you know somebody didn't stop the way you thought they should or maybe people double parked in a way that you weren't expecting these things can confuse the system because it hasn't been trained in quite that setting i think most road trials and most serious players have gotten past this these kinds of problems have been solved but the next level of problems now is you know how do you interact with people in a meaningful way so one of my students and i we recently wrote a paper in which we were arguing that you know the act of driving is fundamentally an act of conflict uh anybody who's seriously driven would immediately agree uh it may you know it may not seem that way uh up front but but that's naturally what it is you know every time we give way every time you know somebody pushes in it just a little bit faster so that they go first they're all situations of conflict mild conflict i mean nothing too bad but but it's still something that the agent must learn to deal with uh in turn this calls for uh interesting mathematical techniques so there are fields like game theory that try to describe these kinds of phenomena and so one could look at how do you bring those kinds of constructions along with you know modern driven machine learning uh reasoning methods so people are looking at a variety of ways in which one could tackle this the edge cases we're sort of getting getting beyond but i mean i suppose there are edge cases where humans fail and make problems otherwise we wouldn't have any accidents on the road or collisions um what is the holy grail in this field what is it that everyone's striving to to solve so people are struggling to say what it means to be competent some of it is actually social acceptance and political realities uh so so there needs to be a conversation at the societal level about you know now that these technologies are looking serious what do we want i don't think that conversation has fully happened yet uh so for the longest time this was just quaint technology happening in a few places uh then it got picked up in the political circles as this is emerging technology but i i think we still have not had conversation sitting down with the layperson you know ultimately the people who are going to be affected are people who don't even know what this technology is you know kids and elderly and so on uh so that conversation has to happen for one version of this answer but but if you kind of think about it in terms of what do the engineers and the technologists think is the holy grail i would say at the minimum we would like you know robust autonomy in what we call you know operating design domains that are large enough you know so right now one might say we only drive if it's sunny or we only drive between nine to five uh and that's okay and you could imagine kind of operating vehicles like this but we want these conditions to be reasonably permissive that it's useful it's economically useful and we're not quite there because you know in in the uk if you said i'm only going to drive if it's sunny you're not going to run a very useful business uh so you have to be able to at least cope with weather conditions and then you have to be able to cope with traffic conditions then you have to cope with seasonality and so so the the holy grail is really to be able to include all of this in the design domain there's a slightly out there question i want to put to you that some of these um cars vehicles have got so much computation on is it not more efficient just to have a human sitting there this is an excellent question at the moment uh i would say that a lot of that computation is there because we don't know how to solve the problem in a collaborative way uh also a lot of that computation is just commercial grade you know regular computers that have been put there because nobody has built a special purpose unit for people who are serious i mean a very good example is tesla where they've expended an enormous model effort to make it a product that's compact and kind of sellable and and they've made good progress um so like that i think when when the full uh you know manufacturing enterprise is dedicated to this problem some of this will get better so we'll have uh raspberry pi running our uh that i do not know uh what i would really expect is that you know the the big players whether it's an nvidia or an intel or whoever the new entrant is i would not be surprised if uh you know they all don't have plans for how exactly you're going to come up with an embedded systems platform that is more compact than what's going around so if you looked at some of the early days of autonomous driving they just you know pc units uh you know bought from commercial suppliers and just stacked in the back uh so clearly that's not how you want to run this uh but that's also clearly just a matter of the big players not having done something for it one of the classic things to ask anyone who's talking about any technology is does it ever go wrong um and it's kind of we read in the newspapers occasionally that some of these trials go wrong does it putting aside the you know the tragic cases where it's goes horribly wrong what's the sort of thing that it might it just gets slightly wrong is there something that just continually crops up it does and and in fact those are the more interesting ones to give you a very trivial example hesitation at roundabouts uh so you might have a car uh you know that wants to acquire enough information and and only then enter a roundabout but if you if you look carefully they look like you know student drivers who annoy everybody on the road right and they're not quite going in and like no you can go now i would have gone but then the car doesn't go and if you're in a dense enough area this might mean that you hold up traffic this is not quite called a failure in public discussion but it is a failure and until you can solve these kinds of problems you're not going to get acceptance but i suppose that different autonomous vehicles could communicate with each other and make is that how it would work it could work this is an issue that's not explored nearly enough but i'm beginning to think more and more that it's only a matter of time it's only really a matter of time before something like this also comes in so the real reason it's not explored at the moment is that it takes a certain amount of infrastructure cost for the you know street signs the roads uh everything to be instrumented but in the scheme of things if you think about the you know number of billions and you know nearly trillions that are going to be spent on infrastructure all the big countries are seriously thinking about it uh then it's not inconceivable that we can put in place technologies like this and if we did we would completely uh you know change the game for the amount of intelligence that's needed of course because there's so much computer vision going on at the moment is gps not sufficient then an up-to-date map and gps no that was the early days so in the early days uh people started out with you know i have gps and and in fact that the in the beginning when this problem was being looked at the most interesting and exciting area of artificial intelligence that was being applied here was called simultaneous localization and mapping can you figure out the map as you're driving and then having figured out that map can you figure out where you are on that map and that that field has grown spectacularly it's become extremely robust but as i was saying at the beginning that only tells you where is the road and where are you on the road it doesn't really tell you what's the other car going to do how should i actually drive what happens when i get stuck in a roundabout you know all of these other things that we teach learner drivers all of that still needs to be solved a door in front of it so the belief would be updated to say that i'm probably here here we just talk about five roads because i've always been here a little bit longer then we've got 60 possible positions one we've got a two three out of five and then they can all go in any slot\n"