Honestly, I think it's something approaching a general rule that most things are far harder than "SV types" believe they are. Maybe it has something to do with all the startups.
How to solve travel for cars: build roads
How to solve self-driving for cars: build digitaly aware roads
You can’t make self-driving work with a pure black box model. Neural nets need to be able to explain why they work. Currently they can’t do that well enough.
Human drivers here, have no problems navigating snow covered roads, even when the road, side of road, and everything is uniform white. When there are no visible lines on road, when there is no road tarmac to see, when ditches on side of road are filled with snow.
Human drivers can tell where to stop at stop lights, without lines or other metrics. Subtle clues abound, but I cannot believe current tech can navigate here.
At least dirt roads are generally brown and mostly vegetation free, although I wonder how even this would be handled in desert like areas, where it is flat, and road and surrounding land are dirt.
They’re also pretty great considering the millions of miles travels on such roads each year.
Who is going to pay for it? Are you going to rebuild all the roads, if not then what is the point since your system needs to work on all kinds of roads.
At this point though, you’ve started creating mass transit.
My perspective is inherently Dutch. I think the roads here get replaced quite often anyway.
Paving while laying RFID tag strips would cost nothing per mile, compared to the labour of pulling up and resurfacing.
I can just imagine the scenes when someone hacks the digitally aware road to tell cars X and chaos (and potentially death) ensues.
IMHO, self-driving cars are solving a wrong problem, and if they work fully someday, might exacerbate a few others (congestion, pollution, parking).
Public transit, with diverse "last mile" options ( buses, bikes, scooters, heck, automated shuttles/pods on dedicated lanes, etc.) is just a better way of achieving the same goal.
If someone decides to prank a desolate stretch of road with tens of stop stings every 5 meters, you are going to have some very broken self driving cars.
Plus all driving models are cultural driving models. A Tesla will break down on Indian roads.
Self driving cars will need data from sources other than their models. At which point you are creating mass transit with extra steps.
Then some pranksters would end up with big fines or go to jail? Just like if they drop water balloons onto cars on the freeway from a bridge?
No amount of driving focused ML/AI is going to help with that.
If all cars are self-driving you don't really need any parking spaces at all, do you?
Putting aside the physical aspects of replacing existing roads, how would a digitally-aware road work? A bunch of bluetooth devices? And in what schema would the road 'speak' to the car? Ideally it would be an open format, but who would decide upon that?
It is an interesting question though! I think of a few things that could be done quite easily:
Communication can happen via low latency with relatively little data. I wouldn't know what's best for that.
* Roads can broadcast. Roads can listen through sensors and determine the position of every car.
* Cars can broadcast. Cars can listen.
* Things can go wrong. There'd be huge demand for any distributed system engineer :P
A use-case sketch:
A road can determine if it almost goes out of bounds. A road can determine if two cars are about to collide, but so could two cars.
So this would work well in places where there are only roads and cars (e.g. highways and "road only" type of roads -- i.e. no bicycle lanes).
Cyclists can communicate as well. They need to chip their bike.
Pedestrians can communicate as well. They need to chip their coat. Though I'm not happy with that solution (what if the coat gets lost?).
Anyways that's my rough sketch. I'd need to research the technologies needed for this.
This would make for a fun systems design interview.
Whomever wants to brainstorm with me on it, feel free to email me. I don't think I'm particular talented in this area but I can be a rubber ducky.
In areas without network you dont use self driving tech.
Driving data is cultural data, its not some natural phenomenon which is clean and periodic. If a truck transporting cows breaks down and there’s a herd of cattle running all over the highway, I seriously doubt the models are going to perfectly handle that situation.
Level 5 self driving is impossible, but with road data and external coordination, we can achieve the same effect.
This is going to happen. It will be proprietary. Think roads with DRM.
Of course it can. We do it. I'd phrase it myself as:
The current approach Tesla is using (ML techniques available now, without major, new breakthroughs) can't work.
I don't think computers will ever come anywhere close to the human brain in terms of practical understanding and problem solving. Machine learning involves "Give a computer an awful lot of existing labeled data sets and try to get it to figure out, via un-debuggable magic, what they are." The human brain can figure out novel things without having to have had the huge dataset of previous examples, and I'll point to literally any small child as an example (I have two, and one solid rule of parenting is "They're more creative than you would ever expect").
The next question is then one of power efficiency, and there, again, even if we could do something similar to the human brain (which, see above, I don't think is at all likely), can we scale the required bits down to a car's power budget? A 10kW server rack in the trunk isn't really feasible.
You seem to believe that anything humans can do, we can eventually design a computer to do. And I disagree entirely.
IF I stuck STOP signs every 5 meters, a human will realize that they can be ignored and its a prank. Unless autonomous cars are trained for precisely this kind of malice they will fail.
IF someone decides to hunt autonomous cars, there really is nothing in their models which will save them. They aren’t designed for predator/prey dynamics.
When you open up technology to the world, you open it up to the best and worst of humanity. There is no way fully autonomous cars survive.
The bar for malice will be significantly lower, and it's the car that will be at fault, not the person with the stop sign.
Can I walk around with a stop sign on a pole? Why not? It's not an official street sign. We don't have laws that I know of against carrying around homemade stop signs, I don't think, because any competent driver is able to identify that they aren't official.
Maybe I should get a backpack with a stop sign on it, for when I'm riding the bike.
Driving data is inherently culture biased on the most frequent scenarios. But this is a data set with many outliers.
Large transformers display few shot learning similar to children. It’s a major advancement, machine learning is much more than supervised learning nowadays.
assuming that we havent destroyed ourselves and of course dont enter a dark age of a large percentage.
There might be hard limits we'll never break through. All the experts will tell you is "we know that we don't know", because when it comes to the brain we don't know shit.
There are many theories out there and materialism is only one of them. People deify tech and underestimate the brain, I'd advise to do the opposite
Technocrates told us we'd have AGI and flying cars by now, I'd stay cautious about people claiming reaching AGI is a question of time alone.
That said, there's a huge difference between "the brain may be too hard for us" and "the brain may not even be physical." That's about on the same scale as the difference between "the pyramids were built with advanced mechanical tools" and "the pyramids were built by aliens."
If it can work, then a Tesla trained in SF would work on streets in India or Vietnam. But it cant, since driving data is cultural data and self driving narratives lie in a cultural blind spot.
Advanced economies have relative more stable traffic and rule of law which influences their driving.
If those disappear, old driving data is not going to apply.
So what makes you dream now might be completely detrimental in the future. Not everyone thinks autonomous personal cars are a step forward, I personally think it's a step in the wrong direction.
Everybody asks "how" but nobody ask "why". "It's just progress why don't you like it?!"
Yet Tesla sells it today as working
I'm pretty pessimistic and jaded about computer technology. I've been in the field too long, and done too much computer security.
(1) Whatever guarantees you think the hardware is supposed to be making, it isn't. The hardware is now complex enough that just about any security boundary can be violated with enough creativity, if you have enough fancy features to try and keep performance marching forward if you've hit a process wall. Rowhammer. Intel's... everything. The various branch predictor things. Etc.
(2) Modern software, as a general rule, is dependency hell. You suck in hundreds of megabytes of code from God knows who, all of which is sucking in yet more, to do something. Nobody has any idea about all the code their project is sucking in, unless they've written it themselves. So, by that definition, nobody can actually understand their code, because some corner case, 15 layers down, can break something in absolutely unexpected and obscure ways.
(3) Murphy is an ass, and that corner case will happen, when you least expect it and are least able to debug it.
(4) Those piles of complexity, on top of piles of complexity, stacked on top of the previous complexity that exists to solve problems caused by the previous complexity, which was created to get around performance problems due to... etc, just go all the way down. It's all technical debt, and it leads to diminishing returns on investment, or, as I'm beginning to think, negative returns on investment. The more we try, the worse we make things. I'll point to Apple here, and the fact that despite the fact that they know messaging is the literal worst case for untrusted remote input, and that they've built explicit systems to sandbox it, firewall it, safely parse it, etc... it's still been, very recently, vulnerable to remote, zero-click, zero-user-awareness remote exploits that give the remote attacker root level privileges on the phone to do whatever they want and exfil whatever they want. Yay.
(5) The "culture" around modern software development is absolutely terrifying when it comes to anything safety critical. Fine, ship whatever when it comes to the latest addictive social media app, and it if crashes, welp. But when it comes to things in the physical world, that's absolutely not acceptable. When Tesla OTA'd updates to the brake firmware of CR's Model 3 that utterly sucked in the braking tests and it got better, everyone was so excited about how, see, OTAs can fix issues! Very few people asked how on earth Tesla had shipped defective braking firmware in the first place, if it was a quick fix. Personally, I'd like my brake system firmware well tested before release, and absolutely "hard" in ROM, so that it can't be updated. Look at the papers from a while back where the security people were able to remotely compromise a Jeep's braking system through remote cellular connectivity and the radio. That's just not OK in the slightest!
(6) As Tesla continues to demonstrate, the current way that ML/AI is done is absolutely rubbish for any sort of safety critical system, which automotive control systems are. "Lol, whoops, yeah... hey, thanks for reporting that your car can't take that turn that it used to take just fine!" is the sort of stuff that's funny, until it's tragic. Tesla's software practices are very clearly unsuited to anything remotely resembling the sort of safety critical systems they think they're developing.
That's all before you get into the physical limits we're approaching, the economic cost of modern fabs, and the fact that something like 40% of the world's high end silicon production is in a country that China very much appears to be planning to take back.
There's an awful lot of money chasing the hope, but I'm (obviously) very skeptical that much of anything useful will come out of it, other than making a bunch of people rich in the process of saying "Well, we're still 3-5 years out on this technology and I intend to retire before you can really call me out on the fact that in 3-5 years, it's still going to be 3-5 years out."
I work in the low level weeds, and I see what an utter disaster modern tech is. I'm increasingly using less and less of the stuff in my personal life, and my life is better for it.
First of all, it's not a "pure ML approach" as in end-to-end. It's separated into perception and planning. As you can see in the UI now, the perception part is already quite good and gradually getting better. Adding lidar at this point wouldn't help much. What I do think will happen is that they will continue with the philosophy that the car should be able to drive without HD maps in most places (as if driving the route for the first time), but that they will augment the planner with low-res maps generated from other drivers in the hardest spots (e.g. weird intersections that humans also struggle with). They already have the capability to create these maps as seen during AI day, it's just a matter of admitting they are needed in highly complex areas.
The second misconception is that the planner is somehow making instinctual decisions based on a simple neural network. Their approach is similar to AlphaZero, which includes Monte Carlo simulations with deep neural networks to predict paths of everyone on the road. I see no reason why AlphaZero cannot eventually beat humans at predicting traffic as well as it can predict moves in Go and chess.
A third misconception I see is that there are so many disengagements, so it's clearly not safe. And that's true, it's not safe yet, but Tesla's strength is that they can have thousands of enthusiastic beta testers willing to drive around while paying careful attention, often intentionally seeking out difficult edge-cases. As the number of disengagements and the severity of them goes down over time they can roll out to even more users. Eventually they'll be safer than humans on average. I think that is likely to happen in a few years based on their rate of progress. What happens at that point is completely up to politics and human psychology.
In summary, if you actually go through and watch a couple of videos, I challenge you to find examples of disengagements that are complete show stoppers that can't be solved within 2-3 years. Also, go check out videos of earlier version so you can get a sense of the rate of improvement, which really is the only thing that matters (and it's massive). You can argue that they will plateau somewhere below human level, and that's certainly a possibility, but I wouldn't bet on it.
The first part of the solution I think is first to make the car fail gracefully in unknown situations, e.g. slow down curbside. This would be dangerous on the free way, but free way driving is also the simplest part of driving.
The second part is allowing human control of the car without "driving it". For example, the if there is a police directing traffic, the car can alert the occupant and ask what it should do. You could even "paint" out the desired path to take on the screen. Basically you're just telling the car where to go and not controlling the steering wheel, gas and brake directly.
I'm sure you can conjure up cases where this will also not be enough, but at some point when the tech is good enough and there are enough cars on the road, then people will naturally adapt to self-driving cars in mind. If you're doing road-side work and you know there may be self-driving cars passing by, you'd do your best to make the signage and cones as clear as possible. Perhaps laws will be passed to make it illegal to try to fool a self-driving car, or to put up new signs without first giving car companies time to retrain their models. It's a small cost compared to making all roads digitally adapted to cars using sensors and what not. It's also a small cost compared to the 1.3 million people that die in accidents every year.
Sometimes it seems like software developers are just blind to what happens in the real world and expect others to conform to their idealistic notions. Not going to happen.
It's simple: 1. habits change because people can foresee the consequences of their actions 2. regulation and laws
The benefit of cars outweighs the rights of pedestrians, just like the benefits of self-driving cars outweighs the rights of work crews to do whatever they feel like.
Very reductive and dismissive way of describing what they are doing.
Agree, except you are missing / under selling something.
It’s the car sensors that are great, and the human with the crappy cameras.
Our eyes suck. Our attention spans suck. Our reaction times suck. To paraphrase my one of my favorite xkcds, “There is nothing in our evolution that could have prepared us for driving heavy boxes at high speeds”.
However… somehow, we excel at it. We drive in all conditions despite the crappy inputs and processing. The IDEA that we could be able to make computers do it is sound.
The execution is not! And I don’t think it will be for a long time.
We had self driving vehicles 100 years ago, your horse would take you home despite how drunk you were. No one wants their car to get spooked of a shadow or floating bag though.
The REAL solution to this is that cars need to be trains with figurative tracks. There needs to be an infrastructure in place that reports to the vehicle. V2I (Vehicle to Infrastructure) and V2V.
Without that, this is all pointless and I’m surprised how much tome and power is being wasted on it.
If the big brains behind this were truly serious, it would be in place now for semis that do the same A-B-A route over and over and can slow down to speed that would annoy a consumer car owner if it isn’t sure.
There is just not going to be enough sensors and machine learning to handle no road paint, other drivers, new trolley problem, blinding whiteout, etc. Never will be.
I disagree. Our brains have massive plasticity, even into adulthood, and can quite literally rewire themselves for how they're being used.
The first time you really get on the throttle on a sportbike, the effect is almost universally a "Woooooaoaaaaaaah!" sort of thing - the universe around you "goes plaid," and it feels like the hand of God has grabbed the horizon and yanked it to you. Hard. And then you get used to it, and people who ride powerful motorcycles or race them are perfectly capable of doing so for long periods of time, at high concentration. Go watch some clips of a motorcycle race, if you haven't. That's not born, that's learned.
Same goes for driving cars, for flying planes at Mach 2, for... really everything humans do. I wasn't born knowing how to use a keyboard, but I've been using one so long that I don't even think about it anymore.
The human brain is insanely adaptable, which is how it works well in all these cases.
And I'll also disagree that our eyes suck. The human visual processing system is damned good at handling a 3D world. It's got a few quirks, but overall? It's properly impressive.
Yes our eyes have very good dynamic range, but we’ll never have LIDAR and low light.
Driving data is cultural data, its not some natural phenomenon. Its highly regulated and its more orderly than nature. Drive in the developing world to know how true that is.
Plus driving behavior will adapt with the increase in autonomous cars. I wouldn’t be surprised if people purposely started shunting cars in self drive mode off the road, out of fun or spite.
There is no way full autonomy happens, unless you throw singularity level processing at it.
Computers aren't human, and as it turns out, human brains and visual processing systems are more than the "couple crappy cameras and a bit of a neural network" thing that a lot of SV types seem to believe it is.
We're firmly into the "fusion" realm of self driving cars. A lot of money and a lot of time, effort, developers, etc, have been fed into the maw, and we've tried all the easy options - which it's clear don't work. I'll take the pessimal position of saying that the current approach Tesla is using (vision only) can't work, though I'm sure many will disagree with me. It comes down to a difference of opinion about the complexity and capabilities of the human brain.
A sensor-heavy setup like Waymo is using has the greatest chance of working, though probably only in heavily-mapped areas where it can use the sort of peripheral data humans use to identify the lanes by building locations and such when the lanes are unclear. As long as not much changes, which probably requires very regular remapping of regions (or an awful lot of data upload from cars), that's the most feasible approach, though it's not a general purpose solution given the amount of data required to do high precision mapping of the entire country, much less the world.
We'll see, but "a couple cameras and a car-scale computer" just doesn't seem a solution that's going to work.