C yright 0 IFAC Artificial Intelligence in Real-Time Control, K~a Lumpur, Malaysia, 1997
A Fuzzy LOGIC BASED GoAL ACIllEVING REACTIVE NAVIGATION BEHAVIOUR FOR A CLIMBING MOBILE ROBOT
Adel Ali S. AI-Jumaily
Shamsudin H.M. Amin
Mohamed Khalil
[email protected]
[email protected]
[email protected]
Centre for Artificial Intelligence and Robotics (CAIRO) Faculty of Electrical Engineering University of Technology Malaysia Locked Bag 791, 80990 Johor Bahru, Malaysia Fax: + 607 5566272
Abstract:
intelligent autonomous system, allows for an independent execution or commands like "go from A to B", and navigates the robot safely in short path, by excluding unnecessary movements, to one or several target locations.
Controlling the movement of the robot through the dynamic environment is a main important issue. We shall describe a reactive navigation that is flexible to react through their behaviours to the change of the environment. Fuzzy logic was used to build the navigation behaviours. By analysing the movement of the robot we have put forward our fuzzy rules to control two behaviours, move for free movement and obstacle avoidance to avoid collision with the obstacles. Our work utilises the concept of reactive control behaviour for goal achieving navigation. Copyright © 1998 IFAC
1 Introduction Navigation is the science (or art) of directing the course of mobile robot as the robot traverses the environment. Inherent in any navigation scheme is the desire to reach a destination without becoming lost or crashing into any objects. Navigation is an important component for
The generation methods of navigation can be classified into family of classical methods that depend on mode ling of the operating environment. The main difficulty associated with these methods is the updating of information of the changing environment in which objects may move, and new objects may appear. To accurately obtain a mathematical model that describes dynamic, uncertain and complex environment is almost impossible.
Universal Functions approximate that employed fuzzy logic and neural networks to solve the difficulties of entire world model in real time, make model-free estimators in preplanning a collision-free path. They do not need the mathematical description of how the output functionally depends on the input. The robot needs to navigate in a dynamic environment to deal with the issue of uncertainty and incomplete information about the environment in a timely manner [1]. One of the problems of neural networks is the learning. Neural learning procedures for implementing in autonomous robots facing changing environment, suffer from an extremely time consuming learning phase. The
227
In this paper, on the basis of our previous work[ I], we present the robot model, fuzzy control system and memberships, and a simulation to illustrate the performance of this control approach. The paper is organized as follows: Section 2 describes the model of the robot and control features. The movement analysis and formulation of reactive bebavior using fuzzy rules are presented in section 3. Section 4 discusses the result of the simulation for the navigation control. Section 5 is the conclusion.
neural network systems start to learn from zero, with no initial knowledge. Although very important, it is very difficult to select a good criticism and it is impossible to plan for every situation. Fuzzy logic, although baving the same advantage, it does not have the main neural network disadvantage, that is the black box aspect. In addition, it deals with various situations without analytical model of environments, and is reactive because there is no planning stage [2], as well as gives the opportunity to scale the mapping using the knowledge available of the process control. Fuzzy logic is used to select suitable rules for tracing a path or avoiding obstacles according to the situation. Fuzzy logic controllers provide a means of transforming of linguistic control strategy based on expert knowledge into an automatic control strategy. Fuzzy control appears to be very useful for handling problems that are to complex for analysis conventional quantitative techniques or when the available sources of information provide qualitative, approximate, or uncertain data. The control of mobile robot falls into this class of problems.
2
Model of the robot
Fuzzy control architecture for mobile robot is illustrated in Fig (I). The sensors discover the environment and send the information to the fuzzy control navigator.
There are two major schools of control the navigational planning of mobile robot: hierarchical school and reactive school. Hierarchical control systems share a structured and clearly identifiable sub-division of functionality [3]. Reactive navigation (reactive behaviors) utilizes the information provided by sensory data and plans the path reactive to this data. Reactivity provides immediate response to an unpredictable environmental situation by giving up the idea of reasoning the future consequences of action [4]. Reactive methods eliminate or minimize the use of memory.
Decoder
Defuzzifier
Fig 1 fuzzy control architecture
Here fuzzy control contains three main steps: encoder (Fuzzification) that fuzzify the information depending on its membership, Inference that applied the rules in its knowledge base, and decoder (Defuzzification) that change fuzzy values to crisp values that make the robot move. robot is a walking and climbing robot with body width of 30 cm and requires 40 cm on each side for free movement as shown in Fig (2)
In order to use fuzzy logic in navigation planning and reactive control, we use fuzzy logic control with behavior-based control such as reactive navigation.
Om
Reactive navigation is a mapping between sensory data and commands, and building a reactive navigation system means providing such mapping[2]. There are some work already undertaken by using concept of reactive navigation based fuzzy control for mobile robot [4, 5, 6, 7, 8,9, 10]. In the work done on collision avoidance of mobile robots in precisely known environment, the robot has the map of its environment and is given location of the goal. In some work done for legged robot in outdoor terrain, it is assumed that the navigation is known and it works for determining the leg to ground velocity [11]. In our work we assume that the robot moves in an unknown environment, without any map, reacts with the environment, and reason out its path until it reaches its goal discovered by heat (fire) detector.
6M
6M
6M
\.10 M
Fig 2 Climbing Robot
228
The membership functions are chosen as depicted in Fig (5). Trapezoidal membership functions are used to represent the possibility of inputs and outputs values. Trapezoidal shapes do not require the use of complicated mathematical operations that are time consuming on low cost microcontrollers.
3 Formulation of Reactive Behaviour A key issue of the behaviour is how to fonnulate each reactive behaviour quantitatively. What is the safe distance for the goal (fire), what is the safe distance for the obstacles and how the robot treats the safe distance in narrow corridors. The quantitative fonnulation must be done well and the membership must differ depending upon the characteristic of the reactive navigation behaviour.
Left-obst
Speed Fuzzy controller
In our work, we use fuzzy logic to directly orient dynamic environment, improve real-time response and reliability by building a set of fuzzy variables and rules that makes expert decision in planning the action needed to solve the problems and improve navigational planning. The aim of our work is not to build a map of the environment from sensory infonnation, but to obtain some immediate indication about the robot environment.
Orientation Goal-reach Fig 4 Input/output of the system
In order to fulfill a movement of the robot in unknown environment we need at least the following types of reactive navigation behaviours (1) Move behaviour (2) Obstacle avoidance behaviouras Fig (3) illustrated.
(
Move
The goal-reach membership function is crisp in the nature. Off is a reading of > 1 and indicates that the goal was not detected. On is reading of <1 and indicates that the goal was detected. The orientation function signs refer to turn right if it is positive and turn to the left if it is negative. The table (1) shows the parameters of the input and output membership functions. The table clarifies that the safety distance of right and left sides is not less than 20 centimeter. For the front obstacle, the safety distance, is one meter. When the robot reach the goal (fire), it should be stopped with distance (1 to 1.4) meter.
Obstacle avoirlance
Each trapezoidal membership function is needs four values to be drawn, as shown in table (1). The first value from the left represent the start value of the membership (zero degree of membership). The second value represents the start value of full membership (one). The third one represents the end value of the full membership, if the third value equals the second one then the trapezoidal membership will take triangle shape. The last value represents the end of the membership shape in which the degree of membership is zero.
Fig 3 reactive navigation behaviours A reactive navigation system based fuzzy control, as shown in Fig (4), is proposed for our robot. The inputs are the data (signals) provided by sensors in frontal, left, right obstacle's range and the reaching of the goal. The outputs are commands of the speed and the orientation of the robot that reacts with the changing of the environment.
We used 27 rules and Min-Max inference algorithm and the centroid defuzzification method. Our rules take the fonnof: If (goal-reach is nogoal) and (Right-obstacle is near) and (Left-obstacle is far) and (front-obstacle is far) then (orientation is center)(speed is fast).
Since the robot is to be utilised for fire fighting applications, we choose ultrasonic sensors with a range 6 meters that sufficiently cover the front and sides of the robot to detect obstacles. The goal-reaching sensor is heat or fire detector.
229
r-!!!,
-r
...
AI
f
Cl
-
..
1
behaviour with free motion and coUision avoidance behaviour. The robot move straight until discover front obstacle, than change it path, and change it again to move straight inside narrow corridor and so on until it reaches the
i
Cl
(I
..
Cl
co
0.:
v\
2
I
3
4
5
o
,
2
. -_ _ _ G
3
~
[
(
l
I ...,
51lt;:3)Z3)
.8)
.1IJ)
«l
0
D Sl
1IJ)
I
8)
s_..iiiiiiiiiiii-J
In ut Membershi Functions
J
2
4
6
8
10
1
{'
t
1
t
Figure 6 Simulation of the robot movement
goal detected by the heat (fIre) sensor in point G then it stopped near it with the safety distance (1 to 1.4 meter.)
-
The experimental result of the simulation shown the robot is capable of moving to the goal by avoiding collisions with obstacles along the way. To get better idea of what the system behaviour look like, we can view a three-dimensional action control surface of the system output generated by plotting the variables of the input with the output variable (orientation) at each point as a height.
Ou ut Membershi Functions Fig 5 Membership Functions
4.
Navigation Simulation
Some action control surface of the system output is shown in Fig 7. The high spots on the plot are the orientation degrees related to the other variables. We can see in the fIrst plot, the front obstacle (on x-axis), the goal reach (on y-axis) and the orientations (on z-axis) variables, that if the robot does not reach the goal and there is no obstacle sensed in the front, the action is to move in the same direction until an obstacle is discovered, and the robot will change its orientation. The degree of the changing of the orientation depends on the distances of the front
In order to demonstrate the operation of our reactive
navigation behaviours in the possible manner, we simulate the "world" in hypothetical layout and the robot model described in section 2. The experimental results of the simulation are shown in Fig. 6. The robot begins to move from start point S (x, y, 9) and makes a decision to move along while generating the path by using the move
230
obstacle and the other con~i~ons of the rig~t ~bstac.le and I ft obstacle variables. Smularly, the vanations m the ~tances of obstacle at the front, left an~ right are manifested in the control surfaces as shown m the other
References
plots.
o0
[1]
Adel Ali AI-Jumaily and Sharnsudin H. M. Amin, "Fuzzy Logic for Real Time On-Board Navigation of a Climbing Mobile Robot," Proceedings of the International conference on robotics. vision and parallel processing for industrial automation 1996, vol. 1, pp. 171-177, Ipoh, Malaysia, November 1996.
[2]
Patrick Reignier, "Fuzzy Logic Techniques For Mobile Robot Obstacle Avoidance," Robotics and Autonomous Systems, pp.143-153, 12 (1994).
[3]
Ronald C. Arkin, "Towards the Unification of Navigational Planning and Reactive Control," Working Notes the AAAI Spring Symposium on Robot Navigation, Stanford University, USA, March 1989.
[4]
Alessandro Saffiotti, Enrique H. Ruspini, and Kurt Konolige, "Blending Reactivity and Goal Directedness in a Fuzzy Controller," Proceedings of the Second IEEE Conference on Fuzzy Systems, pp. 134-139, San Francisco, CA, March 1993.
[5]
Pai-Shih Lee and Ling-Ling Wang, " Collision Avoidance by Fuzzy Logic Control for Automated Guided Vehicle Navigation," Journal of Robotic Systems, VoUl (8), pp.743-760, (1994). Angelo Martioez, Eddie Tunstel, and Mo. Jamshidi, "Fuzzy Logic based collision avoidance for a mobile robot," Robotica, Vol. 12, No. 6, pp.521-577, 1994.
2 Len-obstade
Fig 7 Some Action Control Surface of the system output
5.
Conclusion [6]
The navigation of a climbing mobile robot is likened to a person who has poor eyesight trying to move about in dark area to light source with help of a candle. In this paper we present reactive navigation with two behaviours that react with sensory data of the environment. Fuzzy logic was used to build the move and collision avoidance behaviours in moving towards the target goal being detected by heat sensors. The result of investigation has shown that this system enables the robot to achieve the goal with the capability of avoiding collision with the obstacles along the way. Further research may be directed to optirnize the number of rules, and improve the gem,ration of the path by building multi-behaviours like following wall edges for walking robot and surface following for climbing robot.
Acknowledgment This work is funded by the Malaysia Intensification of Research Priority Areas project no . 09-02-06-0007, which is gratefully acknowledged.
231
[7]
Wei Li, "Fuzzy logic-based reactive behaviour control of an autonomous mobile robot system in unknown environments", Engineering Applications of Artificial Intelligence, Vol. 7, 521-531 , No 5, 1994.
[8]
Shigeki Ishikawa, "A Method of Indoor Mobile Robot Navigation by Using Fuzzy Control," Proceedings of the IEEEIRSJ International Conference on IROS, pp.l013-1018,.Osaka, Japan, 1991.
[9]
Hartrnut Surmann, Jorg Huser and Liliane Peters, "A Fuzzy System for Indoor Mobile Robot Navigation," Proceedings of the Fourth IEEE International Conference on Fuzzy System, pp. 83-86, Y okohama, Japan, March 1995.
(10)
R. Ouiguini and B. Belloulou, "Navigation of an Autonomous Wheelchair in a Structured Environment," Proceedine;s of the 1996 IEEEIECON 22nd International Conference on Industrial Electronic. Control and Instrumentation. Vol. 2, pp. 749-754, Taipei, Taiwan 1996.
[11)
Takeo Oomichi and Yasutaka Fuke, "Hierarchical Navigation of Legged Robot for Terrain Based on Sensor Fusion," Proceedine;s International Symposium on Robotics. Mechatronics and Manufacturine; System '92, pp. 1071- 1076, Kobe, Japan, September 1992.
Goal reach(units in meter) goal no-goal
0 I
0.99 5
10 II
10.99 I5
Variables (units in meter) Right obstacles and Left obstacle
Very near
Close
near
far
Vary far
0 0 0.8 1.4
0.8 1.4 1.4 2
1.4 2 2 2.4
2 2.5 3.1 4
2.4 4 6 6
Variables (units in meter) Front obstacles
Very near
Close
near
far
Vary far
0 0 I 1.4
1 1.4 1.4 2
1.4 2 2 2.6
2 2.6 2.6 3.3
2.6 3.3 6 6
Variables (angles) Orientation
Variables {cm/sec) Speed
Normal left -100 -70 -60 -15
Small left -60 -15 -15 0
Stop
Very slow
Slow
Medium
Fast
0 0 0.5 I
0.5 I 5 6
5 7 10 1I
10 13 17 20
17 22 30 30
Big Left -180 -1I0 -90 -60
Center -15 0 0 15
Small right 0 15 15 60
Normal right 15 60 70 100
Table (I) The Parameters of the Input and Output Membership functions
232
Big right 60 90 110 180