on the control and estimation of discrete event systems using petri … · 2018-01-08 ·...

33
Supervisory control of discrete event systems using Petri net structural approaches Alessandro Giua DIEE, University of Cagliari, Italy LSIS, Aix-Marseille University, France 2017 CDC Workshop 30 years of the Ramadge-Wonham Theory of Supervisory Control: A Retrospective and Future Perspectives December 11, 2017 A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 1 / 30

Upload: phungkhanh

Post on 20-Jul-2019

212 views

Category:

Documents


0 download

TRANSCRIPT

Supervisory control of discrete event systemsusing Petri net structural approaches

Alessandro Giua

DIEE, University of Cagliari, ItalyLSIS, Aix-Marseille University, France

2017 CDC Workshop30 years of the Ramadge-Wonham Theory of Supervisory Control:

A Retrospective and Future Perspectives

December 11, 2017

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 1 / 30

Table of Contents

Motivations

Why Petri nets?

Petri nets for supervisory control

Control using GMECs

Conclusions

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 2 / 30

Motivations

Table of Contents

Motivations

Why Petri nets?

Petri nets for supervisory control

Control using GMECs

Conclusions

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 3 / 30

Motivations

Discrete event systems (DESs)

working

b

a idle

error

c d t

t1

idle

working

error

a

state

b a

c

t2 t3 t4

A subdomain of systems theory dealing with models:

I Described in terms of state / events

I Piecewise constant evolution

I State and events are not signals: non numerical (symbolic) values

I Evolution is driven by event occurrence

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 4 / 30

Motivations

First hurdle: The dimensionality curse

The most critical problem one has to cope with in the area of DESs

Consider a DES composed by k subsystems with state space X1,X2, . . .Xk . Theoverall system has state space

X ⊆ X1 × X2 × · · · × Xk

If |Xi | = n for all i then |X | ≤ nk (state space explosion)

=⇒ Models like automata — that require the exhaustive enumeration of the statespace — cannot be used in practice although they are convenient to define basicconcepts and properties.

Challenge: find means to cope with the state explosion problem

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 5 / 30

Motivations

Second hurdle: Absence of reference model

Classical control theory: well accepted models such as input- output models orstate variable models that can be used in different con- texts (analysis, control,state estimation, identification, etc.)

Discrete event systems: a series of different models, each one used to solveparticular problems

I finite state automata

I max-plus algebra

I (semi)markovian processes and queuing networks

I . . .

Challenge: find a reference model providing a set of analytical tools applicable indifferent contextsNOTE: SupCon success was due to its ”model independence” based on languages.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 6 / 30

Why Petri nets?

Table of Contents

Motivations

Why Petri nets?

Petri nets for supervisory control

Control using GMECs

Conclusions

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 7 / 30

Why Petri nets?

Petri nets (PNs)

t2 p2 p3 p1

p6

p4

p5

t1 t3

t4 Marked net 〈N,M〉: a Petri net withinitial marking M ∈ Nm

M =[

1 0 0 0 0 0]T

t2 p2 p3 p1

p6

p4

p5

t1 t3

t4

Transition t1 is enabled

t2 p2 p3 p1

p6

p4

p5

t1 t3

t4 The firing of t1 yields M[t1〉M ′:

M ′ =[

0 1 0 0 1 0]T

1 000 00 0 100 10 0 010 10

0 100 01 0 010 01

t4 t4

t2

t2

0 001 10

0 001 01

t4

t3

t3

t1 p1 p2+p5 p3+p5 p4+p5

p2+p6 p3+p6 p4+p6

The behavior can be described by thereachability graph.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 8 / 30

Why Petri nets?

Advantages of Petri nets

Petri nets are a family of discrete event models that offer several advantages w.r.t.automata.

1. PNs do not require the complete enumeration of the reachability set =⇒compact (and modular) representation of complex systems.

2. Can describe systems with an infinite state space (unbounded nets).

t1 t2 p1 0

t1

1 t2

t1

2 t2

t1

3 t2

t1

t2

...

3. State is a vector =⇒ linear algebra (in general: structural analysis)

4. Within this family there several classes of models: logical, timed(deterministic or stochastic), continuous , hybrid, . . . sharing similar analysisapproaches.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 9 / 30

Petri nets for supervisory control

Table of Contents

Motivations

Why Petri nets?

Petri nets for supervisory control

Control using GMECs

Conclusions

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 10 / 30

Petri nets for supervisory control

PNs for supervisory control: language specifications (1)

Research in this area started in the late 80’s based on Petri net language).Many problems are still open.

Some successful stories

Krogh (Allerton87): PNs allow to model concurrentsemantics (as opposed interleaving semantics). Asupremal controllable language may not exist but thereexist maximal ones. t2

t1

Giua and DiCesare (TAC94, TAC95): unbounded Petri nets (infinite statespace) can be used for supervisory control provided the model is deterministic.For non-deterministic PNs properties of interest may undecidable or controlproblems not admit a PN solution.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 11 / 30

Petri nets for supervisory control

PNs for supervisory control: language specifications (2)

Some open problems

I No efficient and general technique based on the net structure to solve asupervisory design problem (e.g., the monolithic supervisor approach)

I No general technique to represent a maximally permissive supervisor as anet (but see Ghaffari, Rezg and Xie, TRA03)

Note that the successful stories are mostly (not always) based on the increasedmodeling power of Petri nets.

Not easy to describe efficiently the behavior of a net based on its structure

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 12 / 30

Petri nets for supervisory control

PNs for supervisory control: state specifications (1)

Many successful stories.

Holloway and Krogh (TAC90): efficiently solutions to supervisory controlproblems marking some places by the analysis of the uncontrollable paths leadingto them.

Giua, DiCesare and Silva (SMC92): defined GMECs a general class of statespecifications that can can be enforced by a simple control structure (monitorplace) whose design is structural.

Moody and Ansaklis (TAC00): extended GMEC control to nets withuncontrollable and unobservable transitions

Espeleta, Colom and Martinez (TRA95): an approach for deadlock control basedon siphon analysis

. . . (many others) . . .

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 13 / 30

Petri nets for supervisory control

PNs for supervisory control: state specifications (2)

Many of these successful stories are based on exploiting particular structures andon the use of structural analysis to provide (practically) efficient solutions.

The fact that in Petri nets the state is described by a marking (a vector ofintegers) is a major asset that allows one to use simple linear algebraic techniquesfor analysis of state specification.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 14 / 30

Control using GMECs

Table of Contents

Motivations

Why Petri nets?

Petri nets for supervisory control

Control using GMECs

Conclusions

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 15 / 30

Control using GMECs

Generalized mutual exclusion constraints

Mutual exclusion: NOT (A1 AND A2)

If A1,A2 are predicates denoting the marking of a safe place: M(p1) + M(p2) ≤ 1

For a net with m places we define a generalized mutual exclusion constraint

(w, k)

where w =[w1 w2 · · · wm

]T ∈ Zm and k ∈ Z.

The constraint defines a set of legal markings

L(w, k) = {M ∈ Nm | wTM ≤ k}

i.e.,wTM = w1M(p1) + w2M(p2) + · · ·+ wmM(pm) ≤ k.

A. Giua, F. DiCesare, M. Silva, ”Generalized Mutual Exclusion Constraints for Nets with

Uncontrollable Transitions,” Proc. IEEE Int. Conf. on Systems, Man, and Cybernetics (Chicago,

USA), pp. 974-799, October 1992.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 16 / 30

Control using GMECs

Example

M1

BufferRobot

type 1

type 2M2

t 1 t 2 t3p1 p 2 p 3

t 4 t 5 t6p4 p 5 p 6

t 7

Place Description

p1 loading M1

p2 M1 workingp3 parts type 1 in bufferp4 loading M2

p5 M2 workingp6 parts type 2 in buffer

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 17 / 30

Control using GMECs

Example

M1

BufferRobot

type 1

type 2M2

t 1 t 2 t3p1 p 2 p 3

t 4 t 5 t6p4 p 5 p 6

t 7

1. only one robot available

2. single server machines

3. buffer has k slots; type 1 partstake 1 slot, type 2 parts take 2slots

4. difference in buffer among partstype 1 and 2 should be less orequal to k ′

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 18 / 30

Control using GMECs

Example

M1

BufferRobot

type 1

type 2M2

t 1 t 2 t3p1 p 2 p 3

t 4 t 5 t6p4 p 5 p 6

t 7

1. M(p1) + M(p4) ≤ 1

2. M(p2) ≤ 1M(p5) ≤ 1

3. M(p3) + 2M(p6) ≤ k

4. M(p3)−M(p6) ≤ k ′

−M(p3) + M(p6) ≤ k ′

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 19 / 30

Control using GMECs

Monitor

A monitor corresponding to GMEC (w, k) is a new place S whose incidencematrix is the vector 1× n:

Cs =[Cs(t1) · · · Cs(tn)

]= −wTC

and whose initial marking is

M0(S) = k −wTM0.

Adding to a net a monitor corresponding to a GMEC (w, k) ensures that theconstraint is never violated. The monitor is also maximally permissive.

Nm

L(w,k)

Muc(N,M0,w,k)

Mc(N,M0,w,k) R(N,M0)

N m

L(w,k)

M(N,M0,w,k)

R(N,M0)

N m

L(w,k)

Muc(N,M0,w,k)

Mc(N,M0,w,k) R(N,M0)

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 20 / 30

Control using GMECs

Example (cont’d)

3

2

k ' k ' k

t 7

t 1 t 2 t 3 p 1 p 2

p 3

t 4 t 5 t 6 p 4 p 5

p 6

S 1 S 2

S 3

S 4 S 5

S 6

1. M(p1) + M(p4) ≤ 1

2. M(p2) ≤ 1M(p5) ≤ 1

3. M(p3) + 2M(p6) ≤ k

4. M(p3)−M(p6) ≤ k ′

−M(p3) + M(p6) ≤ k ′

Advantages:

I Controller synthesis procedure based on liner algebra (no state enumeration)

I Closed-loop system is a net

I Modularity of plant and controller

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 21 / 30

Control using GMECs

Uncontrollable transitions

A monitor S , when empty, disables all its output transitions S• (there is a pre arcfrom S to all these transitions). If a transition is uncontrollable no pre arcs areallowed from monitor places to it.

We need to refine our control structure to avoid reaching also all those markingsthat are legal but uncontrollable

Muc(N,M0,w, k)

and keep only the controllable ones

Mc(N,M0,w, k)

Nm

L(w,k)

Muc(N,M0,w,k)

Mc(N,M0,w,k) R(N,M0)

N m

L(w,k)

M(N,M0,w,k)

R(N,M0)

N m

L(w,k)

Muc(N,M0,w,k)

Mc(N,M0,w,k) R(N,M0)

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 22 / 30

Control using GMECs

Example

Empty boxes denoteuncontrollable transi-tions (t2, t3)

Want to enforceM(p3) ≤ 1

Monitor ps is not con-trollable

Monitor p̃s gives theoptimal solution

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 23 / 30

Control using GMECs

The bad news (Giua, DiCesare, Silva)

A monitor solution may not exist on nets with uncontrollable transitions.

p1 p2

p3 p4

p5

p6

p7

t1 t2

t3

t4

t5 t6

Want to enforce

M(p5) + M(p7) ≤ 1

M1 = [2 0 0 2 0 1]T is ok

M2 = [0 2 2 0 0 1]T is ok

M = [1 1 1 1 0 1]T is NOT

It is impossible to allow with a linear constraint M1 and M2 while preventingM = (M1 + M2)/2 (set of legal markings must be a convex set)

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 24 / 30

Control using GMECs

The bad news (Giua, DiCesare, Silva)

A monitor solution may not exist on nets with uncontrollable transitions.

p1 p2

p3 p4

p5

p6

p7

t1 t2

t3

t4

t5 t6

Want to enforce

M(p5) + M(p7) ≤ 1

M1 = [2 0 0 2 0 1]T is ok

M2 = [0 2 2 0 0 1]T is ok

M = [1 1 1 1 0 1]T is NOT

It is impossible to allow with a linear constraint M1 and M2 while preventingM = (M1 + M2)/2 (set of legal markings must be a convex set)

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 24 / 30

Control using GMECs

The bad news (Giua, DiCesare, Silva)

A monitor solution may not exist on nets with uncontrollable transitions.

p1 p2

p3 p4

p5

p6

p7

t1 t2

t3

t4

t5 t6

Want to enforce

M(p5) + M(p7) ≤ 1

M1 = [2 0 0 2 0 1]T is ok

M2 = [0 2 2 0 0 1]T is ok

M = [1 1 1 1 0 1]T is NOT

It is impossible to allow with a linear constraint M1 and M2 while preventingM = (M1 + M2)/2 (set of legal markings must be a convex set)

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 24 / 30

Control using GMECs

The bad news (Giua, DiCesare, Silva)

A monitor solution may not exist on nets with uncontrollable transitions.

p1 p2

p3 p4

p5

p6

p7

t1 t2

t3

t4

t5 t6

Want to enforce

M(p5) + M(p7) ≤ 1

M1 = [2 0 0 2 0 1]T is ok

M2 = [0 2 2 0 0 1]T is ok

M = [1 1 1 1 0 1]T is NOT

It is impossible to allow with a GMEC M1 and M2 while preventingM = (M1 + M2)/2 (set of legal markings must be a convex set)

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 24 / 30

Control using GMECs

Hubris and Nemesis

Zeus

HippasusPythagoras

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 25 / 30

Control using GMECs

The good news (Moody and Antsaklis)

If we are not interested in finding a maximally permissive solution a suboptimalmonitor solution often exists.

The suboptimal solution may be found looking for a more restrictive butcontrollable GMEC (a structural procedure to do this has been presented byMoody, and Antsaklis)

The suboptimal solution may not be unique

J. Moody, P. Antsaklis, ”Petri net supervisors for DES with uncontrollable and unobservable

transitions,” IEEE Trans. on Automatic Control, 45(3), pp.462–476, 2000.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 26 / 30

Control using GMECs

Example

p1 p2

p3 p4

p5

p6

p7

t1 t2

t3

t4

t5 t6

Instead of enforcing

M(p5) + M(p7) ≤ 1

enforce the more restrictiveconstraint

M(p4) + M(p5) + M(p7) ≤ 1

This monitor is controllablebut suboptimal: it forbids

M1 = [2 0 0 2 0 1]T

that we showed is legal.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 27 / 30

Control using GMECs

Example

p1 p2

p3 p4

p5

p6

p7

t1 t2

t3

t4

t5 t6

Another possible solution:

M(p3) + M(p5) + M(p7) ≤ 1

This monitor is controllablebut suboptimal: it allows

M1 = [2 0 0 2 0 1]T

but forbids the legal marking

M2 = [0 2 2 0 0 1]T

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 28 / 30

Conclusions

Table of Contents

Motivations

Why Petri nets?

Petri nets for supervisory control

Control using GMECs

Conclusions

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 29 / 30

Conclusions

Conclusions

I Structure theory plays a fundamental role in the domain of discrete eventsystems modeled by Petri nets, and has been used to solve problems ofanalysis, control, state estimation, diagnosis, opacity, optimization, etc.

I The role of Petri nets and of structure theory is likely to increase in thefuture years as DES theory must evolve to address problems originating fromnew domains such as networked systems, internet of things, cyber security,smart cities, social networks, etc.

I A mix of behavioral and structural approaches is likely to produce new resultsand solve open problems in the general framework of supervisory control withlanguage specifications.

A. Giua (UNICA/AMU) Supervisory Control of PNs RW30 30 / 30