Diszkrét eseményű folyamatrendszerek modellezése Hangos Katalin Számítástudomány Alkalmazása Tanszék Veszprémi Egyetem Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 1/36
Tartalom Diszkrét eseményű rendszerek jellemzése Véges automata modellek Petri háló modellek közönséges, időzített, színes, hierarchikus Diszkrét eseményű modellek megoldása Diszkrét eseményű modellek dinamikus analízise elérhetőség, végesség, holtpontok, ciklikus viselkedés Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 2/36
Diszkrét eseményű rendszerek jellemzése Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 3/36
Diszkrét eseményű rendszerek Jellemző tulajdonságok: a jelek (bemenet, kimenet, állapot) érték-készlete diszkrét: x(t) X = {x 0,x 1,...,x n } esemény: egy diszkrét jelérték-változás bekövetkezése az idő diszkrét: T = {x 0,x 1,...,x n } = {0, 1,...,n} Csak az események sorrendje számít soros és párhuzamos események leírása alkalmazási területek: ütemezés, operátori eljárások, erőforrás-kezelés Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 4/36
Egyszerű példa: reaktor-szűrő rendszer Fresh solvent Raw material Reactor Product Filters Product Recycle pump Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 5/36
Véges automata modellek Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 6/36
Véges automata modell Absztrakt leírás: A = (Q, Σ, δ) Állapotok halmaza: Q a bemeneti szalag véges ABC (alphabet)-je: Σ = {#;a,b,...} Állapot-átmeneti függvény: δ : Q Σ Q Kezdeti és végállapotok halmaza: Q I, Q F Grafikus ábrázolás: súlyozott irányított gráffal Csúcsok: állapotok (Q) élek: állapot-átmenetek (δ) élsúlyok: bemenő szimbólum (Σ) Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 7/36
Reaktor-szűrő rendszer Véges automata modell 1 Fresh solvent Raw material S eeem Reactor "r" "r" "nil" S reen Product Filters Product "r" "nil" S eern S eren Recycle pump Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 8/36
Reaktor-szűrő rendszer Véges automata modell 2 Absztrakt leírás A = (Q, Σ,δ) Állapotok halmaza: Q = {S eeen,s reen,s eern,s eren } a bemeneti szalag véges ABC-je: Σ = {#; r, nil } Állapot-átmeneti függvény: δ : Q Σ Q Kezdeti és végállapotok halmaza: Q I = {S eeen }, Q F = {S eern,s eren } Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 9/36
Petri háló modellek Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 10/36
Petri háló modellek Diszkrét eljárások soros és párhuzamos lépésekkel Események előfeltételekkel és következményekkel Alapeset és kiterjesztései időzített, színes, hierarchikus Hatékony megoldó és analízis módszerek Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 11/36
Petri háló modell absztrakt leírás: C = (P, T, I, O) Statikus leírás (szerkezet) Helyek (feltételek) halmaza: P Átmenetek (események) halmaza: T Bemeneti (előfeltétel) függvény: I : T P Kimeneti (következmény) függvény: O : T P Grafikus ábrázolás: páros irányított gráffal Csúcsok: helyek (P ) és átmenetek (T ) (partíciók) élek: bemeneti és kimeneti függvény (I, O) Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 12/36
Reaktor-szűrő rendszer Reaktor működés 1 Grafikus leírás Prr Psr Prr Psr t r t r PRr t r "fires" PRr t R t R Ppr Ppr Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 13/36
Reaktor-szűrő rendszer Reaktor működés 2 Formális leírás: szerkezet C S = (P S,T S,I S,O S ) ahol P S = {p rr,p sr,p Rr,p pr } T S = {t r,t R } I S (t r ) = {p rr,p sr } I S (t R ) = {p Rr,p Rr } O S (t r ) = {p Rr,p Rr } O S (t R ) = {p pr,p sr } Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 14/36
Petri hálók dinamikája Jelölőfüggvény: jelölőpontok (token-ek) µ : P N, µ(p i ) = µ i 0 µ T = [µ 1,µ 2,...,µ n ], n = P Átmenet tüzel (működik): ha az előfeltételek "igaz"-ak (van token a bemeneti helyeken) µ (i) [t j > µ (i+1) tüzelés után a következmény-ek lesznek "igaz"-ak Tüzelési (működési) sorozat µ (0) [t j0 > µ (1) [t j1 >...[t jk > µ (k+1) Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 15/36
Reaktor-szűrő rendszer Reaktor működés 3 Tüzelés leírása: µ (0)T S µ T S = [µ rr,µ sr,µ Rr,µ pr ] = [1, 1, 0, 0], µ (1)T = [0, 0, 2, 0] S µ (0) [t S r > µ (1) S Prr Psr Prr Psr t r t r PRr t r "fires" PRr t R t R Ppr Ppr Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 16/36
Párhuzamos események Egynél több engedélyezett átmenet: konkurencia (független feltételek), konfliktus, konfúzió p 1... p 4 p 5 t 1 t 2... p 2... p 3 t 3 t 2 p 2... p 3... t 1 t 3 p 1 p 4 a, b, Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 17/36
Konfliktus feloldás Inhibitor nyilakkal: felhasználó által beállított prioritás Teszt nyilak: nem veszi el a jelzőpontot p ready p ready t drain p tank t drain p tank p pump p pump a, b, Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 18/36
Reaktor-szűrő rendszer Konfliktus helyzet p Rempt p raw p solv Fresh solvent t GR Raw material Reactor p f1empt p semi p f2empt t Gf1 t Gf2 Product Filters Product p product Recycle pump Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 19/36
Hierarchikus Petri hálók Főháló (super net) - alhálók (subnets): beépítés: bármelyik hely vagy átmenet helyére ismétlődő hasonló hálórészek p fill_up t reaction p ready p ra t adda p A t heat p react t cool t fill p filled p rb t addb p B Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 20/36
Kiterjesztett Petri háló modellek Időzített Petri hálók: feliratokkal óra (megvalósítható spec. "forrás" hellyel) átmenetekhez tüzelési idő helyekhez várakozási idő Színezett Petri hálók: feliratokkal jelzőpontok (token-ek) diszkrét értékkészletűek ("szín") helyekhez megengedett színhalmaz átmenetekhez és élekhez (diszkrét) függvények Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 21/36
Vészleállító operátori eljárás Időzített Peri háló modell p neutr_ready p vess_poiss p start p T_normal pp_normal (30 sec) t fill_neutr (10 sec)t cooling p vess_neutr p vess_cool t electr_off p ready Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 22/36
Reaktor-szűrő rendszer Reaktorműködés 4 Színezett Peri háló modell: "feliratok" a 1 : if val(p raw ) { 1b, 2b, 3b } then true p Rempt y p raw 1b 2b p solv a 3 a 1 a 2 a 4 t GR p semi Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 23/36
Diszkrét eseményű rendszermodellek megoldása Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 24/36
DES modellek megoldása Elvi problémakitűzés Adott: a diszkrét eseményű rendszer modelljének formális leírása kezdeti állapot(ok) külső események: rendszer inputok Kiszámítandó: a belső (állapot és kimenet) események szekvenciája A megoldás algoritmikus! A feladat NP-nehéz! Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 25/36
Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 26/36 Lehet NP-nehéz (sztochasztikus és/vagy nem egyértelmű δ állapot-átmeneti Automata modellek megoldása Állapot-átmeneti gráf Megoldás: rendszerállapot szekvenciák állapot-átmeneti gráf (súlyozott irányított gráf) csúcsok: rendszerállapotok élek: állapot-átmenetek (modell végrehajtása) élsúlyok: külső események (rendszer inputok) Előállítás: 1. start: az adott kezdeti állapotból 2. új csúcs hozzávétele: a modell végrehajtásával (input hatása is!)
Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 27/36 Lehet NP-nehéz (konfliktushelyzet vagy nem véges működés esetén) Petri háló modellek megoldása Elérhetőségi gráf Megoldás: jelölés (rendszerállapot) szekvenciák elérhetőségi gráf (fa) (súlyozott irányított gráf) csúcsok: jelölések élek: ha van átmenet, aminek tüzelése összeköti őket élsúlyok: az átmenet és a külső események Előállítás: 1. start: az adott kezdeti jelölés 2. új csúcs hozzávétele: az egyik engedélyezett átmenet tüzelésével (input hatása is!)
Petri háló modellek megoldása Elérhetőségi gráfok Véges eset (1, 0) t 1 p 1 t 1 p 2 (0, 1) a, b, Nem véges eset t 1 p 3 p 1 p 2 t Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 28/36
Petri háló modellek megoldása Nem véges elérhetőségi gráf Redukció: az ω szimbólummal t 1 (1, 0, 0) p 3 t 1 (0, 1, 1) p 1 p 2 t 2 (1, 0, ω) t 2 Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 29/36
Állapot-átmeneti gráf és elérhetőségi gráf A Petri háló modell elérhetőségi gráfja megegyezik az automata modell állapot-átmeneti gráfjával p Rempt p raw p solv t GR p f1empt p semi p f2empt S eeem "r" "r" "nil" t Gf1 t Gf2 S reen "r" "nil" p product S eern S eren Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 30/36
Diszkrét eseményű rendszermodellek analízise Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 31/36
Petri háló modellek dinamikus analízise Dinamikus tulajdonságok viselkedési (kezdeti állapot független) szerkezeti (struktúrális) (csak a szerkezeti gráftól függ) Viselkedési tulajdonságok elérhetőség (lefedhetőség, irányíthatóság) hotpontok, élőség, végesség Szerkezeti tulajdonságok hely és átmenet invariánsok: ciklikus viselkedés Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 32/36
Petri háló modellek viselkedési tulajdonságai Elérhetőség vizsgálata: elérhetőségi gráf vizsgálatával adott [kezdeti állapot (µ (I) ), végállapot (µ (F) )] párhoz létezik-e egy tüzelési sorozat, úgy, hogy µ (I) [t j0 > µ (1) [t j1 >...[t jk > µ (F) Egyéb viselkedési tulajdonságok végesség (korlátosság): minden kezdőállapotra korlátos-e a jelzőpontok száma? holtpontok (élőség): nem szándékolt jelölés, amelyben nincs engedélyezett átmenet Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 33/36
Petri háló modellek Példák Holtpont: a (0, 1) jelölés (1, 0) t 1 p 1 t 1 p 2 (0, 1) a, b, Nem korlátos hely: p 3 t 1 (1, 0, 0) p 3 t 1 (0, 1, 1) p 1 p 2 t 2 (1, 0, ω) t 2 Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 34/36
Petri háló modellek dinamikus analízisének módszerei Viselkedési tulajdonságok megkonstruáljuk az elérhetőségi gráfot a definíciónak megfelelően keresünk a gráf csúcsain lehet NP-nehéz Szerkezeti tulajdonságok megkonstruáljuk a Petri háló gráfjának előfordulási mártixát lineáris egyenletrendszer megoldását igénylik polinomiális idejű, gyakorlatban korlátozott fontosságú Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 35/36
Köszönöm a figyelmet! Haladó Folyamatmodellezés és modell analízis PhD kurzus p. 36/36