Software Demonstration
Multiagent bidding mechanishms
for robot qualitative navigation
Carles Sierra
sierra@iiia.csic.es
Ramon López de Màntaras
mantaras@iiia.csic.es
Dídac Busquets
didac@iiia.csic.es
Artificial Intelligence Research Institute (IIIA),
|
The navigation system uses a camera for landmark identification and recognition and has to compete with other systems (i.e. vision system and pilot system) for the control of the camera. This control is achieved through a bidding mechanism.
The navigation system is defined to be a multiagent system where each agent is competent in a particular task. The co-ordination between the agents is made through a common representation of the map. Agents consult the map and suggest changes to it. Other robot systems provide information about the environment -position of landmarks, obstacles, difficulty of terrain...- which is also used to update the map.
The local decisions of agents take the form of bids for services and are combined into a group decision: which set of compatible services to require, and hence gives us a handle on the difficult combinatorial problem of deciding what to do next.
The navigation system has a communication agent that gathers the different bids and determines which one to select at any given time.
The map of the environment is represented by a labelled graph whose nodes represent triangular shaped regions delimited by groups of three non-collinear landmarks and whose arcs represent the adjacency between regions, that is, if two regions share two landmarks, the corresponding nodes are connected by an arc. The arcs are labelled with costs that reflect the easiness of the path between the two corresponding regions. A blocked path would have an infinite cost whereas a flat, hard paved path would have a cost close to zero. Of course these costs can only be assigned after the robot has moved (or tried to move) along the path connecting the two regions. Therefore, the map is built while the robot is moving towards the target. The only a priori assumption is that the target is visible from the initial robot location. Of course, the target can be lost during the navigation and is when the navigation system will need to compute its location with respect to a set of previously seen landmarks whose spatial relation with the target is qualitatively computed both in terms of fuzzy distance and direction.
This demonstration shows how the proposed system works. The simulated environment is an outdoor environment composed of elements such as bridges, rivers, etc. Some of these elements are landmarks that can be recognised by the robot. These landmarks are also the possible targets the robot has to reach. Through the recongnition of these landmarks, the robot will try to reach the target while avoiding any obstacle it encounters, and even if the target is lost, it will use the landmarks to figure out where it should be.
The system is implemented in Youtoo (an implementation of EuLisp, a multi-threaded dialect of Lisp) connected to the Webots simulator. Each agent is executed as an independent thread, and they use shared memory to simulate messages passing.