Abstract 1 Introduction 2 Preliminaries 3 Unsolvable initial configurations 4 Robots with visibility range 1 5 Robots with visibility range 𝚯(𝐥𝐨𝐠𝒏) 6 Challenges to an algorithm with a constant visibility range 7 Conclusion References

Uniform Deployment of Mobile Robots in Complete Bipartite Graphs

Masahiro Shibata ORCID Kyushu Institute of Technology, Fukuoka, Japan Naoki Kitamura ORCID The University of Osaka, Japan Ryota Eguchi ORCID Nara Institute of Science and Technology, Japan Yuichi Sudo ORCID Hosei University, Tokyo, Japan Junya Nakamura ORCID Toyohashi University of Technology, Aichi, Japan Yonghwan Kim ORCID Nagoya Institute of Technology, Aichi, Japan Yoshiaki Katayama ORCID Nagoya Institute of Technology, Aichi, Japan Toshimitsu Masuzawa ORCID Notre Dame Seishin University, Okayama, Japan Quentin Bramas ORCID University of Strasbourg, ICube, CNRS, France Sébastien Tixeuil ORCID Sorbonne University, CNRS, LIP6, IUF, Paris, France
Abstract

In this paper, we address the problem of uniformly deploying mobile robots in complete bipartite graphs. Specifically, when n robots are positioned arbitrarily at distinct nodes in a complete bipartite graph Kn,n, which consists of two n-node sets VL and VR, the uniform deployment problem requires the robots to achieve one of the following configurations: (a) each node in VL is occupied by exactly one robot, with no robots in VR, or (b) each node in VR is occupied by exactly one robot, with no robots in VL. In either configuration, the distance between any two robots is 2, ensuring that the robots are uniformly deployed. In this paper, we explore the relationship between the visibility range of robots and the solvability of the uniform deployment problem. First, we characterize solvable and unsolvable initial configurations under the assumption that robots have an infinite visibility range. Next, we demonstrate that visibility range 1 (meaning robots can only observe nodes at a distance of 1 and the robots positioned on them) is insufficient, proving the impossibility of solving the problem under this constraint. Conversely, we show that visibility range Θ(logn) is sufficient by presenting an algorithm that solves the uniform deployment problem in O(1) rounds, starting from any solvable initial configuration. Finally, we briefly introduce an example showing that robots with a constant visibility range (which is 3 in this example) cannot solve the problem in a native way.

Keywords and phrases:
mobile robots, uniform deployment, complete bipartite graphs
Funding:
Masahiro Shibata: JSPS KAKENHI 23K28037 and 25K14995
Naoki Kitamura: JSPS KAKENHI 23K16838
Yuichi Sudo: JSPS KAKENHI 25K03078 and 25K03079, and JST FOREST Program JPMJFR226U
Junya Nakamura: JSPS KAKENHI 22K11971 and 25K03101
Yoshiaki Katayama: JSPS KAKENHI 25K14991
Toshimitsu Masuzawa: JSPS KAKENHI 20KK0232 and 25K15057
Sébastien Tixeuil: ANR SAPPORO (ANR-19-CE25-0005)
Copyright and License:
[Uncaptioned image] © Masahiro Shibata, Naoki Kitamura, Ryota Eguchi, Yuichi Sudo, Junya Nakamura, Yonghwan Kim, Yoshiaki Katayama, Toshimitsu Masuzawa, Quentin Bramas, and Sébastien Tixeuil; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Self-organization
Editors:
Andrei Arusoaie, Emanuel Onica, Michael Spear, and Sara Tucci-Piergiovanni

1 Introduction

1.1 Background and Related Work

Studies about mobile robot networks have recently captured the interest of the Distributed Computing community. Typically, robots aim to achieve some (global) tasks with limited (local) capabilities. Most studies assume that robots are identical (they execute the same algorithm, and cannot be distinguished by their appearance), and oblivious (they cannot remember their past actions). In addition, it is assumed that robots cannot explicitly communicate with other robots. Instead, they communicate implicitly by observing the (relative) positions of others.

Since Suzuki and Yamashita presented a pioneering work [17] using such weak robots, many problems have been studied in various settings. A number of studies consider problem solvability both in continuous environments (a.k.a. two- or three-dimensional Euclidean space) [17, 18], and in discrete environments (a.k.a. graphs) [2, 5, 9, 12].

In the discrete setting, the uniform deployment (or uniform scattering) problem is considered a fundamental coordination problem. This problem requires robots to spread uniformly in the network. Uniform deployment is useful in practice: when robots achieve uniform deployment, they can maximize the coverage area, and later execute some related tasks such as patrolling, environment monitoring, and intruder detection efficiently [1]. In addition, when robots equipped with resources such as foods are deployed uniformly in a disaster area, victims can access to the resources quickly. So far, the uniform deployment problem for mobile robots has been considered in continuous cycles [7], discrete ring networks [6], and discrete grid networks [1, 8, 10, 11] (or grid for short). In grids, while uniform deployment is feasible by oblivious robots [1], it was shown that uniform deployment can be achieved faster [10], or better [8] using luminous robots. Luminous robots are equipped with a device that can emit a single non-volatile color from a constant number of colors visible to itself and other robots at a given time. Since the light color is non-volatile, it can be used as a constant space persistent memory. The notion of luminous robots was introduced by Das et al. [3] to circumvent impossibility results for oblivious robots in the continuous space. D’Emidio et al. [4] consider the solvability of several problems for luminous robots in graphs, focusing on the relationship between synchronicity and the necessary number of light colors to solve problems. Recently, Poudel and Sharma [11] improved the time complexity of uniform deployment on grids for robots without light (i.e., oblivious robots). Also, Shibata et al. [16] consider a weaker variant of the uniform deployment problem, called the semi-uniform deployment problem in perfect -ary trees where every intermediate node has children and all leaf nodes have the same depth. Intuitively, this problem requires that each of the nodes with depth s,s+d,s+2d, is occupied by a robot for some integers s and d (0s<d). They considered this problem for opaque robots (i.e., the robot model such that robot ri cannot observe robot rj when another robot rh exists on the path between ri and rj) and clarified the relationship between the number of available light colors and the solvability of the semi-uniform deployment problem.

A separate research track considered the uniform deployment problem in ring networks for another mobile entity model called mobile agents [13, 14, 15], which have persistent memory, but cannot observe others’ positions unless they are located on the same node. Like the aforementioned works, although uniform deployment (including its variants) has been considered in various settings, to the best of our knowledge, it was not considered in graphs other than rings, grids, and perfect -ary trees.

1.2 Our Contribution

In this paper, we consider the problem of uniform deployment for mobile robots in complete bipartite graphs. Specifically, when n robots are positioned arbitrarily at distinct nodes in a complete bipartite graph Kn,n, which consists of two n-node sets VL and VR, this problem requires the robots to achieve one of the following configurations: (a) there exists exactly one robot at every node in VL, and no robot in VR, or (b) there exists exactly one robot at every node in VR, and no robot in VL. An example of uniform deployment in a complete bipartite graph K5,5 is presented in Fig. 1. Observe that when robots reach such a configuration, the distance between any two robots is 2, and perfect uniform deployment is achieved. We assume that robots are uniform (they execute the same algorithm), oblivious (they cannot memorize past information), cannot communicate with each other directly, and cannot detect whether their hosting node belongs to VL or to VR (that is, the nodes are not labeled).

In these settings, we explore the relationship between the visibility range of robots and the solvability of the uniform deployment problem. First, we show that there exist initial configurations from which robots cannot achieve uniform deployment even if they have an infinite visibility range. Hence, the uniform deployment problem in this paper requires robots to (i) detect whether the given initial configuration is solvable or not under the assumption that robots have an infinite visibility range, and (ii) reach a uniformly deployed configuration described above whenever the configuration is a solvable one. Next, we demonstrate that visibility range 1 (meaning robots can only observe nodes at a distance of 1 and the robots positioned on them) is insufficient, proving the impossibility of solving the problem under this constraint. Conversely, we show that visibility range Θ(logn) is sufficient by presenting a deterministic algorithm that (i) detects whether the initial configuration is solvable or not, and (ii) achieves uniform deployment in O(1) round whenever the configuration is a solvable one, even if each robot’s action is executed asynchronously (robots may be scheduled freely for execution). At first glance, since the diameter of complete bipartite graphs is 2, readers may think that visibility range Θ(logn) is too large and a constant range is sufficient. In the last section, we briefly introduce an example presenting that robots with a constant visibility range (which is 3 in this example) cannot solve the problem in a naive way, and it is not easy to reduce the visibility gap.

Figure 1: Example of uniform deployment in a complete bipartite graph K5,5.

2 Preliminaries

Figure 2: Examples of views of robot ri ((a): a given configuration, (b): the view with visibility range 1, (c): the view with visibility range 2).

2.1 System model

A complete bipartite graph Kn,n is defined as 3-tuple Kn,n=(VL,VR,E), where VL (resp., VR) is a left-node set (resp., right-node set) and E=VL×VR is a set of edges. In this paper, we assume that |VL|=|VR|=n holds. Hence, Kn,n in this paper has 2n nodes and n2 edges. The distance between nodes v and v is the minimum number of edges connecting them. Notice that the maximum distance between any two nodes in Kn,n is 2. We assume that nodes are anonymous, i.e., they do not have distinct IDs (and thus the indices of nodes are used just for the notation purpose). In addition, we assume that each edge e incident to v is uniquely labeled at v with a label from the set {1,2,n}. We call this label port number. Since each edge connects two nodes, it has two port numbers. Port labelings are common to robots, but they are local, that is, there is no coherence between the two port numbers in the edge connecting two nodes.

We consider a set of n robots with the following characteristics and capabilities. Robots are uniform, that is, they execute the same algorithm and cannot be distinguished by their appearance. Note that, since robots are uniform and nodes are anonymous, robots do not know whether their hosting node belongs to VL or to VR. Robots are oblivious, that is, they have no persistent memory and cannot remember their past actions. In addition, robots cannot communicate with other robots directly. However, robots have limited visibility range and they can observe the positions of other robots and port labeling within the range. This means that robots can communicate implicitly by their positions and port numbers. For example, robots with visibility range 1 can observe nodes within distance 1, that is, when a robot ri is at a node in VL (resp., VR), it can observe the port labeling of edges connecting to its current node, and can detect whether each node in VR (resp., VL) is occupied by a robot or not. When robots have visibility range 2, they can observe nodes and port labeling within distance 2. An example is given in Fig. 2. A number at each edge endpoint represents a port number. In each case, robot ri can observe the area of solid nodes, edges, robots, and port numbers within the range, but cannot observe the dashed area. We call the information obtained from the observable area of ri the view of ri. As the figures show, ri’s view can be represented as a rooted tree whose root is ri’s staying node. Views for robots with visibility range more than 2 can be represented similarly. In particular, in this paper, we consider two types of robots with respect to visibility range: robots with visibility range 1 and robots with visibility range Θ(logn). Notice that the notion of the view can be used for a node with no robot (we use such views later).

Each robot executes the algorithm by repeating Look-Compute-Move (LCM) cycles. At the beginning of each cycle, the robot observes positions of the other robots and port labeling within its visibility range (Look phase). According to the observation, the robot computes the destination to move (possibly the current node, which implies the agent stays at the node) (Compute phase). If the robot decides to move, it moves to the node by the end of the cycle (Move phase). To analyze the asynchronous behavior of robots, we introduce the notion of a scheduler that decides when each robot executes the phases. When the scheduler makes robot r execute some phases, we say the scheduler activates r. There are three types of synchronicity: the FSYNC (fully synchronous), the SSYNC (semi-synchronous), and the ASYNC (asynchronous) model. In the FSYNC model, at each time step, all robots are activated and they execute an LCM cycle synchronously and concurrently. In the SSYNC model, at each time step, a scheduler activates a non-empty set of robots and the selected robots execute the cycle synchronously and concurrently. In the ASYNC model, cycles of robots are executed asynchronously; each phase of a cycle can be executed at arbitrary time. Hence, in the ASYNC model, each robot can move based on an outdated view that the robot observed before, and a robot may exist on some edge in the view. On the other hand, in the FSYNC and SSYNC model, since they move synchronously and concurrently, robots can move based on the latest view and robots always exist at nodes in the view. When considering the SSYNC or ASYNC model, we assume that the scheduler is fair, that is, each robot is activated infinitely often. We consider the scheduler as an adversary, that is, we assume that the scheduler is omniscient (it knows robot positions, algorithms, etc.), and tries to activate robots in such a way that they fail to execute the task.

A configuration 𝒞 of the system is defined by the positions of all robots. We call a node hosting a robot (resp., not hosting a robot) an occupied node (resp., an empty node). For an infinite sequence of configurations E=C0,C1,,Ct,, we say E is an execution from initial configuration C0 if, for every instant t, Ct+1 is obtained from Ct after all the activated robots execute an action each. We say Ci is the i-th configuration of execution E. In initial configuration C0, we assume that robots are arbitrarily positioned at distinct nodes, and the positions are determined by the adversary.

2.2 The problem to be solved

The uniform deployment problem in complete bipartite graphs requires robots to achieve one of the following configurations: (a) there exists exactly one robot at every node in VL, and no robot in VR, or (b) there exists exactly one robot at every node in VR, and no robot in VL. Observe that when robots reach such a configuration, the distance between any two robots is 2, and perfect uniform deployment is achieved. Conversely, perfect uniform deployment is achieved only if the robots reach such a configuration. However, as shown in the next section, there exist configurations from which robots cannot achieve perfect uniform deployment even if they have an infinite visibility range. Let Sh be the set of configurations from which, according to some algorithm, the robots with visibility range h achieve perfect uniform deployment even in the ASYNC model, and Sh¯ be the set of configurations not in Sh. Then, the uniform deployment problem is defined as follows.

Definition 1.

Given a complete bipartite graph Kn,n with n robots initially located at distinct nodes, the uniform deployment problem requires the robots to satisfy the following objective.

  1. (i)

    If the initial configuration is in S¯, robots detect that uniform deployment cannot be achieved regardless of whether their visibility range is or less.

  2. (ii)

    If the configuration is in S, robots reach a configuration such that either (ii-a) there exists exactly one robot at every node in VL, and no robot in VR, or (ii-b) there exists exactly one robot at every node in VR, and no robot in VL. The robots are not allowed to detect (or declare) the unsolvability by mistake before achieving uniform deployment.

In this paper, we evaluate the algorithm performances by the number of rounds for robots to solve the problem. Here, a round is defined as the shortest fragment of an execution where every robot is activated at least once.

Figure 3: (a) Configuration that is view-symmetric in an infinite visibility range, (b) configuration that is not view-symmetric in an infinite visibility range.

3 Unsolvable initial configurations

Before discussing results focusing on the visibility ranges of robots, we show that there exist unsolvable initial configurations even if robots have an infinite visibility range. To this end, we define view-symmetric configurations. We say the given configuration is view-symmetric in an infinite visibility range iff there is bijection function f:VLVR such that, for any vLiVL(1in), there is f(vLi)=vRiVR with the same view in any visibility range. For example, in Fig 3(a), since nodes vL1 and vR1 (resp., vL2 and vR2) have the same view, the configuration is view-symmetric in an infinite visibility range. However, in Fig. 3(b), since vL1’s view is not the same as that for vR1 or vR2, the configuration is not view-symmetric in an infinite visibility range. Notice that, when n is odd, any configuration is not view-symmetric in an infinite visibility range since the number of robots in VL and that in VR are always different, in other words, the number of robots at any depth d in the view tree for a robot in VL is not equal to that at depth d in the view tree for any robot in VR.

Then, we have the following theorem.

Theorem 2.

If the initial configuration is view-symmetric in an infinite visibility range, the uniform deployment problem is not solvable even in the FSYNC model.

Proof.

Let f:VLVR be a bijection function in the definition of a view-symmetric configuration, and f(vLi)=vRi(vLiVL and vRiVR) for each i(1in). Let denote the view of vLi and vRi as TLi and TRi, respectively. From the definition, TLi=TRi holds. Notice that, when the configuration is view-symmetric in an infinite visibility range, there exist n/2 robots in VL and n/2 robots in VR (i.e., n is even). In addition, vLi and vRi may not have a robot. Let v𝑑𝐿i be a descendant occupied node of vLi in TLi and r𝑑𝐿i be a robot existing at node v𝑑𝐿i. Then, since vLi and vRi have the same view, there exists a robot r𝑑𝑅i at node v𝑑𝑅i(=f(v𝑑𝐿i)) in TRi such that the port sequence from vLi to v𝑑𝐿i is exactly the same as that from vRi to v𝑑𝑅i. In this situation, since r𝑑𝐿i and r𝑑𝑅i have the same view because of f(v𝑑𝐿i)=v𝑑𝑅i, if r𝑑𝐿i keeps staying at the current node, r𝑑𝑅i also keeps staying. If r𝑑𝐿i leaves the current node via port p𝑑𝐿𝑙𝑒𝑎𝑣𝑒 and visits an empty node via port p𝑑𝐿𝑎𝑟𝑟𝑖𝑣𝑒, robot r𝑑𝑅j also leaves the current node via some port p𝑑𝑅𝑙𝑒𝑎𝑣𝑒 and visits an empty node via port p𝑑𝑅𝑎𝑟𝑟𝑖𝑣𝑒, such that p𝑑𝑅𝑙𝑒𝑎𝑣𝑒=p𝑑𝐿𝑙𝑒𝑎𝑣𝑒 and p𝑑𝑅𝑎𝑟𝑟𝑖𝑣𝑒=p𝑑𝐿𝑎𝑟𝑟𝑖𝑣𝑒 hold, like Fig 4. Other robot pairs having the same view behave similarly. As a result, after the movement, vLi and vRi still have the same view. This means that they have the same view forever and the numbers of robots in VL and VR do not change from n/2. Therefore, uniform deployment cannot be achieved from the configurations and the theorem follows.

Figure 4: View of two nodes having the same view.

We have the following corollary.

Corollary 3.

The set comprising all initial configurations each of which is view-symmetric in an infinite visibility range is included in S¯.

4 Robots with visibility range 1

In this section, we show that robots cannot solve the uniform deployment problem when their visibility range is 1.

Theorem 4.

There is no algorithm to solve the uniform deployment problem for robots with visibility range 1 even in the FSYNC model.

Proof.

We prove the theorem by contradiction, that is, we assume that there is an algorithm 𝒜 to achieve uniform deployment for FSYNC robots with visibility range 1. First, we consider the configuration Ca in Fig. 5. This configuration is view-symmetric in an infinite visibility range and hence robots must eventually detect the unsolvability. From the configuration, there are four possible behaviors for robots ri and rj: (i) keep staying at the current node, (ii) leave the current node via port 1, (iii) leave the current node via port 2, or (iv) declare that uniform deployment cannot be achieved. In either case, we show that robots violate the problem requirement.

In the case of (i), robots keep staying forever without declaring the unsolvability, which violates the problem requirement. In the case of (ii), the configuration after the movement is exactly the same as Ca, which means that robots repeat the movements forever. Hence, robots cannot solve the problem with this moving rule. In the case of (iii), the configuration after the movement is like Cb in Fig. 5. This configuration is actually the same as Ca (i.e., the views for ri and rj in Ca and Cb are exactly the same). Hence, robots repeat the movements forever and cannot solve the problem. Finally, let us consider the case of (iv). In this case, in configuration Ca, robots ri and rj declare the unsolvabiluty. Then, let us consider another execution starting from configuration Cc in Fig. 5. This configuration is not view-symmetric in an infinite visibility range and hence robots need to reach a uniformly deployed configuration. However, the view information for ri in Ca and that in Cc are exactly the same since robots in this section have visibility range 1. Hence, similar to the execution starting from Ca, ri declares the unsolvability also in Cc, which violates the problem requirement.

Therefore, the theorem follows.

Figure 5: Examples showing the unsolvability for robots with visibility range 1.

Since configuration Cc in Fig. 5 is not view-symmetric in an infinite visibility range and hence in S, we have the following corollary.

Corollary 5.

SS1.

5 Robots with visibility range 𝚯(𝐥𝐨𝐠𝒏)

In this section, we consider robots with visibility range Θ(logn). First, we show that the range Θ(logn) is sufficient for detecting if the given initial configuration is an unsolvable one (i.e., the configuration is view-symmetric in an infinite visibility range, explained in Section 3). After that, we propose an algorithm such that characterize (i) detects that uniform deployment is impossible since the given initial configuration is an unsolvable one (i.e., it is in S¯), and (ii) reach a uniformly deployed configuration in O(1) rounds whenever the configuration is not view-symmetric in an infinite visibility range. By these results, we can characterize that S (resp., S¯) is the set comprising all initial configurations each of which is view-symmetric (resp., not view-symmetric) in an infinite visibility range.

5.1 Sufficiency to detect the unsolvability

In this subsection, we show that visibility range Θ(logn) is sufficient for detecting whether or not the current configuration is view-symmetric in an infinite visibility range and thus an unsolvable one. Let viewh(v) be the view of node v in visibility range h. Notice that v may be an empty node. When two nodes v and v have the same view of range h, we express the relationship by viewh(v)=viewh(v). Then, we partition nodes into several groups with the same view of range h. That is, let 𝒩hL ={NL1h,NL2h,NLkhh}(1khn) (resp., 𝒩hR ={NR1h,NR2h,NRkhh} (1khn)) be a family of sets in the left-node set (resp., the right-node set) such that each node in NLh(1kh) (resp., NRh(1kh)) has the same view in visibility range h (i.e., viewh(v)=viewh(v) holds for any v,vNLh). For example, when there exist six nodes vL1,vL2,vL3,vL4,vL5, and vL6 in VL, nodes vL1,vL2, and vL5 have the same view, and when vL3 and vL6 have the same view in the visibility range h, then 𝒩=Lh{{vL1,vL2,vL5}, {vL3,vL6}, {vL4}} holds. Moreover, we say that the configuration is view-symmetric within visibility range h if there is a bijection function f:VLVR such that, for any vLiVL, f(vLi)=vRiVR has the same view in visibility range within h.

Then, we have the following lemma.

Lemma 6.

For any h, when a configuration is view-symmetric within visibility range h+1, and when 𝒩=Lh𝒩h+1L and 𝒩=Rh𝒩h+1R hold (i.e., the group component having the same view from range h to h+1 does not change), then the configuration is view-symmetric in an infinite visibility range.

Proof.

We show the proof by contradiction, that is, we assume that when the current configuration is view-symmetric within visibility range h+1, and when 𝒩=Lh𝒩h+1L and 𝒩=Rh𝒩h+1R hold, then the configuration is not view-symmetric within some visibility range more than h+1. Let h(h+2) be the minimum integer satisfying the above condition, that is, the configuration is view-symmetric within visibility range h1 but not view-symmetric within visibility range h. Then, there exist nodes vaVL and vbVR such that viewh+1(va)=viewh+1(vb) but viewh(va)viewh(vb) hold. This means that, there exists some port sequence with length h such that the view information (i.e., a port number or the existence of a robot) of the node vha led by the port sequence from va is different from the view information of the node vhb led by the sequence from vb (see Fig. 6). On the path from va to vha (resp., vb to vhb), let vhh1a (resp., vhh1b) be the node with length hh1 from node va (resp., node vb). Then, viewh+1(vhh1a)viewh+1(vhh1b) holds because of viewh(va)viewh(vb). However, this contradicts the assumption of minimality of h. Therefore, the lemma follows.

Figure 6: Example such that viewh+1(va)=viewh+1(vb) but viewh(va)viewh(vb) hold.

Then, we have the following theorem.

Theorem 7.

Robots with visibility range Θ(logn) can detect whether or not the current configuration is view-symmetric in an infinite visibility range.

Proof.

We show that visibility range 2logn+2 is sufficient for detecting view-symmetry (or view-asymmetry). At first, in Kn,n, the maximum distance between any two nodes is 2, and the distance is composed of a node vLVL and a node vLVL\vL, or a node vRVR and a node vRVR\vR. Hence, by the above fact and the structure of Kn,n, each robot with visibility range 2logn+2 can obtain the view of any other node in visibility range 2logn. Then, we claim that, when the configuration is not view-symmetric in an infinite visibility range but it is view-symmetric in visibility range h>0, max[1,k2h+2]|NL2h+2|(1/2)×max[1,k2h]|NL2h| for any integer 0hh2. The same argument holds also for 𝒩2hR and 𝒩2+2hR. Then, this lemma follows from Lemma 6.

To show the above, let us consider the structure of 𝒩2h+2L first. From 𝒩2h+1L to 𝒩2h+2L, in order for some two nodes in NL2h+1 to be in the same node set NL2h+2 for some (i.e., they have the same view within visibility range 2h+2), it is necessary that each of them is connected to a node in NR′′2h+1 via the same starting and arriving port pair, for each 1′′k2h+1. Hence, letting 𝑚𝑖𝑛 be the integer satisfying |NR𝑚𝑖𝑛2h+1|=min[1,k2h+1]|NR2h+1|, since each node in VL is connected to a node in NR𝑚𝑖𝑛2h+1, max[1,k2h+2]|NL2h+2||NR𝑚𝑖𝑛2h+1| holds. In addition, by Lemma 6, from visibility range 2h to 2h+1, since 𝒩R2h𝒩2h+1R holds, some NR2h is partitioned into at least two sets NR2h+1 and NR′′2h+1. Then, obviously |NR2h|>|NR2h+1| and |NR2h|>|NR′′2h+1| hold. This means that the situation where max[1,k2h+2]|NL2h+2| becomes the maximum is that, NR𝑚𝑎𝑥2h satisfying |NR𝑚𝑎𝑥2h|=max[1,k2h]|NR2h| is partitioned into two groups NR𝑚𝑎𝑥2h+1 and NR𝑚𝑎𝑥′′2h+1 such that |NR𝑚𝑎𝑥2h+1|=(1/2)×|NR𝑚𝑎𝑥2h| or |NR𝑚𝑎𝑥2h+1|=(1/2)×|NR𝑚𝑎𝑥2h|. In this case, max[1,k2h+2]|NL2h+2|(1/2)×max[1,k2h]|NL2h| holds for any h0.

Therefore, the theorem follows.

We have the following corollary.

Corollary 8.

S¯2log+2S¯.

5.2 Proposed Algorithm

In this section, we propose a deterministic algorithm for robots with visibility range Θ(logn) such that (i) detects that uniform deployment is impossible when the given initial configuration is in S¯ and hence an unsolvable (i.e., view-symmetric in an infinite visibility range) one, and (ii) achieves uniform deployment in O(1) rounds whenever the given initial configuration is not view-symmetric in an infinite visibility range (this algorithm works correctly even in the ASYNC model). By these results, we can characterize that S (resp., S¯) is the set comprising all initial configurations each of which is view-symmetric (resp., not view-symmetric) in an infinite visibility range. When the configuration is view-symmetric in an infinite visibility range, by Theorem 7, robots with visibility range Θ(logn) can detect the fact. Hence, in this case, robots recognize that the problem cannot be solved from the given initial configuration and terminate the algorithm execution. In the following, we explain how robots behave to solve the problem from solvable (or non-view-symmetrc in in an infinite visibility range) configurations111When robots can detect that the given initial configuration is not view-symmetric in some visibility range o(logn), actually visibility range o(logn) (e.g., some constant) is sufficient. However, to detect the (un)solvability of any given initial configuration, at this stage we assume the visibility range Θ(logn)..

Let nL (resp., nR) be the number of robots existing in VL (resp., VR) in the initial configuration C0. Notice that no robot exists on an edge in C0. Then, the basic idea is, based on nL, nR, and views, to determine which robots in VL or VR should move. We assume that two or more views can be compared and determined which one is smaller (or the smallest) one in some way. We consider the cases that (a) nLnR, and (b) nL=nR in this order. Notice that, in the ASYNC model, robots may be on edges when observed by some robots. We also treat this asynchronicity in cases (a) and (b).

In the case of (a) nLnR, we first consider the case where no robot exists on an edge and then consider the case where some robot exists on edges. When no robot exists on an edge, robots in the node set with fewer robots move to an empty node in another node set with more robots. Without loss of generality, we assume that nL<nR holds. In this case, robots at nodes in VR need not move anymore and hence terminate the algorithm execution. On the other hand, each robot in VL tries to move to an empty node in VR, with avoiding a collision. Here, a collision means that several robots stay at the same node. When a collision occurs, from then the two or more robots at the same node behave in exactly the same way since they have the same view. Hence, they will never stay at different nodes, which means that uniform deployment cannot be achieved. Thus, to achieve uniform deployment without a collision, robots with smaller views preferentially determine their destinations and move there. Recall that since robots in this section have visibility range Θ(logn), each robot can get views within visibility range Θ(logn) for each of the other nodes, compare them, and also calculate candidate destination nodes for each robot using the views. Let V𝑒𝑚𝑝 be the set of empty nodes in the other side (VR in this case) and we assume that nL robots rL1,rL2,,rLnL in VL are arranged in the non-decreasing order in terms of their views. Then, rLi chooses its destination node with avoiding a collision, by calculating destinations of rL1,rL2,rLi1 beforehand. Concretely, rLi first virtually calculates rL1’s destination node vd1 as the empty node led by the lexicographically minimum port pair (pL𝑚𝑖𝑛1,pR𝑚𝑖𝑛1) among pairs connecting to rL1’s currently staying node to an empty node. Then, ri updates the candidate destination nodes (i.e., V𝑒𝑚𝑝) to V𝑒𝑚𝑝\{vd1}. Next, ri similarly calculates rL2’s destination node vd2 but among the candidate nodes V𝑒𝑚𝑝\{vd1}. Likewise, ri calculates destination nodes vd1,vd2,,vdi1 of robots rL1,rL2,rLi1 one by one, and then calculates its destination node vdi among the candidate empty nodes V𝑒𝑚𝑝\{vd1,vd2,,vdi1} and moves there. When reaching vdi, ri terminates the algorithm execution. By this behavior, since each robot rLi’s destination node vdi is not chosen by any other robot rLi(1ii1) with a smaller view than that of rLi, or rLi′′(i+1i′′nL) with a larger view, ri can stay at vdi without a collision. Notice that there may exist several robots rL and rL with the same view in VL. In this case, each of them recognizes that it has a smaller view than the other. Then, rL and rL use the same port pair (pL𝑚𝑖𝑛,pR𝑚𝑖𝑛) (=(pL𝑚𝑖𝑛,pR𝑚𝑖𝑛)), which means that they choose different destination nodes because of pR𝑚𝑖𝑛=pR𝑚𝑖𝑛. The case where more than two robots have the same view can be treated similarly.

However, we need to consider the case where robots are on edges because of the ASYNC model. In this case, since robot rm during the movement determined to move due to nL<nR (i.e., the number of robots at its side is smaller than that of the other side), robots at nodes determine whether they should move or stay using the above facts. That is, when some robot rm is on an edge, each robot ri staying at a node in VL calculates the number nL (resp., nR) of robots at nodes in VL (resp., VR), ignoring the existence of rm. Then, nL<nR obviously holds by the moving tactics of robots. In this case, ri can recognize which node in VL the robot rm previously stayed at, calculate rm’s view (and how small it is among robots in VL), and the port pair it selected. Thus, since ri can recognize rm’s destination node vdm, ri chooses its destination with avoiding vdm. If robot ri stays at a node in VR, it terminates the algorithm execution since it initially stays at a node in a node set with more robots. The case where several robots are during the movements are treated similarly.

!

Figure 7: Movement example when nLnR.

For example, in Fig. 7, we assume that seven robots exist in a complete bipartite graph K7,7, three robots exist in VL, and four robots exist in VR. However, we only show three robots in VL and three empty nodes in VR for simplicity. In addition, we assume that ri (resp., rh and rj) has the smallest (resp., have the second smallest and the third smallest) view among the three robots. Then, in Fig. 7 (a), robots rh and ri are led to the same empty node by their minimum port pairs (2,4) and (1,2), respectively. In this case, since ri has the smallest view, it moves to and stays at vdi (Fig. 7 (b)). Then, rh and rj recognize that ri is during the movement and it previously stayed at a node in their side. Hence, rh and rk respectively determine their destinations vdh and vdj among empty nodes other than vdi, and move there (Fig. 7 (c)). After the movement, robots achieve uniform deployment.

Next, in the case of (b) nL=nR, robots compare views of VL and those of VR, and determine whether robots in VL or VR should move. Concretely, robots arrange views viewsL of VL in ascending order and similarly arrange views viewsR of VR. Notice that views of nodes without a robot are also included in viewsL and viewsR. Then, viewsLviewsR holds since the configuration is not view-symmetric in an infinite visibility range. Since robots with visibility range Θ(logn) in this section can detect the fact by Theorem 7, using the information, robots in the node set with smaller views can determine to move and select their destination nodes by the method explained in the case (a) nLnR. Therefore, they can achieve uniform deployment by repeating the behaviors for the case (a).

Algorithm 1 The proposed algorithm for robot ri.

The pseudocode is described in Algorithm 1. Concerning the algorithm, we have the following theorem.

Theorem 9.

The proposed algorithm solves the uniform deployment problem for robots with visibility range Θ(logn) in O(1) rounds in complete bipartite graphs Kn,n.

Proof.

By Algorithm 1, when the configuration is view-symmetric in an infinite visibility range, robots detect the unsolvability and terminate the algorithm execution (lines 2 to 3). When the configuration is not view-symmetric in an infinite visibility range, if nLnR holds, robots in the node set with fewer robots try to move to and stay at an empty node in another node set, with avoiding a collision (lines 8 to 19). In addition, if nL=nR holds, since viewLviewR holds, robots in the node set with smaller views similarly decide to move and reach their destination nodes. Moreover, when each robot ri that should move is activated, it calculates its destination node vdi and complete moving there with the only one activation. Therefore, robots achieve uniform deployment in O(1) rounds and the theorem follows.

6 Challenges to an algorithm with a constant visibility range

At this stage, on the visibility range for detecting (un)solvability, the upper bound is O(logn) and the lower bound is 2. Hence, there exists a gap and it is open whether or not robots with visibility range o(logn) can detect the (un)solvablity. Although we conjecture that robots with a constant visibility range can solve the problem, in the following we show an example implying non-triviality and some difficulty to reduce the above gap, focusing on robots with visibility range 3.

Let us consider the initial configuration of Fig. 8. In the figure, the i-th number assigned to each node is the port number leading to i-th node in the other side (1i6). We only show edges connecting to node vL1 and omit the other edges for simplicity. In this case, when robots have visibility range 3, each robot ri can get the view tree of depth 1 for each of the other robots. Then, nodes vLi and vRi (1i6) have the same view in visibility range 1, and hence the configuration is view-symmetric in visibility range 1. Notice that robots rLj and rRj (1j3) have the same view in visibility range 1 for this configuration. The view trees of robots rL1 and rR1 of Fig. 8(a) are respectively given in Fig. 9. However, letting vL11 be the node led by port 1 from node vL1 (vL11=vR1 in the figure), although vL1 and vL11 are connected by ports (1,2) and the arriving port number led via port 1 from vL11 is 2, there is no node having such a view information in the right node set, even if the nodes (or robots) have an infinite visibility range. Hence, the configuration is view-symmetric in visibility range 1 but not view-symmetric in visibility range 2 (i.e., solvable) and hence robots need to reach a uniformly deployed configuration. However, for robots with visibility range 1, in some naive algorithm, robots may detect unsolvability, which violates the problem requirement. On the other hand, when robots rL1 and rR1 respectively visit a neighboring node via port 4 and the other robots keep staying at the current node, the configuration becomes non-symmetric even in visibility range 1. This is because, by the movements, the node vR1 led via port 1 from node vL1 has no robot but the node vL1 led via port 1 from node vR1 has a robot. Hence, robots may be able to achieve uniform deployment with some additional moving rules. Consequently, by the above example, at this stage, we do not know whether robots with visibility range 3 (or a little larger constant range) can solve the problem and we will try to tackle this topic in future work.

Figure 8: Examples representing that some constant visibility range may not be sufficient ((a): an initial configuration, (b): configuration after rL1 and rR1 move).
Figure 9: (a): view tree of rL1, (b): view tree of rR1.

7 Conclusion

In this paper, we considered the problem of uniform deployment for mobile robots in complete bipartite graphs Kn,n. First, we show that there are several unsolvable configurations even if robots have an infinite visibility range. Next, for robots with visibility range 1, we proved that robots cannot solve the problem. Third, for robots with visibility range Θ(logn), we proposed a deterministic algorithm that (i) detects when uniform deployment is impossible (due to an unsolvable initial configuration) and (ii) achieves uniform deployment in O(1) rounds whenever the initial configuration is solvable. Finally, we introduced an example implying some difficulty for reducing the upper bound of robots’ visibility range to some constant one.

As future work, we plan to consider the solvability of the problem for robots with visibility range between 2 and o(logn). Also, we will consider variants of uniform deployment in bipartite graphs, e.g., the problem requiring that (i) less than n robots deploy at the same side and no robot deploys at the other side in complete bipartite graphs Kn,n and (ii) robots deploy at the same side in non-complete bipartite graphs. In those problem settings, we conjecture that our algorithm in Section 5.2 can be directly applied, with visibility range less than Θ(logn).

References

  • [1] L. Barriere, P. Flocchini, E. Mesa-Barrameda, and N. Santoro. Uniform scattering of autonomous mobile robots in a grid. International Journal of Foundations of Computer Science, 22(03):679–697, 2011. doi:10.1142/S0129054111008295.
  • [2] S. Cicerone, G. Di Stefano, and A. Navarra. Asynchronous robots on graphs: Gathering. Distributed Computing by Mobile Entities, Current Research in Moving and Computing, 11340:184–217, 2019. doi:10.1007/978-3-030-11072-7_8.
  • [3] S. Das, P. Flocchini, G. Prencipe, N. Santoro, and M. Yamashita. Autonomous mobile robots with lights. Theoretical Computer Science, 609:171–184, 2016. doi:10.1016/J.TCS.2015.09.018.
  • [4] M. D’Emidio, G. Di Stefano, D. Frigioni, and A. Navarra. Characterizing the computational power of mobile robots on graphs and implications for the euclidean plane. Information and Computation, 263:57–74, 2018. doi:10.1016/J.IC.2018.09.010.
  • [5] S. Devismes, A. Lamani, F. Petit, P. Raymond, and S. Tixeuil. Terminating exploration of A grid by an optimal number of asynchronous oblivious robots. The Computer Journal, 64(1):132–154, 2021. doi:10.1093/COMJNL/BXZ166.
  • [6] Y. Elor and A. M. Bruckstein. Uniform multi-agent deployment on a ring. Theoretical Computer Science, 412(8-10):783–795, 2011. doi:10.1016/J.TCS.2010.11.023.
  • [7] P. Flocchini, G. Prencipe, and N. Santoro. Self-deployment of mobile sensors on a ring. Theoretical Computer Science, 402(1):67–80, 2008. doi:10.1016/J.TCS.2008.03.006.
  • [8] S. Kamei and S. Tixeuil. An asynchronous maximum independent set algorithm by myopic luminous robots on grids. The Computer Journal, 2022.
  • [9] F. Ooshita and S. Tixeuil. Ring exploration with myopic luminous robots. Information and Computation, 285:104702, 2022. doi:10.1016/J.IC.2021.104702.
  • [10] P. Poudel and G. Sharma. Time-optimal uniform scattering in a grid. International Conference on Distributed Computing and Networking, pages 228–237, 2019.
  • [11] P. Poudel and G. Sharma. Fast uniform scattering on a grid for asynchronous oblivious robots. International Symposium on Stabilizing, Safety, and Security of Distributed Systems, pages 211–228, 2020.
  • [12] A. Sangnier, N. Sznajder, M. Potop-Butucaru, and S. Tixeuil. Parameterized verification of algorithms for oblivious robots on a ring. Formal Methods in System Design, 56(1):55–89, 2020. doi:10.1007/S10703-019-00335-Y.
  • [13] M. Shibata, H. Kakugawa, and T. Masuzawa. Space-efficient uniform deployment of mobile agents in asynchronous unidirectional rings. Theoretical Computer Science, 809:357–371, 2020. doi:10.1016/J.TCS.2019.12.031.
  • [14] M. Shibata, T. Mega, F. Ooshita, H. Kakugawa, and T. Masuzawa. Uniform deployment of mobile agents in asynchronous rings. Journal of Parallel and Distributed Computing, 119:92–106, 2018. doi:10.1016/J.JPDC.2018.03.008.
  • [15] M. Shibata, Y. Sudo, J. Nakamura, and Y. Kim. Almost uniform deployment of mobile agents in dynamic rings. Information and Computation, 289:104949, 2022. doi:10.1016/J.IC.2022.104949.
  • [16] M. Shibata and S. Tixeuil. Semi-uniform deployment of mobile robots in perfect -ary trees. Concurrency and Computation: Practice and Experience, page e7432, 2022.
  • [17] I. Suzuki and M. Yamashita. Distributed anonymous mobile robots: Formation of geometric patterns. SIAM Journal on Computing, 28(4):1347–1363, 1999. doi:10.1137/S009753979628292X.
  • [18] Y. Yamauchi, T. Uehara, S. Kijima, and M. Yamashita. Plane formation by synchronous mobile robots in the three-dimensional euclidean space. Journal of the ACM (JACM), 64(3):1–43, 2017. doi:10.1145/3060272.