The ISocRob Team participated in the major annual robotic soccer Event,
RoboCup'99, held in
Stockholm from July 27th to August 6th. The team included 2 Professors,
2 Graduate students and 5 Undergraduate students from
IST. Even though, from a competitive
standpoint, our goal (finishing among the top 8 teams) was not accomplished,
we were close (9th place among 20 teams) and some important progresses
were made (see below). Also, our participation was an important educational
experience for the students, whose work contributed to extend the
functionalities of our team.
0. Preliminary Info
The RoboCup Initiative mission
is to foster research in areas such as Robotics and Artificial
Intelligence, with special emphasis on robotic soccer (i.e.,
robots playing soccer autonomously -- no remote control, with minimal
human intervention).
The SocRob Project aims at research in robotic cooperation, covering
a broader area of applications. One of these applications is robotic
soccer, based on the ISocRob Team.
1. Game Results
The twenty participating teams were distributed by three groups (six
teams on group A, seven teams on both B and C). The ISocRob was on
group A. The matches were played in a round-robin fashion (1 round
only). The results from group A are shown below.

Figure 1. Results in Group A

Figure 2. Final standings
The top two teams from each group qualified to the final playoffs,
together with the first two teams from the wildcard matches between
the third placed teams of each group. Unfortunately, IsocRob lost
both of its wildcard games, and did not qualify. 8-(

Figure 3. Results in Playoff

Figure 4. Playoff final standings
The results from all the matches, as well as the schedule can
be found here
(mirrored from here).
A prettier version of the results can also be found
here.
2. Scientific and Technical Improvements
Functional
- Architecture: We have developed a functional architecture which
describes how the IsocRob team subsystems fit together:
"A Functional
Architecture for a Team of Fully Autonomous Cooperative Robots", Pedro
Lima, Rodrigo Ventura, Pedro Aparício, Luis Custódio. Proc. of RoboCup
Workshop of IJCAI 99 (6 pages) -- gzipped
postscript file (88 Kbytes), also available by anonymous ftp (lci.isr.ist.utl.pt).
- Cooperation: The state machines that implement the robot behavior
were augmented in order to support a basic (but essential) cooperation
mechanism: to prevent two robots to approach the ball at the same
time.
- Prepare Maneuver: The preparation states were modified from those
used last year. The objective is to make the robot approach the ball and
then rotate until it has both the ball and the other team goal in sight. As
pictures are worth a thousand words:
|
|
| Before |
After |
Advantages: quicker, may remove a ball touching a wall, increasing
game entropy;
Disavantages: less accurate, does not solve by itself the problem
of shooting the ball to the opponents goal.
We felt that the speed
advantage was worth the disavantages.
Software
- Agent-oriented Programming: The implementation was based on an
agent-oriented paradigm, implemented using threads, which is appropriate
given the concurrent nature of the software.
- Blackboard: Last year, a set of parameters were read from a small
file to a structure in memory. This mechanism was extended to provide
dynamically changing variables and variables whose values are broadcast to
all robots via wireless ethernet networking.
- Communications: The basic infra-structure to implement the
cooperative behavior described above was implemented, consisting of network
broadcast blackboard variables, and time tags to check the consistency of
their values.
Hardware
- Kicker This year our robots were equipped with a kicker device,
based on two auto door lockers. The kicker (reactively) responds to ball
contact, using an IR light beam, and is software enabled/disabled. This way
the response time is extremely fast.
- 360° Vision: A custom designed mirror coupled with a CCD camera
allows a 360° field of view. Additionally, the profile of the mirror
provides a so called "hardware unwrapping", providing bird's eye view images
which are free of the distortion usually produced by conical or spherical
mirrors. The image captured by the camera is equivalent to an orthographic
projection of the field, as far as the ground level is concerned (objects
out of this plane are strongly distorted -- no free lunches here!). We will
soon make available our work on self-localization using this system, which
could not be accomplished on time for Stockholm. Some preliminary results
with real images are very encouraging.
- Wheels: A new set of wheels was used, made of aluminum core,
"artalon" main body, and rubber-made o-ring for better traction. The contact
with the encoder is based on gears.
- Connectors: This might sound a minor improvement, but in practice
it increased significantly the battery autonomy of the robots. The power
connectors of the motherboard were replaced by a high-quality gold-plated
ones. The voltage drop along the contacts was reduced about one order of
magnitude.
3. The Robots
This year, the ISocRob team has four "players": three custom made robots,
called socrob1, socrob2, and socrob3, and one
commercial off-the-shelf platform from Nomadic (SuperScout model) called
scout1. (Yes, we could very well put them real human football player
names, but we are sort of old fashioned...). The current version of the
socrob robots can be seen here.
Unfortunately, some improvements showed infeasible for practical reasons:
- The kicker enable/disable signal did not always work, so that the kicker
mechanism were either manually enabled or disabled at the start. The risk of
enabling it from the start, is that it could kick the ball to the wrong
goal...
- The 360° vision did not work because of two problems: excessive heating of
the camera (and lack of ventilation, since it was in a closed cabinet)
rendered it disabled in about 20 minutes, and light saturation due to light
concentration performed by the mirror. A possible solution to the latter
problem consisted in a filter (improvised from my dark glasses), whose
position worsened the heating problem...
- The gears connecting the wheels to the encoder showed to be an unreliable
solution, frequently disconnecting and leading to incorrect motor speed and
position control...
But fortunately, some improvements did in fact work, such as the simple
cooperative behavior, and the frame-rate improvement caused by the software
concurrency.
Photos
You can download zipped JPEG files with all our photos taken in
Stockholm with a digital camera. There are photos from the middle-size
league (
part 1 and
part 2) and
(
mixed).