You are on page 1of 10

BEOGRADSKA POSLOVNA ŠKOLA

VISOKA ŠKOLA STRUKOVNIH STUDIJA

SEMINARSKI RAD
I.T. U BIZNISU

Tema: Ekspertni Sistemi

Mentor: Student:
Prof. Dragan Ćosić Krznaric Jovana 3cv/0118/11

10. Januar 2010


2

Sadrzaj

1 Ekspertni sistemi – Uvod............................................................................. 3


1.1 Inteligntne mašine.................................................................................. 3
1.2 Definicija i kratka istorija VI................................................................. 3
1.3 Ekspertni sistemi – pojam...................................................................... 3

2 Osnovne osobine ES.................................................................................... 4


2.1 Struktura i osobine................................................................................. 4
2.2 Programiranje naspram inženjerstva znanja.......................................... 5
2.3 Ljudi uključeni u ES razvoj................................................................... 6

3 Predstavljane znanja (knowledge rapresentation)........................................ 6


3.1 Tipovi znanja.......................................................................................... 7

4 Tehnike zaključivanja.................................................................................. 8

5 Literatura...................................................................................................... 10
3

1 Ekspertni sistemi – Uvod

1.1 Inteligentne mašine program za igranje šaha 1955 ili dama


1963, automatsko dokazivanje teorema
kao i ambiciozan pokušaj ostvarivanja
opšteg sistema za rešavanje problema
GPS1- baziran na traženju razlika i
operatora između ciljnog i trenutnog
stanja u bazi činjenica i operatora koji se
pokazao ipak slabim za složenije
probleme. VI je nakon početnih uspeha i
popularnosti došla u krizu početkom
sedamdesetih godina 20. veka kada je
shvaćeno da nisu dovoljni algoritmi
pretraživanja i simbolički programski
jezici sa simboličkom reprezentacijom
(baze) znanja da bi se rešili kompleksniji
problemi (čuveni primer prevođenja)
sa jednog prirodnog jezika na drugi i
nazad, tj. da za automasko prevođenje
nije dovoljna samo sintaksna analiza i
rečnik. Prvi uspešni ekspertni sistemi
kao što je to bio DENDRAL označili su
Odavno postoji želja (,,sveti gral") da se izlazak iz te krize.
napravi mašina koja bi bila sposobna da
obavlja posao koji zahteva intelektualne 1.3 Ekspertni sistemi - pojam
sposobnosti čoveka,npr. da igra šah. Tek
napretkom informatičke tehnologije od Sistemi bazirani na znanju (knowledge-
sredine 20. veka taj san postaje ostvariv. based systems) ili ekspertni sistemi
Nekoliko istraživaca na Dartmut stavljaju naglasak na znanje (bazu
koledzu 1956 g. učestvuje u konferenciji znanja) pre nego na način pretraživanja i
koji organizuje McCarthy na temu VI. zaključivanja. Uopštene metode
Pored pregleda postojećih dostignuća u zaključivanja i sistemi čija oblast nije
oblasti automatskih dokazivača teorema dovoljno specificirana se pokazuju
i programskih jezika, raspravlja se i o nedovoljno sposobnim za mnoge realne
mogućnosti razvoja računara koji bi bio probleme (i njihovo rešavanje u realnom
u stanju da simulira ljudsko vremenu). Ekspert je osoba koja
razmišljanje. Ovo okupljanje istrazivaca izuzetno dobro poznaje neku oblast
oznacava rodenje veštacke inteligencije ljudskog znanja kao i načine rešavanja
kao oblasti računarstva. problema vezanih za tu oblast.

Definicija: Ekspertni sistem je program


1.2Definicja i kratka istorija VI koji je projektovan da modelira
sposobnosti rešavanja problema
ljudskog eksperta u nekoj oblasti.

Defnicija Veštačka inteligencija (VI) Dve stvari se pre svega modeliraju u


je oblast računarstva čiji je cilj ekspertnom sistemu (ES): znanje esperta
rezonovanje na računaru na način i njegovo zaključivanje. Zato se ES
koji je sličan ljudskom. sastoji iz baze znanja i mašine

Veštačka inteligencija beleži prve


uspehe akademske prirode kao što su
prvi 1
(General Problem Solver - Newell, 1960)
4

2 Osnovne osobine

Na ovom dijagramu je prikazan odnos i


zaključivanja (inference engine). Znanje poređenje modela rada jednog ljudskog
koje nam ekspert pruža može se eksperta i strukture ekspertnog sistema.
predstavljati činjenicama, pravilima, Osnovna struktura ekspertnog sistema se
konceptima ili relacijama. Način i tako sastoji iz osnovnih komponenti:
problem njegovog predstavljanja jeste baze znanja, radne memorije (koja se
reprezentovanje znanja, dok način i menja tokom sesije u radu sa ES
problem zaključivanja na osnovu baze dobijenim novim činjenicama
znanja i zadatih upita je pitanje tehnika izaključcima) i mašine zaključivanja
zaključivanja.Ekspert je često veoma (procesor koji povezuje činjenice iz baze
neophodna osoba u mnogim znanja sa dobijenim zaključcima i
organizacijama, i postavlja se onda činjenicama iz radne memorije i izvlači
pitanje zašto ga zamenjivati mašinom ? nove zaključke o problemu). Pored ovih
Pre svega, donekle slično zameni nekih osnovnih komponenti postoje dodatno i
ljudi i njihovih poslova mašinom tokom neke osnovne osobine ekspertnih
industrijske revolucije, ekspertni sistem sistema:
može biti koristan kao pomoć kada
čovek nije raspoloživ, ili prosto kao alat  objašnjenja (kako, zašto) - u
koji olakšava posao i omogućava svakom trenutku u toku sesije sa
automatizaciju nekih postupaka, radi sa ES može se dobiti objašnjenje
većim stepenom formalizma koji kako je došao do nekog
isključuje mogućnost greške ili slabosti zaključka ili pitanja (ugrađno u
zbog ljudskog faktora i sl. Postoji i jedna sve komponente)
dodatna prednost - znanjem kao opštim
dobrom ili kapitalom neke organizacije  interfejs (prema korisniku) -
se lakše upravlja, lakše se prenosi i često se traži komunikacija
primenjuje jer ne zavisi u toj meri od prirodnim jezikom kroz
pojedinca-eksperta ako se koristi interaktivni dijalog s korisnikom
ekspertni sistem. Gotovo da nema (mada mogu biti zastupljeni i
oblasti ljudskih delatnosti gde nije multimedijalni i drugi sadržaji i
napravljen neki ES i uspešno vidovi komunikacije što zavisi
primenjivan i njihov broj geometrijski od prirode same oblasti i
raste. namene ES)

2.1 Struktura i osobine  razdvojeno znanje od kontrole -


veoma važna karakteristika ES
Ekspert / ekspertni sistem nasuprot klasičnim
proceduralnim programima gde
Dugotrajno pamćenje / se upravljačka kontrola u
Baza znaja programu meša sa raspoloživim
znanjem (kontrola tj.
zaključivanje kod ES se može
Zaključivanje/Mašina Savet menjati nezavisno od baze
znanja)
zaključivanja
 poseduje ekspertsku bazu –
baza znanja koja potiče pre
Kratkotrajno pamćenje/ svega od ljudksih eksperata, gde
Radna memorija se pod ekspertizom
podrazumeva sposobnost
efikasnog rešavanja problema u
nekoj oblasti
5

2 Osnovne osobine

 može napraviti grešku - kao i


 naglasak na ekspertizi - svako pravi ljucki ekspert
širenje oblasti znanja obavezno
nosi rizik da ES postane
neefikasan i nepotrebno složen 2.2 Programiranje naspram
(bilo je pokušaja inženjerstva znanja
ograničenoguspeha, GPS ili
Ham 1984.) - uvek je lak'šse Konvencionalno programiranje ima
rešavati problem kroz dobro poznate i proučene metode
potprobleme odnosno probleme razvoja i odvija se sekvencijalno
u podoblastima (iterativno), grubo rečeno u tri faze
redom (zivotni ciklus): projektovanje,
 koristi simbole (činjenice, kodiranje i provera / otklanjanje grešaka
koncepte, pravila) – (de-bug). Konvencionalni program je
predstavljanje znanja u završen tek nakon prolaska kroz sve tri
različitim strukturama (od faze do poslednje. Inženjerstvo znanja u
deklarativnih oblika kao što je odnosu na konvencionalno
prirodni jezik do potpuno programiranje nema još uvek tako dobro
proceduralnih) čini ES ustanovljene metodologije razvoja. Ovde
obrađivačima znanja nasuprot nije naglasak na obradi podataka
konvencionalnim proceduralnim (algoritmom, programom) već na
programima kao procesorima oblikovanju (baze) znanja - deklarativno-
podataka proceduralna kontroverza: kontrolna
struktura ES kod ko jih je naglasak na
 zaključianje heuristikama - da bi deklarativnom znanju je potpuno
mogao da efikasno zaključuje odvojena od podataka za razliku od
mora da vodi računa o proceduralnih programa, paradigma
najboljem načinu rešavanje deklarativnih jezika naspram
problema ne samo kroz proceduralnih, i sl.. Grubo rečeno, faze
algoritme pretraživanja s razvoja su:
heuristikama, nekakvim
poznatim prečama 1. Faza procene: Tokom ove faze se
identifikuju važni problemi,
 često se koristi neegzaktno izvodivost njihovog re senja u
zaključivanje - zaključivanje sa odnosu na ciljeve, i drugi važni
verovatnoćom, mogućnostima činioci projekta kaosto su ciljevi,
ili uverenjima oblast i potrebni resursi - podaci i
ljudi (eksperti). Tako se formira ju
 ograničenje na probleme koji su osnovni zahtevi projekta.
rešivi ekspertnim sistemom -ne
treba očekivati nemoguće ... 2. Faza prikupljanja znanja: Znanje
se obično preuzima od eksperta,
 borba sa kompleksnošću - organizuje i proučava kako radi
rešavanje veoma jednostavninh boljeg uvida u problem, tako i
problema ES se još i može zbog potreba daljeg razvoja. Može
opravdati, ali ako je problem biti usko grlo projekta i zato se
previše kompleksan nemože se smatra važnom fazom.
opravdati predugačko vreme
potrebno za njegovo rešavanje

3 Predstavljanje znanja (knowledge representation)


6

za ES
3. Faza projektovanja: Definišu se
ukupna struktura i organizacija • Krajnjeg korisnika
znanja sistema, metodi obrade
znanja - bira se (npr.) alat kojim se  u stanju je da pomogne u
znanje predstavlja i obrađuje specificiranju korisničkog
(način zaključivanja u upravljanja interfejsa
znanjem) tako da bude sto sličniji  može da pomogne u sakupljanju
ljudskom ekspertu. znanja
 može da pomogne u razvoju
4. Faza testiranja: Ova faza se često sistema
odvija zapravo tokom svih
prethodnih faza, i nakon nje se po Ekspert u odnosu na ne-eksperta
potrebi iterativno vraća na neku od poseduje znanje (to je
prethodnih. njegova ,,apsolutna vrednost”). Svaki od
ovih učesnika poseduje određene
5. Faza dokumentacije: Specifičnost praktične osobine i znanja potrebne da se
u odnosu na konvencionalnu projekat uspešno završi.
dokumentaciju je rečnik znanja -
daje inženjeru uvid u 3Predstavljanje znanja
organizovano predstavljeno znanje (knowledge representation)
i procedure rešavanja sistema.
U ovom poglavlju se pravi pregled
6. Faza održavanja: ES je po pravilu nekoliko najpopularnijih metoda za
sistem koji zivi jer se baza znanja predstavljanje znanja u simboličkom
menja vremenom. obliku. Pre svega znanje se definiše kao
razumevanje predmetne oblasti
2.3 Ljudi uključeni u ES razvoj analogno znanju ljudskog eksperta, a
domen kao deo oblasti znanja koji je od
Projekat ES obavezno uključuje: znača ja za ES je dobro usredsređena
oblast znanja gde se pod tim
• Domenskog eksperta (Domain podrazumeva oblast znanja vezana za
Expert) jednu specifičnu temu a ne više njih (npr.
tema ,,zarazne bolesti krvi”). Tada je
 poseduje ekspertsko znanje, ima domen znanja ono čime se ES bavi, i
sposobnosti za efikasno potrebno je nekako njegove elemente
rešavanjeproblema kodirati i smestiti u ES - predstavljanje
 može da prenese (objasni) (reprezentovanje) znanja je metod
znanje, komunikacione kodiranja znanja u bazi znanja nekog
sposobnosti ES2
 raspoloživost - ima vremena ko
je može da posveti razvoju ES
 nije neprijateljski raspoložen
(prema razvoju ES)

• Inženjera znanja

 poznaje inženjerstvo znanja

 ima dobre komunikacione


sposobnosti
 može da problem pretvori u
softver
 ima programerske sposobnosti 2
Ekspertnog Sistema
7

3 Predstavljanje znanja (knowledge representation)

fuzzy pravila
3.1 Tipovi znanja
• pravila - proces zaključivanja u ES je
Različiti tipovi predstavljanja znanja određen je pravilima (po uzoru na modus
prema različitim vrstama problema ponens) sa levom i desnom stranom
naglašava jednu vrstu informacija o (uslov - zaključak), gde desna strana
problemu a drugu ignoriše i ne postoji može osim nove činjenice značiti i
idealan tip predstavljanja znanja koji za izvršenje neke procedure. Meta pravila
sve primene. su posebna pravila kojima se upravlja
Ljudsko znanje se sastoji iz pojedinih domenskim znanjem - o upotrebi pravila.
činjenica kao osnovnih elemenata. U Pravila mogu biti šeme pravila
mnogim formalnim sistemima se pod (promenljiva), grupisana u strukture koje
činjenicom kao oblikom deklarativnog o dgovaraju podsistemima koji
znanja obično podrazumeva iskaz - komuniciraju preko deljenih resursa
rečenica koja je tačna ili nije tačna. (table)
Činjenice mogu biti reprezentovane na • semantičke mreže - graf kao struktura
različite načine- mogu biti zadate i korisna i kao prikaz znanja na način
tabelama ili grafovima, itd. Neki ES blizak ljudima, i kao struktura koja nudi
koriste i prirodni jezik i druge oblike neke korisne osobine pretraživanja i
informacija (multimedijalnog karaktera formalno predstavljanja znanja (npr.
na primer), ali to su obično elementi šetanjem od zadatog čvora se može
interfejsa prema korisniku koji se tražiti odgovor na upit uz osobine
prevode u internu reprezentaciju i nasleđivanja (luk ”jeste”) i tranzitivnosti,
obratno. organizovanje izuzetaka od nasleđenih
Sledi kratak pregled tipova znanja prema osobina)
suštinskom značaju i upotrebi: • okviri (frames) - šema kao proširenje
semantičkih mreža (Barlett,1932) sadrži
Proceduralno Pravila strategie i deklarativno i proceduralno tipično
znanje – kako se agende procedure znanje o nekom objektu ili konceptu.
nešto rešava Struktura podataka kojom se ovo opisuje
Deklarativno Koncepti objekti, je okvir (frame, Minsky, 1975). Objekat
znanje – činjenice, činjenice tj. okvir ima slotove koji predstavljaju
šta se zna osobine sa vrednostima (O-A-V), mogu
Meta-znanje – Znanje o drugim imati pretpostavljene (de-fault)
znanje kako tipovima znanja vrednosti, mogu biti statičke ili
upotrebiti i dinamičke, mogu biti niska, broj,
upravljati znanjem Boolean ili objekat - okvir. Ovo
Heurstičko znanje “pravilo poslednje ukazuje na objektnu strukturu
– “preko palca”, prekopalca” okvira (zapravo klasa) sa osobinom
plitko empirijsko nasleđivanja i instanciranja, a metodima
snanje se opisuje proceduralno znanje. Faceti su
Strukturno znanje Skupovi pravil metodi kojima se daju ili menja ju
– opisuje strukture koncepti i relacije vrednosti, a koriste se i ako finije
znanja, mentalni ograničenje mogućih vrednosti pored
model eksperta tipa, ili utiču na izbor i okidanje pravila
Pet osnovnih tehnika za predstavljanje prema uslovu.
znanja: • logika - iskazna logika i PR1 - u
mnogim sistemima je potrebno maker
• trojke objekat-atribut-vrednost (O-A- imati implicitno zadat model znanja u
V) - atribut može imati jednu ili više obliku formula i teorija PR1, a u nekima
vrednosti, iskaz može imati vrednost i sa se koristi upravo kao reprezentovanje
verovatnoćom (zadatim koeficijentom),
8

4 Tehnike zaključivanja

zaključivanje uz upotrebu
znanja u nekom vidu i kao način heuristika, ,plitkog” ali praktičnog
zaključivanja. znanja o nekim stvarima i najboljim
postupcima zaključivanja o njima (kao
4 Tehnike zaključivanja kod algoritma pretraživanja s izborom
najboljeg, best-first, kao i sa upotrebama
Postavlja se najpre granica između heuristika – korisnih prečica u pretrazi),
procesa ljudskog razmišljanja i modela sto je čest slučaj kod ljudi eksperata.
ljudskog razmišljanja kojeg srećemo u
VI tj. ES: •Nemonotono zaključivanje - često se
razmišlja o problemu tako da mnoge
Definicija Razmišljanje (reasoning) je činjenice u bazi i njihove posledice
proces rada sa znanjem, činjenicama i imaju konstantnu istinitosnu vrednost
strategijama rešavanja problema nakon dodavanja nove činjenice u bazu
(pravilima) radi dolaženja do zaključaka (ili se istinitost dobrog dela baze znanja
o istim. ne menja) i ako to važi za sve činjenice
u bazi znanja onda je to monotono
•Deduktivno zaključivanje - klasičan zaključivanje, inače je nemonotono i
oblik razmišljanja i zaključivanja (npr. postoje činjenice koje se menjaju nakon
modus ponens) u kome se na osnovu dodavanja nove činjenice u bazu.
posto jećeg skupa činjenica (aksioma) Praktično, obično se činjenice ili dodaju
izvode novi zaključci ili međuzaključci. ili oduzimaju iz baze znanja pored
međuzaključaka (RETRACT - povlačenje
•Induktivno zaključivanje - Ljudi često činjenice, CYCLE -pokretanje pretrage
zaključuju uopštavanjem pojedinih ponovo sa novim stanjem), nakon čega
slučajeva (generalizacijom) u sve se promene mogu reflektovati na ostatak
slučajeve određenog tipa. Su ština ili deo baze znanja.
takvog induktivnog razmišljanja je taj
prelazak od pojedinog ka svemu Zaključivanjem se naziva model
(Firebaugh, 1988. - ako važi P ( x ) na ljudskog razmišljanja u ES.
nekom podskupu vrednosti X onda važi (
x ) P ( x )).

•Abduktivno zaključivanje - abduktivno


zaključivanje je oblik deduktivnog Zaključivanje (inference) je proces
zaključivanja u kome se dozvoljavaju i ekspertnog sistema kojim se dobijaju
mogući zaključci (generalizacija nad nove informacije na osnovu postojećih.
predikatom ili podizrazom a ne samo nad
promenljivom, npr. ako je B i A B Mehanizam zaključivanja uzima prema
onda je moguće da je tačno i A ). nekom izboru iz baze znanja neke
činjenice u vidu okvira i pravila, kao i
•Analogično zaključivanje - okvirom se instance činjenica iz radne memorije, i
mogu uhvatiti stereotipne informacije, i onda prema zadatom na činu
ako se kaže da je neki objekat zaključivanja dobija nove instance
predstavljen okvirom sličan nekom činjenica i smešta ih u radnu memoriju
drugom objektu predstavljenim okvirom ili dobija ciljeve. Pred mehanizam
s nekim uhvaćenim razlikama onda je to zaključivanja se postavljaju sledeća
analogično zaključivanje o novom pitanja pored samog načina tj. pravila
objektu koji preuzima osobine starog zaključivanja za date premise i pravila:
objekta uz neke razlike.

•Zdravorazumsko zaključivanje - ili


9

4 Tehnike zaključivanja

•Kada i koja pitanja postavljati pravila koje se okida kada ima više
korisniku? primenjivih pravila. Sastoji se iz 3 faze:
• Kako pretraživati bazu podataka ? prepoznavanja (svih premisa pravila u
•Kako izabrati pravilo koje treba radnoj memoriji i skupa primenjivih
primeniti ako ih postoji više u datom pravila), razrešenja (biranje pravila
trenutku ? prema nekoj strategiji), i primene (nakon
•Kako zaključena informacija utiče na čega se zaključak dodaje u radnu
dalju pretragu ? memoriju). Tipične strategije su: prvo
pravilo po redu u memoriji, po zadatom
Dve osnovne vrste zaključivanja bile bi: prioritetu (salience), pravilo najveće
 Nizanje unapred (Forward specifičnosti, pravilo koje se odnosi na
Chaining) - od baze znanja stiže se poslednji dodat element radne memorije,
ka cilju (podaci utiču na rezultat, ne okidaj već upotrebljeno pravilo,
karakteristično za sisteme bazirane pravila iz druge linije zaključivanja.
na pravilima), koristi se modus
ponens ili rezolucija kao način Dobre strane Loše strane
zaključivanja - dokle god se ne
zaključi cilj ili ne iscrpu Nizanje Dobar zaNema
primenjiva pravila. unapred probleme predstavu o
vođene važnosti
 Nizanje unazad (Backward podacima pitanja
Chaining) - polazeći od cilja stiže (planiranje, (postavlja I
se do činjenica u bazi znanja tako monitoring, nepotrebna
da se utvrdi istinitost cilja (npr. interpretacija)pitanja, sva
nerezolucija, gde premise posta ju zadata)
pod ciljevi) - primenjivo pravilo Nizanje Dobro za Pratiće liniju
(cilj je sa desne strane pravila) čije unazad potvrdu zaključivanja
premise nisu u bazi znanja ili hipoteze iako ne treba
radnoj memoriji postaju usredsređen (postoje
podciljevi, a podcilj jeste primitiva je na problem poboljšanja,
(traži se vrednost od korisnika) (dijagnoza, met-pravila I
ako nema primenjivog pravila. savet, faktori
Agenda je spisak ciljeva koje treba debugging) uverenja)
rešiti kao problem (neki put je
bitno ne držati se strogo
redosleda). Korisno je imati Kombinovanje jednog i drugog se često
pravila kojima se bira cilj koristi pored samog izbora između ova
(nizanjem unapred) i to se može dva načina (smera) nizanja tokom
postići posebnim pravilima (meta- projektovanja ES (npr. Posmatranjem
pravilima) koja utiču na biranje eksperta). To se mo ze postići
cilja. komunikacijom između različitih
podsistema ili posebnim demon
Može biti korisno imati mrežu pravilima (koja nizanjem unapred
zaključivanja (u toku razvoja ili rešavaju specifične slučajeve).
eksploatacije sistema) - strukturu Nemonotono zaključivanje može
zaključivanja prikazanu grafom na podrazumevati i uklanjanje činjenice
osnovu činjenica (čvorovi) i pravila (kao promenu u bazi znanja) kao i svih
(lukovi) koja učestvuju (npr. polazeći od činjenica koje zavise od nje prema
cilja kod nizanja unazad). nekom pravilu.

Pojam razrešavanja sukoba (conflict


resolution) je strategija odabiranja
10

Literatura

[JD] John Durkin: Expert Systems - Design and Development

[JL] Jean-Louis Lauriere: Problem-Solving and Artificial Intelligence

[GN] Michael R. Genesereth and Nils J. Nilsson: Logical Foundations of


Artificial Intelligence

[TB] Donald E. Knuth: The TeXbook

[PG] Predrag Janičić, Goran Nenadić: OSNOVI L TEX-A A

[CLIPS] http://www.ghg.net/clips/CLIPS.html

[JESS] http://herzberg.ca.sandia.gov/jess/

[PROTEGE] http://protege.stanford.edu

[CW] http://staffweb.cms.gre.ac.uk/~c.walshaw/abc/

[NB] http://www.norbeck.nu/abc/abcbnf.htm

[ABC] http://ecf-guest.mit.edu/~jc/music/abc/ABC-FAQ.html

[PLAY] http://www.geocities.com/Nashville/8773/abcplay.htm
http://abc.sourceforge.net/abcMIDI
http://abcplus.sourceforge.net/

[Seymour] http://ifdo.pugmarks.com/~seymour/runabc/top.html

[abcPlus] http://abcplus.sourceforge.net

[sourceforge] http://abc.sourceforge.net/abcMIDI

You might also like