DEVS , abreviatura de especificación de sistema de eventos discretos , es un formalismo modular y jerárquico para modelar y analizar sistemas generales que pueden ser sistemas de eventos discretos, que pueden describirse mediante tablas de transición de estados , sistemas de estados continuos, que pueden describirse mediante ecuaciones diferenciales , y sistemas híbridos de estados continuos y eventos discretos. DEVS es un sistema de eventos temporizados .
Historia
DEVS es un formalismo para el modelado y análisis de sistemas de eventos discretos (DES). El formalismo DEVS fue inventado por Bernard P. Zeigler , profesor emérito de la Universidad de Arizona . DEVS se presentó al público en el primer libro de Zeigler, Theory of Modeling and Simulation, en 1976, [ 1 ] mientras Zeigler era profesor asociado en la Universidad de Michigan . DEVS puede considerarse una extensión del formalismo de la máquina de Moore , [ 2 ] que es un autómata de estados finitos donde las salidas están determinadas únicamente por el estado actual (y no dependen directamente de la entrada). La extensión fue realizada por
- asociando una duración de vida a cada estado, [ 1 ]
- proporcionando un concepto jerárquico con una operación, llamada acoplamiento , [ 3 ]
Dado que la duración de cada estado es un número real (más precisamente, un número real no negativo) o infinito, se distingue de los sistemas de tiempo discreto, las máquinas secuenciales y las máquinas de Moore , en las que el tiempo se determina mediante un tiempo de ciclo multiplicado por enteros no negativos. Además, la duración puede ser una variable aleatoria ; por ejemplo, la duración de un estado dado puede distribuirse exponencialmente o uniformemente . Las funciones de transición de estado y de salida de DEVS también pueden ser estocásticas .
Zeigler propuso un algoritmo jerárquico para la simulación de modelos DEVS en 1984 [ 4 ] , que se publicó en la revista Simulation en 1987. Desde entonces, se han introducido muchos formalismos extendidos de DEVS con sus propios propósitos: DESS/DEVS para sistemas de eventos continuos y discretos combinados, P-DEVS para DES paralelos, G-DEVS para modelado de trayectorias de estado continuo por partes de DES, RT-DEVS para DES en tiempo real, cell-DEVS para DES celulares, fuzzy-DEVS para DES difusos, DEVS de estructuración dinámica para DES que cambian dinámicamente sus estructuras de acoplamiento, etc. Además de sus extensiones, se han investigado algunas subclases como SP-DEVS y FD-DEVS para lograr la decidibilidad de las propiedades del sistema.
Debido a las vistas de modelado modular y jerárquico, así como a su capacidad de análisis basada en simulación, el formalismo DEVS y sus variaciones se han utilizado en muchas aplicaciones de ingeniería (como diseño de hardware, codiseño de hardware/software, sistemas de comunicaciones , sistemas de fabricación ) y ciencia (como biología y sociología ).
Formalismo
Ejemplo intuitivo
DEVS define el comportamiento del sistema, así como su estructura. El comportamiento del sistema en el formalismo DEVS se describe mediante eventos de entrada y salida, así como estados. Por ejemplo, para el jugador de ping-pong de la Fig. 1, el evento de entrada es ?receive y el evento de salida es !send . Cada jugador, A , B , tiene sus estados: Send y Wait . El estado Send tarda 0,1 segundos en devolver la pelota, que es el evento de salida !send , mientras que el estado Wait dura hasta que el jugador recibe la pelota, que es el evento de entrada ?receive .
La estructura del juego de ping-pong consiste en conectar a dos jugadores: el evento de salida del jugador A , !send, se transmite al evento de entrada del jugador B , ?receive , y viceversa .
En el formalismo DEVS clásico, el DEVS atómico captura el comportamiento del sistema, mientras que el DEVS acoplado describe la estructura del sistema.
La siguiente definición formal es para DEVS clásico. [ 5 ] En este artículo, utilizaremos la base de tiempo,ese es el conjunto de números reales no negativos; la base de tiempo extendida,Ese es el conjunto de los números reales no negativos más el infinito.
Segmento de evento
En informática, un segmento de una variable de sistema muestra un estado homogéneo de la dinámica del sistema durante un período de tiempo. Aquí, un estado homogéneo de una variable es un estado que puede describirse mediante un conjunto de coeficientes de una fórmula. Por ejemplo, entre los estados homogéneos podemos mencionar el estado constante ('ENCENDIDO' de un interruptor) y el lineal (60 millas o 96 km por hora para la velocidad). Matemáticamente, un segmento es una función que mapea un conjunto de tiempos, que puede definirse mediante un intervalo real, al conjunto de valores.[Zeigler76] , [ZPK00] , [Hwang13] . La trayectoria de una variable del sistema es una secuencia de segmentos concatenados. Decimos que una trayectoria es constante (o lineal) si sus segmentos concatenados son constantes (o lineales).
Un segmento de evento es una clase especial del segmento constante con una restricción en la que el segmento constante es un evento temporizado o un segmento nulo. Los segmentos de evento se utilizan para definir sistemas de eventos temporizados como DEVS, autómatas temporizados y redes de Petri temporizadas .
Tipos
La base de tiempo de los sistemas en cuestión se denota pory definido
como el conjunto de números reales no negativos.
Un evento es una etiqueta que abstrae un cambio. Dado un conjunto de eventos, el evento nulo denotado porno significa ningún cambio.
Un evento cronometrado es un pardóndeydenota que un eventoocurre en el momento.
El segmento nulo en el intervalo de tiempose denota porlo cual no significa nada enocurre durante.
Un segmento de evento de unidad es un segmento de evento nulo o un evento temporizado .
Dado un conjunto de eventos, concatenación de dos segmentos de eventos de unidadencimayencimase denota porcuyo intervalo de tiempo esy implica.
Una trayectoria de eventossobre un conjunto de eventosy un intervalo de tiempoes la concatenación de segmentos de eventos de unidadydónde.
Matemáticamente, una trayectoria de evento es una asignaciónun período de tiempoa un conjunto de eventos. Por lo tanto, podemos escribirlo en forma de función :
Lenguaje cronometrado
El lenguaje universal cronometradosobre un conjunto de eventosy un intervalo de tiempo, es el conjunto de todas las trayectorias de eventos sobrey.
Un lenguaje cronometradosobre un conjunto de eventosy un intervalo de tiempoes un conjunto de trayectorias de eventos sobreysi.
Desarrolladores atómicos
Un modelo DEVS atómico se define como una tupla de 7 elementos.
dónde
- es el conjunto de eventos de entrada ;
- es el conjunto de eventos de salida ;
- es el conjunto de estados secuenciales (o también llamado conjunto de estados parciales );
- es el estado inicial ;
- es la función de avance de tiempo que se utiliza para determinar la duración de un estado;
- es la función de transición externa que define cómo un evento de entrada cambia un estado del sistema, dondees el conjunto de estados totales , yes el tiempo transcurrido desde el último evento ; [ 6 ]
- es la función de transición interna que define cómo cambia internamente un estado del sistema (cuando el tiempo transcurrido alcanza la vida útil del estado);
- es la función de salida dondeyes un evento silencioso o un evento no observado . Esta función define cómo un estado del sistema genera un evento de salida (cuando el tiempo transcurrido alcanza la vida útil del estado);
- El modelo atómico DEVS para jugadores de ping-pong
El modelo atómico DEVS para el jugador A de la Fig. 1 viene dado por jugador=de tal manera que
Tanto el jugador A como el jugador B son modelos DEVS atómicos.
En pocas palabras, hay dos casos en los que un modelo DEVS atómicopuede cambiar su estado: (1) cuando una entrada externaentra en el sistema; (2) cuando el tiempo transcurridoalcanza la esperanza de vida deque se define por. Al mismo tiempo que (2),genera una salidaque se define por.
Para una descripción formal del comportamiento de un modelo DEVS atómico dado, consulte la sección sobre el comportamiento de DEVS atómico . Los algoritmos informáticos para implementar el comportamiento de un modelo DEVS atómico dado están disponibles en la sección sobre algoritmos de simulación para DEVS atómico .
Desarrolladores acoplados
El DEVS acoplado define qué subcomponentes le pertenecen y cómo están conectados entre sí. Un modelo DEVS acoplado se define como una tupla de 8 elementos.
dónde
- es el conjunto de eventos de entrada ;
- es el conjunto de eventos de salida ;
- es el conjunto de nombres de los subcomponentes ;
- es el conjunto de subcomponentes donde para cadaPuede ser un modelo DEVS atómico o un modelo DEVS acoplado.
- es el conjunto de acoplamientos de entrada externos ;
- es el conjunto de acoplamientos internos ;
- es la función de acoplamiento de salida externa ;
- es la función de desempate que define cómo seleccionar el evento del conjunto de eventos simultáneos;
- El modelo DEVS acoplado para el juego de ping-pong
El juego de ping-pong de la figura 1 se puede modelar como un modelo DEVS acoplado.dónde;;;se describe como se indicó anteriormente;;; y.
En pocas palabras, al igual que el comportamiento de la clase DEVS atómica, un modelo DEVS acopladocambia los estados de sus componentes (1) cuando ocurre un evento externoentra; (2) cuando uno de los componentesdóndeejecuta su transición de estado interna y genera su salidaEn ambos casos (1) y (2), un evento desencadenante se transmite a todas las influencias que se definen mediante conjuntos de acoplamiento.y.
Para la definición formal del comportamiento de los DEVS acoplados, consulte la sección sobre el comportamiento de los DEVS acoplados . Los algoritmos informáticos para implementar el comportamiento de un modo DEVS acoplado determinado están disponibles en la sección sobre algoritmos de simulación para DEVS acoplados .
Métodos de análisis
Simulación para sistemas de eventos discretos
El algoritmo de simulación de los modelos DEVS considera dos aspectos: la sincronización temporal y la propagación de mensajes. La sincronización temporal de DEVS consiste en controlar que todos los modelos tengan la misma hora actual. Sin embargo, para una ejecución eficiente, el algoritmo ajusta la hora actual al momento más urgente cuando se programa un evento para ejecutar su transición de estado interna y generar su salida. La propagación de mensajes consiste en transmitir un mensaje desencadenante, que puede ser un evento de entrada o de salida, a través de los acoplamientos asociados definidos en un modelo DEVS acoplado. Para obtener información más detallada, el lector puede consultar los algoritmos de simulación para DEVS atómicos y los algoritmos de simulación para DEVS acoplados .
Simulación para sistemas de estado continuo
Al introducir un método de cuantización que abstrae un segmento continuo como un segmento constante por partes, DEVS puede simular comportamientos de sistemas de estado continuo descritos por redes de ecuaciones diferenciales algebraicas . Esta investigación fue iniciada por Zeigler en la década de 1990. [ 7 ] Muchas propiedades fueron aclaradas por el Prof. Kofman en la década de 2000 y el Dr. Nutaro. En 2006, el Prof. Cellier, autor de Continuous System Modeling , [ 8 ] y el Prof. Kofman escribieron un libro de texto, Continuous System Simulation , [ 9 ] en el que los capítulos 11 y 12 cubren cómo DEVS simula sistemas de estado continuo. El libro del Dr. Nutaro, [ 10 ] también cubre la simulación de eventos discretos de sistemas de estado continuo. [ 11 ]
Verificación para sistemas de eventos discretos
Como método de análisis alternativo frente al método de simulación basado en muestreo, se ha aplicado un enfoque exhaustivo de generación de comportamiento, generalmente llamado verificación , para el análisis de modelos DEVS. Se demuestra que los estados infinitos de un modelo DEVS dado (especialmente un modelo DEVS acoplado) pueden abstraerse mediante una estructura finita isomorfa en términos de comportamiento, llamada grafo de alcanzabilidad cuando el modelo DEVS dado es una subclase de DEVS como DEVS que preserva el cronograma ( SP-DEVS ), DEVS finito y determinista ( FD-DEVS ), [ 12 ] y DEVS finito y en tiempo real (FRT-DEVS). [ 13 ] Como resultado, basándose en el grafo de alcanzabilidad, (1) la ausencia de interbloqueo y bloqueo vivo como propiedades cualitativas es decidible con SP-DEVS, [ 14 ] FD-DEVS, [ 15 ] y FRT-DEVS; [ 13 ] y (2) los límites de tiempo de procesamiento min/max como propiedad cuantitativa son decidibles con SP-DEVS hasta el momento en 2012.
Sistema de eventos temporizados
El sistema general ha sido descrito por Zeigler [ 16 ] [ 17 ] con los puntos de vista para definir (1) la base de tiempo, (2) los segmentos de entrada admisibles, (3) los estados del sistema, (4) la trayectoria del estado con un segmento de entrada admisible, (5) la salida para un estado dado. Un sistema de eventos temporizados que define la trayectoria del estado asociada con los segmentos actuales y de eventos proviene de la clase de sistema general para permitir comportamientos no deterministas en él. [ 18 ] Dado que los comportamientos de DEVS pueden ser descritos por un sistema de eventos temporizados, DEVS y RTDEVS son una subclase o una clase equivalente de sistema de eventos temporizados.
Un sistema de eventos temporizados es una estructura
dónde
- es el conjunto de eventos ;
- es el conjunto de estados ;
- es el conjunto de estados iniciales ;
- es el conjunto de estados de aceptación ;
- es el conjunto de trayectorias de estado en las queindica que un estadopuede transformarse enjunto con un segmento de evento. Si dos trayectorias de estadoyse denominan contiguos siy dos trayectorias de eventosyson contiguas. Dos trayectorias de estado contiguasyimplica.
Dado un sistema de eventos temporizados, el conjunto de sus comportamientos se denomina su lenguaje, dependiendo de la duración del tiempo de observación. Seasea la duración del tiempo de observación. Si,-longitud de observación lenguaje dese denota pory definido como
Lo llamamos segmento de evento.a-comportamiento de longitud de, si. Al enviar la duración del tiempo de observaciónhasta el infinito, definimos un lenguaje de observación de longitud infinita dese denota pory definido como
Lo llamamos segmento de evento.un comportamiento de longitud infinita de, si.
Variaciones de DEVS
Extensiones (superclases)
En las últimas décadas se han desarrollado numerosas extensiones del formalismo clásico DEVS. Entre ellas, formalismos que permiten tener estructuras de modelo cambiantes a medida que avanza el tiempo de simulación.
G-DEVS, [ 19 ] [ 20 ] DEVS paralelo, DEVS de estructuración dinámica, DEVS celular, [ 21 ] dynDEVS, DEVS difuso, GK-DEVS, ml-DEVS, DEVS simbólico, DEVS en tiempo real, rho-DEVS
Restricciones (subclases)
Hay algunas subclases conocidas como DEVS que preservan el cronograma ( SP-DEVS ) y DEVS finitos y deterministas ( FD-DEVS ) que fueron designadas para respaldar el análisis de verificación. SP-DEVS y FD-DEVS cuya expresividad es E ( SP-DEVS )E ( FD-DEVS )E (DEVS) donde E ( formalismo ) denota la expresividad del formalismo .
Comportamiento
Desarrolladores atómicos
El comportamiento de un modelo DEVS determinado consiste en una secuencia de eventos temporizados, incluyendo eventos nulos, denominados segmentos de eventos , que hacen que el modelo pase de un estado a otro dentro de un conjunto de estados válidos. Para definirlo de esta manera, es necesario introducir el concepto de conjunto de estados no válidos, así como el de conjunto de estados válidos.
Además, dado que el comportamiento de un modelo DEVS determinado necesita definir cómo cambia la transición de estado tanto con el paso del tiempo como cuando ocurre un evento, se ha descrito mediante un formalismo mucho más general, denominado sistema general. [ 22 ] En este artículo, utilizamos una subclase del formalismo del sistema general, denominada sistema de eventos temporizados .
Dependiendo de cómo se definan el estado total y la función de transición de estado externa de un modelo DEVS, existen dos maneras de definir el comportamiento de un modelo DEVS utilizando un sistema de eventos temporizados . Dado que el comportamiento de un modelo DEVS acoplado se define como un modelo DEVS atómico , el comportamiento de la clase DEVS acoplada también se define mediante un sistema de eventos temporizados.
Vista 1: total de estados = estados * tiempos transcurridos
Supongamos que un modelo DEVS,tiene
- la transición de estado externo.
- el conjunto total de estadosdóndedenota el tiempo transcurrido desde el último evento ydenota el conjunto de números reales no negativos, y
Luego el modelo DEVS,es un sistema de eventos temporizadosdónde
- El evento se desarrolló.
- El estado estableciódónde.
- El conjunto de estados iniciales.
- El conjunto de estados aceptantes
- El conjunto de trayectorias de estadoSe define para dos casos diferentes:y. Para un estado no receptivo, no hay ningún cambio junto con ningún segmento parentonces
Para un estado totalen ese momentoy un segmento de eventocomo sigue.
Si el segmento de evento de la unidades el segmento de evento nulo , es decir
Si el segmento de evento de la unidades un evento cronometradodonde el evento es un evento de entrada,
Si el segmento de evento de la unidades un evento cronometradodonde el evento es un evento de salida o el evento no observable,
Los algoritmos informáticos para simular esta visión del comportamiento están disponibles en la sección de algoritmos de simulación para DEVS atómicos .
Vista 2: estados totales = estados * duración * tiempo transcurrido
Supongamos que un modelo DEVS,tiene
- el conjunto total de estadosdóndedenota la duración del estado,denota el tiempo transcurrido desde la últimaactualización ydenota el conjunto de números reales no negativos más infinito,
- La transición de estado externo es.
Luego los DESARROLLADORESes un sistema de eventos temporizadosdónde
- El evento se desarrolló.
- El estado estableciódónde.
- El conjunto de estados iniciales.
- El conjunto de estados de aceptación.
- El conjunto de trayectorias de estadodepende de dos casos:y. Para un estado no receptivoNo hay cambios junto con ningún segmento.entonces
Para un estado totalen ese momentoy un segmento de eventocomo sigue.
Si el segmento de evento de la unidades el segmento de evento nulo , es decir
Si el segmento de evento de la unidades un evento cronometradodonde el evento es un evento de entrada,
Si el segmento de evento de la unidades un evento cronometradodonde el evento es un evento de salida o el evento no observable,
Los algoritmos informáticos para simular esta visión del comportamiento están disponibles en la sección de algoritmos de simulación para DEVS atómicos .
Comparación de la vista 1 y la vista 2
Características de la vista1
La vista 1 fue introducida por Zeigler [ 23 ] en la que, dado un estado totaly
dóndees el tiempo restante. [ 23 ] [ 22 ] En otras palabras, el conjunto de estados parciales es realmentedóndees un conjunto de estados. Cuando un modelo DEVS recibe un evento de entrada, view1 restablece el tiempo transcurridopor cero, si el modelo DEVS necesita ignorarEn términos del control de la vida útil, los modeladores tienen que actualizar el tiempo restante.
en la función de transición de estado externaEsa es responsabilidad de los modeladores.
Dado que el número de valores posibles dees lo mismo que el número de posibles eventos de entrada que llegan al modelo DEVS, que es ilimitado. Como resultado, el número de estadosTambién es ilimitado, por eso se ha propuesto la vista 2.
Si no nos importa el grafo de alcanzabilidad de vértices finitos de un modelo DEVS, la vista 1 tiene la ventaja de la simplicidad para tratar el tiempo transcurrido.cada vez que llega algún evento de entrada al modelo DEVS. Pero la desventaja podría ser que los modeladores de DEVS deben saber cómo gestionarlo.como se indicó anteriormente, lo cual no se explica explícitamente enen sí mismo pero en.
Características de la vista 2
La vista 2 fue introducida por Hwang y Zeigler [ 24 ] [ 25 ] en la que, dado un estado total, el tiempo restante,se calcula como
Cuando un modelo DEVS recibe un evento de entrada, view2 restablece el tiempo transcurridopor cero solo si. Si el modelo DEVS necesita ignorarEn términos del control de la vida útil, los modeladores pueden utilizar.
A diferencia de la vista 1, dado que el tiempo restanteno es un componente deen la naturaleza, si el número de estados, es decires finito, podemos dibujar un diagrama de transición de estados con un número finito de vértices (así como de aristas). [ 24 ] [ 25 ] Como resultado, podemos abstraer el comportamiento de una red de clase DEVS, por ejemplo SP-DEVS y FD-DEVS , como un grafo con un número finito de vértices, llamado grafo de alcanzabilidad. [ 24 ] [ 25 ]
Desarrolladores acoplados
DEVS es cerrado bajo acoplamiento. [ 3 ] [ 26 ] En otras palabras, dado un modelo DEVS acopladoSu comportamiento se describe como un modelo DEVS atómico.. Para un DEVS acoplado dado, una vez que tengamos un DEVS atómico equivalente, comportamiento depuede referirse al comportamiento de los DEVS atómicos que se basan en un sistema de eventos temporizados .
De forma similar al comportamiento de los DEVS atómicos , el comportamiento de la clase DEVS acoplados se describe en función de la definición del conjunto de estados totales y su manejo de la siguiente manera.
Vista 1: Estados totales = estados * tiempos transcurridos
Dado un modelo DEVS acopladoSu comportamiento se describe como un modelo DEVS atómico.
dónde
- yson el conjunto de eventos de entrada y el conjunto de eventos de salida, respectivamente.
- es el conjunto de estados parciales dondees el conjunto de estados totales del componente(Consulte la vista 1 del comportamiento de DEVS ), dondees el conjunto de los números reales no negativos.
- es el conjunto de estado inicial dondees el estado inicial total del componente.
- es la función de avance de tiempo, dondees el conjunto de los números reales no negativos más el infinito. Dado,
- es la función de estado externa. Dado un estado totaldóndey evento de entrada, el siguiente estado viene dado por
dónde
Dado el estado parcial, dejardenotan el conjunto de componentes inminentes . El componente de disparolo que desencadena la transición de estado interno y se determina un evento de salida por
- es la función de estado interno. Dado un estado parcial, el siguiente estado viene dado por
dónde
- es la función de salida. Dado un estado parcial,
Vista 2: Estados totales = estados * duración * tiempos transcurridos
Dado un modelo DEVS acopladoSu comportamiento se describe como un modelo DEVS atómico.
dónde
- yson el conjunto de eventos de entrada y el conjunto de eventos de salida, respectivamente.
- es el conjunto de estados parciales dondees el conjunto de estados totales del componente(Consulte la vista 2 de la sección sobre el comportamiento de los DEVS).
- es el conjunto de estado inicial dondees el estado inicial total del componente.
- es la función de avance de tiempo. Dado,
- es la función de estado externa. Dado un estado totaldóndey evento de entrada, el siguiente estado viene dado por
dónde
y
Dado el estado parcial, dejardenotan el conjunto de componentes inminentes . El componente de disparolo que desencadena la transición de estado interno y se determina un evento de salida por
- es la función de estado interno. Dado un estado parcial, el siguiente estado viene dado por
dónde
- es la función de salida. Dado un estado parcial,
paso del tiempo
Dado que en un modelo DEVS acoplado con subcomponentes no vacíos, es decir,El número de relojes que registran sus tiempos transcurridos es múltiple, por lo que el paso del tiempo en el modelo es perceptible.
Para la vista1
Dado un estado totaldónde
Si el segmento de evento de la unidades el segmento de evento nulo , es decir, la trayectoria del estado en términos del sistema de eventos temporizados es
Para la vista 2
Dado un estado totaldónde
Si el segmento de evento de la unidades el segmento de evento nulo , es decir, la trayectoria del estado en términos del sistema de eventos temporizados es
Algoritmos de simulación
Desarrolladores atómicos
Dado un modelo DEVS atómico , los algoritmos de simulación son métodos para generar los comportamientos legales del modelo, que son trayectorias que no deben alcanzar estados ilegales. (véase Comportamiento de DEVS ). Zeigler introdujo originalmente los algoritmos que manejan variables de tiempo relacionadas con la vida útil.y tiempo transcurridointroduciendo otras dos variables de tiempo, tiempo del último evento ,y la hora del próximo eventocon las siguientes relaciones: [ 3 ]
y
dóndedenota la hora actual . Y el tiempo restante ,
se calcula de forma equivalente como
, aparentemente.
Dado que el comportamiento de un modelo DEVS atómico dado se puede definir en dos vistas diferentes dependiendo del estado total y la función de transición externa (consulte la sección sobre el comportamiento de DEVS ), los algoritmos de simulación también se presentan en dos vistas diferentes como se muestra a continuación.
Partes comunes
Independientemente de las dos visiones diferentes de los estados totales, los algoritmos para los casos de inicialización y transición interna se definen comúnmente como se indica a continuación.
simulador DEVS variables: padre/madre // coordinador de padres // hora del último evento // hora del próximo evento // el modelo Atomic DEVS asociado cuando se recibe el mensaje de inicialización (Tiempo)) cuando se recibe el mensaje estrella (Tiempo)) sientonces error: mala sincronización; enviar mensaje y() a los padres;
Vista 1: total de estados = estados * tiempos transcurridos
Como se aborda en la sección de comportamiento de DEVS atómico , cuando DEVS recibe un evento de entrada, llama correctamente, la hora del último evento,está determinado por la hora actual,, por lo tanto, el tiempo transcurridose convierte en cero porque.
cuando se recibe el mensaje x(, Tiempo) siy== falso entonces error: mala sincronización;
Vista 2: estados totales = estados * duración * tiempo transcurrido
Nótese que, como se aborda en la sección de comportamiento de DEVS atómico , dependiendo del valor deregresar por, hora del último evento,y la hora del próximo evento,,en consecuencia, tiempo transcurrido,y duración de la vida, se actualizan (si) o conservado (si).
cuando se recibe el mensaje x(, Tiempo) siy== falso entonces error: mala sincronización; sientonces
Desarrolladores acoplados
Dado un modelo DEVS acoplado, los algoritmos de simulación son métodos para generar los comportamientos legales del modelo , que son un conjunto de trayectorias que no alcanzan estados ilegales. (véase comportamiento de un modelo DEVS acoplado). Zeigler introdujo originalmente los algoritmos que manejan variables de tiempo relacionadas con la duración de la vida.y tiempo transcurridointroduciendo otras dos variables de tiempo, tiempo del último evento ,y la hora del próximo eventocon las siguientes relaciones: [ 3 ]
y
dóndedenota la hora actual . Y el tiempo restante ,
se calcula de forma equivalente como
aparentemente. Basándose en estas relaciones, los algoritmos para simular el comportamiento de un DEVS acoplado dado se escriben de la siguiente manera.
Algoritmo DEVS-coordinador Variables: padre/madre // coordinador de padres : // hora del último evento : // hora del próximo evento // el modelo DEVS acoplado asociado cuando se recibe el mensaje de inicialización (tiempo t ) para cadaenviar init-message( t ) al hijo; ; cuando se recibe el mensaje estrella (tiempo t ) sientonces error: mala sincronización; enviar mensaje estrella( t ) a; ; cuando se recibe el mensaje x(, Tiempo t ) siy== falso entonces error: mala sincronización; para cadaenviar x-mensaje(, t ) al niño; ; cuando se recibe el mensaje y(, Tiempo t ) para cadaenviar x-mensaje(, t ) al niñosiluego enviar mensaje y(, t ) a los padres; ; ;
FD-DEVS
FD-DEVS ( especificación de sistemas de eventos discretos finitos y deterministas ) es un formalismo para modelar y analizar sistemas dinámicos de eventos discretos, tanto mediante simulación como mediante verificación. FD-DEVS también ofrece características de modelado modular y jerárquico heredadas de DEVS clásico.
Historia
FD-DEVS se denominó originalmente DEVS controlable por programación [ 27 ] y fue diseñado para admitir el análisis de verificación de sus redes, que había sido un problema abierto del formalismo DEVS durante 30 años. Además, también fue designado para resolver el llamado problema " OPNA " de SP-DEVS . Desde el punto de vista del DEVS clásico, FD-DEVS tiene tres restricciones.
- finitud de los conjuntos de eventos y del conjunto de estados,
- La duración de un estado puede programarse mediante un número racional o infinito, y
- El cronograma interno puede conservarse o actualizarse mediante un evento de entrada.
La tercera restricción también puede verse como una relajación de SP-DEVS, donde el cronograma siempre se conserva para cualquier evento de entrada. Debido a esta relajación, ya no existe el problema OPNA, pero también hay una limitación: una abstracción de línea de tiempo que puede usarse para abstraer los tiempos transcurridos de las redes SP-DEVS ya no es útil para la red FD-DEVS. [ 27 ] Pero otro método de abstracción de tiempo [ 28 ] inventado por el Prof. D. Dill puede aplicarse para obtener un grafo de alcanzabilidad de vértices finitos para redes FD-DEVS.
Ejemplos
Juego de ping-pong
Consideremos un partido de ping-pong con dos jugadores. Cada jugador puede ser modelado por FD-DEVS de manera que el modelo del jugador tenga un evento de entrada ?receive y un evento de salida !send , y tenga dos estados: Send y Wait . Una vez que el jugador entra en "Send", genera "!send" y regresa a "Wait" después del tiempo de envío, que es de 0.1 unidades de tiempo. Si permanece en "Wait" y recibe "?receive", cambia nuevamente a "Send". En otras palabras, el modelo del jugador permanece en "Wait" indefinidamente a menos que reciba "?receive".
Para que se complete un partido de ping-pong, un jugador comienza como atacante, cuyo estado inicial es "Enviar", y el otro como defensor, cuyo estado inicial es "Esperar". Así, en la Figura 1, el jugador A es el atacante inicial y el jugador B es el defensor inicial. Además, para que el juego continúe, el evento "Enviar" de cada jugador debe estar vinculado al evento "Recibir" del otro jugador, como se muestra en la Figura 1.
Tostadora de dos ranuras
Consideremos una tostadora con dos ranuras, cada una con su propio botón de inicio, como se muestra en la figura 2(a). Cada ranura tiene la misma función, excepto por el tiempo de tostado. Inicialmente, el botón no está presionado, pero al presionarlo, la ranura correspondiente comienza a tostar durante su tiempo programado: 20 segundos para la ranura izquierda y 40 segundos para la derecha. Transcurrido el tiempo de tostado, cada ranura y su botón vuelven a su posición original. Nótese que, aunque se intente presionar un botón mientras la ranura correspondiente está tostando, no sucede nada.
Se puede modelar con FD-DEVS como se muestra en la Fig. 2(b). Dos ranuras se modelan como FD-DEVS atómicos cuyo evento de entrada es "?push" y evento de salida es "!pop", los estados son "Idle" (I) y "Toast" (T) con el estado inicial "idle". Cuando está "Idle" y recibe "?push" (porque se presiona la perilla), su estado cambia a "Toast". En otras palabras, permanece en "Idle" indefinidamente a menos que reciba el evento "?push". 20 (res. 40) segundos después, la ranura izquierda (res. derecha) vuelve a "Idle".
Dispositivos FD atómicos
Definición formal
dónde
- es un conjunto finito de eventos de entrada ;
- es un conjunto finito de eventos de salida ;
- es un conjunto finito de estados ;
- es el estado inicial ;
- es la función de avance de tiempo que define la duración de un estado dondees el conjunto de los números racionales no negativos más el infinito.
- es la función de transición externa que define cómo un evento de entrada cambia la programación, así como el estado del sistema. La programación interna de un estadoes actualizado porsi, de lo contrario (es decir,), el cronograma se conserva. [ 29 ]
- es la función de transición interna y de salida dondeydenota el evento silencioso . La función de transición interna y de salida define cómo un estado genera un evento de salida y, al mismo tiempo, cómo cambia internamente el estado. [ 30 ]
- Representación formal de un jugador de ping-pong
La representación formal del jugador en el ejemplo de ping-pong que se muestra en la Fig. 1 se puede dar de la siguiente manera.dónde={?recibir};={!enviar};={Enviar, Esperar};=Enviar a buscar al jugador A, esperar al jugador B;(Enviar)=0.1,(Esperar)=;(Esperar,?recibir)=(Enviar,1),(Enviar,?recibir)=(Enviar,0);(Enviar)=(!enviar, Esperar),(Esperar)=(, Esperar).
- Representación formal de una tostadora de una ranura
La representación formal de la ranura de la tostadora de dos ranuras Fig. 2(a) y (b) se puede dar de la siguiente manera.dónde={?empujar};={!pop};={Yo, T};=yo;(T)=20 para la ranura izquierda, 40 para la ranura derecha,(Yo)=;(I, ?empujar)=(T,1),(T,?empujar)=(T,0);(T)=(!pop, I),(I)=(, I).
- Representación formal del controlador del semáforo peatonal
Como se mencionó anteriormente, FD-DEVS es una relajación de SP-DEVS. Es decir, FD-DEVS es una superclase de SP-DEVS. En esta wiki, presentaremos un modelo de FD-DEVS para un controlador de semáforo peatonal , que se utiliza para SP-DEVS .dónde={?p};={!g:0, !g:1, !w:0, !w:1};={BG, BW, G, GR, R, W, D};=BG,(BG)=0,5,(BW)=0,5,(G)=30,(GR)=30,(R)=2,(W)=26,(D)=2;(G,?p)=(GR,0),(s,?p)=(s,0) si sGRAMO;(BG)=(!g:1, BW),(BW)=(!w:0, G),(G)=(, G),(GR)=(!g:0, R),(R)=(!w:1, W),(W)=(!w:0, D),(D)=(!g:1, G);
Comportamientos de los modelos FD-DEVS
- FD-DEVS es una subclase de DEVS.
Un modelo FD-DEVS,es DEVSdónde
- deson los mismos que los de.
- Dado un estado,
- Dado un estadoy un evento de entrada,
- Dado un estado,si
- Dado un estado,si
Para obtener más detalles sobre el comportamiento de DEVS, los lectores pueden consultar la sección sobre el comportamiento de DEVS atómico .
- Comportamiento del jugador de ping-pong A
La figura 3 muestra un segmento de evento (arriba) y la trayectoria de estado asociada (abajo) del jugador A que juega al juego de ping-pong presentado en la figura 1. En la figura 3, el estado del jugador A se describe como (estado, duración, tiempo transcurrido) = () y el segmento de línea de la parte inferior de la Fig. 3. denota el valor del tiempo transcurrido. Dado que el estado inicial del jugador A es "Enviar" y su tiempo de vida es de 0,1 segundos, la altura de (Enviar, 0,1,) es 0.1 que es el valor de. Después de cambiar a (Esperar, infinito, 0) cuandose reinicia en 0, el jugador A no sabe cuándovuelve a ser 0. Sin embargo, dado que el jugador B devuelve la pelota al jugador A 0,1 segundos después, el jugador A vuelve a (Enviar, 0,1 0) en el tiempo 0,2. A partir de ese momento, 0,1 segundos después, cuando el estado del jugador A se convierte en (Enviar, 0,1, 0,1), el jugador A devuelve la pelota al jugador B y pasa a (Esperar, infinito, 0). Por lo tanto, estas transiciones de estado cíclicas que mueven "Enviar" a "Esperar" de un lado a otro continuarán indefinidamente.
- Comportamiento de una tostadora
La figura 4 muestra un segmento de evento (arriba) y la trayectoria de estado asociada (abajo) de la ranura izquierda de la tostadora de dos ranuras presentada en la figura 2. Al igual que en la figura 3, el estado de la ranura izquierda se describe como (estado, vida útil, tiempo transcurrido) = () en la Fig. 4. Dado que el estado inicial de la tostadora es "I" y su tiempo de vida es infinito, la altura de (Esperar, inf,) se puede determinar por cuándo ocurre ?push. La figura 4 ilustra el caso en que ?push ocurre en el tiempo 40 y la tostadora cambia a (T, 20, 0). Desde ese momento, 20 segundos después, cuando su estado se convierte en (T, 20, 20), la tostadora vuelve a (Espera, infinito, 0) donde no sabemos cuándo vuelve a "Tostar" de nuevo. La figura 4 muestra el caso en que ?push ocurre en el tiempo 90, por lo que la tostadora pasa a (T, 20, 0). Nótese que, aunque alguien vuelve a presionar en el tiempo 97, ese estado (T, 20, 7) no cambia en absoluto porque(T,?empujar)=(T,1).
Ventajas
Aplicabilidad de la abstracción de zona horaria
La propiedad de las duraciones de vida racionales no negativas que pueden conservarse o cambiarse mediante eventos de entrada junto con un número finito de estados y eventos garantiza que el comportamiento de las redes FD-DEVS puede abstraerse como un grafo de alcanzabilidad de vértices finitos equivalente al abstraer los infinitos valores de los tiempos transcurridos utilizando la técnica de abstracción temporal introducida por el Prof. D. Dill. [ 28 ] Zeigler introdujo un algoritmo que genera un grafo de alcanzabilidad de vértices finitos (RG). [ 25 ] [ 31 ]
Gráfico de accesibilidad
La figura 5 muestra el gráfico de alcanzabilidad de la tostadora de dos ranuras que se mostró en la figura 2. En el gráfico de alcanzabilidad, cada vértice tiene su propio estado discreto y zona horaria que son rangos dey. Por ejemplo, para el nodo (6) de la Fig. 5, la información de estado discreto es ((E,),(T,40)), y la zona horaria esCada arco dirigido muestra cómo su vértice de origen cambia en el vértice de destino junto con un evento asociado y un conjunto de modelos de reinicio. Por ejemplo, el arco de transición (6) a (5) se activa mediante el evento push1 . En ese momento, el conjunto {1} del arco denota que el tiempo transcurrido es 1 (es decir,se reinicia en 0 cuando ocurre la transición (6) a (5). [ 25 ]
Decidibilidad de la seguridad
Como propiedad cualitativa, la seguridad de una red FD-DEVS es decidible mediante (1) la generación de RG de la red dada y (2) la comprobación de si algunos estados malos son alcanzables o no. [ 24 ]
Decidibilidad de la vivacidad
Como propiedad cualitativa, la vivacidad de una red FD-DEVS se puede determinar mediante (1) la generación de un RG de la red dada, (2) a partir del RG, la generación de un grafo acíclico dirigido de núcleo (KDAG) en el que un vértice es un componente fuertemente conectado , y (3) la comprobación de si un vértice del KDAG contiene un ciclo de transición de estado que contiene un conjunto de estados de vivacidad. [ 24 ]
Desventajas
Escasa expresividad para describir el no determinismo
Las características que todas las funciones características,El carácter determinista de FD-DEVS puede considerarse una limitación para modelar sistemas con comportamientos no deterministas. Por ejemplo, si un jugador del juego de ping-pong que se muestra en la figura 1 tiene una duración estocástica en el estado "Enviar", FD-DEVS no refleja eficazmente el no determinismo.
Herramienta
Para verificación
Hay dos bibliotecas de código abierto, DEVS# escrita en C# [ 32 ] y XSY escrita en Python [ 33 ] , que admiten algunos algoritmos de verificación basados en grafos de alcanzabilidad para encontrar seguridad y vivacidad.
Para simulación mediante XML
Para la estandarización de DEVS, especialmente utilizando FDDEVS, el Dr. Saurabh Mittal junto con sus colaboradores ha trabajado en la definición del formato XML de FDDEVS. [ 34 ] Este formato XML estándar se utilizó para la ejecución de UML. [ 35 ]
SP-DEVS
SP-DEVS ( especificación de sistema de eventos discretos que preserva la programación ) es un formalismo para modelar y analizar sistemas de eventos discretos tanto mediante simulación como mediante verificación. SP-DEVS también proporciona características de modelado modular y jerárquico heredadas del DEVS clásico.
Historia
SP-DEVS ha sido diseñado para respaldar el análisis de verificación de sus redes, garantizando la obtención de un grafo de alcanzabilidad de vértices finitos de las redes originales, lo cual había sido un problema abierto del formalismo DEVS durante aproximadamente 30 años. Para obtener dicho grafo de alcanzabilidad de sus redes, a SP-DEVS se le han impuesto las tres restricciones:
- finitud de los conjuntos de eventos y del conjunto de estados,
- La duración de un estado puede programarse mediante un número racional o infinito, y
- preservando el cronograma interno de cualquier evento externo.
Por lo tanto, SP-DEVS es una subclase tanto de DEVS como de FD-DEVS . Estas tres restricciones hacen que la clase SP-DEVS sea cerrada bajo acoplamiento, incluso cuando el número de estados es finito. Esta propiedad permite una verificación basada en grafos de vértices finitos para algunas propiedades cualitativas y cuantitativas, incluso con modelos acoplados SP-DEVS.
Ejemplo de controlador de paso de peatones
- Requisitos del sistema

Figura 1. Sistema de cruce peatonal 
Figura 2. Modelo SP-DEVS para el controlador de semáforos peatonales
Consideremos un sistema de cruce peatonal. Dado que una luz roja (o luz de prohibido cruzar) se comporta de forma opuesta a una luz verde (o luz de paso), para simplificar, consideraremos solo dos luces: una luz verde (G) y una luz de paso (W); y un botón pulsador como se muestra en la figura 1. Queremos controlar las luces G y W con un conjunto de restricciones de temporización.
Para encender dos luces, se tarda 0,5 segundos en encender G y, 0,5 segundos después, W se apaga. Luego, cada 30 segundos, existe la posibilidad de que G se apague y W se encienda si alguien pulsa el botón. Por seguridad, W se enciende dos segundos después de que G se apague. 26 segundos después, W se apaga y, dos segundos más tarde, G se vuelve a encender. Este ciclo se repite.
- Diseño de controladores
Para construir un controlador para los requisitos anteriores, podemos considerar un evento de entrada 'pulsador' (abreviado por ?p) y cuatro eventos de salida 'verde encendido' (!g:1), 'verde apagado' (!g:0), 'caminar' (!w:1) y 'caminar fuera' (!w:0) que se utilizarán como señales de comando para la luz verde y la luz de caminar. Como conjunto de estados del controlador, consideramos 'arranque-verde' (BG), 'arranque-caminar' (BW), 'verde encendido' (G), 'verde a rojo' (GR), 'rojo encendido' (R), 'caminar' (W), 'retardo' (D). Diseñemos las transiciones de estado como se muestra en la Fig. 2. Inicialmente, el controlador comienza en BG cuya duración es de 0,5 segundos. Después de la duración, pasa al estado BW en este momento, generando también el evento 'verde encendido'. Después de permanecer 0,5 segundos en BW, pasa al estado G, cuya duración es de 30 segundos. El controlador puede permanecer en G haciendo un bucle de G a G sin generar ningún evento de salida, o puede pasar al estado GR cuando recibe el evento de entrada externo ?p. Pero el tiempo real de permanencia en GR es el tiempo restante para el bucle en G. Desde GR, pasa al estado R con la generación de un evento de salida !g:0 y su estado R dura dos segundos, luego pasará al estado W con el evento de salida !w:1. 26 segundos después, pasa al estado D con la generación de !w:0 y después de permanecer 2 segundos en D, vuelve a G con el evento de salida !g:1.
SP-DEVS atómico
Definición formal
El controlador anterior para los semáforos peatonales se puede modelar mediante un modelo atómico SP-DEVS. Formalmente, un SP-DEVS atómico es una tupla de 7 elementos.
dónde
- es un conjunto finito de eventos de entrada ;
- es un conjunto finito de eventos de salida ;
- es un conjunto finito de estados ;
- es el estado inicial ;
- es la función de avance de tiempo que define la duración de un estado dondees el conjunto de los números racionales no negativos más el infinito.
- es la función de transición externa que define cómo un evento de entrada cambia el estado del sistema.
- es la función de transición interna y de salida dondeydenota el evento silencioso . La función de transición interna y de salida define cómo un estado genera un evento de salida y, al mismo tiempo, cómo cambia internamente el estado. [ 36 ]
- Representación formal del controlador de paso de peatones
El controlador anterior que se muestra en la Fig. 2 se puede escribir comodónde={?p};={!g:0, !g:1, !w:0, !w:1};={BG, BW, G, GR, R, W, D};=BG,(BG)=0,5,(BW)=0,5,(G)=30,(GR)=30,(R)=2,(W)=26,(D)=2;(G,?p)=GR,(s,?p)=s si sGRAMO;(BG)=(!g:1, BW),(BW)=(!w:0, G),(G)=(, G),(GR)=(!g:0, R),(R)=(!w:1, W),(W)=(!w:0, D),(D)=(!g:1, G);
Comportamientos de un modelo SP-DEVS
Para capturar la dinámica de un SP-DEVS atómico, necesitamos introducir dos variables asociadas al tiempo. Una es la vida útil , la otra es el tiempo transcurrido desde el último reinicio. SeaSea la esperanza de vida, que no aumenta continuamente sino que está determinada por el momento en que ocurre un evento discreto.denota el tiempo transcurrido que aumenta continuamente con el tiempo si no hay reinicio.
La figura 3 muestra una trayectoria de estado asociada a un segmento de evento del modelo SP-DEVS mostrado en la figura 2. La parte superior de la figura 3 muestra una trayectoria de evento en la que el eje horizontal es un eje de tiempo, por lo que muestra que un evento ocurre en un momento determinado; por ejemplo, !g:1 ocurre a las 0,5 y !w:0 a la 1,0 unidad de tiempo, y así sucesivamente. La parte inferior de la figura 3 muestra la trayectoria de estado asociada al segmento de evento anterior en la que el estadoestá asociado con su esperanza de vida y su tiempo transcurrido en forma dePor ejemplo, (G, 30, 11) indica que el estado es G, su duración es y el tiempo transcurrido es de 11 unidades de tiempo. Los segmentos de línea en la parte inferior de la Fig. 3 muestran el flujo temporal del tiempo transcurrido, que es la única variable continua en SP-DEVS.
Una característica interesante de SF-DEVS podría ser la preservación del cronograma la restricción (3) de SP-DEVS que se dibuja en el tiempo 47 en la Fig. 3. cuando ocurre el evento externo ?p. En este momento, aunque el estado puede cambiar de G a GR, el tiempo transcurrido no cambia, por lo que el segmento de línea no se rompe en el tiempo 47 ypuede crecer hastaque es 30 en este ejemplo. Debido a esta preservación del cronograma a partir de los eventos de entrada, así como a la restricción del avance de tiempo al número racional no negativo (ver restricción (2) arriba), la altura de cada sierra puede ser un número racional no negativo o infinito (como se muestra en la parte inferior de la Fig. 3) en un modelo SP-DEVS.
- SP-DEVS es una subclase de DEVS.
Un modelo SP-DEVS,es DEVSdónde
- deson los mismos que los de.
- Dado un estado,
- Dado un estadoy un evento de entrada
- Dado un estado,si
- Dado un estado,si
Ventajas
- Aplicabilidad de la abstracción de la línea de tiempo
La propiedad de que las duraciones de vida sean racionales y no negativas, y que no se vean alteradas por los eventos de entrada, junto con un número finito de estados y eventos, garantiza que el comportamiento de las redes SP-DEVS pueda abstraerse como un grafo de alcanzabilidad de vértices finito equivalente, abstraiendo los infinitos valores de los tiempos transcurridos.
Para abstraer los infinitos casos de tiempos transcurridos para cada componente de las redes SP-DEVS, se ha introducido un método de abstracción temporal, denominado abstracción de línea de tiempo, en el que se conservan los órdenes y la diferencia relativa de las programaciones. [ 37 ] [ 38 ] Mediante la técnica de abstracción de línea de tiempo, el comportamiento de cualquier red SP-DEVS puede abstraerse como un grafo de alcanzabilidad cuyo número de vértices y aristas es finito.
- Decidibilidad de la seguridad
Como propiedad cualitativa, la seguridad de una red SP-DEVS es decidible mediante (1) la generación del grafo de alcanzabilidad de vértices finitos de la red dada y (2) la comprobación de si algunos estados malos son alcanzables o no. [ 37 ]
- Decidibilidad de la vivacidad
Como propiedad cualitativa, la vivacidad de una red SP-DEVS se puede determinar mediante (1) la generación del grafo de alcanzabilidad de vértices finitos (RG) de la red dada, (2) a partir del RG, la generación de un grafo acíclico dirigido de núcleo (KDAG) en el que un vértice es un componente fuertemente conectado , y (3) la comprobación de si un vértice del KDAG contiene un ciclo de transición de estado que contiene un conjunto de estados de vivacidad. [ 37 ]
- Determinación de los límites de tiempo de procesamiento mínimo/máximo
Como propiedad cuantitativa, los límites de tiempo de procesamiento mínimo y máximo de dos eventos en redes SP-DEVS se pueden calcular (1) generando el grafo de alcanzabilidad de vértices finitos y (2.a) encontrando las rutas más cortas para el límite de tiempo de procesamiento mínimo y (2.b) encontrando las rutas más largas (si están disponibles) para el límite de tiempo de procesamiento máximo. [ 38 ]
Desventajas
- Menor expresividad: problema de OPNA
Dejemos un estado totalde un modelo SP-DEVS ser pasivo si; de lo contrario, estará activo .
Una de las limitaciones conocidas de SP-DEVS es el fenómeno de que "una vez que un modelo SP-DEVS se vuelve pasivo, nunca vuelve a ser activo (OPNA)". Este fenómeno fue descubierto por primera vez por Hwang, [ 39 ] aunque originalmente se denominó ODNR ("una vez que muere, nunca regresa"). La razón por la que esto ocurre es la restricción (3) anterior, en la que ningún evento de entrada puede cambiar la programación, por lo que el estado pasivo no puede despertar al estado activo.
Por ejemplo, los modelos de tostadora dibujados en la Fig. 3(b) no son SP-DEVS porque el estado total asociado con "inactivo" (I) es pasivo, pero pasa a un estado activo, "tostar" (T) cuyo tiempo de tostado es de 20 segundos o 40 segundos. En realidad, el modelo mostrado en la Fig. 3(b) es FD-DEVS .
Herramientas
Existe una biblioteca de código abierto, llamada DEVS# [ 32 ] , que admite algunos algoritmos para encontrar seguridad y vivacidad, así como límites de tiempo de procesamiento mínimo/máximo.
Véase también
- Teoría de autómatas : un método formal para sistemas de transición de estados
- Máquina de estados finitos : una máquina de transición de estados con conjuntos finitos de eventos y estados.
- Redes de Petri : una representación gráfica de las relaciones de estado y transición.
- Cadena de Markov : un proceso estocástico en el que el futuro estará determinado por el estado actual.
- Lenguaje de especificación y descripción : SDL, un lenguaje formal, completo e inequívoco para representar gráficamente modelos de simulación.
Referencias
- 1 2 Zeigler, Bernard (1976). Teoría del modelado y la simulación (1.ª ed.). Nueva York: Wiley Interscience. ISBN 0-12-778455-1Archivado del original el 21 de junio de 2012.
- ↑ Zeigler, Bernard (1968). Sobre la complejidad de retroalimentación de los autómatas (Tesis doctoral). Universidad de Michigan.Los autómatas fueron los modelos matemáticos de la tesis doctoral del Dr. Zeigler.
- 1 2 3 4 Zeigler, Bernard (1984). Modelado multifacético y simulación de eventos discretos . Londres; Orlando: Academic Press. ISBN 978-0-12-778450-2.
- ↑ Zeigler, Bernard (1987). "Modelado jerárquico y modular de eventos discretos en un entorno orientado a objetos". Simulation . 49 (5): 219– 230. doi : 10.1177/003754978704900506 . S2CID 62648626 .
- ↑ Zeigler, Bernard; Kim, Tag Gon; Praehofer, Herbert (2000). Teoría del modelado y la simulación (2.ª ed.). Nueva York: Academic Press. ISBN 978-0-12-778455-7.
- ↑ También podemos definir la función de transición externa comodóndede tal manera que para un estado total,es un estado parcial,es la vida útil de, yes el tiempo transcurrido desde la última actualización dePara obtener más información sobre cómo entender esta función, consulte el artículo Comportamiento de DEVS .
- ↑
- ^ Cellier, Francois E. (1991). Modelado continuo de sistemas (1ª ed.). Saltador. ISBN 978-0-387-97502-3.
- ^ Cellier, Francois E.; Kofman, Ernesto (2006). Simulación continua de sistemas (1ª ed.). Saltador. ISBN 978-0-387-26102-7.
- ↑ Nutaro, James (2010). Building Software for Simulation: Theory, Algorithms, and Applications in C++ (1.ª ed.). Wiley. ISBN 978-0-470-41469-9.
- El uso de valores cuantizados para simular sistemas continuos mediante un método de eventos discretos fue probado empíricamente unos años antes, a principios de la década de 1990, por un ingeniero francés . En aquel entonces trabajaba para una empresa derivada de la Universidad de Valenciennes , ahora parte de Schneider Electric . Esta cuantización es una característica de un software de simulación del cual este ingeniero es el creador y desarrollador principal , que se utiliza para la verificación de programas PLC y la capacitación de operadores.
- ↑ Hwang, MH; Zeigler, BP (2009). "Grafo de alcanzabilidad de redes DEVS finitas y deterministas". IEEE Transactions on Automation Science and Engineering . 6 (3): 454– 467. doi : 10.1109/TASE.2009.2024064 (inactivo el 1 de julio de 2025).
{{cite journal}}: CS1 maint: DOI inactivo desde julio de 2025 ( enlace ) - 1 2 Hwang, MH "43". Verificación cualitativa de redes DEVS finitas y en tiempo real . Actas del Simposio de 2012 sobre Teoría de Modelado y Simulación - Simposio Integrador de M&S DEVS.
- ↑ Hwang, MH (2-8 de abril de 2005). Tutorial: Verificación de un sistema en tiempo real basado en DEVS con planificación preservada . Actas del Simposio DEVS de 2005. San Diego. ISBN 1-56555-293-8.
- ↑ Hwang, MH; Zeigler, BP Un marco de verificación modular utilizando DEVS finito y determinista . Actas del Simposio DEVS de 2006. Huntsville, Alabama, EE. UU. pp. 57–65 .
- ↑ Zeigler, Bernard (1976). Teoría del modelado y la simulación (primera ed.). Nueva York: Wiley Interscience.
- ↑ Zeigler, Bernard ; Kim, Tag Gon; Praehofer, Herbert (2000). Teoría del modelado y la simulación (segunda ed.). Nueva York: Academic Press. ISBN 978-0-12-778455-7.
- ↑ Hwang, Moon H. (2012). Verificación cualitativa de redes DEVS finitas y en tiempo real . Actas de TMS/DEVS 2012. Orlando, FL, EE. UU. pp. 43:1–43:8. ISBN 978-1-61839-786-7.
- ↑ Giambiasi, N.; Escude, B.; Ghosh, S. (2001). "Simulación generalizada de eventos discretos de sistemas dinámicos". SCS Transactions: Avances recientes en la metodología DEVS - parte II . 18 (4): 216– 229.
- ↑ Zacharewicz, Gregory; Frydman, Claudia; Giambiasi, Norbert (2008). "Entorno G-DEVS/HLA para simulaciones distribuidas de flujos de trabajo" (PDF) . Simulation . 84 (5): 197– 213. doi : 10.1177/0037549708092833 .
- ↑ Wainer, Gabriel A. (2009). Modelado y simulación de eventos discretos: un enfoque práctico (1.ª ed.). CRC Press. ISBN 978-1-4200-5336-4.
- 1 2 Zeigler, Bernard ; Kim, Tag Gon; Praehofer, Herbert (2000). Teoría del modelado y la simulación (segunda ed.). Nueva York: Academic Press. ISBN 978-0-12-778455-7.
- 1 2 Zeigler, Bernard (1984). Modelado multifacético y simulación de eventos discretos . Londres; Orlando: Academic Press. ISBN 978-0-12-778450-2.
- 1 2 3 4 5 Hwang, MH; Zeigler, Bernard (2006). Un grafo alcanzable de redes DEVS finitas y deterministas . Actas del Simposio DEVS de 2006. Huntsville, Alabama, EE. UU. pp. 48–56 . Archivado del original el 26 de julio de 2012.
- 1 2 3 4 5 Hwang, MH; Zeigler, Bernard (2009). "Grafo de alcanzabilidad de DEVS finitos y deterministas" . IEEE Transactions on Automation Science and Engineering . 6 (3): 454– 467. doi : 10.1109/TASE.2009.2024064 (inactivo el 1 de julio de 2025).
{{cite journal}}: CS1 maint: DOI inactivo desde julio de 2025 ( enlace ) - ↑ Zeigler, Bernard; Kim, Tag Gon; Praehofer, Herbert (2000). Teoría del modelado y la simulación (segunda ed.). Nueva York: Academic Press. ISBN 978-0-12-778455-7.
- 1 2 Hwang, MH (agosto de 2005). Generación de comportamiento global de estado finito de sistemas de automatización reconfigurables: enfoque DEVS . Actas de IEEE-CASE 2005. Edmonton, Canadá.
{{cite conference}}: CS1 maint: servicio de archivado obsoleto ( enlace ) - 1 2 Dill, DL (1989). Supuestos de temporización y verificación de sistemas concurrentes de estados finitos . Actas del taller sobre métodos de verificación asistida por computadora para sistemas de estados finitos. Grenoble, Francia. págs. 197–212 .
- ↑ Hwang, MH (agosto de 2005). Generación de comportamiento global de estado finito de sistemas de automatización reconfigurables: enfoque DEVS . Actas de IEEE-CASE 2005. Edmonton, Canadá.
{{cite conference}}: CS1 maint: servicio de archivado obsoleto ( enlace ) (nota:se puede dividir en dos funciones:y) - ↑ Zeigler, Bernard ; Kim, Tag Gon; Praehofer, Herbert (2000). Teoría del modelado y la simulación (segunda ed.). Nueva York: Academic Press. ISBN 978-0-12-778455-7.(nota:se puede dividir en dos funciones:y)
- ↑ Hwang, MH; Zeigler, Bernard (2006). Un marco de verificación modular utilizando DEVS finito y determinista . Actas del Simposio DEVS de 2006. Huntsville, Alabama, EE. UU. pp. 57–65 . Archivado del original el 26 de julio de 2012.
- 1 2 "DEVSsharp" . Consultado el 13 de abril de 2025 .
- ↑ "XSY" .
- ↑ Mittal, Saurabh. "xFDDEVS" . Consultado el 13 de abril de 2025 .
- ↑ Risco-Martín, José L.; de la Cruz, Jesús M.; Mittal, Saurabh; Zeigler, Bernard (2009). "eUDEVS: UML ejecutable con la teoría DEVS de modelado y simulación" . SIMULATION, Transaction of the Society for Modeling and Simulation International . 85 ( 11–12 ): 750–777 . arXiv : 2407.08281 . doi : 10.1177/0037549709104727 .
- ↑ Zeigler, Bernard ; Kim, Tag Gon; Praehofer, Herbert (2000). Teoría del modelado y la simulación (segunda ed.). Nueva York: Academic Press. ISBN 978-0-12-778455-7.(nota:se puede dividir en dos funciones:y)
- 1 2 3 Hwang, MH (2–8 de abril de 2005). Tutorial: Verificación de un sistema en tiempo real basado en DEVS con preservación de la planificación . Actas del Simposio DEVS de 2005. San Diego. ISBN 978-1-56555-293-7.
- 1 2 Hwang, MH; Cho, SK; Zeigler, Bernard ; Lin, F. (2007). Límites de tiempo de procesamiento de DEVS que preservan el cronograma (Informe). ACIMS. Archivado del original el 26 de julio de 2012. Recuperado el 18 de marzo de 2008 .
- ↑ Hwang, MH (1-2 de agosto de 2005). Generación de comportamiento global de estado finito de sistemas de automatización reconfigurables: Enfoque DEVS . Actas de IEEE-CASE 2005. Edmonton, Canadá.
Fuentes
- [Zeigler76] Bernard Zeigler (1976). Teoría del modelado y la simulación (primera ed.). Wiley Interscience, Nueva York.
- [ZKP00] Bernard Zeigler; Tag Gon Kim; Herbert Praehofer (2000). Teoría del modelado y la simulación (segunda ed.). Academic Press, Nueva York. ISBN 978-0-12-778455-7.
- [Giambiasi01] Giambiasi N., Escude B. Ghosh S. “Simulación generalizada de eventos discretos de sistemas dinámicos”, en: Número 4 de SCS Transactions: Avances recientes en la metodología DEVS - parte II, vol. 18, págs. 216–229, dic. 2001
- [Hwang13] MH Hwang, «Revisión de las trayectorias de las variables del sistema», Actas del Simposio sobre Teoría del Modelado y la Simulación - Simposio Integrador de Modelado y Simulación DEVS , San Diego, CA, EE. UU., 7-10 de abril de 2013
- Autómatas (computación)
- lenguajes de especificación formal