Adam Meissner SZTUCZNA INTELIGENCJA. Architektury systemów eksperckich

Podobne dokumenty
Adam Meissner SZTUCZNA INTELIGENCJA. Reprezentowanie i przetwarzanie wiedzy o czasie

Adam Meissner SZTUCZNA INTELIGENCJA. Architektury systemów eksperckich

Adam Meissner SZTUCZNA INTELIGENCJA. Architektury systemów eksperckich

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

Adam Meissner.

PRZEWODNIK PO PRZEDMIOCIE

Uczenie się maszyn. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki

Wprowadzenie do teorii systemów ekspertowych

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej. Adam Meissner. Elementy uczenia maszynowego

Systemy eksperckie. Plan wykładu Wprowadzenie do sztucznej inteligencji. Wnioski z prób automatycznego wnioskowania w rachunku predykatów

PRZEWODNIK PO PRZEDMIOCIE

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej. Adam Meissner. Elementy uczenia maszynowego

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne

PRZEWODNIK PO PRZEDMIOCIE

Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY.

Systemy ekspertowe. Krzysztof Patan

PODSTAWY BAZ DANYCH. 19. Perspektywy baz danych. 2009/2010 Notatki do wykładu "Podstawy baz danych"

Systemy eksperowe. Agnieszka Nowak Brzezińska Wykład I

Wstęp do Sztucznej Inteligencji

Systemy ekspertowe : program PCShell

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Systemy ekspertowe Część siódma Realizacja dziedzinowego systemu ekspertowego Roman Simiński

Adam Meissner SZTUCZNA INTELIGANCJA

Indukowane Reguły Decyzyjne I. Wykład 3

Podstawy Sztucznej Inteligencji (PSZT)

Wniosek 2: należy ograniczyć ilość wiedzy, np. ograniczając działanie systemu do pewnej dziedziny wiedzy!

Metoda Tablic Semantycznych

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Sztuczna Inteligencja Projekt

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

Adam Meissner. SZTUCZNA INTELIGENCJA Gry dwuosobowe

[1] [2] [3] [4] [5] [6] Wiedza

Elementy kognitywistyki II: Sztuczna inteligencja

Systemy ekspertowe Część siódma Realizacja dziedzinowego systemu ekspertowego Roman Simiński

ID1SII4. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Systemy uczące się wykład 2

Systemy ekspertowe i sztuczna inteligencja. dr Agnieszka Nowak Brzezioska

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

SYSTEMY EKSPERTOWE. Anna Matysek IBiIN UŚ 2008

METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ

PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204

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

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Wykład 4 Ramy, wektory wiedzy, drzewa decyzyjne

Adam Meissner SZTUCZNA INTELIGENCJA

TEORETYCZNE PODSTAWY INFORMATYKI

SZTUCZNA INTELIGENCJA

O-MaSE Organization-based Multiagent System Engineering. MiASI2, TWO2,

SZTUCZNA INTELIGENCJA

Przykład eksploracji danych o naturze statystycznej Próba 1 wartości zmiennej losowej odległość

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Uchwała obowiązuje od dnia podjęcia przez Senat. Traci moc Uchwała nr 144/06/2013 Senatu Uniwersytetu Rzeszowskiego z 27 czerwca 2013 r.

Adam Meissner SZTUCZNA INTELIGENCJA Problem spełnialności (SAT)

Metody Programowania

Programowanie deklaratywne

Nowe narzędzia zarządzania jakością

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

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Algorytm. Krótka historia algorytmów

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

Elementy kognitywistyki III: Modele i architektury poznawcze

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Adam Meissner STUCZNA INTELIGENCJA

Paradygmaty dowodzenia

Systemy ekspertowe. Wnioskowanie w systemach regułowych. Część piąta. Autor Roman Simiński.

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

Adam Meissner SZTUCZNA INTELIGANCJA

zna metody matematyczne w zakresie niezbędnym do formalnego i ilościowego opisu, zrozumienia i modelowania problemów z różnych

CLP Programowanie logiczne z ograniczeniami.

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

Adam Meissner SZTUCZNA INTELIGENCJA

< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

4 Klasyczny rachunek zdań

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

Programowanie komputerów

PRZEWODNIK PO PRZEDMIOCIE

Projekt 4: Programowanie w logice

Analiza semantyczna. Gramatyka atrybutywna

Efekty kształcenia dla kierunku studiów INFORMATYKA, Absolwent studiów I stopnia kierunku Informatyka WIEDZA

Programowanie obiektowe

WYKŁAD 6. Reguły decyzyjne

Tworzenie gier na urządzenia mobilne

Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa

ECDL Podstawy programowania Sylabus - wersja 1.0

Technologie informacyjne - wykład 12 -

Analiza leksykalna 1. Teoria kompilacji. Dr inż. Janusz Majewski Katedra Informatyki

SZTUCZNA INTELIGENCJA

mgr inż. Magdalena Deckert Poznań, r. Metody przyrostowego uczenia się ze strumieni danych.

FIZYKA klasa 1 Liceum Ogólnokształcącego (4 letniego)

SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Metody Kompilacji Wykład 1 Wstęp

Metodyki i techniki programowania

Transkrypt:

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis SZTUCZNA INTELIGENCJA Architektury systemów eksperckich Literatura [1] Cichosz P., Systemy uczące się, WNT, Warszawa, 2000. [2] Flasiński M., Wstęp do sztucznej inteligencji, PWN, 2011. [3] Giarratano J.C., Riley G.D., Expert Systems: Principles and Programming, Fourth Edition, Course Technology, 2004. [4] Hopgood A.A., Intelligent Systems for Engineers and Scientists, Third Edition, CRC Press, 2011. [5] Lebowitz J., The Handbook of Applied Expert Systems, CRC Press, 1998. [6] Puppe F., Systematic Introduction to Expert Systems, Springer-Verlag, 1993. [7] Russell S.J., Norvig P., Artificial Intelligence: A Modern Approach, Prentice Hall, New Jersey, 2009. [8] Schreiber G. et al., Knowledge Engineering and Management: The CommonKADS Methodology, The MIT Press, 2000. 1

1. Wprowadzenie. 2017 Adam Meissner Plan wykładu 2. Metody pozyskiwania (akwizycji) wiedzy od ekspertów. 3. Metody reprezentowania i przetwarzania wiedzy. 4. Zagadnienia komunikacji z użytkownikiem i udzielania objaśnień. 5. Konstruowanie systemów eksperckich. 6. Podsumowanie. Wprowadzenie (1) Znaczenie terminu system ekspercki System ekspercki to program komputerowy wyposażony w wiedzę i umiejętności wnioskowania właściwe dla specjalistów z pewnej dziedziny [6] Typowa architektura systemu eksperckiego (wg. [6]) użytkownik ekspert przypadki specyficzne, dotyczące analizowanego problemu interfejs z użytkownikiem moduł udzielania objaśnień mechanizm wnioskujący moduł akwizycji wiedzy wiedza dziedzinowa eksperta wyniki pośrednie oraz rozwiązanie problemu 2

Wprowadzenie (2) Rys historyczny lata 50-te: rozwój teorii gier, zdefiniowanie podstawowych strategii prowadzenia gier dwuosobowych, badania nad algorytmami przeszukiwania heurystycznego lata 60-te: skonstruowanie pierwszych systemów rozwiązujących proste problemy, np. GPS (Newell A, Simon H.) oraz SHRDLU (Winograd T.), badania nad automatycznym wnioskowaniem zdefiniowanie reguły rezolucji (Robinson J.R.) lata 70-te: ukształtowanie się koncepcji systemu eksperckiego, powstanie pierwszych systemów eksperckich, takich jak: MYCIN (Feigenbaum E., 1976) diagnozowanie bakteryjnych zakażeń krwi, regułowa reprezentacja wiedzy, wnioskowanie na podstawie współczynników pewności CADUCEUS (Uniw. Pittsburgh, 1974 - ok. 1985) diagnozowanie chorób wewnętrznych, zaimplementowany w języku INTERLISP, rozpoznaje ok. 1000 tj. 75% wszystkich znanych jednostek chorobowych, problem współwystępowania chorób PUFF (1979) system diagnozowania chorób płuc, zaimplementowany z wykorzystaniem powłoki EMY- CIN, duża trafność postawionych diagnoz (ok. 85%) MACSYMA (MIT, początek lat 70-tych) wykonywanie obliczeń symbolicznych, zaimplementowany w języku LISP, popularny wśród matematyków i inżynierów 3

Wprowadzenie (3) Rys historyczny (cd.) DENDRAL (Feigenbaum E., Buchanan B., Lederberg J.) określanie struktury związku chemicznego na podstawie analizy spektralnej, zaimplementowany w INTERLISPie, generowanie i testowanie hipotez PROSPECTOR (SRI Int., przełom lat 70/80) interpretowanie map geologicznych, odkrycie bogatych złóż rudy molibdenu w stanie Washington (wartych ok. 1 mld USD) HERSAY I i II (Uniw. Carnegie-Mellon) rozpozna- -wanie mowy, pionierskie rozwiązania z zakresu architektur tablicowych. Kryteria klasyfikowania systemów eksperckich dziedzina zastosowań (np. medycyna, inżynieria, matematyka, chemia, fizyka, geologia, meteorologia, rolnictwo, prawo, zarządzanie, doradztwo finansowe, wojskowość, transport, kosmonautyka, sterowanie produkcją) przeznaczenie: s. kontrolne sterowanie złożonymi procesami (np. produkcją) s. diagnostyczne rozpoznawanie i klasyfikowanie przypadków, systemy te są szeroko stosowane w technice, medycynie, analizie chemicznej i wielu innych dziedzinach 4

Wprowadzenie (4) Kryteria klasyfikowania systemów eksperckich (cd.) testujące wykrywanie wad w badanych wyrobach, ich rozszerzeniem są systemy naprawcze, proponujące metody usuwania usterek projektujące (np. CAD, CAM) wspomaganie procesów projektowania, stosowane np. w elektronice, mechanice, inżynierii budowlanej, itp. edukacyjne (ang. Intelligent Computer Aided Teaching) wspomaganie nauczania interpretujące interpretowanie danych, np. system PROSPECTOR planistyczne wspomaganie konstruowania planów działań, systemy te są wykorzystywane m. in. przez strategów wojskowych prognostyczne przewidywanie zachowań układów dynamicznych na podstawie stanów wcześniejszych, systemy te wykorzystuje się np. do prognozowania pogody. sposób reprezentowania wiedzy i metody jej przetwarzania logika pierwszego rzędu i jej podzbiory (np. rachunek klauzul Horna, logiki deskrypcyjne) reguły JEŻELI-TO, wnioskowanie progresywne (ang. forward chaining), wnioskowanie regresywne (ang. backward chaining) ramy i obiekty logiki nieklasyczne np. modalne, temporalne (wnioskowanie niemonotoniczne, utrzymywania wiarygodności). 5

Pozyskiwanie wiedzy od ekspertów (1) metody pozyskiwania (akwizycji) wiedzy rola inżyniera wiedzy metody aktywne przeprowadzanie rozmów z ekspertem ewentualnie wspomagane użyciem ankiet, kwestionariuszy, diagramów, itp. metody pasywne obserwowanie pracy eksperta i wyników tej pracy, np. analiza raportów sporządzanych przez eksperta porównywanie działań różnych ekspertów automatyzacja pozyskiwania wiedzy niektóre elementy procesu pozyskiwania wiedzy, mające charakter dobrze zdefiniowanych procedur, mogą być realizowane przez środowiska narzędziowe środowiska do pasywnej akwizycji wiedzy wykorzystują np. techniki analizy NLP, algorytmy uczenia maszynowego i inne korzyści z automatyzacji pozyskiwania wiedzy polegają m.in. na zwiększeniu efektywności tego procesu (przez dyscyplinowanie eksperta) oraz na unikaniu przekłamań wynikających z udziału inżyniera wiedzy wiedza pozyskana w sposób automatyczny może jednak pomijać specyficzne elementy rozpatrywanej rzeczywistości, które mogłyby być uwzględnione podczas bezpośredniej współpracy eksperta z inżynierem wiedzy 6

Pozyskiwanie wiedzy od ekspertów (2) Drzewa decyzyjne założenia: dany jest zbiór D decyzji eksperta, klasyfikujących podany zbiór przykładów S na podstawie wartości wyróżnionych cech zadanie: skonstruować drzewo, którego wierzchołki wiszące reprezentują elementy zbioru D, a wierzchołki wewnętrzne odpowiadają cechom; każda krawędź wychodząca z wierzchołka wewnętrznego reprezentuje jedną z możliwych wartości cechy przypisanej temu wierzchołkowi ww. zadanie jest przykładem problemu indukowania pojęć, który wchodzi w zakres uczenia maszynowego [1] do najpopularniejszych metod konstruowania drzew decyzyjnych należy algorytm ID3 Rossa Quinlanna (1979) oraz jego warianty i udoskonalenia (C4.5, 1993). Algorytm ID3 Dane: zbiór przykładów S. Wynik: korzeń w drzewa decyzyjnego dla S. Metoda: 1. Utworzyć wierzchołek w. 2. Jeżeli zbiór S zawiera wyłącznie przykłady pozytywne, to w jest liściem o etykiecie 1; stop. 3. Jeżeli zbiór S zawiera wyłącznie przykłady negatywne, to w jest liściem o etykiecie 0; stop. 4. Wśród wszystkich cech występujących w zbiorze S znaleźć cechę c o maksymalnym zysku informacyjnym. 5. Podzielić zbiór S na podzbiory S 1,..., S n w których cecha c ma odpowiednio tę samą wartość; n jest liczbą wartości cechy c. 6. Nadać wierzchołkowi w etykietę c. 7. Dla każdego zbioru S i (i = 1,..., n) skonstruować drzewo decyzyjne ID3(S i ) i połączyć jego korzeń z wierzchołkiem w krawędzią o etykiecie reprezentującej wartość cechy c w zbiorze S i. 7

Pozyskiwanie wiedzy od ekspertów (3) Drzewa decyzyjne (cd.) przykład 1 (wg. [1]) Dany jest zbiór przykładowych decyzji eksperta w kwestii, czy przy danym stanie pogody można (d(x) = 1) albo nie można (d(x) = 0) grać w tenisa. x aura temperatura wilgotność wiatr d(x) 1 słoneczna wysoka duża słaby 0 2 słoneczna wysoka duża silny 0 3 pochmurna wysoka duża słaby 1 4 deszczowa umiarkowana duża słaby 1 5 deszczowa niska normalna słaby 1 6 deszczowa niska normalna silny 0 7 pochmurna niska normalna silny 1 8 słoneczna umiarkowana duża słaby 0 9 słoneczna niska normalna słaby 1 10 deszczowa umiarkowana normalna słaby 1 11 słoneczna umiarkowana normalna silny 1 12 pochmurna umiarkowana duża silny 1 13 pochmurna wysoka normalna słaby 1 14 deszczowa umiarkowana duża silny 0 {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14} aura słoneczna pochmurna deszczowa {1, 2, 8, 9, 11} {3, 7, 12, 13} {4, 5, 6, 10, 14} wilgotność 1 wiatr normalna duża słaby silny {9, 11} {1, 2, 8} {4, 5, 10} {6, 14} 1 0 1 0 8

Regułowa reprezentacja wiedzy (1) Wprowadzenie wiedza dziedzinowa na temat rozpatrywanej rzeczywistości (tzw. świata) jest skończonym zbiorem reguł, każda reguła ma ogólną postać JEŻELI Warunek TO Akcja wyrażenie Warunek jest zazwyczaj koniunkcją literałów, np. pacjent_skarży_się_na(ból_gardła) Temperatura > 37,5, wyrażenie Akcja jest skończonym, niepustym ciągiem, w którym wyróżnia się wnioski (ang. implications), czyli implikowane formuły np. stwierdzona_dolegliwość(angina), instrukcje, czyli działania zmieniające stan świata, np. zaaplikować_pacejntowi(aspiryna) Przykład 2 (wg. [1]) Drzewo decyzyjne z przykładu 1 można reprezentować w postaci następującego zbioru reguł. JEŻELI aura(słoneczna) wilgotność(duża) TO 0 JEŻELI aura(słoneczna) wilgotność(normalna) TO 1 JEŻELI aura(pochmurna) TO 1 JEŻELI aura(deszczowa) wiatr(silny) TO 0 JEŻELI aura(deszczowa) wiatr(słaby) TO 1 9

Regułowa reprezentacja wiedzy (2) Przetwarzanie wiedzy regułowej istnieją dwie, podstawowe metody przetwarzania wiedzy regułowej wnioskowanie progresywne (ang. forward chaining), wnioskowanie regresywne (ang. backward chaining), jednym z elementarnych działań, wykonywanych w ramach obu ww. metod jest porównywanie wyrażeń; wykorzystuje się do tego celu algorytm unifikacji, dopasowania wyrażenia do wzorca (ang. pattern matching) Wnioskowanie progresywne Algorytm FC Dane: baza wiedzy KB obejmująca zbiór reguł R i zbiór faktów F oraz hipoteza H. Wynik: sygnał tak, jeżeli KB H albo sygnał nie w przeciwnym wypadku; nowy zbiór F. Metoda: 1. Jeżeli H F to stop(tak). 2. Skonstruować zbiór C złożony ze wszystkich reguł ze zbioru R, których warunki są spełnione, tj. dla dowolnej reguły postaci L 1... L n A ze zbioru C, L i F gdzie i = 1, n. 3. Jeżeli C = to stop(nie), w przeciwnym wypadku uszeregować zbiór C zgodnie z przyjętymi kryteriami. 4. Wykonać akcję A pierwszej reguły ze zbioru C; jeżeli akcja A jest wnioskiem to dołączyć A do zbioru F. 5. Przejść do kroku 1. 10

Regułowa reprezentacja wiedzy (3) Wnioskowanie progresywne (cd.) Popularne strategie szeregowania zbioru C: przyjąć naturalny porządek w zbiorze uszeregować zbiór począwszy od reguł, których warunki odnoszą się do przypadków wprowadzonych do bazy wiedzy jako ostatnie (tj. najpóźniej) uszeregować zbiór począwszy od reguł o najbardziej złożonych warunkach uszeregować zbiór z wykorzystaniem wiedzy dodatkowej, np. przypisującej regułom priorytety. Udoskonalenia algorytmu ogólnego przyrostowe konstruowanie zbioru C grafowa reprezentacja zbioru reguł klasyfikowanie reguł ze względu na podobieństwo warunków indeksowanie reguł ze względu na zmienne występujące w warunkach. Powyższe udoskonalenia zrealizowano w algorytmie RETE (C.L. Forgy, 1974) wykorzystywanym w wielu popularnych systemach eksperckich (np. CLIPS) i w środowiskach do ich konstruowania (np. OPS5). 11

Regułowa reprezentacja wiedzy (4) Wnioskowanie regresywne Algorytm BC Dane: baza wiedzy KB obejmująca zbiór reguł R i zbiór faktów F oraz hipoteza H. Wynik: sygnał tak, jeżeli KB H albo sygnał nie w przeciwnym wypadku. Metoda: 1. Jeżeli H F to stop(tak). 2. Skonstruować zbiór C złożony ze wszystkich reguł ze zbioru R postaci W A, takich że A = H (W jest dowolną koniunkcją literałów). 3. Jeżeli C = to stop(nie), w przeciwnym wypadku ze zbioru C wybrać dowolną regułę L 1... L n A. 4. Wykonać algorytm BC dla każdego L i, gdzie i = 1, n. Jeżeli każdą z uzyskanych odpowiedzi jest tak to stop(tak), w przeciwnym wypadku usunąć wybraną regułę ze zbioru C. 5. Przejść do kroku 3. 12

Reprezentowanie wiedzy za pomocą ram koncepcja reprezentowania wiedzy za pomocą ram (ang. frames) pochodzi od Marvina Minskyego (1975) baza wiedzy jest zbiorem ram definicja ramy obejmuje atrybuty, ich wartości domyślne oraz metody, wśród których można wyróżnić tzw. demony w zbiorze ram określa się relację dziedziczenia atrybuty obiektu mają wartości określone ("konkretne") lub domyślne do reprezentowania klas, jak również obiektów, służą ramy elementami ramy są klatki (ang. slots), które wypełnia się fasetami (ang. facets) faseta jest parą nazwa:wartość; za pomocą faset określa się m. in. wartości przechowywane w klatce i ich typy. Przykład 3 (wg. [6]) Reprezentacja klasy i obiektów za pomocą ram w języku FRL Frame: expert system Slots: AKO: $value: program Programming environment: $require: (LISP, PROLOG, OPS5, C) $default: LISP $if-needed: "look up references". Frame: MYCIN Slots: AKO: $value: expert system. 13

Komunikacja z użytkownikiem ogólne metody komunikowania się systemu z użytkownikiem język stylizowany na naturalny (wykorzystywany w tzw. systemach dialogowych), język symboli graficznych (piktogramy, ikony), metody udzielania objaśnień objaśnianie przez retrospekcję (ang. retrospective explanation), objaśnianie kontrfaktyczne (ang. counterfactual explanation), udzielanie odpowiedzi intensjonalnych (ang. intensional answers). Konstruowanie systemów eksperckich (1) języki programowania języki prototypowania: np. PROLOG, LISP języki docelowe: np. CLIPS, JESS, DROOLS, C++, JAVA wykorzystanie gotowych powłok EMYCIN (powłoka systemu MYCIN) KAS (powłoka systemu PROSPECTOR) AGE (powłoka systemu HERSAY) środowiska narzędziowe RULEMASTER, system opracowany przez Radian Corporation, przeznaczony do wspomagania tworzenia systemów eksperckich z regułową reprezentacją wiedzy, zawiera m.in. interpreter języka RADIAL służącego do wyrażania reguł (wnioskowanie progresywne i regresywne) oraz kompilator RADIAL C, moduł indukowania reguł na podstawie przykładów moduł udzielania objaśnień w języku stylizowanym na angielski. 14

Konstruowanie systemów eksperckich (2) FLEX, produkt firmy LPA, zaprogramowany w języku Prolog, reprezentowanie wiedzy w postaci ram oraz reguł, możliwość wnioskowania progresywnego i regresywnego, możliwość reprezentowania wiedzy w języku KSL stylizowanym na j. angielski; popularne środowisko edukacyjne, wytworzono w nim system AllerGenius Personal Consultant Plus, produkt firmy Texas Instruments, zaprogramowany w języku IQLISP, reprezentowanie wiedzy w postaci reguł lub ram, możliwość wnioskowania progresywnego i regresywnego, przetwarzanie informacji niepewnej, edytor bazy wiedzy, moduł udzielania objaśnień (język stylizowany na angielski) OPS5, system opracowany i zaprogramowany na Uniwersytecie Carnegie Mellon (początkowo) w języku LISP, reprezentowanie wiedzy w postaci reguł, wnioskowanie progresywne, edytor bazy wiedzy wyposażony w mechanizm usuwania błędów KES, produkt firmy Software Architecture & Engineering Inc., zaprogramowany w języki FRANZ LISP, konstruowanie systemu na podstawie wymagań sformułowanych w języku stylizowanym na naturalny, reprezentowanie wiedzy za pomocą reguł i ram, wnioskowanie regresywne, przetwarzanie informacji niepewnej KEE, system opracowany przez firmę IntelliCorp, zaprogramowany w języku INTERLISP, przeznaczony do wspomagania tworzenia baz wiedzy z wykorzystaniem ram SRL, opracowany przez Instytut Robotyki Uniwersytetu Carnegie Mellon, zaprogramowany w języku FRANZ LISP, przeznaczony do wspomagania tworzenia baz wiedzy z wykorzystaniem ram, umożliwia posługiwanie się metawiedzą, 15

Podsumowanie weryfikowanie i testowanie systemów eksperckich kryteria formalne: niesprzeczność i pełność zgromadzonej wiedzy kryteria nieformalne: np. konsekwencja, użyteczność zagadnienia istotne przy budowaniu systemów eksperckich skuteczne pozyskiwanie wiedzy od ekspertów konieczność udzielania zrozumiałych i wyczerpujących odpowiedzi użytkownikowi trudności z realizacją wnioskowania na podstawie wiedzy zdroworozsądkowej (ang. commonsense knowledge) kierunki rozwoju systemów eksperckich nowe rozwiązania w zakresie komunikowanie się systemu z użytkownikiem (system przyjazny użytkownikowi ) poszukiwanie metod przetwarzania dużych baz wiedzy badania nad metodami reprezentowania wiedzy niepełnej, niepewnej i zmieniającej się w czasie. 16

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis SZTUCZNA INTELIGENCJA Reprezentowanie i przetwarzanie wiedzy o czasie literatura [1] Allen J.F., Maintaining Knowledge about Temporal Intervals; Comm. ACM 26 (1983) 832-943. [2] Kamiński J., Przegląd algorytmów utrzymywania wiarygodności, raport IPI PAN nr 639, sierpień 1988, Warszawa. [3] McDermott D.V., A Temporal Logic for Reasoning about processes and plans, Cognitive Sci. 6 (1982) 101-155. [4] Puppe F., Systematic Introduction to Expert Systems, Springer-Verlag, 1993.

Plan wykładu 2017 Adam Meissner 1. Zagadnienia dotyczące czasu w systemach z wiedzą zależno ci czasowe miedzy zdarzeniami zmienno ć wiedzy w czasie 2. Reprezentowanie zależno ci czasowych mi dzy zdarzeniami [4] reprezentacja bezwzgl dna reprezentacje wzgl dne 3. Przetwarzanie wiedzy zmiennej w czasie wnioskowanie niemonotoniczne systemy utrzymywania wiarygodno ci (ang. Truth Maintenance Systems). 2

Zale no ci czasowe mi dzy zdarzeniami reprezentacja bezwzgl dna (czas jako o liczbowa) zalety: prostota technik reprezentowania i przetwarzania wiedzy wady: wymóg precyzyjnego okre lania czasu zachodzenia zdarzeń reprezentacje wzgl dneś rachunek punktów [McDermott D.V. 1982] rachunek interwałów [Allen J.F. 1983]. Reprezentacja bezwzgl dna zastosowania: nauki techniczne, medycyna system VM [Fagan L. 1984]: sterowanie pracą respiratora na podstawie pomiarów ci nienia krwi pacjenta, t tna i tempa oddychania reprezentacja wiedzy wzorowana na syst. MYCIN dokonywanie pomiarów 30 razy na dob o ci le okre lonych porach system MED2 [Puppe F. 1987]: udoskonalenie systemu VM rejestrowanie wyników pomiarów w różnych odst pach, możliwo ć odnoszenia momentu pomiaru do wskazanego punktu czasowego funkcje mechanizmu wnioskującegoś (1) wyznaczanie czasu, jaki upłynął mi dzy dwoma pomiarami, (2) wyznaczanie zmian warto ci oraz dynamiki zmian danego parametru w okresie mi dzy pomiarami. 3

Rachunek punktów [McDermott D.V. 1982] REPREZENTACJA WIEDZY O ZALE NO CIACH CZASOWYCH do reprezentowania wiedzy wykorzystuje si punkty czasowe; w przestrzeni punktów czasowych definiuje si funkcj odległo ci przyporządkowującą parze punktów liczb całkowitą Dist baz wiedzy o zależno ciach czasowych przedstawia si w postaci grafuś wierzchołki grafu odpowiadają punktom czasowym kraw dzie oznaczają zależno ci mi dzy punktamiś zależno ci te mają postać ograniczeń Elt, reprezentowanych przez wyrażenia (MinDist, MaxDist) z dowolną parą punktów połączonych cieżkami związane jest ograniczenie b dące złożeniem ograniczeń przypisanych poszczególnym kraw dziom podstawowym warunkiem niesprzeczno ci bazy wiedzy jest wymóg, aby dla każdego ograniczenia MinDist MaxDist. Przykład 1 (baza wiedzy o zal. czasowych) p1 c1 (6, 9) p2 c2 (2, 5) c3 (3, 7) c4 (5, 8) p3 Elt(p 3, p 2 ) = (5, 7) Elt(p 1, p 2 ) = (7, 9) 4

REPREZENTACJA WIEDZY PRZEDMIOTOWEJ poj cia podstawoweś interwał czasowy (p 1, p 2 ) token, zachodzenie tokenu P podczas interwału (p 1, p 2 ) struktura bazy wiedzy: fakty i domniemania (ang. beliefs) reguły metody wnioskowania: wnioskowanie progresywne P 1... Pn => Q (t 1,1, t 1,2 ) (t n,1, t n,2 ) (t 1,1, t 1,2 ) (t n,1, t n,2 ) wada: generowanie wielu bezużytecznych wniosków automatyczna projekcja Z P 1... Pn => Q (z 1, z 2 ) (q 1, q 2 ) zalety: możliwo ć posługiwania si demonami systemowymi, ustalanie priorytetów zdarzeń wnioskowanie o domniemaniach: posługiwanie si domy lnymi założeniami o zdarzeniach, np. że każde zdarzenie trwa począwszy do pojawienia si informacji o jego zaj ciu, aż do nadej cia wiadomo ci o jego zakończeniu wykorzystanie systemu TMS, działającemu na zabezpieczeniach (ang. protection). 5

Przykład 2 (weryfikacja domniemań) Dana jest baza wiedzy 14:00 - Malinowski otrzymuje wiadomo ć dla Kowalskiego, 18:00 - Kowalski przychodzi do Iksiń kich, 21:00 - Malinowski przychodzi do Iksińskich. Na podstawie ww. bazy wiedzy można domniemywać, że Malinowski przekazał wiadomo ć Kowalskiemu. Jednakże po wprowadzeniu nowego faktu 20:00 Kowalski wrócił do domu powyższe domniemanie przestaje obowiązywać. Podsumowanie: rachunek punktów dobrze nadaje si do reprezentowania zdarzeń z zależno ciami opisanymi za pomocą wielko ci liczbowych trudno ci sprawia wyrażanie relacji typowo wzgl dnych, jak np. przed czy po. 6

rachunek interwałów [Allen J.F. 1983] poj cia podstawowe interwał czasowy relacja wzgl dna mi dzy parą interwałów,typy relacji wzgl dnych mi dzy interwałami relacja symbol relacji symbol relacji ilustracja graficzna odwrotnej X before Y < > ---- ---- X meets Y m mi ----- ---- X overlaps Y o oi -------- -------- X during Y d di ----- ---------- X starts Y s si ------- ------------- X finishes Y f fi ------- ------------- X equals Y = = ------------- ------------- REPREZENTACJA WIEDZY PRZEDMIOTOWEJ baza wiedzy o zależno ciach czasowych ma postać grafu: wierzchołki grafu reprezentują interwały kraw dzie są etykietowane przez zbiory relacji, jakie mogą zachodzić mi dzy interwałami podstawową operacją wykonywaną na bazie wiedzy jest wprowadzenie nowej relacji mi dzy wskazanymi interwałamiś w procesie tym uaktualnia si całą baz wiedzy poprzez propagowanie ograniczeń i usuwanie relacji sprzecznych 7

Algorytm wprowadzania nowej relacji do bazy wiedzy Dane: baza wiedzy B w postaci grafu, nowa relacja mi dzy parą wierzchołków R(i, j). Wynik: baza wiedzy B rozszerzona o relacj R(i, j). Metoda: Constraints(R1, R2) { C = ; for_each r1 in R1 do for_each r2 in R2 do C = C T(r1, r2); return(c) } Fragment tablicy T B r2 C A r1 B o d o s d 8

Add( R(i, j) ) { Put((i,j), ToDo); while NotEmpty(ToDo) { Get((i,j), ToDo); N(i, j) = R(i, j); for_each k do { R(i, k) = N(i, k) Constraints(R(i, j), N(j, k)); if R(i, k) N(i, k) then Put((i, k), ToDo); } for_each k do { R(k, j) = N(k, j) Constraints(N(k, i), R(i, j)); if R(k, j) N(k, j) then Put((k, j), ToDo); } } zastosowanie interwałów referencyjnych Przykład 3 ycie d d d < przedszkole m nauka m praca ( ycie) ( ycie) ( ycie) s d f szkoła podstawowa m szkoła rednia < studia (nauka) (nauka) (nauka) < 9

Przetwarzanie wiedzy zmiennej w czasie zmienno ć wiedzy w czasie jest zjawiskiem dotyczącym wi kszo ci praktycznie wykorzystywanych systemów przetwarzających wiedz przyjmuje si, że wprowadzenie nowej wiedzy do systemu może pociągać za sobą dwojakie skutki (1) rozszerzenie zbioru konsekwencji, jakie można wywnioskować na podstawie wcze- niej zgromadzonej wiedzy (2) zaw żenie tego zbioru w wypadku (2) mówi si o wnioskowaniu niemonotonicznym, tzn. A A Cn(A) Cn(A ) przykładem niemonotonicznej reguły wnioskowania jest negacja przez porażkę (ang. negation as failure) stosowana w Prologu. Przykład 4 P = {}, not(q) Cn(P), P' = { q. }, not(q) Cn(P'). Do opisu wnioskowania niemonotonicznego można wykorzystać operator unless F 1 F m unless(d 1 ) unless(d n ) W wyrażenie unless(d) jest prawdziwe o ile formuła D jest fałszywa albo jej warto ć logiczna nie jest znana. 10

Systemy utrzymywania wiarygodno ci system utrzymywania wiarygodno ci (ang. Truth Maintenance Systems) służy do wyznaczania konsekwencji modyfikowania bazy wiedzy w pewnym systemie przetwarzającym wiedz system utrzymywania wiarygodno ci oraz mechanizm wnioskujący stanowią odr bne lecz współpracujące ze sobą moduły systemu przetwarzania wiedzy posługiwanie si systemem TMS z reguły wymaga reprezentowania wiedzy w postaci sieci zależności niektóre rodzaje systemów TMSŚ JTMS oparty na uzasadnieniach (ang. Justificationbased TMS) ATMS oparty na założeniach (ang. Assumptionbased TMS) LTMS logiczny TMS (ang. Logic-based TMS). 11

System JTMS [John Doyle, 1979] POJ CIA PODSTAWOWE sieć zależno ci w systemie składa si z w złów (ang. nodes) i uzasadnień (ang. justifications) w zeł ma postać pary (F, E), gdzie F jest formułą z bazy wiedzy a E jest etykietą, E {IN, OUT} uzasadnienie ma postać pary (R, L), gdzie R jest regułą a L = (L-IN, L-OUT) jest parą list złożonych z w złów w zeł bezpośrednio wspiera uzasadnienie, o ile jest elementem listy L-IN lub listy L-OUT tego uzasadnienia uzasadnienie bezpośrednio wspiera w zeł jeżeli formuła zawarta w w źle należy do wniosków płynących z reguły reprezentowanej przez to uzasadnienie uzasadnienie jest słuszne, jeżeli każdy element listy L-IN tego uzasadnienia ma etykiet IN a każdy element listy L-OUT ma etykiet OUT w zeł nazywany jest założeniem o ile jest bezpo rednio wspierany przez co najmniej jedno uzasadnienie słuszne, a każde ze słusznych uzasadnień wspierających ma niepustą list L-OUT sieć zależno ci jest poprawnie etykietowana o ile każdy w zeł wspierany przez co najmniej jedno słuszne uzasadnienie ma etykiet IN - w przeciwnym wypadku w zeł ten ma etykiet OUT każdy w zeł oznaczający sprzeczno ć ma etykiet OUT. 12

ZADANIE SYSTEMU JTMS 2017 Adam Meissner Dla danej sieci zależno ci skonstruować jej poprawne etykietowanie. DZIAŁANIA WYKONYWANE PRZEZ SYSTEM JTMS dodawanie w złowi nowego uzasadnienia dodawanie nowego w zła do sieci zależności usuwanie sprzeczno ci. Przykład 5 (sieć zale no ci) ZARYS METODY DODAWANIA W ZŁOWI NOWEGO UZASADNIENIA 1. Jeżeli nowe uzasadnienie jest słuszne a rozpatrywany w zeł ma etykiet OUT, to wykonać krok 2, w przeciwnym wypadku zakończyć działanie. 2. Zmienić w złowi etykiet na IN a nast pnie wyznaczyć konsekwencje tej zmiany w całej sieci zależno ci. 13

ZARYS METODY USUWANIA SPRZECZNO CI (WG [2]) Wejście: węzeł N oznaczający sprzeczność z etykietą IN Wyjście: węzeł N z etykietą OUT albo sygnał fail 1. Dla każdego słusznego uzasadnienia U w zła N wykonać kroki 2-3. 2. Skonstruować zbiór S = {A 1,, A i,, A n } zawierający wszystkie bezpo rednie założenia wspierające uzasadnienie U. Jeżeli zbiór S jest pusty to zakończyć z sygnałem fail (sprzeczno ci nie można usunąć na poziomie TMS-u). 3. Ze zbioru S wybrać dowolne założenie A i i dla każdego uzasadnienia słusznego w zła A i wybrać pewien element D j z listy L-OUT tego uzasadnienia, postaci D 1,, D j,, D k. Nast pnie, dodać w złowi D j nowe, słuszne uzasadnienie, którego lista L-IN ma postać A 1,, A i-1, A i+1,, A n a lista L-OUT jest postaci D 1,, D j-1, D j+1,, D k. Metod usuwania sprzeczno ci ilustruje poniższy rysunekś nowo dodane uzasadnienie ma kolor czerwony, etykiety wierzchołków dotyczą stanu sprzed dodania tego uzasadnienia. 14

System ATMS [Johan de Kleer, 1986] system ATMS nie posiada takich wad systemu JTMS jak: wyznaczanie pojedynczego rozwiązania, migotanie etykiet, nadrestrykcyjne traktowanie sprzeczno ci, wiedz w systemie ATMS reprezentuje zbiór w złów postaci (F, E, U) gdzie F jest formułą z bazy wiedzy, U jest zbiorem uzasadnień, tj. formuł (implikacji) opisujących zależno ć formuły F od formuł zawartych w innych w złach, za E jest etykietą, tj. zbiorem kontekstów, czyli zbiorów K formuł, takich że ( K E) (K U F). ZADANIE SYSTEMU ATMS Dla każdego w zła w sieci zależno ci skonstruować etykiet, która jest niesprzeczna, trafna, pełna i minimalna DZIAŁANIA WYKONYWANE PRZEZ SYSTEM ATMS dodawanie uzasadnienia w złowi i wyznaczenie etykiety oznaczanie kontekstu K jako sprzecznego (nogood(k)) generowanie nowego w zła konstruowanie nowego uzasadnienia. Przykład 6 Dany jest zbiór nast pujących w złówś (a, {{A, G}}, ), (b, {{B}, {C, D}, {A, C}}, ), (c, {{}}, ) oraz wyrażenie nogood({g, C }). Po dodaniu uzasadnienia a b c system wylicza etykiet w zła z formułą cś (c, {{A, G, B}, {A, G, C, D}, {A, G, C}}, ) (e. trafna i pełna) (c, {{A, G, B}, {A, G, C}}, ) (e. trafna, pełna i minimalna) (c, {{A, G, B}}, { a b c }) (e. trafna, pełna, minimalna i niesprzeczna) 15