of most complex navigation tasks. The attentional mechanism provided to VGP en-
dows it with inner dynamic loops that take care of target detection, recognition,
searching and tracking, lost target recovery and unexpected obstacle detection. In
addition, these features are the result of parallel activities that get serialized to gain
access to the orientable cameras.
When VGP activates, two activities take place simultaneously: a target landmark
is downloaded to the attentional system through a TS, and another TS is activated to
detect potential obstacles in front of the robot. Both TS's are coordinated in a very
basic way by the VGP to achieve the current goal. The law to follow is hierarchical:
“if there is free way, approach the target”. First, the landmark TS activates to search
the target. Once it is fixated, the obstacle TS activates to locate potential hazards in
the course towards the detected landmark. If the near space is free of obstacles, the
cameras will search again the landmark and the base of the robot will reorient to-
wards the gaze direction and start moving forward. Then again, the obstacle TS will
use its short term spatial memory representation and covert attention capabilities to
gaze towards any close enough obstacle in the way. If it happens, the base will reori-
ent in a direction perpendicular to the pan angle in order to avoid the nearest obstacle.
Once the danger is over, the landmark TS will regain control to relocate the target and
establish a new heading direction. This alternating dynamics keeps going on until the
goal landmark is within some specified distance and orientation.
Several kinds of attention can be observed in the last example. When the obstacle
TS chooses a target to attend to, it performs overt attention on the obstacle so avoid-
ance based on pan angle can take place. But when the landmark TS is waiting, it per-
forms covert attention on the target so it can be quickly fixated again when it gets
activated. In a similar way, we can speak about bottom-up and top-down attention.
ROI's detected by the VP drive attention in a bottom-up way selecting those areas of
the image most informative. From this set, a few are chosen attending to task de-
pendent constraints such as target landmark or specific known geometric properties of
obstacles.
5 Experiments
The visual attention system has been tested in a threaded mobile robot endowed with
a stereo vision head. It encloses five degrees of freedom with digital PID controlled
servos and two ISight Firewire cameras (figure 2). This type of robots has been de-
veloped in our Laboratory and is widely used in prototyping and algorithm testing.
The architecture of components just described runs on a local cluster of com-
puters. Each process is an independent C++ application, which includes Ice objects
and proxies to communicate with other processes. An Ice object is an entity used by a
server to respond to client requests. An Ice proxy represents an Ice object local to the
client that can communicate remotely to the server. Ice provides a remote method
invocation capability that can use both TCP and UDP as the underlying protocol. In
our current implementation, the network of processes is distributed among four
physical processors – dual Opteron board for VP, HC and BC; 3GH-HT P4 for VC,
TC and RM; and AMD64 dual core for CC, SC and TS- as seen by the Linux operat-
110