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

Slides:



Advertisements
Hasonló előadás
Deduktív adatbázisok.
Advertisements

Adatbázisrendszerek elméleti alapjai 2. előadás
ADATBÁZISOK.
Access Adatbáziskezelés
Adatbázis rendszerek I Relációs kalkulus Általános Informatikai Tsz. Dr. Kovács László.
Diagnosztika szabályok felhasználásával, diagnosztikai következtetés Modell alapú diagnosztika diszkrét módszerekkel.
EE/R adatmodell (Extended E/R) 1 Az objektum orientált szemlélet elterjedésével egyre nőtt az igény az olyan SDM (Semantic Data Model) modellek iránt,
Programozás III KOLLEKCIÓK 2..
GoldWorks III.
Determinisztikus programok. Szintaxis: X : Pvalt program változók E : Kifkifejezések B : Lkiflogikai kifejezések C : Utsutasítások.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
© Kozsik Tamás Beágyazott osztályok A blokkstrukturáltság támogatása –Eddig: egymásba ágyazható blokk utasítások Osztálydefiníciók is egymásba.
Adatbázis-kezelés.
Bevezetés a Java programozásba
MI 2003/5 - 1 Tudásábrázolás (tudásreprezentáció) (know- ledge representation). Mondat. Reprezentá- ciós nyelv. Tudás fogalma (filozófia, pszichológia,
A CLIPS keretrendszer CLIPS "C" Language Integration Production System.
az MSAccess programmal
A Java programozási nyelvSoós Sándor 1/17 Java programozási nyelv 4. rész – Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai.
Adatbázis-kezelés ACCESS program:
JSP és JavaBean JavaServer Pages és Java Beans Fabók Zsolt Általános Informatikai Tanszék Miskolci Egyetem.
1.3 Relációk Def. (rendezett pár) (a1 , a2 ) := {{a1} , {a1 , a2 }} .
Reprezentációs függvény. Adva egy adattípus absztrakt és konkrét specifikációja: d a = ( A, F, E a ); d c = ( C, G, E c ); A = {A 0,..., A n };C = {C 0,...,
Web-grafika (VRML) 10. gyakorlat Kereszty Gábor. Script típusok Elemi típusok: szám: egész vagy lebegőpontos – int / float – 1 / 1.1 string: ‘Hello World!’
6. előadás Parametrikus polimorfizmus. Generikus programozás. Az Ada sablonok.
Az UML kiterjesztési lehetőségei
Ficsor Lajos Template-ek CPP8/ 1 Template-ek. Ficsor Lajos Template-ek CPP8/ 2 A template fogalma Kiindulási probléma: tetszőleges típusokon kellene ugyanolyan.
Az adatok kezelésének technológiája. A számítógépes rendszerek alapvető komponensei Hardver Szoftver Adatok adatkezelés: adatok gyűjtése,tárolása, előhívása,
ISMERETALAPÚ RENDSZEREK SZAKÉRTŐ RENDSZEREK
Ismeretalapú rendszerek alaptechnikái I. Szabályalapú rendszerek.
Ismeretalapú rendszerek alaptechnikái
Ismeretalapú rendszerek alaptechnikái I. Szabályalapú rendszerek.
2003. december 18.Gyires Béla Informatikai Nap1 Következtés tudás alapú rendszerekben Bognár Katalin Debreceni Egyetem Informatikai.
Térkép. Mi az adat? Minden információ, amit tárolni kell. Minden információ, amit tárolni kell.  szám  szöveg  dátum  hang  kép, stb.
Programozási nyelvek Páll Boglárka.
A REKORD TIPUS Páll Boglárka. Ismétlés: Feladat Készítsünk kimutatást a XI.B osztály tanulóiról. Minden tanuló esetén a következő adatokat tartjuk nyilván:
Adatszerkezetek 1. előadás
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Hernyák Zoltán Programozási Nyelvek II.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Hernyák Zoltán Programozási Nyelvek II.
11. tétel Adatbázis táblái közti kapcsolatok optimalizálása
Adatbázis kezelés. Az adatbázis tágabb értelemben egy olyan adathalmaz, amelynek elemei – egy meghatározott tulajdonságuk alapján – összetartozónak tekinthetők.
Adatbázis kezelés.
Adatbázis-kezelés.
Adatbázis-kezelés Probléma: az excel kezelhetetlen túl sok adat esetén
Egyenesvonalú (lineáris) adatszerkezetek
Objektum orientált programozás
Adatbázis alapfogalmak
MI 2003/6 - 1 Elsőrendű predikátumkalkulus (elsőrendű logika) - alapvető különbség a kijelentéslogikához képest: alaphalmaz. Objektumok, relációk, tulajdonságok,
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
Algoritmizálás, adatmodellezés
1 Objektum orientált programozás Az objektumok és az osztályok – példányosodás Nagy Szilvia.
 Adatbázis:  Valamilyen szempont szerint rendszerezett adathalmaz.  Adatbázis kezelés:  Adatok tárolása  Műveletek végzése az adatbázison; (Adatok.
Kiterjesztések szemantikája: Szemantikai tartomány : Adatoknak, vagy értékeknek egy nem üres halmazát szemantikai tartománynak nevezzük. Jelölése: D. Egy.
Algoritmusok és adatszerkezetek
PÁRHUZAMOS ARCHITEKTÚRÁK – 13 INFORMÁCIÓFELDOLGOZÓ HÁLÓZATOK TUDÁS ALAPÚ MODELLEZÉSE Németh Gábor.
Fájlszervezés Adatbázisok tervezése, megvalósítása és menedzselése.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás I. 3. gyakorlat.
Félcsoport (semigroup) = ({s},{ *: s s  s [infix]}. semigroup is a type specification = sorts: s oprs: *: s s  s [infix] eqns: m 1, m 2, m 3  s (m 1.
Adatbázisszintű adatmodellek
Programozás III JPA.
Programozási nyelvek csoportosítása.
Kovács Gergely Péter Bevezetés
Hernyák Zoltán Programozási Nyelvek II.
A CLIPS keretrendszer
Relációs adatmodell, normálformák
1.3 Relációk Def. (rendezett pár) (a1 , a2) := {{a1} , {a1 , a2 }} .
Adatbázis-kezelés 2. Relációs adatbázisok.
Bevezetés Tematika Számonkérés Irodalom
ÍTÉLETKALKULUS (NULLADRENDŰ LOGIKA)
Előadás másolata:

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

Adat/tudás 2 Tudásalapú 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

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ó?

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

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}

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

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ít Elő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!

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

Adat/tudás 10 Adatábrázolás relációs adatbázisban Példa a)a + b = c művelet és eredményeinek tárolása add_rekord record a: 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 recordnyers_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)

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)

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) ab aaa  ba  ba  ba  b TTFTTTT TFFFTFF FTTFTTF FFTFFTT

Adat/tudás 13 Szabályok (rules) Ismétlés: logikai műveleti jelek algebrai tulajdonságai: kommutativitás a  b = b  aa  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

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  b a  b  FTU FFTU TTTT UUTU a  b a  b  FTU FTTT TFTU UUTU

Adat/tudás 15 Szabályok (rules) Szabály: logikai kifejezés (formula) / feltételes állítás if … 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, sz 1, …) értékük: true / false / unknown pl. p 1 = (sz 1 =nyitva); p 2 = (T<100); p 3 = (h=magas); p 4 = (hiba=„tank overflow”) értékük a mért jelektől függ, időfüggő predikátumok logikai értékű jelek

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

Adat/tudás 17 Szabályok (rules) Példa: egy egyszerű szabályhalmaz: Predikátumok: P = {p 1, p 2, p 3, p 4 } Szabályok: if (p 1 and p 2 ) then p 3 if (p 3 and p 4 ) then p 1 Szabályokkal ekvivalens logikai formulák: (p 1  p 2 )  p 3 (p 3  p 4 )  p 1

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  FTU FTTT TFTU UUTU

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: s i : (p i1  …  p in )  q i p i1, …, p in, q i : 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)

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, T l := log T, szabályban: T l negáció és diszjunkció eltávolítása  kiküszöbölése: aritmetikai predikátumok pl.  (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. s i : (p i1  …  p in )  (q i1  …  q im ) helyett: s i1 : (p i1  …  p in )  q i1 … s i1 : (p i1  …  p in )  q im biztos szabályok (CCS-ben véges számábrázolás)

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 = (V D, E D ) csúcshalmaz: V D = P élek: (p i, p j )  E D ha van olyan szabály, amelynek feltételi része p i -t, következmény része pedig p j -t tartalmazza élek megcímkézése – szabály azonosítóval Példa: (p 1  p 2 )  p 3 (p 3  p 4 )  p 1

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 (p 2, p 4 ) ezeknek értéket kell adni irányított körök az eredmény függhet a végrehajtási sorrendtől (p 1, p 3 ) ha nincs kör – számítási sorrendtől függetlenül ugyanaz a következtetés eredménye

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

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 eljárás a szelep nyitására attribútumok különböző típusú objektumok osztálydefiníció feje osztálydefiníció törzse inicializálási tevékenységek példány létrehozásakor elvégzendő feladatok

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ő}

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)

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)

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)

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)

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)

Adat/tudás 31 szemantikai összefüggések – bináris relációkkal írhatók le class_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)

Adat/tudás 32 Szemantikus hálók (semantic nets)