Coding theory for noiseless channels realized by anonymous oblivious mobile robots
Yukiko Yamauchi, Masafumi Yamashita

TL;DR
This paper introduces a coding scheme for noiseless communication using anonymous, oblivious mobile robots on graphs, analyzing its efficiency and providing algorithms for optimal code size and transmission delay.
Contribution
It presents novel coding algorithms for robot swarms that optimize either code size or transmission delay, with bounds and performance analysis.
Findings
Lower bound of delay depends on swarm size
Code size is exponentially bounded by swarm size
Two algorithms achieve near-optimal and optimal trade-offs
Abstract
We propose an information transmission scheme by a swarm of anonymous oblivious mobile robots on a graph. The swarm of robots travel from a sender vertex to a receiver vertex to transmit a symbol generated at the sender. The codeword for a symbol is a pair of an initial configuration at the sender and a set of terminal configurations at the receiver. The set of such codewords forms a code. We analyze the performance of the proposed scheme in terms of its code size and transmission delay. We first demonstrate that a lower bound of the transmission delay depends on the size of the swarm, and the code size is upper bounded by an exponent of the size of the swarm. We then give two algorithms for a swarm of a fixed size. The first algorithm realizes a near optimal code size with a large transmission delay. The second algorithm realizes an optimal transmission delay with a smaller code size.…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsOptimization and Search Problems · Distributed Control Multi-Agent Systems · Advanced Bandit Algorithms Research
Coding theory for noiseless channels realized by anonymous oblivious mobile robots
Yukiko Yamauchi Corresponding author. Faculty of Information Science and Electrical Engineering, Kyushu University, Japan. E-mail: [email protected]
Masafumi Yamashita Faculty of Information Science and Electrical Engineering, Kyushu University, Japan. E-mail: [email protected]
Abstract
We propose an information transmission scheme by a swarm of anonymous oblivious mobile robots on a graph. The swarm of robots travel from a sender vertex to a receiver vertex to transmit a symbol generated at the sender. The codeword for a symbol is a pair of an initial configuration at the sender and a set of terminal configurations at the receiver. The set of such codewords forms a code. We analyze the performance of the proposed scheme in terms of its code size and transmission delay. We first demonstrate that a lower bound of the transmission delay depends on the size of the swarm, and the code size is upper bounded by an exponent of the size of the swarm. We then give two algorithms for a swarm of a fixed size. The first algorithm realizes a near optimal code size with a large transmission delay. The second algorithm realizes an optimal transmission delay with a smaller code size. We then consider information transmission by swarms of different sizes and present upper bounds of the expected swarm size by the two algorithms. We also present lower bounds by Shannon’s lemma and noiseless coding theorem.
Keyword: Mobile robots, information transmission, coding theory.
1 Introduction
Memory is indispensable to a computer system to demonstrate its computation ability. Its importance does not diminish in a distributed system. We thus tend to guess that a distributed system lacking memory can solve no problems but trivial ones. A swarm of anonymous oblivious mobile robots is a distributed system whose components called robots move on a continuous space or a graph. It is typically characterized by the lack of identifiers and common and local memories. Contrary to the quess, in spite of the absence of memory, it has been shown to have rich ability to solve a variety of problems (e.g., [2, 4, 5, 7, 8, 9, 10, 11, 14, 17, 18, 22, 23, 24, 25, 26, 27, 28]). In order to solve those problems, the robots indeed need to “remember” key information to solve a problem such as the current search direction in exploration [2, 8, 13, 14], the currently agreed common coordinate system in pattern formation [18, 24, 25, 28, 27, 26], and the current phase in forming a sequence of patterns [7]. A main idea to make up the lack of memory is to use “external memory” composed of the locations of all robots, i.e., its (global) configuration, and the information that the robots need to remember is embedded in the current configuration. However for the robots to keep external memory stable is by no means easy, and interesting tricks have been developed to realize the idea based on concepts such as the smallest enclosing circle [11, 17, 18, 22, 24, 25, 28], the rotation group [26, 27] and the Fermat point [4]. Proposing a suitable external memory is thus considered to be a key in the design of algorithm for a swarm of anonymous oblivious mobile robots.
This paper investigates an information transmission problem on a graph, which asks an algorithm to transmit information from a sender to a receiver by using a swarm of anonymous oblivious mobile robots moving on the graph, and analyzes the bounds on the amount of information that the swarm of robots can carry in its external memory and the transmission delay.
Let be a connected undirected (possibly infinite) graph with two distinguished vertices and called the sender and the receiver, respectively. We want to transmit a symbol in from to by using a swarm of anonymous oblivious mobile robots on , where the probability that is . Sometimes we assume that the distance between and is sufficiently larger than and/or the number of the robots to reduce possible disturbance caused by boundary conditions in analyses.
Each vertex of can accommodate at most one robot of the swarm. Thus the configuration of the swarm is represented by a subset of . Any configuration of the swarm must be connected; denotes the set of all connected configurations, where is the subgraph of induced by . When the current configuration is , a robot at can move to one of its neighbors if the next configuration is also connected. At most one robot can move at one time step. The behavior of the swarm of robots is determined by a deterministic algorithm, which specifies the next configuration by choosing a robot to move and its destination. The input of the algorithm is the current configuration. Thus the behavior of the swarm is always deterministic. A configuration is said to be initial (resp. terminal) if (resp. ). The sets and denote the sets of initial and terminal configurations, respectively.
Let be a set of algorithms, where is an algorithm for the swarm of robots. For an initial configuration , where , the behavior of the swarm of robots under may eventually reach for the first time. In this case we define that and the transmission delay is . Otherwise, . Suppose that there are initial configurations such that for and for all . Assuming that both and are accessible to the list of pairs for , we can transmit a symbol as follows:
The sender initializes the swarm of robots by moving the robots to the vertices in and starts algorithm , where . 2. 2.
The receiver recognizes when a robot reaches , and knows that the sender transmitted .
Here we assume that the sender has a bag of infinitely many robots and can initialize the swarm of any number of robots, and the receiver recognizes as soon as a robot reaches . In this paper, we fix this information transmission scheme and analyze its performance.
Given a set of algorithms , the performance of the scheme mainly depends on the selection of an initial configuration for each . A simple approach is to choose configurations with the same size . That is, for all . We first investigate this approach. Let be the maximum number such that there are initial configurations with size satisfying for all . Then we are interested in upper and lower bounds on and , where denotes the maximum amount of information that the swarm of robots can carry in external memory under this information transmission scheme.
However, assigning all symbols to initial configurations with the same size is not always a good approach from the view of transmission delay, since the value of that satisfies can be large and, as we will show later, the transmission delay is roughly greater than where is the distance between and (i.e., the number of edges in the shortest path connecting them). Let be the size of assigned to for . Then we are interested in upper and lower bounds on the average size , since there is a chance that holds for some . The reduction of contributes to the reduction of energy, as well as the reduction of transmission delay, whose lower bound is roughly estimated by . However, its upper bound still heavily depends on .
We mainly investigate information transmission on 8-grids , where and .
**Our contributions. ** Our contributions can be summarized as follows:
We present exponential upper bounds of on general graphs and 8-grids. 2. 2.
Focusing on “narrow” channel realized by , we present two algorithms that promises exponential code size to a fixed swarm size . The first algorithm promises a near optimal code size , but has a large transmission delay. The second algorithm promises a near optimal transmission delay, but has a smaller code size . 3. 3.
We step into the second approach with these two algorithms and show upper bounds of the expected swarm size. 4. 4.
We finally analyze lower bounds of the expected swarm size based on the Shannon’s lemma and noiseless coding theory.
**Related works. ** Study of information transmission by a binary (or -ary) code is a main stream in computer science known as information theory (or coding theory). It is a fully developed research area, and there are many standard textbooks (e.g., [6]). One can notice the similarity between the first approach and the equal-length coding, and the second one and the variable-length coding. Our results are also related with Shannon’s source coding theorem, which relates the optimal average code length with the entropy of the information source.
Information transmission on a graph by a swarm of anonymous oblivious mobile robots has not been investigated to the best of our knowledge although, including a swarm of mobile robots, distributed systems consisting of mobile entities have been extensively investigated in the last couple of decades. Two survey books [15, 16] include their models and algorithms to solve typical problems such as gathering and convergence [4, 23, 24], pattern formation [11, 17, 18, 24, 25, 27, 28], scattering and covering [5, 10, 20, 21], flocking and marching [1, 3, 19, 29], and searching and exploration [2, 8, 13, 14].
A main theme in these studies is to solve the problems without using memory, partly motivated by a challenge to prejudice that those systems cannot solve non-trivial problems and partly because memoryless algorithms are usually strong against transient failures [12]. For example, exploration of a finite square grid by a metamorphic robot of size 5 is proposed [13]. The metamorphic robot consists of anonymous oblivious mobile robots (called modules in the literature) and remembers the current search direction (i.e., right, left, up or down) in its configuration during the exploration. In the existing pattern formation algorithms for anonymous oblivious mobile robots, in order to control the move order among the anonymous robots, they agree on a common coordinate system and remember it in external memory [11, 17, 18, 24, 25, 27]. In each of the oblivious algorithms one can find a trick to maintain external memory.
**Organization of the paper. ** We define the swarm of anonymous oblivious robots on a graph and formalize the noiseless communication channel realized by the swarm with an algorithm in Section 2. Section 3 first presents an upper bound of . Then, we present two algorithms for information transmission by a swarm of fixed size. We consider the second approach in Section 4 with the two algorithms and present lower and upper bounds of the expected swarm size. We conclude this paper with Section 5 which also includes future directions and open problems.
2 Preliminaries
2.1 Swarm of anonymous oblivious mobile robots
Let be a simple connected undirected graph. For , denotes the set of neighbors of in , and for a subset , denotes the subgraph of induced by . For two vertices , denotes the distance between and . We define two infinite regular graphs. Let be the set of integers. The -grid is an infinite graph , where and the -grid is an infinite graph , where .
We consider a swarm of anonymous oblivious mobile robots on . We use the indices just for description since a robot is anonymous. A robot is oblivious, which means that it does not have memory to remember information obtained in the past. A vertex of can accommodate at most one robot at each time step, and the set of vertices that accommodate robots is called the configuration of . We say that a configuration is connected if is connected. A robot at can move to a vertex through edge if the new configuration obtained by this movement of is connected. In what follows, we always assume that a configuration means a connected one. By we denote the set of (connected) configurations .
Each robot knows and is aware of the vertex it resides. It repeats a Look-Compute-Move cycle once initialized. In each Look-Compute-Move cycle, it first observes the positions of other robots on in Look phase. The visibility range is finite, but is large enough to observe all the robots, so that recognizes the current configuration . In Compute phase, given and as inputs, a common deterministic algorithm (on ) computes its next position in such a way that is connected, where is possible and it means to stay at . In this paper, we assume that outputs on all robots but one.111 Since all robots know and , on all robots can choose the same vertex to move the robot at to a different vertex . Algorithm may output on all robots . Finally, it moves to through in Move phase. Observe that an oblivious robot which does not have memory (except the input buffer of for and , and the work space for ) can execute .
We consider discrete time . Given an algorithm and an initial configuration , all robots are initialized at time [math], and synchronously execute a Look-Compute-Move cycle in each time step. Then chooses a single robot at a vertex and moves it to one of its neighbors to yield a configuration at time 1. The swarm of robots repeats this process and yields configurations . We call the evolution of configurations, i.e., , the behavior of algorithm from an initial configuration . Since is deterministic, from under is uniquely determined.
2.2 Graph as a noiseless communication channel
We investigate information transmission from the sender to the receiver by a swarm of robots, i.e., we regard as a communication channel. The sender is a memoryless information source that generates a symbol in , where is generated with probability for each . Thus . Let be the set of configurations that contain and be the set of configurations that contains . With each symbol , we associate a configuration and a set of configurations , and regard the pair as the codeword of . Here and , for any . To send from , as explained in Section 1, is initialized with at . When a configuration of in is reached, receives . We call the pair code of , and , which is the size of , is the size of .
Now we consider a coding scheme with an algorithm . Let be a behavior of under . We define a function as follows: If eventually reaches a configuration for the first time, then . We call the transmission delay. Otherwise, if does not reach a configuration in forever, then . We say algorithm realizes code if for each . Let .
Theorem 1
Let be any algorithm.
There is a code with which is realizable by . 2. 2.
There is no code with which is realizable by .
Proof.
As for , we construct a code with realizable by as follows: Let . By definition, there are configurations in such that for all and for all . We then define and for . It is easy to observe that is indeed a code of size .
As for , suppose that there exists a code with to derive a contradiction. Since , there are two symbols and such that , a contradiction. ∎
The proof of Theorem 1 gives a construction method to construct code from algorithm . The transmission delay of depends on the choice of for each ; any such that can be chosen instead. Let be the transmission delay of the behavior of starting from under . To reduce the transmission delay of , it is natural to choose an initial configuration that minimizes , and we thus assume that such a is chosen in the construction of . Then the transmission delay of is . We are interested in the maximization of and the minimization of . Let and , where and .
2.3 General graphs
Since , we assume in what follows. We also assume , i.e., . Indeed we are interested in the case where .
Observation 2
For any , .
Theorem 3
Let with . If has a cut vertex whose removal disconnects and , then , that is, for any algorithm and any configuration .
Proof.
To derive a contradiction, we assume that there is an algorithm and a configuration such that the behavior of under eventually reaches a configuration . Let be a cut vertex of whose removal from disconnects and . Thus consists of more than one connected components. Let be the one that contains . We first assume . Let be the smallest index such that and . Then there is a vertex such that and , and the robot at at moves to . It is a contradiction since and hence is not connected.
Next assume that . Since , there is a time instant such that the robot at moves for the first time. Then is not connected since , and a contradiction is derived. ∎
Theorem 4
Let with . Then , that is, for any algorithm and for any configuration , .
Proof.
To derive a contradiction, we assume that there is an algorithm and a configuration such that the behavior of under eventually reaches a configuration . Since , and , where and . We assume without loss of generality that and .
For configuration , let and . If , then . Thus either or holds. We assume without loss of generality that .
Let be the smallest index such that holds. That is, . Suppose that the robot at vertex moves. Then is not connected, since is the only robot with -coordinate in and . ∎
Theorem 5
Let be a finite graph and . Then, and are computable.
Proof.
We consider the transition diagram (i.e., directed graph) of the swarm on , where if and only if 1) there are and such that , 2) and , or 3) and . Then is the size of the maxflow of from to .
As for , there are only a finite number of different sets of disjoint paths connecting and . By comparing the length of the longest path in each , we can calculate . ∎
By Theorem 5, we can design an optimal algorithm to achieve such that makes follow one of the disjoint paths connecting and . Although an optimal exists, for a general , it is in generally hard to explicitly describe and to estimate or . However, we have the following rather obvious upper bound of when the distance between and is large.
Theorem 6
Let be a finite graph and , where and for any and . Then .
Proof.
For any algorithm , let be the behavior from any initial configuration under . We assume that eventually reaches a configuration . For each robot , let and be the vertices that it resides at time 0 and , respectively. Thus and . Obviously and . Hence each robot moves at least until time , which implies that . ∎
The general policy to construct a code with a small transmission delay is to use a swarm with a small number of robots.
3 Finite 8-grids
We investigate -grids in the rest of this paper. Let and . Clearly, and for any . We illustrate a swarm in a 2D square grid instead of . Each cell of the square grid is associated with the underlying - coordinate system and each vertex corresponds to cell . Hence corresponds to the eight adjacent cells, i.e., . We call the cells the th row and the cells the th column. For the sake of simplicity, we assume and .
3.1 Upper bound of
We derive an upper bound of by estimating the size of initial configurations by Observation 2. Since and are fixed when is given, instead of , we omit and to denote .
Lemma 7
*For any and , the number of initial configurations of is at most . *
Proof.
Let be any initial configuration. Consider the depth first traversal of an arbitrary spanning tree of rooted at . The track is represented by a sequence of the eight types of movements, , , , , , , , and . Thus any configuration is represented by a sequence of movements whose length is . Hence . ∎
Corollary 8
For any , .
Proof.
The number of initial configurations in is obviously not greater than that of . ∎
When , we can obtain a better bound of . A trivial upper bound of is , since and each column of any initial configuration in must contain at least one robot to keep the connectivity.
Lemma 9
If , .
Proof.
Recall that and . Let be the set of initial configurations of the swarm of robots on . There are two types of configurations in :
The set of configurations such that . 2. 2.
The set of configurations such that .
Note that for any by definition. Let be the number of configurations such that the [math]th column contains at least one robot. Such a configuration may not contain . We have the following recurrence formula:
[TABLE]
with and . We can calculate the general term using a standard method. Since the two roots of equation are , we have two equations
[TABLE]
Thus
[TABLE]
Since ,
[TABLE]
∎
3.2 Lower bound of
We present an algorithm on by which we can construct a code with size . Thus hold for any . Referring to Lemma 9, produces a code with a near optimal code size . However, the transmission delay of the code is not so good. We hence propose another algorithm by which we can produce a code with an optimal transmission delay, in the next subsection, although its code size is small and .
Algorithm divides the swarm into a codeword and a controller. Roughly, the codeword is external memory to remember the codeword of the symbol transmitted, and the controller, which is placed following the codeword, is used to keep the external memory stable. The controller consists of robots, which is further divided into a buffer consisting of four robots, a temporal memory consisting of five robots, a signal consisting of one robot, and a counter consisting of four robots.
In the canonical state, the configuration contains exactly one robot at each column as illustrated in Figure 1. Algorithm shifts right by two (not one) columns. Suppose that the leftmost cell of is in the column . Then the rightmost cell is in the column (). The leftmost robots in represents the symbol it is transmitting. We can thus transmit one of symbols or, in other words, this part can be regarded as memory of bits, by associating the robot in row 0 (resp. row 1) with 0 (resp. 1). The configuration in Figure 1 is thus transmitting a binary sequence 011010100110.
We regard the swarm as a sequence of arrays whose element can take [math] or ; the codeword array , followed by the buffer array , the temporal memory array , the signal array , and the counter array (Figure 1).
Starting from a configuration in the canonical state, changes the bits in one by one, and shifts the swarm right by two columns when the configuration returns to the canonical state. Here it is worth noting that a bit may be changed more than once.
First, copies and two robots in move to make a “wave”. There are at most two columns containing two robots during the shift procedure. When there are two such columns, the right one is called the head (column of the wave) and the left one the tail (column of the wave). The shift procedure shifts a bit from left to right, and the wave indicates the bits that is currently shifting. However, when the wave is created, the bits maintained in the head and the tail are lost. Array is used to save these bits. When the shift of the codeword finishes,the wave is in the controller, and the two robots in the head and the tail are simply sent to the right end of the configuration to reset the controller to all zero.
The core of the shift procedure is to shift a bit in codeword right by two columns. Let (resp. ) denote the -coordinate of the head (resp. the tail). The shift is indeed carried out at the tail. The part of the configuration to the left of the tail always remembers a prefix of the bit sequence transmitting. To extend by appending , moves the correct robot in the tail to right so that the correct bit is created in the tail. As a matter of fact, the tail has already moved to right, though. The shift procedure is a repetition of the following phases:
The controller updates to . 2. 2.
The correct robot in the tail moves to the next column to create bit , by referring to to decide the correct robot. This move of the robot shifts the tail right by one column.
To implement the above procedure, the update and the wave shift phases have to be synchronized. Although the second phase finishes in one step, the first phase needs a number of steps to complete, and the update phase must be finished before the shift of tail starts. Algorithm keeps inequality during the procedure. The end of phase 2 is indicated by , and roughly until the following phase 1 finishes, a robot in the head does not move and hence equation holds. When the update of in phase 1 finishes with cooperation of , a robot in the head moves to the next column. When it moves, equation holds, which however is not a sign to finish phase 1 (and to start phase 2), since must be reset before starting phase 2. The completion of the reset is signaled by . It is set once holds. It is reset, when holds and is reset to all 0.
The update of is carried out in the following way: Since stores , updates it to . For , in this order, is copied to , and finally it stores to , where is stored to the right of the head and hence it is possible. The synchronization of these five updates are done with the cooperation of . Here works as a unary counter, and it is incremented whenever an update finishes (or the update is not necessary because it has already had the correct bit value). Once all bits in are set to 1, as explained, the head starts shifting.
Finally, the buffer is used when is going to shift two bits and which were stored in the last two columns. These column are now the tail and the head, and the bits are stored in . The buffer is used to store and . It is also necessary to separate and , so that the wave will not directly shift into and the bits will not be lost.
In the following description of Algorithm , increments as , and the counter value is when the number of ’s in is .
Algorithm
When the configuration is canonical, first store to , then move the robots in the first and the second column to the third and the fifth column to initialize the wave where and , i.e., holds after the moves. 2. 2.
When there are no columns in that contain two robots, but there are head and tail of the wave, move the two robots to right and append to the right end of the configuration, which move reset the controller all 0, and the configuration returns to the canonical state. 3. 3.
When the wave is in and (Note that always holds in this case.):
- (a)
If , referring to , the correct robot in the tail moves to an empty cell of the st column. 2. (b)
If , set to . 4. 4.
When the wave is in and :
- (a)
If , copy to if they are different. Then increment . 2. (b)
If , copy to if they are different. (As a result, holds.) If , one of the two robots in the head moves to an empty cell of column . If , first reset to 0, and then reset to 0 (when ).
Lemma 10
There is a code based on algorithm whose size is . The transmission delay is at most .
Proof.
The fact is obvious from the definition of algorithm .
As for the transmission delay, one cycle of transitions shifts a configuration in the canonical state right by two columns. During the movement, the wave moves from the first two bits of the codeword to the end of the counter. Thus the total number of shifts of the wave is . For each bit of the codeword, each bit of the counter moves twice, the signal twice, and each bit of the copy part at most once. Hence, the total number of robot moves in the controller is . In the beginning of the shift, each bit of the copy part moves at most once. Hence the total number of robot moves to move the codeword by one column is at most
[TABLE]
The distance from the last bit of the counter to is at most . Hence . ∎
An obvious consequence of Lemma 10 is that for all . The transmission delay of the code by is roughly when is large, which is not so fast compared with its lower bound of Theorem 6. This fact motivates the study of a faster algorithm in the next subsection.
3.3 Algorithm for faster information transmission
It is easy to design a code with a small transmission delay if we do not need to care the code size. In this subsection, we design a code based on an algorithm whose code size is . However its transmission delay is near optimal.
For simplicity, we assume that satisfies for some positive integer . Algorithm divides the swarm into a codeword and a copy, each of which consists of robots. In the same way as , the codeword represents bits and the copy follows the codeword. When is odd, a single robot follows the copy, and it does not represent any bit.
In the canonical state, each column contains exactly one robot as illustrated in Figure 5. Algorithm shifts the canonical state by one column. Suppose that the leftmost cell of the canonical state is in the column . Then the rightmost cell is in the column . The left robots represent the symbol it is transmitting. We can thus transmit one of symbols, or in other words, these robots can be regarded as memory of bits . We now regard the robots in the left columns as an array and those in the right columns as an array . When is odd, the last robot is put in the [math]th row of column . The canonical state in Figure 5 represents a binary sequence .
Starting from a configuration where the swarm is in the canonical state, shifts the swarm right by one column when the configuration returns to the canonical state. In the canonical state, first shifts the codeword by generating a wave; the leftmost robot moves to the empty cell of its right column. From now on, we regard the column with two robots as the wave.222 The wave in consists of just one column and this is different from the wave in , that consists of two columns for synchronization. Once the wave is initialized, the wave moves to right by repeating the following procedure; when the wave is in the th column from the left end of the swarm, one of the two robots in the wave moves to the empty cell of the st column so that the th column represents , which is stored at . After the movement, the wave is in the st column and the left columns of the swarm represent . When the wave reaches the copy, it repeats the same procedure until it reaches the right end of the swarm. Specifically, when the wave reaches the column of (i.e., th column from the left end of the swarm), specifies which of the two robots in the wave move to which cell because . Now, is fully stored in the left columns of the swarm and the wave proceeds to right with copying these columns. When is odd, the last robots moves to the [math]th row of the right end of the swarm. Then, the swarm retains the canonical state.
Lemma 11
There is a code based on algorithm whose size is . The transmission delay is .
Proof.
The fact that is obvious from the definition of algorithm .
As for the transmission delay, one cycle of transmission shifts the canonical state right by one column. During the movement, the wave moves from the left end of the swarm to the right end with making one robot move in each column. Thus the total number of movement in a cycle is . Consequently, . ∎
By comparing two transmission delays in Lemmas10 and 11, when is large, is 10 times as fast as .
4 Variable swarm size code
The information transmission scheme in Introduction allow us to assign configurations of different sizes to different symbols. Suppose that, in a code , a configuration with size is assigned to a symbol whose occurrence probability is . Let be the average swarm size of and define , which is the optimal average swarm size. This section analyzes bounds of .
4.1 Lower bounds of
We derive a lower bound of on . We can assume without loss of generality that for and for , since, if holds, we could reduce by exchanging the assignment to and . The size of any code realized by a swarm of robots on is bounded from above by , i.e., by Lemma 7. A lower bound of can be achieved by a code constructed under the assumption that configurations of size are assignable to symbols for each . Let be the entropy of .
Theorem 12
Suppose that and . Then for any code for on ,
[TABLE]
Proof.
By assumption holds for . We first calculate . By assumption holds. Then . By a simple calculation, we have .
Let . Then, for all and
[TABLE]
By Shannon’s lemma, we have
[TABLE]
Thus
[TABLE]
∎
Note that , we have
[TABLE]
A bound of for any code on can be derived by using Lemma 9, by a similar discussion.
Corollary 13
Suppose that . Then for any code for on ,
[TABLE]
Since when , , which may be approximated by when . Note that regardless of , can be 0, when , which means that these lower bounds can be negative and become meaningless. On the other hand, when for all , take the maximum value . Thus on is roughly bounded from below by , when is negligible.
4.2 Upper bound of based on
To derive an upper bound of , we construct a code for based on . Although there are size configurations assignable to symbols for any , there are no size configurations assignable to symbols for . For each however, we can easily construct a code with code size 1 by using a trivial locomotion algorithm illustrated in Figure 6.
Thus we use the configurations defined by as well as one configuration defined above for each . Let be the set of all configurations assignable. Code is defined as follows: We assign a configuration of size in to a symbol in such a way that holds for . By definition, . Let denote the average code size of .
Theorem 14
When , holds.
Proof.
Consider the “tower” of codewords of . Each of the first levels contains a single codeword, and the th layer contains codewords for .
Shannon’s noiseless coding theorem guarantees the existence of a prefix-free code whose average code length is smaller than . Let be the length of the codeword of in such a prefix-free code. By the definition of , . Thus
[TABLE]
∎
Thus the performance of in terms of the average code size is sufficiently good on , since, very roughly, of any code on is bounded from below by .
Code can be used not only on but also on for . On , its performance may not be good, however, since our lower bound of on is , and there is still a large gap from .
4.3 Average transmission delay
We next analyze the average transmission delay. For any code on , let . We are interested in the optimal average transmission delay . First we derive a lower bound of . Consider any code on , where . We may assume without loss of generality that for any . By Theorem 6, . Since ,
[TABLE]
Since , we have:
Observation 15
.
To derive an upper bound of , Let be the average delay of . By Lemma 10, . Since holds for all , we have:
Observation 16
.
Thus may not be a good choice from the view of the average transmission delay, even considering the fact that . The average number of steps necessary to move one column is approximated from above by when .
Since algorithm has a smaller transmission delay, we analyze a code based on . Since is defined only for , like , consider set that contains standard configurations defined in for all , as well as a single configuration of size for each of . Like , is defined as follows: We assign a size configuration in to a symbol in such a way that holds for . Let denote the average code size of .
Theorem 17
Suppose that . Then .
Proof.
Recall that for . Then , and hence .
Consider the “tower” of codewords of . Each of the first levels contains a single codeword, and the th layer contains codewords for . Code packs the symbols in its order to codewords from the first level to the higher level in its order.
We then divide the tower into three small towers, , , and , where consists of the first 3 levels, consists of even levels greater than 3, and consists of odd levels greater than 4. Hence, th level of (and also) corresponds to a binary tree in the sense that it contains codewords.
First consider a codeword for in . Let be the level that contains a configuration assigned to in . The total number of symbols assigned to the level lower than in , , and is smaller than . Thus we have , which implies that . Since the size of is , . We then consider a codeword in . Let be the level of in . In the same way, , which implies . Since the size of is , . Thus, we have
[TABLE]
∎
Thus the upper bound of obtained by the theorem is roughly twice as much as that of . Let be the average transmission delay of . By Lemma 11, . Thus
Observation 18
.
Since , we have . The average number of steps necessary to move one column is approximated from above by when . Thus the variable swarm size code by is 5 times as fast as that by .
5 Conclusion
We proposed an information transmission scheme by a swarm of anonymous oblivious mobile robots on a graph. We mainly analyzed the performance of our scheme in terms of code size and transmission delay in the 8-gird and proposed two algorithms one achieves exponential code size with large transmission delay and the other achieves optimal transmission delay with small code size. We finally extended these algorithms for variable swarm size codes.
There are many open problems related to the proposed scheme. First, we could not find any algorithm with optimal code size and optimal transmission delay. Second, the gap between the upper bound and the lower bound of the (expected) swarm size of the fixed swarm size code and of the variable swarm size code needs to be closed. One approach is a more sophisticated technique to upper bound the number of initial configurations and terminating behaviors. Third, parallel movement of robots might speed up the transmission and makes algorithms simpler.
One of the most important future directions is robustness. We put our basis on Shannon’s noiseless coding theorem, and the next step is to consider faulty robots. We believe Shannon’s noisy channel coding theorem help the investigation. Another direction is to investigate local algorithms that restricts the visibility of the robots to a constant distance.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Yuichi Asahiro, Satoshi Fujita, Ichiro Suzuki, and Masafumi Yamashita. A self-stabilizing marching algorithm for a group of oblivious robots. In Proceedings of the 12th International Conference on Principles of Distributed Systems (OPODIS 2008) , pages 125–144, 2008.
- 2[2] François Bonnet, Alessia Milani, Maria Potop-Butucaru, and Sébastien Tixeuil. Asynchronous exclusive perpetual grid exploration without sense of direction. In Proceedings of the 15th International Conference on Principles Of Distributed Systems (OPODIS 2011) , pages 251–265, 2011.
- 3[3] Davide Canepa and Maria Gradinariu Potop-Butucaru. Stabilizing flocking via leader election in robot networks. In Proceedings of the 9th International Conference on Stabilization, Safety, and Security of Distributed Systems (SSS 2007) , pages 52–66, 2007.
- 4[4] Mark Cieliebak, Paola Flocchini, Giuseppe Prencipe, and Nicola Santoro. Distributed computing by mobile robots: Gathering. SIAM Journal on Computing , 41:829–879, 2012.
- 5[5] Julien Clement, Xavier Défago, Maria Gradinariu Potop-Butucaru, Taisuke Izumi, and Stephane Messika. The cost of probabilistic agreement in oblivious robot networks. Information Processing Letters , 110(11):431–438, 2010.
- 6[6] Thomas M. Cover and Joy A. Thomas. Elements of Information Theory . John Wiley & Sons, Inc., 2nd edition, 2006.
- 7[7] Shantanu Das, Paola Flocchini, Nicola Santoro, and Masafumi Yamashita. Forming sequences of geometric patterns with oblivious mobile robots. Distributed Computing , 28(2):131–145, 2015.
- 8[8] Stéphane Devismes, Anissa Lamani, Franck Petit, Pascal Raymond, and Sébastien Tixeuil. Optimal grid exploration by asynchronous oblivious robots. In Proceedings of the 14th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS 2012) , pages 64–76, 2012.
