A Seamless Framework for Control Function Generation
As we progress in time, the dependence and inseparability of our daily lives to computer and software systems grow rapidly; some transparent to many of us. It is therefore crucial to have efficient design of correct and well-functioning computer and software systems. From a practical point of view, the people in industry try to design a model of the system, served as a control function, that satisfies a given property.
Since this is typically carried out manually, it becomes a tedious, error-prone and time consuming process.
Supervisory Control Theory (SCT) is a framework that automatically generates a control function with certain properties, which can lead to a less time consuming process with less number of errors and bugs. Despite many benefits that can be gained by utilizing SCT, still, the control functions are mostly designed manually in the industry. The main reason is that SCT is not adapted to industrial work procedures and practices. Essentially, neither the required input nor output format conform to industrial standards.
In this thesis, a seamless framework is proposed that, based on SCT, automatically generates control functions interpretable both by humans and machines. More specifically, the user initially models the behavior of the system and the desired property that together serve as the input of the framework. The model will then be manipulated by different algorithms and the control function will be computed and represented by adding some restrictions to the initial models. The key point is that both the input and output of the framework are modeled by the same modeling formalism, which is considered as the seamlessness property of the framework. The restrictions that are attached to the initial models are represented by tractable logic conditions, which are interpretable by the designers and can be easily implemented in hardware, e.g. programmable logic controllers.
In the proposed framework, the systems are modeled by automata that are a type of state-transition models. Hence, for complex systems, the number of states representing the entire system can become very large. Obviously, representing and enumerating all of the states explicitly is computationally very expensive both in terms of time and memory. To tackle this problem, all the representations and computations in this thesis are based on binary decision diagrams that are powerful data structures for representing Boolean functions. The framework has been developed, implemented, and applied to industrial examples.
Discrete Event Systems
Supervisory Control Theory
Deterministic Finite Automata
Binary Decision Diagrams
Extended Finite Automata