virtual target switching strategy

virtual target switching strategy

Robotics and Autonomous Systems ELSEVIER Robotics and Autonomous Systems 23 (1998) 171-186 Fuzzy reactive control of a mobile robot incorporating a...

1MB Sizes 1 Downloads 39 Views

Robotics and Autonomous Systems

ELSEVIER

Robotics and Autonomous Systems 23 (1998) 171-186

Fuzzy reactive control of a mobile robot incorporating a real/virtual target switching strategy W.L. Xu *, S.K. Tso, Y.H. Fung Centre for Intelligent Design, Automation and Manufacturing, FaculO' of Science and Technolog3~ Ci~ UniversiD" of Hong Kong, Kowloon, Hong Kong

Received 10 December 1996; accepted 26 September 1997

Abstract

Real-time fuzzy reactive control is investigated for automatic navigation of an intelligent mobile robot in an unknown and changing environment. The reactive rulebase governing the robot behavior is synthesized corresponding to the various situations defined by the instant robot motion, environment and target information. Navigation control of the robot is realized through fuzzy coordination of all the roles. Sensed ranging and relative target position signals are input to the fuzzy controller while the steering angle and the velocity change are inferred to drive the mobile robot. For the robot to efficiently tackle unwanted local trapping and oscillation problems, a real/virtual target switching strategy is presented to serve as a preprocessor for the proposed fuzzy reactive controller. Simulation and experimental results are presented to validate the approach. © 1998 Elsevier Science B.V. Keywords: Mobile robot; Fuzzy reactive control; Target switching; Automatic navigation; Heuristic rules

I. Introduction

There is an increasing interest in autonomous mobile robots that are capable of intelligent motion and action without requiring either external guidance or teleoperator control. In order to achieve this autonomy, the robot must be capable of sensing its environment, interpreting this sensed information to refine its knowledge of its position relative to the environment, and planning a route from an initial to a goal position that avoids known or unknown obstacles. For mobile robots operating in an unknown and changing environment, coping with uncertainty is one of the most challenging problems. There are several approaches proposed to solve the robot navigation problem, including the model based methods such as the artificial potential-field (APF) [5,6], the edge-detection (ED) [ 1], the obstacle boundary-following (OBF) [ 10,12], the goal-oriented recursive path-planning (GORP) [ 13], the vector-field histogram (VFH) [2,4], and the fuzzy-logic (FL) and neural-network (NN) based reactive methods [7-9,11,15-171. The APF method assumes that each object in the environment exerts a repulsive force on the mobile robot and the goal exerts an attractive force on it. The resultant force is then computed at each step and used to determine the direction of movement for the next step [5]. Significant problems have been found depending on the particular implementation: * Corresponding author. Tel.: +852 2788 8405; fax: 852 2788 8423; e-mail: [email protected]. 0921-8890/98/$19.00 © 1998 Elsevier Science B.V. All rights reserved PI1 S0921-8890(97)00066-3

172

W.L. Xu et al. /Robotics and Autonomous Systems 23 (1998) 171-186

getting trapped in local minima; unintended stoppage between closely spaced obstacles; oscillations in the presence of multiple obstacles; and oscillations in narrow passages [6]. In the ED method, two vertical visible edges of the obstacles are firstly determined from the sensor data, then the horizontal line connecting the two vertical edges is considered to be one of the boundaries of the obstacles, and the robot is finally steered around either side of the visible edges [ 1], A drawback of this method is its sensitivity to sensor accuracy and its unstable performance due to frequent misreading of range sensors. The robot in the OBF method [10,12] moves along the shortest path, follows the obstacle's contours and then returns to the shortest path. The navigation strategy is not quite compatible with the human driving heuristics. The GORP method tries to find the longest straight-path segment with predetermined clearance from the obstacles in the direction that takes the robot closer to the goal or leads it to get around the obstacle [13]. This method guarantees to find a path in an open area cluttered with convex objects, but fails in the presence of non-convex obstacles and cannot plan the shortest path. The VFH method, evolved from the grid cell method [2,4], uses grids for the representation of obstacles. The disadvantage of this method is that the environment information increases continuously in order to satisfy the high resolution of environmental representation as the robot moves. Fuzzy-logic and neural-network based reactive approaches [7-9,1 1,14-17] have advantages to fast response to the robot navigation, because, at any instant, the robot is sensitive mainly to its immediate surroundings and target information. In the collision avoidance approach using FL control [7], different modules, such as the directingtowards-target module, the avoiding-static-obstacle module, the avoiding-moving-obstacle module, etc., are created for the navigation of the mobile robot. However, these modules are separately inferred and are not as coordinated as human reasoning. In the FL control of a mobile robot using a fuzzy expert system [11], recognition rules are proposed to classify the road shapes derived from the camera images and control rules are designed to produce the driving plan of the robot. Many parameters are required as the input to the fuzzy controller. Reactive behavior-based FL control of the robot [8] utilizes the rules to define the robot reaction to unknown environments and applies fuzzy inference to coordinate different reactive behaviors. Without taking into account the target information, the reactive rules for avoiding obstacles do not match the human experience when the obstacle is close to the robot. In the fuzzy-logic and neural-network-based reactive control [15,16], reactive rules or training data are extracted through synthesizing human driving experiences in response to the instantly sensed environment, robot motion and target information. Nevertheless, the reactive robot often gets trapped in front of a wide obstacle or oscillates in a comer formed by obstacles, since the reactive approach includes no memory of the previous robot reactions. Several means for tackling the local trapping problem have been proposed: in one case a context unit, serving as a short term memory, is introduced to the neural-network-based reactive controller [l 5]; in another case, a neural network, which is trained using some patterns of local obstacles, is employed to generate a reference target direction for the fuzzy controller [9]; and alternatively a simple human heuristic rule based on the previous target and obstacle information is added to the rulebase for fuzzy reactive navigation [ 17]. However, the elaborate environment patterns are limited for training a network to represent arbitrarily shaped obstacles while the short memory concept associated with a neural network is not the most appropriate for real-time reactive navigation. Very recently a memory-related behavior is added to the basic reactive robot to resolve the robot wandering (limit cycle) problem [ 14]. This approach requires a lot of memory for storing all the positions and orientations of the robot visits in the course of navigation, to identify the limit cycles and then impose virtual obstacles. Much unnecessary exploration time is spent using this navigation strategy. In this paper real-time fuzzy reactive control is investigated for automatic navigation of an intelligent mobile robot in an unknown and changing environment, in view of its fast speed of response and ease in implementation. Sensed ranging and relative target position signals are input to the fuzzy controller, from which the steering angle and the velocity change are inferred to drive the mobile robot. For the robot to efficiently and effectively tackle local trapping and wandering failures, a real/virtual target switching strategy is proposed to serve as a preprocessor of the above fuzzy reactive controller. Simulation and experiments are conducted to demonstrate the ability of the mobile robot to move successfully towards the target in various complex unknown environments.

W.L. Xu et al./Robotics and Autonomous Systems 23 (1998) 171-186

173

2. Sensing strategy for real-time reaction In this study, a Nomad 200 mobile robot is employed as a testbed for the fuzzy reactive control. The robot is equipped with a sonar sensor system Sensus 200 (a ring of 16 Polarid 6500 sonar ranging modules) for long ranging, an infrared sensor system Sensus 300 (a ring of 16 reflective intensity based range doctors) for short ranging and a vision system Sensus 500 (a laser diode-CCD camera) for image generation. The robot moves in one plane in a non-bolonomic fashion and can recognize its own position in the world by integrating the encoder's information. The sonar system (Fig. 1) able to detect specular objects from 6 in to 15 ft (i.e., 15 cm to 10 m) and cover the full 360 ~: range is employed for the robot reaction investigation. For the real-time reactive navigation to be easily realized, only nine frontal sensors, i.e., sensors 0 - 4 and 12-15, are hence utilized and the other sensors are masked, because they are sufficient to cover a semi-circular range around the front half of the robot and to protect it from collisions. These sensors are further divided into three groups for detecting, respectively, the obstacle distances to the right, at the front and to the left of the robot, which are denoted as dr, dc and dl and calculated by, dr = Min{ranging data of the sensors 12, 13, 14, 15}, d c = Min{ranging data of the sensors 1,0, 15} and dl = Min{ranging data of the sensors 1, 2, 3, 4}, respectively. The use of a ring of sonar sensors reduces the risk of collision, but causes serious crosstalk noise due to one sensor receiving the sonar waves emitted by other onboard sensors. The crosstalk can be divided into direct crosstalk and

do \

',\ .:ii.,~::::::::::~::::,:-:"-" ::::::::::::::::::::::::::::::::::::::::::::::::::::: . /' .....17~ii!i)U

dr

dl

Fig. 1. Designation of sonar sensors.

174

W.L. Xu et al./Robotics and Autonomous S~,stems 23 (1998) 171-186

indirect crosstalk. The direct crosstalk is generated by a near-by wall (worst case) and can affect two neighboring sensors (e.g., whenever sensor 0 fires, sensors 1 and 15 will receive the direct path echo), as observed in actual experiments [3]. In order to reduce this crosstalk noise, the sensor firing intervals should be large enough to allow the echo of one sensor (such as sensor 0) to return from a nearby wall before other sensors (such as sensors 1 and 15) fire. The acceptable interval established experimentally, with respect to a distance of 2.5 m between the wall and sensors is about 20 ms. Throughout this investigation, the nine frontal sensors are fired in the order {0, 4, 15, 3, 14, 2, 13, 1, 9}, with a firing interval of 20ms, to avoid the direct crosstalk resulting from objects up to 2.5 m away. Indirect crosstalk, due to the sound wave, emitted by one sensor, bouncing around and eventually reaching the receiver of the other sensors after several reflections, can be minimized using a method called EERUF (error eliminating rapid ultrasonic firing) [3].

3. Fuzzy reactive control 3.1. Robot reactive strategy

Suppose that a mobile robot moves in an unknown and changing environment and is expected to reach a specified target. Collision-free motion is pursued through proper reaction of the robot to the sensed information of the environment. [n order to develop the reactive behavior patterns for robot navigation, it is important to recognize the need for compromise decisions to be made between avoiding collision with obstacles and moving towards the target, based on the detected information of the environment. The fundamental guiding principle for a reactive robot navigation is that the target virtually attracts the robot while the obstacles repel it. Therefore, a reactive strategy is designed with respect to two situations: existence and non-existence of obstacles. In the absence of obstacles, the robot is steered towards the target and accelerates according to the target orientation and the instantaneous moving direction of the robot. With obstacles present in the environment, the robot reacts based on both the sensed information of the obstacles and the relative location of the target. When the obstacle is very close, the robot slows down and makes a turn. In moving towards the target and avoiding collision the robot changes its motion direction and varies its velocity around a desired level. 3.2. Fuzzy reactive control

The reactive strategy proposed provides a practical compromise between the target reaching and the obstacle avoidance requirements. Fuzzy-logic-based control is applied to realize this robot reactive strategy, since it is very fast and effective in enabling the robot to react in real time to unknown environments, handling the coarse ranging readings of sonar sensors, and coordinating the different reactive behaviors. Thus, the robot reactive behavior is formulated in fuzzy rules. With reference to Fig, 7, inputs to the fuzzy controller are the obstacle distances dr, dl and dc and the target orientation tr which is the angle between the robot moving direction and the line connecting the robot center with the target. Output of the fuzzy controller is the steering angle sa and the speed variation dsp of the robot. It should be noted that the orientation tr is determined by the target position and the robot position in a world coordinate system, respectively. The former is given and the latter may be calculated by integration of the wheel-encoder signal. The target orientation tr is defined as positive when the target is located to the right of the robot moving direction; otherwise, tr is negative; the steering angle sa is defined as positive (negative) when the robot turns right (left); and the speed variation dsp is larger (less) than zero when the robot is accelerating (decelerating). Human driving experience is used to generate the reaction of the robot through fuzzy reasoning while precise geometrical description of the environment is avoided. Thus, all associated variables have to be fuzzified into linguistic labels, whose membership functions are shown in Fig. 2. The input variables dr, dl and dc are simply expressed using two linguistic labels NEAR and FAR and a relatively small number of labels are considered

W.L.Xuetal./RoboticsandAutonomousSystems23(1998)171-186

,l

NEAR

FAR

~

LB

dr, dc, dl(m)

1 2 34 5 6

i

RB

tr (deg) I

t

-180 -100 -50 ~D 50 100 180

DECE

TLB TLS T Z TRS TRB

~

LS

175

Z,~,CC 1

sa(deg)

ACCE

~dsp(rn/s

2)

J

-30 -20 -10 (~ 10 20 30

-0.1

I

0.1

Fig. 2. Membershipfunctions and labels for input and output variables.

conducive to reducing the sensitivity of the reactive fuzzy controller to the ranging errors of the sonar sensors. The variable tr is represented by five labels LB, LS, Z, RS and RB, covering well the frontal half space of the robot. The output variable sa is represented by five linguistic labels TLB, TLS, TZ, TRS and TRB with the largest steering angle of 30 °. The speed variation dsp of the robot is described by three labels ACCE, ZACC and DECE, denoting an increment, no change and a decrement of the robot moving speed. Since the number of potential rules of reaction increases directly with the number of labels of the input variables, a relatively small number of labels for the input variables, which could properly formulate the robot reactive behaviors, has been selected.

3.3. Rulebasefor robotfuzzy reaction As stated in the reaction strategy, the robot is required to react based on the sensed information of the obstacle position and the target location, i.e., the input variables dr, dc, dl and tr, in order to reach the target without collision with any obstacle. When there exists no obstacle in the environment, or, the obstacles are far away from the robot (case I in Fig. 3), the reactive behavior of the robot is decisively determined by the location of the target. In this case, the robot accelerates (i.e., dsp = ACCE) and simultaneously turns should it not be currently moving directly towards the target. With respect to the five possible target orientations LB, LS, Z, RS and RB, five rules for the reaction can be firstly extracted, as presented in Table 1. These rules indicate that the robot always tries to turn towards the target while accelerating. The more (less) the target deviates from the moving direction, the bigger (smaller) the robot turning required. When some obstacles are sensed by the robot, the robot should properly react to avoid collision by changing its moving direction and decreasing its moving speed. The reaction is then mainly determined by the obstacle's proximity and its relative location relative to the robot while the target location plays a secondary role in this environment. When the target is located on the side compatible with the turning direction, the turning should be large (i.e., sa = TLB or TRB); otherwise, the turning is made small (i.e., sa = TLS or TRS). Thus, the direction

176

W.L. Xu et al. /Robotics and Autonomous Systems 23 (1998) 171-186

tr

S

[

tr

tr

tr

%

i

dl~r (I)

(II)

tr

tr

(vI)

]

tr

,%

dl~r (v)

(III)

(IV) tr

B

diX~dr

doI %

(VII)

(VIII)

Fig. 3. Variouscases of sensed environments around robot.

of the turn depends upon the position of the obstacle and the magnitude of the turn depends upon the location of both the target and the obstacle. Additionally, the robot decelerates (dsp = DECE) when the robot turning is large (i.e., sa = TLB, TRB), and when the obstacles sensed by all the left, front and right sensors are close to the robot. For other situations, the robot keeps moving at the desired speed (dsp = ZACC). Table 1 gives a total of 35 rules extracted for another seven cases (cases II-VIII) shown in Fig. 3, five rules being applicable for each case.

3.4. Fuzzy reasoning

Once the knowledge rules for the robot reaction have been synthesized, the robot moving commands (the steering angle and the speed) can be deduced through a fuzzy reasoning process. Fig. 4 shows the network-type information flowchart for the robot reactive control, including fuzzification, inference, aggregation and defuzzification. Fuzzification converts the input values into grades by means of the membership functions of the input labels. Using the operation of conjunction (i.e., the minimal operation), the inference of a rule enables the combination of different condition assertions and generation of an output grade for the conclusion assertion. Since different rules may contribute to the same label of the output sa and dsp, the aggregation operation (involving the trapezoid inference) is then carried out to produce the resultant membership function based on the output grades inferred from the rules for the output labels and the membership functions associated with the output labels [16]. After aggregation, the defuzzification process finds the center of gravity of the output membership function as the real-world value of the output variable.

W.L. Xu et al. /Robotics and Autonomous Systems 23 (1998) 171-186

177

Table 1 Basic rulebase for fuzzy reactive collision-free navigation Cases

I

II

II1

IV

V

VI

VII

VIII

Rule

dr

dc

dl

v

sa

dsp

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40

Far Far Far Far Far Far Far Far Far Far Far Far Far Far Far Near Near Near Near Near Far Far Far Far Far Near Near Near Near Near Near Near Near Near Near Near Near Near Near Near

Far Far Far Far Far Far Far Far Far Far Near Near Near Near Near Near Near Near Near Near Near Near Near Near Near Far Far Far Far Far Near Near Near Near Near Far Far Far Far Far

Far Far Far Far Far Near Near Near Near Near Near Near Near Near Near Near Near Near Near Near Far Far Far Far Far Far Far Far Far Far Far Far Far Far Far Near Near Near Near Near

LB LS Z RS RB LB LS Z RS RB LB LS Z RS RB LB LS Z RS RB LB LS Z RS RB LB LS Z RS RB LB LS Z RS RB LB LS Z RS RB

TLB TLS TZ TRS TRB TZ TZ TZ TRS TRB TRS TRS TRS TRB TRB TLB TLB TRB or TLB TRB TRB TLB TLS TRS or TLS TRS TRB TLB TLS TZ TZ TZ TLB TLB TLS TLS TLS TLB TZ TZ TZ TRB

ACCE ACCE ACCE ACCE ACCE ZACC ZACC ZACC ZACC DECE ZACC ZACC ZACC DECE DECE DECE DECE DEEC DECE DECE DECE ZACC ZACC ZACC DECE DECE ZACC ZACC ZACC ZACC DECE DECE ZACC ZACC ZACC DECE ZACC ZACC ZACC DECE

4. Real/virtual target switching proposal 4. I. Phenomenon and problem o f local trapping and wandering T h e r o b o t reacts to the s e n s e d e n v i r o n m e n t , w h i l e m o v i n g t o w a r d s the target, b a s e d o n the k n o w l e d g e rules p r e s e n t e d in the p r e c e d i n g section. A s the target a p p l i e s an attraction, the r o b o t t e n d s to m o v e t o w a r d s the target f o l l o w i n g a straight line, p r o v i d e d that n o o b s t a c l e s are p r e s e n t in the e n v i r o n m e n t . E x i s t e n c e o f o b s t a c l e s d e v i a t e s the r o b o t f r o m this s h o r t e s t path. A f t e r g o i n g a r o u n d the o b s t a c l e s , the r o b o t tries to m o v e again directly t o w a r d s the

178

W.L. Xu et al. /Robotics and Autonomous Systems 23 (1998) 171-186

fuzzification

inference (conjunction)

aggregation defuzzification (disjunction) (COG)

targetorientation steeringangle

obstacle dista

(right)

obstacle distance

(central)@

__ @

obstacle distance

(left)

,

~

--celeratl°n ~

~ inputs

,~, ~.

input labels

rules

outputlabels

output

Fig. 4. Fuzzy reasoning for robot reactive control.

TARG~="

TARGET •

TARGET •

tr=RB

L START

(a)

tr=LB

I START

(b)

START

(c)

Fig. 5. Illustration of different reactions in typical environments: (a) robot avoiding an obstacle, (b) robot trapping before a wall and (c) robot wandering in a corner. target, as illustrated in Fig. 5(a). This reaction navigation simply assumes that the target attracts and the obstacles repel the robot. Nevertheless, the reactive navigation may fail in some circumstances. As illustrated in Figs. 5(b) and (c), the robot gets trapped before a wide obstacle or wanders round the comer of a concave obstacle [9,15,17]. The failures are due to the fact that the reactive robot has only sensitivity to its immediate surroundings and the target, neither seeing the global arrangement of obstacles nor remembering the reaction it has made previously.

W.L. Xu et al./Robotics and Autonomous Systems 23 (1998) 171 186

179

Carefully examining the trapping effect, one can find that they possibly happen when obstacles sensed are close to all the left, front and right sensors and the target lies along the initial robot heading direction. The robot trapping is caused directly by the target attraction. In the case of dr, dc, dl = NEAR, a fuzzy decision for the reactive navigation is dominantly determined by rules 16-20. According to the heuristics used, the robot makes big turns to the right (sa = TRB) or the left (sa = TLB) and decelerates (dsp = DECE). At an instant when the target lies just in the heading direction (tr = Z), it is inferred that the robot should make a big right turn (sa = TRB), provided that a right-turn-principle is implemented in the rules 18 and 23. However, at a subsequent reactive instant, as the target changes to lie to the left of the heading direction (tr = LB or ES) and the obstacles sensed are still very close, the robot has to turn back to the left (sa = TLB or TLS) and then move a step forward in almost the initial direction. Consequently the robot swings forward hesitantly and becomes trapped in front of the obstacles. From the geometrical features of a wandering path, one can find that the wandering is due to the robot turning at the two critical points B and E, as illustrated in Fig. 5(c). To explore the physical mechanism behind the wandering phenomenon, the sensory information and target orientation can be examined before the robot reaching and after its leaving from the critical points. In the path segment AB, the target is located to the left of the robot (i.e., tr = LB) and the robot detects the obstacle presence in the left (dl = NEAR). As a result of the fuzzy reasoning of the reactive rules, the robot moves following the obstacle profile (the wall in this case). While in the segment BC, the robot tends to move towards the target since the target lies to the right (tr = RB) and the robot detects more free space (dc ----FAR and dr = FAR) in the right during this period. In the path segment DE and EF, the robot reacts similarly based on the reactive rules. Thus, it is found that the critical points are the points with the target orientation changing abruptly from tr = LB to RB or from RB to LB. In brief, the robot wandering is caused by the fact that the robot. after passing the critical points, makes big turns to move towards the target from the side having more free space. 4.2. Target s w i t c h i n g strategy

The fundamental problem behind the robot trapping and wandering in some circumstances is the strong attraction of the target. Thus, a real/virtual target switching strategy is proposed, in which the real target is locally shifted to a virtual location temporarily according to the current sensed environment and the previous target orientation. The local trapping can be easily avoided using this real/virtual target switching means, Suppose that, starting at the point A in Fig. 6(a), the obstacles sensed are close to all the left, front and right sensors of the robot and simultaneously the target is along the current heading direction (i.e., tr = Z). The target is shifted to a virtual location with tr = 90' for the turn-right-principle (tr = - 9 0 c' for the turn-left-principle) in the rules 18 and 23. In this way the attraction of the target upon the robot is temporarily changed and, in order to reach the target, the robot turns always to the right (left) until it detects no obstacle in its front at the critical point B which is easily identified by a very large dc sensed. Therefore, in the path segment AB, the robot is attracted by the virtual target, After the point B, with respect to the right path, the target attraction is once again in force and the robot moves almost following the wall because the target is tr = LB and the free space detected is in the front and right of the robot. Fig. 6(a) illustrates the reactive robot path when the method of the real/virtual target switching is applied. As discussed in the preceding section, the wandering problem is generated by the abrupt change of the target orientations in the vicinity of the critical points. To solve this problem, it is very natural to change the direction of the target attraction at the critical point. In order to do so, the robot needs to record the target orientation tr = tr 0 at the last reactive instant. As illustrated in Fig. 6(b), once the current target orientation deviates from tr0 very significantly (which means that the robot is at the critical point A), the target orientations tr at the current instant and consecutive instants (from A to B) are switched to a virtual location of tr = - ( r r - tr), before the tr is input to the fuzzy reactive controller (see Fig. 7). Thus, the robot uses the virtual target for its navigation in the segment AB, until it detects the opening at the critical point B which is easily identified by a very large dl sensed at the right opening or dr sensed at the left opening. After the robot passes point B, the target is switched back to the real one and the robot navigates autonomously again using the actual target. In the practical implementation of the above switching scheme, the robot has to go through a small clearance from B to C before the virtual target is switched

W.L. Xu et al. /Robotics and Autonomous Systems 23 (1998) 171-186

180

TARGET

TARGET

[]

/

,."tr=RB

tr=LB

!,1

(virtual target) B

A R

l

LB

(virtual target)

R.I. START

START

(a)

(virtual target)

(b)

'"itr='(~'tr)

(virtual target)

Fig. 6. Illustration of reactive robot: (a) traveling along an open-ended wall and (b) escaping from a corner, followingtarget switching.

dl

dc dr tr

trO

I j

I ZI RealNirtual

I~1

Target Switching

sa Fuzzy Reactive Navigation Controller

il

)

>

dsp

Fig. 7. Schematic diagram of fuzzy reactive control with real/virtual target switching. back to the real one. The clearance is approximately equal to the diameter of the mobile platform (about 0.5 m for the Nomad 200) for avoiding the collision of the robot with obstacles. In this way the attraction of the target upon the robot is changed in the segments AB and BC, and consequently the robot can escape from the oscillation mode. Fig. 7 shows the schematic diagram of a fuzzy reactive controller with real/virtual target switching applied. The switching mechanism is implemented as a preprocessor and activated only in the environment causing the robot trapping and wandering situations. Compared with the pattern-recognition-based neural-network approaches for avoiding the trapping or the wandering [9,15], this real/virtual target switching approach is much simpler and thus much more efficient and effective for the real-time reactive navigation of a mobile robot.

5. Simulation and experiment Simulation is conducted to demonstrate the ability of a mobile robot, which makes use of the fuzzy control scheme proposed, to react effectively to various unknown environments; in particular the ability of a robot to escape from the trapping or the wandering situations described. In the simulation investigations, the starting location of the

W.L. Xu et al. /Robotics and Autonomous Systems 23 (1998) 171-186

181

T(TARGET)

E [D --C G

Fig. 8. Robot paths in the environment one.

robot and the location of the target are given for each navigation task. The normal speed of the robot is 0.5 re~s, the upper bound and low bound of the robot speed are 1.1 m/s and 0.05 m/s, respectively, and the interval of the robot reaction time is 0.1 s. In the course of the robot moving towards the target, it does not stop for sensing, processing data and reacting to the unknown environment. Figs. 8 and 9 show the robot paths in two environments and Figs. 10 and I 1 show the variations of the target distance relative to the robot and the robot speed when the robot moves towards the target, with respect to the above two environments. Considering the environment one (Fig. 8), the robot, at the early stage (S-+A), moves directly towards the target along a straight line, while the robot speed increases quickly up to the upper bound and maintains it. The relative target distance decreases rapidly (S---*A), as shown in Fig. 10, because the obstacles are far away from the robot. When the robot tries to move to either side of the obstacle to escape from the comer and the wide wall (B-+C--+ D--+E), it first decelerates (A-+B) and then runs at the desired speed. During this period the relative target distance oscillates, indicated by the critical points B, C and D. Along the points E--+F-+ G--~ H, the robot moves nearly following the wall at the desired speed, with some minor fluctuations in the vicinities of the comer points F, G and H. The robot accelerates again from H--*I since no obstacles are detected, while its speed decreases to zero (I--+T) when reaching the target. With respect to the environment two, the robot path is shown in Fig. 9 while the variation of the robot speed and the variation of the relative target distance are presented in Fig. l 1. At the very initial stage (S-+A), the robot accelerates up to the upper bound of its speed and moves along a straight line. When detecting obstacles in front of it, the robot reduces its speed to the desired one and moves along the wall at nearly constant speed

W.L Xu et al./Robotics and Autonomous Systems 23 (1998) 171-186

82

s ( START )

Fig. 9. Robot paths in the environment two.

o

.

20

iB

C

D

:

E

-- relativedist. -- velocity : ~ H ,!!il

~

1.2

E 0 C

0.8 15

:

0.6

< t~ O O m ,

3

10

0.4 5-

i

0.2 ,

0 0

I

5O

I

100 time,s

I

150

Fig. 10. Variations of robot speed and relative target distance in the environment one.

--2O 2OO

W.L. Xu et al. /Robotics and Autonomous Systems 23 (1998) 171-186

20

A E

B

[- - relative dist.

C D

15

E

F

G

H

183

1.2 - - velocity

I

J

K

O

0.8

t'-

o

t~ •~"o cl) >

< ¢D

0.6

10

3

I

0.4

5 ,

I

0.2

il

0

~ 0

50

100

0 150

200

250

time, s Fig. 11. Variations of robot speed and relative target distance in the environment two.

(B--~ C---~D). The robot then enters the "mouth" due to the strong attraction of the target and simultaneously reduces its speed to the lower bound (starting from the point D). In the subsequent intervals (E-->F-->G) and (G---~H--~ 1), the robot tries to escape from the corner and to look for a mouth opening. During this period, the relative target distance fluctuates and the robot speed is kept generally at a low level except after passing the point F due to a possible free space. The fluctuation of the robot speed near the point E is caused by a possible free space after passing the point F and the obstacle detected at the point E. After leaving the mouth, the robot moves at nearly the desired speed along the wall (starting from the point J) and approaches the target (starting at the point K) with the robot speed decreasing to zero. At the mouth opening (near the point J), the robot speed experiences some minor fluctuations. The proposed fuzzy reactive controller, incorporated with the real/virtual target switching scheme, has been physically implemented in the Nomad 200. The efficient and robust reactive navigation of the robot has been confirmed by real-time experiments. Fig. 12 shows the robot at several critical points along its path with respect to the navigation task and environment similar to those shown in Fig. 8.

6. Conclusion

A reactive control scheme, involving the sensing and reaction strategies, is proposed for the real-time navigation of a mobile robot. Application of fuzzy logic to this control problem enables the robot, while moving towards the target, to react effectively to unknown arbitrary environments, handle the coarse range information of sonar sensors and coordinate the different reactive behavior types. A comprehensive and integrated rulebase for the fuzzy reactive control is extracted from the human driving experience and the robot reaction commands (the steering angle and the speed) inferred from fuzzy reasoning are the compromise results satisfying both target reaching and obstacle avoidance requirements. Compared with the model-based navigation approaches [ 1,2,4--6,10,12,13], the fuzzy reactive control scheme is technically more attractive in view of the short reaction time and fast decision-making process.

184

W.L. Xu et a l . / Robotics and Autonomous Systems 23 (1998) 171-186

(i) at the point A

(ii) at the point C

(iii) at the point D

(iv) at the point E

(v) at the point F Fig. 12. The robot at several critical points along its experimentalpath. The real/virtual target switching strategy proposed enhances and refines the total performance of the reactive robot, particularly when the robot may otherwise get trapped before a wide wall or oscillate round a comer. Compared with other techniques for solving the robot trapping and wandering (limit cycle) problem [9,14,15,17], the target switching technique is fast in response and easy to implement and provides straightforward interpretation of its operation. The efficiency and effectiveness of the refined fuzzy reactive control scheme are demonstrated by

V~L. Xu et aL /Robotics and Autonomous Systems 23 (1998) 171-186

185

m e a n s o f b o t h s i m u l a t i o n a n d p h y s i c a l e x p e r i m e n t . T h e r e a c t i v e m e c h a n i s m i n v o l v e d in r o b o t n a v i g a t i o n in various e n v i r o n m e n t s c a n b e readily e x p l a i n e d u s i n g the f e a t u r e p o i n t s in the v a r i a t i o n c u r v e s o f the r o b o t s p e e d a n d the relative target distances.

Acknowledgements T h e w o r k p r e s e n t e d in this p a p e r was s u p p o r t e d by the Strategic R e s e a r c h G r a n t no. 7000731 f r o m the City U n i v e r s i t y o f H o n g Kong.

References [1] 1. Boren, Y. Koren, Obstacle avoidance with ultrasonic sensors, IEEE Journal of Robotics and Automation 4 11988) 213-218. [21 J. Borenstein, Y. Koren, Real-time obstacle avoidance for fast mobile robot in cluttered environments, in: Proceedings of the IEEE International Conference on Robotics and Automation, 1990, pp. 572-577. 13] J. Borenstein, Y. Koren, Noise rejection for ultrasonic sensors in mobile robot applications, in: Proceedings of the IEEE International Conference on Robotics and Automation, 1992, pp. 1727 1732. J4] A. Elfes, Sonar-based world mapping and navigation, IEEE Journal of Robotics and Automation 3 f 1987) 249-265. 151 O. Khatib, Real-time obstacle avoidance for manipulators and mobile robot, in: Proceedings of the IEEE International Conference on Robotics and Automation, 1985, pp. 500-505. 161 Y. Koren, J. Borenstein, Potential field methods and their limitations for mobile robot navigation, in: Proceedings of the IEEE International Conference on Robotics and Automation, 1991, pp. 1398-1404. [7] P.S. Lee, L.L. Wang, Collision avoidance by fuzzy logic control for automated guided vehicle navigation, Journal of Robotic Systems 1 I (1994) 743-760. 18] W. Li, Fuzzy-logic-based reactive behavior of an autonomous mobile system in unknown environments. Engineering Applications of Artificial Intelligence 7 (I 994) 521-531. [91 W. Li, A hybrid neuro-fuzzy system for sensor based robot navigation in unknown cnvironments, in: Proceedings of the American Control Conference, 1996, pp. 2749-2753. [10l V. Lumelshy, T. Skewis, Incorporating range sensing in the robot navigation function. IEEE Transactions on System, Man and Cybernetics, 30 (1990) 1058-1069. [ 111 M. Maeda, Y. Maeda, S. Murakami, Fuzzy drive control of an autonomous mobile robot, Fuzzy Sets and Systems 3911991 ~ 195-204 [ 12] H. Noborio, T. Yoshioka, T. Hamaguchi, On-line deadlock-free path-planning algorithms by means of a sensor-feedback tracing, in: Proceedings of the IEEE International Conference on System, Man and Cybernetics, 1995, pp. 1291-1296. [ 13] S.M. Noorhosseini, A,S. Malowany, GORP: a new method for mobile robot path planning problem. SPIE 183 I, Mobile Robots VII (1992) 37-44. [ 141 F.G. Pin, S.R. Bender, Adding memory processing behaviors to the fuzzy behaviorist approach i FBA t: resolving limit cycle problcms in autonomous mobile robot navigation, Intelligent Automation and Soft Computing (1997). [ 151 K.R Prabir, K. Asim. Mobile robot navigation using a neural net, in: Proceedings of the IEEE International Conference on Robotics and Automation, 1996, pp. 1503-1508. 1161 W.L. Xu, S.K. Tso, Real-time self-reaction of a mobile robot in unstructured environment through fuzzy reas¢ming. Engineerin~ Applications of Artificial Intelligence 9 (1996) 475-485. [17] W.L. Xu, S.K. Tso, Reaction-based fuzzy control of a mobile robot in unstructured environment, in: M. Jashidi. M Fathi, F. Pierrol (Eds.), Soft Computing with Industrial Applications, TSI Press, 1996, pp, 711-716.

186

W.L. Xu et al./ Robotics and Autonomous Systems 23 (1998) 171-186

W.L. Xu received his PhD degree in Mechatronic Engineering from the Beijing University of Aeronautics and Astronautics in 1988. He has held research fellowships in Germany, Japan and Hong Kong. He is currently a Research Assistant Professor with the Centre for Intelligent Design, Automation and Manufacturing, the City University ofHong Kong. His research interests include intelligent mobile robot, service robots, modular robotics, sensor-based flexible manipulator, computational intelligence in robotics. He is also the principal investigator of several funded projects in robotics. He is a member of IEEE, senior member of CSME and active member of New York Academy of Science.

S.K. Tso has joined the City University of Hong Kong as Professor of Mechatronics and Automation since 1995 after a period of long service with the University of Hong Kong. He has carried out research in the broad field of industrial electronics, automation and control; supervised numerous Ph.D., M.Phil. and M.Sc. students: and published over 170 referred scientific papers. He has worked in the industrial electronics and control industry, and served as consultant for a number of government and industrial projects. He has held visiting professorships in many universities including the University of Toronto, University of Waterloo and National University of Singapore. He is fellow of lEE and HKIE. He is a senior member of IEEE. He is currently the Director of the Centre for Intelligent Design, Automation and Manufacturing.

Y.H. Fung was born in Macau in 1960. He received the higher diploma in Electronic Engineering from Hong Kong Polytechnic in 1983, and M.Sc degree in Engineering Management from City Polytechnic of Hong Kong in 1994. He is perusing a Ph.D. degree in Electrical Engineering at the University of Hong Kong. His research interests include autonomous vehicle control using fuzzy and/or neural network. He is currently serving as an engineer in the Centre of Design, Automation, and Manufacturing, Faculty of Science and Technology, City University of Hong Kong.