You are on page 1of 17

Information Sciences 256 (2014) 7490

Contents lists available at ScienceDirect

Information Sciences
journal homepage: www.elsevier.com/locate/ins

Maximally permissive liveness-enforcing supervisor


with lowest implementation cost for exible manufacturing
systems q
YuFeng Chen a,b, ZhiWu Li a,, Kamel Barkaoui b
a
b

School of Electro-Mechanical Engineering, Xidian University, Xian 710071, China


Cedric Lab and Computer Science Department of Conservatoire National des Arts et Mtiers, Paris 75141, France

a r t i c l e

i n f o

Article history:
Received 29 April 2012
Received in revised form 18 April 2013
Accepted 28 July 2013
Available online 6 August 2013
Keywords:
Petri net
Flexible manufacturing system (FMS)
Deadlock prevention
Optimal liveness-enforcing supervisor
Lowest implementation cost

a b s t r a c t
This paper develops a place invariant based deadlock prevention method to obtain a maximally permissive Petri net supervisor with the lowest implementation cost. A supervisor
consists of a set of control places and the arcs connecting control places to transitions. We
assign an implementation cost for each control place and control and observation costs for
each transition. Based on reachability graph analysis, maximal permissiveness can be
achieved by designing place invariants that prohibit all rst-met bad markings but no legal
markings. By solving an integer linear programming problem (ILPP), a set of optimal control places are obtained and the objective function is used to minimize the implementation
cost of the nal supervisor. A vector covering approach is used to reduce the number of
considered markings, aiming to reduce the computational overhead of the proposed
method. Finally, a number of examples are proposed to illustrate the proposed approach.
 2013 Elsevier Inc. All rights reserved.

1. Introduction
Flexible manufacturing systems (FMSs) are widely used to nish various kinds of jobs by using a limit number of shared
resources such as machines, robots, and automated guided vehicles. Deadlocks [8] are a highly undesirable situation and
may offset the advantages of these systems [11,20]. In a deadlock situation, a part or the whole of a system is blocked
and indenitely waits for the release of the resources that are held by another part. Therefore, an effective deadlock control
method must be developed to ensure that deadlocks can never occur.
There are mainly three tools used to handle deadlocks in FMSs: Petri nets [28,44], automata [33,34], and graph theory
[11,12]. Deadlock prevention plays an important role in the development of deadlock control policies for FMSs [19,23,43].
Recently, Petri nets attract more and more attention since they are suitable to model, detect, and analyze deadlocks in FMSs,
and to develop a control policy to prevent the occurrences of deadlocks [9,15,2326].
Generally, deadlock resolution strategies can be classied into three categories: deadlock detection and recovery
[14,21,45], deadlock avoidance [1,2,10,16,17,4043], and deadlock prevention [3,9,11,12,20,22,46]. This work focuses on
the third approach, i.e., deadlock prevention. The main goal of this approach is that an off-line computation mechanism is
established to impose constraints on a system in order to prevent deadlock states from being reached. For Petri nets [31],
a deadlock prevention approach is mainly implemented by coupling a supervisor with a system to be controlled. A superviq
The material in this paper was partially presented at the 16th IEEE Conference on Emerging Technologies and Factory Automation (ETFA), Toulouse,
September 59, 2011.
Corresponding author.
E-mail addresses: yfchen@mail.xidian.edu.cn (Y.F. Chen), zhwli@xidian.edu.cn (Z.W. Li), kamel.barkaoui@cnam.fr (K. Barkaoui).

0020-0255/$ - see front matter  2013 Elsevier Inc. All rights reserved.
http://dx.doi.org/10.1016/j.ins.2013.07.021

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

75

sor is expressed by control places and the arcs connecting them to transitions. The most important advantage of the approach is that once a deadlock control policy is established, deadlocks cannot occur anymore.
Based on Petri nets, there are two analysis techniques for deadlock control: structural analysis [18,20,21,24,26,30] and
reachability graph analysis [13,38,39]. The former always focuses on special structural objects of Petri nets, such as siphons
and resource-transition circuits that are closely related to deadlocks. In this case, the control policy is always simple but in
general one cannot nd a behaviorally optimal supervisor. The latter, i.e., reachability graph analysis, usually requires a complete enumeration of reachable markings, which is computationally expensive. The advantage is that a maximally or highly
permissive supervisor can always be obtained. A maximally permissive supervisor means that it does not prohibit any legal
marking of the original net model. For expedient description, in the following, optimal is used as a synonym for maximally permissive.
Generally, there are mainly three criteria in evaluating and designing a liveness-enforcing supervisor: behavioral permissiveness, structural complexity, and computational complexity. Based on the criteria, many researchers develop a number of
deadlock prevention policies, aiming to design a Petri net supervisor with maximally permissive behavior, a minimal structure, and efcient computation.
Based on reachability graph analysis, the theory of regions proposed in [13] is an effective approach that can denitely
nd an optimal supervisor if it exists. However, it suffers from both computational and structural complexity problems.
In [38,39], Uzam and Zhou provide a novel place invariant (PI) based method to obtain an optimal or suboptimal supervisor
for an FMS. They classify a reachability graph into two parts: live-zone (LZ) and deadlock zone (DZ). A rst-met bad marking
(FBM) is in DZ, representing the very rst entry from LZ to DZ. They develop an iterative approach such that at each iteration,
an FBM is singled out and a control place is designed to prevent the FBM from being reached. This process cannot terminate
until the resulting controlled net system is live. However, the supervisor may have many redundant control places.
In our previous work [6], we develop an iterative deadlock prevention approach to obtain optimal supervisors for FMSs.
At each iteration, an FBM is singled out and a control place is designed to forbid it by solving an integer linear programming
problem (ILPP). Meanwhile, no legal marking is prohibited by the control place. This process proceeds until no FBM is reachable. Therefore, the resulting controlled net system is live. A vector covering technique is proposed in [6], which can greatly
reduce the number of markings under consideration. Thus, the computational overhead is reduced. However, the study still
suffers from the structural complexity problem since redundant control places may survive. In [7], we design an optimal
supervisor with the minimal number of control places by solving an ILPP. The method can successfully handle the structural
complexity problem. The only problem of this method is its computational complexity since the ILPP may have too many
constraints and variables.
In fact, all the above methods do not consider the hardware and software costs in the stage of control implementation.
Although a simple supervisory structure always means low implementation cost of a supervisor, the situation in the real
world is more complex. The reason is that the implementation cost cannot be evaluated only by the number of control places
and arcs. In [4], Basile et al. propose a seminal work to design control places to enforce generalized mutual exclusion constraints (GMECs) by considering the implementation cost. A GMEC can represent a specication by limiting the weighted
sum of tokens in a subset of places. In [4], the implementation cost of a supervisor is minimized by solving an ILPP. The study
in [5] describes a branch-and-bound algorithm to design an optimal supervisor with the rst minimization of the number of
places and the second minimization of the number of the control and observation arcs. However, they do not consider the
cost of controlling/observing a single transition.
In this work, we try to nd an optimal supervisor with the lowest implementation cost in detail by considering the
cost of controlling and observing a single transition. Not like the work in [4] which designs a supervisor to implement

Fig. 1. Layout of an FMS with its control unit.

76

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

a given GMEC, this work obtains an optimal supervisor for a given Petri net model. The implementation cost of a supervisor can be evaluated by two parts: control places and arcs. Fig. 1 shows the layout of an FMS and its control unit. A
control unit always represents a processing unit such as programmable logic controllers (PLC), microcontrollers and computers, which can be considered as a control place. The arcs of a supervisor are classied into two sets: control arcs and
observation arcs. Control arcs are from control places to transitions and used to control the ring of transitions. Observation arcs are from transitions to control places and used to observe the occurrences of transitions. For example, the
control and observation signals in Fig. 1 indicate the control and observation arcs, respectively. In this gure, a control
signal represents the output of the control unit which is used to control the operation of the system. Similarly, an observation signal indicates the input of the control unit which is used to observe the state of the system. In practice, we assume that each of control (observation) arcs connecting to the same transition has the same implementation cost.
Otherwise, the implementation cost for different arcs can be different. In this case, this paper tries to design an optimal
supervisor with the lowest implementation cost. A control place is obtained by a place invariant (PI). An optimal control
purpose is achieved by designing PIs such that all legal markings are reachable and all FBMs are forbidden. Then, an ILPP
is designed and solved to obtain an optimal supervisor and its objective function is used to minimize the implementation
cost of the supervisor.
Similar to the study in [4], this work also considers two cases for the implementation cost of an optimal supervisor. A
control and observation cost is associated with a transition. Then, two cases are considered to evaluate the implementation
cost.
The rst case is that the implementation costs associated with the control and observation of a transition t depend on the
number of arcs going to and coming from t, respectively. In the second case, the control and observation costs of a transition t
depend on whether there exist arcs going to and coming from t, respectively.
The rst case may make sense if the control and observation actions are associated with physical actions (a material ow
and a signal carrying energy, for example). The second case has more intuitive motivation, i.e., the cost to control or observe a
transition is associated with the installation cost of a sensor or an actuator [35,48]. There is no extra cost to use the sensor or
actuator.
The goal of this research is to design a liveness-enforcing Petri net supervisor for an FMS by considering the optimization
of both its behavioral permissiveness and implementation cost. It can be applied to all FMS-oriented classes of Petri net models in the literature. In summary, we have the following statements by comparing the proposed method with the previous
work [6,7].
I. In the sense of behavioral permissiveness, the proposed approach and the work in [6,7] can lead to maximally permissive supervisors.
II. From the viewpoint of computational complexity, the proposed approach and the work in [6,7] need the complete
enumeration of all reachable marking and solving ILPPs. However, the ILPP proposed in [6] has very small number
of constraints and variables. The ILPPs proposed in both this paper and [7] have too many constraints and variables
for large-scale Petri net models. On the other hand, the work in [6] is an iterative approach but the work proposed
both in this paper and [7] is non-iterative since all control places can be obtained by solving one ILPP.
III. In the sense of structural complexity. The best one is the work in [6] that can obtain the minimal number of control
places. The work in [7] leads to a supervisor with too many control places. The method proposed in this paper can
obtain a small number of control places but the minimality cannot in general be guaranteed.
IV. Compared with the previous work [6,7], the most advantage of the proposed method is that the implementation cost
is considered and minimized.
The remainder of this paper is organized as follows. Section 2 briey reports some basics of Petri nets used
throughout this paper. The computation of a control place by a PI and the method to obtain a maximally permissive
control place are outlined in Section 3. Section 4 proposes an approach to design a maximally permissive supervisor
with the lowest implementation cost. An illustrative example is provided in Section 5 to show the application of the
proposed method in detail. Section 6 provides some experimental results of the proposed methods. Finally, Section 7
concludes this paper.
2. Preliminaries
2.1. Petri Nets
A Petri net is a four-tuple N = (P, T, F, W) where P and T are nite and non-empty sets. P is a set of places and T is a set of
transitions with P [ T ; and P \ T = ;. F # (P  T) [ (T  P) is called a ow relation of the net, represented by arcs with
arrows from places to transitions or from transitions to places. W : P  T [ T  P ! N is a mapping that assigns a weight
to an arc: W(x, y) > 0 if (x, y) 2 F, and W(x, y) = 0, otherwise, where (x, y) 2 (P  T) [ (T  P) and N is the set of non-negative
integers. M(p) denotes the number of tokens in place p. The pair (N, M0) is called a marked Petri net or a net system. A
net is pure (self-loop free) if "(x, y) 2 (P  T) [ (T  P), W(x, y) > 0 implies W(y, x) = 0. Incidence matrix [N] of pure net N is
a jPj  jTj integer matrix with [N](p, t) = W(t, p)  W(p, t).

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

77

A transition t 2 T is enabled at marking M if "p 2 t, M(p) P W(p, t). It is denoted as M[ti. Once a transition t res, it yields
a new marking M0 , denoted as M[tiM0 , where M0 (p) = M(p)  W(p, t) + W(t, p). M[i is the set of all markings reachable from M
by ring any possible sequence of transitions. M0[iis called the set of reachable markings of a Petri net N with initial marking
M0, often denoted by R(N, M0). It can be graphically expressed by a reachability graph. The reachability graph of a net (N, M0),
denoted as G(N, M0), is a directed graph whose nodes are markings in R(N, M0) and arcs are labeled by the transitions of N.
A transition t 2 T is live at M0 if "M 2 R(N, M0), $M0 2 R(N, M), M0 [ti. (N, M0) is live if "t 2 T, t is live at M0. It is dead at M0 if
= t 2 T, M0[ti.
9
A P-vector is a column vector I : P ! Z indexed by P and a T-vector is a column vector J : T ! Z indexed by T, where Z is
the set of integers. P-vector I is called a P-invariant (place invariant, PI for short) if I 0 and IT[N] = 0T. P-invariant I is said to
be a P-semiow if no element of I is negative. Let I be a PI of (N, M0) and M be a reachable marking from M0. Then, ITM = ITM0.
2.2. Analysis of a reachability graph
A reachability graph can be partitioned into two parts: deadlock-zone (DZ) and live-zone (LZ) [38,39]. The DZ contains
deadlocks and critical bad markings that inevitably lead to deadlocks. The LZ contains all the legal markings. A set of legal
markings ML is the maximal set of reachable markings, from which it is possible to reach initial marking M0 without leaving
ML . Generally, the set of legal markings of a Petri net system (N, M0) can be dened as:

ML fMjM 2 RN; M 0 ^ M0 2 RN; Mg

Fig. 2. Petri net model of an FMS.

Fig. 3. The reachability graph of the Petri net in Fig. 2.

78

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

Figs. 2 and 3 depict the Petri net model of an FMS and its reachability graph, respectively. In Fig. 3, DZ includes M4, M8, M9,
M13, and M14 and LZ includes all the others.
An FBM is within the DZ, representing the very rst entry from the LZ to the DZ [38,39]. A mathematical form of the set of
FBMs is

MFBM fM 2 DZj9M 0 2 LZ; t 2 T; s:t: M0 tiMg

In Fig. 3, M4, M8, M9, M13, and M14 are FBMs. In a reachability graph, we can see that a system cannot enter from the LZ to the
DZ if all FBMs are forbidden by control places. In this case, the controlled system keeps running in the LZ.

3. Optimal control places synthesis


3.1. Control place computation by place invariants
This section briey recalls the control place synthesis method using PIs proposed in [47]. Let [N0] be the incidence matrix
of a plant with n places and m transitions and [Nc] the incidence matrix of the control places. The controlled net with incidence matrix [N] consists of both original net and control places, i.e.,

N

N0

Nc

Suppose that the control goal is to enforce the plant to satisfy the following constraints:
n
X
li  li 6 b

i1

where li denotes the marking of place pi, and li and b are non-negative integers. By introducing a non-negative slack variable
ls, this inequality constraint can be transformed into an equality as follows:
n
X
li  li ls b

i1

where ls represents the marking of control place ps, generally called a monitor. All constraints in the form of Eq. (3) can be
grouped into a matrix form and rewritten as follows:

L  lp 6 b

where lp is the marking vector of the Petri net model, [L] is an nc  n nonnegative integer matrix, b is an nc  1 nonnegative
integer vector, and nc is the number of constraints. By introducing a non-negative slack variable vector lc, these inequality
constraints can be transformed into equalities:

L  lp lc b

6
T

where lc is an nc  1 vector that represents the marking of the control places. According to PI equation I [N] = 0 , the supervisor [Nc] can be computed as follows:

Nc  L  N0 

Eq. (6) must be true also at the initial marking l0 of a net. Thus, the initial marking lc0 of the supervisor can be calculated as
follows:

lc0 b  L  l0

Denition 1. Let I be a PI dened by Eq. (4) and ps the control place associated with I. I is said to be maximally permissive if
the addition of ps can forbid FBMs but no legal marking.
The control place computed by a maximally permissive PI is also maximally permissive in the sense that its addition excludes the reachability of FBMs but does not forbid any legal marking.
3.2. Maximally permissive control place synthesis
This section recalls the method to obtain a maximally permissive liveness-enforcing supervisor for an FMS if it exists,
which is originally presented in [6].
There are three classes of places in a Petri net model of an FMS: idle, activity, and resource places whose sets are denoted
as P0, PA, and PR, respectively [9,36,49]. Tokens in an idle place represent the maximal number of concurrent operations that
may happen in a production sequence. An activity place represents an operation to be processed for a part in a production
sequence and initially has no token. Resource places represent resources and their initial tokens represent the number of
available resource units.

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

79

A maximally permissive supervisor can be obtained via designing control places such that all FBMs are forbidden and all
legal markings are reachable. Similar to the Uzam and Zhous work [38,39], for an FBM, only the tokens in activity places are
considered to construct a PI to prevent it from being reached. In the following, NA denotes {ijpi 2 PA} for an expedient
description.
Let G(N, M0) be the reachability graph of an FMSs Petri net model (N, M0), ML the set of legal markings, and MFBM the set
of FBMs. Any FBM M 2 MFBM can be forbidden by the following constraint:

li  li 6 b

i2NA

where

li  Mpi  1

10

i2NA

Eq. (9) is called the forbidding condition.


To ensure that every marking M 0 2 ML cannot be prevented from being reached, coefcients li i 2 NA in Eq. (9) should
satisfy

li  M0 pi 6 b;

8M0 2 ML

11

i2NA

Eq. (11) is called the reachability condition. For an FBM, by substituting Eq. (10) into Eq. (11), the reachability condition
becomes

li  M 0 pi  Mpi 6 1;

8M0 2 ML

12

i2NA

Eq. (12) determines coefcients li i 2 NA .


Let (N, M0) be the Petri net model of an FMS with N = (P0 [ PA [ PR, T, F, W). The following results on the vector covering
approach are primarily from [6].
Denition 2. Let M and M0 be two markings in R(N, M0). M A-covers M0 (or M0 is A-covered by M) if "p 2 PA, M(p) P M0 (p),
which is denoted as M P AM0 (or M0 6 AM).
Let M and M0 be two markings in R(N, M0) with M P AM0 . If M0 is forbidden by a PI of the type established by Eqs. (9) and
(10), M is forbidden. If M is not forbidden by a PI, M0 is not forbidden.
H
Denition 3. Let MH
FBM be a subset of FBMs. MFBM is called a minimal covered set of FBMs if the following two conditions are
satised:
0
(1) 8M 2 MFBM ; 9M 0 2 MH
FBM ; s:t. M P AM ; and
00
00
H
H
(2) 8M 2 MFBM ; 9
= M 2 MFBM ; s:t:MPA M and M M00 .

H
Denition 4. Let MH
L be a subset of legal markings. ML is called a minimal covering set of legal markings if the following
two conditions are satised:
0
(1) 8M 2 ML ; 9M 0 2 MH
L s:t:M PA M; and
00
H
H
(2) 8M 2 ML ; 9
= M 2 ML s:t:M 00 PA M and M M00 .
H
If all markings in MH
FBM are forbidden by PIs, all the FBMs are forbidden. If no marking in ML is forbidden by PIs, no legal
marking in ML is forbidden. A maximally permissive supervisor can be designed if it forbids all the markings in MH
FBM and no
H
H
marking in MH
is
forbidden.
Therefore,
only
two
small
sets,
i.e.,
M
and
M
,
are
considered
to
design
maximally
permisL
FBM
L
sive control places. Then, for an FBM M, the reachability conditions, i.e., Eq. (12), is reduced as follows:

li  M 0 pi  Mpi 6 1;

8M0 2 MHL

13

i2NA
H
Generally, MH
FBM and ML are much smaller than MFBM and ML , respectively. Thus, the computational burden can be greatly
reduced.

4. Lowest implementation cost supervisor synthesis


This section presents an approach to obtain an optimal supervisor with the lowest implementation cost. In the following,
H
NH
FBM denotes ijM i 2 MFBM .
H
A PI may forbid more than one FBM. Given a PI Ij for an FBM M j 2 MH
FBM , any FBM M k 2 MFBM (k j) is forbidden if Mk
satises the following constraint:

80

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

lj;i  M k pi P

i2NA

lj;i  M j pi

14

i2NA

where lj, is i 2 NA are the coefcients of Ij. By simplifying Eq. (14), we have

lj;i  M k pi  M j pi P 0

15

i2NA
H
For Ij, we introduce a set of variables fj,k (k 2 NH
FBM and k j) to represent the relation between Ij and markings Mk (k 2 NFBM
and k j) in MH
.
Then,
we
have
FBM

lj;i  M k pi  M j pi P Q  1  fj;k ; 8M k 2 MH
FBM

and k j

16

i2NA

where Q is a positive integer constant that must be big enough and fj,k 2 {0, 1}. In Eq. (16), fj,k = 1 indicates that Mk is forbidden
by Ij and fj,k = 0 implies that Mk cannot be forbidden by Ij.
Now we introduce another set of variables hj j 2 NH
FBM for Ij and we have the following constraints:

fj;k 6 hj ; 8k 2 NH
FBM

and k j

17

where hj = 1 shows that Ij is selected to compute a control place and hj = 0 indicates that Ij is redundant and there is no need
to add a control place for it. Eq. (17) implies that, if Ij is not selected, it cannot forbid any FBM. For FBM Mj, we also have

hj

fk;j P 1

18

k2NH
;kj
FBM

Eq. (18) ensures that any FBM Mj in MH


FBM must be forbidden by at least one PI. Meanwhile, Eq. (13) should be modied as

li  M 0 pi  Mpi 6 Q  1  hj  1;

8M0 2 MHL

19

i2NA

Eq. (19) means that, (1) if Ij is not selected, we do not restrict its coefcients; and (2) if Ij is selected, every marking in MH
L is
reachable. Eqs. (14)(19) are used to forbid multiple FBMs by one PI, as found in [7], where, however, the implementation
cost is not considered. Next, we develop an ILPP to minimize the implementation cost of a supervisor.
The arcs of a supervisor are classied into two categories: control arcs and observation arcs. A control arc is from a control
place to a transition and an observation arc is from a transition to a control place. First, we introduce a set of variables
c
fj;q
2 f0; 1g to represent whether there is a control arc from control place pcj to transition tq (tq 2 T). Let [Nc](j, ) denote
P
the incidence vector of pcj , where N c j; q Wtq ; pcj  Wpcj ; t q . According to Eq. (7), N c j; q  i2NA lj;i  N 0 i; q. Thus,
we have

c
lj;i  N 0 i; q P Q  fj;q

20

i2NA

c
lj;i  N0 i; q P Q  1  fj;q
1

21

i2NA
c
where Q is a positive integer constant that must be big enough. Eqs. (20) and (21) imply that if [Nc](j, q) 6  1, then fj;q
1.
c
That is to say, there exists a control arc from pcj to transition tq. On the other hand, if [Nc](j, q) P 0, then fj;q
0.
o
Second, we similarly introduce a set of variables fj;q
2 f0; 1g to represent whether there is an observation arc from transition tq (tq 2 T) to control place pcj . Then, we have

o
lj;i  N0 i; q P Q  fj;q

22

i2NA



o
lj;i  N 0 i; q P Q  1  fj;q
1

23

i2NA
o
Eqs. (22) and (23) indicate that if [Nc](j, q) P 1, then fj;q
1. That is to say, there exists an observation arc from tq to pcj . On the
o
other hand, if [Nc](j, q) 6 0, we have fj;q
0.
Finally, if Ij is not selected to compute a control place, there are no control and observation arcs. Thus, we have

c
fj;q
6 hj

24

o
fj;q
6 hj

25

In order to design an optimal supervisor with the lowest implementation cost, we assign a cost value to each control place
and each arc. Suppose that the implementation cost for each control place is C pc , then the total costs for all control places are

C pc 

j2NH
FBM

hj

26

81

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

For transition tq, suppose that its control cost and observation cost are C ctq and C otq , respectively. In the following, two cases are
considered to evaluate the total implementation cost for all arcs of control places.
Case (1): The implementation costs associated with the control and observation of a transition t depend on the number of
arcs going to and coming from t, respectively. In this case, the total implementation cost of arcs in a supervisor is dened as
follows:
2
3

j2NH
FBM


X c
c
o 5
C tq  fj;q
C otq  fj;q

27

t q 2T

Combining all the above constraints, we have the following ILPP that is denoted as Lowest Implementation Cost Optimal
Supervisor Problem 1 (LICOSP1).
LICOSP1:
2
3

min C C pc 
s:t:

hj

j2NH
FBM

j2NH
FBM


X c
c
o 5
C tq  fj;q
C otq  fj;q
t q 2T

lj;i  Ml pi  Mj pi 6 Q  1  hj  1; 8M j 2 MH
FBM

and 8M l 2 MH
L

28

i2NA

lj;i  Mk pi  Mj pi P Q  1  fj;k ; 8M j ; M k 2 MH
FBM

and j k

29

i2NA

and j k
f j;k 6 hj ; 8j; k 2 NH
FBM
X
hj
fk;j P 1; 8j 2 NH
FBM

30
31

k2NH
;kj
FBM

c
lj;i  Np i; q P Q  fj;q
; 8j 2 NH
FBM ; 8t q 2 T

32

i2NA

c
lj;i  Np i; q P Q  1  fj;q
1; 8j 2 NH
FBM ; 8t q 2 T

33

o
lj;i  Np i; q P Q  fj;q
; 8 j 2 NH
FBM ; 8t q 2 T

34

i2NA

i2NA



X
o
1; 8j 2 NH

lj;i  Np i; q P Q  1  fj;q
FBM ; 8t q 2 T

35

i2NA
c
fj;q
6 hj ; 8j 2 NH
FBM ; 8t q 2 T
o
fj;q

6 hj ; 8j 2

NH
FBM ;

36

8t q 2 T

lj;i 2 f0; 1; 2; . . .g; 8i 2 NA


f j;k 2 f0; 1g; 8j; k 2 NH
FBM

37
and 8j 2 NH
FBM
and j k

hj 2 f0; 1g; 8j 2 NH
FBM
c
o
fj;q
; fj;q
2 f0; 1g; 8j 2 NH
FBM ; 8t q 2 T

The objective function C is used to minimize the total implementation cost of the nal supervisor. Denote its optimal value
by C, i.e., the lowest cost of the supervisor.
Theorem 1. LICOSP1 can lead to an optimal supervisor with the lowest implementation cost in Case (1) if it has an optimal
solution.
Proof. Eq. (28) ensures that each selected PI is maximally permissive since no legal marking is forbidden. According to Definition 1, every control place computed by the PI is optimal. In this case, the nal supervisor is also optimal. Eqs. (29)(32)
guarantee that every FBM in MH
FBM is forbidden by at least one selected PI. Therefore, the controlled system cannot enter the
c
o
DZ. That is to say, it is live. Eqs. (34)(37) restrict variables fj;q
and fj;q
to represent whether there are a control arc from control place pcj to transition tq and an observation arc from tq to pcj , respectively. Thus, the objective function indicates the total
implementation cost of the nal supervisor and is used to minimize it. In summary, the conclusion holds.
Case (2): The control and observation costs of a transition t depend on whether there exist arcs going to and coming from
 
c
o
. Now, we introduce a
t, respectively. In this case, the control (observation) cost of t cannot be linearly expressed by fj;q
fj;q
set of binary variables g cq tq 2 T to represent whether there exist control arcs from a control place to tq. Thus, we have

c
fj;q
6 Q  g cq

38

c
fj;q
P g cq

39

j2NH
FBM

j2NH
FBM

82

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

c
Eqs. (38) and (39) ensure that g cq 1 if $fj,q = 1 and g cq 0 if " fj,q = 0, where j 2 NH
FBM . That is to say, g q 1 indicates that there
is at least one control arc from a control place to tq and g cq 0 means that there is no control arc from a control place to tq.
Similarly, we introduce a set of binary variables g oq tq 2 T to represent whether there exist observation arcs from tq to a control place. Then, we have

o
fj;q
6 Q  g oq

40

o
fj;q
P g oq

41

j2NH
FBM

X
j2NH
FBM

According to Eqs. (40) and (41), g oq 1 indicates that there is at least one observation arc from tq to a control place and g oq 0
means that there is no observation arc from tq to a control place. Then, the total implemental cost of all arcs of a supervisor is
dened as follows:


C ctq  g cq C otq  g oq

42

t q 2T

Adding Eqs. (38)(41) to LICOSP1 and modifying the objective function, we have the following ILPP that is denoted as Lowest
Implementation Cost Optimal Supervisor Problem 2 (LICOSP2).
LICOSP2:



min C C pc 

hj

C ctq  g cq C otq  g oq

t q 2T

j2NH
FBM

s:t: Eqs: 2837


X
c
fj;q
6 Q  g cq ; 8t q 2 T

43

j2NH
FBM

c
fj;q
P g cq ; 8t q 2 T

44

o
fj;q
6 Q  g oq ; 8t q 2 T

45

o
fj;q
P g oq ; 8t q 2 T

46

j2NH
FBM

j2NH
FBM

j2NH
FBM

lj;i 2 f0; 1; 2; . . .g; 8i 2 NA


f j;k 2 f0; 1g; 8j; k 2
hj 2 f0; 1g; 8j 2

NH
FBM

and 8j 2 NH
FBM
and j k

NH
FBM

c
o
fj;q
; fj;q
2 f0; 1g; 8j 2 NH
FBM ; 8t q 2 T

g cq ; g oq 2 f0; 1g; 8t q 2 T
Theorem 2. LICOSP2 can lead to an optimal supervisor with the lowest implementation cost in Case (2) if it has an optimal
solution.
Proof. The proof is similar to that of Theorem 1.
In LICOSP1, Eqs. (36) and (37) can be removed since they do not inuence the value of C. This fact can be veried as folc
o
lows. If hj = 0, then Eq. (28) does not restrict variables lj,i. As a result, fj;q
and fj;q
are not restricted by Eqs. (36) and (37).
c
o
According to the objective function, fj;q
and fj;q
are equal to 0 in the optimal solution. Therefore, we conclude that Eqs.
(36) and (37) can be removed from LICOSP1. Similarly, Eqs. (36) and (37) are also redundant in LICOSP2. The computational
time for solving an ILPP greatly depends on the number of constraints and variables in it. We provide the two instances of
LICOSP1 and LICOSP2 in Table 1 (which does not include the redundant constraints, i.e., Eqs. (36) and (37)).
Remark 1. In practice, a control place can represent a control unit in PLCs, micro-controllers, and computers. Thus, the
implementation cost C pc of a control place can be assigned as the real costs of these devices. A control (observation) arc is
 
used to control (observe) the occurrence of an event. In this case, the implementation cost C ctq C otq of a control (observation)
arc on tq can be considered as the cost of the corresponding actuator (sensor) of the event tq. Thus, the obtained
implementation cost is the sum of all costs of all the control units, actuators, and sensors, which are used to implement the
obtained supervisor.
In fact, LICOSP1 also can be used to minimize the number of control places and arcs. For instance, if we set both control
and observation cost for each arc to be zero, then we can obtain an optimal supervisor with a minimal number of control
places. Similarly, if we set the implementation cost of a control place to be zero and every arc has the same implementation
cost, then we can obtain an optimal supervisor with a minimal number of arcs.

83

Y.F. Chen et al. / Information Sciences 256 (2014) 7490


Table 1
The number of constraints and variables in LICOSP1 and LICOSP2.
Type

No. constraints

Type

No. constraints

Name

No. variables

(28)

H
jMH
FBM j  jML j

(34)

jMH
FBM j  jTj

lj,i

jMH
FBM j  jP A j

(29)

H
jMH
FBM j  jMFBM j  1

(35)

H
jMH
FBM j  jMFBM j  1

H
jMH
FBM j  jMFBM j  1

(43)

jMH
FBM j  jTj
jTj

fj,k

(30)

hj

jMH
FBM j

(31)

jMH
FBM j

(44)

jTj

c
fj;q

jMH
FBM j  jTj

(32)

jMH
FBM j  jTj

(45)

jTj

o
fj;q

(33)

jMH
FBM j  jTj

(46)

jTj

g cq

jMH
FBM j  jTj
jTj

g oq

jTj

LICOSP1

H
H
jMH
FBM j  jML j 2jMFBM j 4jTj  1

LICOSP1

H
jMH
FBM j  jP A j jMFBM j 2jTj

LICOSP2

H
H
jMH
FBM j  jML j 2jMFBM j 4jTj  1 4jTj

LICOSP2

H
jMH
FBM j  jP A j jMFBM j 2jTj 2jTj

5. An illustrative example
This section takes the net shown in Fig. 2 as a simple FMS example to show the application of the proposed method. In
H
this work, only activity places are considered for markings in MH
L and MFBM . Therefore, a compact multiset formalism
P
H
H
Mp
p
is
used
to
denote
a
marking
M
in
M
and
M
for
the
sake
of an expedient description. For instance,
i
i
L
FBM
i2NA
M3 = 2p1 + p3 + 3p8 + p9 + p11 and M4 = 2p1 + p2 + p5 + 2p8 + p10 in Fig. 3 are a legal marking and an FBM, respectively. Then,
they are denoted by M3 = p3 and M4 = p2 + p5, respectively.
For the net, there are 11 places and eight transitions, where places can be considered as the collections of the three subsets: idle place set P0 = {p1,p8}, activity place set PA = {p2  p7}, and resource place set PR = {p9  p11}. From Fig. 3, it can be
seen that the net has 20 reachable markings, in which 15 are legal markings and ve are FBMs. By using a vector covering
approach, the minimal covered set of FBMs and the minimal covering set of legal markings have three and two elements,
H
respectively. Specically, we have MH
FBM fp2 p5 ; p3 p5 ; p2 p6 g and ML fp2 p3 p4 ; p5 p6 p7 g.
For FBM1 = p2 + p5, let I1 be the PI that forbids FBM1, whose coefcients are l1,i (i 2 {2, 3, 4, 5, 6, 7}) and h1 2 {0, 1} the variable to represent whether I1 is selected to compute a control place pc1 . For an optimal control purpose, I1 does not forbid any
legal marking in MH
L . Thus, we have

l1;3 l1;4  l1;5 6 Q  1  h1  1 and


 l1;2 l1;6 l1;7 6 Q  1  h1  1:
Two variables f1,2 and f1,3 (f1,2, f1,3 2 {0, 1}) are introduced to represent whether I1 forbids FBM2 = p3 + p5 and FBM3=p2 + p6,
respectively. Thus, we have

 l1;2 l1;3 P Q  1  f1;2 and


 l1;5 l1;6 P Q  1  f1;3 :
FBM1 must be forbidden by at least on PI. Thus, we have

h1 f2;1 f3;1 P 1
c
Now, we consider the implementation cost of control place pc1 . A set of variables f1;q
(q 2 {1, 2, . . . , 8}) are introduced to represent whether there is a control arc from pc1 to transition tq. For instance, for transition t1, we have

c
 l1;2 P Q  f1;1

l1;2 P Q  1 

and

c
f1;1

1:

o
Similarly, we introduce a set of variables f1;q
(q 2 {1, 2, . . . , 8}) to represent whether there is a control arc from tq to transition
pc1 . For transition t1, we have

o
l1;2 P Q  f1;1
and


o
1:
 l1;2 P Q  1  f1;1

For control place pc1 , we do not provide the conditions for other transitions due to the limited space.
Similarly, for the other two FBMs in MH
FBM , we accordingly have conditions (which is neither provided due to the limited
space). Finally, for Case (1), an objective function is designed to minimize the implementation cost of the nal supervisor, as
presented below:

min C C pc 

"
#
3
3
8 

X
X
X
c
o
hj
C ctq  fj;q
C otq  fj;q
j1

where

C ctq

and

C otq

j1

q1

are the control cost and observation cost of tq, respectively.

84

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

Combining all the above conditions, we have the following LICOSP1 with 117 constraints and 75 variables, where [N0] is
the incidence matrix of the net.
LICOSP1:

min C C pc 

3
X

hj

j1

"
#
3
8 

X
X
c
o
C ctq  fj;q
C otq  fj;q
j1

q1

s:t: l1;3 l1;4  l1;5 6 1


 l1;2 l1;6 l1;7 6 1
l2;2 l2;4  l2;5 6 1
 l2;3 l2;6 l2;7 6 1
l3;3 l3;4  l3;6 6 1
 l3;2 l3;5 l3;7 6 1
 l1;2 l1;3 P Q  1  f1;2
 l1;5 l1;6 P Q  1  f1;3
l2;2  l2;3 P Q  1  f2;1
l2;2  l2;3  l2;5 l2;6 P Q  1  f2;3
l3;5  l3;6 P Q  1  f3;1
 l3;2 l3;3 l3;5  l3;6 P Q  1  f3;2
f j;k 6 hj ; 8j; k 2 f1; 2; 3g and j k
X
hj
fk;j P 1; 8j 2 f1; 2; 3g
k2f1;2;3g;kj

7
X

c
lj;i  N0 i; q P Q  fj;q
; 8j 2 f1; 2; 3g; 8q 2 f1; 2; . . . ; 8g

i2
7
X
c
lj;i  N0 i; q P Q  1  fj;q
1; 8j 2 f1; 2; 3g; 8q 2 f1; 2; . . . ; 8g
i2
7
X
o
lj;i  N0 i; q P Q  fj;q
; 8j 2 f1; 2; 3g; 8q 2 f1; 2; . . . ; 8g
i2

7
X

o
lj;i  N0 i; q P Q  1  fj;q
1; 8j 2 f1; 2; 3g; 8q 2 f1; 2; . . . ; 8g

i2

lj;i 2 f0; 1; 2; . . .g; 8i 2 f2; 3; . . . ; 7g and 8j 2 f1; 2; 3g


f j;k 2 f0; 1g; 8j; k 2 f1; 2; 3g and j k
hj 2 f0; 1g; 8j 2 f1; 2; 3g
c
o
fj;q
; fj;q
2 f0; 1g; 8j 2 f1; 2; 3g; 8q 2 f1; 2; . . . ; 8g

where Q is a positive integer constant that must be big enough.


Next, we consider Case (2). We introduce a set of binary variables g cq q 2 f1; 2; . . . ; 8g to represent whether there exist
control arcs on tq. For example, for transition t1, we have
c
c
c
f1;1
f2;1
f3;1
6 Q  g c1

and

c
c
c
f2;1
f3;1
P g c1 :
f1;1

Similarly, we introduce a set of binary variables g oq q 2 f1; 2; . . . ; 8g to represent whether there exist observation arcs on
tq. For transition t1, we have
o
o
o
f1;1
f2;1
f3;1
6 Q  g o1

and

o
o
o
f2;1
f3;1
P g o1 :
f1;1

Finally, for Case (2), an objective function is designed to minimize the implementation cost of the nal supervisor, as presented below:

min C C pc 

3
8 

X
X
hj
C ctq  g cq C otq  g oq
j1

C ctq

C otq

q1

where
and
are the control cost and observation cost of tq, respectively.
Adding all the above conditions to LICOSP1, we have the following LICOSP2 with 149 constraints and 91 variables.

85

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

LICOSP2:

"
#
3
3
8 

X
X
X
c
o
c
o
min C C pc 
hj
C tq  fj;q C tq  fj;q
j1

j1

q1

s:t: All constraints in LICOSP1


3
X
c
fj;q
6 Q  g cq ; 8q 2 f1; 2; . . . ; 8g
j1
3
X
c
fj;q
P g cq ; 8q 2 f1; 2; . . . ; 8g
j1
3
X
o
fj;q
6 Q  g oq ; q 2 f1; 2; . . . ; 8g
j1
3
X
o
fj;q
P g oq ; 8q 2 f1; 2; . . . ; 8g
j1

lj;i 2 f0; 1; 2; . . .g; 8i 2 f2; 3; . . . ; 7g and 8j 2 f1; 2; 3g


f j;k 2 f0; 1g; 8j; k 2 f1; 2; 3g and j k
hj 2 f0; 1g; 8j 2 f1; 2; 3g
c
o
fj;q
; fj;q
2 f0; 1g; 8j 2 f1; 2; 3g; 8q 2 f1; 2; . . . ; 8g

g cq ; g oq 2 f0; 1g; 8q 2 f1; 2; . . . ; 8g


where Q is a positive integer constant that must be big enough.
Now, we assign implementation cost C pc for each control place, and control cost C ctq and observation cost C otq for transition
tq. By solving LICOSP1 (LICOSP2), once an optimal solution C is obtained, we can nd an optimal supervisor with the lowest
implementation cost C for Case (1) (Case (2)). Table 2 shows the experimental results for Cases (1) and (2) by varying the
implementation cost: C pc ; C ctq , and C otq , where q 2 {1, 2, . . . , 8}. In this table, control (observation) costs for transitions are or

ganized as a 1  jTj matrix [Cc] ([Co]), where C c q C ctq C o q C otq , which are shown in the rst column. N pc and Narc
indicate the numbers of control places and arcs in the nal supervisor, respectively.  pc ; pc , and M0(pc) show the preset, poset,
and initial marking of the control place for each selected PI, respectively. C shows the optimal value of the implementation
cost. Table 2 reaches the following conclusions.
(1) In the rst row, the implementation cost of each arc is set to be 1, which is much less than that of a control place. In
Case (1), the resulting supervisor is rst optimized in terms of the number of control places and second optimized in
terms of the number of arcs.
(2) For the second row, we increase the control cost of transitions t1 and t6, and the observation cost of transitions t3 and
t7. Then, the nal supervisor has only one control arc to t1 and no observation arc from t3 and t7. Thus, it can be seen
that the obtained supervisor tries to have as less control arcs to transitions with high control cost and less observation
arcs from transitions with high observation cost as possible. This can reduce the total implementation cost of the
resulting supervisor in order to nd an optimal supervisor with the lowest implementation cost.
(3) For the third and fourth rows, we greatly reduce the implementation cost of a control place. However, both nal supervisors have two control places and eight arcs, which are the same as the rst two ones. The reason is that, for this
example, the numbers of both control places and arcs are minimal already.

Table 2
Experimental results for the net shown in Fig. 2 in Cases (1) and (2).
C pc

[Cc], [Co]

LICOSP1

LICOSP2

N pc

Narc

pc ; pc ; M 0 pc

N pc

Narc

pc ; pc ; M0 pc

100

[1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1]

{t3, 2t6}, {t1, 2t5}, 2


{t2, t7}, {t1, t6}, 1

208

{t3, 2t6}, {t1, 2t5}, 2


{2t2, t7}, {2t1, t6}, 2

206

100

[10, 1, 1, 1, 1, 10, 1, 1],


[1, 1, 10, 1, 1, 1, 10, 1]

{t4, 2t6}, {t3, 2t5}, 2


{3t2, t8}, {3t1, t5}, 3

217

{t4, 3t6}, {t1, 3t5}, 3


{3t2, t8}, {3t1, t5}, 3

215

[1, 2, 2, 1, 1, 2, 2, 1],
[1, 2, 2, 1, 1, 2, 2, 1]

{t4, 3t6}, {t1, 3t5}, 3


{3t2, t8}, {3t1, t5}, 3

12

{t4, 3t6}, {t1, 3t5}, 3


{3t2, t8}, {3t1, t5}, 3

10

0.1

[10, 1, 10, 1, 10, 1, 10, 1],


[1, 10, 1, 10, 1, 10, 1, 10]

{2t3, t7}, {2t2, t5}, 2


{2t2, t7}, {2t1, t5}, 2

44.2

{t3, 2t6}, {t1, 2t5}, 2


{t3, 2t7}, {t1, 2t6}, 2

33.2

86

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

6. Experimental results
In this section, a Petri net model of an FMS is used to illustrate the proposed method, as shown in Fig. 4. This is a wellknown example that is studied in several papers [6,7,27,37]. There are 19 places and 14 transitions. The places have the following set partitions: P0 = {p1, p8}, PR = {p14  p19}, and PA = {p2  p7, p9  p13}. It has 282 reachable markings, 54 and 205 of
H
which are FBMs and legal ones, respectively. By using a vector covering approach, MH
FBM and ML have eight and 26 markings,
respectively. For this example, LICOSP1 (LICOSP2) has 776 (832) constraints and 376 (404) variables.
Tables 3 and 4 show the experimental results of the proposed method by varying the implementation cost C pc of a control
place, control cost C ctq for each transition, and observation cost C ctq for each transition in Cases (1) and (2), respectively. In the
tables, the last column T LP represents the CPU time (seconds) for solving the corresponding ILPP by using LINGO [29], on a
notebook with a Windows XP operating system and Intel CPU Core 2.8 GHz and 4 GB memory.
In Table 3, for the rst two rows, the cost of a control place is much more expensive than that of each arc. Thus, we can
easily obtain an optimal supervisor with a small, in fact the minimal, number of control places. Note that the supervisor in
the second row has 13 arcs. It has more arcs than that in the rst row since the control cost of t2 and observation cost of t7 is
increased in the second row. Thus, compared with the rst, the second has less control arcs to t2 and observation arcs to t7,
aiming to achieve the lowest implementation cost purpose. For the last two rows, we only decrease the cost of a supervisor.
Then, we obtain the same supervisor with two control places since they are the minimal number of control places. In Table 4,
compared with the rst row, we increase the observation cost of transition t4, t5, t8, t11, and t14. Then, we obtain a supervisor
that has no observation arc from t4, t5, t8, t11, and t14 for the minimal implementation cost purpose. In summary, every row in
the two tables shows an optimal supervisor with the lowest implementation cost according to the corresponding cost value
in the second column.

Fig. 4. A Petri net model of an FMS.

Table 3
Experimental results for the net shown in Fig. 4 in Case (1).
C pc

[Cc], [Co]

N pc

Narc

100

[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1]

12

100

[10, 9, 1, 6, 2, 2, 2, 1, 10, 2, 2, 2, 2, 1],


[1, 2, 1, 1, 2, 2, 9, 1, 1, 2, 9, 2, 2, 1]

[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1]

0.1

[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1]

T LP S

{2t7, 3t11}, {t1, t2, t4, 3t9}, 9


{t4, 2t5, 2t13}, {t1, t2, 2t11}, 3

217

18

13

{t3, t4, 2t5, t12, 2t14}, {2t1, 3t11, }, 4


{2t8, 5t11}, {t1, t2, t4, 5t9}, 13

264

22

12

{t4, 2t5, 2t14}, {t1, t2, 2t11}, 3


{2t8, 5t11}, {t1, t2, t4, 5t9}, 13

19

72

12

{t4, 2t5, 2t14}, {t1, t2, 2t11}, 3


{2t8, 5t11}, {t1, t2, t4, 5t9}, 13

17.2

110

pc ; pc ; M 0 pc

87

Y.F. Chen et al. / Information Sciences 256 (2014) 7490


Table 4
Experimental results for the net shown in Fig. 4 in Case (2).
C pc

[Cc], [Co]

N pc

Narc

100

[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1]

12

100

[10, 11, 1, 10, 2, 2, 2, 1, 9, 2, 2, 2, 2, 1],


[1, 2, 1, 10, 9, 2, 2, 10, 1, 2, 8, 2, 2, 10]

[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1]

0.1

[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1]

T LP S

{2t8, 5t11}, {t1, t2, t4, 5t9}, 13


{t4, 2t5, 2t14}, {t1, t2, 2t11}, 3

214

76

13

{3t6, t12, 3t13}, {2t1, t2, t4, 4t11}, 6


{2t7, 3t11}, {t1, t2, t4, 3t9}, 9

258

55

12

{t4, 2t5, 2t14}, {t1, t2, 2t11}, 3


{2t8, 5t11}, {t1, t2, t4, 5t9}, 13

16

417

12

{t4, 2t5, 2t14}, {t1, t2, 2t11}, 3


{2t8, 5t11}, {t1, t2, t4, 5t9}, 13

14.2

381

pc ; pc ; M 0 pc

Table 5
Performance comparison of some deadlock control policies.
Parameters

[37]

[27]

[32]

[6]

[7]

Proposed method

No. monitors
No. arcs
No. states

6
32
205

9
42
205

5
23
205

8
37
205

2
12
205

2
1213
205

Fig. 5. A Petri net model of an FMS.

The example has been widely used in the literature. Table 5 shows some classical results for this example. It can be seen
that both the proposed method and the work in [7] can lead to the minimal number of control places. The supervisor obtained by the proposed method has 12 or 13 arcs, that is the smallest number or closed to the minimal number of control
places. Note that only the proposed method considers the minimization of the implementation cost.
Next, we consider a complex example, as shown in Fig. 5. There are 29 places and 20 transitions. The places have the following set partitions: P0 = {p1, p5, p14}, PR = {p20  p29}, and PA = {p2  p4, p6  p13, p15  p19}. It has 6085 reachable markings,
H
806 and 5278 of which are FBMs and legal ones, respectively. By using a vector covering approach, MH
FBM and ML have eight
and 90 markings, respectively. For this example, LICOSP1 (LICOSP2) has 1480 (1560) constraints and 512 (552) variables.
Tables 6 and 7 show the experimental results of the proposed method by varying the implementation cost C pc of a control
place, control cost C ctq for each transition, and observation cost C ctq for each transition in Cases (1) and (2), respectively. In the

88

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

Table 6
Experimental results for the net shown in Fig. 5 in Case (1).
C pc

[Cc], [Co]

100

T LP min

{t5, t17}, {t3, t15}, 3


{t14}, {t11}, 1
{t10, t17}, {t8, t15}, 3
{8t3, t6, 8t8, 8t19}, {9t1, 3t15, 5t17}, 42

422

4.34

19

{9t6, 18t17, t19}, {2t1, 7t5, 7t8, 19t15}, 55


{2t4, t6, 2t18}, {3t3, 2t15}, 7
{t14}, {t11}, 1
{t3, t9, 2t19}, {t1, 2t17}, 8

462

8.49

17

{t5, t17}, {t3, t15}, 3


{t14}, {t11}, 1
{t10, t17}, {t8, t15}, 3
{8t3, t6, 8t8, 8t19}, {9t1, 3t15, 5t17}, 42

26

6.80

17

{t5, t15}, {t3, t17}, 3


{t14}, {t11}, 1
{t10, t17}, {t8, t15}, 3
{8t3, t6, 8t8, 8t19}, {9t1, 3t15, 5t17}, 42

22.4

6.65

N pc

Narc

T LP min

18

{t5, t17}, {t3, t15}, 3


{t14}, {t11}, 1
{6t3, t5, 6t8, t10, 6t19}, {7t1, 2t15, 4t17}, 32
{t10, t17}, {t8, t15}, 3

417

143.32

19

{8t3, t6, 8t8, 8t19}, {9t1, 3t15, 5t17}, 42


{2t5, t18}, {2t3, t15}, 5
{t14}, {t11}, 1
{t6, 2t9, 2t18}, {t5, 3t8, 2t15}, 7

441

201.55

18

{t5, t17}, {t3, t15}, 3


{t14}, {t11}, 1
{6t3, t5, 6t8, t10, 6t19}, {7t1, 2t15, 4t17}, 32
{t10, t17}, {t8, t15}, 3

21

143.32

19

{t14}, {t11}, 1
{t3, t8, t19}, {t1, t17}, 4
{t10, t17}, {t8, t15}, 3
{8t5, t8, t10, 8t17, t19}, {2t1, 6t3, 9t15}, 33

17.4

58.33

N pc

Narc

17

[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2]
100
[1, 2, 6, 1, 2, 2, 2, 8, 1, 2, 2, 2, 2, 1, 9, 2, 2, 1, 2, 1],
[1, 2, 1, 1, 7, 2, 2, 8, 1, 9, 1, 2, 2, 1, 2, 2, 8, 2, 1, 2]
1
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2]
0.1
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2]

pc ; pc ; M 0 pc

Table 7
Experimental results for the net shown in Fig. 5 in Case (2).
C pc

[Cc], [Co]

100
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2]
100
[1, 2, 8, 1, 2, 2, 2, 7, 1, 2, 2, 2, 2, 1, 1, 2, 9, 1, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 6, 1, 2, 2, 1, 2, 2, 8, 2, 1, 2]
1
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2]
0.1
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2, 1],
[1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2]

pc ; pc ; M0 pc

tables, the last column T LP represents the CPU time (minutes) for solving the corresponding ILPP on a notebook with a Windows XP operating system and Intel CPU Core 2.8 GHz and 4 GB memory.
In Table 6, in the rst two rows, the cost of a control place is much more expensive than that of each arc. Thus, we obtain
an optimal supervisor with the minimal number of control places. The supervisor in the second row has 19 arcs, which has
two more arcs than that in the rst row. Compared with the rst row, the control cost of t15 and the observation costs of t5, t8,
and t10 are increased. Thus, the supervisor in the second row has less control arcs to t15 and no observation arcs from t5, t8,
and t10, which can achieve the lowest implementation cost purpose. For the last two rows, only the cost of a control unit is
decreased. Then, we obtain the same supervisor with four control places, which are the minimal number of control places. In
Table 7, compared with the rst row, the observation costs of transitions t10 and t17 are increased in the second row. Then, we
obtain a supervisor that has no observation arc from t10 and t17 for the minimal implementation cost purpose. Every supervisor in the two tables shows an optimal supervisor with the lowest implementation cost according to the corresponding
cost value in the second column.
7. Conclusions
This paper aims to design an optimal Petri net supervisor with the lowest implementation cost for an FMS. From the viewpoint of implementation cost, a supervisor contains two parts: control places and arcs. For all arcs in a supervisor, we classify
them into two parts: control arcs and observation arcs. Then, by assigning a control cost and an observation cost for each
transition, and an implementation cost for a control place, the implementation cost of a supervisor can be evaluated. Two
ILPPs are developed to minimize the implementation cost of the supervisor by considering cases.

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

89

However, there is a problem in the proposed method, i.e., computational complexity. First, it is based on reachability
graph analysis of a Petri net model, which suffers from the state explosion problem. Second, the proposed ILPPs, namely LICOSP1 and LICOSP2, have too many constraints and variables for large-scale Petri net models, which makes them inapplicable to real-word systems. Our future work will focus on the two issues.
Acknowledgments
This work was supported in part by the National Natural Science Foundation of China under Grant Nos. 61074035,
61203038, and 61374068, the Fundamental Research Funds for the Central Universities under Grant Nos. JY10000904001
and K5051204002, the National Research Foundation for the Doctoral Program of Higher Education, the Ministry of Education, P.R. China, under Grant No. 20090203110009, and Alexander von Humboldt Foundation.
References
[1] Z. Banaszak, B.H. Krogh, Deadlock avoidance in exible manufacturing systems with concurrently competing process ows, IEEE Transactions on
Robotics and Automation 6 (6) (1990) 724734.
[2] K. Barkaoui, I. Ben Abdallah, Analysis of a resource allocation problem in FMS using structure theory of Petri nets, in: Proceedings of the First
International Workshop on Manufacturing and Petri Nets, 1996.
[3] K. Barkaoui, J.F. Peyre, On liveness and controlled siphons in Petri nets, in: J. Bilington, W. Reisig (Eds.), Proc. 17th Int. Conf. Appl. Theory Petri Nets,
Lecture Notes in Computer Science, vol. 1091, Springer-Verlag, New York, 1996, pp. 5772.
[4] F. Basile, P. Chiacchio, A. Guia, An optimization approach to Petri net monitor design, IEEE Transactions on Automatic Control 52 (2) (2007) 306311.
[5] R. Cordone, L. Piroddi, Monitor optimization in Petri net control, in: 7th Annual IEEE Conference on Automation Science and Engineering, Trieste (Italy),
August 2427, 2011, pp. 413418.
[6] Y.F. Chen, Z.W. Li, M. Khalgui, O. Mosbahi, Design of a maximally permissive liveness-enforcing Petri net supervisor for exible manufacturing systems,
IEEE Transactions on Automation Science and Engineering 8 (2) (2011) 374393.
[7] Y.F. Chen, Z.W. Li, Design of a maximally permissive liveness-enforcing supervisor with a compressed supervisory structure for exible manufacturing
systems, Automatica 47 (5) (2011) 10281034.
[8] E.G. Coffman, M.J. Elphick, A. Shoshani, Systems deadlocks, ACM Computing Surveys 3 (2) (1971) 6778.
[9] J. Ezpeleta, J.M. Colom, J.A. Martinez, Petri net based deadlock prevention policy for exible manufacturing systems, IEEE Transactions on Robotics and
Automation 11 (2) (1995) 173184.
[10] J. Ezpeleta, L. Recalde, A deadlock avoidance approach for non-sequential resource allocation systems, IEEE Transactions on Systems, Man, and
Cybernetics, Part A 34 (1) (2004) 93101.
[11] M.P. Fanti, M.C. Zhou, Deadlock control methods in automated manufacturing systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A 34
(1) (2004) 522.
[12] M.P. Fanti, M.C. Zhou, Deadlock control methods in automated manufacturing systems, in: Deadlock Resolution in Computer-Integrated Systems,
Marcel-Dekker Co., New York, 2005, pp. 122.
[13] A. Ghaffari, N. Rezg, X.L. Xie, Design of a live and maximally permissive Petri net controller using the theory of regions, IEEE Transactions on Robotics
and Automation 19 (1) (2003) 137142.
[14] V. Gligor, S. Shattuck, On deadlock detection in distributed systems, IEEE Transactions on Software Engineering 7 (3) (1980) 320336.
[15] B. Hruz, M.C. Zhou, Modeling and Control of Discrete Event Dynamic Systems, Springer, London, UK, 2007.
[16] F.S. Hsieh, S.C. Chang, Dispatching-driven deadlock avoidance controller synthesis for exible manufacturing systems, IEEE Transactions on Robotics
and Automation 10 (2) (1994) 196209.
[17] F.S. Hsieh, Fault-tolerant deadlock avoidance algorithm for assembly processes, IEEE Transactions Systems, Man, and Cybernetics, Part A 34 (1) (2004)
6579.
[18] Y.S. Huang, M.D. Jeng, X.L. Xie, S.L. Chung, Deadlock prevention based on Petri nets and siphons, International Journal of Production Research 39 (2)
(2001) 283305.
[19] Y.S. Huang, M.D. Jeng, X.L. Xie, D.H. Chung, Siphon-based deadlock prevention for exible manufacturing systems, IEEE Transactions on Systems, Man,
and Cybernetics, Part A 36 (6) (2006) 12481256.
[20] M.D. Jeng, X.L. Xie, Deadlock detection and prevention of automated manufacturing systems using Petri nets and siphons, in: M.C. Zhou, M.P. Fanti
(Eds.), Deadlock Resolution in Computer-Integrated Systems, Marcel-Dekker Inc, New York, 2005, pp. 233281.
[21] T.K. Kumaran, W. Chang, H. Cho, A. Wysk, A structured approach to deadlock detection, avoidance and resolution in exible manufacturing systems,
International Journal of Production Research 32 (10) (1994) 23612379.
[22] K. Lautenbach, H. Ridder, The Linear Algebra of Deadlock Avoidance A Petri Net Approach, No. 251996, Technical Report, Institute of Software
Technology, University of Koblenz-Landau, Koblenz, Germany, 1996. .
[23] Z.W. Li, M.C. Zhou, Elementary siphons of Petri nets and their application to deadlock prevention in exible manufacturing systems, IEEE Transactions
on Systems, Man, and Cybernetics, Part A 34 (1) (2004) 3851.
[24] Z.W. Li, M.C. Zhou, Clarications on the denitions of elementary siphons of Petri nets, IEEE Transactions on Systems, Man, and Cybernetics, Part A 36
(6) (2006) 12271229.
[25] Z.W. Li, H.S. Hu, A.R. Wang, Design of liveness-enforcing supervisors for exible manufacturing systems using Petri nets, IEEE Transactions on Systems,
Man, and Cybernetics, Part C 37 (4) (2007) 517526.
[26] Z.W. Li, M.C. Zhou, Two-stage method for synthesizing liveness-enforcing supervisors for exible manufacturing systems using Petri nets, IEEE
Transactions on Industrial Informatics 2 (4) (2006) 313325.
[27] Z.W. Li, M.C. Zhou, M.D. Jeng, A maximally permissive deadlock prevention policy for FMS based on Petri net siphon control and the theory of regions,
IEEE Transactions on Automation Science and Engineering 5 (1) (2008) 182188.
[28] Z.W. Li, M.C. Zhou, Deadlock Resolution in Automated Manufacturing Systems: A Novel Petri Net Approach, Springer, London, 2009.
[29] Lingo, Premier Optimization Modeling Tools, <http://www.lingo.com> (accessed 10.09).
[30] D. Liu, Z.W. Li, M.C. Zhou, Liveness of an extended S3PR, Automatica 46 (6) (2010) 10081018.
[31] T. Murata, Petri nets: properties, analysis and application, Proceedings of the IEEE 77 (4) (1989) 541580.
[32] L. Piroddi, R. Cordone, I. Fumagalli, Selective siphon control for deadlock prevention in Petri nets, IEEE Transactions on Systems, Man, and Cybernetics,
Part A 8 (6) (2008) 13371348.
[33] P. Ramadge, W.M. Wonham, Supervisory control of a class of discrete event processes, SIAM journal on Control and Optimization 25 (1) (1987) 206
230.
[34] P. Ramadge, W.M. Wonham, The control of discrete event systems, Proceedings of the IEEE 77 (1) (1989) 8189.
[35] K.R. Rohloff, S. Khuller, G. Kortsarz, Approximating the minimal sensor selection for supervisory control, Discrete Event Dynamic System 16 (2006)
143170.

90

Y.F. Chen et al. / Information Sciences 256 (2014) 7490

[36] F. Tricas, J. Martinez, An extension of the liveness theory for concurrent sequential processes competing for shared resources, in: Proceedings of the
IEEE International Conference on Systems, Man, and Cybernetics, Vancouver, British Columbia, Canada, 1995, pp. 30353040.
[37] M. Uzam, An optimal deadlock prevention policy for exible manufacturing systems using Petri net models with resources and the theory of regions,
International Journal of Advanced Manufacturing Technology 19 (3) (2002) 192208.
[38] M. Uzam, M.C. Zhou, An improved iterative synthesis method for liveness enforcing supervisors of exible manufacturing systems, International
Journal of Production Research 44 (10) (2006) 19872030.
[39] M. Uzam, M.C. Zhou, An iterative synthesis approach to Petri net based deadlock prevention policy for exible manufacturing systems, IEEE
Transactions on Systems, Man and Cybernetics, Part A 37 (3) (2007) 362371.
[40] N. Viswanadham, Y. Narahari, T. Johnson, Deadlock prevention and deadlock avoidance in exible manufacturing systems using Petri net models, IEEE
Transactions on Robotics and Automation 6 (6) (1990) 713723.
[41] N.Q. Wu, Necessary and sufcient conditions for deadlock-free operation in exible manufacturing systems using a colored Petri net model, IEEE
Transactions on Systems, Man, and Cybernetics, Part C, 29 (2) (1999) 192204.
[42] N.Q. Wu, M.C. Zhou, Avoiding deadlock and reducing starvation and blocking in automated manufacturing systems, IEEE Transactions on Robotics and
Automation 17 (5) (2001) 658669.
[43] N.Q. Wu, M.C. Zhou, Modeling and deadlock avoidance of automated manufacturing systems with multiple automated guided vehicles, IEEE
Transactions on Systems, Man, and Cybernetics, Part B, 35 (6) (2005) 1931202.
[44] N.Q. Wu, M.C. Zhou, System Modeling and Control with Resource-Oriented Petri Nets, CRC Press, New York, 2010.
[45] R.A. Wysk, N.S. Yang, S. Joshi, Resolution of deadlocks in exible manufacturing systems: avoidance and recovery approaches, Journal of Manufacturing
Systems 13 (2) (1994) 128138.
[46] K.Y. Xing, B.S. Hu, H.X. Chen, Deadlock avoidance policy for Petri-net modelling of exible manufacturing systems with shared resources, IEEE
Transactions on Automatic Control 41 (2) (1996) 289295.
[47] K. Yamalidou, J. Moody, M. Lemmon, P. Antsaklis, Feedback control of Petri nets based on place invariants, Automatica 32 (1) (1996) 1528.
[48] S.D. Young, V.K. Garg, Optimal sensor and actuator choices for discrete event systems, in: Proceeding of 31st Allerton Conference on Communication,
Control and Computing, Allerton, IL, 1993.
[49] M.C. Zhou, F. DiCesare, Parallel and sequential mutual exclusions for petri net modeling of manufacturing systems with shared resources, IEEE
Transactions on Robotics and Automation 7 (4) (1991) 515527.

You might also like