Reflexív technikák használata a Problémamegoldásban
Reflexív technikák használata a Problémamegoldásban


  1. Bevezetés
  2. Motiváció
  3. Tudásanalízis
  4. Meta architektúrák
  5. Meta architektúrák részletei
  6. Vélemény




Bevezetés

A Tudásmérnök szakirodalom számos problématípust azonosított. Ilyenek pl.: diagnózis, tervezés, megfigyelés, becslés, osztályozás. Ezekre számos problémamegoldó rendszert azonosítottak, melyeket speciális tipusú problémákra lehet alkalmazni. Például: tervezési problémákra: előállítás-és-tesztelés vagy javaslat-kritika-módosítás módszer alkalmazható többek között.

A központi kérdés: melyik problémamegoldó módszer (PSM - Problem Solving Method) a legjobb egy adott típusú problémára? Látni fogjuk, hogy ilyen egyértelműen optimális PSM nem létezik. Általában a megfelelő PSM kiválasztása függ a problémamegoldás céljától, valamint az input (tudás és adat) tulajdonságaitól. Ezért több PSM-t kell kiválasztani, vagy konfigurálni kell őket. Az első esetben a módsereket egy előre definiált halmazból választjuk, míg a második esetben létező módszereket, vagy újonnan kialakított részeket kell új módszerré olvasztani. Ennek ellenére a választott, vagy konfigurált módszer nem feltétlenül éri el az óhajtott célt. Ez esetben iterálni kell a választás és konfigurálás eljárást, felhasználva az előző kísérlet kudarcát. Ezáltal a legmegfelelőbb megoldást kaphatjuk a speciális esetben, melyet "illeszkedő problémamegoldó módszer"-nek nevezünk (flexible problem solving). Ideális esetben ezt az illeszkedő problémamegoldást automatikusan szeretnénk elérni.

Az általunk használt architektúra meta-okozat technikát használ, hogy jellemezze a tudást a következőkből:




Motivácó az illeszkedő problémamegoldáshoz

Két okból nem található meg a legjobb PSM:

A következő kérdések merülnek fel a kiválasztás és konfigurálás módszernél: "Mely PSM-t használjuk?" és "Mi legyen, ha a PSM nem a kért megoldást adja?" Ezen kérdésekre adandó válaszokat a célok vezérlik. Ilyen célok lehetnek:

Az illeszkedő problémamegoldó rendszer célja alegmegfelelőbb megoldás megtalálása. Ilyen megoldás alapjai:

Így az illeszkedő problémamegoldó rendszernek képesnek kell lennie kiválasztani, vagy konfigurálni a legmegfelelőbb PSM-t az adott problémamegoldás célja és inputja függvényében. A cél függvényében szeretnénk finomítani a módszert a tudásbázis, vagy az adat alapján.

Egy ilyen illeszkedő problémamegoldó rendszernek képesnek kell lennie átlátni a módszert és új stratégiákat kialakítania. Például, ha nincs alkalmazható módszer, akkor a rendszernek képesnek kell lennie igazítani a problémán, vagy az adott célon. Például, ha a rendszer nem tudja megoldani a problémát hiányos adat, vagy tudás miatt, akkor képesnek kell lennie információt nyerni úgy, hogy meg tudja oldani a feladatot. Másik példa, ha a rendszer kiválasztja a CHECK diagnosztikai módszert, de kiderül, hogy a módszer túl sok megoldást ad. Ez elkerülhető, ha új célokat veszünk fel a meglevőek mellé, mely alapján az újonnan kiválasztott módszer kevesebb megoldást ad, mint a CHECK. A rendszer felhasználja ezt a stratégiát, és a CHECK-et választja alapul, de erősebb kritériumot használ. Més szavakkal újabb konfigurációs módszert indítunk, mely erősebb minimalitású módszert ad eredményül.




Tudásanalízis illeszkedő problémamegoldáshoz

Három tudástípus

Tevékenységleírás (APPL - Application Description)
Ez a tudás a PSM-k által használt tudás és adat.
A tudás egy része független a céltól. Ezt a tudást mindíg felhasználhatjuk egy probléma megoldásánál. (Diagnózis rendszereknél ez - egy általános modell esetén - a rendszer működése. Pl.: "Ha az elem kimerült az elemlámpa nem működik")
A tudás más része függ a céltól. (Egy megfigyelt tulajdonság - pl.: "a hőmérő a piros tartományban van" - nem áll fenn minden esetben.)

Módszerleírás (METH - Methods Description)
A választást az egyes módszerek között azok input-output tulajdonságai alapján határozzuk meg. A hatékonyságtól most eltekintünk.Egy PSM működése számos komponensre bontható, és ezen komponenseket elemezve egy keret írható a PSM-k működésének elemzésére. A működést 3 fő részre oszthatjuk:

Tudás a problémához illeszkedő megoldásról (FLEXPROB - Flexible ProblemSolving)
Ahhoz, hogy a legjobban illeszkedő módszert tudjuk megtalaálni, ismerni kell a módszereket. Ennek érdekében az egyes módszereket egy általános sémával írjuk le. Például: milyen komponenseket támogatunk egy módszerben, és hogyan lehet ezekből egy komplett rendszert összerakni.
Ismerni kell még a módszerek tulajdonságait, és egymás közötti kapcsolatait. Például: egy módszer megadhatja egy másik módszer megoldásainak halmazát. Ezek a kapcsolatok gyakran a módszereket felépítő részek közötti kapcsolaton alapulnak.
Tudni kell még, mikor használjunk komponenst vagy módszert, és mikor változtassunk a prblémamegoldó stratégián.


Tudástípusok közötti kapcsolatok

APPL és METH közötti kapcsolatok:

Ezek a kapcsolatok fennálnak METH és FLEXPROB között is: FLEXPROB kapcsolatot létesít METH objektumai között. A módszerek, azok részei, és a közöttük levő kapcsolat tulajdonságait írja le, és megmondja, hogy a módszerek részei mely komponens szerepét játszák.


Az architektúra követelményei




Meta architektúrák

Meta objektum architektúrára szükség van, mert ki kell tudni használni a különbségeket tudás és "tudás ezen tudásról" (meta tudás) között. Pl.: METH tudása APPL-ről, FLEXPROB tudása METH-ről.

Ezen technikák kifejlesztéséhez alkalmasak az elsőrendű logikai nyelvek, mivel ezekkel le lehet írni másodrendű logikát úgy, hogy elsőrendű logikával jellemezzük az objektum, és meta-objektum sziteket.

Másik előnye az elsőrendű logikának (FOL - First Order Logic), hogy csak deklaratív tudást közöl, nem procedurálisat, így elérhető, hogy a meta-objektum rendszer követelményei kielégítsük.

meta-meta-szint (FLEXPROB)
(= illeszkedô problémamegoldó tudás)
    - módszerek kiválasztása/konfigurálása/alkalmazása
    - PSM-k sémája
    - komponensek/módszerek közötti kapcsolatok
meta-szint (METH)
(= problémamegoldó módszerek)
    - módszerek definíciói
    - módszer-komponensek definíciói
objektum-szint (APPL)
(= alkalmazás szint)
    - alap tudás
    - adatok

Típusok:




Meta architektúrák részletei

Alkalmazás leíró réteg

APPL reprezentálja az alap adatot (domain data), és tudást. Ezek számos altípusba finomíthatóak tovább. Feltesszük, hogy APPL leírható FOl-lal. Ez a diagnosztikánál valós felvetés, mivel ezen a területen az alkalmazott tudás elsősorban elsőrendű logikával jellemzett.

Kapcsolat a módszerleírással: METH leírja, hogyan használjuk APPL tudás adatait PSM-ben.


Ezen átnevezés segítségével megvalósítható, hogy az APPL-eket cserélhetjük a METH alatt.

Módszer leíró réteg

METH leírja a PSM-k és részeik működését, kapcsolatot teremtve a probléma és a megoldás között az input-output reláció megadásával.

A működés komponensei:

Kapcsolat a FLEXPROB-bal: FLEXPROB leírja, hogyan használhatóak fel METH PSM-jei egy probléma megoldására

PSM-k általános sémája leírja, hogy a PSM-k mely komponensei cserélhetőek, és hogyan növelhető velük a funkcionalitás. Minden séma egy reláció a PSM komponensek - a probléma és a megoldás - között.




Vélemény

A fentiek egy objektum önmagára vonatkozó reflexióját annak részekre bontásával valósítják meg úgy, hogy ezen részek hatást gyakorolnak egymásra (pontosabban a felső szintek határozzák meg az alsók tudásából, azok végrehajtandó tevékenységeit). Ez igen eredményes - egy korlátig (a legfelsőbb réteg tudása örök, azt változtani nem lehet, így a korlát legfeljebb ezen szint korlátja, korábbi korlátot jelenthet az alsóbb szintek nem megfelelő, esetleg hiányos tudása, mert ekkor a felsőbb szintek csak ezen nem megfelelő/hiányos tudást tudják csak felhasználni). A korlátot csak azzal lehet átlépni, ha az egyes szintek a konkrét cselekvéseiket nyomonfigyelve módosítani tudják saját tudásukat. Például úgy, hogy egy nagyon keveset használt tudást (ha nem mond ennek semmi ellen) "elfelejtik", és egy addig még nem ismert, de sokszor előforduló összefüggést "megtanulnak". Mivel az egyes szintek csak a saját viselkedésüket figyelik - melyet a felsőbb szintek irányítanak -, az új tudások csak olyan szintűek lehetnek, mely illik az aktuális szinthez abszatrakciós szintjükben.

A tudásalapú rendszerek eddigi eredményei a saját területükön igen szép eredményeket értek el. Ám még mindíg nem alkalmazhatóak automatikusan (emberi felügyelet nélkül) kényes területeken (pl.: orvoslás), mivel a szakértőktől nyert tudás akármilyen egzakt formában leírva is nem lesz azonos a szakértő valódi tudásával. Értem ez alatt azt, hogy ezt a tudást sok egyéb, nem megfogalmazható módon kiegészítik akár a szakterülethez szorosan nem tartozó tudások, melyek mindenki számára "természetesek", de megfogalmazni nem, vagy nem igen tudjuk (pl.: "Mi a szép?"), valamint a gyakorlat, mely nélkül semmilyen tudás nem lehet teljes. Ezenkívül a konkrét helyzetekben alkalmazható módszerek esetleg eltérnek a "nagykönyvben leírtaktól". Az eltérés általános szempontból nem jelentős, de adott esetben nagyon is fontos lehet ez a különbség (pl.: néha szükség lehet egy nagyon veszélyes sérülést egy olyan beavatkozással késleltetni, melynek mellékhatásaként maradandó károsodás éri a pácienst - konkrét példa: áramütésnél esetleg el kell törni az illető karját egy hosszú bottal ráütve, hogy elengedje az áramforrást). Viszont ezen esetek - kivételek - alkalmazhatóságára nincs vagy nem tudunk általános szabályt mondani.

A megoldás az előbb felsoroltakra lehetne a fent tárgyalt reflexió (a szakértői rendszer visszahatása önmagára), de egy kicsit magasabb szinten. Vagyis a rendszernek - a gyakorlaton keresztül - az emberhez hasonlóan tudnia kell tanulni, a szakértő tudásából (esetleg "tankönyvekből") mely során nem csak szaktárgyi ismereteket kellene tanulnia. Esetleg még jobb lenne - akár az emberi agy működését messzemenően leutánozva (nyilván ehhez annak magas fokú, részletekbe menő ismerete szükséges, ami még igen messze van jelen ismereteim szerint) -, mint egy "csecsemőt" kezdeni tanítani a gépet, melynek hatása kell legyen a környezetére is (azaz ne csak egy Descartes-i gondolkozó agy legyen, hanem valódi "csecsemő"), hogy olyan ismereteket is szerezhessen, melyet semmilyen szakértő vagy tanköyv nem fog tudni elmondani, mert annyira természetes, és nehezen közölhető (nehezebben, mint a szaktárgyi tudás).




Az oldalt készítette: Ondi Attila (att@ludens.elte.hu)

A fentiek Annette ten Teije: Using reflection techiques for flexible problem solving című műve alapján készültek