Una red de Petri , también conocida como red de lugar/transición ( red PT ), es uno de varios lenguajes de modelado matemático para la descripción de sistemas distribuidos . Es una clase de sistema dinámico de eventos discretos . Una red de Petri es un grafo bipartito dirigido que tiene dos tipos de elementos: lugares y transiciones. Los elementos de lugar se representan como círculos blancos y los elementos de transición se representan como rectángulos. Un lugar puede contener cualquier número de tokens, representados como círculos negros. Una transición está habilitada si todos los lugares conectados a ella como entradas contienen al menos un token. Algunas fuentes [1] afirman que las redes de Petri fueron inventadas en agosto de 1939 por Carl Adam Petri —a la edad de 13 años— con el propósito de describir procesos químicos.
El científico informático alemán Carl Adam Petri , que dio nombre a estas estructuras, analizó las redes de Petri exhaustivamente en su tesis de 1962 Kommunikation mit Automaten .
Fundamentos de la red de Petri
Una red de Petri consta de lugares , transiciones y arcos . Los arcos van de un lugar a una transición o viceversa, nunca entre lugares o entre transiciones. Los lugares desde los que un arco va a una transición se denominan lugares de entrada de la transición; los lugares a los que van los arcos desde una transición se denominan lugares de salida de la transición.
Gráficamente, los lugares en una red de Petri pueden contener un número discreto de marcas llamadas tokens . Cualquier distribución de tokens sobre los lugares representará una configuración de la red llamada marcado . En un sentido abstracto relacionado con un diagrama de red de Petri, una transición de una red de Petri puede dispararse si está habilitada , es decir, hay suficientes tokens en todos sus lugares de entrada; cuando la transición se dispara, consume los tokens de entrada requeridos y crea tokens en sus lugares de salida. Un disparo es atómico, es decir, un solo paso no interrumpible.
A menos que se defina una política de ejecución (por ejemplo, un orden estricto de transiciones que describa la precedencia), la ejecución de redes de Petri no es determinista : cuando se habilitan múltiples transiciones al mismo tiempo, se activarán en cualquier orden.
Dado que el disparo no es determinista y pueden estar presentes múltiples tokens en cualquier parte de la red (incluso en el mismo lugar), las redes de Petri son adecuadas para modelar el comportamiento concurrente de sistemas distribuidos.
P y T son conjuntos finitos disjuntos de lugares y transiciones , respectivamente.
es un conjunto de arcos (dirigidos) (o relaciones de flujo).
Definición 2. Dada una red N = ( P , T , F ), una configuración es un conjunto C tal que C ⊆ P .
Definición 3. Una red elemental es una red de la forma EN = ( N , C ) donde
N = ( P , T , F ) es una red.
C es tal que C ⊆ P es una configuración .
Definición 4. Una red de Petri es una red de la forma PN = ( N , M , W ), que extiende la red elemental de modo que
N = ( P , T , F ) es una red.
M : P → Z es un multiconjunto de lugar , donde Z es un conjunto contable . M extiende el concepto de configuración y se describe comúnmente con referencia a los diagramas de redes de Petri como una marca .
W : F → Z es un multiconjunto de arcos , de modo que el recuento (o peso) de cada arco es una medida de la multiplicidad de arcos .
Si una red de Petri es equivalente a una red elemental, entonces Z puede ser el conjunto numerable {0,1} y aquellos elementos en P que se asignan a 1 bajo M forman una configuración. De manera similar, si una red de Petri no es una red elemental, entonces el multiconjunto M puede interpretarse como la representación de un conjunto no singleton de configuraciones. En este sentido, M extiende el concepto de configuración para redes elementales a las redes de Petri.
En el diagrama de una red de Petri (ver figura superior derecha), los lugares se representan convencionalmente con círculos, las transiciones con rectángulos largos y estrechos y los arcos como flechas unidireccionales que muestran conexiones de lugares con transiciones o transiciones con lugares. Si el diagrama fuera de una red elemental, entonces esos lugares en una configuración se representarían convencionalmente como círculos, donde cada círculo abarca un solo punto llamado token . En el diagrama dado de una red de Petri (ver a la derecha), los círculos de lugar pueden abarcar más de un token para mostrar el número de veces que aparece un lugar en una configuración. La configuración de tokens distribuidos en un diagrama de red de Petri completo se llama marcado .
En la figura superior (ver a la derecha), el lugar p 1 es un lugar de entrada de la transición t ; mientras que, el lugar p 2 es un lugar de salida para la misma transición. Sea PN 0 (figura superior) una red de Petri con una marca configurada M 0 , y PN 1 (figura inferior) una red de Petri con una marca configurada M 1 . La configuración de PN 0 habilita la transición t a través de la propiedad de que todos los lugares de entrada tienen una cantidad suficiente de tokens (mostrados en las figuras como puntos) "igual o mayor" que las multiplicidades en sus respectivos arcos para t . Una vez y solo una vez que se habilita una transición, la transición se activará. En este ejemplo, el disparo de la transición t genera un mapa que tiene la marca configurada M 1 en la imagen de M 0 y da como resultado la red de Petri PN 1 , que se ve en la figura inferior. En el diagrama, la regla de disparo para una transición se puede caracterizar restando una cantidad de tokens de sus lugares de entrada igual a la multiplicidad de los respectivos arcos de entrada y acumulando una nueva cantidad de tokens en los lugares de salida igual a la multiplicidad de los respectivos arcos de salida.
Observación 1. El significado preciso de "igual o mayor" dependerá de las propiedades algebraicas precisas de la adición que se apliquen a Z en la regla de activación, donde variaciones sutiles en las propiedades algebraicas pueden conducir a otras clases de redes de Petri; por ejemplo, redes de Petri algebraicas. [3]
La siguiente definición formal se basa libremente en (Peterson 1981). Existen muchas definiciones alternativas.
Sintaxis
Un gráfico de red de Petri (llamado red de Petri por algunos, pero vea más abajo) es una tupla de 3 , donde
S y T son disjuntos , es decir, ningún objeto puede ser a la vez un lugar y una transición.
es un multiconjunto de arcos , es decir, asigna a cada arco una multiplicidad de arco (o peso) entera no negativa; tenga en cuenta que ningún arco puede conectar dos lugares o dos transiciones.
La relación de flujo es el conjunto de arcos: . En muchos libros de texto, los arcos solo pueden tener multiplicidad 1. Estos textos a menudo definen redes de Petri utilizando F en lugar de W . Cuando se utiliza esta convención, un gráfico de red de Petri es un gráfico dirigido bipartito con particiones de nodos S y T .
El preset de una transición t es el conjunto de sus lugares de entrada : ; su postset es el conjunto de sus lugares de salida : . Las definiciones de presets y postsets de lugares son análogas.
Una marca de una red de Petri (grafo) es un multiconjunto de sus lugares, es decir, una aplicación . Decimos que la marca asigna a cada lugar un número de tokens .
Una red de Petri (llamada red de Petri marcada por algunos, ver arriba) es una tupla de 4 , donde
es un gráfico de red de Petri;
es la marca inicial , una marca del gráfico de la red de Petri.
Semántica de ejecución
En palabras
Al disparar una transición t en un marcado M se consumen tokens de cada uno de sus lugares de entrada s y se producen tokens en cada uno de sus lugares de salida s
una transición está habilitada (puede dispararse ) en M si hay suficientes tokens en sus lugares de entrada para que los consumos sean posibles, es decir, si y solo si .
En general, nos interesa saber qué puede ocurrir cuando las transiciones se activan continuamente en un orden arbitrario.
Decimos que una marca M' es alcanzable desde una marca M en un paso si ; decimos que es alcanzable desde M si , donde es la clausura transitiva reflexiva de ; es decir, si es alcanzable en 0 o más pasos.
Para una red de Petri (marcada) , nos interesan los disparos que se pueden realizar a partir del marcado inicial . Su conjunto de marcados alcanzables es el conjunto
El gráfico de alcanzabilidad de N es la relación de transición restringida a sus marcas alcanzables . Es el espacio de estados de la red.
Una secuencia de disparos para una red de Petri con grafo G y marcaje inicial es una secuencia de transiciones tal que . El conjunto de secuencias de disparos se denota como .
Variaciones sobre la definición
Una variación común es rechazar las multiplicidades de arcos y reemplazar la bolsa de arcos W con un conjunto simple, llamado relación de flujo , . Esto no limita el poder expresivo ya que ambos pueden representarse entre sí.
Otra variación común, por ejemplo, en Desel y Juhás (2001), [4] es permitir que las capacidades se definan en lugares. Esto se analiza en las extensiones más adelante.
Formulación en términos de vectores y matrices
Las marcas de una red de Petri pueden considerarse como vectores de números enteros no negativos de longitud .
Su relación de transición se puede describir como un par de matrices :
, definido por
, definido por
Entonces su diferencia
se puede utilizar para describir las marcas alcanzables en términos de multiplicación de matrices, de la siguiente manera. Para cualquier secuencia de transiciones w , escriba para el vector que asigna cada transición a su número de ocurrencias en w . Entonces, tenemos
.
Se debe exigir que w sea una secuencia de disparo; permitir secuencias arbitrarias de transiciones generalmente producirá un conjunto más grande.
Una de las cosas que hace interesantes a las redes de Petri es que proporcionan un equilibrio entre la capacidad de modelado y la capacidad de análisis: muchas cosas que uno quisiera saber sobre los sistemas concurrentes se pueden determinar automáticamente para las redes de Petri, aunque algunas de esas cosas son muy costosas de determinar en el caso general. Se han estudiado varias subclases de redes de Petri que aún pueden modelar clases interesantes de sistemas concurrentes, mientras que estas determinaciones se vuelven más fáciles.
Una descripción general de tales problemas de decisión , con resultados de decidibilidad y complejidad para redes de Petri y algunas subclases, se puede encontrar en Esparza y Nielsen (1995). [6]
Accesibilidad
El problema de alcanzabilidad de las redes de Petri es decidir, dada una red de Petri N y una marca M , si .
Se trata de recorrer el gráfico de accesibilidad definido anteriormente hasta que se alcance la marca solicitada o hasta que ya no se pueda encontrar. Esto es más difícil de lo que parece a primera vista: el gráfico de accesibilidad suele ser infinito y no es fácil determinar cuándo es seguro detenerse.
De hecho, se demostró que este problema era EXPSPACE -hard [7] años antes de que se demostrara que era decidible (Mayr, 1981). Se siguen publicando artículos sobre cómo resolverlo de manera eficiente. [8] En 2018, Czerwiński et al. mejoraron el límite inferior y demostraron que el problema no es ELEMENTARY . [9] En 2021, se demostró que este problema no era recursivo primitivo , de forma independiente por Jerome Leroux [10]
y por Wojciech Czerwiński y Łukasz Orlikowski. [11] Estos resultados cierran así la brecha de complejidad de larga data.
Si bien la alcanzabilidad parece ser una buena herramienta para encontrar estados erróneos, para problemas prácticos el gráfico construido generalmente tiene demasiados estados para calcular. Para aliviar este problema, la lógica temporal lineal se suele utilizar junto con el método de tabla para demostrar que dichos estados no se pueden alcanzar. La lógica temporal lineal utiliza la técnica de semidecisión para determinar si, en efecto, se puede alcanzar un estado, encontrando un conjunto de condiciones necesarias para que se alcance el estado y luego demostrando que esas condiciones no se pueden satisfacer.
Vivacidad
Las redes de Petri pueden describirse como poseedoras de distintos grados de vitalidad . Una red de Petri se denomina -viva si y solo si todas sus transiciones son -vivas, donde una transición es
muerto , si nunca puede disparar, es decir, no está en ninguna secuencia de disparo en
-vivo ( potencialmente disparable ), si y sólo si puede disparar, es decir, está en alguna secuencia de disparo en
-vivo si puede dispararse con una frecuencia arbitraria, es decir, si por cada entero positivo k , ocurre al menos k veces en alguna secuencia de disparo en
-vivo si puede dispararse infinitamente a menudo, es decir, si hay una secuencia de disparo fija (necesariamente infinita) en la que para cada entero positivo k , la transición ocurre al menos k veces,
-live ( vivo ) si siempre puede disparar, es decir, está - vivo en cada marca alcanzable en
Téngase en cuenta que estos son requisitos cada vez más estrictos: -vivacidad implica -vivacidad, por ejemplo .
Estas definiciones están de acuerdo con la descripción general de Murata, [12] que además utiliza -vivo como término para muerto .
Limitación
Un lugar en una red de Petri se llama k-limitado si no contiene más de k tokens en todas las marcas alcanzables, incluida la marca inicial; se dice que es seguro si está 1-limitado; es acotado si está k-limitado para algún k .
Una red de Petri (marcada) se denomina k -limitada, segura o acotada cuando todos sus lugares lo son. Una red de Petri (grafo) se denomina (estructuralmente) acotada si está acotada para cada posible marcación inicial.
Una red de Petri está acotada si y sólo si su gráfico de alcanzabilidad es finito.
Puede resultar útil imponer explícitamente un límite a los lugares de una red determinada. Esto se puede utilizar para modelar recursos limitados del sistema.
Algunas definiciones de redes de Petri permiten esto explícitamente como una característica sintáctica. [13]
Formalmente, las redes de Petri con capacidades de lugar se pueden definir como tuplas , donde es una red de Petri, una asignación de capacidades a (algunos o todos) los lugares, y la relación de transición es la habitual restringida a las marcas en las que cada lugar con una capacidad tiene como máximo esa cantidad de tokens.
Por ejemplo, si en la red N a ambos lugares se les asigna capacidad 2, obtenemos una red de Petri con capacidades de lugar, digamos N2 ; su gráfico de alcanzabilidad se muestra a la derecha.
Alternativamente, los lugares pueden delimitarse extendiendo la red. Para ser exactos, un lugar puede delimitarse mediante k agregando un "contralugar" con flujo opuesto al del lugar y agregando tokens para que el total en ambos lugares sea k .
Redes de Petri discretas, continuas e híbridas
Además de para eventos discretos, existen redes de Petri para procesos continuos e híbridos discretos-continuos [14] que son útiles en la teoría de control discreto, continuo e híbrido , [15] y relacionadas con autómatas discretos, continuos e híbridos .
Extensiones
Existen muchas extensiones de las redes de Petri. Algunas de ellas son completamente compatibles con la red de Petri original (por ejemplo, las redes de Petri coloreadas ), mientras que otras añaden propiedades que no se pueden modelar en el formalismo de la red de Petri original (por ejemplo, las redes de Petri cronometradas). Aunque los modelos compatibles con versiones anteriores no amplían la capacidad computacional de las redes de Petri, pueden tener representaciones más sucintas y resultar más convenientes para el modelado. [16] Las extensiones que no se pueden transformar en redes de Petri son a veces muy potentes, pero normalmente carecen de la gama completa de herramientas matemáticas disponibles para analizar las redes de Petri ordinarias.
El término red de Petri de alto nivel se utiliza para muchos formalismos de red de Petri que amplían el formalismo básico de red P/T; esto incluye redes de Petri coloreadas, redes de Petri jerárquicas como Redes dentro de redes y todas las demás extensiones descritas en esta sección. El término también se utiliza específicamente para el tipo de redes coloreadas admitidas por CPN Tools .
A continuación se muestra una breve lista de posibles extensiones:
Tipos adicionales de arcos; dos tipos comunes son
un arco de reinicio no impone una condición previa al disparo y vacía el lugar cuando se dispara la transición; esto hace que la alcanzabilidad sea indecidible, [17] mientras que algunas otras propiedades, como la terminación, siguen siendo decidibles; [18]
Un arco inhibidor impone la condición previa de que la transición solo puede activarse cuando el lugar está vacío; esto permite que se expresen cálculos arbitrarios sobre números de tokens, lo que hace que el formalismo sea completo de Turing e implica la existencia de una red universal. [19]
En una red de Petri estándar, los tokens son indistinguibles. En una red de Petri coloreada , cada token tiene un valor. [20] En herramientas populares para redes de Petri coloreadas como CPN Tools , los valores de los tokens están tipificados y se pueden probar (usando expresiones de protección ) y manipular con un lenguaje de programación funcional . Una subsidiaria de las redes de Petri coloreadas son las redes de Petri bien formadas , donde las expresiones de arco y protección están restringidas para facilitar el análisis de la red.
Otra extensión popular de las redes de Petri es la jerarquía, que Fehling estudió en forma de diferentes vistas que admiten niveles de refinamiento y abstracción. Otra forma de jerarquía se encuentra en las llamadas redes de Petri de objetos o sistemas de objetos, donde una red de Petri puede contener redes de Petri como sus tokens, lo que induce una jerarquía de redes de Petri anidadas que se comunican mediante la sincronización de transiciones en diferentes niveles. Véase [21] para una introducción informal a las redes de Petri de objetos.
Un sistema de adición vectorial con estados (VASS) es un formalismo equivalente a las redes de Petri. Sin embargo, puede verse superficialmente como una generalización de las redes de Petri. Consideremos un autómata de estados finitos donde cada transición está etiquetada por una transición de la red de Petri. La red de Petri se sincroniza entonces con el autómata de estados finitos, es decir, una transición en el autómata se toma al mismo tiempo que la transición correspondiente en la red de Petri. Solo es posible tomar una transición en el autómata si la transición correspondiente en la red de Petri está habilitada, y solo es posible activar una transición en la red de Petri si hay una transición desde el estado actual en el autómata etiquetado por ella. (La definición de VASS suele formularse de forma ligeramente diferente).
Las redes de Petri priorizadas añaden prioridades a las transiciones, por lo que una transición no puede activarse si se habilita una transición de mayor prioridad (es decir, puede activarse). Por lo tanto, las transiciones se encuentran en grupos de prioridad y, por ejemplo, el grupo de prioridad 3 solo puede activarse si se deshabilitan todas las transiciones en los grupos 1 y 2. Dentro de un grupo de prioridad, la activación sigue siendo no determinista.
La propiedad no determinista ha sido muy valiosa, ya que permite al usuario abstraer una gran cantidad de propiedades (dependiendo de para qué se use la red). Sin embargo, en ciertos casos surge la necesidad de modelar también el tiempo, no solo la estructura de un modelo. Para estos casos, han evolucionado las redes de Petri cronometradas, donde hay transiciones que son cronometradas y posiblemente transiciones que no lo son (si las hay, las transiciones que no son cronometradas tienen una prioridad más alta que las cronometradas). Una subsidiaria de las redes de Petri cronometradas son las redes de Petri estocásticas que agregan tiempo no determinista a través de la aleatoriedad ajustable de las transiciones. La distribución aleatoria exponencial se usa generalmente para "cronometrar" estas redes. En este caso, el gráfico de alcanzabilidad de las redes se puede usar como una cadena de Markov de tiempo continuo (CTMC).
Las redes de Petri dualistas (dP-Nets) son una extensión de las redes de Petri desarrollada por E. Dawis, et al. [22] para representar mejor los procesos del mundo real. Las dP-Nets equilibran la dualidad de cambio/no cambio, acción/pasividad, (transformación) tiempo/espacio, etc., entre los constructos bipartitos de las redes de Petri de transformación y lugar, lo que da como resultado la característica única de marcado de transformación , es decir, cuando la transformación está "funcionando", está marcada. Esto permite que la transformación se active (o se marque) varias veces, lo que representa el comportamiento del mundo real del rendimiento del proceso. El marcado de la transformación supone que el tiempo de transformación debe ser mayor que cero. Un tiempo de transformación cero utilizado en muchas redes de Petri típicas puede ser matemáticamente atractivo, pero poco práctico para representar procesos del mundo real. Las dP-Nets también explotan el poder de la abstracción jerárquica de las redes de Petri para representar la arquitectura del proceso . Los sistemas de procesos complejos se modelan como una serie de redes más simples interconectadas a través de varios niveles de abstracción jerárquica. La arquitectura de proceso de un conmutador de paquetes se demuestra en [23] , donde los requisitos de desarrollo se organizan en torno a la estructura del sistema diseñado.
Existen muchas más extensiones para las redes de Petri, sin embargo, es importante tener en cuenta que, a medida que aumenta la complejidad de la red en términos de propiedades extendidas, resulta más difícil utilizar herramientas estándar para evaluar ciertas propiedades de la red. Por este motivo, es una buena idea utilizar el tipo de red más simple posible para una tarea de modelado determinada.
Restricciones
En lugar de ampliar el formalismo de las redes de Petri, también podemos intentar restringirlo y observar tipos particulares de redes de Petri, que se obtienen al restringir la sintaxis de una manera particular. Las redes de Petri ordinarias son las redes en las que todos los pesos de arco son 1. Si restringimos aún más, los siguientes tipos de redes de Petri ordinarias se utilizan y estudian comúnmente:
En una máquina de estados (SM), cada transición tiene un arco de entrada y un arco de salida, y todas las marcas tienen exactamente un token. En consecuencia, no puede haber concurrencia , pero puede haber conflicto (es decir, no determinismo ): matemáticamente,
En un grafo marcado (MG), cada lugar tiene un arco de entrada y un arco de salida. Esto significa que no puede haber conflicto , pero sí concurrencia: matemáticamente,
En una red de libre elección (CF), cada arco de un lugar a una transición es el único arco de ese lugar o el único arco a esa transición, es decir, puede haber concurrencia y conflicto, pero no al mismo tiempo : matemáticamente,
Elección libre extendida (EFC): una red de Petri que puede transformarse en una FC .
En una red de elección asimétrica (CA), pueden ocurrir concurrencia y conflicto (en suma, confusión ), pero no simétricamente: matemáticamente,
Redes de flujo de trabajo
Las redes de flujo de trabajo (WF-nets) son una subclase de las redes de Petri que pretenden modelar el flujo de trabajo de las actividades del proceso. [24]
Las transiciones de las WF-nets se asignan a tareas o actividades, y los lugares se asignan a las condiciones previas o posteriores. Las WF-nets tienen requisitos estructurales y operativos adicionales, principalmente la adición de un único lugar de entrada (fuente) sin transiciones previas, y un lugar de salida (sumidero) sin transiciones posteriores. En consecuencia, se pueden definir marcas de inicio y finalización que representan el estado del proceso.
Las redes WF tienen la propiedad de solidez , [24] lo que indica que un proceso con una marca de inicio de k tokens en su lugar de origen, puede alcanzar la marca de estado de terminación con k tokens en su lugar de destino (definido como una red WF de sonido k ). Además, todas las transiciones en el proceso podrían activarse (es decir, para cada transición hay un estado alcanzable en el que la transición está habilitada). Una red WF de sonido general (G-sonido) se define como k -sonido para cada k > 0. [25]
Un camino dirigido en la red de Petri se define como la secuencia de nodos (lugares y transiciones) unidos por arcos dirigidos. Un camino elemental incluye cada nodo de la secuencia solo una vez.
Una red de Petri bien manejada es una red en la que no existen caminos elementales completamente distintos entre un lugar y una transición (o una transición y un lugar), es decir, si hay dos caminos entre el par de nodos, entonces estos caminos comparten un nodo. Una red de Petri acíclica bien manejada es sólida (G-sound). [26]
La red WF extendida es una red de Petri que se compone de una red WF con una transición adicional t (transición de retroalimentación). El lugar de destino está conectado como el lugar de entrada de la transición t y el lugar de origen como su lugar de salida. La activación de la transición provoca la iteración del proceso (nótese que la red WF extendida no es una red WF). [24]
WRI (Well-handled with Regular Iteration) WF-net, es una red WF acíclica extendida y bien manejada. WRI-WF-net se puede construir como una composición de redes, es decir, reemplazando una transición dentro de una red WRI-WF con una subred que es una red WRI-WF. El resultado también es una red WRI-WF. Las redes WRI-WF son G-sound, [26] por lo tanto, al usar solo los bloques de construcción de WRI-WF-net, se pueden obtener redes WF que son G-sound por construcción.
La matriz de estructura de diseño (DSM) puede modelar las relaciones de los procesos y utilizarse para la planificación de los mismos. Las redes DSM son la materialización de planes basados en DSM en procesos de flujo de trabajo mediante redes de Petri y son equivalentes a las redes WRI-WF. El proceso de construcción de la red DSM garantiza la solidez de la red resultante.
^ Petri, Carl Adam; Reisig, Wolfgang (2008). "Red de Petri". Scholarpedia . 3 (4): 6477. Código bibliográfico : 2008SchpJ...3.6477P. doi : 10.4249/scholarpedia.6477 .
^ Rozenburg, G.; Engelfriet, J. (1998). "Sistemas de redes elementales". En Reisig, W.; Rozenberg, G. (eds.). Lecciones sobre redes de Petri I: modelos básicos: avances en redes de Petri . Apuntes de clase en informática. Vol. 1491. Springer. págs. 12–121. doi :10.1007/3-540-65306-6_14. ISBN .3-540-65306-6.
^ Reisig, Wolfgang (1991). "Redes de Petri y especificaciones algebraicas". Ciencias de la computación teórica . 80 (1): 1–34. doi :10.1016/0304-3975(91)90203-e.
^ Desel, Jörg; Juhás, Gabriel (2001). "¿Qué es una red de Petri? Respuestas informales para el lector informado". En Ehrig, Hartmut ; et al. (eds.). Unificando redes de Petri . LNCS. Vol. 2128. Springer. págs. 1–25. doi :10.1007/3-540-45541-8_1. ISBN.9783540430674.
^ Meseguer, Jose; Montanari, Ugo (octubre de 1990). "Las redes de Petri son monoides". Información y Computación . 88 (2): 105–155. doi :10.1016/0890-5401(90)90013-8.
^ Esparza, Javier; Nielsen, Mogens (1995) [1994]. "Cuestiones de decidibilidad para redes de Petri: una encuesta". Boletín de la EATCS (edición revisada) . Consultado el 14 de mayo de 2014 .
^ Lipton, R. (1976). "El problema de la alcanzabilidad requiere espacio exponencial". Informe técnico 62. Universidad de Yale: 305–329.
^ Küngas, P. (26-29 de julio de 2005). La comprobación de la accesibilidad de las redes de Petri es polinómica con jerarquías de abstracción óptimas. Actas del 6.º Simposio internacional sobre abstracción, reformulación y aproximación—SARA 2005. Apuntes de clase sobre informática. Vol. 3607. Airth Castle, Escocia, Reino Unido: Springer. pp. 149-164. doi :10.1007/11527862_11. ISBN3-540-31882-8Archivado desde el original el 9 de febrero de 2012. Consultado el 10 de julio de 2008 .
^ Czerwiński, Wojciech; Lasota, Sławomir; Lazic, Ranko; Leroux, Jerónimo; Mazowiecki, Filip (2018). "El problema de accesibilidad de las redes de Petri no es elemental (resumen ampliado)". arXiv : 1809.07115 [cs.FL].
^ Leroux, Jérôme (2021). "El problema de accesibilidad para las redes de Petri no es recursivo primitivo". arXiv : 2104.12695 [cs.LO].
^ Czerwiński, Wojciech; Orlikowski, Lukasz (2021). "La accesibilidad en los sistemas de suma de vectores es completa de Ackermann". arXiv : 2104.13866 [cs.FL].
^ Murata, Tadao (abril de 1989). "Petri Nets: Properties, Analysis and Applications" (PDF) . Actas del IEEE . 77 (4): 541–558. doi :10.1109/5.24143 . Consultado el 26 de mayo de 2024 .
^ "Redes de Petri". www.techfak.uni-bielefeld.de . Archivado desde el original el 27 de septiembre de 2011. Consultado el 13 de abril de 2011 .
^ ab Kučera, Erik; Haffner, Oto; Drahoš, Peter; Ciganek, Ján; Leskovský, romano; Štefanovič, Juraj (enero de 2020). "Nueva herramienta de software para el modelado y control de sistemas híbridos y de eventos discretos utilizando redes de Petri interpretadas en el tiempo". Ciencias Aplicadas . 10 (15): 5027. doi : 10.3390/app10155027 .
^ ab David, René; Alla, Hassane (2005). Redes de Petri discretas, continuas e híbridas. Springer. ISBN978-3-540-22480-8.
^ Jensen, Kurt (1997). "Una breve introducción a las redes de Petri coloreadas" (PDF) . Una breve introducción a las redes de Petri coloreadas . Apuntes de clase en informática. Vol. 1217. págs. 203–208. doi :10.1007/BFb0035389. ISBN978-3-540-62790-6.
^ Araki, T.; Kasami, T. (1977). "Algunos problemas de decisión relacionados con el problema de accesibilidad para redes de Petri". Ciencias de la computación teórica . 3 (1): 85–104. doi :10.1016/0304-3975(76)90067-0.
^ Dufourd, C.; Finkel, A.; Schnoebelen, Ph. (1998). "Redes de restablecimiento entre decidibilidad e indecidibilidad". Actas del 25.º Coloquio internacional sobre autómatas, lenguajes y programación . Apuntes de clase en informática. Vol. 1443. págs. 103–115. doi :10.1007/11527862_11. ISBN3-540-68681-9.
^ Zaitsev, DA (2013). "Hacia la red de Petri universal mínima". IEEE Transactions on Systems, Man, and Cybernetics: Systems . 44 : 47–58. doi :10.1109/TSMC.2012.2237549. S2CID 6561556.
^ "Introducción muy breve a las redes CP". Departamento de Ciencias de la Computación, Universidad de Aarhus, Dinamarca. Archivado desde el original el 28 de octubre de 2010. Consultado el 22 de agosto de 2007 .
^ "LLPN - Redes de Petri de lógica lineal". Archivado desde el original el 2005-11-03 . Consultado el 2006-01-06 .
^ Dawis, EP; Dawis, JF; Koo, Wei-Pin (2001). Arquitectura de sistemas informáticos mediante redes de Petri dualistas . Conferencia internacional IEEE de 2001 sobre sistemas, hombre y cibernética. Vol. 3. págs. 1554–8. doi :10.1109/ICSMC.2001.973505. ISBN0-7803-7087-2.
^ Dawis, EP (2001). Arquitectura de una pila de protocolos SS7 en una plataforma de conmutación de banda ancha utilizando redes de Petri dualistas . Conferencia IEEE Pacific Rim de 2001 sobre comunicaciones, computadoras y procesamiento de señales. Vol. 1. págs. 323–6. doi :10.1109/PACRIM.2001.953588. ISBN0-7803-7080-5.
^ abc van der Aalst, WMP (1998). "La aplicación de redes de Petri a la gestión del flujo de trabajo" (PDF) . Journal of Circuits, Systems and Computers . 8 (1): 21–66. CiteSeerX 10.1.1.30.3125 . doi :10.1142/s0218126698000043. S2CID 248401501. Archivado desde el original (PDF) el 2016-11-19 . Consultado el 2015-04-02 .
^ van Hee, K.; Sidorova, N.; Voorhoeve, M. (2003). "Solidez y separabilidad de las redes de flujo de trabajo en el enfoque de refinamiento por pasos" (PDF) . En van der Aalst, WMP; Best, E. (eds.). Aplicación y teoría de las redes de Petri 2003. Apuntes de clase en informática. Vol. 2678. Springer. págs. 337–356. doi :10.1007/3-540-44919-1_22. ISBN.3-540-44919-1.
^ ab Ping, L.; Hao, H.; Jian, L. (2004). Moldt, Daniel (ed.). Sobre solidez 1 y solidez de redes de flujo de trabajo . Actas del 3.er taller sobre modelado de objetos, componentes y agentes. Vol. 571. Aarhus, Dinamarca: DAIMI PB. págs. 21–36. ISSN 0105-8517. OCLC 872760679.
^ Mazurkiewicz, Antoni (1995). "Introducción a la teoría de las trazas". En Diekert, V.; Rozenberg, G. (eds.). El libro de las trazas . World Scientific. págs. 3–67.
^ Winskel, G.; Nielsen, M. "Modelos para concurrencia" (PDF) . Manual de lógica y fundamentos de la informática . Vol. 4. OUP. págs. 1–148. Archivado desde el original (PDF) el 4 de mayo de 2020.
^ Scheuring, Rainer; Wehlan, Herbert "Hans" (1 de diciembre de 1991) [julio de 1991]. Bretthauer, Georg (ed.). "Der Boolesche Differentialkalkül – eine Methode zur Analyse und Synthese von Petri-Netzen" [El cálculo diferencial booleano - Un método para el análisis y síntesis de redes de Petri]. En – Automatisierungstechnik – Methoden und Anwendungen der Steuerungs-, Regelungs- und Informationstechnik (en alemán). 39 (7). Stuttgart, Alemania: R. Oldenbourg Verlag [Delaware] : 226–233. doi :10.1524/auto.1991.39.112.226. ISSN 0178-2312. S2CID 56766796. Archivado desde el original el 16 de octubre de 2017. Consultado el 16 de octubre de 2017 .(8 páginas)
^ ab van der Aalst, WMP; Stahl, C. (27 de mayo de 2011). Modelado de procesos comerciales: un enfoque orientado a la red de Petri. Prensa del MIT. págs. 1–400. ISBN9780262015387.
^ van der Aalst, WMP (2018). "Gestión de Procesos de Negocio". Enciclopedia de sistemas de bases de datos . Saltador. págs. 370–374. doi :10.1007/978-1-4614-8265-9_1179. ISBN978-1-4614-8266-6.
^ Favrin, Bean (2014-09-02). "esyN: Creación, compartición y publicación de redes". PLOS ONE . 9 (9): e106035. Bibcode :2014PLoSO...9j6035B. doi : 10.1371/journal.pone.0106035 . PMC 4152123 . PMID 25181461.
^ Koch, Ina ; Reisig, Wolfgang; Schreiber, Falk (2011). Modelado en biología de sistemas: el enfoque de la red de Petri. Biología Computacional. vol. 16. Saltador. doi :10.1007/978-1-84996-474-6. ISBN978-1-84996-473-9.
^ Kristensen, LM; Westergaard, M. (2010). "Generación automática de código basado en la estructura a partir de redes de Petri coloreadas: una prueba de concepto". Métodos formales para sistemas críticos industriales . Métodos formales para sistemas críticos industriales - 15.º taller internacional, FMICS 2010. Apuntes de clase en informática. Vol. 6371. págs. 215–230. doi :10.1007/978-3-642-15898-8_14. ISBN978-3-642-15897-1.
^ Gao, X.; Hu, Xinyan (2020). "Un control robusto de red neuronal de red de Petri para un nuevo modelo de proceso de relleno de pasta". IEEE Access . 8 : 18420–18425. Bibcode :2020IEEEA...818420G. doi : 10.1109/ACCESS.2020.2968510 . S2CID 210994447.
^ Kučera, Erik; Haffner, Oto; Drahoš, Peter; Leskovský, Roman; Cigánek, Ján (enero de 2020). "PetriNet Editor + PetriNet Engine: nueva herramienta de software para modelado y control de sistemas de eventos discretos utilizando redes de Petri y generación de código". Applied Sciences . 10 (21): 7662. doi : 10.3390/app10217662 .
^ Carmona, J.; van Dongen, BF; Solti, A.; Weidlich, M. (2018). Comprobación de conformidad: procesos y modelos relacionados. Springer. doi :10.1007/978-3-319-99414-7. ISBN .978-3-319-99413-0. Número de identificación del sujeto 53250018.
^ Fernandez, JL; Sanz, R.; Paz, E.; Alonso, C. (19–23 de mayo de 2008). "Uso de redes de Petri binarias jerárquicas para construir aplicaciones robustas para robots móviles: RoboGraph". IEEE International Conference on Robotics and Automation, 2008. Pasadena, CA, EE. UU., págs. 1372–7. doi :10.1109/ROBOT.2008.4543394. ISBN978-1-4244-1646-2.
^ Mendes, J. Marco; Leitão, Paulo; Colombo, Armando W.; Restivo, Francisco (2012). "Redes de Petri de alto nivel para la descripción y control de procesos en sistemas de fabricación orientados a servicios". Revista Internacional de Investigación en Producción . 50 (6). Taylor & Francis: 1650–1665. doi :10.1080/00207543.2011.575892. S2CID 39688855.
^ Fahland, D.; Gierds, C. (2013). "Análisis y finalización de diseños de middleware para la integración empresarial mediante redes de Petri coloreadas". Control de combustión y flujo activo 2018. Ingeniería de sistemas de información avanzada - 25.ª conferencia internacional, CAiSE 2013. Notas de clase en informática. Vol. 7908. págs. 400–416. doi : 10.1007/978-3-642-38709-8_26 . ISBN978-3-319-98176-5.
^ Clempner, Julio (2006). "Modelado de juegos de caminos más cortos con redes de Petri: una teoría basada en Lyapunov". Revista Internacional de Matemática Aplicada y Ciencias de la Computación . 16 (3): 387–397. ISSN 1641-876X.
^ Yakovlev, Alex; Gómez, Luis; Lavagno, Luciano, eds. (2000). Diseño de Hardware y Redes de Petri. doi :10.1007/978-1-4757-3143-9. ISBN978-1-4419-4969-1.
^ Cortadella, J .; Kishinevsky, M.; Kondratyev, A.; Lavagno, L.; Yakovlev, A. (2002). Síntesis lógica para controladores e interfaces asíncronos. Springer Series in Advanced Microelectronics. Vol. 8. doi :10.1007/978-3-642-55989-1. ISBN978-3-642-62776-7. ISSN 1437-0387.
^ Cortadella, Jordi ; Yakovlev, Alex; Rozenberg, Grzegorz, eds. (2002). Concurrencia y diseño de hardware. Apuntes de clase en informática. Vol. 2549. doi :10.1007/3-540-36190-1. ISBN978-3-540-00199-7. ISSN 0302-9743. S2CID 42026227.
^ Bernardeschi, C.; De Francesco, N.; Vaglini, G. (1995). "Una semántica de redes de Petri para redes de flujo de datos". Acta Informática . 32 (4): 347–374. doi :10.1007/BF01178383. S2CID 7285573.
^ van der Aalst, Wil MP; Stahl, Christian; Westergaard, Michael (2013). "Estrategias para modelar procesos complejos utilizando redes de Petri coloreadas". Transactions on Petri Nets and Other Models of Concurrency VII . Apuntes de clase en informática. Vol. 7. págs. 6–55. doi :10.1007/978-3-642-38143-0_2. ISBN978-3-642-38142-3. {{cite book}}: |journal=ignorado ( ayuda )
^ ab van der Aalst, WMP (2018). "Patrones de flujo de trabajo". Enciclopedia de sistemas de bases de datos . Saltador. págs. 4717–4718. doi :10.1007/978-1-4614-8265-9_826. ISBN978-1-4614-8266-6.
^ ab van der Aalst, WMP (2018). "Análisis del modelo de flujo de trabajo". Enciclopedia de sistemas de bases de datos . Saltador. págs. 4716–4717. doi :10.1007/978-1-4614-8265-9_1476. ISBN978-1-4614-8266-6.
^ O'Connor, Patrick DT (2012). Ingeniería de confiabilidad práctica . Andre Kleyner (5.ª ed.). Wiley. ISBN978-1-119-96126-0.OCLC 862121371 .
^ Juan, Marion; Mailland, David; Fifís, Nicolás; Gregoris, Guy (diciembre de 2021). "Modélisation des pannes d'une antenne active et modificaciones de arquitectura". Técnicas del ingeniero . Seguridad de sistemas industriales. doi :10.51257/a-v1-se1221. S2CID 245057775.
^ ter Hofstede, Arthur HM; van der Aalst, Wil MP; Adams, Michael; Russell, Nick (2010). Hofstede, Arthur HM; Aalst, Wil MP; Adams, Michael; Russell, Nick (eds.). Automatización moderna de procesos comerciales: YAWL y su entorno de soporte. doi :10.1007/978-3-642-03121-2. ISBN978-3-642-03122-9.
Lectura adicional
Wikimedia Commons alberga una categoría multimedia sobre Redes de Petri .
Cardoso, Janette; Camargo, Heloísa (1999). Borrosidad en las redes de Petri . Editorial Física. ISBN 978-3-7908-1158-2.
Chiachio, Manuel; Chiachio, Juan; Presscott, Darren; Andrews, John (2018). "Un nuevo paradigma para la representación del conocimiento incierto mediante 'redes de Petri plausibles'". Ciencias de la información . 453 (julio de 2018): 323–345. doi : 10.1016/j.ins.2018.04.029 .
Grobelna, Iwona (2011). "Verificación formal de la especificación de un controlador lógico embebido con deducción por computadora en lógica temporal". Przegląd Elektrotechniczny . 87 (12a): 47–50.
Jensen, Kurt (1997). Redes de Petri de colores. Springer Verlag. ISBN 978-3-540-62867-5.
Pataricza, András (2004). Formális módszerek az informatikában (Métodos formales en informática) . TYPOTEX Kiadó. ISBN 978-963-9548-08-4.
Peterson, James Lyle (1977). "Petri Nets". Encuestas de computación de ACM . 9 (3): 223–252. doi :10.1145/356698.356702. hdl : 10338.dmlcz/135597 . S2CID 3605804.
Peterson, James Lyle (1981). Teoría de redes de Petri y modelado de sistemas . Prentice Hall. ISBN 978-0-13-661983-3.
Petri, Carl Adam (1962). Kommunikation mit Automaten (tesis doctoral). Universidad de Bonn.
Petri, Carl Adam; Reisig, Wolfgang (2008). "Red de Petri". Scholarpedia . 3 (4): 6477. Código bibliográfico : 2008SchpJ...3.6477P. doi : 10.4249/scholarpedia.6477 .
Reisig, Wolfgang (1992). Introducción al diseño de redes de Petri . Springer-Verlag. ISBN 978-3-540-52044-3.
Riemann, Robert-Christoph (1999). Modelado de sistemas concurrentes: métodos estructurales y semánticos en el cálculo de redes de Petri de alto nivel . Herbert Utz Verlag. ISBN 978-3-89675-629-9.
Störrle, Harald (2000). Modelos de arquitectura de software: diseño y análisis con UML y redes de Petri . Libros a pedido. ISBN 978-3-8311-1330-9.
Zaitsev, Dmitry (2013). Clanes de redes de Petri: verificación de protocolos y evaluación del rendimiento de las redes. LAP LAMBERT Academic Publishing. ISBN 978-3-659-42228-7.
Zhou, Mengchu ; Dicesare, Frank (1993). Síntesis de redes de Petri para el control de eventos discretos de sistemas de fabricación . Kluwer Academic Publishers. ISBN 978-0-7923-9289-7.
Zhou, Mengchu ; Venkatesh, Kurapati (1998). Modelado, simulación y control de sistemas de fabricación flexible: un enfoque de red de Petri . World Scientific Publishing. ISBN 978-981-02-3029-6.
Xue-Guo, Xu (2019). "Redes de Petri difusas de imágenes para la representación y adquisición de conocimiento al considerar opiniones conflictivas". Applied Sciences . 9 (5): 983. doi : 10.3390/app9050983 .