Get 20M+ Full-Text Papers For Less Than $1.50/day. Start a 14-Day Trial for You or Your Team.

Learn More →

SwarmCom: an infra-red-based mobile ad-hoc network for severely constrained robots

SwarmCom: an infra-red-based mobile ad-hoc network for severely constrained robots Swarm robotics investigates groups of relatively simple robots that use decentralized control to achieve a common goal. While the robots of many swarm systems communicate via optical links, the underlying channels and their impact on swarm performance are poorly understood. This paper models the optical channel of a widely used robotic platform, the e-puck. It proposes SwarmCom, a mobile ad-hoc network for mobile robots. SwarmCom has a detector that, with the help of the channel model, was designed to adapt to the environment and nearby robots. Experiments with groups of up to 30 physical e-pucks show that (i) SwarmCom outperforms the state-of-the-art infra-red communication software—libIrcom—in range (up to 3 times further), bit error rate (between 50 and 63% lower), or throughput (up to 8 times higher) and that (ii) the maximum number of communication channels per robot is relatively low, which limits the load per robot even for high-density swarms. Using channel coding, the bit error rate can be further reduced at the expense of throughput. SwarmCom could have profound implications for swarm robotics, contributing to system understanding and reproducibility, while paving the way for novel applications. Keywords Swarm robotics · MANET · Infra-red communication · Channel model · e-puck · libIrcom 1 Introduction work focuses on explicit communication, in which arbitrary data can be exchanged. Communication has been proven beneficial for multi-robot In swarm robotics systems, communication is often used systems that cooperatively perform tasks (Balch and Arkin to enable decentralized control (Hauert et al. 2010; Schmickl 1994). While there are many forms of communication, this et al. 2011; Rubenstein et al. 2014; Garattoni and Birattari 2018). However, designers of such systems face a number of challenges. On many platforms, computational resources are severely limited. For the platform considered in this S.M. Trenkwalder is a recipient of a DOC Fellowship of the Austrian Academy of Sciences. work, for example, 8 kB of primary memory are available, and only a small fraction of this can be dedicated to com- This is one of the several papers published in Autonomous Robots munication, as the robot needs to perform other functions, comprising Special Issue on Robot Communication Challenges: including sensing, control, and actuation. As the number of Real-World Problems, Systems, and Methods. B Roderich Groß Department of Automatic Control and System Engineering, r.gross@sheffield.ac.uk The University of Sheffield, Sheffield, UK Stefan M. Trenkwalder Department of Electronic and Electrical Engineering, The s.trenkwalder@sheffield.ac.uk University of Sheffield, Sheffield, UK Iñaki Esnaola Department of Software Engineering, Federal University of esnaola@sheffield.ac.uk Technology – Paraná (UTFPR), Dois Vizinhos, Brazil Yuri Kaszubowski Lopes iRobot, Pasadena, USA yurilopes@utfpr.edu.br Andreas Kolling akolling@irobot.com 123 94 Autonomous Robots (2020) 44:93–114 robots in a swarm can be large, their communication network makes miniaturization challenging. In comparison, opti- should be decentralized and scalable, and therefore, given cal systems offer good miniaturization potential (e.g., the aforementioned computational constraints, a robot may Hirschman et al. 1996), and are therefore typically found be unable to handle more than a few communication chan- in swarms of centimeter-scale or sub-centimeter-scale nels. Moreover, due to the robots’ mobility, the system has robots (Seyfried et al. 2005; Rubenstein et al. 2012). to cope with changes in the topology of the communication network. While the robots of many swarm systems communicate via Mobile ad-hoc networks (MANETs) are networks of optical links (Seyfried et al. 2005; Caprari and Siegwart mobile devices, called nodes, which connect wirelessly 2005; Gutiérrez et al. 2008; Arvin et al. 2009; Rubenstein without needing additional infrastructure. The nodes in the et al. 2014; McLurkin et al. 2014), the underlying chan- network are all end-points that can exchange messages with nels and their impact on swarm performance are poorly multi-hop routing. A wide range of MANETs have been understood. investigated, from some offering elementary routing to others In this paper, we propose SwarmCom, an optical (infra- addressing all layers of the Internet protocol stack (Macker red) MANET for severely constrained robots. It provides a and Corson 1998; Chlamtac et al. 2003; Conti and Giordano framework that facilitates systematic studies of swarms and 2014). their communication channels and the design of reproducible In swarm robotics, the merits of MANETs have been rec- behavior in swarms. This paper presents two contributions: ognized. Two types of MANETs are commonly deployed— – A channel model that describes the infra-red signals radio-based (Li et al. 2009; Tutuko and Nurmaini 2014) and transmitted and received on a widely used swarm robotics optical (Di Caro et al. 2009; Gutiérrez et al. 2009a; Ruben- platform, the e-puck. This is the first such model for any stein et al. 2012) ones. The underlying technologies have swarm robotics platform. It informs the system designer their advantages and disadvantages: about the physical layer characteristics for the robot com- munication. We explain in detail how to create such a model for the e-puck and demonstrate its impact on swarm communication. – Radio-based communication systems are widespread and – SwarmCom, a MANET for robotic swarms. SwarmCom standardized, making them accessible, inexpensive, and allows groups of robots to communicate using on– compatible with other systems. In comparison, optical off-modulated infra-red signals. It provides a dynamic communication systems are still in early development, detector that, with the help of the channel model, with a lack of standardized off-the-shelf solutions con- was designed to adapt to the environment and nearby tributing to increased development time. However, they robots. Moreover, SwarmCom provides channel coding, are becoming an alternative to radio-based systems, which reduces transmission errors, and a carrier sense requiring less energy per bit and offering higher through- multiple access (CSMA) protocol by which multiple put (Anees and Bhatnagar 2015; Malik and Singh 2015; robots compete for access. SwarmCom outperforms the Khan 2017). state-of-the-art infra-red communication software for e- – Radio waves penetrate many objects, making it possi- pucks—libIrcom (Gutiérrez et al. 2009a)—with respect ble to reach more nodes over larger distances even in to communication range, bit error rate, and throughput. cluttered environments. Nevertheless, most radio-based These improvements lead to a communication system systems have an upper limit on the number of nodes that that is better performing and more reliable, opening up can be connected to a single access point. For example, new possibilities for research on miniature swarms. a Bluetooth (Class 3) master node can be connected with up to 7 slave nodes within a 3 m radius. The high robot The remainder of the paper is organized as follows. Sec- densities found in some swarm robotics systems, with tion 2 describes the e-puck platform. Section 3 presents hundreds to thousands of nodes withina3mradius(Mon- a channel model for the e-puck’s infra-red communi- dada et al. 2009; Rubenstein et al. 2014), exceed the cation hardware and validation experiments. Section 4 capabilities of most wireless networks. Optical signals, describes SwarmCom, including modulation and demodula- on the other hand, are line-of-sight transmissions which tion schemes, channel coding, and media access control. In are obstructed by objects, reducing the range and the Sects. 5 and 6, SwarmCom is evaluated in a series of exper- number of channels. As we will show, this makes the iments, and compared against libIrCom. We first evaluate communication system applicable to high-density sce- narios, hence improving the network’s scalability. Although it is yet to be seen whether suitable for modern communi- – Radio-based communication requires an antenna, the cation systems, it should be noted that antennas can be miniaturized to size of which depends on the carrier’s wavelength. This sub-micron scale (Chen et al. 2013). 123 Autonomous Robots (2020) 44:93–114 95 ir /cm θ /rad i i 13.25 −0.308 23.45 −0.860 33.25 −1.570 43.25 −2.618 53.25 2.618 63.25 1.570 Fig. 1 An e-puck robot from different perspectives: a front, b side, and 73.45 0.860 c top 83.25 0.308 SwarmCom on pairs of static robots, and then on groups of (a) (b) up to seven mobile robots. Section 7 presents the conclusions. Fig. 2 Proximity sensors, with a their locations and orientations illus- 2 e-puck platform trated on the e-puck. The emitting (red) and sensing (blue) directions align with the sensor orientation. b Polar coordinates, (r , θ ), for sensor i i The e-puck (Mondada et al. 2009) is one of the most widely i (Color figure online) used swarm robotics platforms (Cianci et al. 2006; Fischer and Hickinbotham 2010;Lietal. 2014; Chen et al. 2015; Nemec et al. 2017). It was designed at the École Polytech- nique Fédérale de Lausanne (Switzerland) and is available both commercially and under an open-hardware license. The e-puck is shown in Fig. 1. It is cylindrical, with a diam- eter of 7 cm and a height of 5 cm. It has a differential wheel drive, enabling motion over flat terrain. The e-puck contains a single microcontroller unit (MCU), a dsPIC30F6014a. This MCU offers 8 kB of RAM and is, therefore, a severely constrained device of class 1 (Bormann Fig. 3 The e-puck communication network (left) consists of links et al. 2014). The robot has a range of sensors, including between pairs of neighboring robots. For each link (top right), the emit- eight infra-red proximity sensors, a directional camera, three ters of one robot can transmit a signal that is received by the detectors of microphones, and a three-dimensional accelerometer. the other robot. The signal propagates between emitter–detector pairs (bottom right). Due to occlusion, not all emitter–detector pairs are rel- Each proximity sensor is a reflective optical sensor (Tele- evant funken 1999). It has an emitter (infra-red LED) and a detector (phototransistor). To detect the proximity of nearby objects, first, the LED emits light. Any reflected light is then converted with i ∈{1, 2,..., 8}. by the phototransistor into a voltage, which is provided to the MCU. A pair of proximity sensors can be used for commu- 3 e-puck channel model nication. The robot features Bluetooth capability, which it can use This section presents a channel model that formally describes to share data with an external computer. the infra-red signals transmitted and received by a swarm Figure 2 details the polar coordinates (r , θ )ofproxim- i i robotics system. The channel model can be used to form a ity sensor i ∈{1, 2,..., 8} in the robot’s local coordinate communication link between a pair of robots. Moreover, it system. The emitter and detector contained on a sensor are can be used to detect the proximity of nearby objects, where a symmetrically arranged with an offset of ±0.127 cm from loc signal is emitted, and its reflection detected. While the imple- the center. The coordinates of the emitter, p , and detector, e,i loc mentation of the model is specific to the e-puck platform, p , of sensor i are given by: d,i the underlying design process can be applied to other robots using infra-red based communication as well. cos θ − sin θ i i loc p = r + 0.127, (1) Figure 3 shows how a group of robots can form a commu- e,i sin θ cos θ i i nication network. Each node in this network is a robot that cos θ sin θ i i loc can have a link to other robots. As each robot emits/receives p = r + 0.127, (2) d,i sin θ − cos θ i i signals with multiple emitters/detectors, a robot-to-robot link is formed by multiple emitter–detector pairs. See www.e-puck.org. The channel model characterizes: 123 96 Autonomous Robots (2020) 44:93–114 – how a signal is transmitted between an emitter and a by the detector’s directionality, where h (0) = 1 and π π detector (emitter-to-detector model); h (β) = 0 for all β/∈[− , ]. 2 2 – how a signal is transmitted between two robots (robot- In Sect. 3.4, all model coefficients are determined. to-robot model); 3.2 Robot-to-robot model – how a signal is transformed and represented in the receiv- ing robot (measurement model). The second step models the transmission of the signal from multiple emitters to multiple detectors (if present). Consider 3.1 Emitter-to-detector model a signal that is transmitted between a pair of robots. The transmitting robot sends the signal with all its emitters. Each As a first step, characterising a communication system detector of the receiving robot measures the response, which requires a formulation of the signal transmission and recep- is assumed to be instantaneous. tion procedures. Consider a signal that is transmitted between Let the transmitting robot be located at p with orientation an emitter–detector pair, as shown in Fig. 3. The emitter θ . Then, its emitter i ∈{1, 2,... 8} is located at 2 t and detector are located at p , p ∈ R with orientation e d θ ,θ ∈ (−π, π ], respectively. Then, e d cos(θ ) − sin(θ ) t t loc p = p + p . (8) e,i t e,i sin(θ ) cos(θ ) t t α = θ − (p − p ), (3) e d e Similarly, let the receiving robot be located at p with ori- β = (p − p ) − θ , (4) e d d entation θ . Then, its detector j ∈{1, 2,... 8} is located at d = p − p  , (5) ed d e 2 cos(θ ) − sin(θ ) r r loc where α is the emission angle, β is the inclination angle, d ed p = p + p . (9) d, j r d, j sin(θ ) cos(θ ) r r is the Euclidean distance between the emitter and detector, and (v) is the angle between vectors v and [10] . Based on (3)–(9), the received signal y (t ) at detector j Let the transmitted waveform s(t ) : R →{0, 1} for sym- is given by bol s ∈{s , s } be an on–off modulated signal. The received 0 1 signal intensity is y (t ) = min 1, y (t ) , (10) j j y(t ) = h s(t ) + n(t ) with 0 ≤ t < T , (6) y (t ) = h (α ) h (d ) h (β ) s(t ) + n (t ), where T is the duration of the symbol, h is the channel j e i , j m i , j d j ,i j attenuation coefficient, and n(t ) is zero mean additive white (11) Gaussian noise (AWGN), which is a common assumption (Carruthers and Kahn 1997). The channel attenuation coef- α = θ − (p − p ), (12) i , j i d, j e,i ficient is the product of the signal attenuation caused by the d = d = p − p , (13) i , j j ,i d, j e,i emitter (h ), the medium (h ), and the detector (h ): e m d β = (p − p ) − θ , (14) j ,i e,i d, j j h = h (α, β, d ) = h (α) h (d ) h (β). (7) c c ed e m ed d where n (t ) is zero mean AWGN independent of the trans- mitted signal. Coefficients h , h , and h depend on variables α, d , e m d ed and β, respectively (see Fig. 3). In particular, the emitter coef- 3.3 Measurement model ficient, h (α) : (−π, π]→[0, 1], models the attenuation caused by the emitter’s directionality. The maximum signal The third step models the signal demodulation and decision intensity is h (0) = 1 and, due to self-occlusion, h (α) = 0 e e at the receiver. When the (optical) signal, y (t ), reaches π π for all α/∈[− , ]. detector j, a measuring circuit transforms it into an electri- 2 2 The medium coefficient, h (d ) : R →[0, 1], mod- m ed ≥0 cal signal, that is, a voltage. Figure 4 shows the measurement els the attenuation of the signal when propagating through circuit. The incoming signal generates a proportional collec- free space. We assume h (0) = 1 and lim h (d ) = m d →∞ m ed tor current I (t ) at time t. This causes a voltage drop from ed C the supply voltage V at resistor R, which results in the mea- cc Similarly to h (α), the detector attenuation coefficient, e sured collector-emitter voltage h (β) : (−π, π]→[0, 1], models the attenuation caused V (t ) = V − RI (t ). (15) CE cc C If not mentioned otherwise, a global Cartesian coordinate system is assumed. For simplicity, we drop index j throughout this section. 123 Autonomous Robots (2020) 44:93–114 97 where y (t ) is the noise-free received signal given by (10) when n (t ) = 0 and n (t ) is zero-mean AWGN. Note that j m m [k]= M (0) and m = M (1) applies. max min By combining the robot-to-robot model and the measure- Fig. 4 Measuring circuit for an e-puck detector. The circuit is composed ment model, the communication between two robots is fully of a resistor, R, and phototransistor, which are connected in series to described. the robot’s supply voltage, V , and ground, GND cc 3.4 Model identification Therefore, V (t ) is inversely proportional to the intensity CE of the incoming optical signal, y(t ). The final step of modelling is to estimate the model parame- Due to the superposition principle and saturation, the col- ters. To estimate h , h , h , m , m , and n (t ),aseries e m d min max m lector current is of experiments is conducted. I (t ) I (t)> I (t ) C ,∞ C C ,∞ 3.4.1 Experiments with a single robot in ambient light I (t ) = , (16) I (t ) otherwise To characterize the ambient light value, m , and noise, max I (t ) = I (t ) + I (t ), (17) C C ,S C ,0 n (t ), we conduct experiments with a single robot under different environmental conditions. where I is the maximum collector current (i.e., saturation C ,∞ In total, six experiments are conducted. In the first exper- current) of the transistor. I and I are the current compo- C ,S C ,0 iment, measurements are taken in the absence of ambient nents proportional to the signal and ambient light intensities, light—the robot is put in a closed box. In the second, third and respectively. Voltage V (t ) = V − RI (t ), caused CE ,max cc C ,0 fourth experiments, the robot is placed in the center or one of by the ambient light component, is an upper bound. Simi- two corners of the experimental arena; the corners provide larly, voltage V = V − RI is a lower bound, as CE ,min cc C ,∞ partial and complete shade, respectively. In the fifth experi- I is the maximum collector current. Note that V C ,∞ CE ,min ment, the robot is put on a desk; in this situation, the absence is the result of the circuit design and is assumed to be time- of surrounding obstacles is assessed. In the sixth experiment, invariant. the robot is put close to a window (during daytime) to assess The collector-emitter voltage, V (t ) ∈[V , CE CE ,min the influence of natural light. For each experiment, 2000 mea- V (t )], is sampled by an analog-to-digital converter CE ,max surements per detector are taken. (ADC). Let M :[0, V ]→ M be the quantizer that maps V cc Figure 5a shows the measurements’ mean (m ¯ ) for each V (t ) to the measurement space M ={0, 1,..., m }, CE sup detector and experiment. The highest values (approx. 4095) ADC where m = 2 − 1 is determined by the ADC width sup were obtained in the closed-box experiment. Note that (n bits). ADC 12 4095 = 2 − 1 is the maximum value that the 12-bit ADC Considering V ∈[V , V (t )],the lower CE CE ,min CE ,max can provide. The lowest values (approx. 4075) were obtained bound (saturation value), m , and upper bound (ambient min in the experiment near the window. light value), m , of the measurements are defined respec- max To estimate m , we assume that the measurements, max tively as m[k], follow a distribution obtained by discretizing the dis- tribution N (m ,σ ), that is, m +n (t ), where n (t ) ∼ max max m m m = M (V ), (18) min V CE ,min N (0,σ ), and calculate the mean over all experiments, m [k]= M (V (t )). (19) max V CE ,max m = 4080. The ambient light thus causes the measure- max ments, on average, to drop by 15, from 4095 to 4080. The analog-to-digital conversion performs a linear discretiza- Figure 5b shows the sample variances of measurements tion of time and value. Time-discrete values are indicated by for each experiment. As the sample variances do not exceed [·] and k = , where t is the sampling period. 2.5, the noise is modeled as a (worst-case) white Gaussian sample sample process n (t ) ∼ N (0, 2.5). Since y(t ) ∝ I (t ) and by applying (15)–(18), the infra- red light conversion function M :{[0, 1]→ M} maps the 3.4.2 Experiments with a single robot and light source inverted light intensity, 1 − y(t ), linearly to [m , m ] by min max To characterize the saturation value, m , and detector atten- min m[k]= M (y(t )) (20) uation, h (β), we use a single robot and a light source (10 W (m [k]− m ) (1 − y(t )) + m , (21) max min min Note that the ambient light value, m , and noise, n (t ),are solely max m = (m [k]− m ) (1 − y (t )) + m + n (t ) , max min min m dependent on the robot’s environment. (22) 6 The experimental arena is described in Sect. 5.1. 123 98 Autonomous Robots (2020) 44:93–114 1.00 0.10 0.01 π π π π − − 0 2 4 4 2 Inclination angle β [ rad ] (a) (a) 1.00 0.01 110 100 Distance d [cm] ed (b) (b) Fig. 5 Experiments where a robot is placed in one of six ambient light 1.00 conditions while receiving with sensors 1, 2,..., 8. a Mean and b vari- ance of 2000 measurements per condition and sensor 0.75 0.50 0.8 Sensor 0.25 0.6 1 0.00 π π π π 0.4 − − 0 4 8 8 4 Emission angle α [rad ] 0.2 (c) 0.0 Fig. 7 Signal attenuation a at the detector, b through the medium, and 140 145 150 155 160 c at the emitter. The dots show mean values derived from measure- Measurements ments with a inclination angle β, b emitter–detector distance d ,and c ed emission angle, α. The values are approximated by (24), (25), and (27), Fig. 6 Experiments where a light source is placed directly in front of respectively the infra-red detector. Histogram of 2000 measurements per detector Figure 7a shows the attenuation at the detector, h (β). LED). The light source is mounted at the height of the robot’s Due to the homogeneous and planar light, we assume h (α) · detectors, and projects in parallel to the surface (floor). The h (d ) = 1, and that any attenuation of the signal intensity, m ed light source is a flood light, providing a homogeneous and y = 1, is caused by h (β). As a result, planar beam. −1 To estimate m , the robot is placed in front of the light min h (β ) ≈¯y = M m ¯ , (23) d j ,k j ,k j ,k source (2 cm gap), and oriented in one of eight configurations. where m ¯ is the mean of the measurements taken by detec- j ,k In each configuration, one of the robot’s detectors is directly tor j in configuration k, β = θ − φ , and θ is the polar j ,k j k j oriented towards the light source. From this detector, 2000 angle of detector j (see Fig. 2). The detector attenuation measurements are taken. coefficient is approximated by Figure 6 shows the measurement distribution (i.e., N (m ,σ )) for each detector. The mean over all exper- min h (β) =| cos (β) |. (24) iments is 149.80, which is rounded to 150 because the robots d can only represent integers. To identify h (β), the robot is placed 10 cm from the light 3.4.3 Experiments with two robots π 3 π source with an orientation φ ∈{0, ,π, } relative to it. 2 2 For each configuration, 2000 measurements per detector are To characterize the medium attenuation, h (d), and the emit- taken. ter attenuation, h (α), we use two robots that are placed with Likelihood h (α) h (d ) h (β) e m ed d Autonomous Robots (2020) 44:93–114 99 Table 1 Model parameters n 12 Bit length for conversion ADC k −1.54557 Medium attenuation decay o 1.12202 Medium attenuation offset m 4080 Ambient light value max m 150 Saturation value min 7 9 11 13 15 17 19 Distance d [cm] (a) an inter-robot distance of {7, 7.5, 8, 8.5, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 21, 23, 25, 27, 32, 37, 42, 47, 57, 67, 77, 87, 97, 107} cm. Both robots are oriented in such a way that their sensors 1 are facing each other (i.e., α = β = 0 for sensor 1). One robot is sending a constant signal with the emitter of sensor 1 while the other robot is measuring with all its detectors. For each sensor and location, 450 measurements were taken. 7 9 11 13 15 17 19 Figure 7bshows y ¯ for sensor 1 in relation to the emitter– j ,k Distance d [cm] detector distance, d . As sensors 1 of both robots are aligned, ed (b) we assume h (α) · h (β) = 1, and that any attenuation of e d the signal intensity, y = 1, is caused by h (d ). m ed The medium attenuation is approximated by ⎨ k 1 d ≤ o ed m 3000 h (d ) = , (25) m ed o (d ) otherwise m ed 7 9 11 13 15 17 19 where the parameters are k =−1.54557 and o = 1.12202 m m Distance d [cm] (see blue line in Fig. 7b). (c) To estimate the emitter attenuation, h (α), any non- Fig. 8 Model predictions (red) and measurements (blue) from an exper- occluded detector is used (i.e., β < ). As y ¯ j ,k j ,k iment where two static robots, at distance d, exchange information using incorporates all attenuation components, it follows that all their emitter–detector pairs: a sensor 1, b sensor 2, and c sensor 7 (see Fig. 2). Mean values based on 500 measurements. The range of y ¯ j ,k axes was chosen to highlight interesting regions (Color figure online) h (α ) ≈ y = . (26) e j ,k j ,k h (d )h (β ) m k d j ,k Figure 7 shows the estimated light intensity obtained by emitters/detectors. This causes the superposition of multiple each detector j in configuration k. Note that the signal inten- signals from different angles and with different intensities. sity can differ significantly due to model inaccuracies of Furthermore, sensors 1 of the robots are no longer aligned. h (β) when β ≈ . We approximate the emitter attenua- The experiment is performed by placing two robots, facing tion by each other, at a distance, d ∈{7, 7.5, 8, 8.5, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 21, 23, 25, 27, 32, 37, 42, 47, 57, 67, 77, h (α) =| cos(α) |. (27) 87, 97, 107} cm. While one robot is sending a constant signal with all emitters, the other is receiving it with all detectors In summary, Table 1 lists the model parameters. and transmits the measurements to a computer via Bluetooth. At each location, 500 measurements are taken. 3.5 Model evaluation Figure 8 shows the measurement means alongside the model predictions for three detectors. As the predictions While in the previous experiments a robot was transmitting closely match the measurements, the model parameters of with only one emitter, an additional experiment is con- Table 1 are used in the following sections. ducted in which a pair of robots transmit/receive with all Note that the inter-robot distance is measured from and to a center of a robot. This results in a minimum of 7 cm (diameter of the robot). Measurements Measurements Measurements 100 Autonomous Robots (2020) 44:93–114 4 SwarmCom: design and implementation P (S = s ) = P (S = s ) = . (29) 0 1 In this section, we describe SwarmCom, an optical MANET for severely constrained robots. SwarmCom enables a group Let the receiving robot be located at the origin of the coordinate system in an unbound environment and oriented of robots to establish a communication network dynamically. Within this network, pairs of robots transmit information via towards the x-axis. The relative position of the transmit- the infra-red channel, which was modelled in Sect. 3. ting robot is given in polar coordinates by random variable SwarmCom consists of: L = (D,Θ). Distance D is chosen from a gamma distribu- tion (Forbes et al. 2010), D ∼ G(k,ϕ), with shape parameter –a modulation scheme to transmit data; k = 0.045 and scale parameter ϕ = 2.5. Polar angle Θ is –a demodulation scheme to receive data; chosen from a uniform distribution with a probability density – channel coding to detect and/or remove errors in the data function, f (θ ) = for all θ ∈ (−π, π ]. 2 π that were introduced by the channel; and Whereas the receiver robot’s orientation is embedded in – medium access control to manage the resource allocation. Θ, the orientation of the transmitting robot, O, is chosen from a uniform distribution with a probability density function, 4.1 Modulation f (o) = for all o ∈ (−π, π ]. 2 π To convey information between a pair of robots, a signal is 4.2.2 Received signal probability mass function modulated onto the medium—the optical infra-red channel. The robot’s infra-red LEDs can only be switched on or off. The signal probability mass function, referred to as P(M = Consequently, on–off-keying (OOK) is used as the modula- m|S = s), defines the likelihood of obtaining measurement tion scheme. OOK is a binary modulation scheme that maps m given that symbol s is sent, where M ∈ M and S ∈{s , s } 0 1 the information to be transmitted to symbols s and s . Sym- 0 1 are random variables. bols s and s are represented by the absence and presence 0 1 In the absence of the carrier (S = s ), only the ambi- of a carrier (infra-red light) over a certain duration, respec- ent light and noise are present. Therefore, to compute tively. As a consequence, channels in idle state are assumed P (M = m|S = s ), we exploit that M given S = s follows 0 0 to output a s symbol at each time step defined by the sam- N (m ,σ ). max pling period. A prefix consisting of an s symbol is used to To estimate P (M = m | S = s ), each 1000-, 720-, and identify the beginning of data transmission. By default, data 720-quantile of the aforementioned D, Θ, and O is applied is divided into blocks of 15 bits in SwarmCom. to our channel model resulting in 5.184 × 10 synthetic observations per sensor. From these observations, the relative 4.2 Demodulation likelihood is calculated. Then, it is convolved with N (0,σ ) to integrate noise. With the modulated signal conveying data, the demodulation Figure 9ashows P (M = m|S = s ) for each of the eight aims to extract the sufficient statistics from the received signal sensors. As most of a robot’s sensors will not point towards and to decide the sequence of symbols that have been trans- the emitting source, the measurement values for s are sim- mitted. The algorithm that realizes this is hereafter referred ilarly distributed than the measurement values for s (see to as the detector. The maximum likelihood decision rule, Fig. 9b). To reduce the similarity, the min{·} operation is Υ(m) : M → {s , s }, does so optimally: 0 1 applied to all eight sensor measurements, choosing the small- s , if P(S = s |M = m) ≥ P(S = s |M = m) 0 0 1 est one, which originates from the sensor registering the Υ(m) = , highest signal intensity. This operation improves the signal s , otherwise distribution (see dotted lines in Fig. 9a and b) with small (28) computational overhead. where P(S = s|M = m) denotes the probability of symbol s being transmitted given that measurement m is observed. 4.2.3 Decision rule 4.2.1 Assumptions With the estimated signal probability mass functions, the decision rule in (28) can be computed. To avoid computa- To calculate P(S = s|M = m), first, assumptions about the tionally intensive probability calculations, (28) is simplified signal structure and robots’ positions are formulated. to We assume that any sequence of symbols is equally likely. Therefore, the a-priori probability of obtaining a symbol is 123 Autonomous Robots (2020) 44:93–114 101 m = m − m . (33) t ,r max t For m = 4075, we have m = 5. t t ,r 4.3 Channel coding While the demodulation aims to minimize errors for each symbol, channel coding can be used to detect and correct further errors in a message (i.e., a group of symbols) (Glover and Grant 2010). It relates to the noisy-channel coding the- orem (Lapidoth 2009) that states that, for a given level of noise, the probability of error in the data can be made arbi- trarily small, as long as the communication rate is below the Shannon capacity. Whereas encoding methods are often computationally inexpensive, the computational requirements of decoding methods vary significantly. For instance, convolutional codes require probabilistic decoding (e.g., Viterbi decoder) which on severely constrained robots is not practical. In contrast, algebraic codes, such as binary block codes, require less com- putational expensive decoding through matrix or polynomial multiplications. SwarmCom uses binary [n, k] BCH codes (Glover and Grant 2010). These codes organize messages into n-bit long blocks that contain k bits of data. With an increasing number of parity bits, n − k, more errors can be corrected, but this reduces the effective throughput by .SwarmComimple- ments [15, 15], [15, 11], and [15, 1] BCH codes, which can correct up to 0, 1, and 7 errors, respectively. Depending on Fig. 9 Measurement statistics, produced by the channel model, for each the choice of code, either the throughput (i.e., [15, 15])or sensor i of a robot that receives a signal from another robot in the envi- reliability (i.e., [15, 1]) is prioritized. ronment. Symbols s and s correspond to the absence and presence 0 1 The matrices and their generator polynomial are available of the carrier, respectively. a Distribution of measurements for s ; b in the supplementary material website (Trenkwalder et al. distributions of measurements for s and s , prior to (solid) and after 0 1 (dotted) applying the min operator; c decision threshold m to discrim- t 2018). inate between s and s 0 1 4.4 Medium access control s , if m ≥ m 0 t Υ(m) = , (30) When multiple robots share the same medium and try to s , otherwise communicate, their access to the medium requires control to prevent the interference of messages (Guerroumi et al. 2014; where m ,the decision threshold, is defined as Hussain et al. 2017). There are two forms of medium access control (Sesay et al. m = max {m | P(S = s |M ≤ m) ≤ P(S = s |M > m)} . t 0 1 m∈M 2004)—controlled and random access. Controlled medium (31) access divides the medium according to its physical prop- erties (e.g., frequency or time) (Hadded et al. 2015; Glisic With Bayes’ theorem and (29), (31) is transformed into and Leppänen 2013). As every transmission has a dedicated slot, this access control technique is efficient for high net- m = max {m | P(M ≤ m|S = s ) ≤ P(M > m|S = s )} . t 0 1 work loads like streaming. However, as the number of robots m∈M within a swarm can be large, dividing the medium into a (32) large number of frequency bands is often not feasible. Simi- When applying (32) to the data of Sect. 4.2.2,the decision larly, assigning a time-interval to each robot can cause long threshold is set to m = 4075 as shown in Fig. 9c. Further- more, let the relative decision threshold be The modular design of SwarmCom allows new codes to be added. 123 102 Autonomous Robots (2020) 44:93–114 delays. As the delay increases with the number of robots, above by fluorescent light tubes; natural light is prevented this method is not scalable. Furthermore, to allow the join- from entering the room. ing/leaving of robots, the assignment/removal of additional To automate the experiments, we use an external computer slots is commonly done by a central managing unit. that is connected to each robot via a dedicated Bluetooth Random medium access allows robots to compete for link. The experimental process is as follows: access. This competition is performed through local infor- mation. Therefore, these methods are often decentralized, – The external computer generates a message containing 1 and work independently of the number of robots. Note that to 5 blocks of data; each block has 15 bits. The number at high network loads, this method can cause a large number of blocks and their contents are chosen randomly from of collisions. Therefore, its performance would be reduced. uniform distributions. As many swarm robotics systems use infrequent commu- – The message is transmitted to R using Bluetooth. If no nication, SwarmCom provides carrier sense multiple access acknowledgment is received within 500 ms, it is retrans- (CSMA) (Shi et al. 2013; Wang et al. 2017) —a random mitted without affecting the result. medium access control method. A robot listens to the channel – Once the message has been received, R echoes it back before sending a message. If the channel is free, the message to the computer as an acknowledgment, and, at the same is transmitted. Otherwise, the robot waits until the channel time, starts the transmission to R . is free and then repeats the process. As a result, CSMA is – Once R has received the message from R , R transmits r t r decentralized as the robot uses only local information. This it to the computer. method is also scalable as the sensing of the channel state – The computer marks a message as lost if its receipt depends solely on the network load and not on how many was acknowledged by R , but after 1 s no message was robots are listening. received from R . 4.5 Implementation In the experiments, robots R and R are placed in the t r SwarmCom has been implemented on e-pucks running the middle of the arena, oriented towards each other. Initially, open-source OpenSwarm operating system (Trenkwalder their centers are 7 cm apart (the robots are touching each et al. 2016). It uses a time-multiplexed on-board ADC to other). Above experimental process is executed repetitively. sample the voltages of the eight detectors, where bit detec- After obtaining 100 successful messages at a location, R tion is performed for every sample. Furthermore, the detector moves away from R by 1 cm. If R has moved by 100 cm t r determines the ambient light value, m , during the start-up max or 10 consecutive message transmissions have been marked of the robot and adapts m during run-time to compensate max as lost, the process is aborted. In the latter case, we assume for ambient light changes, as detailed in the following sec- that the end of the communication range has been reached. tions. The following performance measures are reported: SwarmCom will be made available under an open-source license in the future. It is currently integrated within the OpenSwarm operating system, which is available at https:// –The communication range is the furthest distance between github.com/OpenSwarm/OpenSwarm/tree/com-experiments. two robots in which 100 messages were received. –The transmission time is the time difference between receiving acknowledgments from R and R , respec- t r 5 SwarmCom: static robots evaluation tively. –The bit rate is the number of transmitted bits divided by In the following, we validate the SwarmCom implementa- the transmission time. tion. This section reports on experiments involving a pair of –The bit error probability, P , is estimated as the Ham- static robots. One robot, R , transmits messages with all its ming distance (i.e., number of altered bits) between data emitters, while the other robot, R , receives them with all its from R and R divided by the bit length of the message. t r detectors. SwamCom performs modulation and demodula- –The probability of error-free transmission, P , for an n- tion. Unless otherwise stated, no channel coding is used. bit message is 5.1 Experimental setup The experiments focus on the quality of the optical infra-red commu- The experiments are conducted in an indoor arena of size nication channel between the robots. For the Bluetooth communication 400 cm × 300 cm. The arena has a grey floor that is sur- with the computer, a simple checksum is used. If errors are detected, rounded by 50 cm tall white walls. It is illuminated from the corresponding messages are retransmitted. 123 Autonomous Robots (2020) 44:93–114 103 0.5 m t,r i n−i P (c) = P (1 − P ) , (34) f e 0.4 10 i =0 25 0.3 50 where c is the maximum number of correctable errors 0.2 250 (due to channel coding). In other words, P is the prob- 0.1 750 ability that no more than c bit-errors occur. As the error 0.0 correcting code can correct up to c errors, with probabil- 10 20 30 40 50 ity P the transmission can be considered error-free. f Distance d [cm] –The probability of message loss, P ,is (a) 0.5 m N t,r P = , (35) 5 0.4 N 10 0.3 where N and N are the number of lost messages and the l 100 0.2 number of messages, respectively. 0.1 0.0 5.2 Experiments with a fixed decision threshold 10 20 30 40 Distance d [cm] We examine the impact of using a fixed relative decision (b) threshold, m ∈{5, 10, 25, 50, 100, 250, 500, 750, 1000, t ,r 2000}. We test three different bit rates: 310 bps (the low- 0.5 t,r est possible bit rate offered by the hardware), 650 bps, and 0.4 10 1160 bps. 0.3 50 Figure 10 shows that the bit error probability is high when 0.2 250 using a fixed decision threshold. The larger the threshold, the 0.1 750 lower the bit error probability gets. However, increasing the 0.0 2000 threshold results in a reduction of sensitivity and hence, of 10 20 30 40 the communication range. Distance d [cm] It is worth noting that the bit error probability does not (c) always monotonically increase with the inter-robot distance, especially when a high bit rate is used. A possible reason Fig. 10 Bit error probability, P , for a detector using a fixed relative could be the measuring circuit. Short distances result in high decision threshold, m , for various distances among two static robots t ,r signal intensities that cause high charges of capacitive ele- (for details see text). Bit-rates are a 310 bps, b 650 bps, and c 1160 bps ments. Small discharging currents could cause slow changes from one symbol to another and, hence, cause inter-symbol interference. Figure 11 shows the bit error probability for the dynamic detector (using a default relative decision threshold of m = t ,r 5.3 Experiments with a dynamic decision threshold 5). The dynamic detector greatly reduces the bit error prob- ability, while retaining a good communication range. For The detection was changed to adapt the threshold depending high bit-rate transmissions, high bit error probabilities are on the received signal intensity dynamically. In the following, observed when the robots are not near each other. This can m and m refer to the default thresholds, as previously t t ,r be avoided by redefining the default relative decision thresh- used in Sect. 4.2.3. For a signal to be detected, its amplitude, old, m , thereby limiting the maximum communication t ,r measurement A, has to be lower than the original threshold, range. m [see (30)]. If this is the case, amplitude A is then used to Additional experiments were performed to investigate the calculate a dynamic decision threshold, role of the default relative decision threshold for the dynamic detector in (36). Figure 12a shows how the choice of m t ,r |m + A| |m − m + A| t max t ,r impacts on the communication range. Figure 12b provides m = = . (36) t ,dyn 2 2 a lower bound for the relative decision threshold to ensure, given a bit rate, that the bit error probability does not exceed, After receiving a message, the dynamic decision threshold is P < 0.01. reset to the default value (m ). Note that the definition ensures m < m . t ,dyn t P P P e e e 104 Autonomous Robots (2020) 44:93–114 0.5 1e-01 Bit Rate Bit Rate 0.4 1e-06 0.3 850 1e-11 0.2 0.1 1e-16 0.0 1e-21 20 40 60 20 40 60 Distance d [cm] Distance d [cm] (a) (a) 1e+00 1e-01 Bit Rate Bit Rate 1e-06 1e-02 850 1e-11 1e-04 1 1e-16 1e-21 20 40 60 810 12 14 Distance d [cm] Distance d [cm] (b) (b) Fig. 11 Bit error probability, P , for a detector using a dynamic rela- Fig. 13 Two static robots, at relative distance d, use channel coding tive decision threshold for various distances among two static robots. to correct c ∈{0, 1, 7} bit errors. Shown is the actual rate (0 bit) and a and b present the bit error probability linearly and logarithmically, predicted rates (1 bit and 7 bit) at which messages get incorrectly trans- respectively mitted, 1 − P , at 310 bps and 1800 bps, respectively. Zero values are not visible, due to the log-scale. a Full range, b zoomed range m d (cm) t,r max 2000 7 1000 8 compute, for each channel code, the probability of correctly 750 9 transmitting a 15-bit message, P , based on the assumption 500 10 250 13 that errors are independent of each other. 100 19 As showninFig. 13, the probability of incorrectly trans- 50 25 mitted messages, 1 − P , decreases by several orders of 25 33 10 45 magnitude when correcting up to 7 errors (for both bit rates). 600 900 1200 1500 5 61 Bit Rate [ bps ] This should make it possible to transmit messages virtually −16 (a) (b) free of error (i.e., 1−P ≤ 10 ) over a range of up to 50 cm. However, the increase in accuracy would come at the expense Fig. 12 The dynamic detector can be initialized with different default of an effectively reduced throughput: = 120 bps and relative decision thresholds. a Shows how the choice of threshold ≈ 21 bps. Compared with coded 1800 bps transmis- impacts on the communication range for 310 bps transmissions. b The blue area (above the curve) shows the default relative decision thresh- sions, the uncoded 310 bps transmission is less prone to olds for which reliable communication (P < 0.01) can be achieved at errors (for d ≥ 11 cm, that is, ≥ 4 cm gap between the a given bit rate (Color figure online) robots), allow a 4-fold communication range, while provid- ing ca. 2.5 times higher throughput. Where throughput is not the primary criterion, however, the application of channel 5.4 Channel coding coding is recommended. SwarmCom uses per default a [15, 15] BCH code (i.e., no channel coding) to maximize throughput. However, the user 5.5 Comparison with libIrcom can select a [15, 11] BCH code (to correct up to c = 1error) or a [15, 1] BCH code (to correct up to c = 7 errors). To To validate SwarmCom, the implementation with a dynamic investigate the impact of channel coding on the accuracy threshold is compared to the state-of-the-art communication and throughput, the three channel codes are compared. We software for the e-puck, libIrcom, which is widely used by consider bit rates of 310 bps and 1800 bps. the swarm robotics community (Murray et al. 2013; Prieto As a starting point (c = 0), we use the experimentally et al. 2010). determined bit error probabilities, P , from the experiments For the libIrcom implementation, identical functions were with a dynamic decision threshold (see Sect. 5.3). We then used to control the robot and exchange messages via Blue- t,r 1 − P f 1 − P f Autonomous Robots (2020) 44:93–114 105 Systems Algorithm 1 Random Walk libIrcom Require: t , the forward moving interval SwarmCom 0.100 1: procedure Move Bit Rate 2: loop 3: Choose a random rotation angle, θ ∈ (−π, π ] 4: Rotate by θ mm 5: Choose a random velocity, v ∈[−128, 128] 0.001 6: repeat 7: Move forward with v 8: until time, t , has elapsed 20 40 60 9: end loop Distance d [cm] (a) Systems 6 SwarmCom: mobile robots evaluation libIrcom SwarmCom 0.6 To validate SwarmCom in more realistic situations, exper- Bit Rate iments with groups of mobile robots are conducted. We 0.4 consider a relatively congested area by choosing a higher 0.2 robot density than in the static robot evaluation. The robots communicate with each other while perform- 0.0 ing a random walk. We consider two modes of communica- 20 40 60 tion: Distance d [cm] – When a robot, R , sends a message via local broadcast, (b) t the message is received by the neighbors of R but does Fig. 14 Comparison of libIrcom (red) with SwarmCom (other colors): not propagate further through the network. It does not a bit error probability, P ,and b probability of message loss, P (Color e l reach robots outside the communication range of R . figure online) Moreover, due to occlusions, it may not reach a robot unless located in the direct line of sight of R . tooth with the computer. The experimental setup was the – When a robot, R , sends a message via flooding,the mes- same as described in Sect. 5.1. sage is also locally transmitted at first. However, every Figure 14a shows the bit error probability, P , as a function robot that has received the message will locally retransmit of the inter-robot distance. The bit rate of libIrcom was exper- it too, but only once. Thereby, the message will propagate imentally determined as 220 bps. At a bit rate of 330 bps, through the network. SwarmCom consistently outperforms libIrcom over all dis- tances. Moreover, it provides a 3-fold higher communication 6.1 Experimental setup range and 50% additional throughput. At other bit rates of up to 850 bps, SwarmCom consistently outperforms libIr- The experiments described in this section are conducted in com over all distances as well, while providing up to ca. a72cm × 72 cm arena. The arena has a grey floor and is 380% additional throughput. surrounded by 30 cm tall white walls. It is illuminated as Figure 14b shows the probability of message loss, P .As described in Sect. 5.1. can be seen, SwarmCom with bit rates of up to 1080 bps By default, we use groups of 2 to 7 e-pucks. Note that we provides a substantially lower probability of message loss automate and monitor the experiments using Bluetooth, and when compared to libIrcom with 220 bps. the Bluetooth protocol does not allow to establish more than We believe that the improved performance of Swarm- seven connections at once. Com can be attributed to a range of factors. SwarmCom We follow a similar experimental protocol to the one used exploits knowledge of the underlying channel model, and in experiments with static robots. The robots use a dynamic offers an adaptive threshold mechanism that allows a robot threshold [see (36)]. Changes in the level of ambient light are to adjust its sensitivity to the strength of signals it perceives, compensated as described in Sect. 4.5. However, the experi- thereby increasing the communication range and reducing mental protocol differs in the following points: the error probability. Moreover, it treats every measurement as a logical 0 or 1, thereby maximizing throughput (though, – The robots are initially placed in random positions and optionally, channel coding can be applied). libIrcom uses orientations, chosen arbitrarily from within the arena; long codewords (and rudimentary channel coding) for the – Each robot performs a simple random walk using Algo- logical 0s and 1s, effectively reducing throughput. rithm 1 (with t = 2 s); P P l e 106 Autonomous Robots (2020) 44:93–114 – For every parameter configuration (number of robots, bit rate, communication range), 1000 messages are to be transmitted (previously 100); – For every message, robot R is randomly selected from the group; – Messages are declared lost after waiting for 2 s (previ- ously 1 s). Number of robots The experiments are recorded by a camera mounted on Fig. 15 The distribution of inter-robot distance, d, between two com- top of the arena. OpenCV (version 3.4) is used to calculate municating robots for experiments with 2, 3, …, 7 robots the robots’ positions, potential occlusion, and inter-robot dis- tances. This is subsequently used to calculate an estimate of the probability of message loss, P , in our static analysis. (i , j ) and matrices. A KS vector contains 6 KS test values, Δ . The procedure to obtain P depends on the mode of com- Each value is calculated by comparing the trials with the munication. If the local broadcast is used, every robot, R , (i , j ) same number of robots. A KS matrix consists of a Δ for in the direct line of sight of R is considered. Once the dis- each combination of trials. tance between the pair of robots is established, an estimate for the the probability of message loss is obtained from the 6.2 Experiments relation shown in Fig. 14b. If flooding is used, all non-cyclic paths from R to any robot, R , are considered. The path of t r This section reports the results of the experiments with mul- transmission is the one candidate path, p, that provides the largest probability of successful transmission, 1 − P .Asa tiple mobile robots. First, the distribution of d is analyzed— l,p recall, the robots perform a random walk without obstacle result, P is defined by avoidance. Then, the performances of the two modes of com- munication are compared. The effects of changing either the P = 1 − max (1 − P ) , (37) l l,p,i velocities, communication range, the bit rate, or the density of robots are analyzed. Finally, SwarmCom is compared to libIrcom. where P is the probability of message loss for hop i of l,p,i path p between R and R . t r 6.2.1 Inter-robot distance To compare the outcome of experiments, a two-sample Kolmogorov–Smirnov test (KS test) is performed (Young The communication performance of any group of robots 1977). This nonparametric statistical test compares two will ultimately depend on the spatial distribution. We deter- empirical cumulative distribution functions (CDF) .Two mine the distribution of inter-robot distances, d, for a single CDFs, F and F , are statistically significantly different 1,n 2,m line-of-sight transmission by analyzing the video recordings. when Robots whose sight of the transmitting robot is occluded are mn 1 α discarded, as they would be unable to establish a communi- (i , j ) (i , j ) Δ = D ≥ − ln , (38) m,n cation channel. m + n 2 2 Figure 15 shows the distribution of distances as a violin (i , j ) plot. The distances appear to be distributed similarly over where D = sup F (x ) − F (x ) is the maximum m,n i ,n j ,m trials for any number of robots. To test whether the distribu- difference of two CDFs. Here, we choose α = 0.01, hence (i , j ) tions are identical, we formulate the null hypothesis that the Δ ≥ 1.628. Note that the obtained distribution of exper- distributions of d are equal. The resulting KS matrix is as iment i is tested to produce statistically larger values than (i , j ) (i , j ) follows: another distribution, j, by changing D to G = m,n m,n (i , j ) max F (x ) − F (x ) . If not stated otherwise, D is x i ,n j ,m m,n ⎛ ⎞ 0 16.941 16.973 7.310 13.336 18.702 used in a KS test (i.e., statistical equality is tested). ⎜ ⎟ 16.941 0 4.281 16.420 12.791 5.135 In this work, an experiment consists of 6 trials, where ⎜ ⎟ ⎜ ⎟ 16.973 4.281 0 16.249 10.632 2.883 each trial has a specific number of robots (i.e., two to seven ⎜ ⎟ ⎜ ⎟ 7.310 16.420 16.249 0 11.587 21.165 robots). To compare two experiments, we report KS vectors ⎜ ⎟ ⎝ ⎠ 13.336 12.791 10.632 11.587 0 11.831 11 18.702 5.135 2.883 21.165 11.831 0 An empirical cumulative distribution function, F , of experiment i i ,k is based on a sample of k measurements. (39) d [cm] Autonomous Robots (2020) 44:93–114 107 1.00 ⎛ ⎞ 00.727 1.504 1.545 1.465 2.111 0.75 ⎜ ⎟ 0.727 0 1.253 1.254 1.110 1.969 ⎜ ⎟ ⎜ ⎟ 1.506 1.253 0 0.407 0.445 1.172 0.50 ⎜ ⎟ ⎜ ⎟ 1.545 1.254 0.403 0 0.376 1.208 ⎜ ⎟ 0.25 ⎝ ⎠ 1.465 1.110 0.445 0.376 0 1.494 2.111 1.969 1.172 1.208 1.494 0 0.00 234567 (41) Number of robots ⎛ ⎞ (a) 00.513 1.204 0.592 1.307 1.918 ⎜ ⎟ 0.513 0 1.021 1.076 2.166 1.775 1.00 ⎜ ⎟ ⎜ ⎟ 1.204 1.021 0 1.299 0.320 0.930 ⎜ ⎟ ⎜ ⎟ 0.75 0.592 1.076 1.299 0 1.426 0.976 ⎜ ⎟ ⎝ ⎠ 1.307 2.166 0.320 1.426 0 0.947 0.50 1.918 1.775 0.930 0.976 0.947 0 0.25 (42) 0.00 for flooding and local broadcast, respectively to (39), it is Number of robots evident that the bit error probability is less affected by the (b) number of robots than the inter-robot distance. In many cases, P does not change significantly with the number of robots. Fig. 16 Experiments by mode of communication: local broadcast (blue) However, when comparing the extremes (2 and 7 robots), P and flooding (red). Shown are a the bit error probability, P ,and b significantly differs. As a result, it can be expected that larger probability of message loss, P , all grouped by the number of robots. Dots indicate mean values and empty circles indicate P ,which was l groups of robots would increasingly impact P . estimated through computer vision analysis (Color figure online) Note that the distribution of P shows two peaks across all experiments (see Fig. 16a). The first peak, at P ≈ 0, is the dominant one. Overall, 68–75% of messages are entirely As all elements exceed 1.628 (i.e., α = 0.01), the null hypoth- error-free. The second peak is at P ≈ 0.4, but far less pro- esis is rejected (highlighted in boldface). Consequently, the nounced. A possible cause could be burst errors , which number of robots significantly changes the distribution of d. could occur when a robot enters or leaves the communica- Note that the peak at 7 cm (see Fig. 15) indicates a collision tion range of another robot during a transmission. between R and R . In that situation, the robots’ movement t r Figure 16b shows the probability of message loss, P .Here is likely to be temporarily restricted. A further restriction is we extend the definition of (35) to multiple receiving robots, provided by the boundaries of the arena. such that P = 0 implies that the message is received by every robot bar the one that originally transmitted it. As the number of robots increases, the flooding mode outperforms the local 6.2.2 Modes of communication broadcast mode, as expected. When using the flooding mode, robots succeed in reaching occluded robots or others outside We investigate both modes of communication—local broad- cast and flooding. For each mode, an experiment is conducted their local neighborhood. The more robots are present, the more likely it is that the whole group is reached. Note that the with 2–7 robots, which transmit with 310 bps over a com- munication range of up to 45 cm (i.e., m = 10). more often a message gets retransmitted, the more likely is t ,r Figure 16a shows the bit error probability, P , obtained that some errors get introduced. However, according to (40), from the experiments. The experiments with and without no such effect was observed in our experiments. flooding are indicated by red and blue, respectively. The cor- From Fig. 16b, it can be seen that P approximates the responding KS vector, trend of P , though with a noticeable offset. The computer vision analysis only identifies the robot that is sending and then calculates P based on the topological information over [0.466, 0.336, 1.361, 0.603, 1.452, 1.131] , (40) a certain time duration. When robots enter or leave the com- munication range during a transmission, P is not affected, shows that the mode of communication has no significant but the computer vision analysis, which decides frame by impact on P for α = 0.01. e frame, will be unable to capture this. To investigate the effects of the number of robots on P ,a KS matrix is calculated for each experiment. When compar- ing the values of the KS matrices, Burst errors involve a sequence of successive faulty bits. P P l e 108 Autonomous Robots (2020) 44:93–114 0.100 0.100 0.075 0.075 0.050 0.050 0.025 0.025 Number of robots Number of robots (a) (a) 1.00 1.00 0.75 0.75 0.50 0.50 0.25 0.25 0.00 0.00 Number of robots Number of robots (b) (b) Fig. 18 Experiments with groups of mobile robots using a restricted Fig. 17 Experiments with groups of mobile robots moving at (red communication range: a the average bit error probability, P for com- 2 3 e disk), (blue square) and (green triangle) of their maximum linear 3 3 munication ranges of 21 cm (red, circle), 33 cm (green, triangle), and and angular velocities. a Average bit error probability, P ; b probability 45 cm (blue, square); b probability of message loss, P . Solid shapes of message loss, P . Solid shapes indicate the means of experimentally indicate the means of experimentally observed values; hollow shapes observed values; hollow shapes indicate the predictions, P (Color figure indicate the predictions, P (Color figure online) online) 6.2.3 Variation of the movement velocities ing the velocity may also increase the likelihood that some To investigate how the velocities of robots impact on com- robots interfere with others or that a communicating robot munication quality, three experiments with 2 to 7 robots are prematurely leaves the range of communication during a conducted. In these experiments the linear and angular veloc- transmission. However, as the number of robots in the swarm 1 2 3 ities of the robot are limited, respectively, to , , and of the increases, more communication paths are formed, and the 3 3 3 maximum value. We refer to these three setups as v , v , and 1 2 effect becomes less prominent. v , respectively. The robots perform a random walk (Algo- rithm 1) and are configured as in the flooding experiment (see Sect. 6.2.2). Figure 17 illustrates the average values of (a) P and (b) 6.2.4 Variation of the communication range P . In both cases, the performance appears to improve as the robots move slower. To investigate the role of the default relative decision thresh- The three velocity settings (v ,v ,v ) lead to three 1 2 3 old (and hence the communication range) in the mobile null hypotheses—that the bit error probability, P ,for the robot scenario, three experiments were conducted. We use respective smaller velocity is larger or equal to the bit m = 75, 25, and 10, which results in a communication t ,r error probability of the respective larger velocity. A signed range of 21 cm, 33 cm, and 45 cm, respectively. The robots Kolmogorov–Smirnov test provides the KS vectors, transmit at a bit rate of 310 bps. Figure 18a illustrates the average values of P .Toinves- [1.631, 2.530, 1.902, 2.606, 3.192, 1.325], (43) tigate the difference between the distributions of P ,we [1.746, 1.721, 2.534, 1.704, 2.306, 1.501], and (44) consider all three pairs of communication ranges. This leads [1.715, 1.780, 0.677, 1.970, 1.108, 0.219], (45) to three null hypotheses—that the bit error probability, P ,for the respective smaller communication range is less or equal to for testing settings v against v , v against v , and v against the bit error probability of the respective larger communica- 1 2 1 3 2 v . As evident from these vectors, the null hypotheses can be tion range. We use a signed Kolmogorov–Smirnov test (Press rejected (with α = 0.01) for trials with few robots. Increas- et al. 2007), which provides KS vectors, P P l e P P l e Autonomous Robots (2020) 44:93–114 109 [0.607, 1.027, 0.521, 1.075, 1.772, 1.799], (46) 0.100 [1.570, 2.266, 2.646, 3.151, 3.610, 4.300], and (47) 0.075 [1.108, 1.440, 1.765, 2.494, 4.271, 4.246], (48) 0.050 for testing communication range 21 cm against 33 cm, 21 cm 0.025 against 45 cm, and 33 cm against 45 cm, respectively. As evident from these vectors, unless the number of robots is Number of robots relatively low, the null hypotheses can be rejected (with (a) α = 0.01). In other words, smaller communication ranges 0.90 produce significantly larger bit error probabilities. We sus- pect that, as the communication range decreases, it becomes 0.85 increasingly unlikely for a pair of mobile robots to remain connected for the duration of a transmission. Robots entering 0.80 or leaving the range while a transmission is in progress will contribute to a higher bit error probability. 0.75 Figure 18b plots the probability of message loss. As expected, the shorter the communication range, the higher the Number of robots losses. Furthermore, P predicts the trend of P consistently, l l (b) which suggests that P mainly dependent on topological Fig. 19 Experiments with groups of mobile robots using various bit information (i.e., communication range). rates: a the average bit error probability, P for bit rates of 1670 bps (red, circle), 1080 bps (green, triangle), and 310 bps (blue, square), respectively. b Probability of message loss, P . Solid shapes indicate 6.2.5 Variation of bit rate the means of experimentally observed values; hollow shapes indicate the predictions, P (Color figure online) SwarmCom can operate with various bit rates, offering a trade-off between throughput and communication range. To investigate the effects on P and P for groups of mobile e l max robots, three experiments with bit rates of 310 bps, 1080 bps, Mean+2σ 8 mean and 1670 bps were conducted. To enable a fair comparison, median Mean−2σ the communication range was restricted to 21 cm. min Figure 19a illustrates the average values of P for each bit 2 rate. To investigate the difference between the distributions 0 50 100 150 200 of P , we consider all three pairs of bit rates. This leads to Robots ρ [ ] R 2 three null hypotheses—that the bit error probability, P ,for (a) the respective larger bit rate is less or equal to the bit error probability of the respective smaller bit rate. We use a signed Kolmogorov–Smirnov, which provides KS vectors, 12 max 9 Mean+2σ mean 6 median [0.609, 0.842, 1.411, 1.057, 1.352, 1.779], (49) Mean−2σ min [0.432, 0.999, 1.013, 1.502, 1.876, 2.371], and (50) [0.432, 0.613, 0.746, 0.898, 0.705, 1.115], (51) 0 204060 Robots ρ [ ] R 2 for testing 310 bps against 1080 bps, 310 bps against (b) 1670 bps, and 1080 bps against 1670 bps, respectively. As evident from these vectors, unless the number of robots is Fig. 20 Number of channels, n , a robot can establish depending on the density of robots in its environment. a Results from simulations in an relatively large, the null hypotheses cannot be rejected (with open environment. b Results from real-robot experiments (shown as box α = 0.01). In other words, the error probabilities are less plot) and simulations (shown as line graph) in a bounded environment. influenced by the bit rate as by the communication range For details, see text (see the previous section). Finally, Fig. 19b indicates that the bit rate does only have a moderate impact on P . n n P P C C l e 110 Autonomous Robots (2020) 44:93–114 Fig. 21 Snapshots taken from the experiments with a 10, b 20, and c robots, which perform a random walk, activate their LEDs whenever 30 e-puck robots within a 72 × 72 cm environment. The static robot they receive the signal. The number of channels that the central robot in the center (green cap) repeatitively transmits a signal. The other establishes are n = 4, 6, and 9, respectively (Color figure online) 6.2.6 Scalability arrangement of the robots), the central robot will have 6 com- munication channels. To investigate the scaling properties of SwarmCom, two stud- The real-robot study examines how the robot density ies were conducted—one in computer simulation, the other impacts on the connectivity in practice. Three experiments using real robots. are conducted with swarms of 10, 20, and 30 physical robots The simulation study examines how the robot density within a 72 × 72 cm space as shown in Fig. 21. This results robots impacts on the connectivity of the network. One robot, placed in the robot densities, ρ ∈{19.3, 38.6, 57.9} . A static at the center of the environment, transmits messages within robot, placed in the center, transmits a series of s symbols. a communication range of 61 cm (see Table 12a). The area All other robots perform a random walk (Algorithm 1). When within the communication range is populated by randomly a moving robot detects the signal, it illuminates its LEDs. placing 1, 2, …, N additional robots, where N = 272 was the Every 30 s, the number of illuminated robots, n , is deter- largest value for which sampling-based positioning proved mined using video recordings from an over-head camera. The efficient. This results in a robot density, ρ ∈ [1, 234] process is repeated 30 times per experiment. In other words, robots . All robots are static. For every tested density, 10000 in total 90 experimental trials were conducted. trials are conducted. In every trial, we determine how many Figure 20b shows that the real-robot experiments are over- channels, n , are established by the central robot. We con- all in good agreement with the simulation results. These sider a channel to be established if a robot can distinguish findings suggest that SwarmCom’s resource allocation and between s and s . In other words, the received signal is below utilization is indeed scalable by design, and, discounting 0 1 threshold m (see Sect. 4). delays, could be applied to swarms of any size. t ,dyn Figure 20a shows the number of connections, n ,asa function of robot density, ρ . It is evident that the number of R 6.2.7 Comparison with libIrcom channels is bounded by a relatively small constant (≈ 15). In other words, while hundreds of other robots may reside Finally, the overall performance is determined by compar- within the communication range of the central robot, the lat- ing SwarmCom to libIrcom in a mobile setup. To allow a ter can only communicate with a relatively small number of fair comparison, SwarmCom is configured to use the same robots, all others being occluded. This greatly reduces the communication range (i.e., 21 cm) and a similar bit rate (i.e., load on any node. In fact, the load is bounded by a constant 310 bps). for any number of robots within the swarm. As the robot Figure 22a compares the distributions of P of both density increases to its maximum, the number of connec- SwarmCom (red) and libIrcom (blue). Overall, 68–75% of tions decreases too, until finally settling at n = 6. In the C messages sent with SwarmCom are error-free, which is 3–5 most dense setting (i.e., corresponding to a near-hexagonal times larger than the corresponding value for libIrcom (14– 20%). libIrcom produces significantly larger values of P We expect the theoretical limit to be around 285; see http://hydra.nat. uni-magdeburg.de/packing/cci/cci285.html, for a solution to a related, To improve comparability, the simulation runs were repeated with but less constrained, problem (Graham et al. 1998). the bounded 72 × 72 cm arena used in the experiments. 123 Autonomous Robots (2020) 44:93–114 111 1.00 only 8 kB of RAM. SwarmCom uses a dynamic detector that, by adapting to the environment and nearby robots, achieves 0.75 orders of magnitudes of improvement in bit error probability. 0.50 In addition, SwarmCom supports various bit rates and com- 0.25 munication ranges to allow users to adapt the system to their needs. Reliable communication is provided up to 61 cm at 0.00 310 bps, and up to 14 cm at 1800 bps. SwarmCom supports channel coding, allowing to correct Number of robots up to 7 bits per 15-bit block. Based on experimental results (a) without channel coding, our analysis predicts that a pair of 0.95 robots, employing a 7-bit correction code, can exchange mes- 0.90 sages over a range of up to 50 cm with a probability of −16 message error of at most 10 . 0.85 To evaluate SwarmCom in a more realistic environment, 0.80 we conducted experiments with up to seven mobile robots. The flooding communication mode was found to dramati- 0.75 cally improve the reachability of other members in the swarm Number of robots (compared to a local broadcast mode) and did so without significantly affecting the bit error probability. Further exper- (b) iments showed that shortening the communication range Fig. 22 Experiments with groups of mobile robots comparing Swarm- increased the bit error probability as well as limited the net- Com (red, circles) and libIrcom (blue, triangles). a Distribution of P ; work reach. b mean of P (solid) and P (hollow) (Color figure online) l l To investigate how SwarmCom scales with the number of robots, we conducted experiments with up to 30 mobile than SwarmCom, as evident from the corresponding KS vec- e-pucks, and computer simulations that increased the robot tor, density until the area corresponding to a robot’s communi- cation range was entirely populated with other robots. The [4.207, 6.397, 7.630, 9.030, 10.316, 12.382] . (52) results from the experiments and simulations were in good agreement. They showed that the maximum number of com- When comparing (46)–(51) to the KS vector, it can be seen munication links per node is relatively low (up to around that changing the bit rate or communication range has a less 15) for any number of robots in the swarm. Consequently, severe impact on the bit error probability than changing to the network’s access and utilization operate independently of libIrcom. the total number of robots and, therefore, should be scalable. Figure 22b plots the probability of message loss for This results from the line-of-sight transmission mechanism SwarmCom (red, circles) and libIrcom (blue, triangles). As in optical communications: any nodes that are occluded will expected, similar communication ranges result in a compa- not be able to establish direct links. In contrast, radio-based rable probability of message losses. signals can reach any node within a communication range. Similar to previous sections, P predicts the trend of P Hence, the maximum robot density must be limited to prevent l l consistently. signal/channel interference. As a result, optical communi- cation provides benefits as offering a reasonable range for miniature robots, and coping well with low-density to high- 7 Conclusion density situations. Finally, SwarmCom was compared to libIrcom—until This paper proposed the first model to describe the infra- present, the only infra-red communication software avail- red signals transmitted and received on a widely used swarm able for the e-puck. We showed that SwarmCom has a 3–5× robotics platform, the e-puck robot. The model can be used larger likelihood of error-free transmissions than libIrcom by pairs of robots to exchange information. The model when using a similar range and bit rate. Overall, SwarmCom was shown to provide a good fit to measurements obtained can provide 0.8–3 times the range, between 1.4 and 8 times higher bit rates, and between 50 and 63% lower bit error from experiments that were different from those used during parameter identification. rates than libIrcom, even when no channel coding is used. This allows the user to prioritize specific parameters—for The second contribution of the paper is SwarmCom, an optical MANET for computationally severely constrained instance, 3 times larger communication range and 63% lower robots and its implementation on the e-puck, a robot with bit error rates are traded for only 1.4 times of the bit-rate. P P l e 112 Autonomous Robots (2020) 44:93–114 In comparison to the static robots experiments, mobile could have dramatic effects on swarm communication. Our robots experiments showed significant degradation of the efforts can be replicated for other communication devices, communication quality for both SwarmCom and libIrcom. and our results should encourage further work along these We showed that higher mobility impacts the system nega- lines. tively and this should be considered during the design of swarming algorithms. For instance, where throughput is not Open Access This article is distributed under the terms of the Creative the primary criterion, channel coding is recommended. To Commons Attribution 4.0 International License (http://creativecomm reliably exchange data at high bit rates, robots could tem- ons.org/licenses/by/4.0/), which permits unrestricted use, distribution, porarily cease motion, or limit their speed, when within and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative communication range, and resume activity thereafter. Commons license, and indicate if changes were made. A current limitation of SwarmCom—compared to most other MANETs—is its rudimentary routing, which forwards any new message to all possible neighbors. Due to the low References throughput, short communication range, and high mobility of the robots, obtaining up-to-date topological information Anees, S., & Bhatnagar, M. R. (2015). Performance evaluation of can present a challenge. Flooding therefore remains a valid decode-and-forward dual-hop asymmetric radio frequency-free option. Where the robots engage in frequent, point-to-point space optical communication system. IET Optoelectronics, 9(5), 232–240. communication, however, the flooding protocol is not scal- Arvin, F., Samsudin, K., & Ramli, A. R. (2009). A short-range infrared able. Further work on optical communication in swarm communication for swarm mobile robots. In 2009 International robotics (hard- and software) could provide more-reliable conference on signal processing systems, (pp. 454–458). IEEE. and higher-throughput systems as shown in Khan (2017), Balch, T., & Arkin, R. C. (1994). Communication in reactive multiagent robotic systems. Autonomous Robots, 1(1), 27–52. Zhang et al. (2018). More advanced systems could then Bormann, C., Ersue, M., Keranen, A. (2014). Terminology for extract topological information faster, making it possible to constrained-node networks (RFC 7228). Internet engineering realize more sophisticated routing protocols, as commonly task force (IETF). https://tools.ietf.org/html/rfc7228. Accessed 24 found in MANETs. A further extension could be for Swarm- May 2016. Caprari, G., Siegwart, R. (2005). Mobile micro-robots ready to use: Com to provide situated communication. In other words, in Alice. In 2005 IEEE/RSJ international conference on intelligent addition to obtaining the content of a message, the receiv- robots and systems, (pp. 3295–3300). ing robot would get informed about the relative position of Carruthers, J. B., & Kahn, J. M. (1997). Modeling of nondirected wire- the emitting robot. This could prove useful, for example, less infrared channels. IEEE Transactions on Communications, 45(10), 1260–1268. to maintain the connectivity with certain robots in the local Chen, C., et al. (2013). Graphene mechanical oscillators with tunable neighborhood. frequency. Nature Nanotechnology, 8(12), 923. Our channel model applies not only to the original e-puck Chen, J., Gauci, M., Li, W., Kolling, A., & Groß, R. (2015). Occlusion- platform but also to the e-puck 2, which was released in based cooperative transport with a swarm of miniature mobile robots. IEEE Transactions on Robotics, 31(2), 307–321. 2018. The e-puck 2 uses the same proximity sensors and Chlamtac, I., Conti, M., & Liu, J. J.-N. (2003). Mobile ad hoc network- measuring circuit as the original version. It should be noted ing: Imperatives and challenges. Ad Hoc Networks, 1(1), 13–64. that SwarmCom can be outperformed, at least in bit rate (up Cianci, C. M., Raemy, X., Pugh, J., & Martinoli, A. (2006). Com- to 5000 bps) and communication range (up to 600 cm), by munication in a swarm of miniature robots: The e-puck as an educational tool for swarm robotics. In Simulation of Adaptive dedicated communication hardware, such as the e-puck range Behavior (SAB-2006), Swarm Robotics Workshop (pp. 103–115). and bearing board (Gutiérrez et al. 2008, 2009a; Millard Berlin, Germany: Springer. et al. 2017). These solutions, however, add additional costs, Conti, M., & Giordano, S. (2014). Mobile ad hoc networking: Mile- weight, and energy demand to the default platform. stones, challenges, and new research directions. IEEE Communi- cations Magazine, 52(1), 85–96. A question that is open for future work involves the anal- Di Caro, G. A., Ducatelle, F., & Gambardella, L. M. (2009). Wireless ysis of OpenSwarm in practical applications. The presented communications for distributed navigation in robot swarms. In analysis relied on the assumption that the robots did not move, Workshops on applications of evolutionary computation (pp. 21– or moved at random. A more realistic scenario could involve 30). Berlin, Germany: Springer. Fischer, V., & Hickinbotham, S. (2010). A metabolic subsumption archi- robots that moved according to the demands of their respec- tecture for cooperative control of the e-puck. Nature inspired coop- tive tasks. erative strategies for optimization (NICSO) (pp. 1–12). Berlin, Overall, we demonstrated that a rigorous communication Germany: Springer. model, coupled with a well-designed communication system Forbes, C., Evans, M., Hastings, N., & Peacock, B. (2010). Gamma distribution (pp. 109–113). Hoboken, NJ: Wiley. Garattoni, L., & Birattari, M. (2018). Autonomous task sequencing in Information obtained through mail exchange with GCtronic (http:// a robot swarm. Science Robotics, 3(20), eaat0430. Glisic, S. G., & Leppänen, P. A. (2013). Wireless communications: www.gctronic.com/); schematics of the e-puck 2 have not been released at the time of writing this paper. TDMA versus CDMA. Berlin: Springer. 123 Autonomous Robots (2020) 44:93–114 113 Glover, I., & Grant, P. M. (2010). Digital communications.New York, Murray, L., Timmis, J., & Tyrrell, A. (2013). Modular self-assembling NY: Pearson Education. and self-reconfiguring e-pucks. Swarm Intelligence, 7(2), 83–113. Graham, R. L., Lubachevsky, B. D., Nurmela, K. J., & Östergård, P. R. Nemec, D., Janota, A., Hruboš, M., Gregor, M., & Pirník, R. (2017). (1998). Dense packings of congruent circles in a circle. Discrete Mutual acoustic identification in the swarm of e-puck robots. Mathematics, 181(1–3), 139–154. Press, W. H., Teukolsky, S. A., Flannery, B. P., Vetterling, W. T. (2007). Guerroumi, M., Pathan, A.-S. K., Badache, N., & Moussaoui, S. (2014). Kolmogorov–Smirnov Test. In Numerical recipes in FORTRAN: On the medium access control protocols suitable for wireless sen- The art of scientific computing (pp. 617–620). Cambridge, UK: sor networks—A survey. International Journal of Communication Cambridge University Press. Networks and Information Security, 6(2), 89–103. Prieto, A., Becerra, J., Bellas, F., & Duro, R. (2010). Open-ended evolu- Gutiérrez, Á., Campo, A., Dorigo, M., Amor, D., Magdalena, L., & tion as a means to self-organize heterogeneous multi-robot systems Monasterio-Huelin, F. (2008). An open localization and local com- in real time. Robotics and Autonomous Systems, 58(12), 1282– munication embodied sensor. Sensors, 8(11), 7545–7563. 1291. Gutiérrez, Á., Campo, A., Dorigo, M., Donate, J., Monasterio-Huelin, Rubenstein, M., Ahler, C., Nagpal, R. (2012). Kilobot: A low cost scal- F., Magdalena, L. (2009a). Open e-puck range & bearing minia- able robot system for collective behaviors. In IEEE international turized board for local communication in swarm robotics. In IEEE conference on robotics and automation (ICRA) (pp. 3293–3298). international conference on robotics and automation (ICRA), (pp. Piscataway, NJ: IEEE. 3111–3116). Piscataway, NJ: IEEE. Rubenstein, M., Cornejo, A., & Nagpal, R. (2014). Programmable self- Gutiérrez, Á., Tuci, E., & Campo, A. (2009b). Evolution of neuro- assembly in a thousand-robot swarm. Science, 345(6198), 795– controllers for robots’ alignment using local communication. 799. International Journal of Advanced Robotic Systems, 6(1), 25–64. Schmickl, T., et al. (2011). CoCoRo–The self-aware underwater swarm. Hadded, M., Muhlethaler, P., Laouiti, A., Zagrouba, R., & Saidane, In IEEE conference on self-adaptive and self-organizing systems L. A. (2015). TDMA-based MAC protocols for vehicular ad hoc workshops (SASOW) (pp. 120–126). Piscataway, NJ: IEEE. networks: A survey, qualitative analysis, and open research issues. Sesay, S., Yang, Z., & He, J. (2004). A survey on mobile ad hoc wireless IEEE Communications Surveys Tutorials, 17(4), 2461–2492. network. Information Technology Journal, 3(2), 168–175. Hauert, S., Leven, S., Zufferey, J.-C., Floreano, D. (2010). Seyfried, J., Szymanski, M., Bender, N., Estaña, R., Thiel, M., Communication-based swarming for flying robots. In Workshop on Wörn, H. (2005). The I-SWARM project: Intelligent small world network science and systems issues in multi-robot autonomy, IEEE autonomous robots for micro-manipulation. In Proceedings of the international conference on robotics and automation (ICRA).Pis- 2004 international conference on swarm robotics (pp. 70–83). cataway, NJ: IEEE. Berlin, Heidelberg: Springer-Verlag. Hirschman, K., Tsybeskov, L., Duttagupta, S., & Fauchet, P. (1996). Shi, Z., Beard, C., & Mitchell, K. (2013). Analytical models for under- Silicon-based visible light-emitting devices integrated into micro- standing space, backoff, and flow correlation in CSMA wireless electronic circuits. Nature, 384(6607), 338. networks. Wireless Networks, 19(3), 393–409. Hussain, F., Anpalagan, A., & Vannithamby, R. (2017). Medium access Telefunken, V. (1999). Reflective optical sensor with transistor output. control techniques in M2M communication: survey and critical Vishay Telefunken. http://zuff.info/doc/TCRT1000.pdf.Rev.A3. review. Transactions on Emerging Telecommunications Technolo- Trenkwalder, S. M., Esnaola, I., Lopes, Y. K., Kolling, A., & Groß, gies, 28(1), e2869. R. (2018). Online supplementary material: SwarmCom - an infra- Khan, L. U. (2017). Visible light communication: Applications, archi- red-based mobile ad-hoc network for severely constrained robots. tecture, standardization and research challenges. Digital Commu- Retrieved July 29, 2019 from https://naturalrobotics.group.shef. nications and Networks, 3(2), 78–88. ac.uk/supp/2018-003/. Lapidoth, A. (2009). A foundation in digital communication.Cam- Trenkwalder, S. M., Lopes, Y. K., Kolling, A., Christensen, A. L., bridge: Cambridge University Press. Prodan, R., & Groß, R. (2016). OpenSwarm: An event-driven Li, S., Kong, R., & Guo, Y. (2014). Cooperative distributed source seek- embedded operating system for miniature robots. In IEEE/RSJ ing by multiple robots: Algorithms and experiments. IEEE/ASME international conference on intelligent robots and systems (IROS) Transactions on Mechatronics, 19(6), 1810–1820. (pp. 4483–4490). Piscataway, NJ: IEEE. Li, Y., Du, S., Kim, Y. (2009). Robot swarm manet cooperation Tutuko, B., & Nurmaini, S. (2014). Swarm robots communication-base based on mobile agent. In 2009 IEEE international conference on mobile ad-hoc network (MANET). Proceeding of the Electrical robotics and biomimetics (ROBIO), (pp. 1416–1420). Piscataway, Engineering Computer Science and Informatics, 1(1), 134–137. NJ: IEEE. Wang, Q., Jaffr-Runser, K., Xu, Y., Scharbarg, J. L., An, Z., & Macker, J. P., & Corson, M. S. (1998). Mobile ad hoc networking and Fraboul, C. (2017). TDMA versus CSMA/CA for wireless mul- the IETF. SIGMOBILE Mobile Computing and Communications tihop communications: A stochastic worst-case delay analysis. Review, 2(1), 9–14. IEEE Transactions on Industrial Informatics, 13(2), 877–887. Malik, A., Singh, P. (2015). Free space optics: Current applications and Young, I. T. (1977). Proof without prejudice: Use of the Kolmogorov– future challenges. International Journal of Optics, 2015, 945483. Smirnov test for the analysis of histograms from flow systems and https://doi.org/10.1155/2015/945483. other sources. Journal of Histochemistry & Cytochemistry, 25(7), McLurkin, J., et al. (2014). A robot system design for low-cost multi- 935–941. robot manipulation. In 2014 IEEE/RSJ international conference Zhang, H., Yang, A., Feng, L., & Guo, P. (2018). Gb/s real-time visible on intelligent robots and systems, (pp. 912–918). light communication system based on white LEDs using T-Bridge Millard, A. G., et al. (2017). The Pi-puck extension board: A Raspberry cascaded pre-equalization circuit. IEEE Photonics Journal, 10(2), Pi interface for the e-puck robot platform. In IEEE/RSJ interna- 1–7. tional conference on intelligent robots and systems (IROS), (pp. 741–748). Piscataway, NJ: IEEE. Publisher’s Note Springer Nature remains neutral with regard to juris- Mondada, F., et al. (2009). The e-puck, a robot designed for education dictional claims in published maps and institutional affiliations. in engineering. In 9th conference on autonomous robot systems and competitions (Vol. 1, pp. 59–65). Castelo Branco, Portugal: IPCB. 123 114 Autonomous Robots (2020) 44:93–114 Stefan M. Trenkwalder was born Andreas Kolling is a principal in Innsbruck, Austria. He grad- scientist and technology lead at uated from the Federal Higher iRobot. He received a Ph.D. degree Technical Institute for Educating in electrical engineering and com- and Experimenting for Chemistry puter science in 2009 from the (HBLVA Rosensteingasse), University of California, Merced, Vienna, Austria in 2006 and was and a M.S. degree in computer awarded an Austrian Ingenieur science in 2006 and B.S. degree in degree in chemistry in 2011. From mathematics in 2004 from Jacobs the Vienna University of Technol- University, Bremen, Germany. ogy (TU Wien), Vienna, Austria, From 2013 to 2016 he was an he was awarded a B.Sc. degree in assistant professor in the Depart- electrical engineering and a BSc ment of Automatic Control and degree in computer engineering Systems Engineering at The Uni- in 2011 and 2012, respectively. versity of Sheffield, UK, where he Since 2013, he is working towards a Ph.D. in swarm robotics at the led the multi-robot systems lab. From 2010 to 2012 he was a post- Natural Robotics Lab at The University of Sheffield. His research doctoral research fellow at the Robotics Institute at Carnegie Mellon resulted, besides others, in the open-source project OpenSwarm, an University and at the University of Pittsburgh. His research interests operating system for swarm robots. His main areas of research inter- include planning, multi-robot systems, and human-robot interaction. ests are embedded operating systems, swarm robotics, distributed sys- He has served as a general co-chair for DARS in 2016, as asso- tems, and optical mobile communication. ciate editor for ICRA and IROS since 2014, and as guest editor for Autonomous Robots for the special issue ’Distributed Robots: From Iñaki Esnaola received the M.S Fundamentals to Applications’. degree in Electrical Engineering from University of Navarra, Spain Roderich Groß received the in 2006 and a Ph.D. in Electrical Diploma degree (summa cum Engineering from University of laude) in computer science from Delaware, Newark, DE in 2011. TU Dortmund, Germany, in 2001 He joined The University of She- and the Ph.D. degree in engineer- ffield in 2013 as a Lecturer and ing sciences from Université libre is since 2018 a Senior Lecturer de Bruxelles, Belgium, in 2007. in the Department of Automatic From 2005 to 2009, he was a Control and Systems Engineering JSPS Fellow with Tokyo Institute of The University of Sheffield. He of Technology, Japan; a Research is also a Visiting Research Col- Associate with University of Bris- laborator in the Department of tol, UK; a Marie Curie Fellow Electrical Engineering of Prince- with Unilever, UK; and a Marie ton University, Princeton, NJ since 2013. In 2010–2011 he was a Curie Fellow with Ecole Poly- Research Intern with Bell Laboratories, Alcatel-Lucent, Holmdel, NJ, technique Federale de Lausanne, and in 2011–2013 he was a Postdoctoral Research Associate at Prince- Switzerland. Since 2010 he has been with the Department of Auto- ton University, Princeton, NJ. Since 2018 he serves as the Power Sys- matic Control and Systems Engineering, The University of Sheffield tem Cyber-security and Privacy Subject Editor for the IET Smart Grid UK, where he is currently a Senior Lecturer. In 2018, he was a Vis- Journal. His research interests include information theory and com- iting Scientist at CSAIL, Massachusetts Institute of Technology. His munication theory with an emphasis on the application to smart grid research interests include swarm robotics, self-reconfigurable robots, problems. evolutionary robotics, and machine learning. He has served as the Yuri Kaszubowski Lopes received General Chair of DARS 2016, Editor of IROS 2015-2019, and as an a BSc degree in Computer Sci- Associate Editor of Swarm Intelligence, IEEE Robotics and Automa- ence in 2010 and an MEng degree tion Letters, and IEEE Computational Intelligence Magazine. in Electrical Engineering in 2012 from Santa Catarina State Univer- sity, Brazil and a PhD degree in Automatic Control and Systems Engineering in 2017 from The University of Sheffield. He was research associate in the Depart- ment of Electronic and Electri- cal Engineering at The University of Sheffield from 2016 to 2019. Since 2019 he has been a Lec- turer in Analysis of Algorithms and Computational Complexity at Federal University of Technology - Paraná, Brazil. His research interests are formal methods, distributed computation, swarm robotics, machine learning applied to control, and model predictive control. http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png Autonomous Robots Springer Journals

SwarmCom: an infra-red-based mobile ad-hoc network for severely constrained robots

Loading next page...
 
/lp/springer-journals/swarmcom-an-infra-red-based-mobile-ad-hoc-network-for-severely-wXhxmTlXif

References (31)

Publisher
Springer Journals
Copyright
Copyright © The Author(s) 2019
Subject
Engineering; Robotics and Automation; Artificial Intelligence; Computer Imaging, Vision, Pattern Recognition and Graphics; Control, Robotics, Mechatronics
ISSN
0929-5593
eISSN
1573-7527
DOI
10.1007/s10514-019-09873-0
Publisher site
See Article on Publisher Site

Abstract

Swarm robotics investigates groups of relatively simple robots that use decentralized control to achieve a common goal. While the robots of many swarm systems communicate via optical links, the underlying channels and their impact on swarm performance are poorly understood. This paper models the optical channel of a widely used robotic platform, the e-puck. It proposes SwarmCom, a mobile ad-hoc network for mobile robots. SwarmCom has a detector that, with the help of the channel model, was designed to adapt to the environment and nearby robots. Experiments with groups of up to 30 physical e-pucks show that (i) SwarmCom outperforms the state-of-the-art infra-red communication software—libIrcom—in range (up to 3 times further), bit error rate (between 50 and 63% lower), or throughput (up to 8 times higher) and that (ii) the maximum number of communication channels per robot is relatively low, which limits the load per robot even for high-density swarms. Using channel coding, the bit error rate can be further reduced at the expense of throughput. SwarmCom could have profound implications for swarm robotics, contributing to system understanding and reproducibility, while paving the way for novel applications. Keywords Swarm robotics · MANET · Infra-red communication · Channel model · e-puck · libIrcom 1 Introduction work focuses on explicit communication, in which arbitrary data can be exchanged. Communication has been proven beneficial for multi-robot In swarm robotics systems, communication is often used systems that cooperatively perform tasks (Balch and Arkin to enable decentralized control (Hauert et al. 2010; Schmickl 1994). While there are many forms of communication, this et al. 2011; Rubenstein et al. 2014; Garattoni and Birattari 2018). However, designers of such systems face a number of challenges. On many platforms, computational resources are severely limited. For the platform considered in this S.M. Trenkwalder is a recipient of a DOC Fellowship of the Austrian Academy of Sciences. work, for example, 8 kB of primary memory are available, and only a small fraction of this can be dedicated to com- This is one of the several papers published in Autonomous Robots munication, as the robot needs to perform other functions, comprising Special Issue on Robot Communication Challenges: including sensing, control, and actuation. As the number of Real-World Problems, Systems, and Methods. B Roderich Groß Department of Automatic Control and System Engineering, r.gross@sheffield.ac.uk The University of Sheffield, Sheffield, UK Stefan M. Trenkwalder Department of Electronic and Electrical Engineering, The s.trenkwalder@sheffield.ac.uk University of Sheffield, Sheffield, UK Iñaki Esnaola Department of Software Engineering, Federal University of esnaola@sheffield.ac.uk Technology – Paraná (UTFPR), Dois Vizinhos, Brazil Yuri Kaszubowski Lopes iRobot, Pasadena, USA yurilopes@utfpr.edu.br Andreas Kolling akolling@irobot.com 123 94 Autonomous Robots (2020) 44:93–114 robots in a swarm can be large, their communication network makes miniaturization challenging. In comparison, opti- should be decentralized and scalable, and therefore, given cal systems offer good miniaturization potential (e.g., the aforementioned computational constraints, a robot may Hirschman et al. 1996), and are therefore typically found be unable to handle more than a few communication chan- in swarms of centimeter-scale or sub-centimeter-scale nels. Moreover, due to the robots’ mobility, the system has robots (Seyfried et al. 2005; Rubenstein et al. 2012). to cope with changes in the topology of the communication network. While the robots of many swarm systems communicate via Mobile ad-hoc networks (MANETs) are networks of optical links (Seyfried et al. 2005; Caprari and Siegwart mobile devices, called nodes, which connect wirelessly 2005; Gutiérrez et al. 2008; Arvin et al. 2009; Rubenstein without needing additional infrastructure. The nodes in the et al. 2014; McLurkin et al. 2014), the underlying chan- network are all end-points that can exchange messages with nels and their impact on swarm performance are poorly multi-hop routing. A wide range of MANETs have been understood. investigated, from some offering elementary routing to others In this paper, we propose SwarmCom, an optical (infra- addressing all layers of the Internet protocol stack (Macker red) MANET for severely constrained robots. It provides a and Corson 1998; Chlamtac et al. 2003; Conti and Giordano framework that facilitates systematic studies of swarms and 2014). their communication channels and the design of reproducible In swarm robotics, the merits of MANETs have been rec- behavior in swarms. This paper presents two contributions: ognized. Two types of MANETs are commonly deployed— – A channel model that describes the infra-red signals radio-based (Li et al. 2009; Tutuko and Nurmaini 2014) and transmitted and received on a widely used swarm robotics optical (Di Caro et al. 2009; Gutiérrez et al. 2009a; Ruben- platform, the e-puck. This is the first such model for any stein et al. 2012) ones. The underlying technologies have swarm robotics platform. It informs the system designer their advantages and disadvantages: about the physical layer characteristics for the robot com- munication. We explain in detail how to create such a model for the e-puck and demonstrate its impact on swarm communication. – Radio-based communication systems are widespread and – SwarmCom, a MANET for robotic swarms. SwarmCom standardized, making them accessible, inexpensive, and allows groups of robots to communicate using on– compatible with other systems. In comparison, optical off-modulated infra-red signals. It provides a dynamic communication systems are still in early development, detector that, with the help of the channel model, with a lack of standardized off-the-shelf solutions con- was designed to adapt to the environment and nearby tributing to increased development time. However, they robots. Moreover, SwarmCom provides channel coding, are becoming an alternative to radio-based systems, which reduces transmission errors, and a carrier sense requiring less energy per bit and offering higher through- multiple access (CSMA) protocol by which multiple put (Anees and Bhatnagar 2015; Malik and Singh 2015; robots compete for access. SwarmCom outperforms the Khan 2017). state-of-the-art infra-red communication software for e- – Radio waves penetrate many objects, making it possi- pucks—libIrcom (Gutiérrez et al. 2009a)—with respect ble to reach more nodes over larger distances even in to communication range, bit error rate, and throughput. cluttered environments. Nevertheless, most radio-based These improvements lead to a communication system systems have an upper limit on the number of nodes that that is better performing and more reliable, opening up can be connected to a single access point. For example, new possibilities for research on miniature swarms. a Bluetooth (Class 3) master node can be connected with up to 7 slave nodes within a 3 m radius. The high robot The remainder of the paper is organized as follows. Sec- densities found in some swarm robotics systems, with tion 2 describes the e-puck platform. Section 3 presents hundreds to thousands of nodes withina3mradius(Mon- a channel model for the e-puck’s infra-red communi- dada et al. 2009; Rubenstein et al. 2014), exceed the cation hardware and validation experiments. Section 4 capabilities of most wireless networks. Optical signals, describes SwarmCom, including modulation and demodula- on the other hand, are line-of-sight transmissions which tion schemes, channel coding, and media access control. In are obstructed by objects, reducing the range and the Sects. 5 and 6, SwarmCom is evaluated in a series of exper- number of channels. As we will show, this makes the iments, and compared against libIrCom. We first evaluate communication system applicable to high-density sce- narios, hence improving the network’s scalability. Although it is yet to be seen whether suitable for modern communi- – Radio-based communication requires an antenna, the cation systems, it should be noted that antennas can be miniaturized to size of which depends on the carrier’s wavelength. This sub-micron scale (Chen et al. 2013). 123 Autonomous Robots (2020) 44:93–114 95 ir /cm θ /rad i i 13.25 −0.308 23.45 −0.860 33.25 −1.570 43.25 −2.618 53.25 2.618 63.25 1.570 Fig. 1 An e-puck robot from different perspectives: a front, b side, and 73.45 0.860 c top 83.25 0.308 SwarmCom on pairs of static robots, and then on groups of (a) (b) up to seven mobile robots. Section 7 presents the conclusions. Fig. 2 Proximity sensors, with a their locations and orientations illus- 2 e-puck platform trated on the e-puck. The emitting (red) and sensing (blue) directions align with the sensor orientation. b Polar coordinates, (r , θ ), for sensor i i The e-puck (Mondada et al. 2009) is one of the most widely i (Color figure online) used swarm robotics platforms (Cianci et al. 2006; Fischer and Hickinbotham 2010;Lietal. 2014; Chen et al. 2015; Nemec et al. 2017). It was designed at the École Polytech- nique Fédérale de Lausanne (Switzerland) and is available both commercially and under an open-hardware license. The e-puck is shown in Fig. 1. It is cylindrical, with a diam- eter of 7 cm and a height of 5 cm. It has a differential wheel drive, enabling motion over flat terrain. The e-puck contains a single microcontroller unit (MCU), a dsPIC30F6014a. This MCU offers 8 kB of RAM and is, therefore, a severely constrained device of class 1 (Bormann Fig. 3 The e-puck communication network (left) consists of links et al. 2014). The robot has a range of sensors, including between pairs of neighboring robots. For each link (top right), the emit- eight infra-red proximity sensors, a directional camera, three ters of one robot can transmit a signal that is received by the detectors of microphones, and a three-dimensional accelerometer. the other robot. The signal propagates between emitter–detector pairs (bottom right). Due to occlusion, not all emitter–detector pairs are rel- Each proximity sensor is a reflective optical sensor (Tele- evant funken 1999). It has an emitter (infra-red LED) and a detector (phototransistor). To detect the proximity of nearby objects, first, the LED emits light. Any reflected light is then converted with i ∈{1, 2,..., 8}. by the phototransistor into a voltage, which is provided to the MCU. A pair of proximity sensors can be used for commu- 3 e-puck channel model nication. The robot features Bluetooth capability, which it can use This section presents a channel model that formally describes to share data with an external computer. the infra-red signals transmitted and received by a swarm Figure 2 details the polar coordinates (r , θ )ofproxim- i i robotics system. The channel model can be used to form a ity sensor i ∈{1, 2,..., 8} in the robot’s local coordinate communication link between a pair of robots. Moreover, it system. The emitter and detector contained on a sensor are can be used to detect the proximity of nearby objects, where a symmetrically arranged with an offset of ±0.127 cm from loc signal is emitted, and its reflection detected. While the imple- the center. The coordinates of the emitter, p , and detector, e,i loc mentation of the model is specific to the e-puck platform, p , of sensor i are given by: d,i the underlying design process can be applied to other robots using infra-red based communication as well. cos θ − sin θ i i loc p = r + 0.127, (1) Figure 3 shows how a group of robots can form a commu- e,i sin θ cos θ i i nication network. Each node in this network is a robot that cos θ sin θ i i loc can have a link to other robots. As each robot emits/receives p = r + 0.127, (2) d,i sin θ − cos θ i i signals with multiple emitters/detectors, a robot-to-robot link is formed by multiple emitter–detector pairs. See www.e-puck.org. The channel model characterizes: 123 96 Autonomous Robots (2020) 44:93–114 – how a signal is transmitted between an emitter and a by the detector’s directionality, where h (0) = 1 and π π detector (emitter-to-detector model); h (β) = 0 for all β/∈[− , ]. 2 2 – how a signal is transmitted between two robots (robot- In Sect. 3.4, all model coefficients are determined. to-robot model); 3.2 Robot-to-robot model – how a signal is transformed and represented in the receiv- ing robot (measurement model). The second step models the transmission of the signal from multiple emitters to multiple detectors (if present). Consider 3.1 Emitter-to-detector model a signal that is transmitted between a pair of robots. The transmitting robot sends the signal with all its emitters. Each As a first step, characterising a communication system detector of the receiving robot measures the response, which requires a formulation of the signal transmission and recep- is assumed to be instantaneous. tion procedures. Consider a signal that is transmitted between Let the transmitting robot be located at p with orientation an emitter–detector pair, as shown in Fig. 3. The emitter θ . Then, its emitter i ∈{1, 2,... 8} is located at 2 t and detector are located at p , p ∈ R with orientation e d θ ,θ ∈ (−π, π ], respectively. Then, e d cos(θ ) − sin(θ ) t t loc p = p + p . (8) e,i t e,i sin(θ ) cos(θ ) t t α = θ − (p − p ), (3) e d e Similarly, let the receiving robot be located at p with ori- β = (p − p ) − θ , (4) e d d entation θ . Then, its detector j ∈{1, 2,... 8} is located at d = p − p  , (5) ed d e 2 cos(θ ) − sin(θ ) r r loc where α is the emission angle, β is the inclination angle, d ed p = p + p . (9) d, j r d, j sin(θ ) cos(θ ) r r is the Euclidean distance between the emitter and detector, and (v) is the angle between vectors v and [10] . Based on (3)–(9), the received signal y (t ) at detector j Let the transmitted waveform s(t ) : R →{0, 1} for sym- is given by bol s ∈{s , s } be an on–off modulated signal. The received 0 1 signal intensity is y (t ) = min 1, y (t ) , (10) j j y(t ) = h s(t ) + n(t ) with 0 ≤ t < T , (6) y (t ) = h (α ) h (d ) h (β ) s(t ) + n (t ), where T is the duration of the symbol, h is the channel j e i , j m i , j d j ,i j attenuation coefficient, and n(t ) is zero mean additive white (11) Gaussian noise (AWGN), which is a common assumption (Carruthers and Kahn 1997). The channel attenuation coef- α = θ − (p − p ), (12) i , j i d, j e,i ficient is the product of the signal attenuation caused by the d = d = p − p , (13) i , j j ,i d, j e,i emitter (h ), the medium (h ), and the detector (h ): e m d β = (p − p ) − θ , (14) j ,i e,i d, j j h = h (α, β, d ) = h (α) h (d ) h (β). (7) c c ed e m ed d where n (t ) is zero mean AWGN independent of the trans- mitted signal. Coefficients h , h , and h depend on variables α, d , e m d ed and β, respectively (see Fig. 3). In particular, the emitter coef- 3.3 Measurement model ficient, h (α) : (−π, π]→[0, 1], models the attenuation caused by the emitter’s directionality. The maximum signal The third step models the signal demodulation and decision intensity is h (0) = 1 and, due to self-occlusion, h (α) = 0 e e at the receiver. When the (optical) signal, y (t ), reaches π π for all α/∈[− , ]. detector j, a measuring circuit transforms it into an electri- 2 2 The medium coefficient, h (d ) : R →[0, 1], mod- m ed ≥0 cal signal, that is, a voltage. Figure 4 shows the measurement els the attenuation of the signal when propagating through circuit. The incoming signal generates a proportional collec- free space. We assume h (0) = 1 and lim h (d ) = m d →∞ m ed tor current I (t ) at time t. This causes a voltage drop from ed C the supply voltage V at resistor R, which results in the mea- cc Similarly to h (α), the detector attenuation coefficient, e sured collector-emitter voltage h (β) : (−π, π]→[0, 1], models the attenuation caused V (t ) = V − RI (t ). (15) CE cc C If not mentioned otherwise, a global Cartesian coordinate system is assumed. For simplicity, we drop index j throughout this section. 123 Autonomous Robots (2020) 44:93–114 97 where y (t ) is the noise-free received signal given by (10) when n (t ) = 0 and n (t ) is zero-mean AWGN. Note that j m m [k]= M (0) and m = M (1) applies. max min By combining the robot-to-robot model and the measure- Fig. 4 Measuring circuit for an e-puck detector. The circuit is composed ment model, the communication between two robots is fully of a resistor, R, and phototransistor, which are connected in series to described. the robot’s supply voltage, V , and ground, GND cc 3.4 Model identification Therefore, V (t ) is inversely proportional to the intensity CE of the incoming optical signal, y(t ). The final step of modelling is to estimate the model parame- Due to the superposition principle and saturation, the col- ters. To estimate h , h , h , m , m , and n (t ),aseries e m d min max m lector current is of experiments is conducted. I (t ) I (t)> I (t ) C ,∞ C C ,∞ 3.4.1 Experiments with a single robot in ambient light I (t ) = , (16) I (t ) otherwise To characterize the ambient light value, m , and noise, max I (t ) = I (t ) + I (t ), (17) C C ,S C ,0 n (t ), we conduct experiments with a single robot under different environmental conditions. where I is the maximum collector current (i.e., saturation C ,∞ In total, six experiments are conducted. In the first exper- current) of the transistor. I and I are the current compo- C ,S C ,0 iment, measurements are taken in the absence of ambient nents proportional to the signal and ambient light intensities, light—the robot is put in a closed box. In the second, third and respectively. Voltage V (t ) = V − RI (t ), caused CE ,max cc C ,0 fourth experiments, the robot is placed in the center or one of by the ambient light component, is an upper bound. Simi- two corners of the experimental arena; the corners provide larly, voltage V = V − RI is a lower bound, as CE ,min cc C ,∞ partial and complete shade, respectively. In the fifth experi- I is the maximum collector current. Note that V C ,∞ CE ,min ment, the robot is put on a desk; in this situation, the absence is the result of the circuit design and is assumed to be time- of surrounding obstacles is assessed. In the sixth experiment, invariant. the robot is put close to a window (during daytime) to assess The collector-emitter voltage, V (t ) ∈[V , CE CE ,min the influence of natural light. For each experiment, 2000 mea- V (t )], is sampled by an analog-to-digital converter CE ,max surements per detector are taken. (ADC). Let M :[0, V ]→ M be the quantizer that maps V cc Figure 5a shows the measurements’ mean (m ¯ ) for each V (t ) to the measurement space M ={0, 1,..., m }, CE sup detector and experiment. The highest values (approx. 4095) ADC where m = 2 − 1 is determined by the ADC width sup were obtained in the closed-box experiment. Note that (n bits). ADC 12 4095 = 2 − 1 is the maximum value that the 12-bit ADC Considering V ∈[V , V (t )],the lower CE CE ,min CE ,max can provide. The lowest values (approx. 4075) were obtained bound (saturation value), m , and upper bound (ambient min in the experiment near the window. light value), m , of the measurements are defined respec- max To estimate m , we assume that the measurements, max tively as m[k], follow a distribution obtained by discretizing the dis- tribution N (m ,σ ), that is, m +n (t ), where n (t ) ∼ max max m m m = M (V ), (18) min V CE ,min N (0,σ ), and calculate the mean over all experiments, m [k]= M (V (t )). (19) max V CE ,max m = 4080. The ambient light thus causes the measure- max ments, on average, to drop by 15, from 4095 to 4080. The analog-to-digital conversion performs a linear discretiza- Figure 5b shows the sample variances of measurements tion of time and value. Time-discrete values are indicated by for each experiment. As the sample variances do not exceed [·] and k = , where t is the sampling period. 2.5, the noise is modeled as a (worst-case) white Gaussian sample sample process n (t ) ∼ N (0, 2.5). Since y(t ) ∝ I (t ) and by applying (15)–(18), the infra- red light conversion function M :{[0, 1]→ M} maps the 3.4.2 Experiments with a single robot and light source inverted light intensity, 1 − y(t ), linearly to [m , m ] by min max To characterize the saturation value, m , and detector atten- min m[k]= M (y(t )) (20) uation, h (β), we use a single robot and a light source (10 W (m [k]− m ) (1 − y(t )) + m , (21) max min min Note that the ambient light value, m , and noise, n (t ),are solely max m = (m [k]− m ) (1 − y (t )) + m + n (t ) , max min min m dependent on the robot’s environment. (22) 6 The experimental arena is described in Sect. 5.1. 123 98 Autonomous Robots (2020) 44:93–114 1.00 0.10 0.01 π π π π − − 0 2 4 4 2 Inclination angle β [ rad ] (a) (a) 1.00 0.01 110 100 Distance d [cm] ed (b) (b) Fig. 5 Experiments where a robot is placed in one of six ambient light 1.00 conditions while receiving with sensors 1, 2,..., 8. a Mean and b vari- ance of 2000 measurements per condition and sensor 0.75 0.50 0.8 Sensor 0.25 0.6 1 0.00 π π π π 0.4 − − 0 4 8 8 4 Emission angle α [rad ] 0.2 (c) 0.0 Fig. 7 Signal attenuation a at the detector, b through the medium, and 140 145 150 155 160 c at the emitter. The dots show mean values derived from measure- Measurements ments with a inclination angle β, b emitter–detector distance d ,and c ed emission angle, α. The values are approximated by (24), (25), and (27), Fig. 6 Experiments where a light source is placed directly in front of respectively the infra-red detector. Histogram of 2000 measurements per detector Figure 7a shows the attenuation at the detector, h (β). LED). The light source is mounted at the height of the robot’s Due to the homogeneous and planar light, we assume h (α) · detectors, and projects in parallel to the surface (floor). The h (d ) = 1, and that any attenuation of the signal intensity, m ed light source is a flood light, providing a homogeneous and y = 1, is caused by h (β). As a result, planar beam. −1 To estimate m , the robot is placed in front of the light min h (β ) ≈¯y = M m ¯ , (23) d j ,k j ,k j ,k source (2 cm gap), and oriented in one of eight configurations. where m ¯ is the mean of the measurements taken by detec- j ,k In each configuration, one of the robot’s detectors is directly tor j in configuration k, β = θ − φ , and θ is the polar j ,k j k j oriented towards the light source. From this detector, 2000 angle of detector j (see Fig. 2). The detector attenuation measurements are taken. coefficient is approximated by Figure 6 shows the measurement distribution (i.e., N (m ,σ )) for each detector. The mean over all exper- min h (β) =| cos (β) |. (24) iments is 149.80, which is rounded to 150 because the robots d can only represent integers. To identify h (β), the robot is placed 10 cm from the light 3.4.3 Experiments with two robots π 3 π source with an orientation φ ∈{0, ,π, } relative to it. 2 2 For each configuration, 2000 measurements per detector are To characterize the medium attenuation, h (d), and the emit- taken. ter attenuation, h (α), we use two robots that are placed with Likelihood h (α) h (d ) h (β) e m ed d Autonomous Robots (2020) 44:93–114 99 Table 1 Model parameters n 12 Bit length for conversion ADC k −1.54557 Medium attenuation decay o 1.12202 Medium attenuation offset m 4080 Ambient light value max m 150 Saturation value min 7 9 11 13 15 17 19 Distance d [cm] (a) an inter-robot distance of {7, 7.5, 8, 8.5, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 21, 23, 25, 27, 32, 37, 42, 47, 57, 67, 77, 87, 97, 107} cm. Both robots are oriented in such a way that their sensors 1 are facing each other (i.e., α = β = 0 for sensor 1). One robot is sending a constant signal with the emitter of sensor 1 while the other robot is measuring with all its detectors. For each sensor and location, 450 measurements were taken. 7 9 11 13 15 17 19 Figure 7bshows y ¯ for sensor 1 in relation to the emitter– j ,k Distance d [cm] detector distance, d . As sensors 1 of both robots are aligned, ed (b) we assume h (α) · h (β) = 1, and that any attenuation of e d the signal intensity, y = 1, is caused by h (d ). m ed The medium attenuation is approximated by ⎨ k 1 d ≤ o ed m 3000 h (d ) = , (25) m ed o (d ) otherwise m ed 7 9 11 13 15 17 19 where the parameters are k =−1.54557 and o = 1.12202 m m Distance d [cm] (see blue line in Fig. 7b). (c) To estimate the emitter attenuation, h (α), any non- Fig. 8 Model predictions (red) and measurements (blue) from an exper- occluded detector is used (i.e., β < ). As y ¯ j ,k j ,k iment where two static robots, at distance d, exchange information using incorporates all attenuation components, it follows that all their emitter–detector pairs: a sensor 1, b sensor 2, and c sensor 7 (see Fig. 2). Mean values based on 500 measurements. The range of y ¯ j ,k axes was chosen to highlight interesting regions (Color figure online) h (α ) ≈ y = . (26) e j ,k j ,k h (d )h (β ) m k d j ,k Figure 7 shows the estimated light intensity obtained by emitters/detectors. This causes the superposition of multiple each detector j in configuration k. Note that the signal inten- signals from different angles and with different intensities. sity can differ significantly due to model inaccuracies of Furthermore, sensors 1 of the robots are no longer aligned. h (β) when β ≈ . We approximate the emitter attenua- The experiment is performed by placing two robots, facing tion by each other, at a distance, d ∈{7, 7.5, 8, 8.5, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 21, 23, 25, 27, 32, 37, 42, 47, 57, 67, 77, h (α) =| cos(α) |. (27) 87, 97, 107} cm. While one robot is sending a constant signal with all emitters, the other is receiving it with all detectors In summary, Table 1 lists the model parameters. and transmits the measurements to a computer via Bluetooth. At each location, 500 measurements are taken. 3.5 Model evaluation Figure 8 shows the measurement means alongside the model predictions for three detectors. As the predictions While in the previous experiments a robot was transmitting closely match the measurements, the model parameters of with only one emitter, an additional experiment is con- Table 1 are used in the following sections. ducted in which a pair of robots transmit/receive with all Note that the inter-robot distance is measured from and to a center of a robot. This results in a minimum of 7 cm (diameter of the robot). Measurements Measurements Measurements 100 Autonomous Robots (2020) 44:93–114 4 SwarmCom: design and implementation P (S = s ) = P (S = s ) = . (29) 0 1 In this section, we describe SwarmCom, an optical MANET for severely constrained robots. SwarmCom enables a group Let the receiving robot be located at the origin of the coordinate system in an unbound environment and oriented of robots to establish a communication network dynamically. Within this network, pairs of robots transmit information via towards the x-axis. The relative position of the transmit- the infra-red channel, which was modelled in Sect. 3. ting robot is given in polar coordinates by random variable SwarmCom consists of: L = (D,Θ). Distance D is chosen from a gamma distribu- tion (Forbes et al. 2010), D ∼ G(k,ϕ), with shape parameter –a modulation scheme to transmit data; k = 0.045 and scale parameter ϕ = 2.5. Polar angle Θ is –a demodulation scheme to receive data; chosen from a uniform distribution with a probability density – channel coding to detect and/or remove errors in the data function, f (θ ) = for all θ ∈ (−π, π ]. 2 π that were introduced by the channel; and Whereas the receiver robot’s orientation is embedded in – medium access control to manage the resource allocation. Θ, the orientation of the transmitting robot, O, is chosen from a uniform distribution with a probability density function, 4.1 Modulation f (o) = for all o ∈ (−π, π ]. 2 π To convey information between a pair of robots, a signal is 4.2.2 Received signal probability mass function modulated onto the medium—the optical infra-red channel. The robot’s infra-red LEDs can only be switched on or off. The signal probability mass function, referred to as P(M = Consequently, on–off-keying (OOK) is used as the modula- m|S = s), defines the likelihood of obtaining measurement tion scheme. OOK is a binary modulation scheme that maps m given that symbol s is sent, where M ∈ M and S ∈{s , s } 0 1 the information to be transmitted to symbols s and s . Sym- 0 1 are random variables. bols s and s are represented by the absence and presence 0 1 In the absence of the carrier (S = s ), only the ambi- of a carrier (infra-red light) over a certain duration, respec- ent light and noise are present. Therefore, to compute tively. As a consequence, channels in idle state are assumed P (M = m|S = s ), we exploit that M given S = s follows 0 0 to output a s symbol at each time step defined by the sam- N (m ,σ ). max pling period. A prefix consisting of an s symbol is used to To estimate P (M = m | S = s ), each 1000-, 720-, and identify the beginning of data transmission. By default, data 720-quantile of the aforementioned D, Θ, and O is applied is divided into blocks of 15 bits in SwarmCom. to our channel model resulting in 5.184 × 10 synthetic observations per sensor. From these observations, the relative 4.2 Demodulation likelihood is calculated. Then, it is convolved with N (0,σ ) to integrate noise. With the modulated signal conveying data, the demodulation Figure 9ashows P (M = m|S = s ) for each of the eight aims to extract the sufficient statistics from the received signal sensors. As most of a robot’s sensors will not point towards and to decide the sequence of symbols that have been trans- the emitting source, the measurement values for s are sim- mitted. The algorithm that realizes this is hereafter referred ilarly distributed than the measurement values for s (see to as the detector. The maximum likelihood decision rule, Fig. 9b). To reduce the similarity, the min{·} operation is Υ(m) : M → {s , s }, does so optimally: 0 1 applied to all eight sensor measurements, choosing the small- s , if P(S = s |M = m) ≥ P(S = s |M = m) 0 0 1 est one, which originates from the sensor registering the Υ(m) = , highest signal intensity. This operation improves the signal s , otherwise distribution (see dotted lines in Fig. 9a and b) with small (28) computational overhead. where P(S = s|M = m) denotes the probability of symbol s being transmitted given that measurement m is observed. 4.2.3 Decision rule 4.2.1 Assumptions With the estimated signal probability mass functions, the decision rule in (28) can be computed. To avoid computa- To calculate P(S = s|M = m), first, assumptions about the tionally intensive probability calculations, (28) is simplified signal structure and robots’ positions are formulated. to We assume that any sequence of symbols is equally likely. Therefore, the a-priori probability of obtaining a symbol is 123 Autonomous Robots (2020) 44:93–114 101 m = m − m . (33) t ,r max t For m = 4075, we have m = 5. t t ,r 4.3 Channel coding While the demodulation aims to minimize errors for each symbol, channel coding can be used to detect and correct further errors in a message (i.e., a group of symbols) (Glover and Grant 2010). It relates to the noisy-channel coding the- orem (Lapidoth 2009) that states that, for a given level of noise, the probability of error in the data can be made arbi- trarily small, as long as the communication rate is below the Shannon capacity. Whereas encoding methods are often computationally inexpensive, the computational requirements of decoding methods vary significantly. For instance, convolutional codes require probabilistic decoding (e.g., Viterbi decoder) which on severely constrained robots is not practical. In contrast, algebraic codes, such as binary block codes, require less com- putational expensive decoding through matrix or polynomial multiplications. SwarmCom uses binary [n, k] BCH codes (Glover and Grant 2010). These codes organize messages into n-bit long blocks that contain k bits of data. With an increasing number of parity bits, n − k, more errors can be corrected, but this reduces the effective throughput by .SwarmComimple- ments [15, 15], [15, 11], and [15, 1] BCH codes, which can correct up to 0, 1, and 7 errors, respectively. Depending on Fig. 9 Measurement statistics, produced by the channel model, for each the choice of code, either the throughput (i.e., [15, 15])or sensor i of a robot that receives a signal from another robot in the envi- reliability (i.e., [15, 1]) is prioritized. ronment. Symbols s and s correspond to the absence and presence 0 1 The matrices and their generator polynomial are available of the carrier, respectively. a Distribution of measurements for s ; b in the supplementary material website (Trenkwalder et al. distributions of measurements for s and s , prior to (solid) and after 0 1 (dotted) applying the min operator; c decision threshold m to discrim- t 2018). inate between s and s 0 1 4.4 Medium access control s , if m ≥ m 0 t Υ(m) = , (30) When multiple robots share the same medium and try to s , otherwise communicate, their access to the medium requires control to prevent the interference of messages (Guerroumi et al. 2014; where m ,the decision threshold, is defined as Hussain et al. 2017). There are two forms of medium access control (Sesay et al. m = max {m | P(S = s |M ≤ m) ≤ P(S = s |M > m)} . t 0 1 m∈M 2004)—controlled and random access. Controlled medium (31) access divides the medium according to its physical prop- erties (e.g., frequency or time) (Hadded et al. 2015; Glisic With Bayes’ theorem and (29), (31) is transformed into and Leppänen 2013). As every transmission has a dedicated slot, this access control technique is efficient for high net- m = max {m | P(M ≤ m|S = s ) ≤ P(M > m|S = s )} . t 0 1 work loads like streaming. However, as the number of robots m∈M within a swarm can be large, dividing the medium into a (32) large number of frequency bands is often not feasible. Simi- When applying (32) to the data of Sect. 4.2.2,the decision larly, assigning a time-interval to each robot can cause long threshold is set to m = 4075 as shown in Fig. 9c. Further- more, let the relative decision threshold be The modular design of SwarmCom allows new codes to be added. 123 102 Autonomous Robots (2020) 44:93–114 delays. As the delay increases with the number of robots, above by fluorescent light tubes; natural light is prevented this method is not scalable. Furthermore, to allow the join- from entering the room. ing/leaving of robots, the assignment/removal of additional To automate the experiments, we use an external computer slots is commonly done by a central managing unit. that is connected to each robot via a dedicated Bluetooth Random medium access allows robots to compete for link. The experimental process is as follows: access. This competition is performed through local infor- mation. Therefore, these methods are often decentralized, – The external computer generates a message containing 1 and work independently of the number of robots. Note that to 5 blocks of data; each block has 15 bits. The number at high network loads, this method can cause a large number of blocks and their contents are chosen randomly from of collisions. Therefore, its performance would be reduced. uniform distributions. As many swarm robotics systems use infrequent commu- – The message is transmitted to R using Bluetooth. If no nication, SwarmCom provides carrier sense multiple access acknowledgment is received within 500 ms, it is retrans- (CSMA) (Shi et al. 2013; Wang et al. 2017) —a random mitted without affecting the result. medium access control method. A robot listens to the channel – Once the message has been received, R echoes it back before sending a message. If the channel is free, the message to the computer as an acknowledgment, and, at the same is transmitted. Otherwise, the robot waits until the channel time, starts the transmission to R . is free and then repeats the process. As a result, CSMA is – Once R has received the message from R , R transmits r t r decentralized as the robot uses only local information. This it to the computer. method is also scalable as the sensing of the channel state – The computer marks a message as lost if its receipt depends solely on the network load and not on how many was acknowledged by R , but after 1 s no message was robots are listening. received from R . 4.5 Implementation In the experiments, robots R and R are placed in the t r SwarmCom has been implemented on e-pucks running the middle of the arena, oriented towards each other. Initially, open-source OpenSwarm operating system (Trenkwalder their centers are 7 cm apart (the robots are touching each et al. 2016). It uses a time-multiplexed on-board ADC to other). Above experimental process is executed repetitively. sample the voltages of the eight detectors, where bit detec- After obtaining 100 successful messages at a location, R tion is performed for every sample. Furthermore, the detector moves away from R by 1 cm. If R has moved by 100 cm t r determines the ambient light value, m , during the start-up max or 10 consecutive message transmissions have been marked of the robot and adapts m during run-time to compensate max as lost, the process is aborted. In the latter case, we assume for ambient light changes, as detailed in the following sec- that the end of the communication range has been reached. tions. The following performance measures are reported: SwarmCom will be made available under an open-source license in the future. It is currently integrated within the OpenSwarm operating system, which is available at https:// –The communication range is the furthest distance between github.com/OpenSwarm/OpenSwarm/tree/com-experiments. two robots in which 100 messages were received. –The transmission time is the time difference between receiving acknowledgments from R and R , respec- t r 5 SwarmCom: static robots evaluation tively. –The bit rate is the number of transmitted bits divided by In the following, we validate the SwarmCom implementa- the transmission time. tion. This section reports on experiments involving a pair of –The bit error probability, P , is estimated as the Ham- static robots. One robot, R , transmits messages with all its ming distance (i.e., number of altered bits) between data emitters, while the other robot, R , receives them with all its from R and R divided by the bit length of the message. t r detectors. SwamCom performs modulation and demodula- –The probability of error-free transmission, P , for an n- tion. Unless otherwise stated, no channel coding is used. bit message is 5.1 Experimental setup The experiments focus on the quality of the optical infra-red commu- The experiments are conducted in an indoor arena of size nication channel between the robots. For the Bluetooth communication 400 cm × 300 cm. The arena has a grey floor that is sur- with the computer, a simple checksum is used. If errors are detected, rounded by 50 cm tall white walls. It is illuminated from the corresponding messages are retransmitted. 123 Autonomous Robots (2020) 44:93–114 103 0.5 m t,r i n−i P (c) = P (1 − P ) , (34) f e 0.4 10 i =0 25 0.3 50 where c is the maximum number of correctable errors 0.2 250 (due to channel coding). In other words, P is the prob- 0.1 750 ability that no more than c bit-errors occur. As the error 0.0 correcting code can correct up to c errors, with probabil- 10 20 30 40 50 ity P the transmission can be considered error-free. f Distance d [cm] –The probability of message loss, P ,is (a) 0.5 m N t,r P = , (35) 5 0.4 N 10 0.3 where N and N are the number of lost messages and the l 100 0.2 number of messages, respectively. 0.1 0.0 5.2 Experiments with a fixed decision threshold 10 20 30 40 Distance d [cm] We examine the impact of using a fixed relative decision (b) threshold, m ∈{5, 10, 25, 50, 100, 250, 500, 750, 1000, t ,r 2000}. We test three different bit rates: 310 bps (the low- 0.5 t,r est possible bit rate offered by the hardware), 650 bps, and 0.4 10 1160 bps. 0.3 50 Figure 10 shows that the bit error probability is high when 0.2 250 using a fixed decision threshold. The larger the threshold, the 0.1 750 lower the bit error probability gets. However, increasing the 0.0 2000 threshold results in a reduction of sensitivity and hence, of 10 20 30 40 the communication range. Distance d [cm] It is worth noting that the bit error probability does not (c) always monotonically increase with the inter-robot distance, especially when a high bit rate is used. A possible reason Fig. 10 Bit error probability, P , for a detector using a fixed relative could be the measuring circuit. Short distances result in high decision threshold, m , for various distances among two static robots t ,r signal intensities that cause high charges of capacitive ele- (for details see text). Bit-rates are a 310 bps, b 650 bps, and c 1160 bps ments. Small discharging currents could cause slow changes from one symbol to another and, hence, cause inter-symbol interference. Figure 11 shows the bit error probability for the dynamic detector (using a default relative decision threshold of m = t ,r 5.3 Experiments with a dynamic decision threshold 5). The dynamic detector greatly reduces the bit error prob- ability, while retaining a good communication range. For The detection was changed to adapt the threshold depending high bit-rate transmissions, high bit error probabilities are on the received signal intensity dynamically. In the following, observed when the robots are not near each other. This can m and m refer to the default thresholds, as previously t t ,r be avoided by redefining the default relative decision thresh- used in Sect. 4.2.3. For a signal to be detected, its amplitude, old, m , thereby limiting the maximum communication t ,r measurement A, has to be lower than the original threshold, range. m [see (30)]. If this is the case, amplitude A is then used to Additional experiments were performed to investigate the calculate a dynamic decision threshold, role of the default relative decision threshold for the dynamic detector in (36). Figure 12a shows how the choice of m t ,r |m + A| |m − m + A| t max t ,r impacts on the communication range. Figure 12b provides m = = . (36) t ,dyn 2 2 a lower bound for the relative decision threshold to ensure, given a bit rate, that the bit error probability does not exceed, After receiving a message, the dynamic decision threshold is P < 0.01. reset to the default value (m ). Note that the definition ensures m < m . t ,dyn t P P P e e e 104 Autonomous Robots (2020) 44:93–114 0.5 1e-01 Bit Rate Bit Rate 0.4 1e-06 0.3 850 1e-11 0.2 0.1 1e-16 0.0 1e-21 20 40 60 20 40 60 Distance d [cm] Distance d [cm] (a) (a) 1e+00 1e-01 Bit Rate Bit Rate 1e-06 1e-02 850 1e-11 1e-04 1 1e-16 1e-21 20 40 60 810 12 14 Distance d [cm] Distance d [cm] (b) (b) Fig. 11 Bit error probability, P , for a detector using a dynamic rela- Fig. 13 Two static robots, at relative distance d, use channel coding tive decision threshold for various distances among two static robots. to correct c ∈{0, 1, 7} bit errors. Shown is the actual rate (0 bit) and a and b present the bit error probability linearly and logarithmically, predicted rates (1 bit and 7 bit) at which messages get incorrectly trans- respectively mitted, 1 − P , at 310 bps and 1800 bps, respectively. Zero values are not visible, due to the log-scale. a Full range, b zoomed range m d (cm) t,r max 2000 7 1000 8 compute, for each channel code, the probability of correctly 750 9 transmitting a 15-bit message, P , based on the assumption 500 10 250 13 that errors are independent of each other. 100 19 As showninFig. 13, the probability of incorrectly trans- 50 25 mitted messages, 1 − P , decreases by several orders of 25 33 10 45 magnitude when correcting up to 7 errors (for both bit rates). 600 900 1200 1500 5 61 Bit Rate [ bps ] This should make it possible to transmit messages virtually −16 (a) (b) free of error (i.e., 1−P ≤ 10 ) over a range of up to 50 cm. However, the increase in accuracy would come at the expense Fig. 12 The dynamic detector can be initialized with different default of an effectively reduced throughput: = 120 bps and relative decision thresholds. a Shows how the choice of threshold ≈ 21 bps. Compared with coded 1800 bps transmis- impacts on the communication range for 310 bps transmissions. b The blue area (above the curve) shows the default relative decision thresh- sions, the uncoded 310 bps transmission is less prone to olds for which reliable communication (P < 0.01) can be achieved at errors (for d ≥ 11 cm, that is, ≥ 4 cm gap between the a given bit rate (Color figure online) robots), allow a 4-fold communication range, while provid- ing ca. 2.5 times higher throughput. Where throughput is not the primary criterion, however, the application of channel 5.4 Channel coding coding is recommended. SwarmCom uses per default a [15, 15] BCH code (i.e., no channel coding) to maximize throughput. However, the user 5.5 Comparison with libIrcom can select a [15, 11] BCH code (to correct up to c = 1error) or a [15, 1] BCH code (to correct up to c = 7 errors). To To validate SwarmCom, the implementation with a dynamic investigate the impact of channel coding on the accuracy threshold is compared to the state-of-the-art communication and throughput, the three channel codes are compared. We software for the e-puck, libIrcom, which is widely used by consider bit rates of 310 bps and 1800 bps. the swarm robotics community (Murray et al. 2013; Prieto As a starting point (c = 0), we use the experimentally et al. 2010). determined bit error probabilities, P , from the experiments For the libIrcom implementation, identical functions were with a dynamic decision threshold (see Sect. 5.3). We then used to control the robot and exchange messages via Blue- t,r 1 − P f 1 − P f Autonomous Robots (2020) 44:93–114 105 Systems Algorithm 1 Random Walk libIrcom Require: t , the forward moving interval SwarmCom 0.100 1: procedure Move Bit Rate 2: loop 3: Choose a random rotation angle, θ ∈ (−π, π ] 4: Rotate by θ mm 5: Choose a random velocity, v ∈[−128, 128] 0.001 6: repeat 7: Move forward with v 8: until time, t , has elapsed 20 40 60 9: end loop Distance d [cm] (a) Systems 6 SwarmCom: mobile robots evaluation libIrcom SwarmCom 0.6 To validate SwarmCom in more realistic situations, exper- Bit Rate iments with groups of mobile robots are conducted. We 0.4 consider a relatively congested area by choosing a higher 0.2 robot density than in the static robot evaluation. The robots communicate with each other while perform- 0.0 ing a random walk. We consider two modes of communica- 20 40 60 tion: Distance d [cm] – When a robot, R , sends a message via local broadcast, (b) t the message is received by the neighbors of R but does Fig. 14 Comparison of libIrcom (red) with SwarmCom (other colors): not propagate further through the network. It does not a bit error probability, P ,and b probability of message loss, P (Color e l reach robots outside the communication range of R . figure online) Moreover, due to occlusions, it may not reach a robot unless located in the direct line of sight of R . tooth with the computer. The experimental setup was the – When a robot, R , sends a message via flooding,the mes- same as described in Sect. 5.1. sage is also locally transmitted at first. However, every Figure 14a shows the bit error probability, P , as a function robot that has received the message will locally retransmit of the inter-robot distance. The bit rate of libIrcom was exper- it too, but only once. Thereby, the message will propagate imentally determined as 220 bps. At a bit rate of 330 bps, through the network. SwarmCom consistently outperforms libIrcom over all dis- tances. Moreover, it provides a 3-fold higher communication 6.1 Experimental setup range and 50% additional throughput. At other bit rates of up to 850 bps, SwarmCom consistently outperforms libIr- The experiments described in this section are conducted in com over all distances as well, while providing up to ca. a72cm × 72 cm arena. The arena has a grey floor and is 380% additional throughput. surrounded by 30 cm tall white walls. It is illuminated as Figure 14b shows the probability of message loss, P .As described in Sect. 5.1. can be seen, SwarmCom with bit rates of up to 1080 bps By default, we use groups of 2 to 7 e-pucks. Note that we provides a substantially lower probability of message loss automate and monitor the experiments using Bluetooth, and when compared to libIrcom with 220 bps. the Bluetooth protocol does not allow to establish more than We believe that the improved performance of Swarm- seven connections at once. Com can be attributed to a range of factors. SwarmCom We follow a similar experimental protocol to the one used exploits knowledge of the underlying channel model, and in experiments with static robots. The robots use a dynamic offers an adaptive threshold mechanism that allows a robot threshold [see (36)]. Changes in the level of ambient light are to adjust its sensitivity to the strength of signals it perceives, compensated as described in Sect. 4.5. However, the experi- thereby increasing the communication range and reducing mental protocol differs in the following points: the error probability. Moreover, it treats every measurement as a logical 0 or 1, thereby maximizing throughput (though, – The robots are initially placed in random positions and optionally, channel coding can be applied). libIrcom uses orientations, chosen arbitrarily from within the arena; long codewords (and rudimentary channel coding) for the – Each robot performs a simple random walk using Algo- logical 0s and 1s, effectively reducing throughput. rithm 1 (with t = 2 s); P P l e 106 Autonomous Robots (2020) 44:93–114 – For every parameter configuration (number of robots, bit rate, communication range), 1000 messages are to be transmitted (previously 100); – For every message, robot R is randomly selected from the group; – Messages are declared lost after waiting for 2 s (previ- ously 1 s). Number of robots The experiments are recorded by a camera mounted on Fig. 15 The distribution of inter-robot distance, d, between two com- top of the arena. OpenCV (version 3.4) is used to calculate municating robots for experiments with 2, 3, …, 7 robots the robots’ positions, potential occlusion, and inter-robot dis- tances. This is subsequently used to calculate an estimate of the probability of message loss, P , in our static analysis. (i , j ) and matrices. A KS vector contains 6 KS test values, Δ . The procedure to obtain P depends on the mode of com- Each value is calculated by comparing the trials with the munication. If the local broadcast is used, every robot, R , (i , j ) same number of robots. A KS matrix consists of a Δ for in the direct line of sight of R is considered. Once the dis- each combination of trials. tance between the pair of robots is established, an estimate for the the probability of message loss is obtained from the 6.2 Experiments relation shown in Fig. 14b. If flooding is used, all non-cyclic paths from R to any robot, R , are considered. The path of t r This section reports the results of the experiments with mul- transmission is the one candidate path, p, that provides the largest probability of successful transmission, 1 − P .Asa tiple mobile robots. First, the distribution of d is analyzed— l,p recall, the robots perform a random walk without obstacle result, P is defined by avoidance. Then, the performances of the two modes of com- munication are compared. The effects of changing either the P = 1 − max (1 − P ) , (37) l l,p,i velocities, communication range, the bit rate, or the density of robots are analyzed. Finally, SwarmCom is compared to libIrcom. where P is the probability of message loss for hop i of l,p,i path p between R and R . t r 6.2.1 Inter-robot distance To compare the outcome of experiments, a two-sample Kolmogorov–Smirnov test (KS test) is performed (Young The communication performance of any group of robots 1977). This nonparametric statistical test compares two will ultimately depend on the spatial distribution. We deter- empirical cumulative distribution functions (CDF) .Two mine the distribution of inter-robot distances, d, for a single CDFs, F and F , are statistically significantly different 1,n 2,m line-of-sight transmission by analyzing the video recordings. when Robots whose sight of the transmitting robot is occluded are mn 1 α discarded, as they would be unable to establish a communi- (i , j ) (i , j ) Δ = D ≥ − ln , (38) m,n cation channel. m + n 2 2 Figure 15 shows the distribution of distances as a violin (i , j ) plot. The distances appear to be distributed similarly over where D = sup F (x ) − F (x ) is the maximum m,n i ,n j ,m trials for any number of robots. To test whether the distribu- difference of two CDFs. Here, we choose α = 0.01, hence (i , j ) tions are identical, we formulate the null hypothesis that the Δ ≥ 1.628. Note that the obtained distribution of exper- distributions of d are equal. The resulting KS matrix is as iment i is tested to produce statistically larger values than (i , j ) (i , j ) follows: another distribution, j, by changing D to G = m,n m,n (i , j ) max F (x ) − F (x ) . If not stated otherwise, D is x i ,n j ,m m,n ⎛ ⎞ 0 16.941 16.973 7.310 13.336 18.702 used in a KS test (i.e., statistical equality is tested). ⎜ ⎟ 16.941 0 4.281 16.420 12.791 5.135 In this work, an experiment consists of 6 trials, where ⎜ ⎟ ⎜ ⎟ 16.973 4.281 0 16.249 10.632 2.883 each trial has a specific number of robots (i.e., two to seven ⎜ ⎟ ⎜ ⎟ 7.310 16.420 16.249 0 11.587 21.165 robots). To compare two experiments, we report KS vectors ⎜ ⎟ ⎝ ⎠ 13.336 12.791 10.632 11.587 0 11.831 11 18.702 5.135 2.883 21.165 11.831 0 An empirical cumulative distribution function, F , of experiment i i ,k is based on a sample of k measurements. (39) d [cm] Autonomous Robots (2020) 44:93–114 107 1.00 ⎛ ⎞ 00.727 1.504 1.545 1.465 2.111 0.75 ⎜ ⎟ 0.727 0 1.253 1.254 1.110 1.969 ⎜ ⎟ ⎜ ⎟ 1.506 1.253 0 0.407 0.445 1.172 0.50 ⎜ ⎟ ⎜ ⎟ 1.545 1.254 0.403 0 0.376 1.208 ⎜ ⎟ 0.25 ⎝ ⎠ 1.465 1.110 0.445 0.376 0 1.494 2.111 1.969 1.172 1.208 1.494 0 0.00 234567 (41) Number of robots ⎛ ⎞ (a) 00.513 1.204 0.592 1.307 1.918 ⎜ ⎟ 0.513 0 1.021 1.076 2.166 1.775 1.00 ⎜ ⎟ ⎜ ⎟ 1.204 1.021 0 1.299 0.320 0.930 ⎜ ⎟ ⎜ ⎟ 0.75 0.592 1.076 1.299 0 1.426 0.976 ⎜ ⎟ ⎝ ⎠ 1.307 2.166 0.320 1.426 0 0.947 0.50 1.918 1.775 0.930 0.976 0.947 0 0.25 (42) 0.00 for flooding and local broadcast, respectively to (39), it is Number of robots evident that the bit error probability is less affected by the (b) number of robots than the inter-robot distance. In many cases, P does not change significantly with the number of robots. Fig. 16 Experiments by mode of communication: local broadcast (blue) However, when comparing the extremes (2 and 7 robots), P and flooding (red). Shown are a the bit error probability, P ,and b significantly differs. As a result, it can be expected that larger probability of message loss, P , all grouped by the number of robots. Dots indicate mean values and empty circles indicate P ,which was l groups of robots would increasingly impact P . estimated through computer vision analysis (Color figure online) Note that the distribution of P shows two peaks across all experiments (see Fig. 16a). The first peak, at P ≈ 0, is the dominant one. Overall, 68–75% of messages are entirely As all elements exceed 1.628 (i.e., α = 0.01), the null hypoth- error-free. The second peak is at P ≈ 0.4, but far less pro- esis is rejected (highlighted in boldface). Consequently, the nounced. A possible cause could be burst errors , which number of robots significantly changes the distribution of d. could occur when a robot enters or leaves the communica- Note that the peak at 7 cm (see Fig. 15) indicates a collision tion range of another robot during a transmission. between R and R . In that situation, the robots’ movement t r Figure 16b shows the probability of message loss, P .Here is likely to be temporarily restricted. A further restriction is we extend the definition of (35) to multiple receiving robots, provided by the boundaries of the arena. such that P = 0 implies that the message is received by every robot bar the one that originally transmitted it. As the number of robots increases, the flooding mode outperforms the local 6.2.2 Modes of communication broadcast mode, as expected. When using the flooding mode, robots succeed in reaching occluded robots or others outside We investigate both modes of communication—local broad- cast and flooding. For each mode, an experiment is conducted their local neighborhood. The more robots are present, the more likely it is that the whole group is reached. Note that the with 2–7 robots, which transmit with 310 bps over a com- munication range of up to 45 cm (i.e., m = 10). more often a message gets retransmitted, the more likely is t ,r Figure 16a shows the bit error probability, P , obtained that some errors get introduced. However, according to (40), from the experiments. The experiments with and without no such effect was observed in our experiments. flooding are indicated by red and blue, respectively. The cor- From Fig. 16b, it can be seen that P approximates the responding KS vector, trend of P , though with a noticeable offset. The computer vision analysis only identifies the robot that is sending and then calculates P based on the topological information over [0.466, 0.336, 1.361, 0.603, 1.452, 1.131] , (40) a certain time duration. When robots enter or leave the com- munication range during a transmission, P is not affected, shows that the mode of communication has no significant but the computer vision analysis, which decides frame by impact on P for α = 0.01. e frame, will be unable to capture this. To investigate the effects of the number of robots on P ,a KS matrix is calculated for each experiment. When compar- ing the values of the KS matrices, Burst errors involve a sequence of successive faulty bits. P P l e 108 Autonomous Robots (2020) 44:93–114 0.100 0.100 0.075 0.075 0.050 0.050 0.025 0.025 Number of robots Number of robots (a) (a) 1.00 1.00 0.75 0.75 0.50 0.50 0.25 0.25 0.00 0.00 Number of robots Number of robots (b) (b) Fig. 18 Experiments with groups of mobile robots using a restricted Fig. 17 Experiments with groups of mobile robots moving at (red communication range: a the average bit error probability, P for com- 2 3 e disk), (blue square) and (green triangle) of their maximum linear 3 3 munication ranges of 21 cm (red, circle), 33 cm (green, triangle), and and angular velocities. a Average bit error probability, P ; b probability 45 cm (blue, square); b probability of message loss, P . Solid shapes of message loss, P . Solid shapes indicate the means of experimentally indicate the means of experimentally observed values; hollow shapes observed values; hollow shapes indicate the predictions, P (Color figure indicate the predictions, P (Color figure online) online) 6.2.3 Variation of the movement velocities ing the velocity may also increase the likelihood that some To investigate how the velocities of robots impact on com- robots interfere with others or that a communicating robot munication quality, three experiments with 2 to 7 robots are prematurely leaves the range of communication during a conducted. In these experiments the linear and angular veloc- transmission. However, as the number of robots in the swarm 1 2 3 ities of the robot are limited, respectively, to , , and of the increases, more communication paths are formed, and the 3 3 3 maximum value. We refer to these three setups as v , v , and 1 2 effect becomes less prominent. v , respectively. The robots perform a random walk (Algo- rithm 1) and are configured as in the flooding experiment (see Sect. 6.2.2). Figure 17 illustrates the average values of (a) P and (b) 6.2.4 Variation of the communication range P . In both cases, the performance appears to improve as the robots move slower. To investigate the role of the default relative decision thresh- The three velocity settings (v ,v ,v ) lead to three 1 2 3 old (and hence the communication range) in the mobile null hypotheses—that the bit error probability, P ,for the robot scenario, three experiments were conducted. We use respective smaller velocity is larger or equal to the bit m = 75, 25, and 10, which results in a communication t ,r error probability of the respective larger velocity. A signed range of 21 cm, 33 cm, and 45 cm, respectively. The robots Kolmogorov–Smirnov test provides the KS vectors, transmit at a bit rate of 310 bps. Figure 18a illustrates the average values of P .Toinves- [1.631, 2.530, 1.902, 2.606, 3.192, 1.325], (43) tigate the difference between the distributions of P ,we [1.746, 1.721, 2.534, 1.704, 2.306, 1.501], and (44) consider all three pairs of communication ranges. This leads [1.715, 1.780, 0.677, 1.970, 1.108, 0.219], (45) to three null hypotheses—that the bit error probability, P ,for the respective smaller communication range is less or equal to for testing settings v against v , v against v , and v against the bit error probability of the respective larger communica- 1 2 1 3 2 v . As evident from these vectors, the null hypotheses can be tion range. We use a signed Kolmogorov–Smirnov test (Press rejected (with α = 0.01) for trials with few robots. Increas- et al. 2007), which provides KS vectors, P P l e P P l e Autonomous Robots (2020) 44:93–114 109 [0.607, 1.027, 0.521, 1.075, 1.772, 1.799], (46) 0.100 [1.570, 2.266, 2.646, 3.151, 3.610, 4.300], and (47) 0.075 [1.108, 1.440, 1.765, 2.494, 4.271, 4.246], (48) 0.050 for testing communication range 21 cm against 33 cm, 21 cm 0.025 against 45 cm, and 33 cm against 45 cm, respectively. As evident from these vectors, unless the number of robots is Number of robots relatively low, the null hypotheses can be rejected (with (a) α = 0.01). In other words, smaller communication ranges 0.90 produce significantly larger bit error probabilities. We sus- pect that, as the communication range decreases, it becomes 0.85 increasingly unlikely for a pair of mobile robots to remain connected for the duration of a transmission. Robots entering 0.80 or leaving the range while a transmission is in progress will contribute to a higher bit error probability. 0.75 Figure 18b plots the probability of message loss. As expected, the shorter the communication range, the higher the Number of robots losses. Furthermore, P predicts the trend of P consistently, l l (b) which suggests that P mainly dependent on topological Fig. 19 Experiments with groups of mobile robots using various bit information (i.e., communication range). rates: a the average bit error probability, P for bit rates of 1670 bps (red, circle), 1080 bps (green, triangle), and 310 bps (blue, square), respectively. b Probability of message loss, P . Solid shapes indicate 6.2.5 Variation of bit rate the means of experimentally observed values; hollow shapes indicate the predictions, P (Color figure online) SwarmCom can operate with various bit rates, offering a trade-off between throughput and communication range. To investigate the effects on P and P for groups of mobile e l max robots, three experiments with bit rates of 310 bps, 1080 bps, Mean+2σ 8 mean and 1670 bps were conducted. To enable a fair comparison, median Mean−2σ the communication range was restricted to 21 cm. min Figure 19a illustrates the average values of P for each bit 2 rate. To investigate the difference between the distributions 0 50 100 150 200 of P , we consider all three pairs of bit rates. This leads to Robots ρ [ ] R 2 three null hypotheses—that the bit error probability, P ,for (a) the respective larger bit rate is less or equal to the bit error probability of the respective smaller bit rate. We use a signed Kolmogorov–Smirnov, which provides KS vectors, 12 max 9 Mean+2σ mean 6 median [0.609, 0.842, 1.411, 1.057, 1.352, 1.779], (49) Mean−2σ min [0.432, 0.999, 1.013, 1.502, 1.876, 2.371], and (50) [0.432, 0.613, 0.746, 0.898, 0.705, 1.115], (51) 0 204060 Robots ρ [ ] R 2 for testing 310 bps against 1080 bps, 310 bps against (b) 1670 bps, and 1080 bps against 1670 bps, respectively. As evident from these vectors, unless the number of robots is Fig. 20 Number of channels, n , a robot can establish depending on the density of robots in its environment. a Results from simulations in an relatively large, the null hypotheses cannot be rejected (with open environment. b Results from real-robot experiments (shown as box α = 0.01). In other words, the error probabilities are less plot) and simulations (shown as line graph) in a bounded environment. influenced by the bit rate as by the communication range For details, see text (see the previous section). Finally, Fig. 19b indicates that the bit rate does only have a moderate impact on P . n n P P C C l e 110 Autonomous Robots (2020) 44:93–114 Fig. 21 Snapshots taken from the experiments with a 10, b 20, and c robots, which perform a random walk, activate their LEDs whenever 30 e-puck robots within a 72 × 72 cm environment. The static robot they receive the signal. The number of channels that the central robot in the center (green cap) repeatitively transmits a signal. The other establishes are n = 4, 6, and 9, respectively (Color figure online) 6.2.6 Scalability arrangement of the robots), the central robot will have 6 com- munication channels. To investigate the scaling properties of SwarmCom, two stud- The real-robot study examines how the robot density ies were conducted—one in computer simulation, the other impacts on the connectivity in practice. Three experiments using real robots. are conducted with swarms of 10, 20, and 30 physical robots The simulation study examines how the robot density within a 72 × 72 cm space as shown in Fig. 21. This results robots impacts on the connectivity of the network. One robot, placed in the robot densities, ρ ∈{19.3, 38.6, 57.9} . A static at the center of the environment, transmits messages within robot, placed in the center, transmits a series of s symbols. a communication range of 61 cm (see Table 12a). The area All other robots perform a random walk (Algorithm 1). When within the communication range is populated by randomly a moving robot detects the signal, it illuminates its LEDs. placing 1, 2, …, N additional robots, where N = 272 was the Every 30 s, the number of illuminated robots, n , is deter- largest value for which sampling-based positioning proved mined using video recordings from an over-head camera. The efficient. This results in a robot density, ρ ∈ [1, 234] process is repeated 30 times per experiment. In other words, robots . All robots are static. For every tested density, 10000 in total 90 experimental trials were conducted. trials are conducted. In every trial, we determine how many Figure 20b shows that the real-robot experiments are over- channels, n , are established by the central robot. We con- all in good agreement with the simulation results. These sider a channel to be established if a robot can distinguish findings suggest that SwarmCom’s resource allocation and between s and s . In other words, the received signal is below utilization is indeed scalable by design, and, discounting 0 1 threshold m (see Sect. 4). delays, could be applied to swarms of any size. t ,dyn Figure 20a shows the number of connections, n ,asa function of robot density, ρ . It is evident that the number of R 6.2.7 Comparison with libIrcom channels is bounded by a relatively small constant (≈ 15). In other words, while hundreds of other robots may reside Finally, the overall performance is determined by compar- within the communication range of the central robot, the lat- ing SwarmCom to libIrcom in a mobile setup. To allow a ter can only communicate with a relatively small number of fair comparison, SwarmCom is configured to use the same robots, all others being occluded. This greatly reduces the communication range (i.e., 21 cm) and a similar bit rate (i.e., load on any node. In fact, the load is bounded by a constant 310 bps). for any number of robots within the swarm. As the robot Figure 22a compares the distributions of P of both density increases to its maximum, the number of connec- SwarmCom (red) and libIrcom (blue). Overall, 68–75% of tions decreases too, until finally settling at n = 6. In the C messages sent with SwarmCom are error-free, which is 3–5 most dense setting (i.e., corresponding to a near-hexagonal times larger than the corresponding value for libIrcom (14– 20%). libIrcom produces significantly larger values of P We expect the theoretical limit to be around 285; see http://hydra.nat. uni-magdeburg.de/packing/cci/cci285.html, for a solution to a related, To improve comparability, the simulation runs were repeated with but less constrained, problem (Graham et al. 1998). the bounded 72 × 72 cm arena used in the experiments. 123 Autonomous Robots (2020) 44:93–114 111 1.00 only 8 kB of RAM. SwarmCom uses a dynamic detector that, by adapting to the environment and nearby robots, achieves 0.75 orders of magnitudes of improvement in bit error probability. 0.50 In addition, SwarmCom supports various bit rates and com- 0.25 munication ranges to allow users to adapt the system to their needs. Reliable communication is provided up to 61 cm at 0.00 310 bps, and up to 14 cm at 1800 bps. SwarmCom supports channel coding, allowing to correct Number of robots up to 7 bits per 15-bit block. Based on experimental results (a) without channel coding, our analysis predicts that a pair of 0.95 robots, employing a 7-bit correction code, can exchange mes- 0.90 sages over a range of up to 50 cm with a probability of −16 message error of at most 10 . 0.85 To evaluate SwarmCom in a more realistic environment, 0.80 we conducted experiments with up to seven mobile robots. The flooding communication mode was found to dramati- 0.75 cally improve the reachability of other members in the swarm Number of robots (compared to a local broadcast mode) and did so without significantly affecting the bit error probability. Further exper- (b) iments showed that shortening the communication range Fig. 22 Experiments with groups of mobile robots comparing Swarm- increased the bit error probability as well as limited the net- Com (red, circles) and libIrcom (blue, triangles). a Distribution of P ; work reach. b mean of P (solid) and P (hollow) (Color figure online) l l To investigate how SwarmCom scales with the number of robots, we conducted experiments with up to 30 mobile than SwarmCom, as evident from the corresponding KS vec- e-pucks, and computer simulations that increased the robot tor, density until the area corresponding to a robot’s communi- cation range was entirely populated with other robots. The [4.207, 6.397, 7.630, 9.030, 10.316, 12.382] . (52) results from the experiments and simulations were in good agreement. They showed that the maximum number of com- When comparing (46)–(51) to the KS vector, it can be seen munication links per node is relatively low (up to around that changing the bit rate or communication range has a less 15) for any number of robots in the swarm. Consequently, severe impact on the bit error probability than changing to the network’s access and utilization operate independently of libIrcom. the total number of robots and, therefore, should be scalable. Figure 22b plots the probability of message loss for This results from the line-of-sight transmission mechanism SwarmCom (red, circles) and libIrcom (blue, triangles). As in optical communications: any nodes that are occluded will expected, similar communication ranges result in a compa- not be able to establish direct links. In contrast, radio-based rable probability of message losses. signals can reach any node within a communication range. Similar to previous sections, P predicts the trend of P Hence, the maximum robot density must be limited to prevent l l consistently. signal/channel interference. As a result, optical communi- cation provides benefits as offering a reasonable range for miniature robots, and coping well with low-density to high- 7 Conclusion density situations. Finally, SwarmCom was compared to libIrcom—until This paper proposed the first model to describe the infra- present, the only infra-red communication software avail- red signals transmitted and received on a widely used swarm able for the e-puck. We showed that SwarmCom has a 3–5× robotics platform, the e-puck robot. The model can be used larger likelihood of error-free transmissions than libIrcom by pairs of robots to exchange information. The model when using a similar range and bit rate. Overall, SwarmCom was shown to provide a good fit to measurements obtained can provide 0.8–3 times the range, between 1.4 and 8 times higher bit rates, and between 50 and 63% lower bit error from experiments that were different from those used during parameter identification. rates than libIrcom, even when no channel coding is used. This allows the user to prioritize specific parameters—for The second contribution of the paper is SwarmCom, an optical MANET for computationally severely constrained instance, 3 times larger communication range and 63% lower robots and its implementation on the e-puck, a robot with bit error rates are traded for only 1.4 times of the bit-rate. P P l e 112 Autonomous Robots (2020) 44:93–114 In comparison to the static robots experiments, mobile could have dramatic effects on swarm communication. Our robots experiments showed significant degradation of the efforts can be replicated for other communication devices, communication quality for both SwarmCom and libIrcom. and our results should encourage further work along these We showed that higher mobility impacts the system nega- lines. tively and this should be considered during the design of swarming algorithms. For instance, where throughput is not Open Access This article is distributed under the terms of the Creative the primary criterion, channel coding is recommended. To Commons Attribution 4.0 International License (http://creativecomm reliably exchange data at high bit rates, robots could tem- ons.org/licenses/by/4.0/), which permits unrestricted use, distribution, porarily cease motion, or limit their speed, when within and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative communication range, and resume activity thereafter. Commons license, and indicate if changes were made. A current limitation of SwarmCom—compared to most other MANETs—is its rudimentary routing, which forwards any new message to all possible neighbors. Due to the low References throughput, short communication range, and high mobility of the robots, obtaining up-to-date topological information Anees, S., & Bhatnagar, M. R. (2015). Performance evaluation of can present a challenge. Flooding therefore remains a valid decode-and-forward dual-hop asymmetric radio frequency-free option. Where the robots engage in frequent, point-to-point space optical communication system. IET Optoelectronics, 9(5), 232–240. communication, however, the flooding protocol is not scal- Arvin, F., Samsudin, K., & Ramli, A. R. (2009). A short-range infrared able. Further work on optical communication in swarm communication for swarm mobile robots. In 2009 International robotics (hard- and software) could provide more-reliable conference on signal processing systems, (pp. 454–458). IEEE. and higher-throughput systems as shown in Khan (2017), Balch, T., & Arkin, R. C. (1994). Communication in reactive multiagent robotic systems. Autonomous Robots, 1(1), 27–52. Zhang et al. (2018). More advanced systems could then Bormann, C., Ersue, M., Keranen, A. (2014). Terminology for extract topological information faster, making it possible to constrained-node networks (RFC 7228). Internet engineering realize more sophisticated routing protocols, as commonly task force (IETF). https://tools.ietf.org/html/rfc7228. Accessed 24 found in MANETs. A further extension could be for Swarm- May 2016. Caprari, G., Siegwart, R. (2005). Mobile micro-robots ready to use: Com to provide situated communication. In other words, in Alice. In 2005 IEEE/RSJ international conference on intelligent addition to obtaining the content of a message, the receiv- robots and systems, (pp. 3295–3300). ing robot would get informed about the relative position of Carruthers, J. B., & Kahn, J. M. (1997). Modeling of nondirected wire- the emitting robot. This could prove useful, for example, less infrared channels. IEEE Transactions on Communications, 45(10), 1260–1268. to maintain the connectivity with certain robots in the local Chen, C., et al. (2013). Graphene mechanical oscillators with tunable neighborhood. frequency. Nature Nanotechnology, 8(12), 923. Our channel model applies not only to the original e-puck Chen, J., Gauci, M., Li, W., Kolling, A., & Groß, R. (2015). Occlusion- platform but also to the e-puck 2, which was released in based cooperative transport with a swarm of miniature mobile robots. IEEE Transactions on Robotics, 31(2), 307–321. 2018. The e-puck 2 uses the same proximity sensors and Chlamtac, I., Conti, M., & Liu, J. J.-N. (2003). Mobile ad hoc network- measuring circuit as the original version. It should be noted ing: Imperatives and challenges. Ad Hoc Networks, 1(1), 13–64. that SwarmCom can be outperformed, at least in bit rate (up Cianci, C. M., Raemy, X., Pugh, J., & Martinoli, A. (2006). Com- to 5000 bps) and communication range (up to 600 cm), by munication in a swarm of miniature robots: The e-puck as an educational tool for swarm robotics. In Simulation of Adaptive dedicated communication hardware, such as the e-puck range Behavior (SAB-2006), Swarm Robotics Workshop (pp. 103–115). and bearing board (Gutiérrez et al. 2008, 2009a; Millard Berlin, Germany: Springer. et al. 2017). These solutions, however, add additional costs, Conti, M., & Giordano, S. (2014). Mobile ad hoc networking: Mile- weight, and energy demand to the default platform. stones, challenges, and new research directions. IEEE Communi- cations Magazine, 52(1), 85–96. A question that is open for future work involves the anal- Di Caro, G. A., Ducatelle, F., & Gambardella, L. M. (2009). Wireless ysis of OpenSwarm in practical applications. The presented communications for distributed navigation in robot swarms. In analysis relied on the assumption that the robots did not move, Workshops on applications of evolutionary computation (pp. 21– or moved at random. A more realistic scenario could involve 30). Berlin, Germany: Springer. Fischer, V., & Hickinbotham, S. (2010). A metabolic subsumption archi- robots that moved according to the demands of their respec- tecture for cooperative control of the e-puck. Nature inspired coop- tive tasks. erative strategies for optimization (NICSO) (pp. 1–12). Berlin, Overall, we demonstrated that a rigorous communication Germany: Springer. model, coupled with a well-designed communication system Forbes, C., Evans, M., Hastings, N., & Peacock, B. (2010). Gamma distribution (pp. 109–113). Hoboken, NJ: Wiley. Garattoni, L., & Birattari, M. (2018). Autonomous task sequencing in Information obtained through mail exchange with GCtronic (http:// a robot swarm. Science Robotics, 3(20), eaat0430. Glisic, S. G., & Leppänen, P. A. (2013). Wireless communications: www.gctronic.com/); schematics of the e-puck 2 have not been released at the time of writing this paper. TDMA versus CDMA. Berlin: Springer. 123 Autonomous Robots (2020) 44:93–114 113 Glover, I., & Grant, P. M. (2010). Digital communications.New York, Murray, L., Timmis, J., & Tyrrell, A. (2013). Modular self-assembling NY: Pearson Education. and self-reconfiguring e-pucks. Swarm Intelligence, 7(2), 83–113. Graham, R. L., Lubachevsky, B. D., Nurmela, K. J., & Östergård, P. R. Nemec, D., Janota, A., Hruboš, M., Gregor, M., & Pirník, R. (2017). (1998). Dense packings of congruent circles in a circle. Discrete Mutual acoustic identification in the swarm of e-puck robots. Mathematics, 181(1–3), 139–154. Press, W. H., Teukolsky, S. A., Flannery, B. P., Vetterling, W. T. (2007). Guerroumi, M., Pathan, A.-S. K., Badache, N., & Moussaoui, S. (2014). Kolmogorov–Smirnov Test. In Numerical recipes in FORTRAN: On the medium access control protocols suitable for wireless sen- The art of scientific computing (pp. 617–620). Cambridge, UK: sor networks—A survey. International Journal of Communication Cambridge University Press. Networks and Information Security, 6(2), 89–103. Prieto, A., Becerra, J., Bellas, F., & Duro, R. (2010). Open-ended evolu- Gutiérrez, Á., Campo, A., Dorigo, M., Amor, D., Magdalena, L., & tion as a means to self-organize heterogeneous multi-robot systems Monasterio-Huelin, F. (2008). An open localization and local com- in real time. Robotics and Autonomous Systems, 58(12), 1282– munication embodied sensor. Sensors, 8(11), 7545–7563. 1291. Gutiérrez, Á., Campo, A., Dorigo, M., Donate, J., Monasterio-Huelin, Rubenstein, M., Ahler, C., Nagpal, R. (2012). Kilobot: A low cost scal- F., Magdalena, L. (2009a). Open e-puck range & bearing minia- able robot system for collective behaviors. In IEEE international turized board for local communication in swarm robotics. In IEEE conference on robotics and automation (ICRA) (pp. 3293–3298). international conference on robotics and automation (ICRA), (pp. Piscataway, NJ: IEEE. 3111–3116). Piscataway, NJ: IEEE. Rubenstein, M., Cornejo, A., & Nagpal, R. (2014). Programmable self- Gutiérrez, Á., Tuci, E., & Campo, A. (2009b). Evolution of neuro- assembly in a thousand-robot swarm. Science, 345(6198), 795– controllers for robots’ alignment using local communication. 799. International Journal of Advanced Robotic Systems, 6(1), 25–64. Schmickl, T., et al. (2011). CoCoRo–The self-aware underwater swarm. Hadded, M., Muhlethaler, P., Laouiti, A., Zagrouba, R., & Saidane, In IEEE conference on self-adaptive and self-organizing systems L. A. (2015). TDMA-based MAC protocols for vehicular ad hoc workshops (SASOW) (pp. 120–126). Piscataway, NJ: IEEE. networks: A survey, qualitative analysis, and open research issues. Sesay, S., Yang, Z., & He, J. (2004). A survey on mobile ad hoc wireless IEEE Communications Surveys Tutorials, 17(4), 2461–2492. network. Information Technology Journal, 3(2), 168–175. Hauert, S., Leven, S., Zufferey, J.-C., Floreano, D. (2010). Seyfried, J., Szymanski, M., Bender, N., Estaña, R., Thiel, M., Communication-based swarming for flying robots. In Workshop on Wörn, H. (2005). The I-SWARM project: Intelligent small world network science and systems issues in multi-robot autonomy, IEEE autonomous robots for micro-manipulation. In Proceedings of the international conference on robotics and automation (ICRA).Pis- 2004 international conference on swarm robotics (pp. 70–83). cataway, NJ: IEEE. Berlin, Heidelberg: Springer-Verlag. Hirschman, K., Tsybeskov, L., Duttagupta, S., & Fauchet, P. (1996). Shi, Z., Beard, C., & Mitchell, K. (2013). Analytical models for under- Silicon-based visible light-emitting devices integrated into micro- standing space, backoff, and flow correlation in CSMA wireless electronic circuits. Nature, 384(6607), 338. networks. Wireless Networks, 19(3), 393–409. Hussain, F., Anpalagan, A., & Vannithamby, R. (2017). Medium access Telefunken, V. (1999). Reflective optical sensor with transistor output. control techniques in M2M communication: survey and critical Vishay Telefunken. http://zuff.info/doc/TCRT1000.pdf.Rev.A3. review. Transactions on Emerging Telecommunications Technolo- Trenkwalder, S. M., Esnaola, I., Lopes, Y. K., Kolling, A., & Groß, gies, 28(1), e2869. R. (2018). Online supplementary material: SwarmCom - an infra- Khan, L. U. (2017). Visible light communication: Applications, archi- red-based mobile ad-hoc network for severely constrained robots. tecture, standardization and research challenges. Digital Commu- Retrieved July 29, 2019 from https://naturalrobotics.group.shef. nications and Networks, 3(2), 78–88. ac.uk/supp/2018-003/. Lapidoth, A. (2009). A foundation in digital communication.Cam- Trenkwalder, S. M., Lopes, Y. K., Kolling, A., Christensen, A. L., bridge: Cambridge University Press. Prodan, R., & Groß, R. (2016). OpenSwarm: An event-driven Li, S., Kong, R., & Guo, Y. (2014). Cooperative distributed source seek- embedded operating system for miniature robots. In IEEE/RSJ ing by multiple robots: Algorithms and experiments. IEEE/ASME international conference on intelligent robots and systems (IROS) Transactions on Mechatronics, 19(6), 1810–1820. (pp. 4483–4490). Piscataway, NJ: IEEE. Li, Y., Du, S., Kim, Y. (2009). Robot swarm manet cooperation Tutuko, B., & Nurmaini, S. (2014). Swarm robots communication-base based on mobile agent. In 2009 IEEE international conference on mobile ad-hoc network (MANET). Proceeding of the Electrical robotics and biomimetics (ROBIO), (pp. 1416–1420). Piscataway, Engineering Computer Science and Informatics, 1(1), 134–137. NJ: IEEE. Wang, Q., Jaffr-Runser, K., Xu, Y., Scharbarg, J. L., An, Z., & Macker, J. P., & Corson, M. S. (1998). Mobile ad hoc networking and Fraboul, C. (2017). TDMA versus CSMA/CA for wireless mul- the IETF. SIGMOBILE Mobile Computing and Communications tihop communications: A stochastic worst-case delay analysis. Review, 2(1), 9–14. IEEE Transactions on Industrial Informatics, 13(2), 877–887. Malik, A., Singh, P. (2015). Free space optics: Current applications and Young, I. T. (1977). Proof without prejudice: Use of the Kolmogorov– future challenges. International Journal of Optics, 2015, 945483. Smirnov test for the analysis of histograms from flow systems and https://doi.org/10.1155/2015/945483. other sources. Journal of Histochemistry & Cytochemistry, 25(7), McLurkin, J., et al. (2014). A robot system design for low-cost multi- 935–941. robot manipulation. In 2014 IEEE/RSJ international conference Zhang, H., Yang, A., Feng, L., & Guo, P. (2018). Gb/s real-time visible on intelligent robots and systems, (pp. 912–918). light communication system based on white LEDs using T-Bridge Millard, A. G., et al. (2017). The Pi-puck extension board: A Raspberry cascaded pre-equalization circuit. IEEE Photonics Journal, 10(2), Pi interface for the e-puck robot platform. In IEEE/RSJ interna- 1–7. tional conference on intelligent robots and systems (IROS), (pp. 741–748). Piscataway, NJ: IEEE. Publisher’s Note Springer Nature remains neutral with regard to juris- Mondada, F., et al. (2009). The e-puck, a robot designed for education dictional claims in published maps and institutional affiliations. in engineering. In 9th conference on autonomous robot systems and competitions (Vol. 1, pp. 59–65). Castelo Branco, Portugal: IPCB. 123 114 Autonomous Robots (2020) 44:93–114 Stefan M. Trenkwalder was born Andreas Kolling is a principal in Innsbruck, Austria. He grad- scientist and technology lead at uated from the Federal Higher iRobot. He received a Ph.D. degree Technical Institute for Educating in electrical engineering and com- and Experimenting for Chemistry puter science in 2009 from the (HBLVA Rosensteingasse), University of California, Merced, Vienna, Austria in 2006 and was and a M.S. degree in computer awarded an Austrian Ingenieur science in 2006 and B.S. degree in degree in chemistry in 2011. From mathematics in 2004 from Jacobs the Vienna University of Technol- University, Bremen, Germany. ogy (TU Wien), Vienna, Austria, From 2013 to 2016 he was an he was awarded a B.Sc. degree in assistant professor in the Depart- electrical engineering and a BSc ment of Automatic Control and degree in computer engineering Systems Engineering at The Uni- in 2011 and 2012, respectively. versity of Sheffield, UK, where he Since 2013, he is working towards a Ph.D. in swarm robotics at the led the multi-robot systems lab. From 2010 to 2012 he was a post- Natural Robotics Lab at The University of Sheffield. His research doctoral research fellow at the Robotics Institute at Carnegie Mellon resulted, besides others, in the open-source project OpenSwarm, an University and at the University of Pittsburgh. His research interests operating system for swarm robots. His main areas of research inter- include planning, multi-robot systems, and human-robot interaction. ests are embedded operating systems, swarm robotics, distributed sys- He has served as a general co-chair for DARS in 2016, as asso- tems, and optical mobile communication. ciate editor for ICRA and IROS since 2014, and as guest editor for Autonomous Robots for the special issue ’Distributed Robots: From Iñaki Esnaola received the M.S Fundamentals to Applications’. degree in Electrical Engineering from University of Navarra, Spain Roderich Groß received the in 2006 and a Ph.D. in Electrical Diploma degree (summa cum Engineering from University of laude) in computer science from Delaware, Newark, DE in 2011. TU Dortmund, Germany, in 2001 He joined The University of She- and the Ph.D. degree in engineer- ffield in 2013 as a Lecturer and ing sciences from Université libre is since 2018 a Senior Lecturer de Bruxelles, Belgium, in 2007. in the Department of Automatic From 2005 to 2009, he was a Control and Systems Engineering JSPS Fellow with Tokyo Institute of The University of Sheffield. He of Technology, Japan; a Research is also a Visiting Research Col- Associate with University of Bris- laborator in the Department of tol, UK; a Marie Curie Fellow Electrical Engineering of Prince- with Unilever, UK; and a Marie ton University, Princeton, NJ since 2013. In 2010–2011 he was a Curie Fellow with Ecole Poly- Research Intern with Bell Laboratories, Alcatel-Lucent, Holmdel, NJ, technique Federale de Lausanne, and in 2011–2013 he was a Postdoctoral Research Associate at Prince- Switzerland. Since 2010 he has been with the Department of Auto- ton University, Princeton, NJ. Since 2018 he serves as the Power Sys- matic Control and Systems Engineering, The University of Sheffield tem Cyber-security and Privacy Subject Editor for the IET Smart Grid UK, where he is currently a Senior Lecturer. In 2018, he was a Vis- Journal. His research interests include information theory and com- iting Scientist at CSAIL, Massachusetts Institute of Technology. His munication theory with an emphasis on the application to smart grid research interests include swarm robotics, self-reconfigurable robots, problems. evolutionary robotics, and machine learning. He has served as the Yuri Kaszubowski Lopes received General Chair of DARS 2016, Editor of IROS 2015-2019, and as an a BSc degree in Computer Sci- Associate Editor of Swarm Intelligence, IEEE Robotics and Automa- ence in 2010 and an MEng degree tion Letters, and IEEE Computational Intelligence Magazine. in Electrical Engineering in 2012 from Santa Catarina State Univer- sity, Brazil and a PhD degree in Automatic Control and Systems Engineering in 2017 from The University of Sheffield. He was research associate in the Depart- ment of Electronic and Electri- cal Engineering at The University of Sheffield from 2016 to 2019. Since 2019 he has been a Lec- turer in Analysis of Algorithms and Computational Complexity at Federal University of Technology - Paraná, Brazil. His research interests are formal methods, distributed computation, swarm robotics, machine learning applied to control, and model predictive control.

Journal

Autonomous RobotsSpringer Journals

Published: Jan 20, 2020

There are no references for this article.