Skip to Main Content
Most of the research devoted to the supervisory control for deadlock avoidance in automated manufacturing systems has employed various models that represent concurrent sequential processes. In this paper, we address this problem for compound processes, that is, sequences of operations related in the fork/join manner and interacting as consumers/producers. The abstraction is used to model the flow of materials where independently processed components can be joined together and undergo further processing as a whole (e.g., to make an assembly or for a common transport), or material units can be split up so that their components will follow separate routes (e.g., at disassembly or separate processing of parts delivered in magazines), as well as to model the flow of objects that require a temporary meeting (e.g., independently routed pallets with the base components and pallets with parts to be mounted onto the base). Each process is represented with a marked graph, and the dynamics of the system are restricted with a feasibility function ensuring the feasible access to the shared resources. Unlike in sequential processes, in the class considered here, not all processes are realizable, i.e., possess a deadlock-free execution sequence. We prove that the problem of the distinction between realizable and unrealizable systems is NP-complete (thus intractable in practice) and propose a constraint that in a sufficient way allows us to distinguish a subclass of realizable compound processes. It is shown that the optimal, i.e., the minimally restrictive, supervisory control for this subclass of processes also poses an NP-hard problem. Therefore, we propose a compromise solution: a more restrictive, yet computationally acceptable admissibility function for guarding the event occurrence. The correctness of the control is proved formally by demonstrating the liveness and reversibility of the resulting model.