Zeno-free, distributed event-triggered coordination for multi-agent - - PowerPoint PPT Presentation

zeno free distributed event triggered coordination for
SMART_READER_LITE
LIVE PREVIEW

Zeno-free, distributed event-triggered coordination for multi-agent - - PowerPoint PPT Presentation

Zeno-free, distributed event-triggered coordination for multi-agent average consensus Cameron Nowzari 1 es 2 Jorge Cort 1 Electrical and Systems Engineering University of Pennsylvania cnowzari@seas.upenn.edu 2 Mechanical and Aerospace


slide-1
SLIDE 1

Zeno-free, distributed event-triggered coordination for multi-agent average consensus

Cameron Nowzari1 Jorge Cort´ es2

1

Electrical and Systems Engineering University of Pennsylvania cnowzari@seas.upenn.edu

2

Mechanical and Aerospace Engineering University of California, San Diego American Control Conference Portland, Oregon June 5, 2014

slide-2
SLIDE 2
  • Multi-agent average consensus-

Consider N agents with state x = (x1, . . . , xN) ∈ RN each agent i can communicate with neighbors j ∈ Ni in undirected communication graph G

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 2 / 20

slide-3
SLIDE 3
  • Multi-agent average consensus-

Consider N agents with state x = (x1, . . . , xN) ∈ RN each agent i can communicate with neighbors j ∈ Ni in undirected communication graph G ˙ xi(t) = ui(t)

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 2 / 20

slide-4
SLIDE 4
  • Multi-agent average consensus-

Consider N agents with state x = (x1, . . . , xN) ∈ RN each agent i can communicate with neighbors j ∈ Ni in undirected communication graph G ˙ xi(t) = ui(t) Well known distributed solution ui(t) = −

  • j∈Ni

(xi(t) − xj(t))

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 2 / 20

slide-5
SLIDE 5
  • Multi-agent average consensus-

Consider N agents with state x = (x1, . . . , xN) ∈ RN each agent i can communicate with neighbors j ∈ Ni in undirected communication graph G ˙ xi(t) = ui(t) Well known distributed solution ui(t) = −

  • j∈Ni

(xi(t) − xj(t)) Continuous local state information Continuous communication Continuous actuation

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 2 / 20

slide-6
SLIDE 6

Digital controllers

Consider a single plant being controlled by a microprocessor through a feedback control loop

  • 25

˙ x = f(x, u)

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 3 / 20

slide-7
SLIDE 7

Digital controllers

Consider a single plant being controlled by a microprocessor through a feedback control loop

  • 25measure x

˙ x = f(x, u)

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 3 / 20

slide-8
SLIDE 8

Digital controllers

Consider a single plant being controlled by a microprocessor through a feedback control loop

  • 25measure x

compute k(x)

˙ x = f(x, u)

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 3 / 20

slide-9
SLIDE 9

Digital controllers

Consider a single plant being controlled by a microprocessor through a feedback control loop

  • 25measure x

compute k(x) feed u = k(x)

˙ x = f(x, u)

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 3 / 20

slide-10
SLIDE 10

Digital controllers

Consider a single plant being controlled by a microprocessor through a feedback control loop

  • 25measure x

compute k(x) feed u = k(x)

˙ x = f(x, u) Notice that this is different from the idealistic system ˙ x = f(x, k(x))

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 3 / 20

slide-11
SLIDE 11

Digital controllers

  • 25measure x

compute k(x) feed u = k(x)

˙ x = f(x, u)

=

˙ x = f(x, k(x)) Most existing control theory was developed ignoring the implementation details

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 4 / 20

slide-12
SLIDE 12

Digital controllers

  • 25measure x

compute k(x) feed u = k(x)

˙ x = f(x, u)

=

˙ x = f(x, k(x)) Most existing control theory was developed ignoring the implementation details As long as k(x) is updated sufficiently fast, everything will be okay

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 4 / 20

slide-13
SLIDE 13

Digital controllers

  • Time-triggered- control

Controller is updated periodically at an a priori chosen period T

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 5 / 20

slide-14
SLIDE 14

Digital controllers

  • Time-triggered- control

Controller is updated periodically at an a priori chosen period T Benefits: simple and easy to implement does not require extra computations

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 5 / 20

slide-15
SLIDE 15

Digital controllers

  • Time-triggered- control

Controller is updated periodically at an a priori chosen period T Benefits: simple and easy to implement does not require extra computations Drawbacks: controller is often designed assuming perfect information state is sampled and controllers are updated periodically robustness analysis done a posteriori

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 5 / 20

slide-16
SLIDE 16

Digital controllers

  • Event-triggered- control

Consider a linear system ˙ x = Ax + Bu, with ideal control law u∗ = Kx rendering the closed loop system asymptotically stable

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 6 / 20

slide-17
SLIDE 17

Digital controllers

  • Event-triggered- control

Consider a linear system ˙ x = Ax + Bu, with ideal control law u∗ = Kx rendering the closed loop system asymptotically stable Since we cannot apply u∗ continuously, we will update it at a sequence of times {tℓ} instead. Between updates, the applied control is u(t) = Kx(tℓ) t ∈ [tℓ, tℓ+1)

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 6 / 20

slide-18
SLIDE 18

Digital controllers

  • Event-triggered- control

Consider a linear system ˙ x = Ax + Bu, with ideal control law u∗ = Kx rendering the closed loop system asymptotically stable Since we cannot apply u∗ continuously, we will update it at a sequence of times {tℓ} instead. Between updates, the applied control is u(t) = Kx(tℓ) t ∈ [tℓ, tℓ+1) Defining the error in the system as e(t) = x(t) − x(tℓ), the closed loop dynamics is ˙ x = Ax(t) + BKx(tℓ) = (A + BK)x(t) + BKe(t)

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 6 / 20

slide-19
SLIDE 19

Digital controllers

  • Event-triggered- control

Defining the error in the system as e(t) = x(t) − x(tℓ), the closed loop dynamics is ˙ x = Ax(t) + BKx(tℓ) = (A + BK)x(t) + BKe(t) Since (A + BK) is stable, there exists a Lyapunov function V such that ˙ V ≤ −ax2 + bxe

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 7 / 20

slide-20
SLIDE 20

Digital controllers

  • Event-triggered- control

Defining the error in the system as e(t) = x(t) − x(tℓ), the closed loop dynamics is ˙ x = Ax(t) + BKx(tℓ) = (A + BK)x(t) + BKe(t) Since (A + BK) is stable, there exists a Lyapunov function V such that ˙ V ≤ −ax2 + bxe If we can now enforce that e ≤ σ a b x for some σ ∈ (0, 1), then ˙ V ≤ −(1 − σ)ax2 < 0

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 7 / 20

slide-21
SLIDE 21

Digital controllers

  • Event-triggered- control

Event-trigger is given by e = σ a b x

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 8 / 20

slide-22
SLIDE 22

Digital controllers

  • Event-triggered- control

Event-trigger is given by e = σ a b x Solves the problem of continuous actuation requirement

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 8 / 20

slide-23
SLIDE 23

Digital controllers

  • Event-triggered- control

Event-trigger is given by e = σ a b x Solves the problem of continuous actuation requirement Still requires continuous communication in a network

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 8 / 20

slide-24
SLIDE 24

Outline

1 Motivation 2 Problem statement 3 Event-triggered design

Simulations

4 Conclusions

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 9 / 20

slide-25
SLIDE 25

Problem statement

The distributed, continuous control law u∗

i (t) = −

  • j∈Ni

(xi(t) − xj(t)) is well known to have each agent state asymptotically converge to the initial average of all agent states.

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 10 / 20

slide-26
SLIDE 26

Problem statement

The distributed, continuous control law u∗

i (t) = −

  • j∈Ni

(xi(t) − xj(t)) is well known to have each agent state asymptotically converge to the initial average of all agent states. Instead, we will use the control law ui(t) = −

  • j∈Ni

(ˆ xi(t) − ˆ xj(t)), where ˆ xi(t) is the last broadcast state of agent i.

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 10 / 20

slide-27
SLIDE 27

Problem statement

The distributed, continuous control law u∗

i (t) = −

  • j∈Ni

(xi(t) − xj(t)) is well known to have each agent state asymptotically converge to the initial average of all agent states. Instead, we will use the control law ui(t) = −

  • j∈Ni

(ˆ xi(t) − ˆ xj(t)), where ˆ xi(t) is the last broadcast state of agent i.

Problem (Multi-agent average consensus)

How should agents decide to broadcast their state to ensure their state converges to the initial average of all agent states?

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 10 / 20

slide-28
SLIDE 28

Lyapunov design

Ideal controller u∗

i (t) = −

  • j∈Ni

(xi(t) − xj(t)) Implementable controller ui(t) = −

  • j∈Ni

(ˆ xi(t) − ˆ xj(t))

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 11 / 20

slide-29
SLIDE 29

Lyapunov design

Ideal controller u∗

i (t) = −

  • j∈Ni

(xi(t) − xj(t)) u∗ = −Lx Implementable controller ui(t) = −

  • j∈Ni

(ˆ xi(t) − ˆ xj(t)) u = −Lˆ x

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 11 / 20

slide-30
SLIDE 30

Lyapunov design

Ideal controller u∗

i (t) = −

  • j∈Ni

(xi(t) − xj(t)) u∗ = −Lx Implementable controller ui(t) = −

  • j∈Ni

(ˆ xi(t) − ˆ xj(t)) u = −Lˆ x Lyapunov function V = xT Lx

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 11 / 20

slide-31
SLIDE 31

Lyapunov design

Ideal controller u∗

i (t) = −

  • j∈Ni

(xi(t) − xj(t)) u∗ = −Lx Implementable controller ui(t) = −

  • j∈Ni

(ˆ xi(t) − ˆ xj(t)) u = −Lˆ x Lyapunov function V = xT Lx Lu∗V (x) = xT L ˙ x LuV (x) = xT L ˙ x

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 11 / 20

slide-32
SLIDE 32

Lyapunov design

Ideal controller u∗

i (t) = −

  • j∈Ni

(xi(t) − xj(t)) u∗ = −Lx Implementable controller ui(t) = −

  • j∈Ni

(ˆ xi(t) − ˆ xj(t)) u = −Lˆ x Lyapunov function V = xT Lx Lu∗V (x) = xT L ˙ x = −xT LLx ≤ 0 LuV (x) = xT L ˙ x = −xT LLˆ x ≤???

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 11 / 20

slide-33
SLIDE 33

Lyapunov design

Problem

How does ˆ x need to be updated such that LuV (x) = ˙ V = −xT LLˆ x ≤ 0 at all times?

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 12 / 20

slide-34
SLIDE 34

Lyapunov design

Problem

How does ˆ x need to be updated such that LuV (x) = ˙ V = −xT LLˆ x ≤ 0 at all times? The ideal way would be to update ˆ x each time −xT LLˆ x = 0. But the problem with this is that it is centralized and requires perfect information.

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 12 / 20

slide-35
SLIDE 35

Lyapunov design

Problem

How does ˆ x need to be updated such that LuV (x) = ˙ V = −xT LLˆ x ≤ 0 at all times? The ideal way would be to update ˆ x each time −xT LLˆ x = 0. But the problem with this is that it is centralized and requires perfect information. So how can we do this in a distributed way?

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 12 / 20

slide-36
SLIDE 36

Lyapunov design

Problem

How does ˆ x need to be updated such that LuV (x) = ˙ V = −xT LLˆ x ≤ 0 at all times? The ideal way would be to update ˆ x each time −xT LLˆ x = 0. But the problem with this is that it is centralized and requires perfect information. So how can we do this in a distributed way? Let e = ˆ x − x, then ˙ V = −(ˆ x − e)T LLˆ x = −Lˆ x2 + (Lˆ x)T Le

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 12 / 20

slide-37
SLIDE 37

Lyapunov design

Let ˆ z = Lˆ x, then ˙ V = −

N

  • i=1

ˆ z2

i + N

  • i=1
  • j∈Ni

ˆ zi(ei − ej)

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 13 / 20

slide-38
SLIDE 38

Lyapunov design

Let ˆ z = Lˆ x, then ˙ V = −

N

  • i=1

ˆ z2

i + N

  • i=1
  • j∈Ni

ˆ zi(ei − ej) = −

N

  • i=1

ˆ z2

i + N

  • i=1

|Ni|ˆ ziei −

N

  • i=1
  • j∈Ni

ˆ ziej

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 13 / 20

slide-39
SLIDE 39

Lyapunov design

Let ˆ z = Lˆ x, then ˙ V = −

N

  • i=1

ˆ z2

i + N

  • i=1
  • j∈Ni

ˆ zi(ei − ej) = −

N

  • i=1

ˆ z2

i + N

  • i=1

|Ni|ˆ ziei −

N

  • i=1
  • j∈Ni

ˆ ziej By Young’s inequality,

N

  • i=1

|Ni|ˆ ziei ≤

N

  • i=1

1 2|Ni|ˆ zia + 1 2a|Ni|e2

i

  • and

N

  • i=1
  • j∈Ni

ˆ ziej ≤

N

  • i=1
  • j∈Ni

1 2 ˆ z2

i a + 1

2ae2

j

  • Cameron Nowzari (Penn)

Event-triggered consensus June 5, 2014 13 / 20

slide-40
SLIDE 40

Lyapunov design

So we can bound ˙ V ≤ −

N

  • i=1

ˆ z2

i + N

  • i=1

1 2|Ni|ˆ zia + 1 2a|Ni|e2

i

  • +

N

  • i=1
  • j∈Ni

1 2 ˆ z2

i a + 1

2ae2

j

  • Cameron Nowzari (Penn)

Event-triggered consensus June 5, 2014 14 / 20

slide-41
SLIDE 41

Lyapunov design

So we can bound ˙ V ≤ −

N

  • i=1

ˆ z2

i + N

  • i=1

1 2|Ni|ˆ zia + 1 2a|Ni|e2

i

  • +

N

  • i=1
  • j∈Ni

1 2 ˆ z2

i a + 1

2ae2

j

  • Since the graph is undirected, we know

N

  • i=1
  • j∈Ni

1 2ae2

j = N

  • i=1
  • j∈Ni

1 2ae2

i = N

  • i=1

1 2a|Ni|e2

i

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 14 / 20

slide-42
SLIDE 42

Lyapunov design

So we can bound ˙ V ≤ −

N

  • i=1

ˆ z2

i + N

  • i=1

1 2|Ni|ˆ zia + 1 2a|Ni|e2

i

  • +

N

  • i=1
  • j∈Ni

1 2 ˆ z2

i a + 1

2ae2

j

  • Since the graph is undirected, we know

N

  • i=1
  • j∈Ni

1 2ae2

j = N

  • i=1
  • j∈Ni

1 2ae2

i = N

  • i=1

1 2a|Ni|e2

i

Then, ˙ V ≤

N

  • i=1

(a|Ni| − 1)ˆ z2

i + 1

a|Ni|e2

i

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 14 / 20

slide-43
SLIDE 43

Lyapunov design

We can now present the distributed event-triggering condition as e2

i = a(1 − a|Ni|)

|Ni| σiˆ z2

i

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 15 / 20

slide-44
SLIDE 44

Lyapunov design

We can now present the distributed event-triggering condition as e2

i = a(1 − a|Ni|)

|Ni| σiˆ z2

i

This means that e2

i ≤ a(1 − a|Ni|)

|Ni| σiˆ z2

i

at all times,

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 15 / 20

slide-45
SLIDE 45

Lyapunov design

We can now present the distributed event-triggering condition as e2

i = a(1 − a|Ni|)

|Ni| σiˆ z2

i

This means that e2

i ≤ a(1 − a|Ni|)

|Ni| σiˆ z2

i

at all times, then ˙ V ≤ −

N

  • i=1

(1 − σi)(1 − a|Ni|)ˆ z2

i ≤ 0

for a < min

i∈{1,...,N}

1 |Ni|

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 15 / 20

slide-46
SLIDE 46

Lyapunov design

Theorem (E. Garcia et al. 2013)

The system with the described control law and event-triggered broadcasting algorithm converges to the average consensus state.

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 16 / 20

slide-47
SLIDE 47

Lyapunov design

Theorem (E. Garcia et al. 2013)

The system with the described control law and event-triggered broadcasting algorithm converges to the average consensus state. Drawbacks: Parameter a needs to be found and agreed on a priori

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 16 / 20

slide-48
SLIDE 48

Lyapunov design

Theorem (E. Garcia et al. 2013)

The system with the described control law and event-triggered broadcasting algorithm converges to the average consensus state. Drawbacks: Parameter a needs to be found and agreed on a priori Possibility of Zeno executions

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 16 / 20

slide-49
SLIDE 49

Lyapunov design

Theorem (E. Garcia et al. 2013)

The system with the described control law and event-triggered broadcasting algorithm converges to the average consensus state. Drawbacks: Parameter a needs to be found and agreed on a priori Possibility of Zeno executions

Theorem (E. Garcia et al. 2013)

The inter-event times for each agent i = {1, . . . , N} are strictly positive.

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 16 / 20

slide-50
SLIDE 50

Modified algorithm

Main trigger e2

i ≥ σi

ai |Ni|  1 − 1 2ai|Ni| − 1 2

  • j∈Ni

aj   ˆ z2

i

Agents only need to know local parameters ai and aj for j ∈ Ni

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 17 / 20

slide-51
SLIDE 51

Modified algorithm

Main trigger e2

i ≥ σi

ai |Ni|  1 − 1 2ai|Ni| − 1 2

  • j∈Ni

aj   ˆ z2

i

Agents only need to know local parameters ai and aj for j ∈ Ni Additional trigger added to ensure no Zeno behavior can occur

Theorem

The system with the described control law and modified event-triggered broadcasting algorithm exponentially converges to the average consensus state and is guaranteed to avoid Zeno executions.

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 17 / 20

slide-52
SLIDE 52

Simulations

Simulation with N = 5 agents a1 = a3 = a5 = 0.3 a2 = a4 = 0.2 σi = 0.999 for all agents

Evolution of state trajectories Number of events triggered Evolution of Lyapunov function V

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 18 / 20

slide-53
SLIDE 53

Conclusions

Distributed event-triggered broadcasting and control algorithm does not require any global a priori knowledge no Zeno executions exponential convergence rate extension to time-varying topologies

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 19 / 20

slide-54
SLIDE 54

Conclusions

Distributed event-triggered broadcasting and control algorithm does not require any global a priori knowledge no Zeno executions exponential convergence rate extension to time-varying topologies Future work: sampled-data implementations directed graphs more general algorithms

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 19 / 20

slide-55
SLIDE 55

Thank You!

Cameron Nowzari (Penn) Event-triggered consensus June 5, 2014 20 / 20