This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Deterministic Leader Election Among Disoriented Anonymous Sensors

Yoann Dieudonné, Florence Levé, Franck Petit, and Vincent Villain
MIS Laboratory, University of Picardie Jules Verne, France
LIP6/Regal, Université Pierre et Marie Curie, INRIA, CNRS, France
Abstract

We address the Leader Election (LE) problem in networks of anonymous sensors sharing no kind of common coordinate system. Leader Election is a fundamental symmetry breaking problem in distributed computing. Its goal is to assign value 1 (leader) to one of the entities and value 0 (non-leader) to all others.

In this paper, assuming n>1n>1 disoriented anonymous sensors, we provide a complete characterization on the sensors positions to deterministically elect a leader, provided that all the sensors’ positions are known by every sensor.

More precisely, our contribution is twofold: First, assuming nn anonymous sensors agreeing on a common handedness (chirality) of their own coordinate system, we provide a complete characterization on the sensors positions to deterministically elect a leader. Second, we also provide such a complete chararacterization for sensors devoided of a common handedness.

Both characterizations rely on a particular object from combinatorics on words, namely the Lyndon Words.

Keywords: Distributed Leader Election, Sense of Direction, Chirality, Sensor Networks, Lyndon Words.

1 Introduction

In distributed settings, many problems that are hard to solve become easier to solve with a leader to coordinate the system. The problem of electing a leader among a set of computing units is then one of the fundamental tasks in distributed systems. The Leader Election (LE) Problem consists in distinguishing among a set of entities exactly one of them. The leader election problem is covered in depth in many books related to distributed systems, e.g., [Lyn96, San07].

The distributed systems considered in this paper are sensor networks. Sensor networks are dense wireless networks that are used to collect (to sense) environmental data such as temperature, sound, vibration, pressure, motion, etc. The data are either simply sent toward some data collectors or used as an input to perform some basic cooperative tasks. Wireless Sensor Networks (WSN) are emerging distributed systems providing diverse services to numerous applications in industries, manufacturing, security, environment and habitat monitoring, healthcare, traffic control, etc. WSN aim for being composed of a large quantity of sensors as small, inexpensive, and low-powered as possible. Thus, the interest has shifted towards the design of distributed protocols for very weak sensors, i.e., sensors requiring very limited capabilities, e.g., uniformity (or, homogeneity — all the sensors follow the same program —, anonymity — the sensors are a priori indistinguishable —, disorientation — the sensors share no kind of coordinate system nor common sense of direction.

However, in weak distributed environments, many tasks have no solution. In particular, the Pattern Formation problem for sensors having the additional capability of mobility is not always solvable. The Pattern Formation problem consists in the design of protocols allowing autonomous mobile sensors to form a specific class of patterns, e.g., [SY99, FPSW99, FPSW01, DK02, Kat05, DP07a, DLIP08]. Such mobile sensors are often referred to as robots or agents. In [FPSW99], the authors discuss whether the pattern formation problem can be solved or not according to the capabilities the robots are supposed to have. They consider the ability to agree on the direction and orientation of one axis of their coordinate system (North) (Sense of Direction) and a common handedness (Chirality). Assuming sense of direction, chirality, and Unlimited Visibility — each robot is able to locate all the robots —, they show that the robots can form any arbitrary pattern. Then, they show that with the lack of chirality, the problem can be solved in general with an odd number of robots only. With the lack of both sense of direction and chirality, the pattern formation problem is unsolvable in general.

In [FPSW01] and [DPV10], the authors show the fundamental relationship between the Pattern Formation problem and the Leader Election problem. In the first paper, it is shown that, for a group of n3n\geq 3 robots, pattern formation problem cannot be solved if the robots cannot elect a leader. In the second one, the authors aim at knowing whether the reverse is true or not. In other words, if the robots can elect a leader, can they solve the pattern formation problem? The authors prove that this property holds for n4n\geq 4 robots in the asynchronous model CORDA, provided the robots share the same chirality.

In [FPSW01], they show that under sense of direction and chirality, Leader Election can be solved by constructing a total order over the coordinates of all the agents. By contrast, with no sense of direction and lack of chirality, Leader Election is unsolvable (in general). Informally, the results in [FPSW99, FPSW01] come from the fact that starting from a totally symmetric configuration where the positions of the robots coincide with the vertice of a regular nn-gon, no robot can be distinguished. Nevertheless, no characterization of the geometric configurations allowing to elect a leader, among disoriented sensors, is given.

In a first approach, the possibility of electing a leader among disoriented sensors seems to be related to the absence of some kind of symmetry in the configuration. Besides, this way would be in line with the result of Angluin [Ang80] showing that, in uniform interconnected networks, the impossibility of breaking a possible symmetry in the initial configuration makes the leader election unsolvable deterministically. However, this approach does not turn out to be appropriate in our context. Indeed, as depicted in Figure 1, some symmetric configurations do not prevent the sensors from distinguishing a leader. This raises the following question : “Given a set of weak sensors scattered on the plane, what are the (minimal) geometric conditions to be able to deterministically agree on a single sensor?

Refer to caption

(aa) Symmetric Configuration : a regular 66-gon

Refer to caption

(bb) Symmetric Configuration : an arrow

Figure 1: Two examples of symmetric configuration. In Figure 1.aa no sensors can be distinguished. By contrast, in figure 1.bb every sensor on the vertical line can be distinguished: For example, the sensors can choose the one located at the top of the arrowhead (black bullet) to play the role of a leader.

In this paper, this question is addressed under very weak assumptions: in particular, the sensors share no kind of common coordinate system. More precisely, they are not required to share any unit measure, common orientation or direction and even any common sense of rotation, say chirality.

We provide a complete characterization (necessary and sufficient conditions) on the sensors positions to deterministically elect a leader. Our result holds for any n>1n>1, provided that the sensors know all the positions and are able to make real computations. The sufficient condition is shown by providing a deterministic algorithm electing a leader.

The proof is based on the ability for the sensors to construct a Lyndon word from the sensors’ positions as an input. A Lyndon word is a non-empty word strictly smaller in the lexicographic order than any of its suffixes, except itself and the empty word. Lyndon words have been widely studied in the combinatorics of words area [Lot83]. However, only a few papers consider Lyndon words addressing issues in other areas than word algebra, e.g., [Che04, DR04, SM90, DP07a]. In [DP07a], we already showed the power of Lyndon words to build an efficient and simple deterministic protocol to form a regular nn-gon with a prime number nn of robots.

In the next section (Section 2), we formally describe the distributed model and the words considered in this paper. In Section 3, for convenience, we present a preliminary result assuming sensors with chirality. The lack of chirality is addressed in Section 4. Finally, we conclude this paper in Section 5.

2 Preliminaries

In this section, we define the distributed system considered in this paper. Next, we review some formal definitions and basic results on words and Lyndon words.

2.1 Model

Consider a set of n>1n>1 sensors arbitrarily scattered on the plane such that no two sensors are located at the same position. A configuration 𝒞{\mathcal{C}} is a set of positions p1,,pnp_{1},\ldots,p_{n} occupied by the sensors. The sensors are uniform and anonymous, i.e, they all execute the same program using no local parameter (such as an identity) allowing to differentiate any of them. However, we assume that each sensor is a computational unit having the ability to determine the positions of the nn sensors within an infinite decimal precision. We assume no kind of communication medium. Each sensor has its own local xx-yy Cartesian coordinate system defined by two coordinate axes (xx and yy), together with their orientations, identified as the positive and negative sides of the axes.

In this paper, we assume that the sensors have no Sense of Direction and we discuss the influence of Chirality in a sensor network.

Definition 2.1 (Sense of Direction)

A set of nn sensors has sense of direction if the nn sensors agree on a common direction of one axis (xx or yy) and its orientation. The sense of direction is said to be partial if the agreement relates to the direction only —i.e., they are not required to agree on the orientation.

In Figure 2, the sensors have sense of direction in the cases (aa) and (bb), whereas they have no sense of direction in the cases (cc) and (dd).

Given an xx-yy Cartesian coordinate system, the handedness is the way in which the orientation of the yy axis (respectively, the xx axis) is inferred according to the orientation of the xx axis (resp., the yy axis).

Definition 2.2 (Chirality)

A set of nn sensors has chirality (or the nn sensors have chirality) if the nn sensors share the same handedness.

In Figure 2, the sensors have chirality in the cases (aa) and (cc), whereas they have no chirality in the cases (bb) and (dd).

Refer to caption

(aa) Sense of Direction and Chirality

Refer to caption

(bb) Sense of Direction and No Chirality

Refer to caption

(cc) No Sense of Direction and Chirality

Refer to caption

(dd) No Sense of Direction and No Chirality

Figure 2: Four examples showing the relationship between Sense of Direction and Chirality

2.2 Words and Lyndon Words

Let an alphabet AA be a finite set of letters. A non empty word ww over AA is a finite sequence of letters a1,,ai,,aa_{1},\ldots,a_{i},\ldots,a_{\ell}, >0\ell>0. The concatenation of two words uu and vv, denoted simply by uvuv, is equal to the word a1,,ai,,ak,b1,,bj,,ba_{1},\ldots,a_{i},\ldots,a_{k},b_{1},\ldots,b_{j},\ldots,b_{\ell} such that u=a1,,ai,,aku=a_{1},\ldots,a_{i},\ldots,a_{k} and v=b1,,bj,,bv=b_{1},\ldots,b_{j},\ldots,b_{\ell}. Let ε\varepsilon be the empty word such that for every word ww, wε=εw=ww\varepsilon=\varepsilon w=w. The length of a word ww, denoted by |w||w|, is equal to the number of letters of ww (|ε|=0|\varepsilon|=0).

Suppose the alphabet AA is totally ordered by the relation \prec. Then a word uu is said to be lexicographically smaller than or equal to a word vv, denoted by uvu\preceq v, iff there exists either a word ww such that v=uwv=uw or three words r,s,tr,s,t and two letters a,ba,b such that u=rasu=ras, v=rbtv=rbt, and aba\prec b. We write uvu\prec v when uvu\preceq v and uvu\neq v.

Let kk and jj be two positive integers. The kthk^{th} power of a word ss is the word denoted by sks^{k} such that s0=εs^{0}=\varepsilon, and sk=sk1ss^{k}=s^{k-1}s. A word uu is said to be primitive if and only if u=vkk=1u=v^{k}\Rightarrow k=1. Otherwise (u=vku=v^{k} and k>1k>1), uu is said to be strictly periodic.

The jthj^{th} rotation of a word ww, notation Rotj(w)Rot_{j}(w), is defined by:

Rotj(w)=def{εif w=εaj,,a,a1,,aj1otherwise (w=a1,,a,1)Rot_{j}(w)\stackrel{{\scriptstyle\mathrm{def}}}{{=}}\left\{\begin{array}[]{ll}\varepsilon&\mbox{if }w=\varepsilon\\ a_{j},\ldots,a_{\ell},a_{1},\ldots,a_{j-1}&\mbox{otherwise }(w=a_{1},\ldots,a_{\ell},\ \ell\geq 1)\end{array}\right.

Note that Rot1(w)=wRot_{1}(w)=w.

Lemma 2.3

[Lot83] Let ww and Rotj(w)Rot_{j}(w) be a word and a rotation of ww, respectively. The word ww is primitive if and only if Rotj(w)Rot_{j}(w) is primitive.

A word ww is said to be minimal if and only if j1,,\forall j\in 1,\ldots,\ell, wRotj(w)w\preceq Rot_{j}(w).

Definition 2.4 (Lyndon Word)

A word ww (|w|>0)(|w|>0) is a Lyndon word if and only if ww is nonempty, primitive and minimal, i.e., wεw\neq\varepsilon and j2,,|w|,wRotj(w)\forall j\in 2,\ldots,|w|,\ w\prec Rot_{j}(w).

For instance, if A={a,b}A=\{a,b\}, then aa, bb, abab, aabaab, abbabb are Lyndon words, whereas abaaba, and abababab are not — abaaba is not minimal (aababaaab\preceq aba) and abababab is not primitive (abab=(ab)2abab=(ab)^{2}).

2.3 Leader Election.

The leader election problem considered in this paper is stated as follows: Given a configuration 𝒞{\mathcal{C}} of n>1n>1 sensors, the nn sensors are able to deterministically agree on a same sensor LL called the leader.

3 Leader Election with Chirality

In this section, we consider a sensor network having the property of chirality. The results we propose in this section have been presented in [DP07b].

In Subsection 3.1, we provide general definitions and establish some results with respect to configurations and words. We then show in Subsection 3.2 the relationship between the presence (the lack) of a leader and the existence (the absence) of a Lyndon word.

3.1 Configurations and Words

Given a configuration 𝒞{\mathcal{C}}, SECSEC denotes the smallest enclosing circle of the positions of the sensors in 𝒞{\mathcal{C}}. The center of SECSEC is denoted by 𝙾\mathtt{O}. The distance from 𝙾\mathtt{O} to any point on SECSEC, the radius of SECSEC, is denoted by σ\sigma. In any configuration 𝒞{\mathcal{C}}, SECSEC is unique and can be computed by any sensor in linear time [Meg83, Wel91]. It passes either through two of the positions that are on the same diameter (opposite positions), or through at least three of the positions in 𝒞{\mathcal{C}}. Note that if n=2n=2, then SECSEC passes both sensors and no sensor can be located inside SECSEC, in particular at 𝙾\mathtt{O}.

Given a smallest enclosing circle SECSEC, the radii are the line segments from the center 𝙾\mathtt{O} of SECSEC to the boundary of SECSEC. Let \mathcal{R} be the finite set of radii such that a radius rr belongs to \mathcal{R} iff at least one sensor is located on rr but 𝙾\mathtt{O}. Denote by \sharp\mathcal{R} the number of radii in \mathcal{R}. In the sequel, we will abuse language by considering radii in \mathcal{R} only. Given two distinct positions p1p_{1} and p2p_{2} located on the same radius rr (\in\mathcal{R}), d(p1,p2)d(p_{1},p_{2}) denotes the Euclidean distance between p1p_{1} and p2p_{2}.

Since \mathcal{R} and the set of positions are finite, the set of different distances between positions of sensors on the radii in \mathcal{R} is finite. Every robot codes each of these distances xx using a fonction Code(x)Code(x) such that the output of Code(x)Code(x) is a letter of an arbitrary alphabet provided with an order relation, and the code respects the natural order on distances (i.e. for letters a1a_{1}, a2a_{2} and distances d1d_{1}, d2d_{2}, a1a2a_{1}\leq a_{2} if and only if d1d2d_{1}\leq d_{2}). A similar code is used for the angles in Definition 3.3.

Definition 3.1 (Radius Word)

Let p0p_{0} be the position of 𝙾\mathtt{O}, p1,,pkp_{1},\ldots,p_{k} be the respective positions of kk sensors (k1)(k\geq 1) located on the same radius rr\in\mathcal{R}. Let ρr\rho_{r} be the radius word such that

ρr=def{0 if there exists one sensor at 𝙾a1a2ak s.t. i[1,k],ai=Code(d(pi1,pi)σ) otherwise\rho_{r}\stackrel{{\scriptstyle\mathrm{def}}}{{=}}\left\{\begin{array}[]{ll}0&\mbox{ if there exists one sensor at }\mathtt{O}\\ a_{1}a_{2}\ldots a_{k}\mbox{ s.t. }\forall i\in[1,k],a_{i}=Code(\frac{d(p_{i-1},p_{i})}{\sigma})&\mbox{ otherwise}\end{array}\right.

Note that all the distances are computed by each sensor with respect to its own coordinate system, i.e., proportionally to its own measure unit. So, for any radius rr\in\mathcal{R}, all the sensors compute the same word ρr\rho_{r}. For instance, in Figure 3, for every sensor, ρr1=c\rho_{r_{1}}=c and ρr2=ρr3=ab\rho_{r_{2}}=\rho_{r_{3}}=ab.

Remark 3.2

If there exists one sensor on 𝙾\mathtt{O} (n>2n>2), then for every radius rr\in\mathcal{R}, ρr=0\rho_{r}=0.

Denote by \circlearrowright an arbitrary orientation of SECSEC, i.e., \circlearrowright denotes either the clockwise or the counterclockwise direction111Note that the clockwise (resp. counterclockwise) direction may be the counterclockwise (resp. clockwise) direction for the robots depending on their handedness. However, without loss of generality, we can assume that both directions are those we commonly use.. Given an orientation \circlearrowright of SECSEC, \circlearrowleft denotes the opposite orientation. Let rr be a radius in \mathcal{R}, the successor of rr in the \circlearrowright direction, denoted by Succ(r,)Succ(r,\circlearrowright), is the next radius in \mathcal{R}, according to \circlearrowright. The ithi^{th} successor of rr, denoted by Succi(r,)Succ_{i}(r,\circlearrowright), is the radius such that Succ0(r,)=rSucc_{0}(r,\circlearrowright)=r, and Succi(r,)=Succ(Succi1(r,),)Succ_{i}(r,\circlearrowright)=Succ(Succ_{i-1}(r,\circlearrowright),\circlearrowright). Given rr and its successor r=Succ(r,)r^{\prime}=Succ(r,\circlearrowright), (r𝙾r)\sphericalangle(r\mathtt{O}r^{\prime})^{\circlearrowright} denotes the angle between rr and rr^{\prime} following the \circlearrowright direction.

Definition 3.3 (Configuration Word)

Let rr be a radius in \mathcal{R}. The configuration word of rr with respect to \circlearrowright, an arbitrary orientation of SECSEC, denoted by ω(r)\omega(r)^{\circlearrowright}, is defined by:

ω(r)=def{(0,0)if ρr=0(ρ0,α0)(ρ1,α1)(ρk,αk) with k=1otherwise\omega(r)^{\circlearrowright}\stackrel{{\scriptstyle\mathrm{def}}}{{=}}\left\{\begin{array}[]{ll}(0,0)&\mbox{if }\rho_{r}=0\\ (\rho_{0},\alpha_{0})(\rho_{1},\alpha_{1})\ldots(\rho_{k},\alpha_{k})\ \mbox{ with }k=\sharp\mathcal{R}-1&\mbox{otherwise}\\ \end{array}\right.

such that, ρ0\rho_{0} is the radius word of rr, α0\alpha_{0} is a code (similar as for the distances) of the angle between rr and its successor in \mathcal{R} following \circlearrowright, and for every i[1,k]i\in[1,k], rir_{i} being the ithi^{th} successor of rr in \mathcal{R} following \circlearrowright, ρi\rho_{i} is the radius word of rir_{i} and αi\alpha_{i} is the code of the angle between rir_{i} and its successor in \mathcal{R} following \circlearrowright.

In the sequel, by abuse of language, we will refer to distances and angles without explicitely mentionning the code, to ease the reading.

In Figure 3, assuming that \circlearrowright denotes the clockwise direction, then:
ω(r1)=(c,β)(ab,α)(ab,β)\omega(r_{1})^{\circlearrowright}=(c,\beta)(ab,\alpha)(ab,\beta), ω(r2)=(ab,α)(ab,β)(c,β)\omega(r_{2})^{\circlearrowright}=(ab,\alpha)(ab,\beta)(c,\beta), ω(r3)=(ab,β)(c,β)(ab,α)\omega(r_{3})^{\circlearrowright}=(ab,\beta)(c,\beta)(ab,\alpha),
ω(r1)=ω(r1)\omega(r_{1})^{\circlearrowleft}=\omega(r_{1})^{\circlearrowright}, ω(r2)=ω(r3)\omega(r_{2})^{\circlearrowleft}=\omega(r_{3})^{\circlearrowright}, and ω(r3)=ω(r2)\omega(r_{3})^{\circlearrowleft}=\omega(r_{2})^{\circlearrowright}.

Refer to caption
Figure 3: Computation of Configuration Words — the sensors are the black bullets.
Definition 3.4

A configuration 𝒫={p1,,pn}\mathcal{P}=\{p_{1},\ldots,p_{n}\} of sensors is said to be periodic if there exists a rotation RotRot of center 𝙾\mathtt{O} and of angle α\alpha, 0<α<2π0<\alpha<2\pi such that Rot(𝒫)=𝒫Rot(\mathcal{P})=\mathcal{P}, (i.e, the configuration Rot(𝒫)Rot(\mathcal{P}) is superimposed on 𝒫\mathcal{P}). Let 𝒞{\mathcal{C}} be a configuration with no robot at the position 𝙾\mathtt{O}. A construction of configuration words on 𝒞{\mathcal{C}} is said to be period-free when the configuration words corresponding to 𝒞{\mathcal{C}} are not periodic when 𝒞{\mathcal{C}} is not periodic. In other words, if the configuration words corresponding to a configuration 𝒞{\mathcal{C}} are strictly periodic, then 𝒞{\mathcal{C}} is periodic.

In Figure 4, configuration words are strictly periodic (we can distinct two configuration words, w=((d,α),(ab,α))2w=((d,\alpha),(ab,\alpha))^{2} and w=((ab,α)ad,α))2w^{\prime}=((ab,\alpha)ad,\alpha))^{2}) and the figure is periodic since the set of positions of the sensors is preserved by the rotation of center 𝙾\mathtt{O} and of angle π\pi.

Notice the following important fact, which is fondamental for the statement of the following results:

Remark 3.5

The construction of configuration words stated in Definition 3.3 is period-free.

Proof. Let 𝒫={p1,,pn}\mathcal{P}=\{p_{1},\ldots,p_{n}\} be a configuration of sensors. If w(r)w(r) is strictly periodic for some radius rr, that is w(r)=ukw(r)=u^{k} for some integer k>2k>2 and a word uu, then there exists kk rotations RotjRot_{j}, 1jk1\leq j\leq k of center 𝙾\mathtt{O} and of angle 2πjk\frac{2\pi j}{k} such that Rotj(𝒫)=𝒫Rot_{j}(\mathcal{P})=\mathcal{P}. \Box

In this section, we consider sensors with chirality. In particular, they are able to agree on a common orientation \circlearrowright of SECSEC. Let CWCW be the set of configuration words computed by the sensors over \mathcal{R} according to \circlearrowright. Since for every sensor, there is no ambiguity on \circlearrowright, in the sequel of this section, we omit \circlearrowright in the notations when it is clear in the context. For instance in Figure 3,

CW={(c,β)(ab,α)(ab,β),(ab,α)(ab,β)(c,β),(ab,β)(c,β)(ab,α)}=ω(r1)=ω(r2)=ω(r3)\begin{array}[]{ccccc}CW=\{&(c,\beta)(ab,\alpha)(ab,\beta),&(ab,\alpha)(ab,\beta)(c,\beta),&(ab,\beta)(c,\beta)(ab,\alpha)&\}\\ &=\omega(r_{1})&=\omega(r_{2})&=\omega(r_{3})\end{array}
Remark 3.6

The following propositions are equivalent:

  1. 1.

    There exists one sensor on 𝙾\mathtt{O}

  2. 2.

    For every radius rr\in\mathcal{R}, ω(r)=ω(r)=(0,0)\omega(r)^{\circlearrowright}=\omega(r)^{\circlearrowleft}=(0,0)

  3. 3.

    CW={(0,0)}CW=\{(0,0)\}

Remark 3.7

Given an orientation \circlearrowright, for every pair u,vu,v in CWCW, vv is a rotation of uu.

The lexicographic order \preceq on the set of radius words over \mathcal{R} is naturally built over the natural order << on the set of codes of distances (we recall that is is compatible with the natural order on real numbers).

Definition 3.8

Let Alph(CW)Alph(CW) be the set of letters appearing in CWCW. Let (u,x)(u,x) and (v,y)(v,y) be any two letters in Alph(CW)Alph(CW). Define the order \lessdot over Alph(CW)Alph(CW) as follows:

(u,x)(v,y){uvoru=v and x<y(u,x)\lessdot(v,y)\Longleftrightarrow\left\{\begin{array}[]{ll}u\precneqq v\\ \mbox{or}\\ u=v\mbox{ and }x<y\end{array}\right.

The lexicographic order \preceq on CWCW is built over \lessdot.

Lemma 3.9

Given an orientation \circlearrowright, if there exist two distinct radii r1r_{1} and r2r_{2} in \mathcal{R} such that both ω(r1)\omega(r_{1}) and ω(r2)\omega(r_{2}) are Lyndon words (ω(r1),ω(r2)CW\omega(r_{1}),\omega(r_{2})\in CW), then CW={(0,0)}CW=\{(0,0)\}.

Proof. Assume by contradiction that, given an orientation \circlearrowright, two distinct radii r1r_{1} and r2r_{2} exist such that both ω(r1)\omega(r_{1}) and ω(r2)\omega(r_{2}) are Lyndon words and CW{(0,0)}CW\neq\{(0,0)\}. By Remark 3.6, there exists no sensor located at 𝙾\mathtt{O}. By Remark 3.7, ω(r1)\omega(r_{1}) (respectively, ω(r2)\omega(r_{2})) is a rotation of ω(r2)\omega(r_{2}) (resp. ω(r1)\omega(r_{1})). So, by Definition 3.3, ω(r1)ω(r2)\omega(r_{1})\prec\omega(r_{2}) and ω(r2)ω(r1)\omega(r_{2})\prec\omega(r_{1}). A contradiction. \Box

Corollary 3.10

Given an orientation \circlearrowright, if there exists (at least) one radius rr such that w(r)w(r) is a Lyndon word strictly greater than (0,0)(0,0), then rr is unique.

3.2 Chirality, Leader Election and Lyndon Words

In this section, we show that the problems of the existence of a unique Lyndon word and of the existence of a deterministic Leader Election protocol are equivalent.

Lemma 3.11

If there exists rr\in\mathcal{R} such that w(r)w(r) is a Lyndon word, then the nn sensors are able to deterministically agree on a same sensor LL.

Proof. Directly follows from Corollary 3.10: If there is a sensor ss located on 𝙾\mathtt{O}, then the nn sensors are able to agree on L=sL=s. Otherwise, there exists a single radius rr\in\mathcal{R} such that ω(r)\omega(r) is a Lyndon word. In that case, all the sensors are able to agree on the sensor on rr that is the nearest one from 𝙾\mathtt{O}. \Box

Lemma 3.12

If there exists no radius rr\in\mathcal{R} such that ω(r)\omega(r) is a Lyndon word, then there exists no deterministic algorithm allowing the nn sensors to agree on a same sensor LL.

Proof. Assume by contradiction that no radius rr\in\mathcal{R} exists such that ω(r)\omega(r) is a Lyndon word and that there exists an algorithm AA allowing the nn sensors to deterministically agree on a same sensor LL. From Remark 3.6, there is no sensor located on 𝙾\mathtt{O}, otherwise for all rr\in\mathcal{R}, w(r)=(0,0)w(r)=(0,0) would be a Lyndon word.

Let minωmin_{\omega} be a word in CWCW such that r\forall r\in\mathcal{R}, minωω(r)min_{\omega}\preceq\omega(r). That is, minωmin_{\omega} is minimal. Assume first that minωmin_{\omega} is primitive. Then, minωmin_{\omega} is a Lyndon word that contradicts the assumption. So, minωmin_{\omega} is a strictly periodic word (there exist uu and k>1k>1 such that minω=ukmin_{\omega}=u^{k}) and, from Lemma 2.3, we deduce that for all rr\in\mathcal{R}, w(r)w(r) is also strictly periodic. Since by Remark 3.5 our construction is period-free, this implies that the configuration is periodic. Thus, for every rr\in\mathcal{R}, there exists at least one radius rr^{\prime}\in\mathcal{R} such that rrr\neq r^{\prime} and ω(r)=ω(r)\omega(r)=\omega(r^{\prime}). So if an algorithm elects a leader on rr in a deterministical way, this algorithm distinguishes another leader on rr^{\prime}. In that case, AA cannot allow the nn sensors to deterministically agree on a same sensor LL. \Box

Figure 4 presents an example of a configuration where the sensors have the same measure unit and their yy axis meets the radius on which they are located. In this case, no radius rr\in\mathcal{R} exists such that ω(r)\omega(r) is a Lyndon word and, with respect to Lemma 3.12, sensors are not able to deterministically agree on a same sensor LL.

Refer to caption
Figure 4: An example of configuration as in Lemma 3.12.

The following theorem follows from Lemmas 3.11 and 3.12:

Theorem 3.13

Given a configuration 𝒞{\mathcal{C}} of any number n>1n>1 of disoriented sensors with chirality scattered on the plane, the nn sensors are able to deterministically agree on a same sensor LL if and only if there exists a radius rr\in\mathcal{R} such that ω(r)\omega(r) is a Lyndon Word.

The acute reader will have noticed that when n=1n=1 electing a leader is straightforward. On the other hand, when n=2n=2, it is impossible to elect a unique leader in a deterministic way: Our theorem confirms this fact as the two words obtained for the two radii are the same in such a configuration (actually each of both words consists in the concatenation of two identical letters).

4 Leader Election without Chirality

In this section, the lack of chirality among the sensors is considered. A first result presented in [DP07b] shows that the Configuration Word construction described in Section 3 is not enough to deal with an even number of sensors without chirality. We now show how to extend the Configuration Word so that we obtain a general characterization.

In Subsection 4.1, general definitions and results are given. They are then used to show in Subsection 4.2 the relationship between Leader Election and Lyndon words.

4.1 Words and Lack of Chirality

Devoid of chirality, the sensors are no longer able to agree on a common orientation \circlearrowright of SECSEC. In other words, with respect to their handedness, some of the nn sensors may assign \circlearrowright to the actual clockwise direction, whereas some other may assign \circlearrowright to the counterclockwise direction. As a consequence, given a radius rr\in\mathcal{R} and two sensors ss and ss^{\prime} on rr, the configuration word ω(r)\omega(r)^{\circlearrowright} computed by ss may differ from the one computed by ss^{\prime}, depending on whether ss and ss^{\prime} share the same handedness or not. For instance, in Figure 3, the configuration word ω(r2)\omega(r_{2})^{\circlearrowright} (as defined by Definition 3.3) is equal to either (ab,α)(ab,β)(c,β)(ab,\alpha)(ab,\beta)(c,\beta) or (ab,β)(c,β)(ab,α)(ab,\beta)(c,\beta)(ab,\alpha), depending on the fact \circlearrowright denotes the clockwise direction or the counterclockwise, respectively.

Furthermore, given a radius rir_{i}\in\mathcal{R}, if there exists a radius rjr_{j}\in\mathcal{R} such that ω(ri)=ω(rj)\omega(r_{i})^{\circlearrowleft}=\omega(r_{j})^{\circlearrowright}, then there exists an axial symmetry which corresponds to the bissectrix of (ri𝙾rj)\sphericalangle(r_{i}\mathtt{O}r_{j}). Otherwise (i.e., no radius rjr_{j} exists such that ω(ri)=ω(rj)\omega(r_{i})^{\circlearrowleft}=\omega(r_{j})^{\circlearrowright}), no such axial symmetry exists. This observation leads us to provide the following definition in order to classify the radii.

Definition 4.1 (Type of symmetry)

A radius rir_{i}\in\mathcal{R} is of type (of symmetry) 11 if there exists jij\neq i such that ω(ri)=ω(rj)\omega(r_{i})^{\circlearrowleft}=\omega(r_{j})^{\circlearrowright}. Otherwise (when ω(ri)=ω(rj)i=j\omega(r_{i})^{\circlearrowleft}=\omega(r_{j})^{\circlearrowright}\Rightarrow i=j, that is there is no symmetry axis or the axis corresponds to the radius itself), rir_{i} is said to be of type 0. A radius of type tt is said to be tt-symmetric.

We use the type of symmetry to define the strong configuration word of any radius in \mathcal{R} as follows:

Definition 4.2 (Strong Configuration Word)

Let rr be a radius in \mathcal{R}. The strong configuration word of rr with respect to \circlearrowright, an arbitrary orientation of SECSEC, denoted by W(r)W(r)^{\circlearrowright}, is defined by:

W(r)=def{(0,0,0)if ρr=0(s0,ρ0,α0)(s1,ρ1,α1)(sk,ρk,αk) with k=1otherwiseW(r)^{\circlearrowright}\stackrel{{\scriptstyle\mathrm{def}}}{{=}}\left\{\begin{array}[]{ll}(0,0,0)&\mbox{if }\rho_{r}=0\\ (s_{0},\rho_{0},\alpha_{0})(s_{1},\rho_{1},\alpha_{1})\ldots(s_{k},\rho_{k},\alpha_{k})\ \mbox{ with }k=\sharp\mathcal{R}-1&\mbox{otherwise}\\ \end{array}\right.

such that, s0s_{0} is the type of rr, ρ0\rho_{0} is the radius word of rr, α0\alpha_{0} is the angle between rr and its successor in \mathcal{R} following \circlearrowright, and for every i[1,k]i\in[1,k], rir_{i} being the ithi^{th} successor of rr in \mathcal{R} following \circlearrowright, sis_{i} is the type of symmetry of rir_{i}, ρi\rho_{i} is the radius word of rir_{i}, and αi\alpha_{i} is the angle between rir_{i} and its successor in \mathcal{R} following \circlearrowright.

Note that the (weak) configuration words used in Section 3 (Definition 3.3) could have been defined as strong configuration words by using Constant 0 as type of symmetry, i.e., by mapping each letter (ρ,α)(\rho,\alpha) to (0,ρ,α)(0,\rho,\alpha). We discuss this issue in more details in the next section.

Notice also that the construction of strong configuration words has obviously the same important property as the construction of weak configuration words:

Remark 4.3

The construction of strong configuration words stated in Definition 4.2 is period-free.

Definition 4.4 (Type of word)

A word W(r)W(r) is said to be of type tt if and only if its first letter is equal to (t,x,y)(t,x,y) for any x,yx,y.

Devoid of chirality, the sensors cannot agree on a common orientation of SECSEC. So, for each radius rr\in\mathcal{R}, each sensor computes two strong configuration words, one for each direction, W(r)W(r)^{\circlearrowright} and W(r)W(r)^{\circlearrowleft}. Let CWCW be the set of strong configuration words computed in both directions by the sensors for each radius in \mathcal{R}. In Figure 3, all the sensors compute the following set:

CW={(0,c,β)(1,ab,α)(1,ab,β),(1,ab,α)(1,ab,β)(0,c,β),(1,ab,β)(0,c,β)(1,ab,α)}=W(r1)=W(r1)=W(r2)=W(r3)=W(r3)=W(r2)\begin{array}[]{ccccc}CW=\{&(0,c,\beta)(1,ab,\alpha)(1,ab,\beta),&(1,ab,\alpha)(1,ab,\beta)(0,c,\beta),&(1,ab,\beta)(0,c,\beta)(1,ab,\alpha)&\}\\ &=W(r_{1})^{\circlearrowright}=W(r_{1})^{\circlearrowleft}&=W(r_{2})^{\circlearrowright}=W(r_{3})^{\circlearrowleft}&=W(r_{3})^{\circlearrowright}=W(r_{2})^{\circlearrowleft}\end{array}
Remark 4.5

The following propositions are equivalent:

  1. 1.

    There exists one sensor on 𝙾\mathtt{O}

  2. 2.

    For every radius rr\in\mathcal{R}, W(r)=W(r)=(0,0,0)W(r)^{\circlearrowright}=W(r)^{\circlearrowleft}=(0,0,0)

  3. 3.

    CW={(0,0,0)}CW=\{(0,0,0)\}

Similarly to Section 3, we build the lexicographic order \preceq on the set of radius words over \mathcal{R} as follows:

Definition 4.6

Let Alph(CW)Alph(CW) be the set of letters appearing in CWCW. Let (b,u,x)(b,u,x) and (c,v,y)(c,v,y) be any two letters in Alph(CW)Alph(CW). Define the order \lessdot over Alph(CW)Alph(CW) as follows:

(b,u,x)(c,v,y){b<corb=c and uvorb=c and u=v and x<y(b,u,x)\lessdot(c,v,y)\Longleftrightarrow\left\{\begin{array}[]{ll}b<c\\ \mbox{or}\\ b=c\mbox{ and }u\precneqq v\\ \mbox{or}\\ b=c\mbox{ and }u=v\mbox{ and }x<y\end{array}\right.

The lexicographic order \preceq on CWCW is built over \lessdot.

The proof of the following lemma is similar to the one of Lemma 3.9:

Lemma 4.7

Given an orientation \circlearrowright, if there exist two distinct radii r1r_{1} and r2r_{2} in \mathcal{R} such that both W(r1)W(r_{1}) and W(r2)W(r_{2}) are Lyndon words (W(r1),W(r2)CWW(r_{1}),W(r_{2})\in CW), then CW={(0,0,0)}CW=\{(0,0,0)\}.

Corollary 4.8

Given an orientation \circlearrowright, if there exists (at least) one radius rr such that W(r)W(r) is a Lyndon word strictly greater than (0,0,0)(0,0,0), then rr is unique.

4.2 Leader Election and Lyndon Words

Let L\mathcal{R}_{L} be the subset of radii rr\in\mathcal{R} such that W(r)W(r) is a Lyndon word in the clockwise or in the counterclockwise orientation. Denote by L\sharp\mathcal{R}_{L} the number of radii in L\mathcal{R}_{L}.

The following result directly follows from Lemma 4.7 and Corollary 4.8:

Lemma 4.9

If for some orientation \circ of SECSEC in {,}\{\circlearrowright,\circlearrowleft\}, there exists rr\in\mathcal{R} such that W(r)=(0,0,0)W(r)^{\circ}=(0,0,0), then for all rr\in\mathcal{R}, W(r)=(0,0,0)W(r)^{\circ}=(0,0,0) and the leader is the sensor at the center of SECSEC.

Note that Lemma 4.9 applies necessarily when L>2\sharp\mathcal{R}_{L}>2. Indeed, this means that there exists at least two distinct radii r1r_{1} and r2r_{2} such that w(r1)w(r_{1}) and w(r2)w(r_{2}) are Lyndon words for a common orientation {,}\circ\in\{\circlearrowright,\circlearrowleft\} and by Lemma 3.9, this implies that CW={(0,0)}CW^{\circ}=\{(0,0)\}, so that CW={(0,0)}CW=\{(0,0)\}. So, in the remainder of this section, we study the case L2\sharp\mathcal{R}_{L}\leq 2.

Lemma 4.10

If for all rr\in\mathcal{R}, W(r)(0,0,0)W(r)^{\circlearrowright}\neq(0,0,0), W(r)(0,0,0)W(r)^{\circlearrowleft}\neq(0,0,0), and RL={r}R_{L}=\{r_{\ell}\}, the nn sensors are able to deterministically agree on a same sensor LL.

Proof. The leader is the nearest sensor to 𝙾\mathtt{O}, on rr_{\ell}. \Box

Note that, in this case, rr_{\ell} is necessarily 0-symmetric. An example of such a configuration is given by Figure 3: W(r1)=W(r1)=(0,c,β)(1,ab,α)(1,ab,β)W^{\circlearrowright}(r_{1})=W^{\circlearrowleft}(r_{1})=(0,c,\beta)(1,ab,\alpha)(1,ab,\beta) is a Lyndon word. The leader is the sensor on r1r_{1}.

Lemma 4.11

If for all rr\in\mathcal{R}, W(r)(0,0,0)W(r)^{\circlearrowright}\neq(0,0,0), W(r)(0,0,0)W(r)^{\circlearrowleft}\neq(0,0,0), and RL={r1,r2}R_{L}=\{r_{1},r_{2}\}, the nn sensors are able to deterministically agree on a same sensor LL if and only if r1r_{1} and r2r_{2} are of type 0.

Proof. Without loss of generality we can consider that W(r1)W(r_{1})^{\circlearrowright} and W(r2)W(r_{2})^{\circlearrowleft} are Lyndon words. We have three cases to consider:

  1. 1.

    Radii r1r_{1} and r2r_{2} cannot be of different types. Assume by contradiction they can. Without loss of generality we can consider that r1r_{1} is of type 0 and r2r_{2} is of type 11. So, from Definition 4.1, we deduce there is another radius of type 11 which is also a Lyndon word. So, we would have three radii corresponding to a Lyndon word, which contradicts Corollary 4.8.

  2. 2.

    For the same reason, if r1r_{1} and r2r_{2} are both 11-symmetric, then necessarily W(r1)=W(r2)W(r_{1})^{\circlearrowright}=W(r_{2})^{\circlearrowleft}. In this case, if an algorithm elects a leader on r1r_{1} in a deterministical way, this algorithm distinguishes another leader on r2r_{2}—refer to Figure 5 for an example of such a configuration. So an algorithm cannot allow the nn sensors to deterministically agree on a same sensor LL.

  3. 3.

    If r1r_{1} and r2r_{2} are both 0-symmetric, then W(r1)W(r2)W(r_{1})^{\circlearrowright}\neq W(r_{2})^{\circlearrowleft}. Without loss of generality, we can consider that W(r1)<W(r2)W(r_{1})^{\circlearrowright}<W(r_{2})^{\circlearrowleft}. Then the nn sensors are able to deterministically agree on the sensor that is the nearest to 𝙾\mathtt{O} on r1r_{1}.

\Box

Example 4.12

Figure 5 shows a configuration where each radius is 11-symmetric; and so no leader exists. Notice that a case like this one can occur only when the number of sensors is even.

Refer to caption
Figure 5: An example of configuration where no leader exists.
Example 4.13

Figure 6 shows a configuration as in the last case of the proof of Lemma 4.11. We have:

W(r1)=(0,c,α)(0,ab,γ)(0,ab,β),W(r1)=(0,c,β)(0,ab,γ)(0,ab,α)W^{\circlearrowright}(r_{1})=(0,c,\alpha)(0,ab,\gamma)(0,ab,\beta),\,W^{\circlearrowleft}(r_{1})=(0,c,\beta)(0,ab,\gamma)(0,ab,\alpha)
W(r2)=(0,ab,γ)(0,ab,β)(0,c,α),W(r2)=(0,ab,α)(0,c,β)(0,ab,γ)W^{\circlearrowright}(r_{2})=(0,ab,\gamma)(0,ab,\beta)(0,c,\alpha),\,W^{\circlearrowleft}(r_{2})=(0,ab,\alpha)(0,c,\beta)(0,ab,\gamma)
W(r3)=(0,ab,β)(0,c,α)(0,ab,γ),W(r3)=(0,ab,γ)(0,ab,α)(0,c,β)W^{\circlearrowright}(r_{3})=(0,ab,\beta)(0,c,\alpha)(0,ab,\gamma),\,W^{\circlearrowleft}(r_{3})=(0,ab,\gamma)(0,ab,\alpha)(0,c,\beta)

W(r2)W^{\circlearrowleft}(r_{2}) and W(r3)W^{\circlearrowright}(r_{3}) are Lyndon word, W(r2)W^{\circlearrowleft}(r_{2}) is the smallest one, so the leader is the sensor that is the nearest to 𝙾\mathtt{O} on r2r_{2}.

Refer to caption
Figure 6: The leader is the nearest sensor to 𝙾\mathtt{O} on r2r_{2}.
Lemma 4.14

If for all rr\in\mathcal{R}, W(r)(0,0,0)W(r)^{\circlearrowright}\neq(0,0,0), W(r)(0,0,0)W(r)^{\circlearrowleft}\neq(0,0,0), and RL=R_{L}=\emptyset, then there exists no deterministic algorithm allowing the nn sensors to agree on a same sensor LL.

Proof. Assume by contradiction that there exists no radius rr\in\mathcal{R} on the center of SECSEC or such that W(r)W^{\circlearrowleft}(r) or W(r)W^{\circlearrowright}(r) is a Lyndon word and that there exists an algorithm AA allowing the nn sensors to deterministically agree on a same sensor LL. Let minWmin^{\circ}_{W} be a word in CWCW such that r\forall r\in\mathcal{R}, minWW(r)min^{\circ}_{W}\preceq W(r). Suppose w.l.o.g. that =\circ=\circlearrowleft. That is, minWmin^{\circlearrowleft}_{W} is minimal. Assume first that minWmin^{\circlearrowleft}_{W} is primitive. Then it is a Lyndon word that contradicts the assumption. So, minWmin^{\circlearrowleft}_{W} is a strictly periodic word and from Lemma 2.3, we deduce that for all rr\in\mathcal{R}, w(r)w^{\circlearrowleft}(r) is also strictly periodic. Since by Remark 4.3 our construction is period-free, this implies that the configuration is periodic. Thus, for every rr\in\mathcal{R}, there exists at least one radius rr^{\prime}\in\mathcal{R} such that rrr\neq r^{\prime} and W(r)=W(r)W^{\circlearrowleft}(r)=W^{\circlearrowleft}(r^{\prime}).

So if an algorithm elects a leader on rr in a deterministical way, this algorithm distinguishes another leader on rr^{\prime}. In that case, AA cannot allow the nn sensors to deterministically agree on a same sensor LL. \Box

The four previous lemmas lead to:

Theorem 4.15

Given a configuration 𝒞{\mathcal{C}} of any number n2n\geq 2 of disoriented sensors without chirality scattered on the plane, the nn sensors are able to deterministically agree on a same sensor LL if and only if there exists W(r)CWW(r)\in CW such that rr is of type 0 and W(r)W(r) is a Lyndon word of type 0.

Remark 4.16

Notice that our construction does not necessarily give the same leader for one given configuration whether there is chirality or not. For instance in Figure 3, with chirality, if the orientation is \circlearrowleft, the chosen leader is the nearest sensor to 𝙾\mathtt{O} on r3r_{3} and if the orientation is \circlearrowright, it is the nearest sensor to 𝙾\mathtt{O} on r2r_{2}. Without chirality, the chosen leader is the sensor on r1r_{1}.

As noticed in this section, the (weak) configuration words built in Section 3 (Definition 3.3) can be easily defined in terms of strong configuration words (Definition 4.2) by mapping each pair (ρ,α)(\rho,\alpha) to (0,ρ,α)(0,\rho,\alpha). Thus, Theorem 3.13 also holds over the strong configuration words built on CWCW assuming chirality.

So, we can formulate Theorems 3.13 and 4.15 more generally:

Theorem 4.17

Given a configuration CC of any number n2n\geq 2 of disoriented sensors scattered on the plane and a period-free construction of strong configuration words ww, the nn sensors are able to deterministically agree on a same sensor LL if and only if there exists a Lyndon word of type 0 among the configuration words.

5 Conclusion

In this paper, we studied the leader election problem in networks of anonymous sensors sharing no kind of common coordinate system. Because of the anonymity, the problem is impossible to solve in a deterministic way, in general. Nevertheless, some specific geometric configurations allows to elect a leader. Using properties of Lyndon words, we give a complete characterization on the sensors positions to deterministically elect a leader for any number n>1n>1 of anonymous sensors, assuming chirality or not. This result is based on a specific coding of planar configurations involving Lyndon words which ensures to keep the properties allowing to distinguish a unique leader, if any, while not creating new ones. In the light of our study, the leader provided by our construction turns out to be one of the sensors closest to the center of SECSEC among either all the sensors or only those that are located on the unique symmetry axis of a configuration. In the case where the sensors share a common handedness, this feature has been used to facilitate the resolution of the arbitrary pattern formation problem as it is shown in [DPV10]. We conjecture that it can also be used in the case where the agents do not share a common handedness. However it should be noted that, according to the distributed tasks to be solved, it might be sometimes more judicious to obtain a leader having other geometrical characteristics. This is particularly the case for the flocking tasks among mobile agents (which consist in moving as a group while following a leader) which a leader initially closest to the boundary of SECSEC would be more adapted to achieve. Therefore, it is worth emphasizing that we may slightly modify our coding in order to take into account the following distributed task to be achieved: For example by giving higher priority to angles instead of distance or more generally, by changing the order over the set of letters.

As a future work, we will concentrate on finding similar characterizations for other collaborative tasks in mobile sensor networks such as localization problem for which we know that no solution exists in general [DLIP10]. We will also study how the solvability of the election problem impacts the solvability of other fundamental distributed tasks in sensor networks.

References

  • [Ang80] D Angluin. Local and global properties in networks of processors. In Proceedings of the 12th Annual ACM Symposium on Theory of Computing (STOC ’80), pages 82–93, 1980.
  • [Che04] M Chemillier. Periodic musical sequences and Lyndon words. Soft Computing, 8(9):611–616, 2004.
  • [DK02] X Defago and A Konagaya. Circle formation for oblivious anonymous mobile robots with no common sense of orientation. In 2nd ACM International Annual Workshop on Principles of Mobile Computing (POMC 2002), pages 97–104, 2002.
  • [DLIP08] Y Dieudonné, O Labbani-Igbida, and F Petit. Circle formation of weak mobile robots. TAAS, 3(4), 2008.
  • [DLIP10] Y Dieudonné, O Labbani-Igbida, and F Petit. Deterministic robot-network localization is hard. IEEE Transactions on Robotics, 26(2):331–339, 2010.
  • [DP07a] Y Dieudonné and F Petit. Circle formation of weak robots and Lyndon words. Information Processing Letters, 104(4):156–162, 2007.
  • [DP07b] Yoann Dieudonné and Franck Petit. Deterministic leader election in anonymous sensor networks without common coordinated system. In OPODIS, pages 132–142, 2007.
  • [DPV10] Y Dieudonné, F Petit, and V Villain. Leader election problem versus pattern formation problem. In DISC, pages 267–281, 2010.
  • [DR04] O Delgrange and E Rivals. Star: an algorithm to search for tandem approximate repeats. Bioinformatics, 20(16):2812–2820, 2004.
  • [FPSW99] P Flocchini, G Prencipe, N Santoro, and P Widmayer. Hard tasks for weak robots: The role of common knowledge in pattern formation by autonomous mobile robots. In 10th Annual International Symposium on Algorithms and Computation (ISAAC 99), pages 93–102, 1999.
  • [FPSW01] P Flocchini, G Prencipe, N Santoro, and P Widmayer. Pattern formation by autonomous robots without chirality. In VIII International Colloquium on Structural Information and Communication Complexity (SIROCCO 2001), pages 147–162, 2001.
  • [Kat05] B Katreniak. Biangular circle formation by asynchronous mobile robots. In 12th International Colloquium on Structural Information and Communication Complexity (SIROCCO 2005), pages 185–199, 2005.
  • [Lot83] M Lothaire. Combinatorics on words. Addison-Wesley, 1983.
  • [Lyn96] N Lynch. Distributed algorithms. Morgan Kaufmann, 1996.
  • [Meg83] N Megiddo. Linear-time algorithms for linear programming in 3\mathds{R}^{3} and related problems. SIAM Journal on Computing, 12(4):759–776, 1983.
  • [San07] N Santoro. Design and Analysis of Distributed Algorithms. John Wiley & Sons, Inc., 2007.
  • [SM90] R Siromoney and L Mathew. A public key cryptosystem based on Lyndon words. Information Processing Letters, 35(1):33–36, 1990.
  • [SY99] I Suzuki and M Yamashita. Distributed anonymous mobile robots - formation of geometric patterns. SIAM Journal of Computing, 28(4):1347–1363, 1999.
  • [Wel91] E Welzl. Smallest enclosing disks (balls and ellipsoids). In LNCS 555, editor, New Results and New Trends in Computer Science, pages 359–370, 1991.