Informatika | Mesterséges intelligencia » Sántáné Tóth Edit - A Level5 Object hibrid keretalapú rendszer, oktatási segédlet

Alapadatok

Év, oldalszám:2005, 7 oldal

Nyelv:magyar

Letöltések száma:37

Feltöltve:2009. július 20.

Méret:110 KB

Intézmény:
-

Megjegyzés:

Csatolmány:-

Letöltés PDF-ben:Kérlek jelentkezz be!



Értékelések

Nincs még értékelés. Legyél Te az első!


Tartalmi kivonat

Sántáné-Tóth Edit: A LEVEL5 OBJECT (Release 3.6 - 361) hibrid keretalapú rendszer rövid ismertetése Források: 1. LEVEL5 OBJECT for Microsoft Windows – Reference Guide, Release 36, Information Builders, 1995 2. LEVEL5 OBJECT for Microsoft Windows – Getting Started Guide, Information Builders, 1995 3. Sántáné-Tóth E: LEVEL5 OBJECT Kisszótár – Oktatási segédlet, KKMF, 1998 Általános ismertetés – a LEVEL5 OBJECT (L5O) fejlesztırendszer jellemzıi – – – – – − – – ismeretalapú rendszerek fejlesztı- és futtató környezete – Windows 3.1 alatt fejlesztve; hibrid keretalapú eszköz : keretalapú, valamint cél- és adatvezérelt szabályalapú ismeretreprezentáció támogatása, objektumorientált eszközökkel megvalósítva, beépített bizonytalanságkezelési lehetıséggel; PRL (Production Rule Language) magas szintő metódus- és szabályleíró nyelv; kényelmesen használható felhasználói felület, megfelelı opciók

biztosításával; a külsı szoftver környezethez jó kapcsolható: 60 helyi és távoli adatbázishoz − és szerverhez külsı programokhoz (mindkét irányú hívhatósággal), szövegfájlokhoz, adatbázisokhoz – dBaseII és FOCUS: közvetlen, a többi adatbázishoz (kliens/szerver) SQL-hozzáféréssel; integrált eszközkészlet: OOP (Objektum Orientál Programozási stílus), GUI (Graphical User Interface) komplex logikai lehetıségek „business rules” (cél- és adatvezérelt szabályok) révén a célhierarchiát leíró ÁGENDA és eseményvezérelt eljáráskezelés: WHEN NEEDED METHODS, WHEN CHENGED METHODS; teljes körő, integrált tesztelési lehetıségek; hatékony futás (tárban és idıben), valamint külön futtató rendszer (AGENT) biztosítása. Megjegyzés: a Level5 Object 1998-as továbbfejlesztett változata a Visual Rule Studio (VRS), amely Windows NT és Windows 95 alapú fejlesztıeszköz a Visual Basic Integrated Develompment Environment (IDE)

környezethez (www.RuleMachinescom) VRS kézikönyv: „Visual Rule Studio Developers’s Guide – When Rules get Down To Business”, RuleMachines, April 1998. Egy LEVEL5 OBJECT alkalmazás a LEVEL5 OBJECT fejlesztırendszere segítségével elkészített ismeretalapú rendszer, amelynek ismeretbázisa az adott tárgyterület, valamint a felhasználói felület leírását és ezek vezérlését egyaránt tartalmazza. Az ismeretbázisban osztályok és példányaik, azok attribútumai, az attribútumok tulajdonságát és viselkedését leíró deklarációk és metódusok, továbbá (adatvezérelt) démonszabályok és (célvezérelt) szabályok alkotják; futás közben adatbázisokhoz, egyéb külsı programokhoz és fájlokhoz lehet hozzáférni. Az ismeretbázisban az adott tárgyterület szerkezetét megadó objektumok (öröklıdést is biztosító, relációkkal összekapcsolt osztályok és példányaik) mellett hangsúlyos szerepe van a szakértı heurisztikus ismereteit

megfogalmazó cél- és adatvezérelt „üzleti” szabályoknak (business rules). Egy alkalmazás a fejlesztırendszer ismeretbázisába (KNowledge Base) betöltetı (OPEN), és onnan futtatható (RUN). A rendszer kiegészítı komponense egy fejlesztési szolgáltatásokat nem tartalmazó futtató rendszer (AGENS). A fejlesztırendszerbıl minden ismeretbázis (.KNB kiterjesztéssel) PRL-nyelvő forrásfájllá (PRL kiterjesztéssel) konvertálható Egy L5O alkalmazás szerkezete: felhasználói osztályok globális változók, felhasználóiosztály-példányok, rendszerosztály-példányok, esetleg a célhierarchiát megadó ágenda, démonszabály-csoportok és célvezérelt szabály-csoportok. Javasolt problématípusok: diagnosztizáló, monitorozó, objektum- és tevékenységtervezı. Fontosabb alkalmazási területek: − Kiskereskedelem: RAA (Retail Advertising Advisor: Kiskereskedıi Hirdetési Tanácsadó), ld. Tutorial − Gyártás: folyamatvezérlés sörfızésnél.

− Kutatás: integrált áramkörök hibadiagnózisa (hibaelemzés). − Hadiipar: fegyveres hadosztály elektromos berendezéseinek diagnosztikai célú elemzése. Tengeren szolgálatot teljesítı technikai személyzet támogatása a berendezések és részeik leírását tartalmazó adatbázis alapján. − Szerviz szolgáltatás: egy nagymérető szervezet által használt „off-the-shelf” alkalmazás, amely kereskedelmi termékek szoftver-technológiai kérdéseinek megválaszolására szolgáló hel-desk rendszer (oktatási céllal is). − Hajózás (kereskedelmi tengerészet): Intelligens szerzıdés karbantartó rendszer a hajóipar számára díjszabást és árszabást számol ki, figyelembe véve az feladó helyet, a rendeltetési állomást és magát az árut. − Orvosi alkalmazás: Intelligens betegnyilvántartás számlázó rendszer, amely a különbözı helyzetekben tájékoztat a biztosítási kártyák felhasználásáról stb. − Biztosítás: Új

alkalmazottak számára segíti a tartalékalap (legalacsonyabb érték/ár) kiszámítását és kiértékelését – testi sérülések alapján történı biztosításoknál. Sántáné-Tóth E: A L5O rövid ismertetése – Oktatási segédlet, 2001. 1 A LEVEL5 OBJECT rendszer részletes ismertetése 1. A L5O által támogatott paradigmák Az L5O következtetı rendszerének komponensei A L5O rendszer egy hibrid keretalapú eszköz, amely a keretalapú reprezentáció mellett támogatja a szabályalapú reprezentáció cél- és adatvezérelt változatait. A L5O rendszer rendelkezik bizonytalanságkezelési lehetıséggel Magas szintő szabály- és metódus-leíró nyelve a Production Rule Language (PRL); a terminológia – keret : osztály (CLASS) és példányai (INSTANCEs), – célvezérelt szabály : szabály (RULE), – adatvezérelt szabály: démon szabály (DEMON). Az L5O következtetı rendszerének (REASONING SYSTEM) két fı komponense: a célvezérelt

következtetı gép és az adatvezérelt következtetı gép. További, másodlagos komponensek a metódus-kezelı és a parancs-feldolgozó gépek 2. Egy L5O-alkalmazás részei Kitüntetett szerepő rendszerosztály-példányok Egy LEVEL5 OBJECT alkalmazás a következı részekbıl áll: USER CLASSES : a felhasználó által definiált osztályok the Domain : a globális változókat tartalmazó (DOMAIN) rendszerosztály egyetlen (!) példánya INSTANCEs : a felhasználói (USER-), majd a rendszer-osztályok (SYSTEM CLASSes) példányai AGENDA : az alkalmazás célvezérelt végrehajtásához a célhierarchia leírását tartalmazó ágenda DEMON GROUPs : adatvezérelt szabályok, röviden démonszabályok csoportjai RULE GROUPs : célvezérelt szabályok, röviden szabályok csoportjai Egy L5O alkalmazás nem más, mint a L5O keretrendszer ismeretbázisa (Knowledge Base: knb), kiegészítve természetesen a futtatáshoz szükséges rendszer-komponensekkel, elsısorban a

következtetı gépekkel. (L5O alkalmazáson gyakran csak magát az ismeretbázist értjük.) Az ismeretbázisban a felhasználói- és a rendszer-osztályok és példányaik, esetlegesen a célhierarchiát kijelölı ágenda, valamint az adat- és a cél-vezérelt szabálycsoportok találhatók. A munkamemória (CONTEXT) a konzultáció (vagyis az eddigi futás) során meghatározott − és még érvényes – attribútum-érték párokat tartalmazza, bizonyossági tényezıjüket megadó CF-értékükkel és egyéb leírójukkal együtt. Megjegyzés: a L5O heurisztikus jellegő bizonytalanságkezelésének bizonyossági tényezıje (Confidencia Factor, CF) 0 és 100 közötti értéket vehet fel; az alapértelmezés a teljes bizonyosságot kifejezı 100. Kitüntetett szerepő rendszer-osztályok, melyek egyetlen példánya minden alkalmazásba beleépül: the Domain: a kitüntetett szerepő DOMAIN rendszer-osztály egyetlen példánya, melynek attribútumai az alkalmazás globális

változói. (Természetesen csak akkor épül be az alkalmazásba, ha annak vannak globális változói!) A globális változók a PRL nyelvő kódban ATTRIBUTE deklarációval kezdıdnek. Hivatkozásukkor elég az attribútum nevét megadni, nem kell azt az objektum nevével minısíteni (pl. „max hossz” a „max hossz OF DOMAIN” helyett) the Application: a kitüntetett szerepő APPLICATION rendszer-osztály egyetlen példánya, melynek attribútum-értékeit az alkalmazás fejlesztıje adja meg; ezen értékek futási idıben módosulhatnak. Az attribútumok a számításokhoz és a felhasználói párbeszédhez szükséges alapértelmezéseket, ill. a rendszer futásához szükséges vezérlési információkat adják meg: − alapértelmezések: numerikus pontosság (NUMERIC PRECISION), CF-küszöbszám (THRESHOLD, értéke alapértelmezésben 50), „nem-tudom” felhasználói válasz fogadásának jelzése (UNKNOWNS FAIL), attribútumtípusonként a felhasználói

adatbekérı kérdések alapértelmezett változatai (DEFAULT QUERIES); − vezérlési információk: az alkalmazás indítása – a célvezérelt következtetı gép indítása az ágenda céljainak kidolgozására CYCLE), az alkalmazás leállítása (STOP), kilépés az alkalmazásból (EXIT), az alkalmazás újraindítása (RESTART), az induló képernyı (TITLE DISPLAY) és az eredményközlı képernyı (CONCLUSION DISPLAY) logikai neve, az ágendából történı célkiválasztás jelzıje (GOAL SELECT), a következtetı gép mőködésének jelzıje (REASONING ON), a töréspont-kezelés beállításának jelzıje (IGNORE BREAKPOINT), az adatvezérelt szabály-kiválasztási stratégia (DEMON STRATEGY, melynek lehetséges értékei: fire first, fire all, fire later, fire none); the Session: kitüntetett szerepő SESSION rendszer-osztály egyetlen példánya, melynek attribútumai: − a futási állapot jelzıje (STATE), az alkalmazás gyökér- vagy láncolt voltának

jelzıje (ORIGIN), továbbá − az aktuálisan kidolgozás alatt álló attribútum (CURRENT ATTRIBUTE), az aktuális cél/vagy adatvezérelt szabály (CURRENT RULE/DEMON), az aktuális cél-elem (CURRENT GOAL), az aktuális képernyı (CURRENT DISPLAY), az aktuális metódus (CURRENT METHOD) referenciája. Megjegyzés: minden alkalmazás láncoltan életre tud hívni olyan (hozzá)láncolt alkalmazást, mellyel úgy kommunikál, hogy megosztja (SHARED) vele bizonyos globális változóit. 2 Sántáné-Tóth E: A LEVEL5 OBJECT rövid ismertetése, 2003. 3. Az L5O osztályai és példányai Egy L5O objektum (CLASS/INSTANCE) szerkezete Osztály (CLASS): az adott tárgyterület azonos tulajdonságú (struktúrájú és viselkedéső) objektumainak általános leírása. Az osztály tulajdonságait leíró attribútumoknak nincs értéke (egy osztály üres struktúra, vö. adatbázis fogalmi struktúra) A tulajdonságok örökölhetık (INHERITANCE) más (szülı-)osztályoktól;

öröklıdéssel az osztályok hierarchikus kapcsolatba rendezhetık. Megjegyzés: egy osztály tulajdonságainak deklarációi (PROPERTY DECLALATIONS) a következık lehetnek: − SINGLE: az osztálynak egyetlen példánya van, − EXTERNAL: egy vagy több szülı osztály adja a struktúrát és a viselkedést, − INHERITS: külsı forrásból öröklıdik a struktúra és a viselkedés leírása. Példány (INSTANCE): egy adott osztály specifikus, konkrét elıfordulása, amelyben az attribútumoknak már lehetnek értékei (vö. egy rekord egy adatbázistáblából). Egy példány szerkezete és viselkedésének elıírásai ugyanazok, mint osztályáé Minden osztálynak legalább egy példánnyal kell rendelkezzék – ugyanis egy konkrét feladat végrehajtása mindig a példányok szintjén történik. Futásidıben egy osztályhoz a MAKE paranccsal lehet új példány létrehozni; példány törlésére a FORGET parancs szolgál. Egy L5O objektum (osztály és példány)

szerkezete Minden osztálynak (és minden egyes példányának) egyedi neve van, szerkezetük pedig megegyezik. Tulajdonságaikat attribútumok írják le, melyet specifikus tulajdonság-deklarációk egészíthetnek ki (pl. az osztálynak egyetlen példánya van) Az attribútumok nevük és típusuk mellett a (futásidei) viselkedésüket leíró kezelési módok, esetleg hozzájuk rendelt metódusok, továbbá – rájuk hivatkozó – (adatvezérelt) démonszabályok és (célvezérelt) szabályok alkotják. Az osztályok és példányaik szerkezetét az alábbi ábrák mutatják (a jobboldali ábra a baloldali, eredeti ábra magyar nyelvő változata): NÉV NAME CLASS PROPERTY DECLARATIONS OSZTÁLY TULAJDONSÁG DEKLARÁCIÓK NÉV NAME ATTRIBÚTUM ATTRIBUTES TÍPUS TYPE FACETS INSTANCE METHODS Attribute RULES DEMONS Value KEZELÉSI MÓDOK PÉLDÁNY METÓDUSOK Attribútum CÉLVEZ. ADATVEZ. SZABÁLYOK SZABÁLYOK Érték Osztályhierarchia, öröklıdés Az

öröklıdés olyan eljárás, amelynek révén egy osztály, az ún. szülı-osztály saját struktúráját, valamint viselkedését átörökíti további osztály(ok)ra - vagyis egy vagy több gyermek-osztályra. Az öröklıdés folyamata a statikus struktúrát megadó attribútumokon kívül érinti a futás közbeni viselkedést meghatározó kezelési módokat és metódusokat; hatása még az attribútumok értékeit meghatározó szabályokra és az osztály attribútumait figyelı démonszabályokra is kiterjed. Az öröklıdést az osztály deklarációjában kell megadni (INHERITS), megnevezve a szülı-osztály(oka)t. Többszörös öröklıdés (multiple inheritance) is megengedett. Öröklıdés révén az osztályok hierarchikus kapcsolatba rendezhetık Sántáné-Tóth E: A LEVEL5 OBJECT rövid ismertetése, 2003. 3 4. Egy L5O-attribútum leírása: név, típus, kezelési módok, metódusok Egy osztály attribútumainak összessége meghatározza az osztály

jellemzıit, a benne tárolható információ típusát és annak kezelési módját. Minden attribútum rendelkezik névvel, attribútum-típussal, értékkel, rendelkezhet a futásidei kezelési mód elıírásával, valamint az attribútum értékének lekérdezésekor vagy változásakor azonnal végrehajtandó WHEN NEEDED vagy WHEN CHANGED metódussal (csak egyikkel). (Emlékeztetı: csak a példányok attribútumainak van értéke, az osztályokénak nincs!) Példa attribútum-definícióra és hivatkozásra: − A „Vállalkozás” osztály „javaslat” attribútumának definíciója a PRL nyelvő kódban WITH kulcsszóval kezdıdik (ha a „javaslat” egy globális változó, akkor a kódban ez „ATTRIBUTE javaslat” formában jelenik meg!). − Az attribútumra való hivatkozás formái: „javaslat OF Vállalkozás” vagy „Vállalkozás.javaslat” (ha a „javaslat” egy globális változó, akkor hivatkozása egyszerően csak „javaslat”). Egy L5O-attribútum

leírása (az irodalomban egy attribútum t és jellemzıit egy olyan rekesz tartalmazza, melynek neve megegyezik az attribútum nevével): − név (NAME): betővel kezdıdı karaktersorozat, mely tagolható szóközökkel is PRL nyelvő definíciója WITH kulcsszóval kezdıdik: WITH < attribútum-név> − típus (TYPE): az attribútum típusa, mely a következık egyike (zárójelben a típus rendszerbeli rövid neve található): ATTRIBUTE REFERENCE: egy attribútumra való hivatkozás típusa COLOR (Col): szín: RGB COMPOUND (C): egy szimbolikus érték INSTANCE REFERENCE (Iref): egy osztály-példány hivatkozsa INTERVAL (I): idı-intervallum MULTICOMPOUND (MC): egyszerre több szimbolikus érték NUMERIC (N): szám PICTURE (Pic): kép RECTANGLE (R): téglalap SIMPLE (S): logikai (TRUE/FALSE) érték STRING (Str): alfanumerikus karaktersorozat TIME (T): idıpont/dátum Megjegyzés: a szimbolikus értékő COMPOUND és MULTICOMPOUND típusok esetén az attribútum

lehetséges értékeit is meg kell adni az objektumszerkesztıben (az ADD COMPOUND ITEM szolgáltatással). − kezelési módok (FACETS): kezelési módok a következtetı gép és a képernyı vezérlı számára (zárójelben a rövid név): 1. attribútum értékre: INIT Value (I): kezdeti érték REINIT Value ( R ): újraindítási érték DEFAULT Value (D): alapértelmezés SHARED (SH): osztott felhasználás – csak globális attribútumra! 2. felhasználó válaszára („promt”): QUERY FROM (Q): az attribútum értékét a felhasználótól bekérı kérdés képernyıje TEXT (T): az attribútum értékére rákérdezı kérdı mondat, mely az alapértelmezett kérdés (a DEFAULT QUERIES OF APPLICATION) szövegét helyettesíti EXPAND (X): az attribútummal kapcsolatos magyarázatadás (az EXPAND! gombbal) UNKNOWN PROMT (U): a felhasználó „nem tudom, ismeretlen” (UNKNOWN) válaszadása megengedett CONFIDENCE PROMT ( C ): a felhasználó az attribútum értéke mellett

annak CF-értékét is megadhatja. 3. következtetésre: SEARCH ORDER (S): az attribútum keresési sorrendjének meghatározása (részletesebben ld. alább) EXHAUSTIVE (E): a kimerítı keresés, vagyis az attribútumot következményrészében tartalmazó célvezérelt szabálycsoport (RULE GROUP) minden szabálya kidolgozásának elıírása BREAKPOINT (B): töréspont elhelyezése az attribútumra, melynek hatására az érték módosításakor leáll a következtet gép (nyomkövetési funkció) − metódus: az attribútum által elszenvedett esemény lekezelését végzı eljárás (részletesen ld. alább): a. WHEN NEEDED METHOD: az attribútum értékének lekérésekor meghívott eljárás (esemény: az attribútum értékére való hivatkozás) b. WHEN CHANGED METHOD: az attribútum értékének megváltozása elıtt meghívott eljárás (esemény: az attribútum értékének megváltozása) 4 Sántáné-Tóth E: A LEVEL5 OBJECT rövid ismertetése, 2003. 5. Az

attribútumok keresési sorrend (SEARCH ORDER) deklarációja Minden attribútumhoz hozzátartozik egy keresési sorrend elıírás, amely az attribútum értékének végrehajtásidei lelıhelyeit, forrásait írja elı. Az attribútumonként megadott forrásokat az ott megadott sorrendben keresi fel a futtató rendszer Az alapértelmezett sorrend szerint az attribútumok értékét rendre a következı forrásokból próbálja meghatározni a rendszer: CONTEXT: kontextus vagy munkamemória, WHEN NEEDED: az attribútumhoz rendelt WHEN NEEDED METHOD RULES: következményrészükben az attribútumra hivatkozó, annak értéket adó célvezérelt szabály-csoport (RULE GROUP) QUERY: a felhasználó számra feltett kérdésre adott válasz DEFAULT: az attribútum értékének alapértelmezése (DEFAULT, ha az meg van adva). Minden egyes attribútumra tetszıleges keresési sorrend adható. Az érték meghatározásakor az érintett metódusokból és szabályokból a rendszer egy (maximum

20 mélységő) egymásban ágyazott hívási láncot is felépíthet! 6. Az L5O célvezérelt szabályai (RULEs) A célvezérelt következtetés A L5O célvezérelt szabályai (RULEs): olyan IF-THEN szabályok, melyek következményrészükben egy attribútumnak adnak értéket. Azok a célvezérelt szabályok, melyek következményrészükben ugyanarra az attribútumra hivatkoznak, csoportot (RULE GROUP) alkotnak – megkönnyítve ezzel a célvezérelt következtetı gép számára az alternatív szabályok kezelését. Egy L5O cél (GOAL): egy olyan feltételezés (valamely attribútum értékét meghatározó értékadó utasítás), melyet a rendszer a célvezérelt következtetı géppel be akar bizonyítani. Az attribútumhoz ekkor a keresési sorrend (SERACH ORDER) deklarációban deklarálni kell a célvezérelt végrehajtást (RULE). Amennyiben a teljes alkalmazás célvezérelt, akkor a kitőzött célt vagy több cél hierarchikus leírását az ágenda (AGENDA) komponens

tartalmazza. Egy attribútum értékének meghatározására a program bármely pontjáról is behívható a célvezérelt következtetı gép: „PURSUE <attribútum név>”. A célvezérelt következtés (hátraláncolás, backward-chaining inferencing): a célvezérelt következtetı gép által végzett olyan következtetı eljárás, amely valamely kívánt vagy feltételezett célt próbál meg igazolni – a rendszer által ismert állításokra visszavezetve a bizonyítást. (Az igazolandó cél itt mindig egy attribútum értékének meghatározása.) A célvezérelt következtetı gép az igazoláshoz felkeresi azt a szabály-csoportot (RULE GROUP), melyben a szabályok következményrészében az adott attribútum szerepel. Ez után megpróbálja a cél igazolását visszavezetni egy (pontosabban a legnagyobb CF-értékő, több ilyen esetén az elsı) szabály feltételrészében található részcélok igazolására. Ennek során felkeresi a munkamemória (CONTEXT)

aktuális bejegyzéseit vagy egy másik szabály-csoportot, és így tovább, míg csak sikerrel nem jár. Sikertelen próbálkozás esetén (tehát ha zsákutcába jut) visszalépést alkalmaz, és az utolsó szabálycsoport által biztosított alternatív lehetıségeket rendre bejárva tovább próbálkozik a következıszabály végrehajtásával Ha már minden lehetıséget kimerített és munkája sikertelen volt, akkor a célt nem tudta igazolni (ekkor az attribútum nem kap értéket). Ha egy részcélt megtestesítı attribútum kezelési módja elıírja a kimerítı keresést (EXHAUSTIVE), az adott szabálycsoport szabályait mind felkeresi, és a legnagyobb bizonyossági tényezıjő eredményt adó szabályt választja ki végrehajtásra; amennyiben az egyik 100 CF-értékő eredményt adott, a következtetı gép már nem próbálkozik tovább. A menet közben érintett attribútumokra a keresési sorrend elıírásokat érvényesíti, egymásban ágyazott hívási

láncot építve. 7. Az L5O adatvezérelt, démon-szabályai (DEMONs) Az adatvezérelt következtetés A L5O adatvezérelt szabályai (DEMONs): olyan IF-THEN szabályok, melyeket a feltételrészükben szereplı valamely attribútum értékének megváltozásakor az adatvezérelt következtetı gép munkába vesz. Azok a démonszabályok, amelyek IF utáni feltételrésze ugyanazokra az attribútumokra hivatkozik, csoportot (DEMON GROUP) alkotnak – megkönnyítve ezzel az adatvezérelt következtetı gép számára a feltételrészek kiértékelését. Az adatvezérelt következtetés (elıreláncolás, Data-driven inferencing vagy Forward-chaining inferencing): az adatvezérelt következtetı gép által végzett olyan következtetı eljárás, amely a munkamemóriából (CONTEXT) új információt, valamilyen célt próbál meg kidolgozni (konstruktív módon). Minden attribútum-érték megváltozásakor az adatvezérelt következtetı gép automatikusan ellenırzi, hogy van-e

olyan démonszabály-csoport (DEMON GROUP), amelynek feltételrészében szerepel ez az attribútum. Ha van, akkor e csoport démonszabályai feltételrészében szereplı attribútum-érték párokból álló mintákat rendre összehasonlítja, illeszti a munkamemória aktuális bejegyzéseivel. Egy démonszabály tüzelıképes, ha feltételrészének ily módon történı kiértékelése sikeres. A tüzelıképes démonszabályok közül az adatvezérelt következtetı gép az éppen érvényben lévı démon-stratégia (DEMON STATEGY) szerint kiválasztja az elsıt (FIRE FIRST) vagy mind (FIRE ALL), majd végrehajtja a kiválasztott démonszabály(ok) következményrészében elıírt akciókat. A szabálykiválasztás történhet azonnal, de az el is halasztható (FIRE LATER) A szabálykiválasztás akár le is állítható (FIRE NONE). Sántáné-Tóth E: A LEVEL5 OBJECT rövid ismertetése, 2003. 5 8. A L5O démon-stratégiái (adatvezérelt szabály-kiválasztási

stratégiái) A végrehajtás egy adott pillanatában tüzelıképes (vagyis végrehajtásra alkalmas) démonszabály-csoport (DEMON GROUP) elemei közül az adatvezérelt következtetı gép a mindenkor érvényes démon-stratégia szerint választja ki azt, hogy melyiket hajtsa végre. A démon-stratégiát az APPLICATION rendszerosztály DEMON STRATEGY nevő attribútumának aktuális értéke vezérli; ez az érték futás közben módosítható, így a démon stratégia is. A L5O démon stratégiái (vagyis a DEMON STRATIGY OF APPLICATION lehetséges értékei): FIRE FIRST : a démon-csoport elsı tüzelıképes démonszabályát választja ki (ez az alapértelmezés) FIRE ALL : a démon-csoport mindegyik tüzelıképes démonszabályát rendre ki fogja választani FIRE LATER : elhalasztja a tüzelıképes démonszabályok kiválasztása és végrehajtása mindaddig, amíg az attribútum nem kap más értéket FIRE NONE : kikapcsolja a démon-stratégia mőködését; amíg ez az

érték marad, addig nincs démonszabály-végrehajtás. 9. A L5O metódusai (WHEN CHANGED, WHEN NEEDED), azok eseményvezérelt végrehajtása Egy L5O metódus egy olyan eljárás, mely egy adott attribútumhoz van rendelve, és amely az attribútum által elszenvedett valamely esemény hatására azonnal végrehajtásra kerül. A L5O kétféle metódust kezel: WHEN NEEDED METHOD: az attribútum értékének lekérdezésekor kerül végrehajtásra, WHEN CHANGED METHOD: az attribútum értékének megváltozásakor kerül végrehajtásra. Megjegyzés: amennyiben az attribútum értékére való hivatkozáskor mindig az éppen aktuális végrehajtási szituációban kiszámított attribútum-értékre van szükség, és az alkalmazásban van az adott attribútum értékét megadó szabály (RULE), akkor ez megoldható az attribútum WHEN NEEDED metódusában szereplı szabály-behívó (PURSUE <attribútum név>) paranccsal. 10. Bizonytalanságkezelés a L5O-ben A L5O – az M.1

célvezérelt szabályalapú keretrendszerhez hasonlóan – MYCIN-szerő, heurisztikus bizonytalanságkezelı lehetıséget biztosít. Mindkét rendszerben CF jelzi az attribútumokhoz és szabályokhoz rendelhetı bizonyossági tényezıt, melyet a L5O „Confidence Factor”-nak, az M.1 „Certainty Factor”-nak nevez A továbbiakban külön foglalkozunk a bizonytalanság reprezentációjával, a szabályok kidolgozása közben alkalmazott kombinációs elvekkel és a következtetések kezelésével; a két rendszer közötti eltéréseket az egyes részek végén jelezzük. A. Reprezentáció: A L5O rendszerben minden attribútumhoz és minden szabályhoz tartozik egy bizonyossági tényezı (CF: Confidence Factor). A szabály bizonyossági tényezıjét a szabály következményrészéhez csatoljuk. A CF értéke egy -2 és +100 közötti egész szám, a következı értelmezéssel: 1. ha értéke –2, akkor az attribútum értéke ismeretlen (UNKNOWN), vagyis egyetlen

forrásból sem tudjuk azt meghatározni 2. ha értéke –1, akkor az attribútum értéke nem definiált (UNDETERMINED), vagyis a munkamemóriában még nem szerepel, mivel a konzultáció során még nem kapott értéket 3. ha értéke 0 és 100 közötti, akkor ez az adott attribútum értékben vagy szabályban való megbírhatóságunkat fejezi ki: CF=0 esetén egyáltalán nem bízhatunk, míg CF=100 esetében teljesen megbízhatunk az értékben, ill. a szabályban (alapértelmezés: 100). A bizalom mértékének küszöbszáma alapértelmezésben 50 (ez a „THRESHOLD OF APPLICATION” attribútum értéke, amely futás közben változtatható!) A küszöbszám alatti CF-értékő eredményeket a rendszer ignorálja. Eltérés: az M.1 csak a 3 esetet engedi meg, és a küszöbszám 20, mely nem módosítható (bele van építve a rendszerbe) B. Kombináció: A L5O a szabályok feltételrészének kiértékelésekor az eredı CF-érték: AND esetén a minimális, OR esetén a

maximális, NOT esetén pedig a nem negált kifejezés 100-ból kivont érték. Eltérés nincs: az M.1 kombinációs szabályok ugyanezek C.Következtetés: C.1 Szabály-alkalmazás: a következményrész eredı bizonyossági tényezıje: Cffeltételrész* CFszabály /100. Ha ez, vagy a szabály feltételrészének eredı CF-értéke kisebb a küszöbszámnál, akkor a szabály meghiúsul. Eltérés nincs: az M.1 rendszerben a szabály-alkalmazásnál kombinációs szabályok ugyanezek C.2 Független források esete: ha a következményrészben szereplı attribútum-érték párra korábban már történt kiszámítás (a munkamemóriában már van egy ilyen bejegyzés), akkor a nagyobb CF-értékő eredmény az érvényes. Eltérés: az M.1 az eredı CF-értéket a (100 * cfkorábbi + 100 cfúj - cfkorábbi cfúj) / 100 képlettel számolja ki. 6 Sántáné-Tóth E: A LEVEL5 OBJECT rövid ismertetése, 2003. Illusztráció: egy nyomtató-kiválasztási feladat PRL nyelvő

kódjának részlete Forrás: Sántáné-Tóth E. Ismeretalapú technológia, szakértı rendszerek”, In: Futó I (szerk): Mesterséges Intelligencia, 12 Fejezet, Aula Kiadó Rt., 1999, 582-664 old se b e ssé g k é p n y o m ta tá s n y o m ta tó m in ı sé g k a ra k te rk ész let is-a is -a . . . ár se b e sség k ic si k é p n y o m ta tá s nem m in ı sé g k a ra k te rk é sz let ig en nem le v é l v á z la t (d r a ft) k ö ze l-le v é l fix v á lto z ta th a tó a la c s o n y közepes m agas is-a d a isy w h eel ty p e 1 p rin ter k ic si közepes nagy la ser p r in te r se be sség ig e n m in ı sé g le v é l k a ra k te rk é sz let fix ár le v é l v á z la t k ö z e l-le v é l v á lto z ta th a tó ár a la c s o n y CLASS Nyomtató WITH sebesség COMPOUND kicsi közepes nagy TEXT „Legyen képnyomtatás?” SEARCH ORDER CONTEXT QUERY WITH képnyomtatás COMPOUND igen nem TEXT „Legyen képnyomtatás?” SEARCH ORDER

CONTEXT QUERY WITH minıség MULTICOMPOUND levél vázlat közel levél TEXT „Milyen a minıség?” SEARCH ORDER CONTEXT QUERY WITH kar-készlet COMPOUND fix változtatható TEXT „Milyen a kar-készlet?” SEARCH ORDER CONTEXT QUERY WITH ár alacsony közepes magas TEXT „Milyen legyen az ár?” WITH ajánlott nyomtató Daisy Wheel Type1 Dot Matrix Type1 Dual Dot Matrix Laser Printer Dot Matrix Type2 Daisy Wheel Type2 SEARCH ORDER RULES ATTRIBUTE ajánlat COMPOUND nagy k ép n y o m ta t á s m agas INSTANCE Nyomtató1 ISA Nyomtató WITH sebesség IS kicsi WITH képnyomtatás IS nem WITH minıség IS levél vázlat CF FALSE közel levél CF FALSE WITH kar-készlet IS fix WITH ár IS magas WITH ajánlott nyomtató IS Daisy Wheel Type1 INSTANCE Nyomtató2 IS Nyomtató WITH sebesség IS nagy WITH képnyomtatás IS igen WITH minıség IS levél, vázlat, közel levél WITH kar-készlet IS változtatható WITH ár IS magas WITH ajánlott nyomtató IS Laser Printer !RULE GROUP:

ajánlott nyomtató OF Nyomtató RULE 1 IF sebesség OF Nyomtató IS kicsi AND képnyomtatás OF Nyomtató IS nem AND minıség OF Nyomtató IS levél AND kar-készlet OF Nyomtató IS fix AND ár OF Nyomtató IS alacsony THEN ajánlott nyomtató IS Daisy Wheel Type1 RULE 2 IF sebesség OF Nyomtató IS nagy AND képnyomtatás OF Nyomtató IS igen AND kar.készlet OF Nyomtató IS változtatható AND ár OF Nyomtató IS magas THEN ajánlott nyomtató IS Laser Printer Sántáné-Tóth E: A LEVEL5 OBJECT rövid ismertetése, 2003. 7