Abstract
Videogame-based competitions have been the target of considerable interest among researchers over the past few years since they provide an ideal framework in which to apply soft computing techniques. One of the most popular competitions is the Simulated Car Racing Competition which, thanks to the realism implemented by recent car simulators, provides an excellent test bed for the application of autonomous driving techniques. The present work describes the design and implementation of a car controller able to deal with competitive racing situations. The complete driving architecture consists of six simple modules, each one responsible for a basic aspect of car driving. Three modules use simple functions to control gear shifting, steering movements, and pedal positions. A fourth manages speed control by means of a simple fuzzy system. The other two modules are in charge of (i) adapting the driving behaviour to the presence of other cars, and (ii) implementing a basic ‘inter-lap’ learning mechanism in order to remember key track segments and adapt the speed accordingly in future laps. The controller was evaluated in two ways. First, in runs without adversaries over several track designs, our controller allowed some of the longest distances to be covered in a set time in comparison with data from other previous controllers, and second, as a participant in the 2009 Simulated Car Racing Competition which it ended up winning.
Similar content being viewed by others
References
Arroyabe JL, Aranguren G, Nozal LAL, Martin JL (2000) Autonomous vehicle guidance with fuzzy algorithm. In: Proceedings of 26th annual conference of the IEEE Industrial Electronics Society IECON 2000, vol 3, pp 1503–1508
Butz MV, Lonneker TD (2009) Optimized sensory-motor couplings plus strategy extensions for the torcs car racing challenge. In: IEEE symposium on computational intelligence and games, 2009 (CIG 2009), 7–10 September 2009, pp 317–324
García R, de Pedro T (1998) Modeling a fuzzy coprocessor and its programming language. Mathw Soft Comput 5(2–3):167–174
Herrera F, Lozano M, Verdegay JL (1995) Tuning fuzzy logic controllers by genetic algorithms. Int J Approx Reason 12:299–315
Homaifar A, McCormick E (1995) Simultaneous design of membership functions and rule sets for fuzzy controller using genetic algorithms. IEEE Trans Fuzzy Syst 3(2):129–139
Hong TP, Huang KY, Lin WY (2002) Applying genetic algorithms to game search trees. Soft Comput: A Fusion Found Methodol Appl 6(3):277–283
Hsu F (2002) Behind deep blue. PhD thesis, Princeton University Press
Laird JE (2002) Research in human-level AI using computer games. Commun ACM 3(8):32–35
Loiacono D, Togelius J, Lanzi PL (2008a) Car racing competition WCCI2008. Software manual
Loiacono D, Togelius J, Lanzi PL, Kinnaird-Heether L, Lucas SM, Simmerson M, Perez D, Reynolds RG, Saez Y (2008b) The WCCI 2008 simulated car racing competition. In: Proceedings of the IEEE symposium on computational intelligence and games
Loiacono D, Togelius J, Lanzi PL (2009) Simulated car racing. In: Proceedings of IEEE symposium on computational intelligence and games CIG 2009, 7–10 September 2009, p 1
Loiacono D, Lanzi PL, Togelius J, Onieva E, Pelta DA, Butz MV, Lonneker TD, Cardamone L, Perez D, Saez Y, Preuss M, Quadflieg J (2010) The 2009 simulated car racing championship. IEEE Trans Comput Intell AI Games 2(2):131–147
Lucas SM (2009) Computational intelligence and AI in games: a new IEEE transactions. IEEE Trans Comput Intell AI Games 1(1):1–3
Munoz J, Gutierrez G, Sanchis A (2009) Controller for torcs created by imitation. In: IEEE symposium on computational intelligence and games, 2009 (CIG 2009), 7–10 September 2009, pp 271–278
Onieva E, Alonso J, Pérez J, Milanés V, de Pedro T (2009a) Autonomous car fuzzy control modeled by iterative genetic algorithms. In: Proc 2009 IEEE international conference on fuzzy systems
Onieva E, Pelta DA, Alonso J, Milanes V, Perez J (2009b) A modular parametric architecture for the torcs racing engine. In: Proc IEEE symposium on computational intelligence and games (CIG 2009), 7–10 September 2009, pp 256–262
Perez D, Recio G, Saez Y, Isasi P (2009) Evolving a fuzzy controller for a car racing competition. In: IEEE symposium on computational intelligence and games, 2009 (CIG 2009), 7–10 September 2009, pp 263–270
Rosca JP (1996) Generality versus size in genetic programming. In: Genetic programming 1996: proceedings of the first annual conference. Stanford University, MIT Press, Cambridge, pp 381–387
Schaeffer J (2009) One jump ahead: computer perfection at checkers. Springer-Verlag, New York
Schaeffer J, Burch N, Yngvi Björnsson AK, Mueller M, Lake R, Lu P, Sutphen S (2007) Checkers is solved. Sci Agric 317:1518–1522
Schloman J, Blackfordm B (2007) Genetic programming evolves a human competitive player for a complex, on-line, interactive, multiplayer game of strategy. In: Proceedings of the genetic and evolutionary computation conference, pp 1951–1958
Siegel EV, Chaffee DA (1996) Genetically optimizing the speed of programs evolved to play tetris. In: Advances in genetic programming, vol 2. MIT Press, Cambridge, pp 279–298
Togelius J, Lucas S, Duc Thang H, Garibaldi JM, Nakashima T, Hiong Tan C, lhanany I, Berant S, Hingston P, MacCallum RM, Haferlach T, Gowrisankar A, Burrow P (2008) The 2007 IEEE CEC simulated car racing competition. Genet Program Evol Mach 9:295–329
Zadeh LA (1965) Fuzzy sets. Inf Control 8:338–353
Acknowledgments
This work was supported by the Spanish Ministry of Science and Innovation under the projects Tránsito (TRA2008-06602-C03-01), CityElec (PS-370000-2009-4), and TIN2008-01948, by the Ministerio de Fomento under the project GUIADE (T9/08), and by the Consejería de Innovación, Ciencia y Empresa, Junta de Andalucía, under Project P07-TIC-02970. The authors wish to thank the organizers of the 2009 Simulated Car Racing Competition for their effort in organizing the event and for allowing our team to participate without having submitted associated publications.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Onieva, E., Pelta, D.A., Milanés, V. et al. A fuzzy-rule-based driving architecture for non-player characters in a car racing game. Soft Comput 15, 1617–1629 (2011). https://doi.org/10.1007/s00500-011-0691-6
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-011-0691-6