Exploring the Future Potential of AI-Enabled Smartphone Processors
The 2011 Simulated Car Racing Championship @ Evo*-2011
1. The 2011 Simulated Car Racing
Championship @ Evo*-2011
Daniele Loiacono, Luigi Cardamone,
Martin V. Butz, and Pier Luca Lanzi
2011 Simulated Car Racing Championship @ EVO*-2011
2. 2
2011 Simulated Car Racing Championship
9 races during 3 conferences
Develop a driver for TORCS
(hand-coded, learned, evolved, …)
Drivers will be awarded based on their score
in each conference competition
At the end, the team with highest overall score
wins the championship
2011 Simulated Car Racing Championship @ EVO*-2011
3. Roadmap of the 2011 Championship
1. EVO*-2011, Torino (Italy)
April 27-29, 2011 (Now!)
2. ACM GECCO-2011, Dublin (Ireland)
July 12-16, 2011
3. IEEE CIG-2011, Seoul (South Korea)
August 31 September 3, 2011
2011 Simulated Car Racing Championship @ EVO*-2011
4. Motivations
Proposing a relevant game-based competition
more representative of commercial games AI
more similar to a real-world problem
Proposing a funny and exciting competition
you can see and play with the entries of this competition
human players can interact with AI
a lot of programmed AI available for comparison
Proposing a challenging competition
computationally expensive
real-time
on-line learning
noisy sensors
2011 Simulated Car Racing Championship @ EVO*-2011
6. The Open Racing Car Simulator
TORCS is a state of the art open source simulator written in C++
Main features
Sophisticated dynamics
Provided with several
cars, tracks, and
controllers
Active community of
users and developers
Easy to develop your
own controller
OS Support
Linux: binaries and building from sources
Windows: binaries and “limited” bulding from sources support
OSX: legacy binaries and no building from sources support
2011 Simulated Car Racing Championship @ EVO*-2011
7. The Open Racing Car Simulator
& the Competition Software
TORCS TORCS
PATCH
BOT BOT BOT SBOT SBOT SBOT
The competition server
UDP UDP UDP
Separates the bots from TORCS
Build a well-defined sensor model
Works in real-time BOT BOT BOT
2011 Simulated Car Racing Championship @ EVO*-2011
8. Sensors and actuators
Rangefinders for edges on the track and opponents (with noise)
Speed, RPM, fuel, damage, angle with track, distance race, position
on track, etc.
Six effectors: steering wheel [-1,+1], gas pedal [0, +1], brake
pedal [0,+1], gearbox {-1,0,1,2,3,4,5,6}, clutch [0,+1], focus
direction
2011 Simulated Car Racing Championship @ EVO*-2011
10. 12
What is the structure of a race?
Three stages: warm up, qualifiers, actual race
During warm-up, each driver can explore the
track and learn something useful
During qualifiers, each driver races alone against
the clock (the best 8 drivers move to the race)
During the race all the drivers race together
2011 Simulated Car Racing Championship @ EVO*-2011
12. The competitors
Four entries in the first leg:
Mr. Racer, TU Dortmund
Mariscal & Fernández, Málaga University
Ready2Win, Slovak University of Technology - FIIT
Powaah, Blekinge Institute of Technology
Three more entries from the 2009 championship:
AUTOPIA, Madrid and Granada
COBOSTAR (Lönneker & Butz, University of Würzburg)
POLIMI (Cardamone, Politecnico di Milano)
2011 Simulated Car Racing Championship @ EVO*-2011
13. Mr Racer
Jan Quadflieg, Tim Delbruegger and Mike Preuss
TU Dortmund
2011 Simulated Car Racing Championship @ EVO*-2011
14. Mr. Racer 2011
Mostly described in the Evo* Paper “Driving Faster Than a
Human Player“
13 Variables learned offline with the CMA-ES
Warmup used to learn a model
of the track
Noise Handling:
Low pass filter on sensor values
2 Regression polynoms are fitted to each side
Resample the polygons
2011 Simulated Car Racing Championship @ EVO*-2011
15. Mr. Racer 2011 - Opponent Handling
Noise filtering with a lowpass filter
Observer module interprets filtered sensor readings
This leads to a recommended speed and an overtaking line
(created on the fly!)
Planning module incorporates recommended target speed
and overtaking line into the plan
Lots of nummerical parameters not yet tuned:
left for Gecco Competition
2011 Simulated Car Racing Championship @ EVO*-2011
17. Mariscal & Fernández
General approach: expert systems improved by multi-
objectives evolutionary computation techniques
Steering: based on a simple rule follow the track sensor with
biggest distance.
2011 Simulated Car Racing Championship @ EVO*-2011
18. Mariscal & Fernández - Throttle/Brake
Implemented via a parameterized expert system whose
parameters were optimized via a Multi-Objective
Evolutionary Algorithm (NSGA-II)
Two objectives:
Maximize distance.
Minimize damage.
Linear function (Ci are parameters to optimize):
C1 (Speed) + C2 (Distance to the next turn) + C3 (Turn degrees)
We obtain three sets of parameters
(1) To run fast
(i.e., controllers) to be used under (2) To run safe
specific conditions of the race (3) To run on dirty
tracks.
2011 Simulated Car Racing Championship @ EVO*-2011
19. Mariscal & Fernández - Overtaking
Expert system with four groups of rules:
Other strategies are implemented (via expert
systems) such as collision avoidance and
slipstream overtakings.
2011 Simulated Car Racing Championship @ EVO*-2011
21. Ready2Win
Modular architecture:
Driving module:
• The speed is computed using the maximum braking distance
Overtaking module
Recovery module
ABS module
Track learning during the warm-up:
First lap, driven slow, to identify turns (start, end, entry
position, curvature) and learn the track model
Other laps, speed adaptation:
• Increasing according to lateral speed
• Reducing when the car goes off-road
2011 Simulated Car Racing Championship @ EVO*-2011
22. Powaah
Tim Uusitalo
Blekinge Institute of Technology
Supervisor: Stefan Johanson
2011 Simulated Car Racing Championship @ EVO*-2011
23. Powaah
Based on Artificial Potential Field
Every sensor in the span (-40, +40) has a charge
The charge is determined by how far the sensor measures
the track
Coulomb’s law is used to calculate potentials in the field
Pot = (C1 * C2 ) / d2
The sensor with the highest potential is used for computing
how much steering is needed
2011 Simulated Car Racing Championship @ EVO*-2011
24. AUTOPIA
Industrial Computer Science Department.
Centro de Automática y Robótica
Consejo Superior de Investigaciones Científicas
Madrid, Spain
Contact:E. Onieva (enrique.onieva@car.upm-csic.es)
2011 Simulated Car Racing Championship @ EVO*-2011
25. AUTOPIA
Fuzzy Architecture based on three basic modules for gear,
steering and speed control
optimized with a genetic algorithm
Learning in the warm-up stage:
Maintain a vector with as many real values as tracklength
in meters.
Vector initialized to 1.0
If the vehicle goes out of the track or suffers damage
then multiply vector positions from 250 meters before the
current position by 0.95.
During the race the vector is multiplied by F to make the
driver more cautious in function of the damage:
F=1-0.02*round(damage/1000)
2011 Simulated Car Racing Championship @ EVO*-2011
26. COBOSTAR
Thies Lönneker and Martin V. Butz
University of Würzburg
http://www.coboslab.psychologie.uni-wuerzburg.de
2011 Simulated Car Racing Championship @ EVO*-2011
27. COBOSTAR
One of the best controller of the 2009 Championship
Parameterized controller optimized with CMA-ES
Dynamically saves crash points
2011 Simulated Car Racing Championship @ EVO*-2011
28. CIG-2008 Champ
Luigi Cardamone
Politecnico di Milano
2011 Simulated Car Racing Championship @ EVO*-2011
29. Luigi Cardamone
Winner of the CIG-2008 Car Simulated Competition
The controller is based on a neural network evolved with
NEAT
Very simple policy for overtaking
2011 Simulated Car Racing Championship @ EVO*-2011
31. Scoring process: Warm-up & Qualifying
Scoring process involves three tracks:
OldPeak
Polimi
HillRoad
The tracks are not distributed with TORCS:
Generated applying evolutionary computation
The competitors cannot know the tracks
Each controller raced for 100000 game ticks in the warm-up
stage and then its performance is computed in the qualifying
stage as the distance covered within 10000 game ticks
2011 Simulated Car Racing Championship @ EVO*-2011
39. How much does noise affect the
performance?
2011 Simulated Car Racing Championship @ EVO*-2011
40. HillRoad with and without noise
Autopia
Cardamone
Cobostar
Mariscal&Fernandez
Mr. Racer
Powaah
Ready2Win
0 2000 4000 6000 8000 10000 12000
NO-NOISY NOISY
2011 Simulated Car Racing Championship @ EVO*-2011
42. 46
Three Tracks
For each track we run 7 races
with random starting grids
Each race is scored using the F1 point system
(10 to first, 8 to second, 6 to third, …)
Two points to the controller with lesser damage
Two points for the fastest lap of the race
2011 Simulated Car Racing Championship @ EVO*-2011
43. Race: OldPeak
Competitor Score
Autopia 12
Mr. Racer 8
COBOSTAR 6
Cardamone 5
Ready2Win 5
Mariscal&Fer
nandez 4
Powahh 2
2011 Simulated Car Racing Championship @ EVO*-2011
44. Race: Polimi
Competitor Score
Autopia 10
Mariscal&Fer
nandez 8
Mr. Racer 8
COBOSTAR 7
Cardamone 4
Powahh 3
Ready2Win 3
2011 Simulated Car Racing Championship @ EVO*-2011
45. Race: HillRoad
Competitor Score
Autopia 12
Mariscal&Fer
nandez 8
Mr. Racer 6
Powahh 5
COBOSTAR 4
Cardamone 3
Ready2Win 2
2011 Simulated Car Racing Championship @ EVO*-2011
47. What about the race results?
Race and Qualifying have similar outcomes
(with the exception of Ready2Win)
AUTOPIA still very competitive
Opponent manegement is crucial on race
start. Very difficult with noise!