System Ekspertowy Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Specjalność: Systemy Sterowania i Wspomagania Decyzji Studia stacjonarne II stopnia: rok I, semestr II Opracowanie: dr inż. Tomasz Rutkowski
Zadania dziedzin związanych z wiedzą TWORZENIE WIEDZY EKSPERT ZARZĄDZANIE WIEDZĄ W I E D Z A ODKRYWANIE WIEDZY UŻYTKOWNIK INŻYNIERIA WIEDZY D A N E Źródło: Traczyk W. Inżynieria Wiedzy 2
O rozwiązywalności problemów NP-trudnych Źródło: Mulawka J.. Systemy ekspertowe 3
Dlaczego system ekspertowy? Dlaczego system ekspertowy: ze względu na koszty, w dłuższym okresie czasu są relatywnie tanie z powodu braku ekspertów w wielu dziedzinach systemy ekspertowe pracują szybko, nie męczą się i są bardziej niezawodne niż ludzie systemy ekspertowe są konsekwentne, spójne, obiektywne i dokładne systemy ekspertowe są zawsze do dyspozycji analiza dużych ilości danych wymaga specjalizowanych programów komputerowych 4
Dlaczego system ekspertowy? Źródło: Mulawka J.. Systemy ekspertowe Wady Ekspertyza naturalna, wykonana przez człowieka tracąca na wartości z upływem czasu trudna do przeniesienia trudna do dokumentacji nie dająca się przewidzieć kosztowna Zalety twórcza adaptacyjna wykorzystane zmysłów szeroki zakres wiedza zdrowego rozsądku Zalety stała Ekspertyza sztuczna łatwa do przeniesienia łatwa do dokumentacji zgodna z bazą wiedzy dostępna Wady nie inspirująca wymaga wprowadzenia wiedzy wejścia symboliczne wąski zakres wiedza przetwarzana w sposób mechaniczny 5
Kim jest ekspert? Ekspert: to człowiek posiadający specjalistyczną wiedzę (nabytą w wyniku studiów, praktyki) w pewnej dziedzinie (wiedzę dziedzinową) oraz umiejętność jej stosowania dla potrzeb podejmowania decyzji związanych z tą dziedziną (umiejętność wnioskowania w oparciu o posiadaną wiedzę) 6
System oparty na wiedzy Wiedza jest podstawową kategorią w tzw. systemach opartych na bazie wiedzy, gdzie podstawowymi problemami, które należy rozwiązać to: pozyskiwanie (akwizycja) wiedzy reprezentacja bazy wiedzy sposób użycia wiedzy objaśnienie i uczenie się Tego typu systemy oparte na bazie wiedzy najczęściej nazywa się systemami ekspertowymi Systemy takie zorganizowane są najczęściej w taki sposób, że wiedza dotycząca danej dziedziny jest odseparowana od reszty systemu 7
System oparty na wiedzy Akwizycja wiedzy na potrzeby systemu ekspertowego: prowadzenie wywiadów z ekspertami analiza kwestionariuszy wypełnianych przez ekspertów analiza raportów pisanych przez ekspertów analiza komentarzy ekspertów wykonywanych w czasie pracy obserwacja ekspertów przy pracy analiza własnych działań... 8
System oparty na wiedzy Akwizycja wiedzy Źródło: Mulawka J.. Systemy ekspertowe 9
System oparty na wiedzy Role twórców systemu ekspertowego Źródło: Mulawka J.. Systemy ekspertowe 10
System ekspertowy System ekspertowy zadaje pytania, wyjaśnia wątpliwości, sugeruje rozwiązania SYSTEM EKSPERTOWY FAKTY SĄDY WIEDZA WNIOSKI 11
System ekspertowy - definicja Systemy ekspertowe są programami komputerowymi przeznaczonymi do rozwiązywania specjalistycznych problemów wymagających profesjonalnej ekspertyzy System ekspertowy (doradczy, ekspercki) to program komputerowy wykorzystujący wiedzę i procedury wnioskowania do rozwiązywania problemów, które są na tyle trudne, że wymagają znaczącej ekspertyzy specjalistów 12
System ekspertowy - zastosowania ZASTOSOWANIA FAKTY WNIOSKI a. Wspomaganie decyzji warunki decyzje b. Diagnostyka objawy diagnoza c. Klasyfikacja cechy kategoria d. Konfigurowanie wymagania struktura e. Prognozowanie stan prognoza f. Inne?? Źródło: Traczyk W. Inżynieria Wiedzy 13
System ekspertowy główne elementy Głównymi elementami systemu ekspertowego są: baza wiedzy, zawierająca wiedzę dziedzinową, istotną dla podejmowanych decyzji system wnioskujący, korzystający z bazy wiedzy dla wypracowania tych decyzji more knowledge less search... 14
System ekspertowy główne elementy Baza wiedzy Fakty Reguły Maszyna wnioskująca wraz z jednostką sterującą 15
System ekspertowy główne elementy Wiedza systemu ekspertowego: fakty i heurystyki Fakty: informacje powszechnie akceptowane przez specjalistów Heurystyki: informacja subiektywna (intuicyjne domysły, przypuszczenia, zdroworozsądkowe zasady postępowania), która charakteryzuje proces oceny przez określonego specjalistę Poziom/jakość ekspertyzyzależy odrozmiaru i jakości bazy wiedzy danego systemu ekspertowego 16
System ekspertowy główne elementy Źródła niepewności danych/informacji: zbyt wiele danych/informacji nie mającej znaczenia brak precyzji w obserwacjach i opisie błędy aparatury brak zrozumienia sytuacji sprzeczne informacje nieznane czynniki wpływające na sytuację zmiana sytuacji w czasie, starzenie się wiedzy koszty pozyskiwania nowych informacji Duży problem w systemach ekspertowych niepewność wiedzy 17
System ekspertowy - wnioskowanie Większość systemów ekspertowych do wnioskowania wykorzystuje reguły produkcji (reguły decyzyjne): IF warunek THEN wniosek AND/OR akcja 18
System ekspertowy - wnioskowanie Wnioskowanie w systemie ekspertowym jest procesem wyszukania konkluzji przy wykorzystaniu zbioru reguł i faktów w konkretnej sytuacji i w określonych warunkach Podstawowe strategie wnioskowania to: rozumowanie progresywne (wprzód, ang. forward chaining) startuje ze znanych warunków i zmierza do określenia celu (sterowane danymi) rozumowanie regresywne (wstecz, ang. backward chaining) startuje z wymaganych celów i działa wstecz określając konieczne warunki(sterowane celami). 19
System ekspertowy struktura SYSTEM EKSPERTOWY = SYSTEM WNIOSKUJĄCY + BAZA WIEDZY UŻYTKOWNIK INTERFEJS UŻYTKOWNIKA BAZA DANYCH KONTROLA POPRAWNOŚCI INŻYNIER WIEDZY GENERATOR WYJAŚNIEŃ EDYTOR MASZYNA WNIOSKUJĄCA BAZA WIEDZY OBLICZENIA STEROWANIE INTERFEJS BD Proc. Sieć SN Źródło: Traczyk W. Inżynieria Wiedzy 20
System ekspertowy struktura Struktura Bazy Wiedzy Źródło: Mulawka J.. Systemy ekspertowe 21
System ekspertowy struktura Baza wiedzy służy do przechowywania reguł Baza wiedzy jest częścią systemu w której zebrana jest wiedza z danej dziedziny oraz reguły podejmowania decyzji przez eksperta Informacje w bazie wiedzy mogą być przechowywane w różnej postaci, ale zawsze są podstawą wnioskowania Niemożliwe jest istnienie systemu ekspertowego bez bazy wiedzy, ponieważ w takim przypadku system jest jedynie uniwersalną platformą, w której po umieszczeniu analogicznie reprezentowanej bazy wiedzy z innej dziedziny otrzymuje się nowy, dziedzinowy system doradczy 22
System ekspertowy struktura Reguły wprowadza inżynier wiedzy za pomocą edytora Użytkownik poprzez odpowiedni interfejs wprowadza fakty do bazy danych, oraz odbiera wyniki działań W bazie danych przechowywane są również pośrednie wyniki wnioskowania Maszyna wnioskująca to program realizujący procedury wnioskowania, uzgadnia warunki reguł (z bazy wiedzy) z faktami (z bazy danych) i wprowadza konkluzje do bazy danych, lub poszukuje danych (potwierdzające warunki reguł) w bazie danych, zewnętrznych źródłach danych lub pytając o nie użytkownika 23
System ekspertowy struktura Generator wyjaśnień odpowiada na wątpliwości użytkownika dotyczące zadawanych pytań i generowanych wniosków Proste obliczenia w trakcie procesu wnioskowania wykonywane są w module obliczeń Moduł kontroli poprawności, kontroluje poprawność reguł i faktów sprawdzając wyrywkowo lub symetrycznie czy w bazach danych i wiedzy nie występują informacje sprzeczne lub nadmiarowe Moduł interfejsu zapewnia połączenia z zewnętrznymi źródłami danych: bazami danych, siecią komputerową, złożonymi programami obliczeniowymi,... Moduł sterowania zarządza całym systemem, realizuje stałe lub doraźne ustawione procedury wnioskowania 24
System ekspertowy narzędzia do tworzenia Istotną cechą systemów ekspertowych jest: rozdzielenie bazy wiedzy i systemu wnioskującego baza wiedzy w postaci pliku tekstowego, który można utworzyć, czytać czy edytować za pomocą edytora bazy wiedzy bez naruszania integralności systemu wnioskującego Dzięki temu możliwe jest: szybkie zrozumienie i modyfikowanie przez użytkownika wiedzy dziedzinowej, z której korzysta system ekspertowy oraz tworzenie systemów skorupowych/szkieletowych, tzn. systemów ekspertowych pozbawionych baz wiedzy PC-Shell, CLIPS, rmse. rmse(regułowo-modelowy system ekspertowy) 25
System ekspertowy narzędzia do tworzenia Środki do budowania Systemów Ekspertowych (SE): - języki popularne (C++, Java, ) -języki sztucznej inteligencji (Prolog, Lisp, ) - języki specjalizowane (OPS5, ART, KES, ) - systemy szkieletowe 26
System ekspertowy narzędzia do tworzenia Systemy ekspertowe a paradygmaty programowania Programowanie proceduralne PROCEDURA = ALGORYTM + DANE Należy nie tylko powiedzieć programowi, co ma zrobić, lecz również powiedzieć, jak to ma zrobić Programowania deklaratywne SYSTEM EKSPERTOWY = SYSTEM WNIOSKUJĄCY + BAZA WIEDZY Należy poinformować system wnioskujący o całej wiedzy potrzebnej do wykonania zadania a następnie wskazać mu cel, który ma osiągnąć (mechanizm wnioskujący w pakiecie ) 27
System ekspertowy typowa klasyfikacja Klasyfikacja systemów ekspertowych: Systemy ekspertowe specjalizowane, o systemach wnioskujących przeznaczonych do współpracy z ściśle określoną bazą wiedzy dziedzinowej Systemy ekspertowe skorupowe, o systemach wnioskujących mogących współpracować z różnymi bazami, spełniającymi określone wymagania syntaktyczne 28
System ekspertowy typowa klasyfikacja Regułowe systemy ekspertowe, gdzie wiedza dziedzinowa zapisana jest w postaci deklaratywnej (reguły i fakty) a wnioskowanie odbywa się na drodze wnioskowania logicznego Regułowe-modelowe(hybrydowe) systemy ekspertowe, w których wiedza dziedzinowa zapisana jest w postaci deklaratywnej(reguły i fakty) i proceduralnej (równania, relacje) a wnioskowanie opiera się o wnioskowanie logiczne wspomagane obliczeniami numerycznymi 29
System ekspertowy podstawowe etapy tworzenia Analiza problemu: ocena, czy budowa systemu ekspertowego dla danego problemu ma sens Specyfikacja systemu: szczegółowe określenie funkcji i oczekiwań od projektowanego systemu. Akwizycji wiedzy: zgromadzenie wiedzy, wydobycie wiedzy od ekspertów i/lub organizacji Wyboru metody reprezentacji wiedzy oraz narzędzi do budowy systemu ekspertowego Konstrukcja systemu: utworzenie bazy wiedzy, reguł wnioskowania, systemu wyjaśniającego rozumowanie oraz prowadzenia dialogu z użytkownikiem Weryfikacja i testowanie systemu 30
System ekspertowy zalety i wady Zalety: użyteczne w przypadku rozwiązywania złożonych problemów, odpowiadają na pytania użytkownika prezentując swoje konkluzje w intuicyjne zrozumiały dla użytkownika sposób, nie potrzeba programistów by zrozumieć ich działanie typowo oparte są na jednolitym sposobie reprezentacji wiedzy, np. w postaci reguł przedstawienie wiedzy dziedzinowej w postaci reguł umożliwia łatwą modyfikację wiedzy Wady: trudno jest przewidzieć jakie będą skutki dodania nowej wiedzy z punktu widzenia przebiegu wnioskowania trudno jest pozyskiwać wiedzę automatycznie, uczenie maszynowe oraz odkrywanie wiedzy rzadko jest częścią systemu ekspertowego rzadko kiedy systemy ekspertowe ujmują niepewność, w kontekście definiowania faktów czy reguł 31
System oparty o wiedzę system ekspertowy Właściwości systemów ekspertowych Poprawność Uniwersalność Złożoność Autoanaliza Zdolność udoskonalania bazy wiedzy 32
Przykłady systemów ekspertowych 33
Przykłady matematycznych systemów ekspertowych: Maple MathCAD Mathematica Niektóre wersje umożliwiają dowodzenie twierdzeń 34
Przykłady systemów ekspertowych: w chemii: CASD, CRYSALIS, DENDRAL, w biologii: EcoSys, BioCyc, MetaCyc, 35
Przykład medycznego systemy ekspertowego 36
Przykłady systemów ekspertowych w medycynie: MYCIN GermAlert Germwatcher Gideon Icons ToxoNet Help Doktorek CaDet CCIS DermaDex Cancer, me?? FACTS ACORN Thorask POEMS Jeremiah Orthoplanner RaPiD TxDENT ILIAD v. 4.5 ADE Monitor Colorado Medicaid DoseChecker PEPID PRODIGY Geninfer DR GAIT III THALIUM DIAGNOSTIC WORKSTATION SETH Interpretation of acid-base disorders Epileptologist`s Assistant DiagnosisPro Larsen MINERVA Dxplain PEIRS NEO GANESH 37
MYCIN MYCIN to program do diagnostyki i terapii chorób zakaźnych. System MYCIN zostałstworzony w latach 70-tych. Główne prace zaczęły sięokoło roku 1972 i trwały do około 1980. Prace nad MYCIN embyły przeprowadzane na Uniwersytecie Stanforda. MYCIN zostałstworzony jako regułowysystemekspertowy. MYCIN od czasu swojego powstania zyskałmiano jednego z najbardziej znanych systemów ekspertowych. Byłprojektowany z myśląo tym aby staćsięmedycznym narzędziem diagnostycznym. 38
MYCIN - przykład dialogu MYCIN dostaje dane bakteriologiczne, czasy pobierania próbek, nazwisko, płeć, wiek. 4) Czy określono mikrobiologicznie rodzaj możliwej infekcji? Tak 5) Jakiego rodzaju jest to infekcja? Primary-Bacteremia 6) Proszę podać kiedy nastąpiły pierwsze objawy infekcji. 15-Stycz-9311:30 7) Skąd pochodzą próbki pierwszej kultury bakteryjnej? Krew 8) Kiedy otrzymano próbki kultury bakteryjnej z krwi? 16-Stycz-9312:00 39
MYCIN - dialog cd. 9) Pierwsza bakteria wyhodowana w tej próbce krwi będzie określana jako Organizm-1. Zidentyfikuj organizm-1. Nieznany 10) Czy organizm-1 jest pałeczką czy ziarnkowcem? Pałeczką 11) Jaki jest odczyn organizmu-1 Gramonegatywny 12) Czy organizm-1 rozwijał się aerobowo? Tak 13) Czy organizm-1 rozwijał się anaerobowo? Tak 14) Moje zalecenia terapeutyczne będą oparte o następujące prawdopodobne infekcje spowodowane przez następujące bakterie: INFEKCJA-1 typu Primary-bacteremia 1. E. Coli (Organizm-1) 2. Pseudomonas-aeruginosa(Organizm-1) 40
MYCIN Porównanie diagnoz i zaleceń MYCIN i5 specjalistów z Uniwersytecie Stanforda: MYCIN 52 punkty specjaliści 34-50 punkty student medycyny 24 punkty 41
Przykład dydaktycznego systemy ekspertowego 42
SCHOLAR Przykładowy dialog z systemem SCHOLAR: Jakiego języka używa się w Argentynie? ** Chyba hiszpańskiego. Bardzo dobrze. Jaka jest przybliżona powierzchnia Argentyny? ** Powiedz mi coś o Peru Peru jest krajem. Leży w Ameryce Południowej. Stolicą jest Lima Teraz odpowiedz na zadane pytanie. ** Około 1,100,000 mil kwadratowych. W przybliżeniu dobrze, ale bardziej dokładnie to 1,200,000. ** Czy w Asuncionjest gorąco? Ponieważ Asuncion to część Paragwaju, wnioskuję że tak. ** Jaka jest najważniejsza różnica pomiędzy Peru i Paragwajem? Najważniejsza różnica to: Peru ma 7.8 razy więcej ludności 43
Bibliografia [1] W. Traczyk: Inżynieria Wiedzy, EXIT 2010 [2] J. Mulawka: Systemy ekspertowe, WNT 1996 [3] A. Niederliński: "Regułowo-Modelowe Systemy Ekspertowe" PKJS 2006 44
Zakończenie ;) Dziękuję za uwagę!!! 45