InTech uses cookies to offer you the best online experience. By continuing to use our site, you agree to our Privacy Policy.

Computer and Information Science » Numerical Analysis and Scientific Computing » "Numerical Analysis - Theory and Application", book edited by Jan Awrejcewicz, ISBN 978-953-307-389-7, Published: September 9, 2011 under CC BY-NC-SA 3.0 license. © The Author(s).

# Obstacle Avoidance for Autonomous Mobile Robots Based on Position Prediction Using Fuzzy Inference

By Takafumi Suzuki and Masaki Takahashi
DOI: 10.5772/24494

Article top

## Overview

Figure 1. An omni-directional platform of a prototype robot (left), a situation that the robot needs to avoid the other robot (right)

Figure 2. A situation of obstacle avoidance

Figure 3. Potential membership functions (PMFs): for an obstacle (left) and a goal (right).

Figure 4. Predicted coordinates of a robot and an obstacle

Figure 5. A PMF for an obstacle considering relative velocity

Figure 6. A PMF for a goal

Figure 7. A mixed PMF

Figure 8. Visualization of PMF

Figure 9. Simulation results of an obstacle avoidance going by each other when speed of obstacle was 0.0 m/s and of a robot was 0.5 m/s

Figure 10. Simulation results of an obstacle avoidance going by each other when speed of obstacle was 0.0m/s and of a robot was 0.8m/s

Figure 11. Simulation results of obstacle avoidance going by each other when speed of an obstacle was 0.5 m/s and of a robot was 0.5 m/s.

Figure 12. Trajectories of the obstacle (ball) and the robot with the PMF considering relative velocity (a) and not considering relative velocity (b)

# Obstacle Avoidance for Autonomous Mobile Robots Based on Position Prediction Using Fuzzy Inference

Takafumi Suzuki1 and Masaki Takahashi1

## 1. Introduction

In the future, it’s not difficult to image that we will often come across many autonomous mobile robots traversing densely populated place we live in. In such situation, because the autonomous mobile robots need to carry out their tasks in a place with unknown obstacles, the obstacle avoidance is one of the important functions of the robots. With a view to implementation of autonomous mobile robot working in doors, we employ an omni-directional platform as shown in Fig. 1 (left). For experimental verification, an omni-directional mobile robot shown in Fig. 1 (right) is developed. The robot has an omni-directional camera for environmental recognition, and can move to all directions by four omni wheels.

While there are many studies about obstacle avoidance method focusing attention on possibility of avoidance, this paper presents the method focusing on not only possibility but also safer trajectory of avoidance. Even if there are the same situations that the robot needs to avoid a static obstacle, timing of beginning avoidance behaviour should vary according to the robot speed. If the obstacles are moving also, the timing should vary according to the velocities of the obstacles. To cite a case, in a situation that a robot and an obstacle go by each other as shown in Fig. 2, the robot should avoid along the curved line like (iii) according to the speeds of the obstacle and own speed. In order to get to the goal with efficient and safe avoidance behaviour in the unknown environment for the robots, predicting the future obstacles’ positions by their current motions is needed.

This paper introduces a real-time obstacle avoidance method introducing the velocity of obstacle relative to the robot. By means of considering predicted positions of the robot and the obstacle calculated from the time and the relative velocity, the robot can begin the avoidance behaviour at an appropriate time according to the velocity of the obstacle and the robot.

Some researches focus attention on the velocity of obstacle (Ko & Lee, 1996) to avoid moving obstacles efficiently. In this research, virtual distance function is defined based on distance from the obstacle and speed of obstacle, however, only projection of the obstacle velocity on the unit vector from the obstacle to the robot is considered. In other words, the velocity of the robot is not considered.

#### Figure 1.

An omni-directional platform of a prototype robot (left), a situation that the robot needs to avoid the other robot (right)

#### Figure 2.

A situation of obstacle avoidance

On the other hand, in (Ge & Cui, 2002), the velocity of the obstacle relative to the robot is considered. Our approach also employs the relative velocity. In addition to this approach, a position vector of the obstacle relative to the robot in the future is calculated by the relative position and the velocity.

In order to solve the real-time motion planning problem, there are effective methods (Khatib, 1986) (Arkin, 1989) (Borenstein & Koren, 1991) (Fox et al., 1997). Fuzzy potential method (FPM) (Tsuzaki & Yoshida, 2003) (Otsuka et al. 2005) is also one of the effective methods. In this research, the method was applied to an autonomous mobile robot which plays soccer. By adequate designing of potential membership function (PMF), it was realized that wheeled robots got to the goal with conveying a soccer ball and avoiding obstacles. This method is easy to understand at a glance. However, in dynamic environment, to avoid moving obstacles efficiently, more specific guideline of designing is desired. In this paper, we introduce design method of PMF considering the predicted positions and discuss the availability by comparing the design of PMF considering the relative velocity and that not considering.

In this paper, for the purpose of avoiding the moving obstacle safely and smoothly, design methods of the potential membership function (PMF), which is considering the velocity of the obstacle relative to the robot, are presented.

#### Figure 3.

Potential membership functions (PMFs): for an obstacle (left) and a goal (right).

### Figure 4.

Predicted coordinates of a robot and an obstacle

## 2. Fuzzy potential method (FPM)

In the fuzzy potential method (FPM), a current command velocity vector considering element actions is decided in real time. Element actions are represented as potential membership functions (PMFs), and then they are integrated by means of fuzzy inference. Furthermore, by using a state evaluator, the PMFs are modified adaptively according to the situation. The directions on the horizontal axis in Fig. 3 correspond to the directions which are from -π to π radians and measured clockwise from the front direction of the robot. The grade for the direction is represented on the vertical axis. By use of the grade, direction and configured maximum and minimum speed, the current command velocity vector vout=(vrx,vry) is calculated. The command velocity vector is realized by an omni directional platform.

PMF idea allows us to represent our knowledge and experiences easily, and furthermore it gives us easy understanding. The grade can be seen as a desire for each direction of the robot. In this paper, to discuss an obstacle avoidance problem, methods for generating of PMF to head to a goal and to avoid moving obstacles are introduced. This method has two steps. First step is generating PMFs. Second step is deciding the command velocity vector by use of fuzzy inference to integrate the PMFs. Hereinafter, design method of PMF considering the obstacle velocity relative to the robot and way to decide the command velocity vector by fuzzy inference are described

## 3. FPM considering the relative velocity

To realize the obstacle avoidance in dynamic environment, the proposed method employs two different PMFs, one is considering vectors of obstacle’s position and obstacle‘s velocity relative to the robot and the other is to head to the goal. PMF is denoted by μ which is function ofθ. Note θ is the direction from -π to π radians measured clockwise from front direction of the robot. To simplify the analysis, it is assumed that the autonomous mobile robot detects obstacles by equipped external sensors and is capable of calculating the positions and velocities of obstacles relative to the robot. The shapes of the robot and the obstacles are treated as circles on 2D surface.

### 3.1. Design of PMFs

#### 3.1.1. PMF for an obstacle

To avoid moving obstacles safely and efficiently, an inverted triangular PMF by specifying a vertex, height and base width is generated. Because this PMF considers future positions of the robot and the obstacle, the robot can start avoiding the obstacle early and be prompted not to go on to the future collision position. For the purpose of safe avoidance, the PMF μo is generated.

First, in order to predict the future state of both obstacle and robot with the aim of efficient avoidance, a predicted relative position vector, in γTseconds, rr,o_p=(rx_p,ry_p)is calculated as following equation:

 rr,o_p=rr,o+γTvr,o (1)

where rr,o=(rx,ry) is current position vector of the obstacle relative to the robot, and vr,o=(vx,vy) is the current velocity vector of obstacle relative to the robot. γis an arbitrary parameter from 0 to 1.T,which is the time until the distance between the obstacle and the robot is minimum, is defined as following equation:

 T=‖rr,o-p‖‖vr,o‖ (2)

where p=(px,py) is a position vector of the obstacle relative to the robot when a distance in the future between the obstacles and the robot is minimum. pis calculated by means of relative position and velocity vector as following equation:

 (pxpy)=({(vy/vx)ry-rx}/(vy/vx+vx/vy)-(vy/vx)px) (3)

As described above, the predicted relative position vector, at the time γT seconds from now, rr,o_pis calculated as Fig. 4 shows. By use of this position vector, a predicted obstacle direction relative to the robot θr,o_p is calculated as following:

 θr,o_p=arctan(ry_prx_p) (4)

where θr,o_pis decided to be the vertex of the inverted triangle.

Next, as a measure to decide how far the robot should depart from the obstacle, ais defined as the height of the inverted triangular PMF. ais described as following equation:

 a=α-‖rr,o_p‖α-Rr,oif‖rr,o_p‖<α (5)
 Rr,o=Rr+Ro (6)

where Rr and Ro denote respectively the radius of the robot and that of the obstacle treated as circles. If the calculated obstacle position at γT seconds later is inside of a circle with radius α from the robot position at γT seconds later, the PMF for obstacle avoidance considering the relative velocity is generated. In other words, if a predicted relative distance rr,o_p is belowα, ais defined and the inverted triangular PMF corresponding to the obstacle is generated. Smaller the predicted relative distance is, larger the value of a is.

In addition, a base width of inverted triangular PMF is decided by following equation:

 b=η‖vr,o‖+ϕ (7)

where ϕ is decided based on the sum of radiuses of the robot and the obstacle (Rr,o), and predicted relative position vector (rr,o_p) as Fig. 4 shows. ϕis calculated by following equation:

 ϕ=arcsin(Rr,o‖rr,o_p‖) (8)
.

bincreases up to π radian in proportion to an absolute value of the relative velocity and predicted relative distance. If the obstacle comes at rapidly, for instance, the value of b increases. Hence, the base width grows shown in Fig. 5, and the value of grade for the direction of the obstacle relative to the robot comes about to be reduced. ηis a gain.

As mentioned above, by deciding the vertex, the height and the base width of inverted triangle considering the predicted relative position, PMFμo, which aims to early starting of avoidance behavior and prompt the direction of the velocity vector to be far from obstacle direction in response to the fast-moving obstacle, is generated.

#### 3.1.2. PMF for a goal

To head to the goal, a PMF μd shaped like triangle is generated as shown in Fig. 6. As a measure to decide how much the robot want to head to the goal, cis defined as the height of the triangular PMF. cgets the maximum value at an angle of the goal directionθd, which is relative to the front direction of the robot, and is described as following equation:

 c={‖rr,d‖εif‖rr,d‖≤ε1.0if‖rr,d‖>ε (9)

### Figure 5.

A PMF for an obstacle considering relative velocity

### Figure 6.

A PMF for a goal

where rr,d is an absolute value of the position vector of the goal relative to the robot. εis constant. If rr,d is belowε, cis defined. The shorter the distance between the obstacle and the robot is, the smaller c becomes. Therefore the robot can decelerate and stop stably.

### 3.2. Calculation of command velocity vector by fuzzy inference

The proposed method employs fuzzy inference to calculate the current command velocity vector. Specifically, The PMFμo, which considers the velocity of obstacle relative to the robot, and the PMFμd, which is to head to the goal, are integrated by fuzzy operation into a mixed PMF μmix as shown in Fig. 7. μmixis an algebraic product of μo and μd as following equation:

 μmix=μd⋅μo (10)

### Figure 7.

A mixed PMF

Finally, by defuzzifier, the command velocity vector vout=(vrx,vry) is calculated as a traveling direction θout and an absolute value of the reference speed of the robot vout base on the mixed PMFμmix. θoutis decided as the direction θi which makes a following function f(θ) maximum.

 f(θ)=∑i=j-nj+nμmix(θi) (11)

where n is the parameter to avoid choosing undesirable θi caused by such as noises on the sensor data. Based onθout, voutis calculated as following equation:

 vout=μmix(θout)(vmax-vmin)+vmin (12)

where μmix(θout) is the mixed PMF μmix corresponding to theθout, vmaxand vmin are configured in advance respectively as higher and lower limit of the robot speed.

Based on θout and vout, vout=(vrx,vry)is calculated as following equation:

 vrx=voutcosθout . (13)
 vry=voutsinθout . (14)

### 3.3. Visualization for PMF on two-dimension surface

It would be convenient to have a visualizer that show us why the robot will go on to the direction. In the proposed method, we can see aspects of the PMFs on two dimension surface and understand easily the reason for choice of the direction. For example, a PMF described on polar coordinate shown in Fig. 8 (left) is comparable to the PMF described on x-y coordinate shown in Fig. 8 (right).

### Figure 8.

Visualization of PMF

### Figure 9.

Simulation results of an obstacle avoidance going by each other when speed of obstacle was 0.0 m/s and of a robot was 0.5 m/s

### Figure 10.

Simulation results of an obstacle avoidance going by each other when speed of obstacle was 0.0m/s and of a robot was 0.8m/s

## 4. Simulation results

To verify the effectiveness of the proposed method that employs PMF considering the velocity of the obstacle of the robot, numerical simulations which assumed an obstacle avoidance of autonomous omni-directional mobile robot were carried out.

In this simulations as shown in Figs. 9-11, the radius of robot and obstacle were supposed to be both 0.3m, therefore,Rr,o=0.6m. αin Eq. (5) was 1.6m. γin Eq. (1) was 0.7. εin Eq. (9) is 1.0m.

Figure 9, 10 and 11 show the simulation results when the robot passed the obstacle. Initial positions of the robot and the obstacle were respectively (0.0m,0.0m) and(5.0m,0.3m). The goal position of the robot was(7.0m,0.0m). In the situation in Figure 9, the higher limit of robot speed wasvmax=0.5m/s, the lower one wasvmin=0.0m/s. The higher limit of acceleration of the robot wasar=1.0m/s2. The simulations have done with two different obstacle speedvo=0.0,0.5m/s, which the direction was negative on x-axis. Figure 9(a) and (b) show respectively the trajectory of the robot that the PMF for obstacle avoidance is generated without considering the relative velocity and that with considering the relative velocity, whenvo=0.0m/s.

As shown in Figure 9(a), the robot got close to the obstacle because the relative velocity was not considered. On the other hand, in Figure 9(b), the robot succeeded at the early starting of avoidance behaviour due to generating PMF by use of predicted information based on the relative velocity. In addition to the situation as in Figure 9(b), in Figure 10, the higher limit of the robot speed has been changed:vmax=0.8m/s. Even if the robot speed becomes higher, the robot succeeded in efficient avoidance.

In Figure 11(a) and (b), the trajectories of the robot, with PMF considering the relative velocity and not considering that, when the obstacle speedvo=0.5m/s. In (a), due to delay of starting avoidance behaviour, the robot collided with the obstacle. On the other hand, in (b), due to the early starting of the avoidance behaviour, the robot succeeded at the obstacle avoidance.

From these simulation results, it is confirmed that by an associating the PMF for avoidance with the relative velocity, higher the obstacle speed is, earlier the timing of the avoidance behaviour of the robot is, therefore the ability of avoiding obstacle can be enhanced.

In order to verify the effectiveness of the proposed method, simplified experiments were also carried out.

In this experiments as shown in Fig.12. A ball was supposed to be a moving obstacle and is rolled toward the robot. The robot recognized the environment by the omni-directional camera. A position of a goal and that of an obstacle relative to the robot were calculated by extracting features based on objects’ colours. The robot size is L 0.4×W 0.4×H 0.8m and the ball diameter is 0.2m. The radius of robot and obstacle were supposed to be 0.3m and 0.1m respectively, therefore,Rr,o=0.4m. αwas set to 1.4m when the robot used the proposed PMF which was considering relative velocity. When the robot didn’t use the proposed PMF, αwas set to 2.4m. γwas 0.7. εwas 1.0m. vmaxwas 0.5m/s, vminwas 0.0m/s. arwas1.0m/s2.

#### Figure 11.

Simulation results of obstacle avoidance going by each other when speed of an obstacle was 0.5 m/s and of a robot was 0.5 m/s.

When the robot used the proposed PMF, which was considering relative velocity, as shown in Fig. 12 (a), it succeeded in avoiding the moving ball with smooth trajectory. On the other hand, the robot with the PMF, which was not considering relative velocity, diverged once as shown in Fig. 12 (b).

### Figure 12.

Trajectories of the obstacle (ball) and the robot with the PMF considering relative velocity (a) and not considering relative velocity (b)

## 5. Conclusion

In this paper, for the purpose of avoiding the moving obstacle safely and smoothly, design methods of the potential membership function (PMF), taking into consideration the velocity of the obstacle relative to the robot have been presented. The proposed PMF for an obstacle and PMF for a goal are unified by fuzzy inference. By defuzzification, the command velocity vector of the robot is calculated and the obstacle. Numerical simulations and simplified experiments, which assumed an obstacle avoidance of an autonomous omni-directional mobile robot, were done. As the result of the comparison between the design method of PMF using relative velocity and not using, it was confirmed that the PMF using relative velocity enhanced the ability of avoiding the moving obstacle.

## References

1 - O. Khatib, 1986Real-time Obstacle Avoidance for Manipulators and Mobile Robots, In Int. J. of Robotics Research, 519098
2 - R. Arkin, C. , 1989Motor schema-based mobile robot navigation, In Int. J. Robotics Research, 849296
3 - Y. N. Ko, H. B. Lee, 1996Avoidability Measure in Moving Obstacle Avoidance Problem and Its Use for Robot Motion Planning, In Proc. of IEEE/RSJ Int. Conf. on Intelligent Robots and Systems (IROS 96), 12961303
4 - S. S. Ge, J. Y. Cui, 2002Dynamic Motion Planning for Mobile Robots Using Potential Field Method, In Autonomous Robots, 13207222
5 - J. Borenstein, Y. Koren, 1991The Vector Field Histogram Fast Obstacle Avoidance For Mobile RobotsIn IEEE Trans. on Robotics and Automation, 73278288
6 - D. Fox, W. Burgard, S. Thrun, 1997The Dynamic Window Approach to Collision AvoidanceIn IEEE Robotics and Automation, 41123
7 - R. Tsuzaki, K. Yoshida, 2003Motion Control Based on Fuzzy Potential Method for Autonomous Mobile Robot with Omnidirectional Vision. In Journal of the Robotics Society of Japan. 216656662
8 - F. Otsuka, H. Fujii, Yoshida, K.,,2005Action Control Based on Extended FPM for an Autonomous Mobile Robot. The 26th Annual Conference of the Robotics Society of Japan.