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

: 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 deﬁnition 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 ﬁrst, 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.


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, priorityfree 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.

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.

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 → {and, or, simple} is the type function ; 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 ST. 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".

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.

State-Tree Structures
} is a set of holons which can be matched to OR superstate of ST, 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 . Similarly, Γ : S T(ST) × Σ → S T(ST) represents a sub-state-tree of ST 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.

Predicate
Predicate P described on B(ST) in [17] is regarded as a function P : B(ST) → {0, 1}. A predicate is able to be recognized by a set of basic-state-trees, named as B P , thus 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 ST 1 , for example, 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, CR(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, CR(G, ·) : Pred(ST) → Pred(ST) is a predicate transformer. Clearly, CR(G, P) ≤ P and CR(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 The weakest element supC P(P) exists, which indicates that the supremal weakly controllable subpredicate of P exists with supC P(P) = {K|K ∈ C P(P)}.
Moreover, the nonblockingness of a predicate P is confirmed if R(G, P is stronger compared to CR(G, P). P is coreachable if P ≤ CR(G, P), which indicates the nonblockingness of P, as R(G, P) ≤ P ≤ CR(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., In particular, a (unique) supremal element supC 2 P(P) exists in C 2 P(P), which is given by supC 2 P(P) = {K|K ∈ C 2 P(P)}.
Notice that the reachability subpredicate of supC 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(ST) → Π be an SFBC for G, in which Π := {Σ ⊂ Σ|Σ u ⊂ Σ }. For σ ∈ Σ, clarify a control function (a predicate) f σ : B(ST) → {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 If R(G f , true) is stronger than CR(G f , true), 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 , true) = 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 = (ST, H, Σ, ∆, P 0 , P m ) is depicted with the state-tree shown in Figure 1 and holons shown in   For the state-tree shown in Figure 1, , 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 (Plant) = AND, implying that R_1 and R_2 work concurrently; T (R_1) = T (R_2) = OR, 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 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.
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_2_0}, which stands for the initial state-tree, that is, R_1 is at state 0 and R_2 is at 0;

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(ST) → Π is proposed to define the SFBC for G, in which 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 σ : 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
for the closed system supervised by the SFBC f . As for the predicate P, an SFBC f of σ on P, denoted by f 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.
(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 Thus, the following proposition is obtained.

Proposition 1.
For predicates P 1 ≤ P and P 2 ≤ P, Proof. With the intention of demonstrating the equation, it is necessary for us to show that f

Remark 2.
(1) For predicates P 1 and P 2 , there might exist b P 1 and b (2) Since the SFBC f of σ is a predicate, propositional logic operators are also defined as In consideration of an STS G = (ST, H, Σ, ∆, P 0 , P m ), which is depicted in Figure 2, suppose a predicate P with According to Definition 2, it is easy to know that

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.

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 = (ST, 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

Proposition 3. With a given STS G and a predicate P, let
Then, the proposition is proved to be true.
− → f under reachability over G with respect to Σ can be obtained by Algorithm 1.

Algorithm 1:
The SFBC f under reachability.
Input: A predicate P Output: The SFBC f of σ under reachability with respect to the predicate (1) According to this algorithm, any state-tree satisfying − → f σ is reachable from the initial state-tree; ( There is no other basic-state-tree b that satisfy (∀σ − → 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

Proposition 4. A predicate P is coreachable if
Proof. To prove this proposition, we need to investigate if (∀b It is easy to know that (∀b This implies that there exists s = σσ 1 · · · σ n with ∆(b, s) = b m P. According to the definition of coreachability predicate, b m CR(G, P), Γ(b m , σ n ) = b n CR(G, P), Γ(b n , σ n−1 ) = b n−1 CR(G, P), · · · , Γ(b 1 , σ) = b CR(G, P). Thus, Let G = (ST, 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.
It is easy to know that the coreachable predicate CR(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 CR(G, P) first is equivalent to the ← − f P .

Sfbc under Weakly Controllability
The weakest liberal precondition is the predicate transformer M σ : 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. (IF) Assume that the predicate P ∈ Pred(ST) is weakly controllable. Thus, (∀σ

Proposition 6. A predicate P is weakly controllable with respect to
. 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 supCP (P) in CP (P), the R(G, supCP (P)) is controllable and reachable. Thus, the SFBC f for R(G, supCP (P)) is of vital importance. The SFBC f for R(G, supCP (P)), which is controllable and reachable, can be obtained by Algorithm 3.

Algorithm 3: The SFBC of any event under controllability
Input: A predicate P and (∀σ ∈ Σ) f P σ Output: The SFBC f with respect to any event for under controllability according to Algorithm 1.

Proposition 7.
For a predicate P, the SFBC f under controllability obtained by computing the predicate R(G, supCP (P)) first is equivalent to − → f supCP (P) σ by Algorithm 3, i.e., the diagram commutes.
Note that the diagram in Figure 3 shows the relation between the predicate P and the SFBC over the reachability predicate f R(G,supCP (P)) . According to Proposition 7, for a predicate P, f R(G,supCP (P)) can be obtained by computing R(G, supCP (P)) first and then SFBC over R(G, supCP (P)). Similarly, f R(G,supCP (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.
f P f f f Figure 3. The relationship between the SFBC and the weakly controllable predicate.
Thus, for any event σ, f Thus, the SFBC f over any event σ obtained by computing R(G, supCP (P)) first is equivalent to the − → f supCP (P) σ .

Nonblocking Sfbc for Sts
According to Theorem 3.3 in [17], a nonblocking SFBC f for G with R(G f , true) = R(G, P) exists if P is weakly controllable and coreachable, where G f := (S T, H, Σ, ∆ f , P f 0 , P m ) and P f 0 = P ∧ P 0 . Notice that our supC 2 P (P) is the optimal supervisor that is coreachable instead of nonblocking, where supC 2 P (P) is the supremal element of C 2 P (P). Furthermore, R(G, supC 2 P (P)) = R(G, supN BCP (P)), where This means that both controllers agree on their reachable subpredicates and supC 2 P (P) is another optimal nonblocking controller. R(G, supC 2 P (P)) shows the final controlled behavior. Therefore, the control functions for R(G, supC 2 P (P)) are necessary to be discussed.

Proposition 8.
For a predicate P, ∀K ∈ C 2 P(P) if Proof. The proposition can be proved by the following two steps: , K ≤ CR(G, K)). For any b K, we need to prove b CR(G, K).

•
According to the definition of the coreachability predicate, if b m K, b m CR(G, K), obviously.
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.
Input: A predicate P Output: The SFBC f with respect to any event Compute the coreachable SFBC f ¬K i+2 σ for each σ as follows: according to Algorithm 1.
According to Theorem 3.3 in [17], a nonblocking SFBC f for G with R(G f , true) = R(G, P) exists if P is weakly controllable and coreachable, where G f := (S T, H, Σ, ∆ f , P f 0 , P m ) and P f 0 = 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 , true) = 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; Notice that the supC 2 P (P) is the optimal supervisor that is coreachable instead of nonblocking. For N BCP (P), R(G, supC 2 P (P)) = R(G, supN BCP (P)) is proved, which implies that for any event σ, f R(G,supC 2 P (P)) σ = f R(G,supN BCP (P)) σ . Thus, the nonblocking SFBC f for G with R(G f , true) = R(G, P) can be obtained by Algorithm 4. Compute the SFBC f K 1 σ according to Algorithm 3; for each σ as follows: Compute the SFBC f K 3 σ according to Algorithm 3; Compute the reachable SFBC f for each σ as follows: It is easy to know that R(G, supCP (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 Thus, the SFBC f over any event σ obtained by computing R(G, supCP (P)) first is equivalent to the f 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:

Propositions/Definitions Algorithms Examples
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 SFBC  [14] proposes an industrial "transmission line" composed of two machines TM_1, TM_2, and a testing unit TU, which is connected by buffers B_1 and B_2, as is depicted by Figure 5. If the workpiece is accepted after TU test, it can be released; otherwise, it will be returned to B_1 and reprocessed by TM_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, TL is an AND superstate and its components TM_1, TM_2, TU, B_1, and B_2 are parallel, implying that the system work at these states simultaneously. TM_1 is an OR superstate and its components TM_1_1 and TM_1_2 are exclusive, which means only one of TM_1_1 and TM_1_2 can be reached at a time. So as TM_2, TU, 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 TM_1_1 and B_1_0 transfers to TM_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 TM_1 stays at TM_1_0. Thus, to display the behavior of the system, ∆ can be given as follows:

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 {{TM_1_0 , TM_2_0, TU_0, B_1_0, B_2_0}, {TM_1_1, TM_2_0, TU_0, B_1_0, B_2_0},  {TM_1_0, TM_2_0, TU_0, B_1_1, B_2_0}, {TM_1_0, TM_2_1, TU_0, B_1_0, B_2_0}{TM_1  _0, TM_2_0, TU_0, B_1_0, B_2_1}, {TM_1_0, TM_2_0, TU_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.

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.
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 P 2 ({SM 1 _1, BUF_1}) = 0. The computation will focus on f P 2 ({SM 1 _1, BUF_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], {SM 1 _1, BUF_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.

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 exclu- 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.

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: 1.
The specification is explicitly saying that the dangerous situation (to be prohibited) is whenever the system is in a certain state. 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 P 2 ({SM_1_1, BUF_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 P 1 13 ({V_1_1, V_2_1}) = 0 does not imply that f P 2 13 ({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.

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.