Abstract
We address the problem of designing a distributed algorithm for two robots that sketches the boundary of an unknown shape. Critically, we assume a certain amount of delay in how quickly our robots can react to external feedback. In particular, when a robot moves, it commits to move along path of length at least \(\lambda \), or turn an amount of radians at least \(\lambda \) for some positive \(\lambda \le 1/2^6\), that is normalized based on a unit diameter shape. Then, our algorithm outputs a polygon that is an \(\epsilon \)-sketch, for \(\epsilon = 8\sqrt{\lambda }\), in the sense that every point on the shape boundary is within distance \(\epsilon \) of the output polygon. Moreover, our costs are asymptotically optimal in two key criteria for the robots: total distance travelled and total amount of rotation.
Additionally, we implement our algorithm, and illustrate its output on some specific shapes.
This work is supported by the National Science Foundation grant IIS 2024520.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Rudin, W.: Principles of Mathematical Analysis. McGraw-Hill Education, New York (1976)
Dekster, B.V.: The length of a curve in space with curvature at most K. Am. Math. Soc. 79(2), 271–278 (1980)
Munkres, J.: Topology. Prentice-Hall Pearson, Hoboken (2000)
Choset, H.: Coverage for robotics-a survey of recent results. Ann. Math. Artif. Intell. 31, 113–126 (2001)
Koenig, S., Szymanski, B., Liu, Y.: Efficient and inefficient ant coverage methods. Ann. Math. Artif. Intell. 31, 41–76 (2001)
Bruemmer, D.J., et al.: A robotic swarm for spill finding and perimeter formation. Technical report. Idaho National Engineering and Environmental Lab Idaho Falls (2002)
Marthaler, D., Bertozzi, A.L.: Collective motion algorithms for determining environmental boundaries. In: SIAM Conference on Applications of Dynamical Systems, pp. 1–15 (2003)
Kemp, M., Bertozzi, A.L., Marthaler, D.: Multi-UUV perimeter surveillance. In: Proceedings of IEEE/OES Autonomous Underwater Vehicles, pp. 102–107 (2004)
Marthaler, D., Bertozzi, A.L.: Tracking environmental level sets with autonomous vehicles". In: Butenko, S., Murphey, R., Pardalos, P.M. (eds.) Recent developments in cooperative control and optimization. Cooperative Systems, vol. 3, pp. 317–332. Springer, Boston (2004). https://doi.org/10.1007/978-1-4613-0219-3_17
Zhang, F., Justh, E.W., Krishnaprasad, P.S.: Boundary following using gyroscopic control. In: 2004 43rd IEEE Conference on Decision and Control (CDC) (IEEE Cat. No. 04CH37601), vol. 5, pp. 5204–5209. IEEE (2004)
Casbeer, DW., et al.: Forest fire monitoring with multiple small UAVs. In: 2005 Proceedings of the American Control Conference, pp. 3530–3535. IEEE (2005)
Clark, J., Fierro, R.: Cooperative hybrid control of robotic sensors for perimeter detection and tracking. In: 2005 Proceedings of the American Control Conference, pp. 3500–3505. IEEE (2005)
Casbeer, D.W., et al.: Cooperative forest fire surveillance using a team of small unmanned air vehicles. Int. J. Syst. Sci. 37(6), 351–360 (2006)
Spears, D., Kerr, W., Spears, W.: Physics-based robot swarms for coverage problems. Int. J. Intell. Control Syst. 11(3), 11–23 (2006)
Hsieh, M.A., Kumar, V., Chaimowicz, L.: Decentralized controllers for shape generation with robotic swarms. Robotica 26(5), 691–701 (2008)
Zhang, F., Haq, S.: Boundary following by robot formations without GPS. In: 2008 IEEE International Conference on Robotics and Automation, pp. 152–157. IEEE (2008)
Zhang, F., Leonard, N.E.: Cooperative filters and control for cooperative exploration. IEEE Tran. Autom. Control 55(3), 650–663 (2010)
Pettersson, L.H., Pozdnyakov, D.: Monitoring of Harmful Algal Blooms. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-540-68209-7
Pressley, A.: Elementary Differential Geometry. Springer, London (2012). https://doi.org/10.1007/978-1-84882-891-9
Hoy, M.: A method of boundary following by a wheeled mobile robot based on sampled range information. J. Intell. Robot. Syst. 72(3–4), 463–482 (2013)
Matveev, A.S., Hoy, M.C., Savkin, A.V.: The problem of boundary following by a unicycle-like robot with rigidly mounted sensors. Robot. Auton. Syst. 61(3), 312–327 (2013)
Tokekar, P., et al.: Tracking aquatic invaders: autonomous robots for monitoring invasive fish. IEEE Robot. Autom. Mag. 20(3), 33–41 (2013)
Fahad, M., et al.: Robotic simulation of dynamic plume tracking by unmanned surface vessels. In: 2015 IEEE International Conference on Robotics and Automation (ICRA), pp. 2654–2659. IEEE (2015)
Saldana, D., Assunção, R., Campos, Campos, M.F.: A distributed multi-robot approach for the detection and tracking of multiple dynamic anomalies. In: 2015 IEEE International Conference on Robotics and Automation (ICRA), pp. 1262–1267. IEEE (2015)
Goodfellow, I., Bengio, Y., Courville, A.: Deep Learning. The MIT Press, Cambridge (2016)
Chatterjee, S., Wu, W.: Cooperative curve tracking in two dimensions without explicit estimation of the field gradient. In: 2017 4th International Conference on Control, Decision and Information Technologies (CoDIT), pp. 0167–0172. IEEE (2017)
Nguyen, A., et al.: Using a UAV for destructive surveys of mosquito population. In: 2018 IEEE International Conference on Robotics and Automation (ICRA), pp. 7812–7819. IEEE (2018)
Chatterjee, S., Wu, W.: A modular approach to level curve tracking with two nonholonomic mobile robots. In: International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, vol. 59292, p. V009T12A051. American Society of Mechanical Engineers (2019)
Al-Abri, S., Zhang, F.: A distributed active perception strategy for source seeking and level curve tracking. IEEE Trans. Autom. Control 67(5), 2459–2465 (2021)
Stanton, M.C., et al.: The application of drones for mosquito larval habitat identification in rural environments: a practical approach for malaria control? Malaria J. 20(1), 1–17 (2021)
Carrasco-Escobar, G., et al.: The use of drones for mosquito surveillance and control. Parasites Vectors 15(1), 473 (2022)
Ericksen, J., et al.: Aerial survey robotics in extreme environments: mapping volcanic CO2 emissions with flocking UAVs. Front. Control Eng. 3, 7 (2022)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
A Simulation Figures
1.1 A.1 Intersecting Gaussians
Gradient Estimation. To estimate the gradient at a point of intersection, we formulate a least squares error (LSQ) problem and solve it using the pseudo-inverse, as described below.
Least Squares Error Formulation. Assume we have three points a, b, c that are close together, and that we have the values f(a), f(b), f(c). For the sake of the \(\textsc {BOUNDARY}\text {-}\textsc {SKETCH} \), these three points can be said to be successive points of a robot’s path with the middle one being where it crosses the shape boundary. Then we estimate the gradient \(\nabla f(b) = (x', y')\) as a vector that minimizes the following sum:
Setting the rows of a \(2\times 2\) matrix A to be \(a-b\), \(c-b\) respectively and the entries of vector \(\beta \) to be \(f(a)-f(b), f(c)-f(b)\) respectively, this problem is formally solving for the vector v such that, \(|Av - \beta |^2\) is smallest.
Finally, we utilize the pseudo-inverse method for solving LSQ as discussed in numerous sources e.g. in Sect. 4.5 of [25].
1.2 A.2 Real World Plume Shapes
B Helper Lemmas
Lemma 17
\(\ell \) is \(\varOmega (1)\)
Proof
Since the diameter of the shape is scaled to be 1, \(\ell \ge 1\) and the lemma follows.
Lemma 18
The number of vertices in \(\gamma \) is at most \(\ell /\sqrt{\lambda }\).
Proof
This is immediate from the assumption that each of the vertices are at least \(\sqrt{\lambda }\) distance apart.
Lemma 19
If a curve \(\gamma \) is a polygon and \(\phi \) is the total rotation of this polygon, then \(\ell (\gamma ) \le \phi \).
Proof
Suppose the vertices of the polygon P are given by a list of n points \(v_1, v_2, ..., v_n\). Then \(\ell = \sum _{i=1}^{n} |v_i - v_{i+1}|\) where we set \(v_{n+1} = v_1, v_{n+2} = v_2\).
Now fix three successive vertices, \(v_i, v_{i+1}, v_{i+2}\) for \(1 \le i \le n\) and denote them A, B, C respectively. In addition, let \(a = |AB|, b = |BC|, c = |CA|, \alpha = \angle {BAC}, \beta = \angle {ABC}, \omega = \angle {BCA}\).
By the law of sines,
where \(\rho \) is the radius of the circumcircle of the triangle ABC.
Since the polygon is bounded by a unit square, \(\rho \le 1\). By the inequality \(\sin x \le x\) for all \(x \in \mathbb R\), we have,
Hence,
where \(\phi _i\) is the i-th exterior angle of P.
Summing over all \(i \in [1,n]\) we get,
This implies,
Lemma 20
Let \(\gamma : [0,L] \rightarrow \mathbb R^2\) be a regular curve parametrized by its arc length L such that \(\gamma (0) \ne \gamma (L)\). Then there exists \(c \in (0,L)\) such that \(\gamma '(c)\) is parallel to the line segment joining \(\gamma (0)\) and \(\gamma (L)\).
Proof
Let \(\gamma (t) = (x(t), y(t))\) for all \(t \in [0,L]\) where x, y are differentiable single valued real functions defined over [0, L].
Let u be the vector from \(\gamma (0)\) to \(\gamma (L)\). That is,
Let v be a vector perpendicular to \(\gamma (L) - \gamma (0)\). Since, \(\langle u, v \rangle = 0\), we can write,
Now consider the function f defined as follows over [0, L],
Observe that, \(f(0) = f(L)\). Hence by Rolle’s theorem there exists \(c \in (0,L)\) such that, \(f'(c) = 0\). Since, for all \(t \in (0,L)\), \(f'(t) = \langle \gamma '(t), v \rangle + \langle \gamma (t), v' \rangle = \langle \gamma '(t), v \rangle \), we conclude, \(\langle \gamma '(c), v \rangle = 0\).
This means \(\gamma '(c)\) is perpendicular to v. Since u is perpendicular to v as well, we conclude that, \(\gamma '(c)\) is parallel to u.
C Asymptotic Analysis
Lemma 21
Let \(j>1\) be an index such that, after crossing the boundary at point D (Fig. 10), \(D_1, D_2\) are both outside or \(D_1, D_2\) are both inside. Then the number of times the While loop in Step 7 of Algorithm 2 executes before the robots cross the line DB is at most \(\phi _{j-1}/\sqrt{\lambda }+ 1\).
Proof
Define \(\psi _j\) to be the change of gradient in radians between \(\gamma (t_{j-1})\) and \(\gamma (t_j)\). Clearly, \(\phi _{j-1} \ge \psi _j\).
The vertical distance from the robot at the beginning of the execution of Algorithm 2 to the line DB is at most \(\lambda \sin (\psi _{j} + \sqrt{\lambda })\).
Thus after \(\psi _{j} / \sqrt{\lambda }+ 1 \le \phi _{j-1}/\sqrt{\lambda }+ 1\) steps, the robots will cross DB, which concludes the proof.
Lemma 22
Suppose \(\gamma \) defines a polygon. Given an instance of crossing the shape at a point D, let \(\beta \) be the first exterior angle of the shape continuing from D. If \(\beta \) is the only exterior angle of \(\gamma \) from D to the next point of crossing and \(\sqrt{\lambda }\le \beta \le \pi /8\), then the While loop in Step 7 of Algorithm 2 executes at most \(8\beta /\sqrt{\lambda }\) times to cover the distance from B to C.
Proof
Figure 10 illustrates this lemma where \(\angle BAC = \beta \). Note that the radius of the circumcircle of the triangle \(\triangle ABC\) is at most the radius \(\rho \) of the circumcircle of the regular polygon in the diagram indicated by dotted lines. Given the exterior angle \(\sqrt{\lambda }\) and side length \(\lambda \) of the regular polygon, the radius of the circumcircle is \(\rho = \lambda /2\sin (\sqrt{\lambda })\). By Lemma 6, \(\rho \le \sqrt{\lambda }\).
Now by the law of sines, \(|BC|/\sin \beta = 2\rho \) and this implies \(|BC| \le 2\beta \sqrt{\lambda }\).
Next, the angle \(\beta '\) formed by the chord BC with the center of the regular polygon is at most,
Next we multiply this angle with the radius to get the arc length between B and C,
Finally, noting that the arc length covered by every step of the robots is at least \(\lambda \), we get that after \(8\beta /\sqrt{\lambda }\) steps from B the robots will cross AC.
Lemma 23
If \(\gamma \) is a polygon and if for some \(i \le m\), \(\sqrt{\lambda }\le \phi _i \le \pi /8\), then \( f(i) \le 8\phi _i/\sqrt{\lambda }+ \phi _{i-1}/\sqrt{\lambda }+ 1\).
Proof
The trivial case is where Algorithm 2 is not executed at all i.e. \(f(i) = 0\).
Observe that the motion of the robots during the execution of Algorithm 2 forms part of the perimeter of a convex polygon with side lengths and exterior angles being \(\lambda \) and \(\sqrt{\lambda }\) respectively (except for the first and last sides).
Now suppose there are j vertices of \(\gamma \) defined over \([t_i, t_{i+1}]\). Let these vertices be indexed \(\gamma (a_k)\) where \(a_k \in [t_i, t_{i+1}]\) for all \(k \in [1,j]\). Finally, let \(\beta _k\) be the exterior angle at \(\gamma (a_k)\). By Lemma 21, there will be at most \(\phi _{i-1}/\sqrt{\lambda }+ 1\) before the robot crosses the nearest side of the exterior angle at \(\gamma (a_1)\).
Next, observe that by Lemma 22 the nearest robot to the shape will cross one of the sides of the exterior angle at \(\gamma (a_k)\) by at most \(8\beta _k/\sqrt{\lambda }\) iterations of the While loop in Algorithm 2.
In addition, the shape boundary turns either in convex or concave manner. If the turn at an index changes from convex to concave or concave to convex, it may actually move the sides of \(\gamma \) closer for the robot and hence the amount the angle \(\beta _{k}\) contributes to the overall iterations run inside the While loop of Algorithm 2 is at most \(8\beta _k/\sqrt{\lambda }\). Therefore,
D Synchronization Details
Our final two lemmas show that the other robot do not rotate or traverse asymptotically more than the robot nearest to the boundary. In addition, we discuss briefly the synchronization steps in Algorithm 1.
Observe that in Fig. 11, after reorientating itself to the curve gradient direction, the green and blue curves are “closer” to each other. But this can easily be handled by letting the blue or green curve based robot traverse a little longer, in particular greater than \(\sqrt{\lambda }- \lambda > \lambda \) distance and then turn. This synchronization that maintains the distance of \(\sqrt{\lambda }\) between the two robots guarantees that between successive executions of Algorithm 1, the robots will cover \(\varOmega (\sqrt{\lambda })\) distance of the shape boundary, in turn we are able to prove Lemma 12.
Lemma 24
For each execution of Algorithm 2, \(D_2\) traverses a distance of \(O(\sqrt{\lambda })\).
Proof
In Fig. 12, the line segment AC describes the path of \(D_1\) and \(D_2\) can move either directly from B to D or B to D via E. Now, by Algorithm 2 description, \(|AC| = |DE| = \lambda \). Note that, \(\angle BAE = \sqrt{\lambda }\) and \(|BA| = |AE| = \sqrt{\lambda }\). Thus by the law of sine, \(|EB|/\sin \sqrt{\lambda }= \sqrt{\lambda }/\sin ((\pi -\sqrt{\lambda })/2)\) Hence,
Thus, the path length of \(D_2\) at each step is at most \(3\lambda \).
In the last step independent of which robot encountered the shape boundary and whether they are both inside or outside or one inside and one outside, \(D_2\) will traverse at most a constant factor of \(\sqrt{\lambda }\) by the above discussion based on Fig. 11. Finally, noting that \(D_1\) traverses \(O(\sqrt{\lambda })\) distance according to Lemma 7, \(D_2\) traverses \(O(\sqrt{\lambda })\) during each execution of Algorithm 2.
Lemma 25
For each execution of Algorithm 2, \(D_2\) does not rotate asymptotically more than \(D_1\).
Proof
We only need to check that the rotation of the green path towards BE and then ED is asymptotically bounded by \(D_1\)’s rotation. For brevity, we simply note this follows by elementary euclidean geometric comparison of various angles, beginning from the rotation of the red path to AC.
Finally, in the last step, both robots turn towards a common direction i.e. gradient at a point of crossing the boundary.
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Dani, V., Islam, A., Saia, J. (2023). Boundary Sketching with Asymptotically Optimal Distance and Rotation. In: Rajsbaum, S., Balliu, A., Daymude, J.J., Olivetti, D. (eds) Structural Information and Communication Complexity. SIROCCO 2023. Lecture Notes in Computer Science, vol 13892. Springer, Cham. https://doi.org/10.1007/978-3-031-32733-9_16
Download citation
DOI: https://doi.org/10.1007/978-3-031-32733-9_16
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-32732-2
Online ISBN: 978-3-031-32733-9
eBook Packages: Computer ScienceComputer Science (R0)