Date post: | 20-Jul-2019 |
Category: |
Documents |
Upload: | phungkhanh |
View: | 212 times |
Download: | 0 times |
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