intelligens irányító rendszerek

32
Intelligens irányító rendszerek Adat és tudás, adatábrázolás, tudásábrázolás

Upload: torn

Post on 21-Jan-2016

38 views

Category:

Documents


0 download

DESCRIPTION

Intelligens irányító rendszerek. Adat és tudás, adatábrázolás, tudásábrázolás. Tudásalapú rendszerek. Tudásalapú rendszerek. Mi van a tudásbázisban  feladattól függ Hogyan van benne  következtető géptől is függ Tudásbázis részei: tények (adatok), pl. mért adatok - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Intelligens irányító rendszerek

Intelligens irányító rendszerek

Adat és tudás, adatábrázolás, tudásábrázolás

Page 2: Intelligens irányító rendszerek

Adat/tudás 2

Tudásalapú rendszerek

Tudásbázis

Tudásbázis-fejlesztő

alrendszer

Következtetőgép

Fejlesztői interfész

Felhasználóiinterfész

Tudásmérnök

Felhasználó

Page 3: Intelligens irányító rendszerek

Adat/tudás 3

Mi van a tudásbázisban feladattól függ Hogyan van benne következtető géptől is függ

Tudásbázis részei: tények (adatok), pl. mért adatok összefüggések (adatok között), tények közötti

kapcsolatok

Megfelelő tudásreprezentációs módszer szükséges

feladatok: TB megszervezése, verifikációja, validációja, hatékony következtetés

Tudásalapú rendszerek

Page 4: Intelligens irányító rendszerek

Adat/tudás 4

adat és tudás (hasonlóságok, különbségek, reprezentációs módszerek)

szabályok (összefüggések leírására, leggyakrabban használt tudásreprezentációs módszer)

objektumok (strukturált TB elemek leírására) keretek (rekordok kiterjesztése, standard aktív elemek

az összefüggések leírására) szemantikus hálók (TB szerkezetének leírására, grafikus

eszköz, TB verifikálására használható)

Miről lesz szó?

Page 5: Intelligens irányító rendszerek

Adat/tudás 5

Adat és tudás

intelligens szoftver rendszer „passzív” (futtatható) része : TB

AB, TB szerepe hasonló

különbség: komplexitás AB: sok adat, kevés összefüggés TB: több/kevesebb adat, sok összefüggés

intelligens rendszer feladatainak megoldásához szükséges:

sok információ (adat) tények adatok közötti relációk összefüggések módszerek, algoritmusok információ felhasználásával a

probléma megoldását megkeresik

Page 6: Intelligens irányító rendszerek

Adat/tudás 6

Adatábrázolás közönséges adatbázisban összetartozó adatcsoportok rekordok

adatelem rekord egy mezője

Rekord: szerkezete rögzített pr. deklarációs részében definiált fix típusú mezőket tartalmaz

Példa:nyers_mért_adat record

azonosító: string;típus: character; {‘R’, ‘B’}érték: real if típus = ‘R’

boolean if típus = ‘B’; {típusfüggő!}mérés ideje: integer array[6]; {mp perc óra nap hó év}hibakód: string;end; {nyers_mért_adat}

Page 7: Intelligens irányító rendszerek

Adat/tudás 7

Adatábrázolás közönséges adatbázisban

azonos típusú rekordok rendezett halmaza fájl közönséges DB-ban a fájl attribútumai:

azonosító rekord típus használati mód (read only, read/write) rendezés (soros, indexelt) hossz (fix, változó)

fájlok halmaza DB DB feltöltése/módosítása DB kezelő feladata

Közönséges DB jellemzői (lehetséges tudásreprezentációs módszer szempontjából):

tények fix struktúrájú rekord mezőkben tárolva összefüggések meglehetősen korlátozott adatszerkezet teljesen passzív

Page 8: Intelligens irányító rendszerek

Adat/tudás 8

Adatábrázolás közönséges adatbázisban

Problémák: merev

minden rekordban ugyanolyan sorrendben vannak a mezők a mezők típusa kötött rekordon belüli, rekordok közötti összefüggéseket nem veszi

figyelembe típusellenőrzésen kívül semmiféle feldolgozási előírást

nem biztosítElőnyei: gyors, biztos erőforrás-kezelés egyszerű

Közönséges DB-okkal csak programozással lehet a TB-t megvalósítani!

Page 9: Intelligens irányító rendszerek

Adat/tudás 9

Adatábrázolás relációs adatbázisban

Relációs DB tulajdonságai: összetartozó adatcsoportok rekordok adatelem rekord egy mezője de:

rekord adategységek logikai csoportja default érték, összefüggés adható meg relációk mezők és

mező csoportok között

relációk lehetnek: logikai/aritmetikai típusúak

relációk használhatóak: mezők default és megengedett értékeinek definiálására azonos rekordban levő mezők értékeinek definiálására különböző rekordban vagy különböző típusú rekordokban levő

mezők értékeinek definiálására

Page 10: Intelligens irányító rendszerek

Adat/tudás 10

Adatábrázolás relációs adatbázisban

Példaa) a + b = c művelet és eredményeinek tárolása

add_rekord recorda: real; {op_1}b: real; {op_2}c: real; {eredmény}

end; {add_rekord}reláció: a + b = c

b) fájl_1: fájl_2:mért_adat record nyers_mért_adat record

azonosító: string; azonosító: string;érték: real; érték: long_integer;… …

reláció:ha mért_adat.azonosító = nyers_mért_adat.azonosítóakkor mért_adat.érték := conv(nyers_mért_adat.érték)

Page 11: Intelligens irányító rendszerek

Adat/tudás 11

Adatábrázolás relációs adatbázisban

relációs rekordok halmaza + relációk relációs fájl relációs fájlok halmaza + összekapcsoló relációk relációs DB

Relációs DB jellemzői (lehetséges tudásreprezentációs módszer szempontjából):

tények relációs DB rekordokban tárolva összefüggések relációkkal leírva flexibilisebb, mint a közönséges DB DB manager biztosítja a DB konzisztenciáját, a relációk

teljesítését, a default értéket

a TB elvileg megvalósítható relációs adatbázissal

Probléma: az adatszerkezet még mindig merev

De: megjelenik az aktív elem (összefüggés)

Page 12: Intelligens irányító rendszerek

Adat/tudás 12

Szabályok (rules)

ES és AI eszközökben legelterjedtebb tudásreprezentációs forma

szabályok heurisztikus ismeretek leírása (fekete doboz szerű) validálása nehéz

Ismétlés:

logika (ítéletkonstansok / logikai konstansok, ítéletváltozók / logikai változók, logikai műveletek, formulák)

a b a a b a b a b a b

T T F T T T T

T F F F T F F

F T T F T T F

F F T F F T T

Page 13: Intelligens irányító rendszerek

Adat/tudás 13

Szabályok (rules)

Ismétlés:

logikai műveleti jelek algebrai tulajdonságai: kommutativitás

a b = b a a b = b a asszociativitás

(a b) c = a (b c) (a b) c = a (b c) disztributivitás

a (b c) = (a b) (a c) a (b c) = (a b) (a c) de Morgan azonosságok

(a b) = a b (a b) = a b

Page 14: Intelligens irányító rendszerek

Adat/tudás 14

Szabályok (rules)Ismétlés:

kanonikus alakok (normálformák) diszjunktív normálforma (DNF)

( a b) (c d) konjunktív normálforma (CNF)

( a b) (c d) implikációs normálforma (INF)

klózok (pl. (a b) (c d)) konjunkciója

Ismeretlen / bizonytalan információ leírására: kétértékű logika kiterjesztése:unknown = true false

műveleti táblák kiterjesztése

a ba b F T U

F F T U

T T T T

U U T U

a b

a b F T U

F T T T

T F T U

U U T U

Page 15: Intelligens irányító rendszerek

Adat/tudás 15

Szabályok (rules)

Szabály: logikai kifejezés (formula) / feltételes állításif … then …… …

szintaxis: predikátumok

elemi logikai kifejezések / atomi formulák tartalmazhatnak:

aritmetikai relációkat (, , <, >, , ) kvalitatív / szimbolikus állandókat (alacsony, magas, nyitva, …) (időben) változókat (T, h, sz1, …)

értékük: true / false / unknownpl. p1 = (sz1=nyitva); p2 = (T<100); p3 = (h=magas); p4 = (hiba=„tank overflow”)

értékük a mért jelektől függ, időfüggő predikátumoklogikai értékű jelek

Page 16: Intelligens irányító rendszerek

Adat/tudás 16

Szabályok (rules)

szintaxis: logikai kifejezések (formulák)

atomi formulák, „összetett” formulák tartalmazhatnak:

atomi formulákat (predikátumok, logikai változók, logikai konstansok) logikai műveleteket formulákat

logika (formula építés) szabályai szerint értékük: true / false / unknown

szabályok (speciális szintaxissal rendelkező) logikai kifejezések

feltétel következmény

if feltétel then következmény

feltétel, következmény: logikai kifejezés

Page 17: Intelligens irányító rendszerek

Adat/tudás 17

Szabályok (rules)

Példa: egy egyszerű szabályhalmaz:

Predikátumok:

P = {p1, p2, p3, p4}

Szabályok:

if (p1 and p2) then p3

if (p3 and p4) then p1

Szabályokkal ekvivalens logikai formulák:

(p1 p2) p3

(p3 p4) p1

Page 18: Intelligens irányító rendszerek

Adat/tudás 18

Szabályok (rules)

szabályok szemantikája: igazságtábla

szabályok használata (általában): feltétel ellenőrzése (igaz-e) ha igaz, a szabály alkalmazható (tüzel) alkalmazás: következmény rész teljesítése (igazzá tétele)használati módot befolyásolja a következtetés célja

problémák: szabályok végrehajtási sorrendjétől függően más eredményt kaphatunk nem biztos, hogy ellentmondásmentesek a szabályok lehet olyan eset, amire nincs szabály (nem teljes) sok szabály áttekinthetetlen lehet (mo. strukturált szabályhalmaz /

modulok)

a b

a b F T U

F T T T

T F T U

U U T U

Page 19: Intelligens irányító rendszerek

Adat/tudás 19

Datalog szabályhalmaz

Szabályok normálformája

Tulajdonságai: szabályok predikátumaiban nincs függvényszimbólum nincs negáció, a szabályok alakja:

si : (pi1 … pin) qi

pi1, … , pin, qi: predikátumok biztos (safe) szabályok – értékük véges számú lépéssel

meghatározható

IIR-ben a szabályok majdnem mindig datalog formájúak (ha nem, könnyen átalakíthatóak)

Page 20: Intelligens irányító rendszerek

Adat/tudás 20

Datalog szabályhalmaz

Datalog formára hozás: függvényszimbólumok eltávolítása

pl. sin, exp Taylor sorba fejtés

új változók bevezetése: pl. log T < 0.3, Tl := log T, szabályban: Tl

negáció és diszjunkció eltávolítása kiküszöbölése:

aritmetikai predikátumokpl. (a > b) (a b), (a = b) (a b)

implikációs normálformára hozás: (… …) (… …)

kiküszöbölése: szabályok megtöbbszörözése

pl. si : (pi1 … pin) (qi1 … qim)

helyett: si1 : (pi1 … pin) qi1

si1 : (pi1 … pin) qim

biztos szabályok (CCS-ben véges számábrázolás)

Page 21: Intelligens irányító rendszerek

Adat/tudás 21

Datalog szabályhalmaz szerkezete / függőségi gráfja

analízis / végrehajtás szempontjából fontos tulajdonságok

szerkezete leírható függőségi gráffal – irányított gráf

D = (VD, ED)

csúcshalmaz: VD= P

élek: (pi, pj) ED

ha van olyan szabály, amelynek feltételi része pi-t, következmény része pedig pj-t tartalmazza

élek megcímkézése – szabály azonosítóval

Példa:(p1 p2) p3

(p3 p4) p1

p1

p2

p3

p4

[s1]

[s2][s1]

[s2]

Page 22: Intelligens irányító rendszerek

Adat/tudás 22

Függőségi gráf használata

információt szolgáltat a predikátumok egymástól való függésétől függőségi gráf „belépési” pontjai (nincs bemenő él)

gyökér predikátumok (p2, p4)

ezeknek értéket kell adni irányított körök

az eredmény függhet a végrehajtási sorrendtől (p1, p3)

ha nincs kör – számítási sorrendtől függetlenül ugyanaz a következtetés eredménye

p1

p2

p3

p4

[s1]

[s2][s1]

[s2]

Page 23: Intelligens irányító rendszerek

Adat/tudás 23

figyelem középpontjában álló dolgok, egységek: objektumok osztályozás (közös tulajdonságaik alapján: osztályok) osztályra jellemző attribútumok (közös tulajdonságok) egyedi tulajdonságok eljárások (objektumok zártak – csak az eljárásaikon

keresztül lehet hozzáférni) konkrét objektumok: példányok (létrehozás után önálló életet élnek) osztályhierarchia (szigorú fa struktúra), öröklődés osztályok leírása: program deklarációs részében példányok létrehozása: végrehajtható részben paraméterek megváltoztatása, objektumok működése:

végrehajtható részben

Objektumok

passzív rész

aktív rész

Page 24: Intelligens irányító rendszerek

Adat/tudás 24

class cső

sz: szelep;

T, v: mérőműszer;

procedure szelepnyitás (hibakód)

sz.érték := 1;

… {nyitási tevékenységek}

end; {szelepnyitás}

end; {cső}

Objektumok, példa

vI, TI

szI

eljárás a szelep nyitására

attribútumokkülönböző típusú objektumok

osztálydefiníció feje

osztálydefiníció törzseinicializálási tevékenységekpéldány létrehozásakor elvégzendő feladatok

Page 25: Intelligens irányító rendszerek

Adat/tudás 25

példányok az osztályokból készíthetők megfelelő paraméterezéssel

pl. cső_be := new cső;

cső_ki := new cső; objektumok zártak (önálló életet élnek, tulajdonságaik

eljáráshívásokkal változtathatóak meg)

pl. cső_be.szelepnyitás (hibakód_2); szülő osztály tulajdonságait öröklik az alosztályok

Objektum orientált eszközök fő tulajdonságai, használata

class cső sz: szelep; procedure szelepnyitás (hibakód) … sz.érték := 1; … {nyitási tevékenységek} end; {szelepnyitás}…end; {cső}

cső class műszerezett_cső T,v: mérőműszer; procedure mérés (érték) … … {mérési tevékenységek} end; {mérés}…end; {műszerezett_cső}

Page 26: Intelligens irányító rendszerek

Adat/tudás 26

tudásdarabok speciális, előre definiált tudáselemekkel tudáselemek között szemantikai összefüggések vannak rekordok kiterjesztéseként értelmezhető, standard aktív

elemekkel objektumokhoz hasonló (keret hierarchia, öröklődés,

példányok)

TB leírására alkalmasak

Keretek (frames)

Page 27: Intelligens irányító rendszerek

Adat/tudás 27

keretek részei: rések (slots)

rekordok mezőinek felelnek meg attribútumai:

azonosító (név) típus (flexibilis típusdeklaráció, működés során változhat, nem kötelező

megadni) érték (default: nil (ha nincs típusa), korlátozások/megszorítások: pl.

intervallum, lehetséges érték lista)

démonok (daemons) – beépített eljárások rések értékváltozásaihoz rendelve

szokásos démonok: if-added, if-removed, if-needed, if-changed

pl. mért_adat frame

érték: real or byte;

állapot: byte;

end; {mért_adat}

Keretek (frames)

Page 28: Intelligens irányító rendszerek

Adat/tudás 28

keretek használata: objektumok használatára emlékeztet fő különbség:

eljárások száma (kötött készletből választhatók) eljárások szerepe (megváltoztathatják a rés értékét bármely

keret példányban továbbgyűrűzés) hasonlóság:

keretek definiálása (deklarációs rész) keret hierarchia, öröklődés példányok definiálása (futtatható részben)

pl. T := new mért_adat; létrejön egy üres keret, nil (default) rés-értékekkel

pl. T.érték = 285 rés-érték megváltoztatása

Keretek (frames)

Page 29: Intelligens irányító rendszerek

Adat/tudás 29

keretek jellemzői: passzívelemek: rés értékei (nem merev szerkezetű, nincs

típusmegkötés) aktív elemek: démonok (implicit aktív rész) keret rendszer működése indirekt módon írható le (a keret

példányokban levő démonok határozzák meg)

keret-alapú tudásreprezentáció flexibilis(túl flexibilis, ezért a nyomkövetés nehéz, nehéz átlátni, verifikálni, validálni óvatosan kell programozni!)

Hibrid rendszerek:

keret tudáselemek leírására

szabály heurisztika leírására

pl. GoldWorks (keretek, szabályok), G2 (objektumok, szabályok)

Keretek (frames)

Page 30: Intelligens irányító rendszerek

Adat/tudás 30

grafikus eszköz a TB-ban levő tudáselemek közötti szemantikai összefüggések leírására (TB szerkezete)

irányított gráf csúcsok: objektumoknak, attribútumoknak felelnek meg élek: csúcsok közötti összefüggések / relációk élsúlyok: címkével ellátott élek a tudáselemek között

legáltalánosabb relációk: is_a: alosztály – osztály közötti kapcsolat leírására

pl. class_A is_a class_B instance_of: példány – osztály közötti kapcsolat leírása

pl. object_A instance_of class_A part_of: attribútum – osztály közötti kapcsolat leírása

pl. attribute_A part_of class_A

Szemantikus hálók (semantic nets)

Page 31: Intelligens irányító rendszerek

Adat/tudás 31

szemantikai összefüggések – bináris relációkkal írhatók leclass_A is_a class_B is_a(class_A, class_B)

szemantikus háló – meta-tudás (TB elemeiről szóló tudás) más tudásreprezentációs módszerrel együtt használható (pl. objektum, keret)

TB szerkezetét mutatja meg, használható TB verifikálására, validálására, diagnosztikai célra

Szemantikus hálók (semantic nets)

Teacher

Mike

instance_of

Mike instance_of Teacherinstance_of(Mike, teacher)

room blue

table flower

colourpart_of

table part_of roompart_of(table, room)

flower colour bluecolour(flower, blue)

Person

Teacher

is_a

Teacher is_a Personis_a(Teacher, Person)

Page 32: Intelligens irányító rendszerek

Adat/tudás 32

Szemantikus hálók (semantic nets)

coffee-machine

is_a relation

part_of relation

tube-in tank heater tube-out

tube

valve sensors

vI TI szI

flow-sensor

temperature-sensor

instance_of relation