[ieee 2013 21st mediterranean conference on control & automation (med) - platanias, chania -...

6
Underwater Plume Tracing with an AUV Cooperative Navigation Scheme Based on the Simplex Algorithm Marcelo Borges Nogueira, João Sousa and Fernando Lobo Pereira * Underwater Systems and Technologies Laboratory Faculdade de Engenharia da Universidade do Porto Porto, Portugal [email protected], [email protected], fl[email protected] Abstract— This article concerns an approach for cooperative plume tracing in an underwater environment characterized by very strict communication constraints such as delays, low reliability and limited bandwidth, as well as by the absence of natural features which would help localization and navigation. Localization is of utmost importance for plume tracing and remains a challenging area for AUVs in such a difficult environment. The adopted approach requires only relative localization which is satisfactorily achieved by using a SLAM- like scheme based on Extended Kalman Filter that takes into account the communications constraints. In this scheme, for any given AUV, the other elements of the team play the role of “environmental" features of a dynamic nature. The vehicles share data - relative localization as well as plume samples data - in order to improve localization estimates and generate motion waypoints according to the well known simplex algorithm. Since in this case the vertices are given by vehicle position estimates, they will have some associated uncertainty. We analyse under what conditions the simplex with uncertain vertices reduces to the regular simplex, and simulations reveal that the uncertainty of the adopted cooperative localization method suffices to ensure that the simplex algorithm “converges" to an estimate of the plume source. I. I NTRODUCTION In this article, we address the challenges arising in the search of the point of minimum of a scalar field in the water column by a team of multiple AUVs. This can be regarded as an abstraction of a wide range of practical applications, among which plume tracing is of utmost importance given the great societal impact of many of its instances, [1], such as, finding underwater - either chemical or oil pollution - sources, investigation of natural phenomena, exploitation of natural resources, etc. Although the systematic sweeping of a given volume of water in the ocean is a very simple approach, typically it requires huge amount of very expensive resources over extended period of time and, may even be useless if con- straints on time are significant as it is the case of inter- mittent phenomena. These drawbacks motivate the approach addressed in this article in which a team composed of multiple AUVS cooperate in order to search for the source of the plume by employing a strategy inspired in the simplex optimization technique, [2]. This approach requires the value * Acknowledgments: apoio aos projectos PEst-OE/EEI/UI0147/2011, PTDC/EEA-ACR/75242/2006, PTDC/EEA-CRO/104901. of the concentration of the plume’s substance obtained by appropriate sampling of the water column as well as the localization data of the points in which sampling took place. The idea of using multiple vehicles to search for a minimum in a scalar field is not new, as shown in [3]. In [4], the authors show that a multi-robot approach for plume tracing in a wind- varying and obstructed environment has some advantages. In [5], the authors propose a method for tracing an plume in a indoor environment using multiple robots and an improved ant colony algorithm. Here we introduce a distributed plume tracing algorithm in which a swarm of robots is able to self-organize into a sensing grid by using local information. The ideas used for our work were first presented in [6] and further developed in [7], where the authors propose a physical realization of a simplex downhill method with multi vehicle, and present a layered control architecture to control the team of vehicles involved. Now, we extend the ideas by studying how the simplex method behaves when its vertices have an estimated position with associated uncertainties. In order to keep the key ideas of our approach simple, we will not consider the stochastic aspects inherent to the natural turbulence in the water column, and, instead, we focus in meeting the localization requirements which, given the characterization of the environment, are the most fundamental challenge. In the underwater environment, a submerged Autonomous Underwater Vehicle (AUV) cannot usually rely on optical instruments (cameras and laser range finders), and GPS data can be used to update its position only after surfacing. However, since, in general, surfacing is often too costly, navigation data from extereoceptive sensors is needed. Range sensors, based on the time of flight measurements from communications with beacons or other devices, has been used for this purpose. The underwater environment is typically feature poor and this leads to consider using artificial features. Some of these may be standing still and some others might be mobile. An appropriate number of static beacons located in known positions forming a Long Baseline (LBL) system is a well known way to obtain range measurements for localization. However, this imposes constraints that might be undesirable for many applications, especially in deep water: constraints in the operation area and substantial deployment effort before 2013 21st Mediterranean Conference on Control & Automation (MED) Platanias-Chania, Crete, Greece, June 25-28, 2013 978-1-4799-0997-1/13/$31.00 ©2013 IEEE 251

Upload: fernando-lobo

Post on 22-Mar-2017

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [IEEE 2013 21st Mediterranean Conference on Control & Automation (MED) - Platanias, Chania - Crete, Greece (2013.06.25-2013.06.28)] 21st Mediterranean Conference on Control and Automation

Underwater Plume Tracing with an AUV Cooperative Navigation SchemeBased on the Simplex Algorithm

Marcelo Borges Nogueira, João Sousa and Fernando Lobo Pereira∗

Underwater Systems and Technologies LaboratoryFaculdade de Engenharia da Universidade do Porto

Porto, [email protected], [email protected], [email protected]

Abstract— This article concerns an approach for cooperativeplume tracing in an underwater environment characterizedby very strict communication constraints such as delays, lowreliability and limited bandwidth, as well as by the absence ofnatural features which would help localization and navigation.Localization is of utmost importance for plume tracing andremains a challenging area for AUVs in such a difficultenvironment. The adopted approach requires only relativelocalization which is satisfactorily achieved by using a SLAM-like scheme based on Extended Kalman Filter that takes intoaccount the communications constraints. In this scheme, forany given AUV, the other elements of the team play the roleof “environmental" features of a dynamic nature. The vehiclesshare data - relative localization as well as plume samples data -in order to improve localization estimates and generate motionwaypoints according to the well known simplex algorithm. Sincein this case the vertices are given by vehicle position estimates,they will have some associated uncertainty. We analyse underwhat conditions the simplex with uncertain vertices reduces tothe regular simplex, and simulations reveal that the uncertaintyof the adopted cooperative localization method suffices to ensurethat the simplex algorithm “converges" to an estimate of theplume source.

I. INTRODUCTION

In this article, we address the challenges arising in thesearch of the point of minimum of a scalar field in the watercolumn by a team of multiple AUVs. This can be regardedas an abstraction of a wide range of practical applications,among which plume tracing is of utmost importance giventhe great societal impact of many of its instances, [1], suchas, finding underwater - either chemical or oil pollution -sources, investigation of natural phenomena, exploitation ofnatural resources, etc.

Although the systematic sweeping of a given volume ofwater in the ocean is a very simple approach, typicallyit requires huge amount of very expensive resources overextended period of time and, may even be useless if con-straints on time are significant as it is the case of inter-mittent phenomena. These drawbacks motivate the approachaddressed in this article in which a team composed ofmultiple AUVS cooperate in order to search for the sourceof the plume by employing a strategy inspired in the simplexoptimization technique, [2]. This approach requires the value

∗Acknowledgments: apoio aos projectos PEst-OE/EEI/UI0147/2011,PTDC/EEA-ACR/75242/2006, PTDC/EEA-CRO/104901.

of the concentration of the plume’s substance obtained byappropriate sampling of the water column as well as thelocalization data of the points in which sampling took place.The idea of using multiple vehicles to search for a minimumin a scalar field is not new, as shown in [3]. In [4], the authorsshow that a multi-robot approach for plume tracing in a wind-varying and obstructed environment has some advantages. In[5], the authors propose a method for tracing an plume in aindoor environment using multiple robots and an improvedant colony algorithm. Here we introduce a distributed plumetracing algorithm in which a swarm of robots is able toself-organize into a sensing grid by using local information.The ideas used for our work were first presented in [6]and further developed in [7], where the authors propose aphysical realization of a simplex downhill method with multivehicle, and present a layered control architecture to controlthe team of vehicles involved. Now, we extend the ideas bystudying how the simplex method behaves when its verticeshave an estimated position with associated uncertainties.

In order to keep the key ideas of our approach simple,we will not consider the stochastic aspects inherent tothe natural turbulence in the water column, and, instead,we focus in meeting the localization requirements which,given the characterization of the environment, are the mostfundamental challenge.

In the underwater environment, a submerged AutonomousUnderwater Vehicle (AUV) cannot usually rely on opticalinstruments (cameras and laser range finders), and GPS datacan be used to update its position only after surfacing.However, since, in general, surfacing is often too costly,navigation data from extereoceptive sensors is needed. Rangesensors, based on the time of flight measurements fromcommunications with beacons or other devices, has beenused for this purpose.

The underwater environment is typically feature poor andthis leads to consider using artificial features. Some of thesemay be standing still and some others might be mobile.An appropriate number of static beacons located in knownpositions forming a Long Baseline (LBL) system is a wellknown way to obtain range measurements for localization.However, this imposes constraints that might be undesirablefor many applications, especially in deep water: constraints inthe operation area and substantial deployment effort before

2013 21st Mediterranean Conference on Control & Automation (MED)Platanias-Chania, Crete, Greece, June 25-28, 2013

978-1-4799-0997-1/13/$31.00 ©2013 IEEE 251

Page 2: [IEEE 2013 21st Mediterranean Conference on Control & Automation (MED) - Platanias, Chania - Crete, Greece (2013.06.25-2013.06.28)] 21st Mediterranean Conference on Control and Automation

operations, [8]. In order to overcome this difficulty, staticbeacons may be replaced by a group of AUVs, thus creatinga Moving LBL system, [9]. A drawback of this approach isthat, now, the landmarks have some uncertainty associatedwith their position which may change over time. This sce-nario configures a Simultaneous Localization and Mapping(SLAM) problem with moving features.

To solve the problem of localization for underwater vehi-cles we proposed a cooperative localization scheme, calledCEKOLM, in which the vehicles share a minimum amount ofdata and are still able to keep a consistent correlation matrix,[10]. The CEKOLM method uses a SLAM-like scheme forcooperative localization using the EKF to improve the AUVpose estimates. It was shown that it gives only accuraterelative localization between the vehicles. If the vehicles needa global localization, one of the vehicles must surface andget GPS signals.

In the next section, the problem of cooperative navigationand of the search in a scalar field is stated in more detail. Insection III we present e brief description of the CEKOLMmethod and perform the analysis of the convergence of thesimplex method with uncertain vertices. Some simulation re-sults are presented Section IV, followed by some conclusionsalong with future work in section V.

II. PROBLEM DESCRIPTION

Static artificial features, like beacons, limits the operationarea and requires a substantial deployment effort. But what ifother AUVs are used as features? In this scenario, we couldhave several vehicles cooperating with each other in that,while executing its own mission, each AUV uses navigationdata from the others to improve the estimate of its ownposition. Given the strict constraints on onboard resources,this concept of having several AUVs cooperating in orderto perform a given collective mission is very interesting andpromising. For example, the search of a particular area canbe performed more efficiently by using multiple AUVs.

As remarked in [11], pressure sensors enable the reductionof the localization estimation problem from 3D to to 2D. Ifwe consider a 2D model (unicycle model) for all the vehiclesinvolved on the system, the state vector for the estimated stateXi for vehicle i will be composed by the position (xi, yi)on the plane and the orientation θi relative to the globalreference frame, as show in equation (1).

Xi = [xi yi θi]T (1)

Since Xi represents the estimated state of vehicle i, it willhave an associated uncertainty represented by the covariancematrix Pi:

Pi =

PxixiPxiyi Pxiθi

Pyixi Pyiyi PyiθiPθixi Pθiyi Pθiθi

. (2)

If we put together the vector state of all the n vehiclesinto a single augmented state vector we will get

X = [X1X2 . . . Xn],

with the associated covariance matrix P which will incorpo-rate all the terms in the vector state X . This formulation isclose to the to the SLAM structure, [12], but now, instead ofone vehicle and several static features, we will have a groupof moving vehicles. So, this scenario constitutes a problemsimilar to the SLAM problem, but with moving features,[13], [14].

For a group of vehicles to perform cooperative localizationand improve their estimated state, the vehicles must sharenavigation data among themselves. However, the underwatercommunication channel is known to be problematic. Under-water acoustic communications have a limited small band-width, the channel is subject to time variations and multi-pathpropagation, and there is a strong signal attenuation. Thesedifficulties impose a cooperative algorithm requiring minimaldata sharing among the AUVs. In the next section we willshow, briefly, a method to perform cooperative localization,in a consistent way, using small bandwidth communication.

If we have a team of vehicles operating cooperativelywhile performing localization, we could use them in missionsthat can benefit from this multivehicle scenario, such assearching for the source of some chemical emitter. If thevehicles are equipped with a sensor to measure the concen-tration of such a chemical on the water, this problem can beviewed as a search for a minimum in a scalar field.

Suppose we want to search for a minimum in a scalar fieldf : Rn → R, that is, find the point xmin ∈ Rn : f(xmin) <f(x),∀x ∈ Rn. The simplex downhill is a classical nonlinearoptimization method developed by Nelder and Mead, [2],which has the advantage of not using the derivative of thefunction being minimized. Given a n-dimensional functionf : Rn → R to be minimized, the method moves an initialsimplex, i.e., a set of n + 1 independent vertices connectedby line segments in n dimensions (for example, if n = 2 thesimplex defines a triangle as shown in Figure 1) downhillthrough reflections, by replacing the worst vertex (i.e., thepoint in which f(x) has its highest value) by a point reflectedthrough the centroid of the remaining N points. Supposingthat the vertices are ordered so that f(x1) < f(x2) < ... <f(xn+1), the reflection step consists in computing first thecentroid xc = (x1 + x2 + ... + xn)/n, then the reflectedpoint xr = xc+α(xc−xn+1), followed by the replacing ofxn+1 by it, and, finally, reordering the points. This processis shown in Figure 1. The value of α can be adjusted,depending on the value of f(xr) when compared with theother vertices, so that the reflected point can move along thereflection direction more (called reflection and expansion) orless (called reflection and contraction).

The process is repeated until the value of the reflectedpoint f(xr) > f(xi), i = 1, ..., n. Once this happens, itis possible to either stop the iterative procedure or reducethe size of the convex hull of the simplex. This enables toincrease the precision of minimum point estimate.

It is possible to employ a team of vehicles to perform aphysical realization of the simplex, as presented in [7]. Forexample, take a team of underwater vehicles searching for thesource of a chemical leak, such as a leaking underwater oil

252

Page 3: [IEEE 2013 21st Mediterranean Conference on Control & Automation (MED) - Platanias, Chania - Crete, Greece (2013.06.25-2013.06.28)] 21st Mediterranean Conference on Control and Automation

Fig. 1. Simplex reflection: the vertex with highest function value v3 isreflected through the centroid vc of the remaining vertices and replaced byvertex v4. vmin represents the minimum of the function.

pipe. In this case, the vehicles are equipped with a sensor tomeasure the concentration of oil present in the water. As theyget closer to the source, the concentration of oil increases. Ifthe vehicles take measurements at the positions defined bythe vertices of a simplex and communicate with each other, itis possible to use the simplex algorithm to guide the vehiclestowards their next goal. One advantage of this method is thatit does not require the vehicles to have a global positioningsystem, but only an accurate relative position.

However, if each vehicle uses only their own estimate of itsposition, there is no way to know which vehicles are actuallycloser to the minimum. In the next section, after presentingthe cooperative localization scheme, we investigate howaccurate this relative positioning must be so that the simplexmethod will work properly.

III. METHODOLOGY

The developed algorithm, called CEKOLM (CooperativeLocalization using Extended Kalman Filter based on SLAM),first presented in [10], considers one AUV as central pro-cessor unit (from now on called CAUV), and the othersAUVs as features on the environment (called FAUVs), whichcommunicate with the CAUV. The communication processbetween the CAUV and the FAUVs consists in the followingstages: i) First the CAUV invites the FAUV to communicate;(ii) This FAUV then transmits its pose (estimated state X),pose uncertainty (error covariance matrix P (t)) and someadditional data, detailed in [10]; and, finally, (iii) The CAUVprocesses the received data and responds sending a new poseestimate and covariance matrix to the FAUV.

The proposed SLAM based algorithm runs on the CAUVand uses an Extended Kalman Filter to update the state vectorwhich is the Cartesian product of the pose of all AUVs inthe system, i.e.,

XSEKF (k) = [XC(k) XF1(k) XF2(k) . . . XFn(k)]T ,

(3)

where XC and XFi are, respectively, the state vector of theCAUV and of the ith FAUV. We call this SLAM ExtendedKalman Filter running in the CAUV by SEKF. The SEKFtakes a step every time an observation is available, andwith this joint state formulation, the algorithm creates andmaintains a covariance matrix between all the vehicles in aconsistent manner.

In between observations, the CAUV also runs a RegularEKF algorithm (designated by REKF) in which the state vec-tor is the pose of the CAUV only, X(j)C = [x(j) y(j) θ(j)].The goal of the REKF, also present in all FAUVs, is to predictthe AUV pose and update its error covariance matrix P (j) byusing proprioceptive information since the last observation.In order to ensure that Pi(j) in each AUV represents only thenoise during the last taken observation and the current one,every time a observation is taken, this error covariance matrixis set to zero both in the CAUV and in the communicatingFAUV. It was shown in [10] that in order to correctlyupdate the joint state covariance matrix of the SEKF, theFAUVs, besides sending its pose and pose uncertainty, alsohave to send an additional matrix M that represents theaccumulated effects of the dynamics of each vehicle overits own covariance matrix (the CAUV also computes sucha matrix for itself). By combining the information given bythe REKF in both vehicles involved in a observation and thecurrent state of the SEKF, the CAUV is able to update thestate vector and covariance matrix in an accurate manner,without imposing any time constraints on how often theobservation takes place.

A block diagram of the CEKOLM algorithm for theCAUV is shown in Figure 2.

Fig. 2. Block diagram of the CEKOLM algorithm ruining in the CAUV

It was shown in [10] that, by considering that the CAUVcommunicates with all other FAUVs at each time step, thefull observability is guaranteed if at least one of the vehiclesinvolved in the system has global positioning capabilities.This convergence analysis was done by constructing andexamining the observability matrix of the system using Liederivatives. However, for underwater vehicles, it is hard tohave a global positioning system. So, if none of the vehiclesare able to acquire low uncertainty estimate of its pose, itwas shown that the vehicles are able to keep only a accuraterelative positioning. With this relative positioning, if theregion of uncertainty of the vehicles is small when comparedwith the size of the simplex the simplex optimization willwork normally, as will be shown next.

253

Page 4: [IEEE 2013 21st Mediterranean Conference on Control & Automation (MED) - Platanias, Chania - Crete, Greece (2013.06.25-2013.06.28)] 21st Mediterranean Conference on Control and Automation

The simplex algorithm that we consider is similar to theone with fixed size, as in [7], in the sense that there is noexpansion, contraction or reduction of the distance betweenthe vertices of the simplex. There is only reflection. However,since it might be too strict to require the vehicles to reachtheir target positions (the computed vertices of the simplex)with zero error in finite time, we consider that the vehicleis at the target position when it is close enough to it (insidesome ball with radius r centered in the target position). Thismeans that the size of the simplex can actually change. Toprevent it from becoming too small or too big, the simplex isreset to a new equilateral one in the current region wheneverone of the sides of the simplex is minside < simplesidei <maximumside.

In a fixed sized simplex, the algorithm will stop if thereflected point is equal to the previous worst point. However,since in our formulation the size of the simplex is actuallynot constant, we test whether the new point is sufficientlyclose to the previous one.

Up to now, there is no general proof of the convergenceof the simplex method. In [15] it is shown that it is heuristic,and proved only for one-dimension and some cases oftwo dimensions (some family of strictly convex functions).However, the method is known to work very well in practice,[15], and the idea is to move towards the minimum at eachalgorithm step, producing a rapid initial decrease in functionvalues.

We will consider here the case of finding the minimumin R2, performing relative localization in R2, and the resultscan be extended to R3. One pertinent question to be raisedis how robust with respect to uncertainty in its vertices isthe simplex method. In Figure 3 we show the scenario weare considering: given the set of estimated vertices positionsv1, v2 and v3, with some associated uncertainties (ellipsesrepresenting the region of confidence of the estimated valueof the vertices), such that the value of the function on theirreal positions v1, v2 and v3 are such that f(v1) < f(v2) <f(v3). We want to known how this influences the reflectedestimated vertex v4 (or cv4 in the figure) and its uncertainty(red dashed ellipsis), and how this affects the optimizationprocess to find the minima vmin : f(vmin) < f(v),∀v ∈ R2.

In this physical realization of the simplex, there will befirst an estimated computed vertex cv4 based on the previousestimated vertices v1, v2 and v3 (the real computed positionof the reflected vertex cv4 would be given by the true verticespositions v1, v2 and v3). Once vehicle j reaches, at time t, thearea close to the estimated computed vertex cv4, this vertexwill be replaced by the estimated position of the vehicle xj(t)and will now be called v4, and its true position v4 will bethe true vehicle position xj(t).

There are two kinds of uncertainties associated with thesimplex algorithm with uncertain vertex.

The first type of uncertainty is produced by the entity thatoutputs the vertex - in our case the vehicle. Since the vehicleis uncertain about its position, once it reports the position ofa vertex, this vertex will contain the same uncertainty of thevehicle.

The second type of uncertainty is the one given by thereflection step of the simplex algorithm. Since the estimatedvertices v1, v2 and v3 have some associated uncertainty,the computed reflected vertex cv4, will also exhibit someuncertainty which is a function of the uncertainty of the theother vertices. Remember that once some vehicle j reaches,at time t, the estimated position cv4, this vertex will now becalled v4 and it will now have a uncertainty of the first type,which is the same as the uncertainty of the vehicle at thispoint, that is, Pj(t). We investigate how these uncertaintiesaffect the simplex method.

Lemma 1: If the uncertainty of the vertices are smallenough, when compared to the simplex size, the simplexalgorithm with uncertain vertices reduces to the regularsimplex algorithm.

Proof: First lets show how to compute the second typeof uncertainty - the uncertainty in the estimated computedreflected vertex cv4. Let us write the 2D simplex algorithmin the form

Xk+1 = AXk.

This can be done by considering X = [x1 y1 x2 y2 x3 y3]T ,

where vi = (xi, yi) represents the ith vertex and they areordered such that f(v1) < f(v2) < f(v3). We define amatrix A that suitably represents the evolution of the verticesin the simplex method. If we consider the simplex withuncertain vertices and represent those uncertainties by acovariance matrix P , then the evolution of the uncertaintywill be given by, [16],

Pk+1 = APkAT . (4)

We can decompose the simplex algorithm in tow basicsteps:

Reflection: in 2D this can be written as v4 = (v1+v2)/2+α((v1+v2)/2−v3) followed by v3 = v4. If α = 1 (which iscommon practice, [15]), then we can write v3 = v1+v2−v3.Since the vertices v1 and v2 do not change in the reflection,we can compute matrix A as:

A =

1 0 0 0 0 00 1 0 0 0 00 0 1 0 0 00 0 0 1 0 01 0 1 0 −1 00 1 0 1 0 −1

(5)

Ordering of the vertices such that f(v1) < f(v2) < f(v3).This step does not alter the values of X or P , just changestheir ordering (AAT = I).

We conclude that by formula 4 we can compute thecovariance of the new vertex found considering the matrixA in (5). This process is depicted in Figure 3. The estimatedposition of the vertex cv4 is computed from the verticesv1, v2 and v3, and will have some associated uncertaintyrepresented by a red dashed ellipsis, which is a functionof the original uncertainties of v1, v2 and v3. So, by simply

254

Page 5: [IEEE 2013 21st Mediterranean Conference on Control & Automation (MED) - Platanias, Chania - Crete, Greece (2013.06.25-2013.06.28)] 21st Mediterranean Conference on Control and Automation

using the transition matrix A, we can compute the uncertaintyof cv4.

Now, we know how to compute the uncertainty of the newvertex estimate cv4, but how does this uncertainty affects thesimplex method? We are supposed to move in the directionof the minima, roughly follows the gradient direction of thefunction. This means that the highest value vertex v3 andthe computed reflected vertex cv4 must be in opposite sidesof the line s connecting the other two vertices, as shownin Figure 1. If the estimated position cv4 is above s - linedepicted in Figure 3 connecting the real vertices v1 and v2,that is, passing trough some point in the region of confidenceof both v1 and v2 - but the true position of cv4 is below,the simplex algorithm will think it is moving towards theminima, but actually it is moving away from it, and thus weare compromising its convergence. Even worst than that, itmight happen that the value of f(cv4) < max(f(v1), f(v2))and the value of f(v4) > max(f(v1), f(v2)). In this case,the simplex algorithm, in the next step, would give thenew reflected vertex back at v3. Since this is the stoppingcriteria for detecting a minimum, the algorithm would stopand return the wrong estimated minimum point vmin. Onceit happens, this effect will keep repeating itself, so thealgorithm will stop even if we wait for this to happen for mtimes. This means that the uncertainty ellipsis of cv4 cannotintersect the line s, giving any chance that the real vertexcv4 will be on the wrong side of s.

Fig. 3. Simplex with uncertainties: for the simplex algorithm to workproperly it must move in the direction of the minimum vmin. The simplexvertex v3, being the one with the highest value, will be reflected, generatinga new computed vertex cv4. Since the vertices have errors, the estimatedposition of cv4 will also have an error (red ellipsis). If this error is toolarge, it is possible that the true position of cv4 is bellow the straight line s(connecting v1 and v2), while the estimated one is above, causing problemsto the simplex algorithm.

Since we do not know the true position of the vehicles, v1and v2, in order to compute the line s, we will consider theworst case scenario. We will compute the four lines sk, k =1, 2, 3, 4, tangent to both uncertainty ellipses, as shown inFigure 4. Once the possible four tangents are found, we cancheck whether the uncertainty ellipse of cv4 intersects any

one of them. If this is not the case, the simplex with uncertainvertices will behave in the same way to the regular simplex,moving towards the minimum.

−4 −2 0 2 4 6 8 10 12 14−6

−4

−2

0

2

4

6

Fig. 4. Four lines tangent to two non-overlapping ellipses.

If the uncertainty ellipse of cv4 intersects any of the tan-gent lines, the vehicles have reached a maximum uncertaintyvalue, and we must increase the size of the simplex toensure its convergence. However, it might not be desirableto increase the size of the simplex, as doing so reduces theaccuracy of the computed minima location. Another way toassure the convergence of the simplex is to decrease theuncertainties of the vehicles. This can be done, for example,by surfacing the CAUV and then updating the pose of all theFAUVs. Other way to guarantee a low position uncertainty isjust to perform relative localization only, by considering theposition of the CAUV as certain (zero uncertainty). This way,every time an FAUV communicates with it, its uncertaintydrops back to low levels (if this “low level” of uncertainty isstill not low enough, the FAUV can stay around its currentposition (loiter with slow velocity) and command the CAUVto a sequence of optimal positions for the estimation of theposition of the FAUV, as presented in [17]).

After finding the location of the minimum, and, sinceonly the relative localization of the vehicles is accurate, thislocation will have an error (translation + rotation) relativeto a global reference frame. To remove this error, one ofthe vehicles could stay submerged while two other vehiclessurface to get GPS. The surface vehicles can then update theposition of the one that is submerged, which can compute thetransformation matrix T that took it from its position beforethe update to his current updated position, and apply thistransformation to correct the estimated minimum location(if there is only two vehicles on the system, the one thatsurfaced can take a range measurement and then move toanother position to take another one).

IV. SIMULATION RESULTS

The vehicle model used for all AUVs in the simulationswas a 2D model (unicycle model). The dead reckoninginformation available is the control signal u(k), which canbe measured, for example, by an Inertial Measurement Unit.The process noise matrix Q is a diagonal matrix with 0.02in the first 2 terms (linear velocities) and 0.35 in the third(angular velocity). The external sensor, a range detector, hadan error variance R = [0.5]. All the noises are considered to

255

Page 6: [IEEE 2013 21st Mediterranean Conference on Control & Automation (MED) - Platanias, Chania - Crete, Greece (2013.06.25-2013.06.28)] 21st Mediterranean Conference on Control and Automation

be white noises with zero mean. In all the simulations thetime step was 0.1 seconds (rate at which the Kalman filterwould run given proprioceptive data).

In Figure 5, we can see a simulation of the proposed algo-rithm to find a minimum in a scalar field with two vehiclesworking cooperatively. They communicate with each otherevery 5 seconds to exchange information to perform both theCEKOLM algorithm and the simplex downhill with uncertainvertices algorithm. In order to avoid the uncertainty of thevehicles to reach the maximum value for the given simplexsize, the FAUV estimates its pose relative to the CAUV, ascommented in section III.

We can see that, although the vehicles are not able tokeep an accurate global localization (estimated trajectoriesin dashed red diverge from the true trajectories in solidblue), they are relatively well localized. If we compute thehomogeneous transformations T that transforms the finalestimated position of the first vehicle X1 into the final trueposition X1, that is X1 = TX1, this same transformationT applied to the estimated position of the second vehicleX2will bring it within a certain bound to its true position, thatis, ||X2−TX2|| < minbound. Once the estimated minimumpoint Vmin (red circle) is found and the vehicles update theirestimated position using some global localization techniques(as explained in section III), it is possible to compute thetransformation T and applied it to Vmin, generating a cor-rected minimum point Vmincor = T Vmin (green diamond).

−80 −60 −40 −20 0 20 40 60−40

−20

0

20

40

60

80

Vehicles true trajecotryVehicles estimated trajecotryTrue minimumEstimated minimumEstimated minimum after correction

Fig. 5. Simulation run of the Plume Tracing algorithm using simplexdownhill with uncertain vertices. The simulation employed two vehiclesperforming cooperative localization using CEKOLM algorithm. Once thevehicles find the estimated minimum, relative to their reference frame, it iscorrected to find the minimum relative to the global reference frame.

V. CONCLUSIONS AND FUTURE WORK

We proposed an algorithm, based on the simplex method,to perform the search for the source of a chemical plume byemploying, in a group of autonomous underwater vehicles,a cooperative localization scheme which is able to giveaccurate relative positioning. Since, in this case, there are

uncertainties associated with the location of each vertex ofthe simplex, we conducted an analysis to impose convergenceconditions based on the covariance matrix of the estimatedvertex position. Simulation results of the proposed methodwere presented.

It was mentioned in [10], that if the application requires alarge number of vehicles, we could create several subgroupsof robots, each group using the CEKOLM algorithm. Al-though this benefits each group, there will be no accuraterelative position between them. We are investigating how toscale the algorithm in the number of vehicles keeping thisaccurate relative localization.

REFERENCES

[1] Y. Tian and A. Zhang, “Simulation environment and guidance systemfor auv tracing chemical plume in 3-dimensions,” in Informatics inControl, Automation and Robotics (CAR), 2010 2nd International AsiaConference on, vol. 1, march 2010, pp. 407 –411.

[2] J. A. Nelder and R. Mead, “A simplex method forfunction minimization,” The Computer Journal, vol. 7,no. 4, pp. 308 –313, Jan. 1965. [Online]. Available:http://comjnl.oxfordjournals.org/content/7/4/308.abstract

[3] D. Zarzhitsky, D. Spears, and W. Spears, “Distributed robotics ap-proach to chemical plume tracing,” in In Proceedings of the IEEE/RSJInternational Conference on Intelligent Robots and Systems (IROS’05),2005, pp. 3415–3422.

[4] Z. Liu and T.-F. Lu, “Multiple robots plume-tracing in open spaceobstructed environments,” in Robotics and Biomimetics (ROBIO), 2009IEEE International Conference on, dec. 2009, pp. 2433 –2439.

[5] Q.-H. Meng, W.-X. Yang, Y. Wang, F. Li, and M. Zeng, “Adaptingan ant colony metaphor for multi-robot chemical plume tracing,”Sensors (Basel, Switzerland), vol. 12, no. 4, pp. 4737–4763, Apr.2012, PMID: 22666056 PMCID: PMC3355438. [Online]. Available:http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3355438/

[6] F. L. Pereira, “Contributions of optimal control for a vision in decisionand control engineering,” 1997.

[7] J. B. Sousa, K. Johansson, J. Silva, and A. Speranzon, “A verified hier-archical control architecture for coordinated multi-vehicle operations,”International Journal of Adaptive Control and Signal Processing, vol.Vol 21, no. Issue 2-3, p. pp. 159 – 188, 2006.

[8] A. Bahr and J. J. Leonard, “Cooperative localization for autonomousunderwater vehicles,” in ISER, 2006, pp. 387–395.

[9] J. Vaganay, J. Leonard, J. Curcio, and J. Willcox, “Experimentalvalidation of the moving long base-line navigation concept,” in Au-tonomous Underwater Vehicles, 2004 IEEE/OES, 2004, pp. 59–65.

[10] M. B. Nogueira, J. B. Sousa, and F. L. Pereira, “Cooperativeautonomous underwater vehicle localization,” in Proceedings ofOceans’10 IEEE Sydney, Sydney, Australia, May 2010.

[11] A. Bahr, “Cooperative localization for autonomous underwater ve-hicles,” Ph.D. dissertation, Massachusetts Institute of Technology,Cambridge, MA, USA, February 2009.

[12] H. Durrant-Whyte and T. Bailey, “Simultaneous localization andmapping: part i,” Robotics & Automation Magazine, IEEE, vol. 13,no. 2, pp. 99–110, 2006.

[13] C.-C. Wang, “Simultaneous localization, mapping and moving objecttracking,” Ph.D. dissertation, Robotics Institute, Carnegie MellonUniversity, Pittsburgh, PA, April 2004.

[14] C. Bibby and I. Reid, “Simultaneous localisation and mapping indynamic environments (SLAMIDE) with reversible data association,”in Proceedings of Robotics Science and Systems, 2007.

[15] J. C. Lagarias, J. A. Reeds, M. H. Wright, and P. E. Wright,“Convergence properties of the Nelder–Mead simplex methodin low dimensions,” SIAM Journal on Optimization, vol. 9,p. 112–147, May 1998, ACM ID: 589108. [Online]. Available:http://dx.doi.org/10.1137/S1052623496303470

[16] S. Thrun, W. Burgard, and D. Fox, Probabilistic Robotics. The MITPress, Sep. 2005.

[17] P. Teixeira, M. Nogueira, and J. Sousa, “Long baseline beacon positionestimation,” in OCEANS, 2011 IEEE - Spain, Jun. 2011, pp. 1 –7.

256