Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Jak wnioskują maszyny? Andrzej Szałas 1 informatyka +

Podobne prezentacje


Prezentacja na temat: "Jak wnioskują maszyny? Andrzej Szałas 1 informatyka +"— Zapis prezentacji:

1 Jak wnioskują maszyny? Andrzej Szałas 1 informatyka +

2 2 Plan wykładu Modelowanie wnioskowania Wyszukiwanie, a wnioskowanie Klasyczny rachunek zdań Diagramy Venna Wprowadzenie do automatycznego wnioskowania Podsumowanie

3 informatyka + 3 Modelowanie Model = uproszczenie badanej rzeczywistości, pozwalające na uzyskiwanie adekwatnych odpowiedzi na pytania dotyczące wybranych aspektów tej rzeczywistości. Na przykład: w celu przejścia z pokoju do pokoju posługujemy się bardzo uproszczonym (ale też bardzo skutecznym) modelem mieszkania, jaki mamy w głowie.

4 informatyka + 4 Przykład Zadanie polega na opracowaniu bardzo prostego robota przemysłowego, który obserwuje taśmę produkcyjną i którego zadaniem jest przestawianie z niej przedmiotów zielonych na taśmę znajdującą się po lewej stronie, a czerwonych – na taśmę znajdującą się po prawej stronie.

5 informatyka + 5 Przykład – cd. Model obejmuje trzy taśmy produkcyjne. Nad środkową taśmą czuwa robot wyposażony w: czujniki rozpoznające kolor zielony i czerwony chwytaki służące do chwytania przedmiotów i przestawiania ich na lewą lub prawą taśmę. Przykładowe reguły: jeśli obserwowany obiekt jest zielony, to przenieś go na taśmę z lewej strony jeśli obserwowany obiekt jest czerwony, to przenieś go na taśmę z prawej strony.

6 informatyka + 6 Przykład – cd. Pytania: Czy podany model jest wystarczający do realizacji zadania? Czy reguły rzeczywiście prowadzą do założonego celu?

7 informatyka + 7 Modelowanie identyfikacja przedmiotów (obiektów) identyfikacja rodzajów obiektów (pojęć), identyfikacja cech (atrybutów) obiektów identyfikacja związków (relacji) między obiektami Przykłady: relacyjne bazy danych Access, Oracle, MySQL,... projektowanie obiektowe.

8 informatyka + 8 Przykład Baza danych owoców: zidentyfikowaliśmy dwa rodzaje owoców: cytryny i figi. W zależności od potrzeb wynikających z rozwiązywanego zadania możemy określać ich atrybuty, jak rodzaj, kolor, smak, itp.

9 informatyka + 9 Przykład (reprezentacja relacyjna) atrybuty obiektrodzajsmakkolor o1cytrynakwaśnyżółty o2figasłodkibrązowy o3cytrynakwaśnyzielony atrybuty obiektrodzajsmakkolor o1cytrynakwaśnyżółty o2figasłodkibrązowy o3cytrynakwaśnyzielony

10 informatyka + 10 Przykład (inna reprezentacja) atrybuty obiektcytrynafigakwaśnysłodkiŻółtybrązowyzielony o o o

11 informatyka + 11 Przykładowe zapytania Zapytanie cytryna AND żółty wybierze w wyniku obiekt o1, gdyż tylko on jest jednocześnie cytryną i jest żółty. Zapytanie cytryna OR żółty wybierze obiekty o1, o3, bowiem wybieramy będące cytryną lub mające kolor żółty. Zapytanie cytryna wybierze obiekt o2, bowiem symbol oznacza negację (zaprzeczenie).

12 informatyka + 12 Wyszukiwanie a wnioskowanie Załóżmy, że interesującymi nas obiektami z Internetu są strony WWW. Wpisując w okienko wyszukiwarki Google zestaw słów pytamy o te strony, na których występują wszystkie wypisane słowa kluczowe. Jest to tzw. wyszukiwanie AND. W języku polskim and znaczy i. W logice taki spójnik nazywamy koniunkcją i często w literaturze oznaczamy symbolem.

13 informatyka + 13 Wyszukiwanie a wnioskowanie – cd. Aby koniunkcja p AND q była prawdziwa, prawdziwe muszą być oba zdania składowe: zdanie p i zdanie q. Jeśli np. wpiszemy dwa słowa: logika informatyka z punktu widzenia wyszukiwarki Google oznacza to wpisanie wyrażenia logika AND informatyka, czyli wyszukanie stron (naszych obiektów), na których występuje słowo logika i słowo informatyka.

14 informatyka + 14 Wyszukiwanie a wnioskowanie – cd. Tak naprawdę nie zawsze pojawią się oba słowa, co odbiega od logicznego rozumienia koniunkcji. Aby mieć prawdziwą koniunkcję powinniśmy wpisać wyrażenie + logika + informatyka (operator + umieszczony przed danym słowem oznacza, że musi ono wystąpić na wyszukanej stronie).

15 informatyka + 15 Wyszukiwanie a wnioskowanie – cd. Twórcy wyszukiwarki Google oferują też wyszukiwanie OR. W języku polskim or to lub, czyli logiczny spójnik alternatywy, w literaturze często oznaczany symbolem.

16 informatyka + 16 Wyszukiwanie a wnioskowanie – cd. Aby alternatywa p OR q była prawdziwa, prawdziwe musi być co najmniej jedno ze zdań składowych: zdanie p lub zdanie q (lub oba te zdania). Na przykład wpisanie w Google wyrażenia logika OR informatyka spowoduje wyszukanie stron na których występuje słowo logika lub słowo informatyka lub oba te słowa.

17 informatyka + 17 Wyszukiwanie a wnioskowanie – cd. Spójnik OR wiąże silniej niż spójnik AND. Oznacza to, że wyrażenie lekcja informatyka OR logika Google rozumie jako lekcja AND (informatyka OR logika), a nie jako (lekcja AND informatyka) OR logika. Wyszukane zostanę więc strony, na których pojawia się słowo lekcja oraz co najmniej jedno ze słów informatyka lub logika.

18 informatyka + 18 Wyszukiwanie a wnioskowanie – cd. W Google mamy jeszcze operator -, który umieszczony przed słowem oznacza, że nie może ono wystąpić na wyszukanej stronie. W logice spójnik nie nazywamy negacją i oznaczamy często symbolem. Negacja p jest prawdziwa gdy zdanie p nie jest prawdziwe. Na przykład wpisanie do wyszukiwarki wyrażenie -logika spowoduje wyszukanie tych stron WWW, na których nie występuje słowo logika.

19 informatyka + 19 Rachunek zdań Google posługuje się logiką, interpretując wyrażenia logiczne i wyszukując zgodnie z nimi interesujące nas zasoby. Ta logika to uproszczona wersja klasycznego rachunku zdań.

20 informatyka + 20 Rachunek zdań – cd. Rachunek zdań zajmuje się badaniem prawdziwości zdań złożonych na podstawie zdań składowych i w konsekwencji – badaniem poprawności wnioskowania. W rachunku zdań wprowadza się zmienne zdaniowe reprezentujące wartości logiczne prawda, fałsz, a zarazem zbiory obiektów mających cech opisywane tymi zmiennymi (w tym ujęciu zmienne zdaniowe odpowiadają cechom, czyli atrybutom obiektów).

21 informatyka + 21 Rachunek zdań – cd. Bardziej złożone wyrażenia (zwane formułami) uzyskujemy stosując spójniki logiczne negacji, koniunkcji, alternatywy, implikacji i równoważności. Znaczenie (semantykę) spójników logicznych podaje się często przy pomocy tablic logicznych, w których w kolumnach podaje się wartości poszczególnych wyrażeń. Przyjmujemy, że wartościami tymi mogą być jedynie 0, 1; 0 – to fałsz, a 1 – to prawda.

22 informatyka + 22 Tablica dla negacji p p 01 10

23 informatyka + 23 Tablice dla innych spójników Koniun- kcja Alterna- tywa Impli- kacja Równo- ważność pqp AND qp OR qp => qp q

24 informatyka + 24 Rachunek zdań Formuła nazywa się tautologią jeśli przyjmuje wartość 1 (prawda) niezależnie od wartości wchodzących w jej skład zmiennych zdaniowych. Jest ona spełnialna, gdy przyjmuje wartość 1 co najmniej dla jednej kombinacji wartości zmiennych zdaniowych. Jest nazywana kontrtautologią, jeśli zawsze przyjmuje wartość 0 (fałsz).

25 informatyka + 25 Weryfikacja wnioskowania Tablice logiczne dają bardzo skuteczny mechanizm sprawdzania poprawności wnioskowania: konstruujemy tablice logiczne, w których w pierwszych kolumnach są zmienne zdaniowe, zaś w kolejnych – wyrażenia występujące w badanej formule ułożone w ten sposób, by wartość danego wyrażenia można było policzyć na podstawie wcześniej występujących wyrażeń wiersze w tabeli wypełnia się najpierw wszystkimi możliwymi układami wartości logicznych, a następnie wylicza wartości wyrażeń w kolejnych kolumnach.

26 informatyka + 26 Przykład: (p OR q) => p

27 informatyka + 27 Weryfikacja W Internecie można znaleźć wiele appletów konstruujących tablice logiczne dla zadanych formuł. Przykładowy applet można znaleźć pod adresem: hill.com/sites/ /student_view0/chapter1/inter active_demonstration_applet__truth_tables_.html

28 informatyka + 28 Dlaczego to metoda dla małych zadań? Załóżmy, że mamy formułę mającą 100 zmiennych. Tabela logiczna będzie więc miała wierszy (dlaczego?). Ile czasu spędziłby na obliczeniach bardzo szybki komputer, wykonujący, powiedzmy 2 34 operacji na sekundę (to więcej niż operacji na sekundę)?

29 informatyka + 29 Aby wygenerować wierszy potrzebujemy: więcej niż /2 34 (= 2 66 ) sekund, czyli więcej niż 2 66 /60 minut to więcej niż 2 66 /2 6 (= 2 60 ) minut i więcej niż 2 60 /2 6 (= 2 54 ) godzin czyli więcej niż 2 54 /2 5 (= 2 49 ) dób to z kolei więcej niż 2 40 lat czyli więcej niż lat! Wiek Wszechświata szacuje się na miliardów lat (czyli nie więcej niż 14*10 9 lat).

30 informatyka + 30 Weryfikacja – diagramy Venna Diagramy Venna ilustrują zależności pomiędzy zbiorami obiektów. Na zmienne logiczne możemy patrzeć jako na cechy obiektów, możemy też im przypisać zbiory obiektów mających te cechy. Diagramy Venna mogą ilustrować zbiory obiektów i posługując się nimi można znajdować zależności między rozważanymi pojęciami.

31 informatyka + 31 Weryfikacja – diagramy Venna Zbiory na diagramach Venna reprezentujemy przy pomocy kół: z każdą rozważaną zmienną zdaniową związujemy koło. Jeśli nie mamy żadnych dodatkowych założeń, umieszczamy koła tak, aby wydzieliły wszystkie możliwe zależności (obszary) na danej płaszczyźnie. Obszary te oznaczamy kolejnymi literami lub liczbami. Zbiór wszystkich obiektów jest reprezentowany przez prostokąt otaczający wszystkie koła.

32 informatyka + 32 Przykład a bd h g c f p q r e e

33 informatyka + 33 Diagramy Venna - negacja Negacja formuły jest reprezentowana przez zbiór wszystkich obszarów nie będących obszarami reprezentującymi daną formułę; Na przykład: dla wcześniej podanego diagramu p reprezentujemy przez zbiór tych obszarów, które leżą poza p, czyli wykluczamy obszary b, c, e, f, otrzymując {a, d, g, h}

34 informatyka + 34 Diagramy Venna - alternatywa Alternatywa dwóch formuł jest reprezentowana przez zbiór obszarów reprezentujących pierwszą lub drugą formułę. Na przykład: dla wcześniej podanego diagramu p OR r reprezentujemy przez zbiór obszarów {b, c, e, f, g, h}

35 informatyka + 35 Diagramy Venna - koniunkcja Koniunkcja dwóch formuł jest reprezentowana przez zbiór obszarów wspólnych dla pierwszej i drugiej formuły. Na przykład: dla wcześniej podanego diagramu p AND q reprezentujemy przez zbiór obszarów {c, f}.

36 informatyka + 36 Diagramy Venna – implikacja Spójnik implikacji odzwierciedla zawieranie się zbiorów: p => q oznacza, że zbiór obiektów reprezentujących p zawiera się w zbiorze obiektów reprezentujących q. Na przykład: dla wcześniej podanego diagramu (p AND q) => p, gdyż obszar {c, f} reprezentujący (p AND q) zawiera się w obszarze {b,c,f}, reprezentującym p.

37 informatyka + 37 Diagramy Venna - równoważność Spójnik równoważności odzwierciedla równość zbiorów: p q oznacza, że zbiór obiektów reprezentujących p jest taki sam, jak zbiór obiektów reprezentujących q. Na przykład: dla wcześniej podanego diagramu (p AND q) (q AND p), gdyż zbiór obszarów reprezentujący (p AND q) jest taki sam jak zbiór obszarów reprezentujący (q AND p).

38 informatyka + 38 Diagramy Venna - przykład Rozważmy: ((p AND q) OR r ) ((p OR r) AND (q OR r)) formułę p AND q reprezentuje zbiór {c, f} formułę r jest reprezentuje zbiór {e, f, g, h} formułę ((p AND q) OR r reprezentuje zbiór {c, e, f, g, h} formułę (p OR r) reprezentuje zbiór {b, c, e, f, g, h} formułę (q OR r) reprezentuje zbiór {c, d, e, f, g, h} formułę ((p OR r) AND (q OR r)) reprezentuje zbiór {c, e,f, g,h}. Zbiory reprezentujące lewą i prawą stronę równoważności są więc identyczne, co oznacza że równoważność ta jest prawdziwa.

39 informatyka + 39 Diagramy Venna w Internecie W Internecie można znaleźć więcej informacji o diagramach Venna. Strona warta polecenia:

40 informatyka + 40 Automatyczne wnioskowanie Jeden z algorytmów, bardzo skuteczny i powszechnie stosowany w informatyce i sztucznej inteligencji stosuje metodę rezolucji. Działa na koniunkcjach klauzul. Klauzula to alternatywa zmiennych zdaniowych lub ich negacji. Na przykład klauzulą jest: p OR q OR r OR s zaś nie jest: p OR q ani też p AND r. UWAGA: pusta klauzula (nie mająca żadnych wyrażeń) jest równoważna fałszowi (czyli 0).

41 informatyka + 41 Dlaczego klauzule są ważne? Implikacja postaci: (p1 AND p2 AND... AND pk ) => (r1 OR r2 OR... OR rm) jest równoważna klauzuli: p1 OR p2 OR...OR pk OR r1 OR r2 OR...OR rm.

42 informatyka + 42 Dlaczego klauzule są ważne? gorączka AND kaszel => przeziębienie OR grypa deszcz AND bezwietrznie => parasol OR kurtka_z_kapturem deszcz AND wiatr => samochód

43 informatyka + 43 Przekształcanie formuł do postaci klauzulowej zastąp (A B) przez: ( A OR B) AND (A OR B) zastąp (A => B) przez: ( A OR B) zastąp A przez: A zastąp (A AND B) przez: ( A OR B) zastąp (A OR B) przez: ( A AND B) zastąp A OR (B AND C) przez: (A OR B) AND (A OR C) zastąp (B AND C) OR A przez: (A OR B) AND (A OR C).

44 informatyka + 44 Przykład : ( (p AND q) OR (p => r) ) OR (r s) (( p OR q) OR (p => r) ) OR (r s) (( p OR q) OR ( p OR r) ) OR (r s) ( p OR q OR p OR r) OR (r s) ( p OR q OR p OR r) OR (( r OR s) AND (r OR s)) ( p OR q OR r) OR (( r OR s) AND (r OR s)) ( p OR q OR r OR r OR s) AND ( p OR q OR r OR r OR s) ( p OR q OR r OR r OR s) AND ( p OR q OR r OR s).

45 informatyka + 45 Metoda rezolucji Oparta na przechodniości implikacji, czyli na regule mówiącej że z (p => q) oraz (q => r) mamy prawo wnioskować (p => r). To samo w postaci klauzulowej: ( p OR q) AND ( q OR r) => ( p OR r).

46 informatyka + 46 Metoda rezolucji I ogólnie: Z klauzul: p1 OR p2 OR...OR pk OR r1 OR r2 OR...OR rm p1 OR q1 OR...OR qn OR s1 OR s2 OR...OR sm uzyskujemy klauzulę: p2 OR...OR pk OR r1 OR r2 OR...OR rm OR q1 OR...OR qn OR s1 OR s2 OR...OR sm

47 informatyka + 47 Przykład Załóżmy, że mamy następującą bazę wiedzy: Pudełka są małe lub średnie (m OR s). Każde pudełko jest czerwone, zielone lub niebieskie (c OR z OR n). Małe pudełka są czerwone lub niebieskie (m => (c OR n)). Średnie pudełka są zielone lub niebieskie (s => (z OR n)). Do przewozu robot wybiera czerwone pudełka (p => c). Do aktywności innych niż przewóz robot nie wybiera pudełek niebieskich ani zielonych ( p => ( n AND z)).

48 informatyka + 48 Przykład – postać klauzulowa Mamy bazę danych klauzul: (m OR s) (c OR z OR n) ( m OR c OR n) uzyskana z (m => (c OR n)) ( s OR z OR n) uzyskana z (s => (z OR n)) ( p OR c) uzyskana z (p => c) (p OR n), (p OR z)) uzyskane z ( p => ( n AND z))

49 Przykład – wnioskowanie m OR s (m OR s) (c OR z OR n) ( m OR c OR n) ( s OR z OR n) ( p OR c) (p OR n) (p OR z)) (c OR z) (c OR n ) (c OR z) c c

50 informatyka + 50 Przykład Załóżmy, że nasza baza danych zawiera formuły: K twierdzi, że Jan pracuje w soboty (p). K twierdzi także, że w soboty Jan czyta książki i nie ogląda telewizji (k AND t). P twierdzi, że gdy Jan nie pracuje, nie ogląda również telewizji ( p => t). P twierdzi, także, że w soboty Jan czyta książki ogląda telewizję lub gotuje (k OR t OR g). Wiedząc, że K zawsze kłamie, a P zawsze mówi prawdę, odgadnijmy, co Jan robi w soboty, stosując metodę rezolucji.

51 informatyka + 51 Przykład – postać klauzulowa Skoro K kłamie, a P mówi prawdę, mamy bazę danych klauzul: p – negacja stwierdzenia K ( k OR t) – negacja stwierdzenia K (p OR t) – stwierdzenie P (k OR t OR g) – stwierdzenie P.

52 informatyka + 52 Przykład – wnioskowanie p k OR t p OR t k OR t OR g t k OR g k g

53 informatyka + 53 I co dalej? W minionych czterdziestu latach w informatyce prowadzono bardzo intensywne badania nad logikami, np. modelującymi wnioskowanie człowieka lepiej niż klasyczny rachunek zdań. Dziedzina ta nadal intensywnie się rozwija i znajduje zastosowania w systemach inteligentnych takich, jak bezzałogowe helikoptery, czy złożone systemy robotyki. Ale o tym kiedy indziej, na przykład na studiach informatycznych...

54


Pobierz ppt "Jak wnioskują maszyny? Andrzej Szałas 1 informatyka +"

Podobne prezentacje


Reklamy Google