20 karma · joined December 2, 2017
Waymo uses sophisticated predictive models trained on vast amounts of data. Cruise slaps together piles of guesses and (frankly) bullshit.
Cruise: Amateur hour, written FAST. Better yet, let's just use this code we found on the net! Can we make it look like it works most of the time?
You can operate an unreliable system (randomly reacting late 0.1% of the time because of a hiccup in C++'s standard library memory allocator, say, or encountering an unhandled scenario 0.1% of the time) as long as there's a guy to take over immediately.
But you can't ship that in the real world.
When GM bought us we were given three Milestones to reach. The first Milestone was supposed to be delivered this time last year. We failed to deliver. We didn't have the basis for a real self-driving car. Just a demo (enough to make GM buy us).
So the Milestones were divided up. A year after we should have delivered that first Milestone we have hand-coded enough special cases that GM believes we're about half way through that first Milestone. We're not.
I take GM's money but I know we're lying to them. As an engineer I'm embarrassed by the system we've built.
What else do you want to know? Ask me.
I know a little about Waymo. They seem ok. Everyone else, I have no idea.
We don't really develop any neural networks ourselves. We use what we can get off GitHub: freely available research and school projects that we paste together, often without understanding them.
We use ROS (http://www.ros.org). ROS is not reliable for a timing-critical automotive system. That's why our cars drive so slowly/cautiously and stop so abruptly/frequently. It's because we're always on the verge of reacting late and hitting something.
Our technology is not "real" in the way that Waymo's technology is real. We build demos and promote them in the media. That's the truth.
Am I proud of this? No. But GM is paying for my house in San Francisco, so...