Modelado de Sistemas Redes de Petri

download Modelado de Sistemas Redes de Petri

of 62

Transcript of Modelado de Sistemas Redes de Petri

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    1/62

    Modelado de

    Sistemas:Redes de Petri

    Modelos conceptualesmediante redes de Petri

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    2/62

    2

    Índice

    Introducción Redes de Petri (RdP) Modelando con redes de Petri

    Precondiciones i postcondiciones de un evento

    Ejemplos. Descomposición en subsistemas Modelando programas Problemas. Otros sistemas

     Análisis de las redes de Petri  Árbol de alcance

    Redes de Petri no acotadas y árbol de cobertura Bloqueos

    Redes de Petri coloreadas (RdPC) Definición Ejemplos

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    3/62

    3

    Introducción

    SistemasConjunto de objetos que interactúan entre sí

    Estado i variables de estadoEl estado del sistema queda determinado por los

    valores de las variables que se necesitan paracaracterizar al sistema

    Sistemas continuos Cambios continuos de las variables

    Sistemas discretos Cambios discretos de las variables

    Sistemas orientados a eventos discretos Cambios discretos + secuencia temporal aleatoria 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    4/62

    4

    Introducción

    ModelosRepresentación simbólica (matemática) del sistema que

    permite representar las dinámicas de interés(reproduce el comportamiento y las características

    del sistema) Modelos de simulación de eventos discretos

    Elementos utilizados Evento

    Acción instantánea que cambia el estado del modelo

     Actividad Tareas del sistema con duración temporal

    Entidades Entidades temporales: Objetos que se procesan

    Recursos: Medios utilizados para ejecutar lasactividades

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    5/62

    5

    Introducción

    Bibliografía

    Guasch, A.; Piera, M.A.; Casanovas, J.; Figueras, J.Modelado y simulación. Aplicación a procesos

    logísticos de fabricación y servicios. Ediciones UPC,2002.

    Jensen, K. Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use. Volume 1, Basic

    Concepts. Springer-Verlag. 1997

    Peterson, J. L. Petri Net Theory and the Modelling ofSystems. Prentice-Hall, 1981.

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    6/62

    6

    Redes de Petri

    Los modelos de eventos discretos se basanfundamentalmente en los conceptos de evento yactividad.

    Un evento genera un cambio en las variables de estado y marca el inicio o el final de una actividad. Las Redes de Petri (RdP) permiten representar de forma

    natural un modelo de eventos discretos. En una RdP loseventos están asociados a transiciones y las actividadesa lugares.

    Las RdP permiten representar formalmente laconcurrencia (actividades paralelas) y la sincronización (transferencia sincronizada de materiales o deinformación). 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    7/62

    7

    Redes de Petri

    Es un formalismo de modelado gráfico con muy pocasreglas sintácticas.

    Permiten estudiar  aspectos estructurales tales como las

    situaciones de bloqueo o la alcanzabilidad de ciertosestados.

    Permiten formalizar  un sistema a distintos niveles deabstracción de acuerdo con los objetivos de modelado.

    Permiten la descripción de un sistema complejomediante la metodología Bottom-Up: construcción delmodelo del sistema completo a partir de las RdP de lossubsistemas (submodelos), que han sido previamentedesarrollados y verificados (modularización).

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    8/62

    8

    Redes de Petri: Definiciones básicas

    Una estructura de Red de Petri, C, estácompuesta por 4 elementos, C = (P, T, I, O).

    P = {P1, P2, …, Pn} conjunto finito de lugares, n ≥ 0.T = {T1, T2, …, Tm} conjunto finito de transiciones, m ≥ 0.I:T→P∞ es una función de entrada, una aplicación de las

    transiciones a bolsas de lugares.

    O:T→P∞

     es una función de salida, una aplicación de lastransiciones a bolsas de lugares.

    La Teoría de Bolsas es una extensión natural de la Teoría deConjuntos. En las bolsas se admiten elementos repetidos.Entrada/salida múltiple → grado de multiplicidad del lugar de E/S Notación P∞: Es posible un número ilimitado de repeticiones 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    9/62

    9

    Redes de Petri: Definiciones básicas

     Asignación de marcas (tokens) M de una Redde Petri, C.

    M:P→N es una función del conjunto de lugares P alconjunto de los números enteros no negativos N.

    El estado del sistema se caracteriza a través de laasignación de marcas. Se representa a través del

    vector

    Nn es el conjunto de todas las asignaciones demarca (todos los estados del sistema).

    nP M P M P M  p   ,,, 21  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    10/62

    10

    Redes de Petri: Definiciones básicas

    La representación gráfica de las RdP es unmultigrafo dirigido, ponderado y bipartito

    Dos tipos de nodos: lugares (círculos) y transiciones (rectángulos). Las conexiones entre los lugares de entrada y de

    salida de cada transición y la transición se representana través de arcos (orientados).

    El grado de multiplicidad de los lugares de entrada ysalida se representa a través del peso asociado al arco correspondiente.

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    11/62

    11

    Redes de Petri: Definiciones básicas

    El grafo de una Red de Petri está compuesta por5 elementos: RdP = (P, T, A, W, M).P = {P1, P2, …, Pn} conjunto de n lugares (círculos).

    T = {T1, T2, …, Tm} conjunto de m transiciones (rectáng.). A = {A1, A2, …, As} conjunto de s arcos.

    Entradas lugar-transición Ak1 ≡ (Pi1, T j1)Salidas transición-lugar Ak2 ≡ (Pi2, T j2)

    W(Ak) k = 1, 2, …, s Peso asociado a cada arco. Ak1 ≡ (Pi1, T j1) W(Ak1) = W(Pi1, T j1) Ak2 ≡ (Pi2, T j2) W(Ak2) = W(Pi2, T j2)

    M(Pi) i = 1, 2, …, n  Asignación de marcas (estado)

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    12/62

    12

    Redes de Petri: Definiciones básicas

    Para analizar la RdP se utilizará el conjunto de lugares deentrada, I(Tr), y el conjunto de lugares de salida, O(Tr), decada transición Tr.

    El número de elementos (piezas, personas, recursos, etc.)que hay en una cola de espera se representagráficamente a través del número de marcas.

    El estado de una condición (verdadero o falso) se

    representa gráficamente con una marca en el interior delnodo lugar cuando la condición se cumple. 

     AT P P P T I  r i i r    ,:   AP T P P T O i r i r    ,:

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    13/62

    13

    Redes de Petri: Definiciones básicas

    Reglas para simular el comportamiento de una RdP  Una transición Tr  está activada si cada uno de los lugares de

    entrada a la transición Tr  contiene un número de marcas superior

    o igual al peso del arco correspondiente (precondiciones).

    Una transición activada puede ejecutarse (dispararse) encualquier momento.

    Como resultado de ejecutar  (disparar) una transición activada, Tr ,se eliminan W(Pi,Tr) marcas del lugar Pi , para todos los lugaresde entrada de la transición Tr , y se añaden W(Tr, Pj) marcas allugar Pj , para todos los lugares de salida de Tr (postcondiciones).

    r i r i i    T I P T P W P M    ,

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    14/62

    14

    Redes de Petri: Definiciones básicas

    T  

    1  

    T  

    1  

    P  

    1  P  

    1  

    P  

    2  

    P  

    2  

    P  

    3  

    P  

    3  

    P  

    4  

    P  

    5   

    P  

    5   

    P  

    5   

    2

    2

    2

    1 1

    1 1

    3 3

    2

    Ejemplo: 

     A la izquierda se representa el estado inicial de la RdP con latransición T1 activada: M(P1)=3, M(P2)=1 y M(P3)=4. 

     A la derecha se representa el estado final de la RdP después de

    dispararse la transición.

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    15/62

    15

    Redes de Petri: Definiciones básicas

    Función estado siguiente δ(M , T r ) de una asignación demarcas M  y una transición T r.

    δ: N n T → N n δ(M , T r ) = M’  

    La función estado siguiente de M  y T r  está definida si y solo si Tr  está activada con la asignación de marcas M .

    Como resultado de disparar la transición activada, T r , se eliminanW(P i ,T r  ) marcas del lugar P i , (si P i  no es un lugar de entrada de latransición T r , W(P i ,T r  ) = 0, y se añaden W(T r , P i  ) marcas al lugar P i  (si P i  no es un lugar de salida de T r , W(T r , P i  ) = 0.

    P P P T W T P W P M T M P M  i i r r i i r i    ,,,'

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    16/62

    16

    M’  = δ(M , T 1 )

    T 1  M’ (P 1) = M (P 1)  – W (P 1,T 1) + W (T 1, P 1) = 3 – 2 + 0 = 1 -2

    M’ (P 2 ) = M (P 2 )  – W (P 2 ,T 1) + W (T 1, P 2 ) = 1 – 1 + 0 = 0 -1

    M’ (P 3) = M (P 3)  – W (P 3,T 1) + W (T 1, P 3) = 4 – 2 + 0 = 2 -2

    M’ (P 4) = M (P 4)  – W (P 4,T 1) + W (T 1, P 4) = 0 – 0 + 1 = 1 +1

    M’ (P 5 ) = M (P 5 )  – W (P 5 ,T 1) + W (T 1, P 5 ) = 1 – 0 + 3 = 4 +3

    T  

    1  

    T  

    1  

    P  

    1  

    P  

    1  

    P  

    2  

    P  

    2  

    P  

    3  

    P  

    3  

    P  

    4  

    P  5   

    P  

    5   

    P  5   

    2

    2

    2

    1 11 1

    3 3

    2

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    17/62

    17

    Redes de Petri: Definiciones básicas

    Estado inmediatamente alcanzableLa asignación de marcas M’ es inmediatamente alcanzable desde M  si existe una transición T r  tal que M’ = δ(M , T r ). 

    Estado alcanzable

    La asignación de marcas M’ es alcanzable desde M  si existe unasecuencia de ejecución de transiciones que transforme M  en M’ .

    Conjunto de estados alcanzables R (C, M ) de una red de PetriC = (P, T, I, O) desde una asignación de marcas M .R (C, M ) es el conjunto que cumple:

    1) M є R (C, M )2) M’ є  R (C, M )  y M’’ = δ(M’ , T k )  → M’’ є  R (C, M ) 

    La relación de alcanzabilidad es el cierre reflexivo transitivo de larelación de alcanzabilidad inmediata.

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    18/62

    18

    Redes de Petri: Definiciones básicas Las RdP permiten representar las dinámicas de los procesos orientados a

    eventos discretos:a) secuencia; b) decisión; c) concurrencia; d) sincronización; e) agrupación.

    a) b) c)

    d) e) 

    P  

    1  P  

    2  

    P  

    3  

    P  

    1  P  

    1  

    P  

    2  

    P  

    3  

    T  

    1  

    T  

    2  T  

    1  

    T  

    2  

    T  

    3  

    T  

    4  

    T  

    1  

    T  

    2  

    T  

    3  

    P  

    1  

    P  

    2  

    P  

    3  

    P  

    P  

    1  

    T  

    1  

    T  

    1  T  

    2  T  

    3  

    T  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    19/62

    19

    Precondiciones y postcondiciones Modelo de un recurso limitado

    Estación de trabajo formada por dos máquinas dedicadas aprocesar piezas. Las piezas que llegan se esperan en una únicacola, son procesadas, y finalmente abandonan la estación. 

    P  

    1  

    P  

    3  

    P  

    4  

    T  

    2  

    T  

    3  

    P  

    2  

    T  

    1  

    P1 Piezas en cola CONDICIONESP2 Máquinas libresP3 Piezas en proceso. (máquinas ocupadas)P4 Piezas procesadas

    T1 Llegada de la pieza EVENTOSPrecondiciones: Ninguna (arco ent.)

    Postcondiciones: Pieza en cola (arco sal.)T2 Inicio del proceso

    Precondiciones: Pieza en cola; Máquina librePostcondiciones: Pieza en proceso

    T3 Fin del procesoPrecondiciones: Pieza en procesoPostcondiciones: Pieza procesada; Máq. libre

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    20/62

    20

    Modelando con Redes de Petri Modelo de un proceso robotizado simple

    Dos flujos diferentes de fabricación (piezas tipo 1 i piezas tipo 2)compiten por un mismo recurso. Un mismo robot transporta todaslas piezas. 

    P1 Robots libres

    P2 Cola piezas 1 P3 Cola piezas 2P4 Transp. pieza 1 P5 Transp. pieza 2P6 Salida piezas 1 P7 Salida piezas 2 

    T1 Lleg. piezas 1 T2 Lleg. piezas 2

    T3 Inicio transp. 1 T4 Inicio transp. 2T5 Fin transp. 1 T6 Fin transp. 2

    La marca de la posición P1 puede activar T3 oT4 (decisión: especificar criterio)

    P  

    3  

    P  

    5   

    P  

    7   

    T  

    4  

    T  

    6  

    P  

    1  

    T  2  P  

    2  

    P  

    4  

    P  

    6  

    T  

    3  

    T  

    5   

    T  1  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    21/62

    21

    Modelando con Redes de Petri Modelo de una máquina ensambladora

    Se considera que sólo llegan al sistema piezas de tipo a. Las piezasde tipo b están previamente almacenadas en el sistema (RdP no acotada; M(P2 ) puede crecer ilimitadamente)

    P1 Almacén piezas b (bebida) P2 Cola de entrada piezas a (cliente)

    T0 Llegada cliente T1 Proceso de ensamblado

    M

    1Piezas

    ensambladas

    P  

    1  T  

    0  

    P  

    2  

    T  

    1  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    22/62

    22

    Modelando con Redes de Petri Modelo de una máquina ensambladora con limitación en

    el número de piezas que lleganSe considera una cola de entrada de 3 plazas para las piezas de tipoa. Las piezas de tipo b están previamente almacenadas en elsistema. (RdP acotada) P1 Almacén piezas b P2 Cola de entrada piezas a (cliente)P3 Plazas libres en la cola de entrada de piezas a T0 Llegada cliente T1 Proceso de ensamblado

    P  

    1  

    P  

    3  

    T  

    0  

    P  

    2  

    T  

    1  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    23/62

    23

    Descomposición en subsistemas Modelo de una línea de producción

    Robots transporte: R1, R2; Máquinas: M1, M2, M3; Almacenes: S1, S2.Funcionamiento: R1 transporta pieza S1 → M1; M1 efectúa la 1ª operación;R2 transporta pieza M1 → M2 o M3; M2 o M3 efectúa 2ª operación R2 transporta pieza M2 o M3 → S2 Subsistema 1: S1 → M1 + proceso M1 Subsistema 2: M1 → M2 + proceso M2 + M2 → S2 Subsistema 3: M1 → M3 + proceso M3 + M2 → S2 

    S

    1 S

    2 M

    M

    M3 

    R1  R2 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    24/62

    24

    Subsistema 1P1 M1 libre P2 R1 transp S1→M1 

    P3 R1 libre P4 M1 procesandoP5 M1 ocupada P6 Almacén S1

    T1 Inicio transp S1→M1 T2 Final transp S1→M1; Inicio proceso M1

    T3 Final proceso M1

    Estado incial (1, 0, 1, 0, 0, 5)M1 libre M(P1)=1; M(P4)=0; M(P5)=0R1 libre M(P2)=0; M(P3)=1S1 (5 piezas) M(P6)=5

    S

    1 S

    2 M

    M

    M

    R1  R2 

    P  6  

    P  

    3  P  

    2  

    P  

    4  

    P  

    5   

    T  1  

    T  2  

    T  3  

    P  

    1  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    25/62

    25

    Dinámica del subsistema 1

    P  6  

    P  

    3  P  

    2  

    P  

    4  

    P  

    5   

    T  1  

    T  2  

    T  3  

    P  

    1  

    Disparo T1 Disparo T2Inicio transp. S1→M1  Final transp. S1→M1; Inicio M1 

    P  6  

    P  

    3  P  

    2  

    P  

    4  

    P  

    5   

    T  1  

    T  2  

    T  3  

    P  

    1   P  6  

    P  

    3  P  

    2  

    P  

    4  

    P  

    5   

    T  1  

    T  2  

    T  3  

    P  

    1  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    26/62

    26

    Dinámica del subsistema 1

    P  6  

    P  

    3  P  

    2  

    P  

    4  

    P  

    5   

    T  1  

    T  2  

    T  3  

    P  

    1  

    Disparo T2 Disparo T3

    Final transp. S1→M1; Inicio M1  Final M1

    P  6  

    P  

    3  P  

    2  

    P  

    4  

    P  

    5   

    T  1  

    T  2  

    T  3  

    P  

    1   P  6  

    P  

    3  P  

    2  

    P  

    4  

    P  

    5   

    T  1  

    T  2  

    T  3  

    P  

    1  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    27/62

    27

    Subsistema 2P1 M1 libre P5 M1 ocupada

    P7 M2 libre P8 R2 libreP9 R2 M1→M2  P10 M2 procesandoP11 M2 ocupada P12 R2 M2→S2 P18 Almacén S2

    T4 Inicio M1→M2  T5 Final M1→M2; Inicio M1 T6 Final M2 T7 Inicio M2→S2T8 Final M2→S2

    P1 P5 P7 P8 P9 P10 P11 P12 P18Estado inicial (0, 1, 1, 1, 0, 0, 0, 0, 0)

    S

    1 S

    2 M

    M

    M

    R1 R2 

    P  

    1  

    P  

    7   P  

    5   

    P  

    9  

    P  

    8  

    P  1 

    0  

    P  1 

    8  

    P  1 

    1  

    P  1 

    2  

    T  4  

    T  5   

    T  6  

    T  7   

    T  8  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    28/62

    28

    Subsistema 3P1 M1 libre P5 M1 ocupada

    P13 M3 libre P8 R2 libreP14 R2 M1→M3  P15 M3 procesandoP16 M3 ocupada P17 R2 M3→S2 P18 Almacén S2

    T9 Inicio M1→M3  T10 Final M1→M3; Inicio M3 T11 Final M3 T12 Inicio M3→S2T13 Final M3→S2

    P1 P5 P8 P13 P14 P15 P16 P17 P18Estado inicial (0, 1, 1, 1, 0, 0, 0, 0, 0)

    S

    1 S

    2 M

    M

    M

    R1  R2 

    P  

    1  

    P  

    5   

    P  1 

    3  

    P  

    8   P  1 4  

    P  1 

    5   

    P  1 

    7   

    P  1 

    8  

    P  1 

    6  

    T  9  

    T  1 

    0  

    T  1 

    2  

    T  11  

    T  1 

    3  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    29/62

    29

    T1 Inicio S1→M1 

    T2 Final S1→M1; Inicio M1 T3 Final M1T4 Inicio M1→M2 T5 Final M1→M2; Inicio M2 T6 Final M2

    T7 Inicio M2→S2 T8 Final M2→S2 T9 Inicio M1→M3 T10 Final M1→M3; Inicio M3 T11 Final M3T12 Inicio M3→S2T13 Final M3→S2

    Estado inicial:(1,0,1,0,0,5,1,1,0,0,0,0,1,0,0,0,0,0)

    P  6   P  

    1  

    P  

    3  

    P  2  

    P  

    4  P  

    7    P  

    5   

    P  1 

    3  

    P  

    9  

    P  

    8   P  

    4  

    P  1 

    0  

    P  1 

    7   

    P  1 

    8  

    P  1 

    6  

    P  1 

    2  

    T  1  

    T  2  

    T  3  

    T  4  

    T  5   

    T  6  

    T  7   

    T  8  

    T  9  

    T  1 

    0  

    T  1 

    2  

    T  1 

    1  

    T  1 

    3  

    P  1 

    1  

    P  1 

    5   

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    30/62

    30

    Modelando programas El programa de un proceso es un conjunto de operaciones

    de computación ejecutadas en un cierto orden.  Programa → Computación + control 

    Computación: ejecución de operadores aritméticos y/ológicos; manipulación de entradas, salidas y valores de lasvariables.Control: Orden en el cual deben ejecutarse las operaciones.

    Representado a través de los diagramas de flujo. Las RdPpermiten representar la estructura de control de losprogramas.

    begin  Acción Interpretación Input(y1); Input(y2); y3:=1; a Input(y1); Input(y2); y3:=1;while y1>0 b y1>0 ?

    do begin

    if odd(y1) c odd(y1) ?then begin

    y3:=y3*y2; y1:=y1-1; d y3:=y3*y2; y1:=y1-1;end;

    y2:=y2*y2; y1:=y1-2; e y2:=y2*y2; y1:=y1-2;end;

    Output(y3); f Output(y3);end;

    a  

    b  

    c  d  

    e  

    f   

    V VF

    F

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    31/62

    31

    Modelando programas Nodos del diagrama de flujo: computación (rectángulos);

    decisión (diamantes) →  Transiciones de la RdPEn las RdP las decisiones se toman a partir de un lugar  

     Arcos del diagrama de flujo → Lugares de la RdPEn el diagrama de flujo el proceso debe detenerse entrenodos (antes de iniciar una operación de toma dedecisiones o de computación). 

    a j  

    Decisión VVF

    Computación 

    ai  

    ai  

    a j   ak  

    ai  

    ai  

    a j  

    a j   ak  

    F

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    32/62

    32

    Modelando programas Diagrama de flujo y RdP correspondiente del programa ejemplo

    a  

    b  

    c  

    d  

    e  

    f   

    VVF

    F

    a  

    b ,V

    b ,F

    c ,Fc ,

    Vd  

    f   

    e  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    33/62

    33

    Problema de la exclusión mutua Datos compartidos por varios procesos (lectura de datos y 

    escritura de nuevos valores). Exclusión mutua:

    Mientras un proceso manipula los datos compartidos (seccióncrítica) ningún otro proceso puede manipular estos mismos datos

    Lugar m de la RdP ≡ autorización para acceder a la seccióncrítica

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    34/62

    34

    Problema productor / consumidor Sistema formado por s productores de objetos que se depositan

    en un aparador (buffer ) y t  consumidores. Para que el número de objetos en el aparador no pueda crecer

    indefinidamente, se introduce un número máximo n de plazas. Lugar B ≡ Objetos en el aparador   Lugar B’ ≡ Plazas libres en el aparador  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    35/62

    35

    Otros sistemas Reacción química de oxidación reducción.

    Ejemplo: Oxidación reducción de ácido oxálico y peróxido de hidrógenoLugar ≡ Número de moléculas (moles) de cada compuesto Transiciones ≡ Reacción Arcos ≡ Número de moléculas (moles) que se consumen/producen 

    H2C2O4 

    CO2  e- 

    H+ H2O2 

    H2O

    22

    2

    2 2

    2

    H2C2O4  → 2 CO2 + 2 H+ + 2 e-2 e-  + 2 H+  + H2O2  → 2 H2O

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    36/62

    36

    Descanso

    Modelando de sistemas:

    Redes de Petri

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    37/62

    37

     Análisis de las RdPObjetivos

    Determinar las situaciones de bloqueo del sistema. Determinar los estados posibles a partir de un cierto estado inicial.  Determinar caminos para alcanzar un estado final a partir de un estado

    inicial. 

     Árbol de alcanceRepresentación del conjunto de estados alcanzables R (C, M 0 ) de unared de Petri C  = (P, T, I, O) con una asignación inicial de marcas M 0 .Nodos del árbol de alcance ≡ Estados del sistema (asig. marcas)

    Reglas de construcción del árbol de alcance:

    1. El nodo raíz es el estado inicial2. Cada nodo genera nodos hijos ejecutando las transiciones activadas3. Nodo duplicado (old) → no genera nodos hijos 4. Nodo terminal (dead) ≡ No tiene transiciones activadas 

    → no genera nodos hijos 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    38/62

    38

     Árbol de alcanceReglas de construcción:

    1. El nodo raíz es el estado inicial2. Cada nodo genera nodos hijos ejecutando las transiciones activadas3. Nodo duplicado (old) → no genera nodos hijos 4. Nodo terminal (dead) ≡ No tiene transiciones activadas 

    → no genera nodos hijos 

    Ejemplo:

    P1 

    P2 

    P3 

    T1 

    T2 

    2

    1

    (2, 1, 0)

    (1, 1, 1)

    (1, 1, 1)old  

    (2, 1, 0)old  

    (0, 1, 2)

    T1 

    T1  (-1, -1+1, +1)

    T2  (+1, -1+1, -1)

    T2 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    39/62

    39

     Análisis de las RdPRedes de Petri acotadas

    Definición: Un lugar P i  de una RdP C  = (P, T, I, O) con una asignacióninicial de marcas M 0  es k-acotado si para todas las asignaciones demarcas M  del conjunto de estados alcanzables R (C, M 0 ), M(P i  ) ≤ k.

    En el ejemplo anterior P 1

     y P 3

     son 2-acotados; P 2 

     es 1-acotado.

    Definición: Una RdP C  = (P, T, I, O) con una asignación inicial demarcas M 0  es k-acotada si todos los lugares son k-acotados

    Definición: Un lugar  o una RdP con una asignación inicial de marcas M 0  es acotado si es k-acotado para algún valor finito k.

    En el ejemplo anterior la RdP es 2-acotada.Los lugares P 1, P 2 , P 3 y la RdP son acotados

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    40/62

    40

     Árbol de alcanceEjemplo de RdP 1-acotada

    Sistema de producciónMáquinas M1, M2; Cintas transportadoras C1, C2; piezas tipo a, bRestricciones para la secuencia de operaciones1. Pieza tipo a: Proceso en M1; transporte C1 M1→M2; Proceso en M2.2. Pieza tipo b: Proceso en M1; transporte C2 M1→M2; Proceso en M2.3. Las máquinas no pueden efectuar dos operaciones consecutivas deun mismo tipo de pieza.4. Almacenes de piezas a y b a la entrada de capacidad infinita5. Los palets de las cintas C1 y C2 tienen dos posiciones: M1 y M2.

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    41/62

    41

     Árbol de alcanceT1 Final proceso de a en M1 ; Inicio proceso de b en M1

    T2 Final proceso de b en M2; Inicio proceso de a en M2T3 Final proceso de b en M1; Inicio proceso de a en M1T4 Final proceso de a en M2; Inicio proceso de b en M2 P1  palet  C1 en M1 P5 M1 procesando aP2  palet  C1 en M2 P6 M1 procesando b 

    P3  palet  C2 en M2 P7 M2 procesando b P4  palet  C2 en M1 P8 M2 procesando a Estado inicial: M1 procesando a; C1 en M1; M2 procesando b; C2 en M1

    (1, 0, 0, 1, 1, 0, 1, 0)

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    42/62

    42

     Árbol de alcance A partir del árbol de alcance de la RdP se puede concluir:

    1) La RdP es 1-acotada2) Desde el estado inicial se puede llegar a 5 estados distintos 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    43/62

    43

    RdP no acotadas: Árbol de alcanceRdP no acotada → Árbol de alcance infinito (crece de forma ilimitada)

    Ejemplo: Estado inicial (1, 0, 0) t 1  (-1+1,+1, 0) t 2   (-1,+1,+1) t 3  (0, -1, -1+1)

    dead

    old

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    44/62

    44

    RdP no acotadas: Árbol de cobertura

     Ampliación de la asignación de marcas:

     A cada lugar de la RdP se le puede asignar un número demarcas:

    Número no negativo (0, 1, 2, 3, …)  Símbolo especial ω para representar a un número de marcas que

    puede crecer ilimitadamente (infinito)

    Cuando el disparo de una transición comporte sumar o restar n marcas a un lugar con símbolo especial, ω, se comportará de la siguiente

    manera1) ω + n = ω 2) ω - n = ω 3) n < ω 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    45/62

    45

    RdP no acotadas: Árbol de cobertura

     Árbol de cobertura Caracteriza las tipologías de nodos del árbol de alcance Se genera con las 4 reglas de generación del árbol de

    alcance + Regla de cobertura

    Regla de coberturaSi en el camino desde el nodo raíz M 0  hasta el nodo M  delárbol de alcance se puede encontrar un nodo M’  tal que

    M (P i ) ≥ M’ (P i ) para todos los lugares P i  Existe un lugar P k   tal que M (P k ) > M’ (P k )

    entonces el valor M’ (P k ) del árbol de alcance se substituyepor M’ (P k ) = ω 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    46/62

    46

    RdP no acotadas: Árbol de cobertura

     Árbol de coberturat 1  (-1+1,+1, 0) t 2   (-1,+1,+1) t 3  (0, -1, -1+1)M  = (1, 2, 0) y M’  = (1, 1, 0) M’  = (1, 1, 0) → M’  = (1, ω, 0)(1, ω, 0) + t 2  = (0, ω, 1) (0, ω, 1) + t 3 = (0, ω, 1)

    (1, 0, 0)

    (1, ω, 0) (0, 1, 1)

    (0, 0, 1)dead

    (1, ω, 0)old

    (0, ω, 1)

    (0, ω, 1)old

    t 2  t 1  

    t 1   t 2   t 3  

    t 3  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    47/62

    47

    RdP no acotadas: Árbol de cobertura Árbol de coberturaT1  (-1+1,+1, -1) T2   (+1,-1,+1) M 0  = (1, 0, 1)Estructura secuencial repetitiva: T1 , T2 , T1 , T2 , … M  = (2, 1, 0) y M’  = (1, 1, 0) M’  = (1, 1, 0) → M’  = (ω, 1, 0)(ω, 1, 0) + T2   = (ω, 0, 1) (ω, 0, 1) + T1  = (ω, 1, 0)

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    48/62

    48

    BloqueosBloqueo

    Dos procesos concurrentes utilizan recursos compartidos y quedanparados en mitad del proceso a la espera de recursos que tienereservados otro proceso.

    Ejemplo: Después de ejecutar T1 y T2 (T2 y T1) ninguna transición estáactivada

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    49/62

    49

    BloqueosEjemplo: Línea de producción

    Sistema de producciónMáquinas M1, M2; Transporte R1, R2; piezas tipo a, bRestricciones para la secuencia de operaciones1. Pieza tipo a: Proceso en M1; transporte R M1→M2; Proceso en M2.2. Pieza tipo b: Proceso en M2; transporte R M2→M1; Proceso en M1.3. Pieza accede máquina si la máquina y un manipulador están libres4. A la entrada de una pieza al sistema se le asigna un transporte quemantiene ocupado hasta la salida.5. Concluida la primera operación, la pieza espera hasta que la 2ªmáquina esté libre. Durante la espera la 1ª máquina está ocupada.6. Cuando finaliza 2ª operación queda libre la 2ª máquina y transporte.

    7. No puede haber más de una pieza tipo a o tipo b en el sistema

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    50/62

    50

    Bloqueos

    T1 Inicio proceso de a en M1

    T2 Inicio proceso de a en M2

    T3 Final proceso de a en M2

    T4 Inicio proceso de b en M2 

    T5 Inicio proceso de b en M1

    T6 Final proceso de b en M1 

    P1 M1 procesa a  P4 M2 procesa b

    P2 M2 procesa a  P5 M1 procesa b 

    P3 Plazas a libres P6 Plazas b libres

    P7 Unidades transporte libresP8 M2 libre P9 M1 libre

    Estado inicial: Máquinas, transportes yplazas libres

    (0, 0, 1, 0, 0, 1, 2, 1, 1)

    P  6  

    T  1  

    T  2  

    T  3  

    T  4  

    T  5   

    T  6  

    P  1  

    P  2  

    P  7   

    P  4  

    P  5   

    P  8   P  9  

    1 1 1 1

    2

    P  3  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    51/62

    51

    Bloqueos

    T1 Inicio proceso de a en M1 T2 Inicio proceso de a en M2

    T3 Final proceso de a en M2 T4 Inicio proceso de b en M2 

    T5 Inicio proceso de b en M1 T6 Final proceso de b en M1 

    El sistema se bloquea cuando M1 y M2 están efectuando la primeraoperación i el estado del sistema es (1, 0, 0, 1, 0, 0, 0, 0, 0)

    P  6  

    T  1  

    T  2  

    T  3  

    T  4  

    T  5   

    T  6  

    P  1  

    P  2  

    P  7   

    P  4  

    P  5   

    P  8   P  9  

    1 1

    P  3  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    52/62

    52

    Bloqueos

     Árbol de alcance 

    (0, 0, 1, 0, 0, 1, 2, 1, 1)

    (1, 0, 0, 0, 0, 1, 1, 1, 0) (0, 0, 1, 1, 0, 0, 1, 0, 1)

    (0, 1, 0, 0, 0, 1, 1, 0, 1) (1, 0, 0, 1, 0, 0, 0, 0, 0)dead (bloqueo)

    (0, 0, 1, 0, 1, 0, 1, 1, 0)

    (0, 0, 1, 0, 0, 1, 2, 1, 1)old

    (0, 0, 1, 0, 0, 1, 2, 1, 1)old

    T  1   T  4  

    T  2   T  4   T  1   T  5   

    T  3   T  6  

    P  6  

    T  1  

    T  2  

    T  3  

    T  4  

    T  5   

    T  6  

    P  1  

    P  2  

    P  7   

    P  4  

    P  5   

    P  8   P  9  

    1 1 1 1

    2

    P  3  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    53/62

    53

    Bloqueos

    Una forma de evitar el bloqueo es incorporar la restricción de queantes de empezar la primera operación en una pieza deben estar lasdos máquinas libres.

    El sistema procesa las

    piezas de una en una.Un transporte es suficiente.

    (0, 0, 1, 0, 0, 1, 2, 1, 1)

    (1, 0, 0, 0, 0, 1, 1, 1, 0) (0, 0, 1, 1, 0, 0, 1, 0, 1)

    (0, 1, 0, 0, 0, 1, 1, 0, 1) (0, 0, 1, 0, 1, 0, 1, 1, 0)

    (0, 0, 1, 0, 0, 1, 2, 1, 1)old

    (0, 0, 1, 0, 0, 1, 2, 1, 1)old

    T  1   T  4  

    T  2   T  5   

    T  3   T  6  

    P  6  

    T  1  

    T  2  

    T  3  

    T  4  

    T  5   

    T  6  

    P  1  

    P  2  

    P  7   

    P  4  

    P  5   

    P  8   P  9  

    1 1 1 1

    2

    P  3  

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    54/62

    54

    Redes de Petri coloreadas

    Una Red de Petri coloreada, RdPC, está compuesta por 9 elementosRdPC = (Σ, P, T, A, N, C, G, E, I).Σ = {C1, C2, …, Cnc} conjunto finito de nc colores. Cada color

    corresponde a un atributo y tiene asociados m valores, Ci = {ci1, ci2,…, cim}. 

    P = {P1, P2, …, Pnp} conjunto finito de np lugares T = {T1, T2, …, Tnt} conjunto finito de nt transiciones

     A = {A1, A2, …, Ana} conjunto finito de nt arcos N Función nodo: Definida sobre el conjunto de los arcos. Asocia a

    cada arco sus nodos terminales: origen y destino.

    C Función color: Definida sobre el conjunto de los lugares. Asocia acada lugar un único color  (una tipología de objeto).G Función guarda: Definida sobre el conjunto de las transiciones.

    Especifica las condiciones para desinhibir la transición. Seformaliza a través de expresiones booleanas.Gráficamente condición entre corchetes (al lado de la transición).

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    55/62

    55

    Redes de Petri coloreadas

    Una Red de Petri coloreada, RdPC, está compuesta por 9 elementosRdPC = (Σ, P, T, A, N, C, G, E, I).

    E Función entidad: Definida sobre el conjunto de los arcos.(Generalización de la función peso W de las RdP).

    En arco de entrada: especifica el número de marcas de cada tipode objeto (valor de la variable color) que se necesitan para activarla transición.En arco de salida: especifica el número de marcas de cada tipo delas entidades de salida.Gráficamente n

    c1

    ’(c1

    )+ nc2

    ’(c2

    )+ … + ncm

    ’(cm

    )  (al lado arco)I Función de inicialización: Definida sobre el conjunto de los lugares.

    Especifica el número de marcas para cada valor de la variablecolor (el número de cada tipo de objeto). (Generalización de laasignación de marcas).Gráficamente nc1’(c1)+ nc2’(c2)+ … + ncm’(cm)  (al lado lugar)

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    56/62

    56

    Redes de Petri coloreadas

    Una Red de Petri coloreada, RdPC, está compuesta por 9 elementosRdPC = (Σ, P, T, A, N, C, G, E, I).

     Adicionalmente es posible formalizar las prioridades entretransiciones mediante la función Π:T→N que asigna un entero nonegativo de prioridad a cada transición. Para disparar unatransición hace falta que no esté activada ninguna otra con mayorprioridad.

    Mismas técnicas de análisis que para las RdP.

    Las RdPC permiten formalizar las características de los objetos (color) y las condiciones para que un evento se produzca (G y E).

    Los modelos con RdPC son más compactos y más abstractos quecon RdP.

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    57/62

    57

    Redes de Petri coloreadas

    Ejemplo: Dos tipos de piezas distintas a, b son procesadas por lamisma máquina.

    RdP

    T1 Inicio proceso de a  T2 Inicio proceso de b 

    T3 Final proceso de a  T4 Final proceso de b

    RdPCT1 Inicio proceso de a  T2 Inicio proceso de b

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    58/62

    58

    Redes de Petri coloreadas

    Conjunto de coloresΣ = {x, y, R}  x = {1, 2}  Color tipo pieza 1→a  2→b 

    y = {0, 1}  Color estado máquina 0→libre 1→ocupada 

    R = x y  Color máquina procesando

    (1, 1) máquina procesa pieza 1(2, 1) máquina procesa pieza 2

    Transiciones

    T1 Inicio proceso

    T2 Fin proceso

    Lugares

    P1 Almacén entrada

    P2 Máquina libre

    P3 Máquina procesando

    P4 Almacén salida 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    59/62

    59

    Redes de Petri coloreadasFunción guarda

    G(T1) = true  G(T2) = true  No hay restriccionesFunción entidad E(A1) = 1’(x)  Una marca tipo pieza (puede ser a o b)E(A2) = 1’(0)  Sólo se activa transición con y = 0 (maq. libre)E(A3) = 1’(x,1)  Una máquina procesando pieza (a o b)E(A4) = 1’(x,1)  Una máquina procesando pieza (a o b)

    E(A5) = 1’(x) 

    Una marca tipo pieza

    E(A6) = 1’(0) 

    Marca tipo estado máquinaFunción estado inicial

    I(P1) = 3’(1)+3’(2) 

    I(P2) = 1’(0) 

    Función nodo flechas

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    60/62

    60

    Redes de Petri coloreadasEjemplo: Sistema de producción

    Sistema: 2 máq. erosión, 2 máq. mecanizado, 2 máq. EnsambladorasProceso siguiendo secuencia: erosión, mecanizado y ensamblado.

    Conjunto de colores

    Σ = {x, z, R} 

    x = {1, 2, 3, 4} Color cola Ci

    z = {1, 2, 3} Color tipo máquina

    R = z x Color estado máquina 

    (1, 1); (2, 2); (3, 3)

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    61/62

    61

    Redes de Petri coloreadas

    Nodos lugar

    P = {P1, P2, p3} P1 Máq. libre (color z) P2 Piezas en cola (x) P3 Máq. proces. (R)Transiciones T1 Inicio proceso T2 Fin proceso

    Función guarda G(T1) = [x = z] La máquina z = 1 sólo puede procesar pieza decola x = 1

    G(T2) = true

    Función entidad

    E(A1) = 1’(x) Una pieza activa T1 

    E(A2) = 1’(x+1) Una pieza pasa ala cola siguiente

    E(A3) = E(A4) = 1’(z) 

    E(A5) = E(A6) = 1’(z, x) 

  • 8/17/2019 Modelado de Sistemas Redes de Petri

    62/62

    Muchas gracias por su atención

    Modelando de sistemas:Redes de Petri