Formations with Decentralized Centroidal Voronoi Tessellation Algorithm

Formations with Decentralized Centroidal Voronoi Tessellation Algorithm

Proceedings of the 2009 IFAC Workshop on Networked Robotics Golden, CO, USA, October 6-8, 2009 Formations with Decentralized Centroidal Voronoi Tesse...

2MB Sizes 0 Downloads 91 Views

Proceedings of the 2009 IFAC Workshop on Networked Robotics Golden, CO, USA, October 6-8, 2009

Formations with Decentralized Centroidal Voronoi Tessellation Algorithm ? Joshua S. Adams ∗ Wei Sun ∗∗ YangQuan Chen ∗∗∗ ∗

Center for Self-Organizing and Intelligent Systems, Utah State University, Logan, UT 84322 USA (e-mail: [email protected]). ∗∗ Center for Self-Organizing and Intelligent Systems, Utah State University, Logan, UT 84322 USA (e-mail: [email protected]) ∗∗∗ Center for Self-Organizing and Intelligent Systems, Utah State University, Logan, UT 84322 (e-mail: [email protected]) Abstract: Centroidal Voronoi tessellations (CVTs) have recently attracted attention as a method for generating emergent behavior and swarm intelligence, for instance efficiently locating a source and creating evenly distributed formations. Previous research has focused on a centralized algorithm which depends on a base station computer to perform calculations and give the robotic agents direct movement commands. This research attempts to create an adaptive decentralized procedure for autonomous agents to create formations using CVTs. This decentralized approach will allow swarm systems a greater level of autonomy by removing the dependence on a centralized base station for calculating common agent tasks. Keywords: Autonomous, Decentralized control, Agents, CVT, Centroidal Voronoi Tessellation 1. INTRODUCTION

Multi-agent systems have a long history in computer science and engineering, and form an important branch of distributed systems. In recent years, the concept of multi-agency has been embodied with real robots or aerial vehicles thanks to the evolution of embedded hardware. As with any technology, there are several possible applications for it, with more and more ideas developing alongside the technology. As the technology develops, these applications of multi-agent systems are expected to gain robustness and to become less expensive over time. An interesting example scenario is a group of autonomous mobile robots, without centralized control or any global coordinator, cooperate with each other to achieve some common goal. As we want the robots to work efficiently, the first challenge is to devise a method to keep large numbers of them in a certain formation while moving or operating on a certain mission.

The ability of certain animals to form into organized groups for purposes of obtaining a given goal has recently received significant attention in the control systems community. This is manifest in many different animals– geese forming a V as they fly to reduce drag on members of the flock, and fish such as herring using shoals to hunt or confuse predators. These animals have no given leader and follow no orders to create these shapes and demonstrate this behavior– somehow each simply knows where it should be according to the information it has about where it is and the positions of its neighbors in the group. This innate ability to form into efficient groups and formations to accomplish a task without leadership is known as emergent behavior. Animals demonstrate emergent behavior in many contexts, as explained with the above two examples. This behavior is an extremely useful application for robotic swarms and if it can be understood, and controllable methods devised to implement a similar system in artificial agents, then a truly autonomous intelligent system will have been developed. Central to the idea of emergent behavior is the concept of a multi-agent system.

Formation control is extremely important for many applications of multi-agent systems and for duplicating emergent behavior as seen in animals. The ability to accurately control the formation of a group of agents can allow us accomplish a task more efficiently, for instance in less time, with less fuel, or with the fewest number of actions. As such an important topic, formation control has received significant attention in recent years. Some initial work was done in the field of formation control in (Wang and Hadaegh, 1996) in which formations of micro-satellites was studied. One of the first solutions for multi-robot formations was the virtual rigid structure with a leaderfollower style. Olfati-Saber (2006) proposed using rigid graph theory to define a formation and a gradient control law to determine the motion of the robots, assuming the robots are point masses with limited vision. Mart´ınez et al.

? Josh Adams and YangQuan Chen are with the Center for SelfOrganizing and Intelligent Systems (CSOIS), Department of Electrical and Computer Engineering, 4160 Old Main Hill, Utah State University, Logan UT 84322-4160, USA. Wei Sun is currently a Ph.D. candidate from Dept. of Auto Control, Beijing Institute of Technology, Beijing, China. Josh Adams’ research was supported in part by the Vice Presidential Fellowship at Utah State University. Wei Sun’s research was partially supported by the China Scholarship Council (CSC). This work was supported in part by NSF Grants # 0540179 (DDDAS) and # 0552758 (REU Site).

978-3-902661-53-1/09/$20.00 © 2009 IFAC

13

10.3182/20091006-3-US-4006.0021

IFAC NetRob 2009 Golden, CO, USA, October 6-8, 2009

Fig. 2. The MASnet Platform: Diagram showing the various parts of the MASnet platform. various applications including determining optimal placement of agents for triangulation of a hostile transmitter. CVTs have proven themselves to be a very efficient and resilient way for determining optimal placement of agents in a desired formation. In order to make a truly autonomous system, a method must be devised to provide a decentralized algorithm which has similar capabilities and response times to that of a centralized approach. This paper presents the details of our research into providing such a decentralized algorithm.

Fig. 1. CVT Example: An example of a randomly generated centroidal Voronoi tessellation, small dots are original generating points, circles are mass centroids 2 2 according to density ρi = e−8(xi +yi ) . (2007) explored strategies and procedures for developing coordinated multi-agent systems using proximity graphs, including analysis of Voronoi tessellations. See also (Bullo et al., 2009). Group control has evolved from there, exploring such things as formation control allowing for an arbitrary number of leaders, distributed formation control based on virtual spring force and potential fields, consensus based methods for determining the time-varying virtual center of their group. See (Ren, 2006), (Boonpinon and Sudsang, 2008), and (Sorensen and Ren, 2007).

2. THE MASNET PLATFORM The MASnet (Mobile Actuated Sensor networks) platform is designed to provide a test environment on which experiments with multiple autonomous agents can be conducted. The platform consists of a transparent acrylic layer atop a wooden frame on which the robots move. There is a camera mounted above the platform which reports the robots’ positions and orientations, via machine-recognizable markers on top of each, to a base station computer. The base station computer is running a program called Robot Commander which takes the information from the camera and interprets the images into coordinates, thus providing a GPS-like system for determmining the robots’ positions. This pseudo-GPS (pGPS) system is then used to report the position information to each of the robots, which are able to make decisions based on this data. Figure 2 shows a visual representation of the basic physical layout of the platform.

Recently, work in formation control has expanded into the area of CVTs (Centroidal Voronoi Tessellations). A computer generated example of a centroidal Voronoi tessellation can be seen in Fig. 1. CVTs provide a way of determining the placement of mass centroids according to a provided density function. Chen et al. (2005) solved the problem of distributed neutralization of a toxic 2D diffusion process by a formation control method. The diffusion process is modeled by a PDE system and the moving actuators’ locations are optimized by CVTs. Additional work involving CVTs has been done to determine optimal placement of resources, reading a sensory network at varying resolutions, and coverage of an area. See (Ju et al., 2002), (Schwager et al., 2007), and (Pimenta et al., 2008). Cort´es et al. (2005) and Fagiolini et al. (2008) also explored various CVT-based numeric algorithms in simulation for achieving maximum coverage of an area with a mobile sensor network using proximity graphs including usage of Voronoi tessellations, but did not go into specific formation control.

Each of the robots themselves are made up of a custombuilt chassis comprised of readily available commercial parts with a MicaZ mote from Crossbow performing as the robot’s controller. The MicaZ features a wireless communication module which can communicate with other MicaZ motes. The base station computer is connected to a mote, known as the gateway mote, which communicates with the robots on the platform, sending information such as pGPS coordinates or commands from the Robot Commander program.

CVT Formation control was addressed in (Rounds, 2008). However, the approach taken in that research was based on a centralized, base-station dependent system. This will be gone over in further detail in the next section under Centralized CVT Formations.

The Robot Commander program provides an interface to the user allowing them to send various commands to the robots, varying from simple move-to-destination commands to more complex procedures such as automated formations. Additionally, the program gives a top-down

This research endeavors to provide a fully distributed algorithm which is capable of calculating and executing specific CVT formations without dependence on a centralized controller. Such specific formations are useful for

14

IFAC NetRob 2009 Golden, CO, USA, October 6-8, 2009

k

view of the platform, allowing the operator to see the robots as the system does. Communication from the base station to the robots is provided via the gateway mote which manages outgoing and incoming traffic to the base station computer.

(5) pi∗ , as well as the unchanged points {pi }i=1,i6=i∗ are the new generating points; (6) If the new generating points meet the chosen convergence criterion, terminate; otherwise return to step 2.

The platform is ideally suited for investigating problems in swarm intelligence engineering, having been designed with multi-agent applications in mind. The platform is adapted to handle a variable number of agents, the only constraint being having the necessary hardware to manufacture more of them. As such, this platform has provided a very good location on which to perform experiments with CVT formations.

This algorithm is significantly simpler than Lloyd’s method, but requires a significant number of iterations to handle multiple generators and achieve convergence, as a single iteration only moves one generator. Both of these algorithms have strengths which are useful on an autonomous platform, therefore a combination of the two is used which also avoids the weaknesses. See Fig. 3 for a block diagram describing the basic functionality of the algorithm. Since a density is required for a CVT-based algorithm to function, one must either be present on the platform itself, or one must be artificially created. Since a formation may be desired at any arbitrary location, it is not feasible to depend on a natural density to exist at the desired spot. As a result, an artificial density must be created in order to effect the tessellation and distribute the robots evenly. This is accomplished via a network of artificial sensors which provide readings on a given density function which governs the formation to be made. These sensors are created with a set distribution across the platform and provide their readings according to their positions in the density. Next, the base station must determine which of the virtual sensors are within each robot’s individual cells. This step is performed in order to assist in locating the mass centroid of the cell. Once each sensor has been assigned to a robot’s voronoi cell, the mass centroid is calculated using the artificial readings created earlier. The robots are then ordered to move to the new centroids’ positions, and the formation is created.

2.1 Centralized CVT Formations Previous work on the MASnet platform with CVT Formations was limited to a centralized approach (Rounds, 2008). The centralized approach has the benefit of allowing the base station computer to perform all of the calculations, leaving the robots relatively free to complete other tasks if necessary. CVTs function by finding the mass centroids around a defined density function– these centroids are evenly distributed around the density via the algorithm. The algorithm used in the centralized formation approach is a hybridization of Lloyd’s algorithm and MacQueen’s algorithm. Lloyd’s algorithm employs a method which involves fewer iterations, a definitive benefit to an algorithm to be implemented in an autonomous system with limited resources. Unfortunately, it also involves some expensive calculations which are less advantageous to have to compute on a limited system. A description of Lloyd’s algorithm follows (Chao et al., 2006).

3. DECENTRALIZED CVT FORMATIONS

Given a region Ω, a density function ρ(x, y), defined for all x ∈ Ω, and a positive integer k

The centralized algorithm spares the robots from many calculations and allows a very high number of virtual sensors to be used, resulting in a very accurate formation. However, it also has the major disadvantage of requiring the base station computer to remain in close contact with the robots, in order for the base station to both receive their position information for tessellation calculation and giving the robots their new positions in the formation. This dependence on a central base station makes it less of a truly autonomous solution. A decentralized method allows the robots to be actually autonomous without dependence on open lines of communication with a central location, which may or may not be subject to various problems. A swarm using such a method could be capable of being cut off from the home station for extended periods of time in the event of a communication failure or interference.

k

(1) Select an initial set of k points {pi }i=1 as generators; k (2) Construct the Voronoi sets {Vi }i=1 associated with the generators; (3) Determine the mass centroids of the Voronoi sets; these centroids become the new set of generator k points, {pi }i=1 ; (4) If the new points meet the chosen convergence criterion, terminate; otherwise, return to step 2. By contrast, MacQueen’s algorithm makes use of discrete CVTs, but does not use mass centroids– an approach which is required for accurate distribution across a formation. A description of MacQueen’s algorithm follows (Rounds, 2008).

The decentralized algorithm takes a similar approach to the centralized one described previously, however it takes place primarily on the individual robots. The base station detects the robots’ positions via the pGPS system and transmits each robot’s position to it. This is the final involvement the base station has in the formation algorithm. Upon receiving this information, each robot transmits its own position to its fellows on the platform, which save each individual received identification and

Given a region Ω, a density function ρ(x, y), defined for all x ∈ Ω, and a positive integer k k

(1) Select an initial set of k points {pi }i=1 as the generators; set the integer array Ji = 1 for i = 1, . . . , k; (2) Choose a random point q ∈ Ω; (3) Find the generator pi closest to the point q; denote the index of that generator as i∗; pi∗ +q (4) Set pi∗ ← Ji∗ Ji∗ +1 and Ji∗ ← Ji∗ + 1;

15

IFAC NetRob 2009 Golden, CO, USA, October 6-8, 2009

Fig. 3. Centralized CVT Algorithm: Block diagram of the centralized CVT algorithm. The base station performs all calculations. position for later use in the formation algorithm. This current position finding system uses direct communication between the robots, which in a production system would be receiving their individual positions via a true GPS satellite.

(1) Manipulate the shape description equation into the form S = 0. (2) Place the new S into (1). (3) Determine a suitable σ for the application. For example, consider the equation for a V shape, y = |xcen − x| + ycen , where xcen and ycen denote the point of the V. S = −|xcen −x|+(y−ycen ). The formation equation for this shape is shown in (2).

The functionality of the decentralized algorithm is described in block diagram form in Fig. 4. Similar to the centralized algorithm, virtual sensors must be created and read in order to determine the mass centroid of the Voronoi cells. The virtual sensors’ positions are calculated by each robot. They each then determine which sensors are within their individual cells and calculate the mass centroid according to their virtual sensors’ readings and move to the new location.

ρ(x, y) = e−σ[−|xcen −x|+(y−ycen )]

There is a distinct difficulty present in implementing such a decentralized CVT algorithm on actual robots and hardware as opposed to implementing one in a simulation or other form. A decentralized algorithm implemented in a simulation has the advantage of having more resources being available, such as greater processing power and ease of data access. In addition, implementing a decentralized algorithm on such a system allows the abstraction of some important details that cannot be ignored in a physical system which is being implemented on robots. Some of these details include difficulties like hardware limitations such as low available memory, sensitivity of the robot microcontrollers to outside disturbance (collisions), hardware glitches, wireless message loss or saturation, and sensor inaccuracy. Having run into some of these issues on the platform, it is requisite to implement some changes in the system.

Many geometric shapes can be turned into potential formations for autonomous agents governed by CVTs. Since CVTs depend on the aforementioned density function in order to be able to distribute generating points evenly across the region, such a function must be formed in order to create the desired formation. Gaussian density functions can be altered to produce a density in a desired shape, rather than a single point, which can be used to provide a CVT algorithm with the necessary information to allow the distribution of its generating points. Such an equation is of the form (1), where S is an equation describing the desired geometric shape to be made into a formation, and σ is some large positive gain. 2

(2)

4. RESULTS

This algorithm is dynamic to the number of robots on the platform, with no need to reset hard values when a robot has been added or removed from active use. Since each robot’s position is communicated to all robots on the platform, they can individually make the decisions necessary to take part in the formation at the correct spots. This is also a great benefit of using the CVT approach; the CVT structure is open to and even facilitates this particular type of optimization.

ρ = e−σS

2

The first of the required changes is regarding the Gaussian density function mentioned in the previous section. In order to implement such a function for use by robots, some changes are necessary to make its usage feasible on a hard system. Firstly, σ, which is usually desired as a high value, must be made very small in order to create a density with enough definition to attract the robots to a rigid formation structure. Secondly, the exponential is multiplied by a value of 1024, which provides a high enough maximum to provide good contrast for centroid calculation without being so high as to potentially cause overflow of the variables on the microprocessors.

(1)

To create a formation equation, use the following procedure, given a description equation for a desired formation shape.

The decentralized CVT algorithm provides similar response times to the centralized work done in Rounds

16

IFAC NetRob 2009 Golden, CO, USA, October 6-8, 2009

Fig. 4. Decentralized CVT Algorithm: Block diagram of the decentralized CVT algorithm. Each robot performs the calculations for its own cell. (2008). However, due to limitations with the platform and the robots on which it is implemented, there is a strict restriction on the number of virtual sensors that may be used in calculating the density function and its associated mass centroids. The number of virtual sensors used had to be decreased dramatically from the ideal in order to keep from overloading the robots’ memory and allow them to continue to function. As can be seen in Fig. 5, the resolution of the artificial density field is greatly affected by the number of virtual sensors present. The resulting affect of lower sensor numbers on the formation itself is usually confusion on the part of the robots or collisions as they attempt to reach the same centroid location. The current limit on the number of virtual sensors is 104. As a result of this decrease in virtual sensors, the algorithm has suffered from a distinct loss of accuracy. Occasionally, due to the robots’ starting locations a single agent will read a density of 0 on all virtual sensors in its cell, thus preventing it from taking part in the formation. This, however, happens infrequently. With the iterative approach of the algorithm, the robots which start without any usable density in their Voronoi cells often pick some up once neighboring robots move away toward their mass centroids. The lower value of σ widens the density, which allows the robots to more easily pick up the density and converge faster. However, the wider density also has the disadvantage of providing a less rigid formation, as there is the potential for individual robots to be slightly outside of the desired location.

Fig. 5. Gaussian Density Resolution: Above is the density for a diagonal line as read by 18 sensors with a larger σ left and smaller σ right. Below is the density as read by 104 sensors with the same values of σ relative to above. shows a V-shape governed by (4) in which several of the robots are slightly away from the ideal location. −6

ρk = 1024e−10 ρk = 1024e

As shown in Fig. 6 all robots present take part in the formation, although the formation accuracy has been negatively affected by the lower resolution of virtual sensors and widening of the artificial density. The formation shown in the left picture of the figure is a diagonal line across the platform. This formation is governed by (3), where k indicates a sensor in the set of virtual sensors, ρk is the density’s reading at that sensor’s position, and ycen denotes the y axis crossing point. The robots in the diagonal line are not completely aligned, as can be seen on the left. This is a symptom of the wider density. The colored lines seen in the figure denote the paths taken by the individual robots from their starting locations. The second picture

[(xk −xcen )+(yk −ycen )]2

−10−6 [−|xcen −xk |+(yk −ycen )]2

(3) (4)

See table 1 for a list of average convergence times observed for the starting locations tried. Table 1. Average convergence times by starting location Horizontal Line V-shape Diagonal Line

Clustered 42.12s 53.01s 31.25s

Separated 43.95s 90.00s 32.37s

The convergence times tend to be lower for a more clustered starting location. Additionally, there are generally

17

IFAC NetRob 2009 Golden, CO, USA, October 6-8, 2009

Deployment of Mobile Sensors for Optimal Connected Sensing Coverage, 486–491. Springer Berlin / Heidelberg. doi:10.1007/978-3-540-69170-9. Ju, L., Du, Q., and Gunzburger, M. (2002). Probabilistic methods for centroidal Voronoi tessellations and their parallel implementations. Parallel Comput., 28(10), 1477–1500. Mart´ınez, S., Cort´es, J., and Bullo, F. (2007). Motion coordination with distributed information. IEEE Control Systems Magazine, 27(4), 75–88. Olfati-Saber, R. (2006). Flocking for multi-agent dynamic systems: algorithms and theory. Automatic Control, IEEE Transactions on, 51(3), 401–420. Pimenta, L.C.A., Schwager, M., Lindsey, Q., Kumar, V., Rus, D., Mesquita, R.C., and Pereira, G.A.S. (2008). Simultaneous coverage and tracking (SCAT) of moving targets with robot networks. In Proceedings of the Eighth International Workshop on the Algorithmic Foundations of Robotics (WAFR). Guanajuato, Mexico. Ren, W. (2006). Consensus based formation control strategies for multi-vehicle systems. In Proceedings American Control Conference. Rounds, S. (2008). Distributed Control For Robotic Swarms Using Centroidal Voronoi Tessellations. Master’s thesis, Utah State University. Schwager, M., Slotine, J.J., and Rus, D. (2007). Decentralized, adaptive control for coverage with networked robots. In Proceedings International Conference on Robotics and Automation. Rome. Sorensen, N. and Ren, W. (2007). A unified formation control scheme with a single or multiple leaders. In Proceedings American Control Conference ACC ’07, 5412–5418. Wang, P. and Hadaegh, F. (1996). Coordination and control of multiple microspacecraft moving in formation. http://trs-new.jpl.nasa.gov/dspace/ bitstream/2014/27701/1/96-1771.pdf.

Fig. 6. CVT Formations: Examples of distributed formations. Left is a diagonal line, right is a V-shape. fewer problems with robots reading no density data on their sensors when the robots are clustered. Future work along these lines will include investigation into specific formations’ applications to sensing tasks such as locating unknown transmitters in a potentially hostile environment. We also plan to complete additional work on the algorithm which will investigate alternative methods for storing the virtual sensor data, thus reducing the amount of memory required on each individual robot in an attempt to increase the possible number of virtual sensors and thereby increase the algorithm’s accuracy. Additional work will also need to be done in order to try to reduce the frequency of glitches and problems due to hardware malfunctions. ACKNOWLEDGMENTS We are thankful to Haiyang Chao and Shelley Rounds for stimulating discussions. Special thanks go to Shelley Rounds for her efforts in maintaining, improving and documenting the MAS-net platform at CSOIS from 2007 to 2009. REFERENCES Boonpinon, N. and Sudsang, A. (2008). Formation control for multi-robot teams using a data glove. In Proceedings IEEE Conference on Robotics, Automation and Mechatronics, 525–531. Bullo, F., Cort´es, J., and Mart´ınez, S. (2009). Distributed Control of Robotic Networks. Applied Mathematics Series. Princeton University Press. To appear. Electronically available at http://coordinationbook.info. Chao, H., Chen, Y., and Ren, W. (2006). A study of grouping effect on mobile actuator sensor networks for distributed feedback control of diffusion process using central Voronoi tessellations. In The Proceedings of the 2006 IEEE International Conference on Mechatronics and Automation, volume June 2006, 769–774. Chen, Y., Wang, Z., and Liang, J. (2005). Optimal dynamic actuator location in distributed feedback control of a diffusion process. In Proceedings 44th IEEE Conference on Decision and Control and 2005 European Control Conference CDC-ECC ’05., 5662–5667. Cort´es, J., Mart´ınez, S., and Bullo, F. (2005). Spatiallydistributed coverage optimization and control with limited-range interactions. In ESAIM. Control, Optimisation & Calculus of Variations, 691–719. Fagiolini, A., Tani, L., Bicchi, A., and Dini, G. (2008). Decentralized Deployment of Mobile Sensors for Optimal Connected Sensing Coverage, chapter Decentralized

Appendix A. RELATED EXPERIMENTS Video clips of related experiments will be uploaded to a YouTube channel at http://www.youtube.com/user/ MASnetPlatform

18