PROGRAMACION CONCURRENTE Y DISTRIBUIDA

Documentos relacionados
Mercedes Granda Departamento de Electrónica y Computadores. Las propiedades de las redes de Petri nos permiten

Introducción (Informal)

Introducción a las RdP. Optimización basada en redes de Petri. Redes de Petri. Son objeto de estudio: RdP. Ejemplos:

Breve introducción a la Investigación de Operaciones

de Operaciones Área Académica: Sistemas Computacionales Tema: Tipos de Modelos en Investigación Profesor: I.S.C. Guadalupe Hernández Coca

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Tema 2 Introducción a la Programación en C.

SESIÓN 17 APLICACIÓN DE MODELOS A SISTEMAS DE MANUFACTURA. UPIITA-IPN Primer semestre 2011

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

Sesión 16 METODOLOGÍAS DE MODELADO

Complejidad de los Algoritmos

Diseño arquitectónico 1ª edición (2002)

Probabilidad es una manera de indicar la posibilidad de ocurrencia de un evento futuro

Convertir un AFND a un AFD

Bases Formales de la Computación

M. C. Felipe Santiago Espinosa

Prueba, caso de prueba, defecto, falla, error, verificación, validación.

Estructuras Administrativas

Este documento enumera los diferentes tipos de Diagramas Matriciales y su proceso de construcción.

MODELOS DE COMPUTACION I Preguntas Tipo Test. 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular.

Autómatas Deterministas. Ivan Olmos Pineda

En matemáticas el concepto de conjunto es considerado primitivo y no se da una definición de este, por lo tanto la palabra CONJUNTO debe aceptarse

C a l ses P P y y NP C a l se P C a l se N P N P [No N n o -De D te t rmin i i n s i ti t c i Polynomial-tim i e]

LECTURA 01: LA ESTADÍSTICA. TÉRMINOS DE ESTADÍSTICA. RECOLECCIÓN DE DATOS TEMA 1: LA ESTADISTICA: DEFINICION Y CLASIFICACION

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY

INTRODUCCIÓN: OBJETIVOS:

Algebra lineal y conjuntos convexos

Guía práctica de estudio 03: Algoritmos

Tema: Los Grafos y su importancia para la optimización de redes.

LECTURA 01: LA ESTADÍSTICA. TÉRMINOS DE ESTADÍSTICA. RECOLECCIÓN DE DATOS TEMA 1: LA ESTADISTICA Y CLASIFICACION

Computabilidad y Lenguajes Formales: Autómatas Finitos

EIE SISTEMAS DIGITALES Tema 8: Circuitos Secuenciales (Síntesis) Nombre del curso: Sistemas Digitales Nombre del docente: Héctor Vargas

ÁLGEBRA DE BOOLE. 1.- Postulados de HUNTINGTON

13. Utilizar la fórmula del término general y de la suma de n términos consecutivos

Guía práctica de estudio 03: Algoritmos

Elementos Diagramas de Clases Clase:

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos

NATURALEZA Y PROPÓSITO DE LA PLANEACIÓN. L.A. y M.C.E. Emma Linda Diez Knoth

Tema II: Metodología para la construcción de programas. Profesora: Nelly García Mora

ACTIVIDAD: Control de Lectura # 1: Benchmarking para Competir con Ventaja Por: Roberto J. Boxwell. MATERIA: Ingeniería de Software.

La eficiencia de los programas

Los Métodos de Valoración Indirecta (Costo De Viaje)

Objetivos. Plan. Cambios de grupos Prof. sustituto: Alicia Villanueva

El Autómata con Pila: Transiciones

INGENIERÍA DEL SOFTWARE

Diagramas de interacción

TEMA 2: PROGRAMACIÓN LINEAL.

PROCESOS SOFTWARE. Según esta estrategia, todo proceso debe planificarse, implantarse y evaluarse, para luego actuar sobre él.

Jesús Getán y Eva Boj. Marzo de 2014

CURSO DE MÉTODOS CUANTITATIVOS I

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS.

PROGRAMACIÓN LINEAL ENTERA

Sistemas Lineales e Invariantes PRÁCTICA 2

Grafos. Amalia Duch Brown Octubre de 2007

Unidad Temática 3: Probabilidad y Variables Aleatorias

UNIDAD I. ALGORITMOS

4. NÚMEROS PSEUDOALEATORIOS.

I.E.F.P.S. REPÉLEGA G.L.H.B.I. ESPECIFICACIONES DE CURSOS DE CATÁLOGO MODULAR Pág. 1/3

5. PLL Y SINTETIZADORES

Proyecto PropULSA: Estadística y Probabilidad Breviario Académico

Análisis y síntesis de circuitos con elementos de memoria. Proceso de Análisis y síntesis de circuitos con elementos de memoria

DIAGRAMAS UML ANDRÉS ESTEBAN MARTÍNEZ HUTA CICLO DE VIDA DEL SOFTWARE GLORIA CECILIA RÍOS MUÑOZ

1. Análisis de Sensibilidad

Fundamentos de Ciencias de la Computación Trabajo Práctico N 2 Lenguajes Libres del Contexto y Sensibles al Contexto Segundo Cuatrimestre de 2002

Ingeniería del Software I

Verificación. Taller de Programación

Algoritmos. Diagramas de Flujo. Informática IV. L. S. C. Heriberto Sánchez Costeira

INVERSORES RESONANTES

PROBLEMAS DE EXAMEN. 1.- La figura representa un convertidor alterna/alterna con control por fase bidireccional con carga resistiva:

Metodología de Desarrollo Visual. Universidad Carlos III de Madrid. Maria- Isabel, Sanchez Segura & Arturo, Mora- Soto

Clase 2 Introducción al Modelamiento

Indagación en diversas fuentes de información acerca de la existencia de los números irracionales. Análisis de situaciones

La Ecuación Contable

Tema 2 Análisis Dinámico de Sistemas 2º Ing. Telecomunicación. Octubre de 2003 Análisis Dinámico de Sistemas (2º Teleco, EPSIG) 1 de 30

Ruta más Corta con una sóla Fuente de Inicio (Single-Source Shortest Paths) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE

INTERPRETACIÓN NORMA OHSAS 18001:2007 MÓDULO 1 SESIÓN 1 INTERPRETACIÓN DE LA NORMA OHSAS 18001:2007 DOCENTE: Ing. Dª. Ana I.

Clase III - Control de corriente en inversores de tensión

Tema II: Metodología para la construcción de programas

Modelos de Equilibrio General Computable; El Enfoque Macro Micro

Introducción a la programación

Máquinas Secuenciales, Autómatas y Lenguajes. Tema 3.1: Autómatas Finitos Deterministas

IDENTIFICACIÓN Y TRAZABILIDAD

Ampliación de las funciones docentes:

EXPERIMENTO ALEATORIO

Tema 3: El Método Simplex. Algoritmo de las Dos Fases.

El pipeline de visualización es el conjunto de

Práctica 5. Generadores de Señales de Reloj y Flip-flops

Curso Superior de Creación de Modelos de Simulación con Vensim

Índice general. Agradecimientos Resumen Abstract

Técnicas Avanzadas de Control Memoria de ejercicios

Inteligencia Artificial

Clasificación de sistemas

PROCESOS DE LA DIRECCIÓN DE PROYECTO I N G. C R U C E S H E R N A N D E Z G U E R R A U N I V E R S I D A D A L A S P E R U A N A S

2. SEÑALES Y SISTEMAS DISCRETOS EN EL TIEMPO. Una señal puede ser definida como una portadora física de información. Por ejemplo,

Autómatas Finitos Deterministicos (DFA)

Es un conjunto de objetos llamados vértices o nodos unidos por enlaces llamados aristas o arcos, que permiten representar relaciones binarias entre

Sistemas Operativos. Sesión 2: Enrutamiento estático

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Diseño Web Avanzado con HTML5 y CSS3

Benemérita Universidad Autónoma de Puebla

Transcripción:

PROGRAMACION CONCURRENTE Y DISTRIBUIDA V.2 Redes de Petri: Análisis y validación. J.M. Drake 1

Capacidad de modelado y capacidad de análisis El éxito de un método de modelado es consecuencia de su capacidad de modelar y de la capacidad de análisis: Capacidad de modelado es la capacidad de describir de forma sencilla el comportamiento de sistemas complejos sobre los que tenemos interés. Capacidad de análisis es la capacidad de deducir características y propiedades cualitativas y cuantitativas del sistema a partir del estudio del modelo. La complejidad de los actuales sistemas, requieren que entre la fase de concepción o diseño y la fase de realización, se introduzca una fase de modelado y análisis del modelo que garantice no pasar a la fase de realización sobre un diseño erróneo. 2 2

Validación y verificación funcional. Validación o análisis de validez: Determina si el modelo cumple una serie de propiedades que caracteriza su buen funcionamiento: Ausencia de bloqueos Finitud del espacio de estados. Ausencia de conflictos... Verificación: Se determina a través del modelo si el sistema satisface la especificación previamente definida. Requiere una definición formalizada de la la semántica y significado de cada operación elemental, para poder comprobar los requisitos propuesto para el sistema. 3 3

Propiedades básicas de un sistema concurrente Vivacidad: permite que ciertas operaciones siempre tienen posibilidad de ser ejecutadas Ausencia de bloqueos: El sistema siempre tiene capacidad de seguir evolucionando Finitud del espacio de estados: Que garantiza su implementación con una cantidad limitada de recursos. Conflictividad: Define los niveles de ambigüedad en la evolución del sistema Exclusión mutua: Permite garantizar que ciertas situaciones no pueden ser alcanzadas simultáneamente. 4 4

Vivacidad Una transición t es viva para un marcado inicial M o si, y solo si, partiendo de cualquier marcado M sucesor de M o, existe una secuencia de disparo σ que comprenda a t. M M ( R, M o ) σ : M σ tal que t σ Una RdeP es viva si y solo si todas sus transiciones son vivas para M o M t t 1 RdeP viva RdeP no viva 5 5

RdeP parcialmente viva Una RdeP es libre de bloqueos para el marcado inicial Mo, si y sólo si, para cualquier marcado M alcanzable desde Mo, existe al menos una transición activada Una red viva no presenta nunca bloqueo. Una red sin bloqueos puede ser no viva, y entonces es parcialmente viva. Una RdeP es parcialmente viva para el marcado inicial Mo si y sólo si para cualquier marcado M alcanzable desde Mo existe al menos una transición viva y otra no viva. Una RdeP es estructuralmente viva si si existe al menos un marcado inicial Mo para el que la RdeP es viva. RdeP parcialmente viva 6 6

Ciclicidad Una RdeP es posee un comportamiento globalmente cíclico para el marcado inicial M o, si y solo si, existe una secuencia de disparos que permita alcanzar el marcado inicial M o, a partir de cualquier marcado M alcanzable desde M o. M M ( R, M ) σ tal que M σ o M o La ciclicidad garantiza que no existe subconjuntos finales de marcados, que contenga conjuntos de marcados mutuamente alcanzables entre sí, y de los que no es posible alcanzar el estado inicial M o Red cíclica Subred final 7 7

Redes limitadas Una plaza p es K-limitada para el marcado inicial M o si y solo existe un número entero K, talque M(p) K para cualquier marcado alcanzable desde M o. Se denomina limite de la plaza p al menor entero k que verifica la desigualdad anterior. Una RdeP es K-limitada para M o, si y solo si todas sus plazas son k-limitadas para M o. Una red 1-limitada se denomina red binaria. El interes de las k-limitación de una red es que garantiza la finitud de sus marcados alcanzables. Desde un punto de vista práctico una red k_limitada puede implementarse con un conjunto de recursos finitos. 8 8

Ejemplos de RdeP k-limitadas P 1 P 2 P 3 a b P 4 P 5 P 6 c d RdeP 3-Limitada RdeP binaria RdeP no limitada 9 9

RdeP estructuralmente limitada Una RdeP es estructuralmente limitada si es limitada para cualquier marcado inicial y finito. La limitación estructural es una condición suficiente para la limitación, pero la limitación estructural no es una condición necesaria para la limitación. RdeP limitada para M o = (0,3,0) RdeP no limitada para M o =(0,4,0) 10 10

La limitación, vivacidad y ciclicidad son independientes LVC LVC LVC LVC LVC LVC LVC LVC 11 11

Conflictividad Una RdeP tiene un conflicto estructural si en ella existe una plaza que tenga mas de una transición de salida. Dos transiciones t i y t j están en conflicto efectivo para un marcado inicial M o, si y sólo si: Existe un M M(R,M o ) que sensibiliza t i y t j. Al disparar t i (o t j ) el marcado que resulta no sensibiliza la transicion t j (o t i en su caso). La existencia de un conflicto efectivo representa una ambigüedad en la evolución del sistema. Conflicto estructural sin conflicto efectivo Conflicto estructural y conflicto efectivo 12 12

Exclusión mutua Dos plazas de una RdeP están en exclusión mutua para un marcado inicial M o, sin en ningún marcado M M(R,M o ) pueden tener testigos simultáneamente. Una aplicación típica de lugares con exclusión mutua es el modelado de recursos compartidos por múltiples usuarios. - R Recurso disponible -R 1 recurso tomado por Π 1 -R 2 recurso tomado por Π 2 13 13

Relaciones de sincronización Sea la red marcada <R,Mo> y sea L(R,Mo) el conjunto de todas las secuencias de disparo de transiciones aplicables. Sea σ ( t i ) el número e disparos en la transición t i en la secuencia de disparo s L/(R,M o ). Se define el avance sincrónico de la transicion t i respecto de la transición t j en la red marcada <R,Mo> como el valor máximo que considerando todas las secuencias de disparo posible, pueden tomar la diferencia entre el número de disparo de t i y el de t j : AV ( R, M ; t, t ) = [ σ ( t ) σ ( t )] ( i j max 0 i j σ L( R, Mo) AV(R,M o ;t 1,t 2 ) = AV(R,M o ;t 2,t 3 ) = 1 14 14

Métodos de análisis de propiedades de RdeP Métodos estáticos: Conducen a resultados exactos Análisis por enumeración: Se basan en la construcción de los grafos de alcanzabilidad que representa los marcados y las secuencias de disparo. Análisis por transformación: Se basa en transformar la red en otra mas sencilla que mantenga las mismas propiedades pero sea mas facil de analizar. Análisis estructural: Permite obtener propiedades de la red en función de la topología de la red y con independencia de los marcados. Métodos dinámicos: No de muestran propiedades, permiten conocer la propiedades con niveles de confianza. Análisis por simulación: Se basa en deducir la evolución de la RdeP utilizando herramientas que la simulan. Es muy utilizado en redes especiales (temporizadas, probabilísticas, coloreadas, etc.) para las que no existen técnicas de análisis exactas 15 15

Grafo de alcanzabilidad Es el grafo en el que cada nudo representa un marcado alcanzable a partir de M o, y cada arco el disparo de una transición. Se representa un arco etiquetado con t k, que va del nudo M i al nudo M j, si al disparar la transición t k con el marcado M i se obtiene el marcado M j Si la RdeP es limitada y viva el proceso de construcción del grafo de alcanzabilidad es elemental. Culmina cuando se han considerado todas la evoluciones posibles a partir de los marcados alcanzables. Si RdeP es no limitada se utilizan el grafo de cobertura 16 16

Grafo de alcanzabilidad (1,0,0,0,0) a (0,1,1,0,0) e c b (0,1,0,0,1) d b (0,0,1,1,0) c e (0,0,0,1,1) 17 17

Ejemplo de grafo de marcado (0,3,0) (3,0,0) (1,1,1) (0,0,6) (1,0,3) (0,1,4) (0,2,2) 18 18

Grafo de cobertura Consiste en un grafo finito que describe la evolución de una RdeP que no es limitada, y que en consecuencia, no puede describirse por su grafo de marcados que es infinito. Se basa en construir el grafo de marcados, y colapsar en un único marcado genérico, todos aquellos que tienen la misma evolución futura, aunque se diferencien porque el número de testigos en ciertas plazas es diferentes en ellos. Se utiliza el símbolo ω para representar que el marcado de una plaza es un entero arbitrariamente alto, cuyo valor concreto no afecta a la evolución de la RdeP. Existe un algoritmo sistemático de generación del árbol de cobertura. Su aplicación permite determinar si una RdeP es acotada o no. 19 19

Construcción del grafo de cobertura c P 1 P 4 P 2 b a P 3 (1,0,0,0) a (0,1,0,0) c (1,0,0,1) a (0,1,0,1) c (1,0,0,2) a (0,1,0,2) c (1,0,0,k) a (0,1,0,k) c (0,1,0,k) b (0,1,1,k-1) b (0,1,2,k-2) b (1,0,k,k) b (ω>1) (1,0,0,0) a (0,1,0,0) c (1,0,0,ω) a (0,1,0,ω) b (0,1,ω,ω) c a (1,0,ω,ω) (0,1,0,ω) b (ω=1) c Grafo de cobertura 20 20

Grafo de cobertura de Productor-Consumidor (1,0,1,0,0) t 1 t 4 (0,1,1,0,0) t 2 (1,0,1,0,ω) t 1 t 2 (0,1,1,0,ω) t 3 (ω=1) t 3 (w>1) t 4 t 3 t 4 (1,0,0,1,0) t 1 (0,1,0,1,ω) t 1 t 2 (1,0,0,1,ω) 21 21

Propiedades del grafo de cobertura El grafo de cobertura de cualquier RdeP marcada es finito. Existe un método sistemático que permite obtener el grafo de cobertura de cualquier RdeP marcada. Si en algún nudo del grafo de cobertura aparece un marcado ω para una plaza, la plaza es ilimitada. Si en cualquier nudo del grafo de cobertura aparece un ω en cualquier plaza, la RdeP es no acotada. 22 22

Vivacidad y grafo de marcado Una RdeP es viva si y sólo si su grafo de marcados satisface las propiedades: No existe nudo terminal: esto es, no hay ningún marcado que no sensibilice ninguna transición. De cada estado parte un camino que contiene a cualquier transición de la RdeP. 23 23

Análisis de ciclicidad Una RdeP limitada para M o es ciclica si y sólo si el grafo de alcanzabilidad es fuertemente conexo. Un grafo fuertemente conexo es aquel que entre dos marcados hay siempre un camino (1,0,0) (0,1,0) (0,0,1) 24 24

Análisis de conflictividad Los conflictos aparecen como opciones diferentes de evolución de la red a partir de un mismo marcado. Conflictos: - En M 1 existen conflicto entre b y c. - En M 2 existen conflicto entre a y d. 25 25

Análisis de la k-limitación Se deduce de la simple inspección de los marcados alcanzables. M(p 1 ) 1 M(p 2 ) 1 M(p 3 ) 1 M(p 4 ) 1 M(p 5 ) 3 La RdeP es 3-limitada 26 26

Análisis de exclusiones mutuas Se puede establecer utilizando una tabla de incompatibilidades P2 P3 (10103) (10101) (01100) (01102) P4 P5 (10012) (10010) (10103) (10101) (10012) (01011) (01013) (01011) (01002) (01013) (10103) (01102) (10101) (01011) (01013) (10012) P1 P2 P3 P4 27 27