Inżynieria Wiedzy i Systemy Ekspertowe

Transkrypt

Inżynieria Wiedzy i Systemy Ekspertowe
Inżynieria Wiedzy i Systemy Ekspertowe
dr inż. Michał Bereta
Politechnika Krakowska
http://torus.uck.pk.edu.pl/~beretam/
[email protected]
1
Informacje o przedmiocie
Wykład (18 h)
Ćwiczenia (9 h)
Laboratorium (9 h)
Zaliczenie przedmiotu: zaliczenie części
praktycznej (ćw. + lab.) + egzamin
2
Plan wykładów
Geneza Systemów Ekspertowych (SE), rys historyczny
Sztucznej Inteligencji (SI).
●
●
Pierwsze Systemy Ekspertowe.
●
Inteligencja, wiedza – definicje.
●
Kryteria sztucznej inteligencji. Test Turinga.
●
Struktura Systemów Ekspertowych.
●
Regułowe SE .
●
Metody wnioskowania.
●
Baza wiedzy (baza reguł), metawiedza w SE.
3
Plan wykładów
Szkieletowe Systemy Ekspertowe.
●
Narzędzia do tworzenia SE.
●
Niepewność w SE – metody bayesowskie, współczynniki
pewności, logika rozmyta (fuzzy logic)
●
Inne metody reprezentacji wiedzy (ramy, sieci
semantyczne, itd.)
●
Inne metody rozumowania i przeszukiwania.
●
Heurystyki.
●
4
Plan wykładów
Uczenie maszynowe. Paradygmaty uczenia się.
●
Hybrydowe systemy inteligentne – sieci neuronowe,
algorytmy ewolucyjne, metody rozmyte w SE.
●
Tworzenie baz wiedzy na podstawie danych:
●
algorytmy tworzenia zbioru reguł
➔ drzewa decyzyjne
➔ drążenie danych – Data Mining
➔
Inżynieria Wiedzy (Knowledge Engineering)
●
Kieunki rozwoju
●
5
Literatura
•Kasperski M.J., „Sztuczna inteligencja.” Helion 2003.
•
•Mulawka A., „Systemy ekspertowe.” WNT Warszawa
1996.
•
•Korbicz J., Obuchowicz A., Uciński D., „Sztuczne sieci
neuronowe. Podstawy i zastosowania.” Akademicka
Oficyna Wydawnicza PLJ, Warszawa 1994.
•
•Nęcka E., „Inteligencja.” Gdańskie Wydawnictwo
Psychologiczne, Gdańsk 2003.
6
Literatura
•Arabas J., „Wykłady z algorytmów ewolucyjnych.” WNT
Warszawa 2001.
•
•Bargiela A., Pedrycz W., „Granular Computing: An
Introduction.” Kluwer 2002.
•
•Cholewa W., Pedrycz W., „Systemy doradcze.” Wyd. Pol.
Śl. Gliwice 1987.
•
•Goldberg D.E., „Algorytmy genetyczne i ich
zastosowania.” WNT Warszawa 1995.
7
Literatura
•Michalewicz Z., „Algorytmy genetyczne + struktury
danych = programy ewolucyjne.” WNT, Warszawa
2003.
•
•Osowski S., „Sieci neuronowe do przetwarzania
informacji.” Oficyna Wydawnicza Pol. Warszawskiej,
Warszawa 2000.
•
•Piegat A., „Modelowanie i sterowanie rozmyte.”
Akademicka Oficyna Wydawnicza EXIT, Warszawa
2003.
8
Literatura
•Russel S., Norvig P., „Artificial Intelligence: A
Modern Approach.” Prentice Hall, 2002.
•
•Rutkowska D., Piliński M, Rutkowski L., „Sieci
neuronowe, algorytmy genetyczne i systemy rozmyte.”
PWN, Warszawa 1997.
•
•Tadeusiewicz R., „Elementarne wprowadzenie do
techniki sieci neuronowych z przykładowymi
programami.” Akademicka Oficyna Wydawnicza PLJ,
Warszawa 1999.
9
Literatura
•Negnevitsky M., “Artificial Intelligence. A Guide to
Intelligent Systems”, Addison Wesley, 2005
•
•Cichosz P. “Systemy uczące się”, PWN
•
•Michalewicz Z., Fogel D., „Jak to rozwiązać czyli
nowoczesna heurystyka”, 2006
•
•Koronacki J., Ćwik J., „Statystyczne systemy uczące
się”,Exit 2008
•
10
Sztuczna Inteligencja
Rys Historyczny
Inteligencja
“Inteligencja oznacza umiejętność rozumienia
oraz uczenia się nowych rzeczy.”
“Inteligencja to zdolność do myślenia i
rozumienia w przeciwieństwie do
wykonywania czynności instynktownie lub
automatycznie.”
Essential English Dictionary, Colins,
London, 1990
11
Sztuczna Inteligencja
Rys Historyczny
Inteligencja
“Someone's intelligence is their ability to
understand and learn things.”
“Intelligence is the ability to think and
understand instead of doing things by
instinct or automatically.”
Essential English Dictionary, Colins,
London, 1990
12
Sztuczna Inteligencja
Rys Historyczny
Druga definicja inteligencji nie zakłada, że
mówimy o osobie.
Inteligencja to zdolność:
●uczenia się
●rozumienia
●rozwiązywania problemów
●podejmowania decyzji
13
Sztuczna Inteligencja
Rys Historyczny
Myślenie
“Myślenie to czynność używania mózgu w
celu rozwiązania problemu bądź też tworzenia
nowej idei.”
Essential English Dictionary, Colins,
London, 1990
14
Współczesne definicje inteligencji
Współcześnie inteligencja określana jest zwykłe jako zdolność
umysłowa lub grupa zdolności. Nie ma jednak ogólnej zgody
na rozumienie terminu „zdolność”. Używa się tego pojęcia
w trzech znaczeniach:
potencjalne zdolności jednostki (capasities) – określają do
czego człowiek byłby zdolny, gdyby zostały spełnione warunki
jego rozwoju (środowiskowe, zdrowotne,, społeczne, osobiste
itp.),
zdolności rzeczywiście przejawiane (abilities) – do czego
człowiek jest faktycznie zdolny, jeśli spełnione są optymalne
warunki ekspresji jego możliwości (dobry stan psychofizyczny
organizmu, sprzyjające warunki otoczenia, brak stresu, itp.),
poziom wykonania określonych czynności lub zadań
(performance) – co można zmierzyć lub zaobserwować w
konkretnej sytuacji.
15
Współczesne definicje inteligencji
Współczesne definicje inteligencji można
podzielić na trzy grupy:
•.zdolność uczenia się,
•.zdolność przystosowania się,
•.zdolność metapoznawcza (rozeznanie we własnych
procesach poznawczych i zdolnościach ich
kontrolowania; osoba inteligentna używa umysłu
bardziej refleksyjnie i jest w stanie sterować własnymi
procesami poznawczymi),
16
Współczesne definicje inteligencji
Inteligencja –
zdolność przystosowania się do
okoliczności dzięki dostrzeganiu
abstrakcyjnych relacji,
korzystaniu z uprzednich
doświadczeń i skutecznej kontroli
nad własnymi procesami
poznawczymi.
17
Sztuczna Inteligencja
Rys Historyczny
Za najistotniejszy składnik wszelkich
zdolności, wchodzący w zakres
inteligencji jest zdolność do analizy i
uogólniania stosunków zachodzących
w dziedzinie, której dotyczy
rozpatrywana zdolność.
18
Sztuczna Inteligencja
Rys Historyczny
Czy komputery mogą być inteligentne?
Czy komputery mogą zachowywać się
inteligentnie?
19
Sztuczna Inteligencja
Rys Historyczny
Celem Sztucznej Inteligencji (SI) jako nauki
jest tworzenie maszyn zdolnych wykonywać
czynności, o których twierdzi się, że
wymagają inteligencji, jeśli są wykonywane
przez człowieka.
(Boden, 1977)
20
Sztuczna Inteligencja
Rys Historyczny
Inteligentne zachowanie maszyny to jej
zdolność do osiągnięcia jakości
wykonywania pewnego zadania
kognitywnego na “ludzkim” poziomie.
(Turing)
21
Sztuczna Inteligencja
Rys Historyczny
Czy zatem należy oczekiwać, że
inteligentna maszyna będzie w stanie
wykonać każde zadanie, czy tylko jedno,
czy też pewną grupę czynności?
Jak ocenić czy mamy do czynienia z
inteligencją?
22
Kryteria sztucznej inteligencji
Można wyróżnić trzy główne kryteria
sztucznej inteligencji:
Symulacja procesów naturalnych (z
użyciem testu Turinga)
Inteligentne czynności
Racjonalne sprawstwo
23
Sztuczna Inteligencja
Rys Historyczny
Test Turinga
Alan Turing “Computing machinery and
intelligence”, Mind, 59, 433-460, 1950
Autor koncepcji uniwersalnego komputera.
Autor pierwszego programu będącego w stanie rozegrać
kompletną partię szachów.
24
Sztuczna Inteligencja
Rys Historyczny
Alan Turing
●
Czy jest możliwe myślenie bez doświadczenia?
●
Czy jest możliwy umysł bez zdolności komunikacji?
●
Czy jest możliwy język bez “życia” (istnienia)?
●
Czy jest możliwa inteligencja bez życia?
Wszystkie te pytania sprowadzają sie do jednego
zasadniczego:
Czy maszyny mogą myśleć?
25
Sztuczna Inteligencja
Rys Historyczny
Test Turing – Gra w imitację
Zamiast odpowiedzieć na pytanie, czy
maszyny mogą myśleć, Turing
zaproponował sprawdzenie, czy maszyny
mogą przejść behawioralny test na
inteligencję.
26
Test Turinga
C: człowiek lub
komputer
B: człowiek lub
komputer
Trzy osoby bawiące się w grę
ustalania tożsamości. Nie mogą
się one widzieć, są w
oddzielnych pokojach, a
porozumiewają się za pomocą
pisemnych protokołów.
Zasadniczym elementem gry jest
pytanie Turinga:
“Co się stanie, jeśli komputer
zajmie miejsce któregoś z
uczestników, a zadaniem będzie
ustalenie, kto jest człowiekiem, a
kto komputerem?”
A: człowiek lub
komputer
Sztuczna Inteligencja
Rys Historyczny
Test Turinga
Co jeśli poprosimy komputer o wykonanie
skomplikowanych obliczeń?
Czy powinien on specjalnie się mylić bądź
opóźniać odpowiedź?
28
Sztuczna Inteligencja
Rys Historyczny
Test Turinga
Czy od systemu inteligentnego naprawdę
oczekujemy, by specjalnie się mylił w
obliczeniach, lub wykonywał je wolniej niż
jest w stanie?
29
Sztuczna Inteligencja
Rys Historyczny
Test Turinga był szeroko komentowany i
kwestionowany pod wieloma względami.
Staniław Lem:
Co jeśli nagramy wszystkie odpowiedzi na każde
możliwe pytanie? Wtedy dostaniemy “inteligentne”
odpowiedzi na nasze pytania, ale czy będziemy mieli
do czynienia z inteligentną maszyną?
30
Sztuczna Inteligencja
Rys Historyczny
Turing wierzył, że do roku 2000 będzie
istniał system będący w stanie przejść test
Turinga.
Istnieją już systemy, które przeszły tzw.
ograniczony test Turinga (konwersjacja
ograniczona do pewnego zakresu
tematów).
31
Inteligentne czynności
●
●
●
Czy maszyny zdolne są do wykonywania
czynności uznanych przez badacza za
inteligentne?
Badacz może się w tym przypadku
kierować intuicją lub powszechnie
żywionymi przekonaniami
Np. gra w szachy, prowadzenie
sensownej rozmowy, dowodzenie
twierdzeń matematycznych lub
logicznych to czynności niewątpliwie
inteligentne.
32
Inteligentne czynności
●
●
●
Jedną z pierwszych prób w zakresie AI był Teoretyk
Logiki, zaprojektowany przez Newella i Simona.
Był to program wyspecjalizowany w dowodzeniu
twierdzeń Whiteheada i Russella (Principia
Mathematica).
Maszyna nie przeszukiwała wyczerpująco całego
zbioru potencjalnie dostępnych sposobów
rozwiązania , lecz kierowała się zasadami
ograniczającymi zakres przeszukiwania.
Zasady takie nazywa się heurystykami. Heurystyka
to reguła pozwalająca ograniczyć zakres
przeszukiwania pola problemowego, a tym samym
skrócić czas rozwiązywania problemu.
33
Inteligentne czynności
●
●
●
Heurystyki znacząco skróciły czas pracy
maszyny i sprawiły, że jej zachowanie nie było w
stu procentach przewidywalne.
Ponadto maszyna wykorzystywała wyniki swoich
wcześniejszych działań, ażeby zwiększyć
skuteczność czynności bieżących. Tym samym
przejawiała zdolność do uczenia się na
podstawie własnych doświadczeń, a nie ślepo
wykonywała zadane jej rozkazy.
Inteligentne czynności to zatem:
(i) użycie heurystyk,
(ii) uczenie się.
34
Racjonalne Sprawstwo
• RS - zdolność systemu komputerowego do
inicjowania działań, które są sensowne w
określonym środowisku, a następnie do
skutecznego kierowania tymi działaniami.
● System nazywamy inteligentnym wtedy, gdy
jest on sprawcą, a nie tylko wykonawcą
poleceń, zgodnie z zadanym algorytmem.
Musi być przy tym sprawcą racjonalnym,
tzn. dostosowującym swe działania do
wymagań bieżącej sytuacji i “naturalnego”
dla siebie środowiska. System spełniający te
kryteria należy uznać za podmiot własnych
działań.
35
Racjonalne Sprawstwo
●
●
System, który zachowuje się jak racjonalny
sprawca, musi być wyposażony nie tylko w
procedury umożliwiające wykonywanie określonych
czynności, lecz również w system motywacji.
Oprócz motywacji racjonalny sprawca musi być
wyposażony w wiedzę o otoczeniu. Może to być
wiedza niezwykłe uproszczona, zredukowana do
najbardziej niezbędnych informacji, ale musi
istnieć. Ludzka wiedza też nie jest doskonała ani
pełna. Stanowi zawsze uproszczony model
rzeczywistości, tworzony w ściśle utylitarnym celu:
aby nam ułatwić skuteczne poruszanie się w
rzeczywistości i rozwiązywanie problemów
wynikających z jej istnienia.
36
Sztuczna Inteligencja
Rys Historyczny
Mówiąc o programie inteligentnym będziemy
mieli na myśli program, który jest w stanie
konkurować z ludzkim ekspertem w wąskiej,
wyspecjalizowanej dziedzinie.
Z praktycznego punktu widzenia, inteligentny
system powinien pomóc człowiekowi podejmować
decyzje, szukać informacji, kontrolować
skomplikowane obiekty, etc.
Aby to osiągnąć, musimy zgromadzić,
zorganizować i odpowiednio używać wiedzę z
danej dziedziny.
37
Sztuczna Inteligencja
Rys Historyczny
“Dark Ages” - Narodziny SI (1943 – 1956)
1943 - Warren McCulloch, Walter Pitts – model
sztucznego neuronu
John von Neumann
ENIAC (Electronic Numerical Integrator And Calculator)
EDVAC (Electronic Discrete Variable Automatic Computer)
Claude Shannon – wykazał konieczność stosowania
heurystyk (np. w grze w szachy)
38
Sztuczna Inteligencja
Rys Historyczny
“Dark Ages” - Narodziny SI (1943 – 1956)
John McCarthy, Martin Minsky, Claude Shannon
1965 – letni workshop w Dartmouth College zgromadził
zainteresowanych uczeniem maszyn, sieciami neuronowymi I
teorią automatów.
Udział wzięło jedynie 10 uczestników.
Te spotkania uznawane są za początek Sztucznej Inteligencji
jako dziedziny nauki.
39
Sztuczna Inteligencja
Rys Historyczny
“Dark Ages” - Narodziny SI (1943 – 1956)
– Pojęcie sztucznej inteligencji (ang. Artificial
Intelligence - AI) pojawiło się w połowie lat
pięćdziesiątych ubiegłego wieku w pracach
McCarthy’ego:
– McCarthy J., „Programs with commonsense.”
– In: Mechanization of Thought Processes. HMSO,
London 1950, pp.75-91.
40
Definicje sztucznej inteligencji (1)
●
Dziedzina informatyki dotycząca
metod i technik wnioskowania
symbolicznego przez komputer
oraz symbolicznej reprezentacji
wiedzy stosowanej podczas
takiego wnioskowania.
E.A.Feigebaum, P.McCorduck
41
Definicje sztucznej inteligencji (2)
●
●
Rozwój systematycznej teorii
procesów intelektualnych.
D.Michie
Nauka o maszynach realizujących
zadania, które wymagają
inteligencji wtedy, gdy są
wykonywane przez człowieka.
M.Minsky
42
Sztuczna Inteligencja
Rys Historyczny
Okres wielkich oczekiwań
(1956 – koniec lat 60-tych)
John McCarthy – język LISP
Inni badacze kontynuują swe badania (sieci neuronowe, etc.)
Najbardziej ambitny projekt:
General Problem Solver (GPS)
Allen Newell, Herbert Simon (1961, 1972)
Próba implementacji ogólnego systemu rozwiązującego
problemy w sposób podobny do ludzkiego.
Próba oddzielenia danych od metod rozumowania.
43
Sztuczna Inteligencja
Rys Historyczny
General Problem Solver
Problem był definiowany za pomocą stanów.
Rozwiązanie to pewien stan. Jeśli obecny stan nie
stanowi rozwiązania, należy zastosować odpowiednie
operatory w celu osiągnięcia stanu docelowego bądź
takiego, który przybliża nas do stanu będącego
rozwiązaniem.
GPS był oparty na logice formalnej – generował
bardzo wiele możliwych operatorów, w związku z
czym był bardzo nieefektywny.
Projekt zakończył się porażką.
44
Sztuczna Inteligencja
Rys Historyczny
Mimo porażki projektu GPS, w okresie tym
pojawiło się wiele nowych koncepcji
ważnych dla rozwoju SI.
Np. Logika rozmyta
“Fuzzy Sets”, Lotfi Zadeh, 1965
Jednak do 1970 środki finansowe
przeznaczone na badania nad SI zostały
bardzo ograniczone.
45
Sztuczna Inteligencja
Rys Historyczny
Późne lata 60-te – wczesne lata 70-te
Próba stworzenia narzędzi ogólnych nie powiodła się.
Zarzucono projekt mający na celu automatyczne
tłumaczenie z języka rosyjskiego na angielski.
Wstrzymano finansowanie wielu innych projektów.
Powstała teoria problemów NP-kompletnych.
46
Sztuczna Inteligencja
Rys Historyczny
Pierwsze Systemy Ekspertowe
Klucz do sukcesu
Wczesne lata 70-te – lata 80-te
Porzucono ideę stworzenia uniwersalnego
systemu.
W zamian zaczęto stosować podejście, w
którym zakres działania systemu jest
ograniczony i dokładnie zdefiniowany.
47
Sztuczna Inteligencja
Rys Historyczny
DENDRAL
Edward Feigenbaum
Bruce Buchanan
Joshua Lederberg
System ekspertowy do analizy związków chemicznych.
Problem określenia struktury molekularnej na podstawie
spektrum.
Przeszukiwanie wszystkich możliwych konfiguracji
atomów jest niemożliwe.
Eksperci są w stanie znacznie zmniejszyć liczbę
potencjalnych rozwiązań wykrywając odpowiednie wzorce
i stosując odpowiednie reguły.
48
Sztuczna Inteligencja
Rys Historyczny
Znaczenie systemu DENDRAL:
Odejście od tworzenia systemów ogólnego
przeznaczenia do tworzenia systemów
wyspecjalizowanych.
●
Akwizycja wiedzy eksperta.
●
Stosowanie heurystyk w postaci reguł postępowania.
●
Sukces potwierdzony został poprzez wersję
komercyjną.
49
Sztuczna Inteligencja
Rys Historyczny
System ekspertowy MYCIN
Diagnostyka chorób krwii
Około 450 reguł typu JEŚLI – TO
Nowe elementy:
●odseparowanie wiedzy od mechanizmu
wnioskowania (EMYCIN – Empty MYCIN)
●wnioskowanie z uwzględnieniem niepewności (CF Certainty Factors)
50
Sztuczna Inteligencja
Rys Historyczny
System ekspertowy PROSPECTOR
Poszukiwanie minerałów.
Nowe elementy:
●Reguły (ponad 1000) oraz sieć semantyczna.
●System akwizycji wiedzy.
●Niepewność brana pod uwagę – wykorzystanie
reguły Bayesa
51
Rys historyczny
Nowy kierunek w sztucznej inteligencji –
inżynieria wiedzy (ang. Knowledge
Engineering):
- pozyskiwanie i strukturalizacja wiedzy pochodzącej
od ekspertów,
- dopasowanie i wybór odpowiednich technik
wnioskowania i wyjaśniania dla zagadnień
rozwiązywania problemów,
- projektowanie układów pośredniczących
(interfejsów) między użytkownikiem a
komputerem.
• Duża liczba systemów ekspertowych
budowanych w ośrodkach uniwersyteckich,
ukierunkowanych na szczegółowe zadania.
52
Sztuczna Inteligencja
Rys Historyczny
Systemy ekspertowe stały się popularne. Przyczyniło
się do tego rozpowszechnienie się komputerów
osobistych oraz szkieletowych systemów
ekspertowych (shells).
Sukces ten przyczynił się do ponownego, już
ostrożniejszego, optymizmu odnośnie
możliwości SI.
53
Sztuczna Inteligencja
Rys Historyczny
Wady Systemów Ekspertowych (pierwszej generacji)
Ograniczone do wąskiego zakresu wiedzy. (np. MYCIN – diagnoza
chorób krwi – nie ma większego pojęcia o fizjologi. Jeśli pacjent
cierpi na chorobę innego typu – MYCIN nie będzie pomocny, wręcz
przeciwnie)
Brak elastyczności.
Brak “świadomości” własnych ograniczeń – SE będzie próbował
rozwiązać problem nawet jeśli nie jest on z jego dziedziny.
Trudności z weryfikacją i walidacją – brak ogólnych metod np.
kompletności SE.
Przetwarzanie reguł nie oznacza „rozumienia” problemu przez SE.
54
Sztuczna Inteligencja
Rys Historyczny
Wady Systemów Ekspertowych (pierwszej generacji)
Brak możliwości uczenia się na podstawie doświadczenia – wiedza
uzyskana od eksperta jest “zaszyta” w systemie.
Proces tworzenia SE jest długi - “knowledge acquisition bottleneck ”
55
Sztuczna Inteligencja
Rys Historyczny
Połowa lat 80-tych
Ponowne zainteresowanie sieciami neuronowymi.
W roku 1969 Minsky i Papert dowiedli ograniczeń
jednowarstwowych perceptronów. Spowodowało to zarzucenie
badań.
Algorytm wstecznej propagacji błędów
(backpropagation) pozwolił na uczenie wielowarstwowych
sieci.
Rumelhart, McClelland ( 1986 )
wcześniej Bryson, Ho ( 1969 )
56
Sztuczna Inteligencja
Rys Historyczny
Połowa lat 80-tych
Ponowne zainteresowanie sieciami neuronowymi.
Nowe rodzaje sieci neuronowych:
Hopfield (1980) – sieci ze sprzężeniem zwrotnym
Grossberg (1980) – sieci ART (Adaptive Resonanse Theory)
Kohonen (1982) – sieci somoorganizujące się
Barto, Sutton, Anderson (1983) – uczenie ze wzmocnieniem.
Broomhead, Lowe (1988) – sieci z radialnymi funkcjami
bazowymi
57
Sztuczna Inteligencja
Rys Historyczny
Wczesne lata 70-te - ...
Obliczenia i metody ewolucyjne
“learning by doing”
John Holland (1970) – Algorytmy Genetyczne
Rechenberg, Schwefel (1965) – Strategie Ewolucyjne
John Koza ( 1992 ) - Programowanie Genetyczne
a także
Sztuczne Systemy Immunologiczne
58
Sztuczna Inteligencja
Rys Historyczny
Późne lata 80-te - ...
“Computing with words”
Wykorzystanie logiki rozmytej (fuzzy logic).
Możliwość operowanie rozmytymi pojęciami języka naturalnego,
np. “duża prędkość”.
W przeciwieństwie do sieci neuronowych, systemy oparte na logice
rozmytej nie działają na zasadzie “czarnej skrzynki”, tzn. ich
decyzje są łatwiejsze do zrozumienia dla człowieka.
59
Sztuczna Inteligencja
Rys Historyczny
Późne lata 80-te - ...
“Computing with words”
Wykorzystanie logiki rozmytej (fuzzy logic).
Eksperci posługują się nieprecyzyjnymi stwerdzeniami (np. duża,
mocno, raczej, często, itd.)
Opisują inny rodzaj niepewności danych niż metody probabilistyczne.
Porównaj:
prędkość jest duża
prędkość jest prawdopodobnie równa 100 km/h
prędkość jest prawdopodobnie duża
60
Sztuczna Inteligencja
Rys Historyczny
Późne lata 80-te - ...
“Computing with words”
Wykorzystanie logiki rozmytej (fuzzy logic).
Przykład: Sendai Subway System
54 reguł rozmytych (niewielka liczba)
ale
kilka lat poświęcono na ich dostrajanie.
61
Sztuczna Inteligencja
Rys Historyczny
Przyszłość - Metody Hybrydowe
np. metody Neuro – Fuzzy
Łączą zdolność uczenia się z przejrzystością
wyników dla ludzkiego użytkownika.
Pozwala to na generowanie reguł z danych
numerycznych.
Pozyskiwanie wiedzy od eksperta jest długotrwałe i
kosztowne. Dodatkowo, różni eksperci mogą mieć
różne zdania na temat danego przypadku.
62
Rys historyczny
Koncepcja obliczeń inteligentnych (ang.
Computational Intelligence - CI)
Sztuczne sieci neuronowe +
algorytmy ewolucyjne +
zbiory rozmyte
=
CI
63
Dziedzina AI
●
●
●
●
●
●
●
●
●
●
●
rozwiązywanie problemów i strategie
przeszukiwań,
teoria gier,
sztuczne sieci neuronowe,
algorytmy ewolucyjne,
automatyczne dowodzenie twierdzeń,
przetwarzanie języka naturalnego,
systemy ekspertowe,
procesy percepcji,
uczenie maszynowe,
wyszukiwanie informacji (inteligentne bazy
danych),
programowanie automatyczne.
64
Dziedzina AI
W metodach sztucznej inteligencji
następuje przejście od przetwarzania
danych do przetwarzania wiedzy. Systemy
te określa się jako systemy oparte na
wiedzy (knowledge-based systems).
Metody algorytmiczne charakterystyczne
dla przetwarzania proceduralnego w
sztucznej inteligencji zostają zastąpione
przeszukiwaniem inteligentnym
(intelligent search).
65
Dziedzina AI
„Informacja tak różni się od wiedzy, jak
stos cegieł od porządnie zbudowanego
domu.”
66
Regułowe Systemy Ekspertowe
Wiedza
Teoretyczne i/lub praktyczne zrozumienie
rozważanego tematu.
Wiedza jest tym, co pozwala nam
podejmować uzasadnione, racjonalne
decyzje.
67
Regułowe Systemy Ekspertowe
Pozyskiwanie wiedzy (Knowledge acquisition)
Proces zbierania, studiowania i organizacji
wiedzy w celu użycia jej w inteligentnym
systemi.
68
Regułowe Systemy Ekspertowe
Baza wiedzy (Knowledge base)
Podstawowy składnik Systemu Ekspertowego,
który zawiera wiedzę z określonego zakresu.
69
Regułowe Systemy Ekspertowe
Inżynieria wiedzy (Knowledge engineering)
Proces tworzenia systemu opartego na
wiedzy (knowledge-based system).
•Główne etapy:
●
●
●
●
●
●
określenie problemu
pozyskanie danych i wiedzy
rozwój prototypu
rozwój właściwego systemu
ocena i wprowadzanie koniecznych zmian
wdrożenie i pielęgnacja systemu
70
Regułowe Systemy Ekspertowe
Inżynier wiedzy (Knowledge engineer)
Osoba, która projektuje, tworzy i testuje SE.
Inżynier wiedzy zdobywa wiedzę od eksperta,
ustala metody reprezentacji wiedzy i
wnioskowania oraz wybiera narzędzia do
tworzenia systemu.
71
Regułowe Systemy Ekspertowe
Ekspert
Osoba posiadająca głęboką wiedzę w postaci faktów i
reguł oraz duże praktyczne doświadczenie w danej
dziedzinie.
Sposób myślenia i podejmowania decyzji przez ludzi jest
zbyt skomplikowany by mógł być dokładnie
sformułowany jako algorytm.
Większość ekspertów jest w stanie wyrazić swą wiedzę w
postaci reguł.
72
Systemy Ekspertowe
System ekspertowy:
Program komputerowy wykonujący złożone zadania o dużych
wymaganiach intelektualnych i robiący to tak dobrze jak
człowiek będący ekspertem w tej dziedzinie
System, który niekoniecznie zastępuje eksperta – człowieka
Program
komputerowy
przeznaczony
do
rozwiązywania
specjalistycznych problemów, które wymagają profesjonalnej
ekspertyzy
Podział systemów ekspertowych:
doradcze (advisory)
podejmujące decyzje bez kontroli człowieka (dictatorial)
krytykujące (criticizing)
73
Regułowe Systemy Ekspertowe
IF – THEN Rules
(Production Rules)
IF “światło” jest “zielone” THEN “akcja” jest “idź”
IF “światło” jest “czerwone” THEN “akcja” jest “stop”
IF warunek
(antecedent,
premise,
condition)
THEN
konkluzja
(consequent,
conclusion,
action)
74
Regułowe Systemy Ekspertowe
IF – THEN Rules
(Production Rules)
IF warunek_1 THEN konkluzja_1
IF warunek_1 AND warunek_2 AND ... THEN konkluzja_1
75
Regułowe Systemy Ekspertowe
IF – THEN Rules
(Production Rules)
Zamiast :
IF warunek_1 OR warunek_2 THEN konkluzja_1
lepiej:
IF warunek_1 THEN konkluzja_1
IF warunek_2 THEN konkluzja_1
76
Regułowe Systemy Ekspertowe
IF – THEN Rules
(Production Rules)
Analogicznie, zamiast :
IF warunek_1 AND warunek_2 OR warunek_3 THEN konkluzja_1
lepiej:
IF warunek_1 AND warunek_2 THEN konkluzja_1
IF warunek_3 THEN konkluzja_1
77
Regułowe Systemy Ekspertowe
IF – THEN Rules
(Production Rules)
Zamiast :
IF warunek_1 AND warunek_2 THEN konkluzja_1 AND konkluzja_2
lepiej:
IF warunek_1 AND warunek_2 THEN konkluzja_1
IF warunek_1 AND warunek_2 THEN konkluzja_2
78
Regułowe Systemy Ekspertowe
IF – THEN Rules
(Production Rules)
Reguła bardziej ogólna:
IF warunek_1 THEN konkluzja_1
Reguła bardziej specyficzna:
IF warunek_1 AND warunek_2 THEN konkluzja_2
Często przyjmuje się, że reguły bardziej specyficzne mają
pierwszeństwo przed regułami bardziej ogólnymi.
79
Regułowe Systemy Ekspertowe
IF – THEN Rules
Reguły mogą reprezentować:
relacje
●rekomendacje
●dyrektywy
●strategie
●heurystyki
●
80
Regułowe Systemy Ekspertowe
IF – THEN Rules
Relacja
IF bak jest pusty THEN samochód jest niesprawny.
Rekomendacja
IF pora_roku jest jesień AND pogoda jest pochmurna
THEN rada jest “weź parasol”
81
Regułowe Systemy Ekspertowe
IF – THEN Rules
Dyrektywa
IF samochód jest niesprawny AND bak jest pusty
THEN akcja jest “zatankuj samochód”
Heurystyka
IF substancja jest cieczą AND pH < 6 THEN
substancja jest kwasem
82
Regułowe Systemy Ekspertowe
IF – THEN Rules
Strategia
IF samochód jest niesprawny THEN akcja jest
“sprawdź bak”
krok pierwszy skończony
IF krok pierwszy skończony AND bak jest pełny
THEN akcja jest “sprawdź akumulator”
krok drugi skończony
83
Regułowe Systemy Ekspertowe
Osoby zaangażowane w proces
tworzenia systemu ekspertowego:
Manager projektu
Ekspert
Inżynier wiedzy
Programista
System Ekspertowy
Użytkownik
84
Regułowe Systemy Ekspertowe
Szkieletowe Systemy Ekspertowe
(Expert Systems Shells)
Są to takie systemy, z których została usunięta
wiedza.
Użytkownik może dodać nową wiedzę w postaci
reguł i faktów w celu rozwiązania nowego problemu.
85
Regułowe Systemy Ekspertowe
Podstawowa struktura systemu produkcyjnego
(Production system model, Newell and Simon, 1972)
Reguły
(pamięć trwała)
Fakty
(pamięć nietrwała)
Wnioskowanie
Konkluzja
86
Regułowe Systemy Ekspertowe
Podstawowa struktura systemu ekspertowego
Baza wiedzy
Baza danych
(IF-THEN Rules)
(Fakty)
Maszyna
wnioskująca
Wyjaśnianie
Interfejs użytkownika
Użytkownik
87
Regułowe Systemy Ekspertowe
Podstawowa struktura systemu ekspertowego
Baza wiedzy
Baza danych
(IF-THEN Rules)
(Fakty)
Maszyna
wnioskująca
Wyjaśnianie
Interfejs użytkownika
Interfejs inżyniera
Użytkownik
Inżynier, ekspert
88
Struktura systemów ekspertowych
Struktura systemów ekspertowych składa się z następujących
elementów:
baza wiedzy (np. zbiór reguł)
baza danych (np. dane o obiekcie, wyniki pomiarów, hipotezy)
procedury wnioskowania – maszyna wnioskująca
procedury objaśniania – objaśniają strategię wnioskowania
procedury sterowania dialogiem – procedury wejścia/wyjścia
umożliwiają formułowanie zadań przez użytkownika i
przekazywanie do rozwiązywania przez program
procedury umożliwiające rozszerzanie oraz modyfikację
wiedzy – pozyskiwanie wiedzy
Systemy oparte na bazie wiedzy (knowledge based system) –
systemy z bazami wiedzy wydzielonymi od pozostałych
modułów programu. Są one często wykorzystywane jako
systemy wspomagające podejmowanie decyzji (decision suport
systems).
89
Podstawowe zagadnienia w systemach opartych na bazie
wiedzy są następujące:
•
reprezentacja wiedzy
•
pozyskiwanie wiedzy
•
sposób użycia wiedzy
•
objaśnianie i uczenie się
Dane, problemy, pytania
Ekspert
dziedziny
Inżynier
wiedzy
Baza
wiedzy
Wiedza
strukturalizowana
Wiedza, koncepcje, rozwiązania
Typowy proces pozyskiwania wiedzy
90
Porównanie konwencjonalnego przetwarzania z inżynierią wiedzy
Konwencjonalne przetwarzanie danych
Inżynieria wiedzy
Programista analityk systemów
Inżynier wiedzy
Program
System ekspertowy
Baza danych
Baza wiedzy
Reprezentacja i użycie danych
Reprezentacja i użycie wiedzy
Algorytmy
Heurystyki
Efektywna manipulacja bazami danych
Efektywna manipulacja bazami wiedzy
Twórca
narzędzi
buduje
Narzędzia
do budowy
systemów
Ekspert
dziedziny
Prowadzi
dialog
Inżynier
wiedzy
buduje
i testuje
rozszerza
i testuje
wykorzystuje
System
eksportowy
Użytkownik
wykorzystuje
dane
.
Baza
wiedzy
wykorzystuje
i aktualizuje
Role twórców systemu ekspertowego
91
Regułowe Systemy Ekspertowe
Metody wnioskowania
92
Metody wnioskowania
Wnioskowanie w przód
Wnioskowanie wstecz
Sterowanie wnioskowaniem
Wnioskowanie mieszane
93
Metody wnioskowania
Tradycyjne systemy działają na podstawie klasycznej
logiki dwuwartościowej, korzystając z tzw. reguły modus
ponens, zwanej również regułą odrywania, którą zapisuje
się następująco:
(A → B), A⇒ B
Reguła ta oznacza, że jeżeli z przesłanki A wynika B
oraz A jest prawdziwe, to przyjmujemy, że fakt B jest
również prawdziwy. Dla uproszczenia często przyjmujemy,
że wystąpienie pewnego faktu w bazie wiedzy (odpowiednia
lista) świadczy o jego prawdziwości, co znacznie
przyspiesza proces wnioskowania.
Wyróżniamy trzy podstawowe typy wnioskowania: w
przód (progresywne), wstecz (regresywne) i mieszane.
Osobną grupę stanowią techniki wnioskowania
wykorzystujące wiedzę niepewną, wśród których szczególną
rolę odgrywa wnioskowanie rozmyte.
94
Powrót
Wnioskowanie w przód
Idea wnioskowania w przód jest niezwykle prosta . Na
podstawie dostępnych reguł i faktów należy generować
nowe fakty tak długo, aż wśród wygenerowanych faktów
znajdzie się postawiony cel (hipoteza).
Podstawową cechą tego sposobu wnioskowania, która w
pewnych sytuacjach może być jego wadą, jest możliwość
zwiększania się bazy faktów. Postępowanie takie umożliwia,
szczególnie w przypadku baz wiedzy o niewielkiej liczbie
faktów, zwiększenie ich liczby, a co za tym idzie,
przyspieszenie procesu sprawdzania postawionej hipotezy.
Jednocześnie, z innego punktu widzenia, tworzenie
nowych faktów, w pewnych szczególnych sytuacjach może
być zjawiskiem niepożądanym, gdyż zajmują one
niepotrzebnie pamięć operacyjną komputera, co może
doprowadzić do jej całkowitego zapełnienia.
95
Powrót
Wnioskowanie w przód
Mechanizm wnioskowania
Krok 1
96
Powrót
Wnioskowanie w przód
Mechanizm wnioskowania
Krok 2
97
Powrót
Wnioskowanie w przód
Mechanizm wnioskowania
Krok 3
98
Powrót
Wnioskowanie w przód
Mechanizm wnioskowania
Krok 4
99
Powrót
Wnioskowanie w przód
Mechanizm wnioskowania
Krok 5
100
Powrót
Wnioskowanie wstecz
Wnioskowanie wstecz przebiega w odwrotną stronę niż
wnioskowanie w przód. Ogólnie polega ono na wykazaniu
prawdziwości hipotezy głównej na postawie prawdziwości
przesłanek. Jeśli nie wiemy, czy jakaś przesłanka jest
prawdziwa, to traktujemy tę przesłankę jako nową hipotezę
i próbujemy ją wykazać.
Jeżeli w wyniku takiego postępowania zostanie wreszcie
znaleziona reguła, której wszystkie przesłanki są
prawdziwe, to konkluzja tej reguły jest prawdziwa. Na
podstawie tej konkluzji dowodzi się następną regułę, której
przesłanka nie była poprzednio znana itd. Postawiona
hipoteza jest prawdziwa, jeśli wszystkie rozważane
przesłanki dadzą się wykazać.
101
Powrót
Wnioskowanie wstecz
Zasadniczą cechą, która odróżnia wnioskowanie wstecz
od wnioskowania w przód jest mniejsza liczba
generowanych nowych faktów oraz niemożność
równoczesnego dowodzenia kilku hipotez.
Ogólnie w typowych zastosowaniach wnioskowanie
wstecz jest efektywniejsze i bardziej rozpowszechnione.
Należy również podkreślić, że przy wnioskowaniu wstecz
czas oczekiwania na osiągnięcie rozwiązania postawionej
hipotezy jest w wielu przypadkach dużo krótszy niż przy
wnioskowaniu w przód.
102
Powrót
Wnioskowanie wstecz
Mechanizm wnioskowania
Krok 1
103
Powrót
Wnioskowanie wstecz
Mechanizm wnioskowania
Krok 2
104
Powrót
Wnioskowanie wstecz
Mechanizm wnioskowania
Krok 3
105
Powrót
Wnioskowanie wstecz
Mechanizm wnioskowania
Krok 4
106
Powrót
Wnioskowanie wstecz
Mechanizm wnioskowania
Krok 5
107
Powrót
Sterowanie wnioskowaniem
Aby zastosować określoną regułę ze zbioru reguł
możliwych do uaktywnienia, korzysta się z metod
sterowania wnioskowaniem. W tym celu stosuje się
strategie, które ograniczają liczność reguł możliwych do
uaktywnienia.
Strategia świeżości polega na określeniu reguły, która
spośród wybranych do oceny została najpóźniej dołączona
do pewnego obszaru pamięci, gdzie są przechowywane
reguły. Moment dołączenia reguły może być określony za
pomocą zegara systemowego. Inny sposób polega na
wyborze reguły, która najpóźniej została dołączona do reguł
znajdujących się w pewnym wyszczególnionym obszarze
pamięci komputera (tzw. agenda).
108
Powrót
Sterowanie wnioskowaniem
Strategia blokowania ma za zadanie eliminować te reguły,
które wcześniej w procesie wnioskowania były już wykorzystane.
Postępowanie takie jest konieczne, gdyż inaczej powstałaby pętla
nieskończona. Blokowanie reguł można osiągnąć na przykład
umieszczając dodatkowe pole w strukturze danych (rekordzie)
każdej reguły. W polu tym znajdzie się informacja o
wykorzystaniu bądź niewykorzystaniu danej reguły.
Strategia specyficzności opiera swoje działanie na
uwzględnianiu różnej liczby przesłanek w regułach. Są
preferowane te reguły, które mają większą liczbę przesłanek. W
przypadku reguł o tej samej liczbie przesłanek, jest wybierana ta,
która ma mniejszą liczbę zmiennych.
Wymienione tutaj strategie spełniają w programie funkcję
pewnego rodzaju filtrów, które mają za zadanie ograniczyć liczbę
reguł - kandydatów do wykorzystania tak, aby wybrać tylko
jedną. Jeśli w wyniku zastosowania wymienionych strategii
istnieje ciągle więcej niż jedna reguła do uaktywnienia, to
stosuje się tzw. strategię przypadkowości, która wybiera regułę w
sposób losowy.
109
Powrót
Wnioskowanie mieszane
Wnioskowanie mieszane stanowi kompromis między
wnioskowaniem w przód i wstecz, dzięki czemu jest
pozbawione niektórych wad wspomnianych metod.
Strategia wnioskowania mieszanego opiera się na
wykorzystaniu ogólnych reguł, tzw. metareguł stanowiących
metawiedzę, na podstawie której program zarządzający
dokonuje odpowiedniego przełączania między
poszczególnymi rodzajami wnioskowania.
W metaregułach są zawarte wskazania dotyczące
priorytetów wyboru rodzaju wnioskowania. W zależności od
sytuacji system może automatycznie dobierać najbardziej
odpowiedni sposób wnioskowania. W przypadku
przechodzenia z jednego rodzaju wnioskowania na drugi za
hipotezę główną zawsze przyjmuje się tę, którą postawił
użytkownik. Dzięki temu na każdym etapie wnioskowania
istnieje możliwość udzielenia odpowiedzi na postawioną
hipotezę.
110
Powrót
Wnioskowanie mieszane
We wnioskowaniu mieszanym poza wczytaniem przez
system bazy wiedzy należy wczytać także zbiór zawierający
metareguły. System działa tak, jakby można było w nim
wyróżnić dwie maszyny wnioskujące (progresywną i
regresywną). Wiedza zapisana w metaregułach może
preferować jeden z rodzajów wnioskowania. Na przykład
baza wiedzy jest dzielona na dwie części: reguły związane z
wnioskowaniem wstecz oraz reguły związane z
wnioskowaniem w przód.
Załóżmy, że wyższy priorytet dajemy wnioskowaniu
wstecz. Wówczas jest ono zalecane dopóty, dopóki da się
zastosować jakąś regułę. Po każdym cyklu wnioskowania są
sprawdzane warunki zapisane w metaregułach. Jeżeli nie
daje się dalej stosować wnioskowania wstecz, to system
zostaje przełączony w tryb wnioskowania w przód.
111
Powrót
Wnioskowanie mieszane
Przy wyprowadzaniu kolejnych faktów jest sprawdzany
warunek, czy system uzyskał już odpowiedź na postawioną
hipotezę; jeżeli tak, to wynik jest przekazywany jako
rozwiązanie. W przeciwnym przypadku proces jest
kontynuowany; w zależności od okoliczności może być
uruchamiany drugi rodzaj wnioskowania.
Cykl ten powtarza się tak długo, aż zostanie osiągnięty
cel główny lub zostaną wyczerpane wszystkie możliwości
jego wykazania na podstawie posiadanej bazy wiedzy lub też
odpowiedzi udzielonych przez użytkownika w trakcie
dialogu.
112
Powrót
Wnioskowanie mieszane
Dla przykładu weźmiemy pod uwagę bazę reguł
podzieloną na dwie części, zawierającą 8 reguł o
następującej postaci:
3.
Część bazy reguł związana z wnioskowaniem
regresywnym:
R1
R2
R3
7.
F AND H => K
E AND A => K
E AND B => H
Część bazy reguł związana z wnioskowaniem
progresywnym:
R4
R5
R6
R7
R8
A
B
G
A
AND
AND
AND
AND
G
D
D
B
=>
=>
=>
=>
B
H
E
D
A AND C => G
113
Powrót
Wnioskowanie mieszane
Główną zaletą wnioskowania mieszanego jest skrócenie
czasu potrzebnego na uzyskanie rozwiązania. Nie występuje
tutaj taka sytuacja jak przy wnioskowaniu w przód, że
program, tworząc nowe fakty, może zająć całą pamięć
operacyjną.
Trudność natomiast sprawia pozyskanie metawiedzy.
Należy nadmienić, że źle dobrane metareguły mogą
spowolnić pracę systemu lub nawet uczynić ją nieefektywną
114
Powrót
Regułowe Systemy Ekspertowe
Metawiedza - stanowi wiedzę o wiedzy, czyli o
sposobie przetwarzania wiedzy z danej
dziedziny.
Metareguły są stosowane w przypadku:
wyboru kolejności uruchamiania (firing) reguł
●rozwiązywaniu konfliktów
●
Przykład metareguły:
Reguły dostarczone przez Eksperta Nr 1 są ważniejsze niż
reguły dostarczone przez Eksperta Nr 2.
115
Ekspertyza naturalna, wykonana przez człowieka
Ekspertyza sztuczna
Wady:
- tracąca na wartości z upływem czasu
- trudna do przeniesienia
- trudna w dokumentacji
- niedająca się przewidzieć
- kosztowna
Zalety:
- stała
- łatwa do przeniesienia
- łatwa w dokumentacji
- zgodna z bazą wiedzy
- dostępna
Zalety:
- twórcza
- adaptacyjna
- wykorzystanie zmysłów
- szeroki zakres
- wiedza zdrowego rozsądku
Wady:
- nie inspirująca
- wymaga wprowadzenia wiedzy
- wejścia symboliczne
- wąski zakres
- wiedza przetwarzana w sposób mechaniczny
Porównanie ekspertyzy naturalnej z ekspertyzą sztuczną
Omawiając podstawowe wiadomości o systemach ekspertowych należy
wspomnieć o jeszcze jednym pojęciu – konsultacji. Pod tym pojęciem rozumie się
współpracę użytkownika z systemem. Odbywa się przez interfejs z
użytkownikiem.
116
Rodzaje systemów ekspertowych
Podział systemów ekspertowych
otrzymywany na wyjściu:
ze
względu
na
wynik
Diagnoza
– jest to ocena stanu istniejącego na podstawie
posiadanych danych. Zagadnienie to jest blisko związane z
rozpoznawaniem wzorców.
Prognoza
– jest to przewidywanie stanu przyszłego na
podstawie istniejących danych. Niektóre programy medyczne,
np. CASNET, stawiają prognozę stanu (w tym przypadku
zdrowia klienta) na podstawie własnej prognozy.
Plan
– rozumiany jako opis pewnego stanu, do którego należy
dążyć. Jednym z przykładów jest planowanie konfiguracji
komputerów.
117
Rodzaje systemów eksportowych
Kategoria
Zadania realizowane przez systemy ekspertowe
Interpretacyjne
dedykują opisy sytuacji z obserwacji lub stanu czujników, np. rozpoznawanie mowy, obrazów,
struktur danych
Predykcyjne
wnioskują o przyszłości na podstawie danej sytuacji, np. prognoza pogody, rozwój choroby
Diagnostyczne
określają wady systemu na podstawie obserwacji, np. medycyna, elektronika, mechanika
Kompletowania
konfigurują obiekty w warunkach ograniczeń, np. konfigurowanie systemu komputerowego
Planowania
podejmują działania, aby osiągnąć cel, np. ruchy robota
Monitorowania
porównują obserwacje z ograniczeniami, np. w elektrowniach atomowych, medycynie, ruchu
ulicznym
Sterowania
kierują zachowaniem systemu; obejmują interpretowanie, predykcję, naprawę i monitorowanie
zachowania się obiektu
Poprawiania
podają sposób postępowania w przypadku złego funkcjonowania obiektu, którego te systemy
dotyczą
Naprawy
harmonogramują czynności przy dokonywaniu napraw uszkodzonych obiektów
Ilustrowania
systemy doskonalenia zawodowego dla studentów
118
Podstawowe obszary zastosowań systemów ekspertowych
Sektor
Zastosowanie
Bankowość i
ubezpieczenia
Przemysł
Handel i usługi
Sektor publiczny i
inne
Monitorowanie
Sterowanie
obserwowanie trendów
nadzorowanie
procesów,
sterowanie
procesami,
raportowanie
specjalnych sytuacji
obserwowanie trendów
monitorowanie
reaktorów jądrowych
oraz dużych sieci
(gazowe, wodne)
projektowanie
zakładów i produktów,
komputerów
wybór asortymentów,
doradztwo dla
rolnictwa
sieci (pocztowe,
energetyczne)
Projektowanie
Diagnostyka
kredyty, pożyczki na
nieruchomości, analiza
ryzyka, przetwarzanie
skarg
wykrywanie urządzeń,
utrzymanie zdolności
produkcyjnej
kredyty, analiza
ryzyka
diagnostyka
medyczna,
diagnostyka
techniczna
Planowanie
analiza ryzyka,
planowanie inwestycji
projektowanie funkcji
logicznych, planowanie
projektu
analiza ryzyka, analiza
rynku
planowanie inwestycji,
planowanie na
wypadek klęski,
planowanie
dystrybucji
119
Podział Systemów Ekspertowych
Podział systemów ekspertowych ze względu na sposoby realizacji:
• systemy dedykowane, które są tworzone od podstaw przez inżyniera wiedzy
współpracującego z informatykiem
• systemy szkieletowe (shells), są to systemy z pustą bazą wiedzy
Podział systemów ekspertowych ze względu na metodę prowadzenia procesu
wnioskowania:
• z logiką dwuwartościową (Boole’a)
• z logiką wielowartościową
• z logiką rozmytą
Podział systemów ekspertowych ze względu na rodzaj przetwarzanej informacji:
• systemy z wiedzą pewną, czyli zdeterminowaną
• systemy z wiedzą niepewną, w przetwarzaniu której wykorzystuje się przede
wszystkim aparat probabilistyczny
120
Właściwości systemów ekspertowych
Poprawność systemu
System ekspertowy powinien zapewnić wysoki poziom
wydawanych ekspertyz. W tym sensie możemy mówić o
poprawności systemu, jeśli:
 daje on dobre rezultaty
 rozwiązuje zadania w czasie dopuszczalnym
 dysponuje strategiami umożliwiającymi imitowanie wiedzy i
intuicji
eksperta,
uzyskanej
w
wyniku
wieloletniego
doświadczenia
Dopuszczalny czas rozwiązywania zadania jest pojęciem
relatywnym względem samego zadania. Niektóre systemy
odznaczają się czasem odpowiedzi mierzonym w sekundach,
inne zaś mogą pracować w ciągu długiego czasu (tygodniami –
np. system PROSPECTOR). Nie zawsze jednak wydłużanie
czasu odpowiedzi poprawia w istotny sposób wyniki działania.
121
Uniwersalność
Ważną cechą charakterystyczną systemu ekspertowego
jest jego zdolność do rozwiązywania obszernej klasy zadań z tej
dziedziny. Aby zdolność tę przejawić, system nie powinien
zawierać
wielu
sztywnych,
wcześniej
przygotowanych
rozwiązań, lecz dużą liczbę reguł obejmujących dostatecznie
szeroki zakres heurystyk z dziedziny problemowej.
Powinny one nie tylko umożliwić przeszukiwanie
przestrzeni
rozwiązań
dobrze
postawionego
zadania.
Dostateczna liczba uniwersalnych reguł powinna zapewnić
płynne (nie skokowe) pogarszanie się jakości pracy systemu w
sytuacji, w której posiadane reguły wnioskowania okazują się
niewystarczające.
Uniwersalność rozumiana jako możliwość rozwiązania
zadań z różnych dziedzin wiedzy na podstawie strukturalnego
podobieństwa reguł wnioskowania jest jeszcze nieosiągalna.
122
Złożoność
Stopień skomplikowania systemu ekspertowego jest w
naturalny sposób określony przez dziedzinę, dla której jest
wykonany. W tym aspekcie wstępuje paradoksalne zjawisko, że
problem niezbyt skomplikowany, o krótkim i mało
rozgałęzionym drzewie przeszukiwań czyni konstrukcję
nieopłacalną, ponieważ problem taki łatwiej jest rozwiązać
używając zwykłych programów.
Ogólnie ocena złożoności systemu jest w pewien sposób
możliwa – na przykład przez liczbę reguł wnioskowania,
wielkość bazy danych itp.
Klasyfikacja systemów ekspertowych ze względu na liczbę
reguł:
• małe (100 – 300 reguł)
• średnie (300 – 2000 reguł)
• duże (ponad 2000 reguł)
Ze względu na trudności w przeszukiwaniu dużych baz
wiedzy w procesie wnioskowania nie stosuje się obecnie więcej
niż 10 000 reguł.
123
Autoanaliza
System ekspertowy powinien uzasadnić użytkownikowi
przyjęte rozwiązywanie nie tylko globalne, ale i na każdym
etapie, to znaczy każde rozwiązanie częściowe. Dokonuje się
tego w ten sposób, że przegląda się drzewo rozwiązania w
kierunku wstecznym, tak jakby to było jeszcze jedno zadanie
wymagające ekspertyzy.
W systemach ekspertowych występuje problem
niesprzeczności uzyskiwanych w danym etapie wnioskowania
wyników z faktami zawartymi w bazie wiedzy. Odpowiada to
zmianie drogi w drzewie rozwiązania. W analizowaniu przez
system własnego zachowania istotna rolę odgrywa tzw. moduł
niesprzeczności.
Ścisły pomiar ilościowy zdolności systemu do autoanalizy
jest bardzo trudny. Trzeba zauważyć, że nie zawsze analiza taka
jest możliwa lub potrzebna. Systemy czasu rzeczywistego
muszą tak szybko reagować na zmienne warunki otoczenia, że
prowadzenie dialogu z człowiekiem jest zwykle niemożliwe. W
pewnych dziedzinach jednak wynik jest zrozumiały dla odbiorcy
i dodatkowe wyjaśnienia nie są potrzebne.
124
Zdolność udoskonalania bazy wiedzy
Jedną z podstawowych cech eksperta jest ciągłe
rozszerzanie
wiedzy
o
nowe
fakty
i
prawa
(reguły
wnioskowania). System eksportowy, jeśli ma być efektywny,
powinien również przejawiać tę cechę. Oczywiście dla
użytkowników lub konstruktorów zależy, czy bazę wiedzy
będzie można rozszerzać czy nie.
Mechanizmy udoskonalające działanie systemów ekspertowych:
 kontroler niesprzeczności nowo wprowadzanych do bazy
wiedzy reguł z regułami w niej zawartymi
 kontroler zgodności reguł z nowo wprowadzanymi faktami
 mechanizm oceny częstości stosowania poszczególnych reguł
 mechanizm rozbudowy istniejącej bazy reguł poza zakres
danej bazy wiedzy.
Dwa pierwsze elementy mieszczą się w module
niesprzeczności, pozostałe należy wbudować jako dodatkową
strukturę uczącą. Adaptacyjność nie jest wymagana dla
zamkniętych dziedzin wiedzy, będzie natomiast konieczna w
systemach dla dziedzin wiedzy, w których występuje duży
stopień niepewności i niedostateczna, rozwijająca się baza
danych.
125
Badanie poprawności bazy wiedzy
Spójność
Testowanie spójności polega na wykrywaniu reguł
zbędnych, sprzecznych, pochłaniających, reguł z
niepotrzebnym warunkiem oraz reguł zapętlonych.
126
Badanie poprawności bazy wiedzy
Redundancja bazy wiedzy występuje wówczas, gdy
pojawiają się reguły zbyteczne. Dwie reguły są
redundancyjne, jeśli obie ich części warunkowe są
równocześnie spełnione lub nie spełnione we wszystkich
możliwych sytuacjach oraz ich części konkluzyjne są
identyczne, np.:
( a, L ) AND ( c, 3 ) => ( d, H )
(¬( a, R )) AND ( c, 3 ) => ( d, H )
Przy czym atrybut a może przyjąć dwie wartości: L i
R. Mimo, że redundancja powoduje nadmiarowość bazy
wiedzy, proces wnioskowania odbywa się bez szkód,
chociaż jest wymagane przeszukiwanie większej liczby
reguł.
127
Spójność
1.
Sprzeczność reguł
2.
Dwie reguły są sprzeczne (konfliktowe) wówczas, gdy ich części
warunkowe są równocześnie spełnione lub niespełnione we
wszystkich możliwych sytuacjach i ich części konkluzyjne są
różne dla przynajmniej jednej sytuacji. Następujące reguły są
konfliktowe:
( a, L ) AND ( c, 3 ) => ( d, H )
( a, L ) AND ( c, 3 ) => ( d, L )
Przy czym atrybut d może przybrać dwie wartości: H i L.
Niektóre systemy do sprawdzania poprawności bazy wiedzy
pokazują sprzeczne reguły, umożliwiając inżynierowi wiedzy
eliminację tego błędu.
7.
128
Spójność
1.
3.
Reguły pochłaniające
4.
Jedna reguła jest pochłaniana przez inną wówczas, gdy część
warunkowa pierwszej reguły jest spełniona, jeśli jest spełniona
część warunkowa drugiej reguły (odwrotne stwierdzenie nie jest
prawdziwe) i części konkluzyjne obu reguł są identyczne. Na
przykład reguła
( a, L ) AND ( c, 3 ) => ( d, H )
jest pochłaniana przez regułę
( c, 3 ) => ( d, H )
129
Spójność
1.
Niepotrzebne warunki
Dwie reguły mają niepotrzebne warunki, jeśli obie są
pochłaniane przez trzecia regułę. Baza reguł może nie zawierać
tej trzeciej reguły i w takiej sytuacji sprawdzanie pochłaniania
nie daje rezultatu. Następujące dwie reguły mają niepotrzebne
warunki:
( a, L ) AND ( b, D ) AND ( c, 5 ) => ( d, H )
( a, R ) AND ( b, D ) AND ( c, 5 ) => (d, H )
Przy czym warunkowy atrybut a może mieć dwie wartości: L i R.
Obie reguły są pochłaniane przez regułę
( b, D ) AND ( c, 5 ) => ( d, H )
130
Spójność
1.Zapętlenie
reguł
Zestaw reguł tworzy pętlę, jeżeli uaktywnienie tych reguł jest
cykliczne. Na przykład trzy reguły
( a, L ) AND ( c, 5 ) => ( d, H )
( d, H ) => ( f, 2 )
( f, 2 ) AND ( g, 4 ) => ( c, 5 )
tworzą pętlę, gdy w bazie wiedzy istnieją następujące fakty:
(a. L), (c, 5), (g, 4)
W poprawnie działającym systemie ekspertowym tego typu reguły nie
powinny wystąpić. Aby wykryć zapętlenie reguł, dla badanej bazy
tworzy się tzw. tablicę zależności. W tablicy takiej przedstawia się
zależności istniejące między regułami oraz między regułami a celem
do wykazania.
131
Spójność
1.Wielokrotne
odwołanie do jednego atrybutu
Wielokrotne odwołanie do jednego atrybutu zachodzi
wówczas, gdy występuje kilka członów zawierających ten sam atrybut.
W przypadku, gdy odwołania są identyczne, wówczas powtarzające się
warunki są zbędne. Natomiast w przypadku, gdy nie są one
identyczne, wówczas reguła nigdy nie będzie uaktywniona, ponieważ
atrybut nie może jednocześnie przyjmować kilki wartości, np.
( a, L ) AND ( a, R ) => ( d, H )
Wielokrotne odwołanie do jednego atrybutu w części
wynikowej jest błędem logicznym, stwarzającym domniemanie
wystąpienia błędnego powiązania atrybutu wynikowego z jego
wartością
132
Kompletność bazy reguł
Sprawdzanie kompletności bazy reguł polega na
poszukiwaniu brakujących reguł. W niektórych rozwiązaniach
sprawdza się, czy istnieje reguła dla każdej kombinacji
atrybutu przesłanki i wartości, jaką atrybut może przyjąć.
Większość systemów w celu sprawdzenia poprawności reguł
rozpatruje różne przypadki, jakie mogą się zdarzyć dla części
reguł: nieokreślone wartości przesłanek, niedopuszczalne
wartości atrybutów, nieosiągalna akcja (uaktywnienie reguły) i
nieosiągalny cel.
Wartość atrybutu warunku jest nieokreślona
wówczas, gdy nie jest zgodna z częścią warunkową
przynajmniej jednej reguły. Niekoniecznie oznacza to, że jakaś
reguła nie została wprowadzona do bazy wiedzy (jest to jednak
możliwe). Sytuacja ta oznacza, że zbiór wartości atrybutów w
częściach warunkowych reguł jest mniejszy od zbioru
możliwych wartości atrybutów.
133
Kompletność bazy reguł
Atrybut przyjmuje niedopuszczalną wartość, gdy
istnieje reguła odnosząca się do atrybutu o wartości
nienależącej do zbioru dopuszczalnych wartości atrybutu.
Dotyczy to obu części reguł. Aby otrzymać poprawność bazy
reguł, błąd ten musi zostać skorygowany.
Z nieosiągalną akcją mamy do czynienia wówczas, gdy
konkluzje reguł nie odpowiadają faktom występującym w
przesłankach innych reguł. Następuje wówczas przerwanie
łańcucha wnioskowania. Błąd ten możemy zidentyfikować tylko
wówczas, gdy jest znana klasa celów. Z kolei nieosiągalny cel
(hipoteza) występuje wówczas, gdy nie zawiera go konkluzja
żadnej reguły
134

Podobne dokumenty