2013 simulated car racing @ gecco-2013

39
GECCO 2013 Simulated Car Racing Competition GECCO 2013 Simulated Car Racing Competition Daniele Loiacono and Pier Luca Lanzi

Upload: daniele-loiacono

Post on 08-May-2015

1.139 views

Category:

Technology


2 download

DESCRIPTION

Simulated Car Racing Competition held during GECCO-2013 More information at http://groups.google.com/group/racingcompetition http://scr.geccocompetitions.com Organizers Daniele Loiacono, Politecnico di Milano Pier Luca Lanzi, Politecnico di Milano

TRANSCRIPT

Page 1: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

GECCO 2013 Simulated Car Racing Competition Daniele Loiacono and Pier Luca Lanzi

Page 2: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

SCR in a nutshell

q  Develop a driver for TORCS " hand-coded, " learned, " evolved, " …

q  Three races on three unknown tracks q  Each race has the following structure:

" Warm-up: each driver can explore the track and learn something useful

" Qualifiers: each driver races alone against the clock (the best 8 drivers move to the race)

" Actual race: all the drivers race together q  Drivers are scored based on their final position in the races,

best lap-time, receiving the least amount of damages.

Page 3: 2013 Simulated Car Racing @ GECCO-2013

Competition Framework

Page 4: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

The Open Racing Car Simulator & the Competition Software

TORCS

BOT BOT BOT

TORCS PATCH

SBOT SBOT SBOT

BOT BOT BOT

UDP UDP UDP q  The competition server

q  Separates the bots from TORCS q  Build a well-defined sensor model q  Works in real-time

Page 5: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Sensors and actuators

q  Rangefinders for edges on the track and opponents (with noise) q  Speed, RPM, fuel, damage, angle with track, distance race, position

on track, etc.

q  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

Page 6: 2013 Simulated Car Racing @ GECCO-2013

Competitors

Page 7: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

SCR 2013 Entrants

q  State of the art: AUTOPIA, Madrid and Granada, Spain q  Entries

" EVOR, University of Adelaide, Australia " Ahoora, University of Adelaide, Australia " GAZZELLE, Indiana University South Bend, USA " GRN Driver, University of Toulouse, France " ICER-IDDFS, Ritsumeikan University, Japan " Mr.Racer, TU Dortmund, Germany " Presto AI, Uwe Kadritzke, Germany " SnakeOil, Chris X Edwards, Switzerland

Page 8: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Industrial Computer Science Department. Centro de Automática y Robótica Consejo Superior de Investigaciones Científicas Madrid, Spain Contact:E. Onieva ([email protected])

AUTOPIA

Page 9: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

AUTOPIA

q  Fuzzy Architecture based on three basic modules for gear, steering and speed control " optimized with a genetic algorithm

q  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.

q  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)

Page 10: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

EVOR (Evolutionary Racer)

Samadhi Nallaperuma, Frank Naumann (supervisor) University of Adelaide, Austrailia

Page 11: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

EVOR (Evolutionary Racer)

q  Build a track model during the Warm-up stage q  A (1+1)EA is used to evolve a controller, optimizing control

values q  Fitness is based on the evaluation of the racing line with

respect to the track model

Page 12: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Ahoora Driver

Mohammad reza Bonyadi, Samadhi Nallaperuma, Zbigniew Michalewicz, and Frank Neumann University of Adelaide, Australia

Page 13: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Ahoora Driver

q  Four main parameterized modules: " Steer controller " Speed controller " Opponent manager " Stuck manager

q  Parameters have been set using an evolutionary algorithm (a continuous space evolutionary method) for several tracks with known friction

q  During competition, parameters are adapted based on " The estimated friction " Trial and error (adaptively based on number of failures,

e.g. out of the track) q  Additional features: jump detection and management (in

steer and speed modules)

Page 14: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

THE GAZELLE - Adaptive Car Pilot

Dana Vrajitoru and Kholah Albelihi Indiana University South Bend

Page 15: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

The GAZELLE Adaptive Car Pilot

q  Mainly based on programmed heuristics q  Four modules:

" Target direction " Target speed " Opponent detection " Trouble spots handling

q  Depending on the current state, the opponent detection module might rise some flag to change the behaviors of other modules

Page 16: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

GRN Driver

Stéphane Sanchez & Sylvain Cussat-Blanc

University of Toulouse FRANCE

Page 17: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

GRN Driver

q  A Gene Regulatory Network (GRN) regulates the car steering and throttle " Proteins are encoded in a genome and are evolved by a

standard GA (optimization on 3 tracks, normal+mirrored for longest distance)

" This approach is naturally adaptative and resistant to noise (no noise filter implemented)

q  Scripted recovery behavior and driving assistance (traction control

and ABS) q  Modification of the GRN perception to learn braking zones of the

track during warm up and to handle opponents during the race

Track  sensor  3  Track  sensor  5  Track  sensor  7  Track  sensor  8  Track  sensor  9  Track  sensor  10  Track  sensor  11  Track  sensor  13  Track  sensor  15  

Speed  X  Speed  Y  

GRN  Le;  steer  

Right  steer  

Accelerator  

Brake  

Steer=(le;-­‐right)/(le;+right)  

accelbrake=(accel-­‐brake)/(accel+brake)  

Normalized  in  [0,1]  

Page 18: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Tetsuo Shirakawa, Show Nakamura, and Ruck Thawonmas Intelligent Computer Entertainment Laboratory Ritsumeikan University

ICER-IDDFS

Page 19: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

q  Based on iterative deepening depth-first search for path finder and accelerator control " Select the path having the

highest evaluation points " If such a path cannot be found,

use a default module implemented according to our understanding (J) of Autopia’s one

q  Warm-up " Slow at the first loop to learn the track " Then, try both dirt and road parameters

and select the better one " Slow the speed down at every past

accident location, if any q  Use simple rules to avoid a crash

with another car q  Implement a rule to regain the car’s

balance when losing it

IDDFS

Page 20: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Jan Quadflieg, Tim Delbruegger, Kai Verlage and Mike Preuss TU Dortmund

Mr. Racer

Page 21: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Mr. Racer 2013

q  Main features " 2 * 28 Parameters learned offline with the CMA-ES " Noise handling with low pass filtering and regression " One parameter set for tarmac tracks, one for dirt tracks " Completely new opponent handling (based on bachelor thesis of

Kai Verlage) q  On-line learning during the warm-up

" Track model " Choice of parameters set " Tuning of target speed for all corners

q  Opponent handiling " A module recommends overtaking lines, blocking lines or target

speeds depending on the current situation " Recommendations become more defensive depending on

damage " Planning module incorporates recommended target speed and

racing line into the plan

Page 22: 2013 Simulated Car Racing @ GECCO-2013

Presto AI

SCR Competition Entry 2013

Uwe Kadritzke

Page 23: 2013 Simulated Car Racing @ GECCO-2013

Presto AI

l  Pure Heuristics l  Use of Physical Laws, e.g. Centripetal Force l  Inspired by Bernhard Wymann (BT Driver) l  Unfinished, buggy

Main Areas of Attention l  Steering l  Speed Control l  Dealing with Noise

Page 24: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

SnakeOil

Chris X Edwards

Page 25: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

SnakeOil

q  Main goal was to develop a library to encourage Python programmers to enter the SCR. It's quite easy to use to develop your own bot.

q  Mapped a complete turn by turn track description. q  Created a route plan for where to be at every point on the

track... but that didn't work and probably can't without a heroic effort. It's harder than it first seems.

q  Used the track feature map to mark trouble spots and show more caution there while racing.

q  Ready to be optimized with evolutionary algorithms

Page 26: 2013 Simulated Car Racing @ GECCO-2013

Qualifying

Page 27: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Scoring process: Warm-up & Qualifying

q  Scoring process involves three tracks: " Alsoujlak (hill track) " Arraias (desert track) " Sancassa (city track)

q  The tracks are not distributed with TORCS: " Generated using the Interactive Track Generator for

TORCS and Speed Dreams available at: •  http://trackgen.pierlucalanzi.net

" The competitors cannot know the tracks q  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

Page 28: 2013 Simulated Car Racing @ GECCO-2013

Alsoujlak

Page 29: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Qualifying: Alsoujlak

0.00   2000.00   4000.00   6000.00   8000.00   10000.00   12000.00  

MrRacer  

ICER-­‐IDDFS  

AUTOPIA  

GRNDriver  

Presto  AI  

SnakeOil  

EVOR  

GAZELLE  

Ahoora  

Page 30: 2013 Simulated Car Racing @ GECCO-2013

Arraias

Page 31: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Qualifying: Arraias

0   1000   2000   3000   4000   5000   6000   7000   8000   9000   10000  

MrRacer  

ICER-­‐IDDFS  

AUTOPIA  

GRNDriver  

Presto  AI  

SnakeOil  

EVOR  

GAZELLE  

Ahoora  

Page 32: 2013 Simulated Car Racing @ GECCO-2013

Sancassa

Page 33: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Qualifying: Sancassa

0   2000   4000   6000   8000   10000   12000  

MrRacer  

ICER-­‐IDDFS  

AUTOPIA  

GRNDriver  

Presto  AI  

SnakeOil  

EVOR  

GAZELLE  

Ahoora  

Page 34: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Qualifying summary (scores with noise)

Competitor Alsoujlak Arraias Sancassa Total

AUTOPIA 6 10 10 26

MrRacer 10 5 6 21

ICER-IDDFS 8 4 8 20

GRNDriver 5 8 4 17

SnakeOil 3 6 3 12

Presto AI 4 0 5 9

EVOR 2 2 2 6

GAZELLE 1 3 1 5

Ahoora 0 1 0 1

Evolutionary Approaches

Page 35: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Qualifying summary (scores with noise)

Competitor Alsoujlak Arraias Sancassa Total

AUTOPIA 6 10 10 26

MrRacer 10 5 6 21

ICER-IDDFS 8 4 8 20

GRNDriver 5 8 4 17

SnakeOil 3 6 3 12

Presto AI 4 0 5 9

EVOR 2 2 2 6

GAZELLE 1 3 1 5

Ahoora 0 1 0 1

Removed from the race

Page 36: 2013 Simulated Car Racing @ GECCO-2013

Races

Page 37: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Three Tracks

For each track we run 8 races with different 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

Page 38: 2013 Simulated Car Racing @ GECCO-2013

GECCO 2013 Simulated Car Racing Competition

Competitor Alsoujlak Arraias Sancassa Total

AUTOPIA 12 13 13 38

MrRacer 9 5.5 6 20.5

ICER-IDDFS 6 5 8 19

GRNDriver 5 5.5 4 14.5

SnakeOil 3 7 3.5 13.5

Presto AI 3 1 5 9

EVOR 3 4 1 8

GAZELLE 1.5 3 2 6.5

Final Results

Mr. Racer is the winner of GECCO-2013 SCR

Page 39: 2013 Simulated Car Racing @ GECCO-2013

Thank you! SCR Contacts Official Webpage http://scr.geccocompetitions.com Email [email protected] Google Group http://groups.google.com/group/racingcompetition