Control >> Self-Assembly Self-AssemblyWe aim at controlling a group of s-bots in fully autonomous manner in such a way that they locate, approach and connect with an object (called the prey). Connections can be either direct or indirect via a chain of connected robots of which the foremost grasps the prey. ControllerThe process of self-assembly is governed by the attraction and the repulsion among s-bots, and between s-bots and the prey (see Figure 1). The color ring of the prey is permanently activated with red (illustrated by a gray ring), the color ring of the s-bots is activated either in red or in blue (illustrated by a gray or a white ring, respectively). Initially, all s-bots activate the color ring with blue. They attempt to avoid blue objects, and to approach/connect with red objects. Thus, the process is triggered by the presence of the red, cylindrical prey. Once an s-bot has established a connection with a red object, it activates its color ring in red, thus it attracts unconnected s-bots to connect with it. The basic principle of signaling the state (of being connected or unconnected), allows the emergence of (global) connection patterns of dimensions far beyond the robot's (local) sensing range. 1 p = 02 activate color ring in blue 3 repeat 4 if (torque problem on tracks) then 5 p = p + 1 6 if (p > P) then 7 execute recovery move 8 p = 0 9 endif 10 else 11 p = 0 12 endif 13 14 (i_1,i_2) = featureExtraction(camera) 15 (i_3,i_4) = sensorReadings(proximity) 16 (o_1, o_2, o_3) = neuralNetwork(i_1, i_2, i_3, i_4) 17 18 if ((o_3 > 0.5) AND (grasping requirements fulfilled)) then 19 grasp 20 if (successfully connected) then 21 activate color ring in red 22 break 23 endif 24 endif 25 apply (o_1, o_2) to tracks 26 until (timeout reached) Algorithm 1 describes the control module for self-assembly. The core of the algorithm is given by the lines 14 to 16. Based on the camera image and the readings of the left-front and right-front proximity sensors, the controller assigns values to the variables $i_1, i_2, i_3$ and $i_4$. A neural network controller, a simple perceptron, gets these values as inputs, and computes the three outputs $o_1, o_2,$ and $o_3$ that are used to control the speed of the wheels and the connection mechanism. The 15 weights of the network, connecting the five input nodes (one for the bias) with the three output nodes are identical to the one used in simulation (Groß and Dorigo, 2004). Results with one s-bot approaching a preyWe examine the ability of a single s-bot to approach and to establish a physical connection with the prey. The prey is equipped with an LED ring which is activated in red. Initially, the s-bot is put at a specific distance d (25 or 50cm) and orientation apha (0, 90, 180, 270 degree) with respect to the prey. For each combination of d and alpha, 5 repetitions are carried out, thus in total the s-bot is tested in 40 trials. If the s-bot does not succeed within 300s, the trial is stopped. We repeated the experiment for four different s-bots. In all 160 trials, the s-bots succeeded in approaching and connecting with the prey. Partly, the high reliability is due to the recovery move: in 14 times during this experiment an s-bot monitored high torque reading values for its tracks, and launched the recovery move to prevent the tracks from potential damage (see Algorithm 1). This usually occurred if the protruding rigid gripper prevented the s-bot from aligning itself towards a close prey. Every time, the s-bot was able to detect this stagnation and the simple recovery move allowed the s-bot to approach the object for another time.Figure 2 shows a plot of the observed completion times (in seconds), that is, the total time elapsed until the s-bot was successfully connected. The average completion time for the 80 trials with distance 25cm (50cm) is 22.6s (34.9s). Note that there are substantial differences in the hardware among the s-bots (e.g., s-bot 3, 6, and 11 are equipped with a camera different from the one used by s-bot 13; s-bots are labeled from 1 to 35). Only in case of s-bot 6, and only if it was put at the higher distance of 50cm, the performance was clearly lower when compared to other s-bots. We observed that the quality of the camera images of s-bot 6 were in general poor, thus the s-bot could sporadically not detect the prey at a distance of 50cm. Nevertheless, s-bot 6 managed in all 20 trials to connect starting from this distance. Overall, the controller was capable of achieving self-assembly for the different s-bots in all 160 trials with success. We believe that, at present, there is no other robotic system available which performs such autonomous docking task with somewhat comparable or better performance, both with respect to reliability and speed. Results with one s-bot approaching a teammateWe examine the ability of an s-bot to approach and to establish a physical connection with a (non-moving) teammate. The target s-bot activates its LED ring in red color. Initially, the s-bot is put at a distance of 50cm heading towards its teammate. If the s-bot does not succeed within 300s, the trial is stopped. Different from assembly with the prey (which is cylindrical), the performance in assembly with a teammate depends on the relative approaching angle. Here we neglect approaching angles for which the two s-bots are heading against each other with their connection mechanism in the front. Although we successfully tried a few times to let the s-bot connect under such condition, the current behavior is not efficient and might potentially damage the hardware. The control has been designed for approaching and grasping connected s-bots only. Approaching unconnected s-bots from any angle will be addressed in the future. We focus on the approaching angles 0, 60, and 120 degree, whereas 0 corresponds to the target s-bot's tail. The approaching angle 60 is of special interest, since at this angle a vertical pillar is mounted on the s-bot, which makes it nearly impossible to grasp the ring. For each approaching angle, 20 trials have been performed. In all 60 trials, the s-bot did successfully connect. Due to the cylindrical shape of the pillar, the gripper often slid to the left or the right side and could eventually grasp the ring. A recovery move was launched for six times; in each case the approaching angle was 60 and the s-bot's gripper collided with the pillar of the target s-bot.Figure 3 shows a plot of the observed completion times (in seconds). The average completion times for the 20 trials with approaching angle 0, 60 and 120 degree are 17.9, 26.4 and 17.9s, respectively. Results with a group of six s-bots approaching a preySo far, we have restricted our study to situations in which a single s-bot is approaching a single object for grasping. One challenge in the design of multi-robot systems is to let the robotic units perform cooperative rather then disruptive behaviors. In this section we want to assess the performance of a group of six s-bots accomplishing self-assembly with the prey given as an initial seed.Figure 5 shows a bar-plot of the 33 trials performed. The gray intensity of each bar indicates the number of s-bots that could successfully connect within the time frame. The height of the bar represents the number of elapsed seconds until the last s-bot connected. In total, 193 times an s-bot succeeded in establishing a connection, while only 5 times an s-bot failed. In 29 out of 33 trials, all 7 objects were physically connected; on average this took 96.4s. To the best of our knowledge, there exists no other study on self-assembly which uses more than two autonomous mobile robots. Results with one s-bot on different types of rough terrainWe examine the ability of a single s-bot to approach and to establish a physical connection with the prey. Except for the difference in the terrain, the experimental set-up and the control are kept unchanged.In addition to the normal (flat) ground we used previously, we consider two types of rough terrain: a very regular rough terrain that remains mostly flat, but impossible to access for most standard wheeled robots (here referred to as rough terrain), and the white plaster bricks which provide a very rough, non-uniform terrain (here referred to as very rough terrain). Figure 6 shows the performance of s-bot 13 in the three different types of terrain. For all three terrains, 40 trials have been performed according to the setup discussed previously. In all the 80 trials on the flat ground and the rough terrain the s-bot successfully connected to the prey. On the very rough terrain, the s-bot failed only once for both initial distances (25 cm and 50cm), since it got stuck during a recovery move. In the other 38 trials, the s-bot could successfully connect with the prey. We observed that in the very rough terrain, the s-bots often launched the recovery move during the approach phase. The roughness of the terrain caused a high torque on the tracks during navigation. Thus, the mechanism to detect stagnation was too sensitive. Nevertheless, the reliability and performance of our system on rough terrain were better than expected. Results with a group of six s-bots on different types of rough terrainIn this section we want to assess the performance of a group of six s-bots accomplishing self-assembly under rough terrain conditions with the prey given as initial seed. We examine the ability of a group of six s-bot to approach and to establish a physical connection with the prey. Except for the difference in the terrain, the experimental set-up is identical to one described previously. In case of the terrain of moderate roughness the controller is kept unchanged. As discussed in the previous section, we observed that in the very rough terrain the recovery move did occur often during the approach phase. This was caused by the high torque reading values on the tracks during navigation. Therefore, we increase the threshold P of Algorithm 1 from 5 to 29. Thus, the recovery move is launched only if the torque remains high for at least 5s approx.Figure 7 summarizes the results on self-assembly obtained for the three different types of terrain. Overall, the performance of the algorithm which has been designed for flat terrain conditions is not affected if the s-bots move on a terrain of moderate roughness. For both terrains, a single s-bot connected in 100 percent of the cases, while being in a group of size six, an s-bot connected in 97 percent of all cases. Even with the very rough terrain, a single s-bot connected in 95 percent of the cases, while being in a group of size six, a single s-bot connected still in almost 70 percent of the cases. At present, there exist no results to compare to in the literature, concerning self-assembly on rough terrain with one or more s-bots, or on the self-assembly of groups of more than 2 robots. We successfully transferred the control module for self-assembly. The controller was capable of letting s-bots of different hardware and for a variety of initial placements successfully assemble with a prey or a teammate in 220 out of 220 trials. We believe that, at present, there is no other robotic system available which performs such autonomous docking task with somewhat comparable or better performance, both with respect to reliability and speed. We have studied self-assembly of a group of six s-bots with each other and the prey. In 29 out of 33 trials, all 7 objects were physically connected; on average this took 96.4 seconds. Only in five out of 198 cases, an s-bot failed to connect. To the best of our knowledge, there exists no other study on self-assembly with more than two autonomous, mobile robots. We examined the performance of an s-bot and a group of s-bots if opposed to rough terrain conditions. We utilized a terrain of moderate roughness, and a terrain which was very rough. The system performed very well for the terrain of moderate roughness, and even in the most difficult terrain, almost 70 percent of s-bots could successfully establish a connection. Example movies:
Task: cooperative transport of an s-toy by pre-attached s-bots; Terrain: flat (moderate fraction); Control: simple, handcoded, homogeneous. Task: self-Assembly with the s-toy (initial seed); Terrain: white plaster bricks, very rough, non-uniform; Control: neural network-based, homogeneous. References
Control >> Self-Assembly |
Swarm-bots project started on October 1,2001 |
The project terminated on March 31, 2005. |
Last modified: Fri, 27 Jun 2014 11:26:47 +0200 |
web administrator: swarm-bots@iridia.ulb.ac.be |