Computer Controlled Car Racing

The above photo is from the CEC 2003 Car Racing Contest, won by Justin Bedo and Jimmy Wang,
of the Australian National Defence Force Academy (ADFA), University of New South Wales, Canberra.

Results

The competition was won by Ivan Tanev, whose computer controlled car outclassed the opposition.  Ivan's entry was unable to complete the 10 laps without getting stuck, but with a little human assistance, it raced around sections of the track quite impressively.

A video (.mpg) file showing the winning set of laps is here (91mb - we'll try and produce a more compressed version soon).

Introduction

This competition is to be run live at the 2005 Congress on Evolutionary Computation.

The aim of this contest is to find the best race controller for a remote control car.  The controller is given live video feed from an overhead or car-mounted camera, and after processing each frame can then send signals to the car in order to achieve maximum progress around the track, relative to the opponent car.  Ramming and blocking tactics are allowed, and if effective are applauded!

Computer controlled racing of these cars is a great challenge for computational intelligence methods, and encompasses many problems, including:

  • Real-time image processing and computer vision

  • Non-linear systems modelling

  • Control

  • Prediction

  • Dealing with adversaries (for racing two or more cars)

There is tremendous scope for using evolutionary computing methods to develop optimised controller architectures and racing strategies.  The problem offers a relatively a low-cost entry point into real-time robotics, where it's relatively easy to develop something that sort of works, but extremely challenging to develop a controller capable of high-speed competitive racing.  The total component cost, depending on how carefully you shop around, can be well under £100.

Please contact Simon Lucas: (sml@essex.ac.uk) as soon as possible if you wish to enter this contest.  Note that the competition will be cancelled if there are insufficient entries, though the car racing may still run as a demo.

Setup

The spirit of the contest is to design clever software to control the car. 

The recommended cars to use are 1/24th scale Nikko radio controlled cars.

These cost around 15 (UK) pounds from a local toy store, and are available in most parts of the world. 

You are free to use a different make of car if you prefer, but the cars must operate via simple on/off (bang-bang) controls - no proportional control cars are allowed (though your software is free to attempt to achieve similar effects by pulsing the control lines).

Track

The approximate track layout for CEC 2005 is shown below - this is built from 4 sheets of hardboard (shiny side up), with pine battens to provide the walls.  The layout has been designed to be a bit simpler than the one used for CEC 2003, to encourage higher-speed racing.

Video Input

For the video input a medium-cost USB web-cam is preferred, as a compromise between low latency, reasonable quality and ease of entry.

A sample image from an overhead web-cam is shown below, showing a Nikko red Mini whizzing around a track:

Compare this image to a still of the same car taken with a digital camera from a different angle, and lit with a flash:

It's interesting to note how the rich red colour gets washed out in the overhead image!

Car control

The simplest way to control the RC cars from software is via a PC parallel port (Mac users might use some USB method).

Rules

CEC 2005 car racing will run as a time trial - the state of the art has not yet progressed to the stage where two (or more) car races are really feasible, though we hope to be at this state by the end of the CEC 2005 contest.

The set up at the event will include the track and a place for you to fix your web cam, looking down from above the track.  We will provide a suitable wide-angle (78 degrees) web cam, such as the Creative Webcam NX Ultra, or Samsung AnyCam.

The winner is the entry with the minimum elapsed time for 10 consecutive laps, with no human intervention.  Subject to time constraints, multiple attempts will be allowed for each entrant.

 

Links

Car control

Parallel port hardware

Parallel port software

Video Input

The Java Real-Time Video Kit provides a simple way to get video frames in real-time.  The current version has been tested with a Phillips ToUcam Pro, and may need some hacking around to work with your web-cam. 

Complete Software Starter Kit

Coming soon - this will provide all the software needed to drive a car slowly around the track.

Videos

These videos show some of the fun of car racing - but note that some use a different car to the Nikko 1/24 scale.  Note that some of the CEC 2003 footage shows the red car under human control.

Last update 30-07-2003, Simon Lu