Upload
vrcatc884
View
220
Download
4
Embed Size (px)
DESCRIPTION
redes petri
Citation preview
Apunte de Redes de Petri
Teora de Redes de Petri
Autores:Prog. Catalina SalvatiProg. Leandro Cofre
Prog. Francisco SurezBase terica del proyecto final de la carrera de Lic. en Sistemas
Universidad FASTA Bariloche
ndice1Introduccin
2Contenido
3Definiciones
3Definicin formal
3Ejemplo:
4Representacin
4Representacin grfica
5Representacin matricial
6Marcado
6Evolucin de marcado
8Estructuras bsicas
8Seleccin
8Atribucin
8Distribucin
9Conjuncin
9Ejecucin Secuencial
9Sincronizacin
10Concurrencia
10Conflictos recursos compartidos
11Arcos inhibidores:
12Propiedades
12Propiedades estructurales
12Grafo de estados
12Grafo marcado
12Red de libre eleccin
12Red simple
12RdP Pura
12Red de Petri Acotada Estructuralmente
12Red de Petri Estructuralmente Viva
12Red de Petri Completamente Controlable
13Red de Petri Estructuralmente Conservativa
13Red de Petri (parcialmente) Repetitiva
13Red de Petri (parcialmente) Consistente
13Propiedades de comportamiento
13Vivacidad
14Ciclicidad
15Acotamiento o limitacin
16Conservatividad
16Alcanzabilidad
18Mtodos de Anlisis
18Tcnicas Enumerativas
19Tcnicas de Transformacin
19Tcnicas Estructurales
21Tipos de red
21RdP con peso
21RdP con Tiempo
21RdP coloreadas
22RdP jerrquicas
22Estocsticas
23Ejercicios
23Ejercicio N 1:
23Ejercicio N 2:
24Ejercicio N 3:
24Ejercicio N 4:
25Ejercicio N 5:
25Ejercicio N 6:
25Ejercicio N 7:
26Ejercicio N 8:
26Ejercicio N 9:
26Ejercicio N 10:
27Respuestas a los ejercicios
27Ejercicio 3:
27Ejercicio 4:
28Ejercicio 5:
28Ejercicio 6:
29Ejercicio 7:
29Ejercicio 8:
29Ejercicio 9:
30Ejercicio 10:
31Glosario
31Conjuntos
31Lgica
32ndice de imgenes
33Bibliografa
IntroduccinLas Redes de Petri (RdP) son una teora matemtica postulada por el alemn Carl Adam Petri que proporciona una herramienta grfica de modelado para la descripcin formal de sistemas cuya dinmica se caracteriza por la concurrencia, sincronizacin, exclusin mutua y conflictos, las cuales son caractersticas tpicas de sistemas distribuidos.
La principal aplicacin de las redes de Petri es el modelado y el anlisis de sistemas con componentes concurrentes que interactan. Un modelo es una representacin de las caractersticas ms importantes de un sistema de estudio. Manipulando esta representacin, se pueden obtener nuevos conocimientos del sistema modelado sin ningn coste o peligro para el sistema real. Sin embargo, el modelado por s solo sirve de poco, es necesario analizarlo posteriormente.
El sistema se modela primero como una RdP y luego, se analiza. Este anlisis conlleva a una mejor comprensin del comportamiento del sistema modelado. Para realizar el anlisis de las propiedades de una red de Petri se han desarrollado diferentes tcnicas, que permiten la verificacin de las propiedades que el sistema construido posea.Las RdP se han utilizado en distintas reas de aplicacin como en qumica, redes informticas, Inteligencia artificial, trnsito, etc.ContenidoEn este documento, se describen los fundamentos de la teora de redes de Petri.
En la primer parte se ven las definiciones bsicas de RdP y los modos de representacin.
En la parte de ejemplos de estructuras bsicas, se describe el modo de representar algunos casos comunes.
Tambin se darn a conocer las propiedades, extensiones y mtodos de anlisis.
Finalmente se proponen ejercicios para resolver.DefinicionesUna RdP est formada por lugares y transiciones unidos alternativamente por arcos dirigidos. Un lugar puede o no contener marcas. El conjunto de marcas asociadas a cada uno de los lugares en un momento dado, constituye un marcado de la RdP. Para la descripcin funcional de sistemas concurrentes los marcados representan estados y las transiciones sucesos, que dependen del cumplimiento de determinadas condiciones.
Definicin formal
Se define a una Red de Petri como una 4-upla:
RdP = (P, T, F, M0), donde:P = {p1, p2, pm} es un conjunto finito no vaco de lugares
T = {t1, t2, , tn} es un conjunto finito no vaco de transiciones
P ( T = (F (P X T) U (T X P) es un conjunto de arcos dirigidos, donde para cada transicin obtenemos dos funciones Input(t) y Output(t):
I(ti) = {px, , py} conjunto de los lugares de entrada de la transicin ti
O(ti) = {px, , py} conjunto de los lugares de salida de la transicin tiMi: P({0,1,2,} es el marcado inicial de la red // define un nmero inicial de marcas por lugar.Ejemplo:
R1 = (P, T, F, M)
P = { p1, p2, p3, p4 }T = {t1, t2, t3}I(t1) = { p1}
I(t2) = { p2}
I(t3) = { p2 }
O(t1) = { p2}O(t2) = { p3}O(t3) = { p4 }M0 (P) = (5, 0, 0, 0)Representacin
Toda herramienta de modelado tiene una o mas formas de ser representada. En el caso de las RdP se pueden encontrar, una representacin grfica y otra matricial.
Representacin grfica
A una RdP podemos asociarle un grafo dirigido con dos clases disjuntas de nodos, los lugares y las transiciones. Un crculo representa un lugar, una barra representa una transicin y un arco dirigido conecta lugares y transiciones. Algunos arcos van desde un lugar a una transicin y otros desde una transicin a un lugar. Un arco dirigido desde un lugar p a una transicin t, define p como un lugar de entrada para t. Un lugar de salida se indica con un arco desde la transicin al lugar.Los arcos se etiquetan con sus pesos (enteros positivos). Si una de esas etiquetas se omite, significa que el arco tiene peso uno. Las marcas se representan como puntos negros en los lugares.
Figura 1 Representacin grfica de una Rdp.Dada la RdP del Ejemplo anterior, obtenemos la representacin grfica:
Figura 2 Red de Petri con cuatro lugares y tres transiciones.
Representacin matricial
Una transicin tiene un determinado nmero de lugares de entrada (o precondiciones) y de lugares de salida (o postcondiciones). Cada uno de estos se puede representar por una matriz binaria de dos dimensiones, donde las columnas representan las transiciones, las filas los lugares y las celdas la conexin entre ambas. Las matrices reciben los nombres de Matriz de incidencia previa y Matriz de incidencia posterior respectivamente.Podemos decir que una RdP N se encuentra definida matricialmente por medio de dos matrices.
Sea n = |P| (nmero de lugares de P) y m = |T| (nmero de transiciones de T).
Se denominan:
Matriz de incidencia previa: C = [cij]nm en la que cij = Pre(pi, tj).
Matriz de incidencia posterior: C+ = [c+ij]nm en la que c+ij = Post(ti, pj).
Matriz de incidencia de N: C = C+ C.
Siguiendo con el ejemplo de la definicin, obtenemos la matriz de Incidencia previa y matriz de incidencia posterior:C- = Pre(pi, tj) =100C+ = Post(pi, tj) =000
011111
000000
000000
Sea N una RdP, donde t T y p P. 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, p) > 0}Conjunto de transiciones de entrada a p : p = {t T | Post(t, p) > 0}Conjunto de transiciones de salida de p : p = {t T | Pre(p, t) > 0}
Marcado
Un marcado es una funcin que asigna a cada lugar un entero no negativo (marca), de forma que decimos que un lugar p est marcado con k marcas, si el marcado asigna al lugar p un entero k. Los lugares que contienen marcas se consideran lugares activos.
Figura 3 Lugar activo.Un marcado M se representa mediante un vector con tantos componentes como lugares tenga la red. La cantidad de marcas en el lugar p ser M(p).Una RdP marcada es un par (N, M) formado por una RdP N y un marcado M.El marcado de la RdP del ejemplo 1 :
M0 =5
0
0
0
Evolucin de marcado
A las transiciones se les asocian eventos (funciones lgicas de las variables de entrada). El marcado cambia al disparar las transiciones. Para disparar una transicin ha de estar validada y sensibilizada.
Una transicin se dice que est sensibilizada cuando todos sus lugares origen estn marcados.
Figura 4 Transicin sensibilizada.Formalmente, una transicin t T est sensibilizada (habilitada) para un marcado M dado, sii p t se verifica M(p) Pre(p, t).Cuando ocurre un evento asociado a una transicin, se dice que la transicin est validada.
Figura 5 Transicin validada.
Regla de evolucin del marcado:
Si t est habilitada para un marcado M entonces t puede dispararse. Cuando una transicin se dispara desaparecen las marcas de los lugares origen y se aade una marca a cada uno de los lugares destino. En la operacin se alcanza un nuevo marcado M0, y se denota por M[t] > M0, el cual resulta de quitar Pre(p, t) marcas de cada lugar p t y aadir Post(t, p) marcas a cada lugar p t. El cambio en el marcado esta dado por la ecuacin:M0(p) = M(p) Pre(p, t) + Post(t, p), p PCada disparo de una transicin modifica la distribucin de las marcas, y por ello produce un nuevo marcado en la red.
Siguiendo con el ejemplo de la definicin, al disparar la transicin t1, obtenemos:
M0-Pre(p, t)+Pos(t, p)=Mf
51000004
00111111
00000000
00000000
Figura 6 Evolucin del marcado de la red del ejemplo 1.Estructuras bsicasSeleccin
Selecciona el proceso a ejecutar
Figura 7 Estructura bsica. Seleccin.Atribucin
Ejecucin independiente de un proceso por dos procesos distintos
Figura 8 Estructura bsica. Atribucin.Distribucin
Ejecucin de procesos paralelos o concurrentes
Figura 9 Estructura bsica. Distribucin.Conjuncin
Sincronizacin de procesos en paralelo.
Figura 10 Estructura bsica. Conjuncin.Ejecucin Secuencial
La transicin t2 puede ser disparada siempre que sea antes disparado t1.
Figura 11 Estructura bsica. Ejecucin secuencial.SincronizacinLa transicin t1 estar habilitada para ser disparada ( todos los nodos de entrada de la transicin t1 poseen al menos una marca en cada uno de ellos.
Esto ocurre principalmente en la electrnica. Ej: El en circuito AND las dos entradas producen una salida lgica.
Figura 12 Estructura bsica. Sincronizacin.Concurrencia
Las transiciones t2 y t3 son concurrentes. Con esta propiedad, las RdP es capaz de modelar sistemas de control distribuido con mltiples procesos ejecutndose concurrentemente.
Figura 13 Estructura bsica. Concurrencia.Conflictos recursos compartidosLas RdP permiten modelar sistemas donde un recurso es compartido por dos procesos de forma que el uso del recurso durante la ejecucin de un proceso impide que dicho recurso sea utilizado por el otro proceso.Un recurso compartido se modela mediante un lugar con una marca inicial y transiciones en conflicto.
Figura 14 Estructura bsica. Conflictos.Tanto la transicin t1 como t2 estn listas para ser disparadas, pero el disparo de alguna de ellas produce que la otra transicin quede inhabilitada para ser disparada.
Arcos inhibidores: Estos tipos de arcos se relacionan con la transicin a ser inhibida y con el lugar que, de tener una marca, va a impedir el disparo de la transicin.
Figura 15 Estructura bsica. Arcos inhibidores.
Propiedades
En las RdP podemos encontrar propiedades estructurales, que dependen de la estructura topolgica de las RdP, independientes del marcado inicial y, las propiedades de comportamiento que s dependen del marcado inicial
Propiedades estructurales
Grafo de estados
Un grafo de estado (GE) o mquina de estados (ME) es una RdP que cumple:
t T, |t| = |t| = 1Grafo marcado
Un grafo marcado (GM) o grafo de sincronizacin es una RdP que cumple:
p P, |p| = |p| = 1Red de libre eleccin
Una RdP de libre eleccin (RLE) es una RdP que cumple:
p P, si |p| > 1, entonces t p, |t| = 1
Red simple
Una RdP simple (RS) es una RdP que cumple:
p1 p2 = p1 p2 o p1 p2 para toda p1, p2 P.RdP PuraUna RdP N es una red pura si no existe ninguna transicin que tenga un lugar que sea al mismo tiempo de entrada y salida de la transicin:
tj T , pi P, Pre(pi, tj) Post(tj , pi) = 0
Red de Petri Acotada Estructuralmente
Una red de Petri est acotada estructuralmente si est acotada para cualquier marcado inicial finito.
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.
Red de Petri Estructuralmente VivaUna red de Petri est estructuralmente viva si existe algn marcado inicial para el que est viva.
Red de Petri Completamente ControlableUna red de Petri se dice completamente controlable si cualquier marcado es alcanzable desde cualquier otro marcado.
Red de Petri Estructuralmente Conservativa
Una red de Petri es estructuralmente conservativa si, para cualquier marcado inicial M0 y un marcado alcanzable M R(M0), existe un vector x (n 1) tal que xi0, para cualquier i = 1,...,n, y xtM = xtM0.Red de Petri (parcialmente) RepetitivaUna red de Petri es (parcialmente) repetitiva si existe un marcado finito M0 y una secuencia de disparo s tal que (alguna) toda transicin ocurre un nmero infinito de veces en .
Red de Petri (parcialmente) ConsistenteUna red de Petri es (parcialmente) consistente si existe un marcado finito M0 y una secuencia de disparo s cclica (desde M0 a M0 tal que (alguna) toda transicin ocurre al menos una vez en .Propiedades de comportamientoVivacidadUna transicin t est viva para un marcado inicial dado M0, sii existe una secuencia de disparos a partir de un marcado M sucesor de M0 que comprenda a t :
M M(R, M0) : M M0 tal que t .Una RdP marcada est viva para M0 sii todas sus transiciones son vivas para M0.
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), ya que, para que est viva, todas sus transiciones deben ser disparables desde cualquier marcado alcanzable. Se dice que una RdP marcada est parcialmente viva para M0 si, tomando como punto de partida cualquier marcado alcanzable a partir de M0, existe al menos una transicin disparable y otra transicin no viva. Toda RdP marcada parcialmente viva tiene la posibilidad de evolucin global, independientemente de que existan transiciones que no puedan ser disparadas.
Ejemplo: Una red de Petri no viva.
Figura 16 Ejemplo de una RdP no viva.Para la secuencia de disparos t1, t2, t1, t2, no hay bloqueo. Si ahora se disparan las transiciones t1, t3, t4, ya no se puede disparar ninguna transicin ms, la red queda bloqueada.
Podemos tener redes pseudo-vivas en las que existen algunas transiciones vivas y no se bloquea totalmente.
Ejemplo: RdP Pseudoviva
Figura 17 Ejemplo de una RdP pseudoviva.CiclicidadSe dice que una RdP posee un comportamiento globalmente cclico 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, M0), tal que M M0.
La ciclicidad o reversibilidad de una RdP marcada garantiza que no existen subconjuntos finales de estados (marcados). 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.Ejemplo de una red no reversible:
Figura 18 Ejemplo de una RdP no reversible.Esta RdP es pseudoviva, adems no tiene la propiedad de reversibilidad ya que el marcado inicial no se puede obtener jams.Acotamiento o limitacinEl significado de esta propiedad es el de asegurar que el sistema que una red representa posee un nmero 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). Luego la propiedad de acotamiento determina la finitud del nmero de estados del sistema representado por una RdP.
Un lugar p es k-acotado para M0 sii existe un nmero entero k tal que M(p) k para cualquier marcado M M(R, M0). Se denomina cota del lugar p al menor entero k que verifica la desigualdad anterior.
Una RdP marcada es k-acotada para M0 sii todos sus lugares son k-acotados para M0:
p P y M M(R, M0), M (p) k. Merece una consideracin especial la 1-acotacin. Si una RdP es 1-acotada para M0, su marcado es binario (un lugar est o no est marcado) y se dir que la RdP es binaria para M0. Una red segura, es una RdP 1-acotada. Una RdP es estructuralmente acotada si es acotada para cualquier marcado inicial y finito.
Se dice que la red est k-acotada si para todo marcado alcanzable tenemos que ningn lugar tiene un nmero de marcas mayor que k. Las redes 1-acotadas son conocidas como binarias.
Si la red diseada generar ms marcas que las que su acotacin permite el modelado ser errneo.Ejemplo: Una red no acotada:
Figura 19 Ejemplo de una RdP no acotada.ConservatividadLas marcas de una red se pueden entender como recursos del sistema. Normalmente los recursos de un sistema ni se crean ni se destruyen. Cuando las marcas se conservan, tras el disparo de una secuencia de transiciones, se dice que la red es conservativa.
Sea R = (P, T, Pre, Post, M0) se dice que es estrictamente conservativa sii M0 M(R, M0), iM0 (pi) = iM(pi), pi P.Esto es, se ha de mantener el nmero de marcas para cualquier marcado de la red. La definicin anterior implica que el nmero de entradas ha de coincidir con nmero de salidas, es decir: (|I(tj)|) = |O(tj)|), para cada transicin disparable.
AlcanzabilidadLa alcanzabilidad es una base fundamental para estudiar las propiedades dinmicas de cualquier sistema. al dispararse una transicin habilitada, sta cambiar la distribucin del marcado. De esta forma, de una secuencia de disparos resultar una secuencia de marcados, luego un marcado Mn es alcanzable a partir de M0, si existe una secuencia de disparos que a partir de M0 nos lleve a Mn. Una secuencia de disparos la denotaremos por = t1, t2, ....., tn . en este caso Mn es alcanzable desde M0, sii t.q. M0 [i Mn.
Ejemplo RdP y su grafo de alcanzabilidad
Figura 20 Ejemplo de una RdP con su grafo de alcanzabilidad.Mtodos de Anlisis
La validacin consiste en comprobar que se cumplen las propiedades de:- VIVACIDAD; LIMITACIN; REVERSIBILIDAD.
Existen tcnicas para el anlisis de RdP (anlisis cualitativo de redes), que se clasifican normalmente en tres grupos; enumerativas, de transformacin y estructurales.Tcnicas EnumerativasLas tcnicas enumerativas se basan en la generacin del grafo de alcanzabilidad. Estas tcnicas se pueden aplicar en teora, pero en la prctica estn limitadas a sistemas pequeos debido a su elevada complejidad computacional. En el siguiente grafo, los nodos corresponden al marcado alcanzable y los arcos corresponden al disparo de las transiciones. En la figura se muestra una red de Petri y su grafo de alcanzabilidad (Grafo de marcados).
Figura 21 Tcnica enumerativa de validacin.Este grafo puede ser utilizado para mostrar que la red es segura, viva, reversible y que esta tiene dos componentes que se repiten t1, t2,t4 y t1, t3,t5.
Otro ejemplo:
Figura 22 Validacin de una RdP.
M0 : marcado inicial. De este se desprende el comportamiento del sistema.
[M0] : vector de marcados posibles a partir de un marcado inicial. (marcados alcanzables).
Tcnicas de Transformacin
En segundo lugar se tienen las tcnicas de transformacin. En este grupo de tcnicas el objetivo es reducir el tamao de los modelos mediante reglas de reduccin que preserven las propiedades que se quieren estudiar. En la figura puede observarse un conjunto sencillo de seis reglas de reduccin que preservan vivacidad y k-limitacin.
Reglas de reduccin que presentan vivacidad y k-limitacin:
Figura 23 Tcnica de transformacin de validacin.Con este conjunto de reglas es posible reducir la complejidad del clculo de la vivacidad y limitacin de un sistema.
Tcnicas Estructurales
En tercer lugar se tienen las tcnicas estructurales. En este grupo de tcnicas el objetivo es obtener la mxima informacin del modelo utilizando nicamente su estructura y marcado inicial.
Los mtodos de lgebra lineal son utilizados para determinar las propiedades de la red.
La ecuacin de estado de una red de Petri se define:El marcado Mk se define como un vector columna m 1.
La jesima entrada de Mk denota el nmero de seales en el lugar j inmediatamente despus del kesimo disparo en la secuencia de disparos.
El kesimo disparo o vector de control uk es un vector columna de n 1, con n1 ceros y una entrada 1 en la iesima posicin, indicando el disparo de la transicin i.
Esto es, la iesima fila de la matriz de incidencia C denota el cambio de marcado como el resultado del disparo de la transicin i, luego la ecuacin de estado para la red de Petri se escribe como sigue:
Mk = Mk1 + CT uk, k = 1, 2, 3, .
El marcado de una red de Petri puede ser cambiado cada vez que una transicin se dispara. Si no ocurre un bloqueo, el nmero de disparos es ilimitado. Sin embargo, no todos los marcados pueden ser alcanzados y no todas las secuencias de disparos pueden ser llevadas a cabo. Las restricciones son dadas por los invariantes de la red. 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. Los lugares contenidos en este subconjunto son llamados componentes conservativos y el vector que contiene los pesos es P-Invariante. Si el disparo de una cierta secuencia de transiciones resulta en el mismo marcado como cuando inici, la secuencia es llamada componente repetitivo. El vector caracterstico de la secuencia de disparos es el T-Invariante.Tipos de red
RdP con pesoPermite que multiples tokens puedan ser quitados/agregados cuando se dispara una transicin. Las aristas estn etiquetadas con el peso (nmero de tokens). Si no hay ningn valor se asume que es 1.RdP con Tiempo
Las Redes de Petri no incluyen concepto alguno de tiempo, por ello, solamente es posible describir solamente la estructura lgica de los sistemas y no su evolucin temporal.
La introduccin del tiempo en el modelo permite la descripcin de comportamientos dinmicos de los sistemas, considerando la evolucin de estados y la duracin de cada accin tomada por el sistema. Hay mltiples formas diferentes de introducir el concepto de tiempo.
Una primera posibilidad consiste en asociar a cada transicin un nmero que indica, en alguna unidad temporal adecuada, el retardo entre la habilitacin y el disparo de la transicin. Una RdP Temporizada puede ser definida como:
TPN = {P, T, A, M0, Q} donde P, T, A y M0 se definen como antes Q=(q1, q2,,qm) es el conjunto de retardos asociados a las transiciones.Una segunda posibilidad para la introduccin 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. Por ello, cada ficha puede estar en uno de dos estados: disponible y no disponible; solamente fichas disponibles habilitan transiciones. La falta de disponibilidad de una ficha modela el tiempo utilizado desarrollando una actividad. En esta abstraccin, el tiempo es asociado a los lugares.
La adicin de tiempos en las Redes de Petri es un proceso crtico y se deber prestar atencin especial a la comprensin total de la semntica del modelo y a los detalles de su comportamiento.
Existe una amplia variedad de extensiones adicionales, que bsicamente consisten en adicionar tiempos a las diferentes componentes del grafo bipartito que constituye la red.
RdP coloreadasEn general, los tokens representan objetos (recursos, personas, etc) en el modelado de un sistema. Para representar los atributos de estos objetos, se utilizan las RdP coloreadas, donde los colores representan las caractersticas de los objetos modelados. Las transiciones usan los valores de los tokens adquiridos para determinar los valores de los tokens producidos.
Una transicin describe la relacin entre los valores de los tokens. Es posible especificar precondiciones, utilizando el color de los tokens para ser consumidos.RdP jerrquicasLas especificaciones de sistemas reales tienen una tendencia a ser grandes y complejos. Un mecanismo de abstraccin, la estructuracin jerrquica, se utiliza para poder modificar fcilmente el modelo. La construccin jerrquica se llama subred.
Una subred es un agregado de nmero de lugares y transiciones. Se puede utilizar para estructurar grandes procesos. Cada subred se representa con un rectngulo que encapsula parte del modelo general.En determinados niveles, se quiere dar una simple descripcin de un proceso (sin considerar todos los detalles). Pero a otro nivel quizs, se quiera especificar un comportamiento mas detallado.EstocsticasLos modelos de rendimiento tratan de representar el comportamiento de sistemas determinsticos complejos por medio de procesos estocsticos. De esta forma es posible evitar una detallada descripcin determinstica de las operaciones del sistema, sustituyndola por asunciones probabilsticas, que capturen la esencia del sistema.
Las Redes de Petri Estocsticas (SPN) se obtienen asociando con cada transicin en una RdP una variable aleatoria con distribucin exponencial que exprese el retardo desde la habilitacin hasta el disparo de la transicin. Eliminando las variables aleatorias de una SPN se obtiene la RdP asociada.
Consideremos una SPN y un marcado M en el cual mltiples transiciones estn simultneamente habilitadas. La transicin que tiene asociado el retardo ms breve disparar primero. La SPN alcanza un nuevo marcado M, en el cual algunas transiciones estuvieron habilitadas en el marcado M pero que no fueron disparadas y pueden aun estar habilitadas. Debido a la propiedad de falta de memoria de las variables aleatorias exponencialmente distribuidas, obtenemos una distribucin de vida igual a la distribucin del retardo de disparo en s mismo. Se puede asumir que la actividad asociada con cada transicin recomienza con cualquier nuevo marcado. Esto es vlido inclusive cuando se est modelando actividades que se suceden en forma continua: el modelo no siente la repeticin de actividades asociadas con una transicin.
Una definicin formal de una SPN es:SPN = {P, T, A, M0, L} donde P, T, A y M0 se definen como las RdP ordinarias y L=(l1, l2,,lm) es el conjunto de tasas de retardos asociados con las transiciones, posiblemente dependientes del marcado, asociadas con las transiciones de la Red de Petri. Cuando sea necesario, la dependencia con un marcado dado M se representar como lj(M).Ejercicios
Ejercicio N 1:
Represente grficamente a la siguiente RdP:
R1 = (P, T, F, M)
P = { p1, p2, p3, p4, p5, p6, p7, p8, p9}
T = {t1, t2, t3, t4, t5, t6}
I(t1) = { p1}
I(t2) = { p8}
I(t3) = { p2, p5}I(t4) = { p3 }I(t5) = { p6, p7}I(t6) = { p4, p9}O(t1) = { p2, p3}
O(t2) = { p1, p7}
O(t3) = { p6}
O(t4) = { p4}
O(t5) = { p9 }
O(t6) = { p5, p8}M0 (P) = (5, 0, 0, 0)
Ejercicio N 2:
Defina formalmente la siguiente RdP:
Figura 24 Ejercicio nmero 2.Ejercicio N 3:
a. Dada la siguiente RdP, indique cul es la matriz de incidencia previa y la matriz de incidencia posterior.
Figura 25 Ejercicio 1.b. Dado el marcado inicial 0 = (0, 1, 0, 0) indique cules de los siguientes son marcados son alcanzables desde 0.
a. = (w, 1, 0, 0), w >=0
b. = (w1, 0, 1, w2), w1 >=0, w2 >=0
c. = (0, 1, 1, w), w >=0
d. = (w1, 0, 0, w2), w1 >=0, w2 >=0
Ejercicio N 4:
Dadas las siguientes redes de Petri, indicar cules de ellas pueden entrar en deadlock. (si al menos existe un marcado en el cual no se puede disparar ninguna transicin, entonces la red entra en deadlock) En caso de que as sea dar una secuencia de disparos que lleve a esta situacin.
Figura 26 Ejercicio 2 a. Figura 27 Ejercicio 2 b.Ejercicio N 5:
Construya una red de Petri para especificar el funcionamiento de una mquina expendedora de bebidas. La misma tiene un depsito de bebidas con una cierta carga inicial, y un depsito de monedas el cual inicialmente se encuentra vaco.
Cuando se le ingresa una moneda y hay bebidas, la mquina entrega una bebida y almacena la moneda en el depsito correspondiente.
Cmo modelara la situacin de que cuando no hay ms bebidas la mquina retorne la moneda?
Ejercicio N 6:
Existen pequeas diferencias entre los sistemas de luces de trnsito en diferentes pases. Por ejemplo, el sistema de luces alemn tiene una fase extra en su ciclo. 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.
Construya una red de Petri que se comporte como el sistema de luces de trnsito alemn. Asegrese que la red no permita transiciones que no son posibles.Ejercicio N 7:
a. Construya una red de Petri para especificar el funcionamiento de un sistema de control de barreras de un paso a nivel.
Cuando un tren se acerca, ste es detectado por un sensor que ocasiona que se baje la barrera del paso a nivel. Cuando se aleja el tren, es detectado por otro sensor que ocasiona que se eleve la barrera. Si la barrera est elevada, los vehculos que lleguen al paso a nivel pueden pasar a travs de l, en caso contrario deben esperar hasta que la barrera sea levantada.
b. Verifique que el modelo construido no permita la situacin en la que la barrera se encuentre alta, arribe un tren y un vehculo, y se le d el paso al vehculo antes de bajar la barrera. Si no es as modifquelo para que no se d dicha situacin.a. Construya una red de Petri para especificar el funcionamiento de un sistema de control de barreras de un paso a nivel.Ejercicio N 8:
Usando alguna de las extensiones estudiadas, construya una Redes de Petri que describa el siguiente problema: Un proceso despachador de mensajes recibe mensajes provenientes de dos canales diferentes. Verifica la paridad de cada mensaje. Si la paridad es incorrecta, enva un aviso de no-reconocimiento del mensaje a travs de un canal de respuesta (existe un canal de respuesta por cada canal de entrada); si la paridad es correcta, coloca el mensaje recibido en un buffer. El buffer puede contener hasta diez mensajes. Cuando el buffer est lleno, el despachador enva todo el contenido del buffer a una unidad de procesamiento a travs de otro canal. No se pueden colocar mensajes en un buffer lleno.Ejercicio N 9:Resuelva mediante una RdP el siguiente problema:
Un grupo de 5 filsofos se encuentran sentados en una mesa circular donde ha sido depositada comida china. Cada filsofo tiene frente a l un plato donde servirse y entre cada uno de ellos un palillo chino. Como sabemos, para comer comida china necesitamos dos palillos, entonces cada filsofo para comer debe tener dos palillos en su poder.
El problema est en que si cada filsofo tiene un slo palillo en su poder todos los filsofos entrarn en una espera eterna para comer, otro problema puede surgir y es el que un filsofo obtenga siempre los dos palillos y se mantenga comiendo, lo que producir que los otros filsofos no puedan comer.Ejercicio N 10:Tres fumadores estn representados por los procesos F1, F3 y F3. Tres vendedores estn representados por los procesos V1, V2 y V3. Para fumarc cada fumador necesita tabaco, papel para tabaco y un fsforo; cuando dispone de estos recursos, el fumador fuma un cigarrillo hasta terminarlo y entonces queda elegible para fumar de nuevo. F1 tiene tabaco, F2 tiene papel y F3 tiene fsforos. V1 vende tabaco y papel, V2 vende papel para tabaco y fsforos, y V3 vende fsforos y tabaco. V1, V3 y V3 trabajan en exclusin mutua; slo 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.
A partir de este enunciado, dibuje una RdP que represente el problema y sus matrices de incidencia previa y posterior.Respuestas a los ejercicios
Ejercicio 3:Matriz de incidencia previa (P ( t)
t1t2t3t4
P10100
P20100
P30010
P40001
Matriz de incidencia posterior (t ( P)
t1t2t3t4
P11000
P20010
P30100
P40010
a. Marcado alcanzable.
b. Marcado alcanzable.
c. Marcado no alcanzable.
d. Marcado no alcanzable.
Ejercicio 4:a) no
b) no
Ejercicio 5:
Figura 28 Respuesta al ejercicio 5 Mquina expendedora de bebidas.
Ejercicio 6:
Figura 29 Respuesta al ejercicio 6. Semforo alemn
Ejercicio 7:
Figura 30 Respuesta al ejercicio 7. Sistema de control de barreras de un paso a nivel.
Ejercicio 8:Se utilizaron RdP coloreadas para identificar los mensajes que circulan por distintos canales. En rojo los mensajes del canal A y en azul los mensajes del canal B.
Figura 31 Respuesta al ejercicio 8. Despachador de mensajes.
Ejercicio 9:Matriz de incidencia previa
V1V2V3F1F2F3
1111000
2000001
3000100
4000010
Matriz de incidencia posterior
V1V2V3F1F2F3
1000111
2100000
3010000
4001000
Ejercicio 10:
Figura 32 Respuesta al ejercicio 10.
Glosario
Conjuntos{e1, e2, . . . , en}Conjunto formado por los elementos e1, e2, . . . , en, (por extensin)
(e|r)Conjunto formado por los elementos e que cumplen la propiedades r (notacin por comprensin)
Pertenencia
(No pertenencia
(Conjunto vaco
A U BUnin de los conjuntos A y B
A ( BInterseccin de los conjuntos A y B
A X BProducto cartesiano de A por B [conjunto de los pares (a, b), aA y bB]
A BInclusin del conjunto A en el conjunto B
A BInclusin o igualdad del conjunto A en el conjunto B
Lgica
Existe (cuantificador existencial)
Para todo (cuantificador universal)
Implica.
S y solo s.
ndice de imgenes
4Figura 1Representacin grfica de una Rdp.
4Figura 2Red de Petri con cuatro lugares y tres transiciones.
6Figura 3Lugar activo.
6Figura 4Transicin sensibilizada.
7Figura 5Transicin validada.
7Figura 6Evolucin del marcado de la red del ejemplo 1.
8Figura 7Estructura bsica. Seleccin.
8Figura 8Estructura bsica. Atribucin.
9Figura 9Estructura bsica. Distribucin.
9Figura 10Estructura bsica. Conjuncin.
9Figura 11Estructura bsica. Ejecucin secuencial.
10Figura 12Estructura bsica. Sincronizacin.
10Figura 13Estructura bsica. Concurrencia.
10Figura 14Estructura bsica. Conflictos.
11Figura 15Estructura bsica. Arcos inhibidores.
13Figura 16Ejemplo de una RdP no viva.
14Figura 17Ejemplo de una RdP pseudoviva.
15Figura 18Ejemplo de una RdP no reversible.
16Figura 19Ejemplo de una RdP no acotada.
17Figura 20Ejemplo de una RdP con su grafo de alcanzabilidad.
18Figura 21Tcnica enumerativa de validacin.
18Figura 22Validacin de una RdP.
19Figura 23Tcnica de transformacin de validacin.
23Figura 24Ejercicio nmero 2.
24Figura 25Ejercicio 1.
24Figura 26Ejercicio 2 a.
25Figura 27Ejercicio 2 b.
28Figura 28Respuesta al ejercicio 5 Mquina expendedora de bebidas.
28Figura 29Respuesta al ejercicio 6. Semforo alemn
29Figura 30Respuesta al ejercicio 7. Sistema de control de barreras de un paso a nivel.
29Figura 31Respuesta al ejercicio 8. Despachador de mensajes.
30Figura 32Respuesta al ejercicio 10.
Bibliografa
Ramchandan, C.. Analysis of Asynchronous concurrent systems by timed petri nets, MIT MAC-TR-120, 1974.
Jair, Cervantes Canales. Representacin y aprendizaje de conocimiento con redes de Petri difusas. Mexico 2005.Jensen K., Colored Petri nets and the invariant method, Theoretical Computer Science, volume 14, 1981, pp. 317-336.Murata, Tadao. Petri Nets: properties, analysis and applications. Proceedings of the IEEE, VOL. 77, No. 4. April 1989.Peterson, J.L. Petri net theory and the modeling of systems. Prentice-Hall. 1981.PAGE