• Nie Znaleziono Wyników

Rachunek perceptów Agnieszka Nowak 6 maja 2008

N/A
N/A
Protected

Academic year: 2021

Share "Rachunek perceptów Agnieszka Nowak 6 maja 2008"

Copied!
19
0
0

Pełen tekst

(1)

Rachunek perceptów

Agnieszka Nowak 6 maja 2008

1 System perceptowy - faktograficzny

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 natu- ralny we wszystkich trybach użytkowania

• użytkownik ma prawo żądać objaśnień działania systemu, a nie tylko od- powiedzi 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 logicz- nych.

Interpret logiczny - ciąg zdań wyrażonych tekstem lub mową stanowiących lin- gwistyczną interpretację faktów i celów. Są określone na trzech poziomach:

• leksykalnym

• syntaktycznym

• semantycznym

Poziomy: leksykalny oraz syntaktyczny stanowią opis tworzenia interpretów.

Poziom semantyczny - mówi o wiedzy zawartej w interpreterze. Wiedza prezen- towana prze interpretor może być wiedzą z 4 różnych poziomów:

1. deklaratywnego -określa własności bytów semantycznych (deklaracje).

2. proceduralnego -zawiera stwierdzenia (reguły) określające sposoby prze- twarzania deklaracji celów

(2)

3. celów-określa zbiór pytań na które szukamy odpowiedzi

4. sterujący-wyraża stwierdzenia określające sposób użycia reguł do przetwa- rzania deklaracji celów (zbiór takich stwierdzeń to sterowanie)

Pewnym typem interpretów logicznych sąpercepty.

Proces poznawania topercepcja.

Perceptemnazywać będziemy odzwierciedlenie przez człowieka, zjawisk, przed- miotów i procesów.Percepcja powstaje w wyniku działania bodźców.

ENT = {e1, ...,en}

Zbiór bodźców i bytów (ENT) wytwarzających bodźce - zbiór istnień.

Reakcje na bodźce wywoływane przez proces percepcji nazywamy perceptami.

PER = {pe1, ...,pen} percepcja:

per ∈ ENT × PER

(e, (pe, val))inper

należy do szczegółowego zbioru percepcji, gdzie per -percept definiowany przez parametr i wartość. Zbiór parametrów perceptu:

• PAR = {pa1, ..,pan}

• VAL = {v1, ...,vn}

Tworząc percept parametr traktujemy jako ciąg z pierwszym elementem, war- tość nazywamy kontekstem, a pozostałe elementy są atrybutami. Formalnie per- cept zapisujemy jako:

(atn:atn−1: . . . :at1:val1,valn) Poszczególne elementy perceptu wyjaśniają poniższe zapisy:

z }| { (atn:atn−1: . . . :at1:

paramtetr bezkontekstowy

z}|{

val1 kontekst

| {z } parametr perceptu

, valn)

|{z}

wartość Parametr bez wartości to parametr bezkontekstowy.

(atn

|{z}

atrybut perceptu

:atn−1: . . . :at1:val1

| {z }

konkret

,valn)

Wartość parametru określa charakter konkretu a wartość perceptu określa cha- rakter perceptu a szczegółowo charakter atrybutu perceptu. Ostatni element

(3)

perceptu występujący w jego parametrze nazywamy atrybutem perceptu. Na- tomiast parametr bez uwzględniania atrybutu perceptu nazywamy kontekstem.

Przykładowy zapis perceptu:

(DZIAL : HUTA : BUCZKA, PRODUKCJI) (POZIOM : HALASU : WALCARKA : W1, DUZY)

2 Definicja systemu perceptowego

S =< U, FS, GS >

gdzie:

• U-uniwersum ,określa wszystkie byty istnienia

• FS - skończony zbiór zdań, wyrażających fakty w konkretach parametrów systemu (fakty i reguły)

• GS - skończony zbiór zdań (u-zdań) wyrażających cele lub pytania doty- czące konkretow parametrów systemu

Przykład:(SKRZYDLA : SAMOLOT : X, MA)- to formuła GS -”czy wszystko co ma skrzydła może latać?”

przykład:(SKRZYDLA : OBIEKT : X, MA) ⇒ (LATA : OBIEKT : X, TAK)

3 Język perceptów

JP =< A, G >

3.1 Alfabet

Al f abet - definiuje wszystkie symbole

1. NF - zbiór 0 i 1 argumentowych funktorów nazwotwórczych NF = NF0vNF1 2. VAR - zbiór zmiennych

3. ¬, ∧, ∨, ⇒, ⇔ -spójniki zewnętrzne 4. −,+,∗,↔, → -spójniki wewnętrzne 5. ( , : , ) , , - symbole pomocnicze

(4)

3.2 Gramatyka

Gramatyka = Syntaktyka i semantyka 3.2.1 Syntaktyka

Słowa określone są poprzez zbiór termów TR 1. jeżeli X ∈ VAR, to x ∈ TR

2. stałe Π, ⊔ ∈ TR 3. jeżeli v ∈ NF, to v ∈ TR 4. jeżeli t1,t2TR to:

• −t1TR

• t1+t2TR

• t1t2TR

• t1t2TR

• t1t2TR

D - zbiór deskryptorów systemu = zbiór D spełniający następujące warunki:

• jeżeli x ∈ VAR, v ∈ NF, a ∈ NF to (a : x), (a : v) ∈ D

• jeżeli d ∈ D, a ∈ NF (a : d) ∈ D Zbiór formuł języka F:

1. (a : d) ∈ D, t ∈ TR to (a : d, t) ∈ F formuła elementarna 2. A ∈ F to ¬A ∈ F

3. A, B ∈ F to A ∪ B ∈ F , A ∩ B ∈ F, (A ⇒ B) ∈ F, (A ⇔ B) ∈ F 4. A ∈ F, x ∈ VAR to ∃xA ∈ F i ∀xA ∈ F

3.2.2 Semantyka

Semantyka języka określa znaczenie słów. Jest definiowana poprzez określe- nie pary < U, m > uniwersum i f.oznaczajca, gdzie U to zbiór uniwersum zaś f.oznaczajca każdemu elementowi ze zbioru nazw NF przyporządkowuje pewien podzbiór, ze zbioru uniwersum U.

• U =< PAR, VAL >

• m : NF → VALvAT

• m(⊔) =⊥ zbiór elementów nieokreślonych

• m(Π) = T zbiór elementów nadokreślonych

(5)

• m(a) ∈ AT

• m(v) ∈ VAL

m− jest ściśle zależne od U (funkcja oznaczająca uniwersum U)

• m(an: .. :a1:v1,vn) = (m(an) : .. :m(a1) :m(v1),m(vn))

W- z definicji jest to funkcja odwzorowująca zbiór zmiennych w zbiór wartości W : VAR → VAL

Jeżeli x ∈ VAR, a ∈ NF, to W(x) ∈ VALm(a) W- wartościowanie języka perceptu.

W ramach semantyki określa się realizację języka perceptów Uporządkowana trójka R = (U, m, PE): gdzie:

• U - uniwersum,

• m to f. Oznaczająca w U,

• PE to zb. Perceptów

Jeżeli formuła ”a” zawiera zmienne, to realizacja języka określi spełnienie for- muły ”a” przez wartościowanie ”w”. Dla wyprowadzenie prawdziwości dowodu w języku perceptu wykorzystuje się aksjomaty logiczne, ponadto wykorzystuje się definicje spójników wewnętrznych

• (d, tn) = (d, ¬tn)

• (d, t1 + t2) = (d, t1) ∨ (d, t2)

• (d, t1 ∗ t2) = (d, t1) ∧ (d, t2)t1, t2, tn ∈ TR

• (d, t → t2) = (d, t1) ⇒ (d, t2)

• (d, t1 ↔ t2) = (d, t1) ⇔ (d, t2)

• R1 : (A, A ⇒ B)/Breguła odrywania

• R2 : (A(x))/∀xA(x) reguła uogólniania

• D1 : (OBIEKT : SAMOLOT : SAMOLOT, X1)

• D2 : (OBIEKT : PTAK : PTAK, X2)

• D3 : (ZACHOWANIE : OBIEKT : X1, LATA)

• D4 : (ZACHOWANIE : OBIEKT : X2, LATA)

• D5 : (SKRZYDLA : SAMOLOT : X1, MA)

• D6 : (SKRZYDLA : PTAK : X2, MA)

• (SKRZYDLA : OBIEKT : X, MA) ⇒ (ZACHOWANIE : OBIEKT : X, LATA) dla wszystkich obiektów z uniwersum reguła jest spełniona

(6)

• D7 : (SKRZYDLA : KIWI : X3, MA)

• D8 : (ZACHOWANIE : KIWI : X3, NIELATA) CISNIENIE : PARA : KOCIOL : K1

Powyżzszy parametr czytamy: ”ciśnienie pary w kotle K1”. Jeśli pa jest parame- trem perceptu pe, to ostatni element parametru pa nazywamy atrybutem per- ceptu pe, natomiast parametr pa bez ostatniego elementu konkretem perceptu pe, przy czym konkret jest również parametrem ( wskazującym coś konkretnego ). Zbiór konkretów parametrów PAR oznaczamy przez CON a jego elementy przez c, c1, c2, . . . . Wprowadzoną powyżej terminologię perceptu ilustruje poniższy schemat:

Zwróćmy uwagę, że w języku potocznym zwykle parametrem nazywamy ciąg atrybutów nie przywiązując uwagi do jego kontekstu. Np. mówiąc: ciśnienie pary jest parametrem kotła ( w naszej notacji CISNIENIE : PARA : KOCIOL ) mamy na uwadze jakiś ustalony kocioł lub dowolny kocioł. Parametry z opuszczonym kontekstem ( np. CISNIENIE : PARA : KOCIOL ) nazywamy parametrami bezkontekstowymi i zbiór tych parametrów oznaczamy przez CFPAR, a jego elementy przez par, par1, par2, . . . . Jeśli:

(atn:atn..1: ... :at1:val1,valn) jest perceptem to:

val1 jest wartością atrybutu at1

valnjest wartością atrybutu atn

Z powyższego wynika, że atrybut at1 wyznacza typ kontekstu a atrybut atn

typ wartości parametru. Z określenia perceptu wynika, że jeśli najprostszy kon- kret ma postać:

at1:val1

( z jednym tylko atrybutem ), to najprostszy parametr perceptu ma postać:

at2:at1:val1

tzn. zawiera co najmniej dwa atrybuty. Fakty dotyczące kotła K1, który jest koloru czerwonego, w kształcie walca, o objętości 2m3 i zawiera parę o ciśnieniu i temperaturze, odpowied- nio, 2kPa i 130, możzna wyrazić przez następujące percepty:

(KOLOR : KOCIOL : K1, CZERWONY) (KSZTALT : KOCIOL : K1, WALEC) (OBJETOSC : KOCIOL : K1, 2m3)

(TEMPERATURA : PARA : KOCIOL : K1, 130) (CISNIENIE : PARA : KOCIOL : K1, 2kPa) (OBJETOSC : PARA : KOCIOL : K1, 2m3)

Pierwsze trzy percepty dotyczą konkretu KOCIOL : K1, natomiast pozostałe trzy: konkretu PARA : KOCIOL : K1.

Zbiór perceptów relacji per ( jej przeciwdziedzinę ) oznaczamy przez PE: PE = (ENT)per

Niech c będzie konkretem. Przez PE = c oznaczamy podzbiór perceptów zbioru PE spełniający poniższe dwa warunki:

1. jeśli (par : c, val) ∈ PE, to (par : c, val) ∈ PE/c

(7)

2. jeśli (atn:pa, valn) ∈PE/c i (par : atn:valn,valk) ∈PE, to (par : atn:valn,valk) ∈ PE/c.

Zbiór PE/c nazywamy znaczeniem konkretu c.

Rozpatrzmy fakty wyrażone następującymi zdaniami języka naturalnego:

(D1) Pies AS szczeka.

(D2) Zwierzę Mruczek miauczy.

(R1) Jeśli pies merda ogonem, to jest przyjazny.

(R2) Jeśli pies szczeka na kota, to kot obawia się psa.

(R3) Pies jest zwierzęciem. ( Jeżeli pies to zwierzę. ) (R4) Jeśli zwierzę miauczy, to jest kotem.

i cel wyrażony następująco: (G1) Czy istnieją kot i pies takie, że kot obawia sie psa?

Podzbiór parametrów bezkontekstowych, podzbiór atrybutów, podzbiory warto- ści atrybutów i podzbiory zmiennych dla powyższych zdań mogą być określone w sposób następujący:

{PIES : PIES, KOT : KOT,

ZWIERZE : ZWIERZE, ZACHOWANIE : ZWIERZE, USPOSOBIENIE : PIES,

PIES : KOGO − CZEGO : OBAWIANIE − SIE : KTO − CO : KOT, PIES : ZWIERZE} ⊆ CFPAR

{PIES, KOT, ZWIERZE, ZACHOWANIE, USPOSOBIENIE} ⊆ AT {AS} ⊆ VALPIES,

{x1,x2,x4,x8} ⊆VARPIES

{MRUCZEK} ⊆ VALKOT {x3,x5,x7} ⊆VARKOT,

VALZWIERZE=VALPIESVALKOT, {x4,x5} ⊆VARZWIERZE,

{MERDA − OGONEM, SZCZEKA, MIAUCZY} ⊆ VALZACHOWANIE {PRZYJAZNY} ⊆ VALUSPOSOBIENIE

Zbiór parametrów bezkontekstowych CFPAR i zbiory wartości atrybutów AT wyznaczają uniwersum U systemu perceptowego S. Wśród U-faktów wyróżnia- my zdania w postaci implikacyjnej (R1 → R4), które nazywamy U-regułami i oznaczamy przez RS oraz U-fakty stwierdzające własności konkretów (D1iD2) nazywane U-deklaracjami i oznaczane przez DS. Oczywiście:FS = DS ∪ RS

4 Rachunek perceptowy

Następnym etapem formalizacji rachunku perceptowego jest wybór aksjomatów logicznych LA i reguł dowodzenia, które łącznie stanowią jego aparat logiczny.

Aksjomaty logiczne wybieramy spośród tych formuł, które są tautologiami. Za aksjomaty logiczne przyjmujemy wszystkie formuły postaci:

(LA1)A ⇒ (B → A)

(8)

(LA2)(A ⇒ (B ⇒ C)) ⇒ ((A ⇒ B) ⇒ (A ⇒ C)) (LA3)¬A ⇒ (A ⇒ B)

(LA4)(¬A ⇒ A) ⇒ A

(LA5)∀x(A ⇒ B(x)) ⇒ (A ⇒ ∀xB(x))

gdzie A, B, C ∈ FORPL, przy czym w aksjomacie LA5 zakłada się, że w formule A nie występuje zmienna wolna x.

Za reguły dowodzenia przy takim układzie aksjomatów logicznych przyjmujemy:

regułę odrywania:

(DR1)A, A ⇒ B oraz B

regułę uogólnienia:

(DR2)∀xA(x) A(x) .

Ponadto przyjmujemy defnicje spójników ∧,∨,⇔ i kwantyfikatora szczegółowe- go ∃ określając je przez implikację, negację i kwantyfikator ogólny, w sposób następujący:

(LD1)A ∨ B = ¬A ⇒ B (LD2)A ∧ B = ¬(A ⇒ ¬B)

(LD3)A ⇔ B = (A ⇒ B) ∧ (B ⇒ A) (LD4)∃xA = ¬∀x¬A

Ustaliwszy zbiór aksjomatów logicznych i reguł dowodzenia precyzujemy intu- icyjne pojęcie dowodu.

5 Definicja dowodu formalnego

Dowodem formalnym formuły A neleżącej do zbioru formuł A ⊆ FS nazywać będziemy skończony ciąg formuł rachunku perceptowego, takich że każda formuła w tym ciągu jest formułą ze zbioru faktów (FS), bądź aksjomatem rachunku, bądź aksjomatem logicznym, bądź wynika z wcześniejszych formuł w ciągu, poprzez zastosowanie reguł dowodzenia przy czym ostatnią regułą w rozpatrywanym ciągu jest formuła A.

Formuła A jest wyprowadzalna ze zbioru formuł FS (A ∈ FS), jeżeli istnieje dla niej dowód formalny.

Operacja wyprowadzania D(FS) = {A ∈ FOR; (FS |= A)} wyp A ze zbioru FS Dla każdego zbioru formuł FS, definiujemy operacje wyprowadzania D(FS) jako zbiór wszystkich formuł, które można wyprowadzić ze zbioru FS.

(9)

6 Dedukcja regułowa w systemie perceptowym

Niech S1 = (U1, FS1, GS1) będzie systemem perceptowym opisującym zacho- wanie psa Asa i kota Mruczka. Ciało wiedzy tego systemu wyraża się przez następujące U1-formuły:

(D1)(ZACHOWANIE : PIES : AS, SZCZEKA)

(D2)(ZACHOWANIE : ZWIERE : MRUCZEK, MIAUCZY)

(R1)(ZACHOWANIE : PIES : x1, MERDA − OGONEM) ⇒ (USPOSOBIENIE : PIES : x1, PRZYJAZNY)

(R2)(ZACHOWANIE : PIES : x2, SZCZEKA) ∧ (KOT : KOT : x3, x3) ⇒ (PIES : KOGO − CZEGO : OBAWIA − SIE : KTO − CO : KOT : x3, x2)

(R3)(PIES : PIES : x4, x4) ⇒ (ZWIERZE : ZWIERZE : x4, x4)

(R4)(ZACHOWANIE : ZWIERZE : x5, MIAUCZY) ⇒ (KOT : KOT : x5, x5) (G1)(PIES : KOGO − CZEGO : OBAWIA − SIE : KTO − CO : KOT : K1, P1) gdzie K1 i P1 są pewnymi stałymi ( tzw. stałymi Skolema ), których wartości trzeba ustalić. Wyprowadźmy U1-cel G1 z powyższego ciała wiedzy systemu S1.

Wyprowadzamy najpierw U1-deklaracje:

(KOT : KOT : MRUCZEK, MRUCZEK) po czym korzystając z niej - U1-cel G1.

1. Stosując odpowiednie aksjomaty logiczne dla R2 dostajemy:

(ZACHOWANIE : ZWIERZE : MRUCZEK, MIAUCZY) ⇒ (KOT : KOT : MRUCZEK, MRUCZEK)

2. W schemacie reguły odrywania DR1 dla przesłanek D2 i U1-formuły otrzy- manej w punkcie 1 otrzymujemy wniosek:

(D3)(KOT : KOT : MRUCZEK, MRUCZEK)

Jaki schemat postępowania wyznaczają dwa powyższe punkty wyrażające do- wód U1-formuły D3? Istota sprawy redukuje się do poszukiwania takiego pod- stawienia s za zmienne wolne U1-formuły R4, by jej poprzednik stał się iden- tyczny z jedną z U1-deklaracji. Wtedy to możemy właśnie oderwać następnik U1-reguły R4 i przyjąć go za U1-formułę wyprowadzalną w S1. Za- tem powyż- sze punkty redukują się do następującego schematu stosowania U1-reguł:

A, B ⇒ C s(C)

jeśli istnieje takie podstawienie s, dla którego s(A) = s(B) gdzie: A ∈ DS1, (B ⇒ C) ∈ RS1, s(C) włączamy do RS1. Podstawieniem s obejmujemy również U1-deklarację A, gdyż w ogólnym przypadku może ona zawierać zmienne wolne.

Z powyższego schematu wynika, że kluczową kwestią jego stosowania staje się wyznaczanie podstawienia s spełniającego warunek:

s(A) = s(B)

Poszukiwanie takiego podstwienia jest ważnym procesem w systemach sztucznej inteligencji, który nazywany jestunifikacją.

Jeśli istnieje takie s, dla którego s(A) = s(B) to mówimy, że A i B unifikują się, a podstawienie s nazywamy unifikatorem dla A i B.

(10)

Stosując obecnie powyższy schemat dla przesłanek U1-deklaracji D1 i D3, oraz U1-reguły R2,

przy podstawieniu {x3/MRUCZEK, x2/AS} otrzymujemy U1-deklarację:

(D4)(PIES : KOGO − CZEGO : OBAWIANIE − SIE : KTO − CO : KOT : MRUCZEK, AS)

zgodną z U1-celem G1, co kończy dowód.

Zazwyczaj nie tylko interesuje nas dowód celu reprezentującego pytanie, lecz przede wszystkim odpowiedź na to pytanie tj. wskazanie takich wartości, dla których U1-formuła celu jest spełniona. Innymi słowy interesuje nas dowód kon- struktywny, wskazujący na wartości parametrów, dla których cel jest prawdziwy.

Aby otrzymać dowód konstruktywny należałoby porównać cele z deklaracjami i w wyniku zwrócić warunek spełniający kryterium ich zgodności. Kryterium to jednocześnie powinno wskazywać na dowóod celu.

Jeśli zgodność U1-celu i U1-deklaracji sprawdzimy do ich unifikacji, to warun- kiem ich zgodności może być unifikator.

7 Zadania egzaminacyjne z rachunku perceptowego

1. Następującą wiedzę - reguły i fakty (ewentualnie uzupełnioną regułami pomocniczymi) zapisać w postaci perceptów i predykatów:

• x jest matką y jeżeli x jest kobietą i y jest dzieckiem x

• x jest ojcem y jeżeli x jest mężczyzną i y jest dzieckiem x

• x jest człowiekiem jeżeli x jest dzieckiem y i y jest człowiekiem

• x jest człowiekiem jeżeli jego matka jest człowiekiem i jego ojciec jest człowiekiem

• Ewa jest kobietą Rozwiązanie:

• (osoba : kogo : jest matka : kto : osoba : x, y) if (plec : osoba : x, kobieta) and (osoba : kogo : jest dzieckiem : kto : osoba : y, x)

• (osoba : kogo : jest o jcem : kto : osoba : x, y) if (plec : osoba : x, mezczyzna) and (osoba : kogo : jest dzieckiem : kto : osoba : y, x)

• ( jest czlowiekiem : osoba : x, tak) if (osoba : kogo : jest dzieckiem : kto : osoba : y, x) and (jest czlowiekiem : osoba : y, tak)

• ( jest czlowiekiem : osoba : x, tak) if (osoba : kogo : jest matka : kto : osoba : x, y) and (jest czlowiekiem : osoba : y, tak) and (osoba : kogo : jest ojcem : kto : osoba : x, z) and (jest czlowiekiem : osoba : z, tak)

• (plec : osoba : Ewa, kobieta) Można prościej... Rozwiązanie:

(11)

• x jest matką y jeżeli x jest kobietą i y jest dzieckiem x:

(os2 : matka : os1 : x, y) if (plec : os1 : x, kobieta) and (os1 : dziecko : os2 : y, x)

• x jest ojcem y jeżeli x jest mężczyzną i y jest dzieckiem x: (os2 : o jciec : os1 : x, y) if (plec : os1 : x, mezczyzna) and (os1 : dziecko : os2 : y, x)

• x jest człowiekiem jeżeli x jest dzieckiem y i y jest człowiekiem:

(istota : os1 : x, czlowiek) if (os2 : dziecko : os1 : x, y) and (istota : os2 : y : czlowiek)

• x jest człowiekiem jeżeli jego matka jest człowiekiem i jego ojcicec jest człowiekiem: (istota : os1 : x, czlowiek) if (os1 : matka : os2 : y, x) and (istota : os2 : y, czlowiek)

• Ewa jest kobietą: (plec : os1 : Ewa, kobieta) i teraz dla pierwszego zbioru załóżmy że mamy:

• reguły:

– (osoba : kogo : jest matka : kto : osoba : x, y) if (plec : osoba : y, kobieta) and (osoba : kogo : jest dzieckiem : kto : osoba : y, x) – (osoba : kogo : jest ojcem : kto : osoba : x, y) if (plec : osoba :

y, mezczyzna) and (osoba : kogo : jest dzieckiem : kto : osoba : y, x) – (jest czlowiekiem : osoba : x, tak) if (osoba : kogo : jest dzieckiem :

kto : osoba : x, y) and (jest czowiekiem : osoba : y, tak)

– (jest czlowiekiem : osoba : x, tak) if (osoba : kogo : jest matka : kto : osoba : y, x) and (jest czlowiekiem : osoba : y, tak) and (osoba : kogo : jest ojcem : kto : osoba : z, x) and (jest czlowiekiem : osoba : z, tak)

• fakty:

– (plec : osoba : Ewa, kobieta)

– (osoba : kogo : jest dzieckiem : kto : osoba : Ewa, Ola) – (jest czlowiekiem : osoba : Ola, tak)

– (jest czlowiekiem : osoba : Tadek, tak)

Przeprowadź wnioskowanie metodą wnioskowania w przód dla hipo- tezy: (jest czlowiekiem : osoba : Ewa, tak)

(a) Mamy regułę nr 3:

(jest czlowiekiem : osoba : x, tak) if (osoba : kogo : jest dzieckiem : kto : osoba : x, y) and (jest czowiekiem : osoba : y, tak)

(b) Czyli udowodnimy, że Ewa jest człowiekiem, a więc wykażemy praw- dziwość tezy: (jest czlowiekiem : osoba : Ewa, tak) jeśli wykażemy, że:

(osoba : kogo : jest dzieckiem : kto : Ewa : y) i że (jest czowiekiem : osoba : y, tak).

(c) Naszym podcelem staje się więc hipoteza: (osoba : kogo : jest dzieckiem : kto : Ewa : y)

(12)

(d) Łatwo zauważyć, iż w bazie wiedzy nie ma ani faktów świadczących o tym, ani reguły, która mogłaby taki cel udowodnić. Próbujemy więc szukać innej reguły, której konkluzją byłby cel wnioskowania.

(e) Znajdujemy regułę czwartą: [(jest czlowiekiem : osoba : x, tak) if (osoba : kogo : jest matka : kto : osoba : y, x) and (jest czlowiekiem : osoba : y, tak) and (osoba : kogo : jest ojcem : kto : osoba : z, x) and (jest czlowiekiem : osoba : z, tak)].

Zgodnie z nią, udowodnimy, że Ewa jest człowiekiem, jeśli wykażemy prawdziwość następujących przesłanek:

• (osoba : kogo : jest matka : kto : osoba : x, Ewa) (osoba x jest matką Ewy),

• ( jest czlowiekiem : osoba : x, tak) (osoba y jest człowiekiem),

• (osoba : kogo : jest o jcem : kto : osoba : z, Ewa) (osoba z jest ojcem Ewy),

• ( jest czlowiekiem : osoba : z, tak) (osoba z jest człowiekiem).

(f) Pierwsza przesłanka nie jest faktem w bazie wiedzy, więc szukamy reguły, której konkluzją byłby zapis: (osoba : kogo : jest matka : kto : osoba : x, Ewa). Znajdujemy regułę pierwszą, zgodnie z którą: [(osoba : kogo : jest matka : kto : osoba : x, y) if (plec : osoba : y, kobieta) and (osoba : kogo : jest dzieckiem : kto : osoba : y, x)].

(g) Zatem wykażemy, że osoba x jest matką Ewy jeśli wykażemy, że Ewa jest kobietą i że jest dzieckiem osoby x.

(h) Pierwszy warunek: (plec : osoba : y, kobieta) [(plec : osoba : Ewa, kobieta)]

to fakt w bazie wiedzy.

(i) Drugi warunek: (osoba : kogo : jest dzieckiem : kto : osoba : y, x) [(osoba : kogo : jest dzieckiem : kto : osoba : Ewa, Ola)] również jest faktem w bazie wiedzy, co oznacza, że x = Ola.

(j) Zatem oba warunki reguły pierwszej są spełnione, wiec prawdziwy staje sie zapis: [(osoba : kogo : jest matka : kto : osoba : x, y)], a kon- kretnie: [(osoba : kogo : jest matka : kto : osoba : Ola, Ewa)].

(k) Dalej, wracając do reguły nr 4, musimy wykazać, że: (jest czlowiekiem : osoba : x, tak), co jest już faktem w bazie wiedzy:

(l) (jest czlowiekiem : osoba : Ola, tak).

(m) Trzecią przesłanką reguły nr 4 jest zapis:

(n) (osoba : kogo : jest ojcem : kto : osoba : z, Ewa) (osoba z jest ojcem Ewy), nie jest on faktem w bazie wiedzy, więc udowodnimy go za pomocą reguły nr 2. (nie będziemy tego rozwijać tutaj - analogia do warunku pierwszego reguły nr 1).

(o) Ostatni warunek reguły nr 4:

(p) (jest czlowiekiem : osoba : z, tak) (osoba z jest człowiekiem), również jest faktem w bazie wiedzy, co oznacza, że konkluzja tej reguły, a

(13)

więc nasza hipoteza główna: [(jest czlowiekiem : osoba : Ewa, tak) udało się udowodnić. Staje się on nowym faktem w bazie wiedzy a proces wnioskowania zostaje zakończony pomyślnie.

2. Dane są reguły (w takiej kolejności):

• Drogie uniwersalne komputery, zamknięte w dużej obudowie posia- dają procesor PII.

• Szybkie komputery przeznaczone do gier są drogie.

• Komputery wyposażone w dużą pamięć operacyjną są uniwersalne.

• Jeżeli komputer nie ma nagrywarki CD, to jest dostosowany do gier.

• Komputery wyposażone w nagrywarki są drogie.

oraz fakty:

• Mój komputer ma dużą obudowę, jest szybki i wyposażony w nagry- warki, a przy tym ma dużą pamięć opracyjną.

Reguły i fakty zapisz za pomocą perceptów. Metodą wnioskowania w tył, sprawdzić czy mój komputer est wyposażony w procesor PII. Uwaga ! - uaktywnić reguły wg kolejności ich umieszczanie w bazie wiedzy. Rozwią- zanie:

Reguły:

• (cena:komputer:x1,drogi) ∧ (cecha:komputer:x1,uniwersalny) ∧ (obu- dowa: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) Jeżeli kom- puter nie ma nagrywarki CD, to jest dostosowany do gier.

Fakty:

• (obudowa:komputer:mój,duża)

• (prędkość:komputer:mój,szybki)

• (nagrywarka:komputer:mój,tak)

• (pamięć:komputer:mój,dużo)

3. Napisać przykładowy percept (posiadający minimum trzy atrybuty). Okre- ślić co to jest: wartość perceptu, a co to jest parametr bezkontekstowy.

4. System perceptowy składa się z... (wymienić, nazwać każdy element).

(14)

5. Zapisać w postaci reguł podane zdania:

• Jeżeli ma się 65 lat, to można mieć emeryturę.

• Jeżeli jest się młodym, to jest długi okres płacenia składek.

• Jeżeli się pracuje to ma się dochody.

• Jeżeli ma się dochody, to można oszczędzać.

• Jeżeli płacimy wysokie składki przez długi czas, to otrzymamy wy- soką emeryturę.

• Jeżeli mamy wysokie dochody i nie mamy nikogo na utrzymaniu, to płacimy wysokie składki.

Fakty:

• Magda jest młoda, pracuje, ma wysokie dochody, nie ma nikogo na utrzymaniu.

Udowodnić cel: ”Magda otrzyma wysoką emeryturę”, stosując metodę wnioskowania wstecz.

Rozwiązanie:

Zdefiniujmy sobie zbiór atrybutów perceptów:

Atr={ wiek, emerytura, składka, czas oplaty, dochody, oszczę- dzanie, utrzymanie}

Vwiek={65, młody}

Vemerytura={tak, wysoka}

Vskadka={wysoka}

Vdochody={tak, wysokie}

Vczas oplaty={długi}

Voszczedzanie={tak}

Vutrzymanie={nie}

Vpraca={tak, nie}

Reguły:

• (emerytura:osoba:x1,tak) if (wiek:osoba:x1,65)

• (czas oplaty:osoba:x1, długi) if (wiek:osoba:x1,młody)

• (dochody: osoba:x1,tak) if (praca:osoba:x1,tak)

• (oszczędzanie:osoba:x1,tak) if (dochody:osoba:x1,tak)

• (emerytura:osoba:x1,wysoka) if (czas oplaty:osoba:x1, długi) and (skła- da:osoba:x1,wysoka)

• (składka:osoba:x1, wysoka) if (dochody:osoba:x1, wysokie) and (utrzy- manie:osoba:x1,nie)

(15)

Fakty:

• (wiek:osoba:Magda, młoda)

• (praca:osoba:Magda,tak)

• (dochody:osoba:Magda,wysokie)

• (utrzymanie:osoba:Magda, nie)

Cel wnioskowania:(emerytura:osoba:Magda, wysoka) Proces wnioskowania wstecz dla podanego celu:

(a) Nie ma takiego faktu w bazie faktów, więc szukamy reguły, której konkluzją byłby ów cel. Znajdujemy regułę piątą:

(emerytura:osoba:x1,wysoka) if

(czas oplaty:osoba:x1, długi) and (składa:osoba:x1,wysoka)

(b) Uaktywniamy regułę piątą. W tym celu rekurencyjnie uruchamiamy algorytm wnioskowania wstecz dla każdej przesłanki tej reguły, a więc kolejno dla przesłanek:

• (czas oplaty:osoba:x1, długi)

• (składa:osoba:x1,wysoka)

Z tym, że teraz sprawdzamy, czy prawdziwe są przesłanki:

• (czas oplaty:osoba:Magda, długi)

• (składka:osoba:Magda,wysoka)

gdyż nastąpuje proces unifikacji zmiennej x1 z celem dotyczącym konkretnie Magdy.

(c) Na liście faktów nie ma faktu:(czas oplaty:osoba:Magda, długi), za- tem znów aby go udowodnić, szukamy reguły, w której występowałby on jako konkluzja.

(d) Znajdujemy regułę drugą:

(czas oplaty:osoba:x1, długi) if (wiek:osoba:x1,młody).

Aby ją udowodnić, musimy wykazać prawdziwość wszystkich jej prze- słanek, a więc konkretnie jednej w tym przypadku:(wiek:osoba:x1,młody), a więc:(wiek:osoba:Magda,młody).

(e) Jest to fakt nr 1 w naszej bazie, a więc dopisujemy do faktów, nowy fakt, będący konkluzją tej uaktywnionej pomyślnie reguły nr 2, a więc fakt:(czas oplaty:osoba:Magda, długi).

(f) Wracamy do reguły nr 5, w której udowodniliśmy prawdziwość pierw- szej przesłanki, teraz musimy wykazać prawdziwość drugiej:(skład- ka:osoba:Magda,wysoka).

(g) Ów podcel nie jest faktem w bazie wiedzy, więc podobnie szukamy reguł, w których byłby on konkluzją. Znajdujemy regułę nr 6:

(składka:osoba:x1, wysoka) if

(16)

(dochody:osoba:x1, wysokie) and (utrzymanie:osoba:x1,nie).

Aby ją udowodnić musimy wykazać prawdziwość dwóch jej przesła- nek:

• (dochody:osoba:x1, wysokie)

• (utrzymanie:osoba:x1,nie)

(h) Okazuje się, iż w bazie wiedzy są odpowiednie fakty, potwierdzają- ce te przesłanki. Odpowiednio, przesłance: (dochody:osoba:x1, wy- sokie), odpowiada fakt nr 3: (dochody:osoba:Magda,wysokie) , zaś przesłance: (utrzymanie:osoba:x1,nie) odpowiada fakt nr 4: (utrzy- manie:osoba:Magda,nie).

(i) Wykazaliśmy prawdziwość wszystkich przesłanek reguły nr 6, a więc jej konkluzja staje się nowym faktem w bazie wiedzy:

(składka:osoba:Magda, wysoka)

(j) Wracamy zatem do reguły nr 5, i teraz obie jej przesłanki są już faktami w bazie wiedzy, a więc konkluzja tej reguły:

(emerytura:osoba:Magda,wysoka)

stała się nowym faktem w bazie wiedzy i na tym pomyślnie kończy się proces wnioskowania.

6. Następującą wiedzę dotyczącą budowy prostych wyrażeń arytmetycznych zapisać w postaci reguł używając systemu perceptowego:

W ← C· C|C C ← S|S + S|(C) S ← 0|1| . . . |9

Podać zastosowanie tej wiedzy do sprawdzenia poprawności wyrażenia:

(1)· (2 + 3)

Uwaga: Kolejność czytania znaków wyrażenia jest dowolna.

Rozwiązanie:

• R1: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’0’)

• R2: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’1’)

• R3: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’2’)

• R4: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’3’)

• R5: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’4’)

• R6: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’5’)

• R7: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’6’)

• R8: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’7’)

• R9: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’8’)

• R10: (Symbol:wyrażenie:x1,S) if (znak:wyrażenie:x1,’9’)

• R11: (Symbol1:wyrażenie:x1,C) if (Symbol1:wyrażenie:x1,S)

• R12: (Symbol1:wyrażenie:x1,C) if (Symbol1:wyrażenie:x1,S) and (znak:wyrażenie:x1,’+’) and (Symbol2:wyrażenie:x1,S)

(17)

• R13: (Symbol1:wyrażenie:x1,C) if (znak:wyrażenie:x1,’(’) and (symbol1:wyrażenie:x1,C) and (znak:wyrażenie:x1,’)’)

• R14: (Symbol1:wyrażenie:x1,W) if (symbol:wyrażenie:x1,C)

• R15: (Symbol1:wyrażenie:x1,W) if (Symbol:wyrażenie:x1,C) and (znak:wyrażenie:x1,·) and (symbol:wyrażenie:x1,C) Sprawdzam wyrażenie: (2)· (2 + 3)

• R3: 2· (S + 3)

• R4: 2· (S + S)

• R12: 2· C

• R13: 2· C

• R3: S· C

• R11: C· C

• R15: W

a więc wyrażenie jest poprawne.

8 Zadania do rozwiązania przez studentów

1. Mając dane atrybuty i ich wartości:

AT = {egzamin, zaliczenia, czesne, kolejny semestr}

Vegzamin={zdany, nie zdany}

Vzaliczenia={tak, nie}

Vczesne={opacone, nie opacone}

Vkole jny semestr={tak, nie}

Wiedzę podaną w języku naturalnym zapisz za pomocą perceptów:

• Tylko studenci ze zdanymi egzaminami i opłaconym czesnym lub zdobytymi zaliczeniami mają szansę przejść na kolejny semestr.

• Nie zdany egzamin i nie opłacone czesne uniemożliwiają przejście na kolejny semestr.

• Adam uzyskał wszystkie zaliczenia.

• Mirek zdał egzamin lecz nie opłacił czesnego.

2. Dany jest następujący zbiór reguł:

• Jeżeli pada śnieg, to można jeździć na nartach lub sankach.

• Jeżeli jest mróz, to można jeździć na łyżwach.

• Jeżeli ktoś lubi jeździć na nartach, ma wolny czas i można jeździć, to jeździ na nartach.

(18)

• Jeżeli ktoś nie pracuje, to ma czas wolny.

• Jeżeli ktoś pracuje, to jest zajęty.

• Jeżeli nie pada śnieg i nie ma mrozu, to nie ma co robić.

• Jeżeli jest zima i są chmury, to pada śnieg. oraz fakty:

• Andrzej nie pracuje i jest zima.

Wiedzę i dane należy zapisać w rachunku perceptów oraz w rachunku predykatów a następnie udowodnić hipotezę:Andrzej jeździ na nartach.

3. Dana jest wiedza w postaci następującego tekstu:

Do rozwiązania na egzaminie są 3 zadania. Jeżeli średnia ocen z tych zadań jest większa lub równa 4, to student otrzymuje zwolnienie z częoeci ustnej. Jeżeli średnia ocen jest między 3 (włącznie) a 4, to student przystępuje do egzaminu ustnego.

Jeżeli 2 zadania nie są rozwiązane na ocenę przynajmniej 3, to egzamin nie jest zdany.

Zapisać podaną wiedzę za pomocą perceptów. Zbiór faktów, dla których będzie stosowana ta wiedza stanowią oceny za poszczególne zadania: 2, 3, 4, 5.

4. Podać przykład zbioru reguł i faktów (dla dowolnej dziedziny wiedzy) realizując następującą sytuację: reguły:

• a ∧ b ∧ c → d

• e ∧ f → a

• g → b

• ¬h → f

• h → a

oraz fakty: c, e, ¬h, g. Reguły i fakty zapisać za pomocą perceptów. Udo- wodnić cel d metodą wnioskowania w przód.

5. Dane są fakty: c = T, e = T, h = N, g = T oraz reguły zapisane w tabeli:

(a, b, c, e, f, g, h–przesłanki, W–wniosek)

a b c e f g h W

T T T - - - - d=T

- - T T T - - a=T

- - - T - b=T

- - - N f=N

- - - T f=T

oznaczenia: T – tak, N – nie, − warunek nie występuje w regule, a – pada oenieg, b – jest zimno, c – mam czas, d – jeżdżę na nartach, e – są chmury,

f – jest zima, g – jest luty , h – jest maj.

(19)

Tak określone dane zapisać za pomocą perceptów (reguły i fakty) oraz wyprowadzić cel d metodą wnioskowania w tył.

Cytaty

Powiązane dokumenty

To uaktywnia tę regułę a w efekcie konkluzja tej reguły zostaje dodana jako nowy fakt do bazy

Klasyczne określenie prawdy głosi, ze prawdziwe jest zdanie, które opisuje taki stan rzeczy, który istotnie ma miejsce - fałszywe zaś jest zdanie opisujące nieistniejący stan

W naszym przypadku, jest dziwnie, bo akurat w sąsiedztwie kulki X jest więcej kulek czerwonych niż zielonych, mimo, iż kulek zielonych jest ogólnie 2 razy więcej niż

 Głównym celem regresji jest zbudowanie modelu, który podobnie jak wcześniej model klasyfikacji posłuży do predykcji jednej zmiennej na podstawie znanych

 diss logical flag: if TRUE (default for dist or dissimilarity objects), then x is assumed to be a dissimilarity matrix.. If FALSE, then x is treated as a matrix of observations by

 diss logical flag: if TRUE (default for dist or dissimilarity objects), then x is assumed to be a dissimilarity matrix.. If FALSE, then x is treated as a matrix of observations by

• Dana jest obserwacja C z przypisanym wektorem zmiennych objaśniających dla której chcemy prognozowad wartośd zmiennej objaśnianej

 diss logical flag: if TRUE (default for dist or dissimilarity objects), then x is assumed to be a dissimilarity matrix.. If FALSE, then x is treated as a matrix of observations by