Resumen: Este artículo incluye la terminología necesaria en un contexto de manufactura para establecer las técnicas de análisis mas novedosas de los Sistemas de Eventos Discretos conteniendo una exclusión mutual. Mas precisamente, nuestro problema general es establecido como sigue: dadas las especificaciones o requerimientos en un Sistema de Manufactura conteniendo una exclusión mutual, construir una red de Petri cuya estructura y marcación inicial garanticen acotamiento, no bloqueo y reiniciabilidad
Palabras clave:sistemas de eventos discretos; redes de Petri; exclusión mutual.sistemas de eventos discretos; redes de Petri; exclusión mutual..
Abstract: This article includes the terminology needed in a manufacturing context, to stablish some analysis techniques of discrete event systems containing a mutual exclusion. More precisely, our problem is expressed as follows: given the specifications or requirements on a system of manufacturing containing a mutual exclusion, built a Petri net which structure and initial marking guarantee it bounded, live, and reversible.
Keywords: discrete event systems; Petri nets; mutual exclusion. .
Análisis de sistemas de manufactura conteniendo una exclusión mutual usando redes de Petri.
Recepción: 01 Julio 2015
Aprobación: 01 Marzo 2016
Un conflicto en un Sistema de Eventos Discreto (SED) ocurre cuando dos o más procesos están listos para ejecutar acciones diferentes que dependen directamente de la utilización de un recurso compartido. Tales acciones o eventos son llamados exclusivos mutualmente en el sentido que ellos no pueden ocurrir al mismo tiempo. De hecho, cuando uno de ellos toma lugar (lo cual significa que un proceso ocupa el recurso) los otros procesos deben esperar por la liberación de dicho recurso.
En este artículo incluiremos la terminología necesaria, en un medio ambiente de manufactura, para establecer algunos conceptos novedosos de síntesis de Redes de Petri (RP) conteniendo una Exclusión Mutual (EM). Mas precisamente, el problema general para la modelación y análisis de sistemas de manufactura usando RP, es expresado como sigue: dadas las especificaciones o requerimientos de un sistema de manufactura conteniendo una exclusión mutual, construir una RP cuya estructura y marcación inicial garanticen acotamiento, no bloqueo y reiniciabilidad.
La organización de este artículo comienza por incluir las definiciones básicas de RP, sus propiedades y la metodología de modelación, lo cual constituye los fundamentos necesarios para nuestro problema. Luego, estableceremos la clasificación de lugares y un par de condiciones para facilitar la representación de la EM; y en consecuencia, expresar los resultados teóricos en este trabajo. Finalmente, presentaremos una aplicación.
Una Red de Petri (RP) es un cuádruple R = (L,T, E, S) donde L = {l1, l2, . . . , ln} es un conjunto finito de lugares, T = {t1,t2, ... ,tk } es un conjunto finito de transiciones, L ∩ T = ∅, E : T → L∞ es una función de entrada: para cada t ∈ T, E(t) ∈ L∞ es llamado multiconjunto de lugares de entrada para t (L∞ denota el multiconjunto con números de ocurrencias ilimitado); y S : T → L∞ es una función de salida: para cada t ∈ T, S(t) ∈ L∞ es llamado multiconjunto de lugares de salida para t.
Ahora, para determinar el comportamiento dinámico de la red damos paso a la representación de estatus de lugares asociando a cada lugar de la red un número natural que especifica un significado preciso de la condición del lugar. Formalmente, una RP marcada es un par M = (R, m), donde R es una RP y m : L→N, N = {0, 1, 2, ...}, es una función de marcación (o marcación): para cada l. ∈ L, m(li) ∈ N es llamado número de fichas en el lugar li; la cual especifica un vector m = (m1, m2, ... , mn), n = cardL, m. ∈ N,i = 1, 2, ... , n con m(li) = mi [1, 2].
Las RP marcadas pueden ser representadas por multigrafos dirigidos bipartitos donde los lugares son representados por círculos y las transiciones por barras. Si un lugar lies un lugar de entrada para una transición t; es decir li ∈ E(t) , entonces hay |li,E(t)| (número de veces que li está en el multiconjunto de lugares de entrada E(t)) arcos dirigidos del correspondiente círculo a la correspondiente barra. Si un lugar lj es un lugar de salida para la transición t; es decir, lj ∈ S(t), entonces hay |lj, S(t)| (número de veces que ljestá en el multiconjunto de lugares de salida S(t)) arcos dirigidos de la correspondiente barra al correspondiente círculo. Finalmente, las fichas son representadas por puntos en el interior del círculo y, en consecuencia, la función de marcación es representada por el número de puntos en el interior de cada círculo.
En relación al comportamiento dinámico de una RP debemos considerar que una marcación representa el estatus de cada uno de los lugares en la red. Así, ésta especifica exactamente el estado actual del sistema que establece las condiciones lógicas para la ocurrencia de eventos, luego, una vez que ocurra un evento las condiciones del sistema varían dando lugar a una nueva marcación o estado. Más precisamente, una transición t ∈ T en una RP marcada M = (R, m) es llamada habilitada si m(li) ≥ |li, E(t)|, para todo lugar li ∈ L. En este caso también diremos que la transición t es habilitada por la marcación m o disparable desde m. El conjunto de transiciones habilitadas por la marcación m es dado por E (m) = {t ∈ T/m(li) ≥ |li, E(t)|,∀li ∈ L}.
Ahora, si t ∈ ℇ(m) entonces la marcación m' dada por m' (li) = m(li) − |li, E(t)| + |li, S(t)|, i = 1, 2, ..., n; n = card., es llamada marcación alcanzable desde m por el disparo de t. Además, si t' ∈ ℇ(m') y esta es disparada obtenemos como antes una marcación m'', y así sucesivamente. Por lo tanto, se obtiene una función de cambio de marcaciones, la cual puede ser extendida de manera natural; es decir, si la función de cambio de marcaciones δ : ℕn × T → ℕn, n = card L, es dada por δ(m,t) = m' donde m' (li) = m(li) − |li, E(t)| + |li, S(t)|, i= 1, 2, ..., n; entonces su extensión es la función parcial : ℕn × T∗ → ℕn, dada por (m, θ) = m y (m, σt) = δ((m, σ),t), m ∈ ℕn,t ∈ T, σ ∈ T∗. Aquí, T∗ denota el monoide libre con unidad θ: T∗ es el conjunto de todas las combinaciones finitas de elementos de T. Finalmente, como es una extensión de δ no haremos distinción notacional entre ambas.
Note que la función parcial de cambio de marcaciones δ está definida en (m,t) sí, y solamente sí, t ∈ ℇ (m).
Por su parte, en una RP marcada M = (R, m.), una marcación m ∈ ℕn, n = cardL, será llamada alcanzable desde m0 sí existe una sucesión de disparos de transiciones σ = tj1 tj2 . . . tjk∈ T∗ tal que δ(m0, σ) = m. Luego, el conjunto de alcanzabilidad de la RP desde la marcación m0 es dado por A(R, m0) = {m ∈ ℕn/∃σ ∈ T∗, δ(m0, σ) = m}.
Ahora incluiremos algunas propiedades de RP las cuales serán útiles en un medio ambiente de manufactura.
Sea M = (R, m0) una RP marcada. Un lugar l ∈ L es llamado k-acotado si existe k ∈ ℕ tal que m(l) ≤ k, para todo m ∈ A(R, m0). Si todos los lugares en la red son k-acotados, entonces la red es llamada k-acotada o simplemente acotada. En particular, si la red es 1-acotada diremos que la red es segura. En manufactura el acotamiento implica, por ejemplo, ausencia de capacidad de desbordamiento y la seguridad determina la disponibilidad o no de un recurso simple.
Por otro lado, la red es llamada no bloqueada (viva) si para toda marcación m ∈ A(R, m0) y toda transición ti ∈ T, existe una marcación m' ∈ A(R, m0) alcanzable desde m tal que ti ∈ ℇ(m'). En la clase de sistemas que nos ocupa, el no bloqueo garantiza que el sistema no se estanca, lo cual implica que éste puede producir exitosamente.
Finalmente, otra propiedad de interés es la reiniciabilidad, la cual garantiza que para toda marcación m ∈ A(R, m0), m0 ∈ A(R, m). En nuestro contexto la reiniciabilidad implica el comportamiento cíclico de un sistema.
Un sistema de manufactura es un conjunto de actividades que interactúan con un conjunto de recursos para obtener un producto. Las actividades son los procesos de fabricación: maquinación, manejo de materiales y procesos de información; que son necesarios para la producción. Los recursos son el personal, las máquinas, los materiales, etc; que son necesarios para la ejecución de las actividades. Un sistema de manufactura incluye, por supuesto, un plan de proceso de producción (programa) que especifica las actividades y los recursos así como también las relaciones de precedencia entre actividades: algunas actividades podrían ocurrir antes que otras. Adicionalmente, el programa puede especificar varios recursos para diferentes actividades y dar prioridad a alguna de ellas para la utilización de estos recursos.
La metodología de modelación para sistemas de manufactura usando RP es fundamentada en las interpretaciones de lugares, transiciones y fichas tal como sigue.
Una ficha en un lugar de actividad específica que la actividad está siendo ejecutada y la ausencia de fichas en el lugar indica que la actividad no está siendo ejecutada. Múltiples fichas indicarán que la actividad está ocurriendo de manera múltiple;
Para cada actividad, crear y etiquetar un lugar para cada recurso que sea necesario para el comienzo de la actividad; luego, conectar todos estos lugares con la transición de comienzo de la actividad mediante arcos dirigidos desde los lugares a la transición de comienzo. Finalmente, crear un arco desde la transición de completación de la actividad a cualquier lugar de recurso que se haga disponible luego de la completación de la actividad.
Si un lugar representa un estatus de recurso, entonces una o más fichas en el lugar indican
En relación a la metodología de modelación considerada en este artículo para sistemas de manufactura, hemos comentado que un lugar representa un estatus de recurso o de operación: si un lugar representa una operación, entonces una ficha en el lugar indica que la operación está siendo ejecutada, ninguna ficha en el lugar indica que la operación no está ocurriendo y múltiples fichas muestran que la operación está ocurriendo de manera múltiple. Sin embargo, cada lugar de operación debe ser seguro ya que la misma operación nunca puede ser ejecutada en la misma máquina más de una vez al mismo tiempo: una operación puede ser dividida en varias sub-operaciones; así, un lugar de operación puede ser reemplazado por una subred en un modelo RP. En lo que sigue usaremos Lo para denotar el conjunto de lugares de operaciones. Ahora, si un lugar representa un recurso entonces el número de fichas en este lugar puede ser constante: robots, máquinas, transportadores, etc; o variable: trabajos, instalaciones, etc. Por lo tanto, podemos dividir los lugares de recurso en dos clases disjuntas: Lf= conjunto de lugares de recursos cuyo número es fijo y Lv = conjunto de lugares de recursos cuyo número es variable. Lv juega un papel clave en el medio ambiente de recursos compartidos: el número inicial de fichas en cada lugar de Lv debe ser determinado de tal manera que el sistema modelado sea libre de estancamiento. Finalmente, hemos particionado el conjunto de lugares L como L = Lo ∪ Lf∪ Lv.
Establecidas las características que definen un sistema de manufactura junto con la metodología de modelación incluida en este artículo, para ésta clase de sistemas es claro que las funciones de entrada E y salida S tienen rango en el conjunto potencia de L : para cualesquiera l ∈ L y t ∈ T, |l, E(t)| ≤ 1 y |l, S(t)| ≤ 1. Por lo tanto, en lo que sigue solamente haremos referencia a ésta clase de redes.
Sea R = (L,T, E, S) una RP. Un nodo en . es un lugar l ∈ L o una transición t ∈ T. En relación al grafo de . incluiremos las definiciones siguientes. Un camino elemental en R es una sucesión de nodos x1 x2 ... xk , k ≥ 1, tal que si k > 1 entonces xi ≠ xj , ∀i ≠ j, 1 ≤ i, j ≤ k. Notación: c(x1, xk ).
Por su parte, un circuito elemental en R es una sucesión de nodos x1 x2... xk , k > 1, tal que si xi = xj ,1 ≤ i < j ≤ k, entonces i = 1 y j = k. Notación: c(x1).
Por otro lado, sea L = Lo ∪ Lf ∪ Lv una partición dos a dos disjunta de L. Un O-camino entre los nodos x e y es un camino elemental xx1 x2 ... xk y tal que xi ∈ Lo ∪ T, ∀i, 1 ≤ i ≤ k; x, y ∉ Lo. Note que, los arcos en los grafos asociados a RP contienen un nodo en T y el otro en L (grafos bipartitos). Así, un O-camino es una sucesión finita de arcos que expresa una sucesión finita de actividades u operaciones. En particular, si un O-camino comienza y finaliza con transiciones y los lugares constituyendo el O-camino no tienen fichas inicialmente, entonces esto podría representar en manufactura una secuencia para algún tipo de trabajo.
Por conveniencia trataremos a c(x1, xn) como un conjunto; por lo tanto, x ∈ c(x1, xn) significa que x es un nodo sobre el camino elemental entre x1 y xn. En este caso escribiremos c(x1, xn) = {x1, x2, ... , xn}. También, trataremos a c(x1, xn) como el conjunto de todos los caminos elementales entre x1 y xn; análogamente, estas consideraciones son ajustadas a los circuitos c(x1). En consecuencia, si no hay caminos elementales entre x1 y xn escribiremos c(x1, xn) = ∅. Finalmente, si Y es un conjunto de nodos, entonces c(x,Y) := {w/∃ y ∈ Y, ∃ c(x, y), w ∈ c(x, y)} es el conjunto de todos los nodos sobre los caminos elementales entre x y Y.
Con la finalidad de formalizar el concepto de exclusión mutual, formulado en la próxima sección, incluiremos la definición siguiente que determina una condición para la clasificación de lugares en una estructura RP.
Condición CL. Una RP marcada M = (R, m0), R = (L,T, E, S), con L = Lo∪ Lf∪ Lv una partición dos a dos disjunta de L especificando los conjuntos de o-lugares, f -lugares y v-lugares, posee la condición CL si:
En este caso también diremos que Lf∪ Lvsatisface la condición CL.
Uno puede notar desde la condición CL que ningún recurso en un lugar de Lf ∪ Lv puede ser transformado en un recurso en otro lugar diferente de Lf ∪ Lv.
Como comentamos anteriormente, en un contexto de manufactura los lugares de recurso son incluidos para representar estatus de disponibilidad de máquinas, robots, materia prima, instalaciones, etc. Más aún, si dos fichas representan situaciones diferentes entonces éstas no son surtidas en un mismo lugar (posiblemente representando alguna operación). De hecho, las fichas son incluidas para representar contenidos diferentes que van a un lugar idéntico mediante una transición común; es decir, mediante sincronización. Esta sincronización podría, por ejemplo, determinar el comienzo de una operación. Por lo tanto, las fichas de cualesquiera dos o más lugares de recursos fluyen en un lugar común solamente mediante la misma transición. Este comentario motiva la condición siguiente.
Condición S. Una RP marcada M = (R, m0), R = (Lo ∪ L f ∪ Lv,T, E, S), posee la condición . si para cada par l, l' ∈ L f ∪ Lv, l ≠ l', t ∈ T y O-caminos c(l,t) y c(l',t), si existen, se tiene que el primer encuentro (o intersección) entre los O-caminos ocurre en una transición.
Un comentario final corresponde al hecho de que la condición . no implica la condición CL; e inversamente, la condición CL no implica la condición ..
Una vez que el modelo RP sea satisfactorio: no bloqueado, acotado y reiniciable entonces es posible transformar las definiciones de una RP en códigos de control supervisorios para sistemas de manufactura.
Por lo tanto, la modelación sistemática de un sistema es muy importante. Justamente esta sección está direccionada hacia el problema de análisis para sistemas de manufactura con recursos compartidos por procesos independientes. Para esto, formularemos el concepto de exclusión mutual (EM) (Definición 1) en el contexto de RP, conforme a los trabajos de Zhou y Dicesare [3], y Mata et al [4], e incluiremos las condiciones bajo las cuales las RP conteniendo tal estructura son no bloqueadas, acotadas y reiniciables.
En lo que sigue, el i-ésimo proceso, i = 1, 2, ... , k, será modelado por un par de transiciones (tai , tbi) y el recurso compartido será modelado por un lugar lE
Definición 1 (k–EM) SeaM = (R, m0), R = (L,T, E, S), L = Lo ∪ Lf∪ Lv, una RP marcada. Una k.exclusión mutual para M (k–EM) es un par (lE, φ) tal que:
1) lE ∈ L f , m0(lE ) = 1 . φ := {(ta1,tb1), (ta2,tb2), ... , (tak ,tbk)}, k ≥ 1, es un conjunto finito de pares de transiciones satisfaciendo las condiciones siguientes:
2) L f ∪ Lv satisface las condiciones CL y S; t ∈ Tb, t' ∈ Ta⇒ ∄ c(t,t') = O-camino.
Condiciones del comportamiento dinámico de una RP M = (R, m0) conteniendo una k-exclusión mutual, con una clasificación de lugares dada.
1’) Existen una marcación m1y una sucesión de disparos de transiciones σ que no contiene transiciones en Ta tales que t ∈ ℇ (δ(m1, σ)), para todo t ∈ Ta(Ta es como en (1.2) de la definición 1).
2’) Para toda marcación m1, si taj dispara en m ∈ A(R, m1) entonces para todo t ∈ T tal que c(taj ,t) ≠ ∅ y tbj ∉ c(taj ,t), t es permitida y para toda sucesión de disparos de transiciones σj que no contiene a tbj existe hj tal que tbj ∈ ℇ(δ(m,taj σj hj)); más aún, si m(lE ) = 1 y tu ∈ ℇ (m), entonces tu ∉ Tb (Tb es como en (1.2) de la definición 1).
Proposición 1 Sea M' = (R', m'0) conteniendo una .-EM(lE, φ) y satisfaciendo las condiciones del comportamiento dinámico, con R' = (Lo ∪ (L f ∪ {lE }) ∪ Lv,T', E', S'). Si existe una sucesión de disparos de transiciones . que no contiene a tbi tal que tai σtbi es disparable desde m ∈ A(R', m'0), entonces . no contiene a taj , para todo j, 1 ≤ j ≤ k, e i, 1 ≤ i ≤ k.
Demostración:
Desde la condición 2’) se sigue que el disparo de tai remueve la única ficha en lE ; en consecuencia, ninguna transición t tal que |lE, E' (t)| = 1 es habilitada antes del disparo de la transición tbi , para todo i, 1 ≤ i ≤ k. De aquí que taj no puede disparar, para todo j, 1 ≤ j ≤ k. Por lo tanto, σ no contiene a ta jpara todo j, 1 ≤ j ≤ k.
Observación 1 La proposición 1 establece que si el recurso compartido es ocupado por algún proceso, entonces éste no puede ser utilizado por ningún otro proceso hasta que dicho recurso sea liberado.
Proposición 2 Sea M' = (R', m'0) una RP marcada conteniendo una .-EM(lE, φ) y satisfaciendo las condiciones del comportamiento dinámico, con R0 = (Lo ∪ (L f ∪ {E }) ∪ Lv,T0, E0, S0). Entonces, lE es un lugar seguro.
Demostración:
La condición 2’) establece que ninguna transición en Tb = {tbi /1 ≤ i ≤ k} es habilitada cuando m(lE ) = 1; en consecuencia, m(lE ) ≤ 1 para todo m ∈ A(R', m'0). Por lo tanto, lE es un lugar seguro.
En lo que sigue siempre supondremos dada una RP marcada M' = (R', m'0) conteniendo una k-EM (lE, φ) y satisfaciendo las condiciones del comportamiento dinámico, con R' = (Lo ∪ (L f ∪ {lE }) ∪ Lv),T', E', S'), y una subred M de M', M = (R, m0), R = (Lo ∪ L f ∪ Lv,T, E, S): T = T'; l ∈ Lo ∪ L f ∪ Lv, t ∈ T ⇒ |l, E(t)| = |l, E' (t)|, |l, S(t)| = |l, S' (t)|; m0(l) = m'0 (l)[5].
Teorema 1 Si . es acotada (respectivamente segura), entonces M' es acotada (respectivamente segura).
Demostración:
Sea M' una RP marcada conteniendo una k-EM (lE, φ), satisfaciendo las condiciones del comportamiento dinámico, y A(R', m'0) el conjunto de alcanzabilidad de M'. Supongamos que m(lE ) es la última componente de cualquier marcación m ∈ A(R', m'0 ) y consideremos el conjunto Q(R', m'0 ) ={µ/(µ, m(lE )) ∈ A(R', m'0 )}; es decir, los elementos µ de Q(R', m'0 ) poseen las mismas componentes que m excepto a m(lE ).
Si m ∈ A(R', m'0), entonces m es alcanzable desde m'0 por los disparos sucesivos de transiciones determinados por alguna sucesión σ; es decir, (µ, m0(lE )) es alcanzable desde (m0, 1) por el disparo de σ. Por lo tanto, µ es alcanzable desde m0 por el disparo de σ. En consecuencia, m ∈ A(R, m0). Como A(R, m0) es acotado entonces µ es acotado, y por la proposición 2 m(lE ) es seguro. Finalmente, A(R', m'0) es acotado. Por lo tanto, M' es acotada.
Análogamente se procede para el caso de la seguridad.
Teorema 2 Si M es no bloqueada, entonces M' es no bloqueada.
Demostración:
Sea Mk una RP marcada conteniendo una k-EM (lE, φk ) y satisfaciendo las condiciones del comportamiento dinámico, y A(Rk, m'0) el conjunto de alcanzabilidad de Mk . Como en la prueba del Teorema 1, supondremos que m(lE ) es la última componente de toda marcación en A(Rk, m'0) y consideremos el conjunto
{Q(Rk, m'0 ) = {µ/(µ, m(lE )) ∈ A(Rk, m'0 )}.
Por inducción sobre k.
Para k = 1 (esto significa que M1 contiene una 1-EM (lE, φ1) que satisface las condiciones del comportamiento dinámico, con φ1 = {(ta1,tb1 )}) tenemos que probar que para toda marcación m ∈ A(R1, m'0 ), existe una sucesión de disparos de transiciones cuyo disparo habilita a t.
Sean t ∈ T y m ∈ A(R1, m'0 ), y supongamos que m(lE ) = 1, entonces m = (µ, 1). Ahora, supongamos que m(lE )=0 (esto significa que el número de disparos de ta1 es uno o más que el número de disparos de tb1 ). Como (lE, φ1) es una 1-EM, entonces existe una sucesión de disparos de transición σ que permite a tb1 .
Sea m' la marcación alcanzada por el disparo de σtb1 , con m' (lE ) = 1. Sea m' = (µ, 1), entonces por la prueba del Teorema 1 µ ∈ A(R, m0). Luego , para µ y t en M estudiaremos los dos casos posibles:
c(ta1,t) ≠ ∅ o c(ta1,t) = ∅.
Supongamos que c(ta1,t) ≠ ∅, entonces de el no bloqueo de M se sigue que existe una sucesión σ, que no contiene a ta1 en M, tal que µ' es alcanzable desde µ por el disparo de σ y ta1 es habilitada por µ'. Luego, σ puede disparar en M1; de donde, m'' es alcanzable desde m' por el disparo de σ, para algunas marcaciones m' y m'' en M1, y ta1 es habilitada por m''. Ahora, si tb1 ∉ c(ta1,t) entonces desde la condición 2’) se sigue que t es habilitada por m''; en otro caso, como tb1 ∈ c(ta1,t), el O-camino c(tb1,t) = ∅. En M, existe h tal que µ'' es alcanzable desde µ por el disparo de h y t es habilitada por µ00. Así, nosotros podemos reordenar a h de manera que cada disparo de ta1 sea seguido por tb1 . Por lo tanto, h es disparable y habilita a t en M1. Esto prueba el primer caso.
Para el segundo caso, supongamos que c(ta1,t) = ∅.
Desde el no bloqueo de M se sigue que existe σ tal que µ' es alcanzable desde µ por el disparo de σ y t es habilitada por µ'. Ahora, se puede seleccionar a σ de manera que ésta sucesión no contenga a ta1 . Por lo tanto, σ es disparable en M1 y habilita a t. Esto completa la prueba cuando k = 1.
Supongamos que para k ≤ n las conclusiones son verdaderas (Hipótesis de Inducción).
Sea (lE, φn+1) = (lE, φn ∪ (ta,tb)) una (n + 1)-EM satisfaciendo las condiciones del comportamiento dinámico.
Queremos probar que t es habilitada, ∀t ∈ T, m ∈ A(Rn+1, m'0 ).
Hay ciertamente dos posibilidades:
(1) m ∈ A(Rn, m'0 );
(2) m = (µ, m(lE )) ∉ A(Rn, m0 ) ⇒ (µ, 1) ∈ A(Rn, m'0 ).
Por la hipótesis de inducción, existe σ en Mn tal que t es habilitada por la marcación alcanzada desde m por el disparo de σ, o t es habilitada por la marcación alcanzada desde (µ, 1) por el disparo de σ.
En relación a (1), hay tres subcasos:
(1.1) Si σ no contiene a tania tb, así como también ningún camino elemental entre ta y tb entonces σ es disparable en Mn+1. Por lo tanto, la marcación alcanzable por el disparo de σ en m también habilita a t en Mn+1.
(1.2) Si m(lE ) = 1 y σ contiene una o más veces a ta, entonces necesitamos probar que existe σ' tal que la marcación alcanzada por el disparo de σ' en m habilita a t en Mn+1.
Como (lE, φn+1) es una (n + 1)-EM satisfaciendo las condiciones del comportamiento dinámico, entonces σ puede ser ordenada de una de las dos maneras siguientes, sin cambiar la marcación resultante:
σ1taw1tbσ2taw2tb ... tawltbσl+1, l ≥ 1 ó σ1taw1tbσ2taw2tb ... σltawl, l ≥ 1, donde wi y σino contiene a tani a tb, y σino contiene transiciones en c(ta,tb).
Consideremos la primera forma:
σ1taw1tbσ2taw2tb ... tawltbσl+1, l ≥ 1.
Por la proposición 2, aplicada a la RP marcada Mn conteniendo una n-EM satisfaciendo las condiciones del comportamiento dinámico, tenemos que σi contiene a lo sumo un elemento en Ta = {tai /1 ≤ i ≤ n}, digamos taj , seguido por la transición tbj . Si existe, por ejemplo, taj hitbjen σi entonces taj hitbjpuede ser aplicado en Mn+1, donde hi no contiene transiciones en Ta, ∀i, 1 ≤ i ≤ l + 1. Por lo tanto, sin pérdida de generalidad, supongamos que para 1 ≤ i ≤ l, σi = taj hi y wi = γitbjei existe ςi = σitawitb = taj hitaγitbj eitb en σ tal que ςi no puede disparar en Mn+1.
Probaremos que ς'i= taj hiγitbj taeitb puede disparar en Mn+1 y que la marcación resultante del disparo es la misma que la producida por el disparo de ςi en Mn.
Afirmación: ς'i es disparable en Mn. En efecto, si ς'i no es disparable en Mn, entonces existe una transición, digamos t', en γitbj cuyo disparo necesita del disparo de las transiciones tajy ta. Esto podría ser verdadero en Mn+1; sin embargo, como (lE, φn+1) es una (n + 1)-EM satisfaciendo las condiciones del comportamiento dinámico φn+1 = φn ∪ {(ta,tb)} entonces se excluye la existencia de t'. Esto es una contradicción. Por lo tanto, ς'ies disparable en Mn.
Ahora, ∀l ∈ L, η ∈ A(Rn, m'0), el número de fichas en l en la marcación resultante del disparo de ς'i en η es igual al número de fichas en l, en la marcación resultante del disparo de ςi en η. En efecto, de acuerdo a la regla de disparos, en una RP marcada tenemos que ∀l ∈ L y t,t' ∈ T, si tt' y t't son disparables en τ ∈ A(Rn, m'0), entonces el número de fichas en l en la marcación resultante del disparo de t't en τ es igual a τ(l) − |l, E(t)| + |l, S(t)| − |l, E(t')| + |l, S(t')|. Así, el número de fichas en l en las marcaciones resultantes de los disparos de tt' y t't en τ son iguales.
Ahora, como ς'i y ςison disparables y contienen las mismas transiciones, entonces la conclusión es verdadera. Análogamente, se puede mostrar que para todo l ∈ L, el número de fichas en l en las marcaciones resultantes de los disparos de ta hitajγitbeitbj y ta hiγitbtaj eitbj en m son iguales. Finalmente, usando la técnica anterior σ puede ser transformada en σ', la cual puede disparar; así, t es habilitada por Mn+1.
Consideremos la segunda forma:
σ1taw1tbσ2taw2tb ... σltawl, l ≥ 1.
Usando la misma técnica anterior, σ' puede ser obtenida desde σ y así t es habilitada por la marcación alcanzada por el disparo de σ' en m. Luego, t es habilitada por Mn+1.
(1.3) Si m(lE ) = 0 y σ contiene tanto a ta como a transiciones sobre los caminos entre ta y tb, una o varias veces; entonces se puede probar análogamente que existe σ' tal que la marcación alcanzada por el disparo de σ' en m habilita a t en Mn+1.
En relación a la posibilidad (2), se puede construir una prueba análoga a la prueba de la posibilidad
(1). Por lo tanto, Mn+1 es no bloqueada. ■
Teorema 3 Si M es reiniciable, entonces M' es reiniciable.
Demostración:
La prueba es análoga a la del Teorema 2 y es también realizada por inducción sobre k.
Para toda m ∈ A(Rn+1, m'0), queremos probar que existe σ en Mn+1 tal que m'0es alcanzable desde m por el disparo de σ. Como m ∈ A(Rn, m'0) o (µ, 1) ∈ A(Rn, m'0), entonces existe σ en Mn tal que m'0 es alcanzable desde m por el disparo de σ o m'0 es alcanzable desde (µ, 1) por el disparo de σ. Finalmente, usando un razonamiento análogo al de la prueba de el no bloqueo de Mn+1obtenemos la conclusión del teorema. ■
Consideremos un sistema de ensamblaje constituido por dos estaciones de trabajos E1y E2,y por dos robots R1 y R2 (ver Figura 1).
Las especificaciones del sistema son dadas a continuación.
1. Cuando la estación de trabajo E1 está lista para ejecutar la tarea de ensamblaje, ésta primeramente requiere la utilización del robot R1, que es adquirido por E1siempre que esté disponible. También, cuando E2está lista para ejecutar una tarea, ésta primeramente requiere la utilización de R2, que es adquirido por E2 siempre que esté disponible.
2. Después que la estación de trabajo Ei adquiere Ri ésta requiere la utilización del robot Rj , i ≠ j, y lo adquiere si está disponible.
3. Cuando alguna estación de trabajo comienza una tarea de ensamblaje, ésta no puede ser interrumpida hasta su completación.
4. Cuando alguna estación de trabajo completa una tarea de ensamblaje, ésta libera ambos robots.
Usando la metodología de modelación para armar el diseño RP, tal como fue establecida en el apartado 2, tenemos que:
1. Las actividades son los procesos de adquisición de los robots R1 y R2, y ensamblajes por parte de las estaciones de trabajos E1y E2.
2. El orden de las actividades es dado en la tabla siguiente:
3. En relación al orden de las actividades correspondientes a la estación de trabajo E1, tal como fue establecido en 2, son creados respectivamente los lugares l2,l3 y l4. La Figura 2 muestra esta sucesión de actividades junto con sus transiciones de comienzos y completaciones: t1 representa el comienzo de adquisición de R1por E1, t2 es el comienzo de adquisición de R2 por E1, t3 representa el comienzo de ensamblaje en E1 y t4 modela la completación de ensamblaje en E1. Análogamente se procede para la sucesión de actividades correspondiente a E2.
4. Para la actividad l2 es necesario l1:= la solicitud de R1 por E1; así como también l9 := la disponibilidad de R1. Luego, creamos un arco desde cada uno de estos lugares a la transición t1. Después que R1 es adquirido por E1, la nueva operación es adquirir R2 para lo cual es necesario l10:= disponibilidad de R2. Así, creamos un arco desde l10 a t2. Ahora, una vez que R2 es adquirido, E1 comienza la tarea de ensamblaje (esto es modelado por el arco desde l3 a t3 y el arco desde t3 a l4 tal como es mostrado en la Figura 2). Después de la tarea de ensamblaje los dos robots son liberados. Esto es representado por el par de arcos de salidas desde t4 a l9 y l10. Finalmente, creamos un arco desde t4 a l1 para representar requerimientos repetidos. Análogamente modelamos la estructura correspondiente a E2 (ver Figura 3).
5. La marcación inicial es m0 = (1, 0, 0, 0, 1, 0, 0, 0, 1, 1) m0 indica que inicialmente hay dos solicitudes desde las estaciones de trabajos E1 y E2, y los robots R1 y R2están disponibles.
Para finalizar, todas las transiciones y lugares son dadas en la siguiente tabla
En relación a la RP marcada ilustrada en la Figura 3, consideremos los pares (l9, {(t1,t4), (t6,t8)}) y (l10, {(t2,t4), (t5,t8)}).
Ninguno de estos pares determinan una estructura de exclusión mutual para la red satisfaciendo las condiciones del comportamiento dinámico. En efecto, falla la condición 2’). Por ejemplo, con (l9, {(t1,t4), (t6,t8)}) las transiciones t1y t5 son permitidas en m'0= (1, 0, 0, 0, 1, 0, 0, 0, 1, 1), pero una vez que t1dispara t3 no puede disparar. De hecho, los disparos sucesivos de t1y t5o de t5 y t1conducen a la marcación (0, 1, 0, 0, 0, 1, 0, 0, 0, 0), la cual determina un estancamiento en el sistema.
Consideremos la red dada en la Figura 4. Aquí es tomado en cuenta únicamente el robot R1. Se puede verificar sin dificultad que (l9, {(t1,t4), (t6,t8)} es una 2-EM para esta red M que satisface las condiciones del comportamiento dinámico. Ahora bien, como fue mencionado anteriormente, si (l10, {(t2,t4), (t5,t8)}) es añadida adecuadamente a la especificación del sistema entonces ella no determina una 2-EM satisfaciendo las condiciones del comportamiento dinámico. Por lo tanto, la especificación del sistema es incorrecta para un diseño de red sin estancamiento. Sea la nueva especificación: La estación de trabajo E1solicita ambos robots al mismo tiempo.
Entonces, la RP marcada M' ilustrada en la Figura 5 captura esta nueva especificación.
Para la RP marcada M' dada en la Figura 5, sea la clasificación
Lo = {l2, l3, l4, l6, l7, l8}, L f = {l1, l5, l9, l10} y Lv = ∅.
(l10, {(t1,t4), (t5,t8)}) es una 2-EM para M' satisfaciendo las condiciones del comportamiento dinámico.
En efecto, las condiciones 1) y 2) de la definición 1 son claras. Por otro lado, la condición 1’) es satisfecha tomando m'0 : aquí t1y t5son permitidas. Finalmente, como Lv= ∅ entonces basta considerar únicamente a m'0. De hecho, si t1dispara entonces t2t3t4 es la única sucesión disparable; asimismo, si t5 dispara entonces t6 t7 t8 es la única sucesión disparable. Luego, la condición 2’) se satisface. Por lo tanto, (l10, {(t1 ,t4 ), (t5 ,t8 )}) es una 2-EM para M', la cual satisface las condiciones del comportamiento dinámico de la RP dada conteniendo dicha 2-EM.
Para concluir, usando las técnicas convencionales de análisis correspondiente a la RP marcada M dada en la Figura 4 tenemos que M es segura, no bloqueada y reiniciable. Así, como M es una subred de la RP marcada M0 dada en la Figura 5, entonces desde los Teoremas 1, 2 y 3 sigue que la RP M0 conteniendo la 2-EM (l10, {(t1,t4), (t5,t8)}) que satisface las condiciones del comportamiento dinámico es segura, no bloqueada y reiniciable.
Los resultados incluidos aquí, junto con la metodología para el diseño de redes de Petri en un medio ambiente de manufactura con recursos compartidos, permiten la detección de estancamiento durante el proceso de modelación. Esto es crucial desde el punto de vista de costo del diseño, sobre todo cuando el sistema es muy complicado. Justamente, uno de los principales objetivos de nuestro análisis es desarrollar métodos formales para sintetizar una red de Petri que garantice el cumplimiento de un conjunto dado de especificaciones o requerimientos y preserve algunas propiedades cualitativas. En este sentido, los argumentos teóricos presentados en este articulo son muy útiles y permiten el manejo de sistemas complejos.
Se hace especial agradecimiento al CDCHTA, ULA-Mérida por el financiamiento parcial de los proyectos de códigos: I-1442-15-02-ED y I-1441-15-02-ED, y al proyecto Eco-Nord: Automatización de Sistemas de Producción con supervisión autónoma y coordinación distribuida utilizando enfoque holónico N 201000302.
http://servicio.bc.uc.edu.ve/ingenieria/revista/v23n1/art04.pdf (pdf)