Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

47
Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Transcript of Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Page 1: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Una introduccion a las redes de Petri

Laboratorio de Control de procesos

Carl Adam Petri1926-

Page 2: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Contenido

> Introduccion > Estructura de una red de Petri> Dinamica una red de Petri > Modelado con redes de Petri > Finalmente . . .

2

Page 3: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Introduccion

3

Page 4: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

¿Qué son las redes de Petri?

> Las redes de Petri (PN) son una herramienta de modelado que captura la dinanica operacional de los sistemas a eventos discretos

> Representacion grafica formal del flujo de actividades en sistemas complejos

> Un lenguaje de modelado

4

Page 5: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Caracteristicas de las redes de Petri > Soportan la simulación del sistema

> Soportan modularidad y abstraccion

> Soportan el análisis formal para propiedades, tales como:

— Acotamiento, — Vivazidad— alacanzabilidad, etc.

> La literatura sobre redes de Petri es abundante

5

Page 6: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Adecuadas para modelar

> Secuencialidad> Concurrencia> Sincronización> Conflicto> Precedencia> Prioridad

6

Page 7: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Aplicaciones

7

— Sistemas de manufactura— Redes de computadoras— Diseño de software— Modelado de sistemas

concurrentes y/o distribuidos— Protocolos de comunicación, etc.

Page 8: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Estructura de una red de Petri

8

Page 9: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Elementos de una red de Petri

9

lugar

transicion

Una marca

arco de entrada

arco de salida

Page 10: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Elementos de una red de Petri

10

Page 11: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Interpretacion de una red de Petri

11

lugar = estado

transicion =

un evento

marca

Estado activo

Page 12: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Un ejemplo sencillo

12

lugar = Bomba encendida

transicion =

Switch ON

marca

Estado activo

lugar = Bomba apagada

Page 13: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Un ejemplo sencillo

13

lugar = Bomba encendida

transicion =

Switch ON

marca

Estado activo

lugar = Bomba apagada

¿Qué sucede en la red si el Switch se conmuta a OFF?

Page 14: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Otro ejemplo

14

Un lector en una biblioteca:

> esperando,> leyendo

esperando

leyendo

strt_reading

stop_reading

Page 15: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Otro ejemplo

15

Un lector en una biblioteca:

> esperando,> leyendo

esperando

leyendo

strt_reading

stop_reading

Page 16: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Otro ejemplo

16

Un lector en una biblioteca:

> esperando,> leyendo

esperando

leyendo

strt_reading

stop_reading

Page 17: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Otro ejemplo

17

Un lector en una biblioteca:

> esperando,> leyendo

esperando

leyendo

strt_reading

stop_reading

Page 18: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Otro ejemplo

18

Un lector en una biblioteca:

> esperando,> leyendo

esperando

leyendo

strt_reading

stop_reading

Page 19: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Ejercicio

19

Dos lectores en una biblioteca:

> esperando,> leyendo

esperando

leyendo

strt_reading

stop_reading

Page 20: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Dinamica una red de Petri

20

Page 21: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Reglas

> Todos los arcos (conecciones) son dirigidas

> No existen arcos entre dos lugares

> No existen arcos entre dos transiciones

> Los lugares pueden tener cero o mas marcas

> Los arcos pueden tener peso: con valor de 1, 2, …, o mas

21

b

a

y

x

Page 22: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Redes de Petri: una definicion

22

Una red de Petri C = P,T,I,O consiste de:

1. Un conjunto finito de lugares P

2. Un conjunto finito de transiciones T

3. Una funcion de entrada I: T NatP

4. Una funcion de salida O: T NatP

5. Una funcion de pesos W: T Nat

Un marcado de C es un mapeo m: P Nat

P = { x, y }

T = { a, b }

I(a) = { x }, I(b) = { x, x }

Ejemplo

O(a) = { x, y }, O(b) = { y }

m = { x, x }

b

a

y

x

Page 23: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Disparo de una transicion

23

Una transicion se produce (“se dispara”):

si todos los lugares de entrada tienen el numero requerido de marcas

p1 p2

t2

t1

Page 24: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Disparo de una transicion

24

Una transicion se produce (“se dispara”):

si todos los lugares de entrada tienen el numero requerido de marcas

Page 25: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Disparo de una transicion

25

NO

Una transicion se produce (“se dispara”):

si todos los lugares de entrada tienen el numero requerido de marcas

Page 26: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Disparo de una transicion

26

Una transicion se produce (“se dispara”):

si todos los lugares de entrada tienen el numero requerido de marcas

2

Page 27: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Transicion habilitada

> Una transición está habilitada cuando el número de marcas en cada uno de sus lugares de entrada es por lo menos igual al peso de arco que va del lugar a la transición.

> Una transición habilitada puede o no dispararse

27

(ocurre o no ocurre un evento)

Page 28: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Disparo de una transicion

> El disparo de una transición habilitada t:

— consume w(p,t) marcas de cada lugar p de entrada de t,

— y produce w(t,p) marcas a cada lugar de salida p de t,

28

2

p1 p2t1

3

2

p1 p2t1

3

Page 29: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

29

Disparo de una transicion

Para disparar una transicion t:1. t debe estar habilitado: m ≥ I(t)2. consume entradas y genera salida: m= m - I(t) + O(t)

b

a

b

a

b

Page 30: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Disparo de una transicion

30

H2

O2

H2O

2H2 + O22H2O

2 2t

Antes del disparo

H2

O2

H2O

2

2

t

Despues del disparo

Peso = 2

Page 31: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Ejecucion de las redes de Petri

> La ejecución de las redes de Petri es no-deterministica

— Pueden ser habilitadas múltiples transiciones al mismo tiempo

— Cualquier transicion habilitada puede ser disparada

— No se exige que una transicion sea disparada

– puede dispararse cuando quiera, en un tiempo entre 0 e infinito, o no dispararse nunca

31

Page 32: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Modelado con redes de Petri

32

p2

t1p1

t2

p4

t3p3

Page 33: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Secuencialidad

33

> Ejecucion secuencial

p2

t1

p1 p3

t2

Page 34: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Sincronizacion

34

> Sincronizacion

t1

t1

Page 35: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Conjuncion

35

> Se llega por diferentes caminos

t2

t3

t1

Page 36: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Toma de deciciones

36

> Se toman diferentes caminos

t2

t3

t1

Page 37: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

37

Concurrencia

Entradas independientes permiten el disparo “concurrente” de la transicion

Page 38: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Concurrencia

38

Paralell BeginParalell End

p1

p2

p3

p4t1

t2

t3 t4

p5

Page 39: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Lugar de entrada y salida

39

p2

p3

p4

t3

> Lectura sin modificacion de condiciones

Page 40: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Conflicto

40

Page 41: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Resolucion del conflicto

41

Punto de decision

El conflicto resultante puede ser resuelto de manera simplemente determinista o de manera probabilistica, atribuyendo probabilidades apropiadas a las transiciones en conflicto

Page 42: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

42

Exclusion mutua

Las dos subredes estan forzadas a sincronizarse

Page 43: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

43

Productores y Consumidores

productor consumidor

Page 44: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

44

Buffers acotados

# slots ocupados

# slots libres

Page 45: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Finalmente. . .

45

Page 46: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

¿Qué mas debería conocer?

> ¿Cómo se especifican formalmente las redes de Petri?

> ¿Cuál el conjunto de “alcanzabilidad” de una red? ¿Cómo se puede calcular este conjunto?

> ¿Cómo puede una (mala) implementacion de una red de Petri quedar bloqueada aun cuando existan transiciones activadas?

> ¿Qué es una red de Petri temporizada? ¿Qué es una red de Petri coloreada?

> “ y ……. ???”

46

Page 47: Una introduccion a las redes de Petri Laboratorio de Control de procesos Carl Adam Petri 1926-

Una solucion…

47

Inscribase en la electiva

“Sistemas a eventos discretos”