P-GRÁF ALAPÚ WORKFLOW MODELLEZÉS FUZZY KITERJESZTÉSSEL DOKTORI (PhD) ÉRTEKEZÉS Tick József Témavezető: Dr. Kovács Zoltán Pannon Egyetem Műszaki Informatikai Kar Informatikai Tudományok Doktori Iskola 2007
P-GRÁF ALAPÚ WORKFLOW MODELLEZÉS FUZZY KITERJESZTÉSSEL Értekezés doktori (PhD) fokozat elnyerése érdekében a Veszprémi Egyetem Informatikai Tudományok Doktori Iskolájához tartozóan. Írta: Tick József Témavezető: Dr. Kovács Zoltán Elfogadásra javaslom (igen / nem)... (aláírás) A jelölt a doktori szigorlaton... % -ot ért el. Veszprém,. a Szigorlati Bizottság elnöke Az értekezést bírálóként elfogadásra javaslom: Bíráló neve:...... igen /nem.. (aláírás) Bíráló neve:...... igen /nem.. (aláírás) A jelölt az értekezés nyilvános vitáján...% - ot ért el. Veszprém, a Bíráló Bizottság elnöke A doktori (PhD) oklevél minősítése... Az EDT elnöke ii
Tartalomjegyzék Tartalomjegyzék Ábrák jegyzéke Kivonat Abstract Abstrakt Köszönetnyilvánítás iii v vii viii ix x 1. Bevezetés 1 1.1. A probléma felvetése, a kutatás szükségessége 1 1.2. A kutatás célkitűzése 3 2. A workflow fogalmai, eddigi modellezési lehetőségek 5 2.1. A workflow definíciója, modellezésének aspektusai 5 2.2. A workflow elemei, a modell felépítése 7 2.3. A workflow modellezés eddigi megoldásai 11 2.4. Konklúzió 16 3. P-gráf alapú modellezés és hálózat szintézis kombinatorikus módszerrel 17 3.1. A P-gráfok bevezetése 17 3.2. A P-gráfok matematikai leírása 19 3.3. A folyamat-hálózat szintézis (PNS) kombinatorikus megoldása 21 3.4. A maximális struktúra generálása, az MSG algoritmus 24 3.5. A megoldás struktúrák generálása, az SSG algoritmus 29 3.6. A gyorsított Branch-and-Bound (ABB) módszer 31 4. P-gráf alapú workflow modellezés 35 4.1. A P-gráf alapú workflow modell bevezetése 35 4.2. A workflow PNS struktúrájából matematikai modell generálása 41 4.3. Optimális workflow struktúrák 43 iii
5. A P-gráf alapú workflow modell fuzzy kiterjesztése 45 5.1. A fuzzy kiterjesztés bevezetésének szükségessége 45 5.2. A workflow modell fuzzy kiterjesztése 46 5.3. A paraméterezett t-norma bevezetése 59 6. A modell alkalmazásának bemutatása egy esettanulmány alapján 70 6.1. Az ügymenet specifikációja 70 6.2. Az ügymenet workflowjának generálása WFS módszerrel 75 7. Összefoglalás 86 8. Új tudományos eredmények 88 8.1. Tézisek 88 8.2. A PhD dolgozat témájában megjelent publikációim 89 Irodalomjegyzék 91 iv
Ábrák jegyzéke 2.1. ábra Workflow a WfMC jelölésrendszerével 8 2.2. ábra Szekvenciális vezérlési minta 8 2.3. ábra Párhuzamos vezérlési minta 9 2.4. ábra Szelektív vezérlési minta 9 2.5. ábra Iteratív vezérlési minta 10 2.6. ábra Workflow a WfMC ajánlása szerint 11 2.7. ábra Szekvenciális vezérlési minta Petri-hálóval 12 2.8. ábra Párhuzamos vezérlési minta Petri-hálóval 13 2.9. ábra Szelektív vezérlési minta Petri-hálóval 14 2.10. ábra Iteratív vezérlési minta Petri-hálóval 14 3.1. ábra A P-gráfoknál alkalmazott jelölések 18 3.2. ábra A P-gráf modell jelölésrendszerének szemléltetése 19 3.3. ábra A keresési tér csökkentése az axiómák segítségével 23 3.4. ábra a lehetséges műveleti egység jelöltek P-gráfjai 26 3.5. ábra A generált kezdeti, vagy input struktúra 27 3.6. ábra A generált maximális struktúra P-gráfja 28 4.1. ábra A P-gráf alapú workflow modellnél alkalmazott jelölések 36 4.2. ábra Példa a P-gráf alapú workflow modellre 37 4.3. ábra A workflow modell a bevezetett kiterjesztésekkel kiegészítve 40 5.1. ábra A dokumentum rendelkezésre állásának megadása 47 5.2. ábra Az erőforrás rendelkezésre állásának megadása 47 5.3. ábra A példa workflow struktúrája 49 5.4. ábra Az a 1 aktivitás működése 52 5.5. ábra Az a 2 aktivitás működése 53 5.6. ábra Az a 3 aktivitás működése 54 5.7. ábra Az a 4 aktivitás működése 55 5.8. ábra Az a 5 aktivitás működése 56 5.9. ábra Az a 6 aktivitás működése 57 5.10. ábra Az a 7 aktivitás működése 58 5.11. ábra A Zadeh-féle t-norma grafikusan ábrázolva 62 5.12. ábra A Zadeh-féle t-norma felületként ábrázolva 62 v
5.13. ábra A Fodor-féle t-norma grafikusan ábrázolva 63 5.14. ábra A Fodor-féle t-norma felületként ábrázolva 64 5.15. ábra A paraméterezett t-norma grafikusan ábrázolva 65 5.16. ábra A paraméterezett t-norma felületábrázolásban p=0.2 esetén 66 5.17. ábra A paraméterezett t-norma felületábrázolásban p=0.8 esetén 67 5.18. ábra Az a 1 aktivitás működése Zadeh-féle t-normával 68 5.19. ábra Az a 1 aktivitás működése paraméterezett t-normával (p=0.2) 68 5.20. ábra Az a 1 aktivitás működése paraméterezett t-normával (p=0.8) 69 6.1. ábra UML aktivitás diagram 73 6.2. ábra Adatfolyam ábra 74 6.3. ábra Az ügymenet maximális workflow struktúrája 76 6.4. ábra Az 1. megoldás struktúra 77 6.5. ábra A 2. megoldás struktúra 78 6.6. ábra A 3. megoldás struktúra 79 6.7. ábra A 4. megoldás struktúra 80 6.8. ábra Az 5. megoldás struktúra 81 6.9. ábra A 6. megoldás struktúra 82 6.10. ábra A 7. megoldás struktúra 83 6.11. ábra A 8. megoldás struktúra 84 6.12. ábra A 9. megoldás struktúra 85 vi
Kivonat P-gráf alapú workflow modellezés fuzzy kiterjesztéssel A komplex ügyviteli folyamatok költség hatékony és hibamentes kezelésének megoldása, illetve a megoldás hatásfoka úgy a profitorientált, mint a nonprofit szféra számára igen fontos kérdés, hiszen a bonyolult üzleti, irodaautomatizálási folyamatok optimális hatékonysága elsőrendű gazdasági érdek. A workflow a legelterjedtebben alkalmazott modellezési technika a vállalati és irodai információs rendszerek területén. A munkafolyamatok felderítésére, modellezésére, optimalizálására alkalmazott workflow alapú modellezés módszerei között ma nincs olyan folyamat-alapú módszer, amely szisztematikusan garantáltan optimális workflow-hálózatstruktúrához vezetne. A dolgozatban a probléma megoldására új eszközt vezetünk be, a P-gráf alapú workflow modellezést. Kiterjesztjük a modellt, bevezetjük az erőforrások kezelését, majd bemutatjuk az optimális workflow modell generálás hálózatszintézisen alapuló szisztematikus, gyors, módszerét, melynek matematikai háttere megalapozott. Az új modell képes a folyamat-struktúrán túlmenően a kiinduló-, köztes-, és előállított dokumentumok kezelésére, a szükséges és rendelkezésre álló erőforrások mennyiségi és minőségi figyelembe vételére, az erőforrás-, és egyéb korlátozó tényezők, szűk keresztmetszetek kezelésére. A valós folyamatok jobb modellezhetősége, az életszerű, bizonytalan, nem egzaktul definiálható helyzetek jobb kezelhetősége érdekében a P-gráf alapú workflow modell további, fuzzy kiterjesztését vezetjük be. vii
Abstract P-graph based workflow modelling with fuzzy extension The cost effective and error free management solution of the complex business processes as well as the solution s efficiency rate are corner points in the life of profit- and non-profit- oriented organisations and institutions, since the optimal efficiency of the complicated business, office-automation processes is of primary economic interest. Workflow is the most widespread modelling technique application in the field of business and office information systems. At present, there is no such process-based methodology amongst the process based modelling techniques applied for workflow analyses, modelling and optimisation that would provide a systematically guaranteed optimal workflow-network structure. This dissertation introduces a new tool for the solution of the problem, namely the P-graph-based workflow modelling. This model is extended by the introduction of resource management, moreover, a systematic, fast method of optimal workflow model generation based on network synthesis with justified mathematical background is also presented. The new model, apart from the management of the process-structure, enables the management of the input, temporary, and output documents, is capable of the quantitative and qualitative consideration of the necessary and available resources, as well as the management of the resource- and other type of constraints and other bottlenecks. Furthermore, a fuzzy extension of the P-graph based workflow model is introduced in order to achieve a better modelling of real processes, and a better management of the real life, ambiguous, non-exactly definable situations. viii
Abstrakt P-graph basiertes Workflow Modellieren mit Fuzzy Erweiterung Die Lösung der fehlerfreie und kosten-effektive Handlung von komplexen Verwaltungs- und Geschäfts-Prozessen, beziehungsweise die Effektivität der Lösung ist sowie im Profit-orientierten als auch im Non-Profit Sektor eine sehr wichtige Frage, weil die optimale Effektivität von Geschäfts- und Verwaltungs- Automatisierungsprozessen ist eine Wirtschaftszweck mit hohen Priorität. Der Workflow ist am weitest verbreitet angewandte Modellierungs-Technik auf dem Gebiet von Geschäfts- und Verwaltungs-Informationssystemen. Es existiert keine Prozess-basierte Methode unter die für Aufklärung, Modellierung und Optimierung von Arbeitsprozessen angewandte Workflow basierte Modellierungs-Methoden die systematisch zum optimale Workflow- Netzwerkstrukturen führt. In dieser Dissertation wird ein neues Mittel zum P-graph basierte Modellierung eingeführt. Das Modell wird mit Ressourcen-Handling erweitert und eine systematische, schnelle Methode mit mathematischen Hintergrund wird zum optimalen Workflow Modell Generierung vorgestellt. Das neue Modell ist geeignet weit über der Prozess-Struktur hinaus auch die Input- Zwischen- und Output-Dokumente zu behandeln, berücksichtigt sowie die benötigende und die zur Verfügung stehende Ressourcen (qualitative und quantitative) als auch die Beschränkungsparametern und die Engpassen. Um die realen Prozesse besser modellieren zu können, um unbestimmte, nicht exakt definierbare Situationen besser handeln zu können wurde eine weitere Fuzzy-Erweiterung des P-graph basiertes Workflow Modells eingeführt. ix
Köszönetnyilvánítás Ezúton mondok köszönetet témavezetőmnek, Dr. Kovács Zoltánnak eredményeim elérésében, dolgozatom elkészítésében nyújtott magas színvonalú, folyamatos és áldozatos segítségéért. Köszönöm az informatikai tudományok doktori iskola tagjainak, különösen vezetőjének, Prof. Dr. Friedler Ferencnek a hasznos szakmai tanácsokat és a kollegális segítséget. A Budapesti Műszaki Főiskolán dolgozó közvetlen kollégáimnak köszönöm a támogatást, a kitartó ösztönzést dolgozatom elkészítése során. Köszönöm családomnak a megértést, a bíztatást és az áldozatvállalást, amivel a dolgozat elkészítését lehetővé tették. x
1. Bevezetés 1.1. A probléma felvetése, a kutatás szükségessége A különböző szervezetek, gazdasági-, adminisztratív egységek feladatuk ellátásához, céljaik eléréséhez összefüggő tevékenységek sorát hajtják végre. Ezen tevékenység sor, vagy folyam szervezése, különböző szempontok szerinti vizsgálata, optimalizálására való törekvés a szervezet alapvető érdeke, mert jelentős mértékben meghatározza a működés hatékonyságát, ami költségmegtakarítást, illetve a gazdasági szférában a profit növekedését jelenti. Ezen okok miatt a munkafolyamatok elemzése, tervezése szinte egyidős magával a tevékenység végzésével. Ezen a területen az elmúlt évtizedek egyik legjelentősebb hatású változása az volt, hogy az informatika szinte minden területen beépült az üzleti folyamatokba, és annak meghatározó elemévé vált. Ez nem csak a profit orientált gazdasági szféra szereplőire, a különböző méretű termelő vállalatokra igaz, hanem a non-profit szférára is. A folyamatok informatikai kezelése a szolgáltató iparon túl az államigazgatásban, az oktatásban, az egészségügyben, stb. nélkülözhetetlen szükségszerűség. Magyarország aktualizált konvergencia programja 2006-2010 explicit meghatározza, hogy A közszolgáltatások teljes körű informatikai támogatásának érdekében ügymenetmodelleket kell kidolgozni és a jogszabályalkotás során figyelembe venni A Magyar Információs társadalom stratégiában megfogalmazásra kerülnek az ekormányzattal, az eügyvitellel kapcsolatos kritériumok. Ezen szolgáltatások kialakítása nem csak az informatikai fejlesztéseket igénylik, hanem a teljes ügymenet, az összes irodai folyamat analízisét, modellezését, átalakítását. Az irodai folyamatok automatizálásának kezdetén a meglevő folyamatok számítógépesítése volt a cél, ami lényegében a meglévő folyamatok átültetését jelentette számítógépes rendszerekre. Később azonban a Bussiness Process Management (BPM) megjelenésével az üzleti folyamatok teljes átalakítását, információ áramlás-alapú szemlélettel elvégzett 1
újraszervezését jelentette. A BPM sok fajta szempont szerint vizsgálja és modellezi a folyamatokat. A Bussiness Process Reengineering (BPR) szakemberei különösen az irodaautomatizálás terén megteremtették azt a modellt, amely a leginkább alkalmas a munkafolyamat modellezésére. A workflow (amelynek magyar elnevezése máig nem szabványosodott) meghatározására számtalan különböző definíció született. Autentikusnak a Workflow Management Coalition (WfMC), a BPS-sel, BPR-ral foglalkozó szakemberek legjelentősebb szakmai közösségének meghatározása tekinthető: The automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules [1]. Az elmúlt évtized rohamos fejlődésének eredményeképpen mára a workflow menedzsment igen elterjedt és széles körben alkalmazott technika a vállalati és irodai információs rendszerek területén. Ezen terület jelentős bevételi részt képvisel az informatikai megbízások között, ezért az informatikus szakma számára különösen fontos területnek számít. Számtalan kis-, közép-, és nagyvállalat alkalmaz Workflow Management System-eket (WfMS), illetve azok több, kevesebb funkcióit megvalósító rendszereket. A WfMS rendszerek integránsan kezelik az üzleti folyamatokhoz kötődő alapvető tevékenységeket, mint a specifikálás, elemzés, tervezés, modellezés, szimulálás, irányítás és ellenőrzés. Ezen nagy rendszerek stabil működéséhez nélkülözhetetlen egy korrekt matematikai alapon megfogalmazott, igazolhatóan helyes működési modell. A komplex ügyviteli folyamatok kezelésének költség hatékony és hibamentes megoldása, illetve a megoldás hatásfoka úgy a profitorientált, mint a nonprofit szféra számára igen fontos kérdés, hiszen az optimálistól gyengébb hatásfok lényegesen több erőforrás igénnyel rendelkezik és így sokkal drágább. A bonyolult üzleti, iroda automatizálási folyamatok megoldásának hibamentessége és hatékonysága nagyban múlik a jó modellező eszközön és azon, hogy rendelkezésre álljon az optimális megoldás szisztematikus és gyors megtalálásához szükséges eszközrendszer. Mindezen jellemzők azt mutatják, hogy az elkövetkezendő időszak nagy kihívása az irodai munkafolyamatok új, folyamat-szemléletű alapokra helyezett, teljes mértékű automatizálása lesz. Ez a munka nem végezhető el a 2
hatékonyság, az optimális folyamatstruktúra kialakítására való törekvés nélkül. Ez pedig korrekt, modell alapú optimalizálási módszerek kifejlesztését követeli meg az adott területen. A 2. fejezetben áttekintjük a jelenleg alkalmazott workflow modellezési módszereket. Ezen vizsgálat konklúziója, vagyis, hogy nincs jelenleg a hálózat szintézisen alapuló olyan folyamat-alapú módszer, mely szisztematikusan optimális hálózatstruktúrához vezetne, egyértelműen szükségessé teszi az ezen irányba történő kutatást. 1.2. A kutatás célkitűzése A fentebb megfogalmazott problémákból, kihívásokból egyenesen következik a megoldások keresésének szükségessége. Az igényekből levezethető egy új kutatás iránya, célrendszere. Az elvégzett kutatás eredeti célkitűzései a következőkben foglalhatók össze: a kutatás eredményeként egy új eszköz bevezetése a workflow modellezés területén, elismerve az eddigi megoldások előnyeit, új oldalról közelítve, más szemléletet meghonosítva, az új követelményeknek jobban megfelelő eszközrendszert adjon a további fejlesztésekhez, a kutatás eredményeként olyan módszert biztosítson a workflow modellezéshez, melynek matematikai háttere rendelkezésre áll, az optimális workflow struktúra a hagyományosnál több jellemző figyelembe vételével algoritmikus módon bizonyítottan optimális megoldáshoz vezet, az új modell legyen képes a folyamat-struktúrán túlmenően a kiinduló-, köztes-, és előállított dokumentumok kezelésére, a szükséges és rendelkezésre álló erőforrások mennyiségi és minőségi figyelembe vételére, az erőforrás-, és egyéb korlátozó tényezők, szűk keresztmetszetek kezelésére, a kidolgozott rendszer az eddigieknél jobban legyen képes modellezni a valós folyamatokat, kezelje az életszerű, bizonytalan, 3
nem egzaktul definiálható helyzeteket is, legyen képes a fuzzy megoldások befogadására, kezelésére. 4
2. A workflow fogalmai, eddigi modellezési lehetőségek Az alábbiakban a szakirodalom alapján foglaljuk össze a workflow-nál alkalmazandó definíciókat, a modellezés különböző aspektusait, a workflow modell elemeit és a modellezés eddigi koncepcióit, lehetőségeit, azok jellemzőit. 2.1. A workflow definíciója, modellezésének aspektusai A workflow definícióját az első fejezetben megadtuk. Ezek szerint a workflow egy üzleti folyamat automatizálása, melyben dokumentumok, információk áramlásának, feldolgozása szabály-alapú folyamatának, egészét vagy részét jelenti. A dolgozat során ezt a megfogalmazást követjük, ragaszkodva a dokumentumokhoz, információkhoz. Meg kell azonban említeni, hogy a szakirodalom igen vegyes képet mutat. Az alkalmazás oldaláról tekintve a szigorúan vett definíció eredeti értelmezése nagyon fellazult, az alkalmazások nem korlátozódnak csak és kizárólag dokumentumok, információk kezelésére. Nagyon sok alkalmazás esetében egyszerűen úgy értelmezik a workflow-t, mint egy termelési folyamat áttekinthető ábrázolását valamilyen formában. Ez a terület kívül esik vizsgálatainkon, hiszen szabványokat nem, vagy csak ritkán követ, korrekt matematikai alapokon nyugvó modellezési háttere az esetek igen nagy részében egyáltalán nincs. A kutatás szempontjából érdekes irány a modellezésen alapuló workflow tervezés. A kezdetben elszórt workflow alkalmazás rohamos fejlődésnek indult. Az egyre komplexebb feladatok megoldása igényelte az intenzív informatikai támogatást a tervezés fázisában. Ilyen szoftverrendszerek fejlesztéséhez azonban okvetlenül szükséges a formalizálás, a modellezés matematikai alapokon nyugvó rendszerének megteremtése. Ezen igényt kielégítő kutatások, publikációk emelték a workflow alkalmazásokat egyszerű rajzolgatásból korrekt, bizonyítható, paramétereiben ellenőrizhető, modellezésen-alapuló tervezéssé. A workflow modellezésének a szakirodalom [3], [4], [11] és [15] alapján, a kutatás szempontjából 5 releváns aspektusa különböztethető meg: 5
A vezérlési-, vagy folyamat aspektus határozza meg a workflow, mint hálózat statikus struktúráját, azaz az elemeit, és az azok közötti kapcsolatokat. Az ide tartozó vezérlés-folyam (control flow) tartalmazza az egyes elemek közötti időfüggőségeket, a különböző vezérlési feltételeket és ezzel együtt a workflow modellre érvényes teljes végrehajtási szabály-rendszer, az ún. routing leírását. Az erőforrás-, vagy szervezeti aspektus határozza meg, a feladatok végrehajtásához szükséges erőforrások típusát és mennyiségét, illetve ezek rendelkezésre állását. Leírja az erőforrások felhasználására, korlátaira vonatkozó szabályokat, megszorításokat, definiálja a funkcionalitás szempontjából a szervezetben betöltött szerepeket és az egyes csoportokat, valamint az ezekhez rendelt felelősségeket és hierarchiákat a szervezeten belül. Az adat-, vagy információs aspektus tartalmazza a workflow működéséhez szükséges adatok leírását. Ezek állnak egyrészt a vezérléshez szükséges adatokból (vezérlési állapot adatok), amelyek a modell pillanatnyi vezérlési állapotát írják le. Másrészt állnak a termelés fontos jellemzőit tartalmazó adatokból, táblázatokból, dokumentumokból. A feladat-, vagy funkció aspektus definiálja, hogy a workflow-ban foglalt feladat végrehajtása során melyek azok az elemi műveletek, amelyeket a különböző egységeknek a rendelkezésre álló erőforrások igénybevételével végre kell hajtani. A művelet-, vagy alkalmazás aspektus határozza meg azon elemi műveleteket, melyeket a workflow-ban használt alkalmazásoknak (szoftverek) végre kell hajtaniuk. Ezen alkalmazások lehetnek általános célúak, mint például szövegszerkesztő, táblázat kezelő szoftverek, de lehetnek speciálisak, az adott workflow számára, az adott művelet, vagy művelet-csoport végrehajtásához speciálisan kifejlesztett szoftverek. A szakirodalomban leginkább az első, illetve kis részben a második aspektusban említett, a workflow modellezés vezérlési problematikájának kutatásával foglalkozó publikációkkal találkozunk első sorban. Ezen terület részletes irodalmi feltárását a 2.3. fejezet tartalmazza. A többi aspektus inkább 6
dokumentum-kezelési feladat (leírások, adatbázis-kezelés, Hyperlink kezelés) melyet speciális szoftverek különösebb modellezési háttér nélkül, általános információ-feldolgozási alapokon korrektül megoldanak. 2.2. A workflow elemei, a modell felépítése A workflow modell elemeit és a modell felépítését a korábban már említett Workflow Management Coalition (WfMC) immáron szabványosodott definíciói és jelölésrendszere segítségével tárgyaljuk. A mértékadó dokumentum a The Workflow Management Coalition Specification, Workflow Management Coalition Terminology & Glossary [1] alapvetően az előző fejezetben meghatározott első aspektust, a vezérlési, vagy folyamat szemléletet tükrözi. Nagy hangsúlyt fektet a struktúra elemekre, a különböző vezérlési mintákra. Az aktivitás a workflow alapeleme, amely az adott folyamat egy logikus munka-lépését jelenti. Az aktivitás lehet egy ember által végrehajtott művelet, mely nem igényel informatikai támogatást (pl.: hagyományos iktatás, ügyirat lefűzése, stb.) és így lehet független az automatizált folyamatoktól és lehet automatizált aktivitás, amely részben emberi de első sorban gépi erőforrásigénnyel rendelkezik a folyamat adott elemének végrehajtásához. A vizsgálat szempontjából a modellezés során az aktivitás komplexitása absztrakciós szint függő, mely a lépésenkénti finomítással az absztrakciós szint csökkentésével egyszerűsödik egészen az alapvető műveletekig. A WfMC ajánlásában az aktivitás jelölésére egyszerű téglalap használatos. A folyamat az aktivitások hálózatát jelenti, mely egyben definiálja az aktivitások egymáshoz képesti viszonyát is. A folyamat egészében reprezentálja a feldolgozandó üzleti folyamatot, vagy annak valamely részfolyamatát. A reprezentáció rendelkezik a folyamat kezdetéről, végéről, információt ad az egyes aktivitásokról, valamint a folyamathoz tartozó egyéb jellemzőkről mint például informatikai alkalmazások, adatok, adatforrások, stb. A WfMC jelölését alkalmazva a workflow igen egyszerűen ábrázolható (lásd 2.1. ábra). Külön jelölés hiányában az egyes aktivitások balról jobbra hajtódnak végre. Az ábra jól szemlélteti az eset fogalmának és a vezérlés 7
egyértelműsítésének szükségességét. A workflow-ban lévő szigorú szekvenciák mint például A->B egyértelműek, de a szelektív vagy parallel ágak például a C,D vagy az F,G,H esetében rendelkezni kell a vezérlésről. Az eset egy adott folyamat végrehajtásának adott menetét határozza meg. Ez egy adminisztratív folyamatot leképező workflow-ra vetítve azt jelenti, hogy minden ügy feldolgozása lehet egyedi, vagyis szükségszerűen nem kell, de különbözhet egymástól. A szelektív ágak esetében például a fizetés történhet kézpénzzel, átutalással vagy csekken, míg a parallel ágak esetében például egy ügy folytatásának feltétele többféle igazolás beszerzése. 2.1. ábra Workflow a WfMC jelölésrendszerével Minden egyes eset folyamán a vezérlés tehát más és más lehet, melyet a vezérlési minta ír le. A vezérlési minta a vezérlés-folyam alkotóeleme. A WfMC definiál szekvenciális, parallel, szelektív és iteratív mintákat, melyet az ANDsplit, OR-split, AND-join, OR-join, alapelemekkel valósít meg. Az alapelemekből természetesen a négynél több vezérlési minta generálható, melyekkel jelen fejezet végén, a Petri-háló alapú modellezésnél foglalkozunk. Az előbb említett 4 alapeset a WfMC ajánlásában a következőképpen néz ki: A szekvenciális mintában az aktivitások egymás után hajtódnak végre, az aktivitás indításának feltétele az előző aktivitás kimenetén definiált anyag/dokumentum elkészülte. 2.2. ábra Szekvenciális vezérlési minta 8
A párhuzamos minta esetében egyszerre egynél több aktivitás hajtódik végre egyidőben. Ekkor a parallel ágak kezdetén egy AND-Split alapelem áll, mely a megosztást megelőző aktivitás befejeződésekor egyszerre indítja mindegyik aktivitást. A parallel ágak végén pedig AND-Joint áll, amely biztosítja mindegyik parallel ág aktivitásainak befejezését ahhoz, hogy a parallel működést követő aktivitás indulhasson. 2.3. ábra Párhuzamos vezérlési minta A szelektív vezérlési minta esetében a parallel ágakon elhelyezkedő aktivitások közül csak egy hajtódhat végre. Ezt biztosítja a minta elején elhelyezkedő OR-Split, amely a parallel ágakat megelőző aktivitás befejezése után a feltételtől függően választja ki az indítandó aktivitást. A vezérlési minta végén található OR-Joint feladata, hogy bármely ágon található aktivitás befejeződése esetén indítsa a parallel szakaszt követő aktivitást. 2.4. ábra Szelektív vezérlési minta Az iteratív vezérlési minta lényegében az előzőekből már felépíthető. Célja, hogy adott aktivitás, vagy aktivitások ciklikusan ismételhetők legyenek valamely feltétel teljesüléséig. A meglévő vezérlési alapelemek 9
felhasználásával az A1 és A2 közé elhelyezett OR-Joint és az A2 és A3 közé elhelyezett OR-Split egy korrekt megoldást ad a problémára. Egyszerűségből a WfMC ajánlás az 2.5. ábrán látható notációt preferálja az iteráció jelölésére. Az ajánlás alapján a szerkezet a strukturált programozásból jól ismert repeat-until típusú, vagyis az A 2 aktivitás addig ismétlődik, amíg a feltétel igazzá nem válik. A vizsgálat az A2 tevékenység után van. 2.5. ábra Iteratív vezérlési minta A fenti vezérlési minták működésének kritériuma a különböző alapelemekhez rendelhető feltételek megadásának lehetősége. Az ajánlás 4 ilyen feltétel megadását teszi lehetővé: A feltétel nélküli átmenet (Unconditional Transition) esetében a megelőző aktivitás befejeződése esetén a követő aktivitás minden körülmény között indulhat. Semmilyen feltételvizsgálat nem történik az adott ponton. A feltételes átmenet (Conditional Transition) alkalmazásakor az átmenet pontján (a két aktivitás között) egy logikai kifejezés kerül kiértékelésre. A követő aktivitás indításának szükséges, de nem elégséges feltétele a megelőző aktivitás befejezése. A követő aktivitás indítása mindaddig fel van függesztve, amíg a logikai kifejezés (feltétel) értéke igaz nem lesz. Az elő-feltétel (Pre-Condition) lehetőséget biztosít arra, hogy egy logikai kifejezés segítségével egy vagy több aktivitáshoz belépési feltételt rendeljünk. Az utó-feltétel (Post-Condition) alkalmazásával logikai feltételt rendelhetünk egy vagy több aktivitás befejezéséhez. A jelölésrendszer lehetőségeinek kihasználásával egy komplexebb feladat workflow-ját mutatja a 2.6. ábra. 10
2.6. ábra Workflow a WfMC ajánlása szerint A fentiekben összefoglalt vezérlési minták lényegében alap mintáknak is tekinthetők. Ebből kiindulva számos kiterjesztett workflow minta (workflowpattern) hozható létre. Aalst, Hofstede, Kiepuszewski és Barros [16], [17] egy 26 workflow-mintát tartalmazó rendszert dolgoztak ki a legegyszerűbb konstrukcióktól a különböző kiterjesztésekig (Advanced branching and synchronization patterns, structural patterns, temporal relations, inter-workflow synchronization, stb.). A 26 minta egy része nehezen valósítható meg, még a bonyolultabb Workflow Management rendszerek sem kezelik őket. 2.3. A workflow modellezés eddigi megoldásai A workflow modellezés szakirodalmának áttekintésekor meg kell állapítani, hogy igen szélesen értelmezett ezen a területen a modellezés. Kutatási szempontból nem értékelhetők azok a modellezésnek feltüntetett inkább ábrázolások, melyek semmilyen korrekt matematikai háttérrel nem rendelkeznek. A modellezés vizsgálatakor mi kizárólag a formális megközelítéseket, tehát a megfelelő matematikai háttérrel rendelkező, korrektül bizonyítható modelleket vesszük számba. Az előbbi megfontolások figyelembevételével szinte kizárólag a Petri-hálón alapuló workflow modellezés lelhető fel a publikációk között. A Petri-háló bevezetése nem véletlen, hiszen a rendszermodellezés széles területen használatos leíró eszköz. A Petri-háló egyik legfontosabb előnye a többi leírási formalizmussal szemben, hogy egyidejűleg egy grafikus és egy matematikai 11
reprezentációt is definiálnak és így ötvözik a vizuális megjelenítésből fakadó áttekinthetőséget, könnyű kezelhetőséget a formális modellek matematikai korrektségével [10]. Ezért a Petri-hálók jól használhatók a konkurens, az aszinkron, az elosztott, a párhuzamos, a nemdeterminisztikus és/vagy sztochasztikus rendszerek korrekt és egzakt modellezésére. Így számos területen pl. operációs rendszerek modellezése [12], logisztikai modellek felállítása [13], sikeresen és előszeretettel használják ki a Petri-hálók alkalmazásával lehetővé váló matematikai modellezési módszert a problémák megoldására. A Petri-hálók workflow modellezésbe való bevezetésekor Aalst és Hee [ 4] specifikálták az alapkonstrukciókat a Petri-háló elemeinek felhasználásával, ahol p-vel (place) jelölik a háló egyik elemtípusát, a helyeket, míg t-vel (transition) jelölik a háló másik elemtípusát, az átmeneteket. A háló futtatásának nyomonkövetésére zsetonokat, ún. tokeneket használnak, melyek a vezérlés pillanatnyi állapotát fejezik ki. Így felépítették a szekvenciális-, a párhuzamos-, a szelektív-és az iteratív vezérlési mintákat. A Petri-háló esetében bigráfokról lévén szó átmenet az átmenettel, illetve hely a hellyel nem kapcsolódhat. A modell működését a zsetonok segítségével biztosítja a háló. A 4 alap vezérlési minta megvalósítása a következő módon történik [11]. A szekvenciális vezérlési minta esetében a Petri-hálóban ha a két aktivitást reprezentáló Task1-et és Task2-t összekapcsoljuk, közé kell iktatunk egy helyet. Az első aktivitást reprezentáló Task1 befejeződésével a zseton a C1 helyből a C2-be kerül, aminek hatására indulhat a második aktivitást reprezentáló Task2. Így a szekvenciális végrehajtás Task1 és Task2 vonatkozásában teljes mértékben biztosítva van. 2.7. ábra Szekvenciális vezérlési minta Petri-hálóval 12
A párhuzamos minta esetében a Petri-háló elemeiből meg kell valósítanunk az AND-Split-et és az AND-Join-tot. A Petri-hálós modellben az AND-split-et a t1 átmenet képezi le, amely akkor tüzel, ha a C1 helybe zseton érkezik és működése során két zsetont generál egyet a C2 és egyet a C3 helyekbe. A párhuzamos működés szinkronizálása érdekében a párhuzamos ágak lezárásaként egy AND-join-tot kell alkalmaznunk, melyet a t2 átmenet reprezentál. A t2 akkor és csak akkor generál egy zsetont a C6-ba, ha a C4 is és a C5-is tartalmaz egy-egy zsetont. 2.8. ábra Párhuzamos vezérlési minta Petri-hálóval A szelektív vezérlési minta esetében a Petri-háló elemeiből egy OR-splitet és egy OR-join-tot kell megvalósítani. Az OR-split két különböző módon képezhető le, vagyis előfeltétellel, vagy döntési szabály hozzárendelésével [4]. Az előfeltétel disztributálást eredményez a hálózatban és az esetek többségében, főleg többágas szelekció esetén nehezebben kezelhető. Ezért általánosabb és jobban kézben tartható megoldás a döntési szabály hozzárendelése a t1 átmenethez. Ez a szabály tartalmazza a kiválasztó algoritmust, mely által egyértelműen definiált, hogy adott esetben a vezérlés melyik ágon folytatódik. Az OR-join két hely és két átmenet alkalmazásával könnyen realizálható. 13
2.9. ábra Szelektív vezérlési minta Petri-hálóval Az iteratív vezérlési minta a Petri-hálós modellben felfogható mint a szelektív minta egy speciális esete. Ezért a fentebb már tárgyalt elemekből a hálózat könnyen felépíthető, működése azok alapján értelmezhető. 2.10. ábra Iteratív vezérlési minta Petri-hálóval A komplexebb rendszerek modellezhetősége, illetve többféle szempont figyelembe vételének biztosítása érdekében vezették be a magasabb szintű (kiterjesztett) Petri-hálók alkalmazását a workflow modellezésben. A kiterjesztésnek három iránya van: 14
A kiterjesztés első iránya a színezett Petri-háló (CPN) formalizmus használata, melyet Jensen [18] dolgozott ki. A workflow esetében a színezettség [4], [19], [20] a zsetonok által reprezentált fogalmak (dokumentumok, információk) egymástól való megkülönböztethetőségét eredményezi. Így a zsetonok tipizálhatók, tulajdonságok rendelhetők hozzá, mint például az ügyirat típusa, a szabálysértés minősítése, stb. Ezáltal az átmenetekhez rendelhetők járulékos szabályok, melyek a különböző dokumentumok (különböző színű zsetonok) kezelését írják elő. A működéshez az átmenetekhez előfeltételek rendelhetők, melyek végső soron a leképezett aktivitások végrehajtását határozzák meg. A zsetonok szinkronizálására is használhatunk előfeltételeket, melyek segítségével meghatározható, hogy az átmenet (esetünkben az aktivitás) csak akkor hajtódhat végre, ha megfelelő típusból megfelelő számú token áll rendelkezésre. Ezzel az eszközzel az ügymenethez szükséges különböző típusú dokumentumok, erőforrások szükségessége képezhető le a workflow modellre. A Petri-háló ezen irányú kiterjesztése a workflow modell megfogalmazását sokkal szélesebb körűvé és egzaktabbá teszi. Meg kell azonban jegyezni, hogy a grafikus reprezentáció ebben az esetben már nem hordozza az összes információt úgy, mint az alap Petri-háló esetében. A színezett kiterjesztésnél az egyes aktivitásokat leképező átmenetek leírásához egy pszeudókódos specifikációnak is tartoznia kell. A kiterjesztés második iránya a Petri-háló időbeli kiterjesztése. Ebben az esetben a zsetonok egy időbélyeget és egy értéket kapnak, mely azt adja meg, hogy a feldolgozás során a zseton mikortól érhető el [3], [21], [22] Így a feldolgozást végző átmenet előtti helyben várakozó zsetonok különböző időpontoktól dolgozhatók fel. A feldolgozás FIFO rendszerben kezdődik, mindig a legrégebbi zsetonnal. A feldolgozási műveletekhez (átmenet) időt rendelhetünk, így a keletkező zseton időbélyege a tüzelési idő és a feldolgozási idő összegét veszi fel. A feldolgozási idő lehet fix, függhet a feldolgozott zsetonok számától és lehet véletlenszerű. Ezzel a kiterjesztéssel a workflow modell jobban közelíti a valós működést, lehetőséget ad az idő kezelésére, a végrehajtási időben kritikus szakaszok felderítésére, a várakozások kalkulálására, illetve versenyhelyzetek kialakulásának analízisére. 15
A kiterjesztés harmadik iránya a hierarchikus kiterjesztés. Ebben az esetben egy hierarchikus lebontás válik lehetővé, ami bonyolultabb hálózatok esetében egy absztrakciós szintenkénti hierarchikus tagolással támogatja a könnyebb áttekinthetőséget. A hierarchikus felbontás mértéke absztrakciós szint és komplexitás függő. A workflow Petri-háló alapú modellezésének számos kutatási iránya lelhető fel a szakirodalomban. Ezek nagyobb része az előbb említett kiterjesztések alkalmazásával foglalkozik. Ezek közül is leginkább a színezett Petri-hálóval kapcsolatos kutatások vannak túlsúlyban [4], [19], [20]. Egy, az előzőektől lényegesen eltérő érdekes irány Pankratius és Stucky kutatása [14], akik a Petri-hálóra alapozott workflow modellezést formális eszközökkel fejlesztik tovább, bevezetik a workflow algebrát, melyben a relációs algebrához hasonlóan a Petri-hálókra értelmezett selection, projection, join, union és difference operátorokat definiálják. Ezzel lehetőséget biztosítva a Petri-háló alapú workflow modell módosítására, vagy új modell generálására, a workflow normalizálására. További előnye a workflow algebrának, hogy a modell transzformációk formálisan, korrektül, precízen és egyszerűen definiálhatók. 2.4. Konklúzió Az előzőekben látható, hogy a workflow modellezés matematikailag is korrekt háttere túlnyomórészt a Petri-hálókra alapozva fejlődött ki, irodalma gazdag. A kutatásoknak köszönhetően az alkalmazások fejlesztését a kidolgozott módszerek jól támogatják. A szakirodalom tanulmányozása alapján megállapítható, hogy, nincs megoldás a workflow folyamat-hálózat alapú értelmezéséhez kapcsolható optimális struktúra szisztematikus és bizonyíthatóan helyes generálására. Ez indokolja az új kutatási irány, azaz a folyamat gráfoknál (P-gráf) már széles körben sikerrel alkalmazott szintézisen alapuló optimális struktúra keresés algoritmikus módszere workflow modellekre értelmezett kiterjesztésének szükségességét. 16
3. P-gráf alapú modellezés és hálózat szintézis kombinatorikus módszerrel Az előző fejezetben a létező workflow modelleket tekintettük át, amely során munkafolyamatokról, aktivitásokról, dokumentumokról volt szó. Ebben a fejezetben a P-gráf alapú modellezést és a kombinatorikus módszerrel történő folyamat hálózat szintézisét Friedler és munkatársai publikációi alapján mutatjuk be. Tekintve, hogy ezen publikációk általában ipari, illetve vegyipari problémák megoldására születtek, ezért ezen fejezet erejéig elszakadunk a munkafolyamatoktól, dokumentumoktól. A fejezet megírásánál elsősorban [23], [26], [27], [28], [29], [32], [34], kerültek felhasználásra, illetve feldolgozásra. A PNS modellel Kapcsolatos további algoritmusok és eredmények találhatók még a [44], [45], [52], [54], [56], [57] dolgozatokban. 3.1. A P-gráfok bevezetése A hálózatstruktúra modellezésére vezették be az ún. P-gráfot (Processgraph), mely egy irányított, páros gráf. A gráf csúcsai műveletvégző egységek (O operating units) illetve anyagok (M materials) lehetnek. A gráf élei az anyagok és a műveleti egységek közötti anyagfolyamot reprezentálják. A P-gráf páros gráf, ami azt jelenti, hogy csúcsai két diszjunkt halmazba sorolhatóak, és az azonos halmazban szereplő csúcsok között nem vezet él. A P-gráf esetében a műveleti egységek és az anyagok összerendelése a feladat értelmezése alapján szigorúan kötött, azaz egy O műveleti egység típusú csúcsból akkor és csak akkor vezethet él egy M anyag típusú csúcsba, ha M az O kimeneti halmazának eleme, vagyis O termel (előállít) M anyagot, azaz M output O. Az M anyag típusú csúcsból akkor és csak akkor vezethet él az M műveleti egység típusú csúcsba, ha M az O bemeneti halmazának eleme, vagyis O feldolgozza az M anyagot, azaz M input O. Így a P-gráfot a csúcsait reprezentáló műveleti egység és a hozzá tartozó anyag halmaz párosokkal adhatjuk meg, mint például (M,O) P-gráf. 17
Az anyag típusú csúcsokat több alosztályba soroljuk. Megkülönböztetünk nyersanyag típust, melyek a folyamat bemeneti elemei, termék-anyag típust, melyek a folyamat eredményei, köztes-anyag típust, mely a feldolgozási fázisok között keletkezik, illetve használódik fel és melléktermék-anyag típust, mely a folyamat célja szempontjából nem kívánatos eredménynek számít. A P-gráf jelölésrendszerében alkalmazott műveleti egység és anyag elemeket a 3.1. ábra szemlélteti. A P-gráf alapú modell bemutatásához példaként tekintsünk egy 7 műveleti egységből álló folyamat-hálózatot, melyben 1,2 7 műveleti egységek és A, B N anyagok szerepelnek. Az N termék előállításához A, B, C, és D nyersanyagok állnak rendelkezésre és a folyamatban H és K melléktermékek keletkeznek. A lehetséges struktúrát a 3.2. ábra szemlélteti. 3.1. ábra A P-gráfoknál alkalmazott jelölések 18
3.2. ábra A P-gráf modell jelölésrendszerének szemléltetése 3.2. A P-gráfok matematikai leírása Adott az M anyagok véges halmaza, (mely tartalmazza a P termékek és az R nyersanyagok halmazát) és az O műveleti egységek véges halmaza. Definíció szerint a végtermékek P halmaza és a nyersanyagok R halmaza része kell legyen az anyagok M halmazának, valamint az anyagok M halmaza és a műveleti egységek O halmaza diszjunkt. Alapösszefüggés tehát M,P,R és O viszonylatában, hogy P M, R M, és M O=Ø (3.1) Minden műveleti egység a fizikai folyamat értelmezése szerinti input anyagokból állítja elő az output anyagokat. Tehát minden műveleti egységhez 19
rendelhető az anyagok két diszjunkt halmaza, vagyis az input anyagok és az output anyagok halmaza. Jelöljön egy tetszőleges műveleti egységet (α, β ), ekkor α az input anyagok halmaza, melyeket feldolgoz az (α, β ) egység és β az output anyagok halmaza, melyeket előállít az adott egység. A folyamathálózatot tekintve az egyes műveleti egységek output anyagai más műveleti egységek bemenetei. Teljesen általánosítva belátható az összefüggés, mely szerint O (M) (M) (3.2) ahol O a műveleti egységek halmaza, M az anyagok halmaza, (M) az anyagok hatványhalmaza, azaz M részhalmazainak halmaza, (M) (M) pedig reprezentálja a két halmaz (M) és (M) elem-párjainak halmazát. Feltételezve, hogy van egy m véges halmazunk, amely az M anyaghalmaz részhalmaza, azaz igaz rá, hogy m M és szintén van egy o véges halmazunk, amely az O műveleti egység halmaz részhalmaza, azaz igaz rá, hogy o O és feltételezve továbbá, hogy minden o-beli elemnek az input és output anyagai elemei m-nek, akkor o (m) (m) (3.3) A P-gráf definíció szerint páros gráf, amelynél a V csúcsok halmaza m és o halmazok uniójának elemeiből áll, vagyis V = m o (3.4) Értelemszerűen azon csúcsok, amelyek az m halmazhoz tartoznak M (anyag) típusúak, míg azon csúcsok, amelyek az o halmazhoz tartoznak O (műveleti egység) típusúak. A P-gráf A éleinek halmazára igaz, hogy elemei az A 1 és A 2 uniójának elemei, azaz halmazok A = A 1 A 2 (3.5) ahol A 1 = {( x, y) y = ( α, β) o és x α} (3.6) és 20
A 2 = {( y, x) y = ( α, β) o és x β} (3.7) A (3.5) (3.7) alapján a gráf élei A 1 vagy A 2 típusúak lehetnek. Az A 1 típusú él, melyet (x,y) határoz meg, a műveleti egységhez tartozó valamely input anyag csúcstól mutat a műveleti egység csúcs felé, tekintve, hogy x az α input anyaghalmaz eleme, míg y az o műveleti egység halmaz eleme, melyet α és β anyaghalmaz párok határoznak meg. Ezzel szemben az A 2 típusú él, melyet (y,x) determinál, a műveleti egység csúcstól a műveleti egységhez tartozó valamely output anyag csúcs felé mutat, tekintve, hogy y az o műveleti egység halmaz eleme, melyet α és β anyaghalmaz párok határoznak meg, míg x a β output anyaghalmaz eleme. 3.3. A folyamat-hálózat szintézis (PNS) kombinatorikus megoldása A folyamat-hálózat alapvető célja az R nyersanyagokból a P termékek előállítása. A PNS első lépéseként meg kell határozni minden plauzibilis műveleti egységet O és köztes anyagot. P, R, és O megadásával már a hálózatban lévő összes anyag halmazát, M-et is meghatároztuk. A folyamat-hálózat szintézissel generált optimális megoldás struktúrának rendelkeznie kell néhány olyan alapvető tulajdonsággal, axiomaként kezelhetők, és melyek bevezetése a kombinatorikus optimális megoldás keresés során sok nagyságrenddel javítja a kombinatorikus keresés hatékonyságát. Ezen axiomák a következők: (S1) Minden termék szerepel a gráfban. (S2) Egy M-típusú csúcs akkor és csak akkor nem rendelkezik inputtal, ha az nyersanyag. 21
(S3) Minden, műveleti egységet reprezentáló O-típusú csúcs definiált a hálózat szintézis feladatban. (S4) Minden, a struktúrában reprezentált O-típusú csúcstól (műveleti egységtől) kell, hogy legalább egy út vezessen egy terméket reprezentáló M-típusú csúcshoz. (S5) Ha egy M-típusú csúcs a gráfhoz tartozik, akkor kell vezetnie legalább egy útnak vagy egy O-típusú csúcshoz, vagy egy útnak egy O-típusú csúcstól az adott M-típusú csúcshoz. A kombinatorikusan lehetséges összes hálózat a műveleti egységek számának növekedésével hatványozottan nő. Például a [23] cikkben részletesen vizsgált, 35 műveleti egységgel felépített folyamat-hálózat szintézis esetében az összes potenciálisan lehetséges struktúra száma 2 35-1 azaz 34,359,738,367. Ha egy átlagos PC-t feltételezve minden egyes kombinációhoz 10-2 sec feldolgozási időt rendelünk, akkor a több mint 34 milliárd kombináció lekezelése folyamatos számítás mellett mintegy 11 évig tartana. Az axiómákban megfogalmazott tulajdonságokkal a megoldások struktúráinak rendelkezniük kell. Ez azonban csak szükséges, de nem elégséges feltétele az optimális struktúra kiválasztásának. Az axiómákkal tehát ésszerű redukciót hajtottunk végre a kezelendő struktúrák számában az értelmetlen és így felesleges struktúrák elhagyásával. Az így fennmaradt azon struktúrákat, melyek teljesítik az axiómákat, kombinatorikusan lehetséges struktúráknak nevezzük. Ezzel az ésszerű megszorítással élve a keresési teret drasztikusan csökkentettük (lásd 3.3. ábra). Az előbbi példánál maradva a 34 milliárdról 3465-re. Így a tényleges processzoridő 11 évről fél percre csökkent. 22
3.3. ábra A keresési tér csökkentése az axiómák segítségével A keresési tér ilyen mértékű csökkentése, azaz a keresésből azon struktúrák kizárása, amelyek az optimális struktúra megoldás kiválasztásánál eleve nem jöhetnek szóba, vagyis a kombinatorikusan lehetséges struktúrák meghatározása matematikailag korrekt módon a folyamat szintézis hagyományos módszereivel nem végezhetők el. Az összes lehetséges struktúra azonosítása és ezek közül az optimális kiválasztása a szuperstruktúrára alapozott hagyományos metódusokkal, mint a MILP vagy a MINLP az alkalmazott exponenciális algoritmusok jellemzői miatt nem lehetséges. A Fiedler és munkatársai által kidolgozott Maximal Structure Generation (MSG) polinomiális algoritmus, mely alapul veszi az 5 axiómát azt a maximális struktúrát generálja amelynek minden kombinatorikusan lehetséges struktúra részhalmaza. 23
3.4. A maximális struktúra generálása, az MSG algoritmus A szintézis probléma maximális struktúrája (P, R, O) tartalmazza az összes kombinatorikusan lehetséges struktúrákat, melyek lehetővé teszik a meghatározott termékek előállítását a meghatározott nyersanyagokból. Így bizonyosan tartalmazza az optimális struktúrát is. Az algoritmus négy nagyobb fázisra bontható: Az első fázis az input fázis, ebben fogalmazzuk meg a szintézis problémát (P, R, O) oly módon, hogy megadjuk az összes plauzibilis anyagok M halmazát, a végtermékek P halmazát, a nyersanyagok R halmazát és a műveleti egység jelöltek O halmazát. Az M halmaz nem csak az O halmazban megfogalmazott műveleti egységekhez rendelt köztes anyagokat tartalmazza, hanem az R-ben megadott nyersanyagokat és a P-ben megadott végtermékeket is. A második fázis a hálózat kezdeti, vagy input struktúrájának elkészítése, mely az összes közös (azonos) anyag csúcs összekötésével történik meg. A harmadik fázis az eliminációs fázis, melyben azon anyagok és műveleti egységek kerülnek eltávolításra, amelyek az 5 axióma figyelembe vételével biztos nem tartoznak, nem tartozhatnak a maximális struktúrához. Az eltávolítás lépésenként történik, az input struktúra legmélyebb szintjétől, a nyersanyagoktól kiindulva szintről-szintre haladva, felváltva vizsgálva az anyagok szintjén és a műveleti egységek szintjén a csúcsokat, hogy kielégítik-e az 5 axióma mindegyikét. Természetesen egy csúcs törlése gyakran vezet a vele kapcsolatban álló további csúcsok törléséhez. A negyedik fázisban lépésenként, szintről szintre haladva kötjük össze újból a csúcsokat a legmagasabb-, végtermék szintről haladva tovább. Az így generált maximális struktúra tartalmazza az összes kombinatorikusan lehetséges struktúrákat és annak minden eleme kielégíti az 5 axiómát. 24
A maximális struktúra generálására tekintsünk egy hipotetikus problémát, melyben adott műveleti egységekből (O 1 O 5 ) építünk fel az MSG algoritmus segítségével egy olyan maximális struktúrát, amely B terméket állítja elő az F, H, L, M nyersanyagokból: I. fázis: Input bevitel P = { B } R = { F, H, L, M} M = { A, B, C, D, F, G, H, L, M} O = { O O, O, O, O } 1 2 3 4 5, (lásd 3.4. ábra) O = {( { C, D, F}, { A }), ({ D }{, B, G }), ({ F, G }, { C, D }), ({ G, H }, { D }), ({ M }{, G }} ) II. fázis: a kezdeti, vagy input struktúra generálása (lásd 3.5. ábra) III. fázis: elimináció Nyersanyag eliminálása: L S2 és S5 miatt Műveleti egységek eliminálása: O 1 S4 miatt IV. fázis: a maximális struktúra előállítása (lásd 3.6. ábra) 25
3.4. ábra a lehetséges műveleti egység jelöltek P-gráfjai 26
3.5. ábra A generált kezdeti, vagy input struktúra 27
3.6. ábra A generált maximális struktúra P-gráfja 28
3.5. A megoldás struktúrák generálása, az SSG algoritmus Az MSG algoritmus által generált maximális struktúra tartalmazza az összes olyan kombinatorikusan lehetséges hálózati struktúrát, amely képes előállítani a megadott nyersanyagokból a végterméket. Ebből következik, hogy tartalmazza az optimális hálózatot is. Az optimalizálás az esetek többségében a legköltség-hatékonnyabb megoldás megkeresését jelenti. Az SSG (Solution Structure Generation) algoritmus alkalmazásával lehetővé válik az összes megoldási struktúra előállítása. Az SSG egy új matematikai eszköz, a döntési leképezés (DM) alkalmazásán alapul, melyet Friedler és munkatársai fejlesztették ki [23]. Az (M,O) P-gráfra értelmezve jelöljön Δ egy leképezést az anyagok M halmaza és a (O) hatványhalmazban lévő műveleti egységek ( α,β ) különböző csoportjai között, beleértve a nulla, vagy üres halmazt is. Megadható az a Δ leképezés, amely meghatározza, X M anyagra az X-et előállító műveleti egységek halmazát. Az így értelmezett leképezés Δ (X), amely maga is egy halmaz: Δ (X) = {( α, β) ( α, β) O és X β} (3.8) Tételezzük fel, hogy m részhalmaza M-nek és X eleme m nek, valamint egyike Δ (X) leképezés részhalmazainak, akkor m és δ (X) segítségével megadható m-re a δ [m] döntési leképezés: δ [m] = {( X, δ (X)) X m} (3.9) Az m-re vonatkoztatott döntési leképezés δ [m] megadja az m halmaz és az O halmaz részhalmazai közötti viszonyt, mivel az m halmaz elemeit, azaz az anyagokat a műveleti egységek különböző kombinációi állítják elő. A döntési leképezés komplemense δ [m] definiálható úgy, hogy bármely X m esetén δ (X)= Δ (X)\ δ (X), vagyis ha δ (X) az X anyagot előállító műveleti egységek halmaza, akkor δ (X) azon műveleti egységek halmaza, melyek 29
előállítják ugyan az X anyagot, de nem elemei δ (X)-nek, vagyis δ (X) δ (X) = Δ (X). A döntési leképezés komplemense matematikailag megfogalmazva: δ [m] = {( X, Y) X m és Y = Δ(X) \ δ(x) } (3.10) A döntési leképezéssel történő folyamatreprezentációhoz első lépésben definiálni kell egy aktív halmazt. Feltételezzük, hogy az m aktív halmaz az (m, o) P-gráf m anyaghalmazának részhalmaza. Ezen m részhalmaz az (m, o) P- gráfnak akkor és csak akkor aktív halmaza, ha a gráf minden egyes ( α, β ) műveleti egységének β output anyagai közül legalább egy eleme az m halmaznak, azaz m β Ø. Ezek alapján az m aktív halmaz bizonyos megszorítások mellett bizonyosan tartalmazza az összes műveleti egységet magába foglaló optimális megoldás egyikét. A maximális struktúra generáló algoritmus és a P-gráfra definiált döntési leképezés felhasználásával megfogalmazhatók az SSG algoritmus megvalósításának lépései. Ez az eljárás az összes megoldási struktúrát generálja, azaz előállítja a kombinatorikusan lehetséges megoldási struktúrákat. Az SSG algoritmus input fázisában megadjuk a generáláshoz szükséges halmazokat, a P halmazban a termékeket, az R halmazban a nyersanyagokat, az M halmazban a P halmazban és az R halmazban megadott elemeken túl az összes többi anyagot (köztes anyagok, melléktermékek). Az inputhalmazokra a korábbi megszorítás igaz kell, hogy legyen, vagyis R M, P M és P R Ø. Az input fázisban szintén meg kell adni a Δ [M] halmazt, amely tartalmazza az x M anyagokat és a hozzá tartozó Δ [x] leképezéseket, azaz Δ [ M] = {(x, Δ(x)) x M} (3.11) Az inputfázis után a számítógépes algoritmus rekurzív módon kombinatorikusan, szisztematikusan kiválasztja az m aktív halmazokat és végrehajtja rájuk a δ [m] döntési leképezéseket. Az algoritmus addig működik, amíg minden m aktív halmaz kiválasztása és feldolgozása meg nem történt. 30
3.6. A gyorsított Branch-and-Bound (ABB) módszer A Branch-and-Bound (korlátozás és szétválasztás) algoritmus alapgondolata Land és Doig [25] munkájában jelenik meg először. A módszer speciális eseteinek szintetizálásával az első általános változatot Bertier és Roy [31] dolgozták ki. A korlátozás és szétválasztás módszere [51] eredményesen alkalmazható olyan esetekben az optimális megoldás kiválasztására, amelyeknél a lehetséges megoldások közüli kiválasztás a megoldások nagy száma miatt (tipikusan n!) a leszámlálás módszerével technikailag nem lehetséges (pl. több éves futási idő). Normális körülmények között a kombinatorikusan lehetséges igen nagy számú megoldások a vizsgálat szempontjából csak az optimális, vagy az optimális szűk környezetében lévő néhány megoldás érdekes, a többi megoldás csak elvesztegetett idő. A korlátozás és szétválasztás módszere ezen felesleges vizsgálatok kiszűrésére, illetve a vizsgálat korai szakaszában generálásuk korlátozására és a célnak megfelelő irány kiválasztására ad igen hatékony megoldást. A gyorsított korlátozás és szétválasztás (ABB Accellerated Branch and Bound) algoritmus a konvencionális B&B algoritmustól alapvetően különbözik. A hagyományos algoritmus nem használja ki a folyamat-hálózat strukturális tulajdonságait. Így a maximális struktúrából származtatott megoldás struktúrák magukban foglalják az optimálistól igen távol eső kombinációkat is. Ezzel szemben az ABB algoritmus kihasználja a szintetizálandó folyamat-hálózat strukturális sajátosságait és így kizárólag a megvalósítható kombinációk jelennek meg a megoldási struktúrák között. Azaz a maximális struktúra nem tartalmazza a redundáns kombinációkat. Az ABB algoritmus esetében a maximális struktúra előállításához alkalmazott szétválasztás egyértelműen hozzárendelhető a maximális struktúrában foglalt műveleti egységhez, anyaghoz, vagy anyagokhoz. Az algoritmus a végpont felől a gyökérig halad, azaz a végterméktől a nyersanyag felé. Az ABB algoritmus leírásánál [30, 43] irodalmakat vettük alapul. Az algoritmus inputjaként meg kell adni a feltételrendszert lehetséges megoldások S 0 halmazát, valamint azt a szempontot, vagyis f célfüggvényt, 31
aminek minimuma határozza meg az optimális struktúrát. Ehhez be kell vezetnünk az S 0 -nál nem szűkebb P 0 halmazt, valamint a P i P 0 részprobléma halmazokat. A részproblémák optimális megoldásainak halmaza legyen Opt(P i ) és a hozzá tartozó optimum érték F(P i ). Amennyiben Opt(P i )=Ø akkor, F(P i )=. Jelöljük son(p i )-vel a szétválasztás során keletkezett részproblémák halmazát, melyre igaz, hogy son( P ) = P U i i valamint i i son(p ) P. Ha P i =Ø Opt(P i )=Ø, tehát a szétválasztás nem folytatódik. Jelölje G az F egy korlátozó függvényét a következő feltételekkel [43]: Pi (P 0) \ Ø} { esetén G(Pi) F(P i ) (3.12) ha P i =Ø G(P i ) = (3.13) G(P ij ) G(P i ), P ij son(p i ) (3.14) Az s kereső függvény adja meg, hogy mely további részprobléma kerül feldolgozásra. A szétválasztás megadott lezárási feltételek teljesülésekor ér véget. A folyamat-hálózat szintézis feladat esetén egy ilyen lezárási feltétel az eredeti költségfüggvény alkalmazását jelenti. Ha a korlátozó függvény optimális megoldást tesz lehetővé, akkor az optimális megoldások részhalmazát tartalmazza az Opt(P i ). Követve az SSG algoritmusnál alkalmazott jelöléseket, legyen a folyamathálózat szintézis feladatban a műveleti egységek száma n. Minden O i műveleti egységhez rendeljünk egy y i {0,1} bináris változót, ezzel kifejezve a műveleti egység hiányát (0), illetve jelenlétét (1). Az (y 1, y 2 y n ) vektor alapján egyértelműen meghatározhatók a megoldások struktúrái. Az O i műveleti egységhez rendeljünk továbbá egy x i méretet, kapacitást kifejező folytonos változót, amelyre teljesül, hogy x i y i U i, ahol U i az i-edik egységhez tartozó kapacitás felső határa. Tegyük fel, hogy P 0 részprobléma az összes kombinatorikusan lehetséges megoldás struktúrát tartalmazza. A P i részproblémákat az SSG algoritmus leírásánál megismert δ [m] döntési leképezés segítségével határozzuk meg (lsd. 3.9. egyenlet): P i =S( δ i [m i ])={gráf( δ k [m k ]) δ k [m k ] δ i [m i ]} (3.15) A fenti megadás nem tartalmazza az eddigi döntésekkel kizárt műveleti egységeket. A szétválasztás során egyrészt a lehetséges megoldások 32
particionálása, másrészt a döntési leképezés kiterjesztése történik meg. Az ABB döntési fájának gyökeréhez az Ø döntésleképezés és ezzel az összes lehetséges struktúra tartozik, míg a végpontokhoz tartozó döntésleképezések egy lehetséges megoldást adnak meg. A fentiek alapján a szétválasztó lépés során egy olyan m anyagot keresünk, amelynek előállításáról eddig még nem volt döntés és igaz rá, hogy része minden S( δ i [m i ]) struktúrának. Ha nem létezik az m anyag, akkor nincs szükség további szétválasztásra. Ha létezik ilyen anyag, akkor bővítjük az S( δ i [m i ]) részprobléma döntésleképezését és így létrehozzuk a részproblémából származó újabb ágakat definiáló döntésleképezéseket. p(s( δ i [mi])) = (mat in ( op( δ i[m i])) P) \ ( mi R), (3.16) ahol mat in ( o) = {x inu u o} Az op( δ i[mi]) a δ [m] döntés leképezés műveleti egységei, azaz op( δ i[m i]) ={ o O o δ (X), X m}, továbbá mat(o)={x M valamely u o műveleti egységre x in u vagy x out u }. Amennyiben nem történik valódi szétválasztás, neutrális kiterjesztésről beszélünk, és ezen az ágon leáll az algoritmus. Hasonló módon leállás történik abban az esetben, ha a műveleti egység kapacitása nulla és így a további, de felesleges hálózatok létrehozását megakadályozzuk. A szétválasztó függvény meghatározásához akár a legkisebb indexű anyag, akár a legkevesebb módon előállítható anyag kiválasztására szolgáló függvényt is választhatjuk. x = A(S( δi[m i])) p(s( δi[m i])) (3.17) Ezek után meghatározható az ABB algoritmus szétválasztó függvénye és felhasználhatjuk a konvencionális B&B algoritmusnál alkalmazott kereső függvényt az aktuális részprobléma kiválasztására. S( δ i [m i ]) Ø részproblémára 33
(Y) = Ø. son(s( δ i [m i ]))={S( δ ij [m ij ]) δ k [m k ]={ δ i [m i ] {(x,c)}, (3.18) x=a(s( δ i [m i ])), c (Δ(x)) \{Ø}, δ k [m k ] konzisztens, δ ij a δ k maximális neutrális kiterjesztése} A δ [m] döntési leképezés akkor konzisztens, ha X, Y m-re δ (X) δ A korlátozó függvény meghatározásához támaszkodunk a részproblémához tartozó összes megoldás-struktúrában szereplő műveleti egységekre, a kizárt és a választható műveleti egységekre. Összefoglalva az ABB algoritmus az SSG algoritmuson alapszik és felhasználja a konvencionális B&B algoritmust. Empirikus vizsgálatok azt mutatják, hogy az ABB algoritmusban bevezetett gyorsítási technikák drasztikusan csökkentik a futási időt. 34
4. P-gráf alapú workflow modellezés A második fejezetben áttekintettük a workflow eddigi modellezési lehetőségeit, a harmadik fejezetben pedig a P-gráf alapú modellezés, valamint a kombinatorikus módszerrel történő hálózat szintézis megoldási módjait. Ebben a fejezetben a folyamat hálózat modellezés analógiájára bevezetjük a workflow P-gráf alapú modellezését, definiáljuk a workflow szintézis (WFS) feladatot, valamint bevezetjük a modell kiterjesztését az idő tényezővel, mint speciális erőforrással. Generáljuk az ily módon megadott workflow matematikai modelljét és vizsgálatokat végzünk a valós környezet által indukált célfüggvények (erőforrás korlátok, szűk keresztmetszetek, terhelés eloszlás) meghatározásához. 4.1. A P-gráf alapú workflow modell bevezetése A 2. fejezetben áttekintettük a jelenleg alkalmazott workflow modellezési módszereket. Elismerve az eddigi megoldások számos pozitív tulajdonságait, a vizsgálat konklúziója, vagyis, az, hogy nincs jelenleg a hálózat szintézisen alapuló olyan folyamat-alapú módszer, mely szisztematikusan optimális hálózatstruktúrához vezetne, indokolja azt, hogy bevezessük a P-gráf alapú, a PNS területén már bevált módszertanokat felhasználó modellezést a workflowra. Ezen megoldás igen nagy előnye, hogy nem csak egy statikus struktúra modellezésére ad lehetőséget - mint az eddigi modellek hanem ezen túlmenően az erőforrások és főként az idő bevezetése révén a hálózat dinamikus működése során fellépő terhelési viszonyok, szűk keresztmetszetek, kritikus pontok, és erőforrás feleslegek is matematikailag korrekt módon meghatározhatók. Lehetővé tesszük ezzel a modell optimálisabb illesztését az üzemszerű működés során fellépő terhelési viszonyokhoz. A p-gráf bevezetése a workflownál a folyamat hálózat modellezés analógiájára történik. A workflow esetében az anyagok helyett a dokumentumokat D tekintjük a feldolgozás tárgyának és a műveleti egységek 35
helyett a workflownál szokásos aktivitásokat A vezetjük be. A dokumentumokat. megkülönböztetjük attól függően, hogy a feldolgozás során milyen szerepet tölt be. Így különbséget teszünk a gyűjtőfogalomként használt általános dokumentum D, a folyamat bemeneti elemeiként értelmezhető bemeneti dokumentum ID, a folyamat eredményének minősülő vég-dokumentum PD, és a feldolgozási fázisok között keletkező, illetve felhasználásra kerülő köztes dokumentum MD között. A fizikai feldolgozási folyamatok során keletkező melléktermék, mely a folyamat célja szempontjából nem kívánatos eredménynek számít a folyamat hálózat modellezésben indokoltan szerepel, ám a workflow esetében, ahol irodai, dokumentáció feldolgozási folyamatokat modellezünk, értelmetlenné válik, hiszen szándékosan nem állítunk elő olyan dokumentumot, amire nincs szükség. A bevezetett P-gráf alapú workflow modell jelölésrendszerében alkalmazott aktivitás és dokumentum elemeket a 4.1. ábra szemlélteti. 4.1. ábra A P-gráf alapú workflow modellnél alkalmazott jelölések A workflow P-gráf alapú modelljére igaz hogy, páros gráf, csúcsai két diszjunkt halmazba sorolhatóak, egy A aktivitás típusú csúcsból csak akkor vezethet él egy D dokumentum típusú csúcsba, ha az adott A halmazbeli aktivitás valamelyik kimeneti dokumentuma az adott dokumentum. A D dokumentum típusú csúcsból csak akkor vezethet él az A aktivitás típusú csúcsba, ha D az A bemeneti halmazának eleme, vagyis A feldolgozza a D dokumentumot. Így a workflowt modellező P-gráfot a csúcsait reprezentáló aktivitások és a hozzá tartozó dokumentum halmaz párosokkal adhatjuk meg, mint például (A,D) P-gráf. A workflow P-gráf alapú modelljének bemutatásához példaként tekintsünk egy 5 aktivitásból álló workflow-t, melyben A 1,A 2 A 5 aktivitások és D 1, D 2 D 12 36
dokumentumok szerepelnek. A D 12 vég-dokumentum előállításához D 1, D 2, D 3, D 4 és D 5 bemeneti dokumentumok állnak rendelkezésre. A lehetséges workflow struktúrát a 4.2, ábra szemlélteti. 4.2. ábra Példa a P-gráf alapú workflow modellre A P-gráf bevezetése a workflow modellezésbe a folyamat hálózat analógiára történt és az így kapott modell egy statikus architekturális modell, amely jól meghatározza az adott workflow, vagyis cél-orientált tevékenység sorozat elvégzéséhez szükséges elemeket (szükséges bemeneti dokumentumok, keletkező köztes dokumentumok és vég-dokumentumok, illetve szükséges aktivitások) és ezen elemek közötti kapcsolatokat, függőségeket. 37
A módosított modellen még egy fontos különbséget meg kell jelenítenünk. Nevezetesen, az aktivitások, vagyis a tevékenységek végrehajtásához mindig szükség van valamilyen erőforrásra, ami lehet egy, az adott feladatot elvégző ember vagy automatizált feldolgozás esetén egy berendezés, de gondolhatunk akár egy számítógépes programra is. Bár ezek a rendszer strukturális leírásánál dokumentumtípusú szerepet játszanak lényeges megkülönböztetni. Legyen az erőforrások halmaza R. Ezek után megfogalmazhatjuk mit fogunk tekinteni egy workflow szintézis (WFS) feladatnak. Egy (ID, PD, R, A ) négyest workflow szintézis (WFS) feladatnak mondunk, ha az A aktivitás halmaz által meghatározott (A,D) P-gráf teljesíti 3.3. fejezetben megadott S1-S5 axiómákat, valamint ID, PD, R halmazok részei a D halmaznak. Az így nyert modell lényeges és hasznos információkat tartalmaz a munka szervezéséhez, a teljes folyamat kialakításához, azonban nem ad többlet információt a folyamat működéséről. A statikus szerkezet a folyamatok üzemszerű működése során nem változik, így az a tervezés eme fázisában, a rendszerről jelenleg rendelkezésünkre álló információnk szintjén véglegesnek fogadható el. A workflow modell jelenlegi állapotában inkább logikai architekturális modell, hiszen végtelen kapacitású erőforrásokat tételez fel. Az aktivitások végrehajtásához, vagyis a dokumentumok feldolgozásához erőforrásra és időre van szükség. A workflow esetében, ahol tipikusan a humán erőforrás igény dominál, ezen erőforrás igény, illetve rendelkezésre állás jól kifejezhető a feladat elvégzéséhez szükséges idővel, illetve a rendelkezésre álló munkaerő(k) igénybe vehető összmunkaidejével. Ezen paraméter bevezetésével az eddigi workflow modellünkben azonosíthatóvá válnak a szűk keresztmetszetek, a kapacitás igények, a felesleges kapacitással rendelkező pontok, illetve a workflow teljes ciklusideje és az idő-kritikus utak. Az idő bevezetéséhez ismét a folyamat hálózat szintézis területéről keresünk analógiát annak érdekében, hogy az ott már kidolgozott és sikerrel alkalmazott eszközrendszer is transzponálható legyen a workflow modellezés területére. Friedler és szerzőtársai [ 26, 27, 29] a PNS-nél a p-gráf éleihez az 38
áthaladó anyagmennyiségeket, míg a műveleti egységekhez annak méretét (indirekt módon a kapacitását) rendelték hozzá. Ennek alapján a folyamat hálózat viselkedésére jellemző anyagegyensúly feltételeket fogalmaztak meg, melyekből a költségek figyelembe vételével egzakt módon meghatározhatóvá vált az optimális struktúra a műveleti egységek méretével együtt. Ebből kiindulva rendeljünk az élekhez az anyagmennyiség helyett dokumentum darabszámot, az aktivitásokhoz pedig a méretük helyett az egységnyi (rendszerint egyszeri) elvégzésükhöz szükséges időt. Ezzel definiálható az aktivitáshoz kapcsolódó erőforrásoktól igényelt időszükséglet. Az erőforrások mindig felülről korlátos időmennyiséggel rendelkeznek (rendszerint műszakokkal). Legyen D={d 1, d 2,, d i } a dokumentum típusú csúcsok halmaza, A={a 1, a 2,, a j } az aktivitás típusú csúcsok halmaza, R={r 1, r 2,, r k } az erőforrás típusú csúcsok halmaza, E= az adott p-gráf éleinek halmaza, x p (p= 1, 2,,l) a p aktivitáshoz rendelt változó, amely az adott aktivitás kapacitását jelenti. Az aktivitás típusú csúcsnál a dokumentum feldolgozás egységnyi ciklusához szükséges erőforrás mennyisége azt jelenti, hogy az aktivitás működése során a kimeneti dokumentum előállításához minden egyes bemeneti dokumentumnak rendelkezésre kell állnia, ekkor készülhet el egy kimeneti dokumentum, vagy kimeneti dokumentumok. Egy példával szemléltetve: egy gyorshajtás szabálysértésének elbírálásához minden egyes, az adott ügyre vonatkozó dokumentumnak rendelkezésre kell állnia. Amíg valamelyik dokumentum hiányzik, pl. a gépjármű tulajdonosa még nem nyilatkozott írásban, hogy ki vezette a gépjárművet, addig a feldolgozás nem lehetséges, a többi dokumentum is várakozik az aktivitás bemenetén. Ha a hiányzó dokumentum megérkezett, akkor történhet meg a feldolgozás, azaz a szabálysértési bírság megállapítása és születnek meg a kimeneti dokumentumok. Ez jelenti egy ügy feldolgozását, azaz az aktivitás egy ciklusát. 39
Az ehhez szükséges ráfordítás (idő) mértékét adja meg t p. (lásd részletesebben a 6. fejezetben tárgyalt esettanulmány specifikációjának leírásában.) Az (i,j) élhez rendelt r i,j érték az élen áthaladó dokumentumok mennyiségét jelenti a megfelelő aktivitás egységnyi működése mellett ha i nem erőforrás, ha i erőforrás akkor az aktivitás egységnyi működésére fordított időt jelenti. A 4.2. ábrán bemutatott példa az imént bevezetett kiterjesztésekkel kiegészítve látható a 4.3. ábrán. 4.3. ábra A workflow modell a bevezetett kiterjesztésekkel kiegészítve 40
4.2. A workflow PNS struktúrájából matematikai modell generálása Tekintsünk egy tetszőleges (ID, PD, R, A ) workflow szintézis (WFS) feladatot a korábban említett kiterjesztésekkel, ekkor a workflow strukturális modelljéhez algoritmikus módon a kővetkező matematikai modellt rendeljük. Bemeneti dokumentum A bemeneti dokumentumnak két tulajdonsága van, egyrészt a rendelkezésre álló mennyiség (f i ), darabszám, mint felső korlát, és az adott bemeneti dokumentumnak a rendelkezésre állási ideje (t i ). Mivel egy műszakot vizsgálunk ez az idő a műszak kezdetétől mért relatív idő. Ennek megfelelően minden bemeneti dokumentumra felírjuk a következő mennyiségi jellegű feltételeket: x r j ij { j:( i, j) E} i ID Azaz egy adott bemeneti dokumentum típusból nem használhatunk többet fel, mint amennyi rendelkezésünkre áll. Természetesen a matematikai modellbe minden bemeneti dokumentum esetén ez az egyenlőtlenség kerül be mint korlátozás. Köztes dokumentum Minden köztes dokumentum esetén felírjuk a következő feltételeket: f i x j { j:( j, i) E} r ji x r j ij { j:( i, j) E} 0 i MD Azaz egy adott köztes dokumentumból nem használhatunk fel többet, mint amennyit az aktivitások eredményeként megkapunk. A matematikai modellbe ez az egyenlőtlenség kerül be minden köztes dokumentum esetén, mint mennyiségre tett megszorítás. Vég-dokumentum Minden vég-dokumentum esetén felírjuk a következő feltételeket: x j { j:( j, i) E} r ji p i i PD 41
Azaz minden vég-dokumentumból el kell készíteni az előírt mennyiséget. Az időre vonatkozó feltételek: Erőforrások Az erőforrások rendszerint csak adott ideig állnak rendelkezésre (T i ), tehát korlátozásként ezt fogjuk előírni. Ennek megfelelően minden erőforrásra felírjuk a következő feltételeket: Azaz egy adott erőforrás igénybevételi ideje nem lehet nagyobb, mint amit a feladat megfogalmazásánál megadtak, mint az erőforrás rendelkezésre állási ideje. Bemeneti dokumentumok Minden bemeneti dokumentum rendelkezésre-állási ideje kötött paraméter, melyeket a feladat megfogalmazásakor kell meghatározni. Köztes dokumentumok Minden köztes dokumentum rendelkezésre-állási idejének a következő feltételeknek kell eleget tennie: y Azaz egy köztes dokumentum rendelkezésre állásának a legkorábbi ideje nagyobb vagy egyenlő mint az őt gyártó aktivitások befejezési idejeinek (t b j) a maximuma. Ahol az y j bináris változó azzal a jelentéssel bír, hogy az adott j aktivitás szerepel-e a struktúrában vagy sem, M pedig egy alkalmasan nagy konstans. Vég-dokumentum t i j y x t b j j Mx r j ij { j:( i, j) E} j i MD és j : ( j, i) E j j, i) E Minden vég-dokumentumra felírjuk az alábbi időegyenleteket : ( T i i R 42
t i y j y t b j j Mx j i PD és j j : ( j, i) E j, i) E Azaz minden vég-dokumentumnak a rendelkezésre állási ideje nagyobb vagy egyenlő mint az őket előállító aktivitások befejezési idejüknek a maximuma. Ahol az y j bináris változó azzal a jelentéssel bír, hogy az adott j aktivitás szerepel-e a struktúrában vagy sem, M pedig egy alkalmasan nagy konstans. : ( 4.3. Optimális workflow struktúrák A 4.1 illetve 4.2 fejezetekben bevezetett korlátozási feltételek a lehetséges workflow struktúrákat határozzák meg. Egy adott szempontú vizsgálathoz természetesen egy megfelelő célfüggvényt kell választani, amely értékeli a struktúrákat és a cél az, hogy eszerint az értékelés szerint a legjobb struktúrát határozzuk meg. Egy iroda munkafolyamatainak tervezése során az egyik alapvető cél, hogy az eredménydokumentumokból az elvárt mennyiségeket a lehető legrövidebb idő alatt produkálja a rendszer. Ezt a célkitűzésünket a leírt korlátozási feltételek mellett a következő célfüggvénnyel történő optimális megoldás fogja teljesíteni. min maxt i i PD Egy másik szervezési szempont, ha a vég-dokumentumokhoz fontossági súlyokat rendelünk, és ezen összeget szeretnénk ha minél kisebb lenne. Ezt a célkitűzésünket a leírt korlátozási feltételek mellett a következő célfüggvénnyel történő optimális megoldás fogja teljesíteni. min c t i i i PD 43
Egy következő szervezési szempont, ha az erőforrások által felhasznált időt szeretnénk a lehető legkisebbre beállítani. Ezt a célkitűzésünket a leírt korlátozási feltételek mellett a következő célfüggvénnyel történő optimális megoldás fogja teljesíteni. min, j i Rés( i, j) E r i x j Ha az erőforrások terhelését szeretnénk egyenletessé tenni, akkor ezt a célkitűzésünket a leírt korlátozási feltételek mellett a következő célfüggvénnyel történő optimális megoldás fogja teljesíteni. min max i R ri, jx j min i R i, j { j: ( i, j) E} { j: ( i, j) E} r x j Amennyiben egy adott megoldás esetén a szűk keresztmetszeteket, a kritikus pontokat szeretnénk megkeresni akkor az T i x r j ij { j:( i, j) E} i R értékeket kell meghatározni és kiértékelni. Amennyiben viszont az erőforrás feleslegeket szeretnénk kimutatni, akkor azokat úgy kapjuk meg, hogy az erőforrásokra megnézzük a x r j ij { j:( i, j) E} i R kifejezés értékét és amelyikre ez az érték nulla, az az erőforrás lesz felesleges. 44
5. A P-gráf alapú workflow modell fuzzy kiterjesztése Ebben a fejezetben a P-gráf alapú workflow modell fuzzy kiterjesztési lehetőségét mutatjuk be. Áttekintjük a fuzzy bevezetésének szükségességét, a megoldás lehetőségeit, a választás szempontjait és a kiválasztott megoldás vizsgálatának eredményeit. 5.1. A fuzzy kiterjesztés bevezetésének szükségessége A P-gráfok eredeti alkalmazásának területein, azaz elsődlegesen ipari, vegyipari folyamatok, modellezésénél a műveletek egzaktul meghatározottak, a döntések tiszták és élesek. Az általunk bevezetett P-gráf modellezési területen, az ügyintézőnek, előadónak mérlegelési lehetőséget ad a törvény. Jól szemlélteti ezt a helyzetet a 6. fejezetben bemutatott szabálysértési eljárási példa, ahol a szabálysértésért kiszabható büntetés mértéke bizonyos határok között mozog. A büntetés kiszabásának folyamatában vannak egzaktul megfogalmazott, figyelembe veendő mértékek, mint például a sebesség gyorshajtásnál, az előéleti pontok száma, a visszaesések száma, és vannak a mérlegelésre teret adó mértékek, mint például a megbánó magatartás, az együttműködés az eljárás során. Ezen tényezők figyelembe vételének foka nem is szabályozható teljesen egzaktul, tehát nem is algoritmizálható. Ezen a területen vezetjük be a fuzzy kezelést, amely ilyen, nem tisztán meghatározható esetek kezelésére kiválóan alkalmas. A kiterjesztés tehát a P-gráf alapú workflow modell új típusú, egy fuzzy alapon működő műveleti egység bevezetését és a dokumentum típusú csúcsokhoz egy fuzzy halmaz rendelését jelenti. Ezzel elérjük azt, hogy a bemeneti dokumentumok és az erőforrások rendelkezésre állását jellemző fuzzy halmazokból a feldolgozó egység (aktivitás) meghatározhatja a kimeneti dokumentumok rendelkezésre állását jellemző fuzzy halmazt. 45
5.2. A workflow modell fuzzy kiterjesztése A szakirodalom áttanulmányozása után megállapítható, hogy a workflow modell működésének, fuzzy alapokra helyezése, tehát a működés során a feltételek, illetve az egyes aktivitások fuzzysítása csak néhány publikációban szerepel. Ezek közül ki kell emelnünk Zirpins és munkatársai cikkét [24], amelyben a workflow modell döntési feltételeinek boolean, vagy crisp feltételek helyett a bizonytalanságot jól kezelni képes fuzzy alapú döntési feltételkezelést mutat be. A P-gráfokban való fuzzy alkalmazással foglalkozó szakirodalom áttanulmányozása is hasonló eredményre vezet. Megállapítható, hogy az előzőekben vázolt vonatkozásban, tehát P-gráf alapú workflow modellben alkalmazott fuzzy alapú megközelítés a szakirodalomban nem lelhető fel. A 4. fejezetben megfogalmazott workflow modell fuzzy kiterjesztése során az egyes modell elemekhez a következő, fuzzy halmazokkal leírt jellemzőket rendeljük: Dokumentum a dokumentum feldolgozásához a rendelkezésre állása idejének megadásakor a pontos idő helyett megengedjük a körül-belüli idő megadást, ami azt jelenti, hogy a ciklusidő pl. 5. perce helyett azt mondjuk, hogy a ciklusidő kb. 5. percétől áll rendelkezésre az adott dokumentum. Ennek leírására fuzzy halmazt alkalmazunk, melynek megadását a dokumentum esetében az 5.1. ábra mutatja. Felmerülhet a hagyományos időintervallumos megadás lehetősége is, azonban a hagyományos időintervallumos megadással szemben a fuzzy halmazzal történő megadás jobban jellemzi a valós életben a dokumentum feldolgozása során előálló helyzetet, amikor is nem lehet pontosan megmondani, hogy egy dokumentum, vagy egy erőforrás mikor fog rendelkezésre állni, csak hozzávetőlegesen. (pl: az ügyirat kb. fél óra alatt készül el, kb egy hét múlva kész a jogosítvány, stb.) Ily módon a bevezetett fuzzy kezelés hozzájárul ahhoz, hogy pontosabban modellezhessük a valós viszonyokat. 46
5.1. ábra A dokumentum rendelkezésre állásának megadása Erőforrás a feldolgozáshoz szükséges erőforrás rendelkezésre állásának idő-ablakát szintén fuzzy halmazzal adjuk meg, amely jobban kifejezi, hogy sem az időablak vége, sem annak eleje nem határozható meg pontosan. A megadásra példát az 5.2. ábra mutat. 5.2. ábra Az erőforrás rendelkezésre állásának megadása Aktivitás az aktivitások (feldolgozás) időintervallumát nem fuzzy értékként, hanem jól meghatározott, pontosan megadható értékként kezeltük. Egy aktivitás működése során a bemenetén rendelkezésre álló dokumentumokat dolgozza fel és előállítja a kimenetéhez rendelt dokumentumot az aktivitáshoz kötött erőforrás felhasználásával. A feldolgozás megkezdéséhez a bemeneten lévő összes dokumentumnak és az erőforrásnak is rendelkezésre kell állnia, ami a hagyományos halmazokat használó modell esetén a bemenetek közötti ÉS kapcsolattal modellezhető. Fuzzy halmazok esetén t-normákat kell alkalmazni a bemeneti jellemzőkre az aktivitás megkezdéséhez. A szakirodalom többféle módon adja meg a t-normát, a gyakorlatban sokszor a Zadeh által meghatározott minimum t-normát alkalmazzák. A következő példában mi is ezt használjuk, de az 5.3 fejezetben bemutatjuk ennek egy paraméterezett változatát is. A bemenetekre alkalmazott t-norma egy feldolgozhatósági időablakot (Operation Time Window) határoz meg, aminek bal oldalát a dokumentumok is és az erőforrás is befolyásolja, míg 47
jobb oldalát csak az erőforrás, hiszen ha a dokumentum egyszer már rendelkezésre állt, nem fog eltűnni. A feldolgozás következő feltétele, hogy ezen ablaknak legalább olyan szélesnek kell lennie, mint a feldolgozási idő, egyébként a feldolgozás nem végezhető el. A fuzzy feldolgozó egység (aktivitás) működésének algoritmikus megfogalmazását a következőképpen adhatjuk meg: 1. lépés: határozzuk meg a bemenetek metszeteit külön-külön 1.1. lépés: határozzuk meg a dokumentumok (DOK) metszetét DOK= n T i = 1 di ahol d i az i-edik bemeneti dokumentum 1.2. lépés: határozzuk meg az erőforrások (RES) metszetét RES= n T i = 1 si ahol s i az i-edik erőforrás 2. lépés: határozzuk meg a kimeneti dokumentum rendelkezésre állását 2.1. lépés: határozzuk meg DOK és RES kiterjesztett maximumát OUT=max ext (DOK,RES) A kiterjesztett maximumot (max ext ) oly módon határozzuk meg, hogy összehasonlítjuk a baloldali oldalfüggvényeket, az y tengely felől nézve, vesszük a maximumukat; ugyanígy külön vesszük a jobb oldali oldalfüggvények maximumát az y tengely felől nézve, majd az 1 szinten összekötjük az így kapott oldalfüggvényeket. 2.2. lépés: adjuk hozzá OUT-hoz az aktivitás feldolgozási idejét (x) OUT=OUT+x Az algoritmusban szereplő kiterjesztett maximum (max ext ) a maximum műveletnek a Zadeh-féle a kiterjesztési elv alapján kapott praktikus formája. Az algoritmus működését szemléltető példánkban tekintsük újból a 4. fejezetben már bemutatott, erőforrásokkal kiterjesztett workflow modellt (lsd. 5.3. ábra). A feldolgozás során aktivitásonként a 1 a 7 haladunk, minden egyes aktivitás feldolgozásánál meghatározzuk a bemenetek fuzzy halmazait, melyek vagy általunk példaként felvettek (a d 1 d 7 forrás dokumentumok esetében és 48
az s 1 s 5 erőforrások esetében) vagy az előző aktivitás feldolgozásánál határoztuk meg ( a d 6 d 11 köztes dokumentumok esetében és a d 12 eredmény dokumentum esetében). 5.3. ábra A példa workflow struktúrája A bemeneti értékek után megadjuk a t-normát a dokumentumokra és az erőforrásokra. Az összes bemenet metszete adja az aktivitás működési lehetőségét, amit itt OTW (Operation Time Window) jelöléssel láttunk el (piros vonal). A kiterjesztett maximum adja meg a kimeneti dokumentum 49
rendelkezésre állását (zöld vonal). A példaként vett workflow szándékosan redundáns, több köztes dokumentumot is, két aktivitás is előállít. Ilyen esetekben a dokumentumok unióját, a fuzzy halmazok esetében t-konormáját vesszük. Itt is a Zadeh-féle definíciót használjuk, vagyis a maximum t-konormát. Erre az adott dokumentum felhasználásánál a fuzzy halmaz rajzában látható pontvonal utal. Az eredmény dokumentumhoz kapott fuzzy halmaz (d 12 ) mutatja, hogy az adott workflow hálózat esetében, adott bemeneti dokumentum és erőforrás rendelkezésre állás esetén körül-belül mikorra várható az eredmény dokumentum előállítása. (lásd 5.4. 5.10. ábrák). A workflow hálózat szintézis során az ABB algoritmussal generált különböző hálózatok kiértékelésére, súlyozására célfüggvényként választhatjuk az eredménydokumentumhoz rendelt fuzzy halmazt. Itt a minimális kritérium és ilyen értelemben kizáró feltétel, hogy keletkezzen az adott peremfeltételek (rendelkezésre állásokat modellező fuzzy halmazok) mellett a kimeneti dokumentumhoz rendelt nem nulla fuzzy halmaz. Amennyiben ez igaz, a súlyozásnál figyelembe vehetjük az eredménydokumentum rendelkezésre állásának időpontját, a szintézis során generált hálózatban szereplő aktivitások költségeinek összegét (pl. költséggel terhelt summa aktivitáspercek), a köztes dokumentumok számát szintén költséggel terhelve, az erőforrások rendelkezésre állását jellemző fuzzy halmazok integráljainak összegét szintén költséggel terhelve. A szintézis során generált hálózati struktúrák közül a legkedvezőbb súllyal rendelkező kiválasztása adja az optimális workflow struktúrát. A kiválasztást a 3.6. fejezetben leírt ABB algoritmus G korlátozó függvényének specializálásával kapjuk meg. A G függvény legyen az adott részprobléma végdokumentumainak a minimális rendelkezésre állási ideje (fuzzy értelemben) úgy, hogy a nulla be-fokú dokumentumok rendelkezésre állási idejét nullának tekintjük. 50
A fentiekben bemutatott, fuzzy kiterjesztéssel kezelt workflow modell jobban alkalmazkodik a valós élet problémáihoz, inkább képes figyelembe venni a dokumentumok feldolgozása során figyelembe veendő jellemzőket, az eddigi modelleknél alkalmasabb a hálózat szintézisen alapuló optimális workflow struktúra meghatározására. 51
5.4. ábra Az a 1 aktivitás működése 52
5.5. ábra Az a 2 aktivitás működése 53
5.6. ábra Az a 3 aktivitás működése 54
5.7. ábra Az a 4 aktivitás működése 55
5.8. ábra Az a 5 aktivitás működése 56
5.9. ábra Az a 6 aktivitás működése 57
5.10. ábra Az a 7 aktivitás működése 58
5.3. A paraméterezett t-norma bevezetése Az előző fejezetben a Zadeh-féle t-normát alkalmaztuk, [38] amelyet a fuzzy irányítási rendszerekben is előszeretettel használnak. A következőkben egy új paraméterezett t-normát vezetünk be, amelynek alkalmazása a workflow fuzzy kiterjesztésének kezelése mellett a fuzzy irányítási rendszerek területén is előnyös lehet. Ezen rendszerek számos előnyös tulajdonságuk miatt egyre szélesebb körben terjednek el azon területeken, ahol a rendszer bonyolultsága, vagy a nehezen megfogalmazható modell miatt a hagyományos irányítási megoldások nem adnak kielégítő megoldást. A fuzzy irányítási rendszerek modelljei közül első sorban az egyszerű kiértékelhetőségű modellek terjedtek el. Ezen modellek esetében a fuzzy következtetés kompozíciós típusú és ún. max-min alapú. A legismertebb ilyen modell a Mamdami típusú fuzzy irányítási rendszer. Ennél az algoritmusnál az aktuális megfigyelési értéket illesztjük a szabályok feltételeihez és meghatározzuk minden egyes szabály esetén az illeszkedés mértékét [35]. Ezen mérték határozza meg, hogy az adott szabály milyen súllyal szerepel a rendszer kimeneti (válasz) függvényében. A szabályok bemeneti (feltétel) és kimeneti (konzekvencia) részei mind fuzzy halmazok. Formálisan megfogalmazva, az X alaphalmazon értelmezve, ha a rendszernek n bemenete és m kimenete van, akkor az R i i-edik fuzzy szabály: R i : Ha x i =A 1,i x n =A n,i akkor y =B i (5.1) ahol A i = A 1,i A 1,n a szabály (bemeneti) feltétel vektorai, A i X, y = y 1 y m a kimeneti változók vektora, y j Y j, Y=Y j x x Y m a kimeneti változok alaphalmaza, B i = B 1,i B 1,n a konzekvenciák halmazának vektora, Be i Y és i [1,r], ahol r a szabályok száma * Legyen A X 1 x x X n egy n elemű megfigyelési vektor, és az illeszkedés mértéke a j-edik dimenzióban, j [1,n], w j,i =max {min{a * j (x j ), A j,i (x j )}} (5.2) xj 59
A w,i súlyfaktor adja meg, hogy az R,i szabály kimenete milyen mértékben szerepel a végső következmény előállításában: w i = min n w j,i (5.3) j=1 Az R i szabály B i kimenetét w i magasságában csonkoljuk és így kapjuk az A * i megfigyeléshez tartozó B * i következtetést: B * i = min (w i, B i (y)) (5.4) A rendszer válasza a B * i következtetések uniója, azaz: B * = Ur i= 1 B * i (5.5) Az eredeti Mamdami-féle szabályozásban a következtetés előállításakor a Zadeh által javasolt metszetet, azaz egy olyan t-normát alkalmaztak, mely A és B Fuzzy halmazok viszonylatában az elemek minimumát választja ki. Ezzel a megoldással eredményesen volt alkalmazható a Mamdani típusú fuzzy irányítási rendszer. Egy ilyen rendszer lényeges tulajdonsága a hangolhatósága, aminek során a rendszer paramétereit változtatjuk annak érdekében, hogy a megfigyelési értékre a lehető legjobb következtetést adja a rendszer válaszul. A hangolás során finomíthatjuk a szabályokat, módosíthatjuk a feltételekhez és következtetésekhez rendelt fuzzy halmazok jellemzőit, illetve változtathatjuk a defuzzyfikáló egység működési módját. A következőkben ismertetésre kerülő t-norma, amely a fuzzy szabályozás része, paraméterével egy újabb változtatási lehetőséget kínál és ezzel a szabályozás viselkedésének módosítását. A paraméter ezáltal egy újabb szabadsági fokkal bővíti a rendszert a hangolás során. Az új paraméterezett t-norma bevezetése előtt tekintsük át a t-normákat általában és a Zadeh-féle, illetve Fodor-féle t-normákat részletesebben. A t-norma (más néven trianguláris norma) egy bináris művelet t a [0,1] intervallumban, amelynek eleget kell tennie a következő feltételeknek [35]: 60
peremfeltétel t(a,1)=1 a [0,1] kommutativitás t(a,b)=t(b,a) a,b [0,1] asszociativitás t(a,t(b,c))=t(t(a,b),c) a,b,c [0,1] monotonitás b c t(a,b) t(a,c) a,b,c [0,1] További megszorítások is alkalmazhatók a t-normákra: t folytonos függvény szubidempotencia t(a,a)<a a [0,1] idempotencia t(a,a)=a a [0,1] szigorú monotonitás ha a 1 <a 2 és b 1 <b 2 akkor t(a 1,b 1 )<t(a 2,b 2 ) Több t-norma ismert, a leggyakrabban alkalmazottak: t M (a,b)=min(a,b) minimum t-norma t P (a,b)=a b szorzat t-norma t L (a,b)=max(a+b-1,0) Lukasiewicz t-norma A t-normák több paraméteres családja létezik. Az ismertebb t-norma családok fontosabb jellemzőit foglaltuk össze [35] alapján az 5.1 táblázatban. További fuzzy metszetek találhatók Dombi [50]-ben. Hivatkozás Formula Paraméter Lukasiewicz/ Zadeh Schweitzer és Sklar Hamacher Yager Dubois és Prade min(a,b) A formula, ha a paraméter tart 0-hoz {max(0,a p +b p -1)} 1/p p 0 ab ab r+(1-r)(a+b-ab) 1-min[1,((1-a) ω + (1-b) ω ) 1/ ω ] ab max(a,b,α) r (0, ) ω (0, ) α [0, ] ab a+b-ab t min (a,b) min(a,b) A formula, ha a paraméter tart -hez t min (a,b) ha p min(a,b) p - t min (a,b) min(a,b) 5.1 táblázat Az ismertebb t-norma családok főbb jellemzői [35] 61
5.3.1. A Zadeh-féle idempotens t-norma A Zadeh-féle t-norma [38] a fuzzy halmazok metszetére a minimumot adja meg, azaz t(a,b)=min(a,b). A Zadeh-féle metszet az egyetlen idempotens t- norma, melynek grafikus ábrázolását az 5.11. és felületként ábrázolva az 5.12 ábrák mutatják. 5.11. ábra A Zadeh-féle t-norma grafikusan ábrázolva. 5.12. ábra A Zadeh-féle t-norma felületként ábrázolva 5.3.2. A Fodor-féle nilpotens t-norma Fodor javasolta a Zadeh-féle t-norma módosítását [36, 37, 39] és az ún. nilpotens minimum t-norma bevezetését olyan módon, hogy a metszet alsó 62
részén a t-norma értéke 0, míg a felső részen marad az eredeti t=min(a,b). Azaz t(a,b) 0 ha a+b 1 min(a,b) ha a+b > 1 A Fodor-féle t-norma grafikus alakját az 5.13. ábra, míg a t-norma felületként ábrázolva az 5.14. ábrán látható. 5.13. ábra A Fodor-féle t-norma grafikusan ábrázolva 63
5.14. ábra A Fodor-féle t-norma felületként ábrázolva A Fodor-féle nilpotens minimum t-norma és az általa definiálható implikáció számos olyan előnyös tulajdonsággal rendelkezik, amilyennel más t- normák nem. Ezek részben a Lukasiewcz-féle t-norma tulajdonságainak (pl. a hozzá tartozó R- illetve S-implikációk megegyeznek), részben a minimum tulajdonságainak (például a szinthalmazok a gyakorlatban könnyen használhatók) "egyesítéseként" foghatók fel. A nilpotens minimum egyszerűsége ellenére elméleti szempontból is fontos: ez volt az első ismert balról folytonos, de nem folytonos t-norma. A [41] dolgozatunkban a Theorem 8 foglalja össze a nilpotens minimum legfontosabb matematikai tulajdonságait. A Fodor-féle t-norma kísérleti alkalmazásokban, szabályozási rendszerekben jól vizsgázott, bizonyította előnyös tulajdonságait, létjogosultságát. 5.3.3. A paraméterezett t-norma bevezetése A bevezetésre kerülő paraméterezett t-norma lényegében az előző két t- norma, a Zadeh-féle és a Fodor-féle, kiterjesztéseként, általánosításaként fogható fel [42]. A paraméterezett t-norma esetében a két fuzzy halmaz metszetének értéke szintén vagy 0, vagy min(a,b) értékeket vehet fel. A két 64
területet elválasztó határvonal, és ezáltal a két értékhez tartozó érvényességi területek nagysága azonban egy p paraméterpont által meghatározottan változtatható. Lásd 5.15. ábra. 5.15. ábra A paraméterezett t-norma grafikusan ábrázolva Vegyünk fel az A tengelyen egy a pontot, míg a B tengelyen egy b pontot, valamint a A tengelyen egy p paraméterpontot. Igaz továbbá, hogy a [0,1], b [0,1], p [0,1]. Ekkor a t-norma értéke a következő módon adható meg: t p (a,b) 0 ha b f p (a) min(a,b) ha b >f p (a) ahol ( 1 - p 1 ) a + 1 ha 0 a p f p (a) p p 1 a - p p 1 ha p a 1 65
A p paraméterpont által kifeszített határoló vonal alatti területen a t-norma értéke nulla, míg afelett t=min(a, B). A nulla értékű terület nagysága a p pont mozgatásával csökkenthető és növelhető. Szabályozástechnikailag a p ponttal a rendszer érzékenységét állíthatjuk, azaz megszabhatjuk a reagálási küszöbszintet. A határoló vonal alatti terület egy ún. holt terület, amely egy gyenge metszetet jelöl. A gyenge metszetre a szabályozás hallgat és csak akkor tüzel, ha a metszet erős, azaz a határvonal feletti területen, ahol a t=min(a,b). Amint már említettük a bevezetésre javasolt paraméterezett t-norma a Zadeh-féle és a Fodor-féle t-normák általánosítása. Ebből következően a p=0 pontban megfelel a Zadeh-féle t-normának, míg a p=0,5 pontban megfelel a Fodor-féle t-normának. A paraméterezett t-norma kielégíti a t-normák tulajdonságait, tekintve, hogy a fent megadott f p (a) erős negáció és így a [41]- ben összefoglalt tulajdonságok érvényesek rá. A paraméterezett t-normát felületként ábrázolva a p=0 paraméter mellett megfelel az 5.12. ábrán, p=0,5 paraméter mellett az 5.14. ábrán, míg p=0,2 paraméter mellett az 5.16. ábra, és p=0,8 paraméter mellett az 5.17. ábrán látható függvénynek. Meg kell jegyezni, hogy p=0,8 feletti értékek már nagyon lecsökkentik az aktív tartományt és megnövelik a holt-zónát, ami a szabályozás lebénítását, megfojtását eredményezi. 5.16. ábra A paraméterezett t-norma felületábrázolásban p=0.2 esetén 66
5.17. ábra A paraméterezett t-norma felületábrázolásban p=0.8 esetén A szakmai tapasztalat szerint a paraméterezett t-norma használata a 0< p < 0,5 esetén sikeres. Feltéve, hogy ha p 0 és 0,5 között változik, az irányító rendszer hangolása hatékony lesz. Ha azonban p > 0,5, a reakció tartomány mérete nagymértékben csökken. Az 5.2 fejezetben tárgyalt példában, amely a fuzzy kiterjesztés bemutatását szolgálta, még nem alkalmaztuk a most bevezetett paraméteres t- normát. Tekintsük a példában lévő a 1 aktivitás működését, amely a d 1 és d 2 dokumentumok feldolgozásával a d 6 dokumentumot állítja elő az s 1 erőforrás felhasználásával. Az eredménydokumentum rendelkezésre állását a 2 egységnyi feldolgozási idő figyelembe vételével a bemenetekre elvégzett Zadeh-féle t-norma alkalmazásával határoztuk meg, amint azt az 5.18. ábra mutatja. A paraméterezett t-norma hatását szemléltetendő, ugyanezen aktivitás működésénél a paraméter értékét először 0.2-re (5.19. ábra), majd 0.8-ra (5.20. ábra) választjuk. Az ábrákon jól látható, hogy a paraméter változtatásával a d 6 rendelkezésre állása erőteljesen változik. A paraméter növelésével egyre határozottabb él jelenik meg, növekszik a t nulla értékű tartománya, erősödik a később belépő változó hatása. A példából is jól látható, hogy a paraméter változtatásával változik a kimeneti érték, a rendszer jól reagál a hangolásra. 67
5.18. ábra Az a 1 aktivitás működése Zadeh-féle t-normával 5.19. ábra Az a 1 aktivitás működése paraméterezett t-normával (p=0.2) 68
5.20. ábra Az a 1 aktivitás működése paraméterezett t-normával (p=0.8) 69
6. A modell alkalmazásának bemutatása egy esettanulmány alapján A modell alkalmazásának bemutatásánál egy valós életből vett példa, egy nagyüzemmel dolgozó iroda leggyakrabban előforduló esetének modellezését tűztük ki célul. Ezért az alábbi esettanulmány az igazgatásrendészet napi tevékenységei közül vett esetet mutatja be. A rendőrség igazgatásrendészeti osztálya foglalkozik a szabálysértésekkel. Ezek közül a sebességkorlátozás túllépése az egyik leggyakrabban elkövetett közlekedési vétség, melyet a törvény szankcionál. 6.1. Az ügymenet specifikációja A specifikáció alapjául a Budapest XI. kerületi Rendőrkapitányság Igazgatásrendészeti osztályvezetőjével készített interjú és a Magyar Köztársaság 1999. évi LXIX. Törvény a szabálysértésekről, illetve a 218/1999. (XII. 28.) Kormány Rendelet az egyes szabálysértésekről szolgált. A specifikációt a jobb áttekinthetőség érdekében fázisokra bontjuk. Tekintve, hogy a specifikáció során bevezetett elnevezéseket később a modellezésnél is használjuk, ezért a fázisok elnevezéseit félkövérrel és aláhúzással, a bemeneti-, köztes-, és eredménydokumentumokat félkövérrel és dőltbetűvel emeljük ki. Feljelentés - A sebességkorlátozás túllépése, illetve jelentős túllépése esetén a helyszínen intézkedő rendőr az elkövetőt feljelenti. A szabálysértési feljelentés elkészítése során felhasznált dokumentumok: gépjármű vezetői engedély, személyi igazolvány, forgalmi engedély, zöldkártya, felelősségbiztosítás, tényállás, bizonyíték. Kiszignálás A szabálysértési feljelentés a gépjármű üzembentartójának lakhelye szerinti illetékes rendőrkapitányság igazgatásrendészeti osztályára érkezik, ahol az osztály vezetője az ügyet kiszignálja egy előadónak. 70
Iktatás A feljelentést az előadó feljelentési számra iktatja. A feljelentést kiegészíti a közlekedési előéleti pontszám nyilvántartásban szereplő pontértékkel. Így keletkezik az iktatott ügyirat. Elbírálás A szabálysértést szankcionáló határozat meghozatala során az előadó ellenőrzést végez a lakcímnyilvántartás, a vezetői engedély nyilvántartás, és a járműnyilvántartás adatai alapján. Az elbírálás során a mérlegelés sok paraméter figyelembe vételével történik. A határozat alapján kiszabható pénzbírság, pénzbírság és előéleti pontszám, illetve pénzbírság és vezetéstől eltiltás. Ez utóbbi esetben a határozat átkerül az illetékes okmányirodához a vezetői engedély bevonása céljából. A határozat minden esetben az elkövető címére kiküldésre kerül. Előéleti pontszám regisztrálás A határozat alapján, az abban foglalt pontértékkel megemelik a közlekedés előéleti pontszám nyilvántartásban szereplő eddigi pontértéket. Vezetői engedély bevonása A határozat alapján az illetékes okmányiroda megkapja átiratban a határozatot a vezetői engedély bevonására az elkövetőtől. Ügylezárás A pénzbírság befizetése esetén az ügyet lezárják és irattárba kerül. Kifogás elbírálás Amennyiben az elkövető a határozat ellen kifogással él, úgy azt a rendőrség elbírálja és a kifogást vagy helyben hagyja, vagy elutasítja azt. A döntésről értesíti az elkövetőt. Helyben hagyás esetén a módosított büntetés lép életbe. Bírósági végzés Elutasított kifogás esetén a bíróság a megküldött teljes ügyirat alapján hoz végzést az ügyben, melyet minden érintettnek megküld. Tárgyalás Ha az elkövető a végzés ellen kifogással és akkor tárgyalás útján születik ítélet az ügyben, melyet minden érintett megkap. Ez ellen további kifogás nem nyújtható be. Intézkedés behajtásról Abban az esetben, ha az elkövető a pénzbírságot nem fizette meg, ellene behajtásról intézkedés történik. Letiltás fizetésből Amennyiben az elkövető munkahellyel és jövedelemmel rendelkezik letiltási rendelvényt kell kiküldeni a munkáltató illetve átiratot a letiltásról a BRFK pénzügyi osztálya részére. 71
Közadó behajtás Sikertelen letiltás esetén az illetékes önkormányzat adócsoportjától átiratban kell kérni a közadós behajtást. Közmunka tudakozvány kiküldése Amennyiben a közadós behajtás sikertelen, úgy az önkormányzat jegyzője közmunka tudakozványt küld ki az elkövetőnek, hogy hajlandó-e a pénzbüntetést közmunkával megváltani. Jegyzői határozat Ha az elkövető vállalja a közmunkát, akkor a jegyző határozatban jelöli ki a munkavégzés helyét, idejét, és erről értesíti az elkövetőt. Közmunka teljesítése A közmunka teljesítésével a kiszabott bírság lerovásra került, a jegyző értesíti a rendőrséget, aki lezárja az ügyet. Bírósági átváltoztatás elzárásra Amennyiben az elkövető nem vállal közmunkát, úgy bírósági végzéssel a pénzbírságot letöltendő börtönbüntetésre kell átváltoztatni. Az elkövető erről végzést kap és kézhez kapja a börtönfelhívást. Elzárás letöltése A letöltött szabadságvesztésről a Büntetés Végrehajtó Intézmény értesíti a rendőrséget, aki lezárja az ügyet. A folyamat modellezése során a folyamatban szereplő eljárási részek, esetünkben aktivitások, ezek kapcsolata, időbeliségük jól szemléltethető az UML aktivitás diagrammjával. Az aktivitás diagramm a vezérlési mintáról jó információt nyújt, ábrázolja a különböző feltételek esetén végrehajtandó aktivitásokat, a lépések sorrendjét. A gyorshajtás szabálysértés kezelésének aktivitás diagrammját a 6.1. ábra mutatja. Az aktivitás diagramm a vezérlés tekintetében jó modellező eszköz. Nem ad információt azonban az adatforrásokról, adatnyelőkről, adattárolókról, az adatkapcsolatokról. Az adatáramlás modellezésére jó eszköz az adatfolyam ábra, mely mindezen információkat jól szemlélteti. A gyorshajtás szabálysértés kezelésének adatfolyam ábráját a 6.2. ábra mutatja. 72
6.1. ábra UML aktivitás diagram 73
6.2. ábra Adatfolyam ábra 74
6.2. Az ügymenet workflowjának generálása a WFS módszerrel. A specifikált ügymenet első fázisát a feljelentéstől az elbírálásig emeljük ki a WFS módszer bemutatására. A legenerálandó workflowban a szűk keresztmetszetek kiküszöbölése érdekében elhelyezünk párhuzamos aktivitásokat, melyekhez járulékos erőforrásokat rendelünk hozzá. Az így kibővített ügymenet workflowjának szintézise során az alábbi jelöléseket alkalmazzuk: Bemeneti dokumentumok (ID): d 1 - gépjármű vezetői engedély d 2 - gépjármű forgalmi engedély d 3 - igazolás a kötelező gépjármű biztosításról d 4 - a gépjárművezető személyi igazolványa d 5 - a gépjárművezető lakcímkártyája d 6 - bizonyíték a gyorshajtásról d 9 - közlekedési előéleti pontszám Köztes dokumentumok (MD): d 8 - feljelentés d 9 - kiszignált feljelentés Vég dokumentumok (PD): d 10 - iktatott ügyirat Aktivitások: a 1, a 2 feljelentés a 4, a 5 kiszignálás a 5 iktatás Erőforrások: (R) s 1 s 5 ügyintézői erőforrás 75
A paraméterek megadásával előállítható maximális workflow struktúra a 6.3. ábrán látható. 6.3. ábra Az ügymenet maximális workflow struktúrája Az SSG algoritmus segítségével előállítjuk az összes lehetséges megoldást, ami esetünkben az adott munkafolyamat és adott erőforrások figyelembevételével az összes lehetséges munkaszervezést jelenti. Azaz azt kapjuk megoldásként, hogy az adott kereteken belül hogyan szervezhetjük meg a szervezet azon részét, amelyik ezt az adott munkafolyamatot elvégzi. 76
A matematikai modellt felírva az optimalizálást elvégezve a következő tapasztalatot szereztük. Az 1. megoldás struktúra abban az esetben volt optimális minimális erőforrás idő felhasználásra optimalizálva amikor s 1 gyorsabb volt mint s 2, s 4 gyorsabb volt mint s 3 és nem túl sok feljelentést kellett készíteni. 6.4. ábra Az 1. megoldás struktúra 77
A 2. megoldás struktúra abban az esetben volt optimális minimális erőforrás idő felhasználásra optimalizálva amikor s 2 gyorsabb volt mint s 1, s 4 gyorsabb volt mint s 3 és nem túl sok feljelentést kellett készíteni. 6.5. ábra A 2. megoldás struktúra 78
A 3. megoldás struktúra abban az esetben volt optimális minimális erőforrás idő felhasználásra optimalizálva amikor s 4 gyorsabb volt mint s 3 és annyi feljelentést kellett készíteni, hogy sem s 1 sem s 2 műszakjába önállóan nem fért bele. 6.6. ábra A 3. megoldás struktúra 79
A 4. megoldás struktúra abban az esetben volt optimális minimális erőforrás idő felhasználásra optimalizálva amikor s 1 gyorsabb volt mint s 2, s 3 gyorsabb volt mint s 4 és nem túl sok feljelentést kellett készíteni. 6.7. ábra A 4. megoldás struktúra 80
Az 5. megoldás struktúra abban az esetben volt optimális minimális erőforrás idő felhasználásra optimalizálva amikor s 2 gyorsabb volt mint s 1, s 3 gyorsabb volt mint s 4 és nem túl sok feljelentést kellett készíteni. 6.8. ábra Az 5. megoldás struktúra 81
A 6. megoldás struktúra abban az esetben volt optimális minimális erőforrás idő felhasználásra optimalizálva amikor s 3 gyorsabb volt mint s 4 és annyi feljelentést kellett készíteni, hogy sem s 1 sem s 2 műszakjába önállóan nem fért bele. 6.9. ábra A 6. megoldás struktúra 82
A 7. megoldás struktúra sohasem volt optimális minimális erőforrás idő felhasználásra optimalizálva ez azzal magyarázható, hogy a kiszignálásra fordítandó idő nagyságrenddel kisebb, mint a feljelentés készítésének ideje, így sohasem kellett két ügyintézőt dolgoztatni. 6.10. ábra A 7. megoldás struktúra 83
A 8 megoldás. struktúra sohasem volt optimális minimális erőforrás idő felhasználásra optimalizálva ez azzal magyarázható, hogy a kiszignálásra fordítandó idő nagyságrenddel kisebb, mint a feljelentés készítésére fordított idő, így sohasem kellett két ügyintézőt dolgoztatni. 6.11. ábra A 8. megoldás struktúra 84
A 9. megoldás struktúra sohasem volt optimális minimális erőforrás idő felhasználásra optimalizálva ez azzal magyarázható, hogy a kiszignálásra fordítandó idő nagyságrenddel kisebb, mint a feljelentés készítésére szánt idő, így sohasem kellett két ügyintézőt dolgoztatni. 6.12. ábra A 9. megoldás struktúra 85
7. Összefoglalás A dolgozat 2. fejezetében a szakirodalom alapján bemutattam a workflow eddigi modellezési lehetőségeit. Kitértem a WfMC által javasolt modellre, annak szokásos elemeire, struktúrájára és a vezérlési mintákra. Elemeztem az egzaktabb megadáshoz vezető Petri-hálón alapuló workflow modellt, a lehetséges vezérlési mintákat, vizsgáltam az alkalmazás lehetőségeit és korlátait. Rámutattam, hogy a szakirodalom tanulmányozása alapján megállapítható, hogy, nincs megoldás a workflow folyamat-hálózat alapú értelmezéséhez kapcsolható optimális struktúra szisztematikus és bizonyíthatóan helyes generálására. Ez indokolja az új kutatási irány, azaz a folyamat gráfoknál (P-gráf) már széles körben sikerrel alkalmazott szintézisen alapuló optimális struktúra keresés algoritmikus módszere workflow modellekre értelmezett kiterjesztésének szükségességét. A 3. fejezetben a P-gráf alapú modellezést és a kombinatorikus módszerrel történő folyamat hálózat szintézist Friedler és munkatársai publikációi alapján mutattam be. A P-gráfok modellezési lehetőségén, matematikai leírásán túl kitértem a folyamat-hálózat szintézis (PNS) kombinatorikus megoldására, a maximális struktúra generálására az MSG algoritmussal, a megoldás struktúrák generálására az SSG algoritmussal, valamint a Branch-and-Bound és a gyorsított Branch-and-Bound módszerekre. A 4. fejezetben a folyamat-hálózat modellezés analógiájára bevezettem a workflow P-gráf alapú modellezését, valamint bevezettem a modell kiterjesztését az idő tényezővel, mint speciális erőforrással. Generáltam az ily módon megadott workflow PNS struktúrájából a matematikai modelljét és vizsgálatokat végeztem a valós környezet által indukált célfüggvények (erőforrás korlátok, szűk keresztmetszetek) meghatározásához. Az 5. fejezetben a P-gráf alapú workflow modell fuzzy kiterjesztési lehetőségét mutatattam be. Elemeztem a workflow valós alkalmazási környezetében előforduló életszerű, bizonytalan, egzaktul nem definiálható helyzeteket, amelyek szükségessé teszik a jobb modellezés érdekében a fuzzy kezelés bevezetését. Rámutattam arra, hogy a szakirodalomban nem található 86
ilyen jellegű modellezési eszköz és bemutattam a workflow fuzzy kiterjesztésének általam javasolt módszerét. Bevezettem a dokumentumokra és aktivitásokra értelmezett fuzzy halmazokat és egy példán keresztül bemutattam a módszer alkalmazását. Bevezettem a paraméterezett t-normát, amely lényegében a Zadeh-féle és a Fodor-féle t-normák, kiterjesztéseként, általánosításaként fogható fel és alkalmazásával hatékonyabb lehet a fuzzy szabályozási rendszerek hangolása. A dolgozat 6. fejezetében egy valós életből merített példán mutatjuk be a WFS használatának lehetőségét. 87
8. Új tudományos eredmények 8.1. Tézisek Az értekezés új tudományos eredményeit tézisszerűen az alábbiakban foglalom össze: 1. Módszert dolgoztam ki a workflow modellek hagyományos leírásával szemben egy olyan új, hálózat-struktúra szemléletű, P-gráf alapú megfogalmazásra, mely lehetővé teszi a munkafolyamatok szintézisére alkalmas modellezést. 1.1. Áttekintettem és kritikáját adtam a workflow modellezés hagyományos megoldási módjainak. Rámutattam az eddigi megoldások hiányosságára, a workflow szintézis (WFS) bevezetésének szükségességére. 1.2. Bevezettem a P-gráf alapú workflow modellben a dokumentumok és tevékenységek diverzifikált fogalmát és azok kezelését. 2. Kidolgoztam a WFS modellt a P-gráf alapú workflow modell kiterjesztésével és az idő és kapacitáskorlátok bevezetésével. A valóságos problémák és feladatok leírására az eddig létező modelleknél alkalmasabb rendszert dolgoztam ki a hálózatstruktúra PNS alapokon történő optimalizálásának algoritmikus módszerére. 2.1. Kidolgoztam azt a P-gráf alapú workflow modellt, amely lehetőséget biztosít az új megközelítésben a munkafolyamatok optimális struktúrájának meghatározására. 2.2. Módszert adtam arra, hogy hogyan lehet elemezni a munkafolyamatok hatékonyságát csökkentő tényezők - erőforrás és idő korlátok, szűk keresztmetszetek hatását a modellben. 88
2.3. A munkafolyamatok P-gráf alapú strukturális modelljének megadtam azt az adekvát matematikai modelljét, melynek megoldása az adott munkafolyamat-hálózat optimális struktúráját szolgáltatja. 3. A valóság pontosabb modellezése érdekében kidolgoztam egy olyan eszközt, amely kiterjeszti a hagyományos folyamatszintézis modellt úgy, hogy az képes legyen kezelni a bizonytalan elemeket a rendszerben. 3.1. Bevezettem a P-gráf alapú workflow modellben a bizonytalanságot tartalmazó tevékenységek leírására a fuzzy tulajdonságokkal rendelkező műveleti egységet. 3.2. Algoritmust dolgoztam ki az ily módon kiterjesztett modell optimális struktúráján meghatározására. 3.3. Kidolgoztam a fuzzy műveleti egység megvalósítására egy új paraméterezett T-normát, mely segítségével a hangolási folyamat során a modellel jobban közelíthetjük a valós feladatot 8.2. A PhD dolgozat témájában megjelent publikációim Lektorált nemzetközi folyóiratcikkek: 1. J. Tick, Z. Kovács, F. Friedler: Synthesis of Optimal Workflow Structure Journal of Universal Computer Science, ISSN 0948-6968, Vol. 12, 2006, No. 9, pp. 1385-1392. 2. J. Tick, J. Fodor: Some Classes of Binary Operations in Approximate Reasoning Studies in Informatics and Control, ISSN 1220-1766, Vol. 15, 2006, No. 3, pp. 259-270. 3. J. Tick, J. Fodor: Fuzzy Implications and Inference Processes Computing and Informatics, ISSN 1335-9150, Vol. 24, 2005, No. 6, pp. 591-602. 4. J. Tick: P-Graph-based Workflow Modelling Acta Politechnica Hungarica, ISSN 1785-8860, Vol. 4, 2007., No 1, pp. 75-88. 89
Lektorált nemzetközi konferencia kiadványokban megjelent cikkek: 5. J. Tick: Fuzzy Control Systems based on Parametric T-Norm Function Proceedings of the 4 th International Symposium on Applied Computational Intelligence and Informatics, SACI 2007, Timisoara, Romania, May 17-18, 2007, pp. 215-218. ISBN 1-4244-1234-X, IEEE Catalog Number: 07EX1788 6. J. Tick: Workflow Modelling Based on Process Graph Proceedings of the 5 th Slovakien Hungarian Joint Symposium on Applied Machine Intelligence, SAMI 2007, Poprad, Slovakia, January 25-26, 2007, pp. 419-426. ISBN 978 963 7154 56 0 7. J. Tick, J. Fodor: Some Classes of Binary Operations in Approximate Reasoning Proceedings of the IEEE 9 th International Conference on Intelligent Engineering Systems, INES 2005, Cruising on Mediterranean Sea, September 16-19, 2005, pp. 123-128. ISBN 0-7803-9474-7 8. J. Tick, J. Fodor: Fuzzy Implications and Inference Processes Proceedings of the IEEE 3 rd International Conference on Computational Cybernetics, ICCC 2005, Hotel Le Victoria, Mauritius, April 13-16, 2005, pp. 105-109. ISBN 963 7154 37 X 9. J. Tick: Workflow Model Representation Concepts Proceedings of the 7 th International Symposium of Hungarian Researchers on Computational Intelligence, HUCI 2006, Budapest, Hungary, November 24-25, 2006, pp. 329-337. ISBN 963 7154 54X A felsorolt publikációkra eddig 7 független hivatkozás jelent meg referált nemzetközi konferenciakiadváyokban. 90
Irodalomjegyzék [1] The Workflow Management Coalition Specification, Workflow Management Coalition Terminology & Glossary; Document Number WFMC-TC-1011; Document Status - Issue 3.0; Feb 99. [2] W.M.P. van der Aalst and A.H.M. ter Hofstede: Verification of Workflow Task Structures: A Petri-net-based approach [3] S. Jablonski, C. Bussler: Workflow Management: Modelling Concepts, Architecture, and Implementation. International Thomson Computer Press, 1996. [4] W. M. P. van der Aalst, K. M van Hee: Workflow Management Models, Methods, and Systems, The MIT Press, Cambridge, Massachusetts, London, England, 2002. [5] S. A. P. White: Process Modelling Notations and Workflow Patterns, [Online] http://www.omg.org /bp-corner/bp-files/process_modelling _Notations.pdf. [6] R. Eshuis, R. Wieringa: Verification Support for Workflow Design with UML Activity Graphs, in the Proceedings of the 24th International Conference on Software Engineering, Orlando, Florida, 19-25, May, 2002., pp.166 176 [7] P. Hruby: Specification of Workflow Management Systems with UML. In the Proceedings of the 1998 OOPSLA Workshop on Implementation and Application of Object-oriented Workflow Management Systems, Vancouver, BC 1998. [8] W.M.P. van der Aalst: Three Good Reasons for Using a Petri-net-based Workflow Management System. In the Proceedings of the International Working Conference on Information and Process Integration in Enterprises (IPIC'96), pages 179-201, Cambridge, Massachusetts, Nov. 1996. [9] J. L. Peterson: Petri Net Theory and the Modelling of Systems. Englewood Cliffs: Prentice-Hall, 1981. [10] Pataricza A. ed.: Formális módszerek az informatikában. Typotex, Budapest 2006. [11] J. Tick: Workflow Model Representation Concepts, in Proceedings of 7th International Symposium of Hungarian Researchers on Computational Intelligence, HUCI 2006, Budapest, Hungary, November 24-25, 2006, pp. 329-337. ISBN 963 7154 54X 91
[12] J. M. Jeffry: Using Petri Nets to Introduce Operating System Concepts, in SIGCSE Bulletin Vol. 23, No. 1; Proceedings of the SIGCSE Technical Symposium on Computer Science Education, 1991, San Antonio, TX, USA, pages 324-329. March 1991. [13] P. Kemper: Logistic Process Models Go Petri Nets, in Proceedings 7. Workshop Algorithmen und Werkzeuge für Petrinetze,, Koblenz, Germany, 2.-3. October 2000, pp 69-74. [14] V. Pankratius, W. Stucky: A Formal Foundation for Workflow Composition, Workflow View Definition, and Workflow Normalization based on Petri Nets, Sven Hartmann, Markus Stumptner (Eds.): Conceptual Modelling 2005, Second Asia-Pacific Conference on Conceptual Modelling (APCCM2005), Newcastle, NSW, Australia, January/February 2005. pp 79-88. ISBN 1-920682-25-2 [15] J. Tick: Workflow Modelling Based on Process Graph Proceedings of the 5th Slovakien Hungarian Joint Symposium on Applied Machine Intelligence, SAMI 2007, Poprad, Slovakia, January 25-26, 2007, pp. 419-426. ISBN 978 963 7154 56 0 [16] W.M.P. van der Aalst, A.H.M. ter Hofstede, B. Kiepuszewski, and A.P. Barros: Workflow Patterns. BETA Working Paper Series, WP 47, Eindhoven University of Technology, Eindhoven, 2000. [17] W.M.P. van der Aalst, A.H.M. ter Hofstede, B. Kiepuszewski, and A.P. Barros: Advanced Workflow Patterns, In O. Etzion and P. Scheuermann, editors, 7th International Conference on Cooperative Information Systems (CoopIS 2000), volume 1901 of Lecture Notes in Computer Science, pages 18-29. Springer-Verlag, Berlin, 2000. [18] K. Jensen: Coloured Petri Nets and the Invariant-Method, Theoretical Computer Science, Volume 14 pp. 317-336, 1981 [19] M. Merz, D. Moldt, K. Müller-Jones, W. Lamersdorf: Workflow Modelling and Execution with Coloured Petri Nets in COSM, in Proceedings of 16th International Conference on Application and Theory of Petri Nets, 1995 [20] D. Liu, J. Wang, S. C. F. Chan, J. Sun, L. Zhang: Modeling workflow processes with colored Petri nets, Computers in Industry, Vol. 49, Issue 3 (December 2002) pp. 267 281 [21] Y. Qu, C. Lin, J. Wang: Linear Temporal Inference of Workflow Management Systems Based on Timed Petri Nets Models. In: Y. Han, S. Tai, D. Wikarski (Eds.): Engineering and Deployment of Cooperative Information Systems, First International Conference (EDCIS 2002) Beijing, China, September 17-20, 2002, pp. 1-30 Springer Verlag, LNCS 2480, September 2002. 92
[22] W.M.P. van der Aalst: Interval Timed Coloured Petri Nets and their Analysis. In M. Ajmone Marsan, ed., Application and Theory of Petri Nets 1993, volume 691 of Lecture Notes in Computer Science, pp. 453-472. Springer-Verlag, Berlin, 1993. [23] F. Friedler, J. B. Varga, L. T. Fan: Decision Mapping: A Tool for Consistent and Complete Decisions in Process Synthesis, Chemical Eng. Sci. Vol. 50, pp. 1755-1768, 1995. [24] C. Zirpins, K. Schütt, G. Piccinelli: Flexible Workflow Description with Fuzzy Conditions, in Procedings of London Communications Symposium, September 9-10. 2002., London [25] A. H. Land, A. G. Doig: An Automatic Method for Solving Discrete Programming Problems, Econometria Vol. 28, pp. 497-520, 1960. [26] F. Friedler, K. Tarjan, Y. W. Huang, and L. T. Fan: Combinatorial Algorithms for Process Synthesis, Computers Chem. Engng, Vol 16, pp. 313-320 (1992). [27] F. Friedler, K. Tarjan, Y. W. Huang, and L. T. Fan: Graph-Theoretic Approach to Process Synthesis: Axioms and Theorems, Chem. Engng Sci., Vol 47, pp. 1973-1988 (1992). [28] F. Friedler, K. Tarjan, Y. W. Huang, and L. T. Fan: Graph-Theoretic Approach to Process Synthesis: Polynomial Algorithm for Maximal Structure Generation, Com. Chem. Eng., Vol 17, pp. 929-942 (1993). [29] F. Friedler, L. T. Fan, and B. Imreh, Process Network Synthesis: Problem Definition, Networks, Vol 28, pp. 119-124 (1998). [30] F. Friedler, J. B. Varga, E. Fehér, L. T. Fan: Combinatorially Accelerated Branch-and-Bound Method for Solving the MIP Model of Process Network Synthesis, Nonconvex Optimization and Its Applications, In State of the Art in Global Optimization, Computational Methods and Applications, edited by C. A. Floudas and P. M. Pardalos, Kluwer Academic Publisher, Norwell, MA, pp. 609-626, 1996. [31] P. Bertier, B. Roy: Procédure de résolution pour une classe de problems pouvant avior un caractére combinatorie, Cahiers Cent. D Etudes Recherche Operationelle, Vol 6., pp. 202-208, 1964. [32] F. Friedler at all.: Structural Flowsheet Optimization (megjelenés alatt) [33] Bajalinov E., Imreh B.: Operációkutatás, Polygon jegyzettár, Polygon, Szeged, 2001, ISSN 1417-0590 [34] M. S. Peters, K. D. Timmerhaus, R. E. West: Plant Design and Economics for Chemical Engineers, 5th Edition, 2003., ISBN-13 9780072392661 93
[35] L.T. Kóczy, D. Tikk: Fuzzy rendszerek, Typotex Kiadó Budapest, 2000, [36] J.C. Fodor, A remark on constructing t-norms, Fuzzy Sets and Systems, Vol. 41, no. 2, 1991, pp. 195-199. [37] J.C: Fodor, A new look at fuzzy connectives, Fuzzy Sets and Systems, Vol. 57, no. 2, 1993, pp. 141-148. [38] L.A. Zadeh, Fuzzy Sets, Information and Control, Vol. 8, no. 3, 1965, pp 338-353 [39] J. C. Fodor, Contrapositive symmetry of fuzzy implications, Fuzzy Sets and Systems Vol. 69, 1995 pp. 141-156. [40] J. Tick, J. C. Fodor: Some Classes of Binary Operations in Approximate Reasoning, Studies in Informatics and Control, Vol. 15, No. 3, 2006, pp. 259-270. [41] J. Tick, J. C. Fodor: Fuzzy Implications and Inference Processes, Computing and Informatics, Vol. 24, No. 6, 2005, pp. 591-602. [42] J. Tick: Fuzzy Control Systems based on Parametric T-Norm Function Proceedings of the 4th International Symposium on Applied Computational Intelligence and Informatics, SACI 2007, Timisoara, Romania, May 17-18, 2007, pp. 215-218. ISBN 1-4244-1234-X, IEEE Catalog Number: 07EX1788 [43] Varga J.: A folyamat-hálózat szintézis feladat kiterjesztése - PhD értekezés, Veszprémi Egyetem, Mérnöki Kar, Műszaki Informatikai Alkalmazások Doktori Program, 2000. [44] Z. Blázsik, Cs. Holló, B. Imreh, Cs. Imreh, Z. Kovács: On a well solvable class of the PNS problem, Novi Sad Journal of Mathematics, 30, 2000., pp. 21-30. [45] Cs. Holló, Z. Blázsik, Cs. Imreh, Z. Kovács: On Merging Reduction of the Process Network Synthesis Problem, Acta Cybernetica, 14, 1999., pp. 251-262. [46] Heckl I.: Szétválasztási hálózatok szintézise: Különböző tulajdonságokon alapuló szétválasztási módszerek egyidejű alkalmazása PhD értekezés, Veszprémi Egyetem, Műszaki Informatikai Kar, Informatikai Tudományok Doktori Iskola, 2007. [47] Z. Kovács, F. Friedler, L. T. Fan.: Parametric study of separation network synthesis: extreme properties of optimal structures, Computer & Chemical Engineering, S19, pp. 107-112, 1995. 94
[48] Z. Kovács, Z. Ercsey, F. Friedler, L. T. Fan.: Separation-network synthesis: global optimum thtough rigorous super-structure, Computer & Chemical Engineering, S24, pp. 1881-1900, 2000. [49] B. Bertók, F. Friedler, L. T. Fan: Generation of process Synthesis problems for testing valuating and comparing synthesis methods, PRES 99 (Second Conference on Process Integration, Modelling and Optimisation for Energy Saving and Pollution Reduction) Budapest 1999. [50] J. Dombi: A general class of fuzzy operators, the De Morgan class of fuzzy operator and fuzziness measures induced by fuzzy operators. Fuzzy Sets and Systems, 8(2) pp. 149 163, 1982. [51] Imreh B., Imreh Cs.: Kombinatorikus Optimalizálás, Novodat Bt, Budapest, 2005. ISBN 963 9056 36 7 [52] Z. Blázsik, Cs. Holló, Cs. Imreh, Z. Kovács: Heuristics for the PNS problem, Applied Optimization, 59, eds. F. Gianessi, P. Pardalos, T. Rapcsák, Kluwer Academic Publishers, Dordrecht, Boston, London, 2001., pp. 1-18. [53] Nagy Á.: Globális optimalizálási algoritmusok PNS feladatok megoldására PhD értekezés, Veszprémi Egyetem, Műszaki Informatikai Kar, Informatikai Tudományok Doktori Iskola, 2004. [54] Z. Blázsik, Cs. Holló, B. Imreh, Cs. Imreh, Z. Kovács: On bottleneck and k- sum versions of the Process Network Synthesis problems, Novi Sad Journal of Mathematics, 30, 2000., pp. 11-19. [55] Bertók B.: Folyamathálózatok struktúráinak algoritmikus szintézise PhD értekezés, Veszprémi Egyetem, Műszaki Informatikai Kar, Informatikai Tudományok Doktori Iskola, 2003. [56] Cs. Imreh: A new well-solvable class of PNS problems, Computing, 66, 2001., pp. 289-296. [57] Cs. Imreh, Z. Kovács: On pollution minimization in the optimization models of process network synthesis, Chemical Engineering Transactions, 7(2), 2005., pp. 565-570. 95