Present car racing_setup

11

Click here to load reader

Transcript of Present car racing_setup

Page 1: Present car racing_setup

Car setup optimization via evolutionary algorithms

Carlos Cotta,Antonio J. Fernandez-Leiva,

Alberto Fuentes Sanchez,Raul Lara-Cabrera

Dept. Lenguajes y Ciencias de laComputacion, University of Malaga,

SPAIN

http://anyself.wordpress.comhttp://dnemesis.lcc.uma.es

Page 2: Present car racing_setup

Introduction

� Artificial intelligence (AI) in games has become a very importantresearch field

� International conferences and journals that only focus on thistopic: CIG, AIIDE, TCIAIG

� Games offer a large variety of AI research problems: planning,player modeling, decision making under uncertainty, ...

� They should be used as tool for testing AI techniques

2 / 11

Page 3: Present car racing_setup

TORCS: The Open Racing Car Simulator

� Open-source 3D racing simulator� Human and artificial players (bots)� Client-server architecture:

� Bots run as an external process� Communication with the race server through an UDP connection

� Cars have 50 mechanical parameters:� Tyre angles, suspension’s hardness, ...� Good testing framework for optimization techniques

3 / 11

Page 4: Present car racing_setup

The competition

� The contest involves three tracks

� The objective is to find the best car setup for each one of thetracks

� Two phases: optimization and evaluation (time-limited)

� A car setup is represented by a vector of real numbers (50parameters)

� Participants are ranked according to their maximum covereddistance

4 / 11

Page 5: Present car racing_setup

Steady-state approach (I)

� Parameters are real values andencoded with 10-bit

� Each individual of thepopulation is an array of 500bits

� Crossover and mutation withprobability 1.0

5 / 11

Page 6: Present car racing_setup

Steady-state approach (II)

Fitness function

C1 ∗ distraced + C2 ∗ topspeed + C3 ∗ (1000 − bestlap) + C4 ∗ damage

distraced Total amount of distance

topspeed Maximum speed

bestlap Best lap time

damage Damage taken by the car

Several combinations of weights C1,C2,C3,C4 have been tested.

6 / 11

Page 7: Present car racing_setup

Steady-state approach (III)

Experimental Analysis

� Runs:10 Population:50 Iterations:20

� Best weights after testing several combinations: C1 = 0.6,C2 = 2.5, C3 = 0.15 and C4 = 0.05

� Controller submitted to the EVO-* competition:

Competitor CG Track Poli-Track Dirt-3 Distance Points

Munoz (MOEA) 10 6 8 23614.13 24

Garcıa-Saez (PSO) 6 10 5 21388.04 21

Walz (PSO) 8 5 6 21049.77 19

Fuent-Cotta-Fdez-Cab (GA) 4 4 10 19748.08 18

Munoz-Martın-Saez (EA) 5 8 4 20515.29 17

7 / 11

Page 8: Present car racing_setup

Multi-objective approach

� Multi-objective algorithm using SPEA2� We have tested several combinations of fitness functions:

� Variables: bestlap, distraced, damage, topspeed and the fitnessdefined for the single-objective algorithm

� Best results obtained from two objectives: minimize the time of thebest lap and maximize the single-objective fitness

� Additionally, we have considered the optimization of every variable,that is, maximize distraced and topspeed and minimize bestlap anddamage

8 / 11

Page 9: Present car racing_setup

Multi-objective approach (II)

Experimental Analysis

� Runs:10 Population:50 Generations:20

� Compared to the participants of the competition held atGECCO-2009

Driver Speedway ETRACK Olethros Wheel Total

Multi-objective 10 5 8 8 31V&M&C 4 8 5 10 27

Jorge 8 4 10 4 26Multi-objective PCA 3 10 6 6 25

Single-objective 5 6 4 5 20Luigi 6 3 3 3 15

9 / 11

Page 10: Present car racing_setup

Conclusions

� Different proposals based on evolutionary computation to set up acar in a racing simulator

� Multi-objective evolutionary algorithms are a good solution to theproblem

� The single-objective algorithm has determined the fitness functionused in our EMOAs

� Future work:� Use meta-optimization to get a better fitness function� Improve evolutionary algorithms’ parameters in order to obtain better

results

10 / 11

Page 11: Present car racing_setup

Thanks for your attention!

AnySelf Project

http://facebook.com/AnySelfProject

@anyselfproject

http://dnemesis.lcc.uma.es/wordpress/

@DNEMESISproject

11 / 11