I Introduction
All over the world, the phenomena of harmful algal blooms occurs frequently. Plenty of research has been done regarding the nature of this phenomena, its causes and its impact. Note that, for instance, according to [1], this phenomena is worth our best efforts to track as ”Harmful algal blooms (HABs) cause human illness, largescale mortality of fish, shellfish, mammals, and birds, and deteriorating water quality”. Throughout this paper we’ll be using simulated data of these algal blooms in the Norwegian sea.
As a motivating example for this research, we can see how the use of autonomous surface vehicles (ASVs) allows to perform a series of measurement runs over a long period of time at sea [2]. Hence, we believe a good solution relies on a system of ASVs with measuring abilities paired up with a satellite.
One may wonder why the satellite data is not enough for the problem of tracking these algal blooms. This could be a solution if we are interested in perhaps obtaining images and further studying them. But this is not the case. Our goal is to persistently track the different fronts of the algal bloom with surface agents close enough to the field to provide valuable data. With a satellite, there is a very low frequency of measurements. For instance, the data with which we simulate on this paper consists of two low quality images per day of the algal bloom. This satellite is not geosynchronous so it can only measure a specific area of the earth periodically. Also, the quality is commonly low due to clouds or other atmosphere obstacles. Therefore, a good solution relies on surface agents as well. We represent that idea in Fig.1, where the paper planes are the robots.
However, we seem to still be on the brink of discovering the best methods to consistently and efficiently track and circumnavigate these algal blooms. In [3] a path following algorithm is proposed for formation control of a multiagent system. The authors prove that if the tracking errors are bounded, their method stabilises the formation error. However, it is assumed that there is perfect information on the path to follow. For our problem, we would like to estimate the target, design the path and control the multiagent system. In [4] and [5] a control law for distancebased formation control which guarantees stability is proposed. Also in section 6.3.1 of [6], where target tracking is considered, they use distancebased formation control. However, a distancebased protocol does not suit our target tracking problem. In [7] a protocol for target tracking in 3D is designed with guaranteed collision avoidance. However, it is assumed that the target is a fixed object that may move and rotate but never change its shape, as in our case. In [8] and [9], controllers are synthesised for a swarm of robots to generate a desired twodimensional geometric pattern specified by a simple closed planar curve. It is assumed that the shape is given to the swarm and not estimated in realtime. This is not true for our case. In [10] an adaptive protocol to circumnavigate around a moving point is proposed, e.g., the fish tracking problem. They used adaptive estimation for point tracking with known constant distance and they use just one agent. In [11] the problem and assumptions are similar as the previous paper but here they apply sliding mode control. Even though we also assume the agents can measure the distance to the target, these papers assume that the target to track is a point. In [12] and[13] the agent has access to the bearing measure towards the target. This assumption differs from ours as we assume we measure only the distance. Some closely related results [14], [15] and [16] use either bearing or distance measurements to the target while using a network of autonomous agents to circumnavigate. While relevant, these results do not apply to a shape but only to a moving point with circumnavigation within a preset distance. In [17] they devise an algorithm such that one robot can circumnavigate a circular target from a prescribed radius using the bearing measurement. Even though they circumnavigate a circle, they do so at a prescribed distance and it is assumed that the robot is capable of measuring the bearing to the target, which is not the case in our paper.
The main contribution of this paper is a distributed algorithm that includes the real time estimation of the target and devises a control protocol to apply to each agent. We focus both on mathematical guarantees of bounded convergence and on physical restrictions for implementation. The present algorithm was tested using data from SINMOD of an algal bloom target in the Norwegian sea.
Ia Notations
The notations used in this paper are fairly standard. is an array of ones. denotes the norm and the norm is denoted simply as without a subscript. We define a rotation matrix as
(1) 
IB Problem Definition
Having a circular moving and varying algal bloom shape we wish to circumnavigate it using a system of robots. Each robot is equipped with a sensor that indicates the distance to the boundary, including whether it is inside the shape or outside. First step is the estimation of the parameters of the algal bloom circle, that is, its centre and radius for every time instance. Second step is to design a control law for all robots to circumnavigate the shape according to the estimated circle. Furthermore, it should be proved that the estimated parameters converge to the real ones and the robots converge to the boundary, while circumnavigating it. Plus, they should be equally distributed along such boundary.
IC Outline
The remaining sections of this paper are organised as follows. In Section II, the main problem of interest is formulated. The main results are presented in Section III, where the protocol is designed and its proofs of convergence presented. Some simulations presenting the performance of the proposed algorithm are given in Section IV. Concluding remarks and future directions come in Section VI.
Ii Problem Statement
In this paper we consider the problem of tracking a circular shape using a multirobot system and a satellite. This shape may be very irregular and unstable over time. We assume the shape is close to a circle. An initial image of the algal bloom confirms such assumption, as seen in Fig.2, and then we can decide to use our algorithm and deploy the agents.
We define this circle as
(2) 
where and are the centre and the radius of the circle, respectively. After confirming the algal bloom is close enough to a circle we can then estimate it by our robot’s measurements. This estimate is represented as . Note that the usage of this circle does not compromise the generality of the algorithm. Instead, it guarantees a smooth circumnavigation for any irregular shape close to a circle. Similar algorithm can be done for shapes that can be approximated by ellipsoids, but we present a simpler case, namely with circle shapes, due to lack of space.
In order to solve this tracking problem we use two types of tools: a satellite and a system of robots. The satellite obtains data from the target in the form an image depending on the weather. Then, it calculates by image processing the possible initial centre and radius of such circle and shares it with the robots so they can move towards the target and initiate circumnavigation. So, the satellite would provide initial estimates and . The robots constantly measure their distances to the target’s boundary, as well as whether they’re inside or outside the target, and share it with the other robots. Each robot has access to its GPS position and to the position of the robot in front of it. This communication scheme is represented in Fig.3. Note that , represent the initial values for the estimate of the target. Values such as , , , will be soon properly defined.
The system of robots will jointly circumnavigate the target and provide real time information of different fronts. We define we have agents and, using the satellite information, they are initialised at positions , which are outside of the shape and form a counterclockwise directed ring on the surface. The kinematic of the agents is of the form
(3) 
where
is a vector that contains the position
and is the control input.In order to avoid the agents concentrating in some region, in which case they may loose information on other fronts, we would like to space the agents equally along the defined circle. Therefore, we define that the counterclockwise angle between the vector and is denoted as for , and the angle between and is denoted as ,
(4)  
We can define the distance of each agent to the centre as . Since we don’t have access to the centre , the distance to the estimated centre is represented as . Then, knowing that each robot has access to its distance to the boundary, we can define it as
(6) 
This value is constantly measured by each agent, as in Fig. 4 and Fig. 5. Note that is positive if the agent is outside the algal bloom area or negative if it is inside the algal bloom area. For example, if an agent is inside of the circle about 5 meters then and if this agent is outside of the circle about 5 meters then .
Definition 1 (Circumnavigation).
When the target is stationary, i.e., and are constant, circumnavigation is achieved if the agents

move in a counterclockwise direction on the boundary of the target, and

are equally distributed along the circle, i.e., .
More precisely, we say that the circumnavigation is achieved asymptotically if the previous aim is satisfied for .
For the case with timevarying target, we assume that and for some positive constant and .
Now we are ready to pose the problem of interest that will be solved in the following sections.
Problem 1. Design estimators for and when both the distance measures (6) and GPS positions are available to each agent. Design the control input for all the agents such that for some positive , ,
(7)  
(8) 
there exist positive , and satisfying
(9)  
(10)  
(11)  
(12) 
Iii Main Results
Here follows our solution for Problem 1. We consider agents at positions and we assume all of them are capable of measuring their distances to the target boundary including whether they’re inside ( is negative) or outside ( is positive) of it. Then, they should estimate from their shared measurements. For robustness, they update their estimates by taking the average of the estimated variables by the agents. Also, if one or more agents suffered faulty measurements due to bad conditions or failure, the system is ready to support that situation by using the remaining agent’s estimates. Each agent calculates its desired velocity taking into account its angle to the next agent and its distance to the boundary. The scheme on Fig.6 summarises this algorithm loop.
First step is the estimation of the circle. Having all the agents constantly measuring we can fit a unique circle as in Fig.4, given that the target shape is a circle. Mathematically, such circle can be obtained through triangulation and, therefore, we would only need 3 agents to obtain a unique solution. However, for better coverage of all the fronts and for robustness, more than 3 agents are considered. Note that, in this paper’s result section we used 4 agents. So, we apply the least squares method to obtain the approximated circle as in (13).
(13)  
Now, we want to obtain the desired control input using the previously measured and estimated variables. The total velocity of each agent comprises of two subtasks: approaching the target and circumnavigating it. Therefore we define the direction of each agents towards the centre of the target as the bearing ,
(14) 
Note that in (14) is not welldefined when , thus we will prove that this singularity is avoided for all time in Theorem 1.
In order to build the control, we need to define and . Even though and are continuous functions, our estimates and are, inevitably, a discrete function. Therefore, for each time interval , we define and as
(15)  
(16) 
The first subtask is related to the bearing and the second one is related to its perpendicular, . Therefore, the control law for each agent is
(17) 
Remark 1.
Note that for implementation we would define as the control input for each agent . Then, must have a maximum absolute value since the maximum velocity of the agent would be limited as well. could either be represented as , being some positive parameter for tuning, or represented as the saturation function: if then , else .
Theorem 1.
Proof.
The proof is divided into four parts. In the first part, we prove that (18) and (19) hold. In the second part, we prove that the estimated distance converges to the estimated radius , or in other words, that (20) holds. In the third part we prove that the singularity of the bearing is avoided. In the last part, we show that the angle between the agents will converge to the average consensus for agents, , meaning (21) holds. We will assume the implementable controller is given by .

Firstly, we prove that (18) and (19) hold. Having (13) we can see that its lowest minimum possible is zero. Then, all of its terms must be zero as well. So, we have that the following holds:
(22) Note that, geometrically, this corresponds to the Pythagoras theorem. The left part of the equality correspond to the sides of the triangle in and and the right side corresponds to the hypotenuse. Therefore, the only values for which the equality (22) holds is for and . However, and are continuous functions and and are discrete functions. Therefore, instead of , we get . Being a parameter equal to the differentiation interval . Same applies for the radius .

We prove that all agents reach the estimate of the boundary of the moving circles asymptotically, i.e., , so (20) holds.
Consider the function whose time derivative for is given as
Hence for , we have which implies is converging to zero exponentially.

Now, we prove that in (14) is welldefined, or in other words, that its singularity is avoided for all time , .
Having from the previous proof and knowing that is always positive and that it converges to zero exponentially, we have that if then , .
So we would have to prove that . Given that we use the least squares method to obtain the estimate of the radius, we can see how one of the constraints guarantees that .
Then we conclude that and that the bearing is well defined .

Finally, we show that the angle between the agents will converge to the average consensus for agents, , so (21) holds.
Firstly, note that we can write an angle between two vectors as
(23) and its derivative as
(24) where .
Then, for and we get
which can be written in a compact form as following
(25) where is the incidence matrix of the directed ring graph from to .
First, we note that the system (25) is positive (see e.g., [18]), i.e., if for all and . This proves the positions of the agents are not interchangeable. Second, noticing that is the (indegree) Laplacian of the directed ring graph which is strongly connected, then by Theorem 6 in [19], converges to consensus .
∎
Remark 2.
Note how the agent will necessarily maintain its relative position throughout the circumnavigation mission. In fact, we can prove that agent is always in position .
Remark 3.
We proved both convergence of the angle to the average consensus for agents and convergence of these agents towards the boundary of the target up to a given bound. Therefore, we guarantee collision avoidance.
Iv Simulation Results
In this section, we present simulations for the protocol designed in section III. We use the derived method for estimation of the target (13) and the controlling protocol for the agents (17). For this section, we discretize the whole algorithm to be able to use it computationally.
We use the target present in the images provided by SINMOD simulations https://www.sintef.no/en/ocean/initiatives/sinmod/#/. The present simulation corresponds to approximately 4 days of data and the target we obtained is approximately 13km in radius.
In Fig.7 we can see the robot system circumnavigating the algal bloom target in a timelapse. This specific algal bloom target is quite a challenge as it shape shifts quite abruptly. Note that the agents were deployed in positions in the boundary so their initial error is zero. Note also how, in some instances of the mission, the target moves fast to such extent that the robots present a delay. This effect is foreseen and explained in Theorem 1.
Analysing the simulations, we observe each variable in Fig.8. Firstly, we can see the comparison between the real position of the target and the estimates our algorithm provided. We can observe that the estimation follows closely the real value with an apparently very small error. Secondly, we analyse the distance of agent 1 to the boundary and the angle between agent 1 and 2, . We can see the error is within the expected boundaries according to Theorem 1. Regarding the distance to the boundary, the error never exceeds 2 units (200 meters) and is most of the time up to 1 unit (100 meters). Note that each x and y coordinate unit corresponds to about 100 meters. Also, each time iteration unit corresponds to 6min. As for the angle between agents the maximum error is 0.2 radians which corresponds to a maximum angle error of 11 degrees. If we look at the plots for the control input of our agents, namely, for agent 1, we can see how the control was applied up to a maximum value. We defined the maximum speed of the agent for each coordinate to be 2 y units per 1 x unit which corresponds to 2km/h in each Cartesian direction (200m / 6min = 2km/h).
V Conclusions
We designed a decentralised algorithm that guarantees circumnavigation of an irregular shape approximated by a circle up to a bounded error. The algorithm relies on one satellite and a number of robots according to the size of the target and to the importance of monitoring its fronts. Then, the proposed control protocol was proven to converge up to a bounded error.
As future work, we would like to exploit surface vehicles with sensors that measure the point concentration of algal rather than to directly detect the boundary in the local region. Then we would have to explore and circumnavigate collecting data for the estimation. A further objective would be to track any irregular shape which may not be reasonably approximated by a circle.
Vi Acknowledgements
We would like to thank Morten Alver and Ingrid Ellingson for providing the SINMOD simulation data.
References
 [1] S. Shumway, J. M Burkholder, and S. Morton, Harmful Algal Blooms: A Compendium Desk Reference, 08 2018.
 [2] R. Millet, F. Plumet, and J.C. Dern, “Autonomous surface vehicle for oceanographic survey,” 01 2008.
 [3] M. Egerstedt and X. Hu, “Formation constrained multiagent control,” IEEE transactions on robotics and automation, vol. 17, no. 6, pp. 947–951, 2001.
 [4] D. V. Dimarogonas and K. H. Johansson, “On the stability of distancebased formation control,” in Decision and Control, 2008. CDC 2008. 47th IEEE Conference on. IEEE, 2008, pp. 1200–1205.
 [5] M. Cao, A. S. Morse, C. Yu, B. Anderson, and S. Dasgupta, “Controlling a triangular formation of mobile autonomous agents,” in Decision and Control, 2007 46th IEEE Conference on. IEEE, 2007, pp. 3603–3608.
 [6] Z. Sun, Cooperative Coordination and Formation Control for Multiagent Systems, ser. Springer Theses. Springer International Publishing, 2018.
 [7] A. Franchi, P. Stegagno, and G. Oriolo, “Decentralized multirobot encirclement of a 3d target with guaranteed collision avoidance,” Autonomous Robots, vol. 40, 07 2015.
 [8] M.Y. Ani Hsieh, V. Kumar, and L. Chaimowicz, “Decentralized controllers for shape generation with robotic swarms,” Departmental Papers (MEAM), vol. 26, 09 2008.
 [9] G. Li, D. StOnge, C. Pinciroli, A. Gasparri, E. Garone, and G. Beltrame, “Decentralized progressive shape formation with robot swarms,” Autonomous Robots, pp. 1–17, 10 2018.
 [10] I. Shames, S. Dasgupta, B. Fidan, and B. D. O. Anderson, “Circumnavigation using distance measurements under slow drift,” IEEE Transactions on Automatic Control, vol. 57, no. 4, pp. 889–903, 2012.
 [11] A. S. Matveev, H. Teimoori, and A. V. Savkin, “Rangeonly measurements based target following for wheeled mobile robots,” Automatica, vol. 47, pp. 177–184, 2011.
 [12] M. Deghat, E. Davis, T. See, I. Shames, B. D. O. Anderson, and C. Yu, “Target localization and circumnavigation by a nonholonomic robot,” in Intelligent Robots and Systems (IROS), 2012 IEEE/RSJ International Conference on, ser. IEEE International Conference on Intelligent Robots and Systems, 2012, pp. 1227–1232, qC 20130129.
 [13] M. Deghat, E. Davis, T. See, I. Shames, B. D. O. Anderson, and C. Yu, “Target localization and circumnavigation by a nonholonomic robot,” 10 2012, pp. 1227–1232.
 [14] J. O. Swartling, I. Shames, K. H. Johansson, and D. V. Dimarogonas, “Collective circumnavigation,” Unmanned Systems, vol. 02, no. 03, pp. 219–229, 2014.
 [15] A. Boccia, A. Adaldo, D. V. Dimarogonas, M. di Bernardo, and K. H. Johansson, “Tracking a mobile target by multirobot circumnavigation using bearing measurements,” in 2017 IEEE 56th Annual Conference on Decision and Control, CDC 2017 :, ser. IEEE Conference on Decision and Control. IEEE, 2017, pp. 1076–1081, qC 20180306.
 [16] M. Deghat, L. Xia, B. D. O. Anderson, and Y. Hong, “Multitarget localization and circumnavigation by a single agent using bearing measurements,” International Journal of Robust and Nonlinear Control, vol. 25, no. 14, pp. 2362–2374, 2015. [Online]. Available: https://onlinelibrary.wiley.com/doi/abs/10.1002/rnc.3208
 [17] R. Zheng and D. Sun, “Circumnavigation by a mobile robot using bearing measurements,” 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 4643–4648, 2014.
 [18] L. Farina and S. Rinaldi, Positive Linear Systems: Theory and Applications, ser. A WileyInterscience publication. Wiley, 2000.
 [19] J. Wei, X. Yi, H. Sandberg, and K. H. Johansson, “Nonlinear consensus protocols with applications to quantized communication and actuation,” IEEE Transactions on Control of Network Systems, 2018.
Comments
There are no comments yet.