MODEL-K

 

1. Motiváció

Gyors prototipuskészítés és a modellezés kombinálása

Tudásalapú rendszerek fejlesztésénél megfigyelhető egy eltolódás a hagyományos gyors prototípuskészítéstől a modell alapú megközelítés felé. A modellkészítés szükségességét a tudásbázis újrahasznosíthatósága és a magyarázatadás indokolja.

A modell alapú probléma-megoldás két kategóriára oszlik:

Az elsőre jó példa a KADS: Szigorúan elválasztja a tudásanalízist és a megvalósítást. Az első fázis végeredménye 4 szintű modell a szaktudásról, melynek megvalósításához ‘teljesen szétválasztott tervezésű modell’ kell. A modellnek nincs köze az implementációhoz, így nehéz a változásokat követni.

A második kategóriába a probléma-specifikus módszerek esnek (SALT, MORE), melyeket nehéz adaptálni más problémákra.

Szükség van egy keretrendszerre, amivel közelíthetünk egy problémára, majd azt tovább finomíthatjuk működőképességig. A módszer nem új, a hagyományos programkészítésben is használják.

A MODEL-K nyelvet KADS modellek tervezésére és működőképessé tételére használják. A MODEL-K, hasonlóan az OMOS-hoz BABYLON nyelvre fordít.

Stratégia és meta-következtetés

A meta-következtetés szükségességét hamar felismerték az MI kutatásokban. Stratégiai vezérlés, hatáskörök meghatározása, zsákutcák keresése, magyarázatadás tipikus meta-tevékenységek.

A KADS bevezette a stratégiai réteget, hogy megbirkózzon az ilyen tipusú tudással, de nincs teljesen tisztázva a réteg jelentése, gyakran keveredik a feladat-réteggel (task-layer). Mivel a stratégiai réteg dinamikusan felügyeli, irányítja és ha lehet, javítja az alacsonyabb rétegeket, így a rétegek kapcsolatban kell hogy álljanak az implementációjukkal. Ez a kapcsolat mechanikusan garantálja az egységességet a tárgyrendszer és annak modellje közt. Ez szükséges is, mivel minden fejlesztés az alacsonyabb szinteken felfelé reflektál, és a stratégiai szint minden módosítása a modellen lefelé reflektál.

A MODEL-K nyelv ezt garantálja, mivel a működő rendszert a modellből készíti.

MODEL-K rendszer

 

Fogalmi modell

 

műveleti finomítás

 

probléma-megoldás

vezérlő szint

vezérlő struktúra: task

 

vezérlő állítások

 

task-jegyzék

következtetési szint

következtetési strukt.: tudásforrás, meta osztály

 

tudásforrás-tartalmak

 

aktuális meta-osztály környezet

kapcsolat

domain szint

relációk, fogalmak

 

példák

   

fogalmi modell

A műveleti finomítás folyamán a fogalmak kiegészülnek példákkal, a relációk n-esekkel, a tudásforrások tartalmakkal, pl. futtatható kóddal, és a taskok a vezérlő utasításokkal.

A fogalmi modellkészítés és a műveleti finomítás bár szintaktikailag szétválasztott, tetszőlegesen összefonódhat a tudáskészítés alatt.

A probléma megoldás statikus leírása mellett a MODEL-K biztosítja a rendszer dinamikus állapotának megjelenítését a probléma megoldás alatt. Tartalmaz egy listát, melyen a felfüggesztett taskok találhatók és azok a meta-osztályok, melyek változóit a tudásforrások megváltoztatták.

A MODEL-K-t jelentősen befolyásolta a KADS tudásszerző módszere, de elválasztja a fogalmak definícióit a példáktól, stb. és a KADS-nek nincs preciz szintakszisa és nem működőképes.

Az irodai elrendezés problémája(példa)

Időigényes feladat megtalálni az optimális elrendezését az irodai dolgozóknak, mert figyelembe kell venni a projektek közti kommunikációt, a személyiségeket, stb.

Tipikus beosztási probléma, ahol az egyik objektum-halmaz a dolgozók, a másik a szobák és találni kell egy beosztást, ami megfelel az igényeknek.

Megoldás: golobális csatolás, szűrés: jó, ha nincs túlspecifikálva.

Felhasználható hotel szobafoglalásra, kórházi ágykiosztásra, órarend készítésére, stb.

A fogalmi modell

A vezérlési szint

A vezérlési szinten a tudásforrások közti vezérlés a feladatok szemszögéből történik. A feladatok részfeladatokká és tudásforrásokká bomlanak (subtask).

Következtetési szint

Az alapvető következtető lépést a metaosztályokon műveletet végző tudásforrások határozzák meg.

Metaosztályok: A metaosztályok a fogalmak szerepét írják le, ’absztrahálnak’

MODEL-K-ban a metaosztályok domain fogalmak struktúrája, pl. set (előre definiált)

Tudás-források: alapvető műveletek, következtetések metaosztályokon. Van deklarációs és definiciós része.

Meghatároz input, output metaosztályt, formális kapcsolatokat. A tudásforrások domain-függetlenek, a formális kapcsolatok kapcsolják őket a domain-specifikus relációkhoz. A tudásforrás definiciója gyakran implementáció-függő, kitolódik a finomítási részhez.

Domain csatlakozás

A KADS általános következtetési vázat épít, ami különféle domain-ekhez kapcsolódik. A MODEL-K nyelvet biztosít ehhez. Ahhoz, hogy összehangoljuk a metaosztályok fogalmait és a domain szint objektumait, eljárásokat készítünk. Pl.: kémiai terveket figyelő rendszer metaosztályai megegyeznek a szenzorok adataival a domain szinten (dinamikus frissités). A tudásforrások formális kapcsolatai állandó (statikus) összeköttetésben állnak a domain specifikus relációkkal.

Domain szint

Meghatározza a domain ontologiáját (?). A MODEL-K-ban a domain specifikus információ alaptipusokban van meghatározva (string, int, felhasználó által definiált felsorolt tipusok, fogalmak és példák, általános és konkrét kapcsolatok). Együttesen domain struktúra.

Felsorolt tipus: diszkrét halmaz rendezéssel

Fogalmak: objekutm orientált, egymásba ágyazott tipusos struktúrák

Kapcsolatok: objektumok függőségi viszonya, a fogalmi modellben a relációk aritással (komponensek száma), tipusokkal és tulajdonságokkal (reflexiv, tranzitív) van deklarálva.

Generikus kapcsolat: kapcsolat-osztály

Műveleti finomítás

A fogalmi modell még nem működik, a megvalósítást a műveleti finomítás teszi.

Vezérlő szint

A vezérlő struktúrában minden task tudásforrásokból és altaskokból áll. A vezérlést köztük a vezérlő-állítás határozza meg, ami lehet szekvenciális, elágazásos, ciklusos.

Következtetési szint

Tudásforrás-tartalmak: A KADS tudásforrásainak összetettsége változatos, egyszerű elérés, vagy teszt-függvénytől a teljes problémamegoldásig minden lehet. Gyakran nem lehet működőképessé tenni hatékonyságvesztés nélkül. Ezért alkalmaznak BABYLON nyelvet.

Kapcsolat a domain-nel

A metaosztályoknak és a formális relációknak van alapértelmezett kapcsolata, ami statikus. A formális relációk a domain relációkhoz argumentum pozíció szerinti illeszkedés alapján kacsolódnak alapértelmezés szerint.

Domain szint

Fogalmak példái: konkrét objektumokat írnak le. Minden alapértelmezést örökölnek a fogalmakból.

Relációk: n-esek halmaza,

Tudás hiányának meghatározása: ASSUMABLE megszünteti a zárt világ feltételezést

Switching representation: (??????????????????????)

Prototípuskészítés támogatása

A tudásforrásokat a vezérlő szintről hívjuk. A prototípuskészítés alatt hasznos lehet, ha más tudásforrásokat tudunk kézzel aktiválni. MODEL-K ezt engedélyezi

A stratégiai réteg: metakövetkeztetés MODEL-K-ban

A stratégiai réteg bizonytalanul van a KADS-ban leírva. A stratégiai döntések általában vezérlési feladatokkal törődnek, de sokkal több mindenre lehet használni: megoldhatóság és bonyolultság kérdése, erőforrásütemezés, egyszerűsítés, zsákutca-észlelés. Ezek a feladatok az alattuk lévő rendszert felügyelik, ezért meta-aktivitások.

Bár ezeknek a meta-aktivitások domain-je egy másik tudásalapú rendszer, leírható általános probléma megoldás szemszögéből, mint a diagnosztizálás, kiértékelés vagy javítás. Ezért a stratégiai rétegre úgy tekintünk, mint a meta-szint problémamegoldójára, azaz használhatjuk ugyanazt a modellező rendszert. A vezérlő és a következtető szint leírja a probléma megoldási módot, mint pl. ellenőrizni a probléma megoldhatóságát. A domain szint magába foglalja a három alacsonyabb szintet a felügyelethez és gyakran meta-tudást.

Minthogy a meta-rendszer felügyeli a három alacsonyabb szintet futás közben, így konzisztens marad a modellel. Szükségünk van kapcsolatra a két rendszer közt.

A MODEL-K biztosítja ezt, nem tudjuk úgy megváltoztatni az egyiket, hogy a másik ne változzon.

Most két rendszerünk van: a meta-rendszer megvalósítja a stretégiai réteget, a tárgy-rendszer pedig az alacsonyabb rétegeket. A szétválasztás előnye, hogy a meta-rendszert és a fogalmi modelljét általánosra lehet készíteni, és felhasználható más rendszerekben is.

Tervezési döntések

Mivel MODEL-K-t használunk mindkét rendszerhez, így kevés tervezési döntés marad nyitva a keretrendszerben. Az egységességre és a két rendszer közti váltásra kell koncentrálni.

Egységesség a tárgyrendszer és modellje közt

Problémamegoldás alatt az tárgyrendszer dinamikusan változik. Az egységesség megőrzésének érdekében ezeket folyamatosan követni kell a modellben, és viszont. Ugyanez a probléma merül fel, a tárgymodell és a következtetési szint szinkronizálásakor, mert a meta-osztályok tartalmazhatnak információkat a tárgymodellről, melyet a tárgyrendszer folyamatosan változtat.

Hogy az egységességet fenntartsuk, három megoldás kínálkozik. A lusta megoldás, hogy közvetlenül a hozzáférés előtt frissítjük a tárgy-rendszert, a buzgó megoldás, hogy minden változást azonnal frissítünk, vagy akkor frissítünk, ha váltunk a két rendszer közt. A MODEL-K a harmadik megoldást választotta, hogy csökkentse a frissítési műveletek számát.

Paradigma váltás

Mivel két rendszerünk van, így döntenünk kell, hogy mikor, melyik legyen aktív, és mikor adja át a vezérlést a másiknak. Különböző lehetőségek vannak:

Meta-szimuláció: A meta-rendszernél van minden vezérlés. Ha szükséges, szimulálja a tárgyrendszert. Ez több tudást igényel a tárgyrendszerről, ami van a tudás-szinten.

Asszinkron kommunikáció: A meta- és a tárgyrendszer párhuzamosan fut. Ilyenkor megtörténhet, hogy a meta-rendszer eredményei elavultak leszek a tárgyrendszer működése miatt.

Krízis menedzsment: A tárgyrendszer működik, amíg krízist nem tapasztal. Ekkor átadja a működést a meta-rendszernek, ami módosíthatja a tárgyrendszert, majd működésbe hozza. Ebben az esetben a tárgyrendszernek képesnek kell lenni a zsákutcák és krízisek érzékelésére, és a meta-rendszer nem képes megelőzni a krízist.

Reflect-and-act: Minden elemi következtető lépés után a tárgyrendszer átadja a vezérlést a meta-rendszernek, ami módosíthatja a tárgyrendszert, majd visszaadja a vezérlést. ???. A vezérlés a meta-rendszerben eseményvezérelt, ami nem teljesen felel meg a KADS taszk-struktúrájának. probléma még, hogy a vezérlés többször változik, mint szükséges lenne.

Altaszk menedzsment: A meta-rendszer aktiválhatja a saját taszkjait. valamint a tárgyrendszer taszkjait. Ez megfelel a KADS felfogásának. Hátránya, hogy csak egy meta-rendszer vezérlelheti a tárgyrendszert.

Egy nagy meta-rendszer helyett kicsi, speciális rendszereket szeretnénk a tárgyrendszer vezérlésére, melyek egy elemi meta-feladattal foglalkoznak, és egy könyvtárban összegyüjthetjük őket.

Külső váltás

A problémára létezik még megoldás. bevezetünk egy külső ütemezőt, ami változtatja a vezérlést a meta-specialisták közt és a tárgyrendszer közt. Ez azt jelenti, hogy minden taszkot meg tud hívni, akár a meta-, akár a tárgyrendszerben van. A taszt-szintje a meta-specialistának csak lokális taszkokat tartalmaznak, nem módosulnak, mikor más meta-rendszerekkel dolgoznak együtt. Csak az egyedi ütemező szint írható felül.

Egy tárgyrendszer van, egy modellel, amit az összes meta-komponens elér. Az egyedi ütemezőket egy általános ütemező váltja fel.

Mivel az ütemező lehet általános, így nem hivatkozik direkt a tárgyrendszer taszkjaira. Ezért használ formális taszkneveket, amiket kapcsolni lehet konkrét taszkokhoz, mikor az ütemező csatlakozik a tárgyrendszerhez.

Összefoglalás

MODEL-K nyelv alkalmas a KADS tudás-szint modelljének ábrázolására és finomítására. Mivel a célrendszer használ fogalmi modellt, ez a nyelv lehetőséget biztosít prototípus készítésre majdnem a tudásszinten. Mivel közel van a tudásszinthez könnyű megérteni mind profiknak, mind kezdőkent. De nem csak a tudásmérnökök és a felhasználóknak hasznos. Tudás-alapú meta-rendszerek figyelik, kiértékelik és fejlesztik a tárgyrendszert automatikusan. A MODEL-K beépített fogalmi modellje meghatároz egy felületet a meta-rétegnek, és elérhetőséget biztosít az alatta lévő rendszereknek. Mivel a meta-rendszert is probléma-megoldó rendszernek tekintünk, ezért használhatjuk a MODEL-K-t mindkét renszerre.

A KADS tudás-szint modellek nagy könyvtárát szeretné kiépíteni, a MODEL-K pedíg a megfelelő működő modelleket gyüjti.

A stratégiai szint megvalósításával a MODEL-K modellező és működtető keretrendszert biztosít.