**5. Application of Reachability Criterion**

An example will be given to illustrate how to use the proposed method of Algorithm 1 and Algorithm 2 to solve the reachability problem.

**Example 4.** When the initial marking is **M**0=(1,0,0,0,0,0,0,0,1) in the PN of Figure 5, is the destination marking **M**d=(0,0,1,0,1,0,0,0,1) reachable from **M**0 ?

First, calculate sufficient test space using the following steps:

**Step 1.** Solve the equation **AX**=0, get one positive integer minimal T-invariant **U**=(0,0,0,0,0,0,1,1).

**Step 2.** Solve the equation **AX**=**M**d-**M**0, get the positive integer minimal particular solutions **V**1=(0,2,1,0,2,2,0,0), **V**2=(2,2,1,2,0,0,0,0) and **V**3=(1,2,1,1,1,1,0,0)

**Step 3.** Initialization: Let Xe={**V**1, **V**2, **V**3}, Xtemp=Φ, B=Xe

**Step 4-1.** For (**V**1, **U**),

Reachability Criterion with Sufficient Test Space for Ordinary Petri Net 435

p8

p7

t7

t8

p9

p1

t4 t1

p2

p3t3

If T(**U**) T(**V**1), then **D**1=**V**1-max(**V**1)**U**, **W**1(r)=f(**D**1(r)),

8

r 1

Then add **V**1+**U**, **V**1+2**U** to Xtemp. Then, Xtemp={**V**1+**U**, **V**1+2**U** } For (**V**2, **U**), because T(**V**2)∩T(**U**) =Φ, choose the next pair.

If T(**U**) T(**V**3), then **D**3=**V**3-max(**V**3)**U**, **W**3(r)=f(**D**3(r)),

8

r 1

Then add **V**3+**U** to Xtemp, Xtemp={**V**1+**U**, **V**1+2**U**, **V**3+**U**}

**Step 4.** For any pair of (**B**i, **U**), because T(**U**j) T(**B**i), Xtemp=Φ.

The implementing process is shown in Figure 6.

**Step 5-1.** If Xtemp≠Φ, then let B=Xtemp={**V**1+**U**, **V**1+2**U**, **V**3+**U**},

p4

p5

**Figure 5.** Petri net structure

For (**V**3, **U**),

**Step 5.** If Xtemp=Φ, then end.

**Step 1.** For **X**=**V**1=(0,2,1,0,2,2,0,0)

some element in Xe

t6

t5

t2

1 r

3 r

( (r) {p|p t T( ) } ) 1

Xe=XeB={**V**1, **V**2, **V**3, **V**1+**U**, **V**1+2**U**, **V**3+**U** }. Let's put Xtemp=Φ. Go to Step 4 in Algorithm 1.

Consequently, the sufficient test space becomes Xe={**V**1, **V**2, **V**3, **V**1+**U**, **V**1+2**U**, **V**3+**U**}. Second, calculate a firing sequence in order to test if M(d) is reachable from M(0) under

The elements of the sufficient test space Xe are calculated separately as follows:

**<sup>W</sup> <sup>U</sup>**

( (r) {p|p t T( ) } ) 2

**<sup>W</sup> <sup>U</sup>**

p6

**Figure 4.** Firing path tree on reachability of Figure 3.

**Figure 5.** Petri net structure

434 Petri Nets – Manufacturing and Computer Science

**Figure 4.** Firing path tree on reachability of Figure 3.

If T(**U**) T(**V**1), then **D**1=**V**1-max(**V**1)**U**, **W**1(r)=f(**D**1(r)),

$$\sum\_{\mathbf{r}=1}^{8} (\mathbf{W}\_1(\mathbf{r}) \cdot \left| \{ \mathbf{p} \mid \mathbf{p} \in \,^\circ \mathbf{t}\_\mathbf{r} \cap \mathbf{T}(\mathbf{U}) \,^\circ \} \right| = 2$$

Then add **V**1+**U**, **V**1+2**U** to Xtemp. Then, Xtemp={**V**1+**U**, **V**1+2**U** }

For (**V**2, **U**), because T(**V**2)∩T(**U**) =Φ, choose the next pair.

For (**V**3, **U**),

If T(**U**) T(**V**3), then **D**3=**V**3-max(**V**3)**U**, **W**3(r)=f(**D**3(r)),

$$\sum\_{\mathbf{r}=1}^{8} \langle \mathbf{W}\_3(\mathbf{r}) \cdot \left| \{ \mathbf{p} \mid \mathbf{p} \in \prescript{\circ}{}{\mathbf{t}}\_{\mathbf{r}} \cap \mathbf{T}(\mathbf{U})^{\circ} \} \right| \rangle = 1$$

Then add **V**3+**U** to Xtemp, Xtemp={**V**1+**U**, **V**1+2**U**, **V**3+**U**}

**Step 5-1.** If Xtemp≠Φ, then let B=Xtemp={**V**1+**U**, **V**1+2**U**, **V**3+**U**},

Xe=XeB={**V**1, **V**2, **V**3, **V**1+**U**, **V**1+2**U**, **V**3+**U** }. Let's put Xtemp=Φ. Go to Step 4 in Algorithm 1.

**Step 4.** For any pair of (**B**i, **U**), because T(**U**j) T(**B**i), Xtemp=Φ.

**Step 5.** If Xtemp=Φ, then end.

Consequently, the sufficient test space becomes Xe={**V**1, **V**2, **V**3, **V**1+**U**, **V**1+2**U**, **V**3+**U**}.

Second, calculate a firing sequence in order to test if M(d) is reachable from M(0) under some element in Xe

The elements of the sufficient test space Xe are calculated separately as follows:

**Step 1.** For **X**=**V**1=(0,2,1,0,2,2,0,0)

The implementing process is shown in Figure 6.

**Step 2.** For **X**=**V**2=(2,2,1,2,0,0,0,0)

Carrying out the same process, the conclusion is as follows: Md is not reachable under **V**2.

**Step 3.** For **X**=**V**3=(1,2,1,1,1,1,0,0)

Carrying out the same process, the conclusion is as follows: Md is not reachable under **V**2.

**Step 4.** For **X**=**V**1+**U**=(0,2,1,0,2,2,1,1)

Carrying out the same process shown in Figure 7, the conclusion is as follows: Md is reachable from M0 under **V**1+**U. V**1+**U** is an executable solution in Xe, and the firing sequence is t5\*t7\*t6\*t2\*t3\*t5\*t6\*t2\*t8.

As a result of calculating each element of the sufficient test space Xe={**V**1, **V**2, **V**3, **V**1+**U**, **V**1+2**U**, **V**3+**U**} individually, a firing sequence is finally found at the fourth element (**V**1+**U**) of Xe**.** Therefore, the elements **V**1+2**U** and **V**3+**U** don't need to be calculated. Consequently, the structure of the Petri net (Figure 5) is shown to possess at least one reachable firing sequence.

Reachability Criterion with Sufficient Test Space for Ordinary Petri Net 437

**Figure 7.** Firing path tree for **V**1+**F**.

In this chapter, a new general criterion has been created to solve the reachability problems for ordinary Petri nets. This criterion is based on two processes: (i) Calculating the sufficient test space. (ii) Testing whether or not the destination marking is reachable from the initial marking under the sufficient test space. The sufficient test space significantly reduces the quantity of computation needed to search for an executable solution in X. The firing path tree shows the firing sequence of an executable solution. Consequently, if the destination marking is reachable from the initial marking, this method gives at least one firing sequence that leads from the initial marking to the destination marking. Some examples are given to illustrate how to use this method to solve the reachability problem. This algorithm can be utilized in the following fields: Path searching, auto routing, and reachability between any places in a complicated network.

*Research Institute of Industrial Science & Technology, Pohang, Korea* 

**6. Conclusions** 

**Author details** 

Gi Bum Lee

**Figure 6.** Firing path tree for **V**1.

Reachability Criterion with Sufficient Test Space for Ordinary Petri Net 437

**Figure 7.** Firing path tree for **V**1+**F**.
