Figure 4: The evolution of the Pruning Graph according to Algorithm 1 and Algorithm 2.
5. Take o node v
i
- replicable resource, from V
which is connected to e
j
in PG;
6. Modify N according to the Algorithm1;
7. Remove all arcs between v
i
and the nodes
next to it in PG;
8. Remove v
i
and put v
1
i
and v
2
i
;
9. W S = W S \ {e
j
}
10. Endwhile
11. Endwhile
From the the two algorithms above, it can be seen
that if the Pruning Graph is acyclic then the S
3
PR net
is live. But, in the most cases, the Pruning Graph has
cycles which have to disappear. The Pruning Graph
of the S
3
PR net from Figure 2 is depicted in Figure 3.
The S
3
PR net has three siphons: S
1
= {P
1
, PW, P
7
},
S
2
= {P
3
, S, P
6
} and S
3
= {P
4
, Dr, P
5
}. The goal of
the approach is to split the siphons. Because of the
restriction we put at the beginning, the siphon S
2
can
not be split because it contains an un-replicable re-
source. For the rest of the siphons where all the re-
sources are replicable the order we split the siphons
is random (until now it does not exist an algorithm to
describe the order the siphons have to be split). In this
example we consider that first we split siphon S
1
and
after that we split siphon S
3
. After these two splits,
the pruning graph become acyclic, so the algorithm
stops.
5 CONCLUSIONS
In this paper, based on the fact that deadlocks in S
3
PR
nets are related to unmarked siphons, we propose a
new approach to prevent the deadlock appearance.
The main contribution of this paper lies in the fact
that uses the advantages of the previous work on dead-
lock prevention, and introduce the concept of replica-
ble/unreplicalbe resources. The idea is to modify (by
splitting resource places) the petri net so in the corre-
sponded pruning graph will not left any strongly con-
nected components. One advantage for this method is
that we work with high level objects (siphons). Fur-
ther research may extend this algorithm to more gen-
eral nets as S
4
PR.
REFERENCES
Cano, E. E., Rovetto, C. A., and Colom, J. M. (2010). On
the computation of the minimal siphons of s
4
pr nets
from a generating family of siphons. In ETFA, pages
1–8.
Chao, D. Y. (2010). A simple modification of deadlock pre-
vention policy of s3pr based on elementary siphons.
In Transactions of the Institute of Measurement and
Control, volume 33, pages 93–115.
Ezpeleta, J., Colom, J.-M., and Martinez, J. (1995). A petri
net based deadlock prevention policy for flexible man-
ufacturing systems. IEEE Transactions on Robotics
and Automation, 11:173–184.
Garey, M. and Johnson, D. (1993). Crossing number is np-
complete. SIAM Journal of Algebraic and Discrete
Methods, 4:312–316.
Hou, Y., Liu, D., Li, Z., and Zhao, M. (2010). Deadlock pre-
vention using divide-and-conquer strategy for ws3pr.
In International Conference on Mechatronics and Au-
tomation (ICMA), pages 1635–1640.
Lee, J.-S., Zhou, M.-C., and Hsu, P.-L. (2005). An appli-
cation of petri nets to supervisory control for human-
computer interactive systems. In IEEE Transactions
on Industrial Electronics, volume 52, pages 1220–
1225.
Li, Z. and M., S. (2008). On the existence of a maxi-
mally permissive liveness-enforcing petri net supervi-
sor for flexible manufacturing systems. In IEEE In-
ternational Conference on Networking, Sensing and
Control (ICNSC), pages 90–95.
Reveliotis, S. A. (2007). Implicit siphon control and its role
in the liveness-enforcing supervision of sequential re-
source allocation systems. IEEE Transactions on Sys-
tems, Man, and Cybernetics, Part A, 37(3):319–328.
Tricas, F. (2003). Deadlock analysis, prevention and avoid-
ance in sequential resource allocation systems. PhD
thesis, University of Zaragoza, Zaragoza.
Wang, S., Wang, C., and Yu, Y. (2010). An algorithm to find
the condition on initial markings of resource places
and job places for liveness of s3pmr. In 8th IEEE
International Conference on Control and Automation,
pages 1445–1449.
ANewApproachtoPreventDeadlockinS3PRNetswithUnreplicableResources
109