DEVS, abbreviating Discrete Event System Specification, is a modular and hierarchical formalism for modeling and analyzing general systems that can be discrete event systems which might be described by
state transition table
In automata theory and sequential logic, a state-transition table is a table showing what state (or states in the case of a nondeterministic finite automaton) a finite-state machine will move to, based on the current state and other inputs. It i ...
s, and continuous state systems which might be described by
differential equations, and hybrid continuous state and discrete event systems. DEVS is a
timed event system.
History
DEVS is a formalism for modeling and analysis of discrete event systems (DESs). The DEVS formalism was invented by
Bernard P. Zeigler, who is emeritus professor at the
University of Arizona
The University of Arizona (Arizona, U of A, UArizona, or UA) is a Public university, public Land-grant university, land-grant research university in Tucson, Arizona, United States. Founded in 1885 by the 13th Arizona Territorial Legislature, it ...
. DEVS was introduced to the public in Zeigler's first book, ''Theory of Modeling and Simulation'' in 1976,
while Zeigler was an associate professor at
University of Michigan
The University of Michigan (U-M, U of M, or Michigan) is a public university, public research university in Ann Arbor, Michigan, United States. Founded in 1817, it is the oldest institution of higher education in the state. The University of Mi ...
. DEVS can be seen as an extension of the
Moore machine
In the theory of computation, a Moore machine is a finite-state machine whose current output values are determined only by its current state. This is in contrast to a Mealy machine, whose output values are determined both by its current state an ...
formalism,
[automata were the mathematical models of Dr. Zeigler's Ph.D. thesis] which is a finite state automaton where the outputs are determined by the current state alone (and do not depend directly on the input). The extension was done by
# associating a lifespan with each state,
# providing a hierarchical concept with an operation, called ''coupling'',
Since the lifespan of each state is a real number (more precisely, non-negative real) or infinity, it is distinguished from discrete time systems, sequential machines, and
Moore machine
In the theory of computation, a Moore machine is a finite-state machine whose current output values are determined only by its current state. This is in contrast to a Mealy machine, whose output values are determined both by its current state an ...
s, in which time is determined by a tick time multiplied by non-negative integers. Moreover, the lifespan can be a
random variable
A random variable (also called random quantity, aleatory variable, or stochastic variable) is a Mathematics, mathematical formalization of a quantity or object which depends on randomness, random events. The term 'random variable' in its mathema ...
; for example the lifespan of a given state can be distributed
exponentially or
uniformly. The state transition and output functions of DEVS can also be
stochastic Stochastic (; ) is the property of being well-described by a random probability distribution. ''Stochasticity'' and ''randomness'' are technically distinct concepts: the former refers to a modeling approach, while the latter describes phenomena; i ...
.
Zeigler proposed a hierarchical algorithm for DEVS model simulation in 1984
which was published in ''Simulation'' journal in 1987. Since then, many extended formalism from DEVS have been introduced with their own purposes: DESS/DEVS for combined continuous and discrete event systems, P-DEVS for parallel DESs, G-DEVS for piecewise continuous state trajectory modeling of DESs, RT-DEVS for realtime DESs, Cell-DEVS for cellular DESs, Fuzzy-DEVS for fuzzy DESs, Dynamic Structuring DEVS for DESs changing their coupling structures dynamically, and so on. In addition to its extensions, there are some subclasses such as
SP-DEVS and
FD-DEVS have been researched for achieving decidability of system properties.
Due to the modular and hierarchical modeling views, as well as its simulation-based analysis capability, the DEVS formalism and its variations have been used in many application of engineering (such as hardware design, hardware/software codesign,
communications system
A communications system is a collection of individual telecommunications networks systems, relay stations, tributary stations, and terminal equipment usually capable of interconnection and interoperation to form an integrated whole. Commu ...
s,
manufacturing
Manufacturing is the creation or production of goods with the help of equipment, labor, machines, tools, and chemical or biological processing or formulation. It is the essence of the
secondary sector of the economy. The term may refer ...
systems) and science (such as
biology
Biology is the scientific study of life and living organisms. It is a broad natural science that encompasses a wide range of fields and unifying principles that explain the structure, function, growth, History of life, origin, evolution, and ...
, and
sociology
Sociology is the scientific study of human society that focuses on society, human social behavior, patterns of Interpersonal ties, social relationships, social interaction, and aspects of culture associated with everyday life. The term sociol ...
)
Formalism
Intuitive Example
DEVS defines system behavior as well as system structure. System behavior in DEVS formalism is described using input and output events as well as states. For example, for the ping-pong player of Fig. 1, the input event is ''?receive'', and the output event is ''!send''. Each player, ''A'', ''B'', has its states: ''Send'' and ''Wait''. ''Send'' state takes 0.1 seconds to send back the ball that is the output event ''!send'', while the ''Wait'' state lasts until the player receives the ball that is the input event ''?receive''.
The structure of ping-pong game is to connect two players: Player ''A'' output event ''!send'' is transmitted to Player ''B'' input event ''?receive'', and vice versa.
In the classic DEVS formalism, ''Atomic DEVS'' captures the system behavior, while ''Coupled DEVS'' describes the structure of system.
The following formal definition is for Classic DEVS.
In this article, we will use the time base,