next up previous
Next: An Advanced Agent Up: Emergent Behaviors Previous: Standard Complexity Measures

Analysis of sample robots

Among the first robots moderately good vs. people was R.510006:




( * _H ( IFLTE _A 0.92063 _H ( - ( % D ( - ( + 0.92063 ( IFLTE 0.92063 _F 0.92063 ( LEFT_TURN ) ) ) ( IFLTE ( - ( IFLTE _C _G ( RIGHT_TURN ) ( LEFT_TURN ) ) ( IFLTE ( + ( LEFT_TURN ) ( LEFT_TURN ) ) _G _F _G ) ) _H ( RIGHT_TURN ) _G ) ) ) ( RIGHT_TURN ) ) ) )






This can be roughly reduced to pseudocode as:

if FRONT < 0.92063 go straight

else if 0.92063 >= REAR_RIGHT turn left

else if LEFT < RIGHT turn right 

else turn left

This robot will always go straight, unless there is an obstacle in front of it closer than 8% of the size of the arena. At this point, it will turn right or left. The use of the REAR_RIGHT sensor is confusing, and its is difficult to infer from the code the actual behavior of this expression, as complex variations arise from its interactions with the Tron environment.

When inserted in a Tron arena, the agent shows an interesting behavior. It will avoid obstacles, get out of dead ends and do tight turns to maximize space when in a confined space (fig. 3.26).

  
Figure 3.26: Sample games of robot 510006 (black) vs. a human opponent (grey). It quickly beats a novice player (left). It fights against an expert player, making tight turns when confined in a small space (right).

\resizebox*{0.45\textwidth}{!}{\includegraphics{sab98/graph/510006e1.eps}}   \resizebox*{0.45\textwidth}{!}{\includegraphics{sab98/graph/510006a1.eps}}


The basic strategy of going straight all the time, then turning at the last minute, is one of the obvious solutions for reasonable Tron agents, given the established architecture. But robots can do much better than this: Today R. 510006 ranks at no. 2740 among 5977 robots, which means that 45% of the strategies found are better than its own.


next up previous
Next: An Advanced Agent Up: Emergent Behaviors Previous: Standard Complexity Measures
Pablo Funes
2001-05-08