A Refined Siphon-Based Deadlock Prevention Policy for a Class of Petri Nets

Resource allocation systems (RASs) exist in various fields of modern society. The deadlock control problem is a crucial issue in control theory of RAS. This work is concentrated on a special class of shared resource and process-oriented Petri nets whose initial marking can have only a token in every resource place. Using mixed-integer programming (MIP) and iterative siphon control, we present a two-stage deadlock prevention policy. In particular, a modified MIP technique is developed for the first stage to compute a specific type of emptiable siphons and a siphon control method introducing monitors with related arcs whose weights all equal to one is established in the second stage. This policy leads to a maximally permissive liveness-enforcing supervisor and such an obtained controlled net is ordinary. Moreover, it avoids the exhaustive enumeration of siphons and the reachability analysis. Examples are provided to explain the policy.