A Review of Hybrid Automata Models

In this paper, Hybrid Automata, which is a formal model for hybrid systems, has been introduced. A summary of its theory is presented and some of its special and important classes are listed and some properties that can be studied and checked for it are mentioned. Finally, the purposes of use, the most widely used areas, and the tools that provide H.A. Support are addressed.


Definition of Hybrid Automation
In Automata theory, the Hybrid Automata is the official model for accurately describing composite systems that have both discrete computational and continuous processes. This model is a combination of a finite state machine and a set of differential equations [3] [2] [1].
Dynamic systems usually have both continuous behavioral and discrete behavioral aspects. Abstraction in discrete space should be used to model discrete aspects and abstraction in continuous space should be used to model continuous aspects. Many computer systems (such as embedded systems) and non-computer systems (such as biological systems) have this variety of behavior.
The modeling method of these systems should be aware of this diversity and be able to model discrete and continuous aspects simultaneously. Hybrid Automata models have this feature.
Continuous state space variables: A finite set of variables in the form X = {x 1 , …, x n }, each of which x i is a variable of type real numbers. The number of these variables, ie n, is called the Hybrid Automata dimension. For continuous changes, we display the derivative of these variables as X = {x 1 ,…, x n }. For discrete changes, we display the values of these variables after the discrete change occurs with X '= {x 1 ',…, x n '}.
Discrete State Space and Its Transition Logic (Control Graph): A finite directional graph (V, E) in which V, the sum of the vertices of this graph, are states in discrete space for our system and in some sources are called Control states. Also, E, the edges of this graph, represent the transition between states in discrete space, and in some sources the edges of this graph are called Control Switches.
Initial conditions, invariant conditions and flow conditions: These conditions and states are labeled through three labeling functions on the outline of the graph, namely Control states. That is, the three labeling functions init, inv, and flow attach three statements to each discrete state (= each vertex of the graph).
For each vertex v, the proposition (init (v) is a proposition whose free variables are from the set X. This proposition represents the initial value of the variables of the continuous state space for this vertex (= this Control Mode). The vertex v is the initial state of discrete control (initial control mode), the initial values for the variables of the continuous state space are determined by the statement init (v), i.e. the ordered pair (v, init (v)) of a member of the set of states In some sources, the set of initial states of the system is called Init, so we can say: (v,init(v)) .
For each vertex v, the proposition inv (v) is a proposition whose free variables are of set X. This statement states the necessary condition for survival in a discrete state (= staying in a Control Mode) based on the values of continuous space variables. If inv (v) is violated, the system cannot remain in the v discrete state. Of course inv (v) is only a necessary condition and not sufficient. That is, inv (v) may be established and the discrete state v may be left.
For each vertex v, flow (v) is a proposition whose free variables are from the set X Y X, and in fact this proposition is made up of a number of differential equations that are placed together in the form of a proposition. At the vertex v, the statement flow (v) represents Continuous Dynamics for continuous variables of the system, i.e. the logic of change in the values of continuous variables (which determine the continuous state of the system), in each discrete state v is determined by flow (v) The change in the continuous values of the continuous state variables is called "flow" or "evolution of the state in continuous space", hence the name of the function that expresses the logic of changing the continuous variables for each discrete state. Of course, some sources use only the name Continuous Dynamics to refer to these propositions.
It should be noted that in a Hybrid Automata, continuous state variables are constantly changing. In any discrete state (= or Control Mode), continuous variables change in a way and with a specific logic of that state. How to change continuous variables in any discrete case v is expressed through differential equations and in the form of flow (v). Hence, some sources have stated that each discrete state of a Hybrid Automata is assigned a set of differential equations that express the Continuous Dynamics of the system for that state. In other words, the system consists of a number of states (= Statics) and the change of these states (= (Dynamics). Each HA actually represents a statics and its Dynamics. Therefore, HA can be considered an independent model from this perspective. Know the concept of time, because Dynamics is only an order on the statics space (= represents the order of change of states). If we do, then we can consider HA as a temporal model, so depending on how we look at it, HA can be considered both a temporal model and a timeindependent model, which is a very interesting flexibility Some of them use it only as a logical and high-level modeling to express the logic of Statics and Dynamics of the system, and some even use it as a competitor to Timed Automata -that is, very pragmatic and close. Take advantage of the time concerns of implementing a system. Jump Conditions: These conditions are defined by a tagging function called jump. This function attaches a statement to each edge of the control graph (= to each Control Switch). For edge e, the free variables in the jump statement (e) are from the set X Y X '. Some sources have divided the jump conditions into two preconditions, precondition and post-condition. Formally, however, there is no need to distinguish between preconditions and post-conditions by using X variables alongside X variables. Because the preconditions are assigned to the members of X 'and the preconditions are around the members of X'. When we can use the terms X Y X 'in condition statements, it means that we can express the meanings of precondition and postcondition together in the form of a condition.
These conditions are in fact conditions that are necessary for a discrete change to occur. Here, too, these conditions are only necessary and not sufficient. That is, there may be conditions for a discrete change, but that discrete change does not occur. To model a necessary and sufficient condition for a discrete variable, one must use the coordinated setting of the conditions for survival in a state (previously introduced in inv (v)) and the jump conditions of the output edges of that state. As we said before, inv (v) expresses the conditions for survival in a discrete state. Therefore, if we reach a state where inv (v) is not present, we have to leave the v state. Therefore, we must select one of the output edges of v that has the jump conditions of that edge. Now, in this situation, if only the jump condition of one of the edges is met, we have to cross that edge. So by simultaneously adjusting inv and jump, the necessary and sufficient conditions for the occurrence of a discrete change in HA can be modeled and included.
Events: In each HA we have a finite set of events called . An edge tagging function called event: E   assigns an event to each edge in the control graph (= to each Control Switch, i.e. to each transition in the discrete state of the system). Events can be viewed through the discrete inputs of the system. In a way, in some sources, instead of using the word event, the word "discrete inputs" is used to describe the set  in the definition of HA.

The second definition
Hybrid Automata is an 8-tuple as follows [4]:  Q = {q 1, …,q n } is a finite set of discrete states.  X is a continuous state space. A space  n where n is the dimension of Hybrid Automata.  A vector field that, for each discrete state, expresses the transition logic of continuous states:  Set of initial system states:  Invariant conditions, i.e. the conditions necessary for continuous variables to survive in discrete states  A transition relation that expresses the logic of transition between discrete states:  Guard conditions on transitions: Reset Map: During discrete transitions, the values of the continuous variables are reset according to this map. (In some sources, instead of introducing this map, transition conditions are used to reset the values during the transition. But in this definition, this concern is separated from the transition condition concern and is listed in a separate component called the reset map.) Some sources add two more components to the aforementioned eight components, giving a Hybrid Automata a dozen. These two components are: Set  (referred to by different names in different sources: a set of events, the alphabet of discrete inputs, or synchronization labels. All of these have a single meaning and use the  symbol to represent it.) The  tag function that attaches a member of  to each state transition in the discrete state space (= each edge of the control graph). This labeling function is useful for defining the simultaneous execution of two Hybrid Automata and their Composition.

Third definition
The dynamics of a Hybrid System can be modeled with a model called Hybrid Automata, which consists of the following entities [5]:  Continuous Dynamics:  Discrete dynamics :  Invariant conditions: These conditions actually express the meanings of any discrete state in the form of conditions necessary for survival in that state. These meanings are based on a combination of states and inputs as follows:  Initial cases: Figure 1. An example of a H.A. model that models a thermostat system. The variable x represents the temperature of the thermostat. On the right, the state transition diagram is plotted over time for an example system execution for continuous and discrete states [5].

The various components of a Hybrid System in Hybrid Automata
Each system can be composed of a number of components, the dynamics of these components and the relationship between them. A Hybrid System consists of two types of components -continuous and discrete. In other words, any system can be viewed in the form of statics, the dynamics of these components and the relationship between the two.
In a Hybrid Automata, discrete states represent the discrete components of a Hybrid System. Continuous state variables also represent its continuous components. Together, these two components model the statics of a system.
In a Hybrid Automata, the logic of transition between discrete states (= edges in the control graph or Control Switches) indicates how dynamic the discrete components of the system (Discrete Dynamics) are. Differential equations that determine and describe how the system variables change for each discrete state also express how the continuous components of the system (Continuous Dynamics) [5].
The relationship between discrete components and continuous components and the relationship between the dynamics of the two is explained by jumping conditions on the edges, invariant conditions and how the flow state is assigned to discrete states (= differential equations written on each vertex of the control graph).
Another concern of system modeling is the issue of system inputs and outputs, which is predicted in Hybrid Automata modeling of discrete and continuous inputs -both.
The output problem can also be modeled in the form of system state variables.
Thus, from the perspective of the first level of system vision, the Hybrid Automata can be considered a complete system modeling that addresses both the continuity and disintegration concerns of system components, dynamics, and communications.

Types of Semantics
Hybrid Automata theory supports Safe Semantics and Live Semantics [1]. From another perspective, one can see Semantics as "abstracted from time" and "set aside time", the so-called Time-Abstract Semantics. That is, in the Transition System, which means H.A. Defines, for each transition in state space, we specify only the logical condition of the transition. Although we know there is a limited time frame in which this transition occurs, we do not know its magnitude. We only know that this transition is possible in terms of time. In fact, we only know the chronology between the scenarios and we do not know the details of the time and the length of time required for the transition to occur. In other words, we are fully aware of the phases of change but not the duration of the change [1].

Zeno and NonZeno
In a H.A. And in its state space, we have both discrete and continuous transitions. Discrete transitions occur by passing over the edges of a control graph, and continuous transitions occur by continuously affecting the continuous variables of the state space. In H.A., there are continuous transitions that are tied to the concept of time. That is, depending on the way we look at the meaning of the system, either due to the passage of time, they occur continuously or time is defined based on their occurrence. Therefore, the concept of continuous time and transitions in H.A. Tied together. With this introduction, we come to the definition of Zeno behavior.
Zeno behavior is a phenomenon for a dynamic system that is defined as follows [4]: Infinite occurrence of events in a limited period of time 1 If H.A. performs infinitely discrete transitions over a limited period of time, it has Zeno behavior. In other words, if the infinitely discrete transition is associated with only a "finite magnitude" 2 of the transition in the space of continuous variables, the Zeno behavior of H.A. have seen. Take this hybrid system as an example: 1 This behavior was apparently first introduced by the famous Greek philosopher Xenon Elias in his famous paradox. Various forms of this paradox are presented. The paradox is this: "For example, if Achilles, the most extremist of the people, runs after a turtle, he will never reach it. Because whenever Achilles walks a distance, the turtle walks the same distance, and Achilles has to walk that distance." Or: "Achilles must first cover half the distance. This is the other half of the distance. Then he must cover the remaining half of the distance. Then he must first cover half of the remaining distance, which causes "Let the other half remain. This means that Achilles must do an infinite journey, which requires a non-zero time. Therefore, Achilles should never reach the turtle." 2 In the independent view of time, time can be defined as "the magnitude of motion", that is, time is not original and is only the result of measuring and appreciating motion. It should be noted that Time-Abstract Semantics supports this view.
Example of a Zeno system [4] A ball that lands on the ground and loses a constant fraction of its kinetic energy each time. This species must hit the ground infinitely to lose all its kinetic energy. A model H.A. Provided for this system. In this model, no assumptions are made about time. Therefore, if we attribute this model to our external intuition of the ball falling (= we choose this meaning and construction of meaning for this model), there will be no inconsistency in the construction and meaning of the model. But according to our intuition (the same semantic device attributed to the model that is not connected to the syntax structure of the model in terms of time), the ball will stand for a short time. According to the model, we will hit the ground infinitely before the ball stops. Hence, this model, with the semantic device chosen for it, creates an overall device with Zeno behavior. 3 To H.A. Those in which Zeno behavior is not observed are called NonZeno. Only H.A. NonZeno devices can be implemented and built externally, hence H.A. NonZeno is a favorite of engineers.

Stable and Instable
If a H.A. Like H on a region O of the state space, be stable. In this case, for each course of states (= a sequential process of continuous and discrete transitions 4 ) such as r, there will be a time t0 after which the whole course The states will be within region O [4]:   CheckMate Verification Tool in MATLAB environment allows us to check PIHA models [6].

Rectangular Hybrid Automata
A subspace R of  n is called a rectangle if: Ri are finite intervals whose two points at the beginning and end are rational numbers [7]. In summary, an R.H.A. has two general properties:  Its subspaces are rectangular.

Some verifiable properties for Hybrid Automata
Similar to other Automata [11], there are Liveness and Safety features for Hybrid Automata. Because Hybrid Automata theory supports Safe Semantics and Live Semantics, it is possible to check these properties for H.A. [1].
Only H.A. NonZeno devices can be implemented [1] and have engineering value. Using Live Semantics can be a Zeno or NonZeno of a H.A. Checked [1].
An important loop of the various analyzes on H.A. is the accessibility analysis on scenarios. Although accessibility has been shown to be an indecisive problem for the Hybrid Automata [8] [1], there are well-accepted and approximate algorithms, but non-coverage 7 , for calculating the available areas of the state space [4].
An example of these algorithms is below. Figure 6. An example of accessibility algorithms [4] Another important loop of analysis on Hybrid Automata is the check and review of Trace Inclusion in a set of Traces of an Automata [1]. There are two possible modes. One is Timed Trace Inclusion and the other is Time-Abstract trace inclusion, the first of which is defined on Timed Semantics and the second on Time-Abstract Semantics [1].

The most used areas of H.A.
Wherever there is a hybrid system, H.A. Used and have used. Items such as:  HyTech is one of the oldest and oldest tools in this field.

 PHAVer
And linear programming tools that can be used to solve Linear H.A. models. used.

Conclusion
In this paper, Hybrid Automata was introduced, which is a formal model for hybrid systems. A summary of its theory was presented. Listed some of its special and important classes and pointed out some properties that can be studied and checked for it. Finally, for the purposes of use, the most widely used areas, and the tools provided by H.A. Support paid.