Skip to main content

Mutual Visibility by Asynchronous Robots on Infinite Grid

  • Conference paper
  • First Online:
Algorithms for Sensor Systems (ALGOSENSORS 2018)

Abstract

Consider a set of autonomous, identical, opaque point robots in the Euclidean plane. The Mutual Visibility problem asks the robots to reposition themselves, without colliding, to a configuration where they all see each other, i.e., no three of them are collinear. In this paper, we consider the problem in a grid based terrain where the movements of the robots are restricted only along grid lines and only by a unit distance in each step. We consider the luminous robots model, in which each robot is equipped with an externally visible light which can assume a constant number of predefined colors. These colors serve both as internal memory and as a form of communication. The robots operate in Look-Compute-Move cycles under a fully asynchronous scheduler. The robots do not have any common global coordinate system or chirality and do not have the knowledge of the total number of robots. Our proposed distributed algorithm solves the problem for any arbitrary initial configuration and guarantees collision-free movements.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Agathangelou, C., Georgiou, C., Mavronicolas, M.: A distributed algorithm for gathering many fat mobile robots in the plane. In: ACM Symposium on Principles of Distributed Computing, PODC 2013, 22–24 July 2013, Montreal, QC, Canada, pp. 250–259 (2013). https://doi.org/10.1145/2484239.2484266

  2. Aljohani, A., Sharma, G.: Complete visibility for mobile robots with lights tolerating faults. Int. J. Netw. Comput. 8(1), 32–52 (2018). http://www.ijnc.org/index.php/ijnc/article/view/166

    Article  Google Scholar 

  3. Barberá, H.M., Quiñonero, J.P.C., Zamora-Izquierdo, M.A., Gómez-Skarmeta, A.F.: i-fork: a flexible AGV system using topological and grid maps. In: Proceedings of the 2003 IEEE International Conference on Robotics and Automation, ICRA 2003, 14–19 September 2003, Taipei, Taiwan, pp. 2147–2152 (2003). https://doi.org/10.1109/ROBOT.2003.1241911

  4. Bhagat, S., Mukhopadhyaya, K.: Optimum algorithm for mutual visibility among asynchronous robots with lights. In: Proceedings of 19th International Symposium Stabilization, Safety, and Security of Distributed Systems, SSS 2017, 5–8 November 2017, Boston, MA, USA, pp. 341–355 (2017). https://doi.org/10.1007/978-3-319-69084-1_24

    Google Scholar 

  5. Bose, K., Adhikary, R., Chaudhuri, S.G., Sau, B.: Crash tolerant gathering on grid by asynchronous oblivious robots. CoRR abs/1709.00877 (2017). http://arxiv.org/abs/1709.00877

  6. D’Angelo, G., Stefano, G.D., Klasing, R., Navarra, A.: Gathering of robots on anonymous grids and trees without multiplicity detection. Theor. Comput. Sci. 610, 158–168 (2016). https://doi.org/10.1016/j.tcs.2014.06.045

    Article  MathSciNet  Google Scholar 

  7. Fischer, M., Jung, D., Meyer auf der Heide, F.: Gathering anonymous, oblivious robots on a grid. In: Fernández Anta, A., Jurdzinski, T., Mosteiro, M.A., Zhang, Y. (eds.) ALGOSENSORS 2017. LNCS, vol. 10718, pp. 168–181. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-72751-6_13

    Chapter  Google Scholar 

  8. Luna, G.A.D., Flocchini, P., Chaudhuri, S.G., Poloni, F., Santoro, N., Viglietta, G.: Mutual visibility by luminous robots without collisions. Inf. Comput. 254, 392–418 (2017). https://doi.org/10.1016/j.ic.2016.09.005

    Article  MathSciNet  Google Scholar 

  9. Luna, G.A.D., Flocchini, P., Poloni, F., Santoro, N., Viglietta, G.: The mutual visibility problem for oblivious robots. In: Proceedings of the 26th Canadian Conference on Computational Geometry, CCCG 2014, Halifax, Nova Scotia, Canada (2014). http://www.cccg.ca/proceedings/2014/papers/paper51.pdf

  10. Peleg, D.: Distributed coordination algorithms for mobile robot swarms: new directions and challenges. In: Pal, A., Kshemkalyani, A.D., Kumar, R., Gupta, A. (eds.) IWDC 2005. LNCS, vol. 3741, pp. 1–12. Springer, Heidelberg (2005). https://doi.org/10.1007/11603771_1

    Chapter  Google Scholar 

  11. Poudel, P., Sharma, G.: Universally optimal gathering under limited visibility. In: Spirakis, P., Tsigas, P. (eds.) SSS 2017. LNCS, vol. 10616, pp. 323–340. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-69084-1_23

    Chapter  Google Scholar 

  12. Sharma, G., Alsaedi, R., Busch, C., Mukhopadhyay, S.: The complete visibility problem for fat robots with lights. In: Proceedings of the 19th International Conference on Distributed Computing and Networking, ICDCN 2018, 4–7 January 2018, Varanasi, India, pp. 21:1–21:4 (2018). https://doi.org/10.1145/3154273.3154319

  13. Sharma, G., Busch, C., Mukhopadhyay, S.: Bounds on mutual visibility algorithms. In: Proceedings of the 27th Canadian Conference on Computational Geometry, CCCG 2015, 10–12 August 2015, Kingston, Ontario, Canada (2015). http://research.cs.queensu.ca/cccg2015/CCCG15-papers/43.pdf

  14. Sharma, G., Busch, C., Mukhopadhyay, S.: Mutual visibility with an optimal number of colors. In: Bose, P., Gąsieniec, L.A., Römer, K., Wattenhofer, R. (eds.) ALGOSENSORS 2015. LNCS, vol. 9536, pp. 196–210. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-28472-9_15

    Chapter  Google Scholar 

  15. Sharma, G., Vaidyanathan, R., Trahan, J.L., Busch, C., Rai, S.: Complete visibility for robots with lights in O(1) time. In: Bonakdarpour, B., Petit, F. (eds.) SSS 2016. LNCS, vol. 10083, pp. 327–345. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-49259-9_26

    Chapter  Google Scholar 

  16. Sharma, G., Vaidyanathan, R., Trahan, J.L., Busch, C., Rai, S.: O(log n)-time complete visibility for asynchronous robots with lights. In: 2017 IEEE International Parallel and Distributed Processing Symposium, IPDPS 2017, 29 May–2 June 2017, Orlando, FL, USA, pp. 513–522 (2017). https://doi.org/10.1109/IPDPS.2017.51

  17. Stefano, G.D., Navarra, A.: Gathering of oblivious robots on infinite grids with minimum traveled distance. Inf. Comput. 254, 377–391 (2017). https://doi.org/10.1016/j.ic.2016.09.004

    Article  MathSciNet  MATH  Google Scholar 

Download references

Acknowledgements

The first three authors are supported by CSIR, Govt. of India, NBHM, DAE, Govt. of India and UGC, Govt. of India respectively. We would like to thank the anonymous reviewers for their valuable comments which helped us improve the quality and presentation of this paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ranendu Adhikary .

Editor information

Editors and Affiliations

Appendices

Appendix A Correctness of Interior Depletion

1.1 A.1 Proof of Lemma 1

Collision can only occur when a robot r is moving along the penultimate layer towards an empty space in the boundary in the situations shown in Fig. 3c and d. Suppose that two robots r and \(r_1\), at Manhattan distance 2 from each other, computes the same destination point. Initially none of them had their lights set to Moving1. This is because if one of them had its light set to Moving1 when the other one takes the snapshot, it would not have computed a destination point. So they will first change their lights to Moving1, say at time t and \(t_1\) respectively. Let \(t \le t_1\). Now in its next Look phase at time \(t_2 (> t_1 \ge t)\), \(r_1\) perceives that r has either already made its move or is yet to move but has set its light to Moving1. In either case, \(r_1\) will not move according to our algorithm. Hence, there will be no collision.     \(\square \)

1.2 A.2 Proof of Lemma 2

Assume that the robot r on a penultimate line segment \(\mathcal {L}\) at time \(t_0\) has set its light to RequestExpansion. If the other terminal robot on \(\mathcal {L}\), say \(r'\), also sets its light to RequestExpansion, then the corresponding boundary robots will execute the expansion. Otherwise, \(r'\) and subsequently the other robots that will become terminal on \(\mathcal {L}\) will move to the boundary. Eventually, either we have another terminal robot requesting expansion, or r is the only robot remaining on \(\mathcal {L}\) still with light RequestExpansion. Therefore, the corresponding boundary will eventually execute expansion.

Fig. 6.
figure 6

(a) There is no empty grid point in the shaded region. (b) Two new empty points are created after the expansion

After the expansion, r is now not on the penultimate line. Then there is a time \(t'\) when it will again move to the new penultimate line \(\mathcal {L'}\). Now there could be at most two robots on \(\mathcal {L'}\), since only the terminal robots on the inner boundary line move. An expansion always creates at least two empty points on the boundary (See Fig. 6), and one of them is in \(\mathcal {H}_r \cap \mathcal {S}_r\). If r moves to the empty point, then we are done. If not, then it implies that there is a robot \(r_1\) with light Moving1 within Manhattan distance two in the direction it intends to move.

Case 1: Assume that \(r_1\) is also on \(\mathcal {L'}\). But since \(\mathcal {H}_r \cap \mathcal {S}_r\) and \(\mathcal {H}_{r_1} \cap \mathcal {S}_{r_1}\) are in opposite directions, \(r_1\) is not in the direction in which r wants to move (and vice versa).

Case 2: Let \(r_1\) be on the grid line below \(\mathcal {L'}\), as shown in Fig. 3c and f. But since r is the only robot on \(\mathcal {L'}\), it has at least two empty points available in two directions. Then it will choose the empty point which is not towards \(r_1\).

Case 3: Now consider the situation shown in Fig. 3d, where \(r_1\) is a robot moving on an adjacent penultimate line segment. Then r and \(r_1\) will request another expansion. It can be seen from Fig. 7, that in the new configuration, both robots will be able to move to an empty boundary point.     \(\square \)

Fig. 7.
figure 7

(a) The situation is similar to the example shown in Fig. 3d. (b) The subsequent configuration after both boundary sides expand and both r and \(r_1\) move to the new penultimate layer.

1.3 A.3 Proof of Lemma 3

Suppose that (1) the robots in \(\mathcal {V}_r\) form an empty rectangle, (2) the lights of all the robots in \(\mathcal {V}_r\) are set to Boundary. It may happen that some robots in \(\mathcal {V}_r\) (with lights set to Boundary) are actually not on the boundary, but on the penultimate layer. Then these robots are in the middle of an expansion, but are yet to change their lights to Expanding, and are obstructing some robots on the boundary also having light Expanding. We argue that this is not possible.

First of all, if r itself was executing an expansion in a previous round, then all the fellow robots, with which it had previously shared a boundary side, must have also completed the expansion. This is because r has its light set to Boundary. Now for the remaining three boundary sides, if the robots are executing an expansion, then they must be instructed to do so by some robot in the interior with light RequestExpansion. But \(\mathcal {V}_r\) has only robots with light Boundary. Hence, all the robots in \(\mathcal {V}_r\) are indeed boundary robots. Hence, the empty rectangle configuration is achieved.     \(\square \)

Appendix B Correctness of Symmetric Movements

1.1 B.1 Proof of Lemma 4

Suppose that there are three points in \(\mathcal {C}_{i}\), say \(\{u, v, w\}\), that are collinear. No three points in \(\mathcal {C}_{i-1}\) are collinear. So at least one of the three points is in \(\mathcal {C}_{i} \setminus \mathcal {C}_{i-1}\), say u. But u is computed in such a way that it is collinear with no two points in \(\mathcal {C}_{i-1}\). So another one among the three points must be in \(\mathcal {C}_{i}\), say v. From the symmetries, we can say that v is one of the three possible points shown in Fig. 8 as \(\{v_1, v_2, v_3\}\). Clearly the straight lines through u and \(v_1\) or u and \(v_3\) do not pass through any other point in \(\mathcal {C}_{i-1}\). If the straight line through u and \(v_2\) passes through a point \(z \in \mathcal {C}_{i-1}\), from symmetry it will also pass through another point \(z' \in \mathcal {C}_{i-1}\) (See Fig. 8). This implies that the straight line passes through two points in \(\mathcal {C}_{i-1}\), which is not possible. Hence, no three points in \(\mathcal {C}_{i}\) are collinear.     \(\square \)

Fig. 8.
figure 8

Illustration supporting the proof of Lemma 4.

1.2 B.2 Proof of Theorem 3

Since the robots closer to the corners move farther, a robot r will always be able to see at least two corners. Due to obstructions, it may not see another corner. We show that this will not create any lock cases.

If it sees no robot with light Moving3, its view must be obstructed by a robot with light Done that has already reached its destination. Hence, this is clearly not the destination point of r. So r will move.

If it sees a robot with light Moving3, it simply waits. In our movement strategy, at any time at most two robots can be moving in the shaded region (see Fig. 5). Hence, it sees exactly one moving robot below it, say \(r'\). Clearly no moving robot is obstructing \(r'\)’s view. Hence, \(r'\) will eventually move or turn its light to Done.     \(\square \)

Appendix C Corner Creation

The lights that will be used in this phase are \(\{Rectangle\), Square, NextToCorner, \(Moving2\}\). The objective of this phase is to occupy the corners of the empty rectangle by robots with specified lights. For simplicity, we shall first assume that there are at least two robots on each of the four sides. Only the robots terminal on the boundary sides will move in this phase. If the configuration is a non-square rectangle, then the terminal robots on the larger side will move to the corner and set its light to Rectangle. Note that the robots can determine the length of the sides of the rectangle. However, if it is a square, it may not be always possible to break tie. If two terminal robots on adjacent sides of the square move to the corner, there will be a collision. If it is possible to break tie, then one of them will go to the corner and set its light to Square. Otherwise, the robots will move to the point adjacent to the corner and then set its light to NextToCorner. While moving, the terminal robots will set their lights to Moving2.

However, this simple scheme will not be always applicable. The initial empty rectangle configuration may have different anomalies. For example, some sides may have only a single robot, or all the robots could lie on a single straight line, or form an L-shape, etc. (See Fig. 9). While designing algorithms for these configurations, the following issues should be properly addressed. A robot may not be always able to distinguish between two configurations from their local views. In these cases, the movement specified for the robot in both configurations should not contradict each other. During the movements, the configuration may change from one case to another. Due to the asynchronous scheduler, the adversary may delay the move of a robot, which will have a pending move based on an out-dated view of the configuration. Such pending moves should not cause any inconsistencies in the algorithm. The algorithms for these different configurations are pictorially presented in Fig. 9. Proofs and other details of the algorithms are omitted due to space constraints.

Fig. 9.
figure 9

Movements in the corner creation phase for atypical empty rectangle configurations.

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Adhikary, R., Bose, K., Kundu, M.K., Sau, B. (2019). Mutual Visibility by Asynchronous Robots on Infinite Grid. In: Gilbert, S., Hughes, D., Krishnamachari, B. (eds) Algorithms for Sensor Systems. ALGOSENSORS 2018. Lecture Notes in Computer Science(), vol 11410. Springer, Cham. https://doi.org/10.1007/978-3-030-14094-6_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-14094-6_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-14093-9

  • Online ISBN: 978-3-030-14094-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics