In this paper, we discuss a supervisory control problem of modular discrete-event systems that allows for a distributed computation of supervisors. We provide a characterization and an algorithm to compute the supervisors. If the specification does not satisfy the properties, we make use of a relaxation of coordination control to compute a sublanguage of the specification for which the supervisors can be computed in a distributed way.
I. INTRODUCTION AND MOTIVATIONWe investigate distributed supervisory control of concurrent discrete-event systems. Supervisory control theory of discrete-event systems modeled as finite automata was introduced by Ramadge and Wonham [24] and studied by many others. It aims to guarantee that the control specifications consisting of safety and of nonblockingness are satisfied in the controlled (closed-loop) system. Safety means that the language of the closed-loop system is included in a prescribed specification, and nonblockingness means that all controlled behaviors can always be completed to a marked controlled behavior. Supervisory control is realized by a supervisor that runs in parallel with the system and imposes the specification by disabling, at each state, some of the controllable events in a feedback manner. Since only controllable specifications can be achieved, one of the key issues is the computation of the supremal controllable sublanguage of the specification, from which the supervisor can be constructed.Supervisory control theory is well developed for monolithic systems, i.e., systems where the plant is modeled as a single generator. However, most of the current complex engineering systems can be abstracted as a composition of many components. Systems that model technological systems typically consist of small generators that communicate with each other in a synchronous [5] or asynchronous [7] way. Such systems are often called modular (or concurrent or distributed) discrete-event systems. It is known that to compute the overall monolithic plant for such a system can be unrealistic because the number of states of a modular system grows exponentially with respect to the number of components. This limits the applicability of the monolithic supervisory control synthesis to relatively small systems. On the other hand, the purely decentralized control consisting of an independent construction of a supervisor for each subsystem is only applicable for a local (decomposable) specification.Specifically, let G 1 and G 2 be two systems over the respective alphabets Σ 1 and Σ 2 modeled as finite generators forming the overall plant G 1 G 2 , the computation of which we want to avoid, and let K ⊆ L m (G 1 G 2 ) denote a specification. There exists a monolithic supervisor for the monolithic plant G 1 G 2 if and only if the specification is controllable with respect to the plant. However, to avoid the computation of the monolithic plant G 1 G 2 , the naive approach to compute supervisors for each subsystem separately does not work in general. To demonstrate this, assume tha...