Yang Song And Jason M. O’Kane

3y ago
31 Views
2 Downloads
247.13 KB
8 Pages
Last View : 5d ago
Last Download : 3m ago
Upload by : Brenna Zink
Transcription

Decentralized Formation of Arbitrary Multi-Robot LatticesYang Song and Jason M. O’KaneAbstract— In this paper, we propose a decentralized algorithm to form arbitrary repeating formations of multiplerobots. Methods are known to form specific kinds of repeatingstructures such as squares, triangles, and hexagons by modelingeach robot as a particle that responds to attractive and repulsiveforces generated by nearby robots. However, such methods aregenerally designed by hand for one specific type of lattice. Ourapproach is more general, in the sense that we present a singlealgorithm, for which a description of the desired repeatingpattern is part of the input. We represent this pattern as adirected graph, in which edges show the desired rigid bodytransformations between the local frames of pairs of neighborrobots. The robots autonomously organize themselves into afamily of rooted trees, and use these trees to perform taskassignments locally and without conflicts. We show, via oursimulated implementation, that our algorithm works for robotsystems with hundreds of robots to form various lattice patterns.Our experiments also show that the approach can recoverrapidly from robot failures, even if those failures impact alarge fraction of the robot population.I. I NTRODUCTIONLarge systems of autonomous robots can be useful fortasks ranging from surveillance and and search to the deployment of large-scale mobile sensor networks. Severalscholars published broad reviews of this topic in early years[2], [3]. However, some robot coordination problems remainchallenging, including the problems of pattern formation andadaptation [1].Our work in this paper focuses on the multi-robot patternformation problem. We propose a single decentralized algorithm that can form any repeating lattice pattern, with largenumbers of robots. Figure 1 shows an example, in which100 robots running our algorithm form a repeating octagonsquare pattern.The desired formation is represented using a graph calledlattice graph that is known by every robot. Each vertex ofthe lattice graph represents one “role” that a robot can play.Because we are interested in repeating patterns, each role islikely to be filled by many different robots. The lattice graphedges, which are labeled with rigid body transformations,indicate the relative poses that neighboring robots shouldhave in the completed lattice.To run the algorithm, each robot only needs to sensethe identities and relative poses of any nearby robots, andto broadcast short messages to those neighbors. Using thisinformation, each robot continually executes a series of foursteps.Yang Song (song24@email.sc.edu) and Jason M. O’Kane(jokane@cse.sc.edu) are with the Department of Computer Scienceand Engineering, University of South Carolina, Columbia.(a)(b)Fig. 1. (a) The initial poses of 100 robots; (b) The final formation afterexecuting our algorithm, using the octagon-square lattice graph shown inFigure 7.1) First, each robot decides whether to consider itself aroot robot—one that remains motionless—or a descendent robot—one that moves based on a task assignmentfrom a parent robot. These decisions are made basedon a concept we call “authority,” which depends on thearbitrary IDs assigned to each robot, but also includesinformation about a robot’s ancestors, to ensure thatthe robots quickly form a consistent, stable forest ofauthority trees. Each robot selects its highest-authorityneighbor as its parent, or considers itself a root if itsown intrinsic authority outweighs all of its neighbors.2) Next, each robot chooses a role. Root robots alwaysselect, without loss of generality, the first lattice vertexas their role. Descendant robots accept their role as partof the task assignment from their parent.3) After selecting a role, each robot computes a locallyoptimal task assignment for its neighbors, using thestandard Hungarian algorithm [6]. Each robot broadcasts this assignment, along with the authority valueused in the first step, to its neighbors.4) Finally, each descendant robot moves toward to position assigned to it by its parent, subject to the constraintthat it must remain within communication range withthat parent along the way.The result of this algorithm is that the robots can form different types of geometric formations, including the repeatedlattice patterns.One important feature of the algorithm is that it isstateless. Each robot chooses the movements to make andmessages to send based strictly on its recent observationsand messages received. The impact of this design is thatthe algorithm can recover rapidly from many kinds ofunexpected changes, including changes to the set of activerobots due to failures or additions.

The specific contributions of this paper are: We introduce a method for representing desired multirobot formations—both repeating patterns and finiteformations—using a directed multigraph called a latticegraph. We propose a strategy based on authorities for therobots to autonomously organize themselves into treesthat show which robots will accept task assignmentsfrom which other robots, in a way that is robust tochanges. Based on these trees, we use local task assignmentsto from the desired global formation based on localobservations. We describe an implementation of this technique, andpresent experiments confirming its effectiveness.The remaining presentation is organized as follows. Wegive a brief summary of previous works on decentralizedcoordination algorithms and distributed formation controlstrategies in Section II. The formation problem and necessarynotations are addressed in Section III. In Section IV, wedescribe our algorithm in detail. Section V describes ourimplementation and the simulations to verify our algorithmand evaluate its performance. Concluding remarks appear inSection VI.II. R ELATED W ORKSome scholars have worked on the repeated lattice pattern formation problem for multi-robot systems. Fujibayashi,Murata, Sugawara and Yamamura proposed decentralized aprobabilistic-based control algorithm to generate the triangular lattice pattern [4]. Hanada, Lee and Chong constructedan algorithm to form separated triangular lattices and thenreunify them as a whole in an environment with obstacles[5].Specifically, triangle and hexagon lattice patterns can beformed using artificial virtual forces among robots [14][15] [17] [18]. Spears, Heil and Zarzhitsky applied thephysicomimetics framework (PF) to swarms of robots toform hexagonal formations [17]. The idea of PF is that therobots observe the relative positions of their neighbors andreact to each other by attractive or repulsive forces in termsof these positions [18]. One limitation of using PF is thatsome robots may settle in local minima. Mullen, Monekosso,Barman and Remagnino created virtual robot node (VRN)architecture for the PF algorithm. Specific positions in thetriangle lattice are replaced by virtual robot nodes so thatfinally a hexagon lattice could be formed [13]. The limitationof the VRN scheme is that robots need to coordinate todetermine the center of the hexagonal cells.Prabhu, Li and McLurkin extended Spears’s work by coloring the robots and adding a local error correction strategyto avoid letting robot move to the center of a hexagonalcell due to the energy well. Hence, the formed repeatedhexagonal lattice patterns are more stable [15]. However,purely using the PF-based algorithm limits the applicationon the holonomic robot model. Navarro, Pugh, Martinoliand Matı́a improved the PF-based strategy by implementinga finite state machine so that this algorithm can functionwith nonholonomic robots. As a result, the formed triangularlattice formation can move as a whole in the same direction[14].In addition to triangular and hexagonal lattices, squarelattice patterns can also be formed using PF. Martinsonand Payton extended the PF-based algorithm by addingan extra alignment step before applying the virtual forceamong robots. The robots first move to parallel lines usingcompasses and then form square lattice using PF withoutsuffering from local minima [11].Nevertheless, both probabilistic-based control formationalgorithms and the methods based on force-balanced interaction between robots only worked to form a specificlattice pattern which are known to the algorithm designer. Incontrast, our algorithm accepts a description of the desiredlattice as part of its input.Much previous work addressed the formation problem interms of the distributed task assignment problem. Smith andBullo studied a geometric target assignment problem to letthe robots move to the target autonomously and finally forma geometric formation [16]. However, their method reliedon the assumption of an equal number of robots and targetpositions. Michael, Zavlanos, Kumar and Pappas proposeda market-based coordination algorithm in which the robotsdynamically determine the formation pose by bidding fortask assignment, if each robot knows the maximum numberof robots that can be assigned to a certain task [12]. One limitation is that this algorithm does not guarantee the optimalassignment. Moreover, the task-assignment-based algorithmsrequire the robots have knowledge of all the tasks in advance.Macdonald extended the work of Michael et al. [12] byassuming the robots acquire the tasks online. In his thesis theiterative closest point algorithm (ICP) is applied to the robotsin order to match a set of robot positions to the set of modeldata of the target formations [10]. The author showed finallythe target formations will be asymptotically stable using hisimproved method if each robot knows relative positions ofall other robots, but the algorithm will not converge if somerobots lose communication with other robots [10].The task-assignment-based algorithms work well on solving multi-robot formation problems if the number of robotsis not large. The major limitation is they require the robots toknow tasks in the global sense. Therefore, they are expensiveand difficult to apply directly to a large-scale multi-robotsystem.Liu and Shell considered a special problem of formationcontrol called “formation morphing”, namely, the formationis changed as if it is gradually “deformed” in places, withthe major pattern unaltered [9]. Their algorithm synthesizedthe graph matching problem and the assignment problem.The authors represented the robots routing trajectories usingthe Euclidean graph. These trajectories are projected from theaugmenting paths in the bipartite graph so that the formationmorphing can be achieved optimally [9].Our algorithm distributes the assignment problem to eachrobot and we represent the desired formation using a graph

we call a lattice graph. Different from the Euclidean graphin Liu and Shell’s work [9], we assign rigid the body transformation to the edges so that the lattice graph reflects bothlocation and orientation relationship between two vertices.By virtue of the lattice graph notation, we can run ouralgorithm to generate various lattice formations more thanrepeated line, triangle, square, hexagon lattice patterns withminimal cost given a set of robots.III. P ROBLEM S TATEMENTThis section defines the lattice formation problem weaddress in this paper.A. RobotsWe consider a collection of n identical robots R {r1 , . . . , rn } moving through an obstacle-free plane.1) Robot identification numbers: Each robot r R isassigned a unique identification (ID) number id(r). TheseIDs can be assigned arbitrarily, as long as they are selectedfrom a total order whose binary relation we denote as .Given the IDs id(ri ) and id(rj ) of two robots, a robotcan decide whether id(ri ) id(rj ) or id(rj ) id(ri ). Inpractice, such IDs could be assigned, for example, based onthe serial number or network MAC address of each robot.2) Poses and coordinate frames: The pose pi (xi , yi , θi ) of each robot ri consists of its position andits orientation, expressed in an arbitrary but fixed globalcoordinate frame. At a certain time t, write the pose of rias pi (t). In addition to this global frame, we also define abody frame attached to each robot, in which the robot isalways at the origin, facing along the positive x-axis. LetT (ri ) denote the 3 3 homogeneous matrix representing therigid body transformation from the body frame of ri to theglobal frame: cos θi sin θi xicos θiyi (1)T (ri ) sin θi001Note that we use this global frame for modeling purposesonly; the robots do not, in general, know their own globalcoordinates. Thus, we denote the local pose of robot rj in(i)(i) (i) (i)the body frame of robot ri using pj (xj , yj , θj ).3) Motion: Each robot can rotate in place with maximumangular velocity ωmax or move forward with maximum linearvelocity vmax .4) Sensing and communication: Each robot can senseand communicate with other robots that are within a shortdistance, called the robots’ range and denoted φ, of its ownposition. The other robots within that range are called theneighbors of that robot. Specifically, every t seconds: The sensors of each robot ri generate a collection ofobservations, indicating the IDs and relative poses (thatis, with coordinates expressed in the body frame of ri )each of its neighbors. The communication hardware of each robot ri canbroadcast a short message to its neighbors. DetailsT r(40, 0)T r(0, 40)T r( 40, 0)T r(0, 40)(a)(b)Fig. 2. A lattice graph in (a) creates a repeated square pattern. There is onenode with four outgoing edges connecting to itself. Each edge is associatedwith a translation T r(x, y) of position (x, y) relative to the current node.Here the edge length is 40. For a robot playing the role of this node, itsneighbors should be in locations (40, 0), (0, 40), ( 40, 0) and (0, 40) toform the repeated square pattern in (b).about the specific messages used in our algorithmappear in Section IV.In practice, one can choose for φ either the robots’ effectivecommunication range or the robots’ effective sensing range,whichever is smaller.B. Lattice graphsWe use a directed graph to represent the desired patternthat the robots should form.Definition 1: A lattice graph is a strongly connecteddirected multigraph in which each edge e is labeled withT (e)a rigid body transformation T (e) and each v w has anT (e) 1inverse edge w v.Figure 2 shows an example lattice graph. The intuitionis that, when the lattice is fully formed, each robot willbe associated with one lattice graph vertex, and that theoutgoing edges of that vertex will correspond to the numberand relative poses of that robot’s neighbors.Definition 2: Given a lattice graph G (V, E) and a setof robots R {r1 , . . . , rn }, we say that R satisfies G if thereexists a function f : R V that preserves the neighborhoodstructure of G. Specifically, for any i and j, if ri and rj areneighbors, there must exist an edge eij : f (ri ) f (rj ) inE, such thatT (rj ) T (ri )T (eij ).(2)That is, we require that T (eij ) describes the relative pose ofrj in the body frame of ri .Informally, we want to position the robots so that eachrobot can be mapped to a vertex in the lattice graph calledits role and the relative poses of each of robot’s neighborsmatch that transformations that label the out-edges of its rolevertex.C. Evaluation criteriaTo measure how well our algorithm works, we use twoevaluation criteria.

T r(0, 40)T r( 35, 20)(a) Repeated hexagon pattern with bad qualityT r(35, 20)T r(0, 40)T r(35, 20)T r( 35, 20)(b) Repeated hexagon patternwith good quality(a)(b)Fig. 3. A lattice graph in (a) creates a repeated hexagon pattern. Thereare two nodes, each has three outgoing edges connecting to the other. Eachedge is associated with a translation of pose relative to the current node.Here the edge length is 40. For a robot playing the role of the vertex onthe left side, its neighbors should be in locations (0, 40), ( 35, 20) and(35, 20); for a robot playing the role of the vertex on the right side, itsneighbors should be in locations (0, 40), (35, 20) and ( 35, 20) to formthe repeated hexagon pattern in (b).1) Execution time: First, we are interested in the amountof time needed for the robots to reach a static state.Definition 3: A robot ri is static at time t if its pose piremains the same at all future times, so thatpi (t′ ) pi (t)for all t′ t.We define the execution time t̄exe of the system as thesmallest time at which all of the robots are in static states:t̄exe inf{t (0, ) every r R is static at time t }Our goal is to keep t̄exe as small as possible.2) Formation Non-fulfillment Ratio: In addition to theexecution time, we are also interested in the quality of thefinal formation.In our algorithm, the robots continue moving until theyreach a set of poses that satisfies the lattice graph, with eachrobot keeping track of its role with that graph. For a givenrobot ri , let Ni denote the number of neighbors of ri whenour algorithm completes, and let Ei denotes the number ofoutgoing edges of its role vertex. Then we can measure theoverall lattice quality using a non-fulfillment ratio:nΓ 1 X Ei Nin i 1Ei(3)Informally, Γ measures the average fraction a robot’spotential neighbors that are “missing” in the final formation.Because, in a stable formation, each robot ri has 0 Ni Ei , possible values for Γ range from 0 to 1. We prefer smallervalues for Γ.Figure 4(a) and Figure 4(b) show two examples, in whichboth sets of robots satisfy the lattice graph in Figure 3(a) butwith different non-fulfillment ratios.IV. A LGORITHM D ESCRIPTIONThis section introduces our algorithm. The basic idea isthat each robot repeatedly accepts incoming messages, usesthose messages to decide which other robot, if any, it shouldFig. 4. To form repeated hexagon pattern with 10 robots, final formationcan vary due to the initial configurations. (a): formation non-fulfillment ratioΓ 0.4 (b): formation non-fulfillment ratio Γ 0.267.accept a task assignment from that one. Each robot computesand broadcasts a new task assignment for its own neighbors,and finally moves toward the destination specified its assigned task. Throughout this process, the robots exchangemessages. Each message contains an authority (defined inSection IV-A) and a matching (defined in Section IV-B).A. AuthoritiesThe key idea to make our local strategy reach a globalstatic state is the authority carried by each robot. Thissection defines authorities, provides a comparison operationfor them, and shows how the robots will use authorities toform tree structures.1) Authority definition:Definition 4: An authority is an ordered list of robot IDsΛ hid1 , . . . , idk i.The first ID in the list, id1 is called the root ID. Likewise, thefinal ID in the list, idk is called the sender ID. The numberk of IDs in the list is called its length.The intuition is that, as messages are passed through thesystem, the authorities stored in those messages will identifya chain of robots that have agreed to accept task assignmentsfrom the previous robot, starting from the sender idk andcontinuing back to the root id1 . This definition includes thepossibility that k 1, in which the root and sender are thesame robot.Because our algorithm depends on each robot identifyingthe highest authority in its neighborhood, the primary operation we need for authorities is to compare two authorities.Definition 5: Given two authorities Λ1 hid11 , . . . , id1k iand Λ2 hid21 , . . . , id2l i, Λ2 is higher than Λ1 if1) id21 id11 , or2) l k if id21 id11 , or3) id2l id1k , if id21 id11 and l k.This definition gives first priority to authorities whoseroots have higher IDs, second priority to authorities thatrequire fewer steps back to the root, and finally prefersauthorities whose sender robot has the highest ID. Noticethat, under this definition some pairs of authorities areincomparable, namely, pair of authorities that have the same

root, sender, and length, but differ at some other positionwithin the list. In th

all other robots, but the algorithm will not converge if some robots lose communication with other robots [10]. The task-assignment-based algorithms work well on solv-ing multi-robot formation problems if the number of robots is not large. The major limitation is they require the robots to know tasks in the global sense. Therefore, they are .

Related Documents:

Big Day Wedding Songs 41 Song One 41 Song Two 42 Song Three 42 Song Four 42 Hadda N'Ayt Hssain, O, Bride: Berber Wedding Song 42 Women Writing Africa: West Africa and the Sahel 44 Béatrice Djedja, Maĩéto, or the Battle of the Sexes 46 Song One 46 Song Two 46 Song Three 46 Communal, The Plump Woman's Song 48

10 Speaking and Writing Song 9 61 1:14 11 Walk and Ride Song 10 68 2:00 12 The Subjects Song 11 74 2:09 13 Celebratio Song 12 81 1:42 14 Rex and Regina Song 14 101 1:00 15 The Mighty Miles Song 15 106 0:54 16 Porto-Amo Song 16 111 1:25 17 Bonus Chant: Being Chant 16 112 0:49 18 Cito-Lente Song 17117 1:08 19 Forte Song 18 122 1:08 20 The .

6 -7 Song writing (Part 1) The Basics to composing a song and lyrics creation 8-9 Song writing (Part 2) Writing the melody and accompaniment for the song 10 Song writing (Part 3) Group rehearsals and compositions TERM 4 1-2 Song writing (Part 3) Group rehearsals and compositions 3-4 Graded Assessment: Song writing Group Performance 5 – 6

the lyrics of Ruth B’s title song, Dandelions, from her album, “Safe Haven.” I will do this through summarizing the song, providing a mood for the song, identify the intended audience for the song, highlight the purpose of the song, focus on the theme of the song and give my honest review on the song.

iPod blueprint (class) state: current song volume battery life behavior: power on/off change station/song change volume choose random song iPod (variable) #1 state: song "1,000,000 Miles" volume 17 battery life 2.5 hrs behavior: power on/off change station/song change volume choose random song iPod (variable) #2 state: song "Letting You .

About the JASON Project The JASON Multimedia Science Curriculum (JMSC), also known as the JASON Project, is developed by the JASON Foundation for Education and currently serves approximately 25,000 teachers and one million students, the majority of whom are in grades four through nine. A multimedia, inter-

say the parts of sing, sang sung, , song. Point and say each line with expression. Point and read Hootie’s song. Hootie’s song is on the software CD. Sing a Song of Sixpence Sing a song of sixpence, A pocket full of rye. Four and twenty blackbirds Baked in a pie. When the pie was

3. Play the song "I Don't Like Cheese" and students fill in their worksheets For this song, students listen and fill in their I Don't Like Cheese song worksheets by drawing the different food items they hear. The song runs through the vocab pretty quickly, so play the song at least twice. After playing the song a few times, elicit the answers .