control the arm manipulator. Then, the architecture
is extended in order to control the mobile arm.
2 AGENTS AND MAS
Computer science evolves from a centralized
architecture (sequential treatments) to a distributed
one (parallel treatments). So, very quickly are
appeared autonomous agents, able to achieve
individual task with no external help. MAS for Multi
Agents Systems try to solve complex problem which
cannot be solved by a unique limited-mind entity
(Ferber, 1995). An agent can be defined as a
autonomous and flexible software entity (Weiss,
1999). An agent must be able to answer environment
changes. An agent has to perceive its environment,
to treat the data and then to act. This is a sensori-
motor loop. Stimuli may come from the inside
(agent itself) or the outside (environment). Action is
performed on the agent (internal states) or on the
environment. Agent behavior is the result of
interaction between the agent and its environment.
It exists three ways to implement agent
behaviors: cognitive, reactive, hybrid. Cognitive
way divides the internal treatment into three parts
perception, planning and action. Agent must have its
own world knowledge. It is able to analyze the
situation, to anticipate and then to plan an action.
Issues of this approach are limited speed and limited
flexibility. It is also inadequate in the case of
unexpected events. Reactive agent locally perceives
its environment (and possibly its internal states) and
deduces immediately actions to be carried out only
from this source of information. This principle is
based on reflex action ((Zapata, 1992), (Wooldridge,
1999)
). Hybrid approach merges the first two agents
a basic reactive behavior with a high cognitive level.
It aims at joining reactivity with thinking and
organization abilities of cognitive agents ((Brooks,
1986), (Chaib-Draa, 2001)).
The objective of multi-agents systems (MAS) is
to bring together a set of agents and to organize
them to reach a high level goal. We can find several
kinds of MAS. There are reactive systems which
bring together agents and then try to get an emergent
behaviour that can solve a higher level problem than
each agent can do. Another type of MAS appeared
with the need of making agents communicate in
order to cooperate (Beer, 1998). Parker (Parker,
1999) uses a central machine which supervises
messages. In this case, supervisor organizes groups
of agents whose competences are different but
necessary to succeed.
Reactive MAS are often used to solve problems
with the help of limited-mind agent having poor
world knowledge and poor action ability. The
objective is to find a social emergent behaviour of an
agent society able to solve a complex problem. For
example, design of ants or bird behaviour uses this
type of approach (Drogoul, 1993). Higher level
MAS are frequently used in mobile robotics,
especially in collective robotics (Lucidarme, 2003).
Systems are based on criteria like gratification,
altruism or cooperation (Lucidarme, 2002). A
complex dialog is implemented between agents. A
high hierarchical level entity is needed to oversee
the task to achieve and to centralize decisions and
communications. The objective is for example to
coordinate several tens of mobile robots transporting
containers on quays (Alami, 1998). Some others
applications are developed for path planning,
including obstacle avoidance (potential fields)
associated with artificial life algorithms
(Tournassoud, 1992), (Mitul). In robotics an
application of MAS is the design of arm manipulator
model. We can find few approaches (Duhaut, 1999)
(Duhaut, 1993), which describe how to reach a
Cartesian position without needing arm inverse
kinematic model. The method seems to be well-
adapted to our case. Each link is implemented like
an agent. Task resolution starts with the link of end
effector. It tries to align itself with the goal and to
place end effector on the goal by uncoupling itself
from previous link. Then, next link does the same
with a new sub goal given previously.
Figure 3 shows the beginning of the recursive
algorithm applied to a 3 DOF arm. Only three steps
are shown in order to illustrate how it works. The
goal is the cross. Initial situation is first step. On step
2, the end effector link rotates virtually and
uncouples itself from the arm to reach the goal. On
step 3, second link rotates and uncouples itself from
the arm to join the end effector link. The main
characteristic of the algorithm is that end effector
link makes bigger rotation than second one and so
on. Arm unfolding is not equally distributed between
each joint.
Figure 1: D. Duhaut approach.
Another use of MAS concerns high level
complex system like fault detection (Guessoum,
1997) or data merging (vision, touch, sound ...). It
often uses neuronal networks or fuzzy rules to find
the more pertinent information. In this case the word
A MULTI AGENT CONTROLLER FOR A MOBILE ARM MANIPULATOR
293