ELEMENTY SZTUCZNEJ INTELIGENCJI
Pytania do egzaminu
Systemy informacyjne
Informatyka jest dyscypliną naukową, która analizuje problemy zastosowań mechanizmów matematycznych, technologii komputerowych do modelowania i zarządzania procesami różnego rodzaju. Tak sformułowana informatyka rozumiana jest jako cybernetyka. Podstawowym zadaniem cybernetyki jest opracowanie urządzeń, które działają automatycznie i mogą zastąpić człowieka (całościowo) w niektórych ściśle określonych sytuacjach.
Informatyka bada problemy poszukiwania teoretycznych podstaw do formalnego opisu natury i cech informacji, czyli oceny ilościowej, semantycznej mocy, wartości i efektywności informacji. Informacja - to taki rodzaj zasobów, który pozwala na zwiększanie naszej wiedzy o nas i otaczającym nas świecie.
Teoretyczne podstawy informatyki bazują na następujących metodach matematycznych:
Teoria informacji - dział matematyki stosowanej poświęcony zagadnieniom kodowania, przekazywania i przechowywania informacji jako jednostek i struktur ilościowych (bez uwzględnienia semantyki informacji).
Teoria systemów - daje możliwości formalizacji procesów współdziałania składowych systemów złożonych, określenia celów, dekompozycji celów globalnych na cele cząstkowe,
Badania operacyjne - metody matematyczne przeznaczone do modelowania i obliczania zależności pomiędzy wejściowymi i wyjściowymi parametrami oraz ograniczeniami różnych procesów,
Modelowanie symulacyjne - daje możliwość określenia ilościowych parametrów procesów, gdy analityczne modele nie istnieją ,
Metody sztucznej inteligencji - opisują formalne sposoby reprezentacji i wykorzystania wiedzy człowieka zdobytej z własnego doświadczenia,
Teoria baz danych - modelowanie struktur danych w różnych dziedzinach oraz sposobów logicznej i fizycznej organizacji danych,
Teoria oprogramowania - metody opracowania efektywnego kodu w różnych środowiskach,
Podstawowym pojęciem informatyki jest system informacyjny, który zawiera następujące komponenty:
a) System - zdefiniowany jako zbiór składowych, które działają w jakimś celu, mają pewną stabilność, i mogą być przydatne przy ich łącznym rozpatrywaniu. System Informacyjny może być przedstawiony jako czarna skrzynka, która opisuje pewny proces oraz ma dane wejściowe i wyjściowe. Z tego wynika, ze proces jest działaniem, które prowadzi do przekształcenia zmiennych wejściowych w zmienne wyjściowe.
b) Otoczenie - wszystko, co znajduje się poza systemem i co ma wpływ na działanie systemu.
c) Sprzężenie zwrotne (ang. feedback) - określa proces, za pomocą którego do systemu jest wprowadzana informacja o wyjściowych parametrach systemu.
d) Cel - taki stan systemu, który mógłby zaspokoić żądania użytkownika systemy (decydenta).
e) Informacja - wynik przekształcenia danych przez system informacyjny.
Informacja jest to wynik przyrostu wiedzy, który może być uzyskany na podstawie interpretacji danych przez człowieka.
Sterowanie systemem jest to cykliczny informacyjny proces realizowany w zamkniętej pętli i orientowany na osiągnięcie celu (rys.1).
Zmienne wejściowe Sprzężenie zwrotne Zmienne wyjściowe
Rys.1 Współdziałanie komponentów systemu informacyjnego
System informacyjny a system informatyczny
System Informatyczny jest częścią systemu związanego z obiegiem, przetwarzaniem, udostępnianiem, magazynowaniem i archiwizowaniem informacji istotnych dla systemu oraz dla jego użytkowników. System Informacyjny obejmuje rozwiązania algorytmiczne, programowe i sprzętowe, które związane są nie tylko z danymi ale z informacją i wiedzą. System Informatyczny rozumiany jest jako oprogramowanie i sprzęt komputerowy prowadzący do udoskonalenia funkcji, szybkości i precyzji działania algorytmów oraz do zwiększenia możliwości przetwarzania, zabezpieczania i przekazywania informacji użytkownikom.
System informatyczny jest częścią systemu informacyjnego.
System Informacyjny może być przedstawiony w postaci krotki (ang. tuple), która zawiera 6 składowych elementów
, gdzie
SI - system informacyjny danej organizacji,
P - zbiór podmiotów, które są użytkownikami systemu,
I - zbiór informacji o sferze realnej, czyli o stanie systemu i i zachodzących w niej zmianach (tzw. zasoby informacyjne),
T - zbiór narzędzi technicznych stosowanych w procesie pobierania, przesyłania, przetwarzania, przechowywania i wydawania informacji,
O - zbiór rozwiązań rynkowych stosowanych w danej organizacji (stosowana formuła zarządzania),
M - Zbiór meta-informacji, czyli opis systemu informacyjnego i jego zasobów informacyjnych,
R - relację pomiędzy poszczególnymi zbiorami.
Klasyfikacja Systemów Informacyjnych
Systemy Informacyjne mogą być sklasyfikowane według następujących kryteriów:
a) Według uzależnienia od otoczenia SI mogą być:
Otwarte
Zamknięte
b) Według celu i struktury systemu oraz ilości relacji pomiędzy składowymi SI mogą być podzielone na:
Proste
Złożone
c) Według zachowania systemu oraz zależności zachowania od przypadkowych czynników SI
mogą być:
Deterministyczne
Probabilistyczne
d) W zależności od szybkości zmiany stanów systemu SI mogą być:
Statyczne
Dynamiczne,
e) W stosunku do światu rzeczywistego SI mogą być:
Naturalne
Projektowane
Systemy naturalne istnieją niezależne od działania człowieka, systemy projektowane są rezultatem działania człowieka. Z kolei systemy projektowane można podzielić na:
systemy projektowane fizyczne (np. elektrownie),
systemy projektowane konceptualne,
projektowane systemy działania ludzi.
Dla SI można sformułować ogólne zasady działania:
Całość i części składowe mają różne cechy (różne rozkłady zachowań).
Sterowanie systemem odbywa się w zamkniętej piętli z użyciem sprzężenia zwrotnego.
Dla każdego systemu jest cały wachlarz różnych zachowań i wariantów sterowania systemem (dlatego potrzebna jest optymalizacja).
Konieczność uzupełnienia formalnych metod sterowania systemami nieformalnymi.
Efektywne kierowanie systemem wymaga zmniejszenia nieokreśloności wiedzy o strukturze, relacjach systemu z otoczeniem, itp.
W nowoczesnej działalności ludzkiej jest używanych kilka kategorii SI, które charakteryzuje się:
Zasobami informacyjnymi zawartymi i przetwarzanymi w SI,
Modelami i procedurami używanymi dla przetwarzania,
Środkami technicznymi i programowymi używanymi dla gromadzenia i przetwarzania informacji.
Najważniejszymi kategoriami (generacjami) SI są:
G. I: Systemy transakcyjne
Takie systemy są deterministyczne, informacja w nich pełna i jednoznaczna (wiarygodna), struktura takich systemów jest ściśle określona. Są one przeznaczone dla arytmetycznych obliczeń. Systemy Transakcyjne bazuje się na komputerach z dużą pamięcią masową, na oprogramowaniu zorientowanym problemowo z używaniem języków proceduralnych.
G. II: Systemy informacyjne kierownictwa
Takie systemy są deterministyczne, ale informacja w nich nie zawsze pełna i wystarczająca do oceny. Systemy Informacyjne kierownictwa tworzą przepływy informacji pomiędzy oddziałami organizacji i charakteryzują się interaktywnym trybem działania.
G. III: Systemy wspomagania decyzji
Takie systemy są probabilistyczne, obarczone błędem o określonym prawdopodobieństwie. Z reguły takie systemy zawierają modele optymalizacyjne i symulacyjne. Potrzebują one procesorów o dużej prędkości i rozwiniętej bazy sieciowej.
G. IV: Systemy ekspertowe
W takich systemach informacja dochodzi z różnych źródeł (otoczenia), jest niepełna, potrzebuje analizy i strukturyzacji (interpretacji). Systemy ekspertowe bazuje się na modelach heurystycznych lub logicznych (rachunek predykatów). Używane w nich języki są deklaratywne.
1. Przeznaczenie systemów ekspertowych
System ekspertowy (SE) jest systemem informatycznym, który wykonuje złożone zadania o dużych wymaganiach intelektualnych i robi to tak dobrze, jak człowiek będący ekspertem w tej dziedzinie. Systemy te zaliczamy do klasy systemów, które spośród wielu działów sztucznej inteligencji znalazły szerokie zastosowanie.
Cel i przyczyny zastosowania systemów ekspertowych.
Zadaniem systemu ekspertowego jest rozwiązanie problemów powstających w charakterystycznych sytuacjach, które bezpośrednio nie nadają się do formalizacji i wymagają profesjonalnej ekspertyzy. SE musi robić to równe dobrze, jak człowiek będący ekspertem dziedziny. Celem SE jest rozpowszechnienie wiedzy ekspertów, umożliwienie jej wykorzystania pod czas nieobecności eksperta.
Zastosowanie sztucznej inteligencji w systemach ekspertowych.
Istnieją trzy definicje pojęcia inteligencja:
(1)-działanie polegające na manipulowaniu symbolami,
(2) - zespól zdolności, umożliwiający korzystanie z nabytej wiedzy,
(3)-zdolność do analizy i uogólnienia; do rozpoznania obiektu w różnych kontekstach.
Sztuczna inteligencja jest nauką o maszynach realizujących zadania, które wymagają inteligencji wówczas, gdy są wykonywane przez człowieka (Minsky). Sztuczna inteligencja stanowi dziedzinę informatyki dotyczącą metod i technik wnioskowania symbolicznego przez komputer oraz symbolicznej reprezentacji wiedzy stosowanej podczas takiego wnioskowania (Fiegenbaum).
Turing zaproponował prosty test dający odpowiedź na pytanie: Czy maszyna może posiadać inteligencję? Maszyna jest inteligentną, jeśli zewnętrzny obserwator nie jest w stanie odróżnić jej odpowiedzi od odpowiedzi człowieka, mogącego zastępować maszynę. Realizacją tego testu w ograniczonym zakresie mogą być złożone programy do gier (np. szachy).
2. Typy systemów ekspertowych
Można wydzielić trzy typu systemów ekspertowych :
(1) Doradcze (advisory),
(2) Decyzyjne, które podejmują decyzje bez kontroli człowieka (dictatorial)
(3) Krytykujące (criticizing).
SE mogą być realizowane w postaci systemów dedukowanych lub szkieletowych. System dedykowany tworzony jest od postaw dla rozwiązania określonego problemu, system szkieletowy zawiera pustą bazę wiedzy i określone metody reprezentacji wiedzy i metody wnioskowania.
Metody wnioskowania mogą być oparte na różnych rodzajach wiedzy (pewna , niepewna) i kilka typach logiki: dwuwartościowa, wielowartościowa lub rozmyta.
3. Zastosowanie SE
W tabeli 80 pokazane podstawowe zastosowania systemów ekspertowych.
Tabela 80
Zastosowanie/ Funkcji |
Bankowość, ubezpieczenie |
Przemysł |
Handel |
Obrona, energetyka |
Sektor publiczny, inne |
Monitorowanie Sterowanie |
Giełda, decyzje bankowskie |
Procesy wytwarzania |
Promocja towarów |
Sieci energetyczne |
|
Projektowanie |
Produkty, Infrastruktura |
Nowe Produkty/procesy |
Sieci handlowe |
Elektrownia |
|
Diagnostyka |
Stan aktywów |
Maszyny Układy |
__ |
|
|
Planowanie |
Trendy, zarządzanie strategiczne |
Metody planowania |
Ryzyko przedzięwięc
|
|
|
Niżej podane przykłady systemów ekspertowych w różnych dziedzinach.
Militarne systemy:
AIRID- rozpoznanie typu samolotów na podstawie ogólnej obserwacji w skomplikowanych warunkach,
AIRPLAN - wspiera proces startu i lądowania samolotów na lotniskowcu,
AMUID - rozpoznanie sytuacji na podstawie danych wywiadu,
ASTA - rozpoznanie typu radaru na podstawie odebranego sygnału,
EPES - dla F-16 - analiza warunków zagrażających życiu pilota,
I & W - przewidywanie konfliktów geopolitycznych,
RUBRIC - analiza nieformatowanych tekstów i ustalenie tematu,
SCENARIO - AGENT - modelowania zachowania uczestników konfliktu.
Kosmos:
ECESIS - analiza sytuacji na pokładzie stacji kosmicznej,
LES - załadowanie kosmicznego statku przed ekspedycją,
NAVEX - analiza telemetrycznych danych stacji lądowych,
RBMS - harmonogram i monitoring wykorzystania zasobów i pomieszczeń w trakcie ekspedycji.
Geologia:
DRILING ADVISOR - warunki zastosowania sprzętu przy poszukiwaniu ropy i gazu,
LITHO - analiza zasobów ropy i gazu,
HIDRO - analiza zasobów wodnych i przewidywanie ich zachowania.
Inżynieria:
CONFHYDE - symulacja nieprzerywalnych procesów chemicznych,
DELTA - analiza stanu i naprawa sprzętu kolejowego,
NPPC - analiza monitoringowych danych stacji jądrowej,
SPERIL - przewidywanie możliwych zniszczeń w zonach sejsmicznych,
EDAAS - ustalenie poziomu konfidencjalności (poufności) brązowych danych.
Medycyna:
ANNA - choroby serca,
ARAMIS - reumatologia,
BABY - wychowanie noworodków,
MYCIN - dobór leków przeciwko groźnym wirusom,
NEUREX - walka z nieprzytomnością,
ONCOCIN - chemio-terapia.
4. Problemy tworzenia SE
System komputerowy nie potrafi sam z siebie niczego odkryć, ani niczego nowego wynaleźć w ścisłym znaczeniu tych słów, gdyż prawdziwie twórcze myślenie jest mu niedostępne. Komputer nie posiada świadomości ani podświadomości, nie operuje pojęciami, nie przeżywa stanów emocjonalnych, czyli nie myśli, ani nie odczuwa w dosłownym rozumieniu tych słów.
Proces konstruowania SE należy do zagadnień tzw. inżynierii wiedzy (ang. knowledge Engineering). Zasadniczym celem inżynierii wiedzy jest pozyskiwanie wiedzy, jej strukturalizacja i przetwarzanie.
Zajmuje się ona także rozwijaniem metodologii i narzędzi budowy SE.
Metodologia inżynierii wiedzy jest oparta na trzech typach metod:
metody wywołania wiedzy Eksperta,
metody reprezentacji wiedzy Eksperta zgodne z wymaganiami komputerów,
metody wykorzystania wiedzy Eksperta w celu rozwiązania problemu podczas jego nie obecności.
Praca i rola eksperta.
Ekspert jest specjalistą w określonej dziedzinie, który ma duże doświadczenie, kompetencje oraz efektywny wybór ważnych informacji. Wiedza eksperta wynika z wieloletniej praktyki w danej dziedzinie. Ekspert, obserwując i analizując sytuację, zwraca uwagę na najbardziej wartościową informację.
Kompetentność jest to umiejętnością wykorzystania wiedzy teoretycznej dla rozwiązania problemu praktycznego oraz umiejętność wyjaśnienia podejmowanych decyzji i interpretacji otrzymanych wyników.
Podstawową funkcją eksperta jest napełnienie SE wiedzą. Pozyskanie wiedzy oraz jej późniejsza strukturalizacja jest najbardziej pracochłonnym zajęciem podczas tworzenia systemu ekspertowego. Ilość pracy oraz jej ogrom powoduje, że praca i rola eksperta systemu jest najbardziej newralgicznym punktem w procesie tworzenia aplikacji. To od ilości oraz przede wszystkim jakości wiedzy, czyli pełnego ujęcia i identyfikacji problemu, zależy końcowy efekt w postaci gotowego programu.
Współpraca specjalistów podczas tworzenia SE.
Największa część wysiłków tworzenia SE spoczywa na barkach eksperta oraz analityka systemowego (zwanego także inżynierem wiedzy).
Ich wspólna praca określa:
(1) cel tworzenia systemu ekspertowego,
(2) dziedzinę oraz obszar wiedzy, który ta obejmie,
(3) krąg potencjalnych użytkowników aplikacji,
(4) definiuje sytuacje, w których użytkownicy będą mogli skorzystać z wiedzy eksperta.
5. Zagadnienia inżynierii wiedzy (ang. knowledge engineering)
Zagadnieniami inżynierii wiedzy są pozyskiwanie, strukturalizacja, przetwarzanie wiedzy oraz opracowanie narzędzi dla budowy SE. Moc SE tkwi w zakodowanej w nim wiedzy, a nie w formalizmie i schematach wnioskowania, których ten program używa. Podczas tworzenia SE potrzebna jest współpraca różnych specjalistów, takich jak: (1) inżynier wiedzy, (2) matematyk, (3) analityk systemowy i (4) programista.
6. Składowe elementy SE
1. Baza wiedzy (ang. knowledge base) jest to opis dziedziny wg wybranego sposobu reprezentacji wiedzy.
Baza wiedzy jest oparta o określoną metodę reprezentacji wiedzy dziedzinowej, np. reguły, sieci semantyczne, ramy, predykaty, etc. i potrzebuje dla swojej realizacji procedur. sprawdzenia spójności wiedzy, redagowania w środowisku technicznym i programowym
2. Baza faktów jest to opis sytuacji, która potrzebuje rozwiązania w systemie ekspertowym
Opis faktów może być opisany w postaci zbioru trypletów:
{obiekt -> cechy -> wartości}
Baza faktów odzwierciedla semantyczne relacje między obiektami. W odróżnieniu od faktów reguły są to zdania warunkowe, określające logikę powiązania faktów.
Struktura reguły:
If < przesłanki (fakty)> then < wniosek/konkluzja>
Przykłady reguł:
If cena=>100 then zakup =przetarg.
If Jan jest synem Adama i Adam jest synem Jacka, then Jan jest wnukiem Jacka.
3. Maszyna wnioskująca ( ang. inference engine) zawiera algorytm współdziałania bazy wiedzy z bazą faktów.
Algorytm wnioskowania realizuje odpowiedzi na następne pytania:
Jak zacząć proces wnioskowania?
Którą regułę zastosować, gdy mamy kilka reguł?
Jak znaleźć następne reguły?
W klasycznych systemach ekspertowych SE wnioskowanie odbywa się na podstawie logiki dwuwartościowej. Zasadą wnioskowania jest logiczne prawidło Modus ponens :
konkluzja B będzie prawdziwa, jeśli przesłanka jest prawda i reguła jest prawdziwa.
4. Interfejs użytkownika (ang. user tnterface) realizuje dialog pomiędzy użytkownikiem i systemem ekspertowym. Algorytm dialogu służy do opisu konkretnej sytuacji.
Przykład.
Temperatura ciała? <36.6, 37.5-38.5,38.5- 40>,
Stan skory? <Plamy czerwone, wysypka>,
Ciśnienie? <70/120, 120/180, 120/200>,
Odpowiedzi ( fakty): T= 39,
Skóra= wysypka,
Ciśnienie= 75/130.
5. Interfejs inżyniera wiedzy (ang. knowledge engineer interface) jest to zbiór procedur dodawania, sprawdzenia, redagowania reguł.
Na rys. 79 a są przedstawione składowe szkieletowego systemu ekspertowego, na rys. 79b składowe dedykowanego systemu ekspertowego.
a - Składowe szkieletowego systemu ekspertowego
b - Składowe dedykowanego systemu ekspertowego
Rys. 79 Składowe systemu ekspertowego
Na rys. 80 jest przedstawiony algorytm konsultacji z systemem ekspertowym.
Rys.80 Algorytm konsultacji z systemem ekspertowym
Na rys. 81 jest przedstawiony przykład algorytmu konsultacji z systemem ekspertowym.
Rys. 81 Przykład algorytmu konsultacji z systemem ekspertowym
7. Generowanie reguł za pomocą drzewa decyzyjnego. Pojęcie Entropii
Definicja drzewa.
Drzewem decyzyjnym będziemy nazywać graf o strukturze drzewa, którego korzeń jest reprezentowany przez wybrany atrybut, a poszczególne gałęzie reprezentują wartości tego atrybutu. Węzły drzewa na następnych poziomach mają przyporządkowane dalsze atrybuty, występujące w zadaniu klasyfikacji. Na najniższym poziomie otrzymujemy węzły charakteryzujące poszczególne klasy.
Zadanie optymalizacji.
Celem niniejszej metody jest zbudowanie drzewa decyzyjnego, w oparciu o najlepszą kolejność atrybutów, na podstawie którego zostaną wygenerowane reguły systemu ekspertowego. Każdy system oparty na regułach posiada zbiór obiektów, które są charakteryzowane poprzez zbiór atrybutów, które mogą przyjmować określone wartości. Poprawna kolejność analizowania atrybutów podczas procesu wnioskowania jest w tym przypadku niezbędna do poprawnego oraz wydajnego działania systemu.
W tym miejscu powinniśmy zadać sobie pytanie, według jakich kryteriów należy dokonywać procesu optymalizacji.
Najważniejszymi kryteriami są:
pewność uzyskania wyniku - bez względu na wartości, jakie przyjmują atrybuty system powinien móc wygenerować jednoznaczną odpowiedź,
szybkie dokonywanie obliczeń,
maksymalizacja zakresu informacji przechowywanej w bazie wiedzy, przy jak najmniejszej liczbie reguł.
Przykład.
Rozważmy następujący przykład. Każdy obiekt przynależy do jednej z dwóch klas oraz charakteryzuje się trzema atrybutami, które przyjmują poniższe wartości:
wysokość obiektu: niski, wysoki.
kolor obudowy: ciemna, czerwona, biała.
ilość elementów współpracujących: 1, 2.
W tabeli 81 pokazano rozdzielenie obiektów na klasy (W1, W2) w zależności od wartości ww. atrybutów.
Wybór kolejności atrybutów nie jest zadaniem prostym ani łatwym. W powyższym przypadku ilość parametrów nie jest duża, więc można pokusić się o sprawdzenie wszystkich możliwości lub wybór heurystyczny. Jeżeli wyborem, jako pierwszym atrybutem będę ilość elementów współpracujących, otrzymane drzewo będzie następujące (rys. 82):
Tabela 81
Rys 82. Drzewo decyzyjne przy kolejności wybieranych atrybutów:
ilość elementów współpracujących, kolor obudowy, wysokość.
Jak łatwo zauważyć, nie jest to rozwiązanie zadowalające. Pierwszą cechą, którą zauważamy już na samym początku, jest stosunkowo duży poziom skomplikowania drzewa, pomimo tylko trzech atrybutów, które rozpatrujemy. Kolejną niedogodnością jest zauważalny brak pewności uzyskania odpowiedzi. W dwóch przypadkach rozpatrywanego drzewa mamy stan nieokreślony, tzn. brak jest w zespole atrybutów jednoznacznego zakwalifikowania obiektu do jakiejkolwiek klasy.
Odmienną sytuację zauważamy dla grafu, kiedy pierwszym atrybutem jest kolor obudowy. Na rys. 83 pokazano drzewo decyzyjne przy wyborze pierwszego atrybutu: kolor obudowy.
Rys.83 Drzewo decyzyjne przy kolejności wybieranych atrybutów:
kolor obudowy, ilość elementów współpracujących
W tym przypadku stopień skomplikowania drzewa jest o wiele mniejszy. Jak łatwo jest zauważyć, już po analizie pierwszego parametru mamy jednoznaczną klasyfikację obiektów o wartościach: ciemna oraz czerwona. Do pełnej klasyfikacji wystarczą już tylko dwa argumenty. W tym przypadku wartość trzeciego (wysokość obudowy) nie ma wpływu na przebieg klasyfikacji. Otrzymane w tym przypadku drzewo pozwala uzyskać dużą ilość informacji, przy stosunkowo znikomej analizie.
Metoda sprawdzania wszystkich możliwych kolejności jest rozwiązaniem żmudnym i możliwym praktycznie, tylko w przypadku znikomej ilości argumentów. Dla systemów o większej ilości parametrów jest ono rozwiązaniem mało praktycznym i efektywnym. Problem doboru kolejności argumentów, rozwiązuje się korzystając z pojęcia entropii pewnego
n- elementowego zbioru.
Definicja
Entropia jest miarą nieokreśloności informacji w zadaniu przekazania informacji.
Entropia jest definiowana w następujący sposób:
,
przy czym pi jest prawdopodobieństwem pojawienia się i-tego elementu zbioru.
Entropia jest pewną miarą informacji zawartej w zjawisku, które w przypadkowy sposób może przyjmować n stanów. Oznacza więc także wartość średnią ilości informacji niezbędnej do zapamiętania faktu, że dane zjawisko przyjmuje jeden spośród n dostępnych stanów.
Drzewo decyzyjne może być rozpatrywane jako źródło generujące informację o przynależności do danej klasy. W przypadku dwóch klas wartość oczekiwana ilości informacji wynosi:
,
przy czym p1 jest prawdopodobieństwem (a priori) wystąpienia obiektu należącego do pierwszej klasy, a p2 - do drugiej klasy.
p1+p2=1.
Estymując te prawdopodobieństwa za pomocą liczności nw1 nw2 występowania obiektów z klasy w1, w2 zależność powyższą zapisujemy:
Załóżmy, że atrybut A, przyjmujący jedną z wartości a1, a2, …, am, będzie stanowić korzeń drzewa decyzyjnego oraz że każdej wartości atrybutu jest przyporządkowanych n1, n2, …, nm obiektów w każdym węźle należą do klasy w1 i w2 w liczebności
.
Wartość oczekiwana ilości informacji dla poddrzewa określonego przez atrybut Aj może być obliczona w następujący sposób:
,
a dla całego zbioru:
,
gdzie l- liczba poddrzew.
Przyrost ilości informacji spowodowany zastosowaniem atrybutu A jest obliczany ze wzoru:
.
W ten sposób otrzymujemy kryterium umożliwiające optymalizację postaci drzewa decyzyjnego. Wartość ostatniej funkcji jest wyznaczana dla każdego atrybutu obiektów i jest wybierany ten atrybut, dla którego
osiąga maksimum.
Prześledźmy to na naszym przykładzie, w którym występuje osiem obiektów, z czego pięć należy do klasy w1, a trzy należą do klasy w2. Wartość entropii jest następująca:
.
Otrzymana wartość jest bardzo bliska wartości maksymalnej (równej 1). Oznacza to dużą trudność przydziału do klasy podczas klasyfikacji.
Następnie obliczamy
dla każdego atrybutu.
Dla atrybutu wysokość obudowy otrzymujemy:
dla wartości wysoka (3 obiekty w klasie w1, 2 obiekty w klasie w2):
,
dla wartości niska (2 obiekty w klasie w1, 1 obiekty w klasie w2):
,
Następnie otrzymujemy:
.
A po ostatnim podstawieniu:
.
Otrzymana wartość oznacza minimalny przyrost ilości informacji dla atrybutu wysokość obudowy. Oznacza to, że ten atrybut nie ma praktycznie wpływu na proces klasyfikacji.
Postępując w sposób analogiczny dla pozostałych atrybutów otrzymamy:
kolor obudowy:
,
liczba elementów współpracujących:
.
Z przeprowadzonych obliczeń wynika, że największą wartość otrzymaliśmy dla atrybutu kolor obudowy i to ten atrybut powinien stanowić korzeń drzewa decyzyjnego i na jego podstawie łatwo możemy stworzyć 4 reguły.
Przykład poligraficzny
Rozważmy kolejny przykład. Polega on na wyborze programu do składu za pomocą trzech parametrów charakteryzujących publikację.
Każdy obiekt przynależy do jednej z dwóch klas oraz charakteryzuje się trzema atrybutami, które przyjmują poniższe wartości:
Grafika (procentowy udział elementów graficznych w publikacji)
A (0 - 35%),
B (35 - 70%),
C (powyżej 70%),
Tekst (procentowy udział tekstu w publikacji)
1 (mniej niż 50%),
2 (50 - 100%) ,
Kolory (różnorodność kolorystyczna publikacji)
mała,
duża.
W tabeli 83 pokazana przynależność obiektów do klasy (W1,W2) w zależności od wartości ww. atrybutów.
Tabela 83
W naszym przykładzie występuje dziewięć obiektów, z czego cztery należą do klasy w1, a pięć należy do klasy w2 . Wartość entropii jest następująca:
.
Następnie obliczamy
dla każdego atrybutu.
Dla atrybutu grafika otrzymujemy:
dla wartości A (2 obiekty w klasie w1, 1 obiekt w klasie w2):
,
dla wartości B (1 obiekt w klasie w1, 3 obiekty w klasie w2):
,
dla wartości C wartość I1 jest równa 0, ponieważ wartość należy tylko do drugiej klasy
.
Następnie otrzymujemy:
.
A po ostatnim podstawieniu:
.
Dla atrybutu tekst otrzymujemy:
dla wartości 1 (1 obiekt w klasie w1, 4 obiekty w klasie w2):
,
dla wartości 2 wartość I1 jest równa 0, ponieważ wartość należy tylko do pierwszej klasy
.
Następnie otrzymujemy:
.
A po ostatnim podstawieniu:
.
Dla atrybutu kolor otrzymujemy:
dla wartości mała (3 obiekty w klasie w1, 1 obiekt w klasie w2):
dla wartości duża (3 obiekty w klasie w1, 1 obiekt w klasie w2):
Następnie otrzymujemy:
A po ostatnim podstawieniu:
Z powyższych obliczeń wynika, że atrybutem, który powinien znaleźć się na szczycie drzewa jest tekst (0,562). W związku z tym optymalne drzewo decyzyjne dla rozpatrywanego przykładu powinno wyglądać następująco:
(rys. 84)
Rys. 84 Drzewo decyzyjne dla przykładu poligraficznego
Analizując powyższe drzewo, otrzymujemy następujące reguły systemu ekspertowego:
R1: Jeżeli procentowy udział tekstu w publikacji przekracza 50% to do składu użyjemy programu PageMaker.
R2: Jeżeli procentowy udział tekstu w publikacji nie przekracza 50% i procentowy udział elementów graficznych w publikacji nie przekracza 35%, to do składu użyjemy programu Corel.
R3: Jeżeli procentowy udział tekstu w publikacji nie przekracza 50% i procentowy udział elementów graficznych w publikacji przekracza 70%, to do składu użyjemy programu Corel.
R4: Jeżeli procentowy udział tekstu w publikacji nie przekracza 50% i procentowy udział elementów graficznych w publikacji mieści się w przedziale 35 - 50% oraz różnorodność kolorystyczna publikacji jest mała to do składu użyjemy programu PageMaker.
R5: Jeżeli procentowy udział tekstu w publikacji nie przekracza 50% i procentowy udział elementów graficznych w publikacji mieści się w przedziale 35 - 50% oraz różnorodność kolorystyczna publikacji jest duża, to do składu użyjemy programu `Corel'.
8. Koncepcja bazy wiedzy. Inteligentny system informacyjny
Definicja 1
Konwencjonalna technologia informatyczna oparta na tradycyjnym rozwiązaniu zadań:
Pierwotne założenie zadania (specjalista dziedzinowy),
Przetwarzanie zadania do modelu analitycznego (analityk systemowy),
Wybór metody realizacji modelu i opracowanie programu komputerowego (programista aplikacji).
W konwencjonalnej technologii informatycznej mogę być wykorzystane modele badań operacyjnych, metody numeryczne, relacyjne i obiektowe modeli danych.
Definicja 2
Procesem interpretacji nazywa się przetwarzanie (tłumaczenie) pierwotnego założenia zadania w systemie pojęć dziedziny do formalnego założenia zadania w formie modelu matematycznego
Na rys.86 jest przedstawiony proces prostej i powrotnej interpretacji zadania
Interpretacja prosta
System pojęć Dane wejściowe System pojęć
Dziedziny Rezultaty modelu
matematycznego
Interpretacja powrotna
Rys.86 Proces interpretacji zadania
Istnieją integralne i lokalne metody interpretacji.
Do integralnych metod interpretacji odniosą się:
Interaktywne systemy z architekturą typu `Menu',
Języki poziomu wysokiego, podobne do języków naturalnych.
Przykłady lokalnych metod interpretacji:
System dokumentowania środków programowych,
Help - systemy.
Definicja 3
Inteligentna technologia informacyjna oparta jest na modelu przedstawienia, interpretacji, przetwarzania wiedzy.
Wiedza jest pełny zbiór informacji, potrzebny dla rozwiązania zadania, mianowicie informacja o:
systemie rzeczywistych pojęć dziedziny,
systemie formalnych pojęć modelu matematycznego,
wzajemne relacje ww systemu pojęć,
bieżący stan dziedziny,
metody rozwiązania zadania.
Podstawowa idea inteligentnych technologii informacyjnych to rozpatrzenie systemu pojęć dziedziny problemowej jako informacji pierwotnej dla rozwiązania zadania.
Użytkownik otrzyma możliwość formułowania zadania w języku bliskim do naturalnego, samodzielnego wydzielenia obiektów i ich relacji. System pojęć formalnego modelu analitycznego wyprowadza się automatyczne.
Definicja 4
Model dziedziny problemowej jest to wiedza oparta o metody i środki reprezentacji wiedzy w naturalnej dla specjalisty formie dziedziny. Takimi formami reprezentacji wiedzy mogą być:
Teksty w języku naturalnym,
Tabeli, grafiki, rysunki, symbole,
Komunikaty innych specjalistów,
Wzory matematyczne,
Dialekty profesjonalne,
Formy mieszane.
Inteligentna technologia informacyjna potrzebuje minimalnego czasu użytkownika do nauczenia możliwości systemu i opanowania techniki pracy w środowisku nowej technologii.
System inteligentny jest orientowany na różną kwalifikację użytkownika, w tej liczbie i najbardziej niską, ale podstawa sukcesu jest nauczanie. Zasada nauczania: Im więcej nauczy się, tym więcej może otrzymać.
Definicja 5
System informacyjny w inteligentnej technologii informacyjnej jest to aktywny system , celem którego jest otrzymanie potrzebnego w założeniu zadania nowej wiedzy przez wykonanie optymalnej kolejności operacji wyszukiwawczych, logicznych i obliczeniowych nad wiedzą posiadaną.
W inteligentnej technologii informacyjnej program jest tylko partnerem użytkownika w rozwiązaniu zadania. W procesie wspólnego rozwiązania zadania role systemu inteligentnego i użytkownika wielokrotnie zmieniają się. Proces rozwiązania zadania zaczyna się od pojawienia zapotrzebowania użytkownika na nową wiedzię.
Definicja 6
Inteligentny interfejs jest to system środków technicznych i programowych, który umożliwia użytkownikowi bezpośrednie (bez oprogramowania) rozwiązanie określonego zadania w obszarze jego działalności profesjonalnej.
Funkcjonowanie inteligentnego interfejsu potrzebuje przedstawienia, przechowania i przetwarzania wiedzy.
Wszystkie funkcji inteligentnego interfejsu można rozdzielić na 5 grup:
rozwiązanie zadania,
formowanie środowisku operacyjnego,
przedstawienie informacji,
organizacja dialogu,
objaśnienie działania systemu.
Ww. funkcje dają użytkownikowi Systemu Inteligentnego następujące możliwości:
a) Rozwiązanie zadania tylko przez założenie zadania w terminach dziedziny przedmiotowej, opisu potrzebnego rezultatu oraz warunków jego wyprowadzenia.(bez określenia schematu lub algorytmu rozwiązania zadania).
Przy tym użytkownik ma możliwość rozdzielenia zadania na podzadania.
b) Samodzielne formowanie środowiska operacyjnego dla rozwiązania zadania. Środowisko operacyjne musi odpowiadać w największym stopniu profesjonalnym normom i indywidualnym cechom użytkownika.
c) Naturalne przedstawienie informacji oraz przyjazne formy organizacji dialogu, takie jak
menu, ankiety, wymiana komunikatami.
d) Wyjawienie błędów systemu lub użytkownika.
9. Przedstawienie wiedzy w systemach informacyjnych
Wiedza w inteligentnym systemie informacyjnym opisana jest za pomocą formalnego języka, tzw. języka reprezentacji wiedzy (JRW). JRW opisuje właściwości różnych obiektów oraz zależności i reguły, potrzebne do rozwiązania aplikacji i współdziałania użytkownika z bazą wiedzy.
Formalizowany charakter JRW gwarantuje jednoznaczność interpretacji danych.
Definicja 7
Baza wiedzy jest to całokształt wiedzy, przechowanych w pamięci komputera i potrzebnych dla rozwiązania aplikacji użytkowników inteligentnego systemu informacyjnego.
Dla potrzymania procesu komunikacji i rozwiązania zadania ISI wykonuje się następujące operacje:
Wyszukiwanie potrzebnej wiedzy (Data Mining),
Modyfikacja wiedzy,
Interpretacja wiedzy,
Otrzymanie nowej wiedzy z wiedzy posiadanej.
Algorytmy ww. operacji zależą od JRW i sposobu organizacji wiedzy.
Definicja 8
Model wiedzy jest to formalny opis reprezentacji wiedzy oraz sposoby manipulowania wiedzą w procesie rozwiązania zadania. Dla tworzenia modelu wiedzy potrzebny jest język reprezentacji wiedzy (JRW) i język manipulowania wiedzą (JMW).
4. System przetwarzania danych
Definicja 9
Informacja jest to komunikat, który zmniejsza stopień nieokreśloności (tzw. Entropia) w tej dziedzinie, do której ten komunikat odnosi się (Klod Shennon).
Dane + Programy
System Informatyczny
Oprogramowanie takich algorytmów, które mogę być zastosowane do dużej ilości faktów. Wiemy jak, ale nie wiemy co otrzymamy.
Na rys. 87 przedstawiona została wzajemna relacja pomiędzy danymi, programami i informacją
Dane Programy Informacja
Liczby Algorytm Kryteria
Tekst Klasy algorytmów Ograniczenia
Symboli
Rys. 87 Relacja pomiędzy danymi, programami i informacją
5. System przetwarzania wiedzy
Informacja + Wiedza
System Informacyjny.
Przy oprogramowaniu operujemy jak specjalista zarządzania:
Danymi,
Informacją,
Wiedzą.
Program jest to cząstkowy przypadek przedstawienia wiedzy.
Na rys. 88 przedstawiona jest wzajemna relacja pomiędzy faktami, wiedzą i podejmowaną decyzją
Fakty Wiedza Decyzja
Rys. 88 Relacja pomiędzy faktami, wiedzą i decyzją
Istnieje bardzo poważny problem teoretyczny:
Jak przedstawić za pomocą technologii informacyjnych dane i wiedzę, żeby we właściwym czasie otrzymać aktualną informację ?
Ten problem nazywa się knowledge engineering: jak rozwiązać zadanie, żeby przy różnych danych wejściowych można było zapewnić personelowi zarządzającemu aktualne i dokładne informacje, potrzebne do podejmowania decyzji ?
Przejście do problemu modelowania danych i modelowania wiedzy.
Przedmiot badania i opracowanie jest to wiedza w określonej dziedzinie.
Na rys. 89 przedstawiono zadania analityka systemowego i inżyniera wiedzy
Sztuczna
Cybernetyka Zarządzanie Inteligencja Wiedza
Analityk systemowy Inżynier wiedzy
Rys. 89 Zadania analityka systemowego i inżyniera wiedzy
10. Organizacja bazy wiedzy w systemie informacyjnym
1. Wiedza deklaratywna i proceduralna
Proces nauczania potrzebuje opanowania wiedzy teoretycznej i praktycznej (umiejętności).
Model danych jest to wiedza deklaratywna, która wykonuje funkcję odzwierciedlenia dziedziny.
Dziedzina przedmiotowa jest to uogólniony termin, który opisuje zastosowanie technologii informacyjnych w obszarze wielu dziedzin (ekonomika, komunikacja, technika). W zawartość dziedziny przedmiotowej wchodzą operacyjne dane używane w danej dziedzinie przez użytkowników systemu. Oprócz tego, w dziedzinę przedmiotową wchodzą dane wejściowe (komunikaty użytkowników) i dane wyjściowe (rezultaty pracy program aplikacyjnych).
Na rys. 90 przedstawiono przykład dziedziny przedmiotowej
Dostawcy Projekty
Składy Części Pracownicy
Miejsca pracy Działy
Rys.90 Przykład dziedziny przedmiotowej
Model dziedziny jest to cześć świata rzeczywistego w przedstawieniu użytkownika systemu informacyjnego.
Sposoby przedstawienia danych i ich ewolucja (aż do abstrakcyjnych typów danych).
Model danych: referencyjny, relacyjny, hierarchiczny. MD jest to integralny zbiór deklaratywnej wiedzy.
Na rys. 91 przedstawiono przetwarzanie wiedzy deklaratywnej w procesie informacyjnym
BD WD1 Proces Informacyjny WD2 BD
Rys.91 Przetwarzanie wiedzy deklaratywnej w procesie informacyjnym
2. Dwa podejście do organizacji wiedzy
Istnieją dwa podejścia do organizacji wiedzy w SI - procesowe i nieprocesowe.
Podejście procesowe wynika z zapotrzebowania wykonania określonych czynność (akcję).
Podejście nieprocesowe wynika z zapotrzebowania na otrzymanie określonych danych.
Nowa technologia informacyjna opiera się na podejściu nieprocesowym - obecność lub nieobecność tych albo innych danych
Model danych jest to cząstkowy przypadek przedstawienia wiedzy, a baza danych jest to sposób przedstawienia bazy wiedzy.
3. Organizacja rozwiązania zadania w SI
Trzy wymagania do organizacji rozwiązania zadania w SI:
Rozwiązanie zadania jest to otrzymanie koniecznej wiedzy zgodnie z zapytaniem użytkownika.
Użytkownikiem może być konsument wiedzy lub programista aplikacji.
Potrzeba w rozwiązaniu podzadania powiązana z brakiem informacji koniecznej dla rozwiązania zadania ogólnego.
Proces rozwiązanie zadania dowolny moment określa się stanem wiedzy w SI.
W tym procesie wiedza proceduralna nie zmienia się, a wiedza deklaratywna zmienia się
Aktywność SI określa się nieodpowiedniością stanu wiedzy bieżącej i potrzebnej.
Na rys. 92 przedstawiono dekompozycje zadania na podzadania i procesu na podprocesy
Zadanie ogólne Proces
Podzadania Podprocesy
Rys. 92 Dekompozycja zadania na podzadania i procesu na podprocesy
Informacyjny system wykonuje dwie podstawowe funkcje:
rozwiązanie pewnego zadania po zamówieniu użytkownika,
formowanie zapytania do komponentów systemu dla otrzymania,
brakującej wiedzy (danych).
Na rys. 93 jest przedstawiona struktura systemu informacyjnego z bazą wiedzy
4. Baza wiedzy
Baza wiedzy jest to środek integracji wszystkich procesów w SI.
Baza wiedzy jest to system składający się z wiedzy deklaratywnej i asocjowanych z niej procedurami, które charakteryzują się:
Jedynymi zasadami przedstawienia danych,
Wspólnym językiem opisania wiedzy,
Wspólnymi metodami manipulowania danymi.
Wiedza w bazie wiedzy jest niezależna od programu obróbki i tworzy system integralny.
Baza wiedzy jest to system wiedzy o pewnej dziedzinie przedmiotowej, która jest częścią świata rzeczywistego. Baza wiedzy musi być pełna dla rozwiązania określonej klasy zadań.
Wymagania do przedstawienia i organizacji wiedzy:
Można sformułować kilka wymagań do przedstawienia i organizacji wiedzy:
zabezpieczenie koniecznej adekwatności odzwierciedlenia,
naturalny sposób opisania środowiska,
możliwość modelowania dowolnych procesów, które zachodzą w danej dziedzinie,
zabezpieczenie koniecznych właściwości języka przedstawienia wiedzy dla całego spektrum zadań,
konieczna efektywność rozwiązania zadań,
uniwersalność i otwartość systemu przedstawienia wiedzy rozwiązania zadań są sprzeczne.
wymagania uniwersalności do różnych typów zadań i wysoka efektywności.
Użytkownicy końcowi
System komunikacyjny
Inteligentny interfejs
Translatory
Poziom konceptualny Mechanizm
Baza wiedzy Poziom logiczny Wnioskowania
Poziom fizyczny
Program
System wykonawczy Środki obliczeniowe,
logiczne
wyszukiwawcze
Rys. 93 Struktura systemu informacyjnego z bazą wiedzy
Trzypoziomowa struktura bazy wiedzy:
poziom konceptualny - ogólny opis dziedziny, niezależność od konkretnych parametrów środowiska fizycznego, przedstawienie meta-wiedzy.
poziom logiczny jest opis dziedziny w postaci obiektów informacyjnych i konkretnych faktów.
poziom fizyczny - charakterystyki systemu operacyjnego.
Języki bazy wiedzy
Istnieją 2 języki dla pracy z bazą wiedzy:
Język przedstawienia wiedzy (knowledge reprezentation language) ,
Język manipulowania wiedzą (knowledge manipulation language).
Każdy z tych języków zawiera:
Syntaksie opisania,
Reguły odpowiedniości językowych slów z odzwierciedlonymi obiektami dziedziny,
Konkretny skład językowych operatorów.
Mechanizm wnioskowania
System wykonawczy jest to zbiór środków technicznych i programowych, potrzebnych do wykonania zadania.
Mechanizm wnioskowania jest element bazy wiedzy, który realizuje właśnie rozwiązanie zadania: analiza warunków, wydzielenie podzadań, połączenie rozwiązań w system jednolity.
System, który zawiera mechanizm wnioskowania, może pracować w trybie interpretacji i kompilacji.
Inteligentny interfejs zawiera środki translacji z językiem użytkownika (oprogramowania) w język manipulowania wiedzą i odwrotnie, oraz środki komunikacji pomiędzy użytkownikiem i bazą wiedzy.
11. Dwa rodzaje wnioskowania
Istnieją dwa rodzaje wnioskowania w systemie ekspertowym:
wnioskowanie do przodu - przegląd od danych wejściowych do celu
Na rys. 94 przedstawiono algorytm wnioskowania do przodu
Na rysunku przyjęte zostały następujące oznaczenia:
A- wybór elementu danych z bazy danych (dane wejściowe),
B - wybór kolejnej reguły,
C -sprawdzianie zgodności warunkowej części reguły,
D - wyciągniecie konkluzji z reguły,
E - wykonanie działania reguły,
F - wprowadzenie zmian w bazie danych.
D
Tak stop
A B C
Nie
E F
Rys. 94 Algorytm wnioskowania do przodu
wnioskowanie od celu do punktu wejściowego
Na rys. 95 jest przedstawiony algorytm wnioskowania wstecz
C
Tak
A B
Nie D
Rys. 95 Algorytm wnioskowania wstecz
Na rysunku przyjęte następujące oznaczenia:
A- Cel,
B -sprawdzenie zgodności celu i konkluzji reguły,
C -warunek reguły,
D -inna reguła.
Nie można określić jaka metoda wnioskowania jest lepiej. W złożonych systemach ekspertowych wykorzystują się obydwie metody równoczesne.
Przykład
Baza wiedzy zawiera dwa wzorce i dwie reguły.
Wzorce: F1:. Zamierzenie-wypoczynek,
F2: Miejsce wypoczynku -góry.
Reguły:
R1 : Jeśli `Zamierzenie-wypoczynek' i
`Droga-wyboista' ,
wtedy `Wykorzystać osła'.
R2: Jeśli `Miejsce wypoczynku -góry'
wtedy `Droga-wyboista'.
Warunek terminalny (warunek stopu) :
T: Wykorzystać osła'.
Wzorce są rozmieszczone w roboczej pamięci.
Mechanizm wnioskowanie jest oparty o używanie reguł.
1. Wnioskowanie do przodu
Porównanie wzorców w warunkowej części reguł i wzorców w roboczej pamięci.
Pierwszy cykl:
R1
(w1=True)
(w2= False),
R2
(w1=True).
Mechanizm wnioskowania otrzyma konkluzję: `Droga-wyboista'.
Ten wzorzec zapisuje się w roboczą pamięć.
Drugi cykl:
R1
(w1=True)
(w2= True).
R2
już było wykorzystane i wyprowadzone z bazy reguł.
Wykonuje się konkluzja reguły R1 `Wykorzystanie osła', który jest warunkiem terminalnym.
2. Wnioskowanie wstecz
Wychodzimy z celu - `Wykorzystanie ośla'.
Wybieramy regułę R1, w konkluzji której znajduje się cel.
Wzorzec F1 `Zamierzenie-wypoczynek' znajduje się w roboczej pamięci.
Trzeba potwierdzić warunkową cześć reguły R1 `Droga-wyboista', która jest nowym celem.
Szukamy regule R2, które potwierdza nowy cel.
Warunkowa cześć reguły R2 `Miejsce wypoczynku -góry' znajduje się w bazie faktów, tj.
F2 `Miejsce wypoczynku -góry'= True.
Więc cel `Wykorzystanie osła' potwierdza się.
Istnieją dwa przypadki stopu systemu przy wnioskowaniu wstecz:
Osiągniecie pierwotnego celu lub
Wyczerpanie reguł dla osiągnięcia celu
W ww. przykładzie na każdym kroku wykorzystuje się tylko jedną regułę i problem z wyborem reguły nie powstaje. Ale w ogólnym przypadku może być kilka reguł, które spełniają zadany warunek.
Rozszerzmy nasz przykład, dodając do bazy reguł, regułę R3.
R3: Jeśli `Zamierzenie-wypoczynek' wtedy `Niepotrzebna szybkość'.
Warunek stopu - pojawienie w roboczej pamięci wzorca ` Wykorzystanie osła'.
1. Wnioskowanie do przodu
Na pierwszym kroku możliwe wykorzystanie dwóch reguł - R2 i R3, więc dwóch wariantów wnioskowania.
1-y wariant: wybieramy R2
(R1+R3).
R1
Warunek stopu (R3 można nie wykonać).
2-y wariant: wybieramy R3
R2.
R2
R1
R1
Warunek stopu.
W war. 2 na jeden krok więcej (3 kroki zamiast dwóch).
Wniosek
Wybór kolejności wykorzystania reguł wpływa na efektywność wnioskowania.
W realnych systemach może to stanowić olbrzymi problem.
Zbiór reguł, które potencjalnie można wykorzystać na jednym kroku algorytmu stanowi konfliktowy zbiór reguł. Wybór jednej reguły z tego zbioru nazywa rozwiązaniem konfliktu.
2. Wnioskowanie wstecz
Dodamy jeszcze jedną regułę R4.
R4: Jeśli `Miejsce wypoczynku - plaża'.
wtedy `Droga-wyboista'.
Dla osiągnięcia celu wybieramy regułę R1.
R1 : Jeśli `Zamierzenie-wypoczynek' i
`Droga-wyboista' ,
wtedy `Wykorzystać osła'.
Warunek 1=True, warunek 2 trzeba potwierdzić.
Ten warunek znajduje się w konkluzji reguł R2 i R4.
Wariant 1: wykonujemy R2 + i od razu można wykonać R1.
Wariant 2: wykonujemy R4, ale takiego wzorca w bazie faktów nie ma i nie ma reguły, któryby jego potwierdził. To oznacza, że wybór R4 był nieudany.
W następnym kroku wykonujemy R2+.
W obydwóch wariantach cel osiągnięty, ale skuteczność jego wyszukiwania jest różna.
12. Logika predykatów i Logika twierdzeń. Wnioskowanie logiczne.
1.Definicja logiki
Logika jest to systemowa metoda twierdzenia. Nauka logiki pochodzi z czasów starożytnych (Arystoteles).
W sztucznej inteligencji istnieją dwa systemy logiki:
Logika bazowa, tzw. rachunek twierdzeń,
Rachunek predykatów, który przedstawia zbiór reguł do operowania z symbolami.
Rachunek twierdzeń jest to zbiór reguł dla określenia prawdziwości lub fałszywości pewnego zbioru twierdzeń.
Twierdzenie jest to zdanie, które może być prawdziwo lub fałszywo.
Twierdzenie może być elementarno (nierozdzielno) lub składowo (formuła).
Twierdzenie składowe może być zbudowane przez związki logiczne typu `I' (koniunkcja) i `LUB” (dyzjunkcja).
Koniunkcja
dwóch twierdzeń =
Dyzjunkcja V dwóch twierdzeń =
Logiczne operacje koniunkcji (
) i dyzjunkcji (V) można uogólnić na dowolną ilość elementarnych twierdzeń.
Istnieje także logiczna operacja negacji (
) :
T=F,
F=T.
Można określić 16 różnych bulowskich operacji o dwóch argumentach.
Tabela 86
A |
B |
A |
A V B |
A |
|
T |
T |
T |
T |
F |
F |
T |
F |
F |
T |
T |
F |
F |
T |
F |
T |
F |
T |
F |
F |
F |
F |
F |
F |
2. Algebra bulowska
Algebra bulowska oparta jest na operacjach logicznych
, V ,
.
Istnieje kilka praw bulowskiej algebry:
1. Prawo komutatywne -przestawienie elementarnych twierdzeń dowolnym sposobem
A V B= B V A, A
B= B
A
2. Prawo asocjatywne- przestawienie nawiasów
A V (B V C)= (A V B) V C,
A
(B
C)= (A
B)
C
(A V B) V (C V D)= A V( B V C) V D.
3. Właściwości operacji koniunkcji
i dyzjunkcji V
A
T = A, A
F = F,
A V F = A, AV T = T,
Prawo A
F = F wspólne z prawem asocjatywnym zawsze doprowadzi do fałszywego operandu dowolnej sekwencji operacji.
Prawo A V F = A wspólne z prawem asocjatywnym zawsze doprowadzi do prawdziwego operandu dowolnej sekwencji operacji.
4. Właściwość negacji
A V
A = F,
A
A = T,
5. Prawo dystrybutywności
A
( B V C) = (A
B) V (
C)
. A V ( B
C) = (A V B) V (A V C)
6. Podwójna negacja
(
A)=A.
7. Prawo de Morgana
(A
B) = (
A ) V (
B)
(A V B) = (
A )
(
B)
Oprócz dwuwartościowej logiki istnieje wielowartościowa logika oraz rozmyta (Fuji) logika .
3. Wnioskowanie logiczne
Reguła produkcyjna
Jeśli…..wtedy…
w algebrze bulowską odpowiada operacja Implikacji
A
, co oznacza A powoduje B.
Z operacji Implikacji A
wynika
Jeśli A= T, wtedy B = T.
Jeśli A = F, wtedy żadnego wniosku o B nie niemożliwe wyciągnąć.
Za pomocą tabeli prawdziwości można udowodnić ekwiwalentność dwóch wyrażeń
A
~ (
A ) V B
Tabela 87
A |
B |
A |
|
( |
T |
T |
T |
F |
T |
T |
F |
F |
F |
F |
F |
T |
T |
T |
T |
F |
F |
T |
T |
T |
Implikacje A
można przetworzyć następujące:
ekwiwalentność : A
= (
A ) V B
komutatywność : (
A ) V B= B V (
A)
negacja : B V (
A) =
(
B) V (
A)
ekwiwalentność :
B
A
Przykład
(Jeśli jest deszcz
Jest urodzaj ) = (Jeśli nie ma urodzaju
nie ma deszcze)
Ale nie prawidłowe twierdzenie: (Jest urodzaj
Jest deszcz)
To oznacza, ze implikacja A
B działa tylko w jedna stronę.
Na podstawie operacji implikacji A
B można sformułować dwie reguły:
reguła modus ponens
Jeśli A = T i A
B , wtedy B = T
reguła tranzytywności
Jeśli A
B i B
C, wtedy A
C
13. Modele reprezentacji wiedzy oparte o logikę predykatów
1. Logika predykatów
Podstawowe pojęcia logiki predykatów są term i predykat.
Predykat P jest to funkcja, która ma tylko dwie wartości
Term może być konstantą, np. twierdzenie ojciec (Adam, Rafał)
lub zmienna predykat ojciec (x, y)
Logika predykatów jest zbudowana z trzech komponentów:
rachunek predykatów pierwszego stopniu,
kilka twierdzeń, przedstawionych w terminach języka RP,
reguły wnioskowania.
Rachunek predykatów jest to manipulowanie twierdzeniami.
Rachunek predykatów pierwszego stopniu jest to zbiór logicznych formuł (LF), które mogą zawierać następujące operatory (p. tabele)
Tabela 88
Symbol |
Znaczenie symbolu |
x, y, z |
Zmienne |
a, b, c |
Konstanty |
f,g,h |
Funkcje |
p,q,r |
Predykaty |
|
Kwantor istnienia |
|
Kwantor uniwersalności |
A |
Operator `I' (koniunkcja) |
A |
Operator `Lub' (dyzjunkcja) |
|
Operator `Nie' (negacja) |
A |
Operator postępowania (implikacja) |
A |
Dwustronna implikacja (warunek `wtedy i tylko wtedy') |
Rozpatrzmy przykłady kilku predykatów
Przykład 1
Rozpatrzmy 3 predykaty:
a) podstawimy w predykatach p(x) = człowiek (x) i q(x) = śmiertelny (x)
term a =Sokrat.
Wtedy otrzymamy trzy twierdzenia:
(człowiek (x)
śmiertelny (x)
człowiek(Sokrat)
śmiertelny (Sokrat)
b) podstawimy w predykaty p(x) = pies (x) i q(x) = ogon (x),
term a = Alma
Wtedy otrzymamy trzy twierdzenia:
(pies (x)
ogon (x)
pies (Alma)
ogon (Alma)
Z tego wynika, że dla logiki predykatów nie ma znaczenia semantyka pojęć
Przykład 2
Rozpatrzmy twierdzenie: każdy człowiek ma ojca.
a) wprowadzamy predykat ojciec (x, y)
= człowiek (x)
ojciec (y)
b) zmienimy porządek dla kwantów uniwersalności
i istnienia
:
= Dla wszystkich ludzi (x)
ojciec (y)
To oznacza, że wszyscy ludzie mają jednego ojca - Boga
Z tego przykłady wynika, że w predykacie ma znaczenie porządek operatorów
c) w predykacje możliwe jest również użycie symboli funkcyjnych
Oznaczmy
= Ojciec x i
= x jest człowiek, wtedy mamy twierdzenie:
Wszystkie stworzenia, których ojcem jest człowiek są ludzi.
Mechanizm interpretacji
Mechanizm interpretacji w logice predykatów jest określony w ramach zadanego paradygmatu i jest oparty o język oprogramowania PROLOG (wnioskowanie dedukcyjne).
Różnica logiki predykatów i reguł produkcyjnych:
pełna niezależność reguł produkcyjnych,
właściwość wiedzy w logice predykatów, jako całości.
Podobieństwo-używanie konstrukcji `Jeśli-Wtedy'.
Obszar używania logiki predykatów :
Inteligentne wydobycie informacji (Data Miting),
Automatyczne sterowanie robotem,
Automatyczne udowodnienie twierdzeń.
Zalety logiki predykatów :
Solidny fundament teoretyczny,
Mocny mechanizm wnioskowania, który można bezpośrednie programować,
Precyzyjność rezultatów,
Giętkość i modułowość bazy wiedzy.
Wady logiki predykatów :
Szybko rośnie czas interpretacji, kiedy zwiększa się objętość wiedzy,
Niemożliwe rozwiązania heurystyczne,
Sztywny mechanizm wnioskowania.
14. Normalizacja w logice predykatów
1. Prefiksna forma normalna
Metoda rezolucji była opracowana przez Robinsona w latach sześćdziesiątych zeszłego stulecia, metoda ta potrzebuje przedstawienia logicznych formuł w postaci tzw. prefiksnej normalnej formy (PNF).
Istnieje kilka przekształceń formuł logicznych w PNF.
Operator implikacji
Usunięcie z formuł logicznych operatorów implikacji typu F
G i F
G
F
G = (F
G)
(G
F)
F
G =
F V G (modus ponens)
W rezultacie w formułach logicznych zostają tylko trzy operatory:
koniunkcji
, dyzjunkcji V i negacji
Prawo asocjatywności
Twierdzenie można wydzielić z predykatu, jeśli nie ma ono relacji z operatorem predykatu
(Qx) F(x) V G= (Qx) (F(x) V G)
(Qx) F(x)
G= (Qx) (F(x)
G)
Operator negacji
Negacja negacji
(
F) = F
Negacja całego wyrażenia (
((
x) F(x)) : dla wszystkich x wykonuje się F(x)
ekwiwalentnie wyrażeniu (
x(
F(x)) : istnieją takie x, ze F(x) nie wykonuje się
((
x) F(x) = (
x(
F(x))
Analogiczne jest następujące przekształcenie
((
x) F(x)) = (
x(
F(x))
5.Prawo de Morgana
Operator negacji można wynosić za symbole predykatów
(F V G) = (
F )
(
G)
(F
G) = (
F ) V (
G)
4.Prawo dystrybutywności
Kwantor
ma właściwość dystrybutywności odpowiedniego operatora koniunkcji
(
x) F(x)
(
x) H(x) =(
x)( F(x)
H(x) )
Analogiczne kwantor
ma właściwość dystrybutywności odpowiedniego operatora dyzjunkcji
(
x) F(x) V (
x) H(x) =(
x)( F(x) V H(x) )
Ostateczny wynik
(
x) F(x) V (
x) H(x) =(
x) (
y) ( ( F(x) V H(y) )
(
x) F(x)
(
x) H(x) =(
x) (
y)( ( F(x)
H( y) )
Przyklad
Rozpatrzmy wyrażenie A
A: (
x) (
y) ( (
z )( F(x,z)
G(y,z) )
(
u) H(x,y,u) )
Przekształcamy wyrażenie A do prefiksnej normalnej formy
Usuniecie implikacji
A: (
x) (
y) (
(
z )( F(x,z)
G(y,z) ) V (
u) H(x, y,u) )
2. Dystrybucja negacji
, przy tym koniunkcja
zmienia się na dyzjunkcję V
A: (
x) (
y) (
z) (
( F(x,z) V
G(y,z) ) V (
u) H(x, y,u) )
3. Wynosimy kwantor (
u )za nawiasy
A: (
x) (
y) (
z) (
u) (
( F(x,z) V
G(y,z) ) V H(x, y,u) )
Przedstawione przekształcenia daje możliwość wyprowadzać w prefiks formuł logicznej kwantory
.
A: (
x) (
y) (
z) (
u) (
( F(x,z) V
G(y,z) ) V H(x, y,u) )
Takie przedstawienie nazywa się prefiksną normalną formą logicznej formuły (PNF)
2. Skolemowska normalna forma
Skolemowska normalna forma daje możliwość usunięcia ww. kwantorów z logicznej formuły, w rezultacie czego w niej zostają tylko operatory koniunkcji
, dyzjunkcji V i negacji
.
Rozpatrzmy przykład
(
x) (
y) Kocha (x,y)
Pomiędzy zmiennymi x i y istnieje relacja funkcyjna: dla każdego x
pewne y.
Z tego powodu zmienną y można zmienić na funkcje f(x) i ww. formułę przedstawić następująco
( (
x) Kocha (x, f(x) )
Taka funkcja, która daje możliwość usunięcia kwantora
z prefiksnej normalnej formy, nazywa się funkcją skolemowską
Ale przy takich przekształceniach trzeba uwzględniać kolejność kwantorów: funkcja
musi włączać argumenty wszystkich poprzednich kwantorów.
Przykład
Rozpatrzmy dwie różne formuły logiczne.
1. Dla wszystkich obiektów `x'
jakiś obiekt `y' taki, że F(x, y, z)=T dla wszystkich z
(
x)(
y)(
z) F (x, y, z)
W formule kwantor (
y) może być wymieniony na argument f(x) w funkcji F (x, f(x), z)
(
x)(
y)(
z) F (x, y, z)
(
x)(
z) F (x, f(x), z)
2. Dla wszystkich możliwych par obiektów (x, z)
jakiś obiekt `y' taki, że F(x, y, z)=T
(
x)(
z) (
y) F (x, y, z)
W tej formule argument y zależy od poprzedzających argumentów x i z , więc w funkcji
F (x, f(x,z), z) kwantor (
y) musi być wymieniony na argument składowy f(x,z)
(
x)(
z) (
y) F (x, y, z)
(
x)(
z) F (x, f(x,z), z)
Rezultat
Zmienne, połączone w formule logicznej kwantorom (
y) można wymienić na skolemowską funkcję od wszystkich zmiennych połączonych kwantorom (
x)(
z), które znajdują się po lewej od niej.
(
x)(
z) (
y) F (x, y, z)
(
x)(
z) F (x, f(x,z), z)
Jeśli zmienna, połączona w formule logicznej kwantorem (
y) najbardziej lewa, to można wymienić ją na funkcję F (x, z) bez argumentu y , tj. konstantę
(
y) (
x)(
z) F (x, y, z)
F (x, z)
Przykład
Przedłużymy przykład r.7.3.1, w którym otrzymaliśmy formułę logiczną w prefiksnej normalnej formie
A: (
x) (
y) (
z) (
u) (
( F(x,z) V
G(y,z) ) V H(x, y,u) )
Zmienna u jest sama prawa, więc zależy ona od wszystkich poprzedzających zmiennych
A: (
x) (
y) (
z) (
( F(x,z) V
G(y,z) ) V H(x, y, f(x, y, z) )
W rezultacie w formule zostały tylko zmienne (x, y, z) , które połączone są kwantorom uniwersalności
. Teraz już nie trzeba ograniczać zestawczą się część formuły logicznej jakiś relacjami zmiennych, tj. można usunąć kwantory
.
A: (
( F(x,z) V
G(y,z) ) V H(x, y, f(x, y, z) )
Ostateczny wzór bez prefiksu nazywa się skolemowską normalną formą.
3. Klauzalna (dizjunkcyjna) normalna forma
Następnym etapem przekształcenia logicznej formuły jest przejście do klauzalną formy (od angielskiego clause = zdanie).
Celem tego etapu jest usunięcie wielu-wartościowości semantycznej interpretacji jednej formuły.
Przykład
Rozpatrzmy następującą formułę logiczną
F(x, f(x))
(G(x, z) V H(f(x), z))
W tej formule można zastosować prawo dystrybutywności po operacji koniunkcji
(A
B) V (A
C) = A
(B V C)
Z tego prawa wynika
F(x, f(x))
(G(x, z) V H(f(x), z))
( F(x, f(x))
(G(x, z)) V ( F(x, f(x))
( H(f(x), z))
Semantyka formuły została ta sama, ale mamy do czynienia z dwoma różnymi przedstawieniami. Dla mechanizmu wnioskowania to bardzo trudna sytuacja, którą trzeba rozwiązać.
Istnieje jeszcze kilka alternatyw, które tworzą niejednoznaczność.
Niżej podano kilka takich przypadków:
a). Prawo dystrybutywności po dyzjunkcji
(A V B)
(A V C) = A V (B
C)
b). Prawo de Morgana
(A
B) = (
A ) V (
B)
(A V B) = (
A )
(
B)
c). Modus ponens
(A
B) V B = A
B
Klauzalna forma daje możliwość usunięcia wieleznaczność przedstawienia formuły logicznej. To znaczy, że jednakowa semantyka będzie wyrażona tą samą formułą, co jest bardzo poważne dla wnioskowania komputerowego.
Klauzalna forma wywodzi się ze skolemowskej formy . Pod klauzą rozumie się część logicznej formuły, która ograniczona nawiasami ( …..).
Przykład
Rozpatrzmy logiczną formułę
(
x) (
y) (
z) F (x, y) V G(z)
(
x) (
u) F (x, z) V H(u)
Używając prawa dystrybutywności koniunkcji
otrzymamy
(F (x, f(x)) V G(z))
( F (x, z) V H(u(x))
A B
Ale zakres działania zmiennych w danej formule jest ograniczony predykatami A i B .
Z tego powodu formułę można rozdzielić na dwie klauzy
(F (x, f(x)) V G(z))
( F (x, z) V H(u(x))
Dla tego formuła, zadana w klauzalną formę może być podzielona na odrębne klauzy bez straty semantyki . Zbiór tych klauz nazywa się zbiorem klauzalnym.
Jeden zbiór kauzalny może być połączony z drugim zbiorem kauzalnym. Nawet jeśli te same zmienne wchodzą w różne klauzy, pomiędzy nimi nie ma połączenia.
W ogólnym przypadku kauzalna forma wygląda następująco:
A: (
F1 V
F2 V
F3…………. V
Fk) V (G1 V G2 V G3………….. V Gl)
W zależności od wartości indeksów k i l kauzalne formy można klasyfikować na następujące typy:
1. Jednostkowy predykat k=0, l=1
A: V (G1)
Używając prawidła modus ponens A
~ (
A ) V B
ten predykat może być zapisany w postaci
G (t1, t2, t3………….. Tm), gdzie
(t1, t2, t3………….. Tm) - termy.
Jeśli wszystkie ti -konstanty, wtedy będą one ekwiwalentne faktom, przechowanym w bazie danych.
Jeśli wszystkie ti -zmienne, wtedy będą one ekwiwalentne grupie faktów.
Przykład
Wszystko leci, wszystko zmienia się (x) ~
leci zmienia się (x)
2.Opisanie zapytania k
0, l=0
A: (
F1 V
F2 V
F3…………. V
Fk)
Używając prawidła modus ponens (
A ) V B ~ A
B
ten predykat może być zapisany w postaci
A: (F1
F2
F3
………….
Fk)
Odpowiedź na zapytanie realizuje się w postaci procedury udowodnienia, dla którego wykorzystuje się metodę `od przeciwnego', tj. formułuje się negacja zapytania i udowodnia się, że negacja nie wykonuje się.
3. Reguła w formie `Jeśli-Wtedy' k
0, l=1
A: (
F1 V
F2 V
F3…………. V
Fk) V (G)
Używając prawidło modus ponens (
A ) V B ~ A
B
ten predykat może być zapisany w postaci
A: (F1
F2
F3
………….
Fk)
G
4. Przedstawienie faktów rozmytych ' k=0, l >1
A:
(G1 V G2 V G3………….. V Gl)
Formuła ma niepełną informację w tym sensie, że nie jest możliwe określenie, który z faktów
(G1 G2 G3………….. Gl)
jest prawdą.
5. Najbardziej ogólny predykat k
1, l
1
Przykład
Rodzice (x,y)
ojcec (x,y) V matka (x,y)
Uwaga. W klauzalnej normalnej formie wśród wszystkich wymienionych typów klauz dopuszczalne są klauzy typu 1-3 i zabronione klauzy typu 4-5
15. Wnioskowanie oparte o metodą rezolucji
1. Metoda rezolucji
Metoda rezolucji opracowana była przez Robinsona w roku ...? Udowodnieniem w metodzie rezolucji nazywa się wyprowadzenie pewnego rezultatu w postaci formuły logicznej ze zbioru aksjomatów.
Oznaczmy
= A1, A2,……..An - wejściowy zbiór aksjomatów ,
B jest rezultat, który trzeba wyprowadzić ze zbioru aksjomatów.
Aksjomaty i rezultat są zadane w postaci logicznych formuł, przedstawionych w prefiksną normalną formię.
Trzeba udowodnić, że przy spełnieniu wszystkich aksjomatów (A1, A2,……..An ) spełnia się rezultat (konkluzja) B, tj.
(A1
A2
,…….
An )
B
Dowód można zapisać w formie prostej
( (A1
A2
,…….
An )
B ) = T (1)
Lub w sposób od `przeciwnego'
( ( A1
A2
,…….
An )
B ) = F (2)
W rozdziale 3.3 pokazano, że formułę (2) można przekształcić w klauzalną formę
S= C1
C2
…….
Cn
Klauzalna forma składa się ze zbioru klauz Ci, i=1,2,….n, połączonych sobą operatorem koniunkcji
.
Każda klauza przedstawiona w skolemowskej normalnej formie, która przedstawia zbiór zdań, połączonych operatorem dyzjunkcji V .
Ci = Pi1 V Pi2 V……. V Pim
Z tego powodu skolemowską normalną formę często nazywa się formą dysjunkcyjną.
Warunkiem fałszywości (False) zbioru klauz
S= C1
C2
…….
Cn = F
jest fałszywość (jak minimum) jednej klauzy Ci.=F
Warunkiem fałszywości jednej klauzy
Ci = Pi1 V Pi2 V……. V Pim =F
jest fałszywość lub brak zdań w zbiorze
{Pi} = {Pi1 Pi2……. Pim }= Ø
W tym przypadku wejściowa formuła logiczna
( (A1
A2
,…….
An )
B ) = T
jest prawdziwa, co oznacza, że rezultat B wnioskuje się ze zbioru aksjomatów
= A1, A2,……..An,
i dowód jest wywiedziony,
(A1
A2
,…….
An )
B
2.Formułowanie metody rezolucji
Jeśli wejściową hipotezę (
B) , wziętą ze znakiem
( ( A1
A2
,…….
An )
B )
uda się doprowadzić do kauzalnej normalnej formy
S= C1
C2
…….
Cn
i chociażby jedna z klauz zbioru {C} jest fałszywa
Ci.=F
to hipoteza została udowodniona
(A1
A2
,…….
An )
B.
3.Pojęcie resolwenty
Predykat, który nie zawiera zmiennych, a tylko konstanty nazywa się twierdzeniem.
Niech wszystkie klauzy Ci w kauzalnej normalnej formie S są twierdzeniami.
Każde twierdzenie to zbiór elementarnych zdań (tzw. literałów) , połączonych operatorem dyzjunkcji V
Ci = Li1 V Li2 V……. V Lim
Niech wśród nich są dwa twierdzenia Ci i Cj , które zawierają dwa wzajemnie przeciwne literały. Takie literały różnią się istnieniem symbolu negacji
u jednego z nich, i brakiem tego symbolu u drugiego.
Ci = Li1 V Li2 V……. V Lim V L
Cj = Lj1 V Lj2 V……. V Ljn V
L
Resolwentą R dwóch takich twierdzeń Ci i Cj nazywa się ich dysjunkcyjne połączenie bez przeciwnych literałów L i
L.
R= (Ci \ L) V (Cj \
L) =
=(Li1 V Li2 V……. V Lim) V (Lj1 V Lj2 V……. V Ljn)
Resolwenta R jest to konkluzja logiczna z twierdzeń Ci i Cj
Ci V Cj
R .
To znaczy, że dodawanie resolwenty R do zbioru S w żaden sposób nie wpływa na konkluzję dotyczącą prawdziwości lub fałszywości formuły S.
Proces dysjunkcyjnego połączenia resolwenty R z innymi klauzami Ci może być przedłużony, dopóki w zbiorze {C} nie pojawią się dwie przeciwstawne klauzy,
Ci = L, Cj
L,
resolwenta których R = L V
L = Ø.
Taka pusta resolwenta jest logiczną konkluzją z klauzalnej normalnej formy
S= ( C1
C2
…….
Cn )
R = Ø.
Zatem wejściową logiczna formuła
( ( A1
A2
,…….
An )
B ) = F
Przykład 1
Niech w procesie przekształcenia hipotezy (
B) otrzymamy klauzalną normalną formę
S= ( C1
C2
C3
C4
C5)
i następujący zbiór klauz
(1) C1=
P V
Q V
R
(2) C2=
P V
Q V S
(3) C3=P
(4) C4=
S
(5) C5 = Q
Z przedstawionego zbioru widać, że klauzy C2 i C3 zawierają dwa przeciwne literały P i
P.
Więc formujmy ich resolwentę
(6) C6= R =
Q V S
Teraz klauzy C4 i C6 zawierają dwa przeciwne literały S i
S. Ich resolwenta
(7) C7= R =
Q
Teraz klauzy C5 i C7 zawierają dwa przeciwne literały Q i
Q. Ich resolwenta
(7) C8= R = Ø
Proces rezolucji można przedstawić w formie graficznej, tzw. drzewa dedukcyjnego (rys. 98)
C2=
P V
Q V S C3=P
C6= R =
Q V S C4=
S
C7= R =
Q C5 = Q
C8= Ø
Rys. 98 Drzewo dedukcyjne
4. Prawidło podstawienia
W ogólnym przypadku predykaty zawierają zmienne, a nie tylko konstanty. Więc procedura rezolucji jest bardziej skomplikowana. W takich predykatach zamiast zmiennych muszą być podstawione konstanty i prowadzona unifikacja.
Rozpatrzmy dwa predykaty L(x) i L(a). Pierwszy z nich zawiera zmienną x, natomiast drugi zawiera konstantę a i jest twierdzeniem. Podstawienie konstanty a zamiast zmiennej x nazywamy unifikacją i oznaczamy symbolem {a / x}. Dla kilku podstawień używamy symbol
{a1 / x1, a2 / x2,………….. an / xn} .
Zatem w procedurze rezolucji muszą być stworzone dodatkowe literały za pomocą operacji podstawienia
( L(x) ,
L(a))
{a / x}
( L(a) ,
L(a) )
Przykład 2
Zadane 5 predykatów:
Szpieg Szp (x)
Przyjechał Prz (x)
Dyplomata Dyp (x)
Policjant Pol (y)
(y) szuka (x) Posz (y,x)
i 4 formuły, powiązujące predykaty
1. Policja poszukuje wszystkich, którzy przyjechali do kraju, z wyjątkiem dyplomatów
A1:
2. Szpieg wjechał do kraju, lecz rozpoznać osobę szpiega, może tylko szpieg
A2:
3. Szpieg nie jest dyplomatą
A3:
4. Hipoteza: Wśród policjantów jest szpieg
A4:
Przetwarzanie wzorów (predykatnych formuł)
Formuła A1:
a) Wykluczamy implikację
b) Wykorzystujemy regułę de-Morgana
,
c) Formujemy prefiksną cześć
d) Wykorzystujemy regułę dystrybutywności po
e) Eliminujemy kwantor
g) Eliminujemy kwantor
f) Przechodzimy do kauzalnej formy
Wynik przetwarzania
1.
2.
Formuła A2:
a) Wynosimy kwantor
za nawiasy
b) Wykluczamy implikację
c) zrobimy podstawienie
d) Eliminujemy kwantor
Przywodzimy do kauzalnej formy
Wynik przetwarzania
3.
4.
5.
Formuła A3:
a) Wykluczamy implikację
b) Eliminujemy kwantor
Wynik przetwarzania
6
Hipoteza H
a) Przewodzimy hipotezę w negatywną formę
b) Wykorzystamy regułę De-Morgana
c) Eliminujemy kwantor
Wynik przetwarzania
7.
Zatem formuły ( 1) - (7) przekształcone będą w kauzalną, normalną formę
S= ( C1
C2
C3
C4
C5
C6
C7 )
R = Ø.
To ekwiwalentne stwierdzeniu
(
(A1
A2
A3 )
B) = F
Proces rezolucji można przedstawić w formie drzewa dedukcyjnego (rys. 99.)
Niżej wymieniono wszystkie wejściowe klauzy i ich resolwenty
(1)
Prz (x) V Dyp (x) V Posz (f(x),x)
(2)
Prz (x) V Dyp (x) V Pol (f(x)
(3) Szp (a)
(4) Prz (a)
(5)
Posz (a,b) V Szp (b)
(6)
Szp (x) V Dyp (x)
(7)
Szp (x) V Pol (x)
(8)
Dyp (a) Podstawienie {a / x} R= C(3)
C(6)
(9) Dyp (a) V Pol (f(a) Podstawienie {a / x} R= C(2)
C(4)
(10) Pol (f(a) Podstawienie {a / x} R= C(8)
C(9)
(11) Dyp (a) V Posz (f(a), a) Podstawienie {a / x} R= C(1)
C(4)
(12) Posz (f(a), a) Podstawienie {a / x} R= C(8)
C(11)
(13) Szp (a) Podstawienie {a / x} R= C(12)
C(5)
(14)
Pol (a) Podstawienie {f(a) /y} R= C(13)
C(7)
(15) Ø Podstawienie {f(a / x} R= C(10)
C(14)
(1) (2) (3) (4) (5) (6) (7)
(11) (9) (8)
(10) (12)
(13)
(14)
(15)
Rys 99 Drzewo dedukcyjne
16.Modele reprezentacji wiedzy w postaci sieci semantyczne
1.Definicja sieci semantycznej
Sieci semantyczne pochodzą z modeli i struktury długoterminowej pamięci w psychologii oraz semiotyki.
Psychologia bada zasady zachowania i nauczania człowieka, mechanizmy pamięci człowieka. Semiotyka jest to nauka o symbolach i znakach, która bada modele rozumienia sensu słów.
W semantyce można wydzielić dwie rożne warstwy funkcyjne, którym odpowiadają dwa typy relacji :
Semantyka jest to określenie relacji pomiędzy symbolami i obiektami, które przedstawiono za pomocą symbolami.
Pragmatyka to st określenie relacji pomiędzy symbolami i twórcami (lub użytkownikami) tych symboli
Na rys. 100 pokazano przykład sieci semantycznej
Dostawca Projekt
Oplata
Zamówienie Dostawa
Data Artykuł Czas
Ilość
Rys. 100 Przykład sieci semantycznej
Każdemu obiektowi i każdej relacji można nadać sens semantyczny.
Sieć semantyczna jest pojęciową strukturą dziedziny przedmiotowej.
Sieć semantyczna łączy encje, pojęcia i atrybuty pojęć.
Zalety sieci semantycznych:
uniwersalność modeli reprezentacji wiedzy,
możliwość interpretacji głębinowej struktury wiedzy.
Wady sieci semantycznych:
złożoność procedury wnioskowania,
trudności wprowadzenia zmian.
Rodzaje sieci semantycznych
Typy relacji sieci semantycznych można klasyfikować na:
Sieci jednorodne - zawierają jedyny typ relacji
Sieci niejednorodne - zawierają różne typy relacji
Po -arnosci relacji sieci semantyczne można klasyfikować na:
Sieci binarne - każda relacja w sieci semantycznej łączy tylko dwa obiekty
Sieci n-arne - każda relacja w sieci semantycznej łączy n obiektów.
Istnieje około 200 różnych typów relacji , z których można wydzielić dwa najważniejsze:
Uogólnienie (is a = a kind of)
Dokonując uogólnienia, zaliczamy zbiór konkretów lub typów do jednego, konkretnego typu. Uogólnienie, prowadzące od konkretu do typu, jest zazwyczaj odróżniane od uogólnienia kilku typów w jeden. Pierwszy proces nazywamy klasyfikacją, drugi - uogólnieniem. Konkretyzacja jest procesem odwrotnym do klasyfikacji, a uszczegółowienie - dla uogólnienia.
Używając uogólnienia, kładziemy nacisk na podobieństwa obiektów, a abstrahujemy od ich różnic. Strzałki na rys. 101 pokazują kierunek uogólnienia
Agregacja (a part of)
Agregacja jest abstrakcją pozwalającą tworzyć obiekt z jego obiektów składowych.
Agregacją można się posługiwać na poziomie zarówno konkretów, jak i typów (rys. 101)
Relacja uogólnienia Relacja agregacji
Uogólnienie Agregacja
Rys. 101 Relacje typu uogólnienia i agregacji
Własności typu (np. nazwisko) są własnościami definiującymi (intensjonalnymi).
Cechy konkretu (np. Osoba) są faktyczne i będą nazywane cechami ekstensjonalnymi.
Dzięki agregacji stopniowo uwidacznia się struktura obiektu i sposób, w jaki jego pojedyncze składowe są powiązane zarówno z nim samym, jak i między sobą.
Uogólnienie i agregacja wiąże się z pojęciami PART_OF (jest częścią) oraz IS_A (jest) z zakresu sztucznej inteligencji
Pojęcie PART_OF wyraża fakt, że pewien typ obiektu jest agregatem innych typów
(np. Nazwisko PART_OF Pracownik)
Pojęcie IS_A mówi, że pewien typ obiektów jest uogólnieniem innego typu obiektów
(Pracownik IS_A Osoba)
Intensjonal Ekstensjonal
Rys. 102 Abstrakcja typu osoba
17.Modele reprezentacji wiedzy oparte o ramy
1.Definicja ramy
Teoria ram - Minski M. A framework for representing knowledge, 1975.
Ramowa struktura wiedzy jest hierarchiczną strukturą relacji typu `abstrakcyjne-konkretne'.
Rama (ang. frame) jest jednostką reprezentacji wiedzy, struktura która była zapamiętana w przeszłości, a szczegóły (detale) muszą być wprowadzone zgodnie z bieżącej sytuacją.
Każda rama opisuje pewny obiekt informacyjny w postaci sieci. Na górnym poziomie sieci znajduje się fakt, dotyczący stanu obiektu, na dolnym poziome - zbiór terminalnych slotów , które wypełniają się konkretnymi faktami. Slot może być wypełniony przez użytkowników systemu lub może być obliczony wg wartościom innych slotów. Ramy powiązane pomiędzy sobą kauzalnymi związkami.
Struktura ramy
Nazwa ramy (pojecie) A1
B
Sloty, które identyfikują bazowe B
strukturalne elementy pojęcia ---
B
A2
Slot może zawierać konkretną wartość lub nazwę innej ramy. (A2 ). Podobnie sieciom semantycznym w ramowej strukturze organizuje się hierarchia dziedziczenia.
Istnieje trzy kilka rodzajów wypełnienia slota:
Konstanta,
Agregat (np. data: dzień, miesiąc, rok),
Interwal (zakres),
Procedura,
Imię innej ramy.
Procedura przewiduje wbudowanie w strukturę ramy określonego programu.
Oprócz slotów każda rama może zawierać dodatkową informację, która dotyczy sposobów zarządzania ramami.Zbiór ram w określonej dziedzinie tworze sieć.
Scenariusze są to ramo-podobne struktury, które odzwierciedlą stereotypową kolejność zdarzeń (np. kolejność działań operatora na maszynie drukującej). Scenariusze są to rodzaje obiektowo-orientowanych programów.Ramy realizuje się bez problemu w języku LISP
2. Podstawowe właściwości Ram
Istnieją dwa sposoby przedstawienia ram:
a) Tablica atrybutów (slotów) ramy
Tabela 89
Nazwa ramy
Nazwa slotu Wartość slotu
Lokalna siec semantyczna (rys. 103)
Zaikin Wykład Godz.
Wykładowca 10-12 32 Ilość studentów
WEiMM Przedmiot Sala MM Wyposażenie
BMW 3 Piętro
Rys. 103. Lokalna sieć semantyczna
1. Hierarchiczność struktury
Rama górnego poziomu - korzeń drzewa hierarchicznego.
Rama dolnego poziomu - liści drzewa hierarchicznego.
2. Dziedziczenie właściwości
Daje możliwość zmniejszyć dublowanie informacji.
Usuniecie sprzecznej wiedzy.
Relacje „abstrakcyjne- konkretne' (Rys. 104)
Relacje typu `A kind of `(AKO), `An instance of' ( AIO)
Is a
Rys. 104 Relacje „Abstrakcyjne- Konkretne'
Na górnym poziomie - koncepty (obiekty abstrakcyjne)
Na dolnym poziomie - konkrety (egzemplarze obiektu)
Atrybuty obiektów znajdujących się na dolnych poziomach dziedziczą wartości atrybutów znajdujących się na górnych poziomach.
Relacja typu `A part of' nie da możliwości dziedziczenia atrybutów
4. Wskaźniki odmienności
5. Wartość po domyśleniu
3. Struktura modelu reprezentacji wiedzy
Model ramowy jest to obiektowo-orientowany model reprezentacji wiedzy.
Struktura danych ramy
Tabela 90
Nazwa ramy
Nazwa slotu |
Wskaźnik dziedziczenia |
Wskaźnik typu danych |
Wartość slotu |
Demon |
Slot 1 |
|
Tekstowe dane |
|
|
Slot 2 |
|
Liczbowe dane |
|
|
Slot 3 |
|
Symboliczne dane |
|
|
Slot 4 |
|
Wskaźnik na podłączoną procedurę |
|
|
<Nazwa Ramy> - unikatowy identyfikator, przyswajany danej ramie
<Nazwa slotu> - unikatowy identyfikator, przyswajany danemu slotu
Rama zawiera dowolną liczbę slotów, które można rozdzielić na dwa typu:
Sloty systemowe
Sloty użytkowników
Sloty systemowe:
<Is a> - wskazuje na rodzicielską ramę (w polu `Wartość slotu')
<Desendants> - wskazuje na filialną ramę (lista wskaźników)
<Created> - slot dla wprowadzenia imieniu użytkownika
<Definedon> - data określenia
<Comment> - komentarz
<Wskaźnik dziedziczenia> - wprowadzony tylko w systemach hierarchicznych typu „abstrakcyjne - konkretne'
Typowe wskaźniki dziedziczenia
Unikatowy (Unic) - każdy slot może mieć wartość unikatową
Ten samy (Same) - wszystkie sloty mają tę samą wartość
Ustalenie granic (Range) wartości slotów poziomu dolnego znajdują się w granicach wskazanych w slocie gornego poziomu
Ignorowanie (Override) - ustalenie po domyśleniu
<Wskaźnik typu danych> - podstawowe typy danych:
Frame ( wskaźnik), Integer, Real, Bool
Text, List, Table
Expression
<Wartość slotu> - odpowiada typowi danych + warunek dziedziczenia
4. Wnioskowanie w systemu ramowym
Wnioskowanie w ramowym systemie realizuje się za pomocą wymiany komunikatów pomiędzy ramami. Każdej ramie w hierarchicznym systemie ramowym odpowiada zadane określona funkcja i realizuje się uzgodnione rozwiązanie problemu w zadanym zakresie funkcji.
Na górnym poziomie hierarchii znajduje się rama korzeniowa (rys. 105).
Root Frame
Frame of Class
Frame of Concept
Frame of Heritage
Rys. 105 Hierarchiczny system ramowy
Wejściowa sytuacja opisuje się jako rama, dalej -wyszukiwanie podobnej ramy zaczyna się od poziomu górnego. W każdej ramie istnieją prawidła przejścia do następnej ramy.
Istnieją dwa rodzaje wnioskowania w ramowym systemie.
Do nich odnosi się wnioskowanie za pomocą:
Dziedziczenia,
Przyłączonych procedur (demona).
Mechanizm dziedziczenia daje możliwość oszczędzania pamięci komputerowej, zmniejszania pracochłonności programowania, uproszczania zarządzania systemami z bazami wiedzy.
Demon jest to rodzaj podłączonej procedury, tj. programu, napisanej w języku LISP. Program uruchomia się z komunikatu, przekazanemu z innej ramy.
< Demon > jest to specyficzna funkcja ramy. Jeśli w slot podstawia się pewna wartość, wprowadzona przez program lub w trybie dialogu, wtedy automatyczne uruchomia się procedurę.
Trzy typu demonów:
if indeed
jeśli wartość slotu nie jest ustalona
if added
przy podstawieniu w slot wartości
if removed
przy eliminacji wartości
Przykład
Inteligentne planowanie konferencji
Konferencja
Rodzaj konferencji
Konferencja na temat problemów komercyjnych. Konferencja na temat rozwoju
Czwarta konferencja dotycząca problemów komercyjnych
Demon If needed z nazwa `Referent' automatyczne generuje zapytanie `Kto występuje' Odpowiedz, ww. zapytania przekazuje się w slot `Referent' jako jego wartość.
Demon If added z nazwa `Rezerwacja' automatycznie uruchomi się przy podstawieniu w slot wartości `sala konferencyjna'.
LISP proc rezerwacja (nazwa konferencji, miejsce prowadzenia, data):
If możliwe (miejsce prowadzenia, data),
Then rezerwować (nazwa konferencji, miejsce prowadzenia, data),
Else informować (nazwa konferencji, rezerwacja niemożliwa).
18. Podobieństwo i odmienność modeli reprezentacji wiedzy
Systemy regulowe
Zalety systemu regulowego:
Empiryczność reprezentowanej wiedzy (dość tylko doświadczenia),
Naturalność- przezroczysty proces wnioskowania,
Jednostajny sposób reprezentacji wiedzy różnej natury,
Podobieństwo z tradycyjnym schematem wspomagania decyzji,
Naturalność akumulacji i korekty wiedzy,
Możliwość wykorzystania niepełnych albo niepewnych danych.
Wady systemu regulowego:
Pracochłonność formułowania zadań - tylko proste, jednorodne zadania,
Brak możliwości reprezentowania głębszej wiedzy - proces interpretacji wiedzy leży na użytkowniku,
Wolność działania (do setki reguł) - gwałtowne obniżenie efektywności systemu dla niejednorodnych zadań,
Mała (marna) obserwowalność związków pomiędzy danymi przy dużej liczbie reguł.
2. Logika predykatów
Zalety MRW, opartej o logikę predykatów :
Właściwość integralności - wysoki poziom modułowości wiedzy przy równoczesnym przedstawienia wiedzy jako jednej całości,
Łatwość wykrycia i usunięcia sprzeczności,
Precyzyjność rezultatów,
Istnienie silnej bazy teoretycznej,
Giętkość (Flexibility) modeli RW,
Wady systemu opartego o logikę predykatów :
Nadmierny poziom formalizacji przedstawienia wiedzy,
Mała wydajność przetwarzania wiedzy,
Niemożliwość wykorzystania wiedzy empirycznej.
3 Sieci semantyczne
Zalety MRW, opartej o sieci semantyczne :
Poglądowy sposób przedstawienia wiedzy, podobny do realnych struktur pamięci człowieka (pamięć asocjatywna),
Uniwersalność MRW i możliwość interpretacji głębinowej struktury wiedzy,
Otwartość i prostota akumulacji wiedzy.
Wady sieci semantycznych:
Niewielki krąg rozwiązywanych problemów,
Złożoność mechanizmu interpretacji wiedzy,
Potrzeba w specjalnych algorytmach wnioskowania - dla każdego konkretnego zadania potrzebne własne reguły wnioskowania,
Trudności usunięcia sprzeczności i wprowadzenia zmian.
4 Ramowe modele reprezentacji wiedzy
Zalety MRW, opartej o ramy:
Szybkość rozważań - semantyczną jednostką MRW jest rama, szybki i prosty wybór ramy,
Możliwość wykorzystania niepełnych albo niepewnych danych,
Wysoka strukturalność i proceduralność przetwarzania wiedzy- system ramowy jest poszerzenie konwencjonalnego systemu proceduralnego typu,
Wysoki stopień swobody opisu wiedzy.
Wady ramowego systemu wiedzy
Ramowe MRW wygodne jest tylko dla zadań niedużej skali - w złożonych problemach, relacje pomiędzy ramami, stają się bardzo skomplikowane,
Trudność opisu i gwałtowne obniżenie efektywności systemu dla złożonych zadań,
Nieelastyczność i trudność modyfikacji górnych poziomów ramowej struktury wiedzy.
5 Scenariusze i tablica ogłoszeń
Każdy z ww. modeli reprezentacji wiedzy umożliwia akumulacje, przechowanie i obróbkę
jednakowej wiedzy.
Ale często jeden globalny problem generuje się z kilku częściowych zadań, które potrzebują
różnych sposobów reprezentacji wiedzy. Rezultat rozwiązania jednego zadania inicjuje
uruchomienie innego zadania.
Przykład
Problem rozpoznania mowy Hearsy-II (rys. 106)
Interfejs bazy danych
Źródło wiedzy 6
Poziom zdań
Źródło wiedzy 5
Poziom sekwencji slow
Źródło wiedzy 4
Poziom slow
Źródło wiedzy 3
Poziom morfem
Źródło wiedzy 2
Poziom segmentów
Źródło wiedzy 1
Poziom parametrów
Monitor tablicy
ogłoszeń
Planowanie Odebranie sygnału
z detektora
Rys. 106 Siedem hierarchicznych poziomów reprezentacji wiedzy
Wiedza ze wszystkich poziomów integruje się w jednolitej roboczej pamięci (tablica ogłoszeń).
Każde źródło wiedzy jest to system reglowy.
Kolejne przetwarzanie wiedzy od jednego poziomu do następującego.
Na kolejnym poziome formułuje się hipoteza.
Przy pozytywnym zakończeniu zadania górnego poziomu hipoteza poziomu podwładnego liczy się wiarygodnej.
2 typu wnioskowania - Top-Down i Down-Top.
6. Programy aplikacyjne
Programy aplikacyjne można interpretować jako model reprezentacji wiedzy.
Elementy modelu:
Struktura danych
Wbudowany w program mechanizm interpretacji
Jednorazowo uruchomiony program rozwoje się nieuniknione, co jest wadą takiego sposobu reprezentacji wiedzy.
7. Charakterystyka porównawcza modeli przedstawienia wiedzy
Tabela 91
|
System regulowy |
Sieci semantyczne |
Ramy |
Logika predykatów |
Tablica ogłoszeń |
Programy aplikacyjne |
Deklaratywność przedst. wiedzy |
3 |
3 |
3 |
3 |
3 |
1 |
Proceduralność przedst. wiedzy |
2 |
1 |
3 |
1 |
3 |
3 |
Naturalność przedst. wiedzy dla uzytk |
3 |
2 |
3 |
1 |
3 |
2 |
Giętkość struktury (reprez.meta-wiedzy) |
3 |
2 |
3 |
2 |
3 |
3 |
Integralność reprezentacji wiedzy |
2 |
2 |
3 |
1 |
3 |
3 |
Rozmiar jednostki wiedzy |
Średnia |
Miała |
Duża |
Miała |
Duża |
Duża |
Możliwość objaśnienia |
3 |
2 |
1 |
2 |
1 |
1 |
Prostota używ. przez ekspertów |
3 |
2 |
1 |
2 |
2 |
1 |
Modułowość |
3 |
3 |
2 |
3 |
2 |
1 |
Otwartość (łatwość poszerzenia wiedzy) |
3 |
3 |
2 |
3 |
2 |
1 |
Szybkość /Czasochłonność |
2 |
1 |
2 |
1 |
2 |
3 |
Fundamentalność (Teoretyczna baza) |
2 |
3 |
1 |
3 |
1 |
2 |
Ocena sumaryczna
|
17 |
15 |
16 |
14 |
16 |
12 |
Oceny: 1 - Niska, 2- Dostateczna, 3- Dobra
duża
mała
C
B
A
2
1
W2
W2
W2
W1
W1
kolor
grafika
tekst
Data |
|
Miejcie prowadzenia |
|
Temat |
|
Referaty |
|
Data |
|
Miejsce prowadzenia |
|
Temat |
Handel |
Referaty |
|
Cel |
Handel elektroniczny |
Data |
|
Miejsce prowadzenia |
|
Temat |
Innowacje |
Referaty |
|
Cel |
Zagospodarowanie budżetu |
Nazwa slotu |
Wartość slotu |
If needed |
If added |
If removed |
Data |
06.03.2008 |
|
|
|
Miejsce prowadzenia |
Sala konferencyjna |
|
Rezerwacja |
|
Temat |
Sieci handlowe |
|
|
|
Referaty |
Mado Tanaka |
Referent |
|
|
Cel |
Handel internetowy |
|
|
|