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

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

Systemy ekspertowe i sztuczna inteligencja. dr Agnieszka Nowak Brzezioska

Algorytmy Sztucznej Inteligencji wykład nr 1 wnioskowanie i SE. Agnieszka Nowak - Brzezińska

Algorytmy Sztucznej Inteligencji wykład nr 2 wnioskowanie i SE. Agnieszka Nowak - Brzezińska

Systemy ekspertowe : program PCShell

PRZEWODNIK PO PRZEDMIOCIE

Wprowadzenie do teorii systemów ekspertowych

Sztuczna inteligencja

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Narzędzia AI. Jakub Wróblewski Pokój SZTUCZNA INTELIGENCJA (ARTIFICIAL INTELLIGENCE)

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

PRZEWODNIK PO PRZEDMIOCIE

SZTUCZNA INTELIGENCJA

PRZEWODNIK PO PRZEDMIOCIE

Sztuczna Inteligencja. Agnieszka Nowak Brzezioska Wykład I

Stefan Sokołowski SZTUCZNAINTELIGENCJA. Inst. Informatyki UG, Gdańsk, 2009/2010

Systemy ekspertowe. Krzysztof Patan

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Sztuczna inteligencja - wprowadzenie

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

Sztuczna inteligencja stan wiedzy, perspektywy rozwoju i problemy etyczne. Piotr Bilski Instytut Radioelektroniki i Technik Multimedialnych

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

Elementy kognitywistyki II: Sztuczna inteligencja

PRZEWODNIK PO PRZEDMIOCIE

Festiwal Myśli Abstrakcyjnej, Warszawa, Czy SZTUCZNA INTELIGENCJA potrzebuje FILOZOFII?

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

Metody Sztucznej Inteligencji Methods of Artificial Intelligence. Elektrotechnika II stopień ogólno akademicki. niestacjonarne. przedmiot kierunkowy

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

Sztuczna Inteligencja. Agnieszka Nowak Brzezioska Wykład I

PRZEWODNIK PO PRZEDMIOCIE

Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY.

Praca dyplomowa magisterska

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

PRZEWODNIK PO PRZEDMIOCIE

KIERUNKOWE EFEKTY KSZTAŁCENIA

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Metody drążenia danych D1.3

Transformacja wiedzy w budowie i eksploatacji maszyn

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

KIERUNKOWE EFEKTY KSZTAŁCENIA

Efekt kształcenia. Wiedza

T2A_W01 T2A_W01 T2A_W02 3 SI_W03 Posiada szeroką wiedzę w zakresie teorii grafów T2A_W01

BIOCYBERNETYKA PROLOG

KARTA PRZEDMIOTU. Dyscyplina:

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

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

Podsumowanie wyników ankiety

Efekty kształcenia na kierunku AiR drugiego stopnia - Wiedza Wydziału Elektrotechniki, Automatyki i Informatyki Politechniki Opolskiej

KARTA MODUŁU KSZTAŁCENIA

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

Zakładane efekty kształcenia dla kierunku Wydział Telekomunikacji, Informatyki i Elektrotechniki

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

Alan M. TURING. Matematyk u progu współczesnej informatyki

Systemy Informatyki Przemysłowej

Kierunek Informatyka stosowana Studia stacjonarne Studia pierwszego stopnia

EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW

Inteligencja. Władysław Kopaliśki, Słownik wyrazów obcych i zwrotów obcojęzycznych

KIERUNKOWE EFEKTY KSZTAŁCENIA

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

Metody sztucznej inteligencji w układach sterowania METODY SZTUCZNEJ INTELIGENCJI W UKŁADACH STEROWANIA

Opracował: mgr inż. Marcin Olech

Plan wykładów METODY SZTUCZNEJ INTELIGENCJI W UKŁADACH STEROWANIA

Temat: Programujemy historyjki w języku Scratch tworzymy program i powtarzamy polecenia.

Symbol efektu kształcenia

WIEDZA METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. Adrian Horzyk. Akademia Górniczo-Hutnicza

Informatyka. II stopień. Ogólnoakademicki. Stacjonarne/Niestacjonarne. Kierunkowy efekt kształcenia - opis WIEDZA

Odniesienie do efektów kształcenia dla obszaru nauk EFEKTY KSZTAŁCENIA Symbol

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

Systemy uczące się wykład 1

SZTUCZNA INTELIGENCJA

ANKIETA SAMOOCENY OSIĄGNIĘCIA KIERUNKOWYCH EFEKTÓW KSZTAŁCENIA

Systemy uczące się wykład 2

1. Tabela odniesień efektów kierunkowych do efektów obszarowych z komentarzami

Gry społecznościowe. wykład 0. Joanna Kołodziejczyk. 24 lutego Joanna Kołodziejczyk Gry społecznościowe 24 lutego / 11

Liczba godzin/tydzień: 2W, 2L

5 Moduył do wyboru II *[zobacz opis poniżej] 4 Projektowanie i konfiguracja sieci komputerowych Z

KIERUNKOWE EFEKTY KSZTAŁCENIA

Odniesienie do obszarowych efektów kształcenia Kierunkowe efekty kształcenia WIEDZA (W)

Diagnostyka procesów przemysłowych Kod przedmiotu

PRZEWODNIK PO PRZEDMIOCIE

Programowanie komputerów

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

PROGRAM KSZTAŁCENIA dla kierunku automatyka i robotyka studiów pierwszego stopnia o profilu ogólnoakademickim

Archipelag Sztucznej Inteligencji

Efekty kształcenia dla makrokierunku: INFORMATYKA STOSOWANA Z KOMPUTEROWĄ NAUKĄ O MATERIAŁACH Wydział: MECHANICZNY TECHNOLOGICZNY

SYSTEMY EKSPERTOWE. Anna Matysek IBiIN UŚ 2008

Efekty uczenia się na kierunku. Logistyka (studia drugiego stopnia o profilu praktycznym)

Systemy ekspertowe. Podstawowe pojęcia, geneza, metody wnioskowania, PC-Shell

Zastosowanie sztucznych sieci neuronowych w prognozowaniu szeregów czasowych (prezentacja 2)

zakładane efekty kształcenia

2

Efekty kształcenia dla kierunku studiów CHEMIA studia pierwszego stopnia profil ogólnoakademicki

EFEKTY UCZENIA SIĘ DLA KIERUNKU INŻYNIERIA DANYCH W ODNIESIENIU DO EFEKTÓW UCZENIA SIĘ PRK POZIOM 6

ROZWÓJ SYSTEMÓW SZTUCZNEJ INTELIGENCJI W PERSPEKTYWIE "PRZEMYSŁ 4.0"

Opis efektu kształcenia dla programu kształcenia

FIZYKA II STOPNIA. TABELA ODNIESIENIA EFEKTÓW KIERUNKOWYCH DO EFEKTÓW PRK POZIOM 7 Symbol Efekty kształcenia dla kierunku studiów FIZYKA.

WYKAZ PRZEDMIOTÓW I PLAN REALIZACJI

6 C2A_W02_03 Ma wiedzę z zakresu logistyki produktów przerobu ropy naftowej i produktów polimerowych.

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.

UCHWAŁA NR 46/2013. Senatu Akademii Marynarki Wojennej im. Bohaterów Westerplatte z dnia 19 września 2013 roku

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Transkrypt:

Systemy eksperowe Agnieszka Nowak Brzezińska Wykład I

Zakres materiału: Wprowadzenie do sztucznej inteligencji i systemów ekspertowych PC-Shell jako narzędzie do budowy szkieletowych systemów ekspertowych Metody wnioskowania w regałowych bazach wiedzy Zbiory przybliżone: podstawowe pojęcia, usuwanie niespójności z tablic decyzyjnych, generowanie reduktu i rdzenia tablicy decyzyjnej, generowanie reguł minimalnych. Rachunek zdań I i II rzędu. Rachunek predykatów. Prolog. Rachunek perceptów. Reprezentacja wiedzy niepewnej. Sieci semantyczne i Ramy jako alternatywna do regałowej reprezentacja wiedzy.

Zasady zdobycia zaliczenia z laboratorium: Uwaga: Obecność na wykładzie jest niezbędną by dobrze przygotować się do uczestnictwa w laboratorium z przedmiotu. Sprawozdanie z użytkowania narzędzia PC-Shell: stworzenie bazy wiedzy, przeprowadzenie wnioskowania, wprowadzenie własnych elementów języka programowania PC-Shell do bazy wiedzy. Sprawdzian z metod wnioskowania. Sprawdzian ze zbiorów przybliżonych. Sprawdzian z rachunku zdań. Sprawdzian z reprezentacji wiedzy niepewnej. Obecność na 75% zajęć.

Przebieg egzaminu: Egzamin ma formę pisemną i ustną. Składać się będzie zarówno z części praktycznej (rozwiązywanie zadań) jak i teoretycznej (wiadomości z wykładów).

Sztuczna Inteligencja (Artificial Intelligence, AI) to dziedzina nauki zajmująca się rozwiązywaniem zagadnień efektywnie niealgorytmizowalnych w oparciu o modelowanie wiedzy.

Soft Computing Optymalizacja badania operacyjne Logika rozmyta Sieci neuronowe Algorytmy ewolucyjne Wizualizacja Data mining CI - numeryczne Dane + Wiedza AI - symboliczne Metody statystyczne Rachunek prawdop. Systemy ekspertowe Uczenie maszynowe Rozpoznawanie Wzorców

Rys historyczny Sztuczna inteligencja to termin zaproponowany przez John a McCarthy ego w 1956 roku, na konferencji w Dartmouth College poświęconej inteligentnym maszynom.

Okres ciemności: 1965-1970, w którym niewiele się działo, powoli opadał entuzjazm i pojawiły się głosy bardzo krytyczne. Renesans: 1970-1975, gdy zaczęto budować pierwsze systemy doradcze, użyteczne w praktyce. Okres partnerstwa: 1975-1980, gdy do badań nad AI wprowadzono metody kognitywistyki. Okres komercjalizacji: 1980-1990, gdy programy AI, a szczególnie systemy doradcze zaczęto sprzedawać komercyjnie

Inne definicje AI: AI to nauka mająca za zadanie nauczyć maszyny zachowań podobnych do ludzkich. AI to nauka o tym, jak nauczyć maszyny robić rzeczy które obecnie ludzie robią lepiej. AI to nauka o komputerowych modelach wiedzy umożliwiających rozumienie, wnioskowanie i działanie.

Co to inteligencja? Inteligencja jest umiejętnością przystosowywania się do nowych zadań i warunków życia albo sposobem, w jaki człowiek przetwarza informacje i rozwiązuje problemy. Inteligencja to także umiejętność kojarzenia oraz rozumienia. Wpływ na nią mają zarówno cechy dziedziczne jak i wychowawcze.

Najważniejsze procesy i funkcje składające się na ludzką inteligencję: Uczenie się i wykorzystywanie wiedzy, zdolność uogólniania, percepcja i zdolności poznawcze, np. zdolność rozpoznawania danego obiektu w dowolnym kontekście. Zapamiętywanie, stawianie i realizacja celów, umiejętność współpracy, formułowanie wniosków, zdolność analizy, tworzenie oraz myślenie koncepcyjne i abstrakcyjne.

Zastosowania, zadania SI stosuje się do rozwiązywania problemów: 1. Poszukiwanie algorytmów do gry w szachy, 2. Przetwarzanie języka naturalnego (automatyczne tłumaczenie zdań między różnymi językami, wydawanie poleceń słownych maszynom, a także wydobywanie informacji ze zdań mówionych i budowanie z nich baz wiedzy).

Definicje AI w literaturze: Jest nauką o maszynach realizujących zadania, które wymagają inteligencji, gdy są wykonywane przez człowieka (M.Minsky) AI stanowi dziedzinę informatyki dotyczącą metod i technik wnioskowania symbolicznego przez komputer oraz symbolicznej reprezentacji wiedzy stosowanej podczas takiego wnioskowania (E. Feigenbaum) AI obejmuje rozwiązywanie problemów sposobami wzorowanymi na naturalnych działaniach i procesach poznawczych człowieka za pomocą symulujących je programów komputerowych (R.J. schalkoff).

Dwa rodzaje Sztucznej Inteligencji Słaba (Weak AI) - potrafi rozwiązywać trudne zadania w sposób umożliwiający praktyczne zastosowanie, Mocna (Strong AI) - oznacza myślenie przybliżające myślenie ludzkie.

Uczenie się Zdolność do uczenia się jest powszechnie uważana za jeden z najważniejszych przejawów inteligencji. Przez uczenie się rozumiemy, w najprostszym ujęciu, zdobywanie wiedzy lub umiejętności (a także doskonalenie dotychczas posiadanej wiedzy lub umiejętności), na podstawie wspomagających informacji, takich jak doświadczenia czy przykłady. Rozważając sztuczne systemy uczące się będziemy przez uczenie się rozumieć proces zmiany zachodzącej w systemie na podstawie doświadczeń, która prowadzi do poprawy jego jakości działania rozumianej jako sprawność rozwiązywania stojących przed systemem zadań.

Systemy Ekspertowe System ekspertowy to inteligentny program komputerowy stosujący wiedzę i procedury rozumowania (wnioskowania) w celu rozwiązywania problemów, które wymagają doświadczenia ludzkiego (eksperta), nabytego przez wieloletnią działalność w danej dziedzinie. Ogólna idea SE polega na przeniesieniu wiedzy eksperta z danej dziedziny do bazy wiedzy, zaprojektowaniu maszyny wnioskującej na podstawie posiadanych informacji oraz dodaniu interfejsu użytkownika, służącego do komunikacji.

Kiedy nasz program lub maszyna jest inteligentna? Na to pytanie w 1950 roku próbował odpowiedzieć Alan Turing. Idea Testu Turinga polegała na tym, że człowiek za pomocą klawiatury i monitora zadaje te same pytania komputerowi i innej osobie. Jeśli zadający pytania nie potrafi rozróżnić odpowiedzi komputera i człowieka, tzn. że program (maszyna) jest inteligentny.

Uproszczony test Turinga CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) - rodzaj techniki stosowanej jako zabezpieczenie w formularzach na stronach WWW. Dla przesłania danych konieczne jest przepisanie treści z obrazka (zazwyczaj losowo dobranych znaków bądź krótkiego wyrazu). Obrazek ten jest prosty do odczytania przez człowieka, jednakże odczytanie go przez komputer jest, przynajmniej w założeniu, bardzo trudne.

Robotyka Rozwój robotów dzięki USA, które w latach 50-tych stosowały roboty np. w fabrykach do składania samochodów General Motors. Potem budowa maszyn manipulacyjnych dla przemysłu nuklearnego i poszukiwań oceanograficznych. Dziś mamy roboty takie, które wykonują banalne czynności typu: zrobienie kawy, podanie kapci, takie, które zastępują człowieka w trudnych procesach przemysłowych ale i takie, będące dumą współczesnej techniki.

Roboty wykonujące skomplikowane operacje chirurgiczne W 2002 roku robot sterowany przez profesora Louisa Kavoussi z odległości tysiąca km, wykonał operację chirurgiczną. Rola lekarzy nadzorujących ograniczyła się jedynie do znieczulenia pacjenta. W ten sposób chory nie musi czekać na przyjazd lekarza, co zmniejsza znacznie koszty i czas zabiegu.

Przetwarzanie mowy i języka naturalnego Badania obejmują: 1. Syntezę mowy (nauka języków obcych, odczytywanie informacji dla niewidomych), 2. Rozumienie słowa mówionego (automatic speech recognition) np. dyktowanie tekstów, wydawanie ustnych poleceń, rozpoznawanie użytkownika po głosie, 3. Rozumienie języka naturalnego wydobywanie istotnych zdań ze zdań zapisanych w postaci tekstu, 4. Tłumaczenie maszynowe tłumaczenie tekstów w różnych językach.

Heurystyki Heurystyka to twórcze rozwiązywanie problemów, zarówno logicznych jak i matematycznych przez eksperyment, metodą prób i błędów bądź odwołaniem się do analogii. Metody heurystyczne dają się świetnie stosować tam, gdzie rozwiązanie problemu wymaga olbrzymich ilości obliczeń. Heurystyki pozwalają eliminować niektóre obszary analiz, co zmniejszy koszty obliczeniowe i generalnie przyspieszy analizę.

Kognitywistyka To dziedzina nauki, która próbuje zrozumieć naturę umysłu i zajmuje się zjawiskami dotyczącymi umysłu. Istotną sprawą jest analiza naszego sposobu postrzegania świata i próba zrozumienia tego, co dzieje się w naszym umyśle, gdy wykonujemy elementarne czynności umysłowe. Korzysta się tutaj z doświadczeń nauk takich jak neurobiologia i psychologia. Ale na potrzeby tej nauki korzysta się także z zasobów antropologii, psychofizyki, logiki, lingwistyki, neurofizjologii, filozofii, sztucznej inteligencji i wielu innych gałęzi nauki.

Sztuczne życie (ang. Artificial life) To młoda dziedzina nauki (1987). Dziedzina nauki poświęcona zrozumieniu życia poprzez próby wydobycia podstawowych zasad dynamiki, mających wpływ na zjawiska biologiczne. Korzysta się tu z dorobku: biologii, chemii, fizyki, psychologii, robotyki, nauk komputerowych. Np.Framstick prowadzony od 97 roku przez polaków. Symulacje prowadzone są w wirtualnym, trójwymiarowych świecie (ze środowiskiem lądowym i wodnym). Organizmy to framsticki, zbudowane z patyczków, mające receptory (zmysły dotyku, równowagi i węchu) oraz narząd ruchu (mięśnie). Tu sterowaniem zajmuje się siec neuronowa. Framsticki rywalizują ze sobą o byt w środowisku poprzez walkę i poszukiwanie pożywienia.

Architektura SE

Pojęcia z dziedziny systemów ekspertowych Inżynieria wiedzy - dziedzina sztucznej inteligencji zajmująca się projektowaniem i realizacją systemów ekspertowych. Inżynier wiedzy projektant SE, osoba łącząca wiedzę na temat technik budowy SE z umiejętnością pozyskiwania i formalizacji wiedzy eksperckiej. Akwizycja wiedzy proces pozyskiwania wiedzy niezbędnej do realizacji systemu ekspertowego. Na proces składają się: rozpoznanie problemu, wywiady z ekspertem, oraz reprezentacja wiedzy eksperta. Akwizycja kończy się w momencie zapisania wiedzy eksperta w bazie wiedzy SE.

Zasady tworzenia systemu ekspertowego

Etapy tworzenia systemu ekspertowego: analiza problemu, pod kątem, czy kwalifikuje się on do budowy systemu ekspertowego, opracowanie specyfikacji systemu, zdefiniowanie jego zadań i oczekiwanych wyników; przejęcie wiedzy od ekspertów i jej opracowanie; wybór metody reprezentacji wiedzy oraz narzędzi do budowy systemu; organizacja i kodowanie wiedzy (prototyp, pełna wersja); weryfikacja i testowanie systemu.

Właściwości systemów ekspertowych: Są narzędziem kodyfikacji wiedzy; Mają zdolność rozwiązywania problemów specjalistycznych, w których dużą rolę odgrywa doświadczenie a wiedza ekspercka jest dobrem rzadkim i kosztownym; Zwiększają dostępność ekspertyzy; Zapewniają możliwość prowadzenia jednolitej polityki przez centralę firm mających wiele oddziałów; Poziom ekspertyzy jest stabilny jej jakość nie zależy od warunków zewnętrznych i czasu pracy systemu; Jawna reprezentacja wiedzy w postaci zrozumiałej dla użytkownika końcowego; Zdolność do objaśniania znalezionych przez system rozwiązań; Możliwość przyrostowej budowy i pielęgnacji bazy wiedzy.

System ekspertowy służy do rozwiązywania problemów, które charakteryzują się jedną lub wieloma z następujących cech: problem nie da się sformalizować w postaci liczbowej; cele nie dadzą się opisać za pomocą matematycznych funkcji celu; nie istnieją formalne algorytmy rozwiązywania problemu; dane i wiedza systemu są obarczone nieznanym błędem lub są one niepełne, niepewne.

Przyczyny tworzenia systemu ekspertowego (uogólnione): tylko jeden (lub bardzo niewielu) specjalista posiada niezbędną wiedzę, co grozi jej utratą; ekspertyza jest wymagana często lub jest niezbędna w wielu miejscach; ekspertyza jest niezbędna w miejscach niedostępnych dla człowieka lub szkodliwych dla zdrowia.

Wnioskowanie

Typy wnioskowania Wnioskowanie w przód (data driven) Wnioskowanie wstecz (goal driven) Wnioskowanie mieszane

Sterowanie wnioskowaniem

Mechanizm wnioskowanie w przód

Mechanizm wnioskowanie w przód

Idea wnioskowania wstecz

Algorytm wnioskowania wstecz

Mechanizm wnioskowania wstecz dla hipotezy v

Idea wnioskowania mieszanego

WnioskowanieR.pdf Dodatkowo

Prezentacja algorytmy RETE

Przykład dla regułowej bazy wiedzy z 9 regułami: Fakty: a1, b1, d4 R1: a1 & b1 -> c1 R2: a1 & b2 -> c2 R3: a1 & b3 -> c1 R4: b3 & d3 -> e1 R5: b3 & d2 -> e1 R6: b3 -> e2 R7: d4 -> f1 R8: d4 & g1 -> f1 R9: a1 -> d4

Przykład dla regułowej bazy wiedzy z 9 regułami: Fakty: a1, b1, d4 R1: a1 & b1 -> c1 R2: a1 & b2 -> c2 R3: a1 & b3 -> c1 R4: b3 & d3 -> e1 R5: b3 & d2 -> e1 R6: b3 -> e2 R7: d4 -> f1 R8: d4 & g1 -> f1 R9: a1 -> d4 Czyli teoretycznie dla takich faktów jak a1, b1 i d4 można uaktywnić reguły: r1,r7 i r9. Fakty: a1, b1, d4 R1: a1 & b1 -> c1 R2: a1 & b2 -> c2 R3: a1 & b3 -> c1 R4: b3 & d3 -> e1 R5: b3 & d2 -> e1 R6: b3 -> e2 R7: d4 -> f1 R8: d4 & g1 -> f1 R9: a1 -> d4

Algorytm RETE (1974 r.) 1. Graf budujemy tak, że od korzenia (root) prowadzimy tyle węzłów ile mamy atrybutów w częściach warunkowych reguł: a, b, d, g 2. Następnie od każdego węzła atrybut prowadzimy węzły z wartościami atrybutów z przesłanek reguł np. od a prowadzimy węzeł 1 (czy a1 ) ale od b już prowadzimy 1, 2 i 3 bo w regułach mamy przesłanki typu b1,b2,b3 3. Gdy jakaś reguła ma więcej niż jedną przesłankę prowadzimy węzeł łączący wartości atrybutów tworzące przesłanki np. a1 & b1 4. Węzły końcowe (terminalne) stanowi numer porządkowy (ID) reguły.

root b 1 a 1 2 d g a1 and b1 a1 and b2 3 4 1 r1 r2 3 b3 and d3 r7 d4 and g1 r9 a1 and b3 r4 2 r8 r3 r6 b3 and d2 r5

Końcowy Graf RETE root b 1 a 1 2 d g a1 and b1 a1 and b2 3 4 1 r1 r2 3 b3 and d3 r7 d4 and g1 r9 a1 and b3 r4 2 r8 korzeń atrybut Wartość atrybutu (przesłanka reguły, jedna lub więcej. To tzw. Węzły typu alfa, beta) Węzeł terminalny ID reguły r3 r6 b3 and d2 r5

Pojawia się fakt: a1 więc zapalamy węzły z a1 root b 1 a 1 2 d g a1 and b1 a1 and b2 3 4 1 r1 r2 3 b3 and d3 r7 d4 and g1 r9 a1 and b3 r4 2 r8 Conflict set r9 r3 r6 b3 and d2 r5 Reguła r9 zostaje dodana do conflict set i bierzemy kolejne fakty

Pojawia się fakt: b1 więc zapalamy węzły z b1 root b 1 a 1 2 d g a1 and b1 a1 and b2 3 4 1 r1 r2 3 b3 and d3 r7 d4 and g1 r9 a1 and b3 r4 2 r8 Conflict set r1 r9 r3 r6 b3 and d2 r5 Reguła r1 zostaje dodana do conflict set i bierzemy kolejne fakty

Pojawia się fakt: d4 więc zapalamy węzły z d4 root b 1 a 1 2 d g a1 and b1 a1 and b2 3 4 1 r1 r2 3 b3 and d3 r7 d4 and g1 Conflict set r9 a1 and b3 r4 2 r8 r7 r1 r9 r3 r6 b3 and d2 r5 Reguła r7 zostaje dodana do conflict set i kończymy bo nie ma więcej faktów Inne reguły nie były niepotrzebnie analizowane

Algorytm RETE krok po kroku 1. Tworzymy graf skierowany (acykliczny) gdzie węzłami są elementy tworzące części przesłankowe reguł a liśćmi są numery porządkowe reguł. 2. Następnie dopasowujemy fakty do węzłów w grafie i te reguły, które mogą być uaktywnione zapisujemy w tzw. CONFLICT SET w formie stosu. 3. W zależności od wybranej strategii LIFO/FIFO uaktywniamy reguły.

Wnioskowanie dla strategii LIFO r7 r1 r9 r7 r1 r9 NOWE FAKTY f1 c1 d4 Kierunek generowania faktów a1 b1 d4 f1 c1 d4

Wnioskowanie dla strategii FIFO r7 r1 r9 r9 r1 r7 NOWE FAKTY d4 c1 f1 Kierunek generowania faktów a1 b1 d4 d4 c1 f1

Wnioskowanie dla strategii FIFO r7 r1 Wnioskowanie dla strategii LIFO r7 r1 r9 r9 r1 r7 r9 r7 r1 r9 NOWE FAKTY d4 c1 f1 NOWE FAKTY f1 c1 d4 Kierunek generowania faktów Kierunek generowania faktów

Pseudokod algorytmu RETE Procedure RETE() { Graph := CreateGraphRETE(R); ConflictSet:= MatchingRules(K,Graph); newfacts:=activeagenda(conflictset,strategy); return newfacts; } R- reguły K- fakty CreateGraphRETE generuje graf z warunkowych części reguł. MatchingRules(K,Graph) dopasuje fakty do węzłów w grafie i zapisuje do ConflictSet te reguły które można uaktywnić! ActiveAgenda zgodnie z wybraną strategią Lifo albo Fifo uaktywnia reguły z ConflictSet i wyprowadza nowe fakty.

Metody realizacji systemów ekspertowych w środowisku systemu PC-Shell Właściwości: są narzędziem kodyfikacji wiedzy eksperckiej, mają zdolność rozwiązywania problemów specjalistycznych, w których duża rolę odgrywa doświadczenie a wiedza ekspercka jest dobrem rzadkim i kosztownym. zwiększają dostępność ekspertyzy, zapewniają możliwość prowadzenia jednolitej polityki przez centralę firm mających wiele oddziałów, poziom ekspertyzy jest stabilny - jej jakość nie zależy od warunków zewnętrznych i czasu pracy systemu, jawna reprezentacja wiedzy w postaci zrozumiałej dla użytkownika końcowego, zdolność do objaśniania znalezionych przez system rozwiązań, możliwość przyrostowej budowy i pielęgnacji bazy wiedzy.

Zastosowania analiza ryzyka, ocena wniosków kredytowych, uczestników przetargów, monitorowanie, diagnostyka, predykcja, wspomaganie procesów diagnostycznych, analiza i interpretacja danych, instruktaż, dydaktyka, szkolenia.

Tworzenie systemu ekspertowego

Ogólna charakterystyka szkieletowego systemu ekspertowego PC-Shell PC Shell jest podstawowym elementem pakietu sztucznej inteligencji Sphinx PC Shell jest dziedzinowo niezależnym narzędziem do budowy systemów ekspertowych, posiada właściwości hybrydowe, wykorzystuje elementy architektury tablicowej; wykorzystuje różne metody reprezentacji wiedzy: 1. deklaratywna w postaci reguł i faktów, 2. wiedza rozproszona w sieci neuronowej, 3. imperatywna w formie programu algorytmicznego, 4. faktograficzna w formie tekstów, grafiki, dźwięku, sekwencji wideo; system zapewnia wyjaśnienia: 1. jak (ang. how), 2. dlaczego (ang. why), 3. co to jest (ang. what is), 4. metafory (ang. metaphor), 5. opisu faktów; wykorzystywane jest wnioskowanie wstecz (z nawrotami), bazy wiedzy mogą być parametryzowane, system ma możliwość bezpośredniego pozyskiwania informacji z baz danych (ODBC), wykorzystuje mechanizm DDE, system PC Shell współpracuje z innymi elementami pakietu systemem Neuronix przeznaczonym do tworzenia sieci neuronowych, systemem CAKE przeznaczonym do wspomagania pracy inżyniera wiedzy oraz realizującym funkcje systemu dbmaker, zarządzającego bazami wyjaśnień.

Architektura SE

Struktura BW

Blok deklaracji źródeł wiedzy

Wykłady z PC-Shella http://zsi.tech.us.edu.pl/~nowak/zaocznese/tworzeniebw.pdf http://zsi.tech.us.edu.pl/~nowak/zaocznese/sphinx.pdf

Drools

Jess

Wnioskowanie w Jess/Drools

Wnioskowanie c.d.

Tworzenie BW

Przykładowa BW

BW w Jess

WinJess przykładowe narzędzie JESS

BW w PC-Shell

PC-Shell

Podsumowanie

Laboratorium nr 1 Wnioskowanie w regułowych bazach wiedzy. Wykonanie ćwiczeń 1-6.

Przykład1 Dana jest baza wiedzy : R1: Jeżeli a i b i c to d R2: Jeżeli a i b to g R3: Jeżeli b i c to e R4: Jeżeli a i c to f R5: Jeżeli e i b i c to f Dane sa fakty : a, b, c. Wyprowadź całą możliwą wiedzę z systemu.

Przykład2 Dana jest baza wiedzy : R1: Jeżeli a i b i c to d R2: Jeżeli a i d to g R3: Jeżeli a i f to b R4: Jeżeli b i g to f R5: Jeżeli a i e to f R6: Jeżeli e i f to a R7: Jeżeli a i b to c Dane są fakty : a i e. Udowodnić hipotezę g.

Ćwiczenie 3 Dana jest baza wiedzy: R1: Jeżeli b i d to f R2: Jeżeli a to b R3: Jeżeli e i f to g R4: Jeżeli b i c to e Fakty: a, c i d. Szukane b

Ćwiczenie 4 Dana jest baza wiedzy: R1: Jeżeli j i k to l R2: Jeżeli j to n R3: Jeżeli n i m to o R4: Jeżeli n i l to m Fakty: j, k, l, p. Szukane p.

Ćwiczenie 5 Dana jest baza wiedzy: R1: Jeżeli l i m to n R2: Jeżeli j to o R3: Jeżeli j i k to m R4: Jeżeli n i o to p Fakty: j, k, l. Szukane p.