Sistemas de Eventos Discretos RedesdePetri - eis.uva.esjossan/doct/sed/fich/SED_RdP.pdf · 6...

27
Sistemas de Eventos Discretos Redes de Petri

Transcript of Sistemas de Eventos Discretos RedesdePetri - eis.uva.esjossan/doct/sed/fich/SED_RdP.pdf · 6...

Sistemas de Eventos Discretos

Redes de Petri

2 Sistemas de Eventos Discretos. Redes de Petri

Sistemas de Eventos Discretos. Redes de Petri 3

11..-- MMÉÉTTOODDOOSS FFOORRMMAALLEESS..

1.1.- Sistemas de Eventos Discretos

Un Sistema de Eventos Discretos, SED,es un sistema de estados discretos dirigido poreventos, es decir, su evolución de estados depende únicamente de la ocurrencia de eventos discretosasíncronos en el tiempo. Las características típicas de los SED incluyen concurrencia,comportamiento asíncrono, selección no determinista, exclusión mutua, y restricciones de tiempo real.

Figura 1.Sistema de eventos discretos.

1.2.- Modelado y especificación

Un modelo es una representación inteligible (abstracta y consistente) de un sistema. Cuandodos modelos representan la misma realidad a diferentes niveles de detalle o fidelidad, el modelomenos detallado se dice que es el modelo másabstracto. Los modelos se pueden clasificar desdedistintos puntos vista. Por ejemplo, se pueden clasificar según su capacidad replicativa, su capacidadde predicción y su validez estructural, o según cuatro dimensiones ortogonales que caracterizan larepresentación del modelo, el objetivo del estudio, su naturaleza temporal y la solución técnica.

Figura 2. Dimensiones de los modelos.

Los requisitos de un sistema se pueden especificar según relaciones entrada/salida, ejemplosrepresentativos o mediante modelos.

Los términos modelo y especificación no son equivalentes: la especificación puede realizarsesin la utilización de modelos. Un modelo puede ser utilizado para representar una especificación, undiseño, o incluso, para describir el mismo proceso de desarrollo del software.

4 Sistemas de Eventos Discretos. Redes de Petri

Unaespecificaciónse compone de una serie de requisitos funcionales, que pueden ser descritosformalmente, y no funcionales, que suelen ser más difícil especificar formalmente. Según la notaciónse distinguen especificaciones operacionales (forma gráfica, textual o mixta con diferentes grados deformalidad) y declarativas.

Los requisitos especificados formalmente se pueden verificar y validar. Laverificación esuna prueba de que la semántica interna del modelo es correcta, independientemente de sistemamodelado (consistencia interna). Lavalidación establece que el producto final es conforme a laespecificación.

Figura 3. Verificación y validación.

1.3.- Formalismos

Un formalismo proporciona un conjunto de convenciones para especificar una clase deobjetos con precisión y sin ambigüedades. En la literatura podemos encontrar numerosos formalismos(DEVS, Statecharts, ACD, Redes de Petri, TTM/RTTL, CCS, …).

Figura 4. Formalismos.

En la práctica, un único formalismo no suele satisfacer todas las necesidades del desarrollo,por lo que suele ser necesario elaborar entornos eclécticos que incorporan varios formalismos.

Formalismos basados en la teoría general de sistemas

Algunos de los métodos y metodologías para modelar SED tienen su origen en la TeoríaGeneral de Sistemas. Según esta teoría, los sistemas reales obedecen a las mismas leyes y muestranpatrones similares de comportamiento incluso aunque no sean semejantes físicamente. Dos métodosbasados en la Teoría General de Sistemas son el formalismo DEVS (Discrete Event SystemsSpecification) y el SES (System Entity Structure).

DEVS (Discrete Event Systems Specification) utiliza un enfoque jerárquico y modular queintegra nociones de programación orientada a objetos. Esencialmente, este formalismo consideramodelos atómicos y modelos acoplados que conectan varios modelos atómicos. Un modelo atómico sedescribe mediante un conjunto de estados, un conjunto de puertos de entrada y salida, y una serie defunciones que gobiernan el comportamiento del modelo (Figura 5). El comportamiento dinámico delmodelo se describe mediante eventos de entrada y eventos internos planificables en el tiempo.

Sistemas de Eventos Discretos. Redes de Petri 5

Figura 5. Modelo atómico DEVS

SES (System Entity Structure) es un árbol etiquetado para describir conjuntos de objetosestructurados jerárquicamente y sus relaciones mutuas (Figura 6). Este método establece el modelodel sistema en términos de descomposición, taxonomía y relaciones de acoplamiento.

Figura 6. SES.

Formalismos basados en estados y transiciones

Un autómata finito es un sistema de transiciones compuesto de un número finito de estados yde transiciones etiquetadas entre los estados (Figura 7). Una etiqueta se construye a partir de unalfabeto y se asocia a cada transición. Permite describir un sistema donde el estado evoluciona a lolargo del tiempo. Por ejemplo, dos herramientas de modelado basado en autómatas finitos son losdiagramas de Huffmann (tiene en cuenta todas las evoluciones posibles de los estados) y losdiagramas reducidos (sólo tiene en cuenta las evoluciones que aportan información pertinente posibley no redundante). La mayoría de los métodos basados en máquinas de estados son gráficos y disponende gran cantidad de herramientas de desarrollo.

Figura 7. Autómata finito.

6 Sistemas de Eventos Discretos. Redes de Petri

El modelado mediante autómatas finitos puede conducir a diagramas de un tamaño intratable,representa con dificultad el paralelismo y no dispone de mecanismos para representar jerarquías. Parapaliar estas dificultades han surgido herramientas como las Redes de Petri o los Statecharts.

ACD (Activity Cycle Diagram)es un formalismo que consta de entidades, atributos,actividades, eventos, colas, conjuntos y estados. La representación alterna estados pasivos yactividades (Figura 8). Los ACD proporcionan una descripción grosera del comportamiento delsistema.

Figura 8. ACD.

Bajo el términoSA/RT (Structured Analysis/Real-Time)se agrupan un gran número demétodos, todos ellos basados en el análisis orientado a flujo de datos de DeMarco y Yourdon. En elmodelo se utilizan Diagramas de Flujo de Datos (Data Flow Diagram, DFD) estructurados de formajerárquica. Por ejemplo, los métodos Ward/Mellor y Hatley/Pirbhai.

Figura 9. Herramientas Ward/Mellor.

El método de Ward/Mellor consiste en elaborar un modelo esencial y un modelo deimplementación (ambos modelos que utilizan el mismo conjunto de técnicas gráficas, véase Figura 9).El método de Hatley/Pirbhai separa el esquema de transformación en dos partes, una relativa alcontrol y otra a los datos. Incorpora la posibilidad de expresar requisitos temporales cuantitativosdesde el punto de vista de la entrada y salida del sistema mediante las especificaciones de tiempo derespuesta (Response Time Specification, RTS).

Un grafo de eventoses un grado dirigido que describe la interrelación de los eventos (Figura10). Este tipo de grafos se aplican generalmente a planificación (scheduling).

Sistemas de Eventos Discretos. Redes de Petri 7

Figura 10. Grafo de Eventos.

Los diagramas de estado(Statecharts) son diagramas de transición de estados desarrolladospor D. Harel donde cada estado se puede descomponer en otros subestados (estados XOR y AND) querepresentan un menor nivel de abstracción (Figura 11).

Figura 11. Statecharts.

Se ha desarrollado una herramienta comercial denominadaStatemate, que soporta laespecificación, análisis, simulación y generación de código de un sistema utilizando diagramas deestado (Figura 12).

Figura 12. Statemate.

La definición inicial no incorpora la posibilidad de representar aspectos temporalescuantitativos, pero se han desarrollado extensiones, entre estas, lasTTM (Timed TransitionMachines) que incluyen transiciones que describen la ocurrencia de ticks (paso de tiempo de un relojexterno).

LasHMS (Hierarchical Multi-state Machines) son autómatas de alto nivel, que permiten queen cualquier momento pueden estar activos varios estados y que se puedan disparar varias transicionessimultáneamente (Figura 13). Existe métodos de análisis para probar propiedades del modelo.

8 Sistemas de Eventos Discretos. Redes de Petri

Figura 13. HMS.

Las redes de Petri son un formalismo que permite modelar la concurrencia, el nodeterminismo y la causalidad de las conexiones entre eventos. Se dispone de una profunda baseteórica desarrollada y, además, permiten una representación gráfica (Figura 14), lo cual hace que lasespecificaciones formuladas mediante redes de Petri sean bastante intuitivas.

Figura 14. Red de Petri.

Formalismos basados en la lógica

La lógica temporal permite especificar fácilmente de forma declarativa como cambiará unsistema a lo largo del tiempo. Fue aplicada por primera vez en la especificación y el razonamientosobre sistemas reactivos por A. Pnueli en 1977 y, desde entonces, se han desarrollado numerosasversiones que se pueden clasificar en lógicas temporales ramificadas y lógicas temporales lineales.Por ejemplo, Lamport define la TLA (Temporal Logic of Actions) basada en los operadorestemporales "siempre" y "a veces".

RTTL (Real-Time Temporal Logic) es una lógica de primer orden que incluye cuantificaciónexplícita sobre la variable tiempo. Esta lógica es utilizada junto con modelos TTM (Timed TransitionModels). Se ha desarrollado el entornoStateClock/SteP(Figura 15). StateClock es un entorno paramodelado, descripción y especificación mediante Clockcharts (extensión de los Statecharts queincluyen relojes y temporizadores incrementales o decrementales que pueden iniciar, contar y/ofinalizar la medida del número de ticks).y LTL (Linear Temporal Logic). SteP (Stanford TemporalProver) es una herramienta de análisis y verificación basado en FTS (Fair Transition System) y LTL.

Sistemas de Eventos Discretos. Redes de Petri 9

Figura 15. StateClock/STeP.

Álgebras de procesos

Los lenguajes algebraicos se basan en la descripción de las operaciones que se efectúan sobrelos procesos, a diferencia de los lenguajes orientados a modelos que describen las operaciones sobrelos modelos definiendo como afectan a estos. Para tiempo real los lenguajes algebraicos se denominanálgebras de procesos. Por ejemplo,CSP (Comunicating Sequential Processes), basado en el lenguajeOccam, y CCS (Calculus for Communicating Systems). Estos formalismos no disponen de unarepresentación gráfica estándar, aunque se está trabajando en la creación de entornos para ladescripción de los sistemas. Se han desarrollado numerosas extensiones que incorporar el tiempo.(TCSP, TCCS, etc.)

22..-- RREEDDEESS DDEE PPEETTRRII

En este apartado se revisarán algunos de los principales conceptos, técnicas y aplicaciones delas Redes de Petri y se introducirán sus posibilidades como herramienta para el modelado y análisis desistemas. Todos estos aspectos no se desarrollan con el rigor que exige un tratamiento formal sino queson introducidos de forma intuitiva y se incluyen las referencias bibliográficas necesarias.

Carl Adams Petri en 1962 formuló una teoría para sistemas paralelos incluyendo el conceptode concurrencia: las Redes de Petri, RdP. Una RdP es unaherramienta matemática y gráfica paramodelar y analizar sistemas.

Las RdP han demostrado su utilidad para modelar sistemas de eventos discretos y, en general,su idoneidad para representar el comportamiento de sistemas concurrentes, asíncronos, distribuidos,paralelos, no deterministas y/o estocásticos. Destaca su representación gráfica fácil, clara y sinambigüedades.

Una Red de Petri, RdP, es una clase particular de gráfico dirigido, con un estado inicialdenominado marcado inicial,M0. Básicamente, consta de dos clases de nodos, denominados lugares,p, ytransiciones,t, y de arcos dirigidos, f, que conectan lugares con transiciones (Figura 16).

Cada arco,f, tiene asociado un número entero positivow(f), que representa el peso del arco y quepueden interpretarse como un conjunto de arcos paralelos de peso unidad.

La capacidad de un lugar,p, representa el número máximo de marcas o tokens que puedecontener. Así, se pueden definir RdP de capacidad infinita y de capacidad finita. Un marcado asigna acada lugar un entero no negativo,k.

10 Sistemas de Eventos Discretos. Redes de Petri

El comportamiento dinámico de un sistema se describe en función de sus cambios demarcado. En una RdP el marcado cambia según tres reglas básicas:

• Una transición está habilitada si todos sus lugares de entrada están marcados, es decir, loslugares poseen un número mayor e igual de marcas que el peso de los arcos que los unen ala transición.

• Una transición habilitada puede o no dispararse dependiendo del tipo de transición (según elsistema que represente) y de la ocurrencia del evento asociado.

• El disparo de una transición habilitada consiste en quitar marcas de cada uno de los lugares deentrada (tantas como el peso de los arcos correspondientes) y añadir marcas a cada uno delos lugares de salida (tantas como el peso de los arcos correspondientes).

Figura 16. Red de Petri.

Permiten representar conflictos y jerarquías, y relacionar propiedades dinámico estructurales(viveza, limitación, etc.) con criterios de funcionamiento.

La literatura define unared de Petri marcada como una 5-truplaR=� P, T, α , β , M0�

donde: P es un conjunto finito de lugares, T es un conjunto finito de transiciones.,α :PxT es unafunción de entrada o de incidencia previa,β :TxP es una función de salida o incidencia posterior(P∩T=∅), y M0 es un marcado inicial.

La ecuación de estadode una red de Petri pura ( ∅=∩∈∀ ⋅⋅ ttTt / ) es:

kkk UCMM ·1 += −

dondeC es la matriz de incidencia,Mk es el marcado obtenido al realizar el k-ésimo disparo, yUk es un vector de disparos cuyas componentes son nulas salvo la i-ésima siti es la transicióndisparada en k-ésimo lugar: 1)( =iUk , 0)( =jUk , ∀ ≠j i .

2.1.- Propiedades

Las propiedades de las redes de Petri se pueden clasificar en dos grandes grupos:propiedades dinámicas o dependientes del marcado inicial y propiedades estructurales oindependientes del marcado inicial (Tabla 1).

Sistemas de Eventos Discretos. Redes de Petri 11

PROPIEDADES DINÁMICAS PROPIEDADES ESTRUCTURALES

Alcance Controlable

Limitación Estructuralmente limitada

Viveza Estructuralmente viva

Reversibilidad Conservativa

Cobertura Repetitiva

Persistencia Consistente

Distancia de sincronización Estructuralmente equitativa

Equidad

Tabla 1. Propiedades.

Se dice que una RdP esták-limitada o simplemente limitada si el número de marcas en cadalugar no excede un número finitok para cualquier marcado alcanzable a partir del marcado inicialM0.

Se dice que una red estáviva si es posible siempre disparar alguna transición de la red, sinimportar que marcado se haya alcanzado ni cual sea la secuencia de disparo futura.

2.2.- Posibilidades de modelado

Mediante redes de Petri se pueden modelar una gran variedad de sistemas. Estas redes sonidóneas para representar aquellos sistemas que tienen un comportamiento asíncrono, distribuido,paralelo y/o no deterministas. Las redes de Petri permiten reflejar la ejecución concurrente dedistintos procesos, representar la disponibilidad de recursos, representar la imposición de restriccionesde acceso a zonas compartidas, representar la evolución dinámica del sistema, representar lacausalidad, los conflictos, las confusiones, etc. (Figura 17 )

ÿþý ÿ�ý

(c) (d)

12 Sistemas de Eventos Discretos. Redes de Petri

ÿ�ý ÿ�ý

Figura 17. (a) Concurrencia, (b) disponibilidad o dependencia de recursos, (c)recurso compartido, (d) ejecución secuencial, (e) conflicto y(f) confusión.

2.3.- Redes de Petri interpretadas

Para que una red de Petri pueda representar un sistema hace falta asociarle una interpretación,es decir, establecer un convenio por el que se define un significado físico a las condiciones necesariaspara el disparo de una transición y a las acciones generadas por la evolución del marcado (Tabla 2).

LUGARES DE ENTRADA TRANSICIONES LUGARES DE SALIDA

Condiciones previas Eventos Consecuencias

Datos de entrada Pasos de computación Datos de salida

Señales de entrada Procesamiento de señales Señales de Salida

Recursos necesitados Tarea o trabajo Recursos liberados

Condiciones booleanas Reglas lógicas Conclusiones

Buffer Procesamiento Buffer

Tabla 2. Interpretaciones.

2.4.- Posibilidades de análisis

Se han propuesto diversos métodos de análisis: análisis por búsqueda exhaustiva, análisisestructural, análisis por reducción y simulación.

El análisis por búsqueda exhaustivaestá basado en la generación de un gráfico demarcados. Está método está limitado a sistemas relativamente simples debido a la explosióncombinatoria.

El análisis estructural esta basado en la ecuación fundamental. Entre las técnicas de análisisestructural destacan las basadas en invariantes. Las invariantes son propiedades de la estructura lógicade una RdP que caracterizan, de alguna manera, todos los posibles comportamientos de disparo y queson las soluciones enteras de las ecuaciones:

C x

C y

T ==

0

0

Un vectorx se dice que es un invariante de lugar siC xT = 0. Un vectory se dice que esinvariante de transición siC y = 0.

El análisis por reducción está basado en la simplificación de la red preservando laspropiedades que se desean analizar.

Sistemas de Eventos Discretos. Redes de Petri 13

2.5.- Extensiones, subclases y generalizaciones

Para superar las limitaciones de la redes de Petri clásicas se han propuesto extensiones,subclases y generalizaciones. Lasextensionesaumentan la capacidad de representación del modelo,pero disminuyen, en general, sus posibilidades de análisis (RdP con arcos inhibidores, con extensióntemporal, con prioridades, etc.). Lassubclasesimponen restricciones en la relación entre los distintoselementos del modelo de Petri para aumentar las posibilidades analíticas (máquinas de estados, grafosmarcados, sistemas P, sistemas T, libre elección, libre elección extendida, etc.). Lasgeneralizacionesno modifican ni la capacidad de modelización ni las posibilidades de análisis, pero permiten obtenerdescripciones más condensadas y más potentes (RdP coloreadas, etc.)

2.6.- Redes de Petri coloreadas

Las RdP coloreadas tienen idéntica potencia descriptiva que el modelo básico de RdP, peropermiten construir especificaciones más concisas. Estas redes tienen buena aceptación debido a ladisponibilidad de software de modelado, evaluación y análisis: Design/CPN, CPNTools y otras.

2.7.- Estructura de prioridades

La disponibilidad de diferentes niveles de prioridad en las redes de Petri incrementa lapotencia descriptiva de los modelos: permite dividir las transiciones en clases que representanacciones a diferentes niveles lógicos y permite introducir la posibilidad de especificar un criteriodeterminista para resolver conflictos.

En una RdP con prioridades se introduce unafunción de prioridadque asigna a cadatransición un número natural correspondiente a su nivel de prioridad.

2.8.- Extensiones temporales

La integración del tiempo cambia considerablemente el comportamiento de una red de Petri,de manera que muchas de las propiedades que se verifican para una red original no se correspondencon las de la red con extensión temporal. El tiempo se puede especificar de forma determinista oestocástica.

Las Redes de Petri con Tiemposasocian a cada transición un intervalo de tiempo y lasRedes de Petri Temporizadas, TPN,asocian un tiempo de retraso a las transiciones. Las redes contiempos son más generales que las temporizadas.

Una red de Petri estocástica, SPN,se obtiene asociando a cada transición una variablealeatoria que representa el retardo de disparo. Durante los últimos años se han propuesto diversasclases de SPN con diferentes potencias de modelado, debido principalmente a la equivalencia de suproceso de marcado, para ciertas distribuciones, a procesos de Markov o procesos semimarkovianoscon espacio de estado discreto (Apéndice A).

La clase más común de SPN es aquella en que los retardos de disparo siguen una distribuciónexponencial:RdP estocásticas exponenciales, eXPN.

14 Sistemas de Eventos Discretos. Redes de Petri

Figura 18. Clases de SPN

Estas redes son isomórficas a cadenas de Markov de tiempo continuo, CTMC, debido a quelas distribuciones exponenciales asociadas a los retardos de disparo no guardan memoria de laevolución previa del sistema.

Las CTMC se puede obtener aplicando las siguientes reglas:

• El espacio de estadoS={si} de la CTMC se corresponde con el conjunto alcanzable desde unmarcado inicialM0 , RS(M0) de la red de Petri no temporizada asociada a la SPN (Mi → si)

• La tasa de transición de un estadosi a otrosj se obtiene como la suma de las tasas de disparode las transiciones que están habilitadas enMi y cuyo disparo genera el marcadoMj.

Considerando las reglas anteriores y partiendo de una SPN, es posible obtener algoritmos parala construcción automática delgenerador infinitesimal, Q, también llamado matriz de tasa detransición de estado, de la CTMC isomórfica.

Si denominamoswk a la tasa de disparo de la transicióntk, el conjunto de transiciones cuyodisparo lleva a la red desde el marcadoMi al marcadoMj es:

{ }jhiihij MtMMEtME [:)()( ∈=

dondeE(Mi) corresponde al conjunto de transiciones habilitadas en el marcadoMi, con lo que loscomponentes del generador infinitesimal son:

��

��

=

�= ∈

ji

ji

q

wq

i

METkk

ij ijk )(:

Sistemas de Eventos Discretos. Redes de Petri 15

donde:

�∈

=)(: ik METkki wq

Una SPN k-limitada se dice que es ergódica si genera un CTMC ergódico.

Si denominamosη al vector de distribución de probabilidad en estado estacionariode losmarcados de la red de Petri, la resolución del siguiente sistema lineal expresado en forma matricial:

��

��

=

=

11

0

T

Q

η

η

nos proporciona la probabilidad en estacionario de los marcadosMi de la redηi = η(Mi).

El tiempo de permanencia,SJi, en un determinado marcadoMi está exponencialmentedistribuido con tasaqi. La probabilidad de disparo de una transicióntk habilitada enMi, (tk ∈ E(Mi)),es:

{ }i

kik q

wMTP =

y el valor medio o esperanza del tiempo de permanencia viene dado por:

[ ]i

i qSJE

1=

En relación al comportamiento de los temporizadores de las transiciones que no se disparancuando se dispara una transición, se pueden considerar dos mecanismos básicos de memoria:continuación(el temporizador mantiene su valor actual y podrá continuar posteriormente su cuentaatrás) yreinicio (el temporizador se reinicia).

Así, destacan tres alternativas: elremuestreo,en que a todos y cada uno de los disparos detransiciones se aplican mecanismo de reinicio, lamemoria de habilitación, en que se reinician lostemporizadores de todas las transiciones temporizadas que queden inhabilitadas, mientras que lostemporizadores de todas las transiciones temporizadas que no se inhabilitan mantienen su valor actual,y la memoria de edad,en que en cada disparo de transición, los temporizadores de todas lastransiciones temporizadas mantienen su valor actual, se inhabiliten o no.

Las redes de Petri estocásticas exponenciales, eSPN, tienen buena aceptación debido a ladisponibilidad de software para su evaluación automatizada. Sin embargo, en muchos casos lapropiedad markoviana no es realista y puede producir errores significativas en los cálculos.

Las RdP estocásticas generalizadas, GSPN,incorporan dos tipos de transiciones:exponenciales e inmediatas. Aquellos marcados en que sólo están sensibilizadas transicionesexponenciales se denominanmarcados tangibles, en cualquier otro caso se denominanmarcadosfugaces. En los marcados fugaces los cambios lógicos se producen inmediatamente. En estas redes las

16 Sistemas de Eventos Discretos. Redes de Petri

transiciones inmediatas tienen prioridad de disparo sobre las transiciones temporizadas que se hallenhabilitadas en un instante dado.

Figura 19 GSPN.

Las transiciones inmediatas de la red se dividen enparticioneso clases de equivalencia, ECSde tal forma que las transiciones del mismo conjunto pueden estar en conflicto entre sí, mientras quetransiciones de conjuntos distintos se comportan concurrentemente.

En este tipo de redes es posible definir parámetros dependientes de marcado. Los parámetrosdependientes de marcado se van a especificar como el producto de una tasa nominal (o peso en el casode transiciones inmediatas) y de una función de dependencia definida en términos del marcado de loslugares que están conectados a una transición mediante sus funciones de entrada e inhibición.

Las RdP estocásticas extendidas, ESPN, son una extensión de las GSPN que incorporantransiciones temporizadas no exponenciales. El proceso de marcado de una ESPN es un procesosemimarkoviano siempre que todas las transiciones concurrentes tengan asociados tiempos de disparoexponenciales y que en todas las transiciones competitivas se siga una política sin memoria. A lastransiciones exclusivas y competitivas se les puede asociar tiempos de disparo no exponenciales.

Las RdP deterministas y estocásticas, DSPN,son una extensión de las GSPN que añadenretardos de disparo deterministas. El análisis de una DSPN depende de la política de disparo. LaDSPN puede analizarse como una cadena de Markov embebida si en cada marcado hay una únicatransición determinista.

Figura 20. DSPN.

Sistemas de Eventos Discretos. Redes de Petri 17

Las RdP estocásticas y deterministas extendidas, eDSPN,denominadas también SPNregenerativas de Markov, permiten retardos de disparo que siguen distribuciones expolinomiales. Lasdistribuciones expolinominales pueden se definidas por trozos mediante polinomios exponenciales.

Las Redes estocásticas bien formadas, SWN, son una extensión de las redes de Petriregulares y de la redes bien formadas, WN.

2.9.- Herramientas

Existen numerosas herramientas para modelado y análisis de sistemas mediante redes de Petri.Algunas de estas herramientas son: TimeNET, GreatSPN y PESIM.

TimeNET es un software desarrollado para modelar y analizar SPN: GSPN, DSPN, eDSPN ycDSPN. Dispone de editor gráfico y métodos de análisis para DSPN y eDSPN, métodos aproximadospara eDSPN y métodos de simulación para SPN arbitrarias. El análisis estructural se basa eninvariantes de lugar, ECS, confusión y análisis de grafo de alcance..

GreatSPN es un software desarrollado para modelar, validar y evaluar prestaciones desistema con GSPN, SWN y sus extensiones coloreadas bien formadas. Incorpora un editor gráfico yun simulador conducido por eventos interactivo. Permite analizar las propiedades estructurales,calcular invariantes de lugar y transición, calcular el grafo de alcanzabilidad que se usa para construirla cadena de Markov embebida asociada, y analizar prestaciones.

PESIM es un software desarrollado para modelar y analizar redes lugar/transición con arcosinhibidores, grafos marcado y GSPN. Dispone de un interfaz gráfico desarrollado para MS-Windows,que incluye un editor gráfico y textual y un simulador etapa por etapa. El análisis se efectúa medianteel árbol de alcance, invariantes de lugar y de transición y mediante técnicas reducidas para grafosmarcados. Permite el análisis de prestaciones estacionarias (probabilidades de estado, probabilidadesde marca, función de densidad para cada lugar, número medio de marcas en un conjunto de lugares,etc.).

18 Sistemas de Eventos Discretos. Redes de Petri

33..-- PPRROOCCEESSOOSS EESSTTOOCCÁÁSSTTIICCOOSS..

Introducción

En este apéndice se introducen algunos conceptos sobre procesos estocásticos, haciendohincapié en las cadenas de Markov. Se incluye un apartado dedicado a los procesos de Poisson y otroa los procesos semimarkovianos.

En la práctica, la mayoría de los sistemas operan en entornos llenos de incertidumbre. Esto esespecialmente verdad cuando nos ocupamos de Sistemas de Eventos Discretos (SED), que por sunaturaleza, implican fallos en las máquinas o dispositivos y acciones humanas impredecibles.

La teoría de lascadenas de Markoves la base fundamental de muchos de los paradigmas demodelado. Las cadenas de Markov constituyen el modelo estocástico básico de los SED [Cass93].

Procesos estocásticos

En la práctica, la mayoría de los sistemas operan en entornos llenos de incertidumbre. Esto esespecialmente verdad cuando nos ocupamos de SED, que por su naturaleza, implican fallos en lasmáquinas o dispositivos y acciones humanas impredecibles.

La teoría de lascadenas de Markov (Markov chains)es la base fundamental de muchos delos paradigmas de modelado. Las cadenas de Markov constituyen el modelo estocástico básico de losSED [Cass93].

Un proceso estocásticose define como una familia de variables aleatorias{ }TttX ∈),( ,

donde )(tX es una variable aleatoria para cada valort del espacio paramétricoT. El conjunto de

valores posibles de )(tX forman el espacio de estadosS.

Así, el espacio de estados, S, es el conjunto de valores posibles que puede tomar)(tX y el

espacio paramétrico, T, es el conjunto de valores posibles que puede tomart.

En función del espacio de estados,S, los procesos estocásticos se pueden clasificar en dosgrupos:

• Procesos estocásticos de estado discreto,si el espacio de estados es contable. En este caso losprocesos se denominancadenas. Los SED se caracterizan por espacios de estados discretos.

• Procesos estocásticos de estado continuo.

En función del espacio paramétrico,T, los procesos estocásticos se pueden clasificar en dosgrupos:

• Procesos estocásticos de tiempo discreto,si el espacio paramétrico es discreto.

• Procesos estocásticos de tiempo continuo.

Sistemas de Eventos Discretos. Redes de Petri 19

En el ámbito de los sistemas de eventos discretos, el parámetrot representa el tiempo. Así, unproceso estocástico se puede definir como un sistema que sufre cambios en el tiempo debido al azar{ }0),( ≥ttX .

Procesos de Poisson

Los procesos de Poisson son procesos estocásticos de tiempo continuo con espacio de estadosdiscreto que tienen una serie de propiedades que les hacen interesantes para modelar algunos aspectosen el contexto de la fabricación.

Dado un proceso estocástico{ }0),( ≥ttX se denominaproceso contadorsi )(tX representael número total de eventos que ocurren en el instantet.

Un proceso contador{ }0),( ≥ttX se dice que tieneincrementos independientessi lasvariables aleatorias que representan el número de eventos en distintos intervalos son mutuamenteindependientes.

Un proceso contador{ }0),( ≥ttX se dice que tieneincrementos estacionariossi el número

de llegadas en un intervalo( ]htt +, , dadas por )()( tXhtX −+ es independiente del instantet delintervalo.

Un proceso contador{ }0),( ≥ttX se dice que es unproceso de Poisson[Cass93] si:

� 0)0( =X .

� Los procesos tienen incrementos independientes.

� Los procesos tienen incrementos estacionarios.

� La probabilidad de dos o más llegadas en un intervalo de longitudh tiende a 0 cuandohtiende a 0.

Para un proceso de Poisson el número de llegadas durante un intervalo de longitudt es unavariable aleatoria de Poisson de mediatλ dondeλ , denominadarazóndel proceso de Poisson, vienedada por la expresión:

{ }[ ] 0lg1)()(1

0>=−+=

→súnaparasXhsXP

hlimh

λ

Si Tn representa el intervalo entre la(n-1)-ésima llegada y lan-ésima llegada, entonces losTn

paran=1,2,3,...son variables aleatorias exponenciales distribuidas idéntica e independientemente conrazón λ .

Las propiedades principales de los procesos de Poisson son la de superposición y la dedescomposición:

20 Sistemas de Eventos Discretos. Redes de Petri

• Superposición: Si nλλλ ,...,, 21 son las razones de procesos de Poisson independientes,

entonces la superposición de estos procesos de Poisson es también un proceso de Poisson,

cuya razón es�i

iλ .

• Descomposición:Si un proceso de Poisson de razónλ se descompone enn procesos condistribución de probabilidad independiente ( 1...,...,, 2121 =+++ nn pppconppp ),entonces cada uno de estos procesos son procesos de Poisson con razones

pnpp λλλ ,...,, 21 , respectivamente.

Los procesos de Poisson se han utilizado para modelar la llegada de partes a un sistema defabricación, la llegada de llamadas telefónicas a un centro de conmutación, la llegada de mensajes atransmitir en una red de área local, etc.

Cadenas de Markov

En los procesos estocásticos de situaciones reales, las variables aleatorias)(),...,(),( 21 ntXtXtX , donde Tttt n ∈....,, 21 , exhiben algún tipo de dependencia. El tipo más

simple de dependencia, es la dependencia de primer orden.

Sea un proceso estocástico{ }TttX ∈),( dondeT es un conjunto finito (o infinito contable)

tal que nttt <<< ...10 y Tti ∈ , si la distribución condicional deX(t) para valores dados de

)(),...,(),( 10 ntXtXtX sólo depende del valor del proceso más reciente conocido, se dice que las

variables aleatorias )(),...,(),( 10 ntXtXtX exhiben unadependencia de Markov.

Aquellos procesos estocásticos{ }TttX ∈),( con esta dependencia se denominanprocesos de Markov. Intuitivamente, en un proceso de Markov la probabilidad decomportamiento futuro, está totalmente definido si se conoce el estado actual.

Sean nXXX ,...,, 10 los valores correspondientes deX(t) para los Tti ∈ , si jXi = ( Sj ∈ ),

se dice quej es el estado del proceso estocástico en el instantetn. Los valores que puede tomarXi seconocen comoestadosy sus cambios de valor se llamantransición.

Así, en un proceso de Markov se cumple que:

{ } { }iXjXPXXiXjXP ttttt ===== +−+ |,...,,| 1011 para todo 0≥t ; Sji ∈, .

Para estos procesos lafunción de probabilidad de transiciónque da la probabilidad dealcanzar un cierto estado en un instante futuro conocido el estado en el instante actual, sepuede definir como:

{ } stisXjtXPsitjP ≥=== )(|)(),;,(En el caso de que se trate de procesos estocásticos de estado discreto se les conoce

comoCadenas de Markov.Para las cadenas de Markov se puede definir unamatriz de probabilidad de transición:

{ } stXsXXtXPtsp ijij ≥=== )(|)(),(

dondepij es la probabilidad de alcanzar el estadoj en el instantet, estando el sistema en elestadoi en el instantes.

Sistemas de Eventos Discretos. Redes de Petri 21

Ecuación de Chapman-Kolmogorov

La ecuación de Chapman-Kolmogorov permite obtener las probabilidades de transición entreestados en un intervalo de tiempo dado, a través de las probabilidades de transición de los posiblesestados intermedios. Esta ecuación se puede expresar como:

{ } { } tusXsXXuXPXsXXuXXtXPtsp irirjrtodo

ij ≤≤====== � )(|)()(,)(|)(),(

Considerando que se trata de un proceso de Markov:

{ } { } tustupXuXXtXPXsXXuXXtXP rjrjirj ≤≤======= ),()(|)()(,)(|)(

{ } ususpXsXXuXP irir ≤=== ),()(|)(

Se llega a otra de las formas de la ecuación de C-K:

tustupusptsp rjirrtodo

ij ≤≤= � ),(),(),(

Cadenas de Markov de tiempo discreto

Consideremos un sistema que evoluciona aleatoriamente en el tiempo y supongamos que seobserva en instantes discretos de tiempo. SeaXt el estado del sistema en el instantet. Supongamos quepara todo 0≥t , tX es una variable aleatoria que toma valores del espacio de estadosS. Entonces

{ }0, ≥tXt es unproceso estocástico de tiempo discretocon espacio de estadosS[ABCDF96].

Si un valor fijo det se denominapresente, entonces tX se denominaestado presentedel

sistema,{ },..., 21 ++ tt XX se denominafuturo del sistema y{ }110 ,...,, −tXXX se denominapasadodel

sistema. Así, la propiedad de Markov se puede expresar como que la probabilidad del comportamientofuturo { },..., 21 ++ tt XX está totalmente definida si se conoce el estado presentetX y no se altera por el

conocimiento adicional del pasado{ }110 ,...,, −tXXX .

Si un proceso estocástico de tiempo discreto{ }0, ≥tXt se usa para describir un sistema con

la propiedad de Markov, entonces se denomina unaCadena de Markov de Tiempo Discreto(Discrete-Time Markov Chain, DTMC).

Cuando el espacio de estados es contable, se puede definir formalmente un DTMC de lasiguiente forma:

Un proceso estocástico{ }0, ≥tXt se llama Cadena de Markov de Tiempo Discreto, DTMC,

en el espacio de estados S, si:

1. Para todo 0≥t SXt ∈ con probabilidad 1.

2. { } { }iXjXPXXiXjXP ttttt ===== +−+ |,...,,| 1011 para todo 0≥t ; Sji ∈, .

22 Sistemas de Eventos Discretos. Redes de Petri

Sean { }iXjXPtP ttij === + |)( 1 las probabilidades de que el proceso pase del estadoXt al

estadoXt+1 cuando el parámetro pasa det a t+1.

Una DTMC se denomina homogénea si las probabilidades condicionales{ }iXjXPtP ttij === + |)( 1 son independientes det para todo Si ∈ :

ijij PtP =)( para todo 0≥t ; Sji ∈, .

Sea [ ]ijPP = la matriz de probabilidades condicionalesijP denominadamatriz de

probabilidades de transición en una etapa de la DTMC(one-step transition probability matrix ofthe DTMC) .

Sea )(tiψ la probabilidad (marginal) que tiene el proceso en el estadoi en el instantet

(también denominadaprobabilidad de estado). Sea )0(iψ la distribución inicial. Formalmente

tenemos que:

{ } SiiXPi ∈== 0)0(ψ

{ } { } { } { }��∈∈

=========Sk

ktSk

tti kXiXPkXPkXiXPiXPt )0(||)( 000 ψψ

Se puede calcular la distribución marginal deXt si conocemos como evolucionan lasprobabilidades condicionales en la etapat.

[ ] { } SjiiXjXPP tt

ij ∈=== ,| 0

Es posible mostrar que:

[ ] [ ] [ ] tkySjiPPPSr

ktrj

kir

tij ≤≤∈=�

− 0,

que es una de las formas de laecuación de Chapman-Kolmogorov.

Además, es posible mostrar que la matriz de probabilidad de transición en lat-ésimaetapa dela DTMC se puede poner como su matriz de transición de la primera etapa, de la siguiente forma:

[ ] [ ][ ] ttij

t P Ρ==Ρ

donde tΡ es lat-ésimapotencia de la matrizΡ .

Si por )(tψ� se representa la distribución de la DTMC para la etapat:

{ }),...(),()( 21 ttt ψψψ =�

(también denominadovector de probabilidades de estado), entonces:

1. Ρ−= )·1()( tt ψψ ��

2. tt Ρ= )·0()( ψψ ��

Sistemas de Eventos Discretos. Redes de Petri 23

Una DTMC esergódica si para cada estado SA∈ la cadena puede visitar cualquier otroestado infinitamente a menudo, y de una manera tal que el tiempo previsto entre dos visitasconsecutivas al mismo estado sea finito.

Si una DTMC es ergódica entonces existe una distribución: )(tlimt

ψψ ��

∞→= que se puede

obtener (independientemente de la distribución inicial) resolviendo el siguiente sistema de ecuacioneslineales:

��

���

=Ρ=

�∈Si

i 1

·

ψψψ ��

La solución { }Sii ∈= ,ψψ se denominadistribución limitada de la cadena odistribución

en el estacionario. En particular, si la distribución inicial de la DTMC cumple que{ } SjjXP j ∈== ,0 ψ entonces { } 1, ≥∀== tjXP jt ψ . Por esta razón { }Sii ∈= ,ψψ se llama

tambiéndistribución estacionaria de la DTMC.

Para estudiar el comportamiento estacionario de una cadena de Markov se pueden clasificarlos estados en base a los conceptos de estado alcanzable, absorbente, transeúnte, recurrente, periódicoy aperiódico.

Un estado se dice que esalcanzablepara un estadoi si 0)( >nijp para algúnn=1,2,…

Un estado se dice que esabsorbentesi 1=jjp .

Sea )(njf la probabilidad de que el primer retorno al estadoj se produzca enn etapas, y

�∞

=

=1

)(

n

njj ff . Un estadoj se dice que estranseúntesi 1<jf y recurrentesi 1=jf . Un estado

absorbente es recurrente.

Se define elperiodode un estadoj, dj, como el máximo común divisor de todos los posiblesenteros positivosn tal que sea posible alcanzar el estadoj a partir del estadoj en n etapas. Un estadorecurrente se dice que esperiódicocon periododj si 1>jd y aperiódicosi 1=jd

Para un estado recurrente j se define eltiempo de recurrencia medio, Mj como:

�∞

=

=1

)(·n

njj fnM

El estado recurrente para el que ∞<jM se denominarecurrente no nulo,y para el que

∞=jM se denominarecurrente nulo. En una DTMC finita los estados recurrentes no pueden ser

nulos.

Un subconjuntoA del espacio de estadosS se dice que escerradosi no es posible ninguna

transición entre los estados deA y los estados del subconjunto complementario deA, A :

0=��∈ ∈Ai Aj

ijp

24 Sistemas de Eventos Discretos. Redes de Petri

Una DTMC se dice que esirreducible si ningún subconjunto deS es cerrado, es decir, quecada estado de la cadena se puede alcanzar a partir de cualquier otro. Todos los estados de una DTMCfinita e irreducible son recurrentes. Además, o todos los estados son aperiódicos o tienen el mismoperiodod. En el primer caso la DTMC se dice que esaperiódicay en el segundo que esperiódica.

Las cadenas de Markov irreducibles aperiódicas poseen una serie de propiedadesparticularmente atractivas en el análisis estacionario.

A partir de las definiciones anteriores se puede clasificar los estados de una cadena deMarkov. Como muestra la figura siguiente, un estadoi es recurrente si la probabilidadfi de retornar aies 1, en otro caso se trataría de un estado transeúnte. Un estado recurrentei es recurrente no nulo si eltiempo de recurrencia medioMi es finito. Un estado recurrente no nuloi es aperiódico si el periododi

de las etapas requeridas para retornar al estadoi es 1, en otro caso se trataría de un estado periódico.

Figura 21. Clasificación de estados.

Cadenas de Markov de tiempo continuo

Consideremos un sistema que evoluciona aleatoriamente en el tiempo en un espacio deestados contable. Supongamos que el sistema entra en el estadoi en el instantet ( 0≥t ), permaneceen el estadoi una cantidad de tiempo aleatoria, denominadatiempo de permanencia, que estádistribuida exponencialmente con parámetroqi ( 0≥iq ) y entonces salta a un nuevo estadoj con

probabilidad ijp

Si el tiempo de permanencia y el nuevo estado sólo depende del estadoi y no det, entonces sedice que el sistema eshomogéneoen el tiempo.

Por otra parte, el tiempo de permanencia y el nuevo estado no dependen de la historia delsistema previa al instantet y son independientes entre sí.

Sea )(tX el estado del sistema en el instantet. Sea nτ el tiempo de lan-ésimatransición (salto

de un estado a otro) y 1−−= nnn ττδ el n-ésimo tiempo de permanencia (con 01 0 =≥ τyn ).

Además, sea )0(0 XX = el estado inicial y )( += nn XX τ el estado del sistema inmediatamente

después de lan-ésimatransición, cumpliéndose que )()( nn XX ττ =+ .

Sistemas de Eventos Discretos. Redes de Petri 25

Se define unaCadena de Markov de Tiempo Continuo(Continuous-Time Markov Chain,CTMC)de la siguiente forma [ABCDF96]:

Un proceso estocástico{ }0),( ≥ttX se llama Cadena de Markov de Tiempo Continuo en el

espacio de estados contable S, si:

1. Para todo 0≥t StX ∈)( con probabilidad 1.

2. { } { }itXjtXPtXtXitXjtXP nnn ===== − )(|)()(),...,(,)(|)( 01 para todo

01 ... tttt nn >>>> − ; Sji ∈, .

En un CTMC para cada para de estados jiji ≠),( tenemos un evento ijE Supuesto que

cuando la cadena entra en el estadoi en el instantet el evento ijE se planifica para que se produzca en

el instante ijt σ+ donde ijσ es una instancia de una variable aleatoria exponencial negativa con

parámetro ijr , y que se cumplen las siguientes condiciones:

( ]{ } { } )()(|)()(|, ∆+∆===∆+==∆+ oritXjtXPitXttenproduceseEP ijij

Suponiendo las siguientes condiciones:

ijEP{ se produce en( ] ==∆+ })(|, itXtt

= )(})(|)({ ∆+∆===∆+ oritXjtXP ij

{P no se producen eventos en( ] ==∆+ })(|, itXtt

= )()1(})(|)({ ∆+∆−===∆+ �≠

oritXitXPij

ij

{P se producen múltiples eventos en( ] ==∆+ })(|, itXtt )(∆o

Entonces si })({)( itXPti ==Π y SitiXPi ∈≥==Π ,0})0({)0( tenemos que:

)()()()(

)()1)(()()(

∆+��

���

�Π−Π∆+Π=

=∆+∆−Π+∆Π=∆+Π

� �

��

≠ ≠

≠≠

ortrtt

ortrtt

ij ijijiijji

ijij

ijiijji

En notación matricial tenemos:

)()()()( ∆+∆Π=∆+Π oRtt�

donde ),...}(),({)( 2 ttt i ΠΠ=Π�

es la distribución marginal de los procesos en el instantet y

∆+=∆ QIR )( . La matrizQ se denominagenerador infinitesimal de la CTMC y se define de lasiguiente forma:

26 Sistemas de Eventos Discretos. Redes de Petri

[ ]��

���

=−≠

== �≠

jir

jirqqQ

ikik

ij

ijij

Continuando con la derivación, tenemos que:

�∈ ∆

∆+Π=∆

Π−∆+ΠSj

ijjii o

qttt )(

)()()(

tomando el límite cuando 0→∆ tenemos:

�∈

Π=ΠSj

ijji qt

dt

td)(

)(

En notación matricial:

Qtdt

td)·(

)( Π=Π �

resolviendo la ecuación diferencial tenemos:

)()·0()( tHt Π=Π��

donde QtetH =)(

En el caso de que la cadena sea ergódica, existe una distribución limitada:

)(tlimt

Π=Π∞→

��

que puede ser calculada resolviendo el sistema de ecuaciones lineales siguiente:

��

��

=ΠΠ=

�∈Si

i

Q

1

0�

La distribuciónΠ�

se denomina distribución estable o estacionaria de la CTMC.

Procesos semimarkovianos

Si examinamos la evolución de una CTMC{ }0),( ≥ttX sólo en los instantes en que se

producen los cambios de estado, obtenemos un proceso estocástico{ }ℵ∈nXn , donde 0X es el

estado inicial, 1X es el estado que se obtiene después de la primera transición y así sucesivamente. El

proceso estocástico{ }ℵ∈nXn , así obtenido, es una DTMC.

Dada una CTMC{ }0),( ≥ttX , el proceso estocástico{ }ℵ∈nXn , , donde nX es el estado

del proceso en el instante de lan-ésima transición se denominacadena de Markov embebida(embedded Markov chain, EMC).

Sistemas de Eventos Discretos. Redes de Petri 27

Un proceso semimarkovianoes un proceso estocástico de tiempo continuo{ }0),( ≥ttX talque:

1. El proceso estocástico de tiempo discreto embebido{ }ℵ∈nXn , , donde nX es el estado

del proceso en el instante de lan-ésima transición, es una cadena de Markov embebida.

2. El tiempo de permanencia en cada estado de proceso es una variable aleatoria continua ocon una duración determinista, y los tiempos de permanencia son independientes entre sí.

Si todos los tiempos de permanencia son variables aleatorias exponenciales, entonces losprocesos semimarkovianos se conviertes en CTMC.