Systemy Sztucznej Inteligencji Wykład 5 Agenty logiczne Wykład będzie o agentach mogących formułować fakty na temat świata i umiejących na tej podstawie wnioskować co zrobić Agent zna pewne fakty, podejmując działania zbiera nowe fakty, łączy je i wyciąga wnioski Ma to szczególne znaczenie dla otoczenia, które nie jest w pełni obserwowalne, gdzie pewne obserwacje trzeba zapamiętać (w postaci faktów) Materialy video http://www.nptel.iitm.ac.in/video.php?courseId=1041&sub=comp&sem=Semester%208/Electives
Agent z bazą wiedzy Baza wiedzy (BW), Knowledge Base (KB) zbiór faktów na temat otoczenia fakt ↔ zdanie wyrażone w języku reprezentacji wiedzy powiedz, spytaj Wnioskowanie – agent pyta sam siebie co ma zrobić, odpowiedź wynika z BW Program agenta: podejście deklaratywne powiedz to agent powinien wiedzieć na temat otoczenia przeciwieństwem jest podejście proceduralne (zachowanie określone przez kod) Spojrzenie na agenta z poziomu wiedzy – co agent wie, bez szczegółów implementacyjnych z poziomu implementacji – struktury danych BW, algorytmy wnioskowania SSI - dr inż. P. Górecki
Agent z bazą wiedzy function AgentBW(obserwacje) global: bw, t powiedz(bw, obserwacje,t) akcja := spytaj(bw, t) t := t+1 return akcja; Agent powinien potrafić wyrażać stany, akcje, itp. uaktualniać wewnętrzną reprezentację otoczenia wnioskować na temat ukrytych własności otoczenia wnioskować o podjęciu działań SSI - dr inż. P. Górecki
Świat według Wumpusa Miara efektywności Środowisko Sensory Efektory złoto +1000, śmierć -1000 ruch -1, strzał -10 Środowisko na polach wokół Wumpusa śmierdzi na polach wokół dołu wieje bryza strzał w kierunku Wumpusa zabija go umierający Wumpus wydaje wrzask strzelić można tylko raz pole ze złotem błyszczy się odkrywca zaczyna zawsze w [1,1] Sensory smród, bryza, błysk, wrzask, uderzenie Efektory obrót w lewo, obrót prawo, do przodu, podnieś, strzel, podnieś, wyjdź SSI - dr inż. P. Górecki
Świat według Wumpusa dostępne – nie, odkrywca widzi tylko pole na którym się znajduje deterministyczne – tak epizodyczne – nie, ciągłość akcji statyczne – tak, Wumpus i doły są nieruchome dyskretne – tak, otoczenie podzielone na pola SSI - dr inż. P. Górecki
Świat wg. odkrywcy SSI - dr inż. P. Górecki
Świat wg. odkrywcy SSI - dr inż. P. Górecki
Świat wg. odkrywcy SSI - dr inż. P. Górecki
Świat wg. odkrywcy SSI - dr inż. P. Górecki
Świat wg. odkrywcy SSI - dr inż. P. Górecki
Świat wg. odkrywcy SSI - dr inż. P. Górecki
Świat wg. odkrywcy SSI - dr inż. P. Górecki
Świat wg. odkrywcy SSI - dr inż. P. Górecki
Ogólnie o logice reprezentacja wiedzy – sformułowanie wiedzy w sposób zrozumiały dla komputera składnia – sposób budowania poprawnych zdań, zbiór reguł pozwalających na budowanie zdań i wyrażeń semantyka – określa znaczenie zdań i wyrażeń, bez semantyki zdanie to ciąg symboli język arytmetyki składnia – „x+2>y” jest zdaniem, „x2+y>” nie jest zdaniem semantyka x+2>y jest prawdziwe jeżeli x jest większe o 2 od y w świecie gdzie x=7 i y=1 zdanie x+2>y jest prawdziwe w świecie gdzie x=1 i y=5 zdanie x+2>y jest nieprawdziwe formalnie „świat” = „model” „m jest modelem teorii alfa” oznacz ze zdanie (teoria) alfa jest prawdziwe dla modelu m SSI - dr inż. P. Górecki
Reprezentacja wiedzy implikują Zdania Zdanie Reprezentacja semantyka Świat wynika Fakty Fakt SSI - dr inż. P. Górecki
Reprezentacja wiedzy Typowe języki programowania nie nadają się zbyt dobrze do wyrażania wiedzy świat Wumpusa – tablica 4x4 swiat[2,2] = dół jak wyrazić zdanie „dół jest w [2,2] albo w [3,1]”? Bardziej ekspresyjny jest język naturalny służy komunikacji a nie reprezentacji może być dwuznaczny znaczenie zależy od kontekstu Język reprezentacji wiedzy formalny i ekspresyjny jednoznaczny efektywny SSI - dr inż. P. Górecki
Logika System formalny opisujący pewne fakty składający się z: składni – sposobu tworzenia zdań semantyki – sposobu przypisywania zdań faktom teorii dowodu – zbioru zasad określający sposób generowania nowych zdań Rachunek zdań symbole zdaniowe reprezentują fakty spójniki Boole’a pozwalają na tworzenie skomplikowanych zdań Logika pierwszego rzędu reprezentacja świata: obiekty i predykaty obiektów spójniki Boole’a, kwantyfikatory Rachunek predykatów pierwszego rzędu
Języki formalne Język Opis świata Wartości Rachunek zdań fakty prawda/fałsz/nieznane Logika 1-go rzędu fakty, obiekty, relacje Logika temporalna fakty, obiekty, relacje, czas Teoria prawdopodobieństwa prawdopodobieństwo Logika rozmyta stopień prawdziwości
Rachunek zdań Najprostszy rodzaj logiki Składnia stałe logiczne: prawda, fałsz symbole logiczne: zdania P1, P2, Q, spójniki logiczne: negacja: S koniunkcja: S1 S2 alternatywa: S1 S2 implikacja: S1 S2 równoważność: S1 S2 Kolejność spójników: , , , , P Q R S jest równoważne ((P) (Q R)) S spójnik - funktory
Rachunek zdań Semantyka Model – zdanie posiadające interpretacje symbol (zdanie) może oznaczać dowolny fakt (p/f) Model – zdanie posiadające interpretacje Przykład: P (f), Q (p), S (f) - 3 symbole, 8 modeli Tablica prawdy – określa semantykę zdań
Znaczenie implikacji Przykład 1 Przykład 2 P: „5 jest liczbą nieparzystą” (p) Q: „Warszawa jest stolicą Polski” (p) P Q (p) Przykład 2 P: „5 jest liczbą parzystą” (f) Q: „Adam jest wysoki” (p/f) rodzaj obietnicy: jeżeli P (ładna pogoda) to Q (pójdę na spacer)
Model - interpretacja zdania Model - zdanie logiczne opisujące świat i posiadające pewną interpretację Model zdania S1,2 to zdanie ma jeszcze inne modele M(α) – zbiór wszystkich modeli zdania α
Rachunek zdań tautologia – zdanie, które jest prawdziwe dla wszystkich modeli „pada” lub „nie pada”, P ~P sprzeczność – zdanie, które jest fałszywe dla wszystkich modeli „pada” i „nie pada”, P ~P implikacja logiczna – P ╞ Q (jeżeli P jest prawdziwe to i Q jest prawdziwe, wszystkie modele P są modelami Q) BW ╞ α witw M(BW) M(α) np. BW = Polska wygrała i Belgia wygrała, α = Belgia wygrała M(BW) SSI - dr inż. P. Górecki
Implikacja logiczna Generowanie nowych zdań ze zdań już znanych Oznacza, że jedno zdanie wynika z innego BW ╞ α BW implikuje zdanie α, witw gdy w pewnym świecie α jest zdaniem prawdziwym i wszystkie zdania w BW są prawdziwe α wynika z BW Przykład: BW = {wszyscy ludzie są śmiertelni, Sokrates jest człowiekiem} α = Sokrates jest śmiertelny POPRAWIC SSI - dr inż. P. Górecki
Złapaliśmy czarownicę. Możemy ją spalić? Tak, spalić! Skąd wiecie, że to czarownica? Zamieniła mnie w trytona. Trytona? Już mi przeszło. l tak ją spalić. Tak, spalić ją! Cisza! Są sposoby na to, by sprawdzić czy ktoś jest czarownicą. Są? Jakie? Mów. Bolesne? Powiedzcie: co robicie z czarownicami? Palimy je! Co jeszcze palicie? Inne czarownice! Drewno. Dlaczego więc czarownice się palą? Bo są z drewna? Dobrze. Jak więc sprawdzić, czy ona jest z drewna? Zbudować z niej most. Czy nie ma mostów z kamienia? No tak, są. Czy drewno tonie? Nie. Unosi się na wodzie. Wrzucić ją do stawu! Co jeszcze unosi się na wodzie? Chleb. Jabłka. Małe kamienie. Kaczka! Dokładnie. Więc, logicznie rozumując... Jeśli ona... waży tyle samo, co kaczka, jest z drewna. A zatem... Jest czarownicą! SSI - dr inż. P. Górecki
Wnioskowanie logiczne BW = {S1, S2, S3, ..., Sm} – zbiór zdań w BW {X1, X2, X3, ..., Xn} – zbiór symboli z m zdań BW Chcemy wiedzieć czy zdanie A można wywnioskować z BW Należy rozpatrzeć każdy możliwy model w BW przy pomocy tablicy prawdy (2n rzędów) X1, X2, ..., Xn S1, S2, ..., Sm S1S2... Sm A (S1S2... Sm) A 0, 0, ...., 0 0, 0, ...., 1 ................ 1, 1, ..., 1 A wynika z BW jeżeli dla każdego prawdziwego modelu w BW prawdziwe jest A (M(BW) M(A)) SSI - dr inż. P. Górecki
Przykład Zdania Baza wiedzy Pytanie P: „jest gorąco” Q: „jest wilgotno” R: „pada deszcz” Baza wiedzy R1 : P Q R (jeżeli jest gorąco i wilgotno to pada) R2 : Q P (jeżeli jest wilgotno to jest gorąco) R3 : Q (jest gorąco – obserwacja) Pytanie R (czy pada?) SSI - dr inż. P. Górecki
Tabela prawdy BW – przesłanki R - wniosek P Q R (PQ) R Q P Q BW R 0 0 0 1 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 podac lepszy przyklad: logic.stanford.edu/classes/cs157/2005/lectures/lecture03.ppt R wynika z BW BW R jest tautologią M(BW) M(R) SSI - dr inż. P. Górecki
Tabela prawdy – świat Wumpusa Baza wiedzy: ~S11 ~S11 ~W12 ~W21 ~W11 ~S21 ~S21 ~W11 ~W22 ~W31 ~W21 S12 S12 W13 W22 W11 W12 9 symboli: {S11, S21, S12, W12, W21, W11, W22, W31, W13} tabela prawdy: 29 = 512 rzędów Pytanie: W13 ? SSI - dr inż. P. Górecki
Reguły wnioskowania Procedura wnioskowania przy pomocy tabeli prawdy jest zupełna ale ma złożoność wykładniczą (2n) Czy istnieje szybsza procedura? tak – procedura wnioskowania korzystająca z poprawnych reguł wnioskowania Zdanie A można wywieść z pewnych zdań teorii BW przy użyciu procedury i BW ├i A, Reguła wnioskowania jest poprawna, jeżeli dla każdej przesłanki która jest prawdziwa, wniosek jest prawdziwy SSI - dr inż. P. Górecki
Reguły wnioskowania w rachunku zdań Nazwa polska Nazwa angielska Reguła R. odrywania Modus ponens (Implication elimination) R. Opuszczania koniunkcji And – Elimination R. Dołączania koniunkcji And – Introduction R. Dołączania alternatywy Or – Introduction R. Opuszczania alternatywy Unit Resolution R. Opuszczania podwójnej negacji Double-Negation Elimination Rezolucja Resolution Z implikacji i jej przesłanki możemy wywnioskować konkluzję Jeżeli mamy dwa zdania w bazie połączone koniunkcją to można każde z nich wywnioskować (każde jest prawdziwe) Jeżeli mamy dwa rozłączne zdania w bazie to można je połączyć koniunkcją Dowolne zdanie z bazy możemy złączyć alternatywą z czymkolwiek innym Jeżeli jeden z elementów alternatywy jest fałszem to drugi możemy wywnioskować (jest prawdziwy) Oczywiste B nie może być jednocześnie prawdą i fałszem więc jedno z pozostałych zdań musi być prawdziwe
Przykład: poprawność reguły rezolucji α β γ α β ~β γ α γ fałsz prawda Dla każdej przesłanki która jest prawdziwa, wniosek jest prawdziwy – ta reguła wnioskowania jest poprawna SSI - dr inż. P. Górecki
Przykład wnioskowania Q przesłanka R3 Q P przesłanka R2 P modus ponens (1,2) P Q R przesłanka R1 P Q and – Introduction (1,3) R modus ponens (4,5) SSI - dr inż. P. Górecki
Przykład wnioskowania ~S11 ~W12 ~W21 ~W11 ~S21 ~S21 ~W11 ~W22 ~W31 ~W21 S12 S12 W13 W22 W11 W12 ~W12 ~W21 ~W11 (modus ponens 1,2) ~W12, ~W21, ~W11 (and-elimination a) ~W11 ~W22 ~W31 ~W21 (modus ponens 3,4) ~W11, ~W22, ~W31, ~W21 (and-elimination c) W13 W22 W11 W12 (modus ponens 5,6) W13 W22 W12 (unit resolution A=e, B= W11 z b) W13 W22 (unit resolution A=f, B= W12 z b) W13 (unit resolution A=g, B= W22 z d) W13? SSI - dr inż. P. Górecki
Wykorzystanie wiedzy do wykonania akcji Dodatkowe reguły określające jaką akcję wybrać np. A11 Wschód W21 ~Naprzód Zamiast pytania „jaką akcję wybrać” seria pytań: czy mam iść na przód? czy mam się obrócić w prawo? SSI - dr inż. P. Górecki
Problemy Zbyt wiele faktów „nie idź do przodu, jeżeli przed tobą jest Wumpus”: 64 reguły (16 pól * 4 kierunki) Jeżeli agent ma pamiętać swoje poprzednie ruchy np. A11,t1, A11,t2, ... A11,t1 Wschódt1 W21,t1 ~Naprzódt1 A11,t2 Wschódt2 W21,t2 ~Naprzódt2 Rozwiązanie: logika 1-go rzędu – fakty i relacje SSI - dr inż. P. Górecki