Robotic research in Utrecht


Walter de Back



Agent technology and autonomous robotics are active research topics. In both areas there is a quest for control methods providing fast, accurate, robust behaviour. At the Institute for Information and Computing Science (ICS) at the University of Utrecht we have a modest robot laboratory (RoboLab) for this kind of research.

Currently, there are two parallel lines of ongoing research. (1) The group Intelligent Systems (IS), interested in cognitive robotics, has developed an agent programming language, 3APL, for the design and construction of intelligent agents like Personal Assistants. (2) A group of students, working in the RoboLab, has developed a toolkit for robotic control, RU-SMART, for the design and implementation of intelligent behaviour for real-world robots. The latter system was used in building a soccer-robot for participating in the European Championships RoboCup 2000 in Amsterdam.

This article provides an overview of the activities of the RoboLab at the University of Utrecht.



In 1997, the discipline group IS of the Institute for ICS founded a robot laboratory. The main goals of this RoboLab are: (1) to subject the theoretical efforts of the group (especially with respect to cognitive robotics) to experimental testing and (2) to get students interested and involved in the research on intelligent systems in general and robotics in specific.

Cognitive Robotics views programs as intelligent agents acting on our behalf. To support this kind of programming, the group IS has proposed the agent-based programming language 3APL. In the RoboLab, there are ideas to combine 3APL with low-level controllers to study the possibility to move cognitive robotics out of artificial worlds and towards complex real worlds.

Since 1998 there is a large involvement of students in the RoboLab through both curricular and extra-curricular activity. Within the second year project-based course, the so-called software project, there have been assignments to write robotic control software. Besides this course, the largest part of the activity in the lab has been extra-curricular, due to the efforts of a group of enthusiastic students interested in robotics. These students have different backgrounds: cognitive artificial intelligence(CKI), technical artificial intelligence(TKI), and computer science. This group has developed a robotic toolkit, RU-SMART, which was used to participate in RoboCup 2000 in Amsterdam.


The RoboLab uses four robots: three Pioneers 1 (P1) and one Pioneer 2 (P2) from ActivMedia[1]. All our robots have two driven wheels and a castor wheel. The P1s have eight sonar sensors in front and a simple camera. They do not have on-board computers, but are controlled by an off-board computer via a modem connection. The P2 has sixteen sonar sensors all around, a pan-tilt-zoom camera, a compass, and a laser range finder. It has a Pentium2 on-board computer for all processing. For communication with an off-board computer or other robots, it is provided with wireless ethernet.



In cognitive robotics, one is concerned with designing robots encompassing high-level cognitive functions: robots that sense, reason about and act in a constantly changing world. 3APL is a high-level agent programming language, that takes the idea that agents have different mental states (such as beliefs, goals) seriously; the constructs of the language immediately address these states. 3APL include features for: ‘representing and querying the agent’s beliefs; belief updating for incorporating new and removing existing information in the agent’s belief base; and goal updating to facilitate practical reasoning, that is, for planning and the reconsideration of adopted plans’[2].



RU-SMART is an acronym for RoboLab Utrecht’s Smart Multi-purpose Autonomous Robot Toolkit. The toolkit, which is still in development, supports the design and implementation of robotic control for intelligent behaviour of real-world robots. The requirements set for the system include robot- and application-independancy, fast, robust control and easy implementation of behaviour[3]. Its open architecture allows implementation of different control structures. RU-SMART consist of a parallel modules for perception and world modelling, task execution, communication and motor control[4]. The task execution module can be constructed in different ways (while maintaining the rest). Approaches we have explored so far include a simple planning system and a behaviour-based subsumption architecture [5], which we used in the RoboCup application. Currently, we are exploring the possibilities to use evolutionary techniques in our robotic systems, e.g. evolutionary robotics [6]. In the near future, we are going to use a variety of neural networks and genetic algorithms to solve optimisation and action selection problems.



RoboCup [7] is an international project to promote artificial intelligence, robotics, and related fields. It is an attempt to foster AI and intelligent robotics research by providing a standard problem where wide range of technologies can be integrated and examined. RoboCup chose to use the game of soccer as a central topic of research, aiming at innovations to be applied for socially significant problems and industries.

The Dutch RoboCup team is a joint project of the University of Amsterdam (UvA), the Technical University of Delft (TUD), and the University of Utrecht. The resulting robot team has participated in the European Championship RoboCup 2000 held in Amsterdam[8]. The UvA and the TUD were responsible for developing a goalkeeper and defenders, for which they used Nomadic Scout robots. The effort of our RoboLab was concentrated on the research and development of the team’s attacker.

For this task, we used our P2 robot, Dexter, because of its fast acceleration, the on-board computer and the laser range finder. Dexter was equipped with a pneumatic device for ball handling and kicking, which was developed at the TUD. For controlling the robot, we developed a soccer application in RU-SMART. This application is an implementation of a subsumption architecture in the task execution module (using the worldmap, motor control and communication modules provided in RU-SMART).

No more than three weeks before the start of the RoboCup event, we had the hardware of Dexter up and running for the first time. At that point, we only had tested RU-SMART (with a simplified soccer application) on the simple P1 robots. Therefore, all Dexter’s behaviour had to be made in these couple of weeks.

RU-SMART supports the bottom-up implementing of behaviour. The different behaviours can be implemented, tested and debugged separately in an incremental fashion. This feature allowed us to develop all soccer behaviour in this little time. Moreover, our approach to a subsumption based control proved to result in coherent, smooth behaviour.


During the tournament, the team showed an improving performance. Both Dexter and the goalkeeper and defenders from the UvA and the TUD were getting better due to the great efforts of the members of the Dutch team. Unfortunately this was not enough to get to the top of the tournament. This was due to problems with Dexter’s hardware, some software problems within the team and the absence of communication between the robots. Almost half of Dexter’s play time was lost because of a broken axis. Even with this setback, our last game, versus Shariff from Iran, who later went on to become the ‘European Champions’, was a very exciting one.

The Dutch team, also called ‘RobOranje’, has reached a dissapointing sixth place in this tournament. However, considering this was the first time we participated in such a project, this result is not to be ashamed about and is encouraging to do better next time.



Currently, we are making new plans for continuing our RoboCup efforts. We are evaluating our system and planning changes in the software to improve Dexter’s performance. To ensure continuation of our knowledge and experience, we are motivating new students to get involved in the development process of RU-SMART and the RoboCup application.

To facilitate the growth of the group, we will extend the RoboLab. We will have a separate lab for simulation, meetings and system administration and a lab for the real-world robots with enough space to lay out a RoboCup field.

Besides the co-operation with the UvA and the TUD, we have contacts with the AiS group (Autonomous intelligent Systems) of the German research institute GMD and with a group of employees of CFT (Centre for Industrial Technology) within the Philips concern. With both groups, there is a promising exchange of knowledge and information that, we hope, will result in better robotic systems for all parties.

We are investigating possibilities to develop applications in RU-SMART using evolutionary techniques. Evolutionary robotics offers a variety of methods for adaptive control and optimisation of behaviour. Besides providing optimal use of the robots capabilities and fast, robust control, this is interesting for the sciences of (neuro-)ethology, cognitive psychology, artificial intelligence, and philosophy.


Don’t hesitate to contact us via or


RoboLab Team members:

Steven Anker

Walter de Back

Martijn ten Brink

Jannes Faber

Arne Koopman

Marco Wiering

Tijn van der Zant

Lars Zwanepol




[2] Hindriks K., de Boer F., van der Hoek W., Meyer J.J.-Ch., "Agent Programming in 3APL"

[3] de Back W., "SMART: A Toolkit for Robotic Control"

[4] Faber J., "SMART: Manual"

[5] Brooks R. A., "A Robust Layered Control System for a Mobile Robot"

[6] Nolfi S., Floreano D., "Evolutionary Robotics"