REDES DE PETRI_Estrategías de programacion

12
ISA - Vigo 2010 Introducción a las redes de Petri 1 Hace referencia a la ejecución simultánea de varios procesos. En las redes de Petri, la concurrencia se modela mediante transiciones con más lugares de salida que de entrada (distribución) aumentando el número total de lugares marcados. Modelado de sistemas complejos con redes de Petri. Concurrencia

Transcript of REDES DE PETRI_Estrategías de programacion

Page 1: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 1

• Hace referencia a la ejecución simultánea de varios procesos.

• En las redes de Petri, la concurrencia se modela mediante transiciones con más lugares de salida que de entrada (distribución) aumentando el número total de lugares marcados.

Modelado de sistemas complejos con redes de Petri. Concurrencia

Page 2: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 2

• Hace referencia a la necesidad de que varios procesos coordinen su terminación.

• En las redes de Petri, la sincronización se modela mediante transiciones con varios lugares de entrada (distribución). Pueden implicar la terminación de tareas (conjunción) o puntos de sincronismo o de espera.

Modelado de sistemas complejos con redes de Petri. Sincronización

Page 3: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 3

d1

B

d2

D

i1

A

i2

C

M

d1

B

d3

F

i1

A

i3

E

M

d2

D

i2

C

2 carros 3 carrosM

E F

i3 d3

C3

A B

i1 d1

C1

C D

i2 d2

C2

Ejemplos de modelado con redes de Petri.Carros que van y vienen sincronizados

Page 4: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 4

Ejemplo: Inicialmente el Carro1 está sobre A y el Carro2 está sobre C.

Al pulsar M se desplazan simultáneamente hacia la derecha.

C1 vuelve nada más llegar a B

C2 no vuelve hasta que c1 no haya llegado a A

A B

i1 d1

C1

C D

i2 d2

C2

M

d1

B

d2

D

i1

A

i2

C

(Espera)(Espera)

distribución

conjunción

Modelado de sistemas complejos con redes de Petri. Sincronización

Page 5: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 5

Ejemplo: Si se modifica ahora el funcionamiento para que sea todo igual salvo que si C2 está más de 15 segundos esperando en D, regrese automáticamente sin esperar a que C1 llegue a A.

C

d1

B

d2

D/*T115s

i1

A

i2

(Espera)

Mal modelado

T1=0

C

d1

B

d2

D/*T115s

i1

A

i2

T1=0

Modelado de sistemas complejos con redes de Petri. Sincronización

Page 6: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 6

• Hace referencia a recursos que solo pueden ser utilizados por un proceso o por un número limitado de procesos a la vez.

• En las redes de Petri, la exclusión mutua se modela mediante lugares marcados con mas transiciones de salida que de entrada (selección).

Modelado de sistemas complejos con redes de Petri. Exclusión mutua

t1 t2

Page 7: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 7

• A : Debe esperar en EA hasta que la zona común esté libre. Espera obligatoria en D de TA =100s.

• B : Igual que A pero con prioridad y TB =50s.

MAEA

iA dA

A iB dB

B

EB

CA

CB G

D

MB

Ejemplos de modelado de sistemas complejos. Recurso compartido entre dos carros (I)

Page 8: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 8

COMENTARIOS:

1) Condición inicial: los dos carros en reposo en CA y CB .

2) El lugar central modela el acceso al recurso compartido y representa su estado de reposo.

3) Las transiciones de salida del recurso están en conflicto si lo solicitan simultáneamente. Para evitarlo, se ha dado prioridad al carro B.

CA

*TA 100

MA CA

dA

EA

G

TA =0

EB

dA ,G

iA ,G

EA

iA

MB CB

dB

EB

TB =0CB

EB

dB

iB

EB

iB

*TB 50D D

Ejemplos de modelado de sistemas complejos. Recurso compartido entre dos carros (II)

El recurso compartido se modela dedicándole un único lugar. Esto permite que una parte del sistema use el recurso compartido mientras otra parte hace otra cosa.

Page 9: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 9

MA

EA

iA dA

A

iB dB

B

EC

CA

CC

GA D

MC

Ejemplos de modelado de sistemas complejos. Recurso compartido entre TRES carros (I)

MB

iC dC

C

CB EB

GC

Page 10: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 10

*TA 100

MA CA

dA

EA

GA

TA =0CA

EB y EC

dA ,GA

iA ,GA

EA

iAiB

D

MB CB

dB

EB

TB =0

CB

EB

dB

iB

EB

*TB 50D

Ejemplos de modelado de sistemas complejos. Recurso compartido entre tres carros (II)

Mc Cc

dC

EC

TC =0CC

EB

dC, GC

iC

EC

*TC 20D

iC, GC

GC

Page 11: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 11

Los recursos compartidos con acceso alternado se modelan dedicando dos lugares para dicho recurso.

Ejemplo: Se tiene el mismo ejemplo de los dos carros, pero esta vez se quiere que los carros vayan alternativamente a la posición D (empezando por el carro A)

*TA 100

MA CA

dA

EA

G

TA =0

dA ,G

iA ,G

EA

iA

MB CB

dB

EB

TB =0CB

dB

iB

EB

iB

*TB 50D D

Ejemplos de modelado de sistemas complejos.Alternancia

Page 12: REDES DE PETRI_Estrategías de programacion

ISA - Vigo 2010 Introducción a las redes de Petri 12

• La alternancia entre varios procesos (modelados con subredes de Petri) puede darse sin necesidad de la existencia de un recurso común. Por ejemplo, si se quiere una alternancia entre los procesos A, B y C, es decir, la secuencia: A B C A B C...

finA

A

finB

B

finC

C

Modelado de sistemas complejos con redes de Petri. Alternancia