6
An AUV Fuzzy Obstacle Avoidance Method under Event Feedback Supervision H.L. Xu, X.S. Feng State Key Laboratory of Robotics, Shenyang Institute of Automation, CAS 114 Nanta Street Shenyang 110016, China Abstract- In order to improve adaptability of a class of under- actuated AUVs in unknown obstacles environment, this paper proposes a new obstacle avoidance method including three main parts. Firstly we design five basic obstacle avoidance behaviors in which emergency-yaw and holding-distance behaviors, and emergency-ascend and holding-altitude behaviors are responsible for avoiding obstacles in horizontal plane and in vertical plane respectively. All the behaviors have their own objectives and are implemented by fuzzy controllers. In the second part we present finite state automata (FSA) which are used to select a suitable obstacle avoidance behavior when an obstacle is detected. Each discrete state corresponds to a basic obstacle avoidance behavior. A set of events, oriented from changes of external environment, drive the obstacle avoidance automata from one state to another. The obstacle avoidance automata are able to make instantaneous response to external stimulation, but may come to a deadlock under some special conditions because of no considering historical information. So a supervisor based on event feedback is presented in the third part. It provides the obstacle avoidance automata with a control mode and can lead it to break a deadlock through local path planning. At last the availability and feasibility of the proposed method are demonstrated by simulation tests under more than 30 types of obstacle scenarios on an AUV semi-physical simulation platform. I. INTRODUCTION Real-time obstacle avoidance in unknown obstacles environment is a very difficult problem for under-actuated AUVs. It requires some additional considerations to develop an obstacle avoidance method for them. One is that under- actuated AUVs can not follow an arbitrary course because of less controllable degrees of freedom (DOF) than movement DOF. Then trajectory generation methods can not directly use to navigate under-actuated AUVs through unknown obstacles environment. Another consideration is that generally under- actuated AUVs have not the abilities of hovering and pivot steering, and can not take the “stop-then-turn-around” strategy like most autonomous ground vehicles. Nowadays many approaches such as artificial potential field [1] , fuzzy control [2~6] , neural network [7] , reinforcement learning [8] are applied in AUV real-time obstacle avoidance. One of the most popular approaches is fuzzy control with imitation of human logic. Wei Li [2] presented a low-level fuzzy following obstacle behavior and integrate it into a subsumption architecture for moth-inspired plume tracing. Khanmohammadi [4] designed a robust fuzzy controller for an underwater vehicle to avoid moving obstacles. But how to use fuzzy logic to solve real-time obstacle avoidance problem for under actuated AUVs still needs to research thoroughly. Therefore, the objective of the present works is to develop a method that integrates many fuzzy obstacle avoidance behaviors into finite state automata and can be applied for an under-actuated AUV. The AUV has one main thruster and two direction rudders. It can be regarded as a rigid body with six DOFs, but only four DOFs is controllable. An outline of the paper is as follows: Section 2 firstly introduces five basic obstacle avoidance behaviors, named as go-to-destination, emergency-yaw, emergency-ascend, holding-distance and holding-altitude. They are responsible for navigating to the goal point and avoiding obstacles in horizontal plane and vertical plane respectively. In section 3 we propose a FSA representation for selecting a suitable obstacle avoidance behavior when an obstacle is detected. A supervisor based on event feedback is proposed in section 4. It can solve the deadlock problem of the obstacle avoidance automata. In section 5 we demonstrate the availability and feasibility of the proposed method through two typical simulation tests on an AUV semi-physical simulation platform and come to a conclusion in the end. II. THE BASIC OBSTACLE AVOIDANCE BEHAVIORS 2.1 The go-to-destination behavior The go-to-destination behavior is used to make AUV follow the desired path and arrive at the goal point. The path may be either designed by operator offline or generated by the path planning method. Generally there are two methods for implementing the go-to-destination behavior. One is a position closed loop control (PCLC) mode, and the other is a trajectory closed loop control (TCLC) mode. Assume that d ψ denotes the AUV’s desired heading. It points to the goal point all the time in the PCLC mode, as shown in figure 1(S is the start point, T is the goal point). d b A ψ = But in the TCLC mode d ψ is relative to not only b A but also i D , the perpendicular distance to the desired path (shown as figure 2). d b A ψ = −Θ where Θ is calculated by the variable i D , the integral of i D the differential of i D , and the coefficients p K , i K , d K . p i i i d i d K D K D dt K D dt = + + 0-933957-38-1/09/$20.00 ©2009 MTS

05422363

Embed Size (px)

Citation preview

An AUV Fuzzy Obstacle Avoidance Method under Event Feedback Supervision

H.L. Xu, X.S. Feng

State Key Laboratory of Robotics, Shenyang Institute of Automation, CAS 114 Nanta Street

Shenyang 110016, China

Abstract- In order to improve adaptability of a class of under-actuated AUVs in unknown obstacles environment, this paper proposes a new obstacle avoidance method including three main parts. Firstly we design five basic obstacle avoidance behaviors in which emergency-yaw and holding-distance behaviors, and emergency-ascend and holding-altitude behaviors are responsible for avoiding obstacles in horizontal plane and in vertical plane respectively. All the behaviors have their own objectives and are implemented by fuzzy controllers. In the second part we present finite state automata (FSA) which are used to select a suitable obstacle avoidance behavior when an obstacle is detected. Each discrete state corresponds to a basic obstacle avoidance behavior. A set of events, oriented from changes of external environment, drive the obstacle avoidance automata from one state to another. The obstacle avoidance automata are able to make instantaneous response to external stimulation, but may come to a deadlock under some special conditions because of no considering historical information. So a supervisor based on event feedback is presented in the third part. It provides the obstacle avoidance automata with a control mode and can lead it to break a deadlock through local path planning. At last the availability and feasibility of the proposed method are demonstrated by simulation tests under more than 30 types of obstacle scenarios on an AUV semi-physical simulation platform.

I. INTRODUCTION

Real-time obstacle avoidance in unknown obstacles environment is a very difficult problem for under-actuated AUVs. It requires some additional considerations to develop an obstacle avoidance method for them. One is that under-actuated AUVs can not follow an arbitrary course because of less controllable degrees of freedom (DOF) than movement DOF. Then trajectory generation methods can not directly use to navigate under-actuated AUVs through unknown obstacles environment. Another consideration is that generally under-actuated AUVs have not the abilities of hovering and pivot steering, and can not take the “stop-then-turn-around” strategy like most autonomous ground vehicles.

Nowadays many approaches such as artificial potential field[1], fuzzy control[2~6], neural network[7], reinforcement learning[8] are applied in AUV real-time obstacle avoidance. One of the most popular approaches is fuzzy control with imitation of human logic. Wei Li[2] presented a low-level fuzzy following obstacle behavior and integrate it into a subsumption architecture for moth-inspired plume tracing. Khanmohammadi[4] designed a robust fuzzy controller for an underwater vehicle to avoid moving obstacles. But how to use fuzzy logic to solve real-time obstacle avoidance problem for

under actuated AUVs still needs to research thoroughly. Therefore, the objective of the present works is to develop a method that integrates many fuzzy obstacle avoidance behaviors into finite state automata and can be applied for an under-actuated AUV. The AUV has one main thruster and two direction rudders. It can be regarded as a rigid body with six DOFs, but only four DOFs is controllable.

An outline of the paper is as follows: Section 2 firstly introduces five basic obstacle avoidance behaviors, named as go-to-destination, emergency-yaw, emergency-ascend, holding-distance and holding-altitude. They are responsible for navigating to the goal point and avoiding obstacles in horizontal plane and vertical plane respectively. In section 3 we propose a FSA representation for selecting a suitable obstacle avoidance behavior when an obstacle is detected. A supervisor based on event feedback is proposed in section 4. It can solve the deadlock problem of the obstacle avoidance automata. In section 5 we demonstrate the availability and feasibility of the proposed method through two typical simulation tests on an AUV semi-physical simulation platform and come to a conclusion in the end.

II. THE BASIC OBSTACLE AVOIDANCE BEHAVIORS

2.1 The go-to-destination behavior The go-to-destination behavior is used to make AUV follow

the desired path and arrive at the goal point. The path may be either designed by operator offline or generated by the path planning method. Generally there are two methods for implementing the go-to-destination behavior. One is a position closed loop control (PCLC) mode, and the other is a trajectory closed loop control (TCLC) mode. Assume that dψ denotes the AUV’s desired heading. It points to the goal point all the time in the PCLC mode, as shown in figure 1(S is the start point, T is the goal point).

dbAψ =

But in the TCLC mode dψ is relative to not only bA but also iD , the perpendicular distance to the desired path (shown as figure 2).

dbAψ = − Θ

where Θ is calculated by the variable iD , the integral of iD the differential of iD , and the coefficients pK , iK , dK .

p i i i d id� K D K D dt K Ddt

= + +�

0-933957-38-1/09/$20.00 ©2009 MTS

T

SC

Ab

ψ

Fig. 1 The position closed loop control mode

T

SC

Di

Ab

ψ

Fig. 2 The trajectory closed loop control mode

2.2 The emergency-yaw and -ascend behaviors The above introduction has stated that the under-actuated

AUV, the research object of this paper, has one main thruster and two direction rudders. If the two direction rudders are simultaneously controlled to a large angle, the AUV may work out of control. So the obstacle avoidance behaviors in horizontal and vertical plane, named as the emergency-yaw and -ascend behaviors, need to be designed respectively.

This paper presents two connected fuzzy controllers, 1H and 2H , 1V and 2V separately for the behaviors such as figure 3.

The external inputs of the fuzzy controllers, eCF , eFL , eFR , eFD and eCD , represent the danger levels in the forward, forward-left, forward-right, forward-down and downward directions. Let 2oS , 1oS , 3oS , 4oS and 5oS denote the forward, forward-left, forward-right, forward-down and downward looking sonars. Their outputs are denoted by

2 ( )R t , 1( )R t , 3 ( )R t , 4 ( )R t and 5 ( )R t . The calculation formulas of the variables eCF , eFL , eFR , eFD and eCD are:

( )max 1( ) ( )fleFL t k R R t= −

( )max 2( ) ( )cfeCF t k R R t= −

( )max 3( ) ( )freFR t k R R t= −

( )max 4( ) ( )fdeFD t k R R t= −

( )max 5 5( ) ( )cdeCD t k R R t= −in which maxR is the maximum range that the 2oS , 1oS , 3oS and 4oS sonars can detect, max 5R is the maximum range that the 5oS sonar can detect, and cfk , flk , frk , fdk and cdk represent the defined constant coefficients. The formulas show that smaller are eCF , eFL , eFR , eFD and eCD , more the AUV is far away from obstacles. In contrary, these variables

will become larger and larger when the AUV comes close to obstacles and the risk of collision increases rapidly.

The outputs of the 1H and 2H controllers, 1dH and 2dH , represent the relative yaw angle of the current heading for avoiding obstacles in horizontal plane. Their absolute values are directly proportional to the risk of collision. The positive

1dH and 2dH indicate that the AUV rotates along clockwise. The outputs of the 1V and 2V controllers, 1dV and 2dV , denote the difference value between the desired and current altitudes for avoiding obstacles in vertical plane. But the difference value always is positive unlike the relative yaw angle. In other words, the AUV only makes an ascent for avoiding vertical obstacles. The membership functions of the inputs and outputs of the fuzzy controllers are plotted in the figure 4.

H1

H2eFL

eFRdH1

eCF

dH2

V1

V2eFD

eCD

dD1

dD2

Fig. 3 Inputs and outputs of the fuzzy controllers

0 62 4

1

0

(a) The eCF, eFL, eFR, eFD and eCD member shi p f unct i ons

ZE PS PM PB

-6 6-2 0

1

0

(b) dH1 and dH2 member shi p f unct i ons

NP NS ZE PS

-4 42

NM PM PB

0 2 4

1

0

ZE PS PM PBPSS PSM

5(c) dD1 and dD2 member shi p f unct i ons

Fig. 4 The membership functions of the inputs and outputs of the fuzzy controllers

2.3 The holding-distance and -altitude behaviors It is nearly impossible to determine when the emergency-

yaw behavior should be stopped because the AUV can’t obtain the whole obstacles contour by its own sensors. So we design a holding-distance and -altitude behaviors to follow the obstacle contour when the obstacle disappears in the sight of the forward looking sonar.

The holding-distance behavior is mainly used to control the outputs of the forward-left or forward-right looking sonars for the AUV holding a constant distance from obstacle. It is implemented by a fuzzy controller, also named as holding-distance. The holding-distance fuzzy controller has two inputs,

eD and ecD . eD is the difference between the measured distance from the obstacle and the defined safety distance. The

negative eD indicates the AUV is departing from the obstacle. ecD denotes the change rate of the variable eD . The negative ecD indicates that the AUV is speeded up to depart from the

obstacle. The output of the holding-distance fuzzy controller is the relative yaw angle of the current heading as same as the emergency-yaw controller.

The holding-altitude behavior is responsible for controlling the AUV follow the sea bottom, which is also implemented by a fuzzy controller like the holding-distance fuzzy controller. The difference between them is that the outputs of the holding-altitude controller only denote the desired ascending altitude of the AUV. In other words the obstacles on the top of the AUV will be neglected.

III. THE OBSTACLE AVOIDANCE AUTOMATA

We regard the AUV obstacle avoidance process as a discrete event dynamic system in which the state transition is driven by a series of discrete events according to the defined rules. The system can be described as deterministic finite state automata G (shown as Fig.5):

0( , , , , )mG Q q Qδ= Σ where

{ }1 2 3 4 5 6 7 8, , , , , , ,Q S S S S S S S S=

{ }12 13 24 35 41 42 46 51 53 57

63 68 78 72 81 84 85 86 87

, , , , , , , , , ,, , , , , , , ,

Σ Σ Σ Σ Σ Σ Σ Σ Σ ΣΣ = Σ Σ Σ Σ Σ Σ Σ Σ Σ

0 1q S=

{ }1mQ S= Q is a finite set of discrete states. Each state is

corresponding to an obstacle avoidance behavior. Σ is a finite set of events. Each event is corresponding to the detected environment changes. The automata transit from one state to another according to the transition relation: : Q Qδ Σ× → .

0 0( )q q Q∈ denotes the start state and ( )m mQ Q Q⊂ denotes the desired states set.

Fig.5 The obstacle avoidance automata G

The state set Q consists of eight states as defined in table 1.

Each of the front five states, from 1S to 5S , is performed by a single obstacle avoidance behavior. The emergency-yaw and holding-distance states belong to the obstacle avoidance processes in horizontal plane, and the emergency-ascend and

holding-altitude states belong to the obstacle avoidance processes in vertical plane.

Each of the latter three states, namely 6S , 7S and 8S , is performed by the combination of two obstacle avoidance behaviors. The states 6S , 7S and 8S belong to the 3D obstacle avoidance processes. So the horizontal plane, vertical plane and 3D obstacle avoidance behaviors are coordinated by the automata G .

TABLE I DEFINITION OF THE STATES OF THE AUTOMATA G

States Definitions

1S Go-to-destination

2S Emergency-yaw

3S Emergency-ascend

4S Holding-distance

5S Holding-altitude

6S Holding-distance / Emergency-ascend

7S Holding-altitude / Emergency-ascend

8S Holding-distance / Holding-altitude

IV. THE SUPERVISOR BASED ON EVENT FEEDBACK

The AUV can be navigated safely through the most unknown obstacles environments by the automata G . But it may get into an endless cycle under some special conditions. A semi-closed area is shown in figure 6. The red line AB is the desired path of the AUV. The green area denotes the horizontal projection of unknown obstacles. The AUV trajectories indicate that the automata transit to 1S near H point because the obstacle is out of sight of its sonars and it return to follow the AB path again. In other words, there are directed closed chains existing in the automata. 1S , 2S and 4S are repeated continuously by an infinite language:

{ }1 12 24 41 12 24 41( ) , ,L G = Σ Σ Σ Σ Σ Σ �

200 400 600 800 1000 1200 1400 1600 1800400

600

800

1000

1200

1400

1600

East (m)

Nor

th (

m)

A B

C D

EF

G H

Fig. 6 The simulation results in a semi-closed obstacle area by the

automata G

The origin of this problem is mainly that each event only occurs from current detected environment changes and is independent of the past states and information. Therefore this

paper presents an obstacle avoidance supervisory control architecture based on event feedback (shown in figure 7).

The architecture includes the controlled automata cG and a supervisor M . φ represents the event feedback from the automata cG to the supervisor M . The state transition of M is driven by the outputs of cG , and M decides the control inputs γ of cG . The supervisor M is denoted by the formulas:

( , )M F φ=

{ }0, , , ,m m mF X x Xδ= Σ where φ represents the mapping from the state set X to the

control mode Γ as the formula: : Xφ → Γ . F represents the deterministic automata including five variables. Just as the definition of the automata G , mΣ is a finite set of events, X is a finite set of states, mδ is the transition relation, 0x is the start state and mX is a desired set of states. We design four states for the automata F , including 1X , 2X , 3X and 4X . The definition of these states can be found in table .

S1 S2 Si

X1

X2

X3

γ φ

� m12� m23

� m13

� m34

Automaton Gc

Supervisior M

X4� m41

Fig.7 The OA supervisory control architecture

TABLE DEFINITION OF THE STATES OF THE AUTOMATA F

States Definition

1X Idle

2X Emergency reverse

3X Real-time path planning

4X Reset cG

The controlled automata cG is translated from the automata

G under the supervisory control of M : 0( , , , , )c c mG Q q Qδ= Γ×Σ

Compared with G , two states 0S and 9S , and a set of events are added to the controlled automata cG , as shown in figure 8. 0S means that the AUV will generate a new path in real time, and 9S means that the AUV will perform a task of emergency reverse.

In the controlled automata cG , the event set Σ is divided into a controllable event subset cΣ and a uncontrollable event subset uΣ . The control mode {0,1} cΣΓ = is defined as the whole Boolean functions on the base of cΣ . cδ is the state transition relation of the controllable events:

( , ) ( , )!, ( ) 1( , , )c

q if qq

no meaning othersδ σ δ σ γ σ

δ γ σ=�

= ��

S1

S2 S3

S4 S5

S8

S6 S7

S9

S0

� 80

� 01

� 19

� 29

� 69

� 39� 40 � 50

� 79

� 90

� 49 � 59

� 89

� 10

Fig. 8 The added states and events of the automata cG

V. SIMULATION RESULTS

We have built a semi-physical simulation platform for demonstration of the under-actuated AUV control system, as illustrated in figure 9. The simulation platform consists of a 3D visual display system in a graphic workstation, a virtual environment system in an industrial computer and an automatic pilot system in the real control computer of the AUV.

The automatic pilot system generates all the control instructions for the AUV. The virtual environment system is a middle node, which simulates the AUV’s kinematics and dynamics and calculates the outputs of its sensors. The visual display system is responsible for the real-time visualization of the AUV and ocean environment. More detailed information about the simulation platform can be found in reference 9.

The real-time obstacle avoidance method is integrated in the automatic pilot system in obstacle avoidance simulation, and the obstacle scenarios is built on the base of Vega software of the visual display system.

Automatic pilot system

Virtual environment system

3D visual display system

Har

dwar

eLA

N

The simulation platform

Obstacle scene

Sonars outputs

Desired headingDesired depth/altitudeDesired velocity

Fig. 9 The semi-physical simulation platform

5.1 3D obstacle avoidance process The obstacle avoidance processes in horizontal, vertical and

3D space have been simulated under more than 30 types of obstacle scenarios on this platform. This paper only presents a 3D obstacle avoidance process. There are two cubic obstacles in the scenarios as shown in figure 10. The figures 11, 12 and 13 demonstrate the trajectory, the change curves of the state markers of automata cG , the outputs of sonars, the forward velocity, heading, depth and altitude of the AUV.

The obstacle avoidance process is depicted as follow. The forward looking sonar detects the taller cubic obstacle in the first. Then the AUV turns to the left direction. At the same time the automata cG transits from the state 0S to 1S . When the forward looking sonar can’t detect the obstacle but the forward-left looking sonar can detect it, the AUV starts to perform the holding-distance behavior. The holding-distance behavior is ended while the lower cubic obstacle appears in the sight of the forward-down looking sonar. Followed that, the automata cG enters the 3D obstacle avoidance state 6S , which integrates the holding-distance behavior in horizontal plane with the emergency-ascend behavior in vertical plane. At last the AUV can go around the two obstacles and arrive ar the goal point. We can conclude from the results: the presented method is feasible and effective.

Fig. 10 The obstacle scene in 3D OA simulation

0 500 1000 1500 2000 2500 3000-300

-200

-100

0

100

200

300

x (m)

y (m

)

A B

Fig. 11 The horizontal projections of the obstacles, the desired path and the

AUV trajectories

0 500 1000 1500 2000 25000

5

10

Sta

te m

arke

r

0 500 1000 1500 2000 25000

50

100

Time (0.5s)

sona

rs o

utpu

ts (

m)

forward

forward-rightforward-left

Fig. 12 The state markers of the automata cG and the outputs of the 1oS , 2oS

and 3oS sonars.

0 100 200 300 400 500 600-20

0

20

Pitc

h (°

)

0 100 200 300 400 500 6000

2

4

0 100 200 300 400 500 6000

100

200

300

Time (2s)(m

)

Fig. 13 The forward velocity, heading, depth and altitude of the AUV, and the water depth

5.2 Obstacle avoidance in a semi-closed obstacle scenario The importance of the supervisor M is demonstrated by a

new simulation with real-time path planning module under the semi-closed obstacle scenario as shown in figure 6. The AUV obstacle avoidance trajectories are plotted in figure 14. A task of real-time path planning will be started when the AUV locates near the point H. The new path is denoted by CMNB (such as figure 15). The black grids represent the online detected obstacle areas.

200 400 600 800 1000 1200 1400 1600 1800400

600

800

1000

1200

1400

1600

East (m)

Nor

th (

m)

A B

Fig. 14 The horizontal projection of the obstacles, the desired path and the

AUV trajectories

A BCM

N

TrajectoryOnline detected Obstacle gridDesired pathOnline planned Path

Fig. 15 The online detected obstacle area and the real-time planned path

VI. CONCLUSION

With respect of the real-time obstacle avoidance problem of a under-actuated AUV equipped with five ranging sonars, this paper presents a FSA model defining obstacle avoidance process, a supervisor based on event feedback and the obstacle avoidance behaviors design using fuzzy controllers. The FSA model achieves intelligent conversion among the horizontal and vertical obstacle avoidance behaviors. Then the AUV can navigate in 3D unknown environment autonomously and safely. The supervisor based on event feedback can solve some problems of the automata cG , for example, endless cycle and wandering in front of obstacles. The simulation

results demonstrate the availability and feasibility of the presented method.

REFERENCES [1] Q.L. Jia and G.W. Li, “Formation control and obstacle avoidance

algorithm of multiple autonomous underwater vehicles (AUVs) based on potential function and behavior rules,” Proceedings of the IEEE International Conf. on Automation and Logistics, pp.569-573, 2007.

[2] W. Li and J.W. Zhang, “Moth-inspired chemical plume tracing by integration of fuzzy following- obstacle behavior,” IEEE International Conference on Fuzzy Systems, pp. 2250-2255, 2008

[3] P. A. Bouxsein, “Development of an intelligent fuzzy obstacle avoidance system using SONAR modeling and simulation,” Florida Atlantic University, Master's thesis, 2006.

[4] S. Khanmohammadi, G. Alizadeh and M. Poormah- mood, “Design of a fuzzy controller for underwater vehicles to avoid moving obstacles,” IEEE Int’l Fuzzy Systems Conference, pp.1-6, 2007.

[5] D. L. Hemminger, “Vertical plane obstacle avoidance and control of the REMUS autonomous underwater vehicle using forward look sonar,” Naval Postgraduate School, Master's thesis, 2005.

[6] A. J. Healey, “Obstacle avoidance while bottom following for the REMUS autonomous underwater vehicle,” Proceedings of the IFAC-IAV Conference, pp.1-6, 2004.

[7] G. DeMuth and S. Springsteen, “Obstacle avoidance using neural networks,” Proceedings of the Symposium on Autonomous Underwater Vehicle Technology, pp.213-215, 1990.

[8] H. Kawano, “Method for applying reinforcement learning to motion planning and control of under- actuated underwater vehicle in unknown non-uniform sea flow,” IEEE/RSJ International Conference on Intelligent Robots and Systems, pp.996-1002, 2005.

[9] K.Z. Liu, J. Liu, Y. Zhang, et al., “The development of autonomous underwater vehicle’s semi-physical virtual reality system,” Proceedings of the 2003 IEEE International Conference on Robotics, Intelligent System and Signal Processing, pp.301-306, 2003.