Advanced Topics in Evolutionary Algorithms Meta-GP Crossover operator evolver for Torcs car setup optimization problem Mati Bot & Shimi Azrad
Preparation for contest Use the simpleGA from the site. With one change! The Crossover Operator We need to find the best Crossover operator offline. Before the contest.
XO Meta-GP: Evolving crossover operators. Objective: Trying to evolve a better XO operator for the Torcs car setup optimization problem. Why we thought is should work? ○ The parameters are arranged in an array. It is rational to think that some of the parameters are related to each other (wheels and friction for example)
XO Crossover Operators Population Fitness Function(XO): Do N times: Start the Torcs simulation Run the SimpleGA with the XO operator Close Torcs Start Torcs Take the best solution from the SimpleGA and test it in the simulation for a longer time Close torcs The fitness is the average distance raced of all N solutions (Just like in contest, the evaluations of the participants) How it works?
Partition Crossover Operator Basic assumption: the relations between the parameters are transitive. So it’s basically a partition of the parameter set. To code
Example of a crossover For each building block b do Randomly choose x from {0,1} Copy b from parent x to offsprint 0 Copy b from parent (x-1) to offsprint Example for the selection for x: 1,0,1,0
Result: We can observe that maybe some rational relations were found between the parameters
Our XO Avg: stddev:3141 Simple GA: stddev:3371 approx~~15% Improvement! 50 Runs Results:
Typical runs of the genetic algorithms, usually around fitness 400. Our XO SimpleGA
Future work Test the algorithm with bigger values of N Try to find other applications for this method of evolving XO operators Compare the results with other algorithms …and more!
Raw Data: The best distance raced from a single GA process of each type. 50 for each one. Our XOSimpleGA