Next Article in Journal
A Study on Certain Subclasses of Analytic Functions Involving the Jackson q-Difference Operator
Next Article in Special Issue
Multi-Disciplinary Computational Investigations on Asymmetrical Failure Factors of Disc Brakes for Various CFRP Materials: A Validated Approach
Previous Article in Journal
Parameter Learning of Bayesian Network with Multiplicative Synergistic Constraints
Previous Article in Special Issue
Petri-Net-Based Scheduling of Flexible Manufacturing Systems Using an Estimate Function
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Supervisory Control of Automated Manufacturing Systems Based on State-Tree Structures

School of Electrical and Control Engineering, Shaanxi Unversity of Science and Technology, Xi’an 710026, China
*
Author to whom correspondence should be addressed.
Symmetry 2022, 14(7), 1470; https://doi.org/10.3390/sym14071470
Submission received: 25 June 2022 / Revised: 10 July 2022 / Accepted: 13 July 2022 / Published: 18 July 2022

Abstract

:
The automated manufacturing systems (AMS) can be regarded as a resource allocation system which can be abstracted as discrete event systems (DES) for analysis. Once an effective computational method is put forward to the DES, the corresponding real AMS, connected by networks or sensors, can be indirectly controlled. Supervisory control theory (SCT) of DES is developed with the intention of discovering the maximally permissible supervisor of AMS. The state-tree structure (STS) is an extension of SCT, whose application is mainly to solve the SCT state explosion of complicated AMS. The nonblocking supervisory control is investigated on the foundation of predicates in STS, of which the synthesis focuses on the states of the system but ignores the transition between events. In order to effectively solve the above problems, this paper puts forward a novel method based on state feedback control (SFBC) in the STS framework, by which the relation among events is discussed. First, following the definition of the SFBC for predicates, the algorithms to compute the SFBC under reachability, coreachability, and weak controllability are introduced. Second, it is proved that the nonblocking SFBC obtained by the proposed algorithm is equivalent to the one by computing predicates first, which ensures the satisfactory controllers for the supervisory control problems. To demonstrate the contribution of the proposed approach, which is designed considering the symmetry of the system behavior between the real system and its STS model, three examples are illustrated.

1. Introduction

As the Industrial 4.0 is developing rapidly, automated manufacturing systems (AMS) have been extensively employed to achieve managing and manufacturing process automation. In the AMS, the human intervention operation is eliminated, and the management process and technological process are fully automated. To realize the supervision and control of this process, the cooperation of software and hardware equipment is necessary. Therefore, an effective supervisory controller is of vital importance to achieve the smooth operation of the AMS.
The AMS can be regarded as a resource allocation system, and the supervisory controller is responsible for supervising the resource allocation in the control system [1,2,3,4]. The trajectories of such systems in space and time are discrete, so it is able to be extracted as a discrete-event system (DES) before investigation [5,6,7,8,9,10,11,12,13]. In the 1980s, Ramadge and Wonham put forward SCT in their research, which is also regarded as the Ramadge–Wonham (RW) framework [14,15,16] that offers a mathematical method with the intention of analyzing and controlling DES. On the other hand, for systems with high complexity, the completion of analysis work must be based on large-scale automated model. Based on this, a key obstacle faced by SCT is state explosion due to the sophistication of the controllers. For the purpose of effectively solving this problem, Ma and Wonham proposed a novel DES framework, which is named state-tree structures (STS) [17,18]. The research found a method that can make full use of STS to complete DES modeling. Hierarchical state-tree as well as the dynamic module, which is named holons (inspired by [19]), can be used to describe its concurrency and hierarchy. Both for the horizontal and vertical level, STS is equipped with the corresponding structure to model the system. In addition, in order to offer a compact representation of state-tree, a binary decision diagram (BDD) is proposed [20]. BDD can lay a good foundation for the optimization of supervisory control calculation. The application of BDD is conducive to the improvement of calculation efficiency, and can also have a positive impact on the representation of complex models in [21,22]. For predicates, in the case of displaying BDD, the number of nodes of BDD can directly determine the complexity of the method used in [17], rather than the state size of the model. In the actual operation process, the size of states is much larger than that of BDD nodes, so the utilization of BDD in the calculation of the supervisors can obtain more effective results.
In the last few years, many scholars have conducted a lot of research on the basis of STS. Some supervisory control (SC) problems with observation are analyzed and discussed, and several subpredicates such as the weakly controllable, coreachable, and observable (WCCO) subpredicate are calculated so as to settle the STS control problem under various situations in [23,24]. In [25], an STS with conditional-preemption matrices (STSM) is put forward, which is a new STS framework and used to solve various priority problems. At the same time, the optimal non-blocking supervisory control is arranged in the STSM framework. In [26], the symmetry of DES, which has parallel components as well as fixed buffer sizes, is studied with the purpose of extracting the invariance of abstract control functions. In order to ensure the solution of the SC problem of real-time systems (RTS) to the greatest extent, the reference [27] proposes a new RTS modeling framework based on STS to guarantee that tasks with multiple periods can be effectively solved. In this study, priority-free conditionally-preemptive scheduling is utilized with the intention of describing and defining the preemption relationship between different items in RTS. The authors in [28] propose a top-down supervisor localization procedure, which creates the pure distributed control architecture of DES, so it plays a unique role in the control design of large-scale systems. A control logic–failsafe mechanism based on STS is proposed in [29] to solve the problem that dangerous flight maneuvers might be executed when unexpected failures or command conflicts happen. Similarly, to solve the complex system, the studies [30,31,32] develop the decentralized SC of DES by use of STS to manage state explosion, and an independent optimal (maximally permissible) supervisor is prepared by decomposing the specification of the controlled system into several sub-specifications. In addition, the reference [33] gives full play to the role of the nesting method to decompose STS and forms a group of STS nests. So to equip all nests with supervisors, this reference also extends the boundary consistency attributed to ensure that it can cover the supervision control of STS, with the intention of reducing the computational complexity of optimal supervisors. All these conclusions come from the analysis and synthesis of predicates, and the control functions are given by computing the optimal subpredicate, which is represented by BDD. This is of high efficiency to solve the control problems of DES. These studies investigate the computation of supervisors based on predicates representing a suit of state-trees, but lack the discussion of the relation among events under certain constraints.
As is known to all, in [14], a DES is modeled by a controlled automaton, and the formal language, which is produced by the automaton over an alphabet of event, labels the conduction of the DES. The computation of the supervisor is proposed in view of the formal language, which specifies the control strategy. In [17], after standing for predicates by BDD, the specification is given by illegal state-trees, and the supervisor is computed by analyzing if a state-tree satisfies certain conditions. Though the computational complexity of the supervisor is reduced substantially, the relation among events is not discussed. In some cases, two events can occur at one state. In [17], if the state is illegal, the two events are disabled simultaneously, which is not conducive to the analysis of the control functions. To fix this, in this paper, we aim to construct the control functions of controllable events by the means of analyzing the property of the state-feedback control (SFBC) of events for a predicate which is given under reachability, coreachability, and weak controllability, respectively. First, the definition of the SFBC of events for a given predicate is proposed, and the property of the SFBC for predicates are discussed. Second, the definition and computation of the SFBC under reachability, coreachability, and weak controllability are introduced, respectively. Meanwhile, it is proved that the SFBC obtained by the proposed algorithms in this paper is equivalent to the one by computing the subpredicates first, which implies that the controllers obtained based on SFBC are also equivalent to the one on predicates. In summary, by comparison to the study [17], we provide an approach to achieve the aim of resolving the supervisory control problem based on SFBC, which makes the control strategy clearer while ensuring the computation efficiency. Moreover, this paper lays a foundation for the following work since the SFBC of events (indicating the relation between state-trees and events) is very important to the synthesis of the natural projection, and this leads to the development of other research, such as observability and decentralization. Finally, the contribution is demonstrated by two examples: Transfer Line and Small Factory. In addition, Small Factory, with the specification represented by the SFBC with one event disabled at a state-tree, is described with the intention of clarifying the devotion of this research.
The reminder of this study is structured as below. Section 2 is aimed at introducing the background of the STS model, and Section 3 explains the definition and properties of the SFBC of events for predicates. Section 4 emphatically studies the SFBC under reachability, coreachability, and weak controllability, respectively. Algorithms are introduced to compute the SFBC under certain constraints. Section 5 investigates the nonblocking SFBC for a given STS, which also shows the satisfactory solution for supervisory control problems. Section 6 presents three examples, which are Transfer Line, Small Factory, and Guide Way. Section 7 discusses the advantages and disadvantages of this paper. At last, Section 8 comes to a conclusion of this study.

2. Concepts and Terminologies

2.1. Sts Model

This chapter first analyzes and explains the state-tree structures (STS). The state-tree includes two structures, namely horizontal and vertical structure. Secondly, the holon is a local transition graph (see Section 2.1.2) and is assigned to state-tree or OR superstate. Then, the complete form of STS is described, which is the state-tree as well as its related set consisting of holons.

2.1.1. State-Tree

The four-tuple ( X , x 0 , T , E ) is considered to be a state-tree, where
  • X is a structured state set, of which the number is limited;
  • x 0 X is a particular state which is named the root state;
  • T : X { a n d , o r , s i m p l e } is the type function;
  • E : X 2 X is the expansion function, where x X , Ø Y X and x Y ;
                         E ( x ) = Y , if T ( x ) { a n d , o r } Ø , if T ( x ) = s i m p l e .   
An AND superstate x is used to stand for the Cartesian product of its component, while the OR superstate is for the disjoint union. In fact, the AND superstate implies that its components can be reached simultaneously, while the OR superstate means the exclusion of its components. Shutting off the branches (but not all) which are rooted by OR superstates generates a sub-state-tree whose function is similar to a subset of states in a generator. Especially, a basic-sub-state-tree ensures that every OR superstate must own one component. B ( S T ) stands for the basic-sub-state-tree set of S T . What is more, as the sub-state-tree can be regarded as a state-tree, “sub-state-tree” is able to be expressed as “state-tree”.

2.1.2. Holon

A Holon H is described as H : = ( X , Σ , δ , X 0 , X m ) , where
  • X is the non-null state set, organized as the nonintersecting combination of X E and X I , which are the external and internal state set;
  • Σ is the event set, which is structured as the nonintersecting combination of Σ B and Σ I , which are the boundary and internal event set, i.e., Σ = Σ B ˙ Σ I ; the event set can also be seen as Σ = Σ u ˙ Σ c , where Σ u is the uncontrollable event set and Σ c is the controllable event set;
  • The transition structure  δ : X × Σ X is a partial function; this shows the transition between the states in the holon;
  • X 0 X I is the initial state set;
  • X m X I is the terminal state set.

2.1.3. State-Tree Structures

Definition 1.
The six-tuple ( S T , H , Σ , Δ , S T 0 , S T m ) is considered to be a state-tree structure, where
  • S T : = ( X , x 0 , T , E ) is a state-tree.
  • H : = { H a | T ( a ) = o r & H a = ( X a , Σ a , δ a , X 0 a , X m a ) } is a set of holons which can be matched to OR superstate of S T , in which a is an OR superstate and H a is the matching objective for holon, which is to say, H a portrays the dynamics among units of a as well as the transitions between the upper holon and H a .
  • Σ : = H a H Σ I a is the event set which consists of all events that happens in H , in which Σ I a represented the internal event set of H a .
  • Δ : S T ( S T ) × Σ S T ( S T ) is the transition function, in which S T ( S T ) stands for the set of sub-state-trees of S T . This is the global transition function, which is different from δ.
  • S T 0 S T ( S T ) is the initial sub-state-tree.
  • S T m S T ( S T ) is the marker sub-state-tree set.
Similarly, Γ : S T ( S T ) × Σ S T ( S T ) represents a sub-state-tree of S T into another sub-state-tree. Γ ( T , σ ) is the source-state-tree that, upon the occurrence of event σ , transforms to a sub-state-tree of T.

2.2. Predicate

Predicate P described on B ( S T ) in [17] is regarded as a function P : B ( S T ) { 0 , 1 } . A predicate is able to be recognized by a set of basic-state-trees, named as B P , thus
B P : = { b B ( S T ) | P ( b ) = 1 } B ( S T ) .
P 1 P 2 or P 1 is stronger compared to P 2 indicates that b P 1 b P 2 . Quite the opposite, we can find that P 2 is weaker than P 1 . In other words, P 1 P 2 means that P b P 1 P b P 2 , where b satisfies P b only. Furthermore, P holds for S T 1 , for example, S T 1 P iff B ( S T 1 ) B P .
What is more, R ( G , P ) is the reachability predicate [17], and it is proposed with the intention of indicating all the basic state-trees reachable form the initial basic state-tree via state-trees satisfying P.
R ( G , · ) is monotone, i.e., P Q implies R ( G , P ) R ( G , Q ) . Similarly, C R ( G , P ) is the coreachablity predicate met with the basic state-trees that is able to reach the marker basic state-tree along state-trees satisfying P. As far as fixed G, C R ( G , · ) : P r e d ( S T ) P r e d ( S T ) is a predicate transformer. Clearly, C R ( G , P ) P and C R ( G , · ) is monotone.
As is analyzed in [17], the weak controllability of predicates is defined instead of the controllability. By ignoring the condition P R ( G , P ) of the controllability, the calculation expanse is much declined, which is proved to be reasonable since the weak controllability of a predicate P implies the controllability of R ( G , P ) .
Predicate P is weakly controllable if any event that cannot be controlled takes place at state-trees satisfying P, then the consequential state-trees also satisfy P [17]. This is able to be written as
( σ Σ u ) b P Δ ( b , σ ) P .
Let C P ( P ) represent the set of weakly controllable subpredicates which are stronger compared to P by
C P ( P ) : = { K P r e d ( S T ) | K P & ( σ Σ u } ) b K Δ ( b , σ ) K } .
The weakest element sup C P ( P ) exists, which indicates that the supremal weakly controllable subpredicate of P exists with sup C P ( P ) = { K | K C P ( P ) } .
Moreover, the nonblockingness of a predicate P is confirmed if R ( G , P is stronger compared to C R ( G , P ) . P is coreachable if P C R ( G , P ) , which indicates the nonblockingness of P, as R ( G , P ) P C R ( G , P ) generally. Considering the coreachability and weakly controllability, as far as predicate P, let C 2 P ( P ) represent the set of the subpredicates of P that are weakly controllable, coreachable, and stronger than P [17], i.e.,
C 2 P ( P ) : = { K P r e d ( S T ) | K P & K C R ( G , K ) & ( σ Σ u ) b K Δ ( b , σ ) K } .
In particular, a (unique) supremal element sup C 2 P ( P ) exists in C 2 P ( P ) , which is given by
sup C 2 P ( P ) = { K | K C 2 P ( P ) } .
Notice that the reachability subpredicate of sup C 2 P ( P ) agrees on the reachability subpredicate of the optimal nonblocking controller, which shows the supremal controller of the supervisory control problems.
The control behavior of an STS is carried out by the utilization of state feedback control (SFBC) [17], and it is described by a set of predicates. Let f : B ( S T ) Π be an SFBC for G , in which Π : = { Σ Σ | Σ u Σ } . For σ Σ , clarify a control function (a predicate) f σ : B ( S T ) { 0 , 1 } on the basis of f σ ( b ) = 1 iff σ f ( b ) . As a result, the synthesis of the supervisor is carried out by { f σ | σ Σ c } . In consideration of an event σ Σ c , f σ ( b ) = 1 (respectively, 0) indicates that event σ is allowed (respectively, not allowed) to occur at b. f σ is defined to be equal to 1 for σ with σ Σ u .
The STS G under f is depicted as G f = ( S T , H , Σ , Δ f , P 0 f , P m f ) , where P 0 f = R ( G f , t r u e ) P 0 , P m f = R ( G f , t r u e ) P m , and Δ f ( b , σ ) = Δ ( b , σ ) if f σ ( b ) = 1 . Or else, Δ f ( b , σ ) = Ø . If R ( G f , t r u e ) is stronger than C R ( G f , t r u e ) , the SFBC f is nonblocking. Moreover, if P is weakly controllable and coreachable, it is proved that there does exist a nonblocking SFBC f with R ( G f , t r u e ) = R ( G , P ) .
Example 1.
For a small task which must be performed by two machines R _ 1 and R _ 2 , each machine has three states “Idle”, “Work”, and “Breakdown”, and the transition between these states are represented by events α, γβ, λ, μ, and η. α stands for a workpiece arriving machine R _ 1 and γ for machine R _ 2 . The occurrence of β signifies the processing complete. λ is used to represent the damage of the machine, while μ (respectively, η) stands for the repair of machine R _ 1 (respectively, R _ 2 ). Its STS G = ( S T , H , Σ , Δ , P 0 , P m ) is depicted with the state-tree shown in Figure 1 and holons shown in Figure 2.
For the state-tree shown in Figure 1,
  • x 0 = P l a n t is the root state;
  • E ( x 0 ) = { R _ 1 , R _ 2 } ;
    E ( R _ 1 ) = { R _ 1 _ 0 , R _ 1 _ 1 , R _ 1 _ 2 } , where R _ 1 _ 0 , R _ 1 _ 1 , and R _ 1 _ 2 represent the components 0, 1, and 2 of R 1 , respectively. This means that there are three states in machine R _ 1 which represent the state “Idle”, “Work”, and “Breakdown”;
    E ( R _ 2 ) = { R _ 2 _ 0 , R _ 2 _ 1 , R _ 2 _ 2 } , where R _ 2 _ 0 , R _ 2 _ 1 , and R _ 2 _ 2 represent the components 0, 1, and 2 of R _ 2 , respectively, which represent the state “Idle”, “Work”, and “Breakdown” of machine R _ 2 .
  • T ( P l a n t ) = A N D , implying that R _ 1 and R _ 2 work concurrently;
    T ( R _ 1 ) = T ( R _ 2 ) = O R , implying that the states R _ 1 _ 1 , R _ 1 _ 2 , and R _ 1 _ 3 are mutually exclusive, i.e., the system can only reach one state at a time; and
    T ( R _ 1 _ 0 ) = T ( R _ 1 _ 1 ) = T ( R _ 1 _ 2 ) = T ( R _ 2 _ 0 ) = T ( R _ 2 _ 1 ) = T ( R _ 2 _ 2 ) = S I M P L E , which means the exact states for each machine.
For the holons shown in Figure 2, there are two holons H R _ 1 and H R _ 2 in this figure. Take H R _ 1 as the example.
  • X = { 0 , 1 , 2 }
  • The event set Σ = { α , β , λ , μ } ;
  • X 0 = { 0 } and X m = { 1 } ;
  • δ ( 0 , α ) = 1 ,
    δ ( 1 , β ) = 0 ,
    δ ( 1 , λ ) = 2 , and
    δ ( 2 , μ ) = 0 .
In this example, there is not an upper or lower holon for H R _ 1 , which implies that the boundary event does not exist. Holon H R _ 1 denotes the transition between the states in machine R _ 1 if one event occurs. Besides, since R _ 1 and R _ 2 are two components of an AND superstate, the holons H R _ 1 and H R _ 2 are parallel, which means that the shared event (β or λ) occurs simultaneously. For the system composed by two machines R _ 1 and R _ 2 , the system behavior can be described by the following explanation of the STS model.
  • Σ = Σ R _ 1 Σ R _ 2 = { α , β , λ , μ , γ , η } ,
  • S T 0 = { R _ 1 _ 0 , R _ 2 _ 0 } , which stands for the initial state-tree, that is, R _ 1 is at state 0 and R _ 2 is at 0;
  • S T m = { { R _ 1 _ 0 , R _ 2 _ 0 } } , and
  • the transition function Δ is detailed by
    Δ ( { R _ 1 _ 0 , R _ 2 _ 0 } , α ) = { R _ 1 _ 1 , R _ 2 _ 0 } ,
    Δ ( { R _ 1 _ 0 , R _ 2 _ 0 } , γ ) = { R _ 1 _ 0 , R _ 2 _ 1 } ,
    Δ ( { R _ 1 _ 1 , R _ 2 _ 0 } , γ ) = { R _ 1 _ 1 , R _ 2 _ 1 } ,
    Δ ( { R _ 1 _ 0 , R _ 2 _ 1 } , α ) = { R _ 1 _ 1 , R _ 2 _ 1 } ,
    Δ ( { R _ 1 _ 1 , R _ 2 _ 1 } , β ) = { R _ 1 _ 0 , R _ 2 _ 0 } ,
    Δ ( { R _ 1 _ 1 , R _ 2 _ 1 } , λ ) = { R _ 1 _ 2 , R _ 2 _ 2 } ,
    Δ ( { R _ 1 _ 2 , R _ 2 _ 2 } , μ ) = { R _ 1 _ 0 , R _ 2 _ 2 } ,
    Δ ( { R _ 1 _ 2 , R _ 2 _ 2 } , η ) = { R _ 1 _ 2 , R _ 2 _ 0 } , and
    ….

3. Control Functions for Predicates

Since the synthesis of the given STS is proposed in view of a set of state-trees represented by a predicate, the computation complexity is greatly reduced. However, the relation between state-trees and events remains to be discussed. As for this part, with the intention of investigating this while ensuring the computation efficiency, the state feedback control (SFBC) f of controllable events is introduced on the basis of predicates instead of STS (as in [17,18,20]). A control function set is defined with respect to an individual predicate P, which is composed by SFBC f of all controllable events for P. To make the definitions clearer, an example is given in detail.
As known in [17,18,20], f : B ( S T ) Π is proposed to define the SFBC for G , in which
Π : = { Σ Σ | Σ u Σ } .
The event σ is allowed (respectively, not allowed) to occur at basic-state-tree b if σ f ( b ) (respectively, σ f ( b ) ). As far as event σ , the predicate f σ : B ( S T ) { 0 , 1 } is described by f σ ( b ) : = 1 iff σ f ( b ) . In previous studies, the supervisory control problem is resolved by means of investigating the properties of predicates, which means that the state illegal implies that the related event is ineligible. To avoid this, in this chapter, the SFBC of each event is studied on the basis of a given predicate. First, Definition 2 is introduced.
Definition 2.
Suppose an STS G : = ( S T , H , Σ , Δ f , P 0 f , P m ) with the controlled STS as G f : = ( S T , H , Σ , Δ f , P 0 f , P m ) for the closed system supervised by the SFBC f. As for the predicate P, an SFBC f of σ on P, denoted by f σ P : B ( S T ) { 0 , 1 } , is defined by
f σ P ( b ) : = 1 iff P ( b ) = 1 & Δ ( b , σ ) ! & Δ ( b , σ ) P .
Remark 1.
(1) Simply, the SFBC f of an event σ on P, denoted by f σ P , is a predicate and satisfied by any basic-state-tree b if σ is enabled at b and Δ ( b , σ ) satisfies P, simultaneously. Notice that the event σ can be both controllable and uncontrollable since there might exist ( σ Σ u ) Δ ( b , σ ) P . In fact, f σ P is a predicate represented by BDD, which ensures the computational efficiency. Meanwhile, f σ P shows the relation between state-trees and events for P, which make the computation more fixable and accurate.
(2) f ( P ) represents the set of eligible events at P, i.e., f ( P ) = { σ | f σ P = 1 } .
(3) Let f P denote the SFBC for a predicate P with f P = σ Σ f σ P , which is also a predicate.
(4) For f σ P defined as a predicate, B f σ P stands for the set of state-trees satisfying f σ .
(5) f σ P ( b ) = 1 means that σ is enabled at b and P is satisfied by the target state-tree.
For a predicate P P , the control function on P over P can be denoted as
f σ P | P ( b ) : = 1 iff σ f ( b ) & P ( b ) = 1 & Δ ( b , σ ) P .
Thus, the following proposition is obtained.
Proposition 1.
For predicates P 1 P and P 2 P ,
f σ P 1 P 2 | P = f σ P 1 | P f σ P 2 | P .
Proof. 
With the intention of demonstrating the equation, it is necessary for us to show that f σ P 1 P 2 | P f σ P 1 | P f σ P 2 | P and f σ P 1 | P f σ P 2 | P f σ P 1 P 2 | P .
  • Show that f σ P 1 P 2 | P f σ P 1 | P f σ P 2 | P . For b f σ P 1 P 2 | P , P 1 P 2 ( b ) = 1 & Δ ( b , σ ) P b ( P 1 P 2 ) & Δ ( b , σ ) P , which implies that ( b P 1 or b P 2 ) & Δ ( b , σ ) P ( P 1 ( b ) = 1 or P 2 ( b ) = 1 ) & Δ ( b , σ ) P ( P 1 ( b ) = 1 & Δ ( b , σ ) P ) or ( P 2 ( b ) = 1 & Δ ( b , σ ) P ) b ( f σ P 1 | P or f σ P 2 | P ) . Thus, b ( f σ P 1 | P f σ P 2 | P ) .
  • Prove that f σ P 1 | P f σ P 2 | P f σ P 1 P 2 | P . For b ( f σ P 1 | P f σ P 2 | P ) , b f σ P 1 | P or b f σ P 2 | P . This means that ( P 1 ( b ) = 1 & Δ ( b , σ ) P ) or ( P 2 ( b ) = 1 & Δ ( b , σ ) P ) b ( P 1 P 2 ) & Δ ( b , σ ) P b f σ P 1 P 2 | P .
Therefore, f σ P 1 P 2 | P = f σ P 1 | P f σ P 2 | P as required.
   □
Remark 2.
(1) For predicates P 1 and P 2 , there might exist b P 1 and b P 2 with Δ ( b , σ ) = b . Thus, f σ P 1 P 2 ( b ) = 1 , f σ P 1 ( b ) = 0 and f σ P 2 ( b ) = 0 , implying that f σ P 1 P 2 = f σ P 1 f σ P 2 is not always true.
(2) Since the SFBC f of σ is a predicate, propositional logic operators are also defined as
¬ f σ P ( b ) = 1 f σ P ( b ) = 0
( f σ P 1 f σ P 2 ) ( b ) = 1 f σ P 1 ( b ) = 1 & f σ P 2 ( b ) = 1
( f σ P 1 f σ P 2 ) ( b ) = 1 f σ P 1 ( b ) = 1 or f σ P 2 ( b ) = 1
Example 2.
In consideration of an STS G = ( S T , H , Σ , Δ , P 0 , P m ) , which is depicted in Figure 2, suppose a predicate P with B P = { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 1 } } and Σ c = { α , γ , μ , η } . According to Definition 2, it is easy to know that
  • B f α P = { { R _ 1 _ 0 , R _ 2 _ 0 } } with α is enabled at { R _ 1 _ 0 , R _ 2 _ 0 } and { R _ 1 _ 0 , R _ 2 _ 0 } satisfying P.
  • B f γ P = Ø since γ is eligible at { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 0 } } but neither { R _ 1 _ 0 , R _ 2 _ 0 } or { R _ 1 _ 1 , R _ 2 _ 0 } satisfies P.
  • Similarly, B f μ P = B f η P = Ø .

4. SFBC under Reachability, Coreachablity, and Weak Controllability

Aiming to discuss the supervisory control problem on the foundation of SFBC, better control strategies can be proposed since the control behavior obtained by SFBC is relatively flexible. On the other hand, the introduction of nonblocking supervisory control based on SFBC helps to decline the calculation complexity of controllers. In this section, the reachablity, coreachability, and weak controllability are defined in view of SFBC. Examples are given to explain the definitions.

4.1. The Reachability and Coreachablity

To solve the nonblocking supervisor, the definition and property of the SFBC f of events under reachability and coreachability are investigated, respectively, in this subsection.
G = ( S T , H , Σ , Δ , P 0 , P m ) is given to be a state-tree structure. The SFBC f under reachability over a predicate P can be obtained by
  • b 0 P ( σ Σ ) f σ P ) ( b ) = 0 ;
  • b 0 P & ( σ Σ ) Δ ( b 0 , σ ) P ( σ Σ ) f σ P ( b 0 ) = 0 ;
  • b 0 P & ( σ Σ ) Δ ( b 0 , σ ) P f σ P ( b 0 ) = 1 ;
  • f σ P ( b ) = 1 & Δ ( b , σ ) = b & ( σ Σ ) f σ P ( b ) = 1 f σ P ( b ) = 1 ;
  • No other basic state-tree b satisfies ( σ Σ ) f σ P ( b ) = 1 .
Proposition 2.
A predicate P is reachable if
( b P ) ( σ Σ ) f σ P ( b ) = 1 f σ P ( b ) = 1 .
Proof. 
To prove this proposition, we need to investigate if ( b P ) ( σ Σ ) f σ P ( b ) = 1 f σ P ( b ) = 1 , b R ( G , P ) .
It is easy to know that ( b P ) ( σ Σ ) f σ P ( b ) = 1 f σ P ( b ) = 1 implies b P and f σ 1 P ( Γ ( b , σ ) ) = 1 . f σ 1 P ( Γ ( b , σ ) ) = 1 Γ ( b , σ σ 1 ) P & f σ 2 P ( Γ ( b , σ σ 1 ) ) = 1 . And so forth, Γ ( b , σ σ 1 σ n ) P with Γ ( b , σ σ 1 σ n ) = b 0 , which means that b 0 R ( G , P ) .    □
Proposition 3.
With a given STS G and a predicate P, let f σ P : B ( S T ) { 0 , 1 } be the SFBC under reachability. For the reachability predicate R ( G , P ) , the SFBC f σ R ( G , P ) = f σ P .
Proof. 
To prove f σ R ( G , P ) = f σ P , two steps are necessary.
  • Prove f σ R ( G , P ) f σ P . If for any state-tree b, b f σ R ( G , P ) b R ( G , P ) & Δ ( b , σ ) R ( G , P ) . This implies that there exists s = σ 1 σ 2 σ n , Δ ( b 0 , s ) = b P and Δ ( b , σ ) P . Thus,
    f σ 1 P ( b 0 ) = 1 ,
    f σ 2 P ( Δ ( b 0 , σ 1 ) ) = 1 ,
    f σ 3 P ( Δ ( b 0 , σ 1 σ 2 ) ) = 1 ,
    f σ n P ( Δ ( b 0 , σ 1 σ 2 σ n 1 ) ) = 1 ,
    f σ P ( b ) = 1 .
  • Prove f σ P f σ R ( G , P ) . If for any state-tree b, b f σ P b P & Δ ( b , σ ) P . This implies that there exists s = σ 0 σ 1 σ n with Γ ( b , s ) = b 0 P . Considering the definition of reachability predicate, b 0 R ( G , P ) , Δ ( b 0 , σ 0 ) R ( G , P ) , Δ ( b 1 , σ 1 ) R ( G , P ) , …, Δ ( b n , σ n ) = b R ( G , P ) . Thus,
    b 0 R ( G , P ) & Δ ( b 0 , σ 0 ) R ( G , P ) b 0 f σ 0 R ( G , P ) , Δ ( b 0 , σ 0 ) R ( G , P ) & Δ ( b 0 , σ 0 σ 1 ) R ( G , P ) Δ ( b 0 , σ 0 ) f σ 1 R ( G , P ) , Δ ( b 0 , σ 0 σ 1 σ n ) R ( G , P ) & Δ ( b 0 , σ 0 σ 1 σ n σ ) R ( G , P ) Δ ( b 0 , σ n ) f σ R ( G , P ) .
    Therefore, Δ ( b 0 , σ n ) = b f σ R ( G , P ) . f σ P f σ R ( G , P ) is proved.
Then, the proposition is proved to be true.    □
Besides, P Q R ( G , P ) R ( G , Q ) implies f σ R ( G , P ) ( b ) = 1 f σ R ( G , Q ) ( b ) = 1 . According to Proposition 3, if P Q , f σ P ( b ) = 1 f σ Q ( b ) = 1 .
Let G = ( S T , H , Σ , Δ , P 0 , P m ) be a state-tree structure. The SFBC f under reachability over G with respect to Σ can be obtained by Algorithm 1.
Algorithm 1: The SFBC f under reachability.
Symmetry 14 01470 i001
Remark 3.
(1) According to this algorithm, any state-tree satisfying f σ is reachable from the initial state-tree;
(2) σ Σ f P = f R ( G , P ) .
Example 3.
As given in Example 1, suppose a predicate P with B P = { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 0 } , { R _ 1 _ 0 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 2 } } and Σ c = { α , γ , μ , η } . According to Definition 2, it is easy to know that
  • { R _ 1 _ 0 , R _ 2 _ 0 } P & f α P ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 f α P ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 ;
  • { R _ 1 _ 0 , R _ 2 _ 0 } P & f γ P ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 f γ P ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 ;
  • There is no other basic-state-tree b that satisfy ( σ Σ ) f σ P ( b ) = 1 ;
Thus, { R _ 1 _ 0 , R _ 2 _ 0 } f α P and { R _ 1 _ 0 , R _ 2 _ 0 } f γ P .
It is easy to know that the reachable predicate R ( G , P ) is satisfied by { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _
1 , R _ 2 _ 0 } , { R _ 1 _ 0 , R _ 2 _ 1 } and according to Definition 2, { R _ 1 _ 0 , R _ 2 _ 0 } f α P and { R _ 1 _ 0 ,
R _ 2 _ 0 } f γ P .
Thus, the SFBC f over any event σ obtained by computing R ( G , P ) first is equivalent to the f P .
Similarly, the SFBC f over G under coreachablity with respect to a predicate P can be obtained by
  • P P m = f a l s e ( σ Σ ) f σ P ( b ) = 0 ;
  • b m P & ( b P ) ( σ Σ ) Γ ( b m , σ ) = b f σ P ( b ) = 0 ;
  • b m P & ( b P ) ( σ Σ ) Γ ( b m , σ ) = b f σ P ( b ) = 1 ;
  • f P ( b ) = 1 & ( σ Σ ) Γ ( b , σ ) = b & f σ P ( b ) = 1 f σ P ( b ) = 1 ;
  • No other basic state-tree b satisfies f σ P ( b ) = 1 .
Remark 4.
(1) According to this statement, any state-tree satisfying f σ is coreachable from the marked state-tree;
(2) σ Σ f σ P = f C R ( G , P ) ;
(3) For any basic state-tree b, if there exists a string s = σ 1 σ 2 σ n satisfying Δ ( b , s ) P m , then f s P ( b ) = 1 . This means that there must exist s = σ 1 σ 2 σ 3 σ n with f σ 1 P ( b ) = 1 , f σ 2 P ( Δ ( b , σ 1 ) ) = 1 , …, f σ n P ( Δ ( ( Δ ( b , σ 1 ) , ) , σ n ) = 1 . Whether a predicate is coreachable or not can be decided by discussing the SFBC as the following proposition.
Proposition 4.
A predicate P is coreachable if
( b P ) ( σ Σ ) f σ P ( b ) = 1 f σ P ( b ) = 1 .
Proof. 
To prove this proposition, we need to investigate if ( b P ) ( σ Σ ) f σ P ( b ) = 1 f σ P ( b ) = 1 , b C R ( G , P ) .
It is easy to know that ( b P ) ( σ Σ ) f σ P ( b ) = 1 f σ P ( b ) = 1 implies Δ ( b , σ ) P and f σ 1 P ( Δ ( b , σ ) ) = 1 . f σ 1 P ( Δ ( b , σ ) ) = 1 Δ ( b , σ σ 1 ) P & f σ 2 P ( Δ ( b , σ σ 1 ) ) = 1 . Further, Δ ( b , σ σ 1 σ n ) P with Δ ( b , σ σ 1 σ n ) = b m , which means that b C R ( G , P ) .
   □
Proposition 5.
With a given STS G and a predicate P, let f σ P : B ( S T ) { 0 , 1 } be the SFBC under coreachability. For the coreachability predicate C R ( G , P ) , the SFBC f σ C R ( G , P ) = f σ P .
Proof. 
To prove f σ C R ( G , P ) = f σ P , two steps are necessary.
  • Prove f σ C R ( G , P ) f σ P . If for any state-tree b, b f σ C R ( G , P ) b C R ( G , P ) & Δ ( b , σ ) C R ( G , P ) . This implies that there exists s = σ σ 1 σ 2 σ n , Δ ( b , σ σ 1 σ 2 σ n ) = b m P . Thus,
    f σ n P ( b n ) = 1 , f σ n 1 P ( b n 1 ) = 1 , f σ 1 P ( b 1 ) = 1 , f σ P ( b ) = 1 .
  • Prove f σ P f σ C R ( G , P ) . If for any state-tree b, b f σ P b P & Δ ( b , σ ) P . This implies that there exists s = σ σ 1 σ n with Δ ( b , s ) = b m P . According to the definition of coreachability predicate, b m C R ( G , P ) , Γ ( b m , σ n ) = b n C R ( G , P ) , Γ ( b n , σ n 1 ) = b n 1 C R ( G , P ) , …, Γ ( b 1 , σ ) = b C R ( G , P ) . Thus,
    b m C R ( G , P ) & Γ ( b m , σ n ) = b n C R ( G , P ) b n f σ n C R ( G , P ) , b n C R ( G , P ) & Γ ( b n , σ n 1 ) = b n 1 C R ( G , P ) b n 1 f σ n 1 C R ( G , P ) , b 1 C R ( G , P ) & Γ ( b 1 , σ ) = b C R ( G , P ) b f σ C R ( G , P ) .
    Therefore, f σ P f σ R ( G , P ) is proved.
   □
Let G = ( S T , H , Σ , Δ , P 0 , P m ) be a state-tree structure. The SFBC f under coreachability over G with respect to Σ can be obtained by Algorithm 2. An example is given to illustrate the algorithm.
Algorithm 2: The SFBC f under coreachability.
Symmetry 14 01470 i002
Example 4.
As given in Example 1, suppose a predicate P with B P = { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 ,
R _ 2 _ 0 } , { R _ 1 _ 0 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 2 } } and Σ c = { α , γ , μ , η } . According to the definition of coreachable SFBC, it is easy to know that
  • { R _ 1 _ 0 , R _ 2 _ 0 } P & Γ ( { R _ 1 _ 0 , R _ 2 _ 0 } , η ) = { R _ 1 _ 0 , R _ 2 _ 2 } & { R _ 1 _ 0 , R _ 2 _ 2 } P f η P ( { R _ 1 _ 0 , R _ 2 _ 2 } ) = 0 ;
  • { R _ 1 _ 0 , R _ 2 _ 0 } P & Γ ( { R _ 1 _ 0 , R _ 2 _ 0 } , μ ) = { R _ 1 _ 2 , R _ 2 _ 0 } & { R _ 1 _ 2 , R _ 2 _ 0 } P f μ P ( { R _ 1 _ 2 , R _ 2 _ 0 } ) = 0 ;
  • { M _ 1 _ 0 , M 2 _ 0 } P & Γ ( { R _ 1 _ 0 , R _ 2 _ 0 } , β ) = { R _ 1 _ 1 , R _ 2 _ 1 } & { R _ 1 _ 1 , R _ 2 _ 1 } P f μ P ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 0 ;
  • f σ P ( { R _ 1 _ 2 , R _ 2 _ 2 } ) = 1 & Γ ( { R _ 1 _ 2 , R _ 2 _ 2 } , λ ) = { R _ 1 _ 1 , R _ 2 _ 1 } & { R _ 1 _ 1 , R _ 2 _ 1 } P f λ P ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 0 ;
  • Similarly, no other basic-state-tree b satisfies ( σ Σ ) f σ P ( b ) = 1 .
Thus, for any event σ, there is f σ P ( b ) = 0 .
It is easy to know that the coreachable predicate C R ( G , P ) is satisfied by { M 1 _ 0 , M 2 _ 0 } and according to Definition 2, for any event σ, there is f σ P ( b ) = 0 .
Thus, the SFBC f over any event σ obtained by computing C R ( G , P ) first is equivalent to the f P .

4.2. Sfbc under Weakly Controllability

The weakest liberal precondition is the predicate transformer M σ : P r e d ( S T ) P r e d ( S T ) defined as follows:
b M σ ( P ) iff Δ ( b , σ ) P .
A predicate P P r e d ( S T ) is weakly controllable with respect to G if
( σ Σ u ) P M σ ( P ) .
To achieve the aim of resolving the nonblocking control problem, the weak controllability should be investigated. Thus, the definition and property of SFBC under weak controllability are given in this part.
Proposition 6.
A predicate P is weakly controllable with respect to G if
( σ Σ u ) b P f σ P ( b ) = 1 .
Proof. 
Suppose an STS G : = ( S T , H , Σ , Δ f , P 0 f , P m ) with the controlled STS as G f : = ( S T , H , Σ , Δ f , P 0 f , P m ) for the closed system which is supervised and controlled by the SFBC f.
(IF) Assume that the predicate P P r e d ( S T ) is weakly controllable. Thus, ( σ Σ u ) P M σ ( P ) ( ( σ Σ u ) b P b M σ ( P ) ) ( ( σ Σ u ) b P Δ ( b , σ ) P ) . According to the definition, f σ P ( b ) = 1 . Therefore, ( σ Σ u ) b P f σ P ( b ) = 1 is proved.
(ONLY IF) Assume that ( σ Σ u ) b P f σ P ( b ) = 1 . Thus, ( σ Σ u ) f σ P ( b ) = 1 σ f ( b ) & P ( b ) = 1 & Δ ( b , σ ) P ( b P & Δ ( b , σ ) P ) ( b P & b M σ ( P ) ) P M σ ( P ) . Then, P is weakly controllable.    □
For a predicate P, the family of weakly controllable subpredicates which are stronger compared to P is denoted by CP ( P ) . As in [17], for each predicate P CP ( P ) , there exists SFBC f for G to implement R ( G , P ) . The weak controllability of P ensures that its reachable subpredicate R ( G , P ) is controllable. As it is known that there exists a unique supremal element sup CP ( P ) in CP ( P ) , the R ( G , sup CP ( P ) ) is controllable and reachable. Thus, the SFBC f for R ( G , sup CP ( P ) ) is of vital importance. The SFBC f for R ( G , sup CP ( P ) ) , which is controllable and reachable, can be obtained by Algorithm 3.
Algorithm 3: The SFBC of any event under controllability
Symmetry 14 01470 i003
Proposition 7.
For a predicate P, the SFBC f under controllability obtained by computing the predicate R ( G , sup CP ( P ) ) first is equivalent to f σ sup CP ( P ) by Algorithm 3, i.e., the diagram commutes.
Proof. 
To prove that the diagram commutes, we need to show that f σ sup CP ( P ) obtained by Algorithm 3 is equivalent to the f R ( G , sup CP ( P ) . Thus, if or any f σ sup CP ( P ) ( b ) = 1 f σ R ( G , sup CP ( P ) ( b ) = 1 , the proposition is true. Since f σ sup CP ( P ) ( b ) = 1 , b P & ( σ Σ ) Δ ( b , σ ) P and
f σ n sup CP ( P ) ( b n ) = 1 , f σ n 1 sup CP ( P ) ( b n 1 ) = 1 , , f σ 0 sup CP ( P ) ( b 0 ) = 1 .
Thus, it is easy to know b P & ( σ Σ ) Δ ( b , σ ) P , which means that b sup CP ( P ) . Additionally,
f σ n sup CP ( P ) ( b n ) = 1 b n P & ( σ Σ ) Δ ( b n , σ n ) = b P b n sup CP ( P ) ,
f σ n 1 sup CP ( P ) ( b n 1 ) = 1 b n 1 P & ( σ Σ ) Δ ( b n 1 , σ n 1 ) = b n P b n 1 sup CP ( P ) ,
f σ 0 sup CP ( P ) ( b 0 ) = 1 b 0 P & ( σ Σ ) Δ ( b 0 , σ 0 ) = b 1 P b 0 sup CP ( P ) .
By the definition of the reachability predicate, b 0 R ( G , sup CP ( P ) , b 1 R ( G , sup CP ( P ) , …, b n R ( G , sup CP ( P ) , b R ( G , sup CP ( P ) . Thus, f σ R ( G , sup CP ( P ) ( b ) = 1 is obvious. Until now, the proposition is proved.    □
Note that the diagram in Figure 3 shows the relation between the predicate P and the SFBC over the reachability predicate f R ( G , sup CP ( P ) ) . According to Proposition 7, for a predicate P, f R ( G , sup CP ( P ) ) can be obtained by computing R ( G , sup CP ( P ) ) first and then SFBC over R ( G , sup CP ( P ) ) . Similarly, f R ( G , sup CP ( P ) ) can also be obtained if f P is computed first. The proof of this diagram in Figure 3 shows the feasibility of Algorithm 3.
Example 5.
As given in Example 1, suppose a predicate P with B P = { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 ,
R _ 2 _ 0 } , { R _ 1 _ 0 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 2 } } and Σ c = { α , γ , μ , η } . According to Algorithm 3, it is easy to know that for B P = { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 0 } , { R _ 1 _ 0 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 2 } } ,
  • Since K 0 = ¬ P , { { R _ 1 _ 1 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 0 } , { R _ 1 _ 0 , R _ 2 _ 2 } } K ;
  • For { R _ 1 _ 1 , R _ 2 _ 1 } , ( σ Σ u ) Δ ( b , σ ) = b , K 1 = K 0 & ( σ Σ ) f σ ¬ K 1 ( b ) = 0 ;
  • For { R _ 1 _ 2 , R _ 2 _ 0 } , ( σ Σ u ) Δ ( b , σ ) = b , K 1 = K 0 & ( σ Σ ) f σ ¬ K 1 ( b ) = 0 ;
  • And for { R _ 1 _ 0 , R _ 2 _ 2 } , ( σ Σ u ) Δ ( b , σ ) = b , K 1 = K 0 & ( σ Σ ) f σ ¬ K 1 ( b ) = 0 ;
Thus, for any event σ, f α ¬ K 2 ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 and f γ ¬ K 2 ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 .
It is easy to know that sup CP ( P ) is satisfied by { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 0 } , { R _ 1 _ 0 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 2 } } and R ( G , sup CP ( P ) ) is satisfied by { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 0 } , { R _ 1 _ 0 , R _ 2 _ 1 } } . According to Definition 2, for any event σ, f α R ( G , sup CP ( P ) ) ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 and f γ R ( G , sup CP ( P ) ) ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 .
Thus, the SFBC f over any event σ obtained by computing R ( G , sup CP ( P ) ) first is equivalent to the f σ sup CP ( P ) .

5. Nonblocking Sfbc for Sts

According to Theorem 3.3 in [17], a nonblocking SFBC f for G with R ( G f , t r u e ) = R ( G , P ) exists if P is weakly controllable and coreachable, where G f : = ( S T , H , Σ , Δ f , P 0 f , P m ) and P 0 f = P P 0 . Notice that our sup C 2 P ( P ) is the optimal supervisor that is coreachable instead of nonblocking, where sup C 2 P ( P ) is the supremal element of C 2 P ( P ) . Furthermore, R ( G , sup C 2 P ( P ) ) = R ( G , sup NBCP ( P ) ) , where
sup NBCP ( P ) : = { K P r e d ( S T ) | K P & K weakly controllable & K nonblocking }
This means that both controllers agree on their reachable subpredicates and sup C 2 P ( P ) is another optimal nonblocking controller. R ( G , sup C 2 P ( P ) ) shows the final controlled behavior. Therefore, the control functions for R ( G , sup C 2 P ( P ) ) are necessary to be discussed.
Proposition 8.
For a predicate P, K C 2 P ( P ) if
  • b K ( σ Σ u ) f σ K ( b ) = 1 ; and
  • b K ( σ Σ ) f σ K ( b ) = 1 .
Proof. 
The proposition can be proved by the following two steps:
1.
If b K ( σ Σ ) f σ K ( b ) = 1 , K is coreachable (i.e., K C R ( G , K ) ). For any b K , we need to prove b C R ( G , K ) .
  • According to the definition of the coreachability predicate, if b m K , b m C R ( G , K ) , obviously.
  • If b K , there must exists ( σ Σ ) f σ K ( b ) = 1 . This implies that ( σ Σ ) Γ ( b , σ ) = b and b K & ( σ 1 Σ ) f σ 1 K ( b ) = 1 . Iteratively, a string s = σ σ 1 σ 2 σ n can be obtained, which makes Γ ( b m , s ) = b hold. Thus, b C R ( G , K ) .
It is proved that if b K ( σ Σ ) f σ K ( b ) = 1 , K is coreachable.
2.
If b K ( σ Σ ) f σ K ( b ) = 1 , K is weakly controllable. To prove this, ( σ Σ u ) K M σ ( K ) should be discussed. For any b K , ( σ Σ u ) f σ K ( b ) = 1 , which means that Δ ( b , σ ) ! & Δ ( b , σ ) K . Thus, b M σ ( K ) . Thus, K is proved to be weakly controllable.
Therefore, the proposition is proved to be true.    □
Algorithm 4: The SFBC f under controllability and coreachability.
Symmetry 14 01470 i004
According to Theorem 3.3 in [17], a nonblocking SFBC f for G with R ( G f , t r u e ) = R ( G , P ) exists if P is weakly controllable and coreachable, where G f : = ( S T , H , Σ , Δ f , P 0 f , P m ) and P 0 f = P P 0 . Since P is weakly controllable, R ( G , P ) is controllable. Thus, the nonblocking SFBC f under controllability and coreachability shows the control behaviors of the supervisor P, which can be computed according to Algorithm 4.
Remark 5.
According to this algorithm, the nonblocking SFBC f for G with R ( G f , t r u e ) = R ( G , P ) can be obtained by the following:
1. 
For predicate P, compute the SFBC f under weak controllability by analyzing the SFBC of the uncontrollable events, iteratively, to ensure that the uncontrollable event is not disabled;
2. 
Then, compute the SFBC under coreachability by revising the SFBC of any events which cannot lead the system to the marked state-tree;
3. 
If the SFBC of any event is not revised, go to Step 4; if not, back to Step 1;
4. 
Finally, compute the SFBC under reachability by revising the SFBC of any events which cannot reached by the initial state-tree.
So far, so good. However, we still need to answer an important question. Notice that the sup C 2 P ( P ) is the optimal supervisor with R ( G , sup C 2 P ( P ) ) = R ( G , sup NBCP ( P ) ) and a nonblocking f with R ( G f , t r u e ) = R ( G , sup C 2 P ( P ) ) exists. The nonblocking SFBC f of events can be obtained by
f σ R ( G , sup C 2 P ( P ) ) ( b ) : = 1 iff R ( G , sup C 2 P ( P ) ) ( b ) = 1 & Δ ( b , σ ) ! & Δ ( b , σ ) R ( G , sup C 2 P ( P ) ) .
So the question is, does sup C 2 P ( P ) own the same control effect over G as sup NBCP ( P ) ?
Proposition 9.
For a predicate P, the SFBC f wrt. sup C 2 P ( P ) obtained by computing the predicate sup C 2 P ( P ) first is equivalent to f σ sup C 2 P ( P ) by Algorithm 4, i.e., the diagram in Figure 4 commutes.
Proof. 
To prove that the diagram commutes, we need to show that f σ sup C 2 P ( P ) obtained by Algorithm 4 is equivalent to the f R ( G , sup C 2 P ( P ) . Thus, if for any f σ sup CP ( P ) ( b ) = 1 f σ R ( G , sup CP ( P ) ( b ) = 1 , the proposition is true. Since f σ sup C 2 P ( b ) = 1 , b P & ( σ Σ ) Δ ( b , σ ) P and
( s = σ 0 σ 2 σ n ) f s sup C 2 P ( b ) = 1 & Δ ( b , s ) = b m ,
( s = σ 0 σ 2 σ n ) f s sup C 2 P ( b 0 ) = 1 & Δ ( b 0 , s ) = b .
Thus, it is easy to know b P & ( σ Σ ) Δ ( b , σ ) P & Δ ( b , s ) = b m , which means that b sup C 2 P ( P ) . Additionally,
f σ n sup C 2 P ( P ) ( b n ) = 1 b n P & ( σ n Σ ) Δ ( b n , σ n ) = b P & Δ ( b , s ) = b m
b n sup C 2 P ( P ) ,
f σ n 1 sup C 2 P ( P ) ( b n 1 ) = 1 b n 1 P & ( σ n 1 Σ ) Δ ( b n 1 , σ n 1 ) = b n P & Δ ( b n , σ n ) = b
b n 1 sup C 2 P ( P ) ,
f σ 0 sup C 2 P ( P ) ( b 0 ) = 1 b 0 P & ( σ 0 Σ ) Δ ( b 0 , σ 0 ) = b 1 P & Δ ( b 0 , σ 0 ) = b 1
b 0 sup CP C 2 P ( P ) .
By the definition of the reachability predicate, b 0 R ( G , sup C 2 P ( P ) , b 1 R ( G , sup C 2 P ( P ) , …, b n R ( G , sup C 2 P ( P ) , b R ( G , sup C 2 P ( P ) . Thus, f σ R ( G , sup C 2 P ( P ) ( b ) = 1 is obvious. Until now, the proposition is proved. □
Notice that the sup C 2 P ( P ) is the optimal supervisor that is coreachable instead of nonblocking. For NBCP ( P ) , R ( G , sup C 2 P ( P ) ) = R ( G , sup NBCP ( P ) ) is proved, which implies that for any event σ , f σ R ( G , sup C 2 P ( P ) ) = f σ R ( G , sup NBCP ( P ) ) . Thus, the nonblocking SFBC f for G with R ( G f , t r u e ) = R ( G , P ) can be obtained by Algorithm 4.
Example 6.
As given in Example 1, suppose a predicate P with B P = { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1
_ 1 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 2 } , { R _ 1 _ 2 , R _ 2 _ 0 } } and Σ c = { α , γ , μ , η } . According to Algorithm 4, it is easy to know that for B P = { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 2 } , { R _ 1 _ 2 , R _ 2 _ 0 } } ,
1. 
Compute the SFBC f σ K 1 according to Algorithm 3;
  • For i = 0 , K 0 = ¬ P = { { R _ 1 _ 0 , R _ 2 _ 1 } , { R _ 1 _ 0 , R _ 2 _ 2 } } ;
  • ( b K 0 ) ( σ Σ u ) f σ K 0 ( b ) = 1 K 1 = K 0 & f K 1 = f K 0 .
  • Compute the coreachable SFBC f ¬ K 1 for each σ as follows:
  • For ¬ K 1 , { R _ 1 _ 0 , R _ 2 _ 0 } ¬ K 1 & Γ ( { R _ 1 _ 0 , R _ 2 _ 0 } , β ) = { R _ 1 _ 1 , R _ 2 _ 1 } ¬ K 1 & f β ¬ K 1 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 f β ¬ K 2 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 & { R _ 1 _ 1 , R _ 2 _ 1 } K 2 & { R _ 1 _ 0 , R _ 2 _ 0 } K 2 ;
  • For ¬ K 1 , { R _ 1 _ 0 , R _ 2 _ 0 } ¬ K 1 & Γ ( { R _ 1 _ 0 , R _ 2 _ 0 } , η ) = { R _ 1 _ 0 , R _ 2 _ 2 } ¬ K 1 & f η ¬ K 1 ( { R _ 1 _ 0 , R _ 2 _ 2 } ) = 1 f β ¬ K 2 ( { R _ 1 _ 0 , R _ 2 _ 2 } ) = 1 & { R _ 1 _ 0 , R _ 2 _ 2 } K 2 & { R _ 1 _ 0 , R _ 2 _ 0 } K 2 ;
  • For f β ¬ K 2 ( { R _ 1 _ 0 , R _ 2 _ 2 } ) = 1 & Γ ( { R _ 1 _ 0 , R _ 2 _ 2 } , μ ) = { R _ 1 _ 2 , R _ 2 _ 2 } & f μ ¬ K 1 ( { R _ 1 _ 2 , R _ 2 _ 2 } ) = 1 f μ ¬ K 2 ( { R _ 1 _ 2 , R _ 2 _ 2 } ) = 1 & { R _ 1 _ 2 , R _ 2 _ 2 } K 2 ;
  • For f μ ¬ K 2 ( { R _ 1 _ 2 , R _ 2 _ 2 } ) = 1 & Γ ( { R _ 1 _ 2 , R _ 2 _ 2 } , λ ) = { R _ 1 _ 1 , R _ 2 _ 1 } & f λ ¬ K 1 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 f λ ¬ K 2 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 & { R _ 1 _ 1 , R _ 2 _ 1 } K 2 ;
  • For f λ ¬ K 2 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 & Γ ( { R _ 1 _ 1 , R _ 2 _ 1 } , γ ) = { R _ 1 _ 1 , R _ 2 _ 0 } & f γ ¬ K 1 ( { R _ 1 _ 1 , R _ 2 _ 0 } ) = 1 f γ ¬ K 2 ( { R _ 1 _ 1 , R _ 2 _ 0 } ) = 1 & { R _ 1 _ 1 , R _ 2 _ 0 } K 2 ;
  • f λ ¬ K 2 ( { R _ 1 _ 1 , R R _ 2 _ 0 } ) = 1 & Γ ( { R _ 1 _ 1 , R _ 2 _ 0 } , α ) = { R _ 1 _ 0 , R _ 2 _ 0 } & f α ¬ K 1 ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 f α ¬ K 2 ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 & { R _ 1 _ 0 , R _ 2 _ 0 } K 2 ;
  • No other state-tree satisfies f σ ¬ K 1 ( b ) = 1 ;
2. 
Compute the SFBC f σ K 3 according to Algorithm 3;
  • For i = 3 , K 3 = ¬ K 2 = { { R _ 1 _ 0 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 0 } } ;
  • b K 3 & ( σ Σ u ) Δ ( b , σ ) = b K 4 = K 3 & f σ ¬ K 4 = f σ ¬ K 3 ;
  • Compute the coreachable SFBC f ¬ K 5 for each σ; it is obvious that f σ ¬ K 5 = f σ ¬ K 4 . The iteration stops.
3. 
Compute the reachable SFBC f for each σ as follows:
  • { R _ 1 _ 0 , R _ 2 _ 0 } ¬ K 5 & f α ¬ K 5 ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 f α ¬ K 6 ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 & { R _ 1 _ 0 , R _ 2 _ 0 } K 6 & { R _ 1 _ 1 , R _ 2 _ 0 } K 6 ;
  • f α ¬ K 6 ( { R _ 1 _ 0 , R _ 2 _ 0 } ) = 1 & Δ ( { R _ 1 _ 0 , R _ 2 _ 0 } , α ) = { R _ 1 _ 1 , R _ 2 _ 0 } & f γ ¬ K 5 ( { R _ 1 _ 1 , R _ 2 _ 0 } ) = 1 f γ ¬ K 6 ( { R _ 1 _ 1 , R _ 2 _ 0 } ) = 1 & { R _ 1 _ 1 , R _ 2 _ 1 } K 6 ;
  • f γ ¬ K 6 ( { R _ 1 _ 1 , R _ 2 _ 0 } ) = 1 & Δ ( { R _ 1 _ 1 , R _ 2 _ 0 } , γ ) = { R _ 1 _ 1 , R _ 2 _ 1 } & f γ ¬ K 5 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 f γ ¬ K 6 ( { R _ 1 _ 1 , R _ 2 _ 0 } ) = 1 & { R _ 1 _ 1 R _ 2 _ 0 } K 6 ;
  • f γ ¬ K 6 ( { R _ 1 _ 1 , R _ 2 _ 0 } ) = 1 & Δ ( { R _ 1 _ 1 , R _ 2 _ 1 } , β ) = { R _ 1 _ 0 , R _ 2 _ 0 } & f β ¬ K 5 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 f β ¬ K 6 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 & { R _ 1 _ 0 , R _ 2 _ 0 } K 6 ;
  • f γ ¬ K 6 ( { R _ 1 _ 1 , R _ 2 _ 0 } ) = 1 & Δ ( { R _ 1 _ 1 , R _ 2 _ 1 } , λ ) = { R _ 1 _ 2 , R _ 2 _ 2 } & f λ ¬ K 5 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 f λ ¬ K 6 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 & { R _ 1 _ 2 , R _ 2 _ 2 } K 6 ;
  • f λ ¬ K 6 ( { R _ 1 _ 1 , R _ 2 _ 1 } ) = 1 & Δ ( { R _ 1 _ 1 , R _ 2 _ 1 } , λ ) = { R _ 1 _ 2 , R _ 2 _ 2 } & f μ ¬ K 5 ( { R _ 1 _ 2 , R _ 2 _ 2 } ) = 1 f μ ¬ K 6 ( { R _ 1 _ 2 , R _ 2 _ 2 } ) = 1 & { R _ 1 _ 0 , R _ 2 _ 2 } K 6 ;
  • f μ ¬ K 6 ( { R _ 1 _ 2 , R _ 2 _ 2 } ) = 1 & Δ ( { R _ 1 _ 2 , R _ 2 _ 2 } , μ ) = { R _ 1 _ 0 , R _ 2 _ 2 } & f η ¬ K 5 ( { R _ 1 _ 0 , R _ 2 _ 2 } ) = 1 f η ¬ K 6 ( { R _ 1 _ 0 , R _ 2 _ 2 } ) = 1 & { R _ 1 _ 0 , R _ 2 _ 0 } K 6 ;
  • No other basic-state-tree b satisfies ( σ Σ ) f σ R ( G , P ) ( b ) = 1 .
It is easy to know that R ( G , sup CP ( P ) ) is satisfied by { { R _ 1 _ 0 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 0 } , { R _ 1 _ 1 , R _ 2 _ 1 } , { R _ 1 _ 2 , R _ 2 _ 2 } , { R _ 1 _ 2 , R _ 2 _ 0 } } and according to Definition 2, for any event σ, f σ ¬ K 6 = f σ R ( G , sup CP ( P ) ) .
Thus, the SFBC f over any event σ obtained by computing R ( G , sup CP ( P ) ) first is equivalent to the f σ ¬ K 6 .
Overall, nine propositions and four algorithms are proposed, and the relation between these propositions and algorithms are displayed in Table 1. As shown in this table, we have the following:
  • Definition 1 is proposed to define the SFBC of an event for a predicate and Example 2 illustrates this definition;
  • Proposition 1 shows the relation between the SFBC for two subpredicates of P;
  • Propositions 2 and 3 show the reasonability of Algorithm 1, which is proposed to compute the SFBC under reachability, and Example 3 explains each step of Algorithm 1;
  • Propositions 4 and 5 show the reasonability of Algorithm 2, which is proposed to compute the SFBC under coreachability, and Example 4 explains each step of Algorithm 2;
  • Propositions 6 and 7 show the reasonability of Algorithm 3, which is proposed to compute the SFBC under weak controllability, and Example 5 explains each step of Algorithm 3;
  • Propositions 8 and 9 show the reasonability of Algorithm 4, which is proposed to compute the SFBC under weak controllability and coreachability, and Example 6 explains each step of Algorithm 4; the computation of Algorithm 4 requires the results of Algorithms 1–3, and by Algorithm 4, the control functions of the supervisory control problem can be obtained.

6. Examples

6.1. Transfer Line

Chapter 4 in [14] proposes an industrial “transmission line” composed of two machines T M _ 1 , T M _ 2 , and a testing unit T U , which is connected by buffers B _ 1 and B _ 2 , as is depicted by Figure 5. If the workpiece is accepted after T U test, it can be released; otherwise, it will be returned to B _ 1 and reprocessed by T M _ 2 . Because of this, the structure has the function of “material feedback”. The specification can help B _ 1 and B _ 2 avoid underflow as well as overflow, The capacities of B _ 1 and B _ 2 are assumed to be 1. The controlled events are 1, 3, and 5, while the uncontrolled events are 2, 4, 6, and 8.
As its STS model is depicted in Figure 5, T L is an AND superstate and its components T M _ 1 , T M _ 2 , T U , B _ 1 , and B _ 2 are parallel, implying that the system work at these states simultaneously. T M _ 1 is an OR superstate and its components T M _ 1 _ 1 and T M _ 1 _ 2 are exclusive, which means only one of T M _ 1 _ 1 and T M _ 1 _ 2 can be reached at a time. So as T M _ 2 , T U , B _ 1 , and B _ 2 . The occurrence of events promotes the transition between these states. For the shared events, such as 2, if 2 occurs, the states T M _ 1 _ 1 and B _ 1 _ 0 transfers to T M _ 1 _ 2 and B _ 1 _ 1 simultaneously. Other events can always occur if the system reaches the trigger states. For example, event 1 can occur once T M _ 1 stays at T M _ 1 _ 0 . Thus, to display the behavior of the system, Δ can be given as follows:
Δ ( { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , 1 ) = { T M _ 1 _ 1 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 }
Δ ( { T M _ 1 _ 1 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , 2 ) = { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 1 , B _ 1 _ 0 , B _ 2 _ 0 }
Δ ( { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 1 , B _ 1 _ 0 , B _ 2 _ 0 } , 3 ) = { T M _ 1 _ 0 , T M _ 2 _ 1 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 }
Δ ( { T M _ 1 _ 0 , T M _ 2 _ 1 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , 4 ) = { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 1 }
Δ ( { T M _ 1 _ 0 , T M _ 2 _ 1 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , 1 ) = { T M _ 1 _ 1 , T M _ 2 _ 1 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 }
The specification of the transfer line is given by two holons ( B _ 1 and B _ 2 ). Based on the SFBC of each event, the control functions of 1, 3, and 5 can be given by Figure 6. For this example, B P = { { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , { T M _ 1 _ 1 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , { T M _ 1 _ 0 , T M _ 2 _ 1 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 1 , B _ 1 _ 0 , B _ 2 _ 0 } , { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 1 , B _ 2 _ 0 } , { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 1 } } . According to Algorithm 4, the nonblocking SFBC of the events can be obtained.
f 1 P ( { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } ) = 1 ,
f 2 P ( { T M _ 1 _ 1 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } ) = 1 ,
f 3 P ( { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 1 , B _ 2 _ 0 } ) = 1 ,
f 4 P ( { T M _ 1 _ 0 , T M _ 2 _ 1 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } ) = 1 ,
f 5 P ( { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 1 } ) = 1 ,
f 6 P ( { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 1 , B _ 1 _ 0 , B _ 2 _ 0 } ) = 1 , and
f 8 P ( { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 1 , B _ 1 _ 0 , B _ 2 _ 0 } ) = 1 .
Therefore, the control functions of the controllable events 1, 3, and 5 can be given by Figure 6.
Remark 6.
It is easy to find that the control functions obtained on the basis of SFBC are the same as the ones obtained on the predicates in Chapter 4 in [17]. In [17], the supremal weakly controllable and coreachable subpredicate needs to be calculated by analyzing the states of the system, and then the control functions are obtained in view of this subpredicate. For this example, the supremal subpredicate is { { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , { T M _ 1 _ 1 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } , { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 1 , B _ 2 _ 0 } , { T M _ 1 _ 0 , T M _ 2 _ 1 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 0 } { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 0 , B _ 1 _ 0 , B _ 2 _ 1 } , { T M _ 1 _ 0 , T M _ 2 _ 0 , T U _ 1 , B _ 1 _ 0 , B _ 2 _ 0 } } . In view of the subpredicate and the transition function Δ, the control functions can be obtained by studying the enabled events of each states. However, by using Algorithm 4, we only need to focus on the SFBC of the uncontrollable events, which are disabled. Then, the control functions can be obtained directly, which helps to improve the calculation efficiency to a certain extent. The use of SFBC makes the computation process of the supervisory control problem more flexible since we can disable the event by letting f σ ( b ) = 0 , such as the following example.

6.2. Small Factory

This example shows how to achieve the aim of resolving the control problem of the Small Factory based on SFBC. First, the STS model is shown in Figure 7, where the BUF contains a buffer with one slot. The two states of SM _ 1 are represented as 0 and 1, where 0 stands for “idle” and 1 for “working”. In the initial state, the buffer is empty. SM _ 1 can work from the infinite input bin (Event 1), after which M1 completes the work cycle (Event 2). The operation mechanism of SM _ 2 is basically the same. Odd numbers represent controllable events and even numbers represent uncontrollable ones. After that, BUF needs to complete the following two tasks: first, when event 2 takes place, the workpiece will be placed in the buffer; secondly, when event 3 takes place, the workpiece is transferred to SM _ 2 .
The overflow and underflow can be taken care of here. If the capacity of the buffer is one, to achieve this, we need to (1) disable event 3 at state 0 of the holon BUF and (2) disallow event 2 to occur at state 1 of the holon BUF. (1) is represented by the holon BUF, and (2) can be written as f 2 P ( { S M 1 _ 1 , B U F _ 1 } ) = 0 . The procedure to resolve this problem is displayed as follows.
  • B P = { { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 0 } , { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 0 } , { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } , { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 1 } , { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } , { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } , { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } , { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 1 } } ;
  • f 2 P ( { S M _ 1 _ 1 , B U F _ 1 } ) = 0 implies that f 2 P ( { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 1 } ) = 0 and f 2 P ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 1 } ) = 0 ;
  • For event 1, f 1 P ( { M _ 1 _ 0 , M _ 2 _ 0 , B U F _ 0 } ) = 1 , f 1 P ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ) = 1 , f 1 P ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 , and f 1 P ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 ;
    For event 2, f 2 P ( { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 0 } ) = 1 and f 2 P ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 ;
    For event 3, f 3 P ( { M _ 1 _ 0 , M _ 2 _ 0 , B U F _ 1 } ) = 1 and f 3 P ( { M _ 1 _ 1 , M _ 2 _ 0 , B U F _ 0 } ) = 1 ;
    For event 4, f 4 P ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 , f 4 P ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 , f 4 P ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } ) = 1 , and f 4 P ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 1 } ) = 1 ;
  • According to Algorithm 4, the nonblocking SFBC f can be got by
    -
    Under weak controllability, since f 2 P ( { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ } ) = 0 & Γ ( { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ } , 1 ) = { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ } & f 1 P ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ) = 1 , f 1 ¬ K 1 ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ) = 0 & { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 1 } ¬ K 1 ;
    f 2 P ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 1 } ) = 0 & Γ ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 1 } , 1 ) = { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } & f 1 P ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } ) = 1 , f 1 ¬ K 1 ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } ) = 0 & { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 1 } ¬ K 1 ; and for other event σ Σ , f σ P ( b ) = 1 f σ ¬ K 1 ( b ) = 1 ;
    -
    Under coreachability,
    { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 0 } ¬ K 1 & f 4 ¬ K 1 ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } ) = 1
    f 4 ¬ K 2 ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 & { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 0 } ¬ K 2 &
    { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } ¬ K 2 ;
    { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } ¬ K 2 & f 3 ¬ K 1 ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ) = 1
    f 3 ¬ K 2 ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ) = 1 & { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ¬ K 2 ;
    { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ¬ K 2 & f 2 ¬ K 1 ( { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 1 } ) = 1
    f 2 ¬ K 2 ( { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 0 } ) = 1 & { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 0 } ¬ K 2 ;
    { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 0 } ¬ K 2 & f 1 ¬ K 1 ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ) = 1
    f 1 ¬ K 2 ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 0 } ) = 1 & { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 0 } ¬ K 2 ;
    { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 0 } ¬ K 2 & f 4 ¬ K 1 ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1
    f 4 ¬ K 2 ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 & { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ¬ K 2 ;
    { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ¬ K 2 & f 4 ¬ K 1 ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } ) = 1
    f 4 ¬ K 2 ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } ) = 1 & { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } ¬ K 2 ;
    { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } ¬ K 2 & f 2 ¬ K 1 ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1
    f 2 ¬ K 2 ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 & { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ¬ K 2 ;
    and no other ( σ Σ ) f σ ¬ K 2 ( b ) = 1 ;
    -
    It is easy to find that the SFBC f ¬ K 2 satisfies the weakly controllability and coreachability. The iteration stops.
    -
    Under reachability, similar to the calculation of coreachability, f σ ¬ K 2 can be computed.
    f 1 ¬ K 2 ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 0 } ) = 1 ;
    f 3 ¬ K 2 ( { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } ) = 1 ;
    f 2 ¬ K 2 ( { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 0 } ) = 1 ;
    f 1 ¬ K 2 ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 ;
    f 4 ¬ K 2 ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 ;
    f 4 ¬ K 2 ( { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } ) = 1 ;
    f 2 ¬ K 2 ( { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } ) = 1 ;
    and no other ( σ Σ ) f σ ¬ K 2 ( b ) = 1 ;
Therefore, the control functions of 1 and 3 can be given by B f 1 = { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 0 } , { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } } and B f 3 = { { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } } , which is depicted in Figure 8.
Remark 7.
The control functions of 1 and 3 obtained by Algorithm 4 are equivalent to the ones in Chapter 4 in [17], which shows that the solution based on SFBC is feasible. Since in [17], the specification is given by illegal state-trees, which means that all events related to the illegal state-trees are not allowed to occur. In this paper, the specification is given by SFBC, which makes the calculation easier since we can analyze the SFBC of the uncontrollable events instead of analyzing the exclusive states. For this example, the specification can be given by f 2 P ( { S M 1 _ 1 , B U F _ 1 } ) = 0 . The computation will focus on f 2 P ( { S M 1 _ 1 , B U F _ 1 } ) since the SFBC of the uncontrollable event 2 equals 0. Then, we can analyze the control functions with the transition function Δ. However, in [17], { S M 1 _ 1 , B U F _ 1 } is deleted to ensure that the uncontrollable event will not occur. The calculation of the supremal subpredicate is given by keeping the reasonable states and deleting unreasonable ones. This will also narrow the system behavior. Such as for the supervisory control problem under partial observation, after the natural projection, the states are combined and thus one state might exists in different combination. Computing the supervisor only by deleting the states will reduce the permissive controlled behavior. In this paper, we can keep the states but delete the illegal events, which contributes to a more permissive supervisor.

6.3. Guide Way

A and B are two stations on a single track guideway. There are four sections between A and B, as shown in Figure 9, with the symbol “·” representing the guideway between two sections and “*” showing that the section junctions install spotlights. If there are two vehicles V _ 1 and V _ 2 running on this guideway, the use of the spotlights prevents collision by ensuring that V _ 1 and V _ 2 never travels on the same section simultaneously.
Its STS model is shown in Figure 10, with the odd number standing for the controllable events and the even number for the uncontrollable events. In Figure 10, holon V _ 1 (respectively, V _ 2 ) stands for the behavior of vehicle V _ 1 (respectively, V _ 2 ). Take V _ 1 as an example. Since there are four sections between A and B, six stations are represented by six states (0 to 5) in holon V _ 1 . Additionally, “·” implies the guideway between two sections, thus the five “·” can be represented as follows:
  • event 11 in Figure 10 stands for the first “·”, which means V _ 1 passing the guideway between A and station 1;
  • event 13 in Figure 10 stands for the second “·”, which means V _ 1 passing the guideway between station 1 and 2;
  • event 10 in Figure 10 stands for the third “·”, which means V _ 1 passing the guideway between station 2 and 3;
  • event 15 in Figure 10 stands for the forth “·”, which means V _ 1 passing the guideway between station 3 and 4;
  • event 12 in Figure 10 stands for the fifth “·”, which means V _ 1 passing the guideway between station 4 and B.
Thus, to prevent collision, the specification can be represented by the set of exclusive state-trees { { V _ 1 _ 1 , V _ 2 _ 1 } , { V _ 1 _ 2 , V _ 2 _ 2 } , { V _ 1 _ 3 , V _ 2 _ 3 } , { V _ 1 _ 4 , V _ 2 _ 4 } } . This means that
f 21 ( { V _ 1 _ 1 , V _ 2 _ 0 } ) = 0 , f 11 ( { V _ 1 _ 0 , V _ 2 _ 1 } ) = 0 ,
f 23 ( { V _ 1 _ 2 , V _ 2 _ 1 } ) = 0 , f 13 ( { V _ 1 _ 1 , V _ 2 _ 2 } ) = 0 ,
f 20 ( { V _ 1 _ 3 , V _ 2 _ 2 } ) = 0 , f 10 ( { V _ 1 _ 2 , V _ 2 _ 3 } ) = 0 ,
f 25 ( { V _ 1 _ 4 , V _ 2 _ 3 } ) = 0 , f 15 ( { V _ 1 _ 3 , V _ 2 _ 4 } ) = 0 .
To compute the supervisor, we can focus on f 20 ( { V _ 1 _ 3 , V _ 2 _ 2 } ) = 0 and f 10 ( { V _ 1 _ 2 , V _ 2 _ 3 } ) = 0 since 20 and 10 are not allowed to be disabled. Thus, according to Algorithm 4, the control function is shown as Figure 11. This means that 1) event 11 occurs when V _ 1 is at state 0 and V _ 2 is at state 0, 2, 3, 4, or 5; 2) event 13 occurs when V _ 1 is at state 1 and V _ 2 is at state 0, 4, or 5; 3) event 15 occurs when V _ 1 is at state 3 and V _ 2 is at state 0, 1, or 5; 4) event 21 is allowed to occur when V _ 2 is at state 0 and V _ 1 is at state 0, 2, 3, 4, or 5; 5) event 23 is allowed to occur when V _ 2 is at state 1 and V _ 1 is at state 0, 4, or 5; and 6) event 25 is allowed to occur when V _ 2 is at state 3 and V _ 1 is at state 0, 1, or 5.
Remark 8.
The computation of the control functions in this paper is more efficient than that of [17]. In this paper, we only need to focus on the SFBC of the uncontrollable events since if there exists an SFBC equal to 0, the control functions must be not controllable. For this example, f 20 ( { V _ 1 _ 3 , V _ 2 _ 2 } ) = 0 and f 10 ( { V _ 1 _ 2 , V _ 2 _ 3 } ) = 0 . Since 20 and 10 are not allowed to be disabled, we need to make the SFBC of the controllable events (23 and 13) equal 0. Thus, just one step is needed to compute the control functions. However, in [17], the controllable predicate should be studied first by analyzing the uncontrollable events and then computing the control functions of the controllable events. The computation of the controllable predicate is omitted, which helps to improve the computational efficiency.

7. Discussion

In order to construct an efficient supervisor for complex automated manufacturing systems (AMS), supervisory control theory is put forward on the foundation of STS. STS can complete the control and modeling of hierarchy and concurrency of discrete-event systems (DES), and manage the state explosion encountered in the complex DES [14]. However, the relation between state-trees and events was not clearly defined during the course of investigating the supervisory control problem, which is of paramount significance in DES. In order to achieve this goal, an approach on the foundation of state feedback control (SFBC) is proposed in this paper, which constructs the control behavior directly by analyzing the SFBC of events. Thus, for a given AMS modeled by STS G , the requirements of users denoted by the specification can be modeled as follows:
  • The specification is explicitly saying that the dangerous situation (to be prohibited) is whenever the system is in a certain state. This specification can be denoted by the illegal state-trees. Such as, in Example 1, if the two machines, R _ 1 _ 1 and R _ 2 _ 1 , are not allowed to occur at the same time. The specification can be written as { R _ 1 _ 1 , R _ 2 _ 1 } with B ¬ P = { { R _ 1 _ 1 , R _ 2 _ 1 } } , and the SFBC of events wrt. P can be obtained according to Definition 2. Then, the supervisor (shown by the control functions) can be computed by Algorithm 4.
  • The specification can be put into the STS model as a holon. For example, in Small Factory, the specification is written as holon B U F , which implicitly describes the control part: not allowing 3 to occur at state 0. Moreover, to avoid the buffer overflow, the event 2 is not allowed to occur at state 1. Thus, the illegal state-tree is { S M _ 1 _ 1 , B U F _ 1 } and B P = { { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 0 } , { S M _ 1 _ 1 , S M _ 2 _ 0 , B U F _ 0 } , { S M _ 1 _ 0 , S M _ 2 _ 0 , B U F _ 1 } , { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 1 } , { S M _ 1 _ 0 , S M _ 2 _ 1 , B U F _ 0 } , { S M _ 1 _ 1 , S M _ 2 _ 1 , B U F _ 0 } } . The SFBC of events with respect to P can be obtained according to Definition 2. Then, the supervisor (shown by the control functions) can be computed by Algorithm 4.
  • Moreover, the specification can be directly denoted by the SFBC which means some events disabled at state-trees. For example, in Small Factory, to avoid the buffer overflow, the event 2 is not allowed to occur at state 1. Thus, the SFBC of 2 can be written as f 2 P ( { S M _ 1 _ 1 , B U F _ 1 } ) = 0 . The SFBC of events with respect to P can be achieved according to Definition 2. Then, the control functions can be computed by Algorithm 4.
For the given specification P, the supervisory control problems can be solved by the proposed propositions and algorithms in this paper. By Algorithm 1, the SFBC for P under reachability can be computed and then, the SFBC under coreachability can be achieved by Algorithm 2. To solve the control problem, SFBC under controllability should be studied. Since the weak controllability implies controllability and the computation of the SFBC under weak controllability is more efficient, Algorithm 3 is proposed. As it is known that the controlled system should be nonblocking and controllable, Algorithm 4 is given to pursue the SFBC under coreachability and weak controllability since the nonblocking can be replaced by coreachability and controllability by weak controllability. As shown in examples, to compute the control functions, the SFBC under weak controllability and coreachability should be computed by using Algorithm 1 and Algorithm 2, iteratively. Then, the control functions can be obtained by using Algorithm 3. The reasonability of the algorithms can be proved by the nine propositions in this paper. During the computation process, only the SFBC of uncontrollable events needs to be considered, and the control functions can be obtained directly by analyzing the SFBC. This helps to improve the computational efficiency.
Moreover, this paper lays a foundation for the following work since the SFBC of events is very important to the development of other research. For example, the deployment of sensors and detectors to detect certain manufacturing processes may be too costly or difficult for technical reasons, which leads to the partial observability of AMS. To model and control these AMS, the definition of natural projection represented by predicates should be proposed. The SFBC of events with respect to predicates helps the analysis of the occurrence of events for the natural projection, which helps the achievement of more permissive system behavior under partial observation. Such as the example in Section 6.3, the symbol “!” represents detectors installed, implying that for V _ 1 ( V _ 2 ), the events 11, 10, 15, and 12 (resp, 21, 20, 25, and 22) are observable and event 13 (respectively, 23) is unobservable. To compute the control functions, the natural projections should be performed first. Therefore, some states will be combined, such as { V _ 1 _ 1 , V _ 2 _ 1 } and { V _ 1 _ 2 , V _ 2 _ 1 } can be seen as a new state, represented by P 1 , since 13 is unobservable as shown in [23]. The same is true for { V _ 1 _ 1 , V _ 2 _ 1 } and { V _ 1 _ 1 , V _ 2 _ 2 } , represented by P 2 . By using the proposed algorithms in this paper, f 13 P 1 ( { V _ 1 _ 1 , V _ 2 _ 1 } ) = 0 does not imply that f 13 P 2 ( { V _ 1 _ 1 , V _ 2 _ 1 } ) = 0 , which is different from the previous work. The state-tree { V _ 1 _ 1 , V _ 2 _ 1 } is not deleted in this situation and only 13 is disabled. Thus, more permissive supervisor can be obtained under partial observation.
The above works are based on the relation between predicates and events and the supervisor is given by control functions that are represented by states that controllable event can occur. All these works ignore the structure of the STS model, which leads to a situation that all these results cannot be used in the next computation. If we can study the supervisory control problem by analyzing the STS model, the computation can focus on the holons related to the specification. The expected supervisor can be also represented by STS, which can be used directly in other computation if necessary. This helps to improve the efficiency of the computation and the practicality of the theory.

8. Conclusions

Considering that all behaviors in an automated manufacturing system (AMS) are discrete in space and time, the system can be seen as a discrete event system (DES), which ensures a valid representation of the AMS and effectively performs subsequent computations. In this study, to solve the control problem of AMS modeled by state-tree structures (STS), the supervisor of AMS is studied on the basis of state feedback control (SFBC). For the control requirements modeled by the specification, the supervisors can be computed by the proposed algorithms in this paper. First, after defining the SFBC of events for predicates, the properties of the SFBC are well investigated. Then, with the purpose of studying the supervisory problem on the foundation of SFBC, the algorithms to compute the SFBC under reachability, coreachability, and weak controllability are introduced. It is proved that the nonblocking SFBC obtained by the proposed algorithm is equivalent to the one obtained by computing predicates first, which ensures satisfactory controllers for the supervisory control problems. Finally, with the intention of demonstrating the contribution of the proposed approach, which is designed considering the symmetry of the system behavior between the real system and its STS model, three examples are illustrated. Consequently, for any specification, which can be represented by SFBC, the solution to the supervisory control problems is well investigated. However, since all these results are represented by predicates which cannot be used in the next computation, the future work will be devoted to solving the problem in view of the structure of STS models.

Author Contributions

Conceptualization, C.G.; Data curation, J.Z.; Formal analysis, C.G.; Funding acquisition, C.G.; Methodology, C.G.; Project administration, Z.H.; Software, J.Z.; Supervision, C.G.; Validation, Z.H.; Visualization, Z.H.; Writing—original draft, C.G. All authors have read and agreed to the published version of the manuscript.

Funding

This work was sponsored in part by the National Natural Science Foundation of China Under Grant Nos. 62003201 and 61803246.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Li, Z.W.; Zhou, M.C. Deadlock Resolution in Automated Manufacturing Systems: A Novel Petri Net Approach; Springer Science Business Media: Berlin/Heidelberg, Germany, 2009. [Google Scholar]
  2. Reveliotis, S.; Nazeem, A. Deadlock avoidance policies for automated manufacturing systems using finite state automata. Form. Methods Manuf. 2018, 169–196. [Google Scholar]
  3. Fanti, M.P.; Zhou, M.C. Deadlock control methods in automated manufacturing systems. IEEE Trans. Syst. Man Cyber. 2004, 34, 5–22. [Google Scholar] [CrossRef]
  4. Wu, N.Q.; Zhou, M.C. Deadlock resolution in automated manufacturing systems With robots. IEEE Trans. Autom. Sci. Eng. 2007, 4, 474–480. [Google Scholar] [CrossRef]
  5. He, Z.; Ma, Z.; Li, Z.W.; Giua, A. Parametric transformation of timed weighted marked graphs: Applications in optimal resource allocation. IEEE/CAA J. Autom. Sinica 2020, 8, 179–188. [Google Scholar] [CrossRef]
  6. He, Z.; Li, Z.W.; Giua, A. Performance optimization for timed weighted marked graphs under infinite server semantics. IEEE Trans. Autom. Control 2018, 63, 2573–2580. [Google Scholar] [CrossRef]
  7. He, Z.; Ma, Z.; Tang, W. Performance safety enforcement in strongly connected timed event graphs. Automatica 2021, 128, 109605. [Google Scholar] [CrossRef]
  8. He, Z.; Li, Z.W.; Giua, A. Cycle time optimization of deterministic timed weighted marked graphs by transformation. IEEE Trans. Control Syst. Technol. 2017, 25, 1318–1330. [Google Scholar] [CrossRef] [Green Version]
  9. He, Z.; Li, Z.W.; Giua, A. Optimization of deterministic timed weighted marked graphs. IEEE Trans. Autom. Sci. Eng. 2017, 14, 1084–1095. [Google Scholar] [CrossRef] [Green Version]
  10. He, Z.; Ma, Z.Y. Performance safety enforcement in stochastic event graphs against boost and slow attacks. Nonlinear Anal. Hybrid Syst. 2021, 41, 101057. [Google Scholar] [CrossRef]
  11. Yan, L.Y. State-Based Control of Discrete-Event Systems with Observational Abstraction. Master’s Thesis, University of Toronto, Toronto, ON, Canada, 2011. [Google Scholar]
  12. Wang, X.; Li, Z.W.; Wonham, W.M. Dynamic multiple-period reconfiguration of real-time scheduling based on timed DES supervisory control. IEEE Trans. Ind. Inf. 2015, 12, 101–111. [Google Scholar] [CrossRef]
  13. Wang, X.; Khemaissia, I.; Khalgui, M.; Li, Z.W.; Wonham, W.M. Dynamic low-power reconfiguration of real-time systems with periodic and probabilistic tasks. IEEE Trans. Autom. Sci. Eng. 2014, 12, 258–271. [Google Scholar] [CrossRef]
  14. Wonham, W.M. Supervisory Control of Discrete-Event Systems. 2015. Available online: http://www.control.toronto.edu/DES (accessed on 1 July 2015).
  15. Wonham, W.M.; Ramadge, P.J. On the supremal controllable sublanguage of a given language. SIAM J. Control Optim. 1987, 25, 637–659. [Google Scholar] [CrossRef]
  16. Wonham, W.M.; Ramadge, P.J. Supervisory control of a class of discrete event processes. SIAM J. Control Optim. 1987, 25, 206–230. [Google Scholar]
  17. Ma, C.; Wonham, W.M. Nonblocking supervisory control of state tree structures. IEEE Trans. Autom. Control 2006, 51, 782–793. [Google Scholar] [CrossRef]
  18. Ma, C.; Wonham, W.M. Control of state tree structures. In Proceedings of the 11th Mediterranean Conference on Control and Automation, Rhodes, Greece, 18–20 June 2003. [Google Scholar]
  19. Harel, D. Statecharts: A visual formalism for complex systems. Sci. Comput. Program. 1987, 8, 231–274. [Google Scholar] [CrossRef] [Green Version]
  20. Ma, C.; Wonham, W.M. STSLib and its application to two benchmarks. In Proceedings of the 9th International Workshop on Discrete Event System (WODES’08), Gothenburg, Sweden, 28–30 May 2008; pp. 119–124. [Google Scholar]
  21. Mirenadi, S.; Lennartson, B. Symbolic on-the-fly synthesis in supervisory control theory. IEEE Trans. Control Syst. Technol. 2016, 24, 1705–1716. [Google Scholar] [CrossRef]
  22. Mirenadi, S.; Lennartson, B.; Akesson, K. A BDD-based approach for modelling plant and supervisor by extended finite automata. IEEE Trans. Control Syst. Technol. 2012, 20, 1421–1435. [Google Scholar] [CrossRef] [Green Version]
  23. Gu, C.; Wang, X.; Li, Z.W. Synthesis of supervisory control with partial observation on normal state-tree structures. IEEE Trans. Automa. Sci. Eng. 2018, 16, 984–997. [Google Scholar] [CrossRef]
  24. Gu, C.; Wang, X.; Li, Z.W.; Wu, N.Q. Supervisory control of state-tree structures with partial observation. Inf. Sci. 2018, 465, 523–544. [Google Scholar] [CrossRef]
  25. Wang, D.G.; Wang, X.; Li, Z.W. Nonblocking supervisory control of state-tree structures with conditional-preemption matrices. IEEE Trans. Ind. Inf. 2019, 16, 3744–3756. [Google Scholar] [CrossRef]
  26. Jiao, T.; Gan, T.; Xiao, G.; Wonham, W.M. Exploiting symmetry of state tree structures for discrete-event systems with parallel components. Int. J. Control 2017, 90, 1639–1651. [Google Scholar] [CrossRef]
  27. Wang, X.; Li, Z.W.; Wonham, W.M. Real-time scheduling based on nonblocking supervisory control of state-tree structures. IEEE Trans. Autom. Control 2020, 66, 4230–4237. [Google Scholar] [CrossRef]
  28. Cai, K.; Wonham, W.M. Supervisor localization of discrete-event systems based on state tree structure. IEEE Trans. Autom. Control 2013, 59, 1329–1335. [Google Scholar] [CrossRef] [Green Version]
  29. Dong, K.; Quan, Q.; Wonham, W.M. Failsafe mechanism design for autonomous aerial refueling using state tree structures. Unmanned Syst. 2019, 7, 261–279. [Google Scholar] [CrossRef]
  30. Chao, W.J.; Gan, Y.M.; Wang, Z.A.; Wonham, W.M. Decentralized supervisory control of discrete-event systems based on state tree structures. In Proceedings of the 31st Chinese Control Conference, Hefei, China, 25–27 July 2012; pp. 2184–2190. [Google Scholar]
  31. Chao, W.J.; Gan, Y.M.; Wang, Z.A.; Wonham, W.M. On computation of coordinator in blocking decentralized supervisory control of state tree structures. In Proceedings of the 31st Chinese Control Conference, Hefei, China, 25–27 July 2012; pp. 2157–2162. [Google Scholar]
  32. Chao, W.J.; Gan, Y.M.; Wang, Z.A.; Wonham, W.M. Modular supervisory control and coordination of state tree structures. Int. J. Control 2013, 86, 9–21. [Google Scholar] [CrossRef]
  33. Wang, X.; Moor, T.; Li, Z.W. Top-down nested supervisory control of state-tree structures based on state aggregations. IFAC-Papers OnLine 2020, 53, 11175–11180. [Google Scholar] [CrossRef]
Figure 1. State-tree of the given STS G .
Figure 1. State-tree of the given STS G .
Symmetry 14 01470 g001
Figure 2. The holons of the given STS G .
Figure 2. The holons of the given STS G .
Symmetry 14 01470 g002
Figure 3. The relationship between the SFBC and the weakly controllable predicate.
Figure 3. The relationship between the SFBC and the weakly controllable predicate.
Symmetry 14 01470 g003
Figure 4. The relationship between f σ sup C 2 P ( P ) and R ( G , sup C 2 P ( P ) ) .
Figure 4. The relationship between f σ sup C 2 P ( P ) and R ( G , sup C 2 P ( P ) ) .
Symmetry 14 01470 g004
Figure 5. STS model of the transfer line.
Figure 5. STS model of the transfer line.
Symmetry 14 01470 g005
Figure 6. Control functions of 1, 3, and 5.
Figure 6. Control functions of 1, 3, and 5.
Symmetry 14 01470 g006
Figure 7. STS model of Small Factory.
Figure 7. STS model of Small Factory.
Symmetry 14 01470 g007
Figure 8. Control functions of 1 and 3.
Figure 8. Control functions of 1 and 3.
Symmetry 14 01470 g008
Figure 9. Guideway.
Figure 9. Guideway.
Symmetry 14 01470 g009
Figure 10. Guideway.
Figure 10. Guideway.
Symmetry 14 01470 g010
Figure 11. Control functions of 11, 13, 15, 21, 23, and 25.
Figure 11. Control functions of 11, 13, 15, 21, 23, and 25.
Symmetry 14 01470 g011
Table 1. Propositions, algorithms, and examples in this paper.
Table 1. Propositions, algorithms, and examples in this paper.
Propositions/DefinitionsAlgorithmsExamples
Definition 1: SFBC of an event for predicate Example 2
Proposition 1: property of SFBC
Proposition 2: reachability on SFBC; Proposition 3: the relation between reachability subpredicate of P and the SFBCAlgorithm 1Example 3
Proposition 4: coreachability on SFBC; Proposition 5: the relation between coreachability subpredicate of P and the SFBCAlgorithm 2Example 4
Proposition 6: weak controllability on SFBC; Proposition 7: the relation between weak controllability subpredicate of P and the SFBCAlgorithm 3Example 5
Proposition 8: weak controllability and coreachability on SFBC; Proposition 9: the relation between weak controllability and coreachability subpredicate of P and the SFBCAlgorithm 4Example 6
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Gu, C.; Zhao, J.; He, Z. Supervisory Control of Automated Manufacturing Systems Based on State-Tree Structures. Symmetry 2022, 14, 1470. https://doi.org/10.3390/sym14071470

AMA Style

Gu C, Zhao J, He Z. Supervisory Control of Automated Manufacturing Systems Based on State-Tree Structures. Symmetry. 2022; 14(7):1470. https://doi.org/10.3390/sym14071470

Chicago/Turabian Style

Gu, Chan, Junbo Zhao, and Zhou He. 2022. "Supervisory Control of Automated Manufacturing Systems Based on State-Tree Structures" Symmetry 14, no. 7: 1470. https://doi.org/10.3390/sym14071470

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop