M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places Murat UZAM Niğde Üniversitesi, Mühendislik-Mimarlık Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 51200, Kampüs, Niğde, Turkey. Tel: ++ 90 388 225 22 82, Fax: ++ 90 388 225 01 12, e-mail1:
[email protected], e-mail2:
[email protected] URL: http://host.nigde.edu.tr/muzam/ Submitted: 15 April 2009 Accepted: 17 July 2009 Published online: 20 August 2009. Abstract Recently a study has been presented for suboptimal supervisory control of Petri nets via monitor (control) places, in the presence of uncontrollable transitions. To enforce a generalized mutual exclusion constraint (GMEC) suboptimally on a plant Petri net with uncontrollable transitions, a set of monitor places has been provided to choose from. There are two main results of this study, the first of which is that “there is not an optimal solution to the problem of computing a monitor based controller to enforce a GMEC on a plant net in the presence of uncontrollable transitions”. The second result deals with the computation of monitor places for the suboptimal supervisory control in such Petri nets. In this paper, it is shown that there may be an optimal solution to the problem of computing a monitor based controller to enforce a GMEC on a plant net in the presence of uncontrollable transitions. To do this an example Petri net is considered and then two different optimal (maximally permissive) solutions are provided for this Petri net. Keywords: Discrete event systems, Supervisory control, Petri nets, Monitors. 1. Introduction In [1], a methodology for suboptimal supervisory control of Petri nets via monitor (control) places, in the presence of uncontrollable transitions was presented. According to [1], “there is not an optimal solution to the problem of computing a monitor based controller to enforce a GMEC on a plant net in the presence of uncontrollable transitions”. However, there may be some exceptions to this as shown in [5], in which there is an example of an optimal solution to the problem of computing a monitor based controller to enforce a GMEC on a plant net of [2] in the presence of uncontrollable transitions. The purpose of this paper is to show that there may be an optimal solution to the problem of computing a monitor based controller to enforce a GMEC on a plant net in the presence of uncontrollable transitions. To do this an example Petri net shown in Fig. 1 is considered, which is Fig. 3 of [3] (without the dashed arcs and places). In the Petri net shown in Fig. 1, transitions t1, t5, and t6 are controllable while t2, t3, and t4 are uncontrollable. In [1], it is assumed that there is no monitor based optimal solution to enforce the GMEC m(p1) ≤ 1, i.e. the number of tokens in place p1 must be less then or equal to 1, on the Petri net shown in Fig. 1. As a matter of the fact that there are two different optimal solutions for enforcing m(p1) ≤ 1 on this Petri net as shown in this paper.
1
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
The rest of this paper is organized as follows. In the 2nd section, the analysis of the Petri net shown in Fig. 1 is provided and the meaning of the optimal behavior of this Petri net for the GMEC m(p1) ≤ 1 is explained. In section 3, two different optimal solutions are provided for this problem. The effect of the initial markings on the behavior of a Petri net with uncontrollable transitions when enforcing GMECs and some other important issues are discussed in section 4. Finally, conclusions are given and some future research directions are provided in Section 5. 2. Definition of the problem and the meaning of the optimal solution Let us now analyze the Petri net shown in Fig. 1 and show what it means to enforce the constraint m(p1) ≤ 1 in terms of the reachability graph (RG) of the Petri net. The RG of the Petri net shown in Fig. 1 is sketched in Fig. 2, while the table form of the RG is given in Table 1. Note that the RG computations reported in this paper are obtained by using a Petri net analysis tool called PNTOOLS [8]. In the RG there are 46 states and 104 transitions. s1 represents the initial marking, i.e., there are 2 tokens each in p6 and p7. It can be seen that there are 14 states, namely s20, s25, s28, s31, s33, s36, s38, s39, s40, s42, s43, s44, s45, s46 and 42 transitions violating the constraint m(p1) ≤ 1. The removal of these unacceptable states together with their input and output transitions from the RG shown in Fig. 2 results in a RamadgeWonham type supervisor [4] representing the supremal controllable sublanguage as shown in Fig. 3, which has 32 states and 62 transitions. The table form of the supremal controllable sublanguage shown in Fig. 3, is provided in Table 2. Now, the optimal solution to this particular example must provide exactly this supremal controllable sublanguage, shown in Fig. 3, by means of one or more control places (monitors) to be added to the original Petri net of Fig. 1.
t5
t6
p4
p5 t4
t3 p6
p2
p3
p7
t2 p1 t1
Fig. 1. A Petri net with controllable (t1, t5, t6) and uncontrollable (t2, t3, t4) transitions taken from [1] (without dashed arcs and places).
2
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
s1
t6
t5 s2
s4
t3 s5 t6 t6
t5
t3
s15
t5
t6
t3 s16 t6 t4
t6
s23
s9
t6
t4
s24
t3
s10
t6
t4
t6
s17
t5 s3 t6 t4
t6
t3 t5
t3 s6 s7 t5 t6 t5 t4 t6
t3 s11 t6 t3 s12 t6 t4 t5
t6 t5 s18 t4 t3 s19
s8
t3 s13 t4 t5
t3 s20
t5 t2
t6
t3
s25
t4
t5
t1
s26
t6
t2
t4
t5
t5
s27
s14
t4
t5
s21
t4
t3
t4
t3 s28
s22
t4
t5
t5
t4
t2
t3
s29
t5
t1 s30
s31
t6
t2
t1
t4
s32
t6
t3
t3
s33
t5
s34
t2 t4
t5
s35
s36
t2
t4
t3
t1 t1
s37
t6
s38
t4
t3
t3
s42
s43
t1
t2
s44
t2
t4
s41
s40
t4
t2
t1
t1
s39
t5
t1
t3
s45
t2 t1 s46
F
ig. 2. The reachability graph (RG) of the Petri net shown in Fig. 1.
3
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
Table 1. Table form of the RG of the Petri net shown in Fig. 1. Table of nodes:
Table of arcs:
NODE: p1 p2 p3 p4 p5 p6 p7 --------------------------s1: 0 0 0 0 0 2 2 s2: 0 0 0 1 0 1 2 s3: 0 0 0 0 1 2 1 s4: 0 1 0 0 0 1 2 s5: 0 0 0 2 0 0 2 s6: 0 0 0 1 1 1 1 s7: 0 0 1 0 0 2 1 s8: 0 0 0 0 2 2 0 s9: 0 1 0 1 0 0 2 s10: 0 1 0 0 1 1 1 s11: 0 0 0 2 1 0 1 s12: 0 0 1 1 0 1 1 s13: 0 0 0 1 2 1 0 s14: 0 0 1 0 1 2 0 s15: 0 2 0 0 0 0 2 s16: 0 1 0 1 1 0 1 s17: 0 1 1 0 0 1 1 s18: 0 1 0 0 2 1 0 s19: 0 0 1 2 0 0 1 s20: 0 0 0 2 2 0 0 s21: 0 0 1 1 1 1 0 s22: 0 0 2 0 0 2 0 s23: 0 2 0 0 1 0 1 s24: 0 1 1 1 0 0 1 s25: 0 1 0 1 2 0 0 s26: 1 0 0 0 0 1 1 s27: 0 1 1 0 1 1 0 s28: 0 0 1 2 1 0 0 s29: 0 0 2 1 0 1 0 s30: 0 2 1 0 0 0 1 s31: 0 2 0 0 2 0 0 s32: 1 0 0 1 0 0 1 s33: 0 1 1 1 1 0 0 s34: 1 0 0 0 1 1 0 s35: 0 1 2 0 0 1 0 s36: 0 0 2 2 0 0 0 s37: 1 1 0 0 0 0 1 s38: 0 2 1 0 1 0 0 s39: 1 0 0 1 1 0 0 s40: 0 1 2 1 0 0 0 s41: 1 0 1 0 0 1 0 s42: 1 1 0 0 1 0 0 s43: 0 2 2 0 0 0 0 s44: 1 0 1 1 0 0 0 s45: 1 1 1 0 0 0 0 s46: 2 0 0 0 0 0 0
NODE: t1 t2 t3 t4 t5 t6 ----------------------------s1: . . . . s2 s3 s2: . . s4 . s5 s6 s3: . . . s7 s6 s8 s4: . . . . s9 s10 s5: . . s9 . . s11 s6: . . s10 s12 s11 s13 s7: . . . . s12 s14 s8: . . . s14 s13 . s9: . . s15 . . s16 s10: . . . s17 s16 s18 s11: . . s16 s19 . s20 s12: . . s17 . s19 s21 s13: . . s18 s21 s20 . s14: . . . s22 s21 . s15: . . . . . s23 s16: . . s23 s24 . s25 s17: . s26 . . s24 s27 s18: . . . s27 s25 . s19: . . s24 . . s28 s20: . . s25 s28 . . s21: . . s27 s29 s28 . s22: . . . . s29 . s23: . . . s30 . s31 s24: . s32 s30 . . s33 s25: . . s31 s33 . . s26: s1 . . . s32 s34 s27: . s34 . s35 s33 . s28: . . s33 s36 . . s29: . . s35 . s36 . s30: . s37 . . . s38 s31: . . . s38 . . s32: s2 . s37 . . s39 s33: . s39 s38 s40 . . s34: s3 . . s41 s39 . s35: . s41 . . s40 . s36: . . s40 . . . s37: s4 . . . . s42 s38: . s42 . s43 . . s39: s6 . s42 s44 . . s40: . s44 s43 . . . s41: s7 . . . s44 . s42: s10 . . s45 . . s43: . s45 . . . . s44: s12 . s45 . . . s45: s17 s46 . . . . s46: s26 . . . . .
4
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
s1
t6
t5 s2
t3 t5 s4
t5
t3
s15
t6
t6
t5
t3 s16 t4
s23
t4
s9
s10
t4
t6
s17
t6
t3 s6 s7 t5 t6 t6 t5 t4
t3 s11 t4
s18
t3 s12 t6 t5
s8
t4
t5
t3 s13 t4
t5
t4 t3 s19
t2
s26
t1 t6
s14
t4
t5
t3
t5 t2
s24
t3
t3 s5 t6
t6
t5 s3 t6 t4
t6
s27
s21
s22
t4
t5
t3
t4
s29
t2 t1
t1
s30
t2
s32
t3
s34
s35
t4
t2 t1
t1
s37
s41
Fig. 3. Supremal controllable sublanguage representing the optimal behavior of the Petri net for the constraint m(p1) ≤ 1.
5
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
Table 2. Table form of the supremal controllable sublanguage shown in Fig. 3. Table of arcs: Table of nodes: NODE: p1 p2 p3 p4 p5 p6 p7 --------------------------s1: 0 0 0 0 0 2 2 s2: 0 0 0 1 0 1 2 s3: 0 0 0 0 1 2 1 s4: 0 1 0 0 0 1 2 s5: 0 0 0 2 0 0 2 s6: 0 0 0 1 1 1 1 s7: 0 0 1 0 0 2 1 s8: 0 0 0 0 2 2 0 s9: 0 1 0 1 0 0 2 s10: 0 1 0 0 1 1 1 s11: 0 0 0 2 1 0 1 s12: 0 0 1 1 0 1 1 s13: 0 0 0 1 2 1 0 s14: 0 0 1 0 1 2 0 s15: 0 2 0 0 0 0 2 s16: 0 1 0 1 1 0 1 s17: 0 1 1 0 0 1 1 s18: 0 1 0 0 2 1 0 s19: 0 0 1 2 0 0 1 s21: 0 0 1 1 1 1 0 s22: 0 0 2 0 0 2 0 s23: 0 2 0 0 1 0 1 s24: 0 1 1 1 0 0 1 s26: 1 0 0 0 0 1 1 s27: 0 1 1 0 1 1 0 s29: 0 0 2 1 0 1 0 s30: 0 2 1 0 0 0 1 s32: 1 0 0 1 0 0 1 s34: 1 0 0 0 1 1 0 s35: 0 1 2 0 0 1 0 s37: 1 1 0 0 0 0 1 s41: 1 0 1 0 0 1 0
NODE: t1 t2 t3 t4 t5 t6 ----------------------------s1: . . . . s2 s3 s2: . . s4 . s5 s6 s3: . . . s7 s6 s8 s4: . . . . s9 s10 s5: . . s9 . . s11 s6: . . s10 s12 s11 s13 s7: . . . . s12 s14 s8: . . . s14 s13 . s9: . . s15 . . s16 s10: . . . s17 s16 s18 s11: . . s16 s19 . . s12: . . s17 . s19 s21 s13: . . s18 s21 . . s14: . . . s22 s21 . s15: . . . . . s23 s16: . . s23 s24 . . s17: . s26 . . s24 s27 s18: . . . s27 . . s19: . . s24 . . . s21: . . s27 s29 . . s22: . . . . s29 . s23: . . . s30 . . s24: . s32 s30 . . . s26: s1 . . . s32 s34 s27: . s34 . s35 . . s29: . . s35 . . . s30: . s37 . . . . s32: s2 . s37 . . . s34: s3 . . s41 . . s35: . s41 . . . . s37: s4 . . . . . s41: s7 . . . . .
3. Two optimal solutions for the problem There are two set of control places (monitors) provided in this paper for optimally enforcing the GMEC m(p1) ≤ 1 on the Petri net shown in Fig. 1. Let us now consider these two solutions. 3.1. Solution 1 The first set of control places are depicted in Fig. 4. In this set, there are four control places, namely C1, C2, C3 and C4. The computation method of these control places is omitted and will probably be topic of a further publication. When these control places are included in the Petri net shown in Fig. 1 the controlled Petri net model shown in Fig. 5 is obtained. To verify the correctness of the four control places on the controlled behavior, RG analysis of the controlled model shown in Fig. 5 is carried out. The obtained RG of the controlled Petri net model is provided in Fig. 6. The table form of this RG is given in Table 3. When the obtained RG shown in Fig. 6 is compared with the one shown in Fig. 3, it can be seen that these
6
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
two RGs are isomorphic. This means that four control places shown in Fig. 4 enforce the GMEC m(p1) ≤ 1 optimally on the Petri net shown in Fig. 1. t5
t6
t5
t6
t6
C2
C4
C3 t4
t4 t3
t3
C1
t5
t4
t3
2 2 t2
t2
t2
2
t2 2
2 t1
t1
t1
Fig. 4. Four control places enforcing the constraint m(p1) ≤ 1 optimally on the Petri net shown in Fig. 1.
C1
t5
t6
p4
p5 C2 t4
t3 C4 p6
C3
2
p2
p3
p7
t2 2 p1 2
2
2
t1
Fig. 5. The controlled Petri net model obtained after four control places are included within the Petri net shown in Fig. 1
7
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
s1
t5
t6
s2
t3 t5 s4
t3 s5 t6 t6
t5
t3
s15
t6
t6
t5
t3 s16 t4
s22
t4
s9
s10
t4
s17
t6
t3 s6 s7 t5 t6 t5 t4 t6
t3 s11 t4
s18
t3 s12 t6 t5
s8
t4
t5
t3 s13 t4
t5
t4 t3 s19
t2
s24
t1 t6
s14
t4
t5
t3
t5 t2
s23
t3
t6
t5 s3 t6 t4
t6
s25
s20
s21
t4
t5
t3
t4
s26
t2 t1
s27
t1
t2
s28
t3
s29
s30
t4
t2 t1
t1
s31
s32
Fig. 6. The RG of the controlled Petri net model shown in Fig. 5.
8
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
Table of nodes:
Table 3. Table form of the RG shown in Fig. 6. Table of arcs:
NODE: p1 p2 p3 p4 p5 p6 p7 C1 C2 C3 C4 ---------------------------------------s1: 0 0 0 0 0 2 2 3 3 3 3 s2: 0 0 0 1 0 1 2 2 2 3 2 s3: 0 0 0 0 1 2 1 2 2 2 3 s4: 0 1 0 0 0 1 2 2 3 2 3 s5: 0 0 0 2 0 0 2 1 1 3 1 s6: 0 0 0 1 1 1 1 1 1 2 2 s7: 0 0 1 0 0 2 1 2 3 3 2 s8: 0 0 0 0 2 2 0 1 1 1 3 s9: 0 1 0 1 0 0 2 1 2 2 2 s10: 0 1 0 0 1 1 1 1 2 1 3 s11: 0 0 0 2 1 0 1 0 0 2 1 s12: 0 0 1 1 0 1 1 1 2 3 1 s13: 0 0 0 1 2 1 0 0 0 1 2 s14: 0 0 1 0 1 2 0 1 2 2 2 s15: 0 2 0 0 0 0 2 1 3 1 3 s16: 0 1 0 1 1 0 1 0 1 1 2 s17: 0 1 1 0 0 1 1 1 3 2 2 s18: 0 1 0 0 2 1 0 0 1 0 3 s19: 0 0 1 2 0 0 1 0 1 3 0 s20: 0 0 1 1 1 1 0 0 1 2 1 s21: 0 0 2 0 0 2 0 1 3 3 1 s22: 0 2 0 0 1 0 1 0 2 0 3 s23: 0 1 1 1 0 0 1 0 2 2 1 s24: 1 0 0 0 0 1 1 3 1 1 1 s25: 0 1 1 0 1 1 0 0 2 1 2 s26: 0 0 2 1 0 1 0 0 2 3 0 s27: 0 2 1 0 0 0 1 0 3 1 2 s28: 1 0 0 1 0 0 1 2 0 1 0 s29: 1 0 0 0 1 1 0 2 0 0 1 s30: 0 1 2 0 0 1 0 0 3 2 1 s31: 1 1 0 0 0 0 1 2 1 0 1 s32: 1 0 1 0 0 1 0 2 1 1 0
NODE: t1 t2 t3 t4 t5 t6 ----------------------------s1: . . . . s2 s3 s2: . . s4 . s5 s6 s3: . . . s7 s6 s8 s4: . . . . s9 s10 s5: . . s9 . . s11 s6: . . s10 s12 s11 s13 s7: . . . . s12 s14 s8: . . . s14 s13 . s9: . . s15 . . s16 s10: . . . s17 s16 s18 s11: . . s16 s19 . . s12: . . s17 . s19 s20 s13: . . s18 s20 . . s14: . . . s21 s20 . s15: . . . . . s22 s16: . . s22 s23 . . s17: . s24 . . s23 s25 s18: . . . s25 . . s19: . . s23 . . . s20: . . s25 s26 . . s21: . . . . s26 . s22: . . . s27 . . s23: . s28 s27 . . . s24: s1 . . . s28 s29 s25: . s29 . s30 . . s26: . . s30 . . . s27: . s31 . . . . s28: s2 . s31 . . . s29: s3 . . s32 . . s30: . s32 . . . . s31: s4 . . . . . s32: s7 . . . . .
3.2. Solution 2 The second optimal solution for the computation of the control places makes use of three concepts: Petri net reduction, constraint transformation, and control place computation based on the method proposed in [7]. Firstly, let us now briefly consider the Petri net reduction approach, which is a well-known method to derive the properties of a complex Petri net model, while preserving the concerned properties, such as boundedness, liveness and reversibility [3]. It is possible to analyze and derive the properties of a complex Petri net model, by simplifying the subnet or structure. A set of easy-to-use reduction rules is given in Fig. 7, including the following. Rule 1: Fusion of series places as shown in Fig. 7.(a). Rule 2: Fusion of series transitions as shown in Fig. 7.(b). Rule 3: Fusion of parallel places as shown in Fig. 7.(c). Rule 4: Fusion of parallel transitions as shown in Fig. 7.(d). Rule 5: Elimination of self-loop places as shown in Fig. 7.(e). 9
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
Rule6: Elimination of self-loop transitions as shown in Fig. 7.(f).
(b)
(a)
(d)
(c)
(e)
(f)
Fig. 7. A set of easy-to-use Petri net reduction rules, preserving liveness, safeness and reversibility. It can be proven that these six operations preserve the properties of liveness, safeness and boundedness, when they are applied to reduce a Petri net. That is, let (N, M0) and (N’, M’0) be the Petri nets before and after one of the above mentioned operations. Then (N’, M’0) is live, safe, or bounded iff (N, M0) is live, safe, or bounded, respectively [3]. By using the Petri net reduction approach we can simplify the Petri net shown in Fig. 1 and obtain the reduced Petri net shown in Fig. 8.(a). To obtain the reduced Petri net, reduction Rules 1 and 2 are used. p24 (resp. p35) is obtained by fusion of series places p4 and p2 (resp. p5 and p3). t1 is obtained by fusion of series transitions t2 and t1. Secondly, let us now transform the constraint m(p1) ≤ 1 for the reduced Petri net. The transformed constraint for the reduced Petri net is m(p24) + m(p35) ≤ 3. This means that the number of tokens in p24 and p35 must be less than or equal to 3. Thirdly, for the constraint m(p24) + m(p35) ≤ 3, we can compute the control place C shown in Fig. 8.(b) by using the method proposed in [7]. C
p6
t5
t6
p24
p35
t5
t6
p7 2
t1
t1 (a)
(b)
Fig. 8. (a) Reduced Petri net used for control place computation. (b) The computed control place C. 10
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
When the control place C is included in the Petri net shown in Fig. 1 the controlled Petri net model shown in Fig. 9 is obtained. To verify the correctness of the control place C on the controlled behavior, RG analysis of the controlled model shown in Fig. 9 is carried out. The table form of the obtained RG is given in Table 4. Graphically, the obtained RG of the controlled Petri net model shown in Fig. 9 is the same as the one provided in Fig. 6. This also means that the control place C shown in Fig. 8.(b) enforces the GMEC m(p1) ≤ 1 optimally on the Petri net shown in Fig. 1.
2 C
t5
t6
p4
p5 t4
t3 p6
p2
p3
p7
t2 p1 t1 Fig. 9. The computed control place (monitor) C enforces the constraint m(p1) ≤ 1 optimally on the Petri net.
11
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
Table 4. Table form of the obtained RG for the controlled model shown in Fig. 9. Table of arcs: Table of nodes: NODE: p1 p2 p3 p4 p5 p6 p7 C ------------------------------s1: 0 0 0 0 0 2 2 3 s2: 0 0 0 1 0 1 2 2 s3: 0 0 0 0 1 2 1 2 s4: 0 1 0 0 0 1 2 2 s5: 0 0 0 2 0 0 2 1 s6: 0 0 0 1 1 1 1 1 s7: 0 0 1 0 0 2 1 2 s8: 0 0 0 0 2 2 0 1 s9: 0 1 0 1 0 0 2 1 s10: 0 1 0 0 1 1 1 1 s11: 0 0 0 2 1 0 1 0 s12: 0 0 1 1 0 1 1 1 s13: 0 0 0 1 2 1 0 0 s14: 0 0 1 0 1 2 0 1 s15: 0 2 0 0 0 0 2 1 s16: 0 1 0 1 1 0 1 0 s17: 0 1 1 0 0 1 1 1 s18: 0 1 0 0 2 1 0 0 s19: 0 0 1 2 0 0 1 0 s20: 0 0 1 1 1 1 0 0 s21: 0 0 2 0 0 2 0 1 s22: 0 2 0 0 1 0 1 0 s23: 0 1 1 1 0 0 1 0 s24: 1 0 0 0 0 1 1 1 s25: 0 1 1 0 1 1 0 0 s26: 0 0 2 1 0 1 0 0 s27: 0 2 1 0 0 0 1 0 s28: 1 0 0 1 0 0 1 0 s29: 1 0 0 0 1 1 0 0 s30: 0 1 2 0 0 1 0 0 s31: 1 1 0 0 0 0 1 0 s32: 1 0 1 0 0 1 0 0
NODE: t1 t2 t3 t4 t5 t6 ----------------------------s1: . . . . s2 s3 s2: . . s4 . s5 s6 s3: . . . s7 s6 s8 s4: . . . . s9 s10 s5: . . s9 . . s11 s6: . . s10 s12 s11 s13 s7: . . . . s12 s14 s8: . . . s14 s13 . s9: . . s15 . . s16 s10: . . . s17 s16 s18 s11: . . s16 s19 . . s12: . . s17 . s19 s20 s13: . . s18 s20 . . s14: . . . s21 s20 . s15: . . . . . s22 s16: . . s22 s23 . . s17: . s24 . . s23 s25 s18: . . . s25 . . s19: . . s23 . . . s20: . . s25 s26 . . s21: . . . . s26 . s22: . . . s27 . . s23: . s28 s27 . . . s24: s1 . . . s28 s29 s25: . s29 . s30 . . s26: . . s30 . . . s27: . s31 . . . . s28: s2 . s31 . . . s29: s3 . . s32 . . s30: . s32 . . . . s31: s4 . . . . . s32: s7 . . . . .
4. Discussion In this section three points are discussed. The first one is the effect of the initial markings on the behavior of a Petri net with uncontrollable transitions when enforcing a GMEC. The second one is about providing a set of optimal solutions for a set of GMEC enforcing problems on a plant net in the presence of uncontrollable transitions. The last point is about whether it is possible to have a monitor solution which has arcs going to an uncontrollable transition. For the first point, we have the Petri net shown in Fig. 10, which is a modified version of the Petri net given in Fig. 1. In this net the initial markings are represented with the number N, N=1, 2, 3, 4, ... . Let us assume that the GMEC to be enforced on the Petri net shown in Fig. 10 is m(p1) ≤ 1. Now we will consider the first three possibilities, namely N=1, 2, 3. When N=1 there is no need for a monitor to enforce the constraint as it is naturally enforced by the initial marking. When N=2 the constraint m(p1) ≤ 1 can be enforced optimally by using either of the set of control places as described in the previous section. When N=3 the constraint m(p1) ≤ 1 can NOT be enforced optimally. This can be shown by considering some legal and illegal markings of the net for N=3. From the initial marking M0 = [0 0 0 0 0 3 3]T when 12
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
the firing sequence 1 = t5t5t5t6 occurs we obtain a legal marking M1 = [0 0 0 3 1 0 2]T in which m(p4) = 3 and m(p5) = 1. On the other hand again from the initial marking M0 = [0 0 0 0 0 3 3]T when the firing sequence 2 = t5t5t6t6 occurs we obtain an illegal marking M2 = [0 0 0 2 2 1 1]T in which m(p4) = 2 and m(p5) = 2. As a result to enforce the constraint m(p1) ≤ 1 the illegal marking M2 has to be ruled out by a control place implementing m(p4) + m(p5) ≤ 3. When this is done the legal marking M1, where m(p4) + m(p5) = 4 is legal, will also be ruled out. This is just one case showing that in this particular example enforcing the constraint with a set of monitors will rule out some legal markings. Therefore there is no optimal solution to this problem. We can conclude that when N ≥ 3 the constraint m(p1) ≤ 1 can NOT be enforced optimally on the Petri net shown in Fig. 10 by a set of control places (monitors). In addition, the control place pc1 or pc2 of [1] enforces the constraint m(p1) ≤ 1 suboptimally in all cases, i.e. when N= 2, 3, 4, ... . At this point it is worth mentioning that in the literature there is a mixed Petri net/Automata method for enforcing such constraints on this kind of nets optimally by means of a compiled supervisor (consisting of only net components) proposed in [6, 9]. t5
t6
p4
p5 t4
t3 p6
N
p2
p3
N p7
t2 p1 t1
Fig. 10. A Petri net with different initial markings (N=1, 2, 3, ...). For the second point to be discussed, let us consider again the Petri net shown in Fig. 10 this time with the constraint to be enforced m(p1) ≤ N1, N = 2, 3, 4, ... . Table 5 shows the details of what is to be done. It can be seen that there are infinite number of different cases with infinite number of different constraint to be enforced. Fig. 11 shows the control place C which can enforce each constraint optimally. Of course this is the generalization of the solution 2 as explained in the previous section. This also shows that there may be a lot of cases in which an optimal solution may exist to the problem of computing a monitor based controller to enforce a GMEC on a plant net in presence of uncontrollable transitions.
13
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
2 C 2N-1 t5
t6
p4
p5 t4
t3 p6
N
p2
p3
N p7
t2 p1 t1
Fig. 11. The constraint m(p1) ≤ N1, N=2, 3, 4, ... is enforced optimally by the monitor C on the Petri net shown in Fig. 10. Table 5. GMECs to be enforced for different values of N. N GMEC to be enforced 2 m(p1) ≤ 1 3 m(p1) ≤ 2 4 m(p1) ≤ 3 5 m(p1) ≤ 4 . . . . Now, finally let us consider the case in which a monitor solution has arcs going to an uncontrollable transition. According to [1], “the structural controllability condition requires that no monitor place has arcs going to an uncontrollable transition so that it may never prevent its firing”. Thus, according to [1] arcs directed from monitor places to uncontrollable transitions have to be avoided. Actually, this statement is not true as explained here. There may be some monitors with arcs going to an uncontrollable transition. For example consider the first set of control places, namely C1, C2, C3 and C4, provided in this paper. The weighted arc Post(C2,t2) is directed from control place C2 to uncontrollable transition t2, the arcs Post(C3,t2) and Post(C3,t3) are directed from the control place C3 to uncontrollable transitions t2, and t3 respectively, and the arcs Post(C4,t2) and Post(C4,t4) are directed from the control place C4 to uncontrollable transitions t2 and t4 respectively. According to [1], these three monitors should not provide the optimal solution for enforcing the GMEC m(p1) ≤ 1 on the Petri net shown in Fig.1. On contrary, it is shown that the first set of control places, namely C1, C2, C3 and C4 enforce the GMEC m(p1) ≤ 1 optimally on the Petri net shown in Fig. 1. As a matter of the fact that this set of monitors having arcs going to
14
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
uncontrollable transitions is not the first of its kind to show this fact. An earlier example showing that a monitor solution can have arcs going to an uncontrollable transition is reported in [10]. Fig. 12.(a) shows the Petri net model (PNM) of a flexible manufacturing system (FMS) taken from [10]. In the PNM there are fifteen places, P = {p1, p2, …, p10, R1, R2, M1, M2, M3} and eleven transitions, T = {t0, t1, t2, …, t10}. In the PNM only transitions t1, t2, and t10 are controllable. It can be shown that this system suffers from deadlock problem and for this system the specification is to obtain the live system behavior. The optimal (maximally permissive) controller, consisting of three control places, namely pc1, pc2 and pc3, computed in [10] is depicted in Fig. 12.(b). When the controller is augmented with the uncontrolled PNM, the controlled model shown in Fig. 12.(c) is obtained. It is reported in [10] that the controlled model shown in Fig. 12.(c) can produce the optimal live behaviour with 215 good states. As can be seen from Fig. 12.(b), the arc Post(pc2,t9) is directed from control place pc2 to uncontrollable transition t9, and the arc Post(pc3,t4) is directed from the control place pc3 to uncontrollable transition t4. It is shown in [10] that despite the fact that there are some monitors with arcs going to an uncontrollable transition within the controller, actually it does not disable any uncontrollable transition. t0 R1 p2 t1
t2
t7
M1
M3
t2
p3 p4 t3
t4
t8 R2
p1
pc1
p7
t8
t4
p5
p8
t5
t9
M2
p10
pc2 t5
p9
p6
t9 pc3
t6
t10
a)
b) t0 R1 p2 t1
t2
pc1 t7
M1
M3 p3 p4 t3 p1
p7 pc2
t4 p5
p6 t6
p8
R2
t5
pc3 M2
t8 p10
t9 p9 t10
c) Fig. 12. a). Petri net model (PNM) of an FMS taken from [10]. b). Three control places computed in [10]. c). Controlled model.
15
M. Uzam , “On Suboptimal Supervisory Control of Petri Nets in Presence of Uncontrollable Transitions via Monitor Places,” The International Journal of Advanced Manufacturing Technology, DOI 10.1007/s00170-009-2219-0, vol. 47, numbers 5-8, pp. 567-579, March 2010.
5. Conclusions and future research It was claimed in [1] that “there is not an optimal solution to the problem of computing a monitor based controller to enforce a GMEC on a plant net in the presence of uncontrollable transitions”. This paper shows that there may exist some GMEC enforcing problems which can allow an optimal solution to the problem of computing a monitor based controller on a plant Petri net with uncontrollable transitions. In addition, it was claimed in [1] that arcs directed from monitor places to uncontrollable transitions have to be avoided. However, it is shown in this paper that it is possible to obtain optimal solutions for enforcing CMECs on Petri net models with monitors having arcs directed from monitor places to uncontrollable transitions. On the other hand to our best knowledge there is no general method to carry out the correctness analysis of such monitors. Therefore, it is necessary to carry out some research in this direction. It is also expected that the results provided here would take some attention to the subject of supervisory control of Petri nets via monitor places, in the presence of uncontrollable transitions. Acknowledgment This work was supported by the research grant of The Scientific and Technological Research Council of Turkey (Türkiye Bilimsel ve Teknolojik Araştırma Kurumu - TÜBİTAK) under the project number TÜBİTAK-107E125. The authors would like to thank the Associate Editor and anonymous reviewers for their thoughtful comments and suggestions that greatly helped to improve the presentation and technical quality of this paper. References 1. Basile F, Chiacchio P, and Giua A (2006) Suboptimal supervisory control of Petri nets in presence of uncontrollable transitions via monitor places. Automatica, 42(6), 995-1004. 2. Ghaffari A, Rezg N, & Xie X (2003) Feedback control logic for forbidden-state problems of marked graphs: application to a real manufacturing system. IEEE Transactions on Automatic Control, 48(1), 18-29. 3. Murata T (1989) Petri nets: properties, analysis and application. Proceedings of IEEE, 44, 541579. 4. Ramadge PJ & Wonham WM (1989) The control of discrete event systems. Proceedings of IEEE, 77(1), 81-98. 5. Uzam M & Wonham WM (2004) Comments on “Feedback control logic for forbidden-state problems of marked graphs: application to a real manufacturing system”. IEEE Transactions on Automatic Control, 49(7), 1216-1217. 6. Uzam M & Wonham WM (2006) A Hybrid approach to supervisory control of discrete event systems coupling RW supervisors to Petri nets. International Journal of Advanced Manufacturing Technology, 28(7-8), 747-760. 7. Yamalidou K, Moody J, Lemmon M, and Antsaklis P (1996) Feedback control of Petri nets based on place invariants. Automatica, 32(1), 15-28. 8. PN-TOOLS (1996), A Petri net analysis tool, version 1.0, Pedagogical University of Rzesów, Polland, 1987-1996. 9. Uzam M & Gelen G (2009) The real-time supervisory control of an experimental manufacturing system based on a hybrid method. Control Engineering Practice, doi:10.1016/j.conengprac.2009.05.004. 10. Ghaffari A, Rezg N and Xie XL (2003) Design of a live and maximally permissive Petri net controller using the theory of regions. IEEE Transactions on Robotics and Automation, 19(1), 137– 142.
16