Ekspertni Sustavi Kroz Primjere

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 17

LOGO

EKSPERTNI SUSTAVI

Kroz primjere
Marin Japec

I'm sorry Dave, I'm afraid I can't do that. Hall 9000


EKSPERTNI SUSTAVI

Literatura

http://en.wikipedia.org/wiki/Category:Expert_systems
http://clipsrules.sourceforge.net/
http://www.aaai.org/aitopics/pmwiki/pmwiki.php/AITopics/ExpertSystems
...detaljnije na kraju predavanja
EKSPERTNI SUSTAVI

Sadraj

to emo raditi:

1 Upoznati se sa ljuskama ekspertnih sustava

2 Pogledati primjere ekspertnih sustava

3 Dati savjete za izgradnju ekspertnih sustava

to neemo raditi:

1 Rijeiti Vam labose

2 Raspravljati da li je Mirko Mioi ekspertni sustav


EKSPERTNI SUSTAVI

Ponovimo

1 2 3

Razlikujemo 2 skupine ES: U ekspertnom Ako sustav ne daje


sustavu znanje dobre rezultate
1. Potpora odluivanju upravlja tokom potrebno je
(davanje savjeta) programa. mijenjati bazu
znanja (dodati
2. Odluivanje
novo znanje), a ne
procedure koje
upravljaju njome
EKSPERTNI SUSTAVI

Podruja primjene

Kome je potreban ekspertni sustav?


Najea: *Kriket
Poslovanje

Igre Vojska

Medicina Banke, osiguravajue kue


Investitori
Financijski analitiari
Raunarstvo Pravo Odvjetnici
Planeri i dizajneri
Homer Simpson
Industrijski inenjeri
Bolnice,
Obrazovanje Fiziari
U pravilu na svako Itd. ..
*Detekcija pranja
podruje se moe
novca primjeniti!
EKSPERTNI SUSTAVI

Ljuske

Tata mata ljuski Fuzzy


Clips
Pyke
ExSys
Corvid

CLIPS
OPS5
SHINE
Orahova ljuska
Jess
EKSPERTNI SUSTAVI

Ljuske

Zato ljuske?

Zato ne? Alati koji nude gotov okvir izrade ekspertnog sustava
--> puno bra i efikasnija izrada ES-a

Generalna razlika meu ljuskama?


Jedna specifina ljuska daje na raspolaganje samo ogranieni
broj metoda za reprezentaciju znanja i zakljuivanja .
To je ujedno i mana ljuski.

Jezici implementacije? PROLOG, Lisp,C, Java, Ruby, Python,..


EKSPERTNI SUSTAVI

CLIPS

Sintaksa nalik LISP-u (okrugle zagrade kao delimiteri)

Razvijen 1984, u NASA centru

Vie paradigmatsko
programsko okruenje:
(3 naina prikaza znanja)
1. pravilima
Potpuno okruenje za CLIPS 2. proceduralno
razvoj ekspertnih sustava 3. objektno-orijentirano
ljuska

Radi kao samostalan alat, no Open source


mogue ga je pozvati i iz drugog jezika
EKSPERTNI SUSTAVI

CLIPS

Razlikuje velika i mala slova


injenice (facts) - Baza injenica predstavlja poetno stanje problema
Pravila (rules) - Baza pravila sadri operatore koji pretvaraju stanje problema u rjeenje

Mehanizam zakljuivanja(inference engine) u CLIPS-u radi u tri koraka:


1.Usporeuje injenice sa pravilima
2.Izabire koje pravilo izvriti
3.Izvrava odgovarajuu akciju zadanu uz pravilo

Watch CLIPS> (watch rules)


Reset CLIPS> (reset)
Run CLIPS> (run)
EKSPERTNI SUSTAVI

CLIPS-FACTS!

INJENICE
Pregledavanje baze injenica CLIPS> (facts)
Dodavanje podatka u bazu injenica: assert CLIPS> (assert (Homer voli pivo))
Brisanje injenice: retract CLIPS> (retract 0)
Brisanje svih injenica: clear CLIPS> (clear)
Definiranje vie injenica odjednom: deffacts CLIPS> (deffacts Simpsoni
(Homer voli pivo)
(Marge ima plavu kosu) )
Ili...uitavanje iz datoteke! Potrebno napraviti reset (tek tada dodajemo ih u bazu)
Koritenje predloaka(templates): deftemplate
(deftemplates Simpson
CLIPS> (deffacts Simpsoni
(slot ime (type STRING) )
(Simpson (ime Homer) )
(slot godine (type NUMBER)
(Simpson (ime Marge) (godine (34) ) )
(default 36)) )
EKSPERTNI SUSTAVI

CLIPS-RULES

PRAVILA
Sintaksa:
(defrule <imePravila>
<komentar(opcija)>
<deklaracija(opcija)>
Npr:
(defrule navike
Homerove navike
(salience 10)
Sa varijablama
(defrule navike
!
(?osoba dri pivo u ruci)
<premisa1> (Homer dri pivo u ruci) (Moe razgovara sa ?osoba))
... (Moe razgovara sa Homerom) =>
<premisaN> => (assert (?osoba se nalazi u baru) )
=> (assert (Homer se nalazi u baru) ) (assert (?osoba je sretan) )
<akcija1> (assert (Homer je sretan) ) )
... )
<akcijaM>
)
Vanost pravila: salience, raspon: [-10 000,10 000], vei broj, vea vanost, default 0

Vidi Clips Users Guide za vie informacija!


EKSPERTNI SUSTAVI

Primjeri ES1-medicina

Identificira bakterije koje uzrokuju teke infekcije


i preporuuje antibiotike sa dozom prilagoenom Pionirski projekt
pacijentovoj teini (~1970) Dendral
Identificiranje nepoznatih
70% sluajeva prihvatljiva terapija organskih molekula (~1960)

U praksi nije nikada zaivio zbog:


MYCIN 1.Premalog broja pravila(samo 400)
2. Previe ra. resursa

CADUCEUS

Mogao dijagnosticirati ~1000 bolesti (~1985) STD Wizard

Preporuuje testiranja i cjepljenja


vezana uz spolne bolesti
EKSPERTNI SUSTAVI

Primjeri ES1-ostalo

Dipmeter Advisor
Pomae u analizi podataka
dobivenih u istraivanju nafte

XCON
Bira komponente VAX sustava na
temelju narudbi kupaca.

E-Laboratorij Whale watcher Animal


Expert
Podrka poslovnim System
sustavima u graditeljstvu
Daje odgovor o kojoj vrsti kita se radi Zakljuuje o kojoj se ivotinji radi
EKSPERTNI SUSTAVI

Izgradnja eksp. sust.

Klasifikacija problema koje rjeavamo ekspertnim sustavima:

Interpretacija - podaci sa senzora -> razumijevanje signala, kemijskih struktura...


Predvianje - posljedice nekog dogaaja -> predvianje vremena, financijsko predvianje
Dijagnoza zakljuivanje pogreaka iz simptoma -> irok spektar podruja(medicina,elektronika...)
Dizajn izgradnja objekata koji zadovoljavaju neka ogranienja -> dizajn sklopova...
Planiranje generiranje niza aktivnosti koje postiu zadani cilj -> planiranje gibanja robota, planiranje puta...
Praenje prati ponaanje sustava da bi ga zatitio -> praenje rada elektrine centrale...
Debugiranje otklanja pogreke sustava -> pomo programerima...
Popravljanje dijagnosticira problem i rijeava ga -> raunalne mree...
Instrukcije omoguuje ispravljanje zabluda -> studentska zabluda da je izgradnja ekspertnog sustava teka...
Kontrola administrira sustav tako da eka probleme, planira rjeenja i prati potrebe aktivnosti -> kontrola misije...
Savjeti:
1. Fokusiranje u dubinu specifinog problema, a ne u irinu( npr. dijagnoza odreenog tipa kvara na
automobilu (umjesto openito kvara na automobilu,posebna vrsta cvijeta (umjesto cvijea openito))
2. Heuristika domena, za koju ne postoje jednostavna rjeenja.
3. Domena za koju imate jednostavno dostupan izvor informacija ( ovjek ekspert )
4. Ako je problem tei nego to ste oekivali, pojednostavite problem ograniavajui domenu

Ekspertni sustav: Gdje na apsolventsko putovanje? (CLIPS)!


Company Logo

EKSPERTNI SUSTAVI

Linkovi

Whale watcher: http://www.aiinc.ca/demos/whale.html


STD Wizard: http://www.stdwizard.org
Animal Expert System: http://www.lpa.co.uk/pws_dem7.htm
CLIPS : http://en.wikipedia.org/wiki/CLIPS
OPS5: http://en.wikipedia.org/wiki/OPS5
Pyke: http://pyke.sourceforge.net/overview/index.html
SHINE: http://en.wikipedia.org/wiki/SHINE_Expert_System
Jess: http://en.wikipedia.org/wiki/Jess_programming_language
Jess+fuzzyLogic: http://www.iit.nrc.ca/IR_public/fuzzy/fuzzyJToolkit2.html
FuzzyCLIPS: http://www.iit.nrc.ca/IR_public/fuzzy/fuzzyClips/fuzzyCLIPSIndex2.html

Dijagnoza kvara raunala:


http://www.zemris.fer.hr/predmeti/tes/NekiProjekti/PCkvar.clp
Ideje za projekt: http://www.zemris.fer.hr/predmeti/tes/Projects.txt
LOGO

You might also like