Developing a Multi-Agent Fuzzy-based Control Architecture
for Autonomous Mobile Manipulators
Mohamed Ayoub Messous
1
, Abdelfetah Hentout
1
, Saliha Oukid
2
and Brahim Bouzouia
1
1
Division of Computer-Integrated Manufacturing and Robotics (DPR),
Centre for Development of Advanced Technologies (CDTA), BP 17, Baba Hassen, Algiers 16303, Algeria
2
Research Laboratory for the Development of Computerized Systems (LRDSI), University Saad Dahleb of Blida (USDB),
BP 270, Blida 09000, Algeria
Keywords: Multi-Agent Systems, Fuzzy Logic, Mobile Manipulators, Control Architectures.
Abstract: Controlling a robotic system, while reaching a certain degree of autonomy and complexity, is carried by the
establishment of its control architecture. The control process is intended through achieving general goals
and/or reacting to changes of the environment. An autonomous robot is required to meet some design
specifications and behavior requirements: its reactivity to environment change, its reliability and its fault-
tolerance, etc. However, A control architecture of a robot must ensure that the robot will achieve, in real-
time, its tasks despite all the constraints. The control is required to be reactively fast but also thorough,
while maintaining some properties such as stability and robustness. The main objective we are intending to
achieve is to design our own approach for autonomous control of mobile manipulators. The expected
approach is meant to be thorough and generic as possible. It should offer a real-time reactive response,
while maintaining a fault-tolerance capabilities and a robust control.
1 STAGE OF THE RESEARCH
Throughout the literature, there has been a
substantial effort devoted to autonomous control of
mobile manipulators. The resulted works brought up
different control approaches based on different
techniques and practices.
As a part of a research project intended for the
control and supervision of mobile manipulators for
the telerobotics in a constrained environment, we
are working on the development of a novel generic
architecture for autonomous control of such robots.
The suggested approach is based on Fuzzy-Logic
Reasoning for the cognitive part. The
implementation is done through a Multi-agent
System scheme.
2 OUTLINE OF OBJECTIVES
Controlling a robotic system (mobile, manipulator or
mobile manipulators), while reaching a certain
degree of autonomy and complexity, is carried by
the establishment of its control architecture. The
control process is intended through achieving
general goals and/or reacting to the changes of the
environment.
An autonomous robot is required to meet some
design specifications and behavior requirements
such as reactivity to environment changes, reliability
and fault-tolerance, etc. However, a control
architecture of a robot must ensure that the robot
will achieve, in real-time, its tasks despite all the
internal and external constraints. The control is
required to be reactively fast but also thorough,
while maintaining some properties (stability,
robustness, etc.).
The main objective we are intending to achieve
is to design our own approach for autonomous
control of mobile manipulators. The expected
approach is meant to be thorough and generic as
possible. It should offer a real-time reactive
response, while maintaining a fault-tolerance
capabilities and a robust control.
3 RESEARCH PROBLEM
A mobile manipulator is constituted by uniting two
disjointed mechanical sub-systems, the mobile base
15
Messous M., Hentout A., Oukid S. and Bouzouia B. (2013).
Developing a Multi-Agent Fuzzy-based Control Architecture for Autonomous Mobile Manipulators.
In Doctoral Consortium, pages 15-22
DOI: 10.5220/0004638000150022
Copyright
c
SciTePress
and the manipulator. Each one has its own features
and offers different capabilities. The coupling of
these two heterogeneous parts has the benefit of
combining the mobile base locomotion with the
manipulation capabilities of the manipulator. The
resulted system will have an enlarged accessible
workspace and numerous new features. However,
this alliance increases the complexity of the control
process and path planning, especially for tasks that
require an imposed trajectory for the end-effector of
the robot. In such a case, infinity of configurations
for both mobile base and manipulator are possible.
4 STATE OF THE ART
A control architecture design should meet defined
requirements. The existing research experience, so
far, seems to have not figured out a definitive
paradigm for the distribution and/or coordination of
the functionalities required for all the autonomous
robots (Medeiros, 1998).
In the literature, numerous studies have focused
on proposing control architectures for mobile
manipulators. Each proposition gives a specific way
to solve the control problem. Some approaches
provide a total decoupling between the different sub-
systems constituting a mobile manipulator. While
performing a task that requires the involvement of
the two sub-systems, the control process is carried
out sequentially among the two disjoined entities.
There are, also, models for synchronizing the control
of the mobile base and the manipulator.
To achieve the operations and the tasks that the
robot must perform, each designer uses his own
approach. This latter involves the deployment and
the structuration of the internal functions to achieve
the final objectives assigned by a higher-level
operator.
In the following section, we present a review of
the main control approaches for autonomous robots,
discuss their major properties and propose a
classification into two different classes depending on
the techniques used for controlling the robot.
4.1 Classical Control Approaches
Considered as classical, this first class is based on
the study of mathematical models for both
mechanical sub-systems (manipulator and mobile
base). Controlling a mobile manipulator consists of
computing the motion of the manipulator joints and
that of the mobile base. For this aim, the study of
both Direct and Inverse Kinematic Models of the
robot is needed.
Using the mathematical models to control mobile
manipulators produces good and accurate results,
and offers a fairly exact control for repetitive tasks
in controlled and known environments (industrial
robotics for example). In this case, when the robot is
required to repeat a trajectory thousands of times,
very complicated computation of these models is
done, in most cases, off-line with the ability to
optimize path covered, energy consumption, time
spent, etc. while performing a task. However, some
robotic environments using mobile manipulators are
not completely known but, in contrast, evolutionary.
Which could result to a very poor performances in
real-time control, due to the computational resources
needed to come out with a response in a limited time
period. Besides, it must be noted that classical
approaches have the disadvantage of computing time
which is quite important depending on the high
number of degrees-of-freedom of the robot,
especially in frequently-changed and not completely
known environments. According to Brooks (Brooks,
1986), traditional robotics seems unable to deliver
real-time performances in a dynamic world.
Moreover, it should be noted that the methods
used for computing the Direct Kinematic Models
represented generic rules, whereas the computation
of the Inverse Kinematic Models were constructed
according to the mechanical structure of the robot.
Finally, these models don’t tolerate any change in
the mechanical structure of the robot (malfunction of
one or more joints of the manipulator for example)
without adding specific modes for failures treatment.
When a fault occurs, the possibility of offering a
minimum service until repairing the breakdown is an
important element of the Quality of Service
(Delarue, 2007).
4.2 Multi-Agent Fuzzy-based Control
Approaches
When working with complex problems with large
dimensions, the resolution of control problems for
mobile manipulators is very difficult using
traditional mathematical models. Several approaches
have described the process allowing the end-effector
of such a robot to reach a Cartesian position in its
workspace, without using the Inverse Kinematic
Model or differential-equation solvers. Some of
these works can be found in (Duhaut, 1999); (Erden,
2004); (Colle, 2006), etc.
ICINCO2013-DoctoralConsortium
16
4.2.1 General Principle
Multi-agent and Distributed Artificial Intelligence
Techniques offer simple solutions (Colle, 2006).
Each joint is implemented as an agent. Every agent
tries to align the position of the end-effector of the
robot with that of the target, while being
independent of the motions and positions of the
other joints, and with no prior knowledge of the
actions of the other agents. By acting recursively,
the other agents controlling the other joints try to do
the same job. A global behavior can emerge,
consequently, from all the local agents which will
satisfy the desired objective (reaching the desired
position).
In contrast to classical control approaches, Multi-
agent Approaches offer methods that use the agent
paradigm by proposing a decomposition of the robot
control into a set of distinct agents. The Multi-agent
Approaches benefit of all the advantages of
distributed problem solving. The Multi-agent System
perspective made it possible to consider the
architecture as a compound of simpler modules,
which gave way to easier design of the whole
system. In addition, the need for massy
mathematical models, Inverse Kinematic Models and
differential-equation-solutions is overcome.
Therefore, there is a considerable decrease in design
effort and computation time compared to classical
approaches. Moreover, with such a usage of Multi-
agent Systems, the control architecture is more
flexible to be applied to any robot (Erden, 2004).
To solve a complex problem, a Multi-Agent
System can emerge a global behavior using several
agents. Each of these latter has a confined
knowledge and limited actions ability. Fuzzy Logic,
Neural Networks and/or Genetic Algorithms
associated with Multi-agent Systems, can provide
high-level control for complex systems
(Tournassoud, 1992); (Guessoum, 1997).
4.2.2 Fuzzy-Logic Control
Fuzzy Logic is a mathematical formulation that
copes with uncertainty in information (Klir and
Folger, 1992). Fuzzy control has proven to be a
successful control approach to many complex non-
linear systems or even non-analytic ones. It has been
suggested as an alternative approach to conventional
(classical) control techniques in many situations
(Precup and Hellendoornr, 2011). Such a control is
characterized by the use of linguistic rules to
manipulate and implement human knowledge in
control systems so as to handle the uncertainty
present in the environment (Passino and Yurkovich,
1998).
4.2.3 Advantages of Multi-Agent
Heuristic-based Control Approaches
Multi-agent Heuristic-based Control Approaches
don’t require the precise mathematical model of the
robot to be controlled. However, if the model exists,
it can be used for the simulation and for the test of
the control strategy. The main advantages of such
controllers are given as follows (Godjevac, 1995);
(Singh, 2008):
No need to have a mathematical model of the
robot (data is either unavailable, incomplete or
the process is too complex).
It is possible to implement expert-human
knowledge and experience using comprehensible
linguistic rules.
Thanks to dedicated processors, it is possible to
control fast processes.
Such techniques allow building robust and
smooth controllers starting from heuristic
knowledge and qualitative models.
These approaches allow considering imprecise,
vague and unreliable information; and
integrating symbolic reasoning and numeric
processing in the same framework.
Throughout our literature study, the objective of all
the reviewed works we referred to was to test the
performances of the multi-agent heuristic-based
design of control approaches in simulation.
Moreover, all the studies were applied on a simple
case of a service mobile manipulator undertaking a
specific task in two-dimension workspace.
Unfortunately, to our knowledge, no works were
done on real physical robots in three-dimension
space.
5 METHODOLOGY
The design phase of a control architecture is the
most strategic one for the development of a
controller. However, it is necessary to understand
and to identify the needs to design and implement
the approach in a proper manner. With the
increasing complexity of architectures, using a
development methodology is very necessary.
Nevertheless, the absence of such a methodology
covering the whole life cycle of a Multi-agent
System makes the task very difficult and complicated
(Hentout, 2008). The Multi-agent Approach poses,
DevelopingaMulti-AgentFuzzy-basedControlArchitectureforAutonomousMobileManipulators
17
Figure 1: Structure of the Multi-Agent System package.
moreover, the problem of the management and
control of agents and their shared resources. A
constraint that should not be overlooked when
designing such a control system is the lack of
information. This lack is mainly due to the
measurement errors delivered by the physical
sensors of the robot.
The combined use of Fuzzy-Logic Reasoning
with Multi-agent Approach has the benefit of
offering a Distributed Fuzzy Control System with
smaller fuzzy sub-systems instead of one big
centralized fuzzy system. Therefore, adopting an
architecture/approach is a technological problem for
the designer, who is supposed to consider the
required degrees of reactivity, intelligent behavior
and the related implementation cost. The type of the
robotic system, its technical specifications and the
required level of autonomy are the most important
constraints while designing a novel approach.
Typically, the differences are the ease with which
approaches can be developed, and the efficiency
with which tasks can be achieved.
The control architecture we are developing is
meant to be as generic as possible. It is intended to
fulfill a list of requirements and specifications
related to autonomous control of mobile
manipulators. Some of which are robustness and
fault-tolerance, programmability, extensibility and
scalability:
Robustness is proven through the ability of the
fuzzy-logic reasoning to handle imperfect inputs.
Fault tolerance is guaranteed with the aptitude,
of the used Multi-agent System, to handle
unexpected events and sudden malfunctions.
These latter will be countered via the possibility
of offering a minimum service functionalities in
case of one or more joints of the manipulator
break down.
Thanks to a scalable structure and a modular
design, new features can be developed and added
progressively without modifying the existing
ones.
5.1 Presentation of the Control
Architecture
Our work is dedicated to develop a novel control
architecture for autonomous mobile manipulators
using a Multi-agent fuzzy-based control approach.
This architecture is responsible for controlling the
robot while sharing the control of the heterogeneous
sub-systems.
The implementation of the control architecture is
being done by using Java Netbeans 7.0.
Furthermore, for the implementation of the fuzzy-
based part, we are using the open source library for
fuzzy systems jFuzzyLogic developed by (Cingolani
and Alcala-Fdez, 2012) and available from
jfuzzylogic.sourceforge.net.
Choosing the suggested model is justified by the
generic nature of the proposed agent models and by
the possibility of integrating the whole in a modular,
more general, robotic system.
We refer to each agent as a separate Thread. In
addition, we propose the use of two distinguished
types of agents as showed in Figure 1 (i)
SystemAgents and (ii) ControlAgents. Both of which
has a distinctive purpose. More details are given in
the following sub-sections.
5.1.1 System Agents
This first type of agents is more complex than the
ControlAgent
ICINCO2013-DoctoralConsortium
18
second one. The agents of this type inherit from the
SystemAgent class. They all belong to the same
package, SystemAgents, and have the same outline
structure. They are meant for the processing and
tuning of data issued from the different sensors
equipping the robot.
Such agents may comprise several features
regarding the control process. The modules we
propose are (i) Module of Vision, (ii) Module of
Localization of the robot in its environment and (iii)
Module of Localization of the targets. However, this
list of modules is not thorough. Other modules may
be proposed and integrated progressively into the
control architecture.
5.1.2 Control Agents
Inheriting from the ControlAgent class, the agents of
this type are regrouped in the RobotAgents package.
As its name suggests, a ControlAgent is dedicated to
the control process itself. Each agent is assigned to
control one mechanical sub-system, which can be
either the mobile base or one of the joints
constituting the manipulator.
Figure 2: Composition of the ControlAgents.
The set of control agents are brought together to
reach a high-level goal. An emergent behavior is
arisen (using reactive agents with poor own world
knowledge) which overall can solve a higher-level
problem than each agent, by itself, can achieve. The
composition of the ControlAgents is given in Figure
2.
Through our study, we are more interested by
this type of agents. Such an agent produces the
control instructions directed to its respective
controlled sub-system (mobile base or manipulator).
The cognition part is ensured by using fuzzy-based
modules, called Fuzzy Controllers.
A fuzzy controller is the entity offering the
intelligence of the system. It is based upon a Fuzzy
Inference System, which compute the entries of a
fuzzified values of linguistic variables through a set
of fuzzy-logic rules. A fuzzy controller produces, as
an output, the deffuzified values for the
corresponding velocity (rotation and translation
velocity of the mobile base, angular velocities of the
joints of the manipulator).
A ControlAgent is designed using one or more
fuzzy controllers.
5.1.2.1 BaseAgent
Figure 3 shows a synoptic structure for the
BaseAgent where:
(X
T
, Y
T
, Z
T
): it represents the operational
coordinates of the target to be reached by the
end-effector of the robot.
(X
E
, Y
E
, Z
E
): it is the current position of the end-
effector of the robot.
(Dist
1
, …, Dist
n
): they represent the distances
separating the mobile base to obstacles (1, …, n)
present in its environment.
E_angle: it represents the computed angular error
between the current position of the end-effector
and the desired target to be reached.
E_distance: it is the distance error between the
current position of the end-effector and the final
target.
BaseAgent is composed of two fuzzy controllers (i)
RotationFC and (ii) TranslationFC. They control,
respectively, the rotation and translation velocities of
the mobile base.
The intended scheme is considered as a generic
structure of a higher-level abstraction, which would
be applicable to most mobile base systems.
However, a lower-level middle-layer will be
implemented for each specific mechanical structure
of a mobile base. It should be declared that obstacles
avoidance capabilities will be implemented and
fitted into the BaseAgent.
5.1.2.2 JointAgent
JointAgent is a reactive agent dedicated for
controlling one of the manipulator joints. Each
JointAgent is composed of one fuzzy controller that
assures the velocity control output of the
corresponding joint. Figure 4 gives a synoptic
ControlAgent
DevelopingaMulti-AgentFuzzy-basedControlArchitectureforAutonomousMobileManipulators
19
Figure 3: A synoptic scheme for the internal structure of the BaseAgent.
Figure 4: Inner synoptic structure for the JointAgent.
scheme for this kind of ControlAgents where:
(Joint
i
, …, Joint
l
): they are the other joints of the
manipulator related to the current controlled
joint. They are defined as the joints that affect
the position of the end-effector in a mutual way,
i.e., the movement of one of the related joints
influences, more or less, the traveled path of the
end-effector in the same way.
5.1.3 Fuzzy Controllers
The two following figures (Figure 5 and 6) illustrate
some examples of the used Fuzzy Membership
Functions of the different controllers of the
BaseAgent:
In figure 5, the two first Fuzzy Membership
Functions represent the entries of the
RotationFuzzyController. They are respectively
(i) E_angle and (ii) E_distance. The third
function is the deffuzified output which
represents the Rotation Velocity value of the
BaseAgent.
Figure 5: Fuzzy membership functions of the
RotationFuzzyController for the BaseAgent.
ICINCO2013-DoctoralConsortium
20
RULE 1: IF E_angle IS left_big AND E_distance IS far THEN
RotationVelocity IS fast_left;
RULE 2: IF E_angle IS left_big AND E_distance IS near THEN
RotationVelocity IS slow_left;
RULE 3: IF E_angle IS right_big AND E_distance IS far THEN
RotationVelocity IS fast_right;
RULE 4: IF E_angle IS right_big AND E_distance IS near THEN
RotationVelocity IS slow_right;
RULE 5: IF E_angle IS zero THEN
RotationVelocity IS null;
RULE 6: IF E_distance IS very_near THEN
RotationVelocity IS null;
RULE 7: IF E_angle IS left_small AND E_distance IS far THEN
RotationVelocity IS slow_left;
RULE 8: IF E_angle IS right_small AND E_distance IS far THEN
RotationVelocity IS slow_right;
Figure 8: Rules-Block used for the RotationFuzzyController.
Likewise, Figure 6 represents the two inputs (i)
E_angle and (ii) E_distance, and the output,
Translation Velocity, for the
TranslationFuzzyController of the BaseAgent.
Figure 6: Fuzzy membership functions of the
TranslationFuzzyController for the BaseAgent.
5.2 Presentation of the Control
Approach
The objective set for the ControlAgent is to move
the end-effector of the robot as close as possible to
the desired goal, while considering that all of the
other ones as stationary.
The Control Agents, in our approach, implement
this simple reactive behavior in a parallel way based
on their local knowledge. They are autonomous and
independent with, as a criterion, a local distance
minimization. A global emerging behavior will arise
satisfying the main objective.
Every single ControlAgent admits as an entry the
computed value of the current position of the end-
effector of the robot computed by using the Direct
Kinematic Model of the manipulator. Each agent,
also, needs the current position of the target in order
to compute E_distance and E_angle. Furthermore,
each JointAgent requires, besides the current
position of the controlled articulation and the instant
positions of all its related joints.
In figure 7, each agent is supposed to know the
position of the end-effector and the influence of its
movement according to the target position in a three-
dimensional workspace.
Figure 7: Four Parallel JointAgent extent (Delarue, 2007).
The position of the end-effector, in our case, is
computed by using the Direct Kinematic Model.
However, our approach will, also, work with other
external modules for computing the instant positions
of the end-effector by using, for example, cameras,
laser measurement sensors, etc.
The cognitive effort throughout the proposed
approach is contained within the fuzzy-logic rules,
which are inserted in the fuzzy inference system of
each fuzzy controller. The following figure (Figure
8) shows a narrow example from the set of rules
used in the RotationFuzzyController.
DevelopingaMulti-AgentFuzzy-basedControlArchitectureforAutonomousMobileManipulators
21
6 EXPECTED OUTCOME
Based on Artificial Intelligence techniques used for
problem solving, we proposed a novel control
architecture for autonomous mobile manipulators.
The control process is mainly distributed on several
concurrent agents, with independent behaviors,
combining reactive and deliberative capacities. This
class provides an alternative to the use of
mathematical models to control such robots. It offers
results that approximate human behaviors, and
improves tolerance to certain faults and mechanical
failures. Throughout this paper, we have reviewed
some recent research works which proposed
interesting models for the control of autonomous
mobile manipulators.
The future works tends to achieve a thorough
testing for the proposed approach in different
scenarios. In addition, a comparison of the obtained
results should be made with the existent control
architectures.
REFERENCES
Brooks, R. A., 1986. “A robust layered control system for
a mobile robot”, IEEE Journal of Robotics and
Automation RA, 2(1), pp. 14-23.
Cingolani, P., Alcala-Fdez, J., 10-15 June 2012.
jFuzzyLogic: A Robust and Flexible Fuzzy-Logic
Inference System Language Implementation, The
IEEE World Congress on Computational Intelligence
(WCCI 2012), Brisbane, Australia, pp. 1090-1097.
Colle, E., Nait-Chabane, K., Delarue, S., Hoppenot, P., 7-9
June 2006. “ARPH: Comparaison d’une méthode
classique et d’une méthode utilisant la coopération
hommemachine pour exploiter la redondance de
l’assistant robotisé”. The 4
th
Conference
HANDICAP2006, France.
Delarue, S., Hoppenot, Ph., Colle, E., 9-12 May 2007. “A
Multi Agent Controller for a Mobile Arm
Manipulator”. The 4
th
International Conference on
Informatics in Control, Automation and Robotics
(ICINCO2007), Angers, France.
Duhaut, D., 1999. “Distributed Algorithm For High
Control Robotics Structures”. International
Conference on Artificial Intelligence, Vol. 1, pp 45-50.
Erden, M. S., Leblebicioglu, K., Halici, U. 2004. “Multi-
agent System-Based Fuzzy Controller Design with
Genetic Tuning for a Mobile Manipulator Robot in the
Hand Over Task”, Journal of Intelligent and Robotic
Systems, 39(3), pp. 287-306.
Guessoum, Z., April 1997. “A Hybrid Agent Model: a
Reactive and Cognitive Behavior”. The 3
rd
International Symposium on Autonomous
Decentralized Systems (ISADS’97), Germany, pp. 25-
32.
Godjevac, J., February 1995. “Comparative study of fuzzy
control, neural network control and neuro-fuzzy
control”, Technical report n° 103/95, Federal
Polytechnic School of Lausanne, Computer Science
Department.
Hentout, A., Bouzouia, B., Toukal, Z., 09-12 March 2008.
“Modeling of Agent-based Architecture for Driving
Mobile Manipulator Robots”. The International
Conference on Distributed Human-Machine Systems
(DHMS 2008), Greece.
Klir, G. J., Folger, T. A., 1992. “Fuzzy Sets, Uncertainty,
and Information”, Upper Saddle River, NJ: Prentice-
Hall.
Medeiros, A. A. D., April 1998. “A Survey of Control
Architectures for Autonomous Mobile Robots”,
Journal of the Brazilian Computer Society, 4(3),
Campinas.
Precup, R.-E., Hellendoorn, H., 2011. “A survey on
industrial applications of fuzzy control”, Computers in
Industry, 62(1), pp. 213-226.
Passino, K. M., Yurkovich, S., “Fuzzy Control”, Menlo
Park, CA: Addison-Wesley, 1998.
Singh, M. K., Parhi, D. R., Bhowmik, S., Kashyap, S. K.,
1-6 October 2008. “Intelligent Controller for Mobile
Robot: Fuzzy Logic Approach”, The 12
th
International
Conference of International Association for Computer
Methods and Advances in Geomechanics (IACMAG),
Goa, India.
Tournassoud, P., September 1992. “Planification et
contrôle en robotique: Application aux robots mobiles
et manipulateurs”, Hermes Sciences Publications.
ICINCO2013-DoctoralConsortium
22