Open-source, self-driving car project

All off topic discussions go here. Everything from the funny thing your cat did to your favorite tv shows. Non-programming computer questions are ok too.
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Open-source, self-driving car project

Post by Muazzam »

As you know, companies like Tesla, Google, etc. are literally investing billions in developing autonomous vehicles. Their software would likely be closed-source and commercial. I know, I'm none to compete with them. But if I start a serious effort, I'm quite sure hundreds of other amateur programmer will join that--just like they developed Linux together. But it'd be better if someone else does, instead of me; I'd be happy.*

I believe, that's self-evident that a hobby project, that someone develops just for their pleasure, is more perfect than a commercial project that a company develops for the project and people develop for their salaries.

Here are my specifications for the project:

(1) You'll build a simple, manual toy car (go-kart, actually), preferably electric, that can also carry a person.

(2) Then you'll use an Arduino OR Raspberry Pi, OR even an x86 laptop to control it. (Mounted on the car.)

(3) A Sonar system would be used to detect object along with cameras.

(4) It'll be connected to the Internet for using Google Maps (etc.). (Optional in early stages.)

(5) Now comes the actual coding and artificial intelligence. A platform independent language would be better. I'd advise you to use Python or C.

(6) You have to write the initial code by yourselves so that you might demonstrate it to other programmers before they contribute.

(7) You'll put the code on GitHub (etc.) for anyone to view and contribute. I'll also try my best to contribute.

(8) You'll create a website and a forum to discuss. I'd discourage using advertisements or other for-profit things.


The software should also be vehicle independent; it should be equally applicable to a toy car and a big truck and an SUV.

The toy-vehicle you'll develop will have a single gear ratio, a steering, and a gas-peddle. But the system should also be able to control a manual-transmission, internal combustion car with a clutch.


------


I don't want to claim any authority, credit, etc. but if you've gotten motivated by this post, and are feeling a bit generous, please let me name the project for you! I promise, I'll not name it "Muazzam." And you're free to criticize these specifications.


Thanks for reading!



* I live in the area where it'd be quite difficult--if not impossible--to do that, because of unavailability of the required hardware. And I've no experience so far with any physical project. That's why I'd like someone else to start such a project. Before you ask, I have the money for the project as well as the required programming experience.
onlyonemac
Member
Member
Posts: 1146
Joined: Sat Mar 01, 2014 2:59 pm

Re: Open-source, self-driving car project

Post by onlyonemac »

I imagine legal issues being a major obstacle to such a project. Commercial projects are only just getting to the stage where they're allowed to drive on the road. That's proprietary algorithms which have been through a lot of rigorous testing and review. Even if an open-source project got to the point where licensing authorities showed an interest, users would each have to individually get their cars to pass the same set of complex (and probably expensive) tests before they could use them on the road because with open-source there's going to be lots of different versions and changing one line of code could mean the difference between a very safe car and a very dangerous car, putting both the user and other road users at risk, and it would be impossible to moderate such a situation where there are inevitably going to be those who flash the ROMs in their cars without getting the proper licences, and then cause an accident. While an open-source autonomous car project would be great, unfortunately with open-source comes decentralisation and unfortunately autonomous cars need a central licensing system to maintain their guaranteed safety, and that makes proprietary code a necessity.

Furthermore, I'm sure if anyone did start such a project they could write up their own set of specifications and goals.

/thread
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.

Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
User avatar
xenos
Member
Member
Posts: 1118
Joined: Thu Aug 11, 2005 11:00 pm
Libera.chat IRC: xenos1984
Location: Tartu, Estonia
Contact:

Re: Open-source, self-driving car project

Post by xenos »

I assume you know this and the participants:

https://en.wikipedia.org/wiki/DARPA_Grand_Challenge
Programmers' Hardware Database // GitHub user: xenos1984; OS project: NOS
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Open-source, self-driving car project

Post by Muazzam »

XenOS wrote:I assume you know this and the participants:

https://en.wikipedia.org/wiki/DARPA_Grand_Challenge
That's a different project. I was thinking of a project more like Linux.
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Open-source, self-driving car project

Post by Muazzam »

onlyonemac wrote:I imagine legal issues being a major obstacle to such a project. Commercial projects are only just getting to the stage where they're allowed to drive on the road. That's proprietary algorithms which have been through a lot of rigorous testing and review. Even if an open-source project got to the point where licensing authorities showed an interest, users would each have to individually get their cars to pass the same set of complex (and probably expensive) tests before they could use them on the road because with open-source there's going to be lots of different versions and changing one line of code could mean the difference between a very safe car and a very dangerous car, putting both the user and other road users at risk, and it would be impossible to moderate such a situation where there are inevitably going to be those who flash the ROMs in their cars without getting the proper licences, and then cause an accident. While an open-source autonomous car project would be great, unfortunately with open-source comes decentralisation and unfortunately autonomous cars need a central licensing system to maintain their guaranteed safety, and that makes proprietary code a necessity.

Furthermore, I'm sure if anyone did start such a project they could write up their own set of specifications and goals.

/thread
Yeah, you're right. I didn't consider that it could be dangerous.

The specifications I listed were just for an idea of the project and basic motivation. They're not required to be followed by everyone--or anyone--except me. But if some day I did the project, I'd follow these specifications. Moreover, no one here cares about security or legal things so testing would be easier than in any developed country.
User avatar
iansjack
Member
Member
Posts: 4683
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: Open-source, self-driving car project

Post by iansjack »

You've persuaded me that you are in the best place and position to start this project. Let us know how you get on.
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Open-source, self-driving car project

Post by Muazzam »

iansjack wrote:You've persuaded me that you are in the best place and position to start this project. Let us know how you get on.
I'm really serious about starting this project--perhaps in a few months. I'll post here when I have a manual car at least, before I start programming.
User avatar
iansjack
Member
Member
Posts: 4683
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: Open-source, self-driving car project

Post by iansjack »

Google shows that there are several such projects already, but another one can't hurt.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: Open-source, self-driving car project

Post by Brendan »

Hi,
muazzam wrote:As you know, companies like Tesla, Google, etc. are literally investing billions in developing autonomous vehicles. Their software would likely be closed-source and commercial.
I can guarantee they will all be commercial. The reason is simple - no sane person will ever buy any device that is capable of killing a large number of people if something goes horribly wrong, unless there's a large company that can be held responsible (and sued for damages, wrongful death, etc) if/when something goes horribly wrong.

If you don't believe me, see if you can find an insurance company willing to provide third party insurance for a hobbyist's autonomous vehicle.
muazzam wrote:I'm really serious about starting this project--perhaps in a few months. I'll post here when I have a manual car at least, before I start programming.
Why not start with a software only simulation? For example, maybe you could create a bot for a game like Grand Theft Auto.


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Open-source, self-driving car project

Post by Muazzam »

iansjack wrote:Google shows that there are several such projects already, but another one can't hurt.
I don't know why, but I think they're very uncool.
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Open-source, self-driving car project

Post by Muazzam »

Brendan wrote:Hi,
muazzam wrote:As you know, companies like Tesla, Google, etc. are literally investing billions in developing autonomous vehicles. Their software would likely be closed-source and commercial.
I can guarantee they will all be commercial. The reason is simple - no sane person will ever buy any device that is capable of killing a large number of people if something goes horribly wrong, unless there's a large company that can be held responsible (and sued for damages, wrongful death, etc) if/when something goes horribly wrong.

If you don't believe me, see if you can find an insurance company willing to provide third party insurance for a hobbyist's autonomous vehicle.
muazzam wrote:I'm really serious about starting this project--perhaps in a few months. I'll post here when I have a manual car at least, before I start programming.
Why not start with a software only simulation? For example, maybe you could create a bot for a game like Grand Theft Auto.


Cheers,

Brendan
But there's Linux Foundation that controls the quality of Linux, am I wrong? Similar can be applicable to this project. They could sue that organization.

Software simulation? Interesting for a programmer but not for a car-guy. That's like saying an automobile enthusiast should drive GTA cars instead. :D
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Open-source, self-driving car project

Post by Muazzam »

Another thing is, you could always, and have to, drive it in your private property in the early stages. The car I proposed is actually very small as compared to a real car.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: Open-source, self-driving car project

Post by Brendan »

Hi,
muazzam wrote:But there's Linux Foundation that controls the quality of Linux, am I wrong? Similar can be applicable to this project. They could sue that organization.
There's Linux Foundation that tries to control the quality of Linux (but I think most people ignore them).

More importantly; there's a big fat disclaimer on virtually every open source licence that says something like (actually cut&pasted from GPLv2):
"IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES."
Loosely translated, this means "developers can't be held responsible (and sued for damages, wrongful death, etc) if/when something goes horribly wrong; and therefore the software is completely useless for anything where something could go horribly wrong (like autonomous vehicles, life support equipment, etc)".
muazzam wrote:Software simulation? Interesting for a programmer but not for a car-guy. That's like saying an automobile enthusiast should drive GTA cars instead. :D
I'm not sure it's possible to claim that you are a "car guy" if you don't even own a car. I am fairly sure it's possible for me to claim you are interested in programming though, based on the fact that you're posting on an OS development forum about writing software (for an autonomous car and other things).
muazzam wrote:Another thing is, you could always, and have to, drive it in your private property in the early stages. The car I proposed is actually very small as compared to a real car.
Yes, for private property, and for tiny cars (e.g. radio controlled toys), you can do what you like. You'd make a whole lot more $$$ making robotic "self driving" vacuum cleaners though.


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Open-source, self-driving car project

Post by Muazzam »

Brendan wrote:Hi,
muazzam wrote:But there's Linux Foundation that controls the quality of Linux, am I wrong? Similar can be applicable to this project. They could sue that organization.
There's Linux Foundation that tries to control the quality of Linux (but I think most people ignore them).

More importantly; there's a big fat disclaimer on virtually every open source licence that says something like (actually cut&pasted from GPLv2):
"IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES."
Loosely translated, this means "developers can't be held responsible (and sued for damages, wrongful death, etc) if/when something goes horribly wrong; and therefore the software is completely useless for anything where something could go horribly wrong (like autonomous vehicles, life support equipment, etc)".
muazzam wrote:Software simulation? Interesting for a programmer but not for a car-guy. That's like saying an automobile enthusiast should drive GTA cars instead. :D
I'm not sure it's possible to claim that you are a "car guy" if you don't even own a car. I am fairly sure it's possible for me to claim you are interested in programming though, based on the fact that you're posting on an OS development forum about writing software (for an autonomous car and other things).
muazzam wrote:Another thing is, you could always, and have to, drive it in your private property in the early stages. The car I proposed is actually very small as compared to a real car.
Yes, for private property, and for tiny cars (e.g. radio controlled toys), you can do what you like. You'd make a whole lot more $$$ making robotic "self driving" vacuum cleaners though.


Cheers,

Brendan
You're right that you could never know whether I'm a "car-guy" or not.

Believe it or not but I could drive when I was four or five. (Not on highways or streets, of course, but on a public track.) (Not bragging; just talling that I'm a "car-guy.") And I do own a car and will buy another one in January (maybe the Mazda RX-8). I love cars as much as I like programming, but I'm posting here because automobile forums' people are too ignorant and stupid.

On vacuum cleaners, again, I have no interest in them--nor in making "$$$." Maybe some other programmer would do.

And I've realized that, with current open-source software models, it'd be surely difficult to guarantee safety.
User avatar
DavidCooper
Member
Member
Posts: 1150
Joined: Wed Oct 27, 2010 4:53 pm
Location: Scotland

Re: Open-source, self-driving car project

Post by DavidCooper »

Don't let safety issues put you off - if it's unsafe, you won't want to put it on public roads and you won't be allowed to either, so you're always going to have to start off on a test track somewhere. Once you've proved that it's safer than a human driver, then it will have a place on public roads - it won't matter if it occasionally kills someone because human drivers kill more people. The real ethical problem is that as soon as someone else has software that's safer on public roads than yours, yours will be banned and theirs will take over, and seeing as you're starting way behind the big boys, realistically you're never likely to catch up, so you'll never be allowed to run your system on public roads at all.

You might still be able to contribute something though, and the bigger teams will then want/need to include your innovation in their software, and there's still room for big breakthroughs, not least with machine vision. I'd recommend that you start out with a remote controlled car and Raspberry Pi with two webcams attached to it for stereo vision, because while the big boys are fiddling around playing with lidar, you might be able to get ahead of them, although there's at least one team (at MIT if I remember rightly) doing proper stereo vision with a drone who can already get it to fly itself at speed through woodland, dodging all the trees.
Help the people of Laos by liking - https://www.facebook.com/TheSBInitiative/?ref=py_c

MSB-OS: http://www.magicschoolbook.com/computing/os-project - direct machine code programming
Post Reply