MODELL ALAPÚ DIAGNOSZTIKA DISZKRÉT MÓDSZEREKKEL Heterogén módszereket alkalmazó ágens alapú diagnosztikai rendszerek
Áttekintés té Ágensek és multi-ágens rendszerek Definíciók iók Típusaik Környezeteik Kommunikációjuk Ágens fejlesztői környezetek Diagnosztikai esettanulmányok
Mi az az ágens? Környezet beavatkozik ÁGENS érzékel Ágens Érzékelők Beavatkozó szervek Ember kéz, fül, szem, stb. kéz, láb Robot kamera, szenzorok, stb. motorok, manipulátorok Szoftver kódolt bitsorozat kódolt bitsorozat
Tisztító robot Sakk-program Mars robot Mi az az ágens? Cél: az ágens jó (helyes) munkát végezzen a környezetére hatva racionális ágens amelyik helyesen cselekszik ideális racionális ágens minden egyes észlelési sorozathoz az észlelés és a beépített tudás alapján minden elvárt dolgot megtesz a teljesítménymérték maximalizálásáért
Mi az az ágens? kapcsolat az ágens észlelési sorozata és cselekvései között leképezés a leképezés leírja az ágenst ideális ágens ideális leképezés leírási módszerek táblázatos gond: végtelen hosszú lista algoritmikus (függvény)
Ágens Észlelés Cselekvés Célok Környezet orvosi szimptómák,észle- kérdések, tesztek, egészséges kórház, páciens diagnosztikai rendszer lések, a páciens válaszai kezelések páciens, minimalizált költségek műholdas változó intenzitású a kép helyes képek képelemző és színű pixelek kategorizálása csoportosítás műholdról rendszer alkatrész változó intenzitású alkatrészek az alkatrészek futószalag felszerelő pixelek felvétele és sorba helyes ládába alkatrészekkel robot rendezése ládába helyezése olajfinomító hőmérséklet és szelepek nyitása tisztaság, kihozatal olajfinomító vezérlő nyomás értékek és zárása, hőm. és biztonság max. állítás interaktív begépelt szavak gyakorlatok, a tanuló tanulók nyelvoktató javaslatok, pontszámának halmaza program javítások maximalizálása taxisofőr kamerák, kormány, gáz, biztonságos, gyors, utak, forgalom, sebesség-mérő, GPS, hangradar, mikrofon fék, beszéd az utasokkal törvényes, kényelmes utazás, maximális haszon gyalogosok, ügyfelek
Az ideális ágens Ideális ágens fő tulajdonságai Képes a környezetére hatni cselekvések k végrehajtása, mozgás,... Képes a környezetét észlelni bábuk helyzetéhez egy táblán, radar,... Egyéb lehetséges tulajdonságok Képes a többi ágenssel kommunikálni Jelezni a helyzetét, megosztani a tudását,... Cél(ok) által vezérelt A-ból B-be eljutni megnyerni a játszmát A-ból B-be eljutni, megnyerni a játszmát,... Vannak saját erőforrásai Memória, robotkar, következtető gép,...
Az ideális ágens Környezetéről csak részleges információkkal rendelkezik Például csak a közvetlen környezetét látja Képességek birtokában van és szolgáltatásokat tud nyújtani Képességek (saját maga számára): mozgás, következtetés,... Szolgáltatások (a többi ágens számára): információmegosztás,... Képes önmagát reprodukálni Például szoftverágens esetében Céljai elérése érdekében cselekszik Mattot ad egy sakkjátszmában, a padlón a koszos részt tisztítja,...
Az ideális ágens Nem minden ágens ideális Feladathoz ez nem mindig kell Egy tisztítórobot nem tudja önmagát reprodukálni nem is szükséges Észlelés + beavatkozás képessége a legfontosabb
Multi-ágens rendszerek Multi-ágens rendszer részei: Egy környezet (E) (gyakorlatilag egy kiterjedéssel rendelkező tér). Objektumok (O) halmaza, amik ebben a környezetben léteznek (ideális) ágensek (A) halmaza, A O, az (ágensek speciális objektumok) Műveletek (Op) halmaza, A ágensek ezek segítségével érzékelnek és beavatkoznak Objektumok közötti relációk halmaza. R OxO. Környezet sajátosságait leíró szabályok, műveletek
Multi-ágens rendszer (környezet)
Reflexszerű ű ágensek feltétel-cselekvés szabályok vezérlik (pl. ha az előző autó fékez, akkor kezdj fékezni) az embereknél a cselekvést tanult szabályok (pl. vezetés) feltétlen reflexek (pl. pislogás erős fényre) határozzák meg egyszerűek és gyorsak működésük: észleli a jelenlegi állapotot keres egy ehhez illeszkedő szabályt végrehajtja a szabályhoz illeszkedő cselekvést Példa: Helyesírás-ellenőrző, adatgyűjtő ágens
Reflexszerű ű ágensek Érzékelők Hogy néz ki most a világ? Környezet Szabályok Milyen cselekvéseket kell most végrehajtani? Beavatkozók
Belső ő állapottal l rendelkező ő ágensek egyetlen észlelésből nem lehet mindig dönteni a környezet nyilvántartása az ágensen belül összehasonlítási alap mi változott? reflexszerű ágens, amely eltárolt belső állapottal rendelkezik kétfajta tudás beépítése: hogyan változik a világ függetlenül az ágenstől (pl. előzést végrehajtó autó helyzetének változása hozzánk képest) az ágens cselekvései hogyan befolyásolják a világot (pl. sávváltás után üres hely marad a korábban használt sávban) Példa: Autóvezető ágens
Belső ő állapottal l rendelkező ő ágensek Reflexszerű ágens + belső állapot Belső állapot Érzékelők Hogy néz ki most a világ? Környezet Szabályok Milyen cselekvéseket kell most végrehajtani? Beavatkozók
Célorientált ágensek a környezet állapotának ismerete nem mindig elegendő a cselekvés meghatározásához (pl. a taxi egy kereszteződésbe ér, merre haladjon tovább?) a cél alapján történő döntés magába foglalja a jövő figyelembe vételét sokkal rugalmasabb mint a reflexszerű ágens egyszerre több céllal is rendelkezhet a célja elérése érdekében tervet készít, mielőtt cselekedne Példa: autóvezetés té úticéllal, l sakkozó program, alkatrészfelszedő robot
Célorientált ágensek az ágens céljait elérő ő cselekvéssorozat: keresés tervkészítés új cél új viselkedés pl. a jövő figyelembe vétele cél: autónk ne koccanjon más autóval gondolatmenet: ha az előző autó féklámpái világítanak, akkor le fog lassulni
Célorientált ágensek Állapottal rendelkező, tervkészítő ágens Belső állapot Érzékelők Hogy néz ki most a világ? Környezet Lehetséges e Hogyan fog kinézni a cselekmények világ, ha A cselekvést következményei hajtom végre? Célok Milyen cselekvéseket kell most végrahajtani? Beavatkozók
Hasznosságorientált ágensek Hasznossági függvény: Állapotot (vagy azok sorozatát) valós számmá képez le, így két állapot összehasonlíthatóvá tó válik Lehet választani a célok között Meghatározható, hogy egy adott céltól milyen messze van az ágens A hasznossági függvényt felhasználva hoz döntéseket, t készít tervett Tipikusan akkor, ha több cél van, amik közül választani kell (a célokat hasznosság alapján kiértékeli) Példa: Olajfinomító-vezérlő rendszer, tőzsdei részvényvásárló ágens
Hasznosságorientált ágensek Célorientált ágens, hasznossági függvénnyel Érzékelők Belső állapot Lehetséges cselekmények következményei Hogy néz ki most a világ? Hogyan fog kinézni a világ, ha A cselekvést hajtom végre? Ez milyen hasznossággal jár számomra? Környezet Célok Milyen cselekvéseket kell most végrahajtani? Beavatkozók
Ágens kommunikáció Ágensek egymással való kapcsolatteremtésére FIPA-ACL (Foundation for Intelligent Physical Agents Agent Communication Language) Ágens kommunikációs szabvány Üzenet részei: küldő, címzett(ek), kommunikációs szándék (KÉRÉS, LEKÉRDEZÉS, ), tartalom, válaszcím, nyelv, kapcsolat azonosító,...
Ágens kommunikáció (a JADE környezet alapján)
Ágens környezetek Hogyan illesszük az ágenst környezetéhez? a környezet észlelésekkel látja el az ágenst az ágens cselekvéseket hajt végre a környezetén Ágenstervezés környezet szempontból: a környezet tulajdonságai osztályozás Ágensek értékelése, összehasonlítása: tesztkörnyezet (program)
Ágens környezetek Hozzáférhető/nem hozzáférhető Hozzáférhető: az ágens érzékelő berendezése hozzáférést nyújt környezete teljes állapotához (kényelmes nem kell nyilvántartson semmit a környezet változásának nyomon követéséhez) Meghatározottság Determinisztikus i tik a környezetet előző állapota és az ágens cselekvései egyértelműen meghatározzák ha a környezet hozzáférhető és determinisztikus, akkor az ágens nem kell bizonytalanságot kezeljen Nemdeterminisztikus a cselekvések és az előző állapot mellett van(nak) más faktorok is amik meghatározzák a környezetet.
Ágens környezetek Epizódszerű/nem epizódszerű epizód: észlelések és cselekvések egy jól elkülöníthető sorozata, az egyes epizódok cselekedetei nem függnek közvetlenül az előző epizódok cselekedeteitől epizódszerű: az ágens tapasztalata epizódokra bontható, és a cselekvések minősége kizárólag az adott epizódtól függ (pl. a sakkversenyben minden játék egy epizód) Statikus/dinamikus Statikus: ha a környezet állandó, miközben az ágens gondolkozik a következő cselekvésén Dinamikus: ha a környezet folyamatosan változhat
Ágens környezetek Diszkrét/folytonos környezet Diszkrét vagy folytonos állapotokból, elemekből épül fel a környezet. (táblajáték, autóvezetés) diszkrét létezik az észlelések és cselekvések elkülönülő világosan definiált halmaza pl. sakkjátszma: véges számú lehetséges lépés folytonos pl. autóvezetés: sebesség, az autó helye, a többi jármű helye
Ágens környezetek eltérő környezetek különböző ágensprogramokat igényelnek a legnehezebb a nem hozzáférhető, nem epizódszerű, dinamikus és folytonos eset az osztályba sorolás a környezet és az ágens fogalmának meghatározásától is függ pl.: a póker determinisztikus, ha az ágens nyomon követheti a pakliban levő kártyák sorrendjét pl.: a sakk játszma szinten nem epizódszerű, de verseny szinten minden játszma egy epizód, a sakk epizódszerűvé válik
JADE ágens fejlesztői környezet Tulajdonságai Szabad felhasználású Java-alapú Ágensek felhasználó/fejlesztő által készített Java objektumok, amiket a JADE-be lehet illeszteni http://jade.tilab.com/
JADE ágens fejlesztői környezet Ágens rendszerek: ágens platformok központi szolgáltatásokkal platformok: kapcsolatban lévő ágenseket tartalmaznak fő platform: mindig aktív, beépített ágensekkel (pl.kommunikációra, felhasználói felület kiszolgálására) standard kommunikáció: ACL üzenetekkel
JADE ágens fejlesztői környezet
JADE ágens fejlesztői környezet Minden ágens egy Java objektum import jade.core.agent; public class HelloWorldAgent extends Agent { protected void setup() { System.out.println( Hello World! my name is +getaid().getname()); } }
JADE ágens fejlesztői környezet Ágensek viselkedése One Shot, Cyclic, Complex,... Ágensek kommunikációja Szabványos ACL üzenetek segítségével, g a JADE támogatásával
JADE ágens fejlesztői környezet
JADE ágens fejlesztői környezet Standard ágensek, alapvető feladatok ellátására AMS (Agent Management System) Ágensek futtatása és felügyelete RMA (Remote Monitoring Agent) Ágensek távfelügyelete DF (Directory Facilitator) Ágensek szolgáltatásainak kezelése
DIAGNOSZTIKAI ESETTANULMÁNYOK
Ágens alapú diagnosztikai rendszer a vizsgált rendszer
Ágens alapú diagnosztikai rendszer az alkalmazott eszközök JADE (Java Agent DEvelopment Framework) Multi-Ágens fejlesztői környezet Ágensek szimulációja JESS (Java Expert System Shell) Szabályalapú szakértői keretrendszer FMEA és HAZOP táblák feldolgozása, következtetés MATLAB/Simulink Matematikai modellező programcsomag A folyamatrendszer számítógépes modelljének elkészítése
Ágens alapú diagnosztikai rendszer a megvalósított feladatok Modellváltozók értékeinek nyomon követése folyamatos kapcsolat a modell és a diagnosztikai rendszer között A szimuláció közben keletkező eltérések észlelése és a meghibásodások detektálása okok, következmények felderítése következtetéssel
Ágens alapú diagnosztikai rendszer a folyamatrendszer modellje
Ágens alapú diagnosztikai rendszer a folyamatrendszer modellje
Ágens alapú diagnosztikai rendszer kommunikáció
Real-time process or simulator Real-time Real-time Real-time Agent Agent Agent Real-time agents Agent system Remote Monitoring Agent (GUI) Agent Management System Directory Facilitator ACL messages RMI server (for communication) ACL messages ACL messages Diagnostic Agent Diagnostic Agent Diagnostic Agent Process Agent Process Agent Process Agent Diagnostic agents Based on Analysis ontology (HAZOP, FMEA) Process agents Based on Plant ontology
Ágens alapú diagnosztikai rendszer ágensek
Ágens alapú diagnosztikai rendszer kommunikáció Programozott módon létrehozott hibák Heurisztikus információ kinyerése (HAZOP/FMEA táblák létrehozása) Véletlenszerű meghibásodások A diagnosztikai rendszer tesztelésére Lehetséges meghibásodások Tartályok törése, lyukadása Szelepek eltömődése A tartályokat összekötő cső törése, szivárgása
Ágens alapú diagnosztikai rendszer szimuláció eredménye 45
Process state VA Valve Flow Guideword Possible causes Consequences less (1) <VA><is><fail to open> <Flow to press><less> (2) <TA><is><ruptured> <VB Valve Flow><less> (3) <TA><has><leak> (4) <TA Tank Level><less> TA Tank less (1) <TA><is><ruptured> <VA Valve Flow><less> less Level (2) <TA><has><leak> (3) <VIN><is><fail to open> (4) <VIN Valve Flow><less> CID Description Failure mode VA TA outflow valve fail to open fail to close blocked Possible causes mechanical failure operator closed mechanical failure operator opened maintenance failure corrosion Local <VA Valve Flow><less> <VA Valve Flow><more> <VA Valve Flow><less> Effects System <Flow to press><less> <Feed to press><more> <Feed to press><less> TA Bulk tank TA ruptured corrosion <TA Tank Level><less> <Feed to press><less> vehicle damage operator damage leak corrosion <TA Tank Level><less> <Feed to press><less>
Process state Guideword Possible causes Consequences VA Valve Flow less (1) (2) <VA><is><fail to open> <TA><is><ruptured> <Flow to press><less> <VB Valve Flow><less> (3) <TA><has><leak> (4) <TA Tank Level><less> TA Tank Level less (1) (2) <TA><is><ruptured> <TA><has><leak> <VA Valve Flow><less> (3) <VIN><is><fail to open> (4) <VIN Valve Flow><less> CID Description Failure mode Possible causes Local Effects System VA TA outflow valve fail to open mechanical failure operator closed <VA Valve Flow><less> <Flow to press><less> fail to close mechanical failure operator opened <VA Valve Flow><more> <Feed to press><more> blocked maintenance failure corrosion <VA Valve Flow><less> <Feed to press><less> TA Bulk tank TA ruptured corrosion vehicle damage operator damage <TA Tank Level><less> <Feed to press><less> leak corrosion <TA Tank Level><less> <Feed to press><less>
48
Eljárásokon alapuló diagnosztikai rendszer já áso o a apu ó d ag os t a e ds e a vizsgált rendszer
Eljárásokon alapuló diagnosztikai rendszer já áso o a apu ó d ag os t a e ds e eljárások implementálása
Eljárásokon áso o alapuló apu diagnosztikai a rendszer e eljárások implementálása Sept 5, 2008 KES 2008 51
Eljárásokon áso o alapuló apu diagnosztikai a rendszer e eljárás ágensek Eljárás monitorozó ágens: eljáráshibákról, timeout-ról szóló információk fogadása és kezelése Eljárásokon következtető ágensek: eljárás monitorozó ágensek által szolgáltatott t tt hibák ellenőrzése ő ha komponenshez kapcsolódó, következtetés az FMEA információkon a lehetséges hatások meghatározására (lehetséges következmény lista) Eljárás koordinátor ágensek: mérések felhasználásával a lehetséges hatások igazolása operátor tájékoztatása a hibá(k)ról
Component Description Failure mode Possible causes Local effects System effects VA L1 Valve A Line L1 failed to close failed to open leaking ruptured mechanical failure mechanical failure corrosion corrosion VA Valve Flow MORE VA Valve Flow NO VB Valve Flow LESS TB Tank Inflow LESS L1 Line Flow NONE Feed to press MORE Feed to press LESS Feed to press LESS Feed to press LESS Feed to press LESS