Hybrid automaton
|
|
This article provides insufficient context for those unfamiliar with the subject. Please help improve the article with a good introductory style. (October 2009) |
In automata theory, a hybrid automaton (plural: hybrid automata or hybrid automatons) is a mathematical model for precisely describing systems in which digital computational processes interact with analog physical processes. A hybrid automaton is a finite state machine with a finite set of continuous variables whose values are described by a set of ordinary differential equations. This combined specification of discrete and continuous behaviors enables dynamic systems that comprise both digital and analog components to be modeled and analyzed.
Contents |
[edit] Examples
A simple example is a room-thermostat-heater system where the temperature of the room evolves according to laws of thermodynamics and the state of the heater (on/off); the thermostat senses the temperature, performs certain computations and turns the heater on and off. In general, hybrid automata have been used to model and analyze a variety of embedded systems including vehicle control systems, air traffic control systems, mobile robots, and processes from systems biology.
[edit] Formal Definition
An Alur-Henzinger hybrid automaton H comprises the following components:[1]
- A finite set X = {x1,...,xn} of real-numbered variables. The number n is called the dimension of H. Let
be the set
of dotted variables that represent first derivatives during continuous change, and let X' be the set {x'1,...,x'n} of primed variables that represent values at the conclusion of discrete change. - A finite directed multigraph (V,E). The vertices in V are called control modes. The edges in E are called control switches.
- Three vertex labeling functions init, inv, and flow that assign to each control mode
three predicates. Each initial condition init(v) is a predicate whose free variables are from X. Each invariant condition inv(v) is a predicate whose free variables are from X. Each flow condition flow(v) is a predicate whose free variables are from
. - An edge labeling function jump that assigns to each control switch
a predicate. Each jump condition jump(e) is a predicate whose free variables are from
. - A finite set Σ of events, and an edge labeling function event:
that assigns to each control switch an event.
[edit] Related models
Hybrid automata come in several flavors: The Alur-Henzinger hybrid automaton is a popular model; it was developed primarily for algorithmic analysis of hybrid systems model checking. The HyTech model checking tool is based on this model. The Hybrid Input/Output Automaton model has been developed more recently. This model enables compositional modeling and analysis of hybrid systems. Another formalism which is useful to model implementations of hybrid automaton is the lazy linear hybrid automaton.
[edit] References
- ^ Henzinger, T.A. "The Theory of Hybrid Automata". Proceedings of the Eleventh Annual IEEE Symposium on Logic in Computer Science (LICS), pages 278-292, 1996.
[edit] Further reading
- Rajeev Alur, Costas Courcoubetis, Nicolas Halbwachs, Thomas A. Henzinger, Pei-Hsin Ho, Xavier Nicollin, Alfredo Olivero, Joseph Sifakis, and Sergio Yovine The algorithmic analysis of hybrid systems. Theoretical Computer Science, volume 138(1), pages 3–34, 1995.
- Nancy Lynch, Roberto Segala, Frits Vaandrager, Hybrid I/O Automata. Information and Computation, volume 185(1), pages 103–157, 2003.
| This computer science article is a stub. You can help Wikipedia by expanding it. |
be the set
of dotted variables that represent first derivatives during continuous change, and let
three predicates. Each initial condition init
.
a predicate. Each jump condition jump
.
that assigns to each control switch an event.