Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
4 views8 pages

Fuzzy Knowledge Based Controller Design

This study presents a fuzzy logic controller designed for mobile robot navigation, which effectively manages uncertainty from environmental data gathered by ultrasonic sensors. The controller enables real-time decision-making for collision avoidance and optimizes travel time without prior knowledge of the terrain. Experimental results demonstrate the controller's capability to guide the robot safely through unknown static environments.

Uploaded by

vijay
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views8 pages

Fuzzy Knowledge Based Controller Design

This study presents a fuzzy logic controller designed for mobile robot navigation, which effectively manages uncertainty from environmental data gathered by ultrasonic sensors. The controller enables real-time decision-making for collision avoidance and optimizes travel time without prior knowledge of the terrain. Experimental results demonstrate the controller's capability to guide the robot safely through unknown static environments.

Uploaded by

vijay
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Expert

Systems
with
Applications
E LS EVI E R Expert SystemswithApplications 14 (1998) 179-186

Fuzzy knowledge-based controller design for autonomous robot


navigation
Marc Boumedine Montaner* and Alejandro Ramirez-Serrano
lnstituto Tecnol6gico y de Estudios Superiores de Monterrey, Campus Ciudad de M~xico, Calle del Puente 222, Tlalpan 14.380,
Mdxico D.F., M~xico

Abstract

In this study a fuzzy logic controller for mobile robot navigation has been designed. The designed controller deals with the
uncertainty and ambiguity of the information the system receives. The technique has been used on an experimental mobile robot
which uses a set of seven ultrasonic sensors to perceive the environment. The designed fuzzy controller maps the input space
(information coming from ultrasonic sensors) to a safe collision-avoidance trajectory (output space) in real time. This is
accomplished by an inference process based on rules (a list of IF-THEN statements) taken from a knowledge base. The technique
generates satisfactory direction and velocity maneuvers of the autonomous vehicle which are used by the robot to reach its goal
safely. Simulation and experimental results show the method can be used satisfactorily by wheeled mobile robots moving on
unknown static terrains. © 1998 Elsevier Science Ltd. All rights reserved

I. I N T R O D U C T I O N disadvantage of such algorithms, developed so far, is that


they typically relay on exact information obtained by a
Robots have been used for specialized tasks such as
large number of sensors to reduce the ambiguity of the
couriers in offices, hospitals, security, undersea and
data, increasing the cost of the machine. Recently,
underground exploration, space exploration, and many
Beaufrere & Zeghloul (1995) developed a fuzzy logic
other kinds of tasks too risky for human beings. The
controller using information from a few ultrasonic range
design of a autonomous robot is a complex task and the
proximity sensors to control the navigation of mobile
criteria of success are evaluated in terms of its capabil-
robots in dynamic environments. Their approach reduces
ities to make decisions and to act by itself in a reliable
the large quantity and variety of sensors usually used in
and satisfactory manner. Robot navigation has been
autonomous vehicles and at the same time handles
studied extensively in the past, employing different
uncertain and noisy data. The problem with their
approaches (Lozano-Perez & Wesley, 1979; Bouchon &
approach is that they do not control the robot's velocity,
Despres, 1987; Doshi et al., 1988; Lumelsky et al., 1990;
which has not been addressed by many researchers, and
Barshan & Durrant-Whyte, 1995; Beaufrere & Zeghloul,
consequently it does not optimize the travel time of the
1995; Kundur & Raviv, 1995); however, the navigational
robot from one point to another. To fulfill this need it will
problem becomes extremely complex when the robot has
be useful to reduce the travel time as well as the distance
to deal with unknown environments and ambiguous
traveled by developing a device to control the velocity as
imprecise environment information in real time (Surman
well as addressing the problem of imprecise and
et al., 1995; Freund & Hayer, 1988). For many years,
uncertain information. In unknown environments opti-
researchers have tried to develop navigation algorithms
mal navigation distance is unknown, and therefore,
to deal with the inherently imprecise information
cannot be formally optimized. However, travel time can
received from sensors. The majority of such algorithms
be reduced by controlling the robot's velocity.
include maps of the terrain and consider exact informa-
This study presents the steps for designing a fuzzy
tion from sensors. Only few of them are suitable to be
logic controller for a mobile robot called MOBIROB.
used in unknown terrains (without maps). One main
The controller will guide MOBIROB from an initial
position to a final position (goal), without any prior
* Author for correspondence. knowledge of the environment and in the shortest

0957-4174/98/$19.00 Copyright© 1998 ElsevierScience Ltd. All rights reserved.


PII S0957-4174(97)00059-6
180 M. B. Montaner and A. Ramirez/Serrano / Expert Systems with Applications 14 (1998) 179-186

possible travel time. To simplify the explanation, we Obstacle ( ~ aobot's ]


suppose that the environment consists of static objects.
(Xo,Yo) ~s _, jp.xaxts .............. |
The controller will have to build a plan for a collision- Mobile . / ' L v! ~<:~ ......... ~ - 0 /
free path at the run time. The procedure or the planning .. Robot ~ . . . . o . - ~ ....... \ t~J ~::;::::III~3 I
algorithm has to make real-time decisions such as speed
up, turn left, slow down, halt, etc., to reliably reach the
goal.
This paper is organized in five sections. In Section 2, (Xp,yp) ~ ( X g ,yg )
we present the motivation for choosing fuzzy knowl- Goal
edge-based control of the movements of our robot.
FIGURE 2. Geometric configuration of the navigation prob-
Section 3 describes the fuzzy knowledge-based archi- lem of a mobile robot.
tecture. Simulation and experimental results are
discussed in Section 4. Finally, Section 5 gives a
summary of our technique and presents future directions independently observed and analyzed by the controller.
to extend and improve our results. For each sensor a direction and velocity vector is
obtained by the fuzzy controller. Seven direction and
2. M O T I V A T I O N F O R U S I N G F U Z Z Y - B A S E D seven velocity vectors are obtained. These vectors are
KNOWLEDGE expressed with respect to the robot's longitudinal (X-
axis) and transversal (Y-axis) axes (see Fig. 2). The final
MOBIROB can be defined as a programmable wheeled
direction carried out by the robot is obtained by a simple
device whose decisions for reaching a target goal are
summation over the previously seven direction vectors
guided by ultrasonic sensors. To be able to navigate, the
obtained. In narrow corridors, for example, the con-
mobile robot has to obtain information about its
troller, based on the left-sensor information, will
surroundings. A first step in the navigation control
command the robot to go to the right (avoiding the left
process for mobile robots is the detection of obstacles
wall). At the same time, based on the right sensor
that may damage the robot. In this case, our mobile robot
environment information, the controller will command
only obtains information that is in front of the vehicle
the vehicle to go to the left (avoiding the right wall).
(we only consider forward velocities). However, the
Similar commands (direction vectors) will be obtained
system can be easily extended to include backward
for each of the remaining sensors. Adding all (seven)
velocities, as explained later in the paper. Environment
direction vectors obtained by the controller, a final
information is obtained by a set of seven ultrasonic
direction command is sent to the robot. In the narrow
sensors mounted on top of the robot (see Fig. 1). The
corridor, for example, the robot will try to move away
information obtained via the sensors is the relative
from the walls, and at the same time it will try to move
position of the obstacle expressed in the two robot polar
toward the goal. In this sense, direction vectors can be
coordinates Pos=(D,O), where D is the distance and 0 is
seen as rejection (from obstacles) and/or attraction (to
the angular direction of the obstacle. The seven parame-
the goal) vectors.
ters Pos (one for each sensor) are used to determine the
For the velocity case, the robot's velocity is based on
future velocity and direction of the robot, so avoidance
how far obstacles are detected from the robot. If objects
maneuvers can be taken. The environment data obtained
are detected near (far from) the robot, no matter which
by the sensors (distance and orientation of the obstacles)
sensor detected the obstacle(s), a small (large) velocity
is analyzed by the robot, whose controller will make
command will be send by the fuzzy controller to the
simple and fast decisions at run time. robot. For safety reasons the smallest of the seven
Each Pos = (D,0) parameter obtained by each sensor is
velocity vectors is used as the final velocity. The
magnitudes of all direction and velocity vectors are
-98° .70o proportional to the distance of the obstacle detected:
Obstacle
direction-vectori= adi, velocity-vectori =/3di, where
los = (D, 0) i= 1,2 .... ; the number of sensors, d~ is obtained from the
~ -14° Pos=(D,0) parameter, and ce and /3 are proportional
'safety' constants with a value of unity.
Using this approach to direct the robot in a safe way to
its goal point, the system can be easily expanded by
L_....~J

980 70v
42°
adding sensors on other parts of the robot (i.e. rear) and
extending the knowledge base incorporating rules for
a) b) such new sensors. Sensors can be added until an
FIGURE 1. (a) Area of perception for the seven ultrasonic
omnidirectional perception of the environment is
sensors. (b) Obstacle detected at distance D and at angle 0 achieved. However, more sensors imply more computing
(both relative to the robot) by one of the ultrasonic sensors. time will be needed to obtain the final direction and
M. B. Montane r and A. Ramirez/Serrano / Expert Systems with Applications 14 (1998) 179-186 181

velocity commands. Therefore, a trade-off between variables (x~.... ~x,) such as the distance of the robot from
environment perception and computing time must be an obstacle, the velocity of the robot, the error angle, etc.
made for the robot to properly react in real time as The solution of the control problem is to define for each
perception of the environment constantly changes. output variable Yi, i=1 ..... m, a control function )6.
The sensors used on MOBIROB are Polaroid electro- X~x...xX,---*Y~ that assigns to each input tuple
static transducers controlled by a 68HC 11 (Xl.... ,x,) e X l X . . . x X , its adequate output yi=x(X~ ..... x,).
microcontroller. The sensors can detect objects between To model how the robot will behave a controller can
the range of 0.15 and 10.5 m. The microcontroller be designed using classical methods such as differential
determines the distance of each detected obstacle equations. Although mathematical models are well suited
according to the signal received by each electrostatic for obtaining an exact solution to problems where all
transducer. All seven sensors work and behave in the necessary information is available, it is extremely
same manner regardless of their position. This simplifies difficult to specify an accurate model of the robot
the analysis of the environment and the construction of behavior for responding efficiently to hazards without
the system. To avoid crosstalk between the sensors, intensive and complex computational processes.
transducers are fired (send a ping signal) in a sequence Alternative approaches have been explored, based on
such that the next sensor to be fired is as much as human knowledge, to make decisions more efficiently.
possible in a perpendicular line from the previous fired Human knowledge can satisfactorily deal with such
sensor. The following is the firing sequence used in the information in an efficient manner. For instance, humans
study: left-sensor ( - 98°: - 70°), front-sensor can drive a small car without knowing the exact
(-14°:14°), right-sensor (70°:98°), left-front-sensor mathematical models of the system. To solve the
( - 7 0 ° : - 4 2 ° ) , front-right-sensor (14°:42°), front-left- navigation problem a model based on human knowledge
sensor ( - 42°: - 14°), fight-front-sensor (42°:70°). can be built. An expert is asked to formalize his
knowledge in the form of linguistic rules for navigating
in an unknown environment. An example of a linguistic
2.1. Collision Avoidance Strategy
rule is the following:
Once the distance and direction of the obstacles are
known, a collision avoidance maneuver can be planned. IF obstacle distance relative to the robot is short and
obstacle angle is Right Small and error angle is Right
Our objective is to develop a control system that will
Big THEN steering angle is Right Big.
enable a mobile robot to navigate from a start point to a
goal point, without collisions, in the shortest possible Linguistic rules have an antecedent and a consequence.
travel time. The geometrical configuration of the naviga- The antecedent describes a fuzzy situation and the
tion problem is illustrated in Fig. 2. To increase the consequence specifies a fuzzy output. Fuzzy logic has
efficiency of safe navigation, travel time and distance been successfully used in various knowledge-based
traveled must be minimized. To accomplish this, the systems to control real-time decision-making in the area
robot must steer toward the goal, reducing the error angle of command and control, in environments where no
02, and modifying its velocity depending on how far the mathematical model can be applied with efficiency
robot is from the goal and if an obstacle is detected. On (information is imprecise, models are too expensive, etc.)
one hand, high velocities are achieved when the robot is (Bouchon & Despres, 1987; Ramirez-Serrano & Boume-
far from the goal point (xg,yg) and there are no obstacles dine, 1996). Robot navigation in unknown terrains is a
near the vehicle. On the other hand, low velocities are very complex task, difficult to control, basically because
established when the robot is near an obstacle or near the of the great amount of imprecise and ambiguous
goal point. If an obstacle is detected, angle 01 (obstacle information that has to be considered. However, the
angle) must be increased, changing the steering angle 03. common sense knowledge acquired by humans (linguis-
After the obstacle has been avoided angle 02 must again tic rules and reasoning process) can be easily represented
be reduced. as a knowledge base. In this context, in addition to the
imprecision and uncertainty of the information perceived
2.2. Fuzzy Logic Approach
Actions taken by the
Our objective is to design a controller to guide the robot robot
safely in an unknown environment from an initial point
to a final point. The robot will have to take actions such
as to speed up, turn left, turn fight, slow down, etc. These
actions are taken by determining or controlling the
ooo.,
r H ,Lj21LL
inf¢.nc~origin¢ ~ c a t i o n process[
values of variables such as velocity, steering angle,
obstacle angle, etc. These variables are called output
variables. To compute the values of output variables FIGURE 3. Architecture of the knowledge-based fuzzy con-
(Yi..... Ym) it is possible to determine the change of input troller.
182 M. B. Montaner and A. Ramirez/Serrano / Expert Systems with Applications 14 (1998) 179-186

TABLE 1
Fuzzy sets with their respective adjectives

Obstacle angle Error angle Steering angle Robot's velocity Distance from the Obstacle distance
(e+) (02) (e3) robot to the goal relative to the robot

Left Big (LB) Left Big (LB) Left Big (LB) Zero (Z) Zero (Z) Near (N)
Left Small (LS) Left Small (LS) Left Small (LS) Very Slow (VS) Near (N) Medium (M)
Zero (Z) Zero (Z) Zero (Z) Slow (S) Regular (RE) Far (FA)
Right Small (RS) Right Small (RS) Right Small (RS) Medium (M) Medium (M)
Right Big (RB) Right Big (RB) Right Big (RB) Fast (F) Far (FA)

from the environment, other sources of imprecision and


uncertainty have to be considered, such as rule descrip-
tion, reasoning process, etc. In these circumstances, the
quality of the decision is strongly dependent on the fuzzy
LB RB models that will be implemented to control the move-
ments of the machine.
-33 -20 -10 10 10 20 33
3. A R C H I T E C T U R E F O R T H E F U Z Z Y
LB LS Z RS RB
KNOWLEDGE-BASED CONTROLLER
x Kx) x ~x) .x ~x) x Kx) x 0(x)
-33 1 -20 0 -10 0 0 0 I0 0 To design a fuzzy knowledge-based controller, several
-20 I -10 1 0 1 10 1 20 1
-10 0 0 0 10 0 20 0 33 I steps have to be stressed. Input values perceived by the
sensors are crisp values and the controller should be able
FIGURE 4. Fuzzy sets for the linguistic variable 'Steering to produce the appropriate output value. For this, we
angle (63)'.
have to define a computational model for processing
linguistic terms used in the rules and to determine to
which degree a crisp value corresponds to a linguistic
expression. Also, it is necessary to define how linguistic
terms will be represented by a fuzzy set in our model.
Then, a reasoning mechanism to process the rule has to
be implemented to produce fuzzy outputs or conclusions.
Then, knowing the fuzzy outputs which have been
0 0.2 0.4 0.6 0.8 1 [m/s] derived from our rules, we need to transform these
linguistic terms to the form of crisp output values. The
z vs s M F following section describes in detail the steps previously
x ~(x) x ~(x) x la(x) x 14x)
0.0 l 0 0 0.2 0 0.4 0 0.6 0 mentioned.
0.2 0 0.2 1 0.4 1 0.6 1 0.8 I
0.4 0 0.6 0 0.8 0 1.0 I 3.1. E n v i r o n m e n t Perception
FIGURE 5. Fuzzy sets for the linguistic variable 'Robot's This navigation scheme is achieved in real time by the
velocity'.
fuzzy controller that takes information from the ultra-
sonic sensors and according to the general specifications
previously described.
The fuzzy controller used in our study was designed
using five basic steps, as outlined in the following
I ~ F A // paragraphs (see Fig. 3). These steps are also described in
the book by Kruse et al. (1995). After identifying the
variables (inputs and outputs) with their corresponding
// ranges for the controller, meaningful linguistic states and
fuzzy sets for each variable were established. As the
Z N RE M FA second step, to express the uncertainty, membership
x ~(x) x Igx) x ~(x) x ~(x) x. ~x) functions (/~(x)) were developed for each linguistic
0 1 5 0 10 0 25 0 40 0 variable previously defined. The membership functions
10 0 15 1 25 1 40 I 55 I developed and some of their corresponding linguistic
25 0 40 0 55 0 1000 1
states are represented in Table 1 and in Figs 4-6. The
FIGURE 6. Fuzzy sets for the linguistic variable 'Distance third step was devoted to formulating fuzzy inference
from the robot to the g o a l rules using human knowledge (regarding the control
M. B. Montaner and A. Ramirez/Serrano / Expert Systems with Applications 14 (1998) 179-186 183

TABLE 2
Rules necessary to change and avoid obstacles; obstacle distance=Medium (M)
Steering Angle Error angle ( Oa)

(O~) Left Big (LB) Left Small 0L~) Zero (Z) Right Small (RS) Right Big ORB)

Len mg (LB) snuai 0-.s)

Obstacle Left SmU (LS) Z_~ro(Z) Right Smart(RS) Right Big (RB)

angle Zero (Z)

(01) Right Small (RS) Left Big (LB) La~ SmaU(LS) Z~ro(Z)

Right Big ORB) RightSmall (P.S)

problem) obtained from experience. In this case, knowl-


edge was obtained via our common sense. The entire
Rules Error_Angle
(EA) Obst_Angle(OA)-.~ SteeringAngle(SA)
body of knowledge (set of rules), needed by the mobile
RuleSA-I 7ero Left- BiB O A RJ~t_Small
~ robot to navigate, was expressed in four tables (such as
ANDOAffiLCRBig "" Table 2) containing 47 rules needed to navigate autono-
THENSAffiRig~t_~ma/l
mously from a start point A to a goal point B, avoiding
obstacles. One example rule, taken from
Table 2, is:
A
IF EAffiZero
r.~NsA-.i¢,_s~,
/1\
/ I '~
7 \ 1 Max,EA, OA)I{[/ \ ' >
> A 'q IF Obstacle distance relative to the robot is
Left_Small Right_Sma./J MEDIUM
AND Obstacle angle is RIGHT SMALL
Any°therp°ssiblcr°lc
~ EA=A I ~ M F ~
OR OA = B ~n(EA.0A) /
T H E N SA =C If,

FIGURE 7. Fuzzification example corresponding to Table 2.


An extra, hypothetical rule not present in Table 2 has been
5 ...... ...... ...... ...... ...... ...... ......... i ..... iB
added to the example to observe all possible defuzzificatlon
techniques considered in the study (see Fig. 8).

A0! 10
Deffuzificafion Case # I :
Use only fuzzy outputs from ~x
rules SA-1 and SA-2. Obtain
SA output the centroid of the combined
commaud = Centroid fuzzy output.
a)

Deffuzification Case # 2: 0.9


Use only fuzzy outputs from
1 rules SA-1 and SA-3. Obtain
0.8
it

SA output the centroid of the combined 0.7 / Vel[%]


command = Centroid fuzzy output.
0.6
Deff,,Tification Case # 3: 0.5
Use all fuzzy outputs from 0.4
satisfiedrules. Obtain the
SA output centroid of the combined 0.3
commmld= Centroid fuzzy, output.
0.2
0.1
Deffuzification Example of'two rules m
(SA-I and SA-2) 0
Case # 3 was used C ,cles
in our study. satisfied when
EA = 22 degrees
SA output command and OA = -45 degrees b)
to the robot - - (see table 2)
FIGURE 9. Controller behavior on terrain 1. Simulation
FIGURE 8. Output defuzzification techniques (our design (continuous line) and real navigation (dashed line). (a)
used Case 3). Trajectory. (b) Velocity.
184 M. B. Montaner and A. Ramirez/Serrano / Expert Systems with Applications 14 (1998) 179-186

AND Error angle is RIGHT BIG


THEN Steering angle is RIGHT BIG • i i "

The fourth step corresponds to the definition of the


inference engine. Fuzzy inference mechanisms can be
represented in several ways (Mamdani, Rescher-Gaines,
Kleene-Dienes, Brouwer-Godel, Goguen, Lukasiewsky,
etc.) (Eshragh & Mamdani, 1981; Bouchon & Despres,
1987; Kruse et al., 1995), and their properties and effects
have to be studied before implementation in the real 10
system. Therefore, before incorporating the fuzzy control ~x
system for guiding the robot, in our approach, we chose a)
to simulate first the behavior of the robot using the
Mamdani implication technique (see Fig. 7). The main
reason for choosing this technique was its simplicity and 0.9
high reliability. After simulation, the controller was 0.8
tested on our experimental mobile robot. The results 0.7
obtained are reported in Section 4. Finally, conclusions 0.6 / w, [%1 "
,,
in fuzzy form obtained by the inference engine were 0.5
converted to real numbers. Each number obtained by the 0.4
0.3
defuzzification process (fifth step) represents the action
0.2
to be taken by the controller. In this work the centroid
0.1
method or the center of gravity (COG) method has been
0
preferred over methods such as the Max criterion or the Cycles
mean of the Maxima method. The main advantage of
b)
COG is that the behavior of the robot is always fairly
FIGURE 11. Robot behavior on terrain 3. Simulation (con-
tinuous line) and real navigation (dashed line). (a) Trajectory.
(b) Velocity.

smooth, which is beneficial for robot navigation (see Fig.


8).

4. RESULTS
To test and analyze the controller, simulation and
10 experimental studies were performed. Simulation was
~x performed using the MS-DOS Matlab Fuzzy Logic
Toolbox. On the other hand, experimental results were
obtained using MOBIROB, a US$300.00 experimental
a) mobile robot developed at ITESM-CCM. During the
study, position, direction and velocity of the robot were
0.9 studied. Figs 9(a), 10(a), ll(a), 12(a) and 13(a) show
0.8 simulation and experimental results of the motion of the
0.7 i robot as it navigates from a start position A to a goal
,; Vel[%] point B through various static environments. The envi-
0.6 i ' ronment information obtained by the robot (obstacle
0.5
sensing) is the input to the fuzzy controller which, gives
0.4
the direction and velocity of the robot as its output. The
0.3
fuzzy controller continually reads information and pro-
0.2
vides an output until the robot reaches the goal point. To
0.1
accomplish this, the system also maintains the current
0
position of the robot within a coordinate system. Figures
Cycles
9(b), 10(b, ll(b), 12(b) and 13(b) show how the robot
b)
accelerates when no obstacle is near, whereas lower
FIGURE 10, Controller behavior on terrain 2, Simulation velocities are reached when obstacles are present near
(continuous line) and real navigation (dashed line). (a) the robot (just as desired). This allows a safer navigation
Trajectory. (b) Velocity, and increases the robot's performance in terms of travel
M. B. Montaner and A. Ramirez/Serrano / Expert Systems with Applications 14 (1998) 179-186 185

1 ~x
10

l P'-x
a)
a)

0.9
0.8
0.9
0.7 0.8
0.6
Vel [%1 0.7 I

0.5 0.6
0.4 0.5
0.3
veil%]
0.4

f
0.2
0.3
0.1
0.2
0
Cycles 0.1
b) 0
Cycles
FIGURE 12. Controller behavior on terrain 4. (a) Navigation
trajectory. (b) Robot's velocity. Continuous and dashed lines
represent simulation and experimental results, respectively. b)
FIGURE 13. Controller behavior on terrain 5. (a) Navigation
time. To perceive and avoid several obstacles at the same trajectory. (b) Robot's velocity. Continuous and dashed lines
time, the controller checks the entire knowledge base represent simulation and experimental results, respectively.
after the seven ultrasonic sensors transmit their corre-
sponding information (obstacle distance) to the robot.
The control signals (direction or velocity) transmitted to point (goal). The navigation trajectory is obtained after
the robot are obtained using all of the fuzzy conclusions mapping the information obtained from the real world
derived by all of the satisfied individual rules. After via ultrasonic sensors. In our approach, we designed a
control signals (direction and velocity) are transmitted to first knowledge base which modeled the behavior of an
the robot a new set of environment information is expert human and the inference implication was derived
captured by the sensors and transmitted to the fuzzy using the Mamdani approach (Eshragh & Mamdani,
controller. This strategy is applied until the robot reaches 1981). According to our simulation and experimental
its goal. results, the designed fuzzy controller has demonstrated
During the experimental phase of the study our satisfactory behavior. As the information needed to
autonomous mobile robot (MOBIROB) was directly navigate is obtained via ultrasonic sensors the method
linked (hard-wired) to a 486 personal computer (PC) can be easily extended to include an analysis of possible
used to store the real inputs (environment data) and moving obstacles. Thus, the method can be greatly
output (direction and velocity) variables to and from the improved by minimizing both the distance traveled and
robot. The experimental position of the robot within the the travel time, taking into account the velocity (and
given coordinate system (see Figs 9(a), 10(a), ll(a), possible acceleration) of the obstacles. This can be done
12(a) and 13(a) was determined using the experimental by integrating a fuzzy set representing the velocity
output variables stored in the linked PC. Here the system (acceleration) of the obstacles, and integrating the
(robot) was considered slip-free. corresponding rules (knowledge) into the system.
The method presented can be easily extended to
include backward velocities (not considered in this
5. SUMMARY AND CONCLUSIONS
study), increasing the maneuverability of the robot. For
We have presented an approach for designing a fuzzy this to be possible, sensors have to be incorporated in
controller for autonomous mobile robot navigation to other parts of the robot and corresponding rules added
reduce the travel time from an initial position to a final into the knowledge-base. Obviously, new membership
186 M. B. Montaner and A. Ramirez/Serrano / Expert Systems with Applications 14 (1998) 179-186

functions have also to be added to the existing ones. planning: multi-abstraction route planning based on intermediate
Our next step is to experiment with other fuzzy level vision processing. In Proceedings of SPlE--The International
Society for Optical Engineering, Cambridge, MA, Sensor Fusion:
inference techniques and to present a comparative study Spatial Reasoning and Scene Interpretation, (1003), pp. 470-489.
of the results. Also, the controller will be modified to Eshragh, F., & Mamdani, E. H. (1981). In E. H. Mamdani & B. R.
navigate within dynamic environments. At the first stage, Gaines (Eds) A General Approach to Linguistic Approximation in
continuing with our assumptions, some problems, such Fuzzy Reasoning and its Applications. New York: Academic Press.
as the effect of a wheel rolling over small obstacles not Freund, E., & Hoyer, H. (1988). Real-time pathfinding in multirobot
systems including obstacle avoidance. International Journal of
detected on dead reckoning, will not be considered. The Robotics Research, 7(1), 42-70.
use of the fuzzy controller is not limited to common Kruse, R., Gebhart, J., & Klawonn, F. (1995). Foundations of Fuzzy
static environments such as factories and warehouses, Systems. Chichester, UK: Wiley.
but can also be used in dynamic environments, where Kundur, S. R., & Raviv, D. (1995). Visual motion cue for autonomous
unknown moving objects are part of the surroundings. navigation, In Proceedings of the 3rd IASTED International
Conference on Robotics and Manufacturing, pp. 67-69.
Lozano-Perez, T., & Wesley, M. A. (1979). An algorithm for planning
REFERENCES collision-free paths among polyhedral obstacles. Communications
of the ACM, 22(10), 560-570.
Barshan, B., & Durrant-Whyte, H. F. (1995). Inertial navigation system Lumelsky, V. J., Mukhopadhyay, S., & Sun, K. (1990). Dynamic path
for mobile robots. IEEE Transactions on Robotics and Manufactur- planning in sensor-based terrain acquisition. IEEE Transactions on
ing, 11(3), 328-342. Robotics and Automation, 6(4), 462-472.
Beaufrere, B., & Zeghloul, S. (1995). Avoidance of moving obstacles Ramirez-Serrano, A., & Boumedine, M. (1996). Real-time navigation
by a mobile robot. In Proceedings of the 3rd lASTED International in unknown environments using fuzzy logic and ultrasonic sensing.
Conference on Robotics and Manufacturing, pp. 237-240. In Proceedings of the 11th International Symposium on Intelligent
Bouchon, B., & Despres, S. (1987). Propagation of Uncertainty and Control, Dearborn, MI, pp. 26--31.
Inaccuracies in an Expert System. Lecture Notes in Computer Surman, H., Huser, J., & Peters, L. (1995). Fuzzy system for indoor
Science, 286. Berlin: Springer. robot navigation. In Proceedings of the Fourth IEEE International
Doshi, R. S., Lam, R., & White, J. E. (1988). Region-based route Conference on Fuzzy Systems, Yokohoma, pp. 83-86.

You might also like