Abstract
We present the evolution and current state of the Mr. Racer car racing controller that excelled at the corresponding TORCS competitions of the last years. Although several heuristics and black-box optimization methods are employed, the basic idea of the controller architecture has been to take over many of the mechanisms human racing drivers apply. They learn the track geometry, plan ahead, and wherever necessary, adapt their plans to the current circumstances quickly. Mr. Racer consists of several modules that have partly been adapted and optimized separately, where the final tuning is usually done with respect to a certain racing track during the warmup phase of the TORCS competitions. We also undertake an experimental evaluation that investigates how the controller profits from adding some of the modules to a basic configuration and which modules are most important for reaching the best possible performance.
Similar content being viewed by others
Notes
See the tutorial [15] for a current description, as details have been changed meanwhile.
This can only happen at the start/finish line. For the rest of the track, a straight segment in the track model is always prepended and followed by a corner.
provided in German, translated into English: “Modelling the steering behavior of a vehicle in a car racing simulation”.
References
A. Agapitos, M. O’Neill, A. Brabazon, T. Theodoridis, Learning environment models in car racing using stateful genetic programming, in 2011 IEEE Conference on Computational Intelligence and Games (CIG) (2011) pp. 219–226. doi:10.1109/CIG.2011.6032010
A. Auger, N. Hansen, A restart CMA evolution strategy with increasing population size, in The 2005 IEEE International Congress on Evolutionary Computation (CEC’05), ed. by B. McKay, et al., vol. 2 (2005) pp. 1769–1776
M. Botta, V. Gautieri, D. Loiacono, P.L. Lanzi, Evolving the optimal racing line in a high-end racing game, in 2012 IEEE Conference on Computational Intelligence and Games (CIG) (2012) pp. 108–115. doi:10.1109/CIG.2012.6374145
M. Butz, M. Linhardt, T. Lönneker, Effective racing on partially observable tracks: indirectly coupling anticipatory egocentric sensors with motor commands. IEEE Trans. Comput. Intell. AI Games 3(1), 31–42 (2011)
M. Butz, T. Lönneker, Optimized sensory-motor couplings plus strategy extensions for the torcs car racing challenge, in Proceedings of the IEEE Symposium on Computational Intelligence and Games (2009), pp. 317–324
L. Cardamone, A. Caiazzo, D. Loiacono, P.L. Lanzi, Transfer of driving behaviors across different racing games, in 2011 IEEE Conference onComputational Intelligence and Games (CIG) (2011), pp. 227–234. DOI:10.1109/CIG.2011.6032011
L. Cardamone, D. Loiacono, P.L. Lanzi, Evolving competitive car controllers for racing games with neuroevolution, in Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation, GECCO ’09 (2009), pp. 1179–1186. doi:10.1145/1569901.1570060
L. Cardamone, D. Loiacono, P.L. Lanzi, Learning drivers for torcs through imitation using supervised methods, in IEEE Symposium on Computational Intelligence and Games, 2009 (CIG 2009) (2009), pp. 148–155. doi:10.1109/CIG.2009.5286480
L. Cardamone, D. Loiacono, P.L. Lanzi, On-line neuroevolution applied to the open racing car simulator, in Proceedings of the IEEE Congress on Evolutionary Computation (2009), pp. 2622–2629
L. Cardamone, D. Loiacono, P.L. Lanzi, Applying cooperative coevolution to compete in the 2009 torcs endurance world championship, in 2010 IEEE Congress on Evolutionary Computation (CEC) (2010), pp. 1–8. doi:10.1109/CEC.2010.5586041
L. Cardamone, D. Loiacono, P.L. Lanzi, Learning to drive in the open racing car simulator using online neuroevolution. IEEE Trans. Comput. Intell. AI Games 2(3), 176–190 (2010)
L. Cardamone, D. Loiacono, P.L. Lanzi, Interactive evolution for the procedural generation of tracks in a high-end racing game, in Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation, GECCO ’11 (ACM, New York, 2011), pp. 395–402. doi:10.1145/2001576.2001631
L. Cardamone, D. Loiacono, P.L. Lanzi, A.P. Bardelli, Searching for the optimal racing line using genetic algorithms, in 2010 IEEE Symposium on Computational Intelligence and Games (CIG) (2010), pp. 388–394. doi:10.1109/ITW.2010.5593330
M. Ebner, T. Tiede, Evolving driving controllers using genetic programming, in Proceedings of the IEEE Symposium on Computational Intelligence and Games 2009 (2009), pp. 279–286
N. Hansen, The CMA Evolution Strategy: A Tutorial. https://www.lri.fr/hansen/cmatutorial110628.pdf (2011). 28 June 2011
M. Kemmerling, M. Preuss, Automatic adaptation to generated content via car setup optimization in torcs, in 2010 IEEE Symposium on Computational Intelligence and Games (CIG) (2010), pp. 131–138. doi:10.1109/ITW.2010.5593361
D. Loiacono, L. Cardamone, P.L. Lanzi, Automatic track generation for high-end racing games using evolutionary computation. IEEE Trans. Comput. Intell. AI Games 3(3), 245–259 (2011). doi:10.1109/TCIAIG.2011.2163692
D. Loiacono, L. Cardamone, P.L. Lanzi, Simulated Car Racing Championship: Competition Software Manual (Politecnico di Milano, Dipartimento di Elettronica, Informazione e Bioingegneria, Italy, 2013). http://arxiv.org/abs/1304.1672v2
D. Loiacono, P.L. Lanzi, J. Togelius, E. Onieva, D.A. Pelta, M.V. Butz, T.D. Lönneker, L. Cardamone, D. Perez, Y. Saez, M. Preuss, J. Quadflieg, The 2009 simulated car racing championship. IEEE Trans. Comput. Intell. AI in Games 2(2), 131–147 (2010)
D. Loiacono, A. Prete, P.L. Lanzi, L. Cardamone, Learning to overtake in torcs using simple reinforcement learning, in 2010 IEEE Congress on Evolutionary Computation (CEC) (2010), pp. 1–8. doi:10.1109/CEC.2010.5586191
D. Loiacono, J. Togelius, P.L. Lanzi, L. Kinnaird-Heether, S.M. Lucas, M. Simmerson, D. Perez, R.G. Reynolds, Y. Saez, The wcci 2008 simulated car racing competition, in Proceedings of the IEEE Symposium on Computational Intelligence and Games (2008), pp. 119–126
J. Muñoz, G. Gutierrez, A. Sanchis, Controller for torcs created by imitation, in Proceedings of the IEEE Symposium on Computational Intelligence and Games (2009), pp. 271–278
J. Muñoz, G. Gutierrez, A. Sanchis, A human-like torcs controller for the simulated car racing championship, in Proceedings of the IEEE Conference on Computational Intelligence and Games (2010), pp. 473–480
E. Onieva, L. Cardamone, D. Loiacono, P.L. Lanzi, Overtaking opponents with blocking strategies using fuzzy logic, in 2010 IEEE Symposium on Computational Intelligence and Games (CIG) (2010), pp. 123–130. doi:10.1109/ITW.2010.5593364
E. Onieva, D. Pelta, V. Milanés, J. Pérez, A fuzzy-rule-based driving architecture for non-player characters in a car racing game. Soft Comput. Fusion Found. Methodol. Appl. 15, 1617–1629 (2011). doi:10.1007/s00500-011-0691-6
E. Onieva, D.A. Pelta, J. Alonso, V. Milanés, J. Pérez, A modular parametric architecture for the torcs racing engine, in Proceedings of the IEEE Symposium on Computational Intelligence and Games (2009), pp. 256–262
D. Perez, G. Recio, Y. Saez, P. Isasi, Evolving a fuzzy controller for a car racing competition, in Proceedings of the IEEE Symposium on Computational Intelligence and Games (2009), pp. 263–270
D. Perez, Y. Saez, G. Recio, P. Isasi, Evolving a rule system controller for automatic driving in a car racing competition, in Proceedings of the IEEE Symposium on Computational Intelligence and Games (2008), pp. 336–342
M. Preuss, J. Quadflieg, G. Rudolph, Torcs sensor noise removal and multi-objective track selection for driving style adaptation, in 2011 IEEE Conference on Computational Intelligence and Games (CIG) (2011), pp. 337–344. doi:10.1109/CIG.2011.6032025
J. Quadflieg, M. Preuss, O. Kramer, G. Rudolph, Learning the track and planning ahead in a car racing controller, in 2010 IEEE Symposium on Computational Intelligence and Games (CIG) (2010), pp. 395–402. DOI:10.1109/ITW.2010.5593327
J. Quadflieg, M. Preuss, G. Rudolph, Driving faster than a human player, in Applications of Evolutionary Computation, Lecture Notes in Computer Science ed. by C. Di Chio, S. Cagnoni, C. Cotta, M. Ebner, A. Ekrt, A. Esparcia-Alczar, J. Merelo, F. Neri, M. Preuss, H. Richter, J. Togelius, G. Yannakakis, vol 6624. (Springer, Berlin, 2011), pp. 143–152. doi:10.1007/978-3-642-20525-5_15
Y. Saez, D. Perez, O. Sanjuan, P. Isasi, Driving cars by means of genetic algorithms, in Proceedings of tenth International Conference on Parallel Problem Solving from Nature (2008), pp. 1101–1110
K. Stanley, R. Miikkulainen, Evolving neural networks through augmenting topologies. Evol. Comput. 10(2), 99–127 (2002). doi:10.1162/106365602320169811
T. Uusitalo, S. Johansson, A reactive multi-agent approach to car driving using artificial potential fields, in 2011 IEEE Conference on Computational Intelligence and Games (CIG) (2011), pp. 203–210. doi:10.1109/CIG.2011.6032008
B. Wymann, Torcs Robot Tutorial—Optimal Brake Distance, (2013). http://www.berniw.org/tutorials/robot/torcs/robot/ch3/braking3.html. 25 Oct 2013
B. Wymann, The Torcs Racing Board, (2014). http://www.berniw.org/trb/index.php. 26 Mar 2014
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Quadflieg, J., Preuss, M. & Rudolph, G. Driving as a human: a track learning based adaptable architecture for a car racing controller. Genet Program Evolvable Mach 15, 433–476 (2014). https://doi.org/10.1007/s10710-014-9227-z
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10710-014-9227-z