Robot Networks with Homonyms: The Case of Patterns Formation
aa r X i v : . [ c s . D C ] M a y Robot Networks with Homonyms: The Case of Patterns Formation
Zohir Bouzid and Anissa Lamani University Pierre et Marie Curie - Paris 6, LIP6-CNRS 7606, France. [email protected] University of Picardie Jules Verne, Amiens, France. [email protected]
Abstract.
In this paper, we consider the problem of formation of a series of geometric patterns [4] bya network of oblivious mobile robots that communicate only through vision. So far, the problem hasbeen studied in models where robots are either assumed to have distinct identifiers or to be completelyanonymous. To generalize these results and to better understand how anonymity affects the computationalpower of robots, we study the problem in a new model, introduced recently in [5], in which n robots mayshare up to 1 ≤ h ≤ n different identifiers. We present necessary and sufficient conditions, relatingsymmetricity and homonymy, that makes the problem solvable. We also show that in the case where h = n , making the identifiers of robots invisible does not limit their computational power. This contradictsa result of [4]. To present our algorithms, we use a function that computes the Weber point for manyregular and symmetric configurations. This function is interesting in its own right, since the problem offinding Weber points has been solved up to now for only few other patterns. Robot networks [9] is an area of distributed computing in which the object of the study is thepositional (or spacial) communication paradigm [1]: robots are devoid of any means of direct commu-nication; instead, they communicate indirectly through their movements and the observation of thecurrent positions of their peers. In most of the studies, robots are oblivious, i.e. without any memoryabout their past observations, computations and movements. Hence, as with communication, memoryis indirect in some sense, it is collective and spacial. Since any algorithm must use a kind of memory,resolving problems in the context of robot networks is the art of making them remember withoutmemory [6]. But this indirect memory has its limits, and one of the main goals of research in thisfield is to precisely characterize the limiting power of obliviousness.The problem of formation of series of patterns (or patterns formation) is perhaps the best ab-straction that captures the need of robots to have a form of memory even when the model doesnot provide it directly. In this problem, introduced by Das et al. in [4], robots are required to formperiodically a sequence of geometric patterns S = h P , P , . . . , P m i . At each instant, robots should beable to know, just by observing the environment, which patterns they are about to form. In [4], theauthors study the problem in both anonymous and eponymous systems. In particular, they show thatthe only formable series when robots are anonymous are those in which all the patterns of the serieshave the same symmetricity. In contrast, if robots are endowed with identifiers, nearly all possibleseries are formable.The gap between the two worlds, one in which almost nothing is possible and another one whereeverything is possible, illustrates how much anonymity can be a limiting factor when we are interestedto computability. This brings us to ask the following question: is there a possible model where robotsare neither eponymous nor completely anonymous ? and if so, what are the possible series we are ableto form ? In a recent paper [5], Delporte et al. introduce a new model of “partial anonymity” whichthey call homonymy and they apply it to study Byzantine agreement. In this model, the numberof distinct identifiers in the system is given by a parameter h which may take any value between 1and n . In the current paper, we inject this notion of homonymy to the Suzuki-Yamashita model [9,4] which creates a new model that we call robot networks with homonyms .Studying the problem of patterns formation in this context allows us to get a better insight onhow the combined effect of anonymity and obliviousness affects the computational power of robots.We consider series of patterns where all robots are located in distinct positions and we assumethat identifiers are invisible . Our main result is to prove that for a series S = h P , P , . . . , P t i toe formable, it is necessary and sufficient that the number of labels h to be strictly greater than n sncd ( sym ( P i ) ,sym ( P i +1 )) where P i , P i +1 are any two successive patterns of S , sym ( P ) denotes the sym-metricity of P and sncd ( x, y ) is equal to the smallest divisor of x that does not divide y if any, n + 1otherwise.To present our algorithms, we use a function that computes the Weber point [10] for many regularconfigurations, i.e. all those in which there is a sort of rotational symmetry around a point. Givena point set P , the Weber point c minimizes P r ∈ P distance ( x, r ) over all points x in the plane. Ourresult may be interesting in its own right, since the problem of finding Weber points has been solvedup to now for only few other patterns (e.g. regular polygon [2], a line [3]).Finally, we consider the case where ( n = h = 3) and where multiplicity points (in which manyrobots are located) are allowed. In this setting, we prove that robots are able to form any series ofpatterns, contradicting a result of [4]. This has an interesting consequence: it means that making theidentifiers of robots invisible does not limit their computational power in the considered model, i.e. they can form the same series of patterns as robots with visible identifiers. Roadmap
The paper is made up of six sections. In Section 2 we describe the computation model weconsider in this paper. Section 3 defines the important notions of symmetricity, regularity and theirrelations to Weber points. In Section our algorithms for the detection of Weber points are presented.Then, we present in Sections 5 and 6 the necessary and sufficient conditions that makes series ofgeometric patterns formable in our model. In Section , we address the special case where robotshave distinct identifiers and where multiplicity points are allowed. Finally, we conclude this paper inSection 8
Our model is based on a variation of the ATOM model [9] used in [4], to which we introduce thenotion of homonymy [5]. The system is made up of n mobile robots r , . . . , r n that communicate onlythrough vision. That is, robots are devoid of any mean of direct communication, the only way of themto communicate is by observing the positions of their peers (a “read”) and by moving in the plane(a “write”). To each robot is assigned an identifier (or label) taken from a set of h distinct identifiers { , . . . , h } . The parameter 1 ≤ h ≤ n is called the homonymy of the system. The identifier of robot r is denoted by label ( r ). When two robots have the same label we say that they are homonymous .Robots are oblivious in the sense that they do not have any memory of their past observations,computations and movements. Hence, their actions are based entirely on their currently observedconfiguration and their label. Each robot is viewed as a point in a plane, thus multiple robots maylie in the same location forming a multiplicity point. We consider multiplicity points only in Section7. There, we assume that robots are able to know exactly how much robots are located in each point.This capability is known as the global strong multiplicity detection . We assume also that robotsdo not obstruct the vision of each others. Robots are disoriented , that is, each robot has its ownlocal coordinate system with its own origin, axis, and unit of length which may change at each newactivation. However, as in [4], we assume that robots share the same notion of clockwise direction,we say that they have the same chirality .The execution unfolds in atomic cycles of three phases Look, Compute and Move. During theLook phase, an activated robot take a snapshot of the environment using its visual sensors. Thenit calculates a destination in the Compute phase. The chosen destination is based solely on thelabel of the robot and the snapshot it obtained in the preceding phase. Finally, In the Move phase,the robot jumps to its destination. A subset of robots are chosen for execution (activated) at eachcycle by a fictional external entity called a scheduler . We require the scheduler to be fair i.e. eachrobot is activated infinitely often. Robots that are activated at the same cycle execute their actionssynchronously and atomically. 2 otations Given to distinct points in the plane x and y , | x, y | denotes the Euclidean distance between x and y , [ x, y ] the line segment between them and ( x, y ) is the line that passes through both of them.Given a third point c , ∢ ( x, c, y, ! ) denotes the clockwise angle at c from x to y . ∢ ( x, c, y, " ) is definedsimilarly. When the information about orientation can be understood from context, we may omit theparameters ! and " . Note that ∢ ( x, c, y, ! ) denotes both the angle and its size, the differencebetween the two notions should be clear from context. Given a configuration P , its smallest enclosingcircle, denoted SEC ( P ), is the circle of minimum diameter such that every point in P is either on orin the interior of this circle. Given a circle C , rad ( C ) and diam ( C ) denote its radius and diameterrespectively. A point p belong to C , written p ∈ C if it on or inside C . If S is a set, we denote itscardinality by | S | . Problem Definition [4] A configuration C of n robots is a multiset of n elements { ( p , l ) , . . . ( p n , l n ) } where p i is the position of robot r i and l i is its label. The set of positions L ( C ) is the set of points oc-cupied by at least one robot in C . A pattern P is represented by a set of n distinct points { p , . . . , p n } .Two patterns are said isomorphic if they can be obtained from each others by way of translation,rotation and uniform scaling. size ( P ) is the cardinality of P . We say that a system of robots hasformed the pattern P is the set of of points of the current configuration L ( C ) is isomorphic to P . The Problem of Formation of Series of Patterns is defined as follows. As input, robots aregiven a periodic series of patterns h P , P , . . . , P m i ∞ . It is required that ∀ τ : ∀ P i ∈ S : ∃ τ i : robotsform P i at τ i . In this section we formally define two metrics that quantify how much configurations of distinct robotsmay be symmetric: the strongest one, called symmetricity and the weaker one, called regularity. Wethen explain how these two notions relate to Weber points. We start by defining a polar coordinatesystem which we use to state our definitions and algorithms.
In the remaining of the paper, we express the locations of robots using a local polar coordinate systembased on the SEC of the current configuration and the position of the local robot[7]. The center c of the coordinate system is common to all robots and it coincides with the center of the SEC. Incontrast, the unit of measure is local to each robot r and its definition depends on whether the robotis located on c or not. In the first case, the point (1 ,
0) of the local coordinate system of r is anypoint in the plane that is not occupied by a robot. In the second case, the point (1 ,
0) is the currentlocation of r . The positive common clockwise orientation is provided by the underlying model. Notethat ( d, θ ) denotes the point located at distance d from c and angle θ . The view of robot r , denoted V ( r ) , is the current configuration expressedusing the local polar coordinate system of r . Notice that since robots are located in distinct positions, our definition of the view implies thatif some robot is located at c , then its view is unique, i.e. it cannot be equal to the view of anotherrobot.Now we define the following equivalence relation on robots based on their views. Definition 2 ( ∽ ). Given a configuration P , given any two robots r, r ′ ∈ P : ( r ∽ r ′ ) ⇔ ( V ( r ) = V ( r ′ )) The equivalence class of r is denoted by [ r ] . roperty 1. [4] Let r ∈ P . If | [ r ] | >
2, [ r ] is a set of robots located at the vertices of a convex regularpolygon with | [ r ] | sides whose center c is the center of SEC ( P ). Definition 3 (Symmetricity).
The symmetricity of a configuration P , denoted sym ( P ) , is thecardinality of the smallest equivalence class defined by ∽ on P . That is, sym ( P ) = min {| [ r ] | | r ∈ P } .If sym ( P ) = m , we say that P is m -symmetric. Note that despite the fact that our definition of symmetricity is different from the one used in [4],it is still equivalent to it when configurations does not contain multiplicity points, the case in whichwe are interested in the current paper.The next lemma follows from our definition of symmetricity and the fact that the view of a robotlocated at c is unique. Lemma 1.
If a configuration P of distinct robots is m -symmetric with m > , then no robot of P is located in c . In the following lemma we prove that if no robot is located at the center of
SEC ( P ), then all theequivalence classes have the same cardinality. Lemma 2.
Let P be a configuration of n distinct robots, and let c be the center SEC ( P ) . If no robotin P is located at c , it holds that: ∀ r, r ′ ∈ P : | [ r ] | = | [ r ′ ] | = m Proof.
We assume that no robot is located in c and we prove the following equivalent claim. ∀ r ∈ P : ∀ r ′ ∈ P : | [ r ′ ] | ≥ | [ r ] | .Fix r ∈ P and let x = | [ r ] | . If x = 1, the claim holds trivially. Hence we assume in the followingthat | x | >
1. Let [ r ] = { r , . . . , r x } . The indices define a polar ordering of the robots around c andtheir addition is done ( mod n ) + 1. It holds that r ′ ∈ ∢ ( r i , c, r i +1 ) for some i ∈ { , . . . , x } . But V ( r i ) = V ( r i +1 ) which means that there is a rotational symmetry of angle ∢ ( r i , c, r i +1 ) around c .Hence, there exists a robot r ′′ such that r ′′ ∈ ∢ ( r i +1 , c, r i +2 ) and r ′′ ∽ r ′ . By repeating this argument,we find x robots that are equivalent to r ′ (including itself). Hence | [ r ′ ] | ≥ x = | [ r ] | . This proves thelemma. Lemma 3.
Let P be a m -symmetric configuration of n distinct points with center (of symmetricity) c and with m > . There exists a partition of P into x = n/m subsets S , . . . , S x such that each ofthem is a convex regular polygon of m sides with center c .Proof. ( m >
1) implies that no point of P is located in c (by Lemma 1). Hence, we can apply Lemma2 and we deduce the existence of x = n/m equivalence classes in P ∽ with equal cardinality ( m ).Denote them by S , . . . , S x . According to Property 1, each of these subsets consists in set of robotslocated at the vertices of a convex regular polygon of m sides with center c .The following lemma will be used by our algorithm for series formation in Section 6 to break thesymmetricity of configurations. Lemma 4.
Let P be a m -symmetric configuration of n distinct points with m > . If h > n/m ,there exists two robots r and r ′ such that V ( r ) = V ( r ′ ) and label ( r ) = label ( r ′ ) .Proof. Assume not towards contradiction. This implies that all robots that have the same view in P have the same label. Note that since P is m -symmetric, we have exactly n/m equivalence classes(Lemma 2) of equal cardinality. As all robots belonging to the same equivalence class are assumedto have the same label, we have h = n/m . But we assumed h > n/m , contradiction.4 .3 Regularity In this section we formally define a weaker form of symmetry that we call regularity. In the nextsection we state its precise relation with symmetricity. We start by giving some useful definitions:
Definition 4 (Successor).
Given a set P of distinct points in the plane, and c P a fixed point.Given some polar ordering of points in P around c . Let us denote by S ( r, c, ! ) the the clockwisesuccessor of r according to the clockwise polar ordering of points P around c . The anticlockwisesuccessor of r , denoted S ( r, c, " ) , is defined similarly.Formally [7], r ′ = S ( r, c, ! ) is a point of P distinct from r such that: – If r is not the only point of P that lies in [ c, r ] , we take r ′ to be the point in P ∪ [ c, r ] that minimizes | r, r ′ | . – Otherwise, we take r ′ such that no other point of P is inside ∢ ( r, c, r ′ , ! ) . If there are many suchpoints, we choose the one that is further from c .When the center c and the clockwise orientation are clear from context or meaningless, we simplywrite S ( r, c ) , S ( r, " ) or S ( q ) to refer to the successor of r . Definition 5 ( k -th Successor). The k -th clockwise successor of r around c , denoted S k ( r, c, ! ) (or simply S k ( q ) ) , is defined recursively as follows: – S ( r ) = r and S ( r ) = S ( r ) . – If k > , S k ( r ) = S ( S k − ( r )) . Definition 6 (String of angles).
Let P be a set of distinct points in the plane, and c P a fixedpoint. The (clockwise) string of angles of center c in r , denoted by SA ( r, c, ! ) is the string α . . . α n such that α i = ∢ ( S i − ( r ) , c, S i ( r ) , ! ) . The anticlockwise string of angles, SA ( r, c, " ) , is defined ina symmetric way. Again, when the information about the center of the string c and/or its clockwiseorientation is clear from context, we simply write SA ( r, c ) , SA ( r, " ) or SA ( r ) . Definition 7 (Periodicity of a string).
A string x is k -periodic if it can be written as x = w k where ≤ k ≤ n/ . The greatest k for which x is k -periodic is called the periodicity of x and isdenoted by per ( x ) . The following property states that the periodicity of the string of angles does not depend on theprocess in which it is started nor on the clockwise or anticlockwise orientation.
Lemma 5.
Let P be a set of distinct points in the plane, and let c P be a point in the plane. Thefollowing property holds: ∃ m : ∀ r ∈ P : ∀ d ∈ { " , ! } : per ( SA ( r, c, d )) = m Proof.
Follows from the fact that a periodicity of a string is invariant under symmetry and rotation.
Theorem 1.
Given is a set of points P , a center c P . There exists an algorithm with runningtime O ( n logn ) that computes SA ( c ) .Proof. Fix some r ∈ P . We show how to compute SA ( r, c, ! ). The other cases are similar. Weuse an array T [ n ] of n cells. As a first step, we compute for each p i ∈ P the angle ∢ ( r, c, p i , ! )and put the result in T [ i ]. Note that this step takes O ( n ) time. Then we sort T in increasing order( O ( n logn ) steps). SA ( r, c, ! ) is the string α . . . α n such that ∀ i ∈ [1 , n −
1] : α i = T [ i + 1] − T [ i ]and α n = 2 Π − T [ n ]. The whole algorithm runs in O ( n logn ) time.The lemma means that when it comes to periodicity, the important information about a stringof angles is only its center c . Hence, in the following we may refer to it by writing SA ( c ).5 efinition 8 (Regularity). Let P be a set of n distinct points in the plane. P is m -regular (orregular) if there exists a point c P such that per ( SA ( c )) = m > . In this case, the regularity of P ,denoted reg ( P ) , is equal to per ( SA ( c )) . Otherwise, it is equal to . The point c is called the center of regularity. Theorem 2.
Given is a set of points P , a center c P . There exists an algorithm with runningtime O ( n logn ) that detects if c is a center of regularity for P .Proof. The algorithm computes SA ( c ). As proved in Theorem 1, this can be done in O ( n logn ) time.Then it computes the periodicity of the string in linear time [8]. If the obtained periodicity is greaterthan 1, it outputs Yes , otherwise it outputs No . In this section we state some relations between symmetricity and regularity. Then we prove thattheir centers are necessarily Weber points, hence unique when the configuration is not linear. Thefollowing lemma is trivial, its proof is left to the reader. It states the fact that if a configuration is m -symmetric, it is necessarily m -regular. Lemma 6.
Let P be any configuration with sym ( P ) > . It holds that reg ( P ) = sym ( P ) and thecenter of regularity of P coincides with its center of symmetricity. The next lemma shows in what way the regularity of a configuration can be strengthened tobecome a symmetricity.
Lemma 7.
Let P be any configuration with reg ( P ) = m > , and let c be its center of regularity.There exists a configuration P ′ that can be obtained from P by making robots move along their radiussuch that sym ( P ′ ) = m . Moreover, c is the center of symmetricity of P ′ .Proof. Let d be the greatest distance between any point of P and c . Note that since m >
1, norobot is located in c . We construct a configuration P ′ by making each point r in P move along itsradius towards the point ( d,
0) (expressed in its local polar coordinate system). In configuration P ′ ,all the points are at the same distance from c , hence the symmetricity in this case depends only onangles which makes it equal to regularity. Indeed, the equivalence class of each robot r is formed bythe set of robots { r, S n/m ( r, c ) , . . . , S ( m − n/m ( r, c ) } . Clearly, | [ r ] | = m . Since r is arbitrary, all theequivalence classes have a cardinality of m . Hence, sym ( P ′ ) = m and c is the center of symmetricityof P ′ .The following lemma states that the center of symmetricity of any configuration P if any is alsoits Weber point. The same claim was made in [2] in the cases when sym ( P ) = n (equiangular) and sym ( P ) = n/ Lemma 8.
Let P be a configuration such that sym ( P ) > and let c be its center of symmetricity.It holds that c is the Weber point for P .Proof. Let m = sym ( P ). Assume towards contradiction that the Weber point of P is c ′ = c . Since P is m -symmetric, it holds that all there m − c ′ around c with angles of · Πm , . . . · ( m − · Πm . By symmetricity, all these points are also Weber points. But since m >
1, this means that the Weber point is not unique. But Weber points are unique when not allthe points are located on the same line. Hence c , the only point that is ”unique” in P , is the Weberpoint. Lemma 9.
Let P be a configuration such that reg ( P ) = m > and let c be its center of regularity.It holds that c is the Weber point for P . roof. Our argument is similar to [2]. According to Lemma 7, there exists a configuration P ′ thatcan be obtained from P by making robots move along their radius. Moreover, sym ( P ′ ) = m and c is its center of symmetricity. According to Lemma 8, c is the Weber point of P ′ . But it is knownin geometry that a Weber point remains invariant under straight movements of any of the pointstowards or away from it. Hence, since c is the Weber point of P ′ , it must be the Weber point of P also. This proves the lemma.The next corollary follows directly from Lemma 9 and the fact that Weber points are unique. Corollary 1 (Unicity of c ). The center of regularity is unique if it exists.
In this section we show how to identify geometric configurations that are regular. We present twoalgorithms that detects whether a configuration P of n points given in input is m -regular for some m >
1, and if so, they output its center of regularity. The first one detects the regularity only if m is even, it is very simple and runs in 0( n logn ) time. The second one can detect any regularconfiguration, provided that m ≥
3. It is a little more involved and runs in 0( n logn ) time. Weassume in this section that P is not a configuration in which all the points are collinear. In this section, we state some technical lemmas that help us in the presentation and the proofs.
Lemma 10.
Let P be a regular configuration of n distinct points and let c be its center of regularity.Let m = reg ( P ) . The following property holds: ∀ r ∈ P : ( ∢ ( r, c, S n/m ( r, ! ) , ! ) = 2 Π/m ) ∧ ( ∢ ( r, c, S n/m ( r, " ) , " ) = 2 Π/m ) Proof.
Fix r ∈ P . Since P is m -regular, then m is necessarily a divisor of n . Let x = n/m . We dividethe proof into two parts:1. Part 1: ∢ ( r, c, S x ( r, ! ) , ! ) = 2 Π/m
Let S = SA ( r, c, ! ). Assume that S = α . . . α n . Clearly we have that α + α + . . . + α n = 2 Π Since n = m · x , the above sum can be rewritten as follows:( α + . . . + α x ) + ( α x +1 + . . . + α x ) + . . . + ( α ( m − x +1 + . . . + α mx ) = 2 Π But S is m -regular. Hence, ∀ i ∈ [1 , n ] : α i = α ( i + x ) mod ( n +1) . This implies that: m · ( α + . . . + α x ) = 2 Π But ∢ ( r, c, S x ( r, ! ) , ! ) = ( α + . . . + α x ). Hence ∢ ( r, c, S x ( r, ! ) , ! ) = 2 Π/m . This finishes thefirst part of the proof.2.
Part 2: ∢ ( r, c, S x ( r, " ) , " ) = 2 Π/m
Let r ′ = S x ( r, " ) and notice that S x ( r ′ , ! ) = q . It holds that ∢ ( r, c, S x ( r, " ) , " ) = ∢ ( r, c, r ′ , " ) = ∢ ( r ′ , c, r, ! )But since S x ( r ′ , ! ) = r , we have: ∢ ( r ′ , c, r, ! ) = ∢ ( r ′ , c, S x ( r ′ , ! ) , ! ) = 2 Π/m (as shown inPart 1). Hence ∢ ( r, c, S x ( r, " ) , " ) = 2 Π/m . 7he following lemma proves that when a configuration P is m -regular with m even, then for eachpoint in r ∈ P there exists a corresponding point ( S n/ ( r )) that lies on the line that passes through r and c with c being the center of regularity of P . Lemma 11.
Let P be a regular configuration of n distinct points and let c be its center of regularity.The following property holds: ( reg ( P ) is even ) ⇒ ( ∀ r ∈ P : ∢ ( r, c, S n/ ( r )) = Π ) Proof.
Let m = reg ( P ). By assumption m is even, hence there exists some m ′ ∈ N + such that m = 2 m ′ . Then, it holds that n/ m ′ ( n/m ). This implies that ∢ ( r, c, S n/ ( r )) = ∢ ( r, c, S n/m ( r )) + ∢ ( S n/m ( r ) , c, S n/m ( r )) + . . . + ∢ ( S ( m ′ − n/m ( r ) , c, S n/ ( r ))But since P is m -regular, we have according to Lemma 10 that: ∢ ( r, c, S n/ ( r )) = 2 Π/m + . . . + 2 Π/m = m ′ (2 Π/m )By replacing m = 2 m ′ we get: ∢ ( r, c, S n/ ( r )) = Π/ In this section we present our algorithm for detecting regular configurations when the regularity iseven. Note that since regularity is a divisor of n , it holds that n must be also even in this case. Itis inspired from Algorithm 2 in [2] and runs in 0( n logn ) steps. It is based on the notion of medianlines taken from [2]. Definition 9 ( median ( r ) ). Given a configuration P of n robots, n even, given r any robot in P ,the median line of r , denoted median ( r ) , is the line that passes through r and some other robot r ′ in P and divides the set of points into two subsets of equal cardinality n − . Note that in our case,contrary to [2], we allow other robots than r and r ′ to lie in the median. This is explained by the factthat, contrary to them, we allow angles equal to . Lemma 12.
Let P be a regular configuration of n distinct points with reg ( P ) = m even. Let c bethe center of regularity. The following property holds: ∀ r ∈ P : median ( r ) passes through S n/ ( r ) and c Proof.
According to Lemma 11, ∢ ( r, c, S n/ ( r )) = π . Hence the lemma follows.As a corollary we have that the center of regularity lies in the intersection of all medians. Lemma 13.
Let P be a regular configuration of n distinct points with reg ( P ) = m even. Let c bethe center of regularity. It holds that ∀ r ∈ P : median ( r ) ∩ { c } = { c } Theorem 3.
Given P a configuration of n distinct points with n even. There exists an algorithmrunning in n logn ) steps that detects if P is m -regular with m even, and if so, it outputs m andthe center of regularity. roof. The algorithm is described formally in Figure 1. It first computes the convex hull CH ofthe configuration which takes 0( n logn ) operations. Then it chooses an arbitrary point r in CH and computes its median ( r ). After that, it picks another point r ′ that belongs to CH but not to median ( r ). The point r ′ is well defined since we assume that the points of P are not all collinear.This choice of r ′ guarantees that median ( r ) = median ( r ′ ). If the configuration is regular, its centerof regularity necessarily lies in the intersection c of the two medians (Lemma 13). Then, it can bechecked in 0( n logn ) steps whether c is a center of regularity (Theorem 2). (1) CH ← Convex Hull ( P )(2) r ← an arbitrary point on CH (3) r ′ ← a point on CH but not on median ( r )(4) If (( median ( r ) ∩ median ( r ′ )) = ⊥ )(5) c ← median ( r ) ∩ median ( r ′ )(6) SA ← string of angles of P around c (7) m ← per ( SA )(8) If ( m > return ( Regularity m with Center c )(9) Endif (10) return ( Not Regular ) Fig. 1.
Detection of Even Regularity α -Circle). Given two distinct points x and y and an angle < α < Π , we say that the circle C xy is a α -circlefor p and q if x, y ∈ C pq and there exists a point p ∈ C xy such that ∢ ( x, p, y ) = α . In the following we present three known properties [2] about α -circles. Property 2. it holds that ∢ ( x, p ′ , y ) = α for every point p ′ ∈ C pq on the same arc as p . Property 3. If α = Π/
2, the α -circle is unique and is called the Thales circle. Property 4. If α = Π/
2, there are exactly two α -circles. We denote them in the following by C xy and C ′ xy . α = Π/ C xy = C ′ xy . Definition 11 ( C xy ∩ C yz ). Given C xy and C yz , we define their intersection, denoted C xy ∩ C yz , asthe point p such that ( p = y ) ∧ ( p ∈ C xy ) ∧ ( p ∈ C yz ) . If p does not exists we write C xy ∩ C yz = ∅ . Lemma 14.
Let m ≥ . Let P be an m -regular configuration of n distinct points with center c P .Let x be any point in P , and let us denote by y and z the points S n/m ( x, c, ! ) and S n/m ( x, c, " ) respectively. Let C xy , C ′ xy , C xz , C ′ xz be the Π/m -circles for the appropriate points. It holds that c ∈ ( C xy ∩ C xz ) ∪ ( C ′ xy ∩ C xz ) ∪ ( C xy ∩ C ′ xz ) ∪ ( C ′ xy ∩ C ′ xz ) .Proof. According to Theorem 10, since P is m -regular, then ∢ ( x, c, y, ! ) = 2 Π/m where c is thecenter of regularity. Hence, either c ∈ C xy or c ∈ C ′ xy (According to Definition 10 and Property 4).Using the same argument, we can also show that either c ∈ C xz or c ∈ C ′ xz . Hence:(( c ∈ C xy ) ∨ ( c ∈ C ′ xy )) ∧ (( c ∈ C xz ) ∨ ( c ∈ C ′ xz ))Distributing ∧ over ∨ gives us:(( c ∈ C xy ) ∧ ( c ∈ C xz )) ∨ (( c ∈ C xy ) ∧ ( c ∈ C ′ xz )) ∨ (( c ∈ C ′ xy ) ∧ ( c ∈ C xz )) ∨ (( c ∈ C ′ xy ) ∧ ( c ∈ C ′ xz ))This proves the lemma. 9 emma 15. Given ≤ m ≤ n , given P a configuration of n distinct points. Let x be any point in P The following property holds: ( P is m -regular with center c ) ⇔ ( ∃ y, z ∈ P : ( x = y = z ) ∧ ( c ∈ ( C xy ∩ C xz ) ∪ ( C ′ xy ∩ C xz ) ∪ ( C xy ∩ C ′ xz ) ∪ ( C ′ xy ∩ C ′ xz ))) Where C xy , C xz , C ′ xy , C ′ xz are Π/m -circles of the corresponding points.Proof.
The lemma follows from Lemma 14 by setting y = S n/m ( x, c, ! ) and z = S n/m ( x, c, " ). Theorem 4.
Given ≤ m ≤ n , given P a configuration of n distinct points. There exists analgorithm running in n logn ) that detects if P is m -regular, and if so, it outputs the center ofregularity.Proof. The algorithm is the following. We fix any robot x ∈ P . Then, for every y ∈ P \ { x } , for every z ∈ P \ { x, y } , for every c ∈ ( C xy ∩ C xz ) ∪ ( C ′ xy ∩ C xz ) ∪ ( C xy ∩ C ′ xz ) ∪ ( C ′ xy ∩ C ′ xz ), we test if c is a centerof regularity (Theorem 2, O ( n logn ) time). Lemma 4.3 guarantees that if P is m -regular, the testwill be conclusive for at least one pair ( y, z ) of robots. The whole algorithm executes in O ( n logn ):we browse all the possible pairs ( y, z ), and for each pair we generate up to four candidates for thecenter of regularity, hence we have O ( n ) candidates. Then, O ( n logn ) time is needed to test eachcandidate. Note that our algorithm follows the same patterns as those presented in [2]: generating arestricted set of candidates (points) and testing whether each of them is a center of regularity. Theorem 5.
Given P a configuration of n distinct points. There exists an algorithm running in n logn ) steps that detects if P is m -regular with m ≥ , and if so, it outputs m and the center ofregularity.Proof. It suffices to generates all the divisors m of n that are greater than 2. Then, for each m , wetest if P is m -regular using the algorithm of Theorem 4). When the test is conclusive, this algorithmreturn the center of regularity c , so we can output Regularity m , Center c . If test was inconclusivefor every generated m , we output Not Regular
Theorem 6.
Given P a configuration of n distinct points. There exists an algorithm running in n logn ) steps that detects if P is m -regular with m ≥ , and if so, it outputs m and the center ofregularity.Proof. We combine the algorithms of Theorems 3 and 5. First, we test if P is m -regular for someeven m using the algorithm of Theorem 3 (0( n logn )). If so, we output m and the center of regularity c which are provided by the called algorithm. Otherwise, we test odd regularity using the algorithmof Theorem 5 (0( n logn )) but by restricting the analysis to only the odd divisors of n (the evendivisors were already tested). In this section we prove a necessary condition that geometric series have to satisfy in order to beformable. The condition relates three parameters: the number of robots in the system n , its homonymy h and the symmetricity of the patterns to form. It is stated in Lemma 18. Property 5. [4] For any configuration P of n distinct robots, sym ( P ) divides n . Lemma 16.
Let P be a configuration of n distinct robots with symmetricity s , i.e. sym ( P ) = s . Forany divisor d of s , if h ≤ nd , then for any pattern formation algorithm, there exists an executionwhere all subsequent configurations P ′ satisfy sym ( P ′ ) = k · d , k > . roof. The lemma holds trivially if s = 1, hence we assume in the following that s >
1. Accordingto Lemma 3, there exists a partition of P into x = n/s subsets S , . . . , S x such that the s robots ineach S i occupy the vertices of a regular convex polygon of s sides whose center is c .Now, partition each set S i into sd subsets T i , . . . , T ( i sd ) with | T ij | = d for each i ∈ { , . . . , x } , j ∈{ , . . . , sd } . Each subset T ij is chosen in such a way that the d robots belonging to it are located inthe vertices of a regular convex polygon of d sides with center c . This choice is possible because d isa divisor of s = | S i | . For example, let r , . . . , r s be the robots of S i ordered according to some polarordering around c . T i is the set of robots { r , r ( sd +1) , r ( sd +1) , . . . , r ( ( d − sd +1) } . Clearly, this subsetdefines a regular polygon of d sides with center c .There are total of s · xd = nd subsets T ij . So we have also a total of nd concentric regular polygonsof d sides. What is important to notice now is that the robots in each T ij have the same view.Since h ≤ nd , there exists a set of labels |L| = h , and a labeling of robots in P such that (1) Thesame label is assigned to the robots that belong to the same subset T ij . (2) For each label l ∈ L ,there exists a robot r i ∈ P such that l is the label of r i .Since we assume that algorithms are deterministic, the actions taken by robots at each activationdepend solely on they observed view and their identity (label). Hence, two robots having the sameview and the same label will take the same actions if they are activated simultaneously. Therefore,the adversary can guarantee that the network will always have a symmetricity ≥ d by activating eachtime the robots that belong to the same T ij together. This way, we are guaranteed to have all thesubsequent configurations that consists of a set of nd concentric regular polygons of d sides. That is,all subsequent configuration have a symmetricity that is a multiple of d . This proves the lemma.The following lemma states a necessary condition for a geometric figure P j to be formable startingfrom P i . Lemma 17.
If the current configuration P i has symmetricity sym ( P i ) = s , the configuration P j withsymmetricity sym ( P j ) = s ′ is formable only if (1) size ( P j ) = size ( P i ) and (2) h > n sncd ( s,s ′ ) where sncd (read smallest non common divisor) is equal to the smallest x that divides s but not s ′ if any, n + 1 otherwise.Proof. Assume towards contradiction that (1) h ≤ n sncd ( s,s ′ ) and (2) P j is formable. Note that since h ≥
1, (1) implies that sncd ( s, s ′ ) = n + 1. Otherwise we would have h ≤
0, contradiction. Bydefinition, sncd ( s, s ′ ) = n + 1 implies that sncd ( s, s ′ ) = t divides s but not s ′ .According to Lemma 16, for any algorithm, there exists an execution starting from P i where allsubsequent configurations P ′ satisfy sym ( P ′ ) = k · t , k >
1. But sym ( P j ) = s ′ is not multiple of t ,hence P j is never reached in this execution. This means that P j is not formable starting from P i ,which contradicts (2). Hence, the lemma is proved.Now, we are ready to state the necessary condition for formation of geometric series. It relatesthe symmetricity of its constituent patterns and the homonymy of the system. Lemma 18.
A cyclic series of distinct patterns h P , P , ..., P m i ∞ each of size n is formable only if ∀ i ∈ { , . . . , m } : h > n sncd ( sym ( P i ) , sym ( P i +1 )) Proof.
Follows from Lemma 18.
In this section, we present an algorithm that allows robot to form a series of patterns, provided thatsome conditions about homonymy and symmetricity are satisfied. The result is stated in the followingtheorem: 11 heorem 7.
A cyclic series of distinct patterns h P , P , ..., P m i ∞ each of size n is formable if andonly if ∀ i ∈ { , . . . , m } : h > n sncd ( sym ( P i ) , sym ( P i +1 ))The only if part was proved in Section 5. The remaining of the current section is devoted to theproof of the if part of the theorem. During the formation of a pattern P i (starting from P i − ), the network may go through several inter-mediate configurations. We define in the following four classes of intermediate patterns A , B , C and D . Each one of them encapsulate some information that allows robots to unambiguously determinewhich pattern the network is about to form. This information is provided by a function, Stretch ,which we define separately for each intermediate pattern.
Definition 12 (Configuration of type A ). A configuration P of n points is of type A (called BCC in [4]) if the two following conditions are satisfied (refer to Figure 6.1):1. there exists a point x ∈ P such that the diameter of SEC = SEC ( P ) is a least ten times thediameter of SEC = SEC ( P \ { x } ) .2. SEC and SEC intersect at exactly one point called the base-point (BP).The point x is called the pivot whereas the point on SEC directly opposite BP is called the frontierpoint ( F P ) . Stretch ( P ) is equal to ⌊ rad ( SEC )( h +1) · rad ( SEC ) ⌋ . PivotFPBP
Fig. 2.
Figure of type A . Definition 13 (Configuration of type B ( m ) ). A configuration P of n distinct robots is of type B ( m ) (adapted from SCC [ m ] in [4]) with < m < n , if the following conditions are satisfied:1. SEC = SEC ( P ) has exactly m points on its circumference which form a regular convex polygonwith m sides.2. Let SEC be the SEC of the robots that are not on the SEC , i.e. SEC = SEC ( P \ { r ∈ P | r is on SEC } ) . SEC and SEC are concentric such that rad ( SEC ) > · rad ( SEC ) . Stretch ( P ) is equal to · ⌊ rad ( SEC )( h +1) · rad ( SEC ) ⌋ . It can be easily checked that a given configurationcannot be of both types A and B (their respective SEC do not intersect). Definition 14 (Configuration of type C ( m ) ). A configuration P of n distinct robots is of type C ( m ) with < m < n if 1) it is not of type B and 2) it is m -symmetric (ref. Definition 3). tretch ( P ) is computed as follows. Since P is m -symmetric with m > , there exists a partitionof P into x = n/m subsets S , . . . , S x such that each of them is a convex regular polygon of m sideswith center c (Lemma 3). This means that each S i defines a circle with center c . Assume w.l.o.g that ∀ i ∈ { . . . x − } : rad ( S i ) ≤ rad ( S i +1 ) . Stretch ( P ) = M ax {⌊ rad ( S i +1 )( h +1) · rad ( S i ) ⌋ | i ∈ { . . . x − }} .Clearly, a configuration of type C cannot be of type A since the former is symmetric while thelatter is not. Definition 15 (Configuration of type D ( m ) ). A configuration P of n distinct robots is of type D ( m ) with < m < n if (1) Points are not all on the same line, (2) P is not of type B and (3) P is m -regular but not symmetric ( Sym ( P ) = 1 ). Stretch ( P ) is computed as follows. Let c be the center of regularity. c can be computed inpolynomial time using the algorithm of Section 4 (Theorem 6). Then for each r i ∈ P , we compute | c, r i | , its distance from c . Assume w.l.o.g. that ∀ i ∈ { . . . x − } : | c, r i | ≤ | c, r i +1 | . Stretch ( P ) = M ax {⌊ | c,r i +1 | ( h +1) ·| c,r i | ⌋ | i ∈ { . . . x − }} . Note that the stretch of configurations of type C ( m ) is aparticular case of that of type D ( m ) , but since the former configurations are symmetric, we cancompute their stretch without resorting to the computation of the center of regularity. Decoding the stretch
Let F be a one-to-one function [4] that maps each pattern P i to a real number t i = F ( P i ). If there is a pattern P i that is of type A , B , C or D , we exclude the value Stretch ( P i )from the domain of F . To simplify the proofs, we assume that F ( P i ) >
10 for any P i . When robotsare about to form the pattern P i , they use intermediate configurations with stretch t i . By computingthe stretch, robots can unambiguously identify which configuration they are about to form ( F − ( t i )). In this section we describe some algorithms that describe some transformations between patterns.
Lemma 19.
Starting from any configuration of type D with stretch t , there exists an algorithm thatbuilds a configuration of type A with the same stretch.Proof. Let P be the initial configuration. Since P is of type D , it holds that sym ( P ) = 1. Hencewe can elect a leader, i.e. a robot whose view is unique, let it be r . The algorithm work by making r move towards the pivot position of the target A configuration with appropriate stretch. This isdone as follows. First, r computes the stretch t = Stretch ( P ). Then it consider the set of points Q = P \ { r } and compute their SEC and its center c . Here, we distinguish between two cases:1. There exists two robots r and r of SEC that are directly opposite of each others. In this case, r jumps to the pivot location that makes r and r occupy the frontier-point and the base-pointrespectively. Formally, r jumps to a point x located at the line ( r , r ) such that r lies between r and x with | c, x | = ( t · ( h + 1)) · | c, r | . Let P ′ the obtained configuration. Clearly, P ′ is of type A and Stretch ( P ′ ) = t .2. Otherwise, r chooses any point r on SEC and jumps to the pivot position with appropriatestretch such that r becomes the base point. Then, any robot distinct from r and r will jumpto the frontier point.In both cases, we obtain a configuration of type A with the required stretch. Lemma 20.
Starting from any configuration of type P i with stretch sym ( P i ) = 1 , there exists analgorithm that builds a configuration of type A with stretch F ( P i +1 ) .Proof. The proof is similar to that of Lemma 19, by replacing t with F ( P i +1 ).The following two lemmas are from [4]. Lemma 21.
Starting from any configuration of type A , it is possible to form any single pattern. emma 22. Starting from any configuration of type B ( m ) , it is possible to form any single pattern P such that sym ( P ) = k · m, k > . Lemma 23.
Consider a robot network of n robots in configuration P i . Let sym ( P i ) = m > and sym ( P i +1 ) = m ′ . If h > n sncd ( m,m ′ ) , there exists an algorithm that brings the network to a configuration Q such that either Q is of type B ( x ) , x < sncd ( m, m ′ ) or of type A both with stretch F ( P i +1 ) . The remaining of this section is devoted to the proof of this lemma.
Function: targetSym ( k ) : The target symmetricity when robots try to form P k +1 It is equal to the greatest divisor of sym ( P k +1 ) that is < SNCD ( sym ( P k ) , sym ( P k +1 )) Actions: (1) P ← Observed Configuration(2)
SEC ← Smallest Enclosing Circle ( P )(3) c ← Center ( SEC )(4) sym ← sym ( P )(5) If ( P = P i ) then t ← F ( P i +1 )(6) else t ← stretch ( P ) endif (7) id ← My Identifier(8) rad ← Radius ( SEC )(9) if ( sym > ∧ (( sym > targetSym ( k )) ∨ ( P is not of type B ( sym )))(10) d ← Min ( | r i , c | ; r i ∈ P )(11) S ← { r i ∈ P | | r i , c | = d } (12) minV iew ← Min ( V ( r i ); r i ∈ S )(13) Elected ← { r i ∈ S | V ( r i ) = minV iew } (14) if ( r i ∈ Elected )(15) return (( t · ( h + 1) + id − · rad , 0)(16) else (17) return My Position(18) endif (19) endif Fig. 3.
Symmetry BreakingThe transformation algorithm is given in Figure 3. It is executed by robots during their Computephases until one of the two desired configurations is obtained. Its description is based on the polarcoordinate system of Section 3.1. The principal idea is to use identifiers of robots in order to breakthe symmetry of configurations. It does so by making robots choose their destination accordingto their identity. This way, if two robots with similar views but different identities are activatedsimultaneously, their views at the end of the cycle will be different and the symmetricity decreases.Let us observe the following four properties about the algorithm:1. Denote by c is the center of symmetricity of the initial configuration P i which is therefore a Weberpoint (Lemma 8). Since the algorithm makes robots move only through their radius with c (line15, the Weber point remains invariant during all the execution. This implies that any successiveregular/symmetric configuration will have necessarily c as its center of regularity/symmetricity.2. Again, since robots move only through their radius with c , regularity remains invariant duringall the execution. It is thus equal to reg ( P i ). But since sym ( P i ) = m >
1, it holds accordingto Lemma 6 that reg ( P i ) = sym ( P i ). Hence, all the successive configurations will be m -regular,including the final one. This means that if a configuration P ′ with sym ( P ′ ) is reached, it is oftype D ( m ).3. At each cycle, the algorithm chooses a set Elected of robots having the same view (equivalenceclass) (lines 10-13). These Since the algorithm is executed only if the current configuration is m -symmetric ( m > | Elected | = m . The positions chosenby robots in Elected are located outside the current SEC. Hence, moving to these positions14annot increase the symmetricity of the configuration. It follows that the symmetricity of theconfigurations can only decrease during the execution.4. The actions of robots maintain the same stretch during the whole execution, and it is equal to F ( P i +1 ) (line 5).We prove the following claim about the algorithm: Lemma 24.
Given the conditions of Lemma 23, if robots are executing algorithm 3, then there existsa time at which they reach a configuration P ′ with sym ( P ′ ) < sncd ( m, m ′ ) .Proof. Remember that we showed in Item 3 above that symmetricity can only decrease. Assumetowards contradiction that it remains always greater or equal to sncd ( m, m ′ ). This means that thereexists a time t , a symmetricity x > sncd ( m, m ′ ), such that all the configurations reached after t havesymmetricity equal to x . But we assumed that h > n sncd ( m,m ′ ) , which implies that h > n/x . Hence,according to Lemma 4, there exists two robots r , r with identical views but distinct labels. Let S be the set of robots with the same view as r , r . Note that the robots of S form a regular polygonaround c , i.e. they lie in the same circle. There exists a time at which the robots of S are elected, i.e. when they become the closer to the center c . Since r and r have distinct labels, they will choosedifferent destinations and the symmetricity will decrease. Contradiction. Definition 16 ( m ′ , T ). Let m ′ be the smallest symmetricity of all the configurations reached by theexecution of the algorithm. According to Lemma 24 m ′ < sncd ( m, m ′ ) . Let T be the first reachedconfiguration for which sym ( T ) = m ′ . Since all the configurations reached after T if any have asymmetricity equal to m ′ this means that at each cycle after T is reached, there are m ′ robots thatare elected to move. Lemma 25. If sym ( T ) = m ′ > , then either T is of type B ( m ′ ) or a configuration of type B ( m ′ ) can be obtained from T after one cycle.Proof. If T is of type B ( m ′ ) we are done. If not, then T is of type C ( m ′ ) because it is m -symmetric.Hence, the algorithm is executed also by robots when they are at configuration T . Let T +1 be thenext configuration that is just after T . By definition of m ′ , T +1 must be also m ′ -symmetric. Theexternal circle of T +1 is formed by the m ′ robots that moved between T and T +1 . They necessarilyform a regular polygon of m sides, otherwise the symmetricity would have decreased. Moreover, theratio between the two most external circles is greater than five, hence T +1 is of type B ( m ′ ). Thisproves the lemma. Lemma 26. If m ′ = 1 and all the points in T are collinear, then either T is of type A or a configu-ration of type A can be reached from T be a movement of a single robot.Proof. Let T − denotes the configuration that just precedes T in the execution. Clearly, T − is alsocollinear since robots move only through their radius with c . Moreover, sym ( T − ) = 2 > m ′ = 1. Wedistinguish between two subcases:1. Only one robot moved between T − and T . In this case, T is of type A with appropriate stretch.So the algorithm stops here and the lemma follows.2. Two robots moved between T − and T . It can be easily checked that T is not an intermediateconfiguration (not of type A , B , C or D ). The stretch of T can be however computed by tryingto find the center of symmetricity of the precedent configuration T − . We do this by ignoringthe two extreme positions in T (corresponding to the robots that moved between T − and T ). c is the centroid of the remaining positions. Then, having c , we can deduce the stretch using theformula of configurations of type D . After that, we elect some robot in T and make it move insuch a way to form a configuration of type A with appropriate stretch as showed in Lemma 19.15 emma 27. If m ′ = 1 and the points in T are not all collinear, then either T is of type A or D ( m ) Proof.
Let T − denotes the configuration that just precedes T in the execution. Note that sym ( T − =2 since T is by definition the first configuration that reaches symmetricity equal to 1. Let S be theset of robots that moved between T − and T and let S be the set of robots that remained stationary.Note that | S | ≥ n/
2. If | S | = 1 then the obtained configuration T is of type A and we are done.Hence we assume that | S | > T is of type D . For this, it suffices to show that T is neither of type A nor B . Let u = rad ( SEC ( T − )). The following two properties hold in T : (A1) the distance between any two robots is smaller than 2 · ( t + 1) · ( h + 1) · u . Moreover, (A2) ∀ r ∈ S : ∀ r ′ ∈ S : | r, r ′ | ≥ ( t · ( h + 1) − · u ≥ ( t − · ( h + 1) · u . (A3) ∀ r, r ′ ∈ S : | r, r ′ | ≤ · u . Not B Assume towards contradiction that T is of type B . SEC and SEC are defined accordingly.We say r ∈ SEC if it is on SEC . Note that at least one robot of S must be on SEC , and ∀ r ∈ T : ( r ∈ SEC ) ∨ ( r ∈ SEC ). Claim (C1). ( ∃ r ∈ S ∩ SEC ) ⇒ ( ∀ x ∈ S : x ∈ SEC ). Proof.
Fix r to be some robot in S ∩ SEC . Assume for contradiction that there exists some x ∈ S ∩ SEC . By (A2) we conclude that | x, r | ≥ ( t − · ( h + 1) · u . Since both x and r are in SEC ,its diameter diam ( SEC ) must be greater than ( t − · ( h + 1) · u . Hence, by definition of pattern B , diam ( SEC ) > · ( t − · ( h + 1) · u . Thus, we must have at least two robots in SEC distantfrom each other by more than 5 · ( t − · ( h + 1) · u . When t >
2, this contradicts (A1). This provesthat x SEC . Hence, ∀ x ∈ S : x ∈ SEC . Claim (C2). ∀ r ∈ S : r ∈ SEC Proof.
Assume towards contradiction that some r ∈ S ∩ SEC . This implies, according to C1, that ∀ x ∈ S : x ∈ SEC . But | S | ≥ n/ S in SEC . Hence thisalso implies | SEC | > n/ SEC cannot contain the majority of robotsin B . This proves the claim. Claim (C3). ∀ r ∈ S : r ∈ SEC Proof.
Assume that some r ∈ S ∩ SEC . Observe that according to C x that are in S are on SEC also. Hence, (B1) there exists at least one robot in S that is in SEC , otherwise thelatter will be empty. Let this robot be y .According to (A1), dist ( x, r ) ≥ ( t − · ( h + 1) · u . Hence, radius ( SEC ) ≥ ( t − · ( h + 1) · u .When t >
10 we have radius ( SEC ) ≥ · u . But radius ( SEC ) > · radius ( SEC ). Hence, (B2) if x is in SEC and x is SEC | x , x | ≥ · u .But we have r ∈ S ∩ SEC and y ∈ S ∩ SEC . Since both y and r are in S , we have accordingto (A3), dist ( y, r ) ≤ · u . This contradicts (B2) and proves the claim.Hence, the robots of SEC are those in S and robots of SEC are those of S . The SEC of S isthe SEC of T − . Hence, the center of SEC is the Weber point. According to the definition of B , therobots at SEC form a regular polygon. Hence, there is some symmetry maintained between T − and T . It contradicts the fact that sym ( T ) = 1. Therefore, T cannot be of type B . Not A can be proved using the same techniques.16 roof of Lemma 23 Follows from Lemma 24, Definition 16 and Lemmas 26, 27 and 25.
Theorem 8.
Consider a robot network of n robots in configuration P i . Let sym ( P i ) = m > and sym ( P i +1 ) = m ′ . If h > n sncd ( m,m ′ ) , there exists an algorithm that forms P i +1 .Proof. Follows from Lemmas 21, 22 and 23.The proof of Theorem 7 follows directly from Theorem 8.
In this section we consider the case where l = n and patterns may contain multiplicity points . In thiscontext, we prove that making the identifiers of robots invisible does not limit their computationalpower. That is, the series of geometric patterns that can be formed in this case are the same thatthose we can form when robots are endowed with visible distinct identifiers. The following theoremstates this result: Theorem 9.
With n ≥ robots having distinct invisible identifiers, we can for any finite seriesof distinct patterns h P , P , . . . , P m i iff for all i , ≤ i ≤ m , size ( P i ) ≤ n where size ( P i ) is thecardinality of P i .Proof. Follows from Lemmas 5.1. and 5.4 in [4] and Lemma 28 below.
Lemma 28. given any non-trivial series < P , P , ..., P m > , where size ( P i ) > and any l , ≤ l To form the series, we need to introduce some intermediate patterns denoted by C (1 , 2; 3), C (1 , 3; 2), C (2 , 3; 1), L , L , S and S and whose precise definitions are given below. The obtainedseries that includes these patterns is the following: h P , P , ..., P l , L , (1 , 2; 3) , point , (1 , 3; 2) , S , P l +1 , P l +2 , ..., P m , L , two-points = (2 , 3; 1) , S i The intermediate patterns are defined as follows: – C ( i, j ; l ) , i, j, l ∈ { , , } represent a configuration in which robots r i and r j are collocated in thesame point, and r l occupies a distinct position. – L (read ”leader r ”) and L are two scalene triangles distinct from one another and from anypattern in { P , P , ..., P m } . Moreover, in L (resp. L ), the angle whose vertex is r (resp. r ) isthe smallest one. – S and S are two configurations of the same pattern which consists in a scalene trianglewith angles α < α < α . In S , angle ( r i ) = α i for any i ∈ { , , } . In contrast, in S wehave angle ( r ) = α and angle ( r ) = α . Note that S and S are distinct from the patterns { L , L , P , P , ..., P m } .Now we explain how the transformations between different patterns are handled:1. P i P i +1 : Note that each pattern P i consists of exactly three distinct points. Hence the trans-formation between P i and P i +1 is achieved [4] by the movement of only one robot (say r ).2. P l L : The transformation is achieved by making r moves towards some point such that theobtained pattern is isomorphic to L and r is the vertex of its smallest angle.3. L (1 , 2; 3): Note that r can be distinguished from other robots in L . Hence, the transforma-tion from L to (1 , 2; 3) is simply achieved by making r join the location of r .17. (1 , 2; 3) point : Here, r has to move towards the multiplicity point.5. point (1 , 3; 2): The latter configuration is obtained by making r move outside the multiplicitypoint.6. (1 , 3; 2) S and (2 , 3; 1) S : Both transformations are handled by r which cannot distin-guish between the two starting configurations (1 , 3; 2) and (2 , 3; 1). Hence, its actions in both casesare similar. Let p a denotes the location of the multiplicity point in the starting configuration andlet p b denotes the other location. We make r move to some point p c such that ∢ ( p c , p a , p b ) = α , ∢ ( p c , p b , p a ) = α and ∢ ( p a , p c , p b ) = α . It can be easily checked that the obtained configurationis S in the first case, and S in the latter case.7. S P l +1 and S P : Note that the starting configurations correspond to the same pattern.Both of the transformations are handled by r . When r observes a configuration consisting of atriangle with angles α , α and α , it knows that the current configuration is either S or S .It can distinguish between them by looking to its own angle (equal to α in the first case and to α in the second one). Hence, it can execute the appropriate transformation towards P l +1 or P .8. P m L : Similar to 2.9. L (2 , 3; 1): Similar to 3. In this paper, we considered the problem of formation of series of geometric patterns. We studied thecombined effect of obliviousness and anonymity on the computational power of mobile robots withrespect to this problem. To this end, we introduced a new model, robots networks with homonyms thatencompasses and generalizes the two previously considered models in the literature in which eitherall robots have distinct identifiers or they are anonymous. Our results suggest that this new modelmay be a useful tool to get a better insight on how anonymity interacts with others characteristicsof the model to limit its power. Acknowledgement The authors thank Dr. Shantanu Das for his generous help and helpful comments. References 1. N. Agmon and D. Peleg. Fault-tolerant gathering algorithms for autonomous mobile robots. SODA , 11(14):1070–1078, 2004.2. L. Anderegg, M. Cieliebak, and G. Prencipe. Efficient algorithms for detecting regular point configurations. The-oretical Computer Science , pages 23–35, 2005.3. R. Chandrasekaran and A. Tamir. Algebraic optimization: the fermat-weber location problem. MathematicalProgramming , 46(1):219–224, 1990.4. S. Das, P. Flocchini, N. Santoro, and M. Yamashita. On the computational power of oblivious robots: forming aseries of geometric patterns. In PODC , pages 267–276. ACM, 2010.5. C. Delporte-Gallet, H. Fauconnier, R. Guerraoui, A.M. Kermarrec, E. Ruppert, and H. Tran-The. Byzantineagreement with homonyms. PODC , 2011.6. P. Flocchini, D. Ilcinkas, A. Pelc, and N. Santoro. Remembering without memory: Tree exploration by asynchronousoblivious robots. Theoretical Computer Science , 411(14-15):1583–1598, 2010.7. B. Katreniak. Biangular circle formation by asynchronous mobile robots. Structural Information and Communi-cation Complexity , pages 185–199, 2005.8. D.E. Knuth, J.H. Morris Jr, and V.R. Pratt. Fast pattern matching in strings. SIAM journal on computing , 6:323,1977.9. I. Suzuki and M. Yamashita. Distributed anonymous mobile robots: Formation of geometric patterns. SIAMJournal of Computing , 28(4):1347–1363, 1999.10. E. WEISZFELD. Sur le point pour lequel la somme des distances de n points donnes est minimum, t6hoku math. J , 43:355–386, 1937., 43:355–386, 1937.