**4. Proposed approach**

According to Ferber (Ferber, 1995), a multi-agent system is composed of:


Basing on this definition, we define our multi-agent system as a set of objects which represent the static objects (have a fixed position) and a set of agents (have a moving position) that represent dynamic objects and the robots. In our model, the principal agent is the "robot". It has its own physical parts including sensors, processors, actuators and communication devices. So, in order to guarantee the safety of the mobile robot, it should be able to navigate by minimising interactions with the other agents navigating in the same space in order to minimise conflict and to achieve a known goal.

This section is organised as follows. We present in subsection 4.1 the perception model of the robot. It allows the robot to perceive its environment in order to take the suitable decision autonomously. In subsection 4.2, we present the kinematic model of the robot. It allows the robot to localise in its environment. In subsection 4.3, we describe the principle of the fuzzy controller technique. In subsection 4.4, we present our fuzzy controllers model. The first controller is described in subsection 4.4.1. It allows the robot to determine its angular velocity. The second controller is presented in subsection 4.4.2. It allows the robot to calculate its linear velocity. We present in subsection 4.4.3 the system rules applied in our fuzzy controllers used to avoid conflict situations.

A Reactive Anticipation for Autonomous Robot Navigation 151

A Fuzzy Controller (FC) is a control system, whose input is the output of the process to be controlled (sensory data, internal state). Its outputs are commands for the actuators of the process. The ranges of the input and output parameters/variables are represented by membership functions and fuzzy sets. In addition, the interactions between input and output variables/parameters are represented by fuzzy rules. In a nutshell, system input parameters and variables are encoded into fuzzy representations using well defined "If/Then" rules which are converted into their mathematical equivalents. These rules would then determine actions to be taken based on Implication Operators such as Zadeh Min/Max (Zadeh, 1973), or Mamdani Min (Mamdani, 1974). The fuzzified data is then put through a defuzzification process via Center of Gravity, Center of Sum or Mean of Maxima methods to

In our work, we use the Mamdani fuzzy inference methodology in order to provide the adequate way of modelling the relevance of the controller. For the defuzzification process we choose the Center of Gravity method by applying the formula 1. The crisp value U\* is the geometrical center of the output fuzzy value µ(y), where µ(y) is the union of all the contributions of rules whose Degree Of Freedom (DOF) is more than zero, y is the universe

> ∑ μ(y)×y <sup>b</sup> i=a ∑ μ <sup>b</sup> i=a (y)

The use of fuzzy logic in the design of autonomous navigation behaviours is nowadays quite popular in robotic. The set of behaviours that are being implemented can include, for example, the following of walls, corridors or the avoidance of obstacles. However, usually the existing fuzzy logic methods use only the distance between the robot and the obstacle in

We propose a fuzzy model for the navigation in dynamic and uncertain environments based on"the nature" and "the velocity" of obstacles. For example, if there is an obstacle in front of the robot, it is more logical to reason about its velocity. In fact, the distance between the robot and the obstacle allows it to immediately change the trajectory without taking into account the obstacle nature (mobile or static) and whether the obstacle is going in the same

(1)

U\* =

**4.4 The principle of the behaviour controller based on Fuzzy Logic** 

order to avoid conflicts and so deal with static environments.

Fig. 2. Robot's kinematic model.

obtain actual commands for the actuators of the process.

of discourse and b is the number of samples.

**4.3 The fuzzy controller** 
