Reprezentacja wiedzy i wnioskowanie

Podobne dokumenty
Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń

Podstawy Sztucznej Inteligencji (PSZT)

Adam Meissner.

Rachunek zdań i predykatów

Myślenie w celu zdobycia wiedzy = poznawanie. Myślenie z udziałem rozumu = myślenie racjonalne. Myślenie racjonalne logiczne statystyczne

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Matematyka ETId Elementy logiki

Programowanie w logice

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

Tautologia (wyrażenie uniwersalnie prawdziwe - prawo logiczne)

LOGIKA I TEORIA ZBIORÓW

PODSTAWY SZTUCZNEJ INTELIGENCJI

Np. Olsztyn leży nad Łyną - zdanie prawdziwe, wartość logiczna 1 4 jest większe od 5 - zdanie fałszywe, wartość logiczna 0

Logika pragmatyczna. Logika pragmatyczna. Kontakt: Zaliczenie:

Logika pragmatyczna dla inżynierów

Metoda Tablic Semantycznych

Ziemia obraca się wokół Księżyca, bo posiadając odpowiednią wiedzę można stwierdzić, czy są prawdziwe, czy fałszywe. Zdaniami nie są wypowiedzi:

MATEMATYKA DYSKRETNA, PODSTAWY LOGIKI I TEORII MNOGOŚCI

Elementy logiki matematycznej

Reguły gry zaliczenie przedmiotu wymaga zdania dwóch testów, z logiki (za ok. 5 tygodni) i z filozofii (w sesji); warunkiem koniecznym podejścia do

Lekcja 3: Elementy logiki - Rachunek zdań

Składnia rachunku predykatów pierwszego rzędu

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

1. Wstęp do logiki. Matematyka jest nauką dedukcyjną. Nowe pojęcia definiujemy za pomocą pojęć pierwotnych lub pojęć uprzednio wprowadzonych.

0.1. Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań.

METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ

Konsekwencja logiczna

Logika formalna wprowadzenie. Ponieważ punkty 10.i 12. nie były omawiane na zajęciach, dlatego można je przeczytać fakultatywnie.

LOGIKA Klasyczny Rachunek Zdań

Systemy ekspertowe. Krzysztof Patan

Paradygmaty dowodzenia

Podstawy Sztucznej Inteligencji (PSZT)

Rachunek logiczny. 1. Język rachunku logicznego.

Programowanie deklaratywne i logika obliczeniowa

RACHUNEK ZDAŃ 7. Dla każdej tautologii w formie implikacji, której poprzednik również jest tautologią, następnik także jest tautologią.

Michał Lipnicki (UAM) Logika 11 stycznia / 20

SZTUCZNA INTELIGENCJA

Przykłady zdań w matematyce. Jeśli a 2 + b 2 = c 2, to trójkąt o bokach długości a, b, c jest prostokątny (a, b, c oznaczają dane liczby dodatnie),

Wstęp do logiki. Klasyczny Rachunek Zdań II

Wprowadzenie do Prologa

Lista 1 (elementy logiki)

Wprowadzenie do logiki Zdania, cz. III Język Klasycznego Rachunku Predykatów

Uwagi wprowadzajace do reguł wnioskowania w systemie tabel analitycznych logiki pierwszego rzędu

Podstawowe Pojęcia. Semantyczne KRZ

Prolog (Pro-Logic) Programowanie w Logice. Dr inż. Piotr Urbanek

III rok kognitywistyki UAM,

Notacja. - operator implikacji, - operator koniunkcji v operator alternatywy - operator równoważności ~ operator negacji Duża litera (np.

Paradygmaty programowania

Laboratorium przedmiotu Paradygmaty Programowania

ROZDZIAŁ 1. Rachunek funkcyjny

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

Wstęp do Techniki Cyfrowej... Algebra Boole a

Jak wnioskują maszyny?

Andrzej Wiśniewski Logika II. Materiały do wykładu dla studentów kognitywistyki. Wykład 14. Wprowadzenie do logiki intuicjonistycznej

1 Podstawowe oznaczenia

Jest to zasadniczo powtórka ze szkoły średniej, być może z niektórymi rzeczami nowymi.

Metoda Karnaugh. B A BC A

Dowody założeniowe w KRZ

Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu.

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

III rok kognitywistyki UAM,

Programowanie deklaratywne

Logika Matematyczna (10)

Programowanie w logice Wykład z baz danych dla

Wykład z Technologii Informacyjnych. Piotr Mika

1. Składnia. Logika obliczeniowa - zadania 1 SKŁADNIA Teoria

Elementy logiki matematycznej

Rachunek predykatów. Formuły rachunku predykatów. Plan wykładu. Relacje i predykaty - przykłady. Relacje i predykaty

Metody dowodzenia twierdzeń i automatyzacja rozumowań Tabele syntetyczne: definicje i twierdzenia

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

LOGIKA Dedukcja Naturalna

I. Podstawowe pojęcia i oznaczenia logiczne i mnogościowe. Elementy teorii liczb rzeczywistych.

Klasyczny rachunek zdań 1/2

Kultura logiczna Klasyczny rachunek zdań 1/2

Elementy kognitywistyki III: Modele i architektury poznawcze

Programowanie deklaratywne

Logika binarna. Prawo łączności mówimy, że operator binarny * na zbiorze S jest łączny gdy (x * y) * z = x * (y * z) dla każdego x, y, z S.

Kultura logicznego myślenia

Język rachunku predykatów Formuły rachunku predykatów Formuły spełnialne i prawdziwe Dowody założeniowe. 1 Zmienne x, y, z...

Metody wnioskowania. Wnioskowanie w przód (ang. forward chaining) Wnioskowanie w tył (ang. Backward chaining) Od przesłanki do konkluzji Np..

Logika predykatów pierwszego rzędu PROLOG. Zarządzanie wiedzą. Wykład Reprezentacja wiedzy logika predykatów. Joanna Kołodziejczyk.

Semantyka rachunku predykatów pierwszego rzędu. Dziedzina interpretacji. Stałe, zmienne, funkcje. Logika obliczeniowa.

SCENARIUSZ LEKCJI. Dzielenie wielomianów z wykorzystaniem schematu Hornera

Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I

Programowanie w Logice Przykłady programów. Przemysław Kobylański

Wprowadzenie do Sztucznej Inteligencji

W planie dydaktycznym założono 172 godziny w ciągu roku. Treści podstawy programowej. Propozycje środków dydaktycznych. Temat (rozumiany jako lekcja)

Schematy Piramid Logicznych

Rachunek zdao i logika matematyczna

Andrzej Wiśniewski Logika II. Materiały do wykładu dla studentów kognitywistyki

LOGIKA MATEMATYCZNA. Poziom podstawowy. Zadanie 2 (4 pkt.) Jeśli liczbę 3 wstawisz w miejsce x, to które zdanie będzie prawdziwe:

Drzewa Semantyczne w KRZ

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykłady 12 i 13. Dowód i dowodzenie w KRP. Tezy KRP

Interpretacja Niech U będzie zbiorem formuł takim, że zbiór {p 1,..., p k } jest zbiorem wszystkich symboli predykatywnych, {f 1,..., f l } jest zbior

STANDARDOWE FUNKCJE PRZYNALEŻNOŚCI. METODY HEURYSTYCZNE wykład 6. (alternatywa dla s) (zdef. poprzez klasę s) GAUSSOWSKA F.

Internet Semantyczny i Logika I

Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Technologie obiektowe

Technika cyfrowa Synteza układów kombinacyjnych (I)

Transkrypt:

i wnioskowanie Dariusz Banasiak Katedra Informatyki Technicznej Wydział Elektroniki

Wiedza AI to nauka o komputerowych modelach wiedzy umożliwiających rozumienie, wnioskowanie i działanie. Inteligentne zachowanie uzależnione jest od posiadanej wiedzy. W sztucznej inteligencji przez reprezentację wiedzy rozumie się połączenie struktur danych oraz procedur interpretacyjnych operujących na tych danych. Procedury te, właściwie użyte powinny prowadzić do inteligentnego zachowania systemu. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 2

Wiedza Wiedza może mieć różny charakter. Ogólnie, wyróżnia się następujące rodzaje wiedzy: wiedza o obiektach, opisująca cechy i właściwości obiektów fizycznych np. Ptaki mają skrzydła, Kanarek jest ptakiem, Kanarek jest żółty itd. wiedza o zdarzeniach, związana jest z dynamiczną naturą świata (oprócz informacji o samym zdarzeniu opisuje również następstwa przyczynowe oraz sekwencję czasową zdarzeń) np. Rano padał deszcz, Chłopiec poszedł do szkoły, Samochód potrącił pieszego Autor: Dariusz Banasiak Katedra Informatyki Technicznej 3

Wiedza umiejętności, czyli wiedza jak wykonywać określone zadanie (ten typ wiedzy jest bardzo trudny lub niemożliwy do przekazania w sposób werbalny np. jazda samochodem, pisanie na klawiaturze, lepienie garnków itd.) meta-wiedza, czyli wiedza o samej wiedzy (może służyć do oceny wiarygodności uzyskanych danych uwzględniając np. niedoskonałość percepcji człowieka lub zastosowanych metod pomiarowych, także wiedza ogólna wykorzystywana np. w procesie wnioskowania) wierzenia (przekonania), czyli prawdziwe lub fałszywe, z góry powzięte nastawienia, które mogą wpływać na proces wnioskowania. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 4

Dwa główne podejścia do reprezentacji wiedzy: deklaratywne proceduralne. W podejściu deklaratywnym wiedza z danej dziedziny jest zbiorem specyficznych faktów, a korzystanie z wiedzy polega na stosowaniu do tego zbioru ogólnych procedur manipulacji faktami (np. reprezentacja logiczna). W reprezentacjach deklaratywnych następuje wyraźne oddzielenie wiedzy z danej dziedziny od sposobu wykorzystania tej wiedzy w procesie wnioskowania. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 5

W podejściu proceduralnym zakłada się, że przeważającą część wiedzy o świecie stanowią informacje o procesach i działaniach. "Wiedzieć" jest równoważne z "wiedzieć jak": znajomość danego pojęcia sprowadza się głównie do umiejętności manipulacji tym pojęciem. W reprezentacji proceduralnej wiedza zawarta jest w procedurach (podprogramach), które wiedzą jak należy się zachować w określonej sytuacji. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 6

Przykład Reprezentacja wiedzy dotyczącej kolejności liter w alfabecie Podejście deklaratywne: Fakty: A stoi przed B, B stoi przed C, C stoi przed D,... Reguła: JEŻELI (l1 stoi przed l2) i (l2 stoi przed l3) TO (l1 stoi przed l3) Podejście proceduralne: Procedura, która porównuje kolejność odpowiednich liter w alfabecie (np. wykorzystując ich kody ASCII) Autor: Dariusz Banasiak Katedra Informatyki Technicznej 7

Wybór określonego podejścia w dużej mierze zależy od rodzaju wiedzy, którą chcemy reprezentować. Metody deklaratywne służą do reprezentowania wiedzy o charakterze statycznym np. charakterystyka obiektów, trwałe relacje między nimi, zależności logiczne między faktami itd. Metody proceduralne są przydatne do reprezentowania wiedzy o charakterze dynamicznym np. ciągi akcji, procesy, algorytmy i reguły postępowania. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 8

Ze sposobem reprezentacji wiedzy ściśle związane są zagadnienia jej wykorzystania. Należy rozpatrzyć trzy aspekty wykorzystania wiedzy: gromadzenie nowej wiedzy, wydobycie z bazy wiedzy faktów dotyczących danego problemu, rozumowanie (wnioskowanie) przy użyciu faktów w poszukiwaniu rozwiązania. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 9

Gromadzenie wiedzy polega na dodawaniu do bazy wiedzy nowych faktów. Proces ten powinien uwzględniać związki nowych faktów z już istniejącą wiedzą (klasyfikacja wiedzy) eliminując np. wielokrotne powtarzanie tych samych faktów (integracja wiedzy). Wydobywanie wiedzy nie jest zagadnieniem prostym w przypadku systemów informatycznych. Dla dużych baz wiedzy (zawierających znaczną liczbę faktów) wybór faktów koniecznych do rozwiązania danego problemu nie jest zagadnieniem łatwym. Stosuje się w tym celu np. grupowanie faktów powiązanych ze sobą (lumping). Autor: Dariusz Banasiak Katedra Informatyki Technicznej 10

Wnioskowanie jest konieczne wówczas, gdy system nie jest w stanie wprost znaleźć rozwiązania określonego problemu. Załóżmy, że baza wiedzy zawiera następujące fakty: Ptak ma skrzydła Kanarek jest ptakiem Odpowiedź na pytanie: Czy kanarek ma skrzydła? wymaga wnioskowania połączenia ze sobą dwóch faktów i wyciągnięcia odpowiedniego wniosku. Rozróżnia się różne typy wnioskowania: formalne, proceduralne, przez analogię, przez uogólnienie. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 11

W systemach sztucznej inteligencji stosowane są różne metody reprezentacji wiedzy. Do najważniejszych z nich należy zaliczyć: reprezentacje logiczne (rachunek zdań, rachunek predykatów, rachunek klauzul), w których fakty zapisywane są w postaci formuł, a wnioskowanie opiera się na uniwersalnych metodach dowodzenia twierdzeń np. rezolucji sieci semantyczne (semantic networks), mają one postać etykietowanego grafu skierowanego, w którym wierzchołki reprezentują obiekty, pojęcia, wartości itd., natomiast krawędzie wyrażają relacje między wierzchołkami Autor: Dariusz Banasiak Katedra Informatyki Technicznej 12

reprezentacje typu (obiekt, atrybut, wartość), w których pojedynczy fakt zapisywany jest w postaci podanej trójki, a bazę wiedzy stanowi zbiór takich trójek; reguły produkcji, w metodzie tej bazę wiedzy stanowi zbiór faktów oraz reguł typu: IF warunek THEN konkluzja (metoda często stosowana w systemach ekspertowych) ramy (frames), stanowią połączenie metod deklaratywnych i proceduralnych; rama składa się ze szczelin (slots) opatrzonych nazwami, których zadaniem jest przechowywanie pewnej cząstki wiedzy o obiekcie reprezentowanym przez ramę (ze szczeliną mogą być związane również procedury) Autor: Dariusz Banasiak Katedra Informatyki Technicznej 13

zależności pojęciowe (Conceptual Dependency), służą do reprezentowania znaczenia zdań języka naturalnego w postaci specjalnej sieci. Wyróżnia się w nim sześć klas pojęć: pojęcia nominalne, akcje, lokalizacje, czasy, modyfikatory akcji i modyfikatory obiektów scenariusze (scripts), są to struktury opisujące przedmioty, role, warunki początkowe, rezultaty i ciągi scen, których opis bazuje na metodzie zależności pojęciowych (pojedynczy scenariusz może opisywać np. przebieg procesu konsumowania posiłku w restauracji, w którym rolami są klient, kelner, właściciel restauracji, kucharz, natomiast kolejne sceny to: wejście klienta do restauracji, zamówienie dania, konsumpcja, wyjście klienta z restauracji). Autor: Dariusz Banasiak Katedra Informatyki Technicznej 14

Język naturalny nie jest precyzyjny, w związku z czym niewłaściwe używanie logiki może prowadzić do wyprowadzania fałszywych stwierdzeń lub uznania za prawdziwe stwierdzeń, które nie wynikają z przesłanek. Przykład 1 P1: Wszyscy ludzie są śmiertelni P2: X jest człowiekiem W: X jest śmiertelny Przykład 2 P1: Jakieś samochody terkoczą P2: Mój samochód jest jakimś samochodem W: Mój samochód terkocze Autor: Dariusz Banasiak Katedra Informatyki Technicznej 15

Rachunek zdań Za pomocą rachunku zdań dany problem można opisać w postaci zdań. Zdania te nie są analizowane pod względem treści, ale każde zdanie posiada określoną wartość prawdy (np. 1 prawda, 0 fałsz). Zdania oznaczane są określonymi symbolami (np. dużymi literami alfabetu A, B, C,..). Zdania można łączyć za pomocą spójników logicznych: (negacja), (koniunkcja), (suma), (implikacja), (równoważność). W ten sposób można tworzyć wyrażenia logiczne (formuły). Autor: Dariusz Banasiak Katedra Informatyki Technicznej 16

Na podstawie prawdziwości zdań atomowych można również formułom przypisać wartość prawdy: P Q P P Q P Q P Q P Q 0 0 1 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 1 Paweł jest mężczyzną Paweł jest mężczyzną, a Anna jest kobietą Paweł jest mężem Anny lub Paweł jest mężem Sylwii Gdy Paweł jest mężem Anny, to Paweł nie jest mężem Sylwii P P Q R S R S Autor: Dariusz Banasiak Katedra Informatyki Technicznej 17

Literał to formuła w postaci pojedynczego symbolu zmiennej (np. A) lub zmiennej zaprzeczonej (np. B). Koniunkcyjna postać normalna (CNF) Zdanie jest w postaci CNF (ang. Conjunctive Normal Form) jeżeli ma formę: A 1 A 2 A 3... A n w której każda klauzula A i ma formę: B 1 B 2 B 3... B m (B j są literałami) Dysjunkcyjna postać normalna (DNF) Zdanie jest w postaci DNF (ang. Disjunctive Normal Form) jeżeli jest alternatywą klauzul, z których każda jest koniunkcją literałów: (B 11 B 12... B 1k1 )... (B n1 B n2... B nkn ) Autor: Dariusz Banasiak Katedra Informatyki Technicznej 18

Równoważności przydatne do przekształcania formuł logicznych: A B (A B) (B A) A B A B (A B) A B (A B) A B A A A (B C) (A B) (A C) Autor: Dariusz Banasiak Katedra Informatyki Technicznej 19

Rachunek predykatów Rachunek zdań nie jest wystarczająco bogaty, aby za jego pomocą wyrazić niektóre fakty. Rozpatrzmy wyrażenie arytmetyczne postaci: x > y Wyrażenie to nie jest ani prawdziwe, ani fałszywe. Jego prawdziwość zależy od wartości zmiennych x i y. Rachunek predykatów jest rozszerzeniem rachunku zdań przez wprowadzenie kwantyfikatorów: x ( dla każdego x ) x ( istnieje takie x, że ) Autor: Dariusz Banasiak Katedra Informatyki Technicznej 20

Rachunek predykatów jest bardzo ważnym narzędziem do reprezentacji wiedzy (programowanie w logice np. Prolog). Wyrażenie W(x), w którym występuje zmienna x i które staje się zdaniem prawdziwym lub fałszywym, gdy w miejsce x podstawimy wartość zmiennej x nazywamy funkcją zdaniową lub predykatem. Predykat składa się z nazwy i dowolnej liczby argumentów (termów). Termami mogą być stałe (numeryczne lub alfanumeryczne), zmienne oraz wyrażenia (np. kolejne predykaty). W wyniku podstawienia stałych za zmienne otrzymujemy zdania prawdziwe lub fałszywe. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 21

W zagadnieniach reprezentacji wiedzy predykat definiuje się jako własność obiektu lub relację między obiektami. W przypadku zdań języka naturalnego jest to ta część zdania, w której coś się orzeka o podmiocie lub opisuje pewną właściwość lub relację. Piotr jest kierowcą Piotr lubi Ewę Jan jest ojcem Piotra Ewa lubi wysokich mężczyzn kierowca(piotr) lubi(piotr, Ewa) ojciec(jan, Piotr) wysoki(x) mezczyzna(x) lubi(ewa, X) Autor: Dariusz Banasiak Katedra Informatyki Technicznej 22

Ogólnie strukturę predykatu możemy przedstawić w następującej postaci: nazwa_predykatu(arg 1, arg 2,.., arg n ). Predykaty mogą być połączone spójnikami logicznymi sumy oraz iloczynu, znakiem implikacji oraz znakiem równoważności. Jeżeli argumentami predykatów są wyłącznie stałe i zmienne to predykaty takie nazywamy predykatami pierwszego rzędu. Jeżeli jednym z argumentów predykatu jest predykat pierwszego rzędu to nazywany jest on predykatem drugiego rzędu, itd. (predykat trzeciego rzędu zawiera jako argument predykat drugiego rzędu). Autor: Dariusz Banasiak Katedra Informatyki Technicznej 23

Sieci semantyczne Po raz pierwszy sieci semantyczne zostały zastosowane jako model ludzkiej pamięci (Quillian, 1968). Ogólnie, siecią semantyczną nazywamy każdy graf skierowany, którego wierzchołki i krawędzie są etykietowane (przypisano im znaczenie wyrażone słowami języka naturalnego lub innymi symbolami). Wierzchołki mogą w sposób dowolny przedstawiać ogólne stany rzeczy (obiekty, zdarzenia, pojęcia abstrakcyjne itp.). Krawędzie określają relacje między wierzchołkami, mogące wyrażać dowolne treści semantyczne. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 24

Sieci semantyczne znalazły szerokie zastosowanie do reprezentacji wiedzy. Zaliczane są do deklaratywnych metod reprezentacji wiedzy. Następna plansza przedstawia przykład sieci semantycznej opisującej fragment świata ludzi i zwierząt. AKO ISA POSS OWN CAN FEATURE COLOR AGE BROTHER bycie podklasą określonego obiektu bycie instancją, konkretnym egzemplarzem z określonej klasy posiadanie pewnych elementów jako własnych składowych posiadanie pewnych obiektów jako przedmiotu własności umiejętność wykonywania określonych czynności posiadanie pewnych cech posiadanie określonego koloru bycie w określonym wieku posiadanie brata Autor: Dariusz Banasiak Katedra Informatyki Technicznej 25

s k in A K O A K O b ir d o s tr ic h C A N e y e s P O S S N O T A K O a n im a l A K O P O S S P O S S P O S S fly c a n a r y w in g s m o v e a n im a te b e in g A K O f e a th e r s F E A T U R E C A N C O L O R y e llo w fin s C A N P O S S C A N C A N ta ll P O S S fis h A K O e a t A K O b a t A K O C A N m a m m a l s o u l ta lk C A N th in k C A N P O S S C A N w r ite h u m a n C A N I S A d r a w C A N N O T J a m e s s in g I S A B R O T H E R A G E C A N J o h n s w im O W N fifte e n A G E b a r k A K O C A N s ix d o g I S A F id o A K O C O L O R b r o w n e le p h a n t F E A T U R E P O S S h e a v y tr u n k Autor: Dariusz Banasiak Katedra Informatyki Technicznej 26

Metody wnioskowania Metody wnioskowania Ważnym elementem poszukiwania rozwiązania danego problemu (np. odpowiedzi na pytanie dotyczące pewnej dziedziny wiedzy) jest wnioskowanie. Wnioskowanie to proces polegający na wyprowadzeniu (zgodnie z prawami logiki określonymi przez reguły wnioskowania) ze zdań uznanych za prawdziwe (przesłanek) nowych twierdzeń (wniosków). Proces wnioskowania można zdefiniować w następujący sposób. W bazie wiedzy znajdują się fakty oraz reguły. Na ich podstawie należy udowodnić określoną hipotezę stanowiącą cel wnioskowania. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 27

Metody wnioskowania Wnioskowanie wstecz Wnioskowanie wstecz polega na wykazaniu prawdziwości hipotezy głównej na podstawie prawdziwości przesłanek. Jeżeli prawdziwość przesłanki nie wynika bezpośrednio z faktów zawartych w bazie wiedzy, to przesłankę tę traktujemy jako nową hipotezę i próbujemy wykazać jej prawdziwość. Jeżeli w ten sposób wykażemy prawdziwość wszystkich przesłanek określonej reguły, to konkluzja tej reguły również będzie prawdziwa. Jest ona następnie wykorzystywana w procesie wnioskowania do udowodnienia kolejnych reguł. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 28

Metody wnioskowania Przykład Dane są fakty P, Q i R oraz następujące reguły: R1: P Q S R2: R T R3: S T U R4: S R V Należy udowodnić hipotezę, że zdanie V jest prawdziwe. Autor: Dariusz Banasiak Katedra Informatyki Technicznej 29

Metody wnioskowania Rozwiązanie: Krok1: czy V jest zawarte w bazie? -> NIE Krok2: czy V stanowi konkluzję reguły w bazie? -> TAK (reguła R4) Krok3: czy S jest zawarte w bazie? -> NIE Krok4: czy S stanowi konkluzję reguły w bazie? -> TAK (reguła R1) Krok5: czy P jest zawarte w bazie? -> TAK Krok6: czy Q jest zawarte w bazie? -> TAK (udowodniono regułę R1, S jest prawdziwe) Krok7: czy R jest zawarte w bazie? -> TAK Krok8: (udowodniono regułę R4, V jest prawdziwe) STOP (cel został osiągnięty) Fakty: P, Q, R R1: P Q S R2: R T R3: S T U R4: S R V Autor: Dariusz Banasiak Katedra Informatyki Technicznej 30

Metody wnioskowania Metoda rezolucji Ważną metodą wnioskowania w systemach reprezentacji wiedzy jest metoda rezolucji (dowodzenie przez zaprzeczenie). Jest ona stosowana w języku PROLOG. Metoda rezolucji sprowadza się do wykazania, że negacja zdania (które uważamy za prawdziwe) powoduje zaprzeczenie wszystkich faktów potwierdzających prawdziwość tego zdania. Metoda ta jest procesem iteracyjnym. W każdym kroku porównywane są wyrażenia zawierające predykaty wzajemnie zanegowane. Po eliminacji sprzecznych predykatów (np. P i P) powstaje nowe zdanie (tzw. resolvent). Autor: Dariusz Banasiak Katedra Informatyki Technicznej 31

Metody wnioskowania Aby zastosować metodę rezolucji predykaty należy przedstawić w postaci kanonicznej, która nie zawiera znaków implikacji oraz spójników logicznych AND ( ). Korzystając z praw logicznych można zastąpić: A Bprzez A B (A B) przez A B (prawo de Morgana). Dla faktów i reguł z poprzedniego przykładu otrzymamy: F1: P F2: Q F3: R R1: P Q S R2: R T R3: S T U R4: S R V Autor: Dariusz Banasiak Katedra Informatyki Technicznej 32

Metody wnioskowania Przebieg wnioskowania ilustruje poniższy rysunek: V S R V R S R S P Q S P P Q Fakty: P, Q, R Q NIL Q R1: P Q S R2: R T R3: S T U R4: S R V Autor: Dariusz Banasiak Katedra Informatyki Technicznej 33