Está en la página 1de 35

Teoría de Redes de Petri

Autores:
Prog. Catalina Salvati
Prog. Leandro Cofre
Prog. Francisco Suárez

Base teórica del proyecto final de la carrera de Lic. en
Sistemas
Universidad FASTA Bariloche

Apunte de Redes de Petri

Índice
INTRODUCCIÓN

1

CONTENIDO

2

DEFINICIONES

3

DEFINICIÓN FORMAL
REPRESENTACIÓN
REPRESENTACIÓN GRÁFICA
REPRESENTACIÓN MATRICIAL
EJEMPLO 1
MARCADO
EVOLUCIÓN DE MARCADO
SUBCLASES DE REDES DE PETRI
GRAFO DE ESTADOS
GRAFO MARCADO
RED DE LIBRE ELECCIÓN
RED SIMPLE

3
4
4
5
5
7
7
8
8
8
8
8

ESTRUCTURAS BÁSICAS

9

SELECCIÓN
ATRIBUCIÓN
DISTRIBUCIÓN
CONJUNCIÓN
EJECUCIÓN SECUENCIAL
SINCRONIZACIÓN
CONCURRENCIA
CONFLICTOS

9
9
9
10
10
10
11
11

PROPIEDADES

12

PROPIEDADES ESTRUCTURALES
RDP PURA
RED DE PETRI ACOTADA ESTRUCTURALMENTE
RED DE PETRI ESTRUCTURALMENTE VIVA
RED DE PETRI COMPLETAMENTE CONTROLABLE
RED DE PETRI ESTRUCTURALMENTE CONSERVATIVA
RED DE PETRI (PARCIALMENTE) REPETITIVA
RED DE PETRI (PARCIALMENTE) CONSISTENTE
PROPIEDADES DE COMPORTAMIENTO
VIVACIDAD
CICLICIDAD
ACOTAMIENTO
CONSERVATIVIDAD
ALCANZABILIDAD

12
12
12
12
12
12
12
12
13
13
14
15
16
16

EXTENSIONES

18

I

Apunte de Redes de Petri
RECURSOS COMPARTIDOS
ARCOS INHIBIDORES:

18
18

VALIDACIÓN

19

MÉTODOS DE ANÁLISIS

19

TÉCNICAS ENUMERATIVAS
TÉCNICAS DE TRANSFORMACIÓN
TÉCNICAS ESTRUCTURALES

19
20
21

TIPOS DE RED

23

RDP CON PESO
RDP CON TIEMPO
RDP COLOREADAS
RDP JERÁRQUICAS
ESTOCÁSTICAS (CONCEPTOS REDES PETRI.PDF)
REDES DE PETRI ESTOCÁSTICAS GENERALIZADAS

23
23
23
24
24
25

EJERCICIOS

26

EJERCICIO Nº 1:
EJERCICIO Nº 2:
EJERCICIO Nº 3:
¿CÓMO MODELARÍA LA SITUACIÓN DE QUE CUANDO NO HAY MÁS BEBIDAS LA MÁQUINA
RETORNE LA MONEDA?
EJERCICIO Nº 4:
EJERCICIO Nº 5:
EJERCICIO Nº 6:
EJERCICIO 7
EJERCICIO 8

26
26
27

RESPUESTAS A LOS EJERCICIOS

29

EJERCICIO 1
EJERCICIO 2
EJERCICIO 3
EJERCICIO 4
EJERCICIO 5
EJERCICIO 6
EJERCICIO 7
EJERCICIO 8

29
29
30
30
31
31
31
32

GLOSARIO

33

CONJUNTOS
LÓGICA

33
33

ÍNDICE DE IMÁGENES

34

27
27
27
28
28
28

II

Apunte de Redes de Petri BIBLIOGRAFÍA 35 III .

Definiciones 1 . Inteligencia artificial. es necesario analizar el sistema modelado. Las RdP se han utilizado en distintas áreas de aplicación como en química. se pueden obtener nuevos conocimientos del sistema modelado sin ningún coste o peligro para el sistema real. este modelo se analiza. La principal aplicación de las redes de Petri es el modelado y el análisis de sistemas con componentes concurrentes que interactúan.Apunte de Redes de Petri Introducción Las Redes de Petri (RdP) son una teoría matemática postulada por el alemán Carl Adam Petri que proporciona una herramienta gráfica y matemática de modelado para la descripción formal de sistemas cuya dinámica se caracteriza por la concurrencia. Este análisis nos lleva a una mejor comprensión del comportamiento del sistema modelado. Un modelo es una representación de las características más importantes de un sistema de estudio. Sin embargo. tránsito. Para realizar el análisis de las propiedades de una red de Petri se han desarrollado diferentes técnicas. Manipulando esta representación. el modelado por sí solo sirve de poco. etc. exclusión mutua y conflictos. sincronización. redes informáticas. El sistema se modela primero como una RdP y después. que permiten la verificación de las propiedades que el sistema construido posea. las cuales son características típicas de sistemas distribuidos.

Finalizando luego con una serie de ejercicios para resolver.Apunte de Redes de Petri Contenido En este documento. Luego daremos algunos ejemplos de estructuras describen el modo de representar algunos casos comunes. Definiciones 2 . básicas que Seguiremos con las propiedades. introduciremos los fundamentos de la teoría de redes de Petri. extensiones y métodos de análisis. En la primer parte daremos las definiciones básicas de RdP y los modos de representación.

2. W. que dependen del cumplimiento de determinadas condiciones.…}  es el marcado inicial de la red // define un número inicial de marcas por lugar Definiciones 3 .Apunte de Redes de Petri Definiciones Una RdP está formada por lugares y transiciones. …. Para la descripción funcional de sistemas concurrentes los marcados representan estados y las transiciones sucesos. unidos alternativamente por arcos dirigidos. F. Un lugar puede o no contener marcas. t2. Definición formal Podemos definir a una red de Petri como una 5-upla: RdP = (P. El conjunto de marcas asociadas a cada uno de los lugares en un momento dado. tn} es un conjunto finito no vacío de transiciones PT= F  (P  X T) U (T  X P) es un conjunto de arcos dirigidos W: F{1. donde: P = {p1.2. M0).3. T.…} es una función de pesos Mi: P{0. … pm} es un conjunto finito no vacío de lugares T = {t1. p2. constituye un marcado de la RdP.1.

En el caso de las RdP. las filas los lugares y las celdas la conexión entre ambas. los lugares y las transiciones. Un círculo representa un lugar. Los arcos se etiquetan con sus pesos (enteros positivos). se dice que la transición está validada. Una transición se dice que está sensibilizada cuando todos sus lugares origen están marcados. podemos encontrar una representación gráfica y otra matricial. Algunos arcos van desde un lugar a una transición y otros desde una transición a un lugar. Las matrices reciben los nombres de “Matriz de incidencia previa” y “Matriz de incidencia posterior” respectivamente. A las transiciones se les asocia eventos (funciones lógicas de las variables de entrada). significa que el arco tiene peso uno. Figura 3 Transición sensibilizada.Apunte de Redes de Petri Representación Toda herramienta de modelado tiene una o mas formas de ser representada. una barra representa una transición y un arco dirigido conecta lugares y transiciones. Un lugar de salida se indica con un arco desde la transición al lugar. Las marcas se representan como puntos negros en los lugares. Figura 2 Lugar activo. Representación matricial Una transición tiene un determinado número de lugares de entrada (o precondiciones) y de lugares de salida (o postcondiciones). donde las columnas representan las transiciones. Los lugares que contienen marcas se consideran lugares activos. Cada uno de estos se puede representar por una matriz binaria de dos dimensiones. Figura 1 Representación gráfica de una Rdp. Figura 4 Transición validada. Cuando ocurre un evento asociado a una transición. Un arco dirigido desde un lugar p a una transición t define p como un lugar de entrada para t. Definiciones 4 . Representación gráfica A una RdP podemos asociarle un grafo dirigido con dos clases disjuntas de nodos. Si una de esas etiquetas se omite.

donde: P = {p1. T = {t1. M0). 0) Figura 5 Red de Petri con cuatro lugares y tres transiciones. t2. pj). t3 }. Mo=(5. Definiciones 5 . W. T. p3. 0. Matriz de incidencia de N: C = C+ − C−. Se denominan: Matriz de incidencia previa: C− = [c−ij]n×m en la que c−ij = Pre(pi. Sea n = |P| (número de lugares de P) y m = |T| (número de transiciones de T). p2. p4}.Apunte de Redes de Petri Podemos decir que una RdP N se encuentra definida matricialmente por medio de dos matrices. Ejemplo 1 Dada la RdP R1 = (P. tj). 0. Matriz de incidencia posterior: C+ = [c+ij]n×m en la que c+ij = Post(ti. F.

p) > 0} Conjunto de transiciones de entrada a p : •p = {t ∈ T | Post(t. t) > 0} Definiciones 6 . donde t ∈ T y p ∈ P.= Pre(pi. p) > 0} Conjunto de transiciones de salida de p : p• = {t ∈ T | Pre(p. tj) = 0 0 0 1 1 1 0 0 0 0 0 0 Sea N una RdP. Se definen los siguientes conjuntos: Conjunto de lugares de entrada a t : •t = {p ∈ P | Pre(p. t) > 0} Conjunto de lugares de salida de t : t• = {p ∈ P | Post(t. tj) = 1 0 0 0 1 1 0 0 0 0 0 0 C+ = Post(pi.Apunte de Redes de Petri Matriz de Incidencia previa y matriz de incidencia posterior: C.

Para disparar una transición ha de estar validada y sensibilizada. y por ello produce un nuevo marcado en la red. ∀p ∈ P Cada disparo de una transición modifica la distribución de las marcas. Una RdP marcada es un par (N. Cuando una transición se dispara desaparecen las marcas de los lugares origen y se añade una marca a cada uno de los lugares destino. p) = Mf 5 1 0 0 0 0 0 4 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 Definiciones 7 . de forma que decimos que un lugar p está marcado con k marcas. t) + Post(t. Regla de evolución del marcado: Si t está habilitada para un marcado M entonces t puede dispararse. p).Apunte de Redes de Petri Marcado Un marcado es una función que asigna a cada lugar un entero no negativo (marca). el cual resulta de quitar Pre(p. t) + Pos(t. si el marcado asigna al lugar p un entero k. y se denota por M[t] > M0. La cantidad de marcas en el lugar p será M(p). p) marcas a cada lugar p ∈ t•. Una transición t ∈ T está sensibilizada (habilitada) para un marcado M dado. M) formado por una RdP N y un marcado M. Un marcado M se representa mediante un vector con tantos componentes como lugares tenga la red. obtenemos: M0 - Pre(p. El grado de habilitación de una transición indica el máximo número que la transición puede ser disparada concurrentemente. El marcado de la RdP del ejemplo 1 : 5 0 M0 = 0 0 Evolución de marcado El marcado cambia al disparar las transiciones. Siguiendo con el ejemplo 1. sii ∀p ∈ •t se verifica M(p) ≥ Pre(p. En la operación se alcanza un nuevo marcado M 0. t). t) marcas de cada lugar p ∈ •t y añadir Post(t. El cambio en el marcado esta dado por la ecuación: M0(p) = M(p) − Pre(p. al disparar la transición t1.

Subclases de Redes de Petri Grafo de estados Un grafo de estado (GE) o máquina de estados (ME) es una RdP que cumple: ∀t ∈ T. entonces ∀t ∈ p•. p2 ∈ P.Apunte de Redes de Petri 0 0 0 0 0 0 0 0 Figura 6 Evolución del marcado de la red del ejemplo 1. Definiciones 8 . |•t| = 1 Red simple Una RdP simple (RS) es una RdP que cumple: p•1 ∩ p•2 = ∅ ⇒ p•1 ⊆ p•2 o p•1 ⊇ p•2 para toda p1. si |p•| > 1. |•p| = |p•| = 1 Red de libre elección Una RdP de libre elección (RLE) es una RdP que cumple: ∀p ∈ P. |•t| = |t•| = 1 Grafo marcado Un grafo marcado (GM) o grafo de sincronización es una RdP que cumple: ∀p ∈ P.

Esto ocurre principalmente en la electrónica. Ej: El en circuito AND las dos entradas producen una salida lógica. Selección. Figura 11 Estructura básica. Atribución.Apunte de Redes de Petri p1 t1 t2 p2 t1 => p3 p1 t1 p3 p2 p3 p2 Figura 1 Estructuras básicas Selección Selecciona el proceso a ejecutar Figura 7 Estructura básica. Sincronización. Figura 12 Definiciones Estructura básica. Sincronización La transición t1 estará habilitada para ser disparada  todos los nodos de entrada de la transición t1 poseen al menos una marca en cada uno de ellos. Ejecución Secuencial La transición t2 puede ser disparada  sea antes disparado t1. Conjunción Sincronización de procesos en paralelo Figura 10 Estructura básica. Ejecución secuencial. Conjunción. Atribución Ejecución independiente de un proceso por dos procesos distintos Figura 8 Estructura básica. 9 . Distribución Ejecución de procesos paralelos o concurrentes Figura 9 Estructura básica. Distribución.

Con esta propiedad. 10 . pero el disparo de alguna de ellas produce que la otra transición quede inhabilitada para ser disparada. Conflictos Tanto la transición t1 como t2 están listas para ser disparadas. Conflictos. las RdP es capaz de modelar sistemas de control distribuido con múltiples procesos ejecutándose concurrentemente. Figura 14 Definiciones Estructura básica.Apunte de Redes de Petri Concurrencia Las transiciones t2 y t3 son concurrentes. Concurrencia. Figura 13 Estructura básica.

Un lugar p en una red de Petri se dice no acotado estructuralmente si existe un marcado M y una secuencia de disparo σ desde M tal que p no esté acotado. Pre(pi. Red de Petri (parcialmente) Repetitiva Una red de Petri es (parcialmente) repetitiva si existe un marcado finito M0 y una secuencia de disparo s tal que (alguna) toda transición ocurre un número infinito de veces en σ. y xtM = xtM0. las propiedades de comportamiento que sí dependen del marcado inicial Propiedades estructurales RdP Pura Una RdP N es una red pura si no existe ninguna transición que tenga un lugar que sea al mismo tiempo de entrada y salida de la transición: ∀tj ∈ T . para cualquier i = 1. Red de Petri (parcialmente) Consistente Una red de Petri es (parcialmente) consistente si existe un marcado finito M0 y una secuencia de disparo s cíclica (desde M 0 a M0 tal que (alguna) toda transición ocurre al menos una vez en σ. ∀pi ∈ P.Apunte de Redes de Petri Propiedades En las RdP podemos encontrar propiedades estructurales. que dependen de la estructura topológica de las RdP.. para cualquier marcado inicial M0 y un marcado alcanzable M ∈ R(M0).n. Red de Petri Estructuralmente Conservativa Una red de Petri es estructuralmente conservativa si.. Red de Petri Completamente Controlable Una red de Petri se dice completamente controlable si cualquier marcado es alcanzable desde cualquier otro marcado. Definiciones 11 . independientes del marcado inicial y.. Red de Petri Estructuralmente Viva Una red de Petri está estructuralmente viva si existe algún marcado inicial para el que está viva. tj) Post(tj .. existe un vector x (n × 1) tal que xi≠0. pi) = 0 Red de Petri Acotada Estructuralmente Una red de Petri está acotada estructuralmente si está acotada para cualquier marcado inicial finito.

Toda RdP marcada parcialmente viva tiene la posibilidad de evolución global. Podemos tener redes pseudo-vivas en las que existen algunas transiciones vivas y no se bloquea totalmente. t4. Ejemplo: RdP Pseudoviva Figura 16 Definiciones Ejemplo de una RdP pseudoviva. tomando como punto de partida cualquier marcado alcanzable a partir de M0. t2. M0) ∃σ : M σ→M0 tal que t ⊂ σ. no hay bloqueo. Figura 15 Ejemplo de una RdP no viva. sii existe una secuencia de disparos a partir de un marcado M sucesor de M 0 que comprenda a t : ∀M ∈ M(R. t2. Se dice que una RdP marcada está parcialmente viva para M 0 si. 12 . Ejemplo: Una red de Petri no viva. para que esté viva. t1. Se puede decir que la propiedad de vivacidad significa la ausencia en el conjunto de alcanzabilidad de un marcado en el que la red se bloquee totalmente (deadlock). todas sus transiciones deben ser disparables desde cualquier marcado alcanzable. ya que. independientemente de que existan transiciones que no puedan ser disparadas. la red queda “bloqueada”. Una RdP marcada está viva para M0 sii todas sus transiciones son vivas para M0. Para la secuencia de disparos t 1. Si ahora se disparan las transiciones t1. t3.Apunte de Redes de Petri Propiedades de comportamiento Vivacidad Una transición t está viva para un marcado inicial dado M 0. existe al menos una transición disparable y otra transición no viva. ya no se puede disparar ninguna transición más.

Una RdP marcada es k-acotada para M 0 sii todos sus lugares son kacotados para M0: ∀p ∈ P y ∀M ∈ M(R. M (p) ≤ k. Ejemplo de una red no reversible: Figura 17 Ejemplo de una RdP no reversible. M0). ∃σ tal que M σ→M0. Luego la propiedad de acotamiento determina la finitud del número de estados del sistema representado por una RdP. Definiciones 13 . Un lugar p es k-acotado para M 0 sii existe un número entero k tal que M(p) ≤ k para cualquier marcado M ∈ M(R. Un subconjunto final de estados (marcados) contiene estados (marcados) mutuamente alcanzables entre sí y tales que el estado inicial (marcado inicial) no es alcanzable a partir de ninguno de ellos.Apunte de Redes de Petri Ciclicidad Se dice que una RdP posee un comportamiento globalmente cíclico para M0 si existe una secuencia de disparos que permite alcanzar el marcado inicial M0 a partir de cualquier marcado M alcanzable a partir de M0: ∀M ∈ M(R. Esta RdP es pseudoviva. La ciclicidad o reversibilidad de una RdP marcada garantiza que no existen subconjuntos finales de estados (marcados). M0). Se denomina cota del lugar p al menor entero k que verifica la desigualdad anterior. M0). de Acotamiento El significado de esta propiedad es el de asegurar que el sistema que una red representa posee un número finito de estados (si suponemos que cada lugar de la red representa a una variable de estado del sistema y su marcado el valor de dicha variable). además no tiene la propiedad reversibilidad ya que el marcado inicial no se puede obtener jamás.

Post. Normalmente los recursos de un sistema ni se crean ni se destruyen. La definición anterior implica que el número de entradas ha de coincidir con número de salidas.Apunte de Redes de Petri Merece una consideración especial la 1-acotación. Una red segura. Conservatividad Las marcas de una red se pueden entender como recursos del sistema. tras el disparo de una secuencia de transiciones. es una RdP 1-acotada. pi ∈ P. Sea R = (P. Definiciones 14 . Si una RdP es 1acotada para M0. se ha de mantener el número de marcas para cualquier marcado de la red. ΣiM0 (pi) = ΣiM(pi). es decir: (|I(t j)|) = |O(tj)|). Esto es. Las redes 1-acotadas son conocidas como binarias. Pre. Si la red diseñada generar más marcas que las que su acotación permite el modelado será erróneo. M0). se dice que la red es conservativa. Se dice que la red está k-acotada si para todo marcado alcanzable tenemos que ningún lugar tiene un número de marcas mayor que k. su marcado es binario (un lugar está o no está marcado) y se dirá que la RdP es binaria para M 0. para cada transición disparable. Ejemplo: Una red no acotada: Figura 18 Ejemplo de una RdP no acotada. M0) se dice que es estrictamente conservativa sii ∀M0 ∈ M(R. Cuando las marcas se conservan. T. Una RdP es estructuralmente acotada si es acotada para cualquier marcado inicial y finito.

M0 [σi Mn. de una secuencia de disparos resultará una secuencia de marcados. Ejemplo RdP y su grafo de alcanzabilidad Figura 19 Definiciones Ejemplo de una RdP con su grafo de alcanzabilidad.. luego un marcado Mn es alcanzable a partir de M 0. al dispararse una transición habilitada. tn . esta cambiará la distribución de las señales ( marcado). Una secuencia de disparos la denotaremos por σ = t1... si existe una secuencia de disparos que a partir de M 0 nos lleve a Mn. t2.q. De esta forma.. en este caso Mn es alcanzable desde M0.Apunte de Redes de Petri Figura 2 Alcanzabilidad La alcanzabilidad es una base fundamental para estudiar las propiedades dinámicas de cualquier sistema. 15 . .. sii ∃σ t.

Arcos inhibidores: Figura 21 Extensiones. va a impedir el disparo de la transición.Apunte de Redes de Petri Extensiones Recursos compartidos Las RdP permiten modelar sistemas donde un recurso es compartido por dos procesos de forma que el uso del recurso durante la ejecución de un proceso impide que dicho recurso sea utilizado por el otro proceso. Estos tipos de arcos se relacionan con la transición a ser inhibida y con el lugar que. Ejemplo: Figura 20 Extensiones. Un recurso compartido se modela mediante un lugar con una marca inicial y transiciones en conflicto. de tener una marca. Arcos inhibidores. Definiciones 16 . Recursos compartidos.

t4 y t1. Un lugar que puede llegar a tener un número infinito de señales se representa por ω. Hay que considerar : M0 : marcado inicial. De este se desprende el comportamiento del sistema. Se basan en la generación del grafo de alcanzabilidad para sistemas limitados o del grafo de cobertura para sistemas no limitados. Ejemplo: Figura 22 Validación de una RdP. t2. LIMITACIÓN. Figura 23 Técnica enumerativa de validación. el número de señales en un lugar puede ser infinito. En la figura se muestra una red de Petri y su grafo de alcanzabilidad (Grafo de marcados). t3. Métodos de Análisis Las técnicas para el análisis de RdP (análisis cualitativo de redes) se clasifican normalmente en tres grupos. Técnicas Enumerativas En primer lugar se tienen las técnicas enumerativas. En este grafo los nodos corresponden al marcado alcanzable y los arcos corresponden al disparo de las transiciones.VIVACIDAD. pero en la práctica están limitadas a sistemas pequeños debido a su elevada complejidad computacional. Este grafo puede ser utilizado para mostrar que la red es segura. Estas técnicas se pueden aplicar en teoría. [M0] : vector de marcados posibles a partir de un marcado inicial. (marcados alcanzables). reversible y que esta tiene dos componentes que se repiten t 1. viva. El grafo resultante es llamado grafo de cobertura. REVERSIBILIDAD.t5. Definiciones 17 . En una red no limitada.Apunte de Redes de Petri Validación La validación consiste en comprobar que se cumplen las propiedades de:.

La ecuación de estado de una red de Petri se define como sigue: el marcado Mk se define como un vector columna m × 1. Reglas de reducción que presentan vivacidad y k-limitación: Figura 24 Técnica de transformación de validación. En la figura puede observarse un conjunto sencillo de seis reglas de reducción que preservan vivacidad y k-limitación. En este grupo de técnicas el objetivo es obtener la máxima información del modelo utilizando únicamente su estructura y marcado inicial. Los métodos de álgebra lineal son utilizados para determinar las propiedades de la red. La j−esima entrada de Mk denota el número de señales en el lugar j inmediatamente después Definiciones 18 . En este grupo de técnicas el objetivo es reducir el tamaño de los modelos mediante reglas de reducción que preserven las propiedades que se quieren estudiar.Apunte de Redes de Petri Técnicas de Transformación En segundo lugar se tienen las técnicas de transformación. Con este conjunto de reglas es posible reducir la complejidad del cálculo de la vivacidad y limitación de un sistema. Técnicas Estructurales En tercer lugar se tienen las técnicas estructurales.

Los lugares contenidos en este subconjunto son llamados componentes conservativos y el vector que contiene los pesos es P-Invariante. el número de disparos es ilimitado. la i−esima fila de la matriz de incidencia C denota el cambio de marcado como el resultado del disparo de la transición i. k = 1. 2. El marcado de una red de Petri puede ser cambiado cada vez que una transición se dispara. 3. luego la ecuación de estado para la red de Petri se escribe como sigue: Mk = Mk−1 + CT uk. indicando el disparo de la transición i. …. Definiciones 19 . El k−esimo disparo o vector de control uk es un vector columna de n × 1. Las restricciones son dadas por los invariantes de la red. Sin embargo. Un marcado invariante es obtenido si la suma de los pesos de el marcado de un subconjunto de lugares en una red es siempre constante. Esto es. no todos los marcados pueden ser alcanzados y no todas las secuencias de disparos pueden ser llevadas a cabo. El vector característico de la secuencia de disparos es el T-Invariante. con n−1 ceros y una entrada 1 en la i−esima posición. Si no ocurre un bloqueo. Si el disparo de una cierta secuencia de transiciones resulta en el mismo marcado como cuando inicio.Apunte de Redes de Petri del k−esimo disparo en la secuencia de disparos. la secuencia es llamada componente repetitivo.

Existe una amplia variedad de extensiones adicionales. La falta de disponibilidad de una ficha modela el tiempo utilizado desarrollando una actividad. transiciones. Las  aristas están etiquetadas con el peso (número de tokens). solamente fichas disponibles habilitan transiciones. considerando la evolución de estados y la duración de cada acción tomada por el sistema. Las transiciones usan los valores de los tokens adquiridos para determinar los valores de los tokens producidos. Si  no hay ningún valor se asume que es 1.…. donde los colores representan las características de los objetos modelados. que básicamente consisten en adicionar tiempos a las diferentes componentes del grafo bipartito que constituye la red. RdP con Tiempo Las Redes de Petri no incluyen concepto alguno de tiempo. Hay múltiples formas diferentes de introducir el concepto de tiempo. etc) en el modelado de un sistema. M0. RdP coloreadas En general. A. Q} donde P. En esta abstracción. Para representar los atributos de estos objetos. por ello. el retardo entre la habilitación y el disparo de la transición. solamente es posible describir solamente la estructura lógica de los sistemas y no su evolución temporal. personas. T. Una RdP Temporizada puede ser definida como: TPN = {P. q2. La introducción del tiempo en el modelo permite la descripción de comportamientos dinámicos de los sistemas. los tokens representan objetos (recursos.Apunte de Redes de Petri Tipos de red RdP con peso Permite que multiples tokens puedan ser quitados/agregados cuando se dispara una transición. Definiciones 20 . Por ello. el tiempo es asociado a los lugares. en alguna unidad temporal adecuada. T. La adición de tiempos en las Redes de Petri es un proceso crítico y se deberá prestar atención especial a la comprensión total de la semántica del modelo y a los detalles de su comportamiento. se utilizan las RdP coloreadas. cada ficha puede estar en uno de dos estados: disponible y no disponible. A y M0 se definen como antes Q=(q1. Una primera posibilidad consiste en asociar a cada transición un número que indica.qm) es el conjunto de retardos asociados a las Una segunda posibilidad para la introducción del concepto de tiempo consiste en asignar un retardo q al proceso de convertir una ficha en disponible luego que la misma llega a un nuevo lugar.

T. A y M0 se definen como antes y L=(l1. se quiere dar una simple descripción de un proceso (sin considerar todos los detalles). Debido a la propiedad de falta de memoria de las variables aleatorias exponencialmente distribuidas. La SPN alcanza un nuevo marcado M’.…. se utiliza para poder modificar más fácilmente el modelo. l2. Un mecanismo de abstracción. Una definición formal de una SPN es: SPN = {P. sustituyéndola por asunciones probabilísticas. Consideremos una SPN y un marcado M en el cual múltiples transiciones están simultáneamente habilitadas. La construcción jerárquica se llama subred. En determinados niveles. que capturen la esencia del sistema. debido a la propiedad de falta de memoria de la distribución exponencial de los retardos en los disparos. Una subred es un agregado de número de lugares. utilizando el color de los tokens para ser consumidos. RdP jerárquicas Las especificaciones de sistemas reales tienen una tendencia a ser grandes y complejos. Eliminando las variables aleatorias de una SPN se obtiene la RdP asociada. M0. Cada subred se representa con un rectángulo que encapsula parte del modelo general. Estocásticas (conceptos redes petri. Cuando sea necesario. Es posible especificar precondiciones. posiblemente dependientes del marcado. De esta forma es posible evitar una detallada descripción determinística de las operaciones del sistema. en el cual algunas transiciones estuvieron habilitadas en el marcado M pero que no fueron disparadas y pueden aun estar habilitadas. estructuración jerárquica. L} donde P. Se puede probar que.Apunte de Redes de Petri Una transición describe la relación entre los valores de los tokens. las SPN son Definiciones 21 . A. Se puede utilizar para estructurar grandes procesos. Pero a otro nivel quizás. la dependencia con un marcado dado M se representará como lj(M).lm) es el conjunto de tasas de retardos asociados con las transiciones. Se puede asumir que la actividad asociada con cada transición recomienza con cualquier nuevo marcado. T. Esto es válido inclusive cuando se está modelando actividades que se suceden en forma continua: el modelo no “siente” la repetición de actividades asociadas con una transición.pdf) Los modelos de performance tratan de representar el comportamiento de sistemas determinísticos complejos por medio de procesos estocásticos. obtenemos una distribución de vida igual a la distribución del retardo de disparo en sí mismo. Las Redes de Petri Estocásticas (SPN) se obtienen asociando con cada transición en una RdP una variable aleatoria con distribución exponencial que exprese el retardo desde la habilitación hasta el disparo de la transición. transiciones y subsistemas. asociadas con las transiciones de la Red de Petri. La transición que tiene asociado el retardo más breve disparará primero. se quiera especificar un comportamiento mas detallado.

La tasa de transición del estado i (correspondiente a M i) al estado j (Mj) es (Mj) es qij = Σk∈Hij lk. A partir de la distribución de probabilidades del estado estacionario es posible obtener estimaciones cuantitativas del comportamiento de la SPN. Una SPN se dice ergódica si genera una CTMC. Las transiciones inmediatas disparan en tiempo cero una vez que están habilitadas. solamente disparará la transición inmediata. El subconjunto H que involucra todas las transiciones inmediatas habilitadas. junto con las probabilidades de distribución es llamado switch aleatorio (random switch). Si el conjunto de transiciones habilitadas H incluye solamente transiciones temporizadas. Si H involucra cero o más transiciones temporizadas y solamente una transición inmediata. es posible calcular la probabilidad de distribución de marcados en el estado estacionario resolviendo la ecuación matricial ΠQ = 0 con la restricción adicional ΣΠi = l.Apunte de Redes de Petri isomórficas a cadenas de Markov de tiempo continuo. únicamente dispararán transiciones inmediatas. una SPN k-acotada es isomórfica a una MC finita. es necesario especificar la función de densidad de probabilidad en el conjunto de transiciones inmediatas habilitadas de a cuerdo a la cual se obtiene la transición que dispara. Cuando H involucra varias transiciones inmediatas. Un ejemplo típico puede ser el caso en el cual las actividades que componen el sistema poseen diferencias en duración de órdenes de magnitud. Las Redes de Petri Estocásticas Generalizadas (GSPN) se obtienen permitiendo que las transiciones pertenezcan a dos clases diferentes: inmediatas y temporizadas. es alcanzable desde cualquier Mi que pertenece R(M0). Las transiciones temporizadas disparan luego de un tiempo de habilitación aleatorio. 2. Una definición formal para las GSPN se obtiene haciendo que los elementos del arreglo L sean solamente elementos m’. Definiciones 22 . En particular. El espacio de estados S de la MC corresponde al conjunto de alcance R(M0) de la Red de Petri asociada con la SPN (M i<->i). La opción se convierte en particularmente conveniente si el número de estados de la Cadena de 22arkov asociada se reduce. aquellos asociados a transiciones temporizadas. donde Q es el generador infinitesimal cuyos elementos se obtienen por el método de construcción de la MC anterior y p es el vector de probabilidades del estado estacionario. cuyos disparos generan el marcado Mj. Redes de Petri Estocásticas Generalizadas Frecuentemente no es deseable asociar un tiempo aleatorio a cada transición. Si la SPN es ergódica. el marcado inicial. Naturalmente se tiende a asociar tiempos con las transiciones más lentas o aquellas que se cree que tienen un mayor impacto en la performance global del sistema y a asumir instantáneas aquellas muy breves o cuya duración se estima que no tendrá impacto en la performance global. La misma se puede obtener aplicando las siguientes reglas: 1. Si H involucra transiciones temporizadas e inmediatas simultáneamente. donde Hij es el conjunto de transiciones habilitadas por el marcado Mi. exponencialmente distribuido. Es posible mostrar que una SPN es ergódica si M0. entonces la transición ti (i pertenece H) dispara con probabilidad li / Σk∈Hlk como en el caso de SPN.

(si al menos existe un marcado en el cual no se puede disparar ninguna transición. w >=0 d. w). Dado el marcado inicial 0 = (0.Apunte de Redes de Petri Figura 4 Figura 3 Ejercicios Ejercicio Nº 1: a. Dada la siguiente RdP. = (w1. 0. w1 >=0. w2). y un depósito de monedas el cual inicialmente se encuentra vacío. entonces la red entra en deadlock) En caso de que así sea dar una secuencia de disparos que lleve a esta situación. 1. indique cuál es la matriz de incidencia previa y la matriz de incidencia posterior. w1 >=0. 1. w2). 0) indique cuáles de los siguientes son marcados son alcanzables desde 0. = (0. indicar cuáles de ellas pueden entrar en deadlock. w >=0 b. 0. Figura 26 Ejercicio 2 a. w2 >=0 Ejercicio Nº 2: Dadas las siguientes redes de Petri. w2 >=0 c. 1. a. 0. b. Figura 25 Ejercicio 1. = (w. Figura 27 Ejercicio 2 b. La misma tiene un depósito de bebidas con una cierta carga inicial. 0. 0). Ejercicio Nº 3: Construya una red de Petri para especificar el funcionamiento de una máquina expendedora de bebidas. Definiciones 23 . 0. 1. = (w1. 1.

Ejercicio Nº 6: Usando alguna de las extensiones estudiadas.Apunte de Redes de Petri Cuando se le ingresa una moneda y hay bebidas. Cuando se aleja el tren. construya una Redes de Petri que describa el siguiente problema: Un proceso despachador de mensajes recibe mensajes provenientes de dos canales diferentes. Cuando un tren se acerca. b. el despachador envía todo el contenido del buffer a una unidad de procesamiento a través de otro canal. Como Definiciones 24 . El buffer puede contener hasta diez mensajes. Si la paridad es incorrecta. Construya una red de Petri para especificar el funcionamiento de un sistema de control de barreras de un paso a nivel. en caso contrario deben esperar hasta que la barrera sea levantada. Las luces no cambian repentinamente de rojo a verde sino que antes de pasar al verde enciende la luz verde junto con la luz amarilla. Si la barrera está elevada. Asegúrese que la red no permita transiciones que no son posibles. envía un aviso de no-reconocimiento del mensaje a través de un canal de respuesta (existe un canal de respuesta por cada canal de entrada). Por ejemplo. No se pueden colocar mensajes en un buffer lleno. éste es detectado por un sensor que ocasiona que se baje la barrera del paso a nivel. es detectado por otro sensor que ocasiona que se eleve la barrera. los vehículos que lleguen al paso a nivel pueden pasar a través de él.a. si la paridad es correcta. arribe un tren y un vehículo. Cada filósofo tiene frente a él un plato donde servirse y entre cada uno de ellos un palillo chino. y se le dé el paso al vehículo antes de bajar la barrera. Ejercicio Nº 5: a. coloca el mensaje recibido en un buffer. Verifique que el modelo construido no permita la situación en la que la barrera se encuentre alta. Construya una red de Petri para especificar el funcionamiento de un sistema de control de barreras de un paso a nivel. ¿Cómo modelaría la situación de que cuando no hay más bebidas la máquina retorne la moneda? Ejercicio Nº 4: Existen pequeñas diferencias entre los sistemas de luces de tránsito en diferentes países. el sistema de luces alemán tiene una fase extra en su ciclo. la máquina entrega una bebida y almacena la moneda en el depósito correspondiente. Cuando el buffer está lleno. Verifica la paridad de cada mensaje. Si no es así modifíquelo para que no se dé dicha situación. Ejercicio 7 Resuelva mediante una RdP el siguiente problema: Un grupo de 5 filósofos se encuentran sentados en una mesa circular donde ha sido depositada comida china. Construya una red de Petri que se comporte como el sistema de luces de tránsito alemán.

lo que producirá que los otros filósofos no puedan comer. Para fumarc cada fumador necesita tabaco. Ejercicio 8 Tres fumadores están representados por los procesos F1. F3 y F3. V2 y V3. cuando dispone de estos recursos. papel para tabaco y un fósforo. para comer comida china necesitamos dos palillos. V3 y V3 trabajan en exclusión mutua. F2 tiene papel y F3 tiene fósforos. otro problema puede surgir y es el que un filósofo obtenga siempre los dos palillos y se mantenga comiendo. V1. dibuje una RdP que represente el problema y sus matrices de incidencia previa y posterior. el fumador fuma un cigarrillo hasta terminarlo y entonces queda elegible para fumar de nuevo.Apunte de Redes de Petri sabemos. sólo uno de los procesos puede trabajar a la vez y el siguiente vendedor no puede trabajar hasta que los recursos suministrados por el vendedor anterior hayan sido consumidos por un fumador. Tres vendedores están representados por los procesos V1. El problema está en que si cada filósofo tiene un sólo palillo en su poder todos los filósofos entrarán en una espera eterna para comer. V2 vende papel para tabaco y fósforos. V1 vende tabaco y papel. A partir de este enunciado. entonces cada filósofo para comer debe tener dos palillos en su poder. Definiciones 25 . y V3 vende fósforos y tabaco. F1 tiene tabaco.

Marcado alcanzable. d.Apunte de Redes de Petri Respuestas a los ejercicios Ejercicio 1 Matriz de incidencia previa (P  t) t1 t2 t3 t4 P1 0 1 0 0 P2 0 1 0 0 P3 0 0 1 0 P4 0 0 0 1 Matriz de incidencia posterior (t  P) t 1 t 2 t 3 t 4 P 1 0 0 0 P 0 0 1 0 P 0 1 0 0 P 0 0 1 0 1 2 3 4 a. c. Marcado no alcanzable. Ejercicio 2 a) no b) no Definiciones 26 . b. Marcado no alcanzable. Marcado alcanzable.

Semáforo alemán Ejercicio 5 Figura 30 Respuesta al ejercicio 5. Ejercicio 7 Matriz de incidencia previa V 1 V 2 V 3 F 1 F 2 F 3 1 1 1 0 0 0 2 0 0 0 0 0 1 3 0 0 0 1 0 0 1 Definiciones 27 . Figura 31 Respuesta al ejercicio 6. Ejercicio 4 Figura 29 Respuesta al ejercicio 4. Ejercicio 6 Se utilizaron RdP coloreadas para identificar los mensajes que circulan por distintos canales. Despachador de mensajes. Sistema de control de barreras de un paso a nivel.Apunte de Redes de Petri Verde Salida de monedas t5 p2 Automóviles para cruzar Rojo Verde p3 Automóviles que cruzaron p1 p7 Depósito Ingresa moneda tprovisorio 1 t1 p1p3 t2 tAmarillo 6 Barrera en alto p4 t2 Depósito de monedas p8 p3 p4 Barrera baja Amarillo Sensor B t3p4 t2 Tren acercándose t4 Bebidas Salida de bebidas t3 Tren alejándose p2 t1 p1 p5 Sensor A p5 t3 p2 p6 p5 t4 Ejercicio 3 Figura 28 Respuesta al ejercicio 3. En rojo los mensajes del canal A y en azul los mensajes del canal B. Máquina expendedora de bebidas.

Apunte de Redes de Petri 4 0 0 0 0 1 0 Matriz de incidencia posterior V 1 V 2 V 3 F 1 F 2 F 3 1 0 0 0 1 1 1 2 1 0 0 0 0 0 3 0 1 0 0 0 0 4 0 0 1 0 0 0 Ejercicio 8 Figura 32 Definiciones Respuesta al ejercicio 8. 28 .

. Conjunto formado por los elementos e1. e2. . . . .Apunte de Redes de Petri Glosario Conjuntos {e1. (por en} extensión) (e|r) Conjunto formado por los elementos e que cumplen la propiedades r (notación por comprensión) ∈ Pertenencia  No pertenencia  Conjunto vacío AUB Unión de los conjuntos A y B AB Intersección de los conjuntos A y B AXB Producto cartesiano de A por B [conjunto de los pares (a. . . en. e2. Definiciones 29 . b). ⇔ Sí y solo sí. . aeA y bEB] A⊂B Inclusión del conjunto A en el conjunto B A⊆B Inclusión o igualdad del conjunto A en el conjunto B Lógica ∃ Existe (cuantificador existencial) ∀ Para todo (cuantificador universal) ⇒ Implica.

........................8 ESTRUCTURA BÁSICA...................................Apunte de Redes de Petri Índice de imágenes FIGURA 1 FIGURA 2 FIGURA 3 FIGURA 4 FIGURA 5 FIGURA 6 FIGURA 7 FIGURA 8 FIGURA 9 FIGURA 10 FIGURA 11 FIGURA 12 FIGURA 13 FIGURA 14 FIGURA 15 FIGURA 16 FIGURA 17 FIGURA 18 FIGURA 19 FIGURA 20 FIGURA 21 FIGURA 22 FIGURA 23 FIGURA 24 FIGURA 25 FIGURA 26 FIGURA 27 FIGURA 28 FIGURA 29 FIGURA 30 NIVEL...................................................................31 RESPUESTA AL EJERCICIO 8............................. SISTEMA DE CONTROL DE BARRERAS DE UN PASO A 31 RESPUESTA AL EJERCICIO 6................... ATRIBUCIÓN.....................................10 ESTRUCTURA BÁSICA........................................................ CONFLICTOS..............................................20 TÉCNICA DE TRANSFORMACIÓN DE VALIDACIÓN.........................11 ESTRUCTURA BÁSICA.................................................... RECURSOS COMPARTIDOS..17 EXTENSIONES...........................19 TÉCNICA ENUMERATIVA DE VALIDACIÓN........................................ CONJUNCIÓN...................................... DESPACHADOR DE MENSAJES................................................................... DISTRIBUCIÓN........................ SELECCIÓN................................................................................................................ FIGURA 31 FIGURA 32 REPRESENTACIÓN GRÁFICA DE UNA RDP........................................................................................................................................................................... CONCURRENCIA...................32 Definiciones 30 .......................................................... EJECUCIÓN SECUENCIAL......... SEMÁFORO ALEMÁN ...................................................27 RESPUESTA AL EJERCICIO 3..... SINCRONIZACIÓN.............................................................30 RESPUESTA AL EJERCICIO 5.......10 ESTRUCTURA BÁSICA........................................................................30 RESPUESTA AL EJERCICIO 4.................................................................................5 RED DE PETRI CON CUATRO LUGARES Y TRES TRANSICIONES..................................................................................................18 VALIDACIÓN DE UNA RDP...................................................................................................................27 EJERCICIO 2 B...........16 EJEMPLO DE UNA RDP CON SU GRAFO DE ALCANZABILIDAD........................................................................5 EVOLUCIÓN DEL MARCADO DE LA RED DEL EJEMPLO 1........................................................................................15 EJEMPLO DE UNA RDP NO ACOTADA..........................4 TRANSICIÓN VALIDADA....................................................... ARCOS INHIBIDORES..............10 ESTRUCTURA BÁSICA...... MÁQUINA EXPENDEDORA DE BEBIDAS..............13 EJEMPLO DE UNA RDP PSEUDOVIVA.............9 ESTRUCTURA BÁSICA........................................................................4 LUGAR ACTIVO..................................................................................9 ESTRUCTURA BÁSICA.....4 TRANSICIÓN SENSIBILIZADA..........................................................14 EJEMPLO DE UNA RDP NO REVERSIBLE..........................................26 EJERCICIO 2 A...21 EJERCICIO 1............................................................................10 ESTRUCTURA BÁSICA............................18 EXTENSIONES................11 EJEMPLO DE UNA RDP NO VIVA...............

Jair Cervantes Canales. volume 14. analysis and applications”. “Colored Petri nets and the invariant method”. Proceedings of the IEEE. Ing. VOL. “Analysis of Asynchronous concurrent systems by timed petri nets”. 1981. 4. “Petri Nets: properties.Apunte de Redes de Petri Bibliografía C. K. Definiciones 31 . Mexico 2005. Ramchandan. Jensen. Representación y aprendizaje de conocimiento con redes de Petri difusas. No. Tadao. Theoretical Computer Science. MIT MAC-TR-120. pp. April 1989. 77. 1974. 317-336. Murata.