UvA Trilearn 2002 - Soccer Simulation Team



'UvA Trilearn 2002' is an extension over UvA Trilearn 2001, which participated for the first time in RoboCup 2001 and reached fourth place at this competition. Much of the effort in building UvA Trilearn 2001 had gone into getting the lower levels to work, since we felt that these would be the most crucial for the success of the team. UvA Trilearn 2002 contains several improvements which include improved localization methods using particle filters, behavior modeling of teammates, and the action selection method based on a priority-confidence model.

Research Group Members

drs. J.R. Kok ( - Research and Implementation
dr. N. Vlassis - Research Coordinator
Prof. dr. ir. F.C.A. Groen ( - Team Coordinator


University of Amsterdam (UvA), Faculty of Science
Intelligent Autonomous Systems Group
Kruislaan 403, 1098 SJ Amsterdam, The Netherlands


  • Towards an optimal scoring policy for simulated soccer agents (Proceedings Robocup 2002 symposium):
  • Team Description Paper (Proceedings Robocup 2002 symposium):
  • Mutual Modeling of Teammate Behavior (technical report):


The binary of UvA Trilearn 2002 as used during the final round in Fukuoka is available here. To ease testing, you can also download this binary which works with the synchronization mode of the server. Just start the server with the synch_mode option set to "on" and it should work. The rest of the binary is the same as the binary used in Fukuoka. Unfortunately, I only have a dynamic linked binary available, but it should work on most standard linux systems.


Part of the source code of UvA Trilearn 2002 is available here. Note that this is the basic team against which you have to play in order to qualify for RoboCup 2003! The released source code contains our lower levels (synchronization, world model, basic agent skills) together with a simple high-level strategy, similar to the one released by FC Portugal after RoboCup-2000 to make a working team. It is basically the same source code as released last year. The main differences are some small improvements, bug-fixes and some adaptions to the newest soccer server (8.x).

An extended version of above source code is now available which also implements the new penalty shootout. The default policy of the agents (penalty kicker and goalkeeper) is very simple, but it can give you an idea how to implement and work with the new penalty shootouts. See the NEWS file in the rcssserver directory of the server for more details about the penalty shootout procedure. The extended source code can be downloaded here. A logfile displaying a penalty shootout can be downloaded here.

Furthermore, we also released our coach framework. This framework depends heavily on the source code of the clients mentioned above. The coach does not contain any functionality, but only processes the incoming information and stores it in its world model. It is also possible to install a callback handler that will process the commands typed in by the user. To use this framework, extract the contents to the same directory as the source code of the clients (the file Makefile and README will be overwritten with an updated version). See the end of the README file for more details.

This code is released under the modified BSD-license. This basically means that the software may be used, modified and copied as long as the copyright notice, the list of conditions and the disclaimer are reproduced in the documentation and/or other materials provided with the distribution.

The associated html documentation can be generated from these sources or be directly downloaded here.

We think that the extensive documentation in combination with our thesis is an excellent starting point for new teams. Our thesis, which can be downloaded from the publications section, describes all components of our team in much detail.


German Open

We participated in the German Open 2002 and became Champion (of 13 teams) in this competition.

Round Opponent Score
Group AT Humboldt (Germany) 9-0
  Persepolis (Iran) 3-0
  UT United (Iran) 4-1
  BUGS (Germany) 31-0
  Mainz Rolling Brains (Germany) 24-0
  Polytech (Russia) 7-0
Elimination (winners) Matrix (Iran) 23-0
  RoboLog (Germany) 5-0
  Brainstormers (Germany) 2-0
Final Brainstormers (Germany) 2-0

The logfile from the final can be viewed here. This Flash file is created using the program robocup2flash (version 0.1) written by Thilo Girmann, which can be downloaded from the RoboLog site

All results can be found here.

Robocup 2002 Fukuoka

We participated in RoboCup 2002 in Fukuoka and became 4th (of the 42 qualified teams) in this competition.

Round Opponent Score
Round 1 United-2002 (USA) 9-0
  Avan (Iran) 27-0
  Gemini (Japan) 18-0
  Cow 'n' Action (USA) 24-0
Round 2 YowAI2002 (Japan) 6-0
  Puppets (Japan) 2-0
  Harmony (Japan) 21-0
  RaiC02 (Japan) 29-0
  FC Portugal 2002 (Portugal) 0-1
Elimination (winners) Everest (China) 2-3
Elimination (losers) TIT Helios (Japan) 4-0
  FC Portugal 2002 (Portugal) 1-0
  Brainstormers (Germany) 1-2

All results can be found here.