Decentralized Heading Control with Rate Constraints using Pulse-Coupled Oscillators
11 Decentralized Heading Control with RateConstraints using Pulse-Coupled Oscillators
Timothy Anglea ( IEEE Member ) Yongqiang Wang ( IEEE Senior Member ) Abstract —Decentralized heading control is crucial for roboticnetwork operations such as surveillance, exploration, and coop-erative construction. However, few results consider decentralizedheading control when the speed of heading adjustment is re-stricted. In this paper, we propose a simple hybrid-dynamicalmodel based on pulse-coupled oscillators for decentralized head-ing control in mobile robots while accounting for the constrainton the rate of heading change. The pulse-coupled oscillator modelis effective in coordinating the phase of oscillator networks andhence is promising for robotic heading coordination given thatboth phase and heading evolve on the same one-dimensionaltorus. However, existing pulse-coupled oscillator results requirethe phase adjustment to be instantaneous, which cannot holdfor robot heading adjustment due to physical limitations. Wepropose a generalization to the standard pulse-coupled oscillatormodel to allow for the phase to adjust at a finite rate, yetstill have the oscillator network converge to the desired state,making our approach applicable to robotic heading coordinationunder rate constraints. We provide rigorous mathematical prooffor the achievement of both synchronized and desynchronizedheading relationships, and experimentally verify the results usingextensive tests on a multi-robot platform.Index - control constraint, heading control, synchroniza-tion, desynchronization, pulse-coupled oscillators, phase responsefunctions
I. I
NTRODUCTION
Driven by recent accelerated technological advances, mobilerobot networks are receiving increased attention, being widelyused in warehouse management, surveillance, reconnaissance,search and rescue, and even cooperative construction. Effi-cient and effective coordination of robotic networks requiresadvanced cooperative control algorithms, which have beenextensively studied in the past decade [1]–[3].However, due to the disparate discrete-time nature ofcommunication and the continuous-time evolution of motiondynamics, robotic network coordination intrinsically inheritshybrid dynamics, which makes its rigorous treatment verydifficult. In fact, to simplify the design, many existing results(e.g., [4]–[8]) choose to design the decentralized controller inthe continuous-time domain and then discretize the controllerin implementation to conform to the discrete-time nature ofcommunication. Such a design makes the obtained coordi-nation algorithm sensitive to discretization errors, negativelyaffecting the achievable coordination accuracy.Another difficulty in motion coordination lies in the controlinput constraint due to a finite speed of heading adjustment,which adds more nonlinearity to the already nonlinear robot Timothy Anglea and Yongqiang Wang are with the department of Electri-cal & Computer Engineering, Clemson University, Clemson, SC 29634, USA { tbangle,yongqiw } @clemson.edu network coordination problem. Note that in the coordinationof robot headings, since robot heading evolves in the nonlinearone-dimension torus, existing approaches addressing control-constrained consensus on states that evolve in Euclidean space,such as [9]–[14], are not applicable.In this paper, we will consider an approach to achieveheading control in a decentralized network with a constrainton the rate of heading change using hybrid dynamics inspiredby oscillator networks. Recent research on complex oscillatornetworks, such as [15], [16], has studied their collectivebehavior and the ability to control populations of oscillators.However, those results require continuous coupling betweenoscillators, and do not lend themselves well to the discretenature of communication in robotic networks. Thus, we willfocus on the pulse-coupled oscillator model. Not only isthe approach completely decentralized, but it also avoidsthe discretization problem, as the hybrid dynamics take intoaccount the continuous evolution of motion and the discretenature of communication explicitly.The pulse-coupled oscillator (PCO) model was first in-troduced by Peskin [17]. He used pulse-coupled oscillators(PCOs) to model the synchronization of pacemaker cells in theheart. Mirollo and Strogatz later improved the model, provid-ing a rigorous mathematical formulation [18]. Communicationlatency, packet loss, signal corruption, and energy consumptionare all minimized due to the simplicity of the pulse-basedcommunication between oscillators in the network [19].In this paper, we apply pulse-coupled oscillator strategies tocontrol the heading, θ , of a group of mobile robots using theanalogy between oscillator phase and robot headings whichboth evolve in the one-dimensional torus. More specifically,by relating the robot heading to the phase of an oscillator, wecan coordinate the robot headings using phase coordinationmechanisms based on the pulse-coupled oscillator model. Withthe many beneficial properties of PCO networks, such as lowcommunication latency and energy consumption [20], [21],PCO synchronization and desynchronization strategies seemideal for the decentralized control of a swarm of mobile robots[22].However, existing literature on PCO synchronization anddesynchronization strategies, except for our recent work [23],requires the oscillator phase to change instantaneously [20],[21], [24]–[34]. Due to the natural physical constraint on therate of rotation, direct application of these strategies is notfeasible in actual heading control. In this paper, we proposea generalization of the standard PCO model which doesnot require instantaneous change in phase to achieve phasecoordination. (It is worth noting that, different from our recent a r X i v : . [ ee ss . S Y ] O c t work [23] which only addresses clock synchronization, weaddress both synchronization and desynchronization of PCOsand their application to heading control.) The generalizedPCO model can achieve proper phase coordination under anarbitrary constraint on the rate of phase adjustment. To rec-oncile the constantly evolving phase and the communication-triggered heading update, we also propose a heading coordi-nation mechanism to control robot headings in the presenceof heading rate constraints. The results address the hybriddynamics of continuous-time motion evolution and discrete-time communication directly and hence can be applied inimplementation without discretization.In Section II, we will discuss preliminary details for a pulse-coupled oscillator network. In Section III, we will describe themodel for mobile robots under heading rate constraints andits relationship to oscillators under phase rate constraints. Wewill then rigorously show how a mobile robot network underheading rate constraints can achieve heading synchronizationand desynchronization in Sections IV and V, respectively.Next, we will present physical experiments on a robotic plat-form in Section VI that demonstrate the application of pulse-coupled oscillator strategies under the heading rate constraintto collective motion coordination. We will conclude with ourresults and future work in Section VII.II. O SCILLATOR P RELIMINARIES
Let us consider a network of N identical pulse-coupledoscillators. Let φ i ∈ S = [0 , c φ ) be the associated phaseof oscillator i ∈ V = { , , · · · , N } , where S is the one-dimensional torus and c φ is the phase threshold value forthe oscillators. In [20], [32]–[34], c φ is chosen to be π , butis chosen to be in [23], [30], [31]. In this paper, we willchoose c φ = 2 π . Each oscillator evolves its phase at a rate ω i .For our analysis, each oscillator has an identical fundamentalfrequency, ω (i.e., ω = ω = · · · = ω N = ω ), and evolvesnaturally at that rate on the interval [0 , π ) .During the normal evolution of the network, when anoscillator reaches the threshold value of π , it fires a pulse andresets its phase to zero. All connected oscillators then receivethat pulse, being notified of the firing instance of an oscillatorin the network. Receiving a pulse will cause an oscillator tochange its phase according to the chosen PCO algorithm. Letus denote the amount that oscillator i adjusts its phase, φ i ,when a pulse is received as ψ i = F ( φ i ) = lim τ ↓ (cid:0) φ i ( t + τ ) (cid:1) − φ i ( t ) = φ + i − φ i (1)where φ i and φ + i represent the phase of oscillator i beforeand after receiving a pulse, respectively. The function F ( φ i ) is called a phase response function (PRF) or phase responsecurve (PRC), and is used to determine the amount that anoscillator will adjust its phase as a function of the oscillator’sphase when a pulse is received [35]. By an appropriate choicefor the PRC and oscillator network topology, the phases ofthe oscillators in the network can converge to a state ofsynchronization, where all of the phases achieve the samevalue [20], [23] or a state of phase desynchronization, wherethe phases evenly separate from each other as much as possible[30]–[32], [34] III. P ULSE -B ASED H EADING C OORDINATION
Let θ i ( t ) ∈ S represent the heading of robot i ∈ V in anetwork of N identical robots. To control the heading of themobile robot network, we propose the following PCO-inspiredframework.In addition to the variable θ i ( t ) to represent the headingof robot i , an internal phase variable φ i ∈ [0 , π ) is given toeach robot such that its initial value is the initial heading ofthe robot, θ i (0) . This auxiliary variable represents the phase ofan oscillator, and evolves at the rate, or frequency, ω i . Underno interactions between neighboring robots, the phase variableevolves at the fundamental frequency ω i = ω . When the valueof the phase variable φ i reaches the threshold of π , it resetsto zero, and the robot sends out, or fires, a pulse to all robotsconnected to it in the network.The control for the heading of the robot, then, follows thephase variable. The rate at which the robot rotates, ˙ θ i , is givenby ˙ θ i = ˙ φ i − ω (2)where ˙ φ i = ω i is the rate at which the phase variable evolves.However, there is a physical constraint on how fast the robotcan rotate. That is, | ˙ θ i | ≤ ω max must hold for some maximumrotational rate ω max . This natural constraint requires that theheading, θ i ( t ) , evolves continuously on the one-dimensionaltorus. Thus, a constraint is implied on the rate of the phasevariable φ i , such that | ˙ θ i | = | ˙ φ i − ω | ≤ ω max (3)holds. This implied constraint on the phase variable, φ i , alsorequires it to evolve continuously on the one-dimensionaltorus.To our knowledge, all existing literature on PCO networks,except for our previous work [23] on clock synchronization,has the phase value change instantaneously, i.e. | ˙ φ | = ∞ ,at pulse firing instances. Since the heading rate constraintimplies a rate constraint on the auxiliary phase, we requirethat the phase not change instantaneously. In this paper, wewill generalize the standard PCO model approach such that thephase value is rate constrained at all times, and then apply theresults to heading coordination under heading rate constraints.To ensure the heading rate constraint in (3), when robot i receives a pulse, we let robot i increase or decrease the rateof evolution of its phase variable, ω i , by ω max for a certainamount of time, τ i , in order to achieve the required phaseadjustment, ψ i , as in (1). If the robot receives another pulsebefore the time τ i is completed, then the robot will use itscurrent phase value φ i to redetermine a new adjustment ψ i , andthus determine new values for ω i and τ i . In fact, the amount oftime, τ i , the phase variable spends at this new rate is dependenton the phase amount ψ i that it needs to adjust, as given in (4). τ i = | ψ i | ω max (4)Thus, once an amount of phase adjustment ψ i is determined,the phase variable will increase its rate to ω i = ω + ω max if ψ i is positive, or decrease its rate to ω i = ω − ω max if ψ i is negative, for time τ i determined in (4). Once the time Time (seconds) P h a s e / H ea d i ng (r a d i a n s ) Robot 1 PhaseRobot 6 PhaseRobot 1 HeadingRobot 6 Heading
Figure 1. Example evolution of two robots’ phase and heading values inresponse to received pulses for a network with N = 6 robots in an all-to-alltopology. The robot heading changes when the robot phase variable deviatesfrom the fundamental frequency, ω , following the heading control given in(2). τ i has elapsed, the phase variable returns to its fundamentalrate ω . If ψ i is zero, then the phase variable remains at itsfundamental rate, ω , and evolves until the next firing instance.Therefore, when a robot receives a pulse, its phase variablewill adjust its rate according to the rate constraint methoddescribed. That is, using the chosen phase response function F ( φ i ) , the phase variable will begin to evolve at rate ω i for time τ i , and then return to evolving at the fundamentalfrequency ω . Thus, based on the heading control given in (2),during the normal evolution of the phase variable, the robotdoes not rotate, and when a pulse is received, the robot willrotate at rate ˙ θ i = ± ω max for time τ i and then stop rotating.If a new pulse is received before time τ i is complete, then therate of rotation for the robot will update for the new amount oftime τ i . Fig.1 illustrates the relationship between the robot’sphase variable and heading in a network with six robots in anall-to-all topology.With the heading control given in (2), as the values for thephase variables across all of the robots in the network achievetheir desired state by following the chosen PRC, the headingof the mobile robots will also achieve the same desired state. Itleaves us to show, then, that the phase variables in the networkare able to achieve the desired states of synchronization anddesynchronization under the heading rate constraint.IV. S YNCHRONIZATION UNDER H EADING R ATE C ONSTRAINT
In this section, we consider the dynamics of synchronizingmobile robots under rate constrained heading evolution. Allthat is required is to take the amount of adjustment for phasevariable φ i , i.e. ψ i , and determine the necessary amount oftime, τ i , to change the frequency ω i . We then let the phasevariable evolve at the new frequency for the required amountof time before it returns to its fundamental frequency, ω . Phase, i -- /20/2 P h a s e R e s pon s e C u r v e , Q ( i ) Figure 2. The delay-advance phase response curve (PRC) given in (6) forheading synchronization
Phase, i -- /20/2 P h a s e R e s pon s e C u r v e , Q ( i ) Figure 3. The delay-advance phase response curve (PRC) given in (6) forheading synchronization with an example refractory period D = 0 . π . A. Phase Response Function
We will consider the pulse-coupled oscillator PRC synchro-nization strategy given in [20]. This synchronization algorithmuses a delay-advance PRC to describe the phase update at eachfiring instance. Specifically, when a robot receives a pulse, itupdates its phase variable, as in (1), by the amount given by F ( φ i ) = αQ ( φ i ) (5)where Q ( φ i ) = (cid:40) − φ i ≤ φ i ≤ π π − φ i π < φ i < π (6)and α ∈ (0 , is the coupling strength of the network.This PRC is illustrated in Fig. 2. Additionally, a (non-zero)refractory period of duration D ∈ [0 , π ) can be includedin the PRC, such that a robot does not respond to anyincoming pulses when its phase variable is within the region of [0 , D ) , and continues to evolve freely, as illustrated in Fig.3. Including this refractory period has been shown to improveenergy efficiency within the network [20] and to be robustto communication latency [25], making this PRC approach agood candidate for achieving synchronization within a mobilerobot network.Without loss of generality, we can order the robots by theirinitial phase variables such that robot has the smallest phaseand robot N the largest (i.e., ≤ φ ≤ · · · ≤ φ N < π ).To quantify the synchronization within the network, an arc isdefined as a connected subset of the interval [0 , π ) . We canthus define the following set of functions, v i,i +1 , for all i ∈ V : v i,i +1 ( φ ) = (cid:26) φ i +1 − φ i if φ i +1 ≥ φ i π − ( φ i − φ i +1 ) if φ i +1 < φ i (7)where robot N +1 maps to robot . We say that the containingarc of the phase variables is the smallest arc that contains allof the phases in the network. The length of this arc, Λ , isgiven mathematically as Λ = 2 π − max i ∈V { v i,i +1 ( φ ) } (8)When the phase variables in the network are synchronized,and have the same value, the containing arc, Λ , is zero. B. Synchronization with Heading Rate Constraint
As shown in [23], the PRC in (5) is capable of achiev-ing synchronization in a connected PCO network under theimplied phase rate constraint as described in Sec. III, whereit is possible to model the behavior of the network using atime-varying coupling strength for each phase variable in thenetwork. Specifically, if a new pulse arrives at time t < τ i ,then the phase variable has only achieved a fraction of theamount of the desired phase change before it responds to thenew pulse. This fractional amount of the desired phase changecan be seen as a reduction of the coupling strength, α , of robot i by the ratio t τi , and thus the effective coupling is boundedin the interval (0 , α ] .We can apply this result to the control of mobile robots. Theorem 1.
Let N mobile robots, each with heading θ i , bein a (strongly) connected network topology, such that the con-taining arc of the headings is less than some ¯Λ ∈ (0 , π ] . Thenusing the phase response curve given in (5) with α ∈ (0 , and refractory period D not greater than π − ¯Λ , the headingcontrol given in (2) will synchronize the headings of the robotswith the heading rate constraint given in (3) .Proof. The proof for this theorem follows from the resultsfound in [23]. By using the heading control given in (2) suchthat the initial value for the phase variable φ i is set to be θ i (0) , we have that θ i = ( φ i − ω t ) mod 2 π for i ∈ V . Thus,to show that the headings of the robots θ , . . . , θ N achieve thestate of synchronization, we only need to show that the phasevariables φ , . . . , φ N achieve the state of synchronization.Since the initial headings of the robots are in a containingarc ¯Λ ≤ π , the initial phase variable values will also be ina containing arc ¯Λ ≤ π . From the results in [23], the phase Phase, -2 /5- /50/52 /5 P h a s e U pd a t e , F () Original PRFRate-Constrained PRF
Figure 4. Phase response functions (PRFs) to achieve desynchronization underthe heading rate constraint. ( N = 5 , l = 0 . , l = 0 . , ω = 2 π , ω max =0 . ω , t = 0 . seconds) Phase,
02 /54 /56 /58 /52 P h a s e a f t e r upd a t e , + Original PRFRate-Constrained PRF
Figure 5. Phase update rule based on phase response functions (PRFs) inFig. 4. ( N = 5 , l = 0 . , l = 0 . , ω = 2 π , ω max = 0 . ω , t = 0 . seconds) variables following the phase response curve given in (5) underthe implied phase rate constraint given in (3) will synchronizefor α ∈ (0 , and refractory period D not greater than π − ¯Λ .Therefore, the headings of the robots θ , . . . , θ N will achievesynchronization.V. D ESYNCHRONIZATION UNDER H EADING R ATE C ONSTRAINT
We now rigorously analyze the dynamics of desynchroniz-ing mobile robots with different initial headings under rateconstrained heading evolution. As in the previous section onsynchronization, all that is required is to take the amount ofadjustment for phase variable φ i , i.e. ψ i , and determine thenecessary amount of time, τ i , to change the frequency ω i . Wethen let the phase variable evolve at the new frequency for therequired amount of time before it returns to its fundamentalfrequency, ω . A. Phase Response Function
Phase desynchronization is defined to be the network statewhen all phases variables are spread out evenly such thatthe difference between any two neighboring phases is exactly πN . As shown in [34], when instantaneous phase changes areallowed, the phase response function (PRF) given by F ( φ i ) = l ( πN − φ i ) 0 < φ i < πN πN ≤ φ i ≤ π N − N l (2 π N − N − φ i ) 2 π N − N < φ i < π (9)where l ∈ [0 , and l ∈ [0 , are constants denotingthe coupling strength such that l and l are not both zerosimultaneously, can guarantee phase desynchronization in anall-to-all connection topology. The function in (9) is illustratedwith the solid blue line in Fig. 4. Thus, from (1), a phaseupdate rule can be written as φ + i = φ i + F ( φ i )= (1 − l ) φ i + l πN < φ i < πN φ i πN ≤ φ i ≤ π N − N (1 − l ) φ i + l π N − N π N − N < φ i < π (10)From (10), φ + i ∈ (0 , π ) is a strictly monotonically increas-ing function of φ i ∈ (0 , π ) , as illustrated with the solid blueline in Fig. 5. In this paper, we will use this PRF as a basisfor ensuring the phase rate constraint.To rigorously analyze the network as it converges towardphase desynchronization, we will use the measure given in[34] to quantify the degree of achievement toward desyn-chronization. Without loss of generality, we can order therobots by their phase variables such that, at time t = 0 , ≤ φ N < φ N − < · · · < φ < φ < π holds. Since thephase update rule is strictly monotonically increasing, then thefiring order of robots is invariant, as shown in Lemma 1 in[34]. Thus, if robot i is the next to fire after robot i − at time t = 0 , then it will always be the next to fire after robot i − .Therefore, the phase variable differences between neighboringrobots can always be expressed as: (cid:40) ∆ i = ( φ i − φ i +1 ) mod 2 π, i = 1 , , . . . , N − N = ( φ N − φ ) mod 2 π (11)Phase desynchronization implies that the phase differencesbetween neighboring robots are equal to πN . Thus, the follow-ing measure P is used to quantify phase desynchronizationbased on phase differences: P (cid:44) N (cid:88) i =1 | ∆ i − πN | (12)It is clear that this measure has a minimum of zero, andequals zero only when phase desynchronization is achieved inthe network. B. Effects of Rate Constraints on Phase Response Function
Let us analyze the behavior of the robot network under theheading rate constraint given in (3). Once robot i has received a pulse and calculated the necessary change in frequency, ω i ,to achieve the phase adjustment ψ i in time τ i , two possibilitiescan follow: 1) the robot receives no new pulses within time τ i that cause a phase adjustment, and 2) the robot receives anew pulse within time τ i that causes a phase adjustment. Ifwe represent the duration of the time interval between the newand previous pulse firing instances as t , we can divide thesetwo cases mathematically as 1) t ≥ τ i , and 2) t < τ i .1) In the first case, robot i finishes adjusting its phase vari-able by ψ i , and returns to evolving at the fundamentalfrequency ω . The same effective change in the phasevariable and robot heading has been achieved as if therobot had immediately changed its phase variable andheading by ψ i and let the phase variable evolve at rate ω for a time of duration t . Thus, no effective changein the phase update rule occurs.2) In the second case, the robot has not yet achievedits desired amount of change in the phase variable.Rather than having adjusted the whole amount ψ i , it hasadjusted only a portion of that amount, t τ i ψ i , in the timeinterval between received pulses. The robot then will useits current phase value at the time when the new pulse isreceived to redetermine new values for ψ i and τ i . Thistruncated phase evolution is equivalent to having therobot immediately change its phase variable and headingby t τ i ψ i and letting the phase variable evolve at rate ω for a time of duration t . This fractional amount of thedesired change can be seen as a reduction of the couplingstrength, l or l , of the PRF for robot i by the ratio t τ i .We now consider how (9) is affected by this behavior causedby the heading rate constraint given in (3). The maximumamount of time needed to make the desired phase adjustmentis τ max = max { l , l } πω max N . If, as in the first case above,there are no new pulses within time τ max , then there is noeffective change to the behavior of the network. Similarly,if the required time, τ i , for robot i to complete the phaseadjustment, ψ i , is smaller than t , then there is no effectivechange to the behavior of that robot. Otherwise, if the requiredphase adjustment, ψ i , is larger than ω max t (i.e., if τ i > t ),then each robot with a phase variable φ i ∈ (0 , πN − ω max t l ) ∪ (2 π N − N + ω max t l , π ) when the previous pulse was fired onlycompletes a phase adjustment of ω max t , a fractional amountof the required adjustment. Thus, for that previous pulse, wecan describe the behavior of the network with a PRF given by F ω ( φ i ) = L ( φ i )( πN − φ i ) 0 < φ i < πN πN ≤ φ i ≤ π N − N L ( φ i )(2 π N − N − φ i ) 2 π N − N < φ i < π (13a)where the forward coupling function, L ( φ i ) , and the back-ward coupling function, L ( φ i ) , are given by L ( φ i ) = (cid:40) ω max t πN − φ i < φ i < πN − ω max t l l πN − ω max t l ≤ φ i < πN (13b) and L ( φ i ) = (cid:40) l π N − N < φ i ≤ π N − N + ω max t l − ω max t π N − N − φ i π N − N + ω max t l < φ i < π (13c)such that ω max t l < πN and ω max t l < πN . This resultingPRF and the corresponding phase update rule are illustratedwith red dotted lines in Fig. 4 and Fig. 5, respectively. Notethat, in (13), L ( φ i ) ≤ l holds for φ i ∈ (0 , πN ) , and L ( φ i ) ≤ l holds for φ i ∈ (2 π N − N , π ) . Also, though theforward and backward coupling strengths, L ( φ i ) and L ( φ i ) ,are not constant over their respective domains, the resultingphase update rule, as illustrated in Fig. 5, is still strictlymonotonically increasing. Remark . The result of applying the heading rate constraintto (9) can be interpreted as a PRF with potentially reducedcoupling strength functions that are dependent on the valueof the phase variable, and that are time-varying based on thetiming between received pulses.
Remark . The modification to the PRF due to the headingrate constraint described above does not actually adjust thecoupling strengths as the network evolves. Only the apparentbehavior of the network is being modeled as a PRF withreduced coupling strengths. The actual coupling strengths, l and l , remain unchanged throughout the entire evolution ofthe network. C. Analysis of Phase Response Functions with Time-VaryingCoupling Strength Functions
We now desire to rigorously prove that a network operatingunder the time-varying phase response function of the formin (13), and thus under the heading rate constraint, canachieve desynchronization. To that end, we must prove somepreliminary results.Consider a PRF in the form F ( φ i ) = L ( φ i )( πN − φ i ) 0 < φ i < πN πN ≤ φ i ≤ π N − N L ( φ i )(2 π N − N − φ i ) 2 π N − N < φ i < π (14)and corresponding phase update rule φ + i = φ i + F ( φ i )= (1 − L ( φ i )) φ i + L ( φ i ) πN < φ i < πN φ i πN ≤ φ i ≤ π N − N (1 − L ( φ i )) φ i + L ( φ i )2 π N − N π N − N < φ i < π (15)such that the forward coupling function, L ( φ i ) ∈ [0 , over the domain (0 , πN ) , and the backward coupling function, L ( φ i ) ∈ [0 , over the domain (2 π N − N , π ) , both of whichmay be time-varying, cause the phase update rule in (15) to bestrictly increasing over the entire interval [0 , π ) for all time. Remark . The PRF given in (9) can be written in the formof (14), where L ( φ i ) = l and L ( φ i ) = l . Additionally, thePRF given in (13a) can be written in the form of (14), where L ( φ i ) and L ( φ i ) are given by (13b) and (13c) respectively. We must first show that a robotic network under a PRF inthe form of (14) can achieve phase desynchronization. Let usinitially consider a robotic network that allows instantaneouschange in the phase variable such that the coupling strengthfunctions L ( φ i ) and L ( φ i ) are fixed with respect to timeand only vary with respect to the value of the phase variable. Lemma 1.
For a network of N robots with no two robotshaving equal initial heading, and thus equal initial phase vari-ables, the network will achieve phase desynchronization if thephase response function F ( φ i ) is given by (14) such that theforward coupling function, L ( φ i ) ∈ [0 , , over the domain (0 , πN ) and the backward coupling function, L ( φ i ) ∈ [0 , ,over the domain (2 π N − N , π ) cause the phase update rule in (15) to be strictly monotonically increasing.Proof. The proof is given in Appendix A.
Remark . The only condition placed on the forward couplingfunction, L ( φ i ) , and the backward coupling function, L ( φ i ) ,is that they cause the resulting phase update rule to bestrictly monotonically increasing for φ ∈ [0 , π ) . Any pairof functions, either continuous or discontinuous, that satisfythis condition can be used to form a suitable phase responsefunction.Lemma 1 proves that a robotic network with a fixedPRF as in (14) can achieve phase desynchronization underinstantaneous changes in the phase variable. We now use thisresult to show that a PRF that has forward and backwardcoupling functions that are time-varying, yet still cause thecorresponding phase update rule in (15) to be strictly increas-ing over the interval [0 , π ) can be used to achieve phasedesynchronization. Proposition 1.
The evolution of the phase variable, and thusthe heading, of a robot in a robotic network is dependent uponthe value of the coupling strengths, L ( φ i ) and L ( φ i ) , onlyat firing instances.Proof. The proof for this proposition is straightforward. Arobot only determines the amount that its phase variable needsto change when it receives a pulse. Thus, the values of thecoupling strengths are only used at firing instances. Any valuesthe coupling strengths take between firing instances are unusedand thus independent of the behavior of the network.Using the preliminary results of Lemma 1 and Proposition1, we can prove the following theorem.
Theorem 2.
For a network of N robots with no two robotshaving equal initial heading, and thus equal initial phase vari-ables, the network will achieve phase desynchronization if thephase response function F ( φ i ) is given by (14) such that theforward coupling function, L ( φ i ) ∈ [0 , , over the domain (0 , πN ) and the backward coupling function, L ( φ i ) ∈ [0 , ,over the domain (2 π N − N , π ) can vary over time, yet stillcause the phase update rule in (15) to be strictly increasingover the entire interval [0 , π ) .Proof. The proof for this theorem is straightforward. FromProposition 1, we only need to consider the phase response function at firing instances. At each firing instance, the phaseresponse function fulfills the conditions for Lemma 1. There-fore, the network will achieve phase desynchronization.
D. Desynchronization with Heading Rate Constraint
As shown previously, for a robotic network following thecontrol given in (2), the effect of the heading rate constraintto the standard PRF in (9) can be modeled as a PRF in theform of (14) such that the forward coupling function and thebackward coupling function cause the phase update rule in(15) to be strictly increasing over the entire interval [0 , π ) ateach firing instance. Thus, we can present the following maintheoretical result. Theorem 3.
Let N mobile robots, each with heading θ i , beconnected in an all-to-all network topology with no two robotshaving equal initial heading. Then, with the phase responsefunction given by (9) for l ∈ [0 , and l ∈ [0 , , the headingcontrol given in (2) will desynchronize the headings of therobots with the heading rate constraint given in (3) .Proof. The proof for this theorem follows directly from theproof for Theorem 2. By using the heading control given in(2) such that the initial value for the phase variable φ i is setto be θ i (0) , we have θ i = ( φ i − ω t ) mod 2 π for i ∈ V . Sinceno two initial headings of the robots are identical, the initialphase variables for each robot will also be non-identical. Thus,to show that the headings of the robots θ , . . . , θ N achievethe state of phase desynchronization, we only need to showthat the phase variables φ , . . . , φ N achieve the state of phasedesynchronization.Under the heading rate constraint, the resulting phase re-sponse function can be described in the form of (14) suchthat the forward coupling function and the backward couplingfunction, which will vary with time due to the timing ofsuccessive pulses, cause the phase update rule in (15) to bestrictly increasing over the entire interval [0 , π ) . Thus, fromTheorem 2, the phase variables φ , . . . , φ N will desynchronizefollowing the phase response function given in (9) under theheading rate constraint given in (3). Therefore, the headingsof the robots θ , . . . , θ N will desynchronize. Remark . If a robot fires a pulse, yet has not completed itsdesired phase change ψ i from the previous pulse firing, thenthe robot must reset its frequency ω i back to its fundamentalfrequency (until the next pulse firing). Otherwise, the resultingphase update rule may not necessarily be increasing overthe interval [0 , π ) , and thus, phase desynchronization is notguaranteed. Remark . If a robot receives a pulse when its phase variableis in the interval [ πN , π N − N ] , and it has not yet completed itsdesired phase change ψ i from the previous pulse firing (whenits phase variable was in the interval (0 , πN ) ), then the robotmay continue to evolve at its current frequency ω i determinedfrom the previous pulse firing until it has finished achievingits desired phase change, rather than return to its fundamentalfrequency. The resulting phase update rule will still be strictlyincreasing, and the results of Theorem 3 will still apply. Remark . To achieve heading desynchronization, each robotmust change its heading at the same rate, ω max , so that thephase update rule in (15) is strictly increasing. If non-identicalrobots with different maximum rates of rotation are used inthe same network, then the network must use some rotationrate that is no larger than the smallest maximum rate. Remark . It is necessary for the robot network to have an all-to-all topology in order to achieve heading desynchronization.Nearly all existing results on pulse-coupled oscillators requirethis condition to achieve desynchronization among all oscilla-tors. Relaxing this condition necessitates additional limitationsto other aspects of the network, such as initial state [33].
Remark . It is necessary for no two robots to have identicalinitial headings in order to achieve heading desynchronization,since they will respond identically to any incoming pulses. Tothe best of our knowledge, all pulse-based desynchronizationalgorithms fail in this situation. However, this assumption isnot critical, since it is rare for two robots to initialize with thesame heading if it is based on analog measurements, such asfrom a magnetometer. Also, under non-ideal conditions suchas pulse propagation delay and pulse drops, it is likely fortwo robots with identical headings to respond differently toincoming pulses, and thus diverge from each other.VI. E
XPERIMENTAL R ESULTS
We will now evaluate the theoretical results from SectionsIV and V by performing experiments on a physical roboticplatform. With these experiments, we can observe the behaviorof the robotic network under practical non-ideal conditions,such as pulse propagation delay and pulse drops.
A. Experimental Setup
We perform these experiments on a group of iRobot R (cid:13) Create 2 programmable robots, or Roombas, as shown in Fig.6 and Fig. 7. Roombas provide a relatively simple interfacewith which to control their actions, along with a wide varietyof built-in sensors. The movement of a Roomba is controlledusing differential steering, allowing for a simple vehicle modelon which to experiment.Each Roomba is outfitted with a Raspberry Pi 3 Model Bmicrocomputer, which is powered by the Roomba’s battery.Programs are written in Python on the Raspberry Pi, allowingthe Raspberry Pi to send commands to and receive data backfrom the Roomba and other sensors. Additionally, a XBeeRF communication module is connected to each RaspberryPi to allow communication between Roombas. To determinethe heading of each Roomba, a digital magnetometer can beused to give an initial reading. By using wheel encoder sensormeasurements from the Roomba, we track and update theRoomba’s heading over time.An oscillator is modeled on each Raspberry Pi, where thephase variable is comprised of the sum of the Roomba’sheading and a counter. The counter is based on the internaltime of the Raspberry Pi, and increases at the rate ω . Whena Roomba is not responding to received pulses, the phasevariable cycles in the range [0 , π ) due to the value of the Figure 6. The Roomba robotic platform used for experiments. Six Roombasare used to perform the experiments.Figure 7. A single Roomba used in the experiments. Commands are sent tothe Roomba using the Raspberry Pi 3 Model B microcomputer. Pulses aresent between Raspberry Pi 3s using a XBee RF module. Data is retrievedfrom on-board Roomba sensors to determine heading and orientation. counter while the Roomba is stationary and its heading isunchanging. At the beginning of each experiment, all countersare reset to zero, such that the initial value of the phasevariable is equal to the initial heading of the Roomba. Tobetter replicate and compare the results of the experiments,we initialize the heading of each Roomba to a pre-specifieddirection.Since the RF communication module has a very largecommunication range (approximately meters) compared tothe spacing between the Roombas (approximately meters),every Roomba can respond to every other Roomba. To testdifferent network topologies, we can define the connectionsbetween Roombas by letting each Roomba respond to pulsesfrom a specific set of Roombas. For a single Roomba, when thephase variable reaches the threshold π , a pulse is sent to allconnected Roombas through the RF communication module,and the counter value for that Roomba is decreased by π such that the phase variable is reset to zero. When a Roombareceives a pulse through the RF communication module, thecurrent phase (i.e., the sum of the current heading and counter)is used to determine the amount of phase change required bythe PCO algorithm, as given in (1). This phase change is then Time (seconds) H ea d i ng (r a d i a n s ) Figure 8. Heading evolution of the robots under the heading synchronizationalgorithm for N = 6 robots in an all-to-all topology when the heading rateconstraint is ignored, with α = 0 . , ω = π , and ω max = 0 . ω . Whenthe heading adjustment is assumed to be instantaneous, the robots are unableto converge their headings. applied to the heading of the Roomba. The Roomba spins ata constant rate ω max toward the heading at which it shouldbe until the desired heading change is achieved or anotherpulse is received. Thus, the control of the heading, as given in(2) with the necessary heading constraint, is satisfied for eachRoomba.The constraint on the rotation rate cannot be ignored whenapplying the PCO algorithm to physical systems. Because ofthe heading rate constraint, the robot may not have completedits desired heading change before a new pulse is received. Ifit is assumed that the robot has achieved the desired headingchange when a new pulse is received, even if it has not,then the robot network will not achieve the desired state. Wedemonstrate this behavior in Fig. 8, showing the evolutionof the Roomba headings assuming instantaneous headingadjustment according to the PRC in Fig. 2. The headings,rather than synchronizing to the same value, stop adjustingand do not converge. This result confirms the necessity toaddress heading coordination under rate constraints explicitly. B. Heading Synchronization
We now show the experimental results for a group of sixRoombas following the synchronization algorithm detailed inSection IV.The Roombas, under an all-to-all topology, begin with initialheadings within a containing arc Λ < π . The headings of theRoombas over time are shown in Fig. 9, in which we see thatthe headings of the Roombas converge to the same value. Ascan be seen from the resulting containing arc over time, asshown in Fig. 10, the network reaches the synchronized stateand is stable.Synchronization of robot headings can also be achievedunder more general topologies. We illustrate this point byusing the bidirectional ring topology. The headings of theRoombas over time are shown in Fig. 11, in which we seethat the headings of the Roombas converge to the same value.It is apparent from the resulting containing arc shown in Fig. Time (seconds) H ea d i ng (r a d i a n s ) Figure 9. Heading evolution of the robots under the heading synchronizationalgorithm for N = 6 robots in an all-to-all topology, with α = 0 . , D = 0 , ω = π , and ω max = 0 . ω . Time (seconds) C on t a i n i ng A r c (r a d i a n s ) Figure 10. Containing arc, Λ , as a function of time for the robot headingsin Fig. 9.
12 that the network synchronizes more slowly with the ringtopology compared to the all-to-all topology.Due to the propagation delay of pulses between Roombas,the headings of the Roomba slowly shift backward over time.This behavior can be reduced by introducing a non-zerorefractory period, D , such that robots do not respond to pulsesreceived when their individual phase variable is in the region [0 , D ) [20]. Using the same initial headings for the Roombas,Fig. 13 shows the evolution of the network with refractoryperiod D = π . As can be seen from the resulting containingarc evolution in Fig. 14, the network reaches the synchronizedstate and is stable. C. Heading Desynchronization
We next show the experimental results for a group of sixRoombas in an all-to-all topology following the desynchro-nization algorithm detailed in Section V.We initialize the Roombas to have headings close together.The evolution of the headings is shown in Fig. 15, in whichwe see that the headings of the Roombas diverge, or spread
Time (seconds) H ea d i ng (r a d i a n s ) Figure 11. Heading evolution of the robots under the heading synchronizationalgorithm for N = 6 robots in a bidirectional ring topology, with α = 0 . , D = 0 , ω = π , and ω max = 0 . ω . Time (seconds) C on t a i n i ng A r c (r a d i a n s ) Figure 12. Containing arc, Λ , as a function of time for the robot headingsin Fig. 11. out equally. By observing the desynchronization measure,given in (12), as shown in Fig. 16, the network reaches thedesynchronized state, and is stable.Similar to the synchronization case, the Roomba headingsslowly drift backward over time. This behavior is again due tothe propagation delay of the pulses, and can be mitigated byreducing the backward coupling strength, l . This mitigationis confirmed by Fig. 17, which shows the evolution of therobot headings with backward coupling strength l = 0 . Thecorresponding evolution of the desynchronization measure isshown in Fig. 18. VII. C ONCLUSIONS
In this paper, we consider the problem of decentralizedheading control in mobile robots while considering the con-straint of a finite rate of robot heading adjustment. We pro-pose a decentralized hybrid-dynamical framework inspired bythe study of pulse-coupled oscillators. Our approach avoidsthe discretization of a continuous control strategy while ac-counting for rate constraints by integrating the discrete-time Time (seconds) H ea d i ng (r a d i a n s ) Figure 13. Heading evolution of the robots under the heading synchronizationalgorithm for N = 6 robots in an all-to-all topology, with α = 0 . , D = π , ω = π , and ω max = 0 . ω . Time (seconds) C on t a i n i ng A r c (r a d i a n s ) Figure 14. Containing arc, Λ , as a function of time for the robot headingsin Fig. 13. communication and continuous-time control into the hybridframework.We rigorously analyze the hybrid dynamics of this pulse-coupled oscillator inspired heading control algorithm. Weprove that this control strategy can achieve heading syn-chronization or desynchronization in a decentralized roboticnetwork while conforming to the heading rate constraint. Wedemonstrate the control approach with physical experimentson a robotic platform.We analyze the behavior of the robotic network usingtwo pulse-coupled oscillator algorithms under the necessaryheading rate constraint. Both of these algorithms have beenused to study the behavior of oscillators with non-identicalfrequencies [21], [34]. Future research is required to study thebehavior of oscillators having non-identical frequencies andnon-identical robots with heterogeneous heading constraints.Additional synchronization and desynchronization algorithmsfor pulse-coupled oscillators have also been proposed [24],[25], [30], [31], [33]. Further research is needed to determine ifthese other algorithms can achieve the desired robotic heading Time (seconds) H ea d i ng (r a d i a n s ) Figure 15. Heading evolution of the robots under the heading desynchro-nization algorithm for N = 6 robots in an all-to-all topology, with l = 0 . , l = 0 . , ω = π , and ω max = 0 . ω . Time (seconds) D e s yn c M ea s u r e , P (r a d i a n s ) Figure 16. Desynchronization measure, P , as a function of time for the robotheadings in Fig. 15. under the heading rate constraint and proposed control strategyand if our results can be extended to achieve general motioncoordination. VIII. A CKNOWLEDGMENT
We would like to thank those who reviewed and providedfeedback on the initial drafts of this paper.Special thanks goes to Martyn Lemon, who contributedsignificantly to the experimental results in this paper.A
PPENDIX AP ROOF OF L EMMA Proof.
The proof of Lemma 1 follows the approach givenin [34], which gives a proof for a specific case, when theforward and backward coupling strengths are constant overtheir respective domains. Thus, we need to show that thedesynchronization measure, P , in (12) decreases during eachcycle until phase desynchronization is achieved.To analyze the change of P at each firing instance, we willutilize the definitions of “active pulse” and “silent pulse” usedin [34]. Time (seconds) H ea d i ng (r a d i a n s ) Figure 17. Heading evolution of the robots under the heading desynchro-nization algorithm for N = 6 robots in an all-to-all topology, with l = 0 . , l = 0 , ω = π , and ω max = 0 . ω . Time (seconds) D e s yn c M ea s u r e , P (r a d i a n s ) Figure 18. Desynchronization measure, P , as a function of time for the robotheadings in Fig. 17. Definition . A pulse is an “active pulse” when at least onerobot has phase variable φ i ∈ (0 , πN ) ∪ (2 π N − N , π ) whenthe pulse is emitted. Definition . A pulse is a “silent pulse” when no robots havephase variable φ i ∈ (0 , πN ) ∪ (2 π N − N , π ) when the pulse isemitted.According to Definitions 1 and 2, a pulse is either an “activepulse” or a “silent pulse”. For a “silent pulse”, no robot phasevariables are adjusted, according to (14). Thus, a “silent pulse”has no effect on phase differences in (11) and the measure P . Alternatively, an “active pulse” will cause robot phasevariables to adjust, and thus may change the value of themeasure P . We can verify the existence of an “active pulse”in each cycle of pulse firings before phase desynchronizationis achieved using the results found in [34]. Thus, we need toshow that the desynchronization measure P will decrease ateach “active pulse” and converge to zero.Without loss of generality, we assume that robot k emits an“active pulse” at time t = t k . From Definition 1, there must beat least one robot with a phase within (0 , πN ) ∪ (2 π N − N , π ) at time t = t k . Without loss of generality, we assumethat there are M robots with phase within (0 , πN ) and S robots with phase within (2 π N − N , π ) , where M and S arepositive integers satisfying ≤ M + S ≤ N − . The M and S phase variables are represented as φ (cid:91) k − , . . . , φ (cid:92) k − M and φ (cid:91) k +1 , . . . , φ (cid:91) k + S respectively, where the superscript “ (cid:99) ”represent modulo operation on N , i.e., (cid:98) · (cid:44) ( · ) mod N . (Note: maps to N .) As a result of our assumptions, we have φ (cid:92) k − M < πN ≤ φ (cid:92) k − M − and φ (cid:92) k + S +1 < π N − N ≤ φ (cid:91) k + S .Since φ (cid:91) k − , . . . , φ (cid:92) k − M and φ (cid:91) k +1 , . . . , φ (cid:91) k + S reside in (0 , πN ) ∪ (2 π N − N , π ) , those robots will update their phasevariables after receiving a pulse from robot k according to thephase update rule in (15), such that φ + (cid:91) k − i = (1 − L ( φ (cid:91) k − i )) φ (cid:91) k − i + L ( φ (cid:91) k − i ) 2 πN (16a)for i = 1 , . . . , M , and φ + (cid:91) k + j = (1 − L ( φ (cid:91) k + j )) φ (cid:91) k + j + L ( φ (cid:91) k + j )2 π N − N (16b)for j = 1 , . . . , S . Note that we also have φ + (cid:91) k + q = φ (cid:91) k + q for q = S + 1 , . . . , N − M − from (15), and φ + k = 0 .According to (11) and (16), the resulting phase variabledifferences after the phase update, ∆ + i , caused by an “activepulse” from robot k can be given in seven parts by ∆ + (cid:92) k − M − = φ + (cid:92) k − M − − φ + (cid:92) k − M = φ (cid:92) k − M − − (1 − L ( φ (cid:92) k − M )) φ (cid:92) k − M − L ( φ (cid:92) k − M ) 2 πN (17a) ∆ + (cid:91) k − i = φ + (cid:91) k − i − φ + (cid:92) k − i +1 = (cid:2) (1 − L ( φ (cid:91) k − i )) φ (cid:91) k − i − (1 − L ( φ (cid:92) k − i +1 )) φ (cid:92) k − i +1 (cid:3) + (cid:0) L ( φ (cid:91) k − i ) − L ( φ (cid:92) k − i +1 ) (cid:1) πN (17b)for i = 2 , . . . , M , ∆ + (cid:91) k − = φ + (cid:91) k − − φ + (cid:98) k = (1 − L ( φ (cid:91) k − )) φ (cid:91) k − + L ( φ (cid:91) k − ) 2 πN (17c) ∆ + (cid:98) k = φ + (cid:98) k − φ + (cid:91) k +1 + 2 π = 2 π − (1 − L ( φ (cid:91) k +1 )) φ (cid:91) k +1 − L ( φ (cid:91) k +1 )2 π N − N (17d) ∆ + (cid:91) k + j = φ + (cid:91) k + j − φ + (cid:92) k + j +1 = (cid:2) (1 − L ( φ (cid:91) k + j )) φ (cid:91) k + j − (1 − L ( φ (cid:92) k + j +1 )) φ (cid:92) k + j +1 (cid:3) + (cid:0) L ( φ (cid:91) k + j ) − L ( φ (cid:92) k + j +1 ) (cid:1) π N − N (17e)for j = 1 , . . . , S − , ∆ + (cid:91) k + S = φ + (cid:91) k + S − φ + (cid:92) k + S +1 = (1 − L ( φ (cid:91) k + S )) φ (cid:91) k + S + L ( φ (cid:91) k + S )2 π N − N − φ (cid:92) k + S +1 (17f) and ∆ + (cid:91) k + q = φ + (cid:91) k + q − φ + (cid:92) k + q +1 = φ (cid:91) k + q − φ (cid:92) k + q +1 = ∆ (cid:91) k + q (17g)for q = S +1 , . . . , N − M − . Note that (17) can be simplifiedto that found in [34] if the forward and backward couplingfunctions are constant over their respective domains.The new value for P (denoted as P + ) after the update isgiven by: P + = N (cid:88) k =1 | ∆ + k − πN | (18)To determine the change in the value of measure P causedby the “active pulse” from robot k , we can calculate thedifference between the value of P before and after the phaseupdate: P + − P = N (cid:88) k =1 (cid:104) | ∆ + k − πN | − | ∆ k − πN | (cid:105) (19)We can divide (19) into seven parts, using the expressionsfound in (11) and (17): P + − P = N (cid:88) k =1 (cid:104) | ∆ + k − πN | − | ∆ k − πN | (cid:105) = | ∆ + (cid:92) k − M − − πN | − | ∆ (cid:92) k − M − − πN | (20a) + M (cid:88) i =2 (cid:104) | ∆ + (cid:91) k − i − πN | − | ∆ (cid:91) k − i − πN | (cid:105) (20b) + | ∆ + (cid:91) k − − πN | − | ∆ (cid:91) k − − πN | (20c) + | ∆ + k − πN | − | ∆ k − πN | (20d) + | S − (cid:88) j =1 (cid:104) | ∆ + (cid:91) k + j − πN | − | ∆ (cid:91) k + j − πN | (cid:105) (20e) + | ∆ + (cid:91) k + S − πN | − | ∆ (cid:91) k + S − πN | (20f) + N − M − (cid:88) q = S +1 (cid:104) | ∆ + (cid:91) k + q − πN | − | ∆ (cid:91) k + q − πN | (cid:105) (20g)Eq. (20b) can be simplified as follows: M (cid:88) i =2 (cid:104) | (cid:2) (1 − L ( φ (cid:91) k − i )) φ (cid:91) k − i − (1 − L ( φ (cid:92) k − i +1 )) φ (cid:92) k − i +1 (cid:3) + (cid:0) L ( φ (cid:91) k − i ) − L ( φ (cid:92) k − i +1 ) (cid:1) πN − πN |− | ( φ (cid:91) k − i − φ (cid:92) k − i +1 ) − πN | (cid:105) = M (cid:88) i =2 (cid:104) πN (cid:0) L ( φ (cid:92) k − i +1 ) − L ( φ (cid:91) k − i ) (cid:1) + L ( φ (cid:91) k − i ) φ (cid:91) k − i − L ( φ (cid:92) k − i +1 ) φ (cid:92) k − i +1 (cid:105) = 2 πN (cid:0) L ( φ (cid:91) k − ) − L ( φ (cid:92) k − M ) (cid:1) + L ( φ (cid:92) k − M ) φ (cid:92) k − M − L ( φ (cid:91) k − ) φ (cid:91) k − (21) where we used the relationships φ (cid:91) k − i − φ (cid:92) k − i +1 < πN and (cid:2) (1 − L ( φ (cid:91) k − i )) φ (cid:91) k − i − (1 − L ( φ (cid:92) k − i +1 )) φ (cid:92) k − i +1 (cid:3) + πN ( L ( φ (cid:91) k − i ) − L ( φ (cid:92) k − i +1 )) < πN for i = 2 , . . . , M .Eq. (20c) can be simplified as follows: | (1 − L ( φ (cid:91) k − )) φ (cid:91) k − + L ( φ (cid:91) k − ) 2 πN − πN | − | φ (cid:91) k − − πN | = L ( φ (cid:91) k − )( φ (cid:91) k − − πN ) (22)where we used the fact that φ (cid:91) k − < πN .Eq. (20d) can be simplified as follows: | π − (1 − L ( φ (cid:91) k +1 )) φ (cid:91) k +1 − L ( φ (cid:91) k +1 )2 π N − N − πN |− | (2 π − φ (cid:91) k +1 ) − πN | = L ( φ (cid:91) k +1 )(2 π N − N − φ (cid:91) k +1 ) (23)where we used the fact that π − φ (cid:91) k +1 < πN .Eq. (20e) can be simplified as follows: S − (cid:88) j =1 (cid:104) | (cid:2) (1 − L ( φ (cid:91) k + j )) φ (cid:91) k + j − (1 − L ( φ (cid:92) k + j +1 )) φ (cid:92) k + j +1 (cid:3) + (cid:0) L ( φ (cid:91) k + j ) − L ( φ (cid:92) k + j +1 ) (cid:1) π N − N − πN |− | ( φ (cid:91) k + j − φ (cid:92) k + j +1 ) − πN | (cid:105) = S − (cid:88) j =1 (cid:104) π N − N (cid:0) L ( φ (cid:92) k + j +1 ) − L ( φ (cid:91) k + j ) (cid:1) + L ( φ (cid:91) k + j ) φ (cid:91) k + j − L ( φ (cid:92) k + j +1 ) φ (cid:92) k + j +1 (cid:105) = 2 π N − N (cid:0) L ( φ (cid:91) k + S ) − L ( φ (cid:91) k +1 ) (cid:1) + L ( φ (cid:91) k +1 ) φ (cid:91) k +1 − L ( φ (cid:91) k + S ) φ (cid:91) k + S (24)where we used the relationships φ (cid:91) k + j − φ (cid:92) k + j +1 < πN and (cid:2) (1 − L ( φ (cid:91) k + j )) φ (cid:91) k + j − (1 − L ( φ (cid:92) k + j +1 )) φ (cid:92) k + j +1 (cid:3) + (cid:0) L ( φ (cid:91) k + j ) − L ( φ (cid:92) k + j +1 ) (cid:1) π N − N < πN for j = 1 , . . . , S − .Eq. (20g) can be simplified as follows: N − M − (cid:88) q = S +1 (cid:104) | ∆ + (cid:91) k + q − πN | − | ∆ (cid:91) k + q − πN | (cid:105) = N − M − (cid:88) q = S +1 (cid:104) | ∆ (cid:91) k + q − πN | − | ∆ (cid:91) k + q − πN | (cid:105) = 0 (25)Thus, combining (20a), (20f), and (21)–(25), we can write (19)in two main parts: P + − P = N (cid:88) k =1 (cid:104) | ∆ + k − πN | − | ∆ k − πN | (cid:105) = | ∆ + (cid:92) k − M − − πN | − | ∆ (cid:92) k − M − − πN | + L ( φ (cid:92) k − M ) (cid:0) φ (cid:92) k − M − πN (cid:1) (26a) + | ∆ + (cid:91) k + S − πN | − | ∆ (cid:91) k + S − πN | + L ( φ (cid:91) k + S ) (cid:0) π N − N − φ (cid:91) k + S (cid:1) (26b)This result in (26) is similar to that found in [34]. Since L ( φ (cid:92) k − M ) and L ( φ (cid:91) k + S ) are constants in the range [0 , ,then a direct comparison can be made with Part A and
PartB in [34] to (26a) and (26b), respectively. Borrowing theconclusion made in [34], we conclude that P + − P ≤ holdsand cannot always be zero, and thus the measure P in (12) willdecrease to zero. Therefore, the network will achieve phasedesynchronization using a phase response function given by(14) such that the forward coupling function, L ( φ i ) ∈ [0 , ,over the domain (0 , πN ) and the backward coupling function, L ( φ i ) ∈ [0 , , over the domain (2 π N − N , π ) cause the phaseupdate rule in (15) to be strictly increasing.R EFERENCES[1] F. Bullo, J. Cort´es, and S. Mart´ınez.
Distributed Control of Robotic Net-works: A Mathematical Approach to Motion Coordination Algorithms .Princeton Series in Applied Mathematics. Princeton University Press,2009.[2] R. Olfati-Saber, J. A. Fax, and R. M. Murray. Consensus and cooperationin networked multi-agent systems. volume 95, pages 215–233, Jan 2007.[3] R. M. Murray. Recent research in cooperative control of multi-vehiclesystems.
Journal of Dynamic Systems Measurement and Control ,129:571–598, Sept. 2007.[4] R. Sepulchre, D. A. Paley, and N. E. Leonard. Stabilization of planarcollective motion: All-to-all communication.
IEEE Transactions onAutomatic Control , 52(5):811–824, May 2007.[5] D. A. Paley, N. E. Leonard, R. Sepulchre, D. Grunbaum, and J. K.Parrish. Oscillator models and collective motion.
IEEE Control SystemsMagazine , 27(4):89–105, Aug 2007.[6] R. Sepulchre, D. A. Paley, and N. E. Leonard. Stabilization of planarcollective motion with limited communication.
IEEE Transactions onAutomatic Control , 53(3):706–719, April 2008.[7] S. Chung and J. E. Slotine. Cooperative robot control and concurrentsynchronization of lagrangian systems.
IEEE Transactions on Robotics ,25(3):686–700, June 2009.[8] N. Moshtagh, N. Michael, A. Jadbabaie, and K. Daniilidis. Vision-based,distributed control laws for motion coordination of nonholonomic robots.
IEEE Transactions on Robotics , 25(4):851–860, Aug 2009.[9] A. Abdessameud and A. Tayebi. On consensus algorithms for double-integrator dynamics without velocity measurements and with inputconstraints.
Systems & Control Letters , 59(12):812–821, 2010.[10] T. Yang, Z. Meng, D. V. Dimarogonas, and K. H. Johansson. Globalconsensus for discrete-time multi-agent systems with input saturationconstraints.
Automatica , 50(2):499 – 506, 2014.[11] B. Zhu, C. Meng, and G. Hu. Robust consensus tracking of doubleinte-grator dynamics by bounded distributed control.
International Journalof Robust and Nonlinear Control , 26(7):1489–1511, 5 2016.[12] L. Mo and P. Lin. Distributed consensus of secondorder multiagentsystems with nonconvex input constraints.
International Journal ofRobust and Nonlinear Control , 28(11):3657–3664, 7 2018.[13] Z. Zhou and X. Wang. Constrained consensus in continuous-timemultiagent systems under weighted graph.
IEEE Transactions onAutomatic Control , 63(6):1776–1783, June 2018.[14] X. Deng, X. Sun, S. Liu, and J. Hu. Consensus control of multi-agentsystems with nonlinear dynamics and input constraints. In , pages 338–343, July 2018.[15] O. Gjata, M. Asllani, L. Barletti, and T. Carletti. Using hamiltoniancontrol to desynchronize kuramoto oscillators.
Phys. Rev. E , 95:022209,Feb 2017.[16] B. Monga, G. Froyland, and J. Moehlis. Synchronizing and desynchro-nizing neural populations through phase distribution control. In , pages 2808–2813, June2018.[17] C. S. Peskin.
Mathematical aspects of heart physiology . CourantInstitute of Mathematical Science, New York University, New York,1975. [18] R. Mirollo and S. Strogatz. Synchronization of pulse-coupled biologicaloscillators.
SIAM Journal on Applied Mathematics , 50(6):1645–1662,1990.[19] O. Simeone, U. Spagnolini, Y. Bar-Ness, and S. H. Strogatz. Distributedsynchronization in wireless networks.
IEEE Signal Processing Maga-zine , 25(5):81–97, Sep. 2008.[20] Y. Q. Wang, F. N´u˜nez, and F. J. Doyle III. Energy-efficient pulse-coupled synchronization strategy design for wireless sensor networksthrough reduced idle listening.
IEEE Transactions on Signal Processing ,60(10):5293–5306, Oct 2012.[21] Y. Q. Wang and F. J. Doyle III. Optimal phase response functions forfast pulse-coupled synchronization in wireless sensor networks.
IEEETransactions on Signal Processing , 60(10):5583–5588, Oct 2012.[22] H. Gao and Y. Q. Wang. A pulse-based integrated communication andcontrol design for decentralized collective motion coordination.
IEEETransactions on Automatic Control , 63(6):1858–1864, June 2018.[23] T. Anglea and Y. Q. Wang. Pulse-coupled synchronization withguaranteed clock continuity.
IEEE Transactions on Signal Processing ,67(6):1596–1609, March 2019.[24] G. Werner-Allen, G. Tewari, A. Patel, M. Welsh, and R. Nagpal. Firefly-inspired sensor network synchronicity with realistic radio effects. In
Pro-ceedings of the 3rd International Conference on Embedded NetworkedSensor Systems , SenSys ’05, pages 142–153, New York, NY, USA, 2005.ACM.[25] Y. W. Hong and A. Scaglione. A scalable synchronization protocolfor large scale sensor networks and its applications.
IEEE Journal onSelected Areas in Communications , 23(5):1085–1099, May 2005.[26] F. D¨orfler and F. Bullo. Synchronization in complex networks of phaseoscillators: A survey.
Automatica , 50(6):1539 – 1564, 2014.[27] J. Nishimura. Frequency adjustment and synchrony in networks ofdelayed pulse-coupled oscillators.
Physical Review E , 91:012916, Jan2015.[28] F. N´u˜nez, Y. Q. Wang, and F. J. Doyle III. Synchronization of pulse-coupled oscillators on (strongly) connected graphs.
IEEE Transactionson Automatic Control , 60(6):1710–1715, June 2015.[29] R. Gentz, A. Scaglione, L. Ferrari, and Y. W. P. Hong. Pulsess: A pulse-coupled synchronization and scheduling protocol for clustered wirelesssensor networks.
IEEE Internet of Things Journal , 3(6):1222–1234, Dec2016.[30] A. Patel, J. Degesys, and R. Nagpal. Desynchronization: The theoryof self-organizing algorithms for round-robin scheduling. In
FirstInternational Conference on Self-Adaptive and Self-Organizing Systems(SASO 2007) , pages 87–96, July 2007.[31] R. Pagliari, Y. W. P. Hong, and A. Scaglione. Bio-inspired algorithmsfor decentralized round-robin and proportional fair scheduling.
IEEEJournal on Selected Areas in Communications , 28(4):564–575, May2010.[32] F. Ferrante and Y. Q. Wang. A hybrid systems approach to splay statestabilization of pulse coupled oscillators. In , pages 1763–1768, Dec 2016.[33] T. Anglea and Y. Q. Wang. Phase desynchronization: A new approachand theory using pulse-based interaction.
IEEE Transactions on SignalProcessing , 65(5):1160–1171, March 2017.[34] H. Gao and Y. Q. Wang. On phase response function based decentralizedphase desynchronization.
IEEE Transactions on Signal Processing ,65(21):5564–5577, Nov 2017.[35] E.M. Izhikevich.