część 1: wstęp systemy elementarne dokładne · antoni niederliński uniwersytet ekonomiczny w...

Post on 03-Aug-2020

0 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Antoni Antoni NiederliNiederlińńskiski

Uniwersytet EkonomicznyUniwersytet Ekonomiczny

w Katowicachw Katowicach

antoni.niederlinski@ue.katowiceantoni.niederlinski@ue.katowice. . plpl

informatyka1516ue@gmail.cominformatyka1516ue@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

top related