You are on page 1of 6

Proceedings of the 13th International Workshop on Discrete Event Mo_2_A.

3
Systems, Xi'an, China, May 30 - June 1, 2016

Exploiting Symmetry of State Tree Structures for Discrete-event


Systems with Parallel Components
Ting Jiao, Yongmei Gan, Guochun Xiao W. M. Wonham
School of Electrical Engineering Department of Electrical and Computer
Xi’an Jiaotong University, Xi’an, Shaanxi Engineering
710049, China University of Toronto, M5S 3G4, Canada
ymgan@mail.xjtu.edu.cn wonham@control.utoronto.ca

Abstract— We consider discrete-event systems (DES) consist- components, and achieve controller reduction by extracting
ing of parallel arrays of machines and buffers. The machines are control information from the control functions computed by
divided into groups in each of which the members have identical STS [10]. As control functions are based on the current state
structure, i.e. same state set and isomorphic transitions. In these
systems, to avoid the underflow or overflow of the buffers, the of each machine and numbers of workpieces in buffers, it’s
controller only needs the information of the total numbers of feasible to obtain the numbers of machines at each state
components at each state and the numbers of workpieces in in every group, i.e. abstract control information. By such
the buffers. By exploiting the identical structure of each group, abstraction, we get succinct and invariant abstract control
we extract such control information from the control functions functions, which are shown to be equivalent in control action
computed by the state tree structures (STS) to generate abstract
control functions. Thanks to the symmetry of the system, to the original ones.
we show that all controllable events relabeled to the same In [11], the control is investigated of parametrized DES when
symbol share an invariant abstract control function, which specifications are given in terms of predicates and satisfy a
is independent of the total number of machines, as long as similarity assumption, while in our paper, we focus on the
the buffer sizes are fixed. The approach is illustrated by two specification to prohibit underflow and overflow of buffers
examples.
with fixed capacity. Parametrization of templates is also
discussed in [12], [13] to facilitate the design of software for
I. I NTRODUCTION
DES control. Reference [14] uses state machine templates to
Many large systems exhibit similarity of structure (sym- program DES and references [15], [16] design time templates
metry) within subsets of its components, allowing the same for discrete-event fault monitoring in manufacturing systems.
control law to be applied in each subset. In mathematical In this paper, we exploit symmetry of STS to obtain abstract
physics the notion of symmetry is widely exploited to control functions. Our initial work on this topic was reported
simplify modeling and computation, for instance by means of in [17].
invariants under the permutation or rotation groups [1], [2]. The rest of the paper is organized as follows. Section II
An example from control theory is the feedback group and provides preliminaries. Section III formalizes the extraction
its invariants, the controllability indices, of a linear system of abstract control functions and shows the consistency
[3]. between abstract control functions and the original ones in
In the supervisory control theory (SCT) of DES, references control action. Section IV presents two examples. Section V
[4] and [5] use group theory to characterize symmetry arising states our conclusions.
from isomorphic components connected serially, thereby
obtaining a reduced controller equivalent in control action II. P RELIMINARIES
to the original controller. In [6], the control and verification A. Supervisory control theory
of similar modular systems are explored. There, similar Supervisory Control Theory (SCT) deals with the control
modular systems are comprised of subsystem modules that of DES [18], [19]. The formal structure of a DES to be
exhibit isomorphic local behavior coordinated on global controlled is a generator, say
event occurrences; the state size of the monolithic system is
reduced by the quotient automaton construction. In [7], the G = (Q, Σ, δ, q0 , Qm )
state size of modular systems containing permutation sym- ˙ u is a finite alphabet of symbols that we
Here Σ = Σc ∪Σ
metry is reduced by the permutation symmetric µ-calculus.
refer to respectively as controllable and uncontrollable event
Modular systems constructed from a given template are also
labels, Q is the state set, δ : Q × Σ → Q is the (partial)
studied in [8], which analyzes deadlock and blocking for
transition function, q0 is the initial state, and Qm ⊆ Q is
systems consisting of isomorphic modules initiated from a
the subset of marked states. The transition function δ is often
template. In [9], a commutative and associative broadcasting-
extended to a function δ : Q × Σ∗ → Q by induction on
based parallel composition rule of a multi-agent system
length of strings. The closed behavior of G is the language
with one template is proposed. By contrast, in the present
paper we consider DES composed of groups of parallel L(G) := {s ∈ Σ∗ |δ(q0 , s)!}

978-1-5090-4190-9/16/$31.00 ©2016 IEEE 97


R (STS) G [10] for modeling DES is a six-tuple
L G RL G

rep ˜ rep ˜ G = (ST, H, Σ, ∆, ST 0 , ST m )

G relabel RG
Here ST is the state tree organizing the system’s state set into
a hierarchy; H is the set of holons (finite automata) matched
Fig. 1. Schematic of relabeling function to ST that describe the local behavior of G; Σ is the finite
event set, partitioned into the disjoint controllable subset Σc
and uncontrollable subset Σu . Let ST (ST) denote the set of
in which the notation δ(q0 , s)! means that δ(q0 , s) is defined. all sub-state-trees of ST. The global transition function ∆
The marked behavior is is defined as ∆ : ST (ST) × Σ → ST (ST); ST 0 ∈ ST (ST)
is the initial state tree; and ST m ⊆ ST (ST) is the set of
Lm (G) := {s ∈ L(G)|δ(q0 , s) ∈ Qm } ⊆ L(G) marked state trees.
A supervisory control for G is any map V : L(G) → Γ, Let B(ST) denote the set of all basic state trees of ST [10].
in which Γ is the set of all control patterns Γ = {γ ∈ Write P red(ST) for the set of all predicates on B(ST). For
P wr(Σ)|γ ⊇ Σu }. The pair (G, V ) will be written as V /G, σ ∈ Σ define a map Mσ : P red(ST) → P red(ST) by b 
to suggest ‘G under the supervision of V ’. Let M ⊆ Lm (G). Mσ (P ) iff ∆(b, σ)  P with P ∈ P red(ST). A predicate P
Define a marking nonblocking supervisory control (MNSC) is called weakly controllable if (∀σ ∈ Σu )P  Mσ (P ). Let
for the pair (M, G), as a map V : L(G) → Γ; for the marked P ∈ P red(ST). The reachability predicate R(G, P ) holds
behavior of V /G we define Lm (V /G) = L(V /G) ∩ M . Let on only those basic trees that can be reached in G, from
E ⊆ Σ∗ be a specification language and some b0  P ∧ P0 , via a path of state trees all satisfying P .
Dually, the coreachability predicate CR(G, P ) is defined to
C(E) = {K ⊆ E|K is controllable with respect to G} hold on those basic trees that can reach some bm  P ∧ Pm
by a path of state trees all satisfying P . A predicate P is
the class of controllable languages contained in specification
nonblocking with respect to G if R(G, P )  CR(G, P ).
E [18], [19]. C(E) has the supremal element
Let N C(P ) denote the family of nonblocking and weakly
supC(E) = ∪{K|K ∈ C(E)} controllable subpredicates of P . As N C(P ) is nonempty
and is closed under arbitrary disjunctions ∨, it contains the
B. Relabeling supremal element supN C(P ) := ∨{K|K ∈ N C(P )}.
Relabeling maps specified event symbols of the original Define a state feedback control (SFBC) f to be a function
system to new event symbols. Let T be the event set of f : B(ST) → Π, where Π := {Σ0 ⊆ Σ|Σu ⊆ Σ0 }. For
˙ u . Let Σ =
symbols after relabeling, partitioned as T = Tc ∪T σ ∈ Σ define a control function fσ : B(ST) → {0, 1}
˙ ∗ ∗
Σc ∪Σu and R : Σ → T be a relabeling map, satisfying according to fσ (b) = 1 iff σ ∈ f (b). Then the control action
the following conditions: of f is fully represented by the set {fσ |σ ∈ Σ} with fσ :=
Mσ (supN C(P )). Thus for every b ∈ B(ST), fσ (b) = 1 iff
R(ε) = ε (ε denotes the empty string); ∆(b, σ)  supN C(P ). Control functions can be synthesized
R(σ) ∈ Tc , σ ∈ Σc ; by the software STSLib [23].
R(σ) ∈ Tu , σ ∈ Σu ;
R(sσ) = R(s)R(σ), s ∈ Σ∗ , σ ∈ Σ.
III. E XTRACTION OF ABSTRACT CONTROL FUNCTIONS
A schematic of R is shown in Fig. 1. Let
G = (Q, Σ, δ, q0 , Qm ), RG = (Z, T, ζ, z0 , Zm )
We divide the components of a DES into n groups.
The result of rep(·) is an automaton representing the cor- The machines in a given group are isomorphic (i.e. i-
responding language. In TCT [20], we compute RG = dentical in structure). Denote the jth component in group
relabel(G) to implement R such that Lm (RG) = Gi , i ∈ {1, · · · , n} as Gij = (Qi , Σij , δij , qi0 , Qim ). Let
RLm (G), L(RG) = RL(G). What relabel(·) does is first Lm (SUP) = supC(Lm (G) ∩ E), where E ⊆ Σ∗ is the
apply a direct transition relabeling to G and then convert the specification language. For s ∈ Lm (SUP) =: L(SUP),
result to a deterministic automaton by the subset construction denote by
algorithm (SCA) [21].
SC(s) := (νBU F 1 , · · · , νBU F k , q11 , · · · , q|G
1
1|
,··· ,
C. State tree structures q1n , · · · , q|G
n
n|
)
STS model hierarchical and concurrent organization of the status configuration after the occurrence of s. Here
the system state set. By encoding STS models with binary qji , j ∈ {1, · · · , |Gi |} represents the currently activated state
decision diagrams (BDD) [22], the computational complex- of component Gij in group Gi ; νBU F l , l ∈ {1, · · · , k}
ity of supervisor synthesis is often successfully managed represents the number of workpieces in buffer BUFl. SC(s)
(compared with the ‘flat’ DES model). A state tree structure corresponds to a legal basic state tree as shown in Fig. 2.

98
ST occurrence of string s. Correspondingly,
Ωen := {ASC(s)|s ∈ L(SUP) &
[sσ ∈
/ L(G) or sσ ∈ L(SUP)]},
BUF1 u  u BUFk u  u Gij u 
Ωdis := {ASC(s)|sσ ∈ L(G) & sσ ∈
/ L(SUP)}
nBUF 1 nBUFk q ij
Write Ω := Ωen ∪Ω˙ dis .
Fig. 2. Schematic of a basic state tree Define the abstraction map ϕ : Ψ → Ω according to
ϕ(SC(s)) = ASC(s) for every s ∈ L(SUP).
Lemma 1: For any s, s0 ∈ L(SUP),
fV ϕ(SC(s)) = ϕ(SC(s0 )) ⇔ R(s) = R(s0 )
< {disable,enable}
Proof: (⇒) The proof is by induction on length of s, s0 .
gV Basis: Let s = s0 = ε. As all components are at their initial
M
states and buffers are empty, SC(s) = SC(s0 ). We have
: ϕ(SC(s)) = ϕ(SC(s0 )), R(s) = R(s0 ) = ε.
Inductive step: Assume R(s) = R(s0 ),
Fig. 3. Relationship between fσ and ϕ
ϕ(SC(s)) =ϕ(SC(s0 ))
=(· · · , νBU F l , · · · , νqi , · · · , νqi 0 , · · · )
Assume that there exist µ, µ0 ∈ Σ such that sµ, s0 µ0 ∈
Denote by L(SUP), ϕ(SC(sµ)) = ϕ(SC(s0 µ0 )) and the occurrence of
ASC(s) := (νBU F 1 , · · · , νBU F k , ν01 , · · · , ν|Q
1
,··· , µ will increment νBU F l , νqi and decrement νqi 0 . Then there
1 |−1
exists some machine
ν0n , · · · , ν|Q
n
n |−1
)
Gij = (Qi , Σij , δij , qi0 , Qim ) ∈ Gi , j ∈ {1, · · · , |Gi |}
the abstract status configuration after the occurrence of s.
Here νji represents the number of components in group Gi such that δij (q 0 , µ) = q, where q, q 0 ∈ Qi . As ϕ(SC(s)) =
whose currently activated state is state j, j ∈ {0, · · · , |Qi | − ϕ(SC(s0 )), ϕ(SC(sµ)) = ϕ(SC(s0 µ0 )) by the inductive
1}. assumption, there exists j 0 ∈ {1, · · · , |Gi |} such that µ, µ0 is
Assume that in any component Gij , for any q, q 0 ∈ Qi , there a replicated pair and the occurrence of µ0 will also increment
is at most one transition from q to q 0 , i.e. δij (q, σ) = q 0 with νBU F l , νqi and decrement νqi 0 . Thus, R(µ) = R(µ0 ) by the
σ ∈ Σij . Let definition of replicated pair. A similar argument applies if
νBU F l is decremented by the occurrence of µ or µ0 . Thus,
Gij =(Qi , Σij , δij , qi0 , Qim ),
R(sµ) = R(s0 µ0 ).
Gij 0 =(Qi , Σij 0 , δij 0 , qi0 , Qim ), j, j 0 ∈ {1, · · · , |Gi |} The reverse direction follows the same way.
We say σ ∈ Σij , σ 0 ∈ Σij 0 is a replicated pair if δij (q, σ) = Let SUP = (Z, Σ, ζ, z0 , Zm ). As every status configuration
q 0 , δij 0 (q, σ 0 ) = q 0 with q, q 0 ∈ Qi , R(σ) = R(σ 0 ). corresponds to a unique state in SUP, for any z1 , z2 ∈ Z
If σ, σ 0 is a replicated pair, they are relabeled to the same we define binary relation π ⊆ Z × Z such that (z1 , z2 ) ∈ π
symbol. We require that any two distinct events be relabeled iff R(s1 ) = R(s2 ) with s1 , s2 ∈ Σ∗ , z1 = ζ(z0 , s1 ), z2 =
to different symbols if they are not a replicated pair. ζ(z0 , s2 ). By Lemma 1, we know that π is an equivalence
Next we discuss the relationship between control function relation. Next, we show that control decisions for all states
fσ and abstraction map ϕ (defined below) as shown in Fig. in the same cell partitioned by the equivalence relation are
3. consistent.
We say R is control-definite (CD) with respect to L(SUP)
For a given σ ∈ Σc , we compute the set of status if
configurations for the control function fσ by STS. Let
(∀s, s0 ∈ L(G))(∀σ, σ 0 ∈ Σ)R(s) = R(s0 ), R(σ) = R(σ 0 ),
Ψen := {SC(s)|s ∈ L(SUP) &
s ∈ L(SUP) & [sσ ∈
/ L(G) or sσ ∈ L(SUP)] ⇒
[sσ ∈
/ L(G) or sσ ∈ L(SUP)]},
s0 ∈ L(SUP) & [s0 σ 0 ∈
/ L(G) or s0 σ 0 ∈ L(SUP)]
Ψdis := {SC(s)|sσ ∈ L(G) & sσ ∈
/ L(SUP)}
Namely, if R is CD with respect to L(SUP), then event dis-
˙ dis .
Write Ψ := Ψen ∪Ψ ablement (resp. enablement) is consistent with the relabeling
The control function fσ : Ψ → {enable, disable} is defined of strings. Next we design an algorithm to verify whether R
as is CD with respect to L(SUP).
(
enable if SC(s) ∈ Ψen Denote by ZC := {Zi |Zi ⊆ Z, i ∈ I} the set of state subsets
fσ (SC(s)) = generated in the process of converting the direct transition
disable if SC(s) ∈ Ψdis
relabeling result of SUP to its deterministic counterpart by
If fσ (SC(s)) = enable, then event σ is enabled after the SCA. By the semantics of relabel(·), we have that for any

99
two states z1 , z2 ∈ Zi , i ∈ I, there exist strings s1 , s2 ∈ Σ∗ ASC s
such that ζ(z0 , s1 ) = z1 , ζ(z0 , s2 ) = z2 with R(s1 ) = s

R(s2 ).
g1
Let ZD := {(z, Dz )} represent the result of Condat(·), in
which z ∈ Z, Dz is the set of controllable events disabled G


at state z. Applying relabeling to every event in Dz , we
get ZRD := {(z, R(Dz ))}. The pseudo-code shown in g | Tc |

Algorithm 1 describes how to verify whether R is CD with


respect to L(SUP). The idea of the algorithm is to verify Fig. 4. Schematic of the overall control mechanism with abstract control
whether for all states in Zi ∈ ZC, the corresponding sets functions
of events to be disabled computed by Condat are the same
after relabeling. If they are, then the event disablement is
Thus, for a given σ ∈ Σc , we have
consistent with the relabeling of strings and the algorithm (
returns true; otherwise, the algorithm returns false. Although enable if ASC(s) ∈ Ωen
the time complexity of this algorithm is the same as the SCA, gσ (ASC(s)) =
disable if ASC(s) ∈ Ωdis
i.e. O(2n ) in worst case, it often performs more quickly
than its worst-case complexity would suggest. Moreover, for If gσ (ASC(s)) = enable, then event σ is enabled after the
computation efficiency, we could divide the events to be occurrence of string s.
relabeled into several parts; then relabel events part by part Proposition 1 tells us that if R is CD with respect to
to generate fewer intermediate state subsets. L(SUP), the control actions defined on the abstract status
With the foregoing definitions, we prove that the diagram configurations are identical with the control actions defined
on the status configurations.
Algorithm 1 Algorithm to verify whether R is CD with For a given controllable event τ ∈ Tc , denote by
respect to L(SUP) Στ := {σ ∈ Σ|R(σ) = τ }
Require: ZC := {Zi |Zi ⊆ Z, i ∈ I},ZRD :=
{(z, R(Dz ))} the set of controllable events relabeled as τ .
Ensure: true or f alse Clearly, for any σ, σ 0 ∈ Στ , σ, σ 0 is a replicated pair. For
1: procedure CD(ZC,ZRD) τ, τ 0 ∈ Tc with τ 6= τ 0 , Στ ∩ Στ 0 = ∅ as two distinct events
2: for i = 1 to |I| do which don’t comprise a replicated S pair will not be relabeled
3: for j = 2 to n = |Zi |, Zi := {z1 , · · · , zn } do as the same symbol. We have τ ∈Tc Στ = Σc .
4: if R(Dz1 ) ! = R(Dzj ) then If ϕ(SC(s)) = ϕ(SC(s0 )), sσ, s0 σ 0 ∈ L(G) with R(σ) =
5: return false R(σ 0 ), we have gσ (ϕ(SC(s))) = gσ0 (ϕ(SC(s0 ))) as R is
6: end if CD. Let gi, i ∈ {1, · · · , |Tc |} represent the shared abstract
7: end for control functions for events in Στ , τ ∈ Tc . Then the overall
8: end for control mechanism of the whole system can be represented
9: return true as shown in Fig. 4, in which we use abstract control functions
10: end procedure gi, i ∈ {1, · · · , |Tc |} for the new controllers.
IV. E XAMPLES
shown in Fig. 3 commutes. We provide two examples to illustrate the process of
Proposition 1: If R is CD with respect to L(SUP), then extracting abstract control functions above. The first one is a
for every σ ∈ Σc there exists an abstract control function manufacturing facility (MF) with multiple input and output
gσ : Ω → {disable, enable} such that the diagram shown in machines and a buffer with fixed size; the second one is a
Fig. 3 commutes. transfer line (TL) incorporating ‘material feedback’.
Proof: We need to show ker ϕ ≤ ker fσ , where ker(·)
denotes equivalence kernel [24]. Let s1 , s2 ∈ L(SUP) with A. Manufacturing facility
ϕ(SC(s1 )) = ϕ(SC(s2 )), i.e. (SC(s1 ), SC(s2 )) ∈ ker ϕ. The MF shown in Fig. 5 consists of parallel arrays of
As ϕ(SC(s1 )) = ϕ(SC(s2 )), we have R(s1 ) = R(s2 ) by machines and a buffer with fixed size. Let
Lemma 1.
Assume SC(s1 ) ∈ Ψen , i.e. s1 σ ∈ L(SUP) or s1 σ ∈/ L(G). G1 ={MIN1, MIN2, MIN3}
As R is CD with respect to L(SUP), we have s2 σ ∈ / L(G) G2 ={MOUT1, MOUT2}
or s2 σ ∈ L(SUP). Thus, SC(s2 ) ∈ Ψen by the definition of M :=(||3i=1 MINi)||(||2j=1 MOUTj)
Ψen .
SUP =supcon(M, BUF)
Assume SC(s1 ) ∈ Ψdis , i.e. s1 σ ∈ L(G), s1 σ ∈ / L(SUP).
We have s2 σ ∈ L(G), s2 σ ∈ / L(SUP) as R is CD with in which ‘||’ denotes synchronous product [18]. For s ∈
respect to L(SUP). Thus, SC(s2 ) ∈ Ψdis by the definition L(SUP), SC(s) is denoted by (νBU F , q11 , q21 , q31 , q12 , q22 ),
of Ψdis . in which qi1 , qj2 represent the currently activated state

100
#2 TABLE III
1i1 1i2 2j1 2j2 R EDUCED ABSTRACT STATUS CONFIGURATIONS WHERE EVENTS 1i1
MINi BUF MOUTj
ARE ENABLED
i  ^1, ,| G1 |` , j  ^1, ,| G 2 |`
νBU F ν11
1i1 2j1
0 1 0 1 0 0
1i2 2j2 0 1
MINi MOUTj 1 0
0 1i2 1 1i2 2
2j1 2j1 TABLE IV
BUF
R EDUCED ABSTRACT STATUS CONFIGURATIONS WHERE EVENTS 2j1
ARE ENABLED
Fig. 5. Schematic of manufacturing facility

TABLE I νBU F
S TATUS CONFIGURATIONS WHERE EVENT 111 IS ENABLED 1/2

νBU F MIN1 MIN2 MIN3 MOUT1 MOUT2


0 0 0 0/1 0/11 0/1 decisions of the whole system are based on Table III and
0 0 1 0 0/1 0/1 Table IV, which are independent of the number of input
1 0 0 0 0/1 0/1 and output machines as the entries in these two tables
1
0/1 denotes that the currently activated state is either 0 are independent of the total number of input and output
or 1. machines, when buffer size is fixed at 2. The generalization
to a buffer of arbitrary size should be clear.
TABLE II
A BSTRACT STATUS CONFIGURATIONS WHERE EVENTS 1i1 ARE ENABLED B. Transfer line
We apply the same idea to the TL [18] shown in Fig. 6.
νBU F ν01 ν11 ν02 ν12 Let m = 4, n = 3, l = 3. We divide the components into
0 3 0 ×2 × three groups
0 2 1 × ×
1 3 0 × × G1 :={M11, M12, M13, M14}
2
The symbol ‘×’ denotes ‘don’t care’. G2 :={M21, M22, M23}
G3 :={TU1, TU2, TU3}

of MINi, MOUTj respectively. ASC(s) is denoted by Let


(νBU F , ν01 , ν11 , ν02 , ν12 ), in which νji represents the number TL :=(||4i=1 M1i)||(||3j=1 M2j)||(||3k=1 TUk)
of machines whose currently activated state is state j.
B :=B1||B2
By the computation of STS, event 111 is enabled at the status
configurations shown in Table I. SUP =supcon(TL, B)
Let events 1i1, 1i2, 2j1, 2j2 be relabeled as 11, 12, 21, 22 Let events 1i1, 1i2, 1j3, 1j4, 1k5, 1k6, 1k8 be relabeled as
respectively. By Algorithm 1, we confirm that R is CD 11, 12, 13, 14, 15, 16, 18 respectively. By Algorithm 1, we
with respect to L(SUP). Hence, Proposition 1 holds and we confirm that R is CD with respect to L(SUP). For s ∈
extract the abstract status configurations as shown in Table L(SUP), SC(s) is denoted by
II. Also, we have that all events 1i1, i ∈ {1, 2, 3} are enabled
at the abstract status configurations shown in Table II. (νB1 , νB2 , q11 , q21 , q31 , q41 , q12 , q22 , q32 , q13 , q23 , q33 )
Moreover, in this example, to enable events 1i1, we only in which qi1 , qj2 , qk3 represent the currently activated state of
need the information embodied in ν11 and νBU F , i.e. the
number of input machines at work and the number of
workpieces in the buffer. Thus, Table II can be further #2 #1
1i1 1i2 1j3 1j4 1k5 1k6
reduced to Table III, which illustrates the predicate that M1i B1 M2j B2 TUk

events 1i1 are enabled if: 1k8


• Buffer is empty (νBU F = 0) and at most one input i  ^1,  , m` , j  ^1, , n` , k  ^1, , l`

machine is working (ν11 ≤ 1); 0 1i1 1 0 1j3 1 0 1k5 1


1i2 1j4
• There is one workpiece in the buffer (νBU F = 1) and 1k6,1k8
M1i M2j TUk
no input machine is working (ν11 = 0). 1i2 1i2
0 1k8 1 1k8 2 0 1j4 1
To enable events 2j1, j ∈ {1, 2}, we only need the informa- 1j3 1j3 1k5
tion in νBU F because events 2j1 are enabled if the buffer B1 B2

is not empty. The reduced abstract status configurations for


events 2j1 are listed in Table IV. Therefore, the control Fig. 6. Schematic of transfer line

101
TABLE V
As STS is efficient in the synthesis of control functions, our
R EDUCED ABSTRACT STATUS CONFIGURATIONS WHERE EVENTS 1i1
future work will be to extract abstract control functions of
ARE ENABLED
more complex systems with symmetric structures.
νB1 νB2 ν11 ν12 ν13
0 0 0 0 0/1 R EFERENCES
0 0 0 × 0 [1] H. Weyl, “Symmetry,” Princeton, N.J.: Princeton University Press,
0 0 1 0 0 1983.
[2] H. Weyl, “The Theory of Groups and Quantum Mechanics,” Dover
0 1 0 × 0 Publications, 1950.
1 0 0 0 0 [3] W. M. Wonham, “Linear Multivariable Control - A Geometric Ap-
proach,” Springer-Verlag, 1985.
TABLE VI [4] J. M. Eyzell and J. E. R. Cury, “Exploiting symmetry in the synthesis
of supervisors for discrete event systems,” IEEE Transactions on
R EDUCED ABSTRACT STATUS CONFIGURATIONS WHERE EVENTS 1j3
Automatic Control, vol. 46, no. 9, pp. 1500–1505, Sep. 2001.
ARE ENABLED [5] —, “Exploiting symmetry in the synthesis of supervisors for discrete
event systems,” Proceedings of the American Control Conference,
νB1 νB2 ν11 ν12 ν13 Philadelphia, Pennsylvania, pp. 244–248, Jun. 1998.
[6] K. Rohloff and S. Lafortune, “The verification and control of inter-
2 × × × × acting similar discrete event systems,” SIAM Jornal on Control and
1 0 0 0 × Optimization, 45(2), pp. 634–667, 2006.
1 0 ≥1 × × [7] K. Rohloff and S. Lafortune, “Symmetry reductions for a class of
discrete event systems,” 43rd IEEE Conference on Decision and
TABLE VII Control, Atlantis, Paradise Island, Bahamas, pp. 38–44, 2004.
[8] W. Wang, R. Su, and L. Lin, “On analysis of deadlock and blocking
R EDUCED ABSTRACT STATUS CONFIGURATIONS WHERE EVENTS 1k5 freeness in isomorphic module systems,” American Control Confer-
ARE ENABLED ence, Washington, DC, pp. 923–928, 2013.
[9] R. Su, “Discrete-event modeling of multi-agent systems with
νB1 νB2 ν11 ν12 ν13 broadcasting-based parallel composition,” Automatica, 49(11), pp.
3502–3506, 2013.
1 × × × × [10] C. Ma and W. M. Wonham, “Nonblocking supervisory control of state
tree structures,” IEEE Transactions on Automatic Control, 51(5), pp.
782–793, 2006.
[11] H. Bherer, J. Desharnais, and R. St-Denis, “Control of parameterized
MINi, MOUTj, TUk respectively. ASC(s) is denoted by discrete event systems,” Discrete Event Dynamic Systems, 19(2), 213–
265, 2009.
(νB1 , νB2 , ν01 , ν11 , ν02 , ν12 , ν03 , ν13 ) [12] L. Grigorov, B. E. Butler, J. E. R. Cury, and K. Rudie, “Conceptual
design of discrete-event systems using templates,” Discrete Event
in which νji represents the number of machines in Gi whose Dynamic Systems, vol. 21, pp. 257–303, 2011.
currently activated is state j. [13] L. Grigorov, J. E. R. Cury, and K. Rudie, “Design of discrete-
event systems using templates,” Proceedings of the American Control
Following the same steps as in MF, we get the reduced Conference, Seattle, WA, USA, pp. 499–504, 2008.
abstract status configurations for the enablement of events [14] G. Ekberg and B. H. Krogh, “Programming discrete control systems
1i1, 1j3 and 1k5 as shown in Tables V, VI and VII using state machine templates,” Proceedings of the 8th International
respectively. Workshop on Discrete Event Systems, Ann Arbor, Michigan, USA, pp.
194–200, 2006.
As the control functions computed by STS are non- [15] L. E. Holloway and S. Chand, “Time templates for discrete event fault
blocking by the semantics of supcon(·) in STS, and we monitoring in manufacturing systems,” Proceedings of the American
have proved that the control decisions made on status con- Control Conference, Baltimore, Maryland, pp. 701–706, 1994.
[16] S. R. Das and L. E. Holloway, “Learning of time templates from
figurations are consistent (identical) with those made on system observation,” Proceedings of the American Control Conference,
abstract status configurations, the abstract control functions Seattle, Washington, pp. 2626–2630, 1995.
represented by Tables V to VII are nonblocking. As the [17] T. Jiao, Y. Gan, X. Yang and W. M. Wonham, “Exploiting symmetry
of discrete-event systems with parallel components by relabeling,”
entries in Tables V to VII are independent of the total number TENCON 2015 - 2015 IEEE Region 10 Conference, Macau, pp. 1–4,
of machines in each group, the abstract control functions 2015.
are invariant. For arbitrary sizes of buffers, although the [18] W. M. Wonham, “Supervisory Control of Discrete-event Systems,”
Syst. Control Group, ECE Dept, Univ. Toronto, Toronto, ON, Canada,
control logic is not as obvious as that of the MF, we still 2015 [Online]. Available: http://www.control.toronto.edu/DES.
can extract abstract control functions by following the steps [19] P. J. Ramadge and W. M. Wonham, “Supervisory control of a class of
in this example. discrete event processes,” SIAM J. Control Optim., 25(1), pp. 206–230,
1987.
V. C ONCLUSIONS [20] W. M. Wonham, “Design Software: TCT,” Systems Control Group,
Dept. of ECE, Univ. of Toronto, Tech. Rep., 2015 [Online]. Available:
This paper exploits the symmetry of DES with parallel http://www.control.toronto.edu/DES.
components and fixed buffer sizes to extract the invariance [21] M. O. Rabin and D. Scott, “Finite automata and their decision
problems,” IBM Journal of Research and Development, 3(2), pp. 114–
property of abstract control functions. We demonstrate the 125, 1959.
process of extracting abstract control functions from control [22] R. Bryant, “Graph-based algorithms for boolean function manipula-
functions computed by STS. Moreover, we prove that the tion,” IEEE Trans. Computers, vol. C-35, no. 8, pp. 677–691, 1986.
[23] C. Ma, “Design Software: STSLib,” http-
abstract control functions are equivalent to the original s://github.com/chuanma/STSLib (accessed Nov. 2015).
control functions in control action. Finally we apply our [24] S. Mac Lane and G. Birkhoff, “Algebra, 3rd edn.,” Chelsea Publishing
Company, New York, 1993.
method to two examples to illustrate its validity.

102

You might also like