*2.1. S3PR NET*

**Definition 1.** *A simple sequential process (S2P) is a Petri net model with N* = *({p0}* ∪ *PA, T, F) if (1) N is a strongly connected state machine and (2) each circuit N contains place p0, where p0 is a process idle place, PA* = *{p1, p2,* ... *, pm} is a set of operation places, T* <sup>=</sup> *{t1, t2,* ... *, tn} is a set of transitions, PB* <sup>=</sup> *PA* ∪ *{p0}, PB* ∩ *T* = ∅*, PB* ∪ *T* - <sup>∅</sup>*, and F: (PB* <sup>×</sup> *T)* <sup>∪</sup> *(T* <sup>×</sup> *PB)* <sup>→</sup> *IN is a set of weighted arcs called flow relations, where IN* = *{0, 1, 2,* ... *}.*

**Definition 2.** *A simple sequential process with resources (S2PR) is a Petri net model with N* = *({p0}* ∪ *PA* ∪ *PR, T, F) if*


**Definition 3.** *Let N* <sup>=</sup> *({p0}* ∪ *PA* ∪ *PR, T, F) be an S2PR with Mo being an initial marking of net N. An S2PR is called acceptably marked if (1) Mo(p0)* ≥ *1, (2) Mo(p)* = *0,* ∀*p* ∈ *PA, and (3) Mo(r)* ≥ *1,* ∀*r* ∈ *PR.*

*Recursively, a system of S2PR is called an S3PR.*

**Definition 4.** *A system of S2PR, S3PR, is defined recursively as follows:*


*The integration of n S2PR N1-Nn via PD is expressed by* ⊗*<sup>n</sup> <sup>i</sup>*=1*Ni. Ni is used to indicate the S2P from which the S2PR Ni is built.*

**Definition 5.** *Let Ni* = *({p0 i}* ∪ *PAi* ∪ *PRi, Ti, Fi), i* <sup>=</sup> *{1, 2}, be two S3PRs. Mo is an initial marking of N. (N, Mo) is called acceptably marked if (1) (N, Mo) is an acceptably marked S2PR, and (2) N* <sup>=</sup> *N1* ◦ *N2, where (Ni, Mio) is called an acceptably marked S3PR and*


**Definition 6.** *Let N* <sup>=</sup> *({p0}* <sup>∪</sup> *PA* <sup>∪</sup> *PR, T, F, W, Mo) be an S3PR, where W: (PC* <sup>×</sup> *T)* <sup>∪</sup> *(T* <sup>×</sup> *PC)* <sup>→</sup> *IN is a mapping that assigns a weight to an arc and Mo: PC* <sup>→</sup> *IN is the initial marking.*

**Definition 7.** *Let N* <sup>=</sup> *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. N is said to be an ordinary net if p* ∈ *PC, t* ∈ *T,* ∀*(p, t)* ∈ *F, and W(p, t)* = *1.*

**Definition 8.** *Let N* <sup>=</sup> *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. N is said to be a weighted net if* ∃*<sup>p</sup>* ∈ *PC,* ∃*<sup>t</sup>* ∈ *T, (p, t)* ∈ *F, and W(p, t)* > *1.*

**Definition 9.** *Let N* <sup>=</sup> *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR, where p and t are a place and a transition in N, respectively. The preset (postset) of p is the set of all input (output) transitions of p, i.e.,* •*p* = *{t* ∈ *T* | *(t, p)* ∈ *F}(p*• = *{t* ∈ *T* | *(p, t)* ∈ *F}). The preset (postset) of t is the set of all input (output) places of t, i.e.,* •*t* = *{p* ∈ *PC* | *(p, t)* ∈ *F}(t*• = *{p* ∈ *PC* | *(t, p)* ∈ *F}).*

**Definition 10.** *Let N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. N is self-loop free if for all p, t* ∈ *PC* ∪ *T; W(p, t)* > *0 implies W(t, p)* = *0 and has a self-loop if W(t, p)* > *0.*

**Definition 11.** *Let N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR and M be a marking of N, where M is a mapping M: PC* <sup>→</sup> *IN and the pth element of M, expressed by M(p), is the number of tokens in place p.*

**Definition 12.** *Let N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. A transition t* ∈ *T is enabled if* ∀*p* ∈ •*t, M(p)* ≥ *W(p, t).*

**Definition 13.** *Let N* <sup>=</sup> *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. The marking M resulting from the firing of an enabled transition t* ∈ *T at marking M is denoted by M[tM and expressed as follows:*

$$M'(p) = \begin{bmatrix} M(p) + \mathcal{W}(p, t) & \text{if } p \in \,^\bullet t \,\vert t^\bullet \\ M(p) - \mathcal{W}(t, p) & \text{if } p \in t^\bullet \,\vert^\bullet t \\ M(p) + \mathcal{W}(t, p) - \mathcal{W}(p, t) & \text{if } p \in t^\bullet \cap \,^\bullet t \\ M(p) & \text{otherwise} \end{bmatrix} \tag{1}$$

**Definition 14.** *Let N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. R(N, M) is a set of reachable markings from M in N, which is expressed by nodes and arcs; nodes represent markings that are labeled with Mi and arcs represent transition firings that are labeled with t. If t fires, then there is an arc from marking Mi to marking Mj and Mj is reached.*

**Definition 15.** *Let N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. A transition t* ∈ *T is live at Mo if* ∀*M* ∈ *R(N, Mo),* ∃*M* ∈ *R(N, M) such that M [t holds. (N, M0) is dead at Mo if there does not exist t* ∈ *T such that Mo[t holds. (N, M0) is weakly live or live-locked if* ∀*M* ∈ *R(N, Mo),* ∃*t* ∈ *T, M [t holds. (N, M0) is quasi-live if* ∀*t* ∈ *T,* ∃*M* ∈ *R(N, Mo) such that M [t holds.*

**Definition 16.** *Let N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. [N] is said to be the incidence matrix of net N, where [N] is a* |*P*|×|*T*| *integer matrix with [N](p, t)* = *W(t, p)* − *W(p, t). For a place p (transition t), its incidence vector, a row (column) in [N], is expressed as [N](p, .) ([N](., t).*

**Definition 17.** *Let N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. A marking M is called reachable from M if there exists a sequence of transitions* δ = *t1 t2 t3* ... *tn that can be fired, and markings M1, M2, M3,* ... *, and Mn*−*<sup>1</sup> are such that M[toM1[t*1*M2[t*2*M3* ... *Mn [tnM holds, expressed as M[*δ*M , satisfies the state equation M* <sup>=</sup> *<sup>M</sup>* <sup>+</sup> *[N]* <sup>→</sup> δ *.* → <sup>δ</sup> *: T* <sup>→</sup> *IN is called a firing count vector or a Parikh vector that maps t in T to the number of occurrences of t in* δ*.*

**Definition 18.** *Let N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. N is said to be bounded if there exists <sup>q</sup>* <sup>∈</sup> *IN,* <sup>∀</sup>*<sup>M</sup>* <sup>∈</sup> *R(N, M0),* <sup>∀</sup>*<sup>p</sup>* <sup>∈</sup> *PC, M(p)* <sup>≤</sup> *q. (N, M0) is structurally bounded if it is bounded for any Mo.*

**Definition 19.** *LLet N* = *({p0}* ∪ *PA* ∪ *PR, T, F, W, Mo) be an S3PR. N is called safe if* ∀*M* ∈ *R(N, M0),* ∀*p* ∈ *PC, M(p)* ≤ *1. (N, M0) is q -safe if it is q-bounded.*L

Consider the example of AMS illustrated in Figure 1a. The system has one robot R1 and one machine M1. Machine M1 processes one part at a time and robot R1 holds one part at a time. There are buffers for loading/unloading. Furthermore, one part type is considered to be processed in the system. The part operation sequence is illustrated in Figure 1b. Figure 2 shows the S3PR net of the AMS example. It has six places and four transitions. The following sets of places can be used: *P<sup>0</sup>* = {*p1*}, *PR* = {*p*5, *p*6}, and *PA* = {*p*2, *p*3, *p*4}. There are five reachable markings on the Petri model. The initial marking is *Mo* = (5, 0, 0, 0, 1, 1)T, which represents the different raw parts that are to be processed synchronously within the system, including preconditions, input signals, buffers and resource status, such as machines and robot. Places are generally used to represent the resource status, operations, and activities. The transitions are used to express control changes from one state to another. Directed arcs correspond to the material, resource, information flow, and control flow direction between states. Material, information, and resources are represented by tokens.

**Figure 1.** (**a**) Automated manufacturing system (AMS) example and (**b**) operation sequence.

**Figure 2.** A system of (S2P) (simple sequential process) (S3PR) net of the AMS.
