Uber is Toast
Do you know what's going to be one of the biggest disruptors here very shortly is the fact that the number one occupation in the United States is "driver", and because we're going to have automated driving, trucks, taxis, I will tell you it's going to be a gigantic disruptor moving forward.
-- Gary Johnson, 2016 Third Party Presidential Debate, Part 1
The other day, my chip nerd kid sent me the video below about Tesla's AutoPilot. It's a four hour mix of marketing propaganda and dense technical information. For those of you who are technically inclined, it is worth watching, but in the name of all that is holy, please jump to 1:09:12 and skip the filler they put in because Elon was an hour late...
For the less technically inclined, I will describe in a bit what they are doing in layman's terms, but here is the short version:
TL;DR Tesla has figured out how to use the fleet of cars belonging to their customers to train their self-driving AI on real-world data. By comparison, their competitors like Uber are stuck using artificial simulations and test drivers. Tesla's system is already twice as good as real drivers and they intend to set up an automated "RoboTaxi" service next year where owners can earn money providing driverless ride-sharing services when they are not using their car. The payback is 5x the purchase price for the owners and Tesla's cut is 35%. Ride-share gig drivers are, of course screwed, just not by the people they expected to do the screwing.
I'm not trying to be an Elon fanboi here, but I am familiar with many of the technologies being described and this is real. Musk has a tendency to exaggerate, but I think this is going to happen a lot sooner than I had expected. AlphaGo caught me by surprise, and I think this is in the same vein. The discussion below is intended to support this contention.
The presentation has four sections: chips, machine learning, infrastructure scaling and RoboTaxis. The infrastructure part was not very interesting, but I will try to summarise the other sections.
Musk hired an entire chip design team to build the AutoPilot processor. I'm not a chip designer and I don't know the guy, but but I do work "close to the metal", and everything he said made sense to me. They had one customer with one task so they could design a custom chip that used as little power as possible (50W) to run the neural net and everything else. It looks like they also licensed the ARM design (used in iPhones) to have general computing capabilities and there are a few other specialised bits of silicon for doing image processing and such. The result was something that can process about 2100 frames per second. By comparison, a repurposed nVidia video card's hardware can do about 300fps. (For reference, celluloid movies are about 30fps.)
The power consumption is so low that the 50W budget actually powers two duplicate chips. The chips compare their answers and indicate a failure of they disagree. I'd be happier with three chips that can vote (like the space shuttle systems), but that may be in the next revision which they hinted at and uses smaller transistor sizes (10nm vs 13nm). The packaging was designed for easy replacement, so no one will be stuck with the old version.
The chip stuff was interesting, but fairly straightforward in some ways: I don't doubt that another experienced team could do something similar. What they did for the training part is both powerful - and probably impossible to replicate.
There are two kinds of machine learning: Supervised and Unsupervised. Unsupervised learning means that the system can figure things out on its own. This is great (not to mention cheap...) but it is only suitable for highly restricted problems like playing a game. The way Google trained AlphaGo was unsupervised: They just had to give it the rules and let it play itself.
The rules for driving are a lot more complex than Go, so you really need to use supervised learning. The way this typically works is you give the system some data along with the right answer for each piece of data (like: given these camera feeds, change lanes to the left). You split the data into "training" and "test" data, train the network with the training data and then check the results with the test data (if you ever read about something where they used the training data for testing, ignore it - the results are worthless.) The tricky (and expensive) part is attaching the correct answer to each piece of data.
All of the other people working on this problem are using simulators to generate the test data. The trouble with this is that you are limited by the imagination of the simulation authors. Think about all the problems that have come up with poorly trained algorithms (like the African woman researcher at MIT who found the standard face recognition package didn't even recognise her as human...)
What Tesla did was start with some basic driving situations and had humans label the correct responses. They then sent the model out to all the Tesla's on the road had them run the model (without actually controlling the car) and compare the output with reality. If the model was wrong, it sent all the data back to Tesla to add to the training set. The key here is that this data was already labeled. The car should have done this but it did that. We expected the other driver to do this but they did that.
This means that they can refine their supervised learning system pretty much continuously. They get new data, add it to the training set and then the new model out for testing all in a matter of days if they want. Add in the half a million Teslas on the road, and the amount of data they can generate, use and test is overpowering. Uber, Waymo and others in this space are stuck with a few prototype cars on a test track - or in an unsuspecting Arizona town. The scales and systems are just not comparable.
Once you have a self-driving car, you can make it into a self-driving taxi. Most cars sit idle most of the time, which is a terrible waste of resources, both in terms of manufacturing costs and limited public services (like parking and road surfaces). Tesla intends to set up a ride hailing service like Uber but with no drivers. Because there are no drivers, they can undercut ride sharing pricing quite significantly, and Tesla would take a 35% cut (Musk compared this to the Apple Store.) The owner's share would be enough to pay back the cost of the car five times over.
The other piece here is that because the cars are electric and require little maintenance, they can build them with longer lifespans. The current production run has an estimated lifespan of a million miles - which sounds like a lot if you think about your own car, but apparently that is the design lifespan of semis, so it is at least plausible.
I have some reservations about this system, but they are details. I'm not sure that some people would like to share their car with strangers - many of us think about our car interiors as our "personal space". I'm also not convinced that the 50x figure covers peak times, but there was a graph that looked like it was at least in the ball park.
That was the technical summary, but what are the implications, especially the political implications?
First, the good things:
- Reducing the number of cars in the world by a factor of 50 would reduce the manufacturing environmental impact of cars
- Switching more people over to electric vehicles by sharing would accelerate electrification of transportation
- Tesla's system appears to already be safer than the average (Tesla) driver
One point about the perceived safety of self-driving cars: My other kid pointed out that most people compare automated driving to perfect driving when they should really compare it to average human driving. Add in the fact that 80% of drivers think they are above average, and there is a big disconnect. There is a point to be made about algorithmic transparency here, but it is also true that we don't really understand how humans drive, and at some point we have to fall back on empirical data, and it sounds like this system is already safer than humans. Nevertheless, we need to check that data.
The other Good Thing is the title of the essay: There are gradations of evil and Uber is way up there. If nothing else, this system will kill them and redistribute their enablers' cash.
This is a solution to a social problem based on private ownership. Only those with capital reserves can buy these cars and profit from being rentiers. And even if Tesla provided financing based on the expected return from rentals, there are a limited number cars that would actually be needed (and reducing the number of cars is an important ecological good) so only those who lucked out and got into the game early would benefit. The rest of society would end up paying through the nose because the rental cost is higher than the cost of owning your own vehicle (otherwise there would be no point in renting your car out if the damage was greater than the fare.)
It's not clear to me that Musk would actually care about Tesla being nationalised. He has stated in the past that the point of Tesla was to jump start the conversion to EVs, so I suspect he could be convinced. The investors, however, expect their pound of flesh and would have to be dealt with so we can share the benefits of a system like this more equitably.
If we don't deal with this problem equitably, then Gary Johnson is right: We are going to see massive disruption caused by the disappearance of the number one job category in the country. MLK observed, "a riot is the language of the unheard" and some here might welcome the disruption as a prelude to revolution.
I always hope that we can solve our problems without violence, which is why I am writing this essay. If we understand the nature of impending change, maybe we can harness it to be less destructive.