A Genetic Programming-Based Low-Level Instructions Robot for Realtimebattle

Entropy (Basel). 2020 Nov 30;22(12):1362. doi: 10.3390/e22121362.

Abstract

RealTimeBattle is an environment in which robots controlled by programs fight each other. Programs control the simulated robots using low-level messages (e.g., turn radar, accelerate). Unlike other tools like Robocode, each of these robots can be developed using different programming languages. Our purpose is to generate, without human programming or other intervention, a robot that is highly competitive in RealTimeBattle. To that end, we implemented an Evolutionary Computation technique: Genetic Programming. The robot controllers created in the course of the experiments exhibit several different and effective combat strategies such as avoidance, sniping, encircling and shooting. To further improve their performance, we propose a function-set that includes short-term memory mechanisms, which allowed us to evolve a robot that is superior to all of the rivals used for its training. The robot was also tested in a bout with the winner of the previous "RealTimeBattle Championship," which it won. Finally, our robot was tested in a multi-robot battle arena, with five simultaneous opponents, and obtained the best results among the contenders.

Keywords: RealTimeBattle; artificial intelligence; creative computation; evolutionary game; evolutionary robotics; genetic programming; robots.