Redes de Petri - Introducción Dr Chris Ling School of Computer Science & Software Engineering Monash University (Traducido por Cesáreo Raimúndez)

Slides:



Advertisements
Presentaciones similares
U.M.L A/Gx. Diego Gutiérrez Application Analysis and Design.
Advertisements

Basado en Redes de Petri
ATAC Proyecto Final Análisis de Tránsito Asistido por Computadora
Diagrama de estado Alumnos: Hernández Darwin ( )
Programación Orientada a Objetos y Lenguaje de Modelado Unificado
Análisis y Diseño de Sistemas II “Exposición Diagramas UML”
Máquinas de Estado Finito
Instituto tecnológico de Villahermosa
Fundamentos de Ingeniería de Software
¿Qué es un modelo conceptual?
Ingeniería en Ciencias Económicas y Financieras
Ingeniería en Ciencias Económicas y Financieras
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
LENGUAJE UNIFICADO DE MODELADO UML
Sistemas Distribuidos “Técnicas de Especificación Formal”
METODOLOGIA DE LA PROGRAMACION
Figure: Lenguajes. Generaciones de lenguajes de programación.
Análisis y Diseño orientado a objetos con UML.
Profesor: Miguel Angel Vidal
Tema 10: Interfaces Antonio J. Sierra.
Bloqueo y Punto Muerto. En general se tiene que: Un autómata G podría alcanzar un estado x donde Γ( x ) = Ø, pero sí x  Xm, entonces ocurre un Bloqueo.
Tema 12 – Conceptos Básicos
Facultad de Ingeniería Manufactura Integrada Por Computador II
Sistemas a Eventos Discretos
PROPIEDADES DE LAS REDES DE PETRI
Máquinas de estados finitos
Una introduccion a las redes de Petri
* FRAUSTO JIMENEZ GABRIELA * * HERNANDEZ TORRES ANA LAURA * * MANDUJANO JUAN CARLOS * * NOVA MARIN YARELI PAULINA * * ZAVALA CORTE JOCELYN ARELI *
UNIDAD 3: “Desarrollo Orientado a Objetos con UML”
Fundamentos de programación
Modelado de Sistemas a Eventos Discretos.
5.3 APROXIMACIONES AL DISEÑO
TAREA: Simular un evento cotidiano REQUISITOS Hacerlo por computadora Permitir la manipulación de variables Puede usar software a la medida o hacerlo mediante.
INTEGRANTES: RAMIREZ TICONA ESTHER NELIDA SUAREZ MONTOYA HECTOR FREDDY PINTO CARVAJAL JUAN CARLOS UNIVERSIDAD SALESIANA DE BOLIVIA.
PROCESOS INDUSTRIALES
Diagramas de Flujo de Datos
Pasos de un estudio de simulacion (repaso).
Los Inventarios ÍNDICE 1.1. Introducción
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Introducción a la Simulación de Eventos Discretos José Daniel García Sánchez Grupo de Arquitectura Comunicaciones y Sistemas Universidad Carlos III de.
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
J. García Martín 22/06/ SISTEMAS DE TIEMPO REAL Especificación formal de sistemas. Statecharts.
TEMA 10: DIAGRAMA DE: OBJETOS, SECUENCIA Y DESPLIEGUE EN UML
El modelo de análisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diseño posterior del sistema. Dependiendo del.
Facultad de Ingeniería
Ingeniería de software
TEMA 9: DIAGRAMA DE CLASE EN UML
Modelo Dinámico (I) Prof. Leonid Tineo Departamento de Computación
Entendiendo las partes
Introducción a la Programación Orientada a Objetos (POO)
Ingeniería de Requisitos
DIAGRAMA DE SECUENCIA Y ACTIVIDADES.
Elaboración de algoritmos usando lógica de programación
Facultad de Ingeniería Manufactura Integrada Por Computador II.
UML.
PROCESOS DE NEGOCIO Y TECNICAS PARA MODELADO DE PROCESOS
2.1 DEFINICIONES CARACTERÍSTICAS Y SUPOSICIONES.
¿QUE ES EL DIAGRAMA DE ESTADO ?
Sandra Muñoz Blanca González Patricia Lázaro
UNIDAD 2: “Características del Modelado UML” CONTENDIDO Elaborado por: Ingeniero Harold Cabrera Meza Actualizado por: Ingeniero Nilson Albeiro Ferreira.
UNIDAD II LINEAS DE ESPERA
La Programación Orientado a Objetos
Diagrama de Clases.
Niveles y Flujos Información adaptada del libro de Sterman, y del curso de dinámica de sistemas de la Universidad Nacional de Colombia Sede Medellín.
Máquinas de Estados Diagrama de Actividades
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
Análisis de las Redes de Petri
Técnicas de Análisis de las Redes de Petri
Transcripción de la presentación:

Redes de Petri - Introducción Dr Chris Ling School of Computer Science & Software Engineering Monash University (Traducido por Cesáreo Raimúndez)

(C) Copyright 2001, Chris Ling Introducción 4 Desarrolladas por Carl Adam Petri en Herramienta gráfica para modelar concurrencia y sincronización en sistemas distribuidos. 4 Muy similar a los Diagramas de Transición de Estados. 4 Utilizado como método de descripción visual del comportamiento de sistemas dinámicos. 4 Bases teóricas matematicamente sólidas.

(C) Copyright 2001, Chris Ling Especificación de una RdP 4 Es formada de tres tipos de componentes: plazas (círculos), transiciones (rectángulos) y arcos (flechas): –Las Plazas representan los estados posibles del sistema; –Las Transiciones son eventos o acciones que causan el cambio de estado; –Cada Arco conecta una Plaza con una Transicion o una Transición con una Plaza.

(C) Copyright 2001, Chris Ling El Cambio de Estado … 4 Se indica por el movimiento de marca(s) (puntos negros) de plaza(s) a plaza(s); es causado por el disparo de una transicion. 4 El disparo representa un evento ocurrido o una acción tomada. 4 El disparo está supeditado a las condiciones de entrada, denominada como disponibilidad de marcado.

(C) Copyright 2001, Chris Ling El Cambio de Estado 4 Una transición es disparable o está habilitada cuando hay marcas suficientes en las plazas que llegan a la transición. 4 Después del disparo, las marcas se transferirán de las plazas de entrada (estados viejos) para las plazas de salida, que denotan los estados nuevos.

(C) Copyright 2001, Chris Ling Ejemplo: Máquina Expendedora 4 La máquina expende dos tipos de productos que cuestan – 20c y 15c respectivamente. 4 Apenas se pueden utilizar dos tipos de monedas: – 10c y 5c. 4 La máquina no devuelve cambio.

(C) Copyright 2001, Chris Ling Ejemplo: Máquina Expendedora (MEF) 0 cent 5 cents 10 cents 15 cents 20 cents Deposita 5c Deposita 10c Deposita 5c Retira producto 20c Retira producto 15c

(C) Copyright 2001, Chris Ling Ejemplo: Máquina Expendedora (Red de Petri) 5c Retira prod.15c Dep. 5c 0c Dep. 10c Dep. 5c 10c Dep. 10c Dep. 5c Dep. 10c 20c Dep. 5c 15c Retira prod. 20c

(C) Copyright 2001, Chris Ling Ejemplo: Máquina Expendedora (3 Casos) 4 Caso 1: –Deposita 5c, deposita 5c, deposita 5c, deposita 5c, compra producto de 20c. 4 Caso 2: –Deposita 10c, deposita 5c, compra producto de 15c. 4 Caso 3: –Deposita 5c, deposita 10c, deposita 5c, compra producto de 20c.

(C) Copyright 2001, Chris Ling Ejemplo: Máquina Expendedora (Evolución) 5c Compra 15c Dep. 5c 0c Dep. 10c Dep. 5c 10c Dep. 10c Dep. 5c Dep. 10c 20c Dep. 5c 15c Compra 20c

(C) Copyright 2001, Chris Ling Simultaneidad de Evolución de Estados 4 En el mundo real, los eventos ocurren simultaneamente. 4 Un sistema puede poseer muchos estados locales constituyendo un estado global. 4 Hay necesidad de modelar la concurrencia y la sincronización.

(C) Copyright 2001, Chris Ling Ejemplo: En un Restaurante (RdP) Camarero libre Cliente 1 Cliente 2 Toma pedido Toma pedido Pedido realizado Pedido al cocinero espera Plato servido comiendo

(C) Copyright 2001, Chris Ling Ejemplo: En un Restaurante (Dos Casos) 4 Caso 1: –Camarero emite pedido de cliente 1; sirve cliente 1; emite pedido de cliente 2; sirve al cliente 2. 4 Caso 2: –Camarero emite pedido de cliente 1; emite pedido de cliente 2; sirve cliente 2; sirve al cliente 1.

(C) Copyright 2001, Chris Ling Ejemplo: En un Restaurante (Caso 1) Camarero libre Cliente 1 Cliente 2 Emite pedido Emite pedido Pedido emitido Pedido al cocinero Esperando Sirve Plato Comiendo

(C) Copyright 2001, Chris Ling Ejemplo: En un Restaurante (Caso 2) Camarero libre Cliente 1 Cliente 2 Emite Pedido Emite Pedido Emitido Pedido al Cocinero Esperando Sirve Plato Comiendo

(C) Copyright 2001, Chris Ling Red: Estructuras 4 Secuencia de eventos/acciones: 4 Concurrencia: e1 e2e3 e1 e2 e3 e4 e5

(C) Copyright 2001, Chris Ling Red: Estructuras 4 Conflicto, elección, decisión: Elejir uno entre diversos e1, e2... e1e2 e3e4

(C) Copyright 2001, Chris Ling Red: Estructuras 4 Sincronización e1

(C) Copyright 2001, Chris Ling Red: Estructuras 4 Sincronización y Concurrencia e1

(C) Copyright 2001, Chris Ling Otro Ejemplo Un sistema productor-consumidor, está formado por un productor, dos consumidores y un almacén intermediario, de acuerdo con las reglas: El almacen intermediario tiene capacidad 5; El productor produce 3 items de cada vez; Apenas un consumidor puede acceder al almazen intermediario de cada vez; Cada consumidor consume 2 items de cada vez

(C) Copyright 2001, Chris Ling Sistema Productor-Consumidor listo p1 t1 produce libre envia p2 t2 k=1 k=5 Almacén p3 32 t3t4 p4 p5 k=2 acepta aceptado consume listo ProductoresConsumidores

(C) Copyright 2001, Chris Ling Ejemplo Productor-Consumidor En esta RdP, cada plaza tiene una capacidad y cada arco un peso. Esto hace posible que múltiplas marcas residan en una misma plaza podiendo modelarse comportamientos más complejos.

(C) Copyright 2001, Chris Ling Propiedades Comportamentales Alcanzabilidad “¿Se puede alcanzar un estado particular a partir de qualquier otro estado?” Acotación “¿Puede alguna plaza acumular un número ilimitado de marcas?” Vivacidad “¿Puede la evolución detenerse en un estado determinado?”

(C) Copyright 2001, Chris Ling Recordando la Máquina Expendedora 5c Compra 15c Deposita 5c 0c Deposita 10c Deposit 5c 10c Deposita 10c Deposita 5c Deposita 10c 20c Deposita 5c 15c Compra 20c

(C) Copyright 2001, Chris Ling Un marcado es un estado... t8 t1 p1 t2 p2 t3 p3 t4 t5 t6 p5 t7 p4 t9 M0 = (1,0,0,0,0) M1 = (0,1,0,0,0) M2 = (0,0,1,0,0) M3 = (0,0,0,1,0) M4 = (0,0,0,0,1) Marcado Inicial:M0

(C) Copyright 2001, Chris Ling Alcanzabilidad t8 t1 p1 t2 p2 t3 p3 t4 t5 t6 p5 t7 p4 t9 Marcado inicial:M0 M0 M1M2M3M0M2M4 t3t1t5t8t2t6 M0 = (1,0,0,0,0) M1 = (0,1,0,0,0) M2 = (0,0,1,0,0) M3 = (0,0,0,1,0) M4 = (0,0,0,0,1)

(C) Copyright 2001, Chris Ling Alcanzabilidad “M2 es alcanzable desde M1 y M4 es alcanzable desde M0.” De hecho, en el ejemplo de la máquina expendedora, todos marcados son alcanzables desde cualquier otro marcado. M0 M1M2M3M0M2M4 t3t1t5t8t2t6 Dada la secuencia de disparo:

(C) Copyright 2001, Chris Ling Acotación Una RdP se dice k -acotada o simplemente acotada si el número de marcas en cada plaza no excede un número finito k para cualquier marcado alcanzable a partir del marcado inicial. La RdP de la Máquina Expendedora es 1- acotada. Toda RdP 1-acotada es también segura.

(C) Copyright 2001, Chris Ling Vivacidad Una RdP con marcado inicial M0 es viva si, independientemente del marcado alcanzado a partir de M0, es posible disparar cualquier transicion escogiendo una secuencia de disparo adecuada. En una RdP viva no puede ocurrir abrazo- mortal, sea cual fuere la secuencia de disparo escogida.

(C) Copyright 2001, Chris Ling Vivacidad La máquina expendedora es viva y el sistema productor-consumidor es también viva. Una transición es muerta si no puede ser disparada desde qualquier secuencia de disparo.

(C) Copyright 2001, Chris Ling Un Ejemplo RdP Limitada y no-Viva p1 p2 p3 p4 t1 t2 t3t4 M0 = (1,0,0,1) M1 = (0,1,0,1) M2 = (0,0,1,0) M3 = (0,0,0,1)

(C) Copyright 2001, Chris Ling Otro Ejemplo p1 t1 p2p3 t2t3 p4 p5 t4 RdP No Acotada y Viva M0 = (1, 0, 0, 0, 0) M1 = (0, 1, 1, 0, 0) M2 = (0, 0, 0, 1, 1) M3 = (1, 1, 0, 0, 0) M4 = (0, 2, 1, 0, 0)

(C) Copyright 2001, Chris Ling Métodos de Análisis Reachability Analysis: Reachability or coverability tree. State explosion problem. Incidence Matrix and State Equations. Structural Analysis Based on net structures.

(C) Copyright 2001, Chris Ling Otros Tipos de RdP’s RdP coloreadas Las marcas tienen “colores”, modelando sistemas complejos de información. RdP temporizadas Retardos temporales asociados a transiciones y/o plazas. Retardos fijos o intervalados. RdP estocásticas: retardos modelados por variables aleatorias con distribución exponencial.

(C) Copyright 2001, Chris Ling Otros Tipos de RdP’s RdP Orientadas a Objetos Marcas son instancias de clases, moviéndose de plaza a plaza, llamando métodos y cambiando Atributos. La estructura de la red modela el comportamiento interno de los Objetos. El propósito es elaborar paradigmas Orientados a Objetos para estructurar y construir el sistema.

(C) Copyright 2001, Chris Ling Una RdP O-O ready produce Storage accepted consume ready ProducerConsumer send accept Producer data: ITEM ITEM produce( ) void send(ITEM) Consumer data: ITEM ITEM accept( ) void consume(ITEM)

(C) Copyright 2001, Chris Ling Referencias de RdP’s  Murata, T. (1989, April). Petri nets: properties, analysis and applications. Proceedings of the IEEE, 77(4),  Peterson, J.L. (1981). Petri Net Theory and the Modeling of Systems. Prentice-Hall.  Reisig, W and G. Rozenberg (eds) (1998). Lectures on Petri Nets 1: Basic Models. Springer-Verlag.  The World of Petri nets: daimi.au.dk/PetriNets/