<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Corresponding author.
" carlo.mereghetti@unimi.it (C. Mereghetti); beatrice.palano@unimi.it (B. Palano); priscilla.raucci@unimi.it
(P. Raucci)</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Uniform Circle Formation for Fully, Semi-, and Asynchronous Opaque Robots with Lights⋆</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Caterina Feletti</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Carlo Mereghetti</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Beatrice Palano</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Priscilla Raucci</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Università degli Studi di Milano</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2022</year>
      </pub-date>
      <volume>000</volume>
      <fpage>0</fpage>
      <lpage>0002</lpage>
      <abstract>
        <p>We study the Uniform Circle Formation (UCF) problem, which asks a swarm of mobile agents, arbitrarily positioned onto the plane, to arrange on the vertices of a regular polygon. Each agent, customarily called robot, runs a distributed algorithm by executing a sequence of look-compute-move cycles. The robot swarm may adhere to three synchronization modes: fully synchronous, semi-synchronous, and asynchronous. Our robots are assumed to be punctiform, anonymous, and indistinguishable by their appearance; they do not store past actions or system snapshots, and they have neither a coordinate system nor chirality in common. Moreover, we consider opaque robots, i.e. they may have obstructed visibility due to collinearities. To cope with these strong limitations, we consider luminous robots, that is, they are equipped with a persistent light assuming diferent colors. This latter peculiarity represents the only way robots have to communicate. For all three synchronization modes, we solve the UCF problem with a constant number of colors. Concerning the running time, our solutions use a constant number of cycles (epochs) for fully synchronous (semi-synchronous) robots, and linearly many epochs in the worst-case for asynchronous robots.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Autonomous mobile robots</kwd>
        <kwd>Opaque robots</kwd>
        <kwd>Luminous robots</kwd>
        <kwd>Pattern formation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        A well consolidated trend in the literature on distributed computing studies models and
algorithms for agent-based computing systems, having great relevance in several real-world
applications. In these systems, a swarm of mobile computing entities, called robots, has to
cooperate to solve a given problem. Robots act under several assumptions on their capabilities and
on a particular scenario. Of great importance are models where robots are autonomous, i.e. they
work without a central control, and operate through a sequence of look-compute-move cycles
in which each robot: (i) takes the snapshot of the system (look), (ii) executes a deterministic
algorithm (compute), and (iii) travels to the computed destination, if any (move) [
        <xref ref-type="bibr" rid="ref1 ref2 ref3 ref4">1, 2, 3, 4</xref>
        ].
      </p>
      <p>Diferent modeling assumptions are considered, afecting the computational power of robots.
For instance, robots may have distinct identifiers (yielding the ability of distinguishing one
robot from another) or, on the contrary, they may be anonymous. They may have a finite but
persistent memory, which is preserved from one look-compute-move cycle to the next one.
If no such memory exists, robots are said to be oblivious. A “compromise” between memory
and obliviousness is given by luminous robots, featuring a persistent light assuming diferent
colors as a means of communication as well. Another step towards realistic models is to work
with no point-like (punctiform model) but fat robots, where all robots are supposed to be solid
discs with a certain radius. Moreover, robots can be transparent, enabling a complete visibility
of the system, or opaque. Depending on the nature of the problem, robots can move either
on the Euclidean plane, or on a graph which can either be known in advanced or not. For
robot activation policy, three models are proposed in the literature: fully synchronous, where all
robots execute their cycle synchronously, semi-synchronous, where a subset of robots executes
its cycle synchronously whereas the others remain idle, and asynchronous, where each robot
acts asynchronously.</p>
      <p>
        Several research eforts focus on very basic classes of geometric pattern formation problems
to be solved within such distributed environments [
        <xref ref-type="bibr" rid="ref10 ref11 ref12 ref13 ref14 ref5 ref6 ref7 ref8 ref9">5, 6, 7, 8, 9, 10, 11, 12, 13, 14</xref>
        ]. In the Uniform
Circle Formation problem, we ask robots to move to vertices of a common regular polygon
whose number of vertices — known or not in advance — is exactly the number of robots in
the system. This problem received a lot of attention from the literature (see, e.g., [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] for a
survey) for both theoretical and practical reasons. From a practical point of view, a regular
layout may present several advantages for a distributed system. E.g., for a network of mobile
agents, it may be convenient to regularly displace them to facilitate communications, visibility
and computations. Every agent is equidistant from its neighbors and has the same view of
the system: this guarantees a fair communication, where there are no evident diferences in
the energy spent in sending messages. Moreover, this uniform pattern allows to implement
distributed algorithms which guarantee a fair load balancing among the agents.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], an algorithm for Uniform Circle Formation is designed, which asymptotically
converges to a regular polygon. In [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], a semi-synchronous solution is given, starting from
particular robot configurations. For asynchronous systems, the problem is solved in [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] for
robots which are punctiform and transparent, and in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] for fat robots with limited visibility
and agreeing on common origin and axes.
      </p>
      <p>
        So far, swarms of transparent robots have been mainly considered. In more realistic models,
robots are assumed to be opaque so that they can obstruct visibility in case of collinearity. In
this realm, the first natural problem to be tackled is Complete Visibility, where robots are
required to displace on the plane so that each robot is visible to all others. For the Complete
Visibility problem, opaqueness is a serious problem. Thus, additional robot capabilities
might be considered. Solutions in the literature are proposed for luminous robots (see, e.g., [
        <xref ref-type="bibr" rid="ref1 ref2 ref20 ref21 ref22 ref23">20,
21, 22, 23, 1, 2</xref>
        ]), i.e., robots with persistent lights assuming diferent colors. In [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], a (log  )
time and (1) colors asynchronous algorithm is designed for Complete Visibility. In
[
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] ([
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]), the problem is solved by a (1) time and colors semi-synchronous (asynchronous)
algorithm. In [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], a fault-tolerant algorithm for Complete Visibility is exhibited.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ], we focused on the Uniform Circle Formation (UCF) problem which, as recalled
above, consists of displacing robots on the vertices of a common regular polygon. In particular,
we exhibited an algorithm solving UCF for a swarm of opaque robots with lights only in the fully
synchronous model, featuring six cycles and a constant number of colors. In the present paper,
instead, we propose algorithms to solve UCF by opaque luminous robots in the fully, semi-, and
asynchronous settings. In particular, the algorithm for the fully synchronous case improves the
one in [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] in that it uses only three instead of six cycles and a constant number of colors. The
semi-synchronous case is solved within constant time (epochs) and a constant number of colors.
Finally, we adapt our algorithmic designs in order to obtain a solution for the asynchronous
model, working in worst-case linear time (epochs) and with a constant number of colors.
      </p>
      <p>Due to page limit, some material and proofs have been omitted.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Preliminaries</title>
      <p>
        We overview the distributed system we shall be dealing with (see, e.g., [
        <xref ref-type="bibr" rid="ref23 ref3 ref4">3, 4, 23</xref>
        ] for details), and
formally state the Uniform Circle Formation (UCF) problem.
      </p>
      <p>Robot swarms. Consider a finite set (swarm) of punctiform computational agents, called robots,
which forms a distributed system located in the plane R2. These robots are: (i) anonymous and
indistinguishable: they do not share any own identifier, (ii) autonomous: there is no central
coordinator, (iii) homogeneous: they execute the same deterministic algorithm, (iv) oblivious:
they do not remember any data about previous actions, (v) mobile: they can freely move on
the plane, provided they never collide, (vi) rigid: they cannot be stopped before reaching the
computed destination (i.e., no adversary can stop robot movement).</p>
      <p>
        The robots are equipped with sensory capabilities to spot the positions of other robots.
Moreover, they are able to compute in finite time and infinite precision any algebraic function
of points in the plane. Also, we assume the following limitations on robots: (i) they do not know
how many they are, (ii) they are disoriented: no agreement among the individual coordinate
systems, nor on unit distance and chirality (roughly speaking, agreement on clockwise direction),
(iii) they are opaque (not transparent): collinearity causes obstructed visibility. Indeed, these
latter three inabilities introduce complications in algorithm design. E.g., due to opacity (iii) and
lack of knowledge of the number of robots (i), each robot may not be able to know whether or
not some robots are hidden at any given time. Clearly, this lack of the knowledge of the number
of robots makes the system easily scalable. Moreover, the disorientation (ii) might cause robot
collisions which may compromise system integrity. To deal with these adversities, we equip
robots with a light displaying a certain number of diferent colors they can communicate through
(see, e.g., [
        <xref ref-type="bibr" rid="ref1 ref2 ref20 ref21 ref22 ref23">1, 2, 20, 21, 22, 23</xref>
        ]). We remark that such a light is the only means robots have to
exchange information.
      </p>
      <p>When taking the system snapshot at any given time, a robot  basically collects the coordinates
—according to its own coordinate system — and the light color for any visible robot (itself included).
So,  operates in look-compute-move cycles, each executed in a single and atomic instant of time
and consisting of the three phases:
• Look:  takes the instantaneous snapshot of the system.
• Compute:  runs a deterministic algorithm which, by having the snapshot as sole input,
computes the destination point of  and the (possibly) new color for the light of .
• Move:  sets its new color and moves straight towards the destination point computed
above, without being stopped (rigidity assumption).</p>
      <p>Diferent models of robot activation and synchronization are studied. In the fully synchronous
model, time is logically subdivided into global rounds. All robots are activated at every round
occurring at each time . Since look-compute-move cycles are executed atomically, all robots
terminate their cycle by the next round. The semi-synchronous model coincides with the fully
synchronous model, except that not all robots are necessarily activated at every round. However,
every robot is activated infinitely often ( fair condition). In the asynchronous model, the robots
are activated independently and each robot executes its look-compute-move cycle within an
unpredictable but finite amount of time. There does not exist a common notion of time. Also,
notice that the configuration perceived by a robot during its look phase — by which the robot
computes its final destination — may significantly change before the robot starts moving.
The UCF problem. We are now ready to present the UCF problem to be solved on fully, semi-,
and asynchronous swarms of opaque robots with lights. Let a fully, semi-, or asynchronous
swarm of  robots be in any given initial valid configuration C0 (i.e. where all the robots occupy
a distinct point of the plane). The UCF problem asks the swarm to move from C0 to a valid
terminal configuration in which robots form a regular -gon.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Some Notions and Results</title>
      <p>Throughout the paper, we will be working with swarms of at least 5 robots. This is due to some
technicalities that can be dealt with, but that will be omitted here.</p>
      <p>Let a set of  robots sit on their smallest enclosing circle (SEC). Two distinct robots ,  on the
⌢
SEC delimit two arcs  (clockwise and counterclockwise). We say that  and  are adjacent
⌢
whenever there is at least one of the two arcs  upon which no other robot sits. Clearly, in a
robot swarm forming a regular -gon, each pair ,  of adjacent robots forms an angle of 2/
with the center  of the SEC, formally ̂︂ = 2/ .</p>
      <p>Definition 1. For any given 2 ≤  ≤ , let (1, 2, . . . , ) be a -tuple of distinct robots
satisfying ˆ︂+1 = 2/ for every 1 ≤  &lt; . Then, (1, 2, . . . , ) is said to be a regular
-tuple. For odd  (even  &gt; 2), the central robot   (the central robots   ,  2 +1) is the pivot
⌈ 2 ⌉ 2
(are the pivots) of the regular -tuple.</p>
      <p>Our strategies to move the robots on the vertices of a regular -gon (inscribed in the SEC)
start by setting particular regular {3, 4, 5}-tuples. These tuples will not move for the whole
computation, while the other robots will move to form the regular -gon. In particular, the
pivots in such regular tuples will be crucial to set the main diameter of the SEC (see Definition 2).
A key result for our algorithms is contained in the following
Theorem 1. Let  be the number of robots lying on the SEC.</p>
      <p>• For odd , there is a diameter passing through a robot and dividing the SEC into two halves,
each having ( − 1)/2 robots.
• For even , there is a diameter dividing the SEC into two halves such that: () either the
diameter passes through a robot and the half-SECs have /2 and (/2) − 1 robots, or () the
diameter passes through two (opposite) robots and the half-SECs have (/2) − 1 robots each.</p>
      <p>Another central role in our algorithms will be played by the notion of a main diameter. We
distinguish between three cases, depending on the type of symmetry possessed by the robot
swarm configuration:
Definition 2.</p>
      <p>• Asymmetry. A diameter settled according to Theorem 1 will be called the main diameter.</p>
      <p>In this case, the main diameter has at least one robot at one endpoint, whose light will assume
color pivot.
• Symmetry with exactly one axis. We call main diameter the diameter laying on the
symmetry axis. In this case, the main diameter does not necessarily pass through a robot
with light of color pivot.
• Rotational symmetry with two sectors. We call main diameter the diameter joining
two opposite robots whose lights have color pivot.</p>
      <p>Let  be a main diameter by Definition 2. Let  be one of the nearest robots to  but not
laying on , and let ℓ(, ) be the distance from  to . Moreover, let  be one of the closest but
not belonging to  vertices of the regular polygon that has to be formed by our robot swarm.
Definition 3. Let ′ and ′′ be the two opposite chords parallel to a main diameter , at distance
min{ℓ(,),ℓ(, )} from . We call ′ and ′′ the safe diameters of .</p>
      <p>2</p>
      <p>For rotational symmetries with more than two sectors, instead of safe diameters we will be
considering safe chords:
Definition 4. Let (1, 1⌢,2) and (3, 2, 4) be two adjacent regular 3-tuples (i.e., without any
⌢
other 3-tuple on the arcs 13 or 24), and suppose that 1 and 2 are not the two endpoints of a
same diameter. The chord joining 1 and 2 is called a safe chord.</p>
      <p>As we will see, a key operation of our algorithms is to set at most three robots on three points
per each half-SEC, such points being actually three vertices of the regular polygon. The robots
reaching such vertices will assume color angle or pivot. In the following theorem, we show that
this can be done in a single cycle, provided robots share a common clockwise direction in the
half-SEC they sit on:
Definition 5. Two or more robots are said to be oriented whenever they agree on a common
clockwise direction.</p>
      <p>For a group of oriented robots, it is always possible to unambiguously spot robots to move
within a cycle (e.g., the last ones according to the common orientation). This is crucial for the
following
Theorem 2. Given three oriented robots and three points on the same half-SEC, it is always
possible for the robots to reach these points in a single cycle and avoiding collisions.</p>
    </sec>
    <sec id="sec-4">
      <title>4. The Algorithm for the Fully Synchronous Case</title>
      <p>
        In a first phase, all robots gain complete visibility of the swarm [
        <xref ref-type="bibr" rid="ref25 ref26">25, 26</xref>
        ], and then move onto
their SEC maintaining the knowledge of the exact number  of robots in the system. The robots
work out this phase by using a set of colors diferent from the colors used later on. This ensures
robots are always aware of the ongoing phase.
      </p>
      <p>
        Let CH be the swarm configuration at this point; without loss of generality, we assume robots
lights having the same color. Clearly, all robots are again vertices of a convex hull. The resulting
dynamic of the algorithm depends on the type of this convex hull, in particular on its degree of
symmetry. First of all, a special case occurs whenever the convex hull is perfect [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ]. In this
case, all robots lie onto the edges of the associated regular -gon (called supporting polygon, SP),
two robots per alternate edges. The goal of our algorithm for this particular configuration is to
slide robots along the edges of the SP, until they reach the vertices of the SP. Given a perfect
convex hull, the SP is unique and computable in a single round: each robot takes its snapshot
(look), checks whether the system configuration forms a perfect convex hull and computes
the SP (compute), eventually slides along the edge until it reaches the correct vertex (move).
Notice that two robots on the same edge head in opposite directions, and therefore no collision
occurs. We remark that a biangular configuration 1 is a special case of perfect convex hull. Also
in [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], the perfect convex hull and biangular configuration are dealt with as special cases at
the beginning of their algorithm.
      </p>
      <p>Let us show how our algorithm works.</p>
      <sec id="sec-4-1">
        <title>4.1. Cycle 1: pivots selection and angle setting</title>
        <p>From  , we start setting the regular tuples which will be the reference points for the movements
of the other robots. Once settled, a regular tuple will not move anymore, thus fixing once and
for all for the whole robot swarm the angle 2/ of the regular -gon to be formed. As observed
above, the dynamic of the algorithm depends on the degree of symmetry of  . We distinguish
between three cases: asymmetry, symmetry with exactly one axis, and rotational symmetry.
Asymmetry. Consider the general case of asymmetry, i.e., no symmetry axis exists in  .
However, there exists at least one diameter passing through a robot and dividing the SEC into
two halves, upon which robots distribute according to Theorem 1. The robot swarm must
agree on one of such diameters, say , which by Definition 2 will be the main diameter. To
ifnd , robots agree on starting from a commonly designated robot  and following a common
orientation on the SEC. To perform this task, we need
Lemma 1. Starting from the configuration  and in case of asymmetry, all robots on the SEC
are able to unambiguously agree on a robot .</p>
        <p>
          So, let  be the robot chosen by the swarm according to Lemma 1 (i.e.,  has the
lexicograph1A set of  ≥ 2 robots forms a biangular configuration if robots lie on a circle  centered in , and two non zero
angles ,  exist such that for every pair  and  of robots consecutive on , we have ̂︂ ∈ {,  } and  and 
alternate clockwise [
          <xref ref-type="bibr" rid="ref29">29</xref>
          ].
ically smallest angle-string2). By the same reasoning, the swarm can also agree on a second
robot  with the lexicographically second-smallest angle-string and such that  and  are not
the endpoints of the same diameter. (Note that such a  can always be found since we are in an
asymmetric configuration.) This allows us to have a starting robot (i.e., ) and an orientation on
the SEC (i.e., the direction from  to ), by which the main diameter  search can be carried on:
each robot starts checking whether the diameter through  satisfies Theorem 1; if not, it tries
with the next robot along the orientation settled by . Clearly, this process makes the whole
swarm to converge on the claimed main diameter . Let  be the position of the robot that
determines . Such a position represents a vertex of the regular polygon to be formed, so the
light of the robot on position  assumes color pivot. Let us now distinguish between having an
odd or even number  of robots in the swarm. Here, we discuss the latter case.
        </p>
        <p>Even . By Theorem 1, one or two robots may sit at the endpoints of . In both cases,
the robot at position  has color pivot. Moreover, in the second case, the opposite robot on 
assumes color angle. Let us now continue discussing the first situation, since the second may be
easily derived. By Theorem 1, one of the half-SEC, say +, has one more robot than the other,
say − . So, a robot in + needs to move to the empty endpoint 3 (opposite to ) of  and
assume color angle. At the same time, two other positions 1 and 2 (regular polygon vertices)
must be reached by two robots. These two positions correspond to the polygon vertices at the
immediate left and right of . The three robots sat at positions 1, , 2 form the regular 3-tuple.</p>
        <p>So, globally, three robots must be moved: two from + and one from − , so that both the
half-SECs contain the same number of robots at the end of this cycle. To determine which robots
in + and − must move at the vertices of the polygon, we use the orientation provided by 
and : for instance, we choose the last robots by such an orientation. Then, Theorem 2 ensures
that the three vertices will be safely reached by the robots. Summing up, each robot  performs:
• Look-Compute:  unambiguously spots the pivot position  on the main diameter.</p>
        <p>Furthermore, it computes the positions 1, 2, 3 and the robots heading to these positions.
• Move: If  is in the pivot position , then it does not move and sets its color as pivot. If 
is one of the robots heading to positions 1, 2, 3, it moves there and sets its color as
angle. Otherwise,  does nothing.</p>
        <p>Symmetry with exactly one axis3. Let  be the axis of symmetry in  . By Definition 2,
the diameter of the SEC lying on  will be the main diameter. We consider three cases: odd ,
even  with two axis pivots, and even  with no axis pivot. Here, we discuss the odd case.</p>
        <p>Odd . Suppose that  passes through a robot, which will be the pivot , and splits the
opposite edge of the polygon. So,  divides the SEC into two symmetric halves, each with
( − 1)/2 robots ( excluded). Now, we aim to create the regular 3-tuple around , as well as
setting two robots at the endpoints of the polygon edge opposite to . Therefore, two robots in
each half-SEC must be moved. Even in this case, Theorem 2 ensures no crossing trajectories.
However, notice that to apply Theorem 2 we need an orientation which in this case can be
trivially settled in each half-SEC as being the direction from the pivot to the other endpoint of
2Let 0, . . . , − 1 be a listing of the  robots on the SEC so that they are consecutive, i.e.,  and +1 are adjacent
for every 0 ≤  &lt;  − 1. Let   = ˆ︁(+1) mod . The corresponding angle-string is  0 · · ·  − 1.
3Two or more symmetry axes yield a rotational symmetry, considered in the next case.
the diameter (namely, the main diameter) laying on the axis . To determine which robots in
each half-SEC must move at the vertices of the polygon, we can choose, e.g., the last robots
according to such an orientation. As in the asymmetric case discussed above, we call 1 and 2
the positions of the two polygon vertices around , while 3 and 4 are the positions of the two
vertices of the polygon edge opposite to . Summing up, each robot  performs:
• Look-Compute:  computes the axis of symmetry  (and hence the main diameter) and
the positions 1, 2, 3, 4 of the polygon vertices.
• Move: If  is on , it sets its color as pivot and stays put. If  is one of the robots heading to
positions 1, 2, 3, 4, it gets there and sets its color as angle. Otherwise,  does nothing.
Rotational symmetry. Let 0, . . . , − 1 be the sequence of robots consecutive on the SEC,
starting from an arbitrary robot. If the related angle-string  0 · · ·  − 1 can be factored into 
identical substrings up to rotation, then the convex hull on the SEC can be divided into  identical
sectors, each being the 2 -rotation of the previous one. Let  = { |  ≡  mod /} be the
class of symmetry which contains / robots sharing the same position in the  diferent sectors.
By using angle-strings, we can unambiguously choose one or two classes of symmetry. For the
sake of simplicity, in what follows we assume a single4 main class of symmetry  . The robots
in  will be the pivots. Note that, in case of rotational symmetry with two sectors, the diameter
joining the two pivots will be the main diameter, by Definition 2. For more than two sectors,
the chords joining pivots in two consecutive sectors will be the safe chords, by Definition 4. We
now show how to set  regular 3-tuples in this -angular configuration. Each robot  performs:
• Look-Compute:  computes the main class of symmetry  = {1, . . . , } and the
positions {1 , 2 |  ∈ {1, . . . , }} of the vertices which will be the nearest to elements
in  in the regular -gon. For a rotational symmetry with two (more than two) sectors,
determining  amounts to settle the main diameter (the safe chords) as well.
• Move: If  belongs to  , it sets its color as pivot. If  is the nearest robot to some 1
or 2 , it sets its color as angle and moves to its nearest destination point 1 or 2 . If two
robots share the same distance from their destination, we can unambiguously choose one
robot (as before) by considering the distance from the pivot. Otherwise,  does nothing.</p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. Cycle 2: rappelling down on the safe diameters or safe chords</title>
        <sec id="sec-4-2-1">
          <title>Let us distinguish among the following cases:</title>
          <p>One or two regular 3-tuples, or 4-tuples. Let us consider the cases of asymmetry, symmetry
with one axis, and rotational symmetry with two sectors. Let  be their main diameter, which
is uniquely determined as observed above. Let ′ and ′′ be their safe diameters. In this cycle,
each robot  performs:
• Look-Compute: If  is pivot or angle, it does nothing. Otherwise,  computes: the
safe diameters ′ and ′′, its destination point  on the SEC, the point ⊥, which is the
projection of  on the safe diameter nearest to .</p>
        </sec>
        <sec id="sec-4-2-2">
          <title>4The case of two classes of symmetry follows by generalization.</title>
          <p>• Move:  sets its color as internal and travels to ⊥.</p>
          <p>Three or more regular 3-tuples. Let us consider the case of  ≥ 3 regular 3-tuples. It is
easy to see that this kind of configuration is a rotational symmetry. In this cycle, each robot 
performs:
• Look-Compute: If  is pivot or angle, it does nothing. Otherwise,  computes: the
nearest safe chord , its destination point  on the SEC, the point ⊥, which is the projection
of  on .</p>
          <p>• Move:  sets its color as internal and travels to ⊥.</p>
        </sec>
        <sec id="sec-4-2-3">
          <title>Our algorithm yields safe robot movements, as stated by the following</title>
          <p>Lemma 2. The rappelling in Cycle 2 of robots on safe diameters and chords yields collision-free
trajectories.</p>
        </sec>
      </sec>
      <sec id="sec-4-3">
        <title>4.3. Cycle 3: reaching the SEC</title>
        <p>At the end of the previous cycle, each robot which is not pivot or angle colored lies on a safe
diameter or on a safe chord. Our strategy was to move the robot to a position where enough
information from the system configuration is available to compute its final destination on the
SEC. So, in this cycle, each robot  performs:
• Look-Compute: If  is pivot or angle colored, it does nothing. Otherwise,  is within the
SEC on a safe chord or a safe diameter, and sees at least three robots on the SEC which
are pivot or angle colored. Thus,  can reconstruct the SEC. So,  computes: the original
SEC upon which it has to travel, the safe chord or safe diameter it currently lies on, its
destination arc , and the projection point  of  on .</p>
        <p>• Move:  sets its color as sec and travels to .</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. The Algorithm for the Semi-Synchronous Case</title>
      <p>Let us outline our algorithm to solve UCF on the semi-synchronous model, pointing out main
diferences with the fully synchronous algorithm presented in the previous section. Again, we
let CH be the swarm configuration where all robots sit onto their SEC, thus knowing the exact
number  of robots in the system. We assume robots lights having the same color. The dynamic
of the algorithm depends on the degree of symmetry of CH .</p>
      <p>It is worth remarking that, for the semi-synchronous model, an appropriate way to measure
time is addressed by the notion of an epoch. By epoch, we mean an amount of time within
which each robot will be activated at least once. This must occur by the fairness condition on
the system, pointed out in Section 2.</p>
      <p>Asymmetry. In the first epoch , with the same dynamic as in the fully synchronous case, we
set the color pivot to the robot through which the main diameter passes, dividing the swarm
into two subs-swarms of the same cardinality.</p>
      <p>In the second epoch, we set the color angle to robots, but now we need two diferent colors
angle and angle_o to fix a common orientation. For odd (even) , we set one (two) regular
3-tuple(s) of type (angle, pivot, angle_o), plus two robots of colors angle_o and angle for odd .
As in the fully synchronous setting, asymmetry always enables to provide a common orientation
for the whole SEC.</p>
      <p>In the third epoch, robots move to the main diameter. By the common orientation, the
robots on a half-SEC can choose one of the two radiuses giving the main diameter. Then, they
move onto such a radius as follows. An activated robot  first checks whether it sits on an -gon
vertex. If so and it is not already colored as pivot, angle, angle_o, then  assumes color sec and
ends its task. Otherwise,  moves onto the radius in a position which univocally determines the
polygon vertex on the SEC to be reached in the next epoch without collisions. At the beginning
of the fourth epoch, all robots are on their own radius, except those on the SEC with light
color pivot, angle, angle_o, sec. Each robot on the radiuses sees at least three lighted robots on
the SEC. So, it computes its target vertex on the SEC by its current position.
Symmetry with exactly one axis. While in the fully synchronous case, pivot and angle colors
are both turned on in the first cycle, here we spend the first epoch to determine only those
robots acting as pivot, and light them with new colors pivot_s1, pivot_s2, pivot_s3. Determining
these robots takes place as in the fully synchronous case, while the new colors must be used
to signal along the whole evolution the fact that the system starts in a configuration with a
single symmetry axis. This latter fact turns out to be crucial since, due to semi-synchronous
dynamics, at a certain instant it maybe the case that the initial symmetry is lost. We set pivot
lights pivot_s1, pivot_s2, pivot_s3 depending on the odd or even number of robots and on the
number of robots (zero, one or two) laying on the symmetry axis at the beginning of this epoch.
Precisely: case a – pivot_s1 is used for an odd number of robots and one robot on the symmetry
axis, case b – pivot_s2 is used for an even number of robots and no pivot on the symmetry axis,
case c – pivot_s3 is used for an even number of robots and two pivots on the symmetry axis. So,
in this first epoch , for cases a and c, the robots on the symmetry axis immediately assume
color pivot_s1 and pivot_s3, respectively, and stay put. For case b, the robots nearest to the
polygon vertices around the symmetry axis move to such positions and assume color pivot_s2
(the case of robots equally distant from these vertices can be dealt with, e.g., by considering
their distance from the symmetry axis).</p>
      <p>Now, the second epoch comes: we move some robots on polygon vertices, and light them
up with angle color. As in the fully synchronous case, robots can agree on an upper and a lower
direction. So, in case a, a regular 3-tuple (angle, pivot_s1, angle) is formed in the upper part of
the SEC, and a regular 4-tuple (angle, angle, angle, angle) in the lower part. For case b, a regular
4-tuple (angle, pivot_s2, pivot_s2, angle) is formed in the upper part of the SEC, and a regular
2-tuple (angle, angle) in the lower part. For case c, a regular 3-tuple (angle, pivot_s3, angle) is
formed in the upper part of the SEC, and a regular 5-tuple (angle, angle, pivot_s3, angle, angle) in
the lower part. We stress that in all these cases, no more than three robots per each half-SEC
move to reach their final destinations. Hence, by Theorem 2, no crossing trajectory exists.</p>
      <p>For the following epochs, we note that, given the type of symmetry we are considering, the
whole swarm cannot share a common sense of orientation. So, in the third epoch, along which
robots move into the SEC, they cannot choose a radius to drop on, as in the asymmetric case.
Instead, as in the fully synchronous case, they can set safe diameters and move onto them on
the orthogonal projections of polygon vertices. At this point, in the fourth epoch, robots get
back to the SEC by leaving perpendicularly from safe diameters. It is worth mentioning that
during this latter epoch, in all three cases a, b, and c at least three robots with lights on are
always visible, so that the SEC can be safely reconstructed.</p>
      <p>Rotational symmetry. In the first epoch , we determine only those robots acting as pivot and
light them with the new color pivot_r. This new color is used to signal along the whole evolution
the fact that the system starts in a rotational symmetry configuration. Let ℎ &gt; 2 be the number
of rotational symmetry sectors (the case ℎ = 2 can be managed by adapting the asymmetric
case technique). The following epochs basically take place as in the fully synchronous case.
During the second epoch, we set ℎ regular 3-tuples (angle, pivot_r, angle); in the third epoch,
robots drop down to the safe chords; in the fourth epoch, all robots get back to the SEC at
polygon vertex positions.</p>
    </sec>
    <sec id="sec-6">
      <title>6. The Algorithm for the Asynchronous Case</title>
      <p>In an asynchronous setting, severe problems may arise whenever robots are activated while
other robots are moving to their destinations. In fact, the awoken robots would take snapshots
which most likely will not be useful to exactly reconstruct some fundamental aspects of the
system (e.g., SEC, main diameters, safe diameters and chords), crucial for their correct motion.
This is basically due to the fact that moving robots can obscure other robots. Moreover, even
if this is not the case, we cannot generally compute the final destination of a moving robot.
Clearly, this could prevent an activated robot from targeting its correct final destination, e.g.,
when reaching angle and pivot positions, or right positions on main diameter, safe diameters
and chords. To overcome the problem of moving robots, new light colors of type moving are
lighted up as soon as a robot starts moving. Thus, we can use our semi-synchronous algorithm
plus the following features, depending on the phases of the algorithm:
• In the first phase, pivots and then angles must be set, according to the same precedence
logic as in the semi-synchronous mode. More precisely, if an activated robot does not see
such points and does not see moving robots (i.e., robots with some moving light colors),
it establishes whether or not it has to move towards a pivot or angle position. In the
afirmative, its light assumes color moving_pivot_s2, or moving_angle, or moving_angle_o
depending on its final destination, and the robot moves there. Once re-activated, a robot
with color moving_x simply changes its color into x ∈ {pivot_s2, angle, angle_o}, and
stands still. Otherwise, if the robot does not have to reach a pivot or angle position, or it
sees some robots with color light moving, then it stays put.
• The second phase starts after setting angles and pivots. Robots enter the SEC on diameters
and chords only if they see no other robot with color moving_internal. Activated robots
that sit on -gon vertices and are not colored by pivot, angle, angle_o, assume color sec
and stay put. When entering the SEC, a robot assumes color moving_internal. Once
re-activated, a robot colored moving_internal simply switches its color into internal
and stays put.
• The third phase starts whenever on the SEC there are only robots with lights on (with
colors pivot, pivot_r, pivot_s1, pivot_s2, pivot_s3, angle, angle_o, sec), and no robot is
moving (i.e., has a light color of type moving). In this phase, robots get back to SEC
from their positions on chords and diameters. A robot travels back only when it sees
three light colors among pivot, angle, angle_o, so that it can reconstruct the SEC. If this is
the case, it determines its -agon vertex position and moves there while assuming the
color sec. Otherwise, it stays put. We notice that, along this phase, our algorithm takes
full advantage of parallelization since the trajectory of moving robots cannot collide, as
explained in the fully and semi-synchronous cases.</p>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusions and Research Outlooks</title>
      <p>
        In this paper, we designed algorithms solving the Uniform Circle Formation (UCF) problem
on opaque luminous robot swarms. Our first algorithm solves the problem for fully synchronous
swarms of robots, by using a constant number of look-compute-move cycles as well as a constant
number of colors. In particular, with respect to our result in [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ], here we reduce the number of
cycles from six to three. In addition, we also study the semi-synchronous and asynchronous
cases. For the former setting, we propose an algorithm featuring a constant number of epochs;
for the latter a linear amount of epochs is required in the worst case. In both settings, we use a
constant number of colors.
      </p>
      <p>Among many possible future researches, we feel it interesting to pinpoint connections with
Forma Language Theory. In the literature, and in the present paper as well, some interesting
formal language aspects show up and, in our opinion, deserve further and more systematic
investigations. For instance, as observed, recognizing certain types of symmetries in the robot
swarm displacement reduces to verifying certain properties enjoyed by angle-strings. This is
equivalent to accepting certain languages, such as the palindrome language, mirror language,
copy language, etc.. Therefore, well established results on the hardness of language acceptance
could carry over to distributed system investigation, stating the possibility or not to solving
certain problems or the minimal amount of computational resources agents must posses to
correctly operate.</p>
      <p>
        In particular, considering the realm of luminous robots, the communication system provided
by a constant number of colors is easily seen to be modeled by a finite state automaton. This
observation might suggest, e.g., that minimizing the number of colors could be related to
minimizing the number of states in finite state automata. More generally, finite state automata
can be examined by so many points of view: descriptional complexity [
        <xref ref-type="bibr" rid="ref30 ref31 ref32 ref33 ref34">30, 31, 32, 33, 34</xref>
        ],
studying the size (number of states) of automata, descriptive complexity [35], studying automata
representation by logic frameworks, quantum computing [36, 37, 38], studying the impact of
the quantum paradigm on finite state machines size reduction. All these and other viewpoints
might bring interesting insights and new tools and research problems in distributed system
investigation.
      </p>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgments</title>
      <p>The authors wish to thank the anonymous referees for their very helpful comments and remarks.
[35] C. Chofrut, A. Malcher, C. Mereghetti, B. Palano, First-order logics: some characterizations
and closure properties, Acta Informatica 49 (2012) 225–248.
[36] C. Mereghetti, B. Palano, Quantum automata for some multiperiodic languages, Theoretical</p>
      <p>Computer Science 387 (2007) 177–186.
[37] M. P. Bianchi, C. Mereghetti, B. Palano, Quantum finite automata: Advances on Bertoni’s
ideas, Theoretical Computer Science 664 (2017) 39–53.
[38] A. Kumar, D. A. de Jesus Pacheco, K. Kaushik, J. J.P.C. Rodrigues, Futuristic view of
the Internet of quantum drones: Review, challenges and research agenda, Vehicular
Communications 36 (2022) 100487.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>M. D'Emidio</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Frigioni</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Navarra</surname>
          </string-name>
          ,
          <article-title>Synchronous robots vs asynchronous lights-enhanced robots on graphs</article-title>
          ,
          <source>Electronic Notes in Theoretical Computer Science</source>
          <volume>322</volume>
          (
          <year>2016</year>
          )
          <fpage>169</fpage>
          -
          <lpage>180</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>M. D'Emidio</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Frigioni</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Navarra</surname>
          </string-name>
          ,
          <article-title>Characterizing the computational power of anonymous mobile robots</article-title>
          ,
          <source>in: 36th IEEE International Conference on Distributed Computing Systems (ICDCS)</source>
          , IEEE,
          <year>2016</year>
          , pp.
          <fpage>293</fpage>
          -
          <lpage>302</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>P.</given-names>
            <surname>Flocchini</surname>
          </string-name>
          , G. Prencipe,
          <string-name>
            <given-names>N.</given-names>
            <surname>Santoro</surname>
          </string-name>
          ,
          <article-title>Distributed computing by oblivious mobile robots</article-title>
          ,
          <source>Synthesis Lectures on Distributed Computing Theory</source>
          <volume>3</volume>
          (
          <year>2012</year>
          )
          <fpage>1</fpage>
          -
          <lpage>185</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>P.</given-names>
            <surname>Flocchini</surname>
          </string-name>
          , G. Prencipe,
          <string-name>
            <given-names>N.</given-names>
            <surname>Santoro</surname>
          </string-name>
          ,
          <article-title>Distributed Computing by Mobile Entities</article-title>
          .
          <source>Current Research in Moving and Computing</source>
          , volume
          <volume>11340</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>R.</given-names>
            <surname>Adhikary</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. K.</given-names>
            <surname>Kundu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Sau</surname>
          </string-name>
          ,
          <article-title>Circle formation by asynchronous opaque robots on infinite grid</article-title>
          ,
          <source>Computer Science</source>
          <volume>22</volume>
          (
          <year>2021</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>K.</given-names>
            <surname>Bose</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. K.</given-names>
            <surname>Kundu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Adhikary</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Sau</surname>
          </string-name>
          ,
          <article-title>Arbitrary pattern formation by asynchronous opaque robots with lights</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>849</volume>
          (
          <year>2021</year>
          )
          <fpage>138</fpage>
          -
          <lpage>158</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>K.</given-names>
            <surname>Bolla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Kovacs</surname>
          </string-name>
          , G. Fazekas,
          <article-title>Gathering of fat robots with limited visibility and without global navigation</article-title>
          ,
          <source>in: Int. Symposium on Evolutionary Computation/Swarm Intelligence and Diferential Evolution (EC/SIDE)</source>
          , volume
          <volume>7269</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2012</year>
          , pp.
          <fpage>30</fpage>
          -
          <lpage>38</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>J.</given-names>
            <surname>Czyzowicz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Gasieniec</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Pelc</surname>
          </string-name>
          ,
          <article-title>Gathering few fat mobile robots in the plane</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>410</volume>
          (
          <year>2009</year>
          )
          <fpage>481</fpage>
          -
          <lpage>499</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>S.</given-names>
            <surname>Das</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Focardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F. L.</given-names>
            <surname>Luccio</surname>
          </string-name>
          , E. Markou,
          <string-name>
            <given-names>M.</given-names>
            <surname>Squarcina</surname>
          </string-name>
          ,
          <article-title>Gathering of robots in a ring with mobile faults</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>764</volume>
          (
          <year>2019</year>
          )
          <fpage>42</fpage>
          -
          <lpage>60</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>S.</given-names>
            <surname>Datta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Dutta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. Gan</given-names>
            <surname>Chaudhuri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Mukhopadhyaya</surname>
          </string-name>
          ,
          <article-title>Circle formation by asynchronous transparent fat robots</article-title>
          ,
          <source>in: 9th International Conference on Distributed Computing and Internet Technology (ICDCIT)</source>
          , volume
          <volume>7753</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2013</year>
          , pp.
          <fpage>195</fpage>
          -
          <lpage>207</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>P.</given-names>
            <surname>Flocchini</surname>
          </string-name>
          , G. Prencipe,
          <string-name>
            <given-names>N.</given-names>
            <surname>Santoro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Widmayer</surname>
          </string-name>
          ,
          <article-title>Gathering of asynchronous robots with limited visibility</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>337</volume>
          (
          <year>2005</year>
          )
          <fpage>147</fpage>
          -
          <lpage>168</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>K.</given-names>
            <surname>Sugihara</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Suzuki</surname>
          </string-name>
          ,
          <article-title>Distributed algorithms for formation of geometric patterns with many mobile robots</article-title>
          ,
          <source>Journal of Robotic Systems</source>
          <volume>13</volume>
          (
          <year>1996</year>
          )
          <fpage>127</fpage>
          -
          <lpage>139</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>I.</given-names>
            <surname>Suzuki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Yamashita</surname>
          </string-name>
          ,
          <article-title>Distributed anonymous mobile robots: Formation of geometric patterns</article-title>
          ,
          <source>SIAM Journal on Computing</source>
          <volume>28</volume>
          (
          <year>1999</year>
          )
          <fpage>1347</fpage>
          -
          <lpage>1363</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M.</given-names>
            <surname>Yamashita</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Suzuki</surname>
          </string-name>
          ,
          <article-title>Characterizing geometric patterns formable by oblivious anonymous mobile robots</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>411</volume>
          (
          <year>2010</year>
          )
          <fpage>2433</fpage>
          -
          <lpage>2453</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>G.</given-names>
            <surname>Viglietta</surname>
          </string-name>
          ,
          <article-title>Uniform circle formation</article-title>
          , in: Distr. Comp. by Mobile Entities.
          <source>Current Research in Moving and Computing</source>
          , volume
          <volume>11340</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2019</year>
          , pp.
          <fpage>83</fpage>
          -
          <lpage>108</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>X.</given-names>
            <surname>Défago</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Konagaya</surname>
          </string-name>
          ,
          <article-title>Circle formation for oblivious anonymous mobile robots with no common sense of orientation</article-title>
          ,
          <source>in: 2nd ACM International Workshop on Principles of Mobile Computing (POMC)</source>
          ,
          <year>2002</year>
          , pp.
          <fpage>97</fpage>
          -
          <lpage>104</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Dieudonné</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Petit</surname>
          </string-name>
          ,
          <article-title>Squaring the circle with weak mobile robots</article-title>
          ,
          <source>in: 19th Int. Symp. on Algorithms and Computation (ISAAC)</source>
          , volume
          <volume>5369</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2008</year>
          , pp.
          <fpage>354</fpage>
          -
          <lpage>365</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>P.</given-names>
            <surname>Flocchini</surname>
          </string-name>
          , G. Prencipe,
          <string-name>
            <given-names>N.</given-names>
            <surname>Santoro</surname>
          </string-name>
          , G. Viglietta,
          <article-title>Distributed computing by mobile robots: uniform circle formation</article-title>
          ,
          <source>Distributed Computing</source>
          <volume>30</volume>
          (
          <year>2017</year>
          )
          <fpage>413</fpage>
          -
          <lpage>457</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>M.</given-names>
            <surname>Mondal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Gan</surname>
          </string-name>
          <string-name>
            <surname>Chaudhuri</surname>
          </string-name>
          ,
          <article-title>Uniform circle formation by swarm robots under limited visibility</article-title>
          ,
          <source>in: 16th International Conference on Distributed Computing and Internet Technology (ICDCIT)</source>
          , volume
          <volume>11969</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2020</year>
          , pp.
          <fpage>420</fpage>
          -
          <lpage>428</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>K.</given-names>
            <surname>Buchin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Flocchini</surname>
          </string-name>
          , I. Kostitsyna,
          <string-name>
            <given-names>T.</given-names>
            <surname>Peters</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Santoro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Wada</surname>
          </string-name>
          ,
          <article-title>Autonomous mobile robots: Refining the computational landscape</article-title>
          ,
          <source>in: 2021 IEEE International Parallel and Distributed Processing Symposium (IPDPS)</source>
          , IEEE,
          <year>2021</year>
          , pp.
          <fpage>576</fpage>
          -
          <lpage>585</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>S.</given-names>
            <surname>Das</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Flocchini</surname>
          </string-name>
          , G. Prencipe,
          <string-name>
            <given-names>N.</given-names>
            <surname>Santoro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Yamashita</surname>
          </string-name>
          ,
          <article-title>The power of lights: synchronizing asynchronous robots using visible bits</article-title>
          ,
          <source>in: 32nd IEEE International Conference on Distributed Computing Systems (ICDCS)</source>
          , IEEE,
          <year>2012</year>
          , pp.
          <fpage>506</fpage>
          -
          <lpage>515</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>G. A. D.</given-names>
            <surname>Luna</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Flocchini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. Gan</given-names>
            <surname>Chaudhuri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Santoro</surname>
          </string-name>
          , G. Viglietta,
          <article-title>Robots with lights: Overcoming obstructed visibility without colliding</article-title>
          ,
          <source>in: 16th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS)</source>
          , volume
          <volume>8756</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2014</year>
          , pp.
          <fpage>150</fpage>
          -
          <lpage>164</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>S.</given-names>
            <surname>Das</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Flocchini</surname>
          </string-name>
          , G. Prencipe,
          <string-name>
            <given-names>N.</given-names>
            <surname>Santoro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Yamashita</surname>
          </string-name>
          ,
          <article-title>Autonomous mobile robots with lights</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>609</volume>
          (
          <year>2016</year>
          )
          <fpage>171</fpage>
          -
          <lpage>184</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>G.</given-names>
            <surname>Sharma</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Vaidyanathan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Trahan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Busch</surname>
          </string-name>
          , S. Rai, (log )
          <article-title>-time complete visibility for asynchronous robots with lights</article-title>
          ,
          <source>in: 2017 IEEE International Parallel and Distributed Processing Symposium (IPDPS)</source>
          , IEEE,
          <year>2017</year>
          , pp.
          <fpage>513</fpage>
          -
          <lpage>522</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>G.</given-names>
            <surname>Sharma</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Vaidyanathan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Trahan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Busch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Rai</surname>
          </string-name>
          ,
          <article-title>Complete visibility for robots with lights in (1) time</article-title>
          , in: 18th
          <source>International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS)</source>
          , volume
          <volume>10083</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2016</year>
          , pp.
          <fpage>327</fpage>
          -
          <lpage>345</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>G.</given-names>
            <surname>Sharma</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Vaidyanathan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Trahan</surname>
          </string-name>
          ,
          <article-title>Constant-time complete visibility for asynchronous robots with lights</article-title>
          ,
          <source>in: 19th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS)</source>
          , volume
          <volume>10616</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2017</year>
          , pp.
          <fpage>265</fpage>
          -
          <lpage>281</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>A.</given-names>
            <surname>Aljohani</surname>
          </string-name>
          , G. Sharma,
          <article-title>Complete visibility for mobile robots with lights tolerating faults</article-title>
          ,
          <source>International Journal of Networking and Computing</source>
          <volume>8</volume>
          (
          <year>2018</year>
          )
          <fpage>32</fpage>
          -
          <lpage>52</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>C.</given-names>
            <surname>Feletti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Mereghetti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Palano</surname>
          </string-name>
          ,
          <article-title>Uniform circle formation for swarms of opaque robots with lights</article-title>
          ,
          <source>in: 20th International Symposium on Stabilizing, Safety, and Security of Distributed Systems (SSS)</source>
          , volume
          <volume>11201</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2018</year>
          , pp.
          <fpage>317</fpage>
          -
          <lpage>332</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Dieudonné</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Petit</surname>
          </string-name>
          ,
          <article-title>Swing words to make circle formation quiescent</article-title>
          ,
          <source>in: 14th International Colloquium on Structural Information and Communication Complexity (SIROCCO)</source>
          , volume
          <volume>4474</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2007</year>
          , pp.
          <fpage>166</fpage>
          -
          <lpage>179</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>A.</given-names>
            <surname>Malcher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Mereghetti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Palano</surname>
          </string-name>
          ,
          <article-title>Descriptional complexity of two-way pushdown automata with restricted head reversals</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>449</volume>
          (
          <year>2012</year>
          )
          <fpage>119</fpage>
          -
          <lpage>133</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>V.</given-names>
            <surname>Gefert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Bednárová</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Mereghetti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Palano</surname>
          </string-name>
          ,
          <article-title>Boolean language operations on nondeterministic automata with a pushdown of constant height</article-title>
          ,
          <source>in: 8th Int. Computer Science Symposium in Russia (CSR)</source>
          , volume
          <volume>7913</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2013</year>
          , pp.
          <fpage>100</fpage>
          -
          <lpage>111</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          [32]
          <string-name>
            <given-names>S.</given-names>
            <surname>Jakobi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Meckel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Mereghetti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Palano</surname>
          </string-name>
          ,
          <article-title>Queue automata of constant length</article-title>
          ,
          <source>in: 15th International Workshop on Descriptional Complexity of Formal Systems (DCFS)</source>
          , volume
          <volume>8031</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2013</year>
          , pp.
          <fpage>124</fpage>
          -
          <lpage>135</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          [33]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Bednárová</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Gefert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Mereghetti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Palano</surname>
          </string-name>
          ,
          <article-title>Boolean language operations on nondeterministic automata with a pushdown of constant height</article-title>
          ,
          <source>Journal of Computer and System Science</source>
          <volume>90</volume>
          (
          <year>2017</year>
          )
          <fpage>99</fpage>
          -
          <lpage>114</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          [34]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kutrib</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Malcher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Mereghetti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Palano</surname>
          </string-name>
          ,
          <article-title>Descriptional complexity of iterated uniform finite-state transducers</article-title>
          ,
          <source>in: 21st International Workshop on Descriptional Complexity of Formal Systems (DCFS)</source>
          , volume
          <volume>11612</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2019</year>
          , pp.
          <fpage>223</fpage>
          -
          <lpage>234</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>