16
Adaptado por: GIOVANNI ANDRÉS TOVAR CLAVIJO Sistemas Operativos REDES PETRI

Redes petri

Embed Size (px)

Citation preview

Page 1: Redes petri

Adaptado por:

GIOVANNI ANDRÉS TOVAR CLAVIJO

Sistemas Operativos

REDES PETRI

Page 2: Redes petri

REDES PETRI

Una Red de Petri es una representación matemática de un sistemadistribuido discreto. Las redes de Petri fueron definidas en los años 1960 porCarl Adam Petri. Son una generalización de la teoría de autómatas quepermite expresar eventos concurrentes. Una red de Petri es un grafo dirigidobipartito, con un estado inicial, llamado marcación inicial. Los doscomponentes principales de la red de Petri son los sitios (también conocidoscomo estados) y las transiciones. Las redes de Petri se utilizan para modelarel comportamiento dinámico de sistemas discretos.

Se componen de dos tipos de objetos:

Las plazas (lugares) que permiten representar los estados del sistemamediante la utilización de marcas.

Las transiciones que representan el conjunto de acciones a realizarcuando se cumplen unas determinadas precondiciones en el sistema.

Page 3: Redes petri

Mediante una red de Petri puede modelarse un sistema deevolución en paralelo compuesto de varios procesos quecooperan para la realización de un objetivo común.

En general, la presencia de marcas en una plaza se interpretacomo la presencia de recursos. El franqueo de una transición (laacción a ejecutar) se realiza cuando se cumplen unasdeterminadas precondiciones, indicadas por las marcas en lasplazas (hay una cantidad suficiente de recursos), y la transición(ejecución de la acción) genera unas postcondiciones quemodifican las marcas de otras plazas (se liberan los recursos) yasí se permite el franqueo de transiciones posteriores.

Page 4: Redes petri

REPRESENTACIÓN DE REDES PETRI

En la representación de una red de Petri, se omiten los arcos valorados con0, y el 1 en los arcos valorados con 1. Las plazas se representan mediantecírculos, las transiciones mediante rectángulos horizontales o líneashorizontales, y las marcas mediante puntos en el interior de las plazas.

Ejemplo: Representación como grafo de la red de Petri, R1.

Page 5: Redes petri

Implementación de la teoría de Redes Petri

Áreas de aplicación :

Análisis de datos

Diseño de software

Fiabilidad

Flujo de trabajo

Programación concurrente

Se emplean en las metodologías formales* de desarrollo de software. Lasmetodologías formales se basan en el empleo de técnicas, lenguajes yherramientas definidos matemáticamente para cumplir objetivos tales comofacilitar el análisis y construcción de sistemas confiablesindependientemente de su complejidad, delatando posibles inconsistenciaso ambigüedades que de otra forma podrían pasar inadvertidas.

* Es cualquier serie de técnicas que tratela construcción y/o el análisis de modelosmatemáticos que contribuyen a laautomatización del desarrollo desistemas informáticos.

Page 6: Redes petri

Metodologías Formales

Ventajas :

Se comprende mejor el sistema.

La comunicación con el cliente mejora ya que se dispone de unadescripción clara y no ambigua de los requisitos del usuario.

El sistema se describe de manera más precisa.

El sistema se asegura matemáticamente que es correcto según lasespecificaciones.

Mayor calidad software respecto al cumplimiento de lasespecificaciones.

Mayor productividad .

Page 7: Redes petri

Metodologías Formales

Desventajas :

El desarrollo de herramientas que apoyen la aplicación de métodosformales es complejo.

Los investigadores por lo general no conocen la realidad industrial.

Es escasa la colaboración entre la industria y el mundo académico,que en ocasiones se muestra demasiado dogmático*

Se considera que la aplicación de métodos formales encarece losproductos y ralentiza su desarrollo.

*Que no admite contradicción en sus opiniones

Page 8: Redes petri

REDES PETRI

Una gran dificultad al especificar sistemas en:

Tiempo real es la temporización

Problemas de sincronización

Condiciones de carrera

Deadlock (punto muerto)

Es una técnica poderosa para especificar sistemas que tienenproblemas potenciales con interrelaciones (concurrencias). Una RedPetri consiste en cuatro partes:

Un conjunto de lugares P

Page 9: Redes petri

Un conjunto de transiciones T

Un función de entrada I

Una función de salida O

• Conjunto de lugares P

–{p1, p2, p3, p4}

•Conjunto de transición T

–{t1, t2}

•Funciones de entrada:

–I(t1) = {p2, p4}

–I(t2) = {p2}

•Funciones de salida:

–O(t1)= {p1}

–O(t2)= {p3, p3}

Page 10: Redes petri

Formalmente, una Red Petri es una 4-tupla C= (P, T, I, O)

P = {p1, p2, …, pn} es un conjunto finitos de lugares, n ≥ 0

T = {t1, t2, …, tm} es un conjunto finito de transiciones, m≥0, con P y T disjuntos

I: T P∞ es la función de entrada, un mapeo de transiciones abolsas de lugares

O: T P∞ es la función de salida, un mapeo de transiciones abolsas de lugares

Una bolsa es una generalización de un conjunto que permitemúltiples instancias de elementos (como en el ejemploanterior)

Una marca en una red Petri es una asignación de tokens(ficha) a esa red Petri

Page 11: Redes petri

EJEMPLO: REDES PETRI

Cuatro tokens: uno en p1, dos en p2,ninguno en p3 y uno en p4.Representado por el vector (1,2,0,1)

Una transición se habilita si cada uno de sus lugares de entrada tienetantos tokens en ella como arcos hay de ese lugar a la transición.

Page 12: Redes petri

• La transición t1 está habilitada (lista para activarse)

– Si t1 se activa, se elimina un token de p2 y otro de p4 y un nuevotoken se ubica en p1.

• Se activa entonces la transición t2

• Importante:

– El número de tokens no se conserva

Las redes Petri son indeterminadas*

Al activarse t1

Page 13: Redes petri

El vector resultante es (2,1,0,0)

* Se aplica a un sistema de ecuaciones en el que el número devariables es superior al de ecuaciones independientes y que, por lotanto, admite infinitas soluciones.

Ahora sólo t2 se activa

El vector resultante es (2,0,2,0)

Page 14: Redes petri

Formalmente, una marca M en una red de Petri C = (P, T, I, O) es unafunción del conjunto de lugares P a los enteros no negativos M:Pᴨ{0, 1, 2, …}. Una red de Petri marcada es entonces una 5-tpla(P, T, I, O, M)

Arcos inhibidores

Un arco inhibidor se marca con un pequeño círculo

En general, una transición se activasi hay al menos un token en cadaarco de entrada normal y no haytokens en los arcos de entradainhibidores.

Page 15: Redes petri

Enlaces relacionados

Documentos, libros y tutoriales que introduce los conceptos básicosde redes de Petri:

http://www.informatik.uni-hamburg.de/TGI/PetriNets/introductions/aalst/

Típicas preguntas que ocurre alrededor de las Redes de Petri:

http://www.informatik.uni-hamburg.de/TGI/PetriNets/faq/

Tutoriales interactivos Redes Petri:

http://www.informatik.uni-hamburg.de/TGI/PetriNets/introductions/aalst/

Aplicaciones prácticas de las Redes Petri:

http://www.informatik.uni-hamburg.de/TGI/PetriNets/applications/

Normalización . Estándar ISO para el nivel de Redes de Petri

http://www.informatik.uni-hamburg.de/TGI/PetriNets/standardisation/

Petri Nets World:

http://www.informatik.uni-hamburg.de/TGI/PetriNets/

Page 16: Redes petri