Download - WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Transcript
Page 1: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Sztuczna inteligencja

WYKŁAD 6

Page 2: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Logika

● Logika – narzędzie formalnego opisu dedukcji.● Dedukcja – wyprowadzanie prawdziwych

stwierdzeń (wniosków) ze stwierdzeń przyjmowanych za prawdziwe (przesłanek).

Page 3: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Wnioskowanie logiczne

● Sylogizm– przykład:

Przesłanka: Wszyscy ludzie są śmiertelni

Przesłanka: A jest człowiekiem

Wniosek: A jest śmiertelny

Page 4: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Wnioskowanie logiczne

Reguła modus ponens:

AJEŚLI A, TO B

-------------------B

Z prawdziwości A oraz JEŚLI A, TO B wynika prawdziwość B.

Page 5: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Wnioskowanie logiczne

Reguła modus tollens:

NIE BJEŚLI A, TO B

-------------------NIE A

Z fałszywości B oraz prawdziwości JEŚLI A, TO B wynika fałszywość A.

Page 6: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Rachunek zdań i rachunek predykatów

● W rachunku zdań stwierdzenia są zbudowane ze zmiennych zdaniowych reprezentujących zdania niemające wewnętrznej struktury.

● Niektóre teorie matematyczne nie mogą być wyrażone za pomocą rachunku zdań.

● Rachunek predykatów (logika pierwszego rzędu) – system logiczny dopuszczający funkcje określone w pewnych dziedzinach (np. liczbowych) o wartościach logicznych.

Page 7: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Rachunek predykatów

● Przykłady:– Dla każdej chwili czasowej t wartość wyrażenia

10>5 jest zawsze prawdą

– Istnieje chwila czasowa t taka, że stwierdzenie „temperatura powietrza w chwili t wynosi 25 st. C” jest prawdziwe

Page 8: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Programowanie w logice

● Programowanie w logice – zastosowanie systemów dowodzenia twierdzeń do wykonywania obliczeń.

● Programując w logice nie podaje się kolejnych kroków obliczeniowych koniecznych do znalezienia rozwiązania, lecz tworzy się formułę logiczną opisującą relacje między danymi wejściowymi a wyjściowymi, a następnie uruchamia się system dowodzenia twierdzeń w celu znalezienia odpowiedzi.

● Programowanie w logice jest programowaniem deklaratywnym.

Page 9: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Klauzula Horna

● Klauzulą Horna nazywamy klauzulę

mającą co najwyżej jeden literał pozytywny. ● Literał pozytywny A nazywany jest nagłówkiem

klauzuli.● Literały negatywne

nazywane są treścią klauzuli.

A B1 , B2 , ... , Bm

B1 , B2 , ... , Bm

Page 10: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Klauzula Horna

● Pozytywna klauzula Horna

nazywana jest faktem (klauzulą unarną). ● Klauzula Horna

bez żadnego literału pozytywnego nazywana jest klauzulą negatywną.

● Klauzula Horna zawierającą jeden literał pozytywny i dowolną liczbę literałów negatywnych nazywana jest klauzulą programu.

A

B1 , B2 , ... , Bm

Page 11: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Postać klauzulowa twierdzeń w rachunku predykatów

● Przekształcenie wyrażenia rachunku predykatów do postaci klauzulowej:– ETAP 1: Przemianowanie zmiennyc tak, aby żadna

zmienna nie występowała w dwóch kwantyfikatorach jednocześnie.

– ETAP 2: Usunięcie wszystkich operatorów logicznych z wyjątkiem negacji, alternatywy i koniunkcji przez zastosowanie równoważności logicznych.

– ETAP 3: Przekształcenie wyrażenia do postaci, w której negacje występują tylko przy wyrażeniach atomowych.

Page 12: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Postać klauzulowa twierdzeń w rachunku predykatów

● Przekształcenie wyrażenia rachunku predykatów do postaci klauzulowej (cd.):– ETAP 4: Skolemizacja - wyeliminowanie

kwantyfikatorów egzystencjalnych przez wprowadzenie stałych Skolema lub funkcji Skolema w miejsce zmiennych wprowadzanych przez te kwantyfikatory, np.:

∃xα (x) α (K )

∀y∃xα (x) α ( f ( y))

Stała Skolema

Funkcja Skolema

Page 13: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Postać klauzulowa twierdzeń w rachunku predykatów

● Przekształcenie wyrażenia rachunku predykatów do postaci klauzulowej (cd.):– ETAP 5: Przesunięcie kwantyfikatorów

uniwersalnych na zewnątrz (poza wyrażenie).

– ETAP 6: Przekształcenie wyrażenia do normalnej postaci koniunkcyjnej.

– ETAP 7: Przekształcenie wyrażenia w klauzule.

Page 14: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Równoważności logiczne

¬∀x

A x⇔∃x¬A x

¬∃x

A x ⇔∀x¬A x

A opQx

B x ⇔Qx

Aop B x

Qx

A x op B⇔QxAx op B

● Q - kwantyfikator● op - operator ( )∧ ,∨

Page 15: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Zapis klauzul

● Literały bez negacji:

● Literały z negacjami:

P1 ; P2 ; ... ; Pm:−Q1 ,Q2 , ... ,Qn

P1 , P2 , ... , Pm

Q1 ,Q2 , ... ,Qn

Page 16: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Procedura, program w logice, baza danych

● Procedura – zbiór klauzul Horna, w których nagłówku występuje ten sam symbol predykatywny.

● Program w logice – zbiór procedur.● Baza danych – procedura złożona wyłącznie z

ustalonych faktów.

Page 17: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Język Prolog

● Język Prolog jest deklaratywnym językiem programowania w logice.

● Program w Prologu składa się ze zbioru klauzul.

● Programowanie w Prologu składa się z:– Deklarowania faktów.

– Definiowania reguł.

– Konstruowania zapytań.

Page 18: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Fakty

relacja(obiekt1, obiekt2, ..., obiektN).

● Przykłady:

rodzic(jan, piotr).

kobieta(anna).

przesyla(komputer1, dane, komputer2).

● Nazwa relacji jest predykatem● Obiekty nazywamy argumentami

Page 19: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Zapytania

?- relacja(obiekt1, obiekt2, ..., obiektN).

● Przykłady:

?- rodzic(jan, piotr).

?- kobieta(anna).

?- przesyla(komputer1, dane, komputer2).

Page 20: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Zmienne

● Nazwy zmiennych w Prologu muszą zaczynać się od dużych liter.

● Jeśli w zapytaniu występuje zmienna, Prolog przeszukuje wszystkie fakty, aby znaleźć obiekt, który można podstawić za zmienną.

● Prolog przeszukuje bazę danych w takiej kolejności w jakiej została zapisana.

Page 21: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Koniunkcja

?- relacja1(obiekt11, obiekt21, ..., obiektN1),

...,

relacjaK(obiekt1K, obiekt2K, ..., obiektMK).

● Przykład:

?- rodzic(jan, X), rodzic(piotr, X).

Page 22: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Reguły

● Reguły to ogólne stwierdzenia dotyczące obiektów i ich powiązań

● Reguła składa się z głowy i treści:

głowa :- treść● Przykład:

siostra(X,Y) :- kobieta(X), rodzice(X,M,O), rodzice(Y,M,O).

– M – matka

– O - ojciec

Page 23: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Zbiór klasyczny („ostry”)

W zbiorze klasycznym elementy albo należą, albo nie należą do tego zbioru.

a∈Ab∉A

- element a należy do zbioru A

- element b nie należy do zbioru A

Funkcja charakterystyczna:

A x=1A x=0

- gdy element x należy do zbioru A

- gdy element x nie należy do zbioru A

Page 24: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Zbiór klasyczny („ostry”)

Przykład

U – uniwersum (przestrzeń rozważań): zbiór liczb {0,1,2,3,4,5,6,7,8} A – zbiór liczb bliskich liczbie 4, np. A={3,4,5}

3,4 ,5 ∈A0,1,2 ,6,7,8 ∉A

Page 25: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Zbiór rozmyty

W zbiorze rozmytym elementy mogą należeć do tego zbioru w pewnym stopniu (częściowo).

Funkcja przynależności:

A x=10 A x1 A x=0

- gdy element x w pełni należy do zbioru A

- gdy element x częściowo należy do zbioru A

- gdy element x nie należy do zbioru A

Page 26: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Zbiór rozmyty

A={x , Ax : x∈X }, gdzie A∈[0,1]

X – uniwersum (przestrzeń rozważań)

A= A x1

x1

Ax2

x2

... A x k

xk

x1, x2, ... , x k∈X

Page 27: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Zbiór rozmyty

Przykład

U – uniwersum (przestrzeń rozważań): zbiór liczb {0,1,2,3,4,5,6,7,8} A – zbiór liczb bliskich liczbie 4,

A=0 0

0 1

0.42

0.83

1 4

0.85

0.46

0 7

0 8

Page 28: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Typy funkcji przynależności

Funkcja typu Gaussa Funkcja typu π (dzwonowa)

Funkcja typu s (sigmoidalna)

Page 29: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Typy funkcji przynależności

Funkcja typu Γ Funkcja typu Λ (trójkątna)

Funkcja typu L Funkcja typu Π

Page 30: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

A, B – zbiory rozmyte w przestrzeni rozważań X

Operacje na zbiorach rozmytych

Przecięcie zbiorów rozmytych:

A∩B x =min A x , B x dla każdego x∈X

Suma zbiorów rozmytych:

A∪B x =max A x , B x dla każdego x∈X

Dopełnienie zbioru rozmytego:

¬A x =1− Ax dla każdego x∈X

Page 31: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

A, B – zbiory rozmyte w przestrzeni rozważań X

Normy trójkątne

Uogólnienie przecięcia zbiorów rozmytych:

A∩B x =T A x , B x dla każdego x∈X

Uogólnienie sumy zbiorów rozmytych:

A∪B x =S A x , B x dla każdego x∈X

T – t-norma

S – s-norma (t-konorma)

Page 32: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Normy trójkątne

t-norma

T :[0,1]×[0,1][0,1]

T a , cT b ,d dla ab , cdT a ,b=T b ,aT T a ,b , c=T a ,T b ,cT a ,1=aT a ,0=0

a ,b , c , d∈[0,1]

Page 33: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Normy trójkątne

s-norma

S : [0,1]×[0,1][0,1]

S a , cS b ,d dla ab ,cdS a ,b=S b ,aS S a ,b , c=S a , S b ,cS a ,0=aS a ,1=1

a ,b , c , d∈[0,1]

Page 34: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Normy trójkątne

Przykładowe t-normy

T a , b=min a , b

T a , b=a⋅b

T a , b=max 0,ab−1

- minimum

- iloczyn algebraiczny

- t-norma Łukasiewicza

Przykładowe s-normy

S a , b=max a , b

S a , b=ab−a⋅b

S a , b=minab ,1

- maksimum

- iloczyn probabilistyczny

- s-norma Łukasiewicza

Page 35: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Relacje rozmyte

X,Y – zbiory nierozmyte, R – relacja rozmyta określona w X x Y

R={ x , y , R x , y: x∈X , y∈Y }, gdzie R x , y ∈[0,1]

y1 y2 ... ym

x1 R x1, y1 R x1, y2 ... R x1, ym

x2 R x2, y1 R x2, y2 ... R x2, ym

... ... ... ... ...xn R xn , y1 R xn , y2 ... R xn , ym

x1, x2, ... , xn∈X , y1, y2, ... , ym∈Y

Page 36: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Wnioskowanie rozmyte

Uogólniona rozmyta reguła modus ponens:

A' ← zbiór rozmyty w XJEŚLI A, TO B ← implikacja rozmyta reprezentowana

przez relację rozmytą R w X x Y -------------------

B'=? ← zbiór rozmyty w Y

B'=A' °R

B '=maxx∈X

T A' x , R x , y

Page 37: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Wnioskowanie rozmyte

Przykład

X={1,2,3}, Y={1,2,3,4}

NISKIE=1 1

0.72

0.33

WYSOKIE=0.21

0.52

0.83

1 4

R=NISKIE×WYSOKIE

X Y 1 2 3 4 1 0.2 0.5 0.8 1 2 0.2 0.5 0.7 0.73 0.2 0.3 0.3 0.3

Page 38: WYKŁAD 6interoz.pl/Sztuczna_inteligencja/SI_wyklad_6.pdf · Krzysztof Pancerz Sztuczna inteligencja Logika Logika – narzędzie formalnego opisu dedukcji. Dedukcja – wyprowadzanie

Krzysztof Pancerz Sztuczna inteligencja

Wnioskowanie rozmyte

Przykład

ŚREDNIE=0.51

1 2

0.53

ŚREDNIE °R= maxx∈{1,2 ,3}

T ŚREDNIE x , R x , y=

=0.21

0.52

0.73

0.74

Przyjmując jako t-normę minimum.