Autonomous Race Cars – Will ML kill a human’s competitive nature?

Athletics, academics and even the ultimate Spelling Bee exudes passion because there are humans involved. You see the highs, lows and different levels of excitement throughout the match or game. You see the sweat, blood and tears come from a competitors face. I came across an article about AWS DeepRacer, which is an autonomous 1/18th scale race car designed to test RL models by racing on a physical track. Click here to find out more about AWS DeepRacer – I had to investigate too, so don’t feel bad. 🙂 Essentially, powerful ML can control a race car and could essentially win? If so, that’s the ultimate killjoy. I want to see Dale Earnhardt, Jimmie Johnson and Fernando Alanso jump in excitement for a WIN or cry due to a loss.

Let’s jump more into AWS DeepRacer.

Here are the three race types in AWS DeepRacer:

  1. Time trial — The agent races against the clock on a well-marked track without stationary obstacles or moving competitors.
  2. Object avoidance — The vehicle races on a two-lane track with a fixed number of stationary obstacles placed along the track.
  3. Head-to-head racing — The vehicle races against other moving vehicles on a two-lane track.

In AWS DeepRacer, the vehicle’s goal is to race by itself in a track while also gaining the maximum cumulative total reward in order to win a race against the clock, or to avoid all of the obstacles, or to win a race against another vehicle.

Here’s the basic version – an image is captured by the front-facing camera on the vehicle. The vehicle will take images (160×120) at around 15 fps. A Python function intakes parameters based on said captured image and includes position on track, heading, waypoints, track width, distance from centerline, all wheels on track, speed and steering angle.

In other words, the network has to figure out how much speed and steering angle should the vehicle takes in each state so that we can get maximum expected cumulative rewards.

The science behind achieving the end goal is based on probability or what’s called the Neural Network (NN). In my speak, we are training the race car to adapt. During the training, the network will find which action will more likely to give more rewards, which depend on the entropy hyper-parameter. The entropy (degree of randomness) tells the agent to explore more actions or just to exploit actions that are already understood.

I’m not a major NASCAR fan, but I do love muscle cars from the late 60s as well as a brand new Aston Martin that hums like no other. The question is… if ML tookover NASCAR, who is going to watch? Is there enough Budweiser to make it worth it? Not sure. With that said, it’s pretty darn cool that a computer can be used to create an autonomous race car.

Stay up to date on all things AWS DeepRacer from one of our favorite data scientists, Louis Owen.

Leave a Comment

Your email address will not be published. Required fields are marked *