Live data from Hacker News

Autopilot: an open source driving agent

github.com

91–100 of 129 posts

Re: Autopilot: an open source driving agent

#91
post #28
post #23

Earlier quoted context omitted.

Not to nitpick your dilemma, there will always be a dilemma, but at any speed where children in the road are likely ( (Ok, I used a "head on collision" number because I couldn't find a wall number, but the physics are probably pretty close. Numbers from a New Zealand Ministry of Transport PDF from 2012: http://www.transport.govt.nz/assets/Import/Documents/_versio... )

What if behind that wall are a ton more babies? Now we'll have to put x-ray machines in self-driving cars too.

What if those ton of babies will grow up to form a neo-nazi gang that ends up being worse for the world than hitler was? Now we'll have to put future-detectors in self driving cars too.

Re: Autopilot: an open source driving agent

#92

Really, a safety critical hard realtime system with control loops on top of Python, a general purpose OS and a CAN-USB adapter? There are reasons why we have realtime operating systems, deterministic bus systems and dedicated CPUs for these kinds of applications. That might be an interesting research, prototyping or simulation platform. But nothing you want to have on a real public road.

The Python control loop is probably the safest part of this system.

The reason that comma.ai was able to get a working prototype quickly (unlike much bigger and well-funded companies) is that they use an end-to-end deep learning model. The model directly learns to issue commands to the car based on raw image data. The problem with this approach is that neural network models are a blackbox. They can behave in completely unpredictable ways.

Re: Autopilot: an open source driving agent

#93

Earlier quoted context omitted.

Why wouldn't you do the research on a platform that could actually be deployed? Build the core using the proper tools and techniques. Any bug in a system like this could be life threatening at worst. Wouldn't you want to use the research phase to help eliminate such bugs? Unless you're not planning on ever releasing then a platform like this makes sense for strictly research, but Comma AI did plan on releasing their…

As an example of some requirements, any recursion is banned unless accompanied by a termination proof that keeps track of stack size. No calls to malloc() or free() are allowed, and so any library you might use that allocates memory is banned. It's far easier to get the code working in something like Python, and then rewrite it in safety-critical C later. And the kinds of people who can write self-driving cars in Pyt…

Exactly; the delta from Python to C is smaller than the delta from C to "safety-critical real-time C". Might as well prototype and simulate in a higher-level language that's obviously not the final one, rather than writing in a language someone might mistake for production and trying to incrementally evolve it into a full safety-critical version.

Re: Autopilot: an open source driving agent

#94
post #73

Earlier quoted context omitted.

People are allowed to work on their own cars, including brakes, suspension, steering, etc. Happens every day in driveways everywhere. I do it myself.

But there are restrictions of what parts you can use. I can't just make my own engine and drive around with it without getting that engine certified, right?

This is automobiles, not general aviation. You don't have to get your engine certified to drive it on public roads, but you might have to pass emissions.

Re: Autopilot: an open source driving agent

#95

Really, a safety critical hard realtime system with control loops on top of Python, a general purpose OS and a CAN-USB adapter? There are reasons why we have realtime operating systems, deterministic bus systems and dedicated CPUs for these kinds of applications. That might be an interesting research, prototyping or simulation platform. But nothing you want to have on a real public road.

Human drivers don't run an RTOS and a deterministic bus system either. In fact, I would argue that very rarely do human drivers fail because of jitter or nondeterminism.

This is a weird argument. Human drivers don't deadlock or crash either. Are you sure you understand the criticism being made here? Hard realtime systems make guarantees about the frequency with which code will run on a shared system.

Re: Autopilot: an open source driving agent

#96
post #30

Really, a safety critical hard realtime system with control loops on top of Python, a general purpose OS and a CAN-USB adapter? There are reasons why we have realtime operating systems, deterministic bus systems and dedicated CPUs for these kinds of applications. That might be an interesting research, prototyping or simulation platform. But nothing you want to have on a real public road.

Why not? We entrust humans with operating cars right now. Humans in a sense are running a general purpose OS.

No hundred humans are running the exact same OS that can deadlock or crash and as a result drive off the road, which is why this trope about humans being worse than computers at driving is entirely irrelevant to a thread about why it's unwise to try to build self-driving cars on top of Python scripts.

Re: Autopilot: an open source driving agent

#97
post #92

Really, a safety critical hard realtime system with control loops on top of Python, a general purpose OS and a CAN-USB adapter? There are reasons why we have realtime operating systems, deterministic bus systems and dedicated CPUs for these kinds of applications. That might be an interesting research, prototyping or simulation platform. But nothing you want to have on a real public road.

The Python control loop is probably the safest part of this system. The reason that comma.ai was able to get a working prototype quickly (unlike much bigger and well-funded companies) is that they use an end-to-end deep learning model. The model directly learns to issue commands to the car based on raw image data. The problem with this approach is that neural network models are a blackbox. They can behave in complete…

Actually, they didn't. At least not in this code.

Re: Autopilot: an open source driving agent

#98
post #91
post #28

Earlier quoted context omitted.

What if behind that wall are a ton more babies? Now we'll have to put x-ray machines in self-driving cars too.

What if those ton of babies will grow up to form a neo-nazi gang that ends up being worse for the world than hitler was? Now we'll have to put future-detectors in self driving cars too.

But what if the babies become neo-nazis from all the cars x-raying them to avoid hitting them?

Re: Autopilot: an open source driving agent

#99

Earlier quoted context omitted.

I'm not really following. If it works then why not use a control loop on top of Python? We are engineers, after all.

Because by "works" you mean "I tried it out a bunch of times and nothing bad happened, so must be production ready", because that's what you do when you build websites and desktop CRUD apps and nobody ever died cause the web server choked under load or the web page rendered a bit funny or the request took a full quarter second because the GC kicked off as a wave of requests came in. And then one day a one-in-ten-mill…

You are really going to freak out when you learn how deep neural networks work.

Re: Autopilot: an open source driving agent

#100
post #62

Earlier quoted context omitted.

It seems incredible that this is the source code for the $999 product originally destined to be available this year. I'm extremely familiar with OBD|CAN and car networks - the embedded code alone is an essay in how trivial something can appear (sending commands to a ECU) without considering the million edge cases that make this a safe product to use.

> It seems incredible that this is the source code for the $999 product originally destined to be available this year. It's not

Forgive me but it seemed like this was the case. Is this an earlier version of the code or a special opensource clean up then?

http://newatlas.com/geohot-comma-ai-openpilot-open-source/46...

Post reply on HN