Title: Introduccin a las Redes de Petri
1Introducción a lasRedes de Petri
Carlos Aguirre Juan de Lara Gonzalo Martínez
Muñoz Roberto Moriyón
- Juan de Lara con modificaciones de Gonzalo
Martínez Muñoz
2Redes de Petri. Ejemplo restaurante.
3Índice
- Estructura del curso.
- Modelado y Simulación.
- Redes de Petri. Introducción
- Bibliografía.
4Estructura del curso
- Introducción (1 sesión). GMM.
- Redes de Petri Básicas (3 ó 4 sesiones). GMM.
- Redes de Petri Temporales y Estocásticas (3
sesiones). CA. - Redes de Petri Coloreadas (4 sesiones). RM.
- Exposición de Trabajos (1 ó 2 sesiones). Vosotros.
5Evaluación
- Exposición de Trabajos/Proyecto.
- Ejercicios.
- Asistencia.
6Índice
- Estructura del curso.
- Modelado y Simulación.
- Redes de Petri. Introducción
- Bibliografía.
6
7Modelado
- Sistemas compuestos por componentes.
- Su comportamiento puede ser descrito por
separado. - Cada componente tiene un estado
- Cambia a lo largo del tiempo.
- Contiene información relevante para describir sus
acciones futuras.
8Modelado
- Estudiar un fenómeno indirectamente a través de
un modelo. - Representación (matemática) de características
importantes del sistema. - Manipulando el modelo se espera obtener nuevo
conocimiento sin el peligro, coste o molestias de
manipular el sistema real.
9Modelado y Simulación.
REALIDAD
MODELO
Entidad del Mundo Real
Modelo Base
OBJETIVOS
Estudiar comportamiento en contexto del
experimento.
Sistema S
Modelo M
en contexto
Simular experimento virtual
Experimento dentro de contexto.
Datos Observados del Experimento
Resultados de la Simulación
Proceso de ModeladoSimulación
validación
10Modelado y Simulación.
Morfismo de comportamiento
Sistema Real
Modelo Abstracto
Modelado/Abstracción
Experimento dentro de contexto.
Experimento virtual
Resultados del Experimento
Resultados de la Simulación
Abstracción
11Modelado y Simulación. Validación y Verificación.
Sistema Real
Efecto
Causa
Validación del Modelo Conceptual
Modelo Conceptual
Validación del Comportamiento
Verificación
Modelo de Simulación
Entrada
Salida
12Modelado. Base Temporal.
- Todo formalismo de simulación debe tener una
variable de indexación (normalmente es el tiempo)
que permita la transición de estados de los
modelos. - TimeBase ? T, lt ?
- Bases temporales comunes incluyen
- T NOW (modelos algebraicos).
- T R (continuos, eventos discretos, etc.)
- T N (autómatas, Redes de Petri BW, etc.)
13Modelado y Simulación. Tipos.
- Analógica.
- Modelo circuitos electrónicos.
- Ordenador analógico.
- Vannevar Bush 30s.
- Digital Continua.
- Modelo Ecuaciones diferenciales, diferenciales
algebraicas, en derivadas parciales. - Tiempo pseudo-continuo. Intervalo elemental de
tiempo. - El estado del sistema cambia de forma continua.
- Digital Discreta
- Procesos estadísticos. Diversa forma dependiendo
del formalismo. - Base temporal continua, número finito de eventos
en un intervalo. Valores no predecibles. - El estado del sistema cambia cuando se produce
un evento. - Híbrida.
14Simulación Discreta.
- Las variables que representan el estado del
sistema cambian (instantáneamente) en instantes
discretos de tiempo (eventos). - El estado del sistema permanece inalterado entre
eventos. - La base temporal es continua, pero durante un
cierto intervalo de tiempo, sólo un número finito
de eventos ocurren.
15Modelado Productor-consumidorAutómata finito
wait1 wait2 ebuff
- Representación basada en estado (autómata
finito). - Concurrencia Entrelazado.
- Representación explícita de independencia
secuencial de acciones - rp1 r2 rp1 r2
- Buffer de capacidad 10, 100, 1000?
- Varios productores y consumidores?
rp1
prod1 wait2 ebuff
rc2
p1
wait1 wait2 fbuff
r2
rp1
rc2
wait1 cons2 ebuff
prod1 wait2 fbuff
rp1
r2
prod1 cons2 ebuff
p1
rc2
wait1 cons2 fbuff
16Modelado Productor-consumidor Statechart
prod
ebuff
wait
prod in Buffer.ebuff
prod
read
read in Buffer.fbuffer
rp
rc
wait
fbuff
cons
Productor
Buffer
Consumidor
- Representación basada en estado (Statechart).
17Modelado Productor-consumidor Programación de
eventos Grafo de eventos
5, 10
buffer0
buffer1
Ready to Produce
produce
5, 10
- Representación basada en eventos (event
scheduling)
Init
buffer0
5, 10
Ready to consume
consume
buffer0
buffer1
5, 10
18Modelado Productor-consumidorInteracción de
procesos GPSS
5, 10
CONSQ
Producer consumer GENERATE 5, 10
Create token QUEUE CONSQ Queue for
Consumer SEIZE CONSUMER Get the
consumer DEPART CONSQ Leave queue
ADVANCE 5, 10 Consume RELEASE
CONSUMER Free Consumer TERMINATE 1
Count tokens START 1000 Run
1000 tokens END
CONSUMER
CONSQ
5, 10
CONSUMER
1
19Modelado Productor-consumidorÁlgebra de procesos
- producer p.rp.producer
- consumer rc.r.consumer
- buffer p.r.buffer
- (producerconsumerbuffer)\p, r, p, r
- Representación basada en acciones (álgebra de
procesos. Milner)
20Modelado Productor-consumidor Redes de Petri
empty
prod
cons
Ready consume
deliver
read
Ready Produce
wait
wait
full
- Representación mediante Redes de Petri
21Modelado Productor-consumidor. 2 Consumidores.
cons1
empty
Ready consume1
prod
read1
wait1
deliver
Ready Produce
cons2
Ready consume2
wait
read2
full
wait2
22Modelado Productor-consumidor. Capacidad 100.
cons1
empty
Ready consume1
100
prod
read1
wait1
deliver
Ready Produce
cons2
Ready consume2
wait
read2
full
wait2
22
23Modelado Productor-consumidor. Con tiempo.
empty
prod
cons
Ready consume
?9
Ready Produce
deliver
read
?1
?1
?8
wait
wait
full
- Representación mediante Redes de Petri con tiempo.
24Modelado Productor consumidor con contador.
Redes Coloreadas
1(0,hola)
CPCK
1(0, null)
prod
cons
full
CPCK
CPCK
(x, packet)
(m,packet)
(n,packet)
(m, packetstr(m))
(x, packet)
(n1,packet)
Ready Produce
Ready consume
read
deliver
(m, packet)
(m1, packet)
n
n
1(0)
x
X1
wait
wait
empty
int
int
CPCK
Declarations Type PCK String. Type CPCK int
x String Var m, n, x int Var packet String
- Representación mediante Redes de Petri coloreadas
(de Alto Nivel).
25Índice
- Estructura del curso.
- Modelado y Simulación.
- Redes de Petri. Introducción
- Bibliografía.
26Redes de Petri. Definición
- Herramienta para la descripción y estudio de
sistemas discretos mediante grafos - Las redes de Petri pueden representar sistemas
- Concurrentes
- Síncronos y asíncronos
- Distribuidos, paralelos y secuénciales
- No deterministas
- Estocásticos
- Compartición de recursos
- C.A. Petri a principios de los 60
26
27Redes de Petri. Definición
- Las redes de Petri son una herramienta de
modelado - Gráfica
- Matemática Permite analizar las propiedades de
un sistema asociado al modelo - Grafos de alcanzabilidad y cubrimiento.
- Técnicas lineales algebraicas.
- Características Estructurales.
- Reducción.
2
H2
2
H2O
O2
27
28Redes de Petri. Restaurante
29Redes de Petri. Extensiones.
- Redes de Petri con tiempo determinista o
estocástico - Permiten analizar
- Rendimientos de sistemas Llamadas medias a
modulos - Scheduling
- Modelar servidores tiempos de respuestas
- Redes de Petri coloreadas Manejan tipos de datos
- Diseño de grandes sistemas de software
30Redes de Petri. Aplicaciones.
- Protocolos de comunicación
- Análisis de rendimientos de sistemas
- Diseño de software distribuido
- Sistemas de control industrial
- Sistemas multiprocesador
- Modelos de decisión
- Circuitos
- etc.
30
31Índice
- Estructura del curso.
- Modelado y Simulación.
- Redes de Petri. Introducción
- Bibliografía.
32Bibliografía
- Peterson, J.L. 1981. Petri Net Theory and the
Modeling of Systems. Prentice-Hall, INC.,
Englewood Cliffs, N.J. (General). - Murata, T. 1989. Petri Nets Properties,
Analysis and Applications. Proceedings of the
IEE, Vol. 77(4). Pp. 541-580. (General) - Jensen, K. Coloured Petri nets basic concepts,
analysis methods and practical use. Monographs
in Theoretical Computer Science, Springer-Verlag,
1997. (Redes de Petri Coloreadas). - Petri Nets world http//www.daimi.au.dk/PetriNets
/ - Reisig, W., Rozenberg, G., Desel, J., Jensen, K.,
Silva, M., Balbo, G. Introductory Tutorial at
PetriNets2000.