Sposób w jaki wiedzę prezentujemy decyduje potem o tym jaką wiedzę możemy wyprowadzić z systemu, jakich metod analizy możemy użyć.

Podobne dokumenty
W 1909 roku, Charles S. Peirce proponuje graficzny zapis węzłów i krawędzi o nazwie "egzystencjalne wykresy", który nazwał "logiką przyszłości".

3 grudnia Sieć Semantyczna

Reguły i fakty zapisz za pomocą perceptów. Metodą wnioskowania w tył, sprawdzić czy mój komputer jest wyposażony w procesor PII.

Semantic Web. Grzegorz Olędzki. prezentacja w ramach seminarium Protokoły komunikacyjne. luty 2005

Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009

RDF Schema (schematy RDF)

Przetwarzanie języka naturalnego (NLP)

Internet Semantyczny. Wstęp do OWL 2

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Web 3.0 Sieć Pełna Znaczeń (Semantic Web) Perspektywy dla branży motoryzacyjnej i finansowej. Przyjęcie branżowe EurotaxGlass s Polska 10 luty 2012

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Paweł Kurzawa, Delfina Kongo

Diagramy klas. dr Jarosław Skaruz

Percepcja bodźców istnienia Perceptami (PER) nazywamy reakcję na istnienia, co jest wynikiem percepcji

Dodatkowe możliwości RDF. Seminarium magisterskie Paweł Chrząszczewski

Rozszerzenie funkcjonalności systemów wiki w oparciu o wtyczki i Prolog

Technologie Sieci Semantycznych

Modelowanie danych, projektowanie systemu informatycznego

Rysunek 1: Przykłady graficznej prezentacji klas.

Systemy ekspertowe : program PCShell

Internet Semantyczny. Schematy RDF i wnioskowanie

Semantic Web Internet Semantyczny

Ontologie Wiedza semantyczna Semantic Web Inżynieria ontologii. Zarządzanie wiedzą. Wykład Sieci semantyczne. Joanna Kołodziejczyk.

Systemy eksperowe. Agnieszka Nowak Brzezińska Wykład I

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Programowanie obiektowe - 1.

Systemy ekspertowe. Krzysztof Patan

Elementy kognitywistyki III: Modele i architektury poznawcze

Wykład I. Wprowadzenie do baz danych

Wykład 4 Ramy, wektory wiedzy, drzewa decyzyjne

1 Projektowanie systemu informatycznego

Świat rzeczywisty i jego model

TECHNOLOGIE OBIEKTOWE. Wykład 3

Tomasz Grześ. Systemy zarządzania treścią

Projektowanie logiki aplikacji

Modelowanie i Programowanie Obiektowe

Programowanie obiektowe

Zasady Nazewnictwa. Dokumentów XML Strona 1 z 9

UML w Visual Studio. Michał Ciećwierz

Bazy danych TERMINOLOGIA

Analiza i projektowanie aplikacji Java

Życie za granicą Studia

Technologie i usługi internetowe cz. 2

Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04

Inżynieria oprogramowania II

O-MaSE Organization-based Multiagent System Engineering. MiASI2, TWO2,

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,

Język UML w modelowaniu systemów informatycznych

Modelowanie diagramów klas w języku UML. Łukasz Gorzel @stud.umk.pl 7 marca 2014

Podstawy Programowania Obiektowego

Ontologie, czyli o inteligentnych danych

Kraków, 14 marca 2013 r.

Sprawozdanie z laboratorium 2: Modeling knowledge with Resource Description Framework (RDF)

Zaawansowane programowanie obiektowe - wykład 5

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Dziedziczenie. Tomasz Borzyszkowski

1. CZYM JEST SERIALIZACJA

Programowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r.

Diagramy klas. WYKŁAD Piotr Ciskowski

Programowanie Obiektowe i C++

Internet Semantyczny. Linked Open Data

*Grafomania z. Neo4j. Praktyczne wprowadzenie do grafowej bazy danych.

Programowanie obiektowe

problem w określonym kontekście siły istotę jego rozwiązania

Reprezentacja wiedzy i wnioskowanie

Praca w sieci z serwerem

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska

Logika rozmyta typu 2

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Programowanie i projektowanie obiektowe

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski

WIEDZA METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. Adrian Horzyk. Akademia Górniczo-Hutnicza

Dziedziczenie. Zadanie 1

Platformy programistyczne:.net i Java L ABORATORIUM 7,8: HACKATHON - JTTT

Bazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji.

Języki i paradygmaty programowania. I. Wprowadzenie

KATEDRA INFORMATYKI STOSOWANEJ PŁ ANALIZA I PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH

Technologie obiektowe. Plan. Ewolucja technik wytwarzania oprogramowania

Język RDF. Mikołaj Morzy Agnieszka Ławrynowicz. Instytut Informatyki Poznań, rok akademicki 2013/2014

Programowanie w CLIPS

Wprowadzenie do systemów informacyjnych

Przykładowy dokument XML

Jeśli X jest przestrzenią o nieskończonej liczbie elementów:

SZTUCZNA INTELIGENCJA

Systemy ekspertowe. Wnioskowanie w systemach regułowych. Część piąta. Autor Roman Simiński.

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton

Wstęp do programowania. Drzewa. Piotr Chrząstowski-Wachtel

Internet Semantyczny i Logika II

Język UML w modelowaniu systemów informatycznych

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1

Modelowanie obiektowe

Systemy ekspertowe. System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro

Transkrypt:

Sposób w jaki wiedzę prezentujemy decyduje potem o tym jaką wiedzę możemy wyprowadzić z systemu, jakich metod analizy możemy użyć. Najpopularniejsze są: reguły IF-THEN, sieci semantyczne, ramy i scenariusze, tablice decyzyjne, rachunek predykatów rachunek perceptów. Każda z wybranych metod powinna zapewniać mechanizmy wnioskowania.

Wiedza a priori comes before knowledge perceived through senses considered to be universally true a posteriori knowledge knowledge verifiable through the senses may not always be reliable procedural knowledge knowing how to do something declarative knowledge knowing that something is true or false tacit knowledge knowledge not easily expressed by language

Conventional Programming Knowledge-Based Systems Algorithms + Data Structures = Programs Knowledge + Inference = Expert System N. Wirth

Meta- Knowledge Information Data Noise

Reguły produkcji Sieci semantyczne Ramy i scenariusze Logika: rachunek predykatów Rachunek perceptów Metody reprezentacji wiedzy niepewnej Tablice decyzyjne i zbiory przybliżone

Najczęściej stosowana metoda reprezentacji wiedzy w systemach wspomagania decyzji

Prosta i łatwa w interpretacji metoda Prosta implementacja

Prosta implementacja jest często nieefektywna. Niektóre typy wiedzy nie są łatwo wyrażalne w takich regułach. Duże zbiory reguł stają się trudne do zarządzania.

Systemy takie zawierają zarówno opisy faktów jak i reguły decyzyjne. Cechy systemu faktograficznego: użytkownik musi komunikować się z systemem w sposób dla niego naturalny we wszystkich trybach użytkowania użytkownik ma prawo żądać objaśnień działania systemu, a nie tylko odpowiedzi na pytania system musi posiadać mechanizmy pozwalające w łatwy sposób rozszerzać i polepszać bazę faktów. Ten proces jest prowadzony interakcyjnie przy udziale specjalistów z danej dziedziny system powinien dostarczać zgromadzone i skodyfikowane fakty niezbędne specjalistą z danej dziedziny

Ważne jest stworzenie spójnej metody reprezentacji danych (faktów) i wiedzy. Aby on był spójny: fakty i wiedza są zapisywane za pomocą interpretów logicznych. Interpret logiczny - ciąg zdań wyrażonych tekstem lub mową stanowiących lingwistyczną interpretację faktów i celów. Pewnym typem interpretów logicznych są percepty. Proces poznawania to percepcja. Perceptem nazywać będziemy odzwierciedlenie przez człowieka, zjawisk, przedmiotów i procesów. Percepcja powstaje w wyniku działania bodźców.

1. (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) ) (obudowa:komputer:x1,duża) (procesor:komputer:x1,pii). 2. (prędkość:komputer:x1,szybki) ) (przeznaczenie:komputer:x1,gry) (cena:komputer:x1,drogi). 3. (pamięć:komputer:x1,dużo) (cecha:komputer:x1,uniwersalny). 4. (nagrywarka:komputer:x1,nie) (przeznaczenie:komputer:x1,gry) 5. (nagrywarka:komputer:x1,tak) (cena:komputer:x1,drogi) Fakty: 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo)

mój komputer jest wyposażony w procesor PII (procesor:komputer:mój,pii)

Najpierw szukamy celu w faktach, jeśli cel jest jednym z faktów to koniec wnioskowania. Jeśli cel nie jest faktem w bazie wiedzy to szukamy w konkluzjach reguł. Jeśli znajdziemy regułę, której konkluzja jest naszym celem wnioskowania, to teraz musimy udowodnić wszystkie jej przesłanki. Dla każdej przesłanki dowód przeprowadzamy tak jak dla celu głównego (więc najpierw szukamy w faktach, a dopiero gdy nie znajdziemy szukamy w konkluzjach reguł).

(procesor:komputer:mój,pii) Krok 1: Szukamy w faktach 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) Wynik: Brak celu w faktach

(procesor:komputer:mój,pii) Krok 2: Szukamy w konkluzjach reguł (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) ) (obudowa:komputer:x1,duża) (procesor:komputer:x1,pii). (prędkość:komputer:x1,szybki) ) (przeznaczenie:komputer:x1,gry) (cena:komputer:x1,drogi). (pamięć:komputer:x1,dużo) (cecha:komputer:x1,uniwersalny). (nagrywarka:komputer:x1,nie) (przeznaczenie:komputer:x1,gry) (nagrywarka:komputer:x1,tak) (cena:komputer:x1,drogi) Wynik: Cel jest konkluzją reguły 1.

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) Czy znany jest fakt: (cena:komputer:mój,drogi) 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) NIE

(cena:komputer:mój,drogi) Krok 1: Szukamy w faktach 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) Wynik: Brak celu w faktach

(cena:komputer:mój,drogi) Krok 2: Szukamy w konkluzjach reguł (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) ) (obudowa:komputer:x1,duża) (procesor:komputer:x1,pii). (prędkość:komputer:x1,szybki) ) (przeznaczenie:komputer:x1,gry) (cena:komputer:x1,drogi). (pamięć:komputer:x1,dużo) (cecha:komputer:x1,uniwersalny). (nagrywarka:komputer:x1,nie) (przeznaczenie:komputer:x1,gry) (nagrywarka:komputer:x1,tak) (cena:komputer:x1,drogi) Wynik: Cel jest konkluzją reguły 2 i 5.

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R2 (prędkość:komputer:x1,szybki) (przeznaczenie:komputer:x1,gry)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R2 (prędkość:komputer:x1,szybki) (przeznaczenie:komputer:x1,gry)

Wnioskowanie mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R2 (prędkość:komputer:x1,szybki) (przeznaczenie:komputer:x1,gry) Czy znany jest fakt: (prędkość:komputer:x1,szybki) 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) TAK F2: (prędkość:komputer:mój,szybki)

Wnioskowanie mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R2 (prędkość:komputer:x1,szybki) (przeznaczenie:komputer:x1,gry) Czy znany jest fakt: (przeznaczenie:komputer:mój,gry) 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) NIE

(przeznaczenie:komputer:mój,gry) Krok 1: Szukamy w faktach 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) Wynik: Brak celu w faktach

(przeznaczenie:komputer:mój,gry) Krok 2: Szukamy w konkluzjach reguł (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) ) (obudowa:komputer:x1,duża) (procesor:komputer:x1,pii). (prędkość:komputer:x1,szybki) ) (przeznaczenie:komputer:x1,gry) (cena:komputer:x1,drogi). (pamięć:komputer:x1,dużo) (cecha:komputer:x1,uniwersalny). (nagrywarka:komputer:x1,nie) (przeznaczenie:komputer:x1,gry) (nagrywarka:komputer:x1,tak) (cena:komputer:x1,drogi) Wynik: Cel jest konkluzją reguły 4

Wnioskowanie mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R2 (prędkość:komputer:x1,szybki) (przeznaczenie:komputer:x1,gry) R4 (nagrywarka:komputer:x1,nie)

(nagrywarka:komputer:x1,nie) Krok 1: Szukamy w faktach 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) Wynik: Brak celu w faktach

(przeznaczenie:komputer:mój,gry) Krok 2: Szukamy w konkluzjach reguł (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) ) (obudowa:komputer:x1,duża) (procesor:komputer:x1,pii). (prędkość:komputer:x1,szybki) ) (przeznaczenie:komputer:x1,gry) (cena:komputer:x1,drogi). (pamięć:komputer:x1,dużo) (cecha:komputer:x1,uniwersalny). (nagrywarka:komputer:x1,nie) (przeznaczenie:komputer:x1,gry) (nagrywarka:komputer:x1,tak) (cena:komputer:x1,drogi) Wynik: Brak reguły o konkluzji takiej jak cel wnioskowania. Wniosek: Nie udowodnimy celu wnioskowania za pomocą reguły 2. Spróbujemy więc jeszcze za pomocą reguły 5.

Wnioskowanie mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R2 (prędkość:komputer:x1,szybki) (przeznaczenie:komputer:x1,gry) R4 (nagrywarka:komputer:x1,nie)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 (nagrywarka:komputer:x1,tak)

(nagrywarka:komputer:x1,tak) Krok 1: Szukamy w faktach 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) Wynik: Cel to fakt 3.

Wynik: Jedyny warunek reguły 5 został potwierdzony. To uaktywnia tę regułę a w efekcie konkluzja tej reguły zostaje dodana jako nowy fakt do bazy wiedzy. 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) 5. (cena:komputer:mój,drogi)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 (nagrywarka:komputer:x1,tak) F3 (nagrywarka:komputer:mój,tak)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 (nagrywarka:komputer:x1,tak) F3 (nagrywarka:komputer:mój,tak)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 (nagrywarka:komputer:x1,tak) F3 (nagrywarka:komputer:mój,tak)

(cecha:komputer:mój,uniwersalny) Krok 1: Szukamy w faktach 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) 5. (cena:komputer:mój,drogi) Wynik: Brak celu w faktach

(cecha:komputer:mój,uniwersalny) Krok 2: Szukamy w konkluzjach reguł (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) ) (obudowa:komputer:x1,duża) (procesor:komputer:x1,pii). (prędkość:komputer:x1,szybki) ) (przeznaczenie:komputer:x1,gry) (cena:komputer:x1,drogi). (pamięć:komputer:x1,dużo) (cecha:komputer:x1,uniwersalny). (nagrywarka:komputer:x1,nie) (przeznaczenie:komputer:x1,gry) (nagrywarka:komputer:x1,tak) (cena:komputer:x1,drogi) Wynik: Cel jest konkluzją reguły 3

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 R3 (nagrywarka:komputer:x1,tak) (pamięć:komputer:x1,dużo) F3 (nagrywarka:komputer:mój,tak)

(pamięć:komputer:mój,dużo) Krok 1: Szukamy w faktach 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) 5. (cena:komputer:mój,drogi) Wynik: Cel jest faktem 4

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 R3 (nagrywarka:komputer:x1,tak) F3 (nagrywarka:komputer:mój,tak) (pamięć:komputer:x1,dużo) F4 (pamięć:komputer:mój,dużo)

Wynik: Jedyny warunek reguły 3 został potwierdzony. To uaktywnia tę regułę a w efekcie konkluzja tej reguły zostaje dodana jako nowy fakt do bazy wiedzy. 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) 5. (cena:komputer:mój,drogi) 6. (cecha:komputer:mój,uniwersalny)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 (nagrywarka:komputer:x1,tak) F3 (nagrywarka:komputer:mój,tak) R3 (pamięć:komputer:x1,dużo) F4 (pamięć:komputer:mój,dużo)

(obudowa:komputer:mój,duża) Krok 1: Szukamy w faktach 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) 5. (cena:komputer:mój,drogi) 6. (cecha:komputer:mój,uniwersalny) Wynik: Cel jest faktem 1

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 (nagrywarka:komputer:x1,tak) F3 (nagrywarka:komputer:mój,tak) R3 (pamięć:komputer:x1,dużo) F4 (pamięć:komputer:mój,dużo) F1 (obudowa:komputer:mój,duża)

Wynik: Wszystkie przesłanki reguły zostały potwierdzone. To uaktywnia tę regułę a w efekcie konkluzja tej reguły zostaje dodana jako nowy fakt do bazy wiedzy. 1. (obudowa:komputer:mój,duża) 2. (prędkość:komputer:mój,szybki) 3. (nagrywarka:komputer:mój,tak) 4. (pamięć:komputer:mój,dużo) 5. (cena:komputer:mój,drogi) 6. (cecha:komputer:mój,uniwersalny) 7. (procesor:komputer:mój,pii)

mój (procesor:komputer:x1,pii) R1 (cena:komputer:x1,drogi) (cecha:komputer:x1,uniwersalny) (obudowa:komputer:x1,duża) R5 (nagrywarka:komputer:x1,tak) F3 (nagrywarka:komputer:mój,tak) R3 (pamięć:komputer:x1,dużo) F4 (pamięć:komputer:mój,dużo) F1 (obudowa:komputer:mój,duża)

Sieci semantyczne (semantic networks) opracowane przez Ross Quilliana są ontologiczną metodą reprezentacji wiedzy. Quillian wyszedł z założenia, że pamięć ludzką najlepiej opisuje model asocjacyjny. Oznacza to, że terminy są wyjaśniane przez inne terminy. W taki sposób powstaje pewna struktura powiązań, która może być zamknięta. Sieć semantyczna jest zbiorem obiektów powiązanych ze sobą różnorodnymi relacjami. Stanowi ona graficzną reprezentację pewnego rodzaju logiki, gdzie relacje miedzy obiektami są przedstawione w postaci rysunku grafu, w którym obiekty to węzły, a relacje to gałęzie. Węzły i łuki mają swoje nazwy. Węzłom (podobnie jak gałęziom) mogą być przypisane wagi określające np. stopnie przekonania o słuszności tych stwierdzeń. W sieci semantycznej można przeprowadzić wnioskowanie. Węzły na grafie reprezentują: obiekty fizyczne, obiekty konceptualne (czynności, wydarzenia), deskryptory dodatkowy opis węzła, cechy charakterystyczne obiektu. Łuki reprezentują różnego rodzaju relacje pomiędzy obiektami oraz umożliwiają reprezentacje hierarchii. Tworzą one dwie hierarchie: hierarchię abstrakcji oraz hierarchię właściwości. Hierarchia abstrakcji obejmuje relację uszczegółowienia pomiędzy klasami ( są ) oraz relację egzemplifikacji ( jest wystąpieniem ) zachodzącą pomiędzy obiektem a klasą. Hierarchia właściwości może obejmować dowolne zależności pomiędzy obiektami i klasami, a także pomiędzy obiektami i klasami a wartościami.

Sieci semantycznej używamy, gdy mamy pewność, że dobrze rozumiemy pojęcia z danej dziedziny i powiązania między nimi. Większość sieci semantycznych kognitywistyce (poznawczo). jest oparta na Składają się z łuków i węzłów, które zorganizowane w hierarchii taksonomicznej. mogą być Sieci semantyczne pozwalają także odzwierciedlać dziedziczenie i prezentację węzłów jako proto-obiektów. O czym należy pamiętać o sieci semantyczne? Niektórych właściwości nie da się łatwo wyrazić za pomocą sieci semantycznej. Na przykład negacji, alternatywy i ogólnego braku wiedzy taksonomicznej. Wyrażanie tych relacji wymaga rozwiązania, takie jak uzupełnienie o rachunek predykatów i przy użyciu specjalistycznych procedur.

ABY SIEĆ SEMANTYCZNA mogła w ogóle funkcjonować, konieczne jest udostępnienie komputerom zarówno źródeł informacji o ściśle określonej strukturze, jak i systemów reguł inferencyjnych, które pozwolą na automatyczne wyciąganie wniosków.

Wiedza o relacjach to: atrybuty odpowiednie związane z nimi wartości. Mechanizmy wnioskowania możliwe są dzięki: Właściwościom dziedziczenia (elementy dziedziczą wartości z bycia członkami klasy). Dane muszą być zorganizowane w hierarchię klas.

Prostokąty (węzły) obiekty i wartości atrybutów obiektów. Strzałki - punkt od obiektu do jego wartości.

Prosty mechanizm wnioskowania po prostu śledzi połączenia między węzłami sieci. 2 metody: Intersection search Inheritance

Aktywacja dwóch węzłów i poszukiwanie ich przecięcia i szukanie w ten sposób zależności między obiektami. Odwiedzone węzły odpowiednio oznaczamy.

Dziedziczenie opiera się na reprezentacji isa Dziedziczenie również zapewnia środki do rozumowania domyślnego. przykład: Emus are birds. Typically birds fly and have wings. Emus run.

1. Emus are birds. 2. Typically birds fly and have wings. 3. Emus run.

Załóżmy, że chcemy odszukać panią Cook, poznaną na zeszłorocznych targach branżowych. Nie pamiętamy jej imienia, ale przypominamy sobie, że pracowała dla jednego z naszych klientów, a jej syn studiował na tym samym uniwersytecie, co my. Inteligentny program wyszukujący może przejrzeć wszystkie witryny ludzi o nazwisku Cook, pomijając strony dotyczące kucharzy (cooks) gotowania (cooking), Wysp Cooka itp., i znalewśród nich pracowników firmy, która jest na naszej liście klientów, a następnie dotrze do witryn ich dzieci, aby sprawdzi, czy studiują na danym uniwersytecie.

identyfikacja osób na podstawie częściowych informacji: osoba ma nazwisko Cook, pracuje (works for) dla firmy będącej na mojej liście klientów (is client of), a jej syn (is parent of) studiuje (is student at) w Avondale University, który ukończyłem. Potrzebnej informacji nie znajdzie się na jednej konkretnej stronie WWW, ale powiązania semantyczne ułatwią odpowiednim programom odszukanie jej elementów na różnych stronach i rozpoznanie relacji typu Mike Cook jest synem Wendy Cook, a następnie połączenie ich w całość. Najogólniej mówiąc, SS umożliwi automatyczne przeprowadzanie zaawansowanych wyszukiwań i transakcji.

Semantic Web projekt, który ma przyczynić się do utworzenia i rozpowszechnienia standardów opisywania treści w Internecie w sposób, który umożliwi maszynom i programom (np. tzw. agentom) przetwarzanie informacji w sposób odpowiedni do ich znaczenia. Wśród standardów Semantic Web znajdują się m.in. OWL, RDF, RDF Schema (inaczej RDFS). Znaczenia zasobów informacyjnych określa się za pomocą tzw. ontologii. Semantic Web jest wizją Tima Bernersa-Lee (twórcy standardu WWW i pierwszej przeglądarki internetowej, a także przewodniczącego W3C). W swoich założeniach Semantic Web ma korzystać z istniejącego protokołu komunikacyjnego, na którym bazuje dzisiejszy Internet. Różnica miałaby polegać na tym, że przesyłane dane mogłyby być 'rozumiane' także przez maszyny. Owo 'rozumienie' polegałoby na tym, że dane przekazywane byłyby w postaci, w której można by powiązać ich znaczenia między sobą a także w ramach odpowiedniego kontekstu.

OWL jest standardem pozwalającym na definiowanie klas na podstawie własności danych, a także na definiowanie logicznych charakterystyk relacji. OWL jest więc standardem formalnie zapisującym ontologię. Przykład: Mając daną klasę 'Człowiek', a także posiadając w jej zbiorze relację 'jest mężem', chcielibyśmy określić klasę 'Małżonek' (dla czytelności przykładu, uznajemy definicję męża zgodną z polskim stanem prawnym). Otóż małżonkiem jest zarówno dana, której podmiotem jest relacja 'jest mężem', jak i dana, której przedmiotem jest dana relacja (w języku grafów: małżonkiem jest wierzchołek grafu, z którego wychodzi krawędź 'jest mężem', jak i wierzchołek, do którego taka krawędź wchodzi). Relację 'jest mężem' możemy też dość dokładnie określić. Jest to relacja funkcjonalna (tzn. że każdy podmiot, którego dotyczy ta relacja, ma co najwyżej jeden przedmiot). Jest ona też odwrotnie funkcjonalna (przedmiot tej relacji ma co najwyżej jeden podmiot). Nie jest ona przechodnia (tzn. nie ma takiej własności, że jeśli A jest mężem B a B jest mężem C to A jest mężem C), posiada natomiast relację odwrotną. Tą relacją jest 'jest żoną' (każdy A, który jest mężem B będzie spełniać następującą relację: B jest żoną A).

Język OWL pozwala na definiowanie zależności między danymi, dzięki czemu można przeprowadzać wnioskowanie. Osobną sprawą jest przygotowanie odpowiednich mechanizmów, które takie wnioskowanie przeprowadzą poprawnie, a jednocześnie w odpowiednio szybkim czasie. Program, przeprowadzający wnioskowanie nosi miano 'reasonera' (brak polskiego odpowiednika - w wolnym tłumaczeniu 'wnioskujący'). W tej chwili zaawansowanie techniczne reasonerów jest wciąż ograniczone i przeprowadzanie wnioskowań nawet na nieskomplikowanych ontologiach trwa zbyt długo jak na uwarunkowania Internetu.

Z internetowych katalogów z semantycznymi znacznikami zadowoleni będą niewątpliwie sprzedawcy i klienci. Małym firmom będzie łatwiej i bezpieczniej prowadzićsamodzielnie działalnośćza pośrednictwem Internetu. Jako klienci: wybieramy się w dłuższą podróż po świecie i chcemy dokonać wszystkich niezbędnych rezerwacji. Potwierdzenia rezerwacji przesyłane przez linie lotnicze, hotele, agencje turystyczne itp. Opatrzone będą odpowiednimi znacznikami semantycznymi. Wszystkie daty wpiszą się same wprost do naszego terminarza, a wydatki do programu zarządzającego naszymi finansami, niezależnie od oprogramowania, którego używamy, jeśli tylko będzie ono rozpoznawaćoznaczenia semantyczne. Koniec z pracowitym wydobywaniem informacji z listów elektronicznych. A i nadawcy nie będą musieli już rozsyłaćdanych w kilkunastu różnych formatach albo narzucać odbiorcom stosowanego przez siebie standardu zapisu.

Agent Łucja wyszukuje dla jej matki klinikę rehabilitacji, która spełnia zadane kryteria i ma wolne terminy nie kolidujące z rozkładem zajęć Łucji i jej brata Piotra. Program typu agent będzie potrafił wykonać stawiane jemu zadania dzięki umieszczonym na stronach WWW oznaczeniom semantycznym. Ontologie, w których zdefiniowane są niezbędne pojęcia i ich powiązania semantyczne, umożliwiają agentom rozpoznawanie znaczenia występujących w Sieci Semantycznej elementów oraz współpracę z agentami witryn i automatycznymi serwisami.

Sieć Semantyczna to nowy format dokumentów hipertekstowych, który umożliwi komputerom rozpoznanie ich treści. Zrozumienie przez maszyny przekazu informacji będzie polegać nie na jakiejś magicznej sztucznej inteligencji, a raczej na zdolności maszyn do tego aby rozwiązać dobrze zdefiniowane problemy przez wykonywanie dobrze zdefiniowanych operacji na dobrze zdefiniowanych danych.

The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation. Tim Berners-Lee, James Hendler, OraLassila, The Semantic Web, Scientific American, May2001.

XML uniwersalny język znaczników przeznaczony do reprezentowania różnych danych w strukturalny sposób. Pozwala użytkownikom definiować i używadć własnych znaczników, nie ma wbudowanych mechanizmów umożliwiających zrozumienie nowych znaczników przez innych użytkowników. XML Schema to język który wprowadza ograniczenia dotyczące typu i struktury danych w dokumentach XML w celu gwarancji, że dane XML są poprawne w sensie syntaktycznym. RDF jest standardem, który pozwala na zapis danych w postaci grafu skierowanego. W grafie tym dane zawarte są w wierzchołkach a relacje pomiędzy nimi i własności tychże znajdują się w krawędziach. RDF Schema wprowadzają do grafów takie pojęcia jak klasy i podklasy, pozwalające na wspólne grupowanie danych mających cechy wspólne. Dowolna dana może znajdować się w wielu klasach. OWL jest standardem pozwalającym na definiowanie klas na podstawie własności danych, a także na definiowanie logicznych charakterystyk relacji. OWL jest więc standardem formalnie zapisującym ontologie. Ontologie to zbiory stwierdzeń zapisanych na przykład w RDF, definiujące relacje pomiędzy pojęciami oraz wyznaczające reguły wnioskowania. Komputery będą w stanie zrozumiećsemantyczną zawartośćdokumentów WWW, odwołując się do ontologii, do których odnoszą się występujące w nich pojęcia.

RDF jest aplikacją języka XML, używanym do zapisu informacji w Sieci Semantycznej, przeznaczonym do przetwarzania maszynowego. W dosłownym tłumaczeniu RDF jest środowiskiem do opisu zasobów. RDF jest standardem, który pozwala na zapis danych w postaci grafu skierowanego. W grafie tym dane zawarte są w wierzchołkach a relacje pomiędzy nimi i własności znajdują się w krawędziach. RDF może być zakodowany w postaci języka XML, przez co daje możliwość jego wizualizacji.

Zasadniczą strukturą każdego wyrażenia w RDF stanowi zbiór trójek, który nazywa się grafem RDF. Każda trójka reprezentuje oświadczenia związku pomiędzy rzeczami, które są określone przez węzły które je łączą. Kierunek ścieżki jest ważny, zawsze prowadzi w kierunku obiektu. Każdy taki zbiór składa się z następujących części: Subject (temat lub podmiot) Predicate (predykat) lub Property (właściwość), który określa związek. Object (obiekt)

Trójka RDF zawiera trzy komponenty: Subject (temat lub podmiot), który jest znacznikiem URI lub pustym węzłem Predicate (predykat) lub Property (własność), który jest znacznikiem URI Object (obiekt), który jest znacznikiem URI, literałem lub pustym węzłem

RDF/XML Description 14 <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdfsyntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"> <rdf:description rdf:about="http://www.wmie.uz.zgora.pl/"> <dc:title>wydział Matematyki Informatyki i Ekonometrii</dc:title> <dc:language>pl</dc:language> <dc:creator>webmaster WMIE</dc:creator> </rdf:description> </rdf:rdf>

sieci semantyczne związane z odpowiednimi zestawami narzędzi programowych służących do inżynierii wiedzy leksykalnej: 1. Semantic Network Processing System (SNePS) Stuarta C. Shapiro lub 2. paradygmat MultiNet Hermanna Helbig (w szczególności nadaje się do reprezentacji semantycznej wyrażeń języka naturalnego i używane w różnych aplikacjach NLP). 3. Sieci semantyczne są stosowane w specjalistycznych zadaniach wyszukiwania informacji, takich jak wykrywanie plagiatu. Sieci semantyczne pozwalają wtedy na kompresję w celu zmniejszenia różnorodności językowej i umożliwiają przez to określenie znaczenia słowa, niezależnie od zestawów słów.

The MemberOf link between Jill and FemalePersons indicates that Jill belongs to the category of female persons.

O ile nie ma przeciwwskazań, zakłada się, że obiekty należące do pewnej klasy dziedziczą po niej wszelkie jej własności. Dziedziczenie jest wielokrotne. Można należeć do więcej niż jednej kategorii. Jill ma 2 nogi!

Link: HasSister odwrotny do linku SisterOf. Czasami po prostu takie linki ułatwiają wnioskowanie: Czyją siostrą jest Jack. Gdy odkryjemy że link HasSister jest linkiem odwrotnymi do SisterOf, wówczas proces wnioskowania może iść za linkiem HasSister od Jack do Jill i odpowiedzieć na pytanie.

AKO Abraracourcix Astérix Cétautomatix Gaul Obélix Panoramix Dog Human Ordralfabetix barks-at Idéfix

Wady: Reprezentacja tylko binarnych relacji co tworzy problem dla relacji Run(ChennaiExpress, Chennai,Bangalore,Today). Nie ma standardowej definicji nazw linków. Zalety: Potrafią reprezentować wartości domyślne dla kategorii. Jack ma 1 nogę, ale przecież jest osobą a każda osoba ma 2 nogi. Wtedy 2 nogi będzie wartością domyślną, ale jeśli dla Jack określono inaczej to ta wartość zostaje nadpisana. Są łatwe do interpretacji. Są łatwe do przełożenia na język PROLOG.

is-a has-part /------------- wings / reproduction /--------------- egg-laying / body-temp /----------------- warmblooded ^ vertebrate bird--< no. of legs ^ ^ ^ \----------------- 2 / \ \ covering is-a / \ \--------------- feathers / \ \ movement color / \ \------------- flight yellow ------canary size / is-a \ is-a small -----/ \ movement ostrich---------- run movement \ size swim ----------penguin \--------- big

Tom is a cat. Tom caught a bird. Tom is owned by John. Tom is ginger in colour. Cats like cream. The cat sat on the mat. A cat is a mammal. A bird is an animal. All mammals are animals. Mammals have fur.

Marvin Minsky

Autor: Marvin Minsky, 1974. Zawiera pewne wartościowanie ludzkiego myślenia: Oczekiwania, założenia, stereotypy. Wyjątki. Rozmyte granice między klasami. Istotą tej formy reprezentacji wiedzy jest typowość, z wyjątkami, a nie definicja.

Rama (frame) jest strukturą danych zawierającą wiedzę o pewnym obiekcie bądź pewnym pojęciu.

A frame is a data-structure for representing a stereotyped situation, like being in a certain kind of living room, or going to a child's birthday party. Attached to each frame are several kinds of information. Some of this information is about how to use the frame. Some is about what one can expect to happen next. Some is about what to do if these expectations are not confirmed.

Idea hierarchii ram jest podobna do idei hierarchii klas z programowania zorientowanego obiektowo.

System ram to najczęściej ich hierarchia Każda rama ma: nazwę. sloty: własności jednostki mającej nazwę, i mające wartości. Przykładem wartości może być: Wartość domyślna (default value) Wartość dziedziczona (inherited value) z ramy wyżej w hierarchii Procedura (daemon), która pozwala znaleźć wartość specific value np. wyjątek

W wyższych poziomach hierarchii ram typowa wiedza jest przechowywana (np. wartość w slocie może być zakresem wartości, albo jakimś warunkiem) W niższych poziomach hierarchii, wartość w slocie to specyficzna wartość, tak by nadpisać wartość ewentualnie dziedziczoną domyślenie z nadklasy.

Instancja obiektu jest łączona z jego klasą przez relację typu 'instance_of' Klasa jest łączona z jej nadklasą przez relację 'subclass_of' Ramy mogą zawierać i wiedzę proceduralną i deklaratywną. Wartości slotu zazwyczaj zawierają wiedzę deklaratywną ale demony są w efekcie małymi programami a więc slot z demonem będzie już wiedzą proceduralną.

Możliwe jest dziedziczenie wielokrotne, ale wtedy należy określić jak postąpić w przypadkach gdy dziedziczone wartości wnoszą jakieś konflikty.

Wstępna informacja: cars. Name: car of: thing Subclass

a car has 4 wheels, is moved by an engine, and runs on petrol or diesel. Możemy więc dodać 3 sloty do ramy CAR.

a car has 4 wheels, is moved by an engine, and runs on petrol or diesel. Name: car of: thing Slots: Subclass Name: Value: Restrictions: wheels 4 moved by engine fuel? petrol or diesel car subclass_of with wheels: 4, moved_by: engine, fuel: [value: unknown, type: [petrol,diesel]]. thing

there is a particular type of car called a VW, manufactured in Germany. Możemy więc dodać kolejną ramę w systemie, z 1 slotem. Nie potrzebujemy powtarzać slotów i wartości z poprzedniej ramy. Będą one dziedziczone!!!

there is a particular type of car called a VW, manufactured in Germany. Name: VW of: car Slots: Subclass Name: Value: Restrictions: VW subclass_of car with made_in: Germany. made in Germany

there is a particular type of VW called a Golf, which has a sun-roof. Znów możemy dodać 3 ramę w systemie, z 1 slotem. Podobnie, nie powtarzamy tego co jest i tak dziedziczone.

there is a particular type of VW called a Golf, which has a sunroof. Name: Golf of: VW Slots: Subclass Golf subclass_of VW with top: sunroof. Name: Value: Restrictions: top sunroof

there is a particular type of Golf called a TDi, which runs on diesel. A TDi has 4 cylinders, and an engine capacity of 1.8 litres. Możemy dodać 4 ramę z 3 slotami. Jeden z nich (fuel) już w systemie jest, ale tu pojawia się ponieważ ma konkretną wartość a nie jakiś dopuszczalny zestaw wartości.

there is a particular type of Golf called a TDi, which runs on diesel, has 4 cylinders, and has a 1.8 litre engine. Name: TDi of: Golf Slots: Subclass Name: Value: Restrictions: fuel diesel TDi subclass_of Golf with fuel: diesel, engine_capacity: 1.8, cylinders: 4. engine capacity 1.8 litres cylinders 4

my car, called C637SRK, is a Golf Tdi. It hasn t got a sun-roof. Dodajemy 5 ramę, z 2 slotami. W przeciwieństwie do poprzednich ram, ta jest instancją ramy. Jeden ze slotów (top) był już w systemie, ale tu pojawia się ponieważ wymaga zapisania innej niż dziedziczona wartości.

There is a car called C637SRK which is an instance of a Golf TDi etc. Name: C637SRK Instance of: TDi Slots: Name: Value: Restrictions: owner jp C637SRK instance_of with owner: jp, top: no_sun_roof. TDi top no sun-roof

to calculate a car s cylinder size, you divide the total engine capacity by the number of cylinders. Możemy dodać inny slot w ramie car. Będzie to demon (program) który będzie przedstawiał użytkownikami pewne informacje ze slota, jeśli zajdzie taka potrzeba.

to calculate a car s cylinder size, you divide the total engine capacity by the number of cylinders. Name: car of: thing Slots: Subclass Name: Value: Restrictions: wheels 4 moved by engine fuel? petrol or diesel. cylinder size? find total engine capacity, find no.of cylinders, divide first by second. car subclass_of thing with wheels: 4, moved_by: engine, fuel: [value: unknown, type: [petrol,diesel]], cylinder_size: [value: unknown, access_rule: (if the engine_capacity of?self is E & the cylinders of?self is C & Ans := E/C then make_value Ans)].

Ramki stanowią naturalną drogę do zorganizowanego i zwięzłe przedstawienie wiedzy. W jeden podmiot, ramka łączy całą niezbędną wiedzę na temat danego obiektu lub pojęcia. Ramka zapewnia możliwość organizowania wiedzy w slotach, aby opisać różne atrybuty i właściwości obiektu.

Rama oznacza kolekcję slotów. Każdy slot opisuje konkretny atrybut bądź operację ramy. Pod wieloma względami przypomina ramka tradycyjny rekord", który zawiera informacje dotyczące opisywanych obiektów. Sloty przechowują wartości. Slot może zawierać konkretną wartości, ale i być wskaźnikiem na inną ramę, może być zbiorem reguł bądź procedurą, która dostarczy wartości dla slotu.

Sloty mogą zawierać informacje takie jak: 1. Nazwa ramy. 2. Relacje ramy z innymi ramami. Rama IBM Aptiva S35 może być członkiem klasy Computer, która może należeć do klasy Hardware. 3. Wartość slotu. Może być symboliczna, numeryczna, boolowska. Może być określona gdy rama jest tworzona, bądź później w czasie sesji z systemem ekspertowym. 4. Wartość domyślna (każdy samochód ma 4 koła). 5. Zakres wartości (<$750; $1500>). 6. Procedura (program przypisany danej ramie, który będzie wywołany jeśli np. wartość slotu się zmieni, bądź jeśli zajdzie taka potrzeba)

2 typy procedur dla slotów: (a) WHEN CHANGED procedure. (b) WHEN NEEDED procedure.

Faseta (ang.facet) to dodatkowa wiedza o pewnym atrybucie w ramie. Można ich używać do określenia wartości atrybutu, do dodefiniowania pytań użytkowników, i powiedzenia maszynie wnioskującej jak obsługiwać dany atrybut.

Klasa Passenger car ma kilka typowych dla aut atrybutów. Klasa jest tak różnorodna, że ciężko jest określić konkretne wartości dla atrybutów, ale dla pewnych można: typ silnika, typ pracy silnika

Klasa Mazda jest łączona z nadklasą Passenger car relacją is-a. Mazda dziedziczy wszystkie atrybuty z nadklasy, oraz ma własne atrybuty zadeklarowane: Country of manufacture z wartością domyślną: Japan. Klasa Mazda 626 ma 3 dodatkowe atrybuty: Model, Colour i Owner. Rama Mazda DR-1216 dziedziczy wartośc dla atrybutu country of manufacture z ramy Mazda i przydziela pojedyncze wartości wszystkich atrybutom złożonym.

Mazda 626 ma średnie zużycie paliwa =22 miles per gallon, ale instancja Mazda DR- 1216 ma gorsze. Mazda DR-1216 pozostaje instancją klasy class Mazda 626, z dostępem do właściwości wyżej w hierarchii, nawet jeśli narusza to typowe wartości w swojej klasie. Relacje między ramami w takiej hierarchii są procesem specjalizacji.

Relacja is-a nie jest jedyną możliwa. Ogólnie wyróżnia się 3 typy relacji między obiektami: Generalization, aggregation association.

1) Generalizacja Relacje: a-kind-of lub is-a między nadklasą i jej podklasami (car - vehicle) Wszystkie podklasy dziedziczą własności ze swoich nadklas. 2) Agregacja To relacje a-part-of lub part-whole gdzie kilka podklas jest powiązanych z nadklasą reprezentującą całość (engine is a part of a car) 3) Asocjacie Pewne semantyczne relacje między różnymi klasami (Mr Black posiada dom, samochód i komputer. Klasy: dom, samochód, komputer są wzajemnie niezależne, ale połączone z konkretnymi obiektem tworzą semantyczne asocjacje)

Ogólnie, ta metoda nie rozróżnia podstawowych właściwości (te, które instancja musi mieć, aby być traktowana jako członek klasy) oraz przypadkowych właściwości (te, które wszystkie instancje klasy akurat nie ma). Proste typowe wartości daje się łatwo zapisać, jednak gdy pojęcia są bardziej złożone, bądź jeśli następuje dziedziczenie wielokrotne, zadanie może być nie do wykonania.

Większość systemów używa 2 typów metod: WHEN CHANGED i WHEN NEEDED. demon ma strukturę typu IF-THEN. Wykonywana jest zawsze gdy zmieni się wartość określona przy IF.

WHEN CHANGED to metoda wykonana natychmiast gdy wartość atrybutu się zmienia. Klasa Action Data użyta do kontroli tego co się wyświetla na wejściu. Użytkownik może użyć: next, previous, first lub last z listy i sprawdzić dane biznesowe

Metoda ta pozwala nam przejść przez listę żądań. Wszystkie atrybuty są proste (ang. simple [S]). Czyli mają wartość TRUE lub FALSE. Sprawdźmy metodę dla atrybutu Goto Next.

Cel: Evaluation OF Credit Evaluation

Sposób w jaki wiedzę prezentujemy decyduje potem o tym jaką wiedzę możemy wyprowadzić z systemu, jakich metod analizy możemy użyć. Najpopularniejsze są: reguły IF-THEN, sieci semantyczne, ramy i scenariusze, tablice decyzyjne, rachunek predykatów rachunek perceptów. Każda z wybranych metod powinna zapewniać mechanizmy wnioskowania.

Zaletą sieci semantycznych jest ich elastyczność oraz brak ograniczeń liczby węzłów i łuków. Model reprezentacji wiedzy za pomocą sieci semantycznych ma również swoje wady: na przykład określenie, czy węzły sieci oznaczają jeden obiekt czy klasę obiektów. Dlatego też sieci semantyczne wiąże się zazwyczaj z ramami lub z regułami. Ramy w takim podejściu odpowiadają obiektom i opisują ich strukturę wewnętrzną, sieć semantyczna natomiast odpowiada relacjom między ramami.