TNW València is here 🇪🇸 Pre-register for 2024

This article was published on February 27, 2017

This browser simulation lets you wreck cars to train self-driving AI

This browser simulation lets you wreck cars to train self-driving AI
Bryan Clark
Story by

Bryan Clark

Former Managing Editor, TNW

Bryan is a freelance journalist. Bryan is a freelance journalist.

Driving, driving, driving… DEATH! If ceding control of your car to AI scares you, this demo isn’t going to ease your fears.

Created by 17-year-old designer and engineer Jan Hünermann, the application acts as an on-going project journal. His goal is to “create a fully self-learning agent” capable of piloting a car in a 2D environment. It’s obviously a work in progress.

Built in Javascript, the application allows website visitors to watch as two cars pilot their way around pre-built obstacles. Or, you can up the ante and build your own road blocks.

The cars are capable navigators. They struggle, however, when users draw new items onto the map.

The cars do a mostly alright job of avoiding new obstacles, it’s only when you draw barriers large enough to block their path we run into problems. The cars often attempt to forge ahead, leaving them stuck in rather weird places. If this were real-life, it’d be the equivalent of a Chevy Tahoe trying to squeeze into an alley wide enough for a bicycle.

But each 2D crash brings progress.

For every obstacle the tiny cars run into, the deep learning algorithm figures out what’s good and what’s bad. Over time, the algorithm weeds out the bad behavior and we’re left with well-behaved cars, at least in 2D.

With enough data, the cars learn that driving through a Starbucks to pick up a mocha frappe isn’t appropriate behavior — no matter how much you hate capitalism or overpriced coffee. Or, you know, whatever the 2D equivalent of the above example is.

The code for the demo is available, along with the JavaScript library, at GitHub.

via Digg

Get the TNW newsletter

Get the most important tech news in your inbox each week.

Back to top