Está en la página 1de 63

Deadlock Avoidance for Free Choice Multi-Reentrant Flow Lines

Critical Siphons & Critical subsystems

Contenido
Anlisis
Anlisis

de Redes de Petri

de Sifones Crticos y Bloqueos para sistemas FMRF Matricial de Objetos de Redes de

Calculo

Petri
Ejemplo
2

Anlisis de las Redes de Petri


Lneas de Flujo Reentrantes (MRF) y MRF de Eleccin Libre (FMRF)

Lneas de Flujo Reentrantes (MRF)


Una clase especial de las redes de Petri son los sistemas de flujo de lneas reentrantes mltiples. En estas redes, el conjunto de lugares esta particionado:

= donde:
son los trabajos realizados son los recursos disponibles son las partes entrantes son los productos salientes

Cada parte inicia en PI y termina en un lugar PO. Denotaremos el conjunto de lugares de trabajo J por un tipo de parte j como , tal que J = . El conjunto de transiciones a lo largo del camino j es 1 , 2 , donde 1 y son las transiciones inicial y terminal 4 respectivamente.

MRF de Eleccin Multiple (Free-Choice MRF o FMRF)

Usando los conceptos de los MRF, vamos a generalizarlos para construir redes FMRF con las siguientes propiedades:
1.
2.

, =

En la parte de un camino , 1 \J = y \J =
, = () con , | | 1 , , , , , , = =1

3. 4. 5. 6. 7.

Los lugares , donde | | > 1 son llamados lugares de decisin. Una transicin se dice que es una transicin posterior de p. Un lugar de decisin tiene mltiples transiciones posteriores. Los recursos usados por los lugares de decisin se llaman recursos de 5 decisin.

Anlisis de las Redes de Petri


Esperas Circulares (CW)

Esperas Circulares (CW)

Decimos que el recurso espera por el recurso (denotado por ) si la disponibilidad de es un pre-requisito inmediato para la liberacin de , es decir . Un dgrafo de relaciones de espera es definido como = (, ) donde R es el conjunto de nodos y A = * + es el conjunto de aristas donde existe si (cada representa una transicin en ). Definimos como un R-camino entre y en como el conjunto de RLugares ales que . Entonces se dice que esta esperando por sobre un R-Camino, denotado por , si hay un RCamino entre entre y . Una CW es un conjunto de recursos con > 1, tal que para cada par ordenado , , . Una CW contiene al menos un recurso compartido. 8

El conjunto mas simple de CW es el conjunto de recursos ,

tal que para algn re-nombrado apropiado, se tiene que 1 2 , y para , 1 , .

Una espera circular simple es un circuito simple en y es una CW que no contiene ningn otro CW. Dada una CW = * +, se puede particionar el conjunto de transiciones como = + , donde:

= * | + es el conjunto de transiciones de entrada de con arcos de entrada desde algn otro .

+ = * | = + es el conjunto de transiciones de entrada de sin arcos de entrada de ningn otro .

Podemos decir que las transiciones estn en la CW C.

Grafo
R1

M1

B1

B2

B3

M2

R2

CW simple

R1

M1

B2

B3
10

El conjunto de trabajos de CW = * + esta dado por = =1 ( ). Se puede particionar este conjunto como = donde:

0 +

= * ()| , + = * ()| + , +

Note que para los FMRF, se puede tener que + 0 . De hecho, si () es un lugar de decisin y C es un CW simple, por ejemplo, | | > 1 de manera que p tiene mas de una transicin posterior, entonces + y 0 .

11

12

Anlisis de las Redes de Petri


Marcado y vectores de Lugares

13

Marcado

El marcado m de un lugar p se denota como (). El marcado m de un conjunto de lugares S se denota como (), este indica el numero de marcas en todos los lugares.

Vector de Lugares

Un vector de lugares de una red (o un vector p), se denota como y tiene dimensin ||. Cualquier conjunto S de lugares de una red puede ser representado como un vector asignando 1 a las posiciones del vector correspondientes a los lugares de S y 0 a los dems. Un vector de marcado de una red denotado por = , 1 2 - y entrega el marcado en cada lugar.14

Vector de Transiciones

Un vector de transiciones de una red (o un vector x), se denota como y tiene dimensin ||.

Cualquier conjunto R de transiciones de una red puede ser representado como un vector asignando 1 a las posiciones del vector correspondientes a las transiciones de R y 0 a los dems.

P-Invariantes

Son vectores de lugares. Se denotan como . Un tipo de pinvariante es dado por un recurso y todos sus lugares, el soporte de estos P-invariantes es el conjunto = ().

15

Anlisis de las Redes de Petri


Bloqueo Circular

16

Bloqueo Circular CB

Es una espera circular la cual esta vaca y siempre permanece as. Esto es, para una CW = * +:

= 0

No se agregaran marcas a mara ningn marcado alcanzable desde .

En estas situaciones se dice que hay un bloqueo, donde los recursos en CW estn esperando por otros recursos que no van a estar disponibles otra vez. Si un recurso en una parte de un camino esta involucrada en un CB, entonces toda la actividad a travs de esa parte del camino eventualmente terminara (estos nunca volvern a ser realizados). Sea = * + un conjunto disjunto de CW, entonces se dice que 17 esta en un CB si cada CW esta en CB.

18

Anlisis de las Redes de Petri


Sifones

19

Sifn

Un sifn es un conjunto de lugares S que satisfacen que:

Un sifn tiene la propiedad de que si se desmarca, nunca vuelve a ser marcado.

Un sifn minimal de una CW C es el sifn mas pequeo contenido en la CW. Un sifn crtico para una CW C es el sifn mas pequeo el cual tiene la propiedad de que un CW es una CB si y solo si el sifn crtico se vaca.
Para sistemas MRF, por cada CW C, el conjunto de lugares = ()+ es un sifn minimal as como un sifn critico.
20

En sistemas FMRF, este sigue siendo un sifn minimal, pero no puede ser usado para anlisis de bloqueo por los lugares de decisin.

Lema 1:

Para sistemas FMRF, es un sifn minimal para la CW C.

Lema 2:

Sea C un CW simple y contiene un lugar de decisin el cual esta asociado a un recurso que no esta compartido. Entonces contiene un p-invariante que nunca ser vaciado.

21

22

Anlisis de Sifones Crticos y Bloqueos para sistemas FMRF


Sifones Crticos en FMRF

23

Sea el conjunto de todos las CW simples en un sistema FMRF. Sea un lugar de decisin con el lugar de recurso = (). Definimos el conjunto de todas las CW simples en contenidas en el recurso de decisin como:

= * | +

(6)

Dado la CW C, el conjunto de lugares de decisin es:

= | | > 1+
Defina :

(7)

() = * | +

(8)

El cual es la clave para analizar el bloqueo en sistemas FMRF.


24

Debemos de calcular recursivamente () ya que cada CW simple en () puede contener mas recursos de decisin, y por lo tanto necesitamos un algoritmo para calcular .

25

El algoritmo calcula () para una sola CW, y cuando este termina el resultado es: = ( ())

El resultado puede ser alguno de estos dos:


a) ( )+ b) ( )+
0 0

Se probara que en el caso b, () nunca estar en un CB y por lo tanto no hay CW en () la cual este en CB.

26

Sea la relacin ~ , si existe un recurso tal que r con las siguientes propiedades:
1.
2. 3.

C~C

(Reflexividad)

Si C~ entonces ~ (Simetra) Si C~ y ~ , no se garantiza que ~ (No es transitiva)

Defina la relacin C si existe un conjunto de CW tal que ~1 ~ ~ ~ con las siguientes propiedades
1.
2. 3.

Si C entonces Si C y , entonces = * : +

(Reflexividad) (Simetra) (Transitividad) = ( )


27

Las clases de equivalencia de es: Por lo tanto es una relacin de equivalencia y ~ no lo es.

Corolario 1:

Para una CW simple (), ( ).

Lema 3:
1. 2.
3.

() es un CB si y solo si:
( )+ =0
0 0

Por cada (), ( ) con 0,

Lema 4:
1.
2.

Para MRF, , esta en un si y solo si:


=0
0
28

Por cada (), ( ) con 0,

Lema 5: = ( )+

Para cualquier CW , definido por: Es un sifn minimal para .

Lema 6: contiene un p-

Si ( )+ , entonces 0 invariante y nunca podr ser vaciado.

Teorema 1:
0

Dado y sea ( )+ es un CB si y solo si es vaciado.

= , entonces

29

Teorema 2:
0

Sea ( )+ en un CB.

, entonces

nunca estar

Lema 7:
1.

Dada una CW = * +, entonces: ()0 ( ())0


2.

( )+

()+ \()0

0
+

= entonces

Teorema 3:

Si ( )+ = entonces la CW es un CB si y 0 solo si esta en CB.


30

31

32

Anlisis de Sifones Crticos y Bloqueos para sistemas FMRF


Subsistemas Crticos en FMRF

33

Para evitar bloqueos, se debe limitar el trabajo en proceso (Work in Progress o WIP) dentro de un subsistema critico especifico que esta construido usando sifones crticos, llamado MAXWIP. En caso de los FMRF, los subsistemas crticos para una CW pueden ser definidos si ( )+ 0 = , y en este es definido como el conjunto de J-lugares ( ())0 .
Defina el conjunto = ( ())0 llamado el soporte del p-invariante binario que cubre mnimamente a

Lema 8: En FMRF, un CW simple no es un bloqueo si y solo si se tiene que: < ( ).


0
34

35

La condicin ( ) puede ser dadas en trminos del marcado inicial de (), debido a que para los FMRF, el marcado inicial asigna marcas a los lugares R y PI nicamente.

Se pueden evitar bloqueos de un CW simple asegurando que el marcado en los subsistemas crticos es menor al marcado total de los recursos iniciales en (). Para analizar sistemas FMRF y todas sus estructuras de bloqueos posibles, necesitamos identificar el conjunto de todas las CWs (CW simples y CWs compuestas por uniones disjuntas de CW, que son uniones a travs de recursos compartidos a travs de CW simples). Este conjunto se denota como .

36

Lema 9:

No existe un CB en sistemas FMRF si por cada , el conjunto () no es un CB.

Lema 10: es menor que el marcado

En FMRF, no hay un CB en el sistema si y solo si, por cada , se tiene que inicial en ().
0

37

Calculo Matricial de Objetos de Redes de Petri


Representacin Matricial

38

El Framework Matricial para computar objetos estructurales de una Red de Petri provee una manera eficiente manera de hacer anlisis basado en computadoras.

Vamos a particionar el vector de la siguiente manera: =


Con , , ,

De forma similar vamos a particionar la matriz de incidencia de entrada: = . Note que = 0, una matriz de ceros (no hay transiciones de salida en PO). De forma similar vamos a particionar la matriz de incidencia de salida: = . Note que = 0, una matriz de ceros (no hay transiciones de entrada en PI).

39

Calculo Matricial de Objetos de Redes de Petri


Algebra Or/And para calcular objetos de Redes de Petri

40

Dadas las matrices Booleanas = , - y = , -, definimos el algebra de matrices Or/And lgica donde las operaciones de adicin se sustituyen por el Or lgico y la multiplicacin por la operacin lgica And. El producto de matrices es definido por = con: = 1 1 2 2 3 3 La suma de matrices es definida por = con: =

41

Lema 11:

Lema 12:

Calculo de las matrices de pre y pos conjuntos de redes de Petri para lugares:
1.

Sea el conjunto de lugares de trabajo:


a)

Calculo de las matrices de pre y pos conjuntos de redes de Petri para transiciones. Sea el conjunto de transiciones:
1. 2. 3.

es representado por el vector .

es representado por el vector es representado por el vector es representado por el vector

b)
2.

es representado por el vector .

Sea el conjunto de lugares de recursos:


a)
b)

es representado por el vector .


es representado por el vector .

4.

es representado por el vector


42

Calculo Matricial de Objetos de Redes de Petri


Esperas Circulares (CW) en forma matricial

43

Un dgrafo de relacin de espera para un MRF se define como = ( ) . Cada elemento 1 en en , representa que el dgrafo tiene un arco desde un recurso i hasta un recurso j. Las CW aparecern como ciclos en el dgrafo. Las CW simples no contendrn ciclos mas pequeos.

se usara para calcular todos los CW simples en sistemas MRF usando un enfoque de algebra de cadenas binarias, el . cual entregara como salida una matriz
44

. Cada CW es representada como una fila en la matriz En la matriz , cada entrada de 1 en la posicin (, ) significa que cada recurso j esta incluido en la i-esima CW simple.

Definimos (como dual de ), que es el dgrafo de transiciones, como: = ( ) .

es un dgrafo que tiene arcos de una transicin a (evitando un recurso ( )).


45

Cada 1 en los elementos de representa que el dgrafo tiene un arco de la transicin i a la transicin j. Cada 1 puede identificar los ciclos entre transiciones usando un algebra de cadenas que nos dara como salida la matriz .

Podemos decir que esta en una CW si .


Aun as, no seremos capaces de identificar que conjunto de ciclos de transiciones corresponden a que conjuntos de ciclos de recursos.

46

Para poder hacer esto, definimos: =

Donde es una matriz de ceros de y es una matriz de ceros de , donde:

es el numero de recursos (o filas ) de ( ).

es el numero de transiciones (o filas) de . es un dgrafo de transiciones T y recursos R.

Este

Usando la matriz del dgrafo con el algoritmo dado en [3] de algebra de cadenas binarias, obtenemos el conjunto = , - donde:

es el conjunto de CW simples de recursos. es el conjunto de CW simples de transiciones.


47

Para encontrar el conjunto completo de CW simples y la unin de CW simples no disjuntas, usamos el algoritmo de Gurel [2] el cual entrega la matriz .

G provee un conjunto de CW (filas) compuestas por uniones de CW simples (columnas). Entonces, podemos calcular el conjunto de ciclos de recursos y ciclos de transiciones usando las siguientes construcciones:
=

(13) (14)

* denota una CW simple, mientras que y se refieren a todas las CW (simples y sus uniones).

48

Calculo Matricial de Objetos de Redes de Petri


Algoritmo de Matrices para calcular ()

49

Aplicando la propiedad de , | | 1 de los FMRF para calcular () usando matrices. Para hacer esto primero calculamos y () por cada CW como se requiere para correr el algoritmo 1:

50

Despues de calcular , () y el () inicial, usamos el algoritmo 1 para calcular recursivamente () (el algoritmo 1 solo calcula el conjunto () para el considerado).

Despus, el conjunto es convertido en filas usando la unin de todas las filas de ().
El mismo proceso es usado para las otras CW en el sistema para obtener el conjunto completo de () para todas ellas.

51

Calculo Matricial de Objetos de Redes de Petri


Sifones Crticos y Subsistemas Crticos en forma de Matriz.

52

y son los conjuntos de transiciones de entrada y de salida para una CW . Una vez que es construido, usamos el algoritmo 2 y luego el 1 para construir () para cada . () y son los conjuntos de transiciones de entrada y salidas de (). Para formularlos como matrices, denotaremos respectivamente () y () .

Estos se calculan como:


()

= () = ()

(15) (16)
53

()

Para encontrar el conjunto de transiciones ( ()) entre recursos en el conjunto () usamos: = () ()

(17)

El subsistema critico ( ())0 para un esta dado por: ( ())0 = (18)

Los conjuntos de trabajos del sifn ( ())+ esta dado por: ( ())+ = ()
()

()

(19)

54

Ejemplo

55

Para ilustrar el mtodo, as como la capacidad de la formulacin en forma matricial, se usara el ejemplo de la figura de ejemplo usada.

Esta figura posee 3 lugares de decisin (B1, B2 y B3).

56

Se calcularan las matrices relevantes para calcular los lugares J de los sifones y los subsistemas crticos con las siguientes matrices:

57

Posteriormente, se calculan los conjuntos de CW en el sistema usando el algebra de cadenas binarias y los algoritmos presentados.

El conjunto () esta dado por:

58

Finalmente, se calculas los trabajos del sifn y los subsistemas crticos usando las ecuacioens (18) y (19) para obtener:

59

60

Preguntas?
61

Gracias!
62

Referencias

[1] Ballal, P.; Lewis, F.; Mireles, J.; Sreenath, K., "Deadlock avoidance for free choice Multi-Reentrant Flow Lines: Critical Siphons & Critical Subsystems," Control & Automation, 2007. MED '07. Mediterranean Conference on , vol., no., pp.1,8, 27-29 June 2007

[2] Lewis F., Gurel A., Bogdan S., Docanalp A. Pastravanu O., Analysis of deadlock and circular waits using a matrix model for flexible manufacturing systems, Automatica, vol.34, no. 9, September 1998.
[3] Mireles J., Lewis F., Gurel A., Implementation of a deadlock avoidance policy for multipart reentrant flow lines using a matrix-based discrete event controller, Proceedings of the International symposium on advances in robot dynamics and control, New Orleans, November 2002.

63

También podría gustarte