Next Article in Journal
Metaverse and AI Digital Twinning of 42SiCr Steel Alloys
Previous Article in Journal
Mathematical and Physical Analyses of Middle/Neutral Surfaces Formulations for Static Response of Bi-Directional FG Plates with Movable/Immovable Boundary Conditions
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Modeling and Optimal Supervisory Control of Networked Discrete-Event Systems and Their Application in Traffic Management

1
Institute of Machine Intelligence, University of Shanghai for Science and Technology, Shanghai 200093, China
2
Department of Trade Union, Shanghai Publishing and Printing College, Shanghai 200093, China
3
School of Finance, Shanghai Lixin University of Accounting and Finance, Shanghai 201209, China
4
Postdoctoral Station of Applied Economics, Fudan University, Shanghai 200433, China
*
Author to whom correspondence should be addressed.
Mathematics 2023, 11(1), 3; https://doi.org/10.3390/math11010003
Submission received: 13 November 2022 / Revised: 6 December 2022 / Accepted: 15 December 2022 / Published: 20 December 2022

Abstract

:
In this paper, we investigate the modeling and control of networked discrete-event systems (DESs), where a supervisor is connected to the plant via an observation channel and the control commands issued by the supervisor are delivered to the actuator of the plant via a control channel. Communication delays exist in both the observation channel and the control channel. First, a novel modeling framework for the supervisory control of DESs subject to observation delays and control delays is presented. The framework explicitly models the interaction process between the plant and the supervisor over the communication channels. Compared with the previous work, a more accurate “dynamics” of the closed-loop system is specified. Under this framework, we further discuss how to estimate the states of the closed-loop system in the presence of observation delays and control delays. Based on the state estimation, we synthesize an optimal supervisor on the fly to maximize the controlled behaviors while preventing the system from leaving the desired behaviors under communication delays. We compare the proposed supervisor with the supervisor proposed in the literature and show that the proposed supervisor is more permissive. As an application, we show how the proposed approach can be applied to manage vehicles in a signal intersection. Finally, we show how to extend the proposed framework to model a system whose actuators and sensors are distributed at different sites.

1. Introduction

The dynamics of DESs are driven by sequences of asynchronous events. The main control theory developed for DESs is the supervisory control theory, where a supervisor is desired to disable events that lead to some undesirable event sequences. Since the supervisor cannot control and observe all the events, the desired behaviors (control objective) could be unachievable. The necessary and sufficient conditions for the existence of a supervisor are characterized as controllability [1] and observability [2]. Since then, the supervisory control is extended in several directions, such as decentralized supervisory control [3], robust supervisory control [4], asynchronous supervisory control [5], and quantitative supervisory control [6].
Nowadays, in many industrial applications, the supervisor is usually connected to the plant via communication networks. Such a network structure provides efficient ways for controlling DESs. However, the communication delays existing in the observation channel and the control channel pose significant challenges to the supervisory control of DESs [7,8,9,10,11,12,13,14]. Thus, networked DESs have drawn much attention in the past few years [15,16,17,18,19,20] Most of the current works on networked supervisory control focus on verifying if a given control objective can be achieved under observation delays and control delays [20,21,22,23,24,25,26,27,28,29,30], which is known as the supervisor existence problem. When the desired language cannot be exactly achieved, one would compute a safe control policy online or offline, known as the supervisor synthesis problem [31,32,33,34,35,36]. In this paper, we focus on solving the maximally-permissive supervisor synthesis problem under observation delays and control delays. In particular, based on the infinite observed sequence of events, an online algorithm is presented in this paper to calculate a maximal supervisor under observation delays and control delays. The calculated online supervisor is optimal because (i) the system is prevented from leaving the desired language even if communication delays exist in both the observation channel and the control channel, and (ii) given (i) is satisfied, the language generated by the closed-loop system is maximized.
In the supervisor synthesis, state estimation is a crucial step in determining a valid control action after each new observation. The state estimation problem can be briefly stated as follows: estimate all of the states of the closed-loop system that may be under communication delays, given that all future control decisions are unknowable. To synthesize an optimal supervisor under communication delays, the authors in [22,24,37,38] compute the state estimate based on the open-loop system without using the information of the controls imposed on the system. As stated in [39], the state estimate calculated in [22,24,37,38] contains some states that have been prevented from reaching. Therefore, the solutions computed in [22,24,37,38] are suboptimal for the unrestricted domain of observed event sequences. In [29], the state estimates are computed based on the assumption that the control delays and the observation delays are constant. The proposed approach fails to deal with nondeterministic observation delays and control delays. Recently, the authors in [26] calculated the state estimates of the networked DESs by taking the information of the control decision’s history into consideration. Nevertheless, the work of [26] can be further improved in two directions. First, the framework of the networked supervisory control adopted in [26] is conservative in the sense that the specified language of the closed-loop system is an over-approximation of the actual language of the closed-loop system. That is, it may include some sequences that never occur in practice (see Example 1 for more details), and the state estimate computed by [26] may contain some states that the closed system never reaches. Thus, the synthesized supervisor could be restrictive in the sense that it may disable some unnecessary events. Second, the work of [26] considers only control delays. When only control delays exist, the observation of a supervisor to a string is deterministic and the control command made after a string can be uniquely determined. In practice, however, the delays often exist in both the observation channel and the control channel. If this is the case, the observation of a supervisor to a string is nondeterministic and varies with the different observations. The supervisor may make different control decisions based on different observations, which complicates the supervisor’s synthesis problem.
In this paper, a new modeling framework for the supervisory control of DESs under control delays and observation delays is first presented. Specifically, in the newly proposed framework, we model the observation channel by a sequence of pairs of an occurred event and its observation delays (called the observation channel configuration). We also model the control channel by a sequence of pairs of an issued control command and its control delays (called the control channel configuration). We then build an automaton to model the interaction process between the plant and the supervisor over the observation channel and the control channel. In the automaton, two special types of events representing the respective receptions of observable events and the executions of control commands are introduced. Each state of the automaton dynamically tracks the plant state, the current control command, the observation channel configuration, the control channel configuration, and the supervisor state. Based on the constructed automaton, the exact language of the closed-loop system can be specified. Under the framework, we then discuss how to estimate (and predict) all the states of the current (and future) closed-loop system. Without any structural assumption on the solution space, an online algorithm is finally presented to calculate a maximal network-controlled policy based on the infinite observed sequence of events. We further compare the proposed supervisor with the supervisor proposed in [26]. The previous framework may contain some physically impossible strings. This may damage the supervisor’s synthesis because a synthesized good supervisor may be mistakenly taken as a bad supervisor. There exists the possibility that all of the illegal strings that may be generated by the closed-loop system are physically impossible. In such situations, the controlled system can never reach an illegal state as all of the illegal strings never occur in reality. Since the proposed framework excludes all physically impossible strings, the state estimation is more precise than the previous approach. Thus, the proposed supervisor is more permissive than the previous one.
To show the application of the proposed modeling and control approach, we consider the vehicle management problem in a signal intersection. When a self-driving vehicle arrives at the intersection, it needs to communicate with the intersection to determine the traffic light color. If the traffic light is yellow or red, it must stop and wait until the traffic light is switched to green. Otherwise, if the traffic light is green, it can pass through the intersection. We show that the proposed approach can be used to achieve control objectives when control delays and observation delays exist.
Finally, we briefly discuss how to extend the proposed approaches to deal with non-FIFO observations and controls. Specifically, we consider a system where the actuators and the sensors are distributed at different sites. For each actuator, the supervisor sends control commands to it over an individual control channel, and for each sensor, the detected information is sent to the supervisor over an individual observation channel. Different channels may have different upper bounds of delays. Techniques are developed to model the dynamics of the closed-loop system.
The proposed supervisor synthesis approach differs from the existing works in the following sense.
  • In contrast to [26], we consider both the control delays and the observation delays in this paper. That is, the observation of the supervisor to a string is nondeterministic and varies with the different observation delays. For different observations, the supervisor may make different control decisions. An event after a string may be allowed to occur after some of these control decisions but not be allowed to occur for the other control decisions. Thus, we must consider all possibilities. In addition, the closed-loop system behaviors specified in the proposed framework exclude those strings that never occur in reality and are shown to be more accurate. As a result, the supervisor can estimate the states of the closed-loop system more accurately and make control decisions more reasonable at any instant.
  • Compared with [22,24,37,38], the supervisor makes control decisions based on closed-loop systems. In other words, the synthesized supervisor considers controls imposed on the system when making control decisions. Thus, the control command made by the proposed supervisor is optimal with respect to the unrestricted domain of the observed event sequences.
  • Different from [29], the proposed model assumes that the observation delays and control delays are nondeterministic, which often happens. In this paper, the observation delays and control delays are measured by the number of events occurring in the plant. More specifically, the observation delays and control delays are upper-bounded by N o and N c events, respectively. That is, all of the events delayed at the observation channel can be communicated to the supervisor (in the same order that they are generated) before no more than N o event occurrences. All control commands delayed at the control channel can be executed by the actuator (in the same order that they are issued) before no more than N c events (since they are issued).
The rest of this paper is organized as follows. Section 2 presents some preliminary concepts and the required assumptions in this paper. Section 3 introduces a new modeling framework for supervisory control with observation delays and control delays. An online procedure for estimating the states of the closed-loop system is presented in Section 4. Section 5 synthesizes a maximal and safe networked supervisor on the fly. Section 6 discusses an application for the vehicle control in a signal intersection. Section 7 extends the proposed approaches to deal with non-FIFO observations and controls. Section 8 concludes this paper.

2. Preliminaries

We model a DES using a deterministic finite-state automaton G = ( Q , Σ , δ , q 0 ) , where Q is the finite set of states; Σ is the finite set of events; δ : Q × Σ Q is the transition function; q 0 is the initial state. Σ * is the Kleene closure of Σ , i.e., the set of all sequences over events in Σ . δ is extended to Q × Σ * in the usual way [40]. The language generated by G is denoted by L ( G ) . ε is the empty sequence. “!” means “is defined”.
Given a s = σ 1 σ 2 σ k Σ * , we write s i = σ 1 σ 2 σ i for i = 1 , 2 , , k , and  s 0 = ε . | s | is the length of s. s ¯ = { s | ( s ) s s = s } denotes the set of all prefixes of s. s i denotes the prefix of s, such that | s i | = max { 0 , | s | i } . Let Σ N = { s Σ * : | s | N } . Let s \ t be the suffix of s after its prefix t, i.e.,  t ( s \ t ) = s . If t is not a prefix of s, then s \ t is not defined. The prefix closure of a language L Σ * is denoted by L ¯ . L is prefix-closed if L = L ¯ . In this paper, only prefix-closed languages are considered. N is the set of natural numbers. Let [ 0 , N ] = { n N : n N } be the set of natural numbers no larger than N. Given G 1 and G 2 , we say G 1 is a sub-automaton of G 2 , denoted by G 1 G 2 , if  G 1 can be obtained from G 2 by deleting some states in G 2 and all transitions connect to these states.
In many applications, the original system G may not satisfy the desired specification. To make the system fulfill the specification, the supervisory control finds a supervisor to dynamically disable events that lead to some undesirable sequences. In general, not all of the events are controllable and observable. We partition Σ = Σ c Σ u c into the set of controllable events Σ c and the set of uncontrollable events Σ u c . We also partition Σ = Σ o Σ u o into the set of observable events Σ o and the set of unobservable events Σ u o . The natural projection P : L ( G ) Σ o * is recursively defined as: P ( ε ) = ε and, for all s , s σ L ( G ) , P ( s σ ) = P ( s ) σ , if  σ Σ o , and  P ( s σ ) = P ( s ) , if  σ Σ u o .
We denote, in this paper, the supervisor by a pair S = ( A , χ ) , where A = ( X , Σ o , ξ , x 0 ) is a deterministic automaton with L ( A ) = Σ o * , and  χ : X 2 Σ is a function that specifies the set of events to be enabled. Specifically, for any t Σ o * , we denote χ ( ξ ( x 0 , t ) ) by the set of events to be enabled after observing t. With a slight abuse of notation, we write S ( t ) = χ ( ξ ( x 0 , t ) ) . More details on the definition of S are provided in Example 1. Let Π = { π 2 Σ : Σ u c π } be the set of all the admissible control commands. Since we cannot disable an uncontrollable event, S ( t ) Π for all t Σ o * . The control objective in this paper is given by a specification language K L ( G ) . We assume that K can be represented by a sub-automaton H G of G. The automaton representation of language K = L ( H ) with K L ( G ) can always be changed to satisfy H G .
As shown in Figure 1, in the networked DESs, communications from the plant (supervisor) to the supervisor (plant) for the observation (control) are carried out over an observation channel (control channel) subject to random delays. We assume first-in-first-out (FIFO) is satisfied in both the observation and control, i.e., the observations of events are sent to the supervisor in the same order that they are generated and the control commands are executed in the same order that they are issued. As shown in [21,22,23,24], the delays are measured by the number of event occurrences (observable or not). We assume that (1) the observation delays are upper-bounded by N o event occurrences, i.e.,  when an observable event occurs, it can be communicated to the supervisor before no more than N o additional event occurrences; (2) the control delays are upper-bounded by N c event occurrences, i.e., after a control command is issued, it can be executed before no more than N c event occurrences. We assume that the initial control command has been deployed in the actuator of the plant beforehand. When the plant is initialized and starts to work, the initial control command can be executed without any delays.
Given system G and a supervisor S defined over Σ o * , we consider all possible strings, which may be generated by the closed-loop system (also called the controlled system) when the observation delays and control delays are upper-bounded by N o and N c , respectively. Before that, let us first recall how the previous works specify the language of the closed-loop system under observation delays and control delays. As shown in [23], an upper bound on possible strings, denoted by L a ( S / G ) , which may be generated by the controlled system under observation delays and control delays is defined as follows:
  • ε L a ( S / G ) ;
  • for any s L a ( S / G ) and s σ L ( G ) with σ Σ , s σ L a ( S / G ) if σ is enabled by one of the control commands issued in the past N c + N o steps, i.e.,
    [ ( s L a ( S / G ) ) ( σ Σ ) s σ L ( G ) ] s σ L a ( S / G ) σ S ( P ( s ) ) S ( P ( s 1 ) ) S ( P ( s N o N c ) ) .
In [22,24], the language L a ( S / G ) is also referred to as the large language. However, as discussed in [23,26], L a ( S / G ) is not the exact language that may be generated by the closed-loop system. It is essentially an over-approximation of the actual language that may be generated by the closed-loop system and may contain some sequences that never occur in reality. To make this paper self-contained, we use the following simple example to illustrate this.
Example 1. 
Consider the system G depicted in Figure 2a with Σ = { α , β , η } , Σ o = { α , β } , and  Σ c = Σ . Let N o , 1 = N c , 1 = 1 , i.e., the upper bounds of control delays and observation delays are both 1. The supervisor S = ( A , χ ) is depicted in Figure 2b. The function χ is specified by the set of events associated with each state in Figure 2b. Specifically, S ( ε ) = χ ( x 0 ) = π 0 = { α , η } . When α is observed, automaton A moves to state x 1 from state x 0 , and  S ( α ) = χ ( x 1 ) = π 1 = { β } . When α β is observed, automaton A moves to state x 2 from state x 1 , and  S ( α β ) = χ ( x 2 ) = π 2 = { η } . For the other t Σ o * \ { ε , α , α β } , S ( t ) = χ ( x 3 ) = π 3 = . We first show that α β α L ( S / G ) .
At first, we have ε L a ( S / G ) . Since ε L a ( S / G ) , α S ( ε ) , and  α L ( G ) , by definition, α L a ( S / G ) . Moreover, since α L a ( S / G ) , β S ( P ( α ) ) = S ( α ) , and  α β L ( G ) , by definition, α β L a ( S / G ) . Then, since α β L a ( S / G ) , α S ( P ( ( α β ) 2 ) ) = S ( ε ) , and  α β α L ( G ) , by definition, α β α L a ( S / G ) . We next show that α β α never occurs in practice.
Since α S ( ε ) , α S ( α ) , and  α S ( α β ) , one can check that α can occur after α β only if S ( ε ) is taking effect when α occurs after α β . However, since β S ( α ) and β S ( ε ) , S ( α ) must have been executed at the time β occurs after α. In other words, S ( ε ) must have been replaced by S ( α ) after the occurrence of α β . Therefore, α β α never occurs (under S) in reality.
To obtain the exact language of the closed-loop system, we need a new modeling framework for networked DESs, which will be discussed in the following section.

3. Modeling Framework for Networked Supervisory Control

In this section, we consider a new modeling framework for the network supervisory control of DESs. In the new framework, we model the observation channel by a sequence of observable events waiting to be communicated and their observation delays. We also model the control channel by a sequence of control commands waiting to be executed and their control delays. We then build an automaton to describe how the supervisor and the plant interact with each other over the observation channel and the control channel. It is shown that the language of the closed-loop system subject to communication delays can be simply “decoded” from sequences of the constructed automaton.

3.1. Modeling of the Communication Channels

Let us first consider the observation channel.
Definition 1. 
The observation channel configuration is defined as a sequence of pairs:
θ o = ( σ 1 , n 1 ) ( σ k , n k ) ,
where σ 1 σ k Σ o * are the observable events (in the same order that they are generated) that have occurred but are currently delayed at the observation channel, and  n i [ 0 , N o ] , i = 1 , , k is the number of event occurrences since σ i occurred. If the observation channel is empty, θ o = ε .
We denote by Θ o ( Σ o × [ 0 , N o ] ) N the set of all the possible observation channel configurations, where N N is the maximum length of θ o Θ o . The observation channel configuration θ o is evolving when a new event occurs or a new observable event is communicated. To update θ o , we introduce the following operators.
  • When a new event σ Σ occurs, to update the observation channel configuration, we define the operator IN o b s : Θ o × Σ Θ o as: for all θ o Θ o and all σ Σ ,
    IN o b s ( θ o , σ ) = θ o + if σ Σ u o θ o + ( σ , 0 ) if σ Σ o ,
    where if θ o = ( σ 1 , n 1 ) ( σ k , n k ) ε , θ o + = ( σ 1 , n 1 + 1 ) ( σ k , n k + 1 ) , and if θ o = ε , θ o + = ε .
  • When a new observable event σ Σ o delayed at the observation channel is communicated, to update the observation channel configuration, we define the operator OUT o b s : Θ o × Σ o Θ o as: for all θ o Θ o and all σ Σ o ,
    OUT o b s ( θ o , σ ) = θ o \ ( σ 1 , n 1 ) if θ o = ( σ 1 , n 1 ) ( σ k , n k ) ε σ = σ 1 undefined otherwise .
When an event σ Σ occurs in the plant, all the natural numbers in θ o should be ’plus 1’ since they are used to count the observation delays. Furthermore, if  σ Σ o , by FIFO, we still need to add ( σ , 0 ) to the end of θ o for recording the new observable event occurrence. That is what the operator IN o b s ( · ) does in Equation (1). On the other hand, when a new observable event is communicated to the supervisor, by FIFO, it must be the first event queued at the observation channel. Therefore, we define OUT o b s ( · ) to remove the first event σ from θ o . Next, let us consider the control channel.
Definition 2. 
The control channel configuration is defined as a sequence of pairs:
θ c = ( π 1 , m 1 ) ( π h , m h ) ,
where π 1 π h Π * is a sequence of control commands (in the same order that they are issued) that have been issued but are currently delayed at the control channel, and  m i [ 0 , N c ] , i = 1 , , h is the number of event occurrences since π i has been issued. If the control channel is empty, θ c = ε .
We denote by Θ c ( Π × [ 0 , N c ] ) M the set of all possible control channel configurations, where M N is the maximum length of θ c Θ c . To update θ c , we introduce the following operators.
  • When a new event σ Σ occurs in the plant, to update the control channel configuration, we define the operator PLUS : Θ c Θ c as: for all θ c Θ c ,
    PLUS ( θ c ) = θ c + ,
    where if θ c = ( π 1 , m 1 ) ( π h , m h ) ε , θ c + = ( π 1 , m 1 + 1 ) ( π h , m h + 1 ) , and if θ c = ε , θ c + = ε .
  • When a new control command π Π is issued by the supervisor, to update the control channel configuration, we define the operator IN c t r : Θ c × Π Θ c as: for all θ c Θ c and all π Π ,
    IN c t r ( θ c , π ) = θ c ( π , 0 ) .
  • When a new control command π Π delayed at the control channel is executed, to update the control channel configuration, we define the operator OUT c t r : Θ c × Π Θ c as: for all θ c Θ c and all π Π ,
    OUT c t r ( θ c , π ) = θ c \ ( π 1 , m 1 ) if θ c = ( π 1 , m 1 ) ( π h , m h ) ε π = π 1 undefined otherwise .
When a new event occurs, for recording the control delays, PLUS ( θ c ) adds 1 to all of the natural numbers in θ c . When a new control command is issued (following a new observation), IN c t r ( θ c , π ) adds the newly issued control command π to the end of θ c . Moreover, when a new control command is executed, OUT c t r ( θ c , π ) removes the first control command π from θ c .

3.2. Language of the Closed-Loop System

We next show how to specify the language that may be generated by the controlled system subject to observation delays and control delays. Specifying an accurate language requires the information of the control command that takes effect in the interval between two successive observable event communications. In the standard supervisory control framework without communication delays, the control command taking effect is exactly the one that was most-recently issued, which can be uniquely determined by the sequence that has been observed so far. However, in the presence of communication delays, the control commands taking effect (between two successive observable event communications) are non-deterministic.
To obtain the exact language of the closed-loop system, we construct an automaton that dynamically tracks the state of the plant, the current control command, the observation channel configuration, the control channel configuration, and the state of the supervisor. This model essentially captures the interaction process between the supervisor and the plant over the observation channel and the control channel. Before we formally construct the automaton, let us introduce two special types of events.
  • To keep track of what has been successfully communicated so far, we define the bijection f : Σ o Σ f , such that Σ f = { f ( σ ) : σ Σ o } is a set disjointed from Σ . For all σ Σ o , we use f ( σ ) to denote that the occurrence of σ was communicated. Define f 1 as, for all f ( σ ) Σ f , f 1 ( f ( σ ) ) = σ . We extend f to a set of sequences, as f ( ε ) = ε and, for all s = σ 1 σ 2 σ k Σ o * , f ( s ) = f ( σ 1 ) f ( σ 2 ) f ( σ k ) Σ f * . We also extend f 1 to a set of sequences, as f 1 ( ε ) = ε and, for all f ( s ) = f ( σ 1 ) f ( σ 2 ) f ( σ k ) Σ f * , f 1 ( f ( s ) ) = σ 1 σ 2 σ k Σ o * .
  • To model which control action is taken, we define bijection g : Π Σ g , such that Σ g = { g ( π ) : π Π } is disjointed from Σ Σ f . For all π Π , we use g ( π ) to denote that the control command π was executed. Define g 1 as, for all g ( π ) Σ g , g 1 ( g ( π ) ) = π . We extend g to a set of sequences, as g ( ε ) = ε and, for all μ = π 1 π 2 π k Π * , g ( μ ) = g ( π 1 ) g ( π 2 ) g ( π k ) Σ g * . We also extend g 1 to a set of sequences, as g 1 ( ε ) = ε and, for all g ( μ ) = g ( π 1 ) g ( π 2 ) g ( π k ) Σ g * , g 1 ( g ( μ ) ) = π 1 π 2 π k Π * .
We show in Figure 3 how the plant interacts with the supervisor over the observation channel and the control channel. When a new observable event σ Σ o occurs in the plant, it is immediately added to the end of the observation channel. Since the observation delays are upper-bounded by N o event occurrences, the maximum observation delays after the occurrence of σ should be no larger than N o , i.e.,  n 1 + 1 N o . Similarly, since the control delays are upper-bounded by N c event occurrences, the maximum control delays after the occurrence of σ should be no larger than N c , i.e.,  m 1 + 1 N c . By FIFO, the first event delayed at the observation channel, i.e.,  σ 1 can be communicated to the supervisor. If σ 1 is communicated to the supervisor, we need to remove ( σ 1 , n 1 ) from the head of the observation channel. Meanwhile, following the observation of σ 1 , a new control command χ ( ξ ( x , σ 1 ) ) is made and is added to the end of the control channel. Moreover, by FIFO, the control commands are executed in the same order that they are issued. Thus, π 2 , , π h cannot be executed until π 1 is executed. If π 1 is executed, we need to remove ( π 1 , m 1 ) from the head of θ c .
Notations: Given a θ o Θ o , if  θ o = ( σ 1 , n 1 ) ( σ k , n k ) ε , let MAX ( θ o ) = n 1 be the maximum delay occurring in the observation channel, and if θ o = ε , let MAX ( θ o ) = 0 . Similarly, given a θ c Θ c , if  θ c = ( π 1 , m 1 ) ( π h , m h ) ε , let MAX ( θ c ) = m 1 be the maximum delay occurring in the control channel, and if θ c = ε , let MAX ( θ c ) = 0 .
Given a supervisor S = ( A , χ ) with A = ( X , Σ o , ξ , x 0 ) , we formally construct G S = ( Q S , Σ S , δ S , q 0 , S ) , where Q S Q × Π × Θ o × Θ c × X is the state space; q 0 , S = ( q 0 , S ( ε ) , ε , ε , x 0 ) is the initial state, where S ( ε ) is the initial control command (since the initial control command can be immediately executed when the plant starts to work, we assume that the initial control command takes effect at first); Σ S Σ Σ f Σ g is the event set; the transition function δ S : Q S × Σ S Q S is defined as:
  • For all q ˜ = ( q , π , θ o , θ c , x ) Q S and all σ Σ ,
    δ S ( q ˜ , σ ) = q ˜ if δ ( q , σ ) ! σ π MAX ( θ o + ) N o MAX ( θ c + ) N c undefined otherwise ,
    where q ˜ = ( δ ( q , σ ) , π , IN o b s ( θ o , σ ) , PLUS ( θ c ) , x ) ;
  • For all q ˜ = ( q , π , θ o , θ c , x ) Q S and all f ( σ ) Σ f ,
    δ S ( q ˜ , f ( σ ) ) = q ˜ if OUT o b s ( θ o , σ ) ! undefined otherwise ,
    where q ˜ = ( q , π , OUT o b s ( θ o , σ ) , IN c t r ( θ c , χ ( ξ ( x , σ ) ) ) , ξ ( x , σ ) ) ;
  • For all q ˜ = ( q , π , θ o , θ c , x ) Q S and all g ( γ ) Σ g ,
    δ S ( q ˜ , g ( γ ) ) = q ˜ if OUT c t r ( θ c , γ ) ! undefined otherwise ,
    where q ˜ = ( q , γ , θ o , OUT c t r ( θ c , γ ) , x ) .
Equation (6): for any ( q , π , θ o , θ c , x ) Q S , an event σ Σ can occur at q only if (i) σ is active at q, i.e.,  δ ( q , σ ) ! ; (ii) σ is allowed to occur by the control command in use, i.e.,  σ π ; (iii) after the occurrence of σ , the control delays and the observation delays are no larger than N c and N o , respectively, i.e.,  MAX ( θ c + ) N c MAX ( θ o + ) N o . When σ occurs at q, to track the plant state, we set q δ ( q , σ ) . Meanwhile, to update the observation channel configuration and the control channel configuration, by Equations (1) and (3), we set θ o IN o b s ( θ o , σ ) and θ c PLUS ( θ c ) . Since no new control command is executed, we keep π unchanged.
Equation (7): for any ( q , π , θ o , θ c , x ) Q S , if a new observable event σ is communicated (denoted by f ( σ ) Σ f ), by FIFO, σ must be the first event queued at the observation channel, i.e.,  OUT o b s ( θ o , σ ) ! . When σ is communicated, by Equation (2), we set θ o OUT o b s ( θ o , σ ) . Meanwhile, upon the communication of σ , the supervisor moves to state ξ ( x , σ ) and sends a new control command χ ( ξ ( x , σ ) ) to the actuator of the plant. Correspondingly, we set x ξ ( x , σ ) and θ c IN c t r ( θ c , χ ( ξ ( x , σ ) ) ) .
Equation (8): for any ( q , π , θ o , θ c , x ) Q S , if a new control command γ Π is executed (denoted by g ( γ ) Σ g ), by FIFO, it must be the first control command queued at the control channel, i.e.,  OUT c t r ( θ c , γ ) ! . When γ is executed, by FIFO, the control command that takes effect becomes γ , and the control commands delayed at the control channel become π 2 π h . Correspondingly, we have π γ and θ c OUT c t r ( θ c , γ ) .
Remark 1. 
By the construction, G S satisfies all of the assumptions made in this paper. Specifically, by Equation (6), we know the maximum delay occurring in the observation channel is no larger than N o , and the maximum delay occurring in the control channel is no larger than N c . By Equations (7) and (8), the delayed observable events are communicated to the supervisor in the same order that they are generated, and the delayed control commands are delivered to the plant in the same order that they are issued, i.e., both the observation channel and the control channel satisfy the FIFO property. Moreover, by Equations (7) and (8), the observation delays and control delays are non-deterministic. That is, an observable event can be communicated in any one of the following N o steps from the occurrence, and a control command can be executed in any one of the following N c steps from when it is issued.
Remark 2. 
In some control applications, there may exist communication losses between the plant and the supervisor. For example, some observable transitions may be lost when they are communicated to the supervisor. Let us denote the set of transitions of G by δ G = { ( q , σ , q ) : δ ( q , σ ) = q } . We also denote the set of observable transitions of G by δ G , o = { ( q , σ , q ) : δ ( q , σ ) = q σ Σ o } . We partition δ G , o into δ G , L and δ G , o \ δ G , L , where δ L is the set of transitions whose corresponding event occurrences are either observed without losses or observed with losses. To model possible observation losses, we can first refine the structure of G by adding parallel ε-transitions to the transitions that may be lost in δ L and obtain G = ( Q , Σ { ε } , δ , q 0 ) , where δ = δ { ( q , ε , q ) : ( q , σ , q ) δ L } . Using techniques developed in this section, we can construct G S . Note that when constructing G S , the supervisor does not need to make any control decisions following the communication of ε ( f ( ε ) occurs). Although the occurrence of ε cannot be sensed by the supervisor, all of the natural numbers in θ c and θ o should be added by 1 when ε occurs (as an event occurred but was lost). In this paper, we focus on dealing with the nondeterministic observation delays and control delays existing between the supervisor and the plant. The formal approaches for implementing supervisory control under communication delays and losses are beyond the scope of this paper, yet a fruitful area for future exploration.
We use the following example to further illustrate how to construct G S .
Example 2. 
Consider the system G depicted in Figure 2a with Σ = { α , β , η } , Σ o = { α , β } , and  Σ c = Σ . Let N o , 1 = N c , 1 = 1 . The supervisor S = ( A , χ ) is depicted in Figure 2b. We now construct G S using G and S.
The initial state of G S is q ˜ 0 = ( q 0 , π 0 , θ o 0 , θ c 0 , x 0 ) = ( 0 , π 0 , ε , ε , x 0 ) . By Figure 2a, we have δ ( q 0 , α ) = 1 . Moreover, since α π 0 , MAX ( ( θ o 0 ) + ) = 0 N o , and  MAX ( ( θ c 0 ) + ) = 0 N c , by Equation (6), we have δ S ( q ˜ 0 , α ) = q ˜ 1 = ( q 1 , π 1 , θ o 1 , θ c 1 , x 1 ) , where q 1 = δ ( q 0 , α ) , π 1 = π 0 , θ o 1 = IN o b s ( θ o 0 , α ) , θ c 1 = PLUS ( θ c 0 ) , and  x 1 = x 0 . Since α Σ o , by Equation (1), IN o b s ( θ o 0 , α ) = ( α , 0 ) . By Equation (3), PLUS ( θ c 0 ) = ε . Therefore, q ˜ 1 = ( q 1 , π 1 , θ o 1 , θ c 1 , x 1 ) = ( 1 , π 0 , ( α , 0 ) , ε , x 0 ) .
Next, consider state q ˜ 1 . Since θ o 1 = ( α , 0 ) , by Equation (2), OUT o b s ( θ o 1 , α ) = ε . By Equation (7), δ S ( q ˜ 1 , f ( σ ) ) = ( q 2 , π 2 , θ o 2 , θ c 2 , x 2 ) , where q 2 = q 1 , π 2 = π 1 , θ o 2 = OUT o b s ( θ o 1 , σ ) , θ c 2 = IN c t r ( θ c 1 , χ ( ξ ( x 1 , σ ) ) ) , and  x 2 = ξ ( x 1 , α ) . By Figure 2b, ξ ( x 1 , α ) = ξ ( x 0 , α ) = x 1 and χ ( ξ ( x 1 , α ) ) = χ ( x 1 ) = π 1 . By Equation (4), IN c t r ( θ c 1 , χ ( ξ ( x 1 , α ) ) ) = ( π 1 , 0 ) . Therefore, δ S ( q ˜ 1 , f ( σ ) ) = ( 1 , π 0 , ε , ( π 1 , 0 ) , x 1 ) .
In this way, we can define all of the transitions. Finally, the complete G S is constructed as shown in Figure 4.
For all μ L ( G S ) , let ψ ( μ ) and ψ f ( μ ) be the sequences obtained by removing all the event occurrences in Σ f Σ g and Σ Σ g , respectively, without changing the order of the remaining event occurrences in μ . For example, consider μ = α f ( α ) g ( π 1 ) β L ( G S ) in Figure 4. By the definitions of ψ ( · ) and ψ f ( · ) , we have ψ ( μ ) = α β and ψ f ( μ ) = f ( α ) . We extend ψ and ψ f to a set of sequences in the usual way. Intuitively, for all μ L ( G S ) , ψ ( μ ) tracks the sequence that occurred in the plant, and  f 1 ( ψ f ( μ ) ) tracks what the supervisor observed after the occurrence of ψ ( μ ) . The following proposition formally proves this.
Proposition 1. 
Given an arbitrary μ L ( G S ) , we write δ S ( q 0 , S , μ ) = ( q , π , θ o , θ c , x ) . Then, (i) q = δ ( q 0 , ψ ( μ ) ) and (ii) x = ξ ( x 0 , f 1 ( ψ f ( μ ) ) ) .
Proof. 
Please see Appendix A.    □
By Proposition 1, the dynamics of the closed-loop system can be simply obtained by removing all of the events in Σ f Σ g from sequences generated by G S , which yields the following definition.
Definition 3. 
Given a system G and a supervisor S, we construct G S as described above. All possible strings that may be generated by the closed-loop system when the observation delays and control delays are upper-bounded by N o and N c , respectively, are defined as L ( S / G ) = ψ ( L ( G S ) ) .
Remark 3. 
By Definition 3 and Figure 4, α β α is not included in L ( S / G ) . As we already discussed in Example 1, α β α never occurs in practice. This example justifies the advantage of the proposed modeling framework.
Given two supervisors S 1 and S 2 , we say that S 1 is smaller than S 2 , denoted by S 1 S 2 , if for all t Σ o * , S 1 ( t ) S 2 ( t ) , and we say that S 1 is strictly smaller than S 2 if S 1 S 2 , and there exists t Σ o * , such that S 1 ( t ) S 2 ( t ) . The following proposition states that the more events a supervisor S enables, the larger the language L ( S / G ) the closed-loop system generates.
Proposition 2. 
Given two S i = ( A i , χ i ) with A i = ( X i , Σ o , ξ i , x 0 , i ) , i { 1 , 2 } , we construct G S i = ( Q S i , Σ S i , δ S i , q 0 , S i ) as described above. Then, if  S 1 S 2 , we have L ( S 1 / G ) L ( S 2 / G ) .
Proof. 
The proof is provided in Appendix B.    □
By Proposition 2, to synthesize a supervisor, such that the closed-loop language is maximal and safe, we only need to synthesize a supervisor’s maximal supervisor, such that the closed-loop system behaviors are safe. We next formally formulate the optimal supervisor synthesis problem.

3.3. Problem Formulation

Before we formally present the problem to be solved, let us first introduce the following notation. Given a supervisor S, for a prefix-closed language L Σ o * , S | L means that S is restricted to a smaller domain L, defined as S | L ( t ) = S ( t ) , if  t L , and undefined, otherwise. Assuming that the supervisor observes t Σ o * , our goal is to compute a maximal and safe supervisor on the fly, for each t i t ¯ , i = 0 , 1 , , | t | .
Problem 1. 
Assuming that the system G executes an arbitrarily long sequence s L ( G ) and the current observation for s is t Σ o * , we find a supervisor S, such that:
  • S is safe, i.e.,  L ( S / G ) K ;
  • S | t ¯ is maximal, i.e.,  there is no other S that satisfies (1) with S | t ¯ S | t ¯ .
Remark 4. 
Since we focus on an online supervisor synthesis, we only need to ensure that the control decisions that make up the current instant are optimal. That is why S is only required to be optimal on t ¯ (instead of the whole Σ o * ).
Remark 5. 
The solutions to Problem 1 need not be unique. Actually, there may exist several incomparable maximal solutions. In this paper, we emphasize how to online synthesize a “greedily maximal” supervisor, rather than ambitiously calculate all possible solutions.

4. State Estimation under Communication Delays

To make a control decision right after each new observation, the supervisor needs to estimate the states of the closed-loop system (subject to observation delays and control delays) on the fly. We focus on the problem of online networked state estimation in this section. Let us first introduce the definition of the networked state estimate (NSE) as follows.
Definition 4. 
Given a DES G and a supervisor S, we construct G S as described in Section 3.2. For any t f 1 ( ψ f ( L ( G S ) ) ) , define
E S ( t ) = { q Q : ( μ L ( G S ) ) q = δ ( q 0 , ψ ( μ ) ) t = f 1 ( ψ f ( μ ) ) } ,
as the NSE of t under S, which is the set of all the possible states that system G may be in after observing t (subject to observation delays and control delays) under S.
If S is given beforehand, we can calculate E S ( t ) by constructing an observer of G S with the set of observable events Σ f . However, we focus on online network supervisory control in this paper. That is, we need to calculate the state estimate right after each new communication (all future controls are unknown). To this end, besides the plant state q Q , we also need to estimate the current control command π Π , the observation channel configuration θ o Θ o , and the control channel configuration θ c Θ c , because all of them can affect the behaviors of the closed-loop system. Therefore, we denote each “state” of the closed-loop system by a four-tuple ( q , π , θ o , θ c ) Q × Π × Θ o × Θ c . We call such a state an augmented state. Let Q ˜ = { ( q , π , θ o , θ c ) : q Q π Π θ o Θ o θ c Θ c } be the set of all the augmented states. We next show that we can estimate all possible states that the plant may be in by estimating all possible augmented states that the controlled system may reach.
To precisely estimate the augmented states, we need the following two operators.
Let Z 2 Q ˜ be a set of augmented states calculated immediately after a new observation or the initial Z = (since the plant does not work until it is initialized, we let Z = before the initial control command is executed).The delayed unobservable reach of Z under an admissible control command γ Π , denoted by DUR ( Z , γ ) , is defined as follows.
  • If Z = , then
    ( q 0 , γ , ε , ε ) DUR ( Z , γ ) ,
    and if Z , then for all ( q , π , θ o , θ c ) ,
    ( q , π , θ o , IN c t r ( θ c , γ ) ) DUR ( Z , γ ) ;
  • Then, we repeatedly apply the following operations until convergence is achieved.
    • For all ( q , π , θ o , θ c ) DUR ( Z , γ ) and all σ Σ , if  δ ( q , σ ) ! and σ π and MAX ( θ o + ) N o and MAX ( θ c + ) N c , then
      ( δ ( q , σ ) , π , IN o b s ( θ o , σ ) , PLUS ( θ c ) ) DUR ( Z , γ ) ;
    • For all ( q , π , θ o , θ c ) DUR ( Z , γ ) and all γ Π , if  OUT c t r ( θ c , γ ) ! , then
      ( q , γ , θ o , OUT c t r ( θ c , γ ) ) DUR ( Z , γ ) .
If Z = , no control commands have been executed. That is, γ is the initial control command. By assumption, γ can be executed without any delays. Hence, by Equation (10), we have ( q 0 , γ , ε , ε ) DUR ( Z , γ ) . Otherwise, if  Z , γ is not the initial control command. By FIFO, it will not be executed until all of the control commands that are now delayed at the control channel are executed. Thus, for all ( q , π , θ o , θ c ) Z , Equation (11) adds γ to the end of θ c , i.e.,  θ c IN c t r ( θ c , γ ) . Meanwhile, Equations (12) and (13) consider the cases of “an event (observable or not) occurs” and “a control command is executed”, respectively. When there exist observation delays and control delays, only “an observable event is communicated” is observable. Therefore, DUR ( Z , γ ) consists of all the augmented states that may be reached from Z in an “unobservable” way.
Let Z 2 Q ˜ be the current set of augmented states. The delayed observable reach of Z under an observable event σ Σ o , denoted by DOR ( Z , σ ) , is defined as:
DOR ( Z , σ ) = { ( q , π , OUT o b s ( θ o , σ ) , θ c ) : ( ( q , π , θ o , θ c ) Z ) OUT o b s ( θ o , σ ) ! } .
Intuitively, DOR ( Z , σ ) includes all of the augmented states that can be reached from Z upon a new communication of σ . By FIFO, an observable event can be communicated only if it is the first event queued at the observation channel. Hence, we consider all the σ Σ o , such that there exists ( q , π , θ o , θ c ) Z with OUT o b s ( θ o , σ ) ! . When σ is communicated, we remove ( σ 1 , n 1 ) from θ o . As we can see, we set θ o OUT o b s ( θ o , σ ) . We assume that DOR ( Z , σ ) is updated right after a new observation of σ but before the next control command is issued. Therefore, we keep θ c unchanged.
We next present how to online estimate augmented states.
Definition 5. 
Let G be a DES and S be a supervisor. We construct G S as described in Section 3.2. For a t f 1 ( ψ f ( L ( G S ) ) ) , let E ˜ S ( t ) be the augmented state estimate for t. E ˜ S ( t ) is calculated by alternatively applying D U R ( · ) and DOR ( · ) as follows.
  • Initially, E ˜ S ( ε ) = D U R ( , S ( ε ) ) ;
  • For all t i , t i σ t ¯ , i = 0 , 1 , , | t | 1 ,
    E ˜ S ( t i σ ) = DUR ( DOR ( E ˜ S ( t i ) , σ ) , S ( t i σ ) ) .
Remark 6. 
E ˜ S ( t i σ ) indeed online estimates the augmented states. As shown in Figure 5, the online procedure for estimating augmented states can be briefly summarized as repeatedly executing (i) an observable event occurrence σ Σ o (after t i ) is communicated to the supervisor, and the set of augmented states is updated to Z = DOR ( E ˜ S ( t i ) , σ ) ; (ii) following the observation of σ, a new control command π = S ( t i σ ) Π is issued by the supervisor S. Then, the corresponding augmented state estimate is updated to E ˜ S ( t i σ ) = Z = D U R ( Z , π ) .
We next show that E ˜ S ( t ) indeed estimates the plant state, the current control command, the observation channel configuration, and the control channel configuration. Let us first define
T ( t ) = { ( q , π , θ o , θ c ) Q ˜ : ( μ L ( G S ) ) f 1 ( ψ f ( μ ) ) = t δ S ( q 0 , S , μ ) = ( p , γ , ω o , ω c , x ) p = q γ = π ω o = θ o ω c = θ c } .
The following lemma will be used later.
Lemma 1. 
For any t f 1 ( ψ f ( L ( G S ) ) ) if z = ( q , π , θ o , θ c ) T ( t ) and z is the augmented state calculated by applying Equation (12) or (13) on z, then z T ( t ) .
Proof. 
Without a loss of generality, we write z = ( q , π , θ o , θ c ) and z = ( q , π , θ o , θ c ) . Since z T ( t ) , by the definition of T ( · ) , there exists a μ L ( G S ) , such that f 1 ( ψ f ( μ ) ) = t and δ S ( q 0 , S , μ ) = ( p , γ , ω o , ω c , x ) with p = q , γ = π , ω o = θ o , and  ω c = θ c . Since z is the augmented state obtained by applying one of the operations in Equations (12)∼(13) on z, one of the following two cases must be true.
Case 1: z = ( δ ( q , σ ) , π , IN o b s ( θ o , σ ) , PLUS ( θ c ) ) . By Equation (12), δ ( q , σ ) ! , σ π , MAX ( θ o + ) N o , and  MAX ( θ c + ) N c . Since δ S ( q 0 , S , μ ) = ( p , γ , ω o , ω c , x ) , by Equation (6), δ S ( q 0 , S , μ σ ) = ( δ ( q , σ ) , π , IN o b s ( θ o , σ ) , PLUS ( θ c ) , x ) . Thus, z T ( f 1 ( ψ f ( μ σ ) ) ) = T ( t ) .
Case 2: z = ( δ ( q , σ ) , γ , θ o , OUT c t r ( θ c , γ ) ) . By Equation (13), OUT c t r ( θ c , γ ) ! . Since δ S ( q 0 , S , μ ) = ( p , γ , ω o , ω c , x ) , by Equation (8), δ S ( q 0 , S , μ g ( γ ) ) = ( q , γ , θ o , OUT c t r ( θ c , γ ) , x ) . Thus, we have that z T ( f 1 ( ψ f ( μ g ( γ ) ) ) = T ( t ) .    □
Theorem 1. 
Given a DES G and a supervisor S, we construct G S = ( Q S , Σ S , δ S , q 0 , S ) as described in Section 3.2. For any t f 1 ( ψ f ( L ( G S ) ) ) , we have
E ˜ S ( t ) = { ( q , π , θ o , θ c ) Q ˜ : ( μ L ( G S ) ) f 1 ( ψ f ( μ ) ) = t δ S ( q 0 , S , μ ) = ( p , γ , ω o , ω c , x ) p = q γ = π ω o = θ o ω c = θ c } .
Proof. 
( ) We first prove E ˜ S ( t ) T ( t ) by contradiction. Suppose there exists t f 1 ( ψ f ( L ( G S ) ) ) , such that E ˜ S ( t ) ¬ T ( t ) . Without loss of generality (w.l.o.g.), we assume that t is the shortest sequence in f 1 ( ψ f ( L ( G S ) ) ) , satisfying E ˜ S ( t ) ¬ T ( t ) . We now show t ε . By Definition 5, for any z E ˜ S ( ε ) , there exists a sequence of augmented states z 0 z 1 z k , such that z 0 = ( q 0 , S ( ε ) , ε , ε ) , z k = z , and  z i + 1 is the augmented state calculated by applying Equation (12) or (13) on z i , i = 0 , 1 , , k 1 . Since δ S ( q 0 , S , ε ) = ( q 0 , S ( ε ) , ε , ε , x 0 ) , z 0 T ( ε ) . By repeatedly applying Lemma 1, z 1 , , z k T ( ε ) . Therefore, E ˜ S ( ε ) T ( ε ) .
Since t ε , we write t = t σ for some σ Σ o . Since E ˜ S ( t ) ¬ T ( t ) , z E ˜ S ( t ) such that z T ( t ) . Since z E ˜ S ( t ) , by Definition 5, there exists a sequence of augmented states z 0 z 1 z k with z 0 = ( q , π , OUT o b s ( θ o , σ ) , IN c t r ( θ c , S ( t σ ) ) ) for some ( q , π , θ c , θ o ) E ˜ S ( t ) , z k = z , and  z i + 1 is the augmented state calculated by applying Equation (12) or (13) on z i , i = 0 , 1 , , k 1 . Next, we prove z 0 T ( t σ ) .
Since ( q , π , θ c , θ o ) E ˜ S ( t ) T ( t ) , μ L ( G S ) , such that f 1 ( ψ f ( μ ) ) = t , δ S ( q 0 , S , μ ) = ( p , γ , ω o , ω c , x ) , and  p = q γ = π ω o = θ o ω c = θ c . Since OUT o b s ( θ o , σ ) ! and θ o = ω o , we have OUT o b s ( ω o , σ ) ! . By Equation (7),
δ S ( q 0 , S , μ f ( σ ) ) = ( p , γ , OUT o b s ( ω o , σ ) , IN c t r ( ω c , χ ( ξ ( x , σ ) ) ) , ξ ( x , σ ) ) .
Since f 1 ( ψ f ( μ ) ) = t , we have f 1 ( ψ f ( μ f ( σ ) ) ) = t σ . By Proposition 1, we have ξ ( x , σ ) = ξ ( x 0 , f 1 ( ψ f ( μ f ( σ ) ) ) ) = ξ ( x 0 , t σ ) . By definition, we have χ ( ξ ( x , σ ) ) = S ( t σ ) . Thus,
δ S ( q 0 , S , μ f ( σ ) ) = ( p , γ , OUT o b s ( ω o , σ ) , IN c t r ( ω c , S ( t σ ) ) , ξ ( x , σ ) ) .
By the definition of T ( · ) ,
( p , γ , OUT o b s ( ω o , σ ) , IN c t r ( ω c , S ( t σ ) ) ) T ( f 1 ( ψ f ( μ f ( σ ) ) ) = T ( t σ ) .
Since p = q γ = π ω o = θ o ω c = θ c , ( q , π , OUT o b s ( θ o , σ ) , IN c t r ( θ c , S ( t σ ) ) ) T ( t σ ) . Hence, z 0 T ( t σ ) . By repeatedly applying Lemma 1, z 1 , , z k T ( t σ ) , which contradicts z = z k T ( t σ ) .
( ) We next prove E ˜ S ( t ) T ( t ) . To prove E ˜ S ( t ) T ( t ) , we only need to prove that for all μ L ( G S ) , if  δ S ( q 0 , S , μ ) = ( q , π , θ o , θ c , x ) , then ( q , π , θ o , θ c ) E ˜ S ( f 1 ( ψ f ( μ ) ) ) . The proof is by induction on the finite length of sequences in L ( G S ) .
Since δ S ( q 0 , S , ε ) = ( q 0 , S ( ε ) , ε , ε , x 0 ) and ( q 0 , S ( ε ) , ε , ε ) E ˜ S ( ε ) , the base case is true. The induction hypothesis is that for all μ L ( G S ) with | μ | k , we write δ S ( q 0 , S , μ ) = ( q , π , θ o , θ c , x ) . Then, ( q , π , θ o , θ c ) E ˜ S ( f 1 ( ψ f ( μ ) ) ) .
We next prove the same is also true for μ e L ( G S ) with | μ | = k . We write δ S ( q 0 , S , μ e ) = ( p , γ , ω o , ω c , y ) . Then, δ S ( ( q , π , θ o , θ c , x ) , e ) = ( p , γ , ω o , ω c , y ) . Since e Σ S , e Σ , e Σ f , or  e Σ g . We consider each of them separately as follows.
Case 1: e = σ Σ . Since δ S ( ( q , π , θ o , θ c , x ) , σ ) = ( p , γ , ω o , ω c , y ) , by Equation (6), we have
  • δ ( q , σ ) ! , σ π , MAX ( θ o + ) N o , and  MAX ( θ c + ) N c ;
  • p = q , γ = π , ω o = IN o b s ( θ o , σ ) , and  ω c = PLUS ( θ c ) .
Since ( q , π , θ o , θ c ) E ˜ S ( f 1 ( ψ f ( μ ) ) ) and Condition 1 in Case 1, by Equation (12),
( δ ( q , σ ) , π , IN o b s ( θ o , σ ) , PLUS ( θ c ) ) E ˜ S ( f 1 ( ψ f ( μ ) ) ) .
Since σ Σ , we have f 1 ( ψ f ( μ σ ) ) = f 1 ( ψ f ( μ ) ) . By Condition 2 in Case 1, ( p , γ , ω o , ω c ) E ˜ S ( f 1 ( ψ f ( μ σ ) ) ) .
Case 2: e = f ( σ ) Σ f . For brevity, we write t = f 1 ( ψ f ( μ ) ) . Then, f 1 ( ψ f ( μ f ( σ ) ) ) = t σ . Since δ S ( ( q , π , θ o , θ c , x ) , f ( σ ) ) = ( p , γ , ω o , ω c , y ) , by Equation (7),
  • OUT o b s ( θ o , σ ) ! ;
  • p = q , γ = π , ω o = OUT o b s ( θ o , σ ) , ω c = IN c t r ( θ c , χ ( y ) ) , and  y = ξ ( x , σ ) .
Since δ S ( q 0 , S , μ f ( σ ) ) = ( p , γ , ω o , ω c , y ) , by Proposition 1, y = ξ ( x 0 , t σ ) . Thus, χ ( y ) = S ( t σ ) . By the induction hypothesis, ( q , π , θ o , θ c ) E ˜ S ( t ) . Since OUT o b s ( θ o , σ ) ! , by Equation (14), ( q , π , OUT o b s ( θ o , σ ) , θ c ) D O R ( E ˜ S ( t ) , σ ) . Moreover, since χ ( y ) = S ( t σ ) , by Equation (12),
( q , π , OUT o b s ( θ o , σ ) , IN c t r ( θ c , χ ( y ) ) ) DUR ( DOR ( E ˜ S ( t ) , σ ) , S ( t σ ) ) .
By Definition 5, we have ( q , π , OUT o b s ( θ o , σ ) , IN c t r ( θ c , χ ( y ) ) ) E ˜ S ( t σ ) . Thus, by Condition 2 in Case 2, ( p , γ , ω o , ω c ) E ˜ S ( t σ ) = E ˜ S ( f 1 ( ψ f ( μ f ( σ ) ) ) ) .
Case 3: e = g ( γ ) Σ g . Since g ( γ ) Σ g , f 1 ( ψ f ( μ ) ) = f 1 ( ψ f ( μ g ( γ ) ) ) . Since δ S ( ( q , π , θ o , θ c , x ) , σ ) = ( p , γ , ω o , ω c , y ) , by Equation (8), we have
  • OUT c t r ( θ c , γ ) ! ;
  • p = q , γ = γ , ω o = θ o , and  ω c = OUT c t r ( θ c , γ ) .
Moreover, since ( q , π , θ o , θ c ) E ˜ S ( f 1 ( ψ f ( μ ) ) ) and OUT c t r ( θ c , γ ) ! , by Equation (13), we have that ( q , γ , θ o , OUT c t r ( θ c , γ ) ) E ˜ S ( f 1 ( ψ f ( μ ) ) ) = E ˜ S ( f 1 ( ψ f ( μ g ( γ ) ) ) ) . By Condition 2 in Case 3, ( p , γ , ω o , ω c ) E ˜ S ( f 1 ( ψ f ( μ g ( γ ) ) ) ) .    □
Let z = ( q , π , θ o , θ c ) Q ˜ be a given augmented state. We denote FC ( z ) = q by the first component (the plant state) of z. (“FC” means “first component”). We extend FC ( · ) to a set of augmented states Z 2 Q ˜ as follows: FC ( Z ) = { FC ( z ) : z Z } . The following corollary discusses the relationship between E S ( t ) and E ˜ S ( t ) .
Corollary 1. 
Let G be a DES and S be a supervisor. We construct G S as described in Section 3.2. For any t f 1 ( ψ f ( L ( G S ) ) ) , E S ( t ) = FC ( E ˜ S ( t ) ) .
Proof. 
The proof directly follows from Theorem 1 and Definition 4.    □
By Corollary 1, we can estimate the plant states by taking the first component of the estimated augmented states. We use the following example to further illustrate our online state estimation procedure.
Example 3. 
Consider again the system G depicted in Figure 2a and the supervisor S depicted in Figure 2b. Let Σ o = { α , β } , Σ c = { α , β , η } , and  N o = N c = 1 . We now compute E ˜ S ( ε ) , E S ( ε ) and E ˜ S ( α ) , E S ( α ) .
Initially, by Equation (10), ( 0 , π 0 , ε , ε ) E ˜ S ( ε ) . Since δ ( 0 , α ) = 1 , α π 0 , and  MAX ( ε + ) = 0 N c , N o , by Equation (12), ( 1 , π 0 , ( α , 0 ) , ε ) E ˜ S ( ε ) . Then, since δ ( 1 , η ) = 2 , η π 0 , MAX ( ( α , 0 ) + ) = 1 N c , and  MAX ( ε + ) = 0 N c , also by Equation (12), ( 2 , π 0 , ( α , 1 ) , ε ) E ˜ S ( ε ) . Therefore,
E ˜ S ( ε ) = { ( 0 , π 0 , ε , ε ) , ( 1 , π 0 , ( α , 0 ) , ε ) , ( 2 , π 0 , ( α , 1 ) , ε ) } .
By Corollary 1, E S ( ε ) = { 0 , 1 , 2 } . Since OUT o b s ( ( α , 0 ) , α ) = OUT o b s ( ( α , 1 ) , α ) = ε , by Equation (14), DOR ( E ˜ S ( ε ) , σ ) = { ( 1 , π 0 , ε , ε ) , ( 2 , π 0 , ε , ε ) } . By Definition 5, E ˜ S ( α ) = DUR ( DOR ( E ˜ S ( ε ) ,
σ ) , S ( α ) ) . Since S ( α ) is not the initial control command, by Equation (11),
( 1 , π 0 , ε , ( π 1 , 0 ) ) , ( 2 , π 0 , ε , ( π 1 , 0 ) ) DUR ( DOR ( E ˜ S ( ε ) , σ ) , S ( α ) ) .
Then, by Equations (12) and (13), we have
E ˜ S ( α ) = { ( 1 , π 0 , ε , ( π 1 , 0 ) ) , ( 2 , π 0 , ε , ( π 1 , 0 ) ] , ( 2 , π 0 , ε , ( π 1 , 1 ) ) ( 2 , π 1 , ε , ε ) , ( 1 , π 1 , ε , ε ) , ( 3 , π 1 , ( β , 0 ) , ε ) , ( 4 , π 1 , ( β , 1 ) ( β , 0 ) , ε ) } .
By Corollary 1, E S ( α ) = { 1 , 2 , 3 , 4 } .

5. Online Network Supervisory Control

In this section, we calculate a maximal and safe control on the fly based on the state estimation techniques developed in Section 4.

5.1. State Prediction

To determine if the control decision made at the moment is safe, we need to predict all states that we cannot prevent from reaching under observation delays and control delays. To this end, for a z = ( q , π , θ c , θ o ) Q ˜ appeared in an augmented state estimate, we construct an automaton G z to check what states the plant may reach from q, if we disable all controllable events in the future. The basic idea for the construction of G z is similar to that of G S . That is, starting from z, G z dynamically tracks the plant state, the current control command, the observation channel configuration, and the control channel configuration, given that all future controls are Σ u c .
Formally, we construct G z = ( Q z , Σ z , δ z , z ) , where Q z Q × Π × Θ o × Θ c is the state space; z = ( q , π , θ c , θ o ) is the initial state; Σ z Σ Σ f Σ g is the event set; the transition function δ z : Q z × Σ z Q z is defined as:
  • For all z = ( q , π , θ o , θ c ) Q z and all σ Σ ,
    δ z ( z , σ ) = z if δ ( q , σ ) ! σ π MAX ( θ o + ) N o MAX ( θ c + ) N c undefined otherwise ,
    where z = ( δ ( q , σ ) , π , IN o b s ( θ o , σ ) , PLUS ( θ c ) ) ;
  • For all z = ( q , π , θ o , θ c ) Q ˜ and all f ( σ ) Σ f ,
    δ z ( q ˜ , f ( σ ) ) = z if OUT o b s ( θ o , σ ) ! undefined otherwise ,
    where z = ( q , π , OUT o b s ( θ o , σ ) , IN c t r ( θ c , Σ u c ) ) ;
  • For all z = ( q , π , θ o , θ c ) Q ˜ and all g ( γ ) Σ g ,
    δ z ( z , g ( γ ) ) = z if OUT c t r ( θ c , γ ) ! undefined otherwise ,
    where z = ( q , γ , θ o , OUT c t r ( θ c , γ ) ) .
Since we assume all the controllable events are disabled in the future when a new observable event is communicated, we adopt the control command Σ u c . As shown in Equation (16), we set θ c IN ( θ c , Σ u c ) after the communication of σ .
The following proposition states that for any z = ( q , π , θ c , θ o ) Q ˜ and any ν L ( G z ) , we cannot disable the occurrence of ψ ( ν ) from q even if we disable all of the controllable events in the future.
Proposition 3. 
Let G be a DES and S a supervisor. For any μ L ( G S ) , we write δ S ( q 0 , S , μ ) = ( q , π , θ o , θ c , x ) . Let z = ( q , π , θ o , θ c ) and G z be the automaton constructed as described above. Then, if  ν L ( G z ) , ψ ( μ ν ) L ( S / G ) .
Proof. 
Please see Appendix C.    □
Given a z = ( q , π , θ o , θ c ) Q ˜ , all of the plant states that we cannot prevent from reaching q via some ψ ( ν ) ψ ( L ( G z ) ) can be obtained by taking the first component of Q z . That is,
FC ( Q z ) = { δ ( q , ψ ( ν ) ) : ν L ( G z ) } .
We can prove Equation (18) by inducing the finite length of sequences in L ( G z ) , which is similar to the proof of Proposition 1, and is omitted here for brevity.

5.2. Online Algorithm

Suppose that the current observation of the system is t Σ o * . When a new event is observed, the supervisor S makes a new control command π Π , and the augmented state estimate will be updated to E ˜ S ( t σ ) = DUR ( DOR ( E ˜ S ( t ) , σ ) , π ) . As discussed in Section 5.1, for any z = ( q , π , θ c , θ o ) E ˜ S ( t σ ) , FC ( Q z ) collects all of the plant states that may be reached from q no matter what control commands we adopt in the future. Therefore, we define the set of “bad” augmented states as:
T s p e c = { z Q ˜ : FC ( Q z ) ( Q \ Q H ) } .
For safety, all the augmented states in T s p e c should never be reached. To make the problem non-trivial, we assume that the controlled system is safe if we choose to disable all of the controllable events after each new observation.
With the above preparations, we are now ready to introduce our online algorithm. We first pre-compute T s p e c offline. The networked supervisory control for G is implemented on the fly in Algorithm 1 as follows: when the supervisor receives a new observable event occurrence σ , Line 9 is executed with the new communication of σ . The set of events to be enabled following the communication of σ is then calculated by the for-loop on Line 3, where all the controllable events are checked one by one to see if they can be enabled while the system cannot reach some “bad” augmented states. The above processes are repeated when another observable event occurrence is communicated.
Algorithm 1:Online maximal networked control
Mathematics 11 00003 i001
Definition 6. 
For any t Σ o * , the online network supervisor S t is defined as: for all t i t ¯ , i = 0 , 1 , , | t | , S t ( t i ) is the set of events that is enabled right after the communication of t i , and for all t Σ o * with t t ¯ , S t ( t ) = Σ u c .
Note that S t can be represented as an automaton with a finite state space.
Remark 7. 
The maximal networked supervisors are not unique. Given a different order Σ c = { σ 1 , , σ k } on the controllable events, Algorithm 1 may return different results. However, the order of controllable events can be changed dynamically after each new communication, if desired. However, all of the possible supervisors returned by Algorithm 1 are safe and maximal.
Remark 8. 
Algorithm 1 tries to enable a maximum allowable set of controllable events at any instant to ensure the closed-loop system is within the desired specification language. However, as discussed in Remark 7, there may exist several incomparable maximum control decisions after each new observation. In many applications, enabling a controllable event could involve financial and human costs. In such situations, it is preferable to select a maximum allowable set of controllable events with the minimum enablement of costs at each instant. A simple approach is to consider all maximum control commands and select one with the minimum enablement cost. Another approach is to list all of the controllable events in ascending order according to their enablement costs: Σ c = { σ 1 , , σ k } , where σ 1 is a controllable event that is the least costly to enable, and σ k is the event that is the most costly to enable. By the for-loop on Line 3, a controllable event with a smaller enablement cost has a priority to be considered. The first approach is optimal but needs more computational resources than the second approach. The second approach may be suboptimal but is more efficient compared with the first approach.
Remark 9. 
For a given z Q ˜ , we know the number of states in G z is upper-bounded by | Q ˜ | . Since the number of verifiers to be constructed is | Q ˜ | , the computational complexity for calculating T s p e c is the order of O ( | Q ˜ | 2 ) . By definition, Q ˜ Q × Π × Θ o × Θ c , Since Π 2 Σ , Θ o ( Σ o × [ 0 , N o ] ) N , and Θ c ( Π × [ 0 , N c ] ) M , the complexity for calculating T s p e c is polynomial with respect to (w.r.t.) | Q | and exponential w.r.t. | Σ | .
After each new communication, for each σ Σ c , we need to test whether or not σ can be enabled. In each test, DUR ( Ξ , π ) is updated by Line 5 and we need to search the state space Q ˜ once. Therefore, the computational complexity of Algorithm 1 is the stepwise order of O ( | Q ˜ | ) , which is also polynomial w.r.t. | Q | and exponential w.r.t. | Σ | .
Next, we show that the control commands made at each step in Algorithm 1 guarantee that the controlled system is safe.
Theorem 2. 
Suppose the current observation of the system is t Σ o * . Let E ˜ S t ( t i ) be the augmented state estimate for t i t ¯ under S t , i = 1 , , | t | . Then,
( i = 1 , , | t | ) E ˜ S t ( t i ) T s p e c = L ( S t / G ) K .
Proof. 
Please see Appendix D. □
The following corollary states that S t is the solution to Problem 1.
Corollary 2. 
Suppose the current observation of the system is t Σ o * . The online supervisor S t derived by Algorithm 1 satisfies conditions 1 and 2 of Problem 1.
Proof. 
The proof directly follows from Problem 1 and Theorem 2. □

5.3. Comparison with the Existing Work

In this section, we compare the proposed algorithm with the algorithm proposed in [26]. Similar to [26], we assume that there are only control delays with an upper bound of N c , and there are no observation delays, i.e., N o = 0 in this section. To make this paper self-contained, we first review the state estimation techniques proposed in [26].
A channel configuration is defined in [26] as a set of pairs in the form of θ = { ( π 1 , n 1 ) , ( π 2 , n 2 ) , , ( π k , n k ) } , where π i Π is an admissible control action that is delayed at the control channel, and n i [ 0 , N c ] is a nonnegative integer indicating that the control action π i is still effective for the next n i steps. We denote by Γ ( θ ) the union of all the control actions in θ , i.e., Γ ( θ ) = i = 1 , , k π i . We also denote by Θ 2 Π × [ 0 , N c ] the set of all channel configurations. To update a θ Θ after a new event occurrence, we define the “next” operator N X : Θ Θ as follows: for any θ Θ ,
NX ( θ ) = { ( π , n 1 ) Π × N : ( π , n ) θ , n 1 } .
NX ( θ ) decreases the timing index of each element of θ by one unit and only keeps the elements of θ with nonnegative natural numbers. Thus, θ collects all the control actions issued in the past N c steps (including the current step).
We define an extended state as a pair of a plant state q Q and a channel configuration θ Θ . Let Q ^ = Q × Θ be the set of all extended states. Let Z 2 Q ^ be a set of extended states and π Π be a control action. Then, the networked unobservable reach of Z under π , denoted by NU R π ( Z ) , is defined recursively as follows:
  • For any ( q , θ ) Z , we have
    ( q , θ { ( π , N c ) } ) NU R π ( Z ) ;
  • For any ( q , θ ) NU R π ( Z ) and any unobservable event σ Σ u o , if σ Γ ( θ ) and δ ( q , σ ) ! , then
    ( δ ( q , σ ) , NX ( θ ) { ( π , N c ) } ) NU R π ( Z ) .
Operation Equation (20) is used to add the latest control action π into the channel configuration. Operation Equation (21) computes all the extended states that can be reached from any ( q , θ ) NU R π ( Z ) via an unobservable event occurrence. In Equation (17), an event σ can occur at an extended state ( q , θ ) if it is active at state q, i.e., δ ( q , σ ) ! , and it is allowed to occur by one of the control actions issued in the past N c steps, i.e., σ Γ ( θ ) .
Let Z 2 Q ^ be a set of extended states and σ Σ o be an observable event. The networked observable reach ( NOR ) of Z upon the occurrence of σ , denoted by NO R σ ( Z ) , is defined as:
N O R σ ( Z ) = { ( δ ( q , σ ) , N X ( θ ) ) Q ˜ : ( q , θ ) x , σ Γ ( θ ) } .
Operation Equation (22) collects all of the extended states that can be immediately reached from elements of Z via σ .
Let S be a given networked supervisor. The set of extended states that the controlled system may be in after a communicated t Σ o * , denoted by E ^ S ( t ) , can be calculated as follows:
  • Initially, E ^ S ( ε ) = N U R S ( ε ) ( { ( q 0 , ) } ) ;
  • For all t i , t i σ i + 1 { t } ¯ , i = 0 , 1 , , | t | 1 ,
    E ^ S ( t i σ i + 1 ) = N U R S ( t i σ i + 1 ) ( N O R σ i + 1 ( E ^ S ( t i ) ) ) .
Then, it is shown by Corollary 1 of [26] that the set of plant states that the controlled system may be in after observing t can be simply obtained by taking the first components of E ^ S ( t ) .
Let θ = { ( γ 1 , n 1 ) , ( γ 2 , n 2 ) , , ( γ k , n k ) } be a channel configuration and m [ 0 , N c ] be a non-negative integer. We denote by Γ m ( θ ) the union of all control decisions that can take effect in the next m steps, i.e.,
Γ m ( θ ) = i [ 1 , k ] : n i m γ i .
The uncontrollable language for θ can be defined as:
L u c ( θ ) : = Γ 0 ( θ ) Γ 1 ( θ ) Γ N c ( θ ) . ¯
Given an extended state q ˜ = ( q , θ ) Q ˜ , the uncontrollable state prediction of q ˜ , denoted by U S P ( q ˜ ) , is defined as
U S P ( q ˜ ) = { δ ( q , s ) Q : s L u c ( θ ) } .
The online supervisor synthesis approaches proposed in [26] mainly consist of the following two steps.
Step 1: When an observable event sequence t Σ o * is communicated, calculate the extended state estimate E ^ S ( t ) ;
Step 2: Find a maximal control decision γ Γ , such that U S P ( N U R γ ( E ^ S ( t ) ) ) Q H .
Next, we use two examples to show that the proposed supervisor can be more permissive than that proposed in [26].
Example 4. 
Consider the uncontrolled system G and the desired system H depicted in Figure 6a and Figure 6b, respectively. Let Σ c = Σ and Σ o = { α , β } .
Initially, we start from { ( 0 , ) } and choose a maximal control decision S ( ε ) = γ 0 , such that UPS ( NU R γ 0 ( { ( 0 , ) } ) Q H . One can check that γ 0 = { α , γ } is such a maximal control action. Then, we can compute the extended state estimate E ^ S ( ε ) = NU R γ 0 ( { ( 0 , ) } ) = { ( 0 , { ( γ 0 , 2 ) } ) , ( 3 , { ( γ 0 , 1 ) } ) } . If α is observed, we have NO R α ( E ^ S ( ε ) ) = { ( 1 , { γ 0 , 1 } ) } . Then, we again find a maximal control decision S ( α ) = γ 1 , such that UPS ( N U R γ 1 ( { ( 1 , { γ 0 , 1 } ) } ) ) Q H .
By definition, q ˜ = ( 1 , { ( γ 0 , 1 ) , ( γ 1 , 2 ) } ) NU R γ 1 ( { ( 1 , { γ 0 , 1 } ) } ) . One can check that β γ 1 , because otherwise, by Equation (24), β γ L u c ( θ ) . Then, by Equation (25), we have 5 UPS ( q ˜ ) Q \ Q H . Therefore, we have γ 1 = { α , γ } . Since β γ 0 and β γ 1 , β will never occur at State 1. Therefore, all possible behaviors that may occur under the synthesized supervisor include { ε , γ , α } .
In the previous framework, it was assumed that all control actions issued in the past N c steps may take effect. Thus, in Example 4, since γ γ 0 , γ 0 may take effect after α β . Therefore, we must disable β after α to prevent the system from reaching State 5. Since β γ 0 , γ 1 , we know that β will never occur after α . However, as shown in the following example, we can actually enable β after observing α , and the controlled system can never reach State 5.
Example 5. 
Continue with Example 4. We now show how to apply Algorithm 1 to compute an optimal supervisor.
Algorithm 1 starts from Ξ 0 = and iterates the for-loop on Line 3 for computing a maximal S ( ε ) = E a 0 , such that D U R ( D O R ( Ξ 0 , E a 0 ) ) T s p e c = . One can check that E a 0 = { α , γ } is such an optimal control decision. The augmented state estimate is updated to
E ˜ S ( ε ) = { [ 0 , E a 0 , ε , ε ] , [ 3 , E a 0 , ε , ε ] , [ 1 , E a 0 , ( α , 0 ) , ε ] } .
After that, the supervisor observes α and estimates
Ξ 1 = DOR ( E ˜ ( ε ) , σ ) = { [ 1 , E a 0 , ε , ε ] } .
Then, iterating the for-loop on Line 3 leads to S ( α ) = E a 1 = { α , β } . The augmented state estimate is updated to
E ˜ S ( α ) = { [ 1 , E a 0 , ε , ( E a 1 , 0 ) ] , [ 1 , E a 1 , ε , ε ] , [ 2 , E a 1 , ( β , 0 ) , ε ] } .
Then, the supervisor observes β and estimates
Ξ 2 = DOR ( E ˜ ( α ) , β ) = { [ 2 , E a 1 , ε , ε ] } .
Iterating the for-loop on Line 3, we have S ( α β ) = E a 1 = { α , β } .
Note that we cannot enable γ after observing α β . Therefore, under the synthesized supervisor, we may reach States 0, 1, 2, and 3. That is, all the possible behaviors that may be generated by the closed-loop system include { ε , γ , α , α β } .
By Examples 4 and 5, the language of the closed-loop system under the supervisor synthesized by Algorithm 1 is larger than the language of the closed-loop system under the supervisor synthesized by [26]. Since the proposed framework excludes all physically impossible strings, the state estimate calculated is more precise than that calculated by the previous approach. Thus, the proposed supervisor is more permissive than the previous one.

6. Application in Traffic Control

We consider a signalized intersection as shown in Figure 7. When a self-driving vehicle x arrives at the intersection, it needs to communicate with the intersection to observe the signal and make a control decision accordingly. The observation and control are realized through a network. Due to network characteristics, observation delays and control delays are unavoidable. We assume in this example the observation delays are upper-bounded by 1 and the control decision are upper-bounded by 1, i.e., N o = 1 and N c = 1 . We define seven events as shown in Table 1.
Event a denotes that Vehicle x arrives at the intersection. Event p denotes that Vehicle x passes through the intersection. Event y denotes that the traffic signal is switched to yellow. The green time in one signal cycle is t g seconds, and we divide t g into g 1 and g 2 equally: g 1 denotes the first t g / 2 seconds and g 2 denotes the remaining t g / 2 seconds. Similarly, the red time in one signal cycle is t r seconds, and we divide t r into r 1 and r 2 equally: r 1 denotes the first t r / 2 seconds and r 2 denotes the remaining t r / 2 seconds.
Events a and p are controllable since Vehicle x can choose to approach or pass through the intersection. Events r 1 , r 2 , g 1 , g 2 , and y are observable but are not controllable since Vehicle x can observe but cannot change the color of the traffic light. The system model G = ( Q , Σ , δ , q 0 ) for vehicle x is displayed in Figure 8a.
Let us interpret the construction of G in Figure 8a as follows. When Vehicle x arrives at the intersection (a occurs), the system enters State 1. If the signal in the forward direction is switched to red for no more than t r / 2 seconds after green, i.e., r 1 . (respectively, red for more than t r / 2 seconds but no more than t r seconds after green, i.e., r 2 , green for no more than t g / 2 seconds after red, i.e., g 1 , green for more than t g / 2 seconds but no more than t g seconds after red, i.e., g 2 , and yellow, i.e., y), the system makes a state transition to State 5 (respectively, States 2, 6, 3, and 4). If the system is uncontrolled, Vehicle x can pass through the intersection at any time. Hence, p can occur in States 2, 3, 4, 5, and 6. Let us suppose that the traffic light is r 1 when Vehicle x arrives at the intersection. Thus, the system is in State 5. If Vehicle x chooses to pass through the intersection, then the system moves to State 9. Otherwise, if Vehicle x stops at the intersection, then upon the occurrence of r 2 , the traffic light enters the second stage of the red cycle, and the system makes a state transition from State 5 to State 2. Then, if Vehicle x chooses to pass through the intersection, the system moves from State 2 to State 9. Otherwise, by the switching rule, the traffic light is further switched to green ( g 1 occurs), the system makes a state transition from State 2 to State 6, and so on.
By traffic laws, passing the intersection (enabling p) is not permitted when the traffic light is red or yellow when the vehicle approaches the intersection. Therefore, we should disable the occurrence of p at States 2, 4, and 5. On the other hand, we can enable the occurrence of p at States 3 and 6. In particular, when the system is in State 3, the traffic lights may be switched to yellow. Upon the occurrence of y, the system moves to State 7. By the traffic law, enabling p is legal if the traffic light is switched from green to yellow when Vehicle x is passing through the intersection. Thus, we can enable p at State 7. The desired system H is depicted in Figure 8b.
We now apply Algorithm 1 to calculate an optimal control command after each new observation. We denote Ξ i by the set of augmented states returned by Line 9 after the observation of the ith event. We also denote E a i by the set of events returned by Line 7 after the observation of the ith event.
Initially, by Lines 2 and 3, we have Ξ = and E a Σ u c = { y , r 1 , r 2 , g 1 , g 2 } . Let Σ c = { a , p } . By the for-loop on Line 3, we first try to add a into E a and set π Σ u c { a } . By the definition of DUR ( · ) , one can verify that DUR ( Ξ , π ) T s p e c since only the occurrence of p can lead the controlled system to the “illegal” state 9, and p can never occur if we choose to disable p now and in the future. Thus, by Line 6, we have E a = Σ u c { a } . By the for-loop on Line 3, we next try to add p into E a and set π Σ u c { a , p } . It can be checked that z = ( 5 , π , ( r 1 , 0 ) , ε ) DUR ( Ξ , π ) and z T s p e c since π may take effect after a r 1 , and p is prevented from occurring after a r 1 . Thus, we have Ξ 0 = and E a 0 = Σ u c { a } . Let π 0 E a 0 . By definition,
DUR ( Ξ 0 , E a 0 ) = { ( 0 , π 0 , ε , ε ) , ( 1 , π 0 , ε , ε ) , ( 2 , π 0 , ( r 2 , 0 ) , ε ) , ( 3 , π 0 , ( g 2 , 0 ) , ε ) ( 4 , π 0 , ( y , 0 ) , ε ) , ( 5 , π 0 , ( r 1 , 0 ) , ε ) , ( 6 , π 0 , ( g 1 , 0 ) , ε ) ( 6 , π 0 , ( r 2 , 1 ) ( g 1 , 0 ) , ε ) , ( 7 , π 0 , ( g 2 , 1 ) ( y , 0 ) , ε ) , ( 5 , π 0 , ( y , 1 ) ( r 1 , 0 ) , ε ) ( 2 , π 0 , ( r 1 , 1 ) ( r 2 , 0 ) , ε ) , ( 3 , π 0 , ( g 1 , 1 ) ( g 2 , 0 ) , ε ) } .
Next, if g 2 is communicated, by Line 9,
Ξ 1 = DOR ( DUR ( Ξ 0 , E a 0 ) , g 2 ) = { ( 3 , π 0 , ε , ε ) , ( 7 , π 0 , ( y , 0 ) , ε ) } .
Then, let us go to Line 2, and we have E a Σ u c . By the for-loop on Line 3, we first try to add a into E a and set π Σ u c { a } . One can verify that DUR ( Ξ , π ) T s p e c . We next try to add p into E a and set π Σ u c { a , p } .
Since ( 7 , π 0 , ( y , 0 ) , ε ) Ξ 1 , when π is issued, augmented states can occur in the order as follows:
( 7 , π 0 , ( y , 0 ) , ( π , 0 ) ) g ( π ) ( 7 , π , ( y , 0 ) , ε ) r 1 ( 5 , π , ( y , 1 ) ( r 1 , 0 ) , ε ) f ( y ) ( 5 , π , ( r 1 , 0 ) , ( π , 0 ) ) p ( 9 , π , ( r 1 , 1 ) , ( π , 1 ) ) ,
where π is the control command made after the communication of r 1 . As we can see, the control action π may take effect at the time p occurs at ( 5 , π , ( r 1 , 0 ) , ( π , 0 ) ) , which violates the traffic law. Hence, we can only add a into E a . We have E a 1 Σ u c { a } .
The above process is repeated until the vehicle passes through the intersection. The synthesized supervisor is depicted in Figure 9. For brevity, we only list all of the controllable events to be enabled at each state of the supervisor (all of the uncontrollable events are omitted). From Figure 9, to pass through the intersection safely, Vehicle x must stop if the traffic light is r 1 , r 2 , y, or g 1 when the vehicle arrives at the intersection. Vehicle x can choose to pass through the intersection only when g 1 is communicated, i.e., Vehicle x observes the occurrence of g 1 .

7. Extension of the Proposed Framework

In this section, we briefly discuss how to model a system with non-FIFO observations and controls.
In many control applications, such as cyber–physical systems, the sensors are often distributed at different sites, and the detected information is communicated to the supervisor over different observation channels. Different observation channels may have different upper bounds of observation delays. The nondeterministic observation delays may change the order of events communicated to the supervisor. In other words, the supervisor may receive observable event occurrences in different orders as they occur. On the other hand, the enablement and disablement of controllable events are achieved by single actuators, and all actuators are distributed at different sites. The supervisor sends the control decisions for disabling or enabling events to the corresponding actuators upon each new event observation. Different control channels may have different upper bounds of control delays.
As shown in Figure 10, there are | Σ o | sensors, each is associated with an observable event. For brevity, we write Σ o = { σ 1 , , σ n } , where n = | Σ o | . For each σ i Σ o , the occurrence can be detected by sensor i and communicated to the supervisor over observation channel i. We assume that observation delays occurring in the observation channel i are upper-bounded by N o , i event occurrences. That is, when an event σ i occurs, it will be communicated to the supervisor before no more than N o , i additional event occurrences. On the other hand, there are | Σ c | actuators, and each is associated with a controllable event. We write Σ c = { e 1 , , e m } , where m = | Σ c | . For each e i Σ c , the enablement and disablement are achieved by actuator i, and the control decision for enabling or disabling e i is sent to the actuator i over the control channel i. We assume that control delays occurring in control channel i are upper-bounded by N c , i event occurrences. That is, the control decision made for an event e i can be executed before no more than N c , i additional event occurrences.
For each e i Σ c , the supervisor sends 0 or 1 to actuator i over control channel i, where “0” means “disablement” and “1” means “enablement”. Thus, we denote Φ = { ( [ 0 , 1 ] × { e 1 } ) × × ( [ 0 , 1 ] × { e m } ) } by the set of all the possible control decisions that the supervisor may make. Correspondingly, we denote, in this section, the supervisor by a pair D = ( W , ω ) , where W = ( Z , Σ o , ζ , z 0 ) is a deterministic automaton with L ( W ) = Σ o * , and ζ : Z Φ is a function that specifies control decisions for disabling or enabling e 1 , , e m . Specifically, for any t Σ o * , we denote ω ( ζ ( z 0 , t ) ) by control decisions for disabling or enabling e 1 , , e m . With a slight abuse of notation, we write D ( t ) = ω ( ζ ( z 0 , t ) ) . For any t Σ o * , we have D ( t ) Φ . For any e Σ c and any ϕ ¯ = [ ( b 1 , e 1 ) , , ( b m , e m ) ] Φ , we say that e is allowed to be enabled by ϕ ¯ , denoted by e ϕ ¯ , if ( i = 1 , , m ) e = e i b i = 1 .
Definition 7. 
The observation channel i configuration is defined as a sequence of pairs:
θ o , i = ( σ i , n 1 ) ( σ i , n k ) ,
where σ i σ i Σ o * is a sequence of observable events σ i that have been detected by sensor i but were currently delayed at the observation channel i, and n j [ 0 , N o , i ] , j = 1 , , k is the number of event occurrences since σ i occurred and was detected. If observation channel i is empty, θ o , i = ε .
We denote by Θ o , i ( { σ i } × [ 0 , N o , i ] ) N i the set of all possible observation channel i configurations, where N i is the maximum length of θ o , i . Given a θ o , i = ( σ i , n 1 ) ( σ i , n k ) Θ o , i , let MAX ( θ o , i ) = n 1 be the maximum observation delays occurring in the observation channel i. The overall state of the observation channels is defined as a vector θ ¯ o = [ θ o , 1 , , θ o , n ] , where θ o , i is the observation channel i configuration. Let Θ o = Θ o , 1 × × Θ o , n be the set of all the states of observation channel configurations.
  • When a new event σ Σ occurs, to update the state of the observation channel configurations, we define the operator IN o b s : Θ o × Σ Θ o as: for all θ ¯ o = [ θ o , 1 , , θ o , n ] Θ o and all σ Σ ,
    IN o b s ( θ ¯ o , σ ) = [ θ o , 1 , , θ o , n ] ,
    such that
    θ o , i = θ o , i + ( σ , 0 ) if σ = σ i MAX ( θ o , i + ) N o , i θ o , i + if σ σ i MAX ( θ o , i + ) N o , i undefined otherwise ,
    where if θ o , i = ( σ i , n 1 ) ( σ i , n k ) ε , θ o , i + = ( σ i , n 1 + 1 ) ( σ i , n k + 1 ) , and if θ o , i = ε , θ o , i + = ε .
  • When a new observable event σ Σ o is communicated to the supervisor, to update the state of the observation channel configurations, define the operator OUT o b s : Θ o × Σ o Θ o as for all θ ¯ o = [ θ o , 1 , , θ o , n ] Θ o and all σ Σ o ,
    OUT o b s ( θ ¯ o , σ ) = [ θ o , 1 , , θ o , n ] ,
    such that
    θ o , i = θ o , i \ θ o , i 1 if σ = σ i θ o , i ε θ o , i if σ σ i undefined otherwise ,
    where θ o , i 1 is the first component of θ o , i . That is, for all θ o , i = ( σ i , n 1 ) ( σ i , n k ) ε , we have θ o , i 1 = ( σ i , n 1 ) .
When an event σ Σ occurs in the plant, all natural numbers in θ o , i should be plus 1 since they are used to counting the observation delays. Furthermore, if σ Σ o , i , by FIFO, we still need to add ( σ i , 0 ) to the end of θ o , i for recording the new observable event occurrence. On the other hand, when a new observable event σ Σ o is communicated to the supervisor, OUT o b s ( θ ¯ o , σ ) removes σ from the head of θ o , i if σ = σ i .
Definition 8. 
The control channel i configuration is defined as a sequence of pairs:
θ c , i = ( ϕ 1 , m 1 ) ( ϕ h , m h ) ,
where ϕ 1 ϕ h ( { 0 , 1 } × { e i } ) * is a sequence of control decisions made for enabling or disabling e i but are currently delayed at the control channel i, and m j [ 0 , N c , i ] , j = 1 , , k is the number of event occurrences since π j has been issued. If the control channel i is empty, θ c , i = ε .
We denote by Θ c , i ( ( { 0 , 1 } × { e i } ) × [ 0 , N c , i ] ) M i the set of all the possible control channel i configurations, where M i N is the maximum length of θ c , i Θ c , i . Given a θ c , i = ( ϕ 1 , m 1 ) ( ϕ h , m h ) Θ c , i , let MAX ( θ c , i ) = m 1 be the maximum control delays occurring in the control channel i. The overall state of the control channel is defined as a vector θ ¯ c = [ θ c , 1 , , θ c , n ] , where θ c , i is the control channel i configuration. Let Θ c = Θ c , 1 × × Θ c , m be the set of all the states of control channel configurations. To update θ ¯ c Θ c , we introduce the following operators.
  • When a new event σ Σ occurs in the plant, to update the state of the control channel configurations, define the operator PLUS : Θ c Θ c as: for all θ ¯ c = [ θ c , 1 , , θ c , m ] Θ c ,
    PLUS ( θ ¯ c ) = [ θ c , 1 , , θ c , m ] ,
    such that
    θ c , i = θ c , i + if MAX ( θ c , i + ) N c , i undefined otherwise ,
    where if θ c , i = ( ϕ 1 , m 1 ) ( ϕ h , m h ) ε , θ c , i + = ( ϕ 1 , m 1 + 1 ) ( ϕ h , m h + 1 ) , and if θ c , i = ε , θ c , i + = ε .
  • When a new control command ϕ ¯ = [ ϕ 1 , , ϕ m ] Φ is issued by the supervisor, to update the state of the control channel configurations, we define the operator IN c t r : Θ c × Φ Θ c as: for all θ ¯ c = [ θ c , 1 , , θ c , m ] Θ c and all ϕ ¯ = [ ϕ 1 , , ϕ m ] Φ ,
    IN c t r ( θ ¯ c , ϕ ¯ ) = [ θ c , 1 , , θ c , m ] ,
    such that θ c , i = θ c , i ( ϕ i , 0 ) for all i = 1 , , m .
  • When a new control command ϕ { 0 , 1 } × Σ c is executed, to update the states of the control channel configurations, define the operator OUT c t r : Θ c × ( { 0 , 1 } × Σ c ) Θ c as: for all θ ¯ c = [ θ c , 1 , , θ c , m ] Θ c and all ϕ = ( b , e ) { 0 , 1 } × Σ c ,
    OUT c t r ( θ ¯ c , ϕ ) = [ θ c , 1 , , θ c , m ] ,
    such that
    θ c , i = θ c , i \ θ c , i 1 if e = e i θ c , i ε θ c , i if e e i undefined otherwise .
When a new event occurs, for recording the control delays, PLUS ( θ ¯ c ) adds 1 to all of the natural numbers in θ c , i . When a new control command ϕ ¯ = [ ϕ 1 , , ϕ m ] Φ is issued (following a new observation), IN c t r ( θ ¯ c , ϕ ¯ ) adds the newly issued control command to the end of control channel i. When a new control command is executed by actuator i, OUT i c t r ( θ ¯ c , ϕ ) removes the first control command ϕ from θ c , i .
  • To keep track of what has been successfully communicated to the supervisor so far, define bijection h : Σ o Σ h , such that Σ h = { h ( σ ) : σ Σ o } is a set disjoint from Σ . For all σ Σ o , we use h ( σ ) to denote that the occurrence of σ has been communicated to the supervisor.
  • To model which control action has been executed by one of the actuators, we define bijection d : { 0 , 1 } × Σ c Σ d , such that Σ d = { d ( ϕ ) : ϕ { 0 , 1 } × Σ c } is disjoint from Σ Σ h . For all ϕ { 0 , 1 } × Σ c , we use d ( ϕ ) to denote that the control command ϕ has been executed by the corresponding actuator.
Given a supervisor D = ( W , ω ) with W = ( Z , Σ o , ζ , z 0 ) , we formally construct
G D = ( Q D , Σ D , δ D , q 0 , D ) ,
where Q D Q × Φ × Θ o × Θ c × Z is the state space; q 0 , D = ( q 0 , D ( ε ) , [ ε , , ε n ] , [ ε , , ε m ] , z 0 ) is the initial state; Σ D Σ Σ h Σ d is the event set; the transition function δ D : Q D × Σ D Q D is defined as:
  • For all q ˜ = ( q , ϕ ¯ , θ ¯ o , θ ¯ c , z ) Q D and all σ Σ ,
    δ D ( q ˜ , σ ) = q ˜ if δ ( q , σ ) ! [ σ Σ c σ ϕ ¯ ] IN o b s ( θ ¯ o , σ ) ! PLUS ( θ ¯ c ) ! undefined otherwise ,
    where q ˜ = ( δ ( q , σ ) , π ¯ , IN o b s ( θ ¯ o , σ ) , PLUS ( θ ¯ c ) , z ) ;
  • For all q ˜ = ( q , ϕ ¯ , θ ¯ o , θ ¯ c , z ) Q D and all h ( σ ) Σ h ,
    δ D ( q ˜ , h ( σ ) ) = q ˜ if OUT o b s ( θ ¯ o , σ ) ! undefined otherwise ,
    where q ˜ = ( q , ϕ ¯ , OUT o b s ( θ ¯ o , σ ) , IN c t r ( θ ¯ c , ω ( ζ ( z , σ ) ) ) , ζ ( z , σ ) ) ;
  • For all q ˜ = ( q , ϕ ¯ , θ ¯ o , θ ¯ c , z ) Q D and all d ( ϕ ) Σ d ,
    δ D ( q ˜ , d ( ϕ ) ) = q ˜ if OUT c t r ( θ ¯ c , ϕ ) ! undefined otherwise ,
    where q ˜ = ( q , UD ( ϕ ¯ , ϕ ) , θ ¯ o , OUT c t r ( θ ¯ c , ϕ ) , z ) .
For all μ L ( G D ) , let ψ ( μ ) be the sequences obtained by removing all the event occurrences in Σ h Σ d without changing the order of the remaining event occurrences in μ . We extend ψ ( · ) to a set of sequences in the usual way. The dynamics of the closed-loop system can be simply obtained from G S as follows.
Definition 9. 
Given system G and supervisor D, we construct G D as described above. All possible strings that may be generated by the closed-loop system with the observation delays N o , 1 , , N o , n and the control delays N c , 1 , , N c , m , are defined as: L ( D / G ) = ψ ( L ( G D ) ) .
By Definition 9, we can specify the dynamics of the closed-loop system when the sensors and the actuators are distributed at different sites. Furthermore, we can extend the proposed approaches to make the state estimation and synthesize the supervisor for the “distributed” system. Since this paper focuses on the case where there is one control channel and one observation channel, such an extension to the “distributed” system is beyond the scope of this paper.

8. Conclusions

In this paper, we considered the optimal supervisory control of DESs under communication delays. It is assumed that (i) delays do not change the order of the observations and controls; and (ii) both the observation delays and control delays have upper bounds. A modeling framework for supervisory control under communication delays was developed and evaluated. With this proposed framework, an online algorithm for the state estimation of the supervised system is proposed. The proposed algorithm can be used to solve the supervisor’s synthesis problem in networked DESs. Compared with the supervisor proposed in the existing work, (i) the synthesized supervisor can be more permissive as the proposed framework and state estimation approaches are more precise; (ii) the proposed framework considers the nondeterministic observation delays and control delays, which often happen. An application is provided to show how to implement the proposed algorithm. Finally, we extended the proposed framework to specify the dynamics of the closed-loop system when the sensors and actuators of the system are distributed, where delays may change the order of the observations and the controls.
One direction for future research can be to enhance the application scope of the proposed approach by accommodating communication losses in the system model. Researches can also look at how to estimate the states and synthesize supervisors when the sensors and actuators of the system are distributed.

Author Contributions

Conceptualization, Y.H. and W.L.; methodology, Y.H. and W.L.; software, Y.S.; validation, Y.S., Y.J., and Q.L.; formal analysis, Y.H. and Y.S.; investigation, W.L.; resources, Y.J. and W.L.; data curation, Y.S.; writing—original draft preparation, Y.H. and Y.S.; writing—review and editing, Y.H., Y.S., and W.L.; visualization, Y.S. and Y.J.; supervision, Q.L. and W.L.; project administration, Q.L. and W.L.; funding acquisition, Q.L. and W.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China under grant 92048205 and the Pujiang Talents Plan of Shanghai under grant 2019PJD035.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Proof of Proposition 1

Proof. 
The proof is by induction on the finite length of sequences in L ( G S ) .
Since δ S ( q 0 , S , ε ) = ( q 0 , S ( ε ) , ε , ε , x 0 ) , δ ( q 0 , ε ) = q 0 , and ξ ( x 0 , ε ) = x 0 , the base case is true.
The induction hypothesis is that for all μ L ( G S ) with | μ | n , if we write δ S ( q 0 , S , μ ) = ( q , π , θ o , θ c , x ) , then q = δ ( q 0 , ψ ( μ ) ) and x = ξ ( x 0 , f 1 ( ψ f ( μ ) ) ) . We next prove the same is also true for μ e L ( G S ) . Let us write δ S ( q 0 , S , μ e ) = ( q , π , θ o , θ c , x ) . By the definition of Σ S , e Σ , e Σ f , or e Σ g . We consider each of them separately as follows.
Case 1: e = σ Σ . By Equation (6), q = δ ( q , σ ) and x = x . Since σ Σ , by the definitions of ψ ( · ) and ψ f ( · ) , ψ ( μ σ ) = ψ ( μ ) σ and f 1 ( ψ f ( μ σ ) ) = f 1 ( ψ f ( μ ) ) . Moreover, since q = δ ( q 0 , ψ ( μ ) ) and x = ξ ( x 0 , f 1 ( ψ f ( μ ) ) ) , δ ( q 0 , ψ ( μ σ ) ) = δ ( q , σ ) = q and ξ ( x 0 , f 1 ( ψ f ( μ σ ) ) ) = ξ ( x 0 , f 1 ( ψ f ( μ ) ) ) = x = x .
Case 2: e = f ( σ ) Σ f . By Equation (7), q = q and x = ξ ( x , σ ) . Since f ( σ ) Σ f , by the definitions of ψ ( · ) and ψ f ( · ) , ψ ( μ f ( σ ) ) = ψ ( μ ) and f 1 ( ψ f ( μ f ( σ ) ) ) = f 1 ( ψ f ( μ ) ) σ . Moreover, since q = δ ( q 0 , ψ ( μ ) ) and x = ξ ( x 0 , f 1 ( ψ f ( μ ) ) ) , we have δ ( q 0 , ψ ( μ f ( σ ) ) ) = δ ( q 0 , ψ ( μ ) ) = q = q and ξ ( x 0 , f 1 ( ψ f ( μ f ( σ ) ) ) ) = ξ ( x 0 , f 1 ( ψ f ( μ ) ) σ ) = ξ ( x , σ ) = x .
Case 3: e = g ( γ ) Σ g . By Equation (8), we have q = q and x = x . Since g ( γ ) Σ g , by the definitions of ψ ( · ) and ψ f ( · ) , ψ ( μ g ( γ ) ) = ψ ( μ ) and f 1 ( ψ f ( μ g ( γ ) ) ) = f 1 ( ψ f ( μ ) ) . Moreover, since q = δ ( q 0 , ψ ( μ ) ) and x = ξ ( x 0 , f 1 ( ψ f ( μ ) ) ) , we have δ ( q 0 , ψ ( μ g ( γ ) ) ) = δ ( q 0 , ψ ( μ ) ) = q = q and ξ ( x 0 , f 1 ( ψ f ( μ g ( γ ) ) ) ) = ξ ( x 0 , f 1 ( ψ f ( μ ) ) ) = x = x . □

Appendix B. Proof of Proposition 2

Proof. 
Let us first introduce the following notation.
For any θ c = ( π 1 , n 1 ) ( π k , n k ) Θ c and any θ c = ( π 1 , n 1 ) ( π k , n k ) Θ c , we say θ c θ c if ( i = 1 , , k ) π i π i n i = n i . Note that ε ε holds.
We now prove that μ 1 L ( G S 1 ) with δ S 1 ( q 0 , S 1 , μ 1 ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) , there always exists a μ 2 L ( G S 2 ) such that ψ ( μ 1 ) = ψ ( μ 2 ) , f 1 ( ψ f ( μ 1 ) ) = f 1 ( ψ f ( μ 2 ) ) , and δ S 2 ( q 0 , S 2 , μ 2 ) = ( q 2 , π 2 , θ o , 2 , θ c , 2 , x 2 ) with q 1 = q 2 π 1 π 2 θ o , 1 = θ o , 2 θ c , 1 θ c , 2 . The proof is by induction on the finite length of sequences in L ( G S 1 ) .
Since δ S 1 ( q 0 , S 1 , ε ) = ( q 0 , S 1 ( ε ) , ε , ε , x 0 , 1 ) , δ S 2 ( q 0 , S 2 , ε ) = ( q 0 , S 2 ( ε ) , ε , ε , x 0 , 2 ) , ψ ( ε ) = ψ ( ε ) , f 1 ( ψ f ( ε ) ) = f 1 ( ψ f ( ε ) ) , and q 0 = q 0 S 1 ( ε ) S 2 ( ε ) ε = ε ε ε , the base case is true.
The induction hypothesis is that μ 1 L ( G S 1 ) with | μ 1 | k , if δ S 1 ( q 0 , S 1 , μ 1 ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) , then there exists a μ 2 L ( G S 2 ) such that ψ ( μ 1 ) = ψ ( μ 2 ) , f 1 ( ψ f ( μ 1 ) ) = f 1 ( ψ f ( μ 2 ) ) , and δ S 2 ( q 0 , S 2 , μ 2 ) = ( q 2 , π 2 , θ o , 2 , θ c , 2 , x 2 ) with q 1 = q 2 π 1 π 2 θ o , 1 = θ o , 2 θ c , 1 θ c , 2 . Next, we prove the same is also true for μ 1 e L ( G S 1 ) such that | μ 1 | = k . w.l.o.g., let us write δ S 1 ( q 0 , S 1 , μ 1 e ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) . By definition, we have (i) e Σ , (ii) e Σ f , or (iii) e Σ g . We consider each of them separately as follows.
Case 1: e = σ Σ . Since δ S 1 ( q 0 , S 1 , μ 1 ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) and δ S 1 ( q 0 , S 1 , μ 1 σ ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) , by Equation (6),
  • δ ( q 1 , σ ) ! σ π 1 MAX ( θ o , 1 + ) N o MAX ( θ c , 1 + ) N c ;
  • q 1 = δ ( q 1 , σ ) , π 1 = π 1 , θ o , 1 = IN o b s ( θ o , 1 , σ ) , θ c , 1 = PLUS ( θ c , 1 ) , and x 1 = x 1 .
Moreover, since δ S 2 ( q 0 , S 2 , μ 2 ) = ( q 2 , π 2 , θ o , 2 , θ c , 2 , x 2 ) with q 1 = q 2 π 1 π 2 θ o , 1 = θ o , 2 θ c , 1 θ c , 2 , we have δ ( q 2 , σ ) ! σ π 2 MAX ( θ o , 2 + ) N o MAX ( θ c , 2 + ) N c . By Equation (6), δ S 2 ( q 0 , S 2 , μ 2 σ ) = ( q 2 , π 2 , θ o , 2 , θ c , 2 , x 2 ) , where q 2 = δ ( q 2 , σ ) , π 2 = π 2 , θ o , 2 = IN o b s ( θ o , 2 , σ ) , θ c , 2 = PLUS ( θ c , 2 ) , and x 2 = x 2 . Therefore, we have
  • [ q 2 = δ ( q 2 , σ ) q 1 = δ ( q 1 , σ ) q 1 = q 2 ] [ q 2 = q 1 ] ;
  • [ π 2 = π 2 π 1 = π 1 π 2 π 1 ] [ π 2 π 1 ] ;
  • [ θ o , 2 = IN o b s ( θ o , 2 , σ ) θ o , 1 = IN o b s ( θ o , 1 , σ ) θ o , 1 = θ o , 2 ] [ θ o , 2 = θ o , 1 ] ;
  • [ θ c , 2 = PLUS ( θ c , 2 ) θ c , 1 = PLUS ( θ c , 2 ) θ c , 2 θ c , 1 ] [ θ c , 2 θ c , 1 ] .
Since ψ ( μ 1 ) = ψ ( μ 2 ) and f 1 ( ψ f ( μ 1 ) ) = f 1 ( ψ f ( μ 2 ) ) , by definitions, ψ ( μ 1 σ ) = ψ ( μ 1 ) σ = ψ ( μ 2 ) σ = ψ ( μ 2 σ ) and f 1 ( ψ f ( μ 1 σ ) ) = f 1 ( ψ f ( μ 2 σ ) ) .
Case 2: e = f ( σ ) Σ f . Since δ S 1 ( q 0 , S 1 , μ 1 ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) and δ S 1 ( q 0 , S 1 , μ 1 f ( σ ) ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) , by Equation (7), we have
  • OUT o b s ( θ o , 1 , σ ) ! ;
  • q 1 = q 1 , π 1 = π 1 , θ o , 1 = OUT o b s ( θ o , 1 , σ ) , θ c , 1 = IN c t r ( θ c , 1 , χ 1 ( ξ 1 ( x 1 , σ ) ) ) , and x 1 = ξ 1 ( x 1 , σ ) .
Since θ o , 1 = θ o , 2 and OUT o b s ( θ o , 1 , σ ) ! , OUT o b s ( θ o , 2 , σ ) ! . Since δ S 2 ( q 0 , S 2 , μ 2 ) = ( q 2 , π 2 , θ o , 2 , θ c , 2 , x 2 ) , by Equation (7), δ S 2 ( q 0 , S 2 , μ 2 f ( σ ) ) = ( q 2 , π 2 , θ o , 2 , θ c , 2 , x 2 ) , where q 2 = q 2 , π 2 = π 2 , θ o , 2 = OUT o b s ( θ o , 2 , σ ) , θ c , 2 = IN c t r ( θ c , 2 , χ 2 ( ξ 2 ( x 2 , σ ) ) ) , and x 2 = ξ 2 ( x 2 , σ ) . Therefore, we have
  • [ q 2 = q 2 q 1 = q 1 q 1 = q 2 ] [ q 1 = q 2 ] ;
  • [ π 2 = π 2 π 1 = π 1 π 2 π 1 ] [ π 2 π 1 ] ;
  • [ θ o , 2 = OUT o b s ( θ o , 2 , σ ) θ o , 1 = OUT o b s ( θ o , 1 , σ ) θ o , 1 = θ o , 2 ] [ θ o , 2 = θ o , 1 ] ;
Since f 1 ( ψ f ( μ 1 ) ) = f 1 ( ψ f ( μ 2 ) ) , we have f 1 ( ψ f ( μ 1 f ( σ ) ) ) = f 1 ( ψ f ( μ 2 f ( σ ) ) ) . We write f 1 ( ψ f ( μ 1 f ( σ ) ) ) = t . By Proposition 1, x 1 = ξ 1 ( x 0 , 1 , t ) and x 2 = ξ 2 ( x 0 , 2 , t ) . By the definitions of S 1 and S 2 , S 1 ( t ) = χ 1 ( x 1 ) and S 2 ( t ) = χ 2 ( x 2 ) . Since S 1 S 2 , χ 1 ( x 1 ) χ 2 ( x 2 ) . Since θ c , 1 = IN c t r ( θ c , 1 , χ 1 ( x 1 ) ) , θ c , 2 = IN c t r ( θ c , 2 , χ 2 ( x 2 ) ) , and θ c , 2 θ c , 1 , by the definition of IN c t r ( · ) , θ c , 2 θ c , 1 . Moreover, since ψ ( μ 1 ) = ψ ( μ 2 ) , ψ ( μ 1 f ( σ ) ) = ψ ( μ 1 ) = ψ ( μ 2 ) = ψ ( μ 2 f ( σ ) ) .
Case 3: e = g ( γ ) Σ . Since δ S 1 ( q 0 , S 1 , μ 1 ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) and δ S 1 ( q 0 , S 1 , μ 1 g ( γ ) ) = ( q 1 , π 1 , θ o , 1 , θ c , 1 , x 1 ) , by Equation (8), we have
  • OUT c t r ( θ c , 1 , γ ) ! ;
  • q 1 = q 1 , π 1 = γ , θ o , 1 = θ o , 1 , and θ c , 1 = OUT c t r ( θ c , 1 , γ 1 ) , and x 1 = x 1 .
Since OUT c t r ( θ c , 1 , γ ) ! , we know OUT c t r ( θ c , 2 , γ ) ! , where γ is the first control command of θ c , 2 . Since θ 2 θ 1 , γ γ . Therefore, we have
  • [ q 2 = q 2 q 1 = q 1 q 1 = q 2 ] [ q 1 = q 2 ] ;
  • [ π 2 = γ π 1 = γ γ γ ] [ π 2 π 1 ] ;
  • [ θ o , 2 = θ o , 2 θ o , 1 = θ o , 1 θ o , 1 = θ o , 2 ] [ θ o , 2 = θ o , 1 ] ;
  • [ θ c , 2 = OUT c t r ( θ c , 2 , γ ) θ c , 1 = OUT c t r ( θ c , 2 , γ ) θ c , 2 θ c , 1 ] [ θ c , 2 θ c , 1 ] .
Moreover, since ψ ( μ 1 ) = ψ ( μ 2 ) and f 1 ( ψ f ( μ 1 ) ) = f 1 ( ψ f ( μ 2 ) ) , ψ ( μ 1 g ( γ ) ) = ψ ( μ 2 g ( γ ) ) and f 1 ( ψ f ( μ 1 g ( γ ) ) ) = f 1 ( ψ f ( μ 2 g ( γ ) ) ) . □

Appendix C. Proof of Proposition 3

Proof. 
We first introduce the following notation.
Given any θ c = ( π 1 , n 1 ) ( π k , n k ) Θ c and any θ c = ( π 1 , n 1 ) ( π k , n k ) Θ c , we say θ c θ c if ( i = 1 , , k ) π i π i n i = n i . Note that ε ε holds.
Since ν L ( G z ) , let us write δ z ( z , ν i ) = ( p i , γ i , ω o i , ω c i ) for i = 1 , , | ν | . Next, we prove δ S ( q 0 , S , μ ν i ) ! and δ S ( q 0 , S , μ ν i ) = ( q i , π i , θ o i , θ c i , x i ) with q i = p i , π i γ i , θ o i = ω o i , and θ c i ω c i for i = 1 , , | ν | .
Since δ z ( z , ε ) = ( q , π , θ o , θ c ) and δ S ( q 0 , S , μ ) = ( q , π , θ o , θ c , x ) , the base case is true. The induction hypothesis is that for all μ ν i with i k , we have δ S ( q 0 , S , μ ν i ) = ( q i , π i , θ o i , θ c i , x i ) with q i = p i , π i γ i , θ o i = ω o i , and θ c i ω c i . We now prove the same is also true for μ ν k + 1 = μ ν k e . By definition, (i) e = σ Σ , (ii) e = f ( σ ) Σ f , or (iii) e = g ( γ ) Σ g .
Case 1: e = σ Σ . Since δ z ( z , ν k ) = ( p k , γ k , ω o k , ω c k ) and
δ z ( z , ν k σ ) = ( p k + 1 , γ k + 1 , ω o k + 1 , ω c k + 1 ) ,
by Equation (15), we have
  • δ ( p k , σ ) ! σ γ k MAX ( ( ω o k ) + ) N o MAX ( ( ω c k ) + ) N c ;
  • p k + 1 = δ ( p k , σ ) , γ k + 1 = γ k , ω o k + 1 = IN o b s ( ω o k , σ ) , and ω c k + 1 = PLUS ( ω c k ) .
By induction hypothesis, δ S ( q 0 , S , μ ν k ) = ( q k , π k , θ o k , θ c k , x k ) with q k = p k , π k γ k , θ o k = ω o k , and θ c k ω c k . Hence, we have δ ( q k , σ ) ! σ π k MAX ( ( θ o k ) + ) N o MAX ( ( θ c k ) + ) N c . By Equation (6), δ S ( q 0 , S , μ ν k σ ) = ( q k + 1 , π k + 1 , θ o k + 1 , θ c k + 1 , x k + 1 ) , where q k + 1 = δ ( q k , σ ) , π k + 1 = π k , θ o k + 1 = IN o b s ( θ o k , σ ) , θ c k + 1 = PLUS ( θ c k ) , and x k + 1 = x k . Therefore, p k + 1 = q k + 1 π k + 1 γ k + 1 θ o k + 1 = ω o k + 1 θ c k + 1 ω c k + 1 .
Case 2: e = f ( σ ) Σ f . Since δ z ( z , ν k ) = ( p k , γ k , ω o k , ω c k ) and
δ z ( z , ν k f ( σ ) ) = ( p k + 1 , γ k + 1 , ω o k + 1 , ω c k + 1 ) ,
by Equation (16), we have
  • OUT o b s ( ω o k , σ ) ! ;
  • p k + 1 = p k , γ k + 1 = γ k , ω o k + 1 = OUT o b s ( ω o k , σ ) , and ω c k + 1 = IN c t r ( ω c k , Σ u c ) .
By induction hypothesis, δ S ( q 0 , S , μ ν k ) = ( q k , π k , θ o k , θ c k , x k ) with q k = p k , π k γ k , θ o k = ω o k , and θ c k ω c k . Hence, OUT o b s ( θ o k , σ ) ! By Equation (7), δ S ( q 0 , S , μ ν k f ( σ ) ) = ( q k + 1 , π k + 1 , θ o k + 1 ,
θ c k + 1 , x k + 1 ) , where q k + 1 = q k , π k + 1 = π k , θ o k + 1 = OUT o b s ( θ o k , σ ) , θ c k + 1 = IN c t r ( θ c k , χ ( ξ ( x k , σ ) ) ) , and x k + 1 = ξ ( x k , σ ) . Since χ ( ξ ( x k , σ ) ) = Σ u c , θ c k + 1 = IN c t r ( ω c k , Σ u c ) . Thus, p k + 1 = q k + 1 π k + 1 γ k + 1 θ o k + 1 = ω o k + 1 θ c k + 1 ω c k + 1 .
Case 3: e = g ( γ ) Σ g . Since δ z ( z , ν k ) = ( p k , γ k , ω o k , ω c k ) and
δ z ( z , ν k g ( γ ) ) = ( p k + 1 , γ k + 1 , ω o k + 1 , ω c k + 1 ) ,
by Equation (17), we have
  • OUT c t r ( ω c k , γ ) ! ;
  • p k + 1 = p k , γ k + 1 = γ , ω o k + 1 = ω o k , and ω c k + 1 = OUT c t r ( ω c k , γ ) .
By induction hypothesis, δ S ( q 0 , S , μ ν k ) = ( q k , π k , θ o k , θ c k , x k ) with q k = p k , π k γ k , θ o k = ω o k , and θ c k ω c k . Hence, OUT c t r ( θ c k , γ ) ! By Equation (8), δ S ( q 0 , S , μ ν k g ( γ ) ) = ( q k + 1 , π k + 1 , θ o k + 1 , θ c k + 1 ,
x k + 1 ) , where q k + 1 = q k , π k + 1 = γ , θ o k + 1 = θ o k , θ c k + 1 = OUT c t r ( θ c k , γ ) , and x k + 1 = x k . Therefore, p k + 1 = q k + 1 π k + 1 γ k + 1 θ o k + 1 = ω o k + 1 θ c k + 1 ω c k + 1 .
Overall, we have δ S ( q 0 , S , μ ν ) ! . By Definition 3, ψ ( μ ν ) L ( S / G ) . □

Appendix D. Proof of Theorem 2

Proof. 
( ) The proof is by contradiction. Suppose ( i { 1 , , | t | } ) E ˜ S t ( t i ) T s p e c . w.l.o.g., we write z = ( q , π , θ o , θ c ) E ˜ S t ( t i ) T s p e c . Let S t = ( A , χ ) with A = ( X , Σ o , ξ , x 0 ) . Let G S t = ( Q S t , Σ S t , δ S t , q 0 , S t ) be the automaton constructed using procedures proposed in Section 3.2. Since z E ˜ S t ( t i ) , by Theorem 1, μ L ( G S t ) with f 1 ( ψ f ( μ ) ) = t i such that δ S t ( q 0 , S t , μ ) = ( p , γ , ω o , ω c , x ) and p = q γ = π ω o = θ o ω c = θ c . Meanwhile, since z T s p e c , by Equation (19), FC ( Q z ) ( Q \ Q H ) . By Equation (18), there exists ν L ( G z ) , such that δ ( q , ψ ( ν ) ) Q \ Q H . Since ν L ( G z ) , by Proposition 3, ψ ( μ ν ) L ( S t / G ) . Since δ S t ( q 0 , S t , μ ) = ( q , π , θ o , θ c , x ) , by Proposition 1, δ ( q 0 , ψ ( μ ) ) = q . Moreover, since δ ( q , ψ ( ν ) ) Q \ Q H , δ ( q 0 , ψ ( μ ν ) ) Q \ Q H . Therefore, L ( S t / G ) ¬ K , which contradicts L ( S t / G ) K .
Moreover, ( ) is also by contradiction. Suppose there exists s L ( S t / G ) , such that s K . By Definition 3, μ L ( G S t ) with s = ψ ( μ ) . We write μ = μ 1 μ 2 such that μ 1 μ ¯ is the longest prefix of μ with f 1 ( ψ f ( μ 1 ) ) t ¯ . Since f 1 ( ψ f ( μ 1 ) ) t ¯ , we have f 1 ( ψ f ( μ 1 ) ) = t j for some j { 0 , 1 , , | t | } . We write δ S t ( q 0 , S t , μ 1 ) = ( q , π , θ o , θ c , x ) and z = ( q , π , θ o , θ c ) . By Theorem 1, z E ˜ S t ( f 1 ( ψ f ( μ 1 ) ) ) = E ˜ S t ( t j ) . We next prove z T s p e c .
Since μ = μ 1 μ 2 L ( G S t ) , we write δ S t ( q 0 , S t , μ 1 μ 2 i ) = ( p i , γ i , ω o i , ω c i , y i ) for i = 0 , 1 , , | μ 2 | . Clearly, ( p 0 , γ 0 , ω o 0 , ω c 0 ) = ( q , π , θ o , θ c ) . We now prove δ z ( z , μ 2 i ) = ( p i , γ i , ω o i , ω c i ) by induction on μ 2 i for i = 0 , 1 , , | μ 2 | .
The base case is true since δ z ( z , μ 2 0 ) = z = ( q , π , θ o , θ c ) with ( q , π , θ o , θ c ) = ( p 0 , γ 0 , ω o 0 , ω c 0 ) . The induction hypothesis is that for all μ 2 i with i k , δ z ( z , μ 2 i ) = ( p i , γ i , ω o i , ω c i ) . We next prove the same is also true for μ 2 k + 1 = μ 2 k e . Since δ S t ( q 0 , S t , μ 1 μ 2 i ) = ( p i , γ i , ω o i , ω c i , y i ) for i | μ 2 | , δ S t ( q 0 , S t , μ 1 μ 2 k ) = ( p k , γ k , ω o k , ω c k , y k ) and δ S t ( q 0 , S t , μ 1 μ 2 k e ) = ( p k + 1 , γ k + 1 , ω o k + 1 , ω c k + 1 , y k + 1 ) . By definition, (i) e = σ Σ , (ii) e = f ( σ ) Σ f , or (iii) e = g ( γ ) Σ g .
Case 1: e = σ Σ . By Equation (6), we have
  • δ ( p k , σ ) ! σ γ k MAX ( ( ω o k ) + ) N o MAX ( ( ω c k ) + ) N c ;
  • p k + 1 = δ ( p k , σ ) , γ k + 1 = γ k , ω o k + 1 = IN o b s ( ω o k , σ ) , ω c k + 1 = PLUS ( ω c k ) , and y k + 1 = y k .
Since δ z ( z , μ 2 k ) = ( p k , γ k , ω o k , ω c k ) , by Equation (15),
δ z ( z , μ 2 k σ ) = ( δ ( p k , σ ) , γ k , IN o b s ( ω o k , σ ) , PLUS ( ω c k ) ) .
Therefore, δ z ( z , μ 2 k σ ) = ( p k + 1 , γ k + 1 , ω o k + 1 , ω c k + 1 ) .
Case 2: e = f ( σ ) Σ f . By Equation (7), we have
  • OUT o b s ( θ o k , σ ) ! ;
  • p k + 1 = p k , γ k + 1 = γ k , ω o k + 1 = OUT o b s ( ω o k , σ ) , ω c k + 1 = IN c t r ( ω c k , χ ( ξ ( y k , σ ) ) ) , and y k + 1 = ξ ( y k , σ ) .
By Proposition 1, y k + 1 = ξ ( x 0 , f 1 ( ψ f ( μ 1 μ 2 k f ( σ ) ) ) ) . Since f 1 ( ψ f ( μ 1 μ 2 k f ( σ ) ) ) t ¯ , χ ( y k + 1 ) = Σ u c . Thus, ω c k + 1 = IN c t r ( θ c k , Σ u c ) . Since δ z ( z , μ 2 k ) = ( p k , γ k , ω o k , ω c k ) , by Equation (16), δ z ( z , μ 2 k σ ) = ( p k , γ k , OUT o b s ( ω o k , σ ) , IN c t r ( θ c k , Σ u c ) ) . Thus, δ z ( z , μ 2 k f ( σ ) ) = ( p k + 1 , γ k + 1 , ω o k + 1 , ω c k + 1 ) .
Case 3: e = g ( γ ) Σ . By Equation (8), we have
  • OUT c t r ( ω c k , γ ) ! ;
  • p k + 1 = p k , γ k + 1 = γ , ω o k + 1 = ω o k , ω c k + 1 = OUT c t r ( ω c k , γ ) , and y k + 1 = y k .
Since δ z ( z , μ 2 k ) = ( p k , γ k , ω o k , ω c k ) , by Equation (17), δ z ( z , μ 2 k g ( γ ) ) = ( p k , γ , ω o k , OUT c t r ( ω c k , γ ) ) . Therefore, δ z ( z , μ 2 k g ( γ ) ) = ( p k + 1 , γ k + 1 , ω o k + 1 , ω c k + 1 ) .
Overall, we have δ z ( z , μ 2 ) = ( p | μ 2 | , γ | μ 2 | , ω o | μ 2 | , ω c | μ 2 | ) . Since
δ S t ( q 0 , S t , μ 1 μ 2 ) = ( p | μ 2 | , γ | μ 2 | , ω o | μ 2 | , ω c | μ 2 | , y | μ 2 | )
and ψ ( μ 1 μ 2 ) L ( G ) \ K , by Proposition 1, p | μ 2 | Q \ Q H . By Equation (18), z T s p e c . Since z E ˜ S ( t j ) , we have z E ˜ S ( t j ) T s p e c , which contradicts ( i = 1 , , | t | ) E ˜ S ( t i ) T s p e c = . □

References

  1. Ramadge, P.J.; Wonham, W.M. Supervisory Control of a Class of Discrete Event Processes. SIAM J. Control Optim. 1987, 25, 206–230. [Google Scholar] [CrossRef] [Green Version]
  2. Lin, F.; Wonham, W.M. On observability of discrete-event systems. Inf. Sci. 1988, 44, 173–198. [Google Scholar] [CrossRef]
  3. Lin, F.; Wonham, W.M. Decentralized Supervisory Control of Discrete-event Systems. Inf. Sci. 1988, 44, 199–224. [Google Scholar] [CrossRef]
  4. Lin, F. Robust and adaptive supervisory control of discrete event systems. IEEE Trans. Autom. Control 1993, 38, 1848–1852. [Google Scholar] [CrossRef]
  5. Rashidinejad, A.; Reniers, M.; Fabian, M. Supervisor control of discrete-event systems in an asynchronous setting. In Proceedings of the 2019 IEEE 15th International Conference on Automation Science and Engineering (CASE), Vancouver, BC, Canada, 22–26 August 2019; pp. 6730–6735. [Google Scholar]
  6. Ji, Y.; Yin, X.; Lafortune, S. Local Mean Payoff Supervisory Control for Discrete Event Systems. IEEE Trans. Autom. Control 2022, 67, 2282–2297. [Google Scholar] [CrossRef]
  7. Rohloff, K. Sensor failure tolerant supervisory control. In Proceedings of the 44th IEEE Conference on Decision and Control (CDC), Seville, Spain, 15 December 2005; pp. 3493–3498. [Google Scholar]
  8. Park, S.J.; Cho, K.H. Delay-robust supervisory control of discrete-event systems with bounded communication delays. IEEE Trans. Autom. Control 2006, 51, 2282–2297. [Google Scholar] [CrossRef]
  9. Pruekprasert, S.; Ushio, T. Supervisory Control of Communicating Timed Discrete Event Systems for State Avoidance Problem. IEEE Control Syst. Lett. 2019, 4, 259–264. [Google Scholar] [CrossRef]
  10. Sadid, W.H.; Ricker, L.; Hashtrudi-Zad, S. Robustness of synchronous communication protocols with delay for decentralized discrete-event control. Discret. Event Dyn. Syst. 2015, 25, 159–176. [Google Scholar] [CrossRef]
  11. Zhang, R.; Cai, K.; Gan, Y.; Wonham, W.M. Distributed supervisory control of discrete-event systems with communication delay. Discret. Event Dyn. Syst. 2016, 26, 263–293. [Google Scholar] [CrossRef] [Green Version]
  12. Zhang, R.; Cai, K.; Gan, Y.; Wonham, W.M. Delay-Robustness in Distributed Control of Timed Discrete-Event Systems Based on Supervisor Localization. Int. J. Control 2014, 89, 2055–2072. [Google Scholar] [CrossRef]
  13. Zgorzelski, M.; Lunze, J. A new approach to tracking control of networked discrete-event systems. IFAC-PapersOnLine 2018, 51, 448–455. [Google Scholar] [CrossRef]
  14. Zgorzelski, M.; Lunze, J. A method for the synchronisation of networked discrete-event systems. In Proceedings of the Proceedings of the 13th International Workshop on Discrete Event Systems (WODES), Xi’an, China, 30 May 2016–1 June 2016; pp. 444–451. [Google Scholar]
  15. Yang, S.; Hou, J.; Yin, X.; Li, S. Opacity of Networked Supervisory Control Systems over Insecure Communication Channels. IEEE Trans. Control Netw. Syst. 2021, 8, 884–896. [Google Scholar] [CrossRef]
  16. Takai, S. A general framework for diagnosis of discrete event systems subject to sensor failures. Automatica 2021, 129, 109669. [Google Scholar] [CrossRef]
  17. Lin, L.; Zhu, Y.; Tai, R.; Ware, S.; Su, R. Networked supervisor synthesis against lossy channels with bounded network delays as non-networked synthesis. Automatica 2022, 142, 110279. [Google Scholar] [CrossRef]
  18. Zhu, Y.; Lin, L.; Tai, R.; Su, R. Distributed Control of Timed Networked System against Communication Delays. In Proceedings of the 2022 IEEE 17th International Conference on Control and Automation (ICCA), Naples, Italy, 27–30 June 2022; pp. 1008–1013. [Google Scholar]
  19. Zhou, L.; Shu, S.; Lin, F. Detectability of Discrete-Event Systems Under Nondeterministic Observations. IEEE Trans. Autom. Sci. Eng. 2021, 18, 1315–1327. [Google Scholar] [CrossRef]
  20. Tai, R.; Lin, L.; Zhu, Y.; Su, R. A new modeling framework for networked discrete-event systems. Automatica 2022, 138, 1–7. [Google Scholar] [CrossRef]
  21. Lin, F. Control of networked discrete event systems: Dealing with communication delays and losses. SIAM J. Control Optim. 2014, 52, 1276–1298. [Google Scholar] [CrossRef]
  22. Shu, S.; Lin, F. Supervisor synthesis for networked discrete event systems with communication delays. IEEE Trans. Autom. Control 2015, 60, 2183–2188. [Google Scholar] [CrossRef]
  23. Shu, S.; Lin, F. Predictive networked control of discrete event systems. IEEE Trans. Autom. Control 2017, 62, 4698–4705. [Google Scholar] [CrossRef]
  24. Shu, S.; Lin, F. Deterministic networked control of discrete event systems with nondeterministic communication delays. IEEE Trans. Autom. Control 2017, 62, 190–205. [Google Scholar] [CrossRef]
  25. Wang, F.; Shu, S.; Lin, F. Robust networked control of discrete event systems. IEEE Trans. Autom. Sci. Eng. 2016, 13, 1258–1540. [Google Scholar] [CrossRef]
  26. Liu, Z.; Yin, X.; Shu, S.; Lin, F.; Li, S. Online supervisory control of networked discrete-event systems with control delays. IEEE Trans. Auto. Control 2021, 2021, 1. [Google Scholar]
  27. Zhao, B.; Lin, F.; Wang, C.; Zhang, X.; Polis, M.; Wang, L. Supervisory control of networked timed discrete event systems and its applications to power distribution networks. IEEE Trans. Control Netw. Syst. 2017, 4, 146–158. [Google Scholar] [CrossRef]
  28. Alves, M.; Carvalho, L.; Basilio, J. Supervisory Control of Networked Discrete Event Systems with Timing Structure. IEEE Trans. Autom. Control 2021, 66, 2206–2218. [Google Scholar] [CrossRef]
  29. Rashidinejad, A.; Reniers, M.; Feng, L. Supervisory control of timed discrete-event systems subject to communication delays and non-fifo observations. IFAC-PapersOnLine 2018, 51, 456–463. [Google Scholar] [CrossRef]
  30. Zhu, Y.; Lin, L.; Simon, W.; Su, R. Supervisor synthesis for networked discrete event systems with communication delays and lossy channels. In Proceedings of the IEEE 58th Conference on Decision and Control (CDC), Nice, France, 11–13 December 2019; pp. 6730–6735. [Google Scholar]
  31. Lin, F.; Heymann, M. On-line control of partially observed discrete event systems. Discret. Event Dyn. Syst. Theory Appl. 1994, 4, 221–236. [Google Scholar]
  32. Hadj-Alouane, N.; Lafortune, S.; Lin, F. Centralized and distributed algorithms for on-Line synthesis of maximal control policies under partial observation. Discret. Event Dyn. Syst. Theory Appl. 1996, 6, 379–427. [Google Scholar] [CrossRef] [Green Version]
  33. Yin, X.; Lafortune, S. Synthesis of Maximally Permissive Supervisors for Partially-Observed Discrete-Event Systems. IEEE Trans. Autom. Control 2016, 61, 1239–1254. [Google Scholar] [CrossRef]
  34. Yin, X.; Lafortune, S. A Uniform Approach for Synthesizing Property-Enforcing Supervisors for Partially-Observed Discrete-Event Systems. IEEE Trans. Autom. Control 2016, 61, 2140–2154. [Google Scholar] [CrossRef]
  35. Yin, X.; Lafortune, S. Synthesis of Maximally-Permissive Supervisors for the Range Control Problem. IEEE Trans. Autom. Control 2017, 62, 3914–3929. [Google Scholar] [CrossRef]
  36. Yin, X.; Lafortune, S. Synthesis of Maximally Permissive Nonblocking Supervisors for the Lower Bound Containment Problem. IEEE Trans. Autom. Control 2018, 63, 4435–4441. [Google Scholar] [CrossRef]
  37. Hou, Y.; Wang, W.; Zang, Y.; Lin, F.; Yu, M.; Gong, C. Relative network observability and its relation with network observability. IEEE Trans. Autom. Control 2020, 65, 3584–3735. [Google Scholar] [CrossRef]
  38. Wang, F.; Shu, S.; Lin, F. On network observability of discrete event system. In Proceedings of the IEEE 54th Conference on Decision and Control (CDC), Osaka, Japan, 15–18 December 2015; pp. 3528–3533. [Google Scholar]
  39. Lin, F.; Wang, W.; Han, L.; Shen, B. State estimation of multi-channel networked discrete event systems. IEEE Trans. Control Netw. Syst. 2020, 7, 53–63. [Google Scholar] [CrossRef]
  40. Cassandras, C.G.; Lafortune, S. Introduction to Discrete Event Systems, 2nd ed.; Springer: New York, NY, USA, 2007. [Google Scholar]
Figure 1. Supervisory control of networked DESs.
Figure 1. Supervisory control of networked DESs.
Mathematics 11 00003 g001
Figure 2. System G and Supervisor S = ( A , χ ) .
Figure 2. System G and Supervisor S = ( A , χ ) .
Mathematics 11 00003 g002
Figure 3. The interaction process between the plant and the supervisor.
Figure 3. The interaction process between the plant and the supervisor.
Mathematics 11 00003 g003
Figure 4. Automaton model G S in Example 2.
Figure 4. Automaton model G S in Example 2.
Mathematics 11 00003 g004
Figure 5. Online state estimation under communication delays.
Figure 5. Online state estimation under communication delays.
Mathematics 11 00003 g005
Figure 6. Uncontrolled system G and desired system H.
Figure 6. Uncontrolled system G and desired system H.
Mathematics 11 00003 g006
Figure 7. A signalized intersection.
Figure 7. A signalized intersection.
Mathematics 11 00003 g007
Figure 8. System G and desired system H.
Figure 8. System G and desired system H.
Mathematics 11 00003 g008
Figure 9. Supervisor S * .
Figure 9. Supervisor S * .
Mathematics 11 00003 g009
Figure 10. Supervisory control of networked DESs with non-FIFO observations and controls.
Figure 10. Supervisory control of networked DESs with non-FIFO observations and controls.
Mathematics 11 00003 g010
Table 1. Events in the transport safety model.
Table 1. Events in the transport safety model.
EventsDescriptionControllableObservable
aVehicle x arrives at the intersectionYesNo
pVehicle x leaves the intersectionYesNo
yThe traffic light is switched to yellowNoYes
g 1 The traffic light is in the first half of the green cycleNoYes
g 2 The traffic light is in the second half of the green cycleNoYes
r 1 The traffic light is in the first half of the red cycleNoYes
r 2 The traffic light is in the second half of the red cycleNoYes
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Hou, Y.; Shen, Y.; Li, Q.; Ji, Y.; Li, W. Modeling and Optimal Supervisory Control of Networked Discrete-Event Systems and Their Application in Traffic Management. Mathematics 2023, 11, 3. https://doi.org/10.3390/math11010003

AMA Style

Hou Y, Shen Y, Li Q, Ji Y, Li W. Modeling and Optimal Supervisory Control of Networked Discrete-Event Systems and Their Application in Traffic Management. Mathematics. 2023; 11(1):3. https://doi.org/10.3390/math11010003

Chicago/Turabian Style

Hou, Yunfeng, Yanni Shen, Qingdu Li, Yunfeng Ji, and Wei Li. 2023. "Modeling and Optimal Supervisory Control of Networked Discrete-Event Systems and Their Application in Traffic Management" Mathematics 11, no. 1: 3. https://doi.org/10.3390/math11010003

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