Robotic sumo is popular category of many robotic competition. The basis is the same as in human sumo – to force the oponent out of the ring. Robots are built under many criterion and are fully autonomous and controlled by their algorithms. They often differ more in algorithms than in construction. Robot with better AI usually wins. The game is thus possible to simulate.
How accurate is it possible to simulate game of robotic sumo with two mechanically identical robots and estimate the winner just from robots algorithms?
The basic facts about robotic sumo
Ring – diameter 77cm, white edge 2.5cm, two lines in the middle to start
The Game - Started by referee, after the whistle robots have to stop for a 5 seconds. During the game are robots fully autonomous. The game is over when any part of the robot gets out of the ring. One round takes maximum of 3 minutes.
Robot – Maximum weight 500 g, Width x Length 10×10 cm, height is unlimited. It can unfold after start
Simulation is written in Java IDE Processing. Robot is object with assigned position XY and heading, which is drawn 120 times per second. To move robot means calculate a new position in time. In the beginning user set the position and heading of the robot and do not intervene the game any more. Robots are being moved according to their algorithms. Their main difference is value of constants.
The movement of robot is easily explained. Problem occurs, when robots crash to each other or one of them gets to the edge of arena. Edge is white, which means that it can be seen by light sensor on the bottom of the robot. At the edge, robot backs up and rotates before further movement. In the crash simulation calculates the resultant angle after incidence. The game is over when any part of robot gets out of the ring. Simulation then evaluates the winner.