Elementarne niemieckie minimum leksykalne dla Polaków (Marcin Perliński)
Część 1: Wstęp Systemy elementarne dokładne · Antoni Niederliński Uniwersytet Ekonomiczny w...
Transcript of Część 1: Wstęp Systemy elementarne dokładne · Antoni Niederliński Uniwersytet Ekonomiczny w...
Antoni Antoni NiederliNiederlińńskiski
Uniwersytet EkonomicznyUniwersytet Ekonomiczny
w Katowicachw Katowicach
[email protected]@ue.katowice. . plpl
[email protected]@gmail.com
REGUREGUŁŁOWOOWO--MODELOWE SKORUPOWE MODELOWE SKORUPOWE SYSTEMY EKSPERTOWESYSTEMY EKSPERTOWE
Część
1: Wstęp
Systemy elementarne dokładne
Rok ak. 2016/2017
REGUREGUŁŁOWOOWO--MODELOWE SKORUPOWE MODELOWE SKORUPOWE SYSTEMY EKSPERTOWESYSTEMY EKSPERTOWE
PDF darmowo ładowalny ze strony
http://http://www.rmse.plwww.rmse.pl
REGUREGUŁŁOWOOWO--MODELOWE SKORUPOWE MODELOWE SKORUPOWE SYSTEMY EKSPERTOWESYSTEMY EKSPERTOWE
Nakład papierowy wyczerpany.
PDF darmowo ładowalny ze strony
http://http://www.rmse.plwww.rmse.pl
Rule- and Model-Based Expert Systems
PDF darmowo ładowalny ze
strony
http://http://www.rmes.plwww.rmes.pl
Cel zajCel zajęćęć
Przedstawienie:Przedstawienie:––wwłłaaśściwociwośścici––podstaw dziapodstaw działłaniaania––zastosowazastosowańńczterech skorupowych reguczterech skorupowych regułłowoowo--modelowych modelowych systemsystemóów ekspertowych w ekspertowych rmsermse..Nauczenie tworzenia baz wiedzy dla w/w Nauczenie tworzenia baz wiedzy dla w/w systemsystemóów.w.
EKSPERTEKSPERT
CzCzłłowiek posiadajowiek posiadająący specjalistyczncy specjalistycznąą wiedzwiedzęę
z pewnej dziedzinie (z pewnej dziedzinie (wiedzwiedzęę
dziedzinowdziedzinowąą) i umiej) i umiejęętnotnośćść
stosowania stosowania jej dla podejmowania decyzji zwijej dla podejmowania decyzji zwiąązanych zanych z tz tąą
dziedzindziedzinąą
((umiejumiejęętnotnośćść
wnioskowania w oparciu o posiadanwnioskowania w oparciu o posiadanąą wiedzwiedzęę), nabyte w wyniku studi), nabyte w wyniku studióów i w i
praktykipraktyki..
SYSTEMY EKSPERTOWESYSTEMY EKSPERTOWE
Programy komputerowe Programy komputerowe wspomagajwspomagająące ce podejmowanie decyzjipodejmowanie decyzji, kt, któórych rych elementami selementami sąą::
baza wiedzybaza wiedzy, , zawierajzawierająąca wiedzca wiedzęę
dziedzinowdziedzinowąą, istotn, istotnąą
dla dla podejmowanych decyzji, podejmowanych decyzji,
system wnioskujsystem wnioskująącycy, korzystaj, korzystająący z cy z
bazy wiedzy dla wypracowania tych bazy wiedzy dla wypracowania tych decyzji. decyzji.
SYSTEMY EKSPERTOWESYSTEMY EKSPERTOWEPozostaPozostałłe elementy systemu e elementy systemu ekspertowego: ekspertowego:
edytor bazy wiedzyedytor bazy wiedzy, do tworzenia, , do tworzenia,
modyfikowanie i kasowanie bazy wiedzymodyfikowanie i kasowanie bazy wiedzy
interfejs uinterfejs użżytkownikaytkownika, do korzystania , do korzystania
z systemu ekspertowegoz systemu ekspertowego
dynamiczna baza danychdynamiczna baza danych
--
relacyjna relacyjna
baza danych do przechowywania baza danych do przechowywania odpowiedzi uodpowiedzi użżytkownika i wynikytkownika i wynikóów w wnioskowaniawnioskowania
Spotykane synonimySpotykane synonimy
system ekspertowysystem ekspertowy program program reguregułłowyowy program z program z reguregułłowowąą bazbaząą wiedzywiedzy system zarzsystem zarząądzania regudzania regułłami ami
biznesowymi (Business biznesowymi (Business RuleRule ManagementManagement
System)System)
STRUKTURA FUNKCJONALNA STRUKTURA FUNKCJONALNA SYSTEMU EKSPERTOWEGOSYSTEMU EKSPERTOWEGO
BAZA WIEDZY
SYSTEMWNIOSKUJĄCY
EDYTORBAZY
WIEDZY
INTEREJS UŻYTKOWNIKA
DYNAMICZNA BAZA
DANYCH
STRUKTURA INFORMATYCZNA STRUKTURA INFORMATYCZNA SYSTEMU EKSPERTOWEGOSYSTEMU EKSPERTOWEGO
INTERFEJSUŻYTKOWNIKA
EDYTORBAZY
WIEDZY
DYNAMICZNA BAZA DANYCH
SYSTEM WNIOSKUJĄCY
BAZA WIEDZY
Plik wykonywalny(Skorupowy system
ekspertowy)
Plik tekstowy
Istotne cechy systemu Istotne cechy systemu ekspertowegoekspertowego
1.
Rozdzielenie bazy wiedzy i systemu
wnioskującego
Istotne cechy systemu Istotne cechy systemu ekspertowegoekspertowego
2. Baza wiedzy2. Baza wiedzy
jest jest plikiem tekstowymplikiem tekstowym, kt, któóryrymomożże bye byćć::
–– tworzonytworzony–– czytany czytany –– modyfikowanymodyfikowany
za pomocza pomocąą
edytora bazy wiedzy bez edytora bazy wiedzy bez naruszania integralnonaruszania integralnośści systemu ci systemu wnioskujwnioskująącego.cego.
Istotne cechy systemu Istotne cechy systemu ekspertowegoekspertowego
UmoUmożżliwia to szybkie zrozumienie i liwia to szybkie zrozumienie i modyfikowanie wiedzy modyfikowanie wiedzy dziedzinowej, z ktdziedzinowej, z któórej korzysta rej korzysta system ekspertowy.system ekspertowy.
UmoUmożżliwia to tworzenie systemliwia to tworzenie systemóów w skorupowych, tzn. systemskorupowych, tzn. systemóów w ekspertowych pozbawionych baz ekspertowych pozbawionych baz wiedzy.wiedzy.
System ekspertowy jako System ekspertowy jako paradygmat programowania (1)paradygmat programowania (1)
Powszechnie stosowane Powszechnie stosowane programowanie programowanie proceduralne proceduralne momożżna uwana uważżaaćć
za za
odbywajodbywająące sice sięę
zgodnie z paradygmatem:zgodnie z paradygmatem:
PROCEDURA = ALGORYTM + DANEPROCEDURA = ALGORYTM + DANE
System ekspertowy jako System ekspertowy jako paradygmat programowania (2)paradygmat programowania (2)
Programowanie stosujProgramowanie stosująące bazy wiedzyce bazy wiedzy (systemy ekspertowe) mo(systemy ekspertowe) możżna uwana uważżaaćć
za za
odbywajodbywająące sice sięę
zgodnie z paradygmatem:zgodnie z paradygmatem:
SYSTEM EKSPERTOWY = SYSTEM EKSPERTOWY = SYSTEM WNIOSKUJSYSTEM WNIOSKUJĄĄCY + BAZA WIEDZYCY + BAZA WIEDZY
Zalety rozdzielenia bazy wiedzy i Zalety rozdzielenia bazy wiedzy i systemu wnioskujsystemu wnioskująącego (1)cego (1)
ŁŁatwoatwośćść
dostdostęępu do pu do wiedzy dziedzinowejwiedzy dziedzinowej, danej w , danej w jawnejjawnej
postaci postaci pliku tekstowegopliku tekstowego. .
ProstotaProstota
modyfikacjimodyfikacji
bazy wiedzy bez potrzeby bazy wiedzy bez potrzeby naruszania integralnonaruszania integralnośści wci włłaaśściwego programu ciwego programu --
systemu wnioskujsystemu wnioskująącegocego..
MoMożżliwoliwośćść
tworzenia tworzenia systemsystemóów ekspertowych w ekspertowych
skorupowychskorupowych, tzn. uniwersalnych system, tzn. uniwersalnych systemóów w ekspertowych, ktekspertowych, któóre ure użżytkownicy mogytkownicy mogąą
łładowaadowaćć
wwłłasnasnąą, u, użżytkowanytkowanąą
przez nich wiedzprzez nich wiedząą
dziedzinowdziedzinowąą..
Zalety rozdzielenia bazy Zalety rozdzielenia bazy wiedzy i systemu wiedzy i systemu wnioskujwnioskująącego (2)cego (2)
PrzykPrzykłład zastosowania systemu ad zastosowania systemu ekspertowego do diagnostykiekspertowego do diagnostyki: : system ekspertowy system ekspertowy KREKRE
oceniajoceniająący cy
wiarygodnowiarygodnośćść
kredytowkredytowąą
klienta banku (jest nim klienta banku (jest nim mamałły przedsiy przedsięębiorca) i podejmujbiorca) i podejmująący decyzjcy decyzjęę
o o
przyznaniu lub odmowie kredytu.przyznaniu lub odmowie kredytu.
PrzykPrzykłład (a)ad (a)
Decyzja o przyznaniu lub odmowie kredytu jest Decyzja o przyznaniu lub odmowie kredytu jest wynikiem stosowania kilkunastu reguwynikiem stosowania kilkunastu regułł
okreokreśślonych przez kierownictwo banku.lonych przez kierownictwo banku.
ReguRegułły te sy te sąą
zapisane w postaci pliku zapisane w postaci pliku
tekstowego, kttekstowego, któórego odczytanie, zrozumienie i rego odczytanie, zrozumienie i zmodyfikowanie nie nastrzmodyfikowanie nie nastręęcza trudnocza trudnośści. ci.
PrzykPrzykłład (b)ad (b)
W miarW miaręę
zbierania przez bank dozbierania przez bank dośświadczewiadczeńń
i w miari w miaręę
zmiany sytuacji na rynku pienizmiany sytuacji na rynku pieniężężnym, regunym, regułły y przyznawania kredytprzyznawania kredytóów muszw musząą
ulec zmianie.ulec zmianie.
Gdyby reguGdyby regułły te byy te byłły y zanurzone zanurzone w programie nie w programie nie bbęęddąącym systemem ekspertowym i napisanym w cym systemem ekspertowym i napisanym w jjęęzyku proceduralnym, odczytanie, zrozumienie i zyku proceduralnym, odczytanie, zrozumienie i zmodyfikowanie tych reguzmodyfikowanie tych regułł
bybyłłoby bardzo trudne, a oby bardzo trudne, a
dla osdla osóób nie bb nie bęęddąących twcych twóórcami tego programu rcami tego programu –– wrwręęcz niemocz niemożżliwe. liwe.
PorPoróównaniewnanie
StosujStosująącc
programowanieprogramowanie
proceduralneproceduralne
trzebatrzeba::
--
nienie
tylkotylko
powiedziepowiedziećć
programowiprogramowi, co ma , co ma zrobizrobićć,,--
leczlecz
rróówniewnieżż
powiedziepowiedziećć, , jakjak
to ma to ma zrobizrobićć..
StosujStosująącc
system system ekspertowyekspertowy
wystarczawystarcza::--
poinformowapoinformowaćć
system system wnioskujwnioskująącycy
o o cacałłejej
wiedzywiedzy,,
potrzebnejpotrzebnej
do do wykonaniawykonania
zadaniazadania;;--
wskazawskazaćć
mu mu celcel, , ktktóóryry
ma ma osiosiąągngnąćąć..
SystemySystemy
ekspertoweekspertowe
wspierajwspierająą
programowanieprogramowanie deklaratywnedeklaratywne..
Systemy ekspertowe a Prolog (1)Systemy ekspertowe a Prolog (1)
Zgodnie z tym paradygmatem dziaZgodnie z tym paradygmatem działła jedyny a jedyny deklaratywnydeklaratywny
jjęęzyk programowania zyk programowania --
PrologProlog. .
W W ProloguPrologu
nie tworzy sinie tworzy sięę
algorytmalgorytmóów w rozwirozwiąązania zania zadazadańń, lecz opisuje interesuj, lecz opisuje interesująący cy fragment rzeczywistofragment rzeczywistośści za pomocci za pomocąą
faktfaktóóww
i i
reguregułł. .
Kompilator Kompilator ProloguPrologu
jest wyposajest wyposażżony w ony w
system wnioskujsystem wnioskująącycy, rozstrzygaj, rozstrzygająącycy prawdziwoprawdziwośćść
podanego celu dla podanego celu dla
przedstawionych przedstawionych faktfaktóóww
i i reguregułł. .
Systemy ekspertowe a Prolog (2)Systemy ekspertowe a Prolog (2)
Dlatego Dlatego PrologProlog
umoumożżliwia liwia wyjwyjąątkowo prosttkowo prostąą realizacjrealizacjęę
systemsystemóów ekspertowych.w ekspertowych.
OczywiOczywiśście, systemy ekspertowe mocie, systemy ekspertowe możżna na pisapisaćć
w dowolnym uniwersalnym w dowolnym uniwersalnym
proceduralnym jproceduralnym jęęzyku programowania jak zyku programowania jak npnp. . Pascal, C lub C++.Pascal, C lub C++.
JedynJedynąą
niedogodnoniedogodnośściciąą
takiego wyboru takiego wyboru
jjęęzyka jest wizyka jest więększa czasochksza czasochłłonnoonnośćść, bardziej , bardziej obszerny i mniej przejrzysty kod obszerny i mniej przejrzysty kod źźrróóddłłowy, owy, anianiżżeli w przypadku stosowania Prologu.eli w przypadku stosowania Prologu.
Klasyfikacja systemKlasyfikacja systemóów ekspertowych w ekspertowych (1)(1)
Systemy ekspertowe specjalizowane, o systemach Systemy ekspertowe specjalizowane, o systemach wnioskujwnioskująących przeznaczonych do wspcych przeznaczonych do wspóółłpracy z pracy z śściciśśle okrele okreśślonlonąą
bazbaząą
wiedzy dziedzinowej.wiedzy dziedzinowej.
Systemy ekspertowe skorupowe, o systemach Systemy ekspertowe skorupowe, o systemach wnioskujwnioskująących mogcych mogąących wspcych wspóółłpracowapracowaćć
z z
bardzo rbardzo róóżżnymi bazami, spenymi bazami, spełłniajniająącymi okrecymi okreśślone lone wymagania syntaktyczne.wymagania syntaktyczne.
Klasyfikacja systemKlasyfikacja systemóów ekspertowych w ekspertowych (2)(2)
ReguRegułłoweowe
systemy ekspertowe: systemy ekspertowe:
wiedza dziedzinowa zapisana w postaci wiedza dziedzinowa zapisana w postaci deklaratywnej (regudeklaratywnej (regułły i fakty)y i fakty)
wnioskowanie logiczne. wnioskowanie logiczne.
Klasyfikacja systemKlasyfikacja systemóów ekspertowych w ekspertowych (3)(3)
ReguRegułłoweowe--modelowemodelowe
(hybrydowe) systemy(hybrydowe) systemyekspertowe: ekspertowe:
wiedza dziedzinowa zapisana w postaci wiedza dziedzinowa zapisana w postaci deklaratywnej (regudeklaratywnej (regułły i fakty) i proceduralnej y i fakty) i proceduralnej (r(róównania, relacje)wnania, relacje)
wnioskowanie logiczne wspomagane obliczeniami wnioskowanie logiczne wspomagane obliczeniami relacyjnymi i numerycznymirelacyjnymi i numerycznymi
Przedmiot zajPrzedmiot zajęćęć
Rodzina 4 skorupowych reguRodzina 4 skorupowych regułłowoowo-- modelowych systemmodelowych systemóów w
ekspertowychekspertowychrmse:rmse:
rmse_EDrmse_ED
rmse_RDrmse_RD
rmse_ENrmse_EN
rmse_RNrmse_RN
Autor: Antoni Autor: Antoni NiederliNiederlińńskiski
STRUKTURA BAZY WIEDZY rmseSTRUKTURA BAZY WIEDZY rmse
Baza wiedzy
Baza reguł
Baza rad
Baza ograniczeń
Pliki rad
Baza modeli
Baza rad
Pliki rad
STRUKTURA BAZY WIEDZYSTRUKTURA BAZY WIEDZY
Baza reguł
-
wiedza dziedzinowa logiczna
Baza ograniczeń
-
wiedza dziedzinowa logiczna
Baza modeli -
wiedza dziedzinowa matematyczna
wiedza dziedzinowa uzupełniająca i wyjaśniająca
STRUKTURA BAZY WIEDZYSTRUKTURA BAZY WIEDZY
Baza reguł
Baza ograniczeń
Baza modeli
Baza rad
mają
postać
klauzulzawierających zmienne
Zmienne stosowane w systemach Zmienne stosowane w systemach ekspertowych rmseekspertowych rmse
Zmienne łańcuchowe :Dowolny ciąg znaków rozpoczynający i kończący się
cudzysłowem górnym ".
W systemach ekspertowych rmse są stosowane wyłącznie zmienne łańcuchowe
Zmienne Zmienne łłaańńcuchowecuchowe
Zmienna Zmienna łłaańńcuchowa cuchowa = "= "InkludInklud""
Inklud
jest pomiędzy
cudzysłowami
Podstawowe typy zmiennych Podstawowe typy zmiennych łłaańńcuchowych w systemach cuchowych w systemach ekspertowych dokekspertowych dokłładnychadnych
zmienne zmienne łłaańńcuchowe typu:cuchowe typu:
logicznegologicznego
rzeczywistego rzeczywistego
cacałłkowitegokowitego
Logiczne zmienne łańcuchowe :
"Nazwa" jest logiczną
zmienną łańcuchową,jeżeli Nazwa
jest zmienną
logiczną
(przyjmuje
tylko wartości ze zbioru stałych logicznych {Prawda,
Nieprawda})
Np.: "Wiek >= 32 lat", "Niepełnoletni"
Podstawowe typy zmiennych Podstawowe typy zmiennych łłaańńcuchowych w systemach cuchowych w systemach ekspertowych dokekspertowych dokłładnychadnych
Rzeczywiste zmienne łańcuchowe :
"Wartość" jest rzeczywistą
zmienną łańcuchową, jeżeli Wartość
jest zmienną
rzeczywistą
lub liczbą
rzeczywistą:
Np. "Maksymalna temperatura", "165.72"
Podstawowe typy zmiennych Podstawowe typy zmiennych łłaańńcuchowych w systemach cuchowych w systemach ekspertowych dokekspertowych dokłładnychadnych
Całkowite zmienne łańcuchowe :
"Wartość"
jest całkowitą
zmienną łańcuchową, jeżeli Wartość
jest zmienną
całkowitą
lub liczbą
całkowitą
Np.: "Liczba samochodów w bazie", "48"
Podstawowe typy zmiennych Podstawowe typy zmiennych łłaańńcuchowych w systemach cuchowych w systemach ekspertowych dokekspertowych dokłładnychadnych
Zalety zmiennych Zalety zmiennych łłaańńcuchowychcuchowychCzytelnoCzytelnośćść::InkludyInkludy
(nazwy warunk(nazwy warunkóów i wnioskw i wnioskóów) nie w) nie
muszmusząą
bybyćć
atomami, atomami, npnp.: .: ""Bardzo dobre zabezpieczenie kredytuBardzo dobre zabezpieczenie kredytu""InkludyInkludy
(nazwy argument(nazwy argumentóów i wynikw i wynikóów) w)
rróówniewnieżż
nie musznie musząą
bybyćć
atomami, atomami, npnp.:.:""Stopa zysku w pierwszym pStopa zysku w pierwszym póółłroczuroczu""
InkludyInkludy
mogmogąą
rozpoczynarozpoczynaćć
sisięę
dowolnymi dowolnymi znakami (litery duznakami (litery dużże lub mae lub małłe, re, róóżżne znaki)ne znaki)
Zalety zmiennych Zalety zmiennych łłaańńcuchowych cuchowych (2)(2)
ElastycznoElastycznośćść::
Ta sama struktura dla modeli Ta sama struktura dla modeli arytmetycznych i relacyjnycharytmetycznych i relacyjnych
Ta sama struktura dla modeli Ta sama struktura dla modeli ze ze zmiennymi zmiennymi nieukonkretnionyminieukonkretnionymi
i i
zmiennymi ukonkretnionymizmiennymi ukonkretnionymi
BAZA REGUBAZA REGUŁŁ
ReguRegułły = wiedza dziedzinowa y = wiedza dziedzinowa o charakterze ogo charakterze ogóólnymlnym
FAKTY
REGUŁY
Fakty = wiedza dziedzinowaFakty = wiedza dziedzinowao charakterze szczego charakterze szczegóółłowymowym
BAZA REGUBAZA REGUŁŁ
Przykład reguły w języku potocznym:
Jeżeli "student x otrzymał
wszystkie zaliczenia w terminie"
i "student x zdał
wszystkie egzaminy w terminie",
to "student x uzyska wpis na kolejny semestr"
Przykład faktu w języku potocznym:
"student
J.Kowalski
zdał
wszystkie egzaminy w terminie"
BAZA REGUBAZA REGUŁŁReguRegułłyy: zdania warunkowe, : zdania warunkowe, npnp. .
––
w jw jęęzyku polskim:zyku polskim:A jest prawdA jest prawdąą, je, jeśśli B i C i D sli B i C i D sąą
prawdprawdąą
––
w logice:w logice:B B ii
C C ii
D D
A lubA lub
––
w Prologu: w Prologu: A :A :--
B, C, DB, C, D
B, C, D
–
warunki
regułyA
–
wniosek
reguły
-
symbol
implikacji w logice:-
-
symbol implikacji regułowej
w Prologu
BAZA REGUBAZA REGUŁŁ
reguła(Numer_reguły,"Wniosek",
Lista_warunków,Semafor_wyświetlania)
fakt("Warunek
dopytywalny")
Klauzule dokładnej bazy reguł:
"Wniosek""Wniosek"
::
Logiczna zmienna łańcuchowa, której inkludem
jest nazwa wniosku.
Np. "dobre zabezpieczenie"
Lista_warunków:
["Warunek_1",...,"Warunek _i",..., "Warunek _n"]
logiczna zmienna łańcuchowa
"Warunek_i"
:
Semafor_wyświetlania
= 0
informacja o stosowaniu reguły nie jest wyświetlana w trakcie wnioskowania
= 1
informacja o stosowaniu reguły jest wyświetlana w trakcie wnioskowania
BAZA REGUBAZA REGUŁŁ
reguła(Numer_reguły,"Wniosek",
Lista_warunków
,Semafor_wyświetlania)
Sens reguły:
Jeżeli wszystkie warunki są
prawdą, wniosek jest prawdą.
BAZA REGUBAZA REGUŁŁ
reguła(Numer_reguły,"Wniosek",
Lista_warunków
,Semafor_wyświetlania)
Uwaga:
Jeżeli nie wszystkie warunki są
prawdą, sens reguły zależy od typu bazy wiedzy.
BAZA REGUBAZA REGUŁŁ
reguła(N, "Wniosek", Lista_warunków_N,
S)
Sens wielu dokładnych reguł
o tym samym wniosku:
Jeżeli wszystkie warunki przynajmniej jednej listy warunków są
prawdą, wniosek jest prawdą.
jest następujący:
reguła(M,"Wniosek", Lista_warunków_M,
S)
........reguła(I,"Wniosek", Lista_warunków_I,
S)
........
BAZA REGUBAZA REGUŁŁZwiązki
przyczynowo-skutkowe
W logice nie istnieje pojęcie związków przyczynowo- skutkowych (nie ma ‘wejść’ i ’wyjść’)
Związki sytuacyjno-działaniowe
W logice nie istnieje pojęcie związków pomiędzy sytuacjami a działaniami (nie ma ‘wejść’ i ’wyjść’)
BAZA REGUBAZA REGUŁŁ
Przykład: następujące trzy zdania są
logicznie równoważne:
A i B jest prawdą
A jest prawdą
, A B
B jest prawdą
, B A
Nie należy mylić logicznej implikacji
z relacją
wejściowo- wyjściową!
BAZA REGUBAZA REGUŁŁAby baza reguł
była użyteczna dla wspomagania
decyzji, należy zapewnić
poprawne:
1.Związki przyczynowo-skutkowe pomiędzy warunkami i wnioskami wszystkich reguł.
lub:
2. Związki sytuacyjno-działaniowe pomiędzy warunkami i wnioskami wszystkich reguł.
BAZA REGUBAZA REGUŁŁ
reguła(Nr,"Skutek", Lista_przyczyn, S)
Związki przyczynowo-skutkowe w regułach
Skutek zaistnieje, gdy wszystkie przyczyny zaistnieją.
BAZA REGUBAZA REGUŁŁ
reguła(1, "Woda zamarza", ["Temperatura spadła poniżej zera"], S)
Związek przyczynowo-skutkowe w regule:
BAZA REGUBAZA REGUŁŁZwiązek przyczynowo-skutkowe w regule: przyczyny powodują
zaistnienie skutku
Przyczyna_1
Przyczyna_n
SkutekReguła
Przyczyna_i
BAZA REGUBAZA REGUŁŁ
reguła(Nr,"Działanie", Lista_sytuacji,
S)
2. Związki sytuacyjno-działaniowe
w regułach
Działanie zaistnieje, gdy wszystkie sytuacje zaistnieją.
BAZA REGUBAZA REGUŁŁ
reguła(1, "Dyrektor traci pracę", ["Duże straty", "Korupcja"],
S)
2. Związek sytuacyjno-działaniowy w regule:
BAZA REGUBAZA REGUŁŁZwiązek sytuacyjno-działaniowe
w regule:
działanie wystąpi,gdy zaistnieją
odpowiednie sytuacje.
Sytuacja_1
Sytuacja_n
Działanie
RegułaSytuacja_i
PoglPogląądowe przedstawianie regudowe przedstawianie regułł: :
WniosekNr Warunek_1,..., Warunek_n
Symbol implikacji regułowej
reguła(Nr, "Wniosek",["Warunek_1",..., "Warunek_n"],
Semafor_wyświetlania)
ReguRegułły mogy mogąą
sisięę
zagniezagnieżżddżżaaćć::
Zagnieżdżanie reguł: wniosek jednej reguły może być
warunkiem innej reguły:
reguła(N, "Wniosek", [..., "ABCD",....])
reguła(M, "ABCD", Lista_warunków)
ZagnieZagnieżżddżżanie anie reguregułł
Baza reguBaza regułł::1. A 1. A
DD
2. F , H 2. F , H
GG3. B 3. B
LL
4. D , J 4. D , J
MM5. C , D 5. C , D
FF
6. A , E 6. A , E
JJ
Wnioski niektórych reguł
są warunkami innych reguł.
Np. :
•
wniosek F
reguły 5
jest warunkiem reguły 2
•
wniosek
J reguły
6 jest warunkiem reguły
4
•
wniosek
D reguły
1 jest warunkiem reguły
4
ZagnieZagnieżżddżżajająące sice sięę
reguregułły mogy mogąą miemiećć
warunki dwojakiego warunki dwojakiego
rodzaju:rodzaju:
Warunki dopytywalne: nie są
wnioskami reguł. Wartość
logiczna tych warunków jest określana
przez użytkownika systemu ekspertowego
ZagnieZagnieżżddżżanie anie reguregułł
Warunki niedopytywalne: są
wnioskami reguł. Wartość
logiczna tych warunków jest określana
przez system ekspertowy
Warunki dopytywalne i Warunki dopytywalne i niedopytywalneniedopytywalne
Baza ReguBaza Regułł::1. A 1. A
DD
2. F , H 2. F , H
GG3. B 3. B
LL
4. D , J 4. D , J
MM5. C , D 5. C , D
FF
6. A , E 6. A , E
JJ
PodziaPodziałł
warunkwarunkóów:w:
Warunki dopytywalneWarunki dopytywalne: : AA, , BB,,
CC, , EE
i i
HH. . System ekspertowy pyta System ekspertowy pyta uużżytkownika o wartoytkownika o wartośćść
logicznlogicznąą
tych warunktych warunkóóww
Warunki niedopytywalneWarunki niedopytywalne::
FF,,
D D ii
JJ. .
System ekspertowy nie pyta o te System ekspertowy nie pyta o te warunki, bo ich wartowarunki, bo ich wartośści logiczne ci logiczne wynikajwynikająą
z bazy reguz bazy regułł
i warunki warunkóów w
dopytywalnychdopytywalnych
BAZA REGUBAZA REGUŁŁFaktyFakty: logiczne zmienne : logiczne zmienne łłaańńcuchowe o inkludach cuchowe o inkludach uznawane za prawdziwe, np. :uznawane za prawdziwe, np. :””--44°°CC
<= Temperatura powietrza <= 4<= Temperatura powietrza <= 4°°CC””
””student J. Kowalski zdastudent J. Kowalski zdałł
egzaminy w terminieegzaminy w terminie””
Baza reguł
rzadko ma własne fakty. Jeżeli ma, są zapisywane w postaci klauzul:
fakt(”Warunek dopytywalny”)
Fakty są
najczęściej deklarowane przez użytkownika w trakcie wnioskowania lub są
generowane z reguł
w wyniku
wnioskowania
SprzecznoSprzecznośści w elementarnych ci w elementarnych dokdokłładnych bazach reguadnych bazach regułł
(1)(1)
1. Sprzeczno1. Sprzecznośści typu SED1ci typu SED1: wniosek : wniosek reguregułły jest toy jest tożżsamy z jednym z jej samy z jednym z jej warunkwarunkóów. Mow. Możżliwe sliwe sąą
nastnastęępujpująące typy ce typy
tej sprzecznotej sprzecznośści:ci:
ReguRegułła jest a jest zewnzewnęętrznietrznie
SED1SED1--samosprzecznasamosprzeczna, , jejeżżeli jednym z jej warunkeli jednym z jej warunkóów jest jej wniosek. Np.:w jest jej wniosek. Np.:
1. M , N , X 1. M , N , X
XX
SprzecznoSprzecznośści w elementarnych ci w elementarnych dokdokłładnych bazach reguadnych bazach regułł
(2)(2)
ReguRegułła a nn
jest jest zewnzewnęętrznietrznie
bezpobezpośśrednio rednio SED1SED1--sprzecznasprzeczna
z reguz regułąłą
mm, je, jeżżeli:eli:
––
wniosek reguwniosek regułły y m m jest warunkiem regujest warunkiem regułły y nn, i, i––
wniosek reguwniosek regułły y n n jest warunkiem regujest warunkiem regułły y mm. Np.:. Np.:
1. M , N , Y 1. M , N , Y
XX2. P , Q , X 2. P , Q , X
YY
Zastąpienie warunku X reguły 2 warunkami reguły 1 czyni z reguły 2
regułę
3 będącą
zewnętrznie SED1-
samosprzeczną: 3. P , Q , M , N , Y Y
SprzecznoSprzecznośści w elementarnych ci w elementarnych dokdokłładnych bazach reguadnych bazach regułł
(3)(3)
ReguRegułła a nn
jest jest zewnzewnęętrznietrznie
popośśrednio SED1rednio SED1--sprzecznasprzeczna
z reguz regułąłą
mm, , jejeżżeli podstawienie regueli podstawienie regułły y mm
do innej regudo innej regułły, tej zay, tej zaśś
do jeszcze innej itd., do jeszcze innej itd.,
doprowadza do regudoprowadza do regułły bezpoy bezpośśrednio rednio SED1SED1--sprzecznej z regusprzecznej z regułąłą
nn. Np. . Np. reguregułła a 11
jest zewnjest zewnęętrznie potrznie pośśrednio rednio SED1SED1--sprzeczna z regusprzeczna z regułąłą
3:3:
1. K , B 1. K , B
HH2. C , D , X 2. C , D , X
KK
3. H , A 3. H , A
XX
Pośrednikiem jest tutaj reguła 2.
Podstawienie warunków reguły 3
w miejsce warunku X reguły 2
daje bowiem regułę
4:
4. C , D , H , A Kktóra jest zewnętrznie bezpośrednio SED1-sprzeczna z regułą
1.
SprzecznoSprzecznośści w elementarnych ci w elementarnych dokdokłładnych bazach reguadnych bazach regułł
(4)(4)
ZewnZewnęętrzna potrzna pośśrednia SED1rednia SED1--sprzecznosprzecznośćść
nie jest nie jest relacjrelacjąą refleksyjnrefleksyjnąą: w rozpatrywanym: w rozpatrywanym
przykprzykłładzie adzie
1. K , B 1. K , B
HH2. C , D , X 2. C , D , X
KK
3. H , A 3. H , A
XX
reguregułła 3 nie jest zewna 3 nie jest zewnęętrznie potrznie pośśrednio SED1rednio SED1--sprzeczna z sprzeczna z reguregułąłą
1.1.
Natomiast reguła 3 jest zewnętrznie pośrednio SED1-sprzeczna z regułą
2, gdyż
podstawienie warunków reguły 2 w miejsce
warunku K reguły 1 daje regułę
5:5. C , D , X , B H
która jest zewnętrznie bezpośrednio SED1-sprzeczna z regułą
3.
PPłłaskie bazy reguaskie bazy regułł
Bazy reguBazy regułł
majmająące wyce wyłąłącznie warunki cznie warunki dopytywalnedopytywalne
Niesprzeczną
bazę
reguł
można „spłaszczyć”
na drodze kolejnego zastępowania warunków niedopytywalnych
listami warunków reguł
których są
wnioskami.
SpSpłłaszczanie baz reguaszczanie baz regułł
ZagnieZagnieżżddżżona baza reguona baza regułł::1. A 1. A
DD
2. F , H 2. F , H
GG3. B 3. B
LL
4. D , J 4. D , J
MM5. C , D 5. C , D
FF
6. A , E 6. A , E
JJ
PPłłaska baza reguaska baza regułł::1. A 1. A
DD
2. C , A , H 2. C , A , H
GG3. B 3. B
LL
4. A , E 4. A , E
MM5. C , A 5. C , A
FF
6. A , E 6. A , E
JJ
Utrata czytelności bazy płaskiej. Zgubiono relacje pomiedzy:
J i M, D i M, F i G
PPłłaskie bazy reguaskie bazy regułł
Płaskie bazy reguł
mogą
mieć
ogromne rozmiary w porównaniu z ich
zagnieżdżającymi się
równoważnikami.
Płaskie bazy reguł
mogą
być
trudne do zrozumienia
w porównaniu z ich
zagnieżdżającymi się
równoważnikami
Płaskie bazy reguł
mogą
być
trudne do modyfikowania
w porównaniu z ich
zagnieżdżającymi się
równoważnikami
Spotykane synonimySpotykane synonimy
wniosekwniosek
= konkluzja, rezultat= konkluzja, rezultat
warunek warunek = przes= przesłłanka, zaanka, załłoożżenieenie
KorzyKorzyśści stosowania reguci stosowania regułł
1.1.
ReguRegułły umoy umożżliwiajliwiająą
zwizwięęzzłłe definiowanie e definiowanie funkcjonowania rfunkcjonowania róóżżnych systemnych systemóóww. . W W najprostszych przypadkach funkcjonowanie najprostszych przypadkach funkcjonowanie to sprowadza sito sprowadza sięę
do cido ciąągu dziagu działłaańń, ,
inicjowanych odpowiednimi warunkami. inicjowanych odpowiednimi warunkami.
KorzyKorzyśści stosowania reguci stosowania regułł
2. Zrozumienie funkcjonowania 2. Zrozumienie funkcjonowania systemu opisanego zbiorem regusystemu opisanego zbiorem regułł
jest jest
w zasadzie prostsze aniw zasadzie prostsze aniżżeli eli rozszyfrowanie rozbudowanego kodu rozszyfrowanie rozbudowanego kodu proceduralnego typu proceduralnego typu if/then/elseif/then/else..
KorzyKorzyśści stosowania reguci stosowania regułł
ProgramujProgramująąc proceduralnie, musimy c proceduralnie, musimy programowi powiedzieprogramowi powiedziećć
nie tylko, nie tylko, coco
ma ma
zrobizrobićć, ale r, ale róówniewnieżż
powiedziepowiedziećć, , jakjak
to ma to ma zrobizrobićć. .
Dla złożonego systemu logika programu proceduralnego jest trudna do opracowania, debugowania i modyfikowania.
Ironia programowania Ironia programowania proceduralnegoproceduralnego
••
IroniIroniąą
bywa czbywa częęsto to, sto to, żże programuje programująąc c proceduralnie czproceduralnie częęsto zaczynamy od sto zaczynamy od sformusformułłowania reguowania regułł. .
••
PotemPotem, , gdy jugdy jużż
––
dzidzięęki reguki regułłom om ––
rozumiemy rozumiemy wymagane funkcjonowanie systemu, prwymagane funkcjonowanie systemu, próóbujemy bujemy te regute regułły zakodoway zakodowaćć
––
wbrew ich naturze wbrew ich naturze ––
w w
proceduralnym jproceduralnym jęęzyku programowania. zyku programowania.
••
ReguRegułłowoowo--modelowy modelowy system system ekspertowy ekspertowy umoumożżliwia nam liwia nam ––
w pewnym stopniu w pewnym stopniu ––
pominipominięęcie ostatniego kroku. cie ostatniego kroku.
KorzyKorzyśści stosowania reguci stosowania regułł
StosujStosująąc system ekspertowy, musimy mu c system ekspertowy, musimy mu powiedziepowiedziećć
tylko to, tylko to, co wiemyco wiemy
o problemie i o problemie i jaki jaki
celcel
chcemy osichcemy osiąągngnąćąć. Systemy ekspertowe . Systemy ekspertowe realizujrealizująą
wiwięęc deklaratywne programowanie.c deklaratywne programowanie.
Nawet dla bardzo zNawet dla bardzo złłoożżonych celonych celóów system w system ekspertowy sam dba o logikekspertowy sam dba o logikęę
swego dziaswego działłania. ania.
Klasyfikacja baz reguKlasyfikacja baz regułł (1)(1)Ze wzglZe wzglęędu na sposdu na sposóób wystb wystęępowania powania warunkwarunkóów niedopytywalnych w niedopytywalnych rozrrozróóżżniam:niam:
bazy regubazy regułł
elementarneelementarne: : warunki warunki niedopytywalne nie wystniedopytywalne nie wystęępujpująą
w w
postaci zanegowanejpostaci zanegowanej
bazy regubazy regułł
rozwinirozwinięętete: : warunki warunki niedopytywalne mogniedopytywalne mogąą
wystwystęępowapowaćć
w postaci zanegowanejw postaci zanegowanej
PrzykPrzykłład elementarnej bazy ad elementarnej bazy reguregułł
1. 1. A , B , C A , B , C
WW2. 2. W, D , E W, D , E
VV
3. 3. V , H , I , J V , H , I , J
UU
Warunki niedopytywalne Warunki niedopytywalne WW
i i VV
reguregułł
2 i 3 2 i 3 wystwystęępujpująą
w tej bazie w postaci w tej bazie w postaci
niezanegowanej, tzn. w takiej samej jak niezanegowanej, tzn. w takiej samej jak wnioski reguwnioski regułł
1 i 2. 1 i 2.
PrzykPrzykłład rozwiniad rozwinięętej bazy regutej bazy regułł
1. 1. A , B , C A , B , C
WW2. 2. nW , D , E nW , D , E
VV
3. 3. nV , H , I , J nV , H , I , J
UU
nX = nieprawda_XnX = nieprawda_X
Przedrostek
‘n’ oznacza
negację
Warunki niedopytywalne nW
i nV reguł
2 i 3 są zanegowanymi wnioskami reguł
1 i 2.
Zalety baz rozwiniZalety baz rozwinięętych: tych:
Brak potrzeby formuBrak potrzeby formułłowania reguowania regułł
dla wnioskdla wnioskóóww ("W") ("W") i ich negacjii ich negacji
("nW").("nW").
Klasyfikacja baz reguKlasyfikacja baz regułł (2)(2)Ze wzglZe wzglęędu na pewnodu na pewnośćść
reguregułł, warunk, warunkóów i w i
wnioskwnioskóów rozrw rozróóżżnia sinia sięę::
bazy regubazy regułł
dokdokłładneadne, , ktktóórych regurych regułły sy sąą prawdprawdąą, kt, któórych warunki i wnioski mogrych warunki i wnioski mogąą
bybyćć
albo prawdalbo prawdąą, albo nieprawd, albo nieprawdąą
bazy regubazy regułł
niepewneniepewne,,
ktktóórych regurych regułły, y, warunki i wnioski mogwarunki i wnioski mogąą
miemiećć
rróóżżne stopnie ne stopnie
pewnopewnośścici
Klasyfikacja baz reguKlasyfikacja baz regułł (3)(3)
Bazy reguł
dokładne
Bazy reguł
niepewne
Bazy reguł
elementarne
Bazy reguł
rozwinięte
Bazy regułrozwinięte
niepewne (BRN)
Bazy regułrozwinięte
dokładne (BRD)
Bazy regułelementarne
niepewne (BEN)
Bazy regułelementarne
dokładne (BED)
Klasyfikacja systemKlasyfikacja systemóów wnioskujw wnioskująących cych (1)(1)
Bazy regułrozwinięte
dokładne (BRD)
Wnioskowanieelementarne
dokładne
Bazy regułelementarne
dokładne (BED)
Wnioskowanierozwiniętedokładne
Wnioskowanie dokładne
Klasyfikacja systemKlasyfikacja systemóów wnioskujw wnioskująących cych (2)(2)
Bazy regułrozwinięte
niepewne (BRN)
Wnioskowanieelementarne
niepewne
Bazy regułelementarne
niepewne (BEN)
Wnioskowanierozwinięteniepewne
Wnioskowanie niepewne
Elementarne dokElementarne dokłładne bazy wiedzyadne bazy wiedzy1) Baza regu1) Baza regułł
elementarna dokelementarna dokłładnaadna
2) Baza modeli elementarna dok2) Baza modeli elementarna dokłładnaadna3) Baza ogranicze3) Baza ograniczeńń
elementarna dokelementarna dokłładnaadna
4) Baza rad elementarna dok4) Baza rad elementarna dokłładnaadna5) Pliki rad5) Pliki rad6) Baza grafiki6) Baza grafiki7) Pliki grafiki7) Pliki grafiki8) Baza d8) Baza dźźwiwięękkóóww9) Pliki d9) Pliki dźźwiwięękkóóww
10) Plik opisu wiedzy dziedzinowej10) Plik opisu wiedzy dziedzinowej
Baza reguBaza regułł elementarna elementarna dokdokłładnaadna
rreguegułłaa((NrNr, , ""WniosekWniosek",",ListListaa__warunkwarunkóów,w,
SemaforSemafor))
faktfakt((""Warunek dopytywalnyWarunek dopytywalny""))
Baza reguBaza regułł elementarna elementarna dokdokłładnaadna
reguła(Nr, "Wniosek",Lista_warunków,
Semafor)
Wniosek jest prawdą, jeżeli wszystkie warunki są prawdą.
Baza reguBaza regułł elementarna elementarna dokdokłładnaadna
rreguegułłaa((NrNr, , ""WniosekWniosek",",ListListaa__warunkwarunkóów,w,
SemaforSemafor))
Jeżeli którykolwiek z warunków nie jest prawdą, wniosek jest nieznany (nieokreślony).
Jest to tzw. założeniem otwartego świata.
ZaZałłoożżenie otwartego enie otwartego śświatawiata
Dla wszystkich systemDla wszystkich systemóów ekspertowych w ekspertowych elementarnych dokelementarnych dokłładnych adnych uwauważża sia sięę
za za
nieznane (nieokrenieznane (nieokreśślone) to, co nie wynika:lone) to, co nie wynika:––z reguz regułł
bazy regubazy regułł, ,
––z ograniczez ograniczeńń
bazy ograniczebazy ograniczeńń,,––z modeli bazy modeli, z modeli bazy modeli, ––z faktz faktóów i wartow i wartośści argumentci argumentóów w
zadeklarowanych przez uzadeklarowanych przez użżytkownikaytkownika
ZaZałłoożżenie otwartego enie otwartego śświatawiata
SkSkąąd taka nazwa?d taka nazwa?
Zostawiamy Zostawiamy ””otwarte drzwi na otwarte drzwi na śświatwiat””
uwauważżajająąc, c, żże e nasze regunasze regułły nie zawierajy nie zawierająą
cacałłej wiedzy ej wiedzy
dziedzinowej i dziedzinowej i żże e ––
bybyćć
momożże e --
dalsza analiza dalsza analiza problemu doprowadzi do dodatkowej reguproblemu doprowadzi do dodatkowej regułły, kty, któóra ra rozstrzygnie pozytywnie prawdziworozstrzygnie pozytywnie prawdziwośćść
wniosku.wniosku.
ZaZałłoożżenie otwartego enie otwartego śświata lewiata leżży u podstaw y u podstaw rróóżżnicy pominicy pomięędzy implikacjdzy implikacjąą
logiki a implikacjlogiki a implikacjąą
reguregułłowowąą
elementarnego dokelementarnego dokłładnego systemu adnego systemu ekspertowego:ekspertowego:
Implikacja logiki: q p
q p q p
Prawda Prawda PrawdaNieprawda Prawda PrawdaNieprawda Nieprawda Prawda
Implikacja regułowa: q p
q p q p
Prawda Prawda Prawda
Nieprawda Nieznane Prawda
Jeżeli warunek nie jest prawdą, nie mogę
nic powiedzieć
o wniosku
Daję
temu wyraz
następująco
NiedogodnoNiedogodnośćść
baz elementarnych:baz elementarnych:
W bazach reguW bazach regułł
elementarnych elementarnych dokdokłładnych czadnych częęsto trzeba formusto trzeba formułłowaowaćć
zarzaróówno reguwno regułły dla wniosky dla wnioskóóww
((""WW"") ) i i dla negacji wnioskdla negacji wnioskóóww
((""nieprawda_Wnieprawda_W"") )
Ograniczenia zaOgraniczenia załłoożżenia enia otwartego otwartego śświatawiata
reguregułła(1,a(1,””pojadpojadęę
na wycieczkna wycieczkęę
zagranicznzagranicznąą””, , [[””dostandostanęę
urlopurlop””,,””bbęęddęę
miamiałł
pienipieniąądzedze””],1)],1)
dostanę
urlop
Co nastCo nastąąpi, gdy:pi, gdy:
będę
miał
pieniądze
lub gdy:lub gdy:
nie jest prawdą??
Ograniczenia zaOgraniczenia załłoożżenia enia otwartego otwartego śświatawiata
pojadpojadęę
na wycieczkna wycieczkęę
zagranicznzagranicznąą
Wniosek:
jest nieokreślony
Ograniczenia zaOgraniczenia załłoożżenia enia otwartego otwartego śświatawiata
nie pojadnie pojadęę
na wycieczkna wycieczkęę
zagranicznzagranicznąą
Co zrobić, jeżeli zanegowany wniosek:
jest potrzebny jako warunek jakiejś reguły?
Ograniczenia zaOgraniczenia załłoożżenia enia otwartego otwartego śświatawiata
JeJeżżeli warunki regueli warunki regułły 1 sy 1 sąą
jedynymi warunkamijedynymi warunkamiktktóórych sperych spełłnienie umonienie umożżliwi mi wyjazd na liwi mi wyjazd na wycieczkwycieczkęę
zagranicznzagranicznąą, mog, mogęę
to zapisato zapisaćć
za za
pomocpomocąą
reguregułł
dodatkowych.dodatkowych.
Możliwe rozwiązanie:
Ograniczenia zaOgraniczenia załłoożżenia otwartego enia otwartego śświatawiata
reguła(1,”pojadę
na wycieczkę
zagraniczną”, [”dostanę
urlop”,”będę
miał
pieniądze”],1)
Reguła pierwotnareguła(2,”narastające zmęczenie”,
[”nie pojadę
na wycieczkę
zagraniczną”],
1)
Reguła potrzebująca negacji
reguregułła(3,a(3,””nie pojadnie pojadęę
na wycieczkna wycieczkęę
zagranicznzagranicznąą””,,[[””nie dostannie dostanęę
urlopuurlopu””],1)],1)
reguregułła(4,a(4,””nie pojadnie pojadęę
na wycieczkna wycieczkęę
zagranicznzagranicznąą””, , [[””nie bnie bęęddęę
miamiałł
pienipienięędzydzy””],1)],1)
Dodatkowe reguły dla
negacji
Ograniczenia zaOgraniczenia załłoożżenia enia otwartego otwartego śświatawiata
Przedstawiony sposPrzedstawiony sposóób postb postęępowania mopowania możże e bybyćć
bardzo kbardzo kłłopotliwy, por. bazopotliwy, por. bazęę
wiedzy wiedzy
KRE.KRE.
Przedstawiony sposPrzedstawiony sposóób postb postęępowania jest powania jest rróównoznaczny z wnoznaczny z „„zawieszeniemzawieszeniem””
zazałłoożżenia enia
otwartego otwartego śświata dla pewnych reguwiata dla pewnych regułł..
BAZA OGRANICZEBAZA OGRANICZEŃŃ
ELEMENTARNA DOKELEMENTARNA DOKŁŁADNAADNA
Baza ograniczeBaza ograniczeńń
zawiera zbiory warunkzawiera zbiory warunkóów w dopytywalnych wykluczajdopytywalnych wykluczająących sicych sięę. . np.: np.: ("temperatura jest wy("temperatura jest wyżższa od 40sza od 40ººC",C","temperatura jest ni"temperatura jest niżższa od 10 sza od 10 ººC",C","temperatura jest pomi"temperatura jest pomięędzy 10dzy 10ººC i 40C i 40ººC")C")..
("dostanę
urlop", "nie dostanę
urlopu")lub:
(„będę
miał
pieniądze", "nie będę
miał
pieniędzy")
BAZA OGRANICZEBAZA OGRANICZEŃŃ
ELEMENTARNA DOKELEMENTARNA DOKŁŁADNAADNA
Klauzule bazy ograniczeKlauzule bazy ograniczeńń: :
ograniczenieograniczenie(Nr_ograniczenia,(Nr_ograniczenia, Lista_warunkLista_warunkóów_dopytywalnych_w_dopytywalnych_
wykluczajwykluczająących_sicych_sięę))
Baza modeli elementarna
dokładna
MModelodele elementarne podstawowe e elementarne podstawowe dokdokłładneadne
MModelodelee
elementarne rozszerzone elementarne rozszerzone
dokdokłładneadne
MModelodelee
elementarne linioweelementarne liniowe
dokdokłładneadne
MModelodele elementarne wielomianowe e elementarne wielomianowe dokdokłładneadne
Baza modeli elementarna Baza modeli elementarna dokdokłładnaadna
arytmetyczne relacyjne
podstawowe
rozszerzone
liniowe
wielomianowe
X X
XX
X
X
Rodzaje zmiennych Rodzaje zmiennych łłaańńcuchowych w modelach:cuchowych w modelach:
• logiczne zmienne łańcuchowe, np.:
"Relacja spełniona", "Wartość
zmiennej w zakresie dopuszczalnym",
• rzeczywiste i całkowite zmienne łańcuchowe, np.:
"Wartość
ciśnienia", "56.79", "56"
ModelModel
elementarny dokelementarny dokłładny jest adny jest unikatowyunikatowy,,jejeżżeli baza modeli nie zawiera innegoeli baza modeli nie zawiera innegoo tym samym o tym samym Wyniku/WnioskuWyniku/Wniosku
Modele unikatowe i wielokrotne
W przeciwnym przypadku model jest modelem
wielokrotnym.
Dla wszystkich modeliDla wszystkich modeli
elementarnych dokelementarnych dokłładnych (1)adnych (1)
Numer_Modelu
jest liczbą
całkowitą, różną
dla różnych modeli i różną
od numerów reguł.
Stosowanie numerów różnych wynika stąd, że rady odwołują
się
do numerów reguł
lub
numerów modeli relacyjnych.
Dla wszystkich modeliDla wszystkich modeli
elementarnych dokelementarnych dokłładnych (2)adnych (2)
• "Warunek startowy"
jest logiczną
zmiennąłańcuchową;
• Wynik/Wniosek
jest wyznaczanytylko gdy Warunek startowy
jest prawdą
• Warunek startowy
= bez warunkujest zawsze prawdą
Dla wszystkich modeliDla wszystkich modeli
elementarnych dokelementarnych dokłładnych (3)adnych (3)
• Warunek startowy
nie może być
zanegowanymwnioskiem reguły lub relacyjnego
• Warunek startowy
różny od
bez warunkumoże również
wskazywać
model unikatowy,
który w danej sytuacji nie powinien byćstosowany.
•
Warunek startowy
różny od
bez warunkuwskazuje model wielokrotny, który w danej sytuacji należy zastosować.
Semafor_wyświetlania
= 0
informacja o stosowaniu nie jest wyświetlana w trakcie wnioskowania
= 1
informacja o stosowaniu jest wyświetlana w trakcie wnioskowania
Dla wszystkich modeliDla wszystkich modeli
elementarnych dokelementarnych dokłładnych (4)adnych (4)
model(Numer_modelu,"Warunek startowy","Wynik"/"Wniosek", "Pierwszy Argument", "Operacja"/"Relacja", "Drugi Argument",
Semafor_wyświetlania)
Modele elementarne podstawowe Modele elementarne podstawowe dokdokłładneadne
Modele elementarne podstawowe Modele elementarne podstawowe dokdokłładneadne
"Wynik"/"Wniosek"
•
"Wynik"–
rzeczywista zmienna łańcuchowa dla arytmetycznego
•
"Wniosek"
- logiczna zmienna łańcuchowa dla relacyjnego
Modele elementarne podstawowe Modele elementarne podstawowe dokdokłładneadne
"Pierwszy Argument", "Drugi Argument”
rzeczywiste lub całkowite zmienne łańcuchowe, zarówno dla arytmetycznego jak i dla relacyjnego
Modele elementarne podstawowe Modele elementarne podstawowe dokdokłładneadne
"Operacja"
• modele arytmetyczne z dwoma argumentamiwykonują
operacje:
"+", "
", "", "/", "div", "mod",
"min", "max", "%", "A^N",
"zaokrąglenie_do_N"
N –
liczba naturalna
Modele elementarne podstawowe Modele elementarne podstawowe dokdokłładneadne "Operacja"
• modele arytmetyczne z jednym argumentemwykonują
operacje
"sqrt",
"sin",
"cos",
"tan",
"arctan",
"log",
"ln",
"exp",
"round",
"trunc",
"abs",
"="
przy czym "Drugi Argument"
=
"0"
Modele elementarne podstawowe dokModele elementarne podstawowe dokłładneadne
"Relacja"
• modele relacyjne testują
relacje:
">", "==", "<", ">=",
"<=", "><", "<>"
Sens elementarnego podstawowego Sens elementarnego podstawowego dokdokłładnego arytmetycznego:adnego arytmetycznego:
model(Nr_Modelu, "Start", "Wynik", "X1", "+", "X2",
Semafor_wyświetlania)
to
Wynik
= X1
+ X2
Jeżeli
Start
jest prawdą
Sens elementarnego podstawowego Sens elementarnego podstawowego dokdokłładnego arytmetycznego:adnego arytmetycznego:
model(Nr_Modelu, "Start", "Wynik", "X1", "+", "X2",
Semafor_wyświetlania)
to
Wynik
jest nieokreślony
Jeżeli
Start
nie jest prawdą
Sens elementarnego podstawowego Sens elementarnego podstawowego dokdokłładnego relacyjnego:adnego relacyjnego:
model(Nr_Modelu, "Start", "Wniosek", "X1", "<= ", "X2 ", Semafor_wyświetlania)
to
Wniosek
jest prawdą
Jeżeli
Start
jest prawdą
i X1 <= X2
Sens elementarnego podstawowego Sens elementarnego podstawowego dokdokłładnego relacyjnego:adnego relacyjnego:
model(Nr_Modelu, "Start", "Wniosek", "X1", "<= ", "X2 ", Semafor_wyświetlania)
to
Wniosek
jest nieokreślony
Jeżeli
Start
nie jest prawdą
lub
X1 > X2
Modele elementarne rozszerzone Modele elementarne rozszerzone dokdokłładneadne
model_r(Numer_Modelu,"Warunek startowy","Wynik" /"Wniosek", "Operacja"/"Relacja",
Lista_Argumentów,Semafor_wyświetlania)
Model elementarny rozszerzony Model elementarny rozszerzony dokdokłładnyadny
"Wynik"/"Wniosek"
•
"Wynik"–
rzeczywista zmienna łańcuchowa dla arytmetycznego
•
"Wniosek"
- logiczna zmienna łańcuchowa dla relacyjnego
Model elementarny rozszerzony dokModel elementarny rozszerzony dokłładnyadny
"Operacja"
• modele arytmetyczne wykonują
operacje
"+",
"",
"max_list",
"min_list"
Model elementarny rozszerzony dokModel elementarny rozszerzony dokłładnyadny
"Relacja"
• modele relacyjne testują
relacje:
"<,<", "<,<=", "<=,<", "<=,<="
Model elementarny rozszerzony arytmetyczny Model elementarny rozszerzony arytmetyczny dokdokłładnyadny
Lista_Argumentów
["Argument_1","Argument_2",...., "Argument_n"]
"Argument_i"
= rzeczywista lub całkowita zmienna łańcuchowa
n –
„dowolnie”
duże
Sens elementarnego rozszerzonego Sens elementarnego rozszerzonego arytmetycznego dokarytmetycznego dokłładnego:adnego:
model_r(Nr_Modelu, "Start", "Wynik", "+",
["X1", "X2 ,..., "Xn"],Semafor_wyświetlania)
to
Wynik = X1 + X2 + ... +Xn
Jeżeli
Start
jest prawdą
Sens elementarnego rozszerzonego Sens elementarnego rozszerzonego arytmetycznego dokarytmetycznego dokłładnego:adnego:
model_r(Nr_Modelu, "Start", "Wynik", "+", ["X1", "X2 ,..., "Xn"],
Semafor_wyświetlania)
to
Wynik jest nieokreślony
Jeżeli
Start
nie jest prawdą
Model elementarny rozszerzony relacyjny dokModel elementarny rozszerzony relacyjny dokłładnyadny
Lista_Argumentów
["Ograniczenie dolne", "Wielkość
testowana", "Ograniczenie górne"]
Rzeczywiste zmienne łańcuchowe
"Ograniczenie dolne"
"Wielkość
testowana"
"Ograniczenie górne"
Sens elementarnego rozszerzonego Sens elementarnego rozszerzonego relacyjnego dokrelacyjnego dokłładnego:adnego:
model_r(Nr_Modelu, "Start", "Wniosek",
"
<,<= ", ["Ogr_d", "X", "Ogr_g"],Semafor_wyświetlania)
Jeżeli
Start
jest prawdą
i Ogr_d < X <= Ogr_g
to
Wniosek
jest prawdą
Sens elementarnego rozszerzonego Sens elementarnego rozszerzonego relacyjnego dokrelacyjnego dokłładnego:adnego:
model_r(Nr_Modelu, "Start", "Wniosek",
"
<,<= ", ["Ogr_d", "X", "Ogr_g"],Semafor_wyświetlania)
Jeżeli
Start
nie jest prawdą
lub X <= Ogr_d lub Ogr_g < X
to
Wniosek
jest nieokreślony
Model elementarny liniowy dokModel elementarny liniowy dokłładnyadny
model_liniowy(Numer_Modelu, "Warunek startowy","Wynik", Lista_współczynników, Lista_Zmiennych,Semafor_wyświetlania)
Model elementarny liniowy dokModel elementarny liniowy dokłładnyadny
"Wynik"
rzeczywista
zmienna łańcuchowa
Model elementarny liniowy dokModel elementarny liniowy dokłładnyadny
"Lista_współczynników"
["A_1", "A_2",..., "A_n"]
gdzie
"A_i"
-
rzeczywiste zmienne łańcuchowe
Model elementarny liniowy dokModel elementarny liniowy dokłładnyadny
Lista_zmiennych
["X_1", "X_2",..., "X_n"]
gdzie
"X_i"
-
rzeczywiste zmienne łańcuchowe
Sens elementarnego liniowego dokSens elementarnego liniowego dokłładnegoadnego
toWynik =
A_1 * X_1 + A_2 * X_2 + A_3 * X_3
model_liniowy(Numer_Modelu, "Start", "Wynik",
["A_1", "A_2", "A_3"], ["X_1", "X_2", "X_3"],
Semafor_wyświetlania)
jeżeli
Start
jest prawdą
Sens elementarnego liniowego dokSens elementarnego liniowego dokłładnego:adnego:
toWynik jest nieokreślony
model_liniowy(Numer_Modelu, "Start", "Wynik",
["A_1", "A_2", "A_3"], ["X_1", "X_2", "X_3"],
Semafor_wyświetlania)
jeżeli
Start
nie
jest prawdą
Model elementarny wielomianowy dokModel elementarny wielomianowy dokłładny:adny:
model_wielomianowy(Numer_Modelu, "Warunek startowy","Wynik", "Wartość
zmiennej",
Lista_współczynników, Lista_Potęg,Semafor_wyświetlania)
Model elementarny wielomianowy dokModel elementarny wielomianowy dokłładny:adny:
"Wynik"
rzeczywista zmienna łańcuchowa
Model elementarny wielomianowy dokModel elementarny wielomianowy dokłładny:adny:
"Wartość
Zmiennej"
rzeczywista zmienna łańcuchowa, dla której jest wyznaczana
wartość
wielomianu
Model elementarny wielomianowy dokModel elementarny wielomianowy dokłładny:adny:
Lista_współczynników
["A_1", "A_2",..., "A_n"]
gdzie:
"A_i"
-
rzeczywista zmienna łańcuchowa
Model elementarny wielomianowy dokModel elementarny wielomianowy dokłładny:adny:
Lista_potęg
[0,1,2,...,n-1]
n –
„dowolnie”
duże
Lista liczb całkowitych
(niekoniecznie kolejnych)
to Wynik = A_0 * 3^0 + A_2 * 3^2 + A_5 * 3^5
Sens elementarnego wielomianowego Sens elementarnego wielomianowego dokdokłładnego:adnego:
model_wielomianowy(Numer_Modelu, "
Start "," Wynik ", "
3 ", ["A_0", "A_2", ”A_5”]
,
[0,2,5]
,Semafor_wyświetlania)
Jeżeli
Start
jest prawdą
to Wynik jest nieokreślony
Sens elementarnego wielomianowego Sens elementarnego wielomianowego dokdokłładnego:adnego:
model_wielomianowy(Numer_Modelu, "
Start "," Wynik ", "
3 ", ["A_0", "A_2", ”A_5”]
,
[0,2,5]
,Semafor_wyświetlania)
Jeżeli
Start
nie jest prawdą
Modele mogModele mogąą
sisięę
zagniezagnieżżddżżaaćć::
Zagnieżdżanie modeli arytmetycznych: wynik jednego może być
argumentem
innego:
model(N, St_N, "Wynik_N", A, O_N, B, 1)
model (M, St_M, Wynik_M, "Wynik_N"
, O_M, G, 1)
Modele mogModele mogąą
sisięę
zagniezagnieżżddżżaaćć::
Zagnieżdżanie modeli relacyjnych i innych: wniosek jednego relacyjnego może być
warunkiem stosowania innego:
model(N, _ , "Wniosek_N", A, R_N, B, 1)
model (M, "Wniosek_N", Wynik_M,
C, O_M, D, 1)
Modele relacyjne i reguModele relacyjne i regułły mogy mogąą
sisięę zagniezagnieżżddżżaaćć::
Zagnieżdżanie modeli relacyjnych i reguł:wniosek relacyjnego może być
warunkiem
reguły
model(N, _, "Wniosek_N",
A, R_N, B, 1])
reguła(M, Wniosek_M, [..., "Wniosek_N",..])
ReguRegułły i modele mogy i modele mogąą
sisięę
zagniezagnieżżddżżaaćć::
Zagnieżdżanie reguł
i modeli:wniosek reguły może być
warunkiem
startowym
reguła(N, "Wniosek_N", Lista_warunków,1)
model (M, "Wniosek_N", Wynik_M, A ,”op_M”, B, 1)
ZagnieZagnieżżddżżajająące sice sięę
modele mogmodele mogąą
miemiećć argumenty dwojakiego rodzaju:argumenty dwojakiego rodzaju:
Argumenty dopytywalne: nie są
wynikami modeli. Wartość
tych argumentów jest określana
przez użytkownika systemu ekspertowego
ZagnieZagnieżżddżżanie anie modelimodeli
Argumenty niedopytywalne: są
wynikami modeli. Wartość
liczbowa tych argumentów jest określana
przez system ekspertowy
ZagnieZagnieżżddżżajająące sice sięę
modele mogmodele mogąą
miemiećć warunki startowe dwojakiego rodzaju:warunki startowe dwojakiego rodzaju:
Warunki startowe dopytywalne: nie są
wnioskami modeli relacyjnych ani wnioskami reguł. Wartość
tych warunków startowych jest określana przez użytkownika systemu ekspertowego
ZagnieZagnieżżddżżanie anie modelimodeli
Warunki startowe niedopytywalne: są
wnioskami modeli relacyjnych lub wnioskami reguł. Wartość
logiczna tych warunków startowych jest określana przez system ekspertowy
Problem:Problem:
Jak sprawiJak sprawićć, by w odpowiedniej sytuacji by, by w odpowiedniej sytuacji byłł stosowany odpowiedni model?stosowany odpowiedni model?
Modele o wielokrotnych wynikachModele o wielokrotnych wynikach
RozwiRozwiąązanie 1:zanie 1:
definiując warunki startowe jako dopytywalne wzajemnie wykluczające się
dzięki stosowaniu odpowiedniej bazy ograniczeń.
Modele o wielokrotnych wynikachModele o wielokrotnych wynikach
PrzykPrzykłład dla rozwiad dla rozwiąązania 1zania 1
model(10,"A","Wynik","X1","+","X2",1)model_liniowy(11,"nie_A","Wynik",
["X1","X2","X3"],["1","1","-1"],1)
ograniczenie(1, ["A","nie_A"])
PrzykPrzykłład dla rozwiad dla rozwiąązania 1zania 1
model(10,"A","Wynik","X1","+","X2",1)model_liniowy(11,"nie_A","Wynik",
["X1","X2","X3"],["1","1","-1"],1)
ograniczenie(1, ["A","nie_A"])
RozwiRozwiąązanie 2:zanie 2:
definiując warunki startowe jako odpowiednio wykluczające się
wnioski reguł
Modele o wielokrotnych wynikachModele o wielokrotnych wynikach
PrzykPrzykłład dla rozwiad dla rozwiąązania 2zania 2
model(10,"War_1","Wynik","X1","+","X2",1)model_liniowy(11,"War_2","Wynik",["X1","X2","X3"],
["1","1","-1"],1)model_liniowy(12,"War_3","Wynik",["X4","X5","X6"],
["1","1","1"],1)model_r(13,"War_4","Wynik","*",["X1","X2","X3"],1)
reguła(1,"War_1",["A","B"],_)reguła(2,"War_2",["A","nie_B"],_)reguła(3,"War_3",["nie_A","B"],_)reguła(4,"War_4",["nie_A","nie_B"],_)
ograniczenie(1, ["A","nie_A"])
RozwiRozwiąązanie 3:zanie 3:
definiując warunki startowe jako odpowiednio wykluczające się
wnioski modeli relacyjnych
i informując o tym system wnioskujący za pomocą klauzuli:
modele_ekskluzywne(Lista_warunków_startowych_wykluczających_się).
Modele o wielokrotnych wynikachModele o wielokrotnych wynikach
PrzykPrzykłład dla rozwiad dla rozwiąązania 3zania 3
model(11,"bez warunku","Wniosek_1","A","<","-10",1)model_r(12,"bez warunku","Wniosek_2",
"<=,<",["-10","A","0.0"],1)model_r(13,"bez warunku","Wniosek_3",
"<=,<=",["0.0","A","10"],1)model(14,"bez warunku","Wniosek_4","10","<","A",1)
model(15,"Wniosek_1","Wynik","AA","+","BB",1)model(16,"Wniosek_2","Wynik","CC","+","DD",1)model(17,"Wniosek_3","Wynik","EE","+","FF",1)model(18,"Wniosek_4","Wynik","GG","+","HH",1)
modele_ekskluzywne(["Wniosek_1","Wniosek_2","Wniosek_3","Wniosek_4"])
BAZA RAD BAZA RAD
Każdej regule i każdemu modelowi relacyjnemu może być
przyporządkowana
co najwyżej jedna rada
BAZA RAD BAZA RAD
rada(numer_reguły/modelu, "nazwa_pliku_rady_dla_reguły/
modelu_relacyjnego.hlp")
Klauzule bazy rad:
DYNAMICZNA BAZA DANYCHDYNAMICZNA BAZA DANYCH
Dynamiczna baza danych jest Dynamiczna baza danych jest bazbaząą
relacyjnrelacyjnąą..
Podstawowe relacje dla BED:Podstawowe relacje dla BED:––
prawda("Warunek") = prawda("Warunek") = „„Warunek jest prawdWarunek jest prawdąą””
––
nieprawda("Warunek")nieprawda("Warunek")
= = „„Warunek jest Warunek jest nieprawdnieprawdąą””
Zawiera Zawiera deklaracje udeklaracje użżytkownikaytkownika
odnoodnośśnie donie do warunkwarunkóów dopytywalnychw dopytywalnych
albo albo warunki warunki
niedopytywalneniedopytywalne, uznane za prawdziwe w , uznane za prawdziwe w wyniku dotychczasowych wnioskowawyniku dotychczasowych wnioskowańń. .
Metody wnioskowaniaMetody wnioskowania
Wnioskowanie w przWnioskowanie w przóódd
((forward forward chainingchaining, od warunk, od warunkóów do wniosku)w do wniosku)
Wnioskowanie wsteczWnioskowanie wstecz
((backward backward
chainingchaining, od hipotezy do warunk, od hipotezy do warunkóów)w)
Przeznaczenie wnioskowania Przeznaczenie wnioskowania elementarnego dokelementarnego dokłładnego w przadnego w przóódd
Wyznaczenie Wyznaczenie --
dla danej bazy wiedzy dla danej bazy wiedzy -- wszystkich faktwszystkich faktóóww
i i wszystkich wartowszystkich wartośści ci
zmiennychzmiennych
wynikajwynikająących:cych:
z z warunkwarunkóów dopytywalnychw dopytywalnych, kt, któóre zostare zostałły y uznane przez uuznane przez użżytkownika za fakty, orazytkownika za fakty, oraz
z z argumentargumentóów dopytywalnychw dopytywalnych, kt, któórych wartorych wartośści ci zostazostałły zadeklarowane przez uy zadeklarowane przez użżytkownika. ytkownika.
Przeznaczenie wnioskowania Przeznaczenie wnioskowania elementarnego dokelementarnego dokłładnego w przadnego w przóódd
Nie jesteNie jesteśśmy informowani:my informowani:
o o wnioskachwnioskach
nie wynikajnie wynikająących z warunkcych z warunkóów w dopytywalnych uznanych przez udopytywalnych uznanych przez użżytkownika za ytkownika za fakty, orazfakty, oraz
o o wynikachwynikach, kt, któórych wartorych wartośści nie moci nie możżna na wyznaczywyznaczyćć
z wartoz wartośści argumentci argumentóów w
dopytywalnych zadeklarowanych przez dopytywalnych zadeklarowanych przez uużżytkownika. ytkownika.
Wnioskowanie elementarne Wnioskowanie elementarne dokdokłładne w przadne w przóódd
Przeznaczone dla baz wiedzy BED, tzn. dla baz Przeznaczone dla baz wiedzy BED, tzn. dla baz nie zawierajnie zawierająących zanegowanych warunkcych zanegowanych warunkóów w niedopytywalnych. niedopytywalnych.
MoMożżna stosowana stosowaćć
dla baz z zanegowanymi dla baz z zanegowanymi warunkami dopytywalnymi.warunkami dopytywalnymi.
A C H
D
B E
L
Wnioskowanie elementarne dokWnioskowanie elementarne dokłładne adne w przw przóód: przykd: przykłład (a)ad (a)
A C H
D
B E
Nowy fakt:
D
Nowy fakt:
L
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
A C H
B E
Dynamiczna baza danych:Fakty
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
Baza Reguł
Wnioskowanie elementarne Wnioskowanie elementarne dokdokłładne w przadne w przóód: przykd: przykłład (b)ad (b)
A C H
D
B E
L F
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
Nowy fakt:
F
Nowy fakt:
G
Dynamiczna baza danych:Fakty
A C H
D
B E
L F
G
Baza Reguł
Wnioskowanie elementarne Wnioskowanie elementarne dokdokłładne w przadne w przóód: przykd: przykłład (c)ad (c)
B E L F
A C H
D
G J M
Nowy fakt:J
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
A C H D
B E L F
G J
Dynamiczna baza danych:Fakty
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
Baza Reguł
Nowy fakt:M
Wnioskowanie elementarne Wnioskowanie elementarne dokdokłładne w przadne w przóód z bazd z baząą
ograniczeograniczeńń: : Baza Reguł
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
Nowy fakt: DA H D
Dynamiczna baza danych:Fakty
1. (A , C, E)2. (B, H)
Baza Ograniczeń
Z faktów A
i H
wynika tym razem tylko fakt D.
SSłłaboabośćść
wnioskowania elementarnego wnioskowania elementarnego dokdokłładnego w przadnego w przóódd
Wyznacza Wyznacza wszystkie wnioskiwszystkie wnioski
bbęęddąące prawdce prawdąą, , nawet te, ktnawet te, któóre nie sre nie sąą
dla udla użżytkownika ytkownika
interesujinteresująącece
Wyznacza Wyznacza wszystkie wynikiwszystkie wyniki
dajdająące sice sięę wyznaczywyznaczyćć,,
nawet te, ktnawet te, któóre nie sre nie sąą
dla dla
uużżytkownika interesujytkownika interesująącece
Przeznaczenie wnioskowania Przeznaczenie wnioskowania elementarnego dokelementarnego dokłładnego adnego
wsteczwsteczWeryfikowanie hipotezWeryfikowanie hipotez
HipotezaHipoteza: : wniosek reguwniosek regułły lub modelu y lub modelu relacyjnegorelacyjnego, kt, któórego prawdziworego prawdziwośćść
prpróóbuje sibuje sięę
potwierdzipotwierdzićć
na podstawie: na podstawie:
warunkwarunkóów dopytywalnych w dopytywalnych uznanych za fakty, uznanych za fakty, orazoraz
argumentargumentóów dopytywalnychw dopytywalnych
o znanych o znanych wartowartośściachciach
Wnioskowanie elementarne Wnioskowanie elementarne dokdokłładne wsteczadne wstecz
Na mocy Na mocy zazałłoożżenia otwartego enia otwartego śświatawiata::
jejeżżeli hipotezy nie moeli hipotezy nie możżna uznana uznaćć
za prawdza prawdęę, ,
to uznaje sito uznaje sięę, , żże nie wiemy, czy jest prawde nie wiemy, czy jest prawdąą, ,
czy nie jest prawdczy nie jest prawdąą
i uwai uważżamy jamy jąą
za nieznanza nieznanąą
Wnioskowanie elementarne Wnioskowanie elementarne dokdokłładne wsteczadne wstecz
Przeznaczone dla baz wiedzy BED, tzn. dla Przeznaczone dla baz wiedzy BED, tzn. dla baz nie zawierajbaz nie zawierająących zanegowanych cych zanegowanych warunkwarunkóów niedopytywalnych. w niedopytywalnych.
MoMożżna stosowana stosowaćć
dla baz z zanegowanymi dla baz z zanegowanymi warunkami dopytywalnymi.warunkami dopytywalnymi.
Wnioskowanie elementarne Wnioskowanie elementarne dokdokłładne wstecz: przykadne wstecz: przykłład (a)ad (a)
Weryfikacja hipotezy FWeryfikacja hipotezy F
B E
A
C H1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
Brak
F
Czy jest C i
D?
Jest
C, brak
D.
A C H
B E
Dynamiczna baza danych:Fakty 1. A D
2. F , H
G3. B
L
4. D , J
M5. C , D
F
6. A , E
J
Baza Reguł
Wnioskowanie elementarne Wnioskowanie elementarne dokdokłładne wstecz: przykadne wstecz: przykłład (b)ad (b)
Weryfikacja hipotezy FWeryfikacja hipotezy F
Czy jest A?
Jest
A, więc jest D, więc jest
F
B E F
A C H
Dynamiczna baza danych:Fakty
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
Baza Reguł
Wnioskowanie elementarne dokWnioskowanie elementarne dokłładne adne wstecz z bazwstecz z baząą
ograniczeograniczeńń: (a): (a)
Weryfikacja hipotezy FWeryfikacja hipotezy F
A H
Dynamiczna baza danych:Fakty
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
7.
H , D
F
Baza Reguł
1. A D2. F H
G
3. B
L4. D J
M
5. C D
F6. A E
J
7.
H D
F
Brak
F 1. (A , C, E)2. (B, H)
Baza Ograniczeń
Czy jest C i D?
A H
Brak
C
Wnioskowanie elementarne dokWnioskowanie elementarne dokłładne adne wstecz z bazwstecz z baząą
ograniczeograniczeńń: (b): (b)
Weryfikacja hipotezy FWeryfikacja hipotezy FBaza Reguł
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
7. H , D
F
A H
Dynamiczna baza danych:Fakty
Czy jestH i
D?
1. (A , C, E)2. (B, H)
BazaOgraniczeń
A H F
1. A D2. F H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
7. H , D
F
Jest
H,brak
D
Czy jest
A?
Jest
A, więc jest
D, więc jest F
SprzecznoSprzecznośści w elementarnych ci w elementarnych dokdokłładnych bazach reguadnych bazach regułł
i bazach i bazach
ograniczeograniczeńń
(5)(5)2. 2. SprzecznoSprzecznośści typu SED2ci typu SED2: warunki regu: warunki regułły sy sąą
sprzeczne w wyniku interakcji bazy regusprzeczne w wyniku interakcji bazy regułł
i bazy i bazy ograniczeograniczeńń. .
Np.:Np.:
1. A , B , C W
Baza reguł
1. (A , C)
Baza ograniczeń
SprzecznoSprzecznośści w elementarnych ci w elementarnych dokdokłładnych bazach modeli (1) adnych bazach modeli (1)
Baza modeli jest bezpoBaza modeli jest bezpośśrednio sprzeczna, jerednio sprzeczna, jeżżeli wynik eli wynik arytmetycznego jest toarytmetycznego jest tożżsamy z jednym z jego samy z jednym z jego argumentargumentóów. Np.:w. Np.:
model(N, St_N, model(N, St_N, WynikWynik, A, , A, ““O_NO_N””, , WynikWynik, 1]), 1])
SprzecznoSprzecznośści w elementarnych ci w elementarnych dokdokłładnych bazach modeli (2) adnych bazach modeli (2)
Baza modeli jest gBaza modeli jest głęłęboko sprzeczna, jeboko sprzeczna, jeżżeli wynik eli wynik arytmetycznego jest toarytmetycznego jest tożżsamy z jednym z samy z jednym z argumentargumentóów modeli z nim siw modeli z nim sięę
zagniezagnieżżddżżajacych. ajacych.
Np.:Np.:
model(N, St_N, model(N, St_N, WynikWynik, A, , A, ““O_NO_N””, , BB, 1]), 1])
model(M, St_N, model(M, St_N, BB, C, , C, ““O_NO_N””, , WynikWynik, 1]), 1])
SprzecznoSprzecznośści ci łąłączne czne elementarnych dokelementarnych dokłładnych bazach adnych bazach
modeli i baz regumodeli i baz regułł
Baza modeli jest bezpoBaza modeli jest bezpośśrednio rednio łąłącznie cznie sprzeczna z bazsprzeczna z baząą
reguregułł, je, jeżżeli warunek eli warunek
stosowania relacyjnego jest wnioskiem stosowania relacyjnego jest wnioskiem reguregułły, kty, któórej warunkiem jest wniosek tego rej warunkiem jest wniosek tego relacyjnego. Np.:relacyjnego. Np.:
model(N, model(N, War_stosWar_stos, , WniosekWniosek, A, , A, ““RelacjaRelacja””, , BB, 1]), 1])
reguregułła(M,a(M,War_stosWar_stos,[,[WniosekWniosek,....],_),....],_)
SprzecznoSprzecznośści ci łąłączne czne elementarnych dokelementarnych dokłładnych bazach adnych bazach
modeli i baz regumodeli i baz regułłBaza modeli jest poBaza modeli jest pośśrednio rednio łąłącznie sprzeczna cznie sprzeczna z bazz baząą
reguregułł, je, jeżżeli warunek stosowania eli warunek stosowania
relacyjnego jest wnioskiem regurelacyjnego jest wnioskiem regułły, y, zagniezagnieżżddżżonej z reguonej z regułąłą
ktktóórej warunkiem jest rej warunkiem jest
wniosek tego relacyjnego. Np.:wniosek tego relacyjnego. Np.:
model(N, model(N, War_stosWar_stos, , WniosekWniosek, A, , A, ““RelacjaRelacja””, , BB, 1]), 1])
reguregułła(M,a(M,War_stosWar_stos,[,[BB,....],_),....],_)reguregułła(P, a(P, BB,[,[WniosekWniosek,....],_),....],_)
NadmiarowoNadmiarowośści w elementarnych ci w elementarnych dokdokłładnych bazach reguadnych bazach regułł
(1)(1)
1. Nadmiarowo1. Nadmiarowośści typu NED1_1ci typu NED1_1: : wystwystęępowanie regupowanie regułł
o jednakowych o jednakowych
wnioskach i jednakowych warunkach. wnioskach i jednakowych warunkach. Np.w przypadku reguNp.w przypadku regułł: :
1. A , B , G 1. A , B , G
YY2. C , D 2. C , D
AA
3. E , F 3. E , F
BB4. C , D , E , F, G 4. C , D , E , F, G
YY
reguregułła a 44
ma takie same warunki i taki ma takie same warunki i taki sam wniosek jak regusam wniosek jak regułła a 1 1 wraz z wraz z reguregułłami ami 22
i i 33. .
NadmiarowoNadmiarowośści w elementarnych ci w elementarnych dokdokłładnych bazach reguadnych bazach regułł
(2)(2)
2. Nadmiarowo2. Nadmiarowośści typu NED1_2ci typu NED1_2: : wystwystęępowanie powanie reguregułł
subsumowanychsubsumowanych. .
NpNp..w przypadku reguw przypadku regułł1. A , B , C , D 1. A , B , C , D
WW
2. A , B 2. A , B
WW
reguregułła 1 jest a 1 jest subsumowanasubsumowana
(zawarta) w (zawarta) w regule regule 22, gdy, gdyżż
obydwie majobydwie mająą
taki sam taki sam
wniosek, a warunki reguwniosek, a warunki regułły y 22
ssąą podzbiorem warunkpodzbiorem warunkóów reguw regułły y 11. Regu. Regułęłę
11
momożżna wina więęc usunc usunąćąć
z bazy reguz bazy regułł..
NadmiarowoNadmiarowośści w elementarnych ci w elementarnych dokdokłładnych bazach reguadnych bazach regułł
(3)(3)
2. Nadmiarowo2. Nadmiarowośści typu NED2ci typu NED2: : ŹŹrróóddłłem em nadmiarowonadmiarowośści typu ci typu NED2NED2
jest interakcja jest interakcja
elementarnej dokelementarnej dokłładnej bazy reguadnej bazy regułł
i bazy ograniczei bazy ograniczeńń. . NpNp
1. A , B , C W2. A , B , D W3. A , B , E W
Baza Reguł BazaOgraniczeń
1. (C , D , E)
1. A , B W
Baza Regułredukują
się
do:
Wnioskowanie elementarne w przWnioskowanie elementarne w przóód d ze sprzecznze sprzecznąą
bazbaząą
reguregułł: przyk: przykłład (a)ad (a)
C H B E
L
Nowy fakt: L
C H B E
Dynamiczna baza danych:Fakty 1. A D
2. F , H
G3. B
L
4. D , J
M5. C , D
F
6. A , E
J7. D , P
A
Baza Reguł
Z faktów C , H , B i E
wynika tylko fakt L
: reguła 1 jest zewnętrznie bezpośrednio SED1-sprzeczna z regułą
7, a więc nie ma możliwości ich testowania.
wstecz ze sprzecznwstecz ze sprzecznąą
bazbaząą
reguregułł: : przykprzykłład (a) ad (a)
Weryfikacja hipotezy FWeryfikacja hipotezy F
C
H B E
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
7. D , P
A
Brak
F
Czy jest C i D?
Jest
C, brak D.
C H B E
Dynamiczna baza danych:Fakty
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
7. D , P
A
Baza Reguł
Wnioskowanie elementarne dokWnioskowanie elementarne dokłładne adne wstecz ze sprzecznwstecz ze sprzecznąą
bazbaząą
reguregułł: :
przykprzykłład (b) ad (b) Weryfikacja hipotezy FWeryfikacja hipotezy F
C H B E P1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
7. D , P
A
Czy jest A?
Brak
A
Czy jest D i
P?.
C H B E P
Dynamiczna baza danych:Fakty 1. A D
2. F , H
G3. B
L
4. D , J
M5. C , D
F
6. A , E
J7. D , P
A
Baza Reguł
Wnioskowanie elementarne dokWnioskowanie elementarne dokłładne wstecz ze sprzecznadne wstecz ze sprzecznąą bazbaząą
reguregułł: przyk: przykłład (c) ad (c)
Weryfikacja hipotezy FWeryfikacja hipotezy F
C H B E P1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
7. D , P
A
Jest
D,brak P
Brak
A
Czy jest D i
P?.
C H B E P
Dynamiczna baza danych:Fakty 1. A D
2. F , H
G3. B
L
4. D , J
M5. C , D
F
6. A , E
J7. D , P
A
Baza Reguł
Czy jest A?.
Wnioskowanie elementarne dokWnioskowanie elementarne dokłładne wstecz adne wstecz ze sprzecznze sprzecznąą
bazbaząą
reguregułł: przyk: przykłład (d) ad (d)
Weryfikacja hipotezy FWeryfikacja hipotezy F
C H B E P
Dynamiczna baza danych:Fakty
1. A D2. F , H
G
3. B
L4. D , J
M
5. C , D
F6. A , E
J
7. D , P
A
Baza Reguł
Reguła 1 jest zewnętrznie bezpośrednio SED1-sprzeczna z regułą
7, co doprowadza do niekończących się
pętel i wynikajacego stąd "zawieszenia
się" systemu wnioskującego.
O potrzebie ontologiiO potrzebie ontologii
OntologiaOntologia
w sensie w sensie informatycznyminformatycznym
to to formalna reprezentacja pewnej dziedziny formalna reprezentacja pewnej dziedziny wiedzy, na ktwiedzy, na któórrąą
skskłłada siada sięę
zapis zbiorzapis zbioróów w
pojpojęćęć
i relacji mii relacji mięędzy nimi. dzy nimi.
Bardzo czBardzo częęsto przed tworzeniem bazy sto przed tworzeniem bazy wiedzy musimy uzupewiedzy musimy uzupełłninićć
ontologiontologięę
wiedzy wiedzy
bbęęddąącej przedmiotem bazy.cej przedmiotem bazy.
PrzestrzePrzestrzeńń decyzyjnadecyzyjna
Ile sytuacjji naleIle sytuacjji należży uwzgly uwzglęędnidniććtworztworząąc bazc bazęę
wiedzy?wiedzy?
PrzestrzePrzestrzeńń
decyzyjna dla bazy wiedzy decyzyjna dla bazy wiedzy KREDYTKREDYT
36 trójek atrybutowych
zły dostateczny dobry b.dobry Wskaźnik finansowy
reputacja
b. dobra
dobra
zła
zabezpieczenie
złe
dobre
b.dobre
Klasyfikacja zyskKlasyfikacja zyskóów dla bazy wiedzy w dla bazy wiedzy DyrektorDyrektor
0 zysk
Górna granica strat=
Dolna granica małego zysku
strata
Mały zysk
Duży zysk Bardzo
duży zysk
Górna granica małego zysku
=
Dolna granica dużego zysku
Górna granica dużego zysku=
Dolna granica bardzo dużego zysku
<<,<=
<,<=
<=
Testowanie Waga2.BEDTestowanie Waga2.BED
K M
St StMł Mł
pn
dn
n m nd
d nd m