20
Ekspertni sustavi Seminarski rad iz kolegija Umjetna inteligencija Fakultet strojarstva i brodogradnje Luka Drobilo

Ekspertni Sustavi, AI Seminar

Embed Size (px)

Citation preview

 

 

 

 

 

 

 

 

 

 

 

Ekspertni sustavi  

Seminarski rad iz kolegija Umjetna inteligencija Fakultet strojarstva i brodogradnje 

 

 

 

 

 

 

 

 

 

                    Luka Drobilo 

 

 

Ekspertni sustavi 

 

 

  1 

    

Sadržaj 

Ekspertni sustavi – pojam ........................................................................................................................ 2 

Prednosti ekspertnih sustava .................................................................................................................. 2 

Arhitektura ekspertnih sustava ............................................................................................................... 3 

Svojstva ekspertnih sustava .................................................................................................................... 6 

Inženjerstvo znanja .................................................................................................................................. 8 

Prikupljanje znanja .......................................................................................................................... 9 

Razlika od konvencionalnih programa .................................................................................................. 10 

Baze pravila ........................................................................................................................................... 11 

Ulančavanje ........................................................................................................................................... 12 

Ulančavanje unaprijed ................................................................................................................... 12 

Ulančavanje unatrag ...................................................................................................................... 13 

Koju metodu koristiti? ................................................................................................................... 14 

Primjena ................................................................................................................................................ 14 

Primjer: Ekspertni sustav inteligentnoga dizelskog motora .................................................................. 15 

Zaključak ................................................................................................................................................ 18 

Literatura ............................................................................................................................................... 19 

 

   

Ekspertni sustavi 

 

 

  2 

    

Ekspertni sustavi – pojam 

Ekspertni sustav (ES) je program koji je projektiran tako da svojim modelom oponaša 

sposobnosti rješavanja problema ljudskog eksperta u nekom području. 

Pod ekspertnim sustavima podrazumijeva se uspostavljanje dijela vještine nekog eksperta 

unutar samog računala i to u takvom obliku da sustav može ponuditi inteligentan savjet ili donijeti 

inteligentnu odluku o operaciji koja je u tijeku. Ekspertni sustav posjeduje i karakteristiku da na 

zahtjev izloži svoju način razmišljanja tako da direktno obavještava korisnika koji postavlja pitanje.  

Drugim riječima, ekspertni sustav je inteligentni računalni program koji koristi znanje i 

postupke zaključivanja u procesu rješavanja problema i to takvih problema za čije je rješavanje 

potreban visok stupanj stručnosti i iskustva iz područja kojima je ekspertni sustav namijenjen. Naziv 

ekspertni potječe upravo od toga što se ovi sustavi ponašaju kao vrhunski stručnjaci (engl. expert) na 

svom području. Njegovu osnovu čini poseban software koji modelira one elemente čovjekovog 

rješavanja problema za koje se smatra da čine čovjekovu inteligenciju: zaključivanje, prosuđivanje, 

odlučivanje na osnovu nepouzdanih i nepotpunih informacija i tumačenje svog ponašanja.  

Ekspertni sustav mora omogućiti tri osnovna zadataka inženjerstva znanja: 

prezentacija i memoriranje velike količine znanja problemskog pobručja u računalo 

aktiviranje korištenja znanja problemskog područja za rješavanje problema 

odgovor na korisnikovo pitanje  Dvije stvari se prije svega modeliraju u ekspertnom sustavu: znanje eksperta i njegovo 

zaključivanje. Zato se ekspertni sustav među ostalim sastoji i od baze znanja i sustava zaključivanja 

(inference engine). Znanje koje nam ekspert pruža može se predstavljati činjenicama, pravilima, 

konceptima ili relacijama. Način i problem njegovog predstavljanja je reprezentacija znanja, dok način 

i problem zaključivanja na osnovu baze znanja i zadatih upita je pitanje tehnike zaključivanja. Ekspert 

je često neophodna osoba u mnogim organizacijama, i postavlja se onda pitanje zašto ga uopće 

pokušavati zamijeniti strojem? Prije svega, donekle slično zamjeni nekih ljudi i njihovih poslova 

strojevima tijekom industrijske revolucije, ekspertni sustav može biti koristan kao pomoć kada čovjek 

nije raspoloživ ili jednostavno kao alat koji olakšava posao i omogućava automatizaciju nekih 

postupaka, radi sa većim stupnjem formalizma koji isključuje mogućnost greške ili slabosti zbog 

ljudskog faktora i sl. Postoji i jedna dodatna prednost ‐ znanjem kao općim dobrom ili kapitalom neke 

organizacije se lakše upravlja, lakše se prenosi i primjenjuje jer ne ovisi u toj mjeri od pojedinca ‐

eksperta ako se koristi ekspertni sustav. Gotovo da i nema područja ljudskih djelatnosti gdje nije 

napravljen neki ekspertni sustav i uspješno primijenjen, a njihov broj i dalje geometrijski raste. 

Prednosti ekspertnih sustava 

  Ekspertni sustavi posjeduju niz korisnih svojstava: 

Povećana dostupnost – stručnost je dostupna na svakom računalu primjerenih 

performansi, moglo bi se zapravo reći da je ekspertni sustav jedan način masovne 

proizvodnje stručnosti. 

Ekspertni sustavi 

 

 

  3 

    

Snižena cijena – Cijena pružanja stručnosti po korisniku je znatno snižena. 

Povećanje sigurnosti – Ekspertni sustavi mogu biti korišteni u okruženjima koja mogu 

biti potencijalno opasna po ljudsko zdravlje. 

Trajnost – Stručnost je trajna. Zarazliku od ljudskih stručnjaka koji mogu otići u 

mirovinu, dati otkaz ili umrijeti, znanje i stručnost ugrađeni u ekspertni sustav ne 

posjeduju rok trajanja. 

Višestruka stručnost – Pomoću ekspernih sustava znanje većeg broja stručnjaka može 

biti iskorišteno da istovremeno i neprekidno radi na rješavanju problema u bilo koje 

doba dana i noći. Razina stručnosti većeg broja stručnjaka znanjem i opširnošću znatno 

nadmašuje znanje samo jednog stručnjaka.  

Povećana pouzdanost – Ekspertni sustavi povećavaju pouzdanost u donošenje pravilne 

odluke pružajući drugo mišljenje ljudskom stručnjaku ili mogu pomoći u donošenju 

odluke u slučaju kada se veći broj ljudskih stručnjaka ne može usuglasiti oko rješenja. 

Naravno ova metoda vjerojatno nije primjenjiva ako je jedan od tih stručnjaka 

programirao sam ekspertni sutav budući bi se, ukoliko stručnjak nije počinio nekakvu 

pogrešku, ekspertni sustav uvijek trebao slagati sa stručnjakom na bazi čijeg znanja je 

oformljen. 

Objašnjavanje – Ekspertni sustav može eksplicitno u detalje objasniti razmišljanje koje 

ga je dovelo do nekog zaključka. Ljudski stručnjak bi možda bio preumoran, u 

nemogućnosti ili bi nevoljko to radio cijelo vrijeme i uvijek kada je potrebno. Ovo 

povećava pouzdanje u ispravnost donesene odluke.  

Kratko vrijeme reakcije – Brza ili reakcija u stvarnom vremenu može nekad biti 

krucijalna za neka područja primjene. Ovisno o korištenom softwareu i hardwareu, 

ekspertni sustav može odgovarati na upite brže i spremnije od ljudskog stručnjaka. 

Neke hitne situacije možda zahtjevaju reakciju bržu nego što ju je ljudski stručnjak u 

mogućnosti pružiti pa se u takvim slučajevima ekspertni sustavi sa reakcijom u 

stvarnom vremenu nameću kao dobro rješenje.  

Uravnotežene, kompletne reakcije bez prisutstva osjećaja – Ovo svojstvo je 

potencijalno izrazito bitno u stvarnim stresnim situacijama ili hitnim slučajevima kada 

ljudski stručnjak možda nije u mogućnosti djelovati pri vršnoj učinkovitosti kao 

posljedica stresa ili umora. 

Inteligentni sustav za učenje – Ekspertni sustav može se koristiti i kao inteligentni 

sustav za učenje koji omogućava učeniku pokretanje i proučavanje primjera te ujedno i 

objašnjava način razmatranja sustava prema datim primjerima.  

Inteligentna baza podataka – Ekspertni sustavi mogu biti korišteni za pristup bazi podataka na inteligentan način. 

Arhitektura ekspertnih sustava 

Temeljna konfiguracija ekspertnih sustava uključuje tri glavna dijela: 

baza znanja (engl. Knowledge Base – KB) 

mehanizam zaključivanja (engl. Inference Mechanism ili Inference Engine – IE) 

korisničko sučelje (engl. User Interface – UI) 

Ekspertni sustavi 

 

 

  4 

    

 

Slika 1 

Baza znanja je baza činjenica i heuristika pridruženih problemu u području za koje je 

namjenjen ekspertni sustav. Baza znanja uključuje činjenice, relacije između činjenica i moguće 

metode za rješavanje problema u području date aplikacije. U predstavljanju znanja koriste se tzv. 

proizvodna pravila (IF ‐ THEN), okviri i semantičke mreže. Prikupljanje znanja vrši se intervjuiranjem 

stručnjaka i tzv. strojnim učenjem. 

Mehanizam zaključivanja je software sposoban na osnovu pravila iz baze znanja shvatiti 

informacije iz baze znanja i na osnovu toga izvoditi zaključke. On funkcionira na taj način da činjenice 

iz baze znanja kombinira sa informacijama dobivenim od korisnika u cilju izvođenja specifičnih 

zaključaka. Pri radu se koriste kontrolne strategije koje odlučuju u kojem trenutku treba primjeniti 

neko od pravila iz baze znanja na nove činjenice dobivene tijekom konzultiranja sa korisnikom. Na taj 

način se simulira ljudsko razmišljanje. Postoje dvije osnovne procedure zaključivanja, odnosno 

rezoniranja: 

zaključivanje koje počinje s tzv. potvrđenim pronalascima i djeluje unaprijed da 

pronađe zaključak, tzv. zaključivanje vođeno podacima (engl. Forward chaining)  

zaključivanje koje počinje s hipotezom i djeluje unatrag prema lako potvrđenim 

pronalascima, tzv. zaključivanje vođeno ciljem (engl. Backward chaining)  

Korisničko sučelje je dio koji omogućava dijalog između donosioca odluke (korisnika) i sustava, služi za unos i prikaz podataka, prezentira moguće odluke, prikazuje informacije, pitanja, odgovore te odvraća korisnika da unosi greške. Sa jedne strane omogućava korisniku da tijekom rada sustava dostavi informacije koje sustav iz baze znanja nije uspio dobiti, a sa druge strane omogućava korisniku da za svaku odluku ekspertnog sustava zatraži dodatno objašnjenje o tome koji su ga zaključci vodili da donese takvu odluku odgovaranjem na pitanja “zašto'' i “kako”. 

 Ovakav sustav u teoriji umjetne inteligencije naziva se “zaključivanje na temelju pravila” (engl. 

Rule‐based Reasoning). Ekspertni ili na znanju temeljeni sustavi jedan su od uspješnih područja iz područja umjetne inteligencije. Više od 25 godina je prošlo od realizacije prvih ekspertnih sustava (DENDRAL, MYCIN i PROSPECTOR). Arhitektura ekspertnih ili na znanju temeljenih sustava nije 

Ekspertni sustavi 

 

 

  5 

    

značajnije mijenjana i više je poznatih problema u njihovu razvoju: prikupljanje znanja vrlo je težak i dugotrajan proces, implementacija i uspješno korištenje ovakvih sustava zahtijeva visoku stručnost i iskustvo, implementirani ekspertni sustavi često su spori i teški za održavanje. Uz tri navedena osnovna dijela, ekspertni sustavi sadrže i bazu podataka čime se mogućnosti sustava znatno proširuju i povećavaju. 

 

Slika 2 

Suvremeni ekspertni sustavi imaju mogućnost prikupljanja znanja i učenja. Na slici 3 prikazana je puna konfiguracija ekspertnog sustava koji uz temeljnu konfiguraciju i bazu podataka sadrži razvojni dio i modul za učenje. Razvojni dio ekspertnih sustava zadužen je za prikupljanje znanja koje je moguće tzv. strojnim učenjem ili preuzimanjem znanja od stručnjaka. Prikupljanje znanja kod ovakvih sustava u svakom je slučaju vrlo teško i zahtijeva tzv. eksperte za prikupljanje znanja. Modul za učenje u suvremenim ekspertnim sustavima važan je dio koji omogućuje tzv. samoučenje sustava. Glavni problemi ekspertnih sustava jesu nedostatak tzv. dubokog znanja, zatim točnost rezultata i skupo učenje. Nedostatak “dubokog znanja” ustvari znači čest nedostatak uskih specijalističkih znanja za uspješno rješavanje problema. Proces objašnjenja postupka zaključivanja također je često nerazumljiv. Točnost rezultata često može biti upitna. Ovo je ozbiljan problem, posebno u rizičnim područjima kao što je upravljanje zračnim prometom, upravljanje nuklearnim pogonima, vojnim sustavima itd. Učenje temeljeno na iskustvu je oskudno. Proces zaključivanja nije predmet unapređenja tijekom korištenja ekspertnih sustava. 

Ekspertni sustavi 

 

 

  6 

    

 

Slika 3 

Svojstva ekspertnih sustava 

Srce svakog ekspertnog sustava je znanje akumulirano u procesu izgradnje tog sustava. 

"Znanje" ekspertnog sustava čine činjenice i heuristika (iskustvo i osjećaj za izbor rješenja). 

Činjenice čine glavni dio podataka o prirodi sustava, njegovim aktivnostima i ciljevima koje 

sustav ostvaruje kroz te aktivnosti. Određene pojave i manifestacije regularnog i neregularnog stanja 

u sustavu imaju svoje uzroke i posljedice i također se opisuju skupovima podataka. Svi ovi podaci 

uglavnom mogu biti raspoloživi, dokumentirani i verificirani u domeni ekspertnog sustava. 

Heuristiku čine vlastita pravila rasuđivanja i vještina u izboru i donošenju odluka kojima se 

utjče na promjenu stanja sustava. Ona je uglavnom slabo dokumentirana i osobina je vrhunskih 

specijalista za područje za koje se ekspertni sustav kreira. Nivo performansi ekspertnog sustava je 

prije svega funkcija veličine i kvalitete baze znanja tog sustava u kojoj su objedinjene činjenice i 

heuristika, a ne određenog formalizma zaključivanja i postupka koji se koriste u pretraživanju 

činjenica. 

U principu razlikujemo dva tipa znanja: 

eksplicitno znanje – znanje dato u pisanoj ili drugoj prijenosnoj formi i nalazimo ga 

u knjigama, časopisima i sl. Ovo znanje je obično prihvaćeno kao univerzalno točno. 

Ekspertni sustavi 

 

 

  7 

    

implicitno znanje – heurističko znanje, ono znanje koje čovjek ekspert gradi na 

osnovu iskustva i koje, kombinirano sa prvim tipom znanja čini čovjeka ekspertom. 

Znanje je dostupno i može se prenositi putem knjiga i lekcija. 

 

 

Slika 4 

Važno svojstvo ekspertnog sustava je ekspertiza visokog nivoa koju osigurava kao pomoć u 

rješavanju problema. Ta ekspertiza predstavlja najbolja razmišljanja vrhunskih eksperata u datom 

području, sakupljena i ugrađena u program tako da u postupku rješavanja problema mogu dovesti do 

preciznih i efikasnih rešenja. 

Mogućnost predviđanja je svojstvo koje potječe iz mogućnosti da se ekspertni sustav koristi 

kao model za rješavanje problema u datom području koji će, kao takav, davati odgovore na zadane 

probleme i pokazivati kako će se ti odgovori mijenjati ovisno o novim situacijama. 

Cjelokupno znanje ugrađeno u ekspertni sustav prikupljeno je kroz interakciju sa ključnim 

osobljem u nekoj službi, odjelu ili području, tako da ono oslikava i tekuću politiku i način rada te 

grupe. Na taj način, ova skup znanja postaje trajni zapis usklađenih najboljih metoda i postupaka koje 

ti ljudi koriste pri rješavanju problema. I kad ti ljudi odu iz određene firme ovo znanje će ostati 

sačuvano. Ovo je veoma važno u poslovnim sistemima, a kritično u vojsci i državnim ustanovama 

zbog čestih premještaja i izmjene kadrova. Prikupljeno znanje je na taj način postalo institucionalna 

memorija, koja ublažava (iako nikad ne može potpuno ukloniti) nedostatke proistekle iz čestih 

fluktuacija ljudi. 

Još jedno važno svojstvo svakog ekspertnog sustava je i mogućnost obučavanja. Ekspertni 

sustav može biti oblikovan tako da omogući obuku novih kadrova. Oni već imaju određena znanja i 

sposobnosti i potrebno je na njih prenijeti znanje i iskustvo prikupljeno i sačuvano u bazi znanja u 

vidu institucionalne memorije. Neophodno je da program posjeduje mogućnost tečnog, prijateljskog 

dijaloga sa čovjekom, kao i ugrađene metode učenja. Ekspertni sustav može biti podešen kako za 

obuku stručnih ljudi, tako i za uvođenje u posao tek pridošlih početnika. 

Ovisno o sustavu, načini objašnjavanja i razlaganja donesenih odluka mogu biti jednostavni ili 

složeni. Jednostavni sustavi u pravilu samo navode činjenice koje su ih zaključivanjem doveli do 

posljednjeg izvedenog pravila. Složeniji sustavi su sposobni učini i nešto od sljedećeg: 

Ekspertni sustavi 

 

 

  8 

    

Navesti sve razloge za i protiv određene hipoteze – Hipoteza je cilj koji treba biti 

dokazan, pa tako kao primjer možemo uzeti zaključak medicinskog ekspertnog 

sustava: “pacijent boluje od tetanusa”. U stvarnom problemu može postojati veći 

broj hipoteza isto kao što i pacijent može imati više bolesti istovremeno. Na hipotezu 

se također može gledati kao na činjenicu u čiju se istinitost sumnja i koja mora biti 

dokazana.  

Navesti sve hipoteze koje mogu objasniti dostupne dokaze 

Objasniti sve posljedice hipoteze – Primjerice, ako pretpostavljamo da pacijent 

boluje od tetanusa na njemu bi također trebali biti prisutni znakovi vrućice kako 

infekcija napreduje. Ako su ovi simptomi stvarno prisutni oni dodaju na sigurnosti da 

je hipoteza ispravna. Ako simptomi nisu prisutni sigurnost u točnost hipoteze se 

smanjuje.  

Dati prognozu ili predviđanje što će se dogoditi u slučaju da je hipoteza ispravna 

Opravdati pitanja koja program postavlja korisniku kako bi dobio dodatne 

informacije – Ova pitanja mogu biti korištena kako bi se usmjerio način razmišljanja u 

smjeru vjerojatnih dijagnostičkih pravaca. U većini realnih problema razmatranje svih 

mogućnosti je preskupo i traje predugo tako da je potrebno osigurati neki način 

navođenja potrage prema točnom rješenju. Primjerice možemo razmotriti koliko bi 

sredstava i vremena potrošili a kakvi bi bili efekti primjenivanja svih mogućih 

medicinskih ispitivanja na pacijenta koji se žali na bol u grlu.  

Opravdati znanje programa – Recimo da program tvrdi kako je hipoteza “pacijent 

boluje od tetanusa” točna, korisnik bi od sustava mogao zatražiti objašnjenje. 

Program bi mogao opravdati ovaj zaključak prema pravilu koje mu govori da ako 

rezultati krvnog testa pokazuju da je pacijent pozitivan na tetanus, onda on stvarno i 

boluje od tetanusa. Tada bi korisnik od sustava mogao zatražiti da opravda i to 

pravilo na što bi on mogao odgovoriti kako je pozitivan krvni test dokaz bolesti.   

Inženjerstvo znanja 

  Sveukupnost procesa izgradnje ekspertnog sustava naziva se inženjerstvo znanja, time se 

obuhvaća skup metoda i postupaka koje se odnose na prikupljanje, računalno predstavljanje i 

memoriranje, kao i upotrebu ljudskog znanja u rješavanju složenih problemskih situacija. Taj proces 

uključuje posebnu vrstu interakcije između graditelja ekspertnog sustava, koga zovemo inženjer 

znanja i jedne ili više osoba koje su eksperti u određenom problemskom području za koje se 

ekspertni sustav izgrađuje. 

Inženjer znanja od eksperata "vrši ekstrakciju" njihovih procedura, strategija i postupaka za 

rješavanje problema i ugrađuje to znanje u ekspertni sustav. Rezultat procesa je skup programa koji 

rješavaju probleme u datom području na način na koji to radi čovjek‐ekspert. 

Kao što je prikazano na sljedećoj slici, u proces izgradnje ekspertnog sustava uključeni su: 

ekspert, inženjer znanja i korisnik. U cijelom poslu važno mjesto zauzima i alat za izgradnju 

ekspertnog sustava a ne smije se zaboraviti ni sam ekspertni sustav. 

Ekspertni sustavi 

 

 

  9 

    

 

Slika 5 

Ekspert je osoba koja je stekla reputaciju u svojem području zbog stručnih sposobnosti 

kvalitetnog rješavanja problema. On koristi svoje znanje, sposobnosti i vještine stečene kroz bogato 

iskustvo kako bi skratio proces pronalaženja rješenja. Znanje eksperta je nadgradnja znanja koje se 

može dobiti čitanjem knjiga. On ne može uvijek objasniti razloge svoje odluke, ne zato što ih ne želi 

objasniti, već zato što se kroz svoje odluke vodi intuicijom. On isto tako vjerojatno zna mnogo više 

nego što je svjestan. Ekspertni sustav treba obuhvatiti i objediniti te sposobnosti, vještine i iskustvo 

jednog ili više eksperata. Znanje se, naravno, može prikupljati i iz stručnih knjiga i časopisa. 

Inženjer znanja je osoba koja poznaje područje računalnih znanosti i umjetne inteligencije te 

zna kako se izrađuju ekspertni sustavi. On kroz pitanja i razgovore sa ekspertom od njega prikuplja 

znanje, organizira ga, odlučuje kako će ono biti prikazano u sustavu i piše programe, sam ili uz pomoć 

drugih programera. 

Korisnik je osoba koja koristi ekspertni sustav kad je njegova izrada i učenje gotovo i spreman 

je za uporabu. 

Osoblje uključuje sve one koji unose podatke u sustav (operateri, pomoćnici i sl.). 

Alat za izgradnju ekspertnih sustava je programski jezik koji koristi inženjer znanja i/ili 

programer kako bi taj sustav izradio. Pod pojmom alat podrazumjevaju se i svi uslužni programi koji 

su na raspolaganju (editori, debugeri, sredstva za izdvajanje znanja, grafika i dr.). Razvijeni su 

specijalizirani alati za izradu ekspertnih sustava, koji su nazvani "školjke" (shells). Ovi alati se razlikuju 

od konvencionalnih programskih jezika po tome što osiguravaju odgovarajuće načine predstavljanja 

složenih koncepata i elemenata znanja. 

Prikupljanje znanja 

Upravo prikupljanje znanja je usko grlo razvoja ekspertnih sustava jer je često veoma teško 

izvesti ovu fazu. Postoje različite tehnike otkrivanja znanja prilagođene različitim tipovima sustava, ali 

osnova je razgovor (strukturirani i nestrukturirani intervju) sa ekspertom za što opet postoje 

standardni praktični postupci. Nakon prikupljanja informacija od eksperta slijedi analiza sakupljenog 

znanja na osnovu čega se izdvajaju važne činjenice i strukture koje pomažu i utječu na daljnji tijek 

razvoja sustava. Prikaz gotovih primjera (case studies, retrospektivno proučavanje i promatračko ‐ 

Ekspertni sustavi 

 

 

  10 

    

uživo) kao šablona kroz koju se može vršiti procjena, demonstracija, i sl. Protokol (pojam kognitivne 

psihologije) kao bilješka postupaka koji osoba ili sustav čini da bi rješio problem. Otkrivanje znanja: 

Prikupljanje 

Interpretacija 

Analiza 

Razvoj sljedeće sesije   

Razlika od konvencionalnih programa 

  Današnja računala rješavaju zadatke logikom konvencionalnih programa. Programi se sastoje 

u osnovi iz dva dijela: 

algoritam 

podaci 

Algoritam određuje kako riješiti određenu vrstu problema koristeći niz točno definiranih 

pravila, a podaci karakterizirajuu parametre u konkretnom problemu.  

Ljudsko znanje se ne uklapa u ovaj model. Sistemi na bazi znanja razlikuju se od 

konvencionalnih programa po načinu organizacije, po tome da je u njih ugrađeno znanje, po načinu 

izvršavanja i po efektu koji stvaraju kroz interakciju dijalogom. 

Može se dakle reći da je glavna razlika između konvencionalnih programa i ekspertnih 

sustava u tome što prvi manipuliraju podacima a drugi znanjem. Ostale razlike prikazane su u tablici 1: 

KONVENCIONALNI PROGRAM

EKSPERTNI SUSTAV 

predstavlja i algoritamski koristi podatke, ponavljajući proces 

predstavlja i heuristički koristi znanje, proces zaključivanja 

efikasno manipuliranje velikim bazama podataka 

efikasno manipuliranje velikim bazama znanja 

znanje i metode korisničkog znanja su pomješani 

model rješavanja problema se pojavljuje kao baza znanja a njom upravlja odvojeni dio – mehanizam zaključivanja 

(interpreter pravila) 

znanje je organizirano u dva nivoa – podaci i program 

znanje je organizirano u bar tri nivoa – podaci, baza znanja i mehanizam zaključivanja 

u slučaju novog znanja potrebno je reprogramiranje 

novo znanje se dodaje bez reprogramiranja, proširivanjem 

baze znanja 

Tablica 1 

Ekspertni sustavi 

 

 

  11 

    

Osim toga, konvencionalni programi su projektirani tako da svaki put daju konkretne 

rezultate, dok su ekspertni sustavi projektirani uglavnom da daju korektne odgovore, a imaju i 

mogućnost da uče na greškama. 

U konvencionalnim programima su implementirani potpuno definirani algoritmi i jasan način 

nalaženja rješenja čak i kad se koristi kompleksno grananje, rekurzivne petlje i dr. S druge strane, 

poslovi koje obavljaju stručnjaci uglavnom su takvi da ih često nije moguće opisati u algoritamskoj 

formi. Stručnjaci ne rade po čvrstom planu već iskustvom i prosuđivanjem odlučuju kako će se dalje 

rješavati problem, ne "vide" kompletan postupak rješavanja odmah. Ekspertni sustavi su pak 

zasnovani na stručnoj vještini akumuliranoj u bazi znanja tako da su u stanju ponuditi inteligentan 

savjet i na zahtjev mogu objasniti svoj način “razmišljanja”. 

U konvencionalnim programima, moduli (potprogrami) se međusobno pozivaju po fiksnom, unaprijed 

definiranom postupku. U ekspertnim sustavima moduli se ne pozivaju između sebe direktno. Moduli 

komuniciraju sa okruženjem podataka. Struktura dozvoljava simultano izvršenje nekoliko modula 

(onih koje aktivira trenutno stanje baze podataka). 

Baze pravila 

  Kao što smo već spomenuli, ekspertni sustavi koriste pravila kako bi ispitivali uvjete, 

„razmišljali“ i tako donosili odluke o zadanim problemima. Ta pravila se pohranjuju unutar sustava u 

bazu pravila, uključene u bazu znanja, koja se pri radu pretražuje i očitava ili modificira te tako 

omogućuje rad sustava i daljnji razvoj. Sustav proučava sve uvjete pravila (IF) i određuje podset 

pravila u koji su smješteni uvjeti za izvršavanje pravila iz seta pravila. Taj podset se zatim koristi za 

uspoređivanje za vrijeme rada i aktivira jedan od uvjeta u njemu. Koji od uvjeta je aktiviran ovisi o 

strategiji rješavanja problema. Kada je uvjet aktiviran izvršavaju se operacije određene THEN klauzom 

dotičnog uvjeta. Ove operacije mogu promijeniti stanje memorije sustava, modificirati bazu pravila ili 

učiniti bilo što drugo što programer odluči uključiti u njih. Taj se lanac uvjeta i zadovoljavanja njihovih 

pravila nastavlja sve dok jedan od dva uvjeta nije postignut: nema više pravila čije uvjete treba 

zadovoljiti ili je aktivirano pravilo čijom je operacijom definirano prekidanje programa. 

Koje pravilo je aktivirano pri rješavanju zadatka ovisi o strategiji rješavanja problema. Odabir 

strategije može biti određen samim problemom ili može biti stvar preferencije osobe koja izvodi i 

uređuje sustav. U svakom slučaju odabir strategije je izrazito važan budući ona kontrolira koje od 

primjenjivih pravila će biti aktivirano te time i kako će se cijeli sustav ponašati. Postoji nekoliko 

različitih strategija od kojih su ovdje navedne neke od najčešćih:  

Prvo primjenjivo ‐ Ako su pravila pohranjena prema nekom principu, aktiviranje prvog 

primjenjivog omogućava kontrolu rasporeda po kojem su pravila aktivirana. Ovo je 

najjednostavnija strategija iz koje potencijalno može nastati veliki problem: beskonačna 

petlja na jednom istom pravilu. Ukoliko se stanje memorije sustava i/ili baze pravila ne 

promijeni tada se ni uvjeti prvog pravila neće promijeniti i ono će stalno iznova biti 

aktivirano. Kako bi se riješio ovaj problem uobičajena je praksa omogučivanje prekida tog 

pravila i spriječavanje njegovog ponovnog aktiviranja sve dok nisu promijenjeni podaci u 

memoriji sustava tako da zadovoljavaju uvjet ili dok sam uvjet pravila nije modificiran.  

Ekspertni sustavi 

 

 

  12 

    

Nasumičan odabir ‐ Iako ne pruža predvidljivost i kontrolu strategije prvog primjenjivog 

pravila, strategija nasumičnog odabira ima svoje prednosti. Kao prvo njena nepredvidivost 

dolazi kao prednost u određenim okolnostima (npr. u igrama). Nasumična strategija 

jednostavno odabire jedno pravilo iz podseta koje će biti aktivirano. Druga mogućnost je 

primjena sustava neizrazite logike u kojem bi svaki od sustava imao vjerojatnost takvu da će 

neka od pravila imat veću šansu da budu aktivirana od drugih. 

Najkonkretniji ‐ Ova strategija je bazirana na broju uvjeta pravila, pravilo sa najvećim 

brojem uvjeta je odabrano iz podseta. Ovo je bazirano na pretpostavci da je ukoliko pravilo 

ima najviše uvjeta izgledno kako je to pravilo od najveće važnosti i relevantnosti za 

postojeće podatke.  

Najdulje nekorišteno ‐ Svako od pravila posjeduje vremensku oznaku koja označava vrijeme 

kada je posljednji put korišteno. Ovo povećava broj pojedinačnih pravila koja su aktivirana 

barem jedanput. Ako su sva pravila potrebna za postizanje rješenja tada je ovo savršena 

strategija za taj primjer.  

„Najbolje“ pravilo ‐ Kako bi ovako strategija funkcionirala, svakom pravilu dodijeljena je 

težinska vrijednost koja određuje koliko bi neko pravilo trebalo biti više uzeto u obzir s 

obzirom na alternative. Pravilo sa željenim ishodom je odabrano ovisno o svojoj težinskoj 

vrijednosti.  

Ulančavanje 

  Dvije metode odlučivanja kada se koriste pravila zaključivanja su:  

ulančavanje unaprijed  

ulančavanje unatrag 

Ulančavanje unaprijed (slika 6) započinje sa dostupnim podacima i koristi 

pravila zaključivanja kako bi razmotrilo više 

podataka sve dok željeni cilj nije postignut. 

Mehanizam zaključivanja koji koristi metodu 

ulančavanja unaprijed pretražuje pravila 

zaključivanja sve dok ne nađe pravilo u kojem 

je IF klauza istinita. Zatim izvršava operacije 

zadane THEN klauzom i pridodaje ovu 

informaciju svojoj bazi podataka. Sustav 

nastavlja ovu proceduru sve dok ne postigne 

zadani cilj. Budući da dostupni podaci 

određuju koja će se pravila zaključivanja 

koristiti, ova metoda se također zove metoda 

vođena podacima (engl. data driven).  

S

Slika 6 

bazapravila

radnamemorija

odredivanje pravilakoja bi mogla biti

aktivirana

strategijarješavanja problema

aktiviranje pravila

izlaz

odabir pravila za aktivaciju

pravilopronadeno

podset

pravilo nijepronadeno

izlaz ako je tako odredeno pravilom

Ekspertni sustavi 

 

 

  13 

    

Ulančavanje unatrag (slika 7) započinje sa popisom ciljeva i djeluje unatrag kako bi se 

otkrilo postoje li podaci koji omogućavaju zaključivanje nekih od ciljeva. Mehanizam zaključivanja koji 

koristi ulančavanje unatrag će tražiti pravila zaključivanja sve dok ne nađe pravilo koje ima THEN 

klauzu koja odgovara zadanom cilju. Ako je IF klauza toga pravila istinita ono je tada dodano na listu 

ciljeva.   

 

bazapravila

cilj

pretraživanje radne memorije i ciljeva radi

provjere istititosti izvršenja ciljeva

pošalji signalistinito

poklapaju lise ciljevi s

memorijom?

unat

ražn

o po

navl

jaj s

vako

sta

nje

aktiv

irano

g pr

avila

kao

cilj

a

da

ciljevi su ispunjeni, izlaz, vraća istinitu vrijednost

radnamemorija

odredi sljedeće moguće pravilo za

aktivaciju provjerom zaključaka i ciljeva

strategijarješavanja problema

izlaz

odabir pravila za aktivaciju

podset

pravilo nijepronađeno

pošalji signal

nije istinito

ne

aktivirajpravilo pravilo

pronađeno

za svako stanje pravila

napraviti unatražno

ulančavanje sa stanjem kao

ciljem

rezultati svih ponavljanja su istiniti? jedno ili više pravila nije uspjelo, sljedeće odgovarajaćuje pravilo

istinito

 

Slika 7 

Ekspertni sustavi 

 

 

  14 

    

  Koju metodu koristiti? 

  Od dvije dostupne metode ulančavanja ‐ unaprijed ili unatrag, odabir koju ćemo koristiti je 

određen samim problemom. Usporedba stanja i operacija u bazi pravila može pomoći odrediti koja 

metoda ulančavanja je preferirana. Ako “prosječno” pravilo ima više uvjeta nego zaključaka, tj. da 

tipična hipoteza ili cilj (zaključci) može dovesti do još mnogo više pitanja (uvjeti), preferira se 

ulančavanje unaprijed. Ako je pak obrnuta situacija i prosječno pravilo ima više zaključaka nego 

uvjeta tako da se svaka nova činjenica može proširiti u velik broj novih činjenica i operacija, idealna bi 

bila uporaba ulančavanja unatrag.  

  Ako nijedno nije dominantno, broj činjenica u radnoj memoriji može pomoći pri odluci. Ako 

se sve (relevantne) činjenice već znane i svrha sustava je odrediti kamo informacije vode trebalo bi 

odabrati ulančavanje unaprijed. Ako je pak s druge strane znano samo nekoliko ili niti jedna činjenica 

ili operacija, ulančavanje unatrag je idealno rješenje problema.  

Primjena 

  Expertni sustavi konstruirani su kako se bavili problemima u računovodstvu, medicini, 

upravljanju, financijskim uslugama, proizvodnji, ljudskim resursima itd. Uobičajeno su problemska 

područja toliko kompleksna da su jednostavniji tradicionalni algoritmi nedostatni u pružanju 

odgovarajućeg rješenja.  

  Dobar primjer primjene ekspertnih sustava u financijskom području su ekspertni sustavi za 

kamate. Odjeli za kredite su zainteresirani za ekspertne sustave za kamate zbog sve više rastuće 

cijene rada koje rukovanje i prihvaćanje relativno malih kredita čine manje isplativim. U primjeni 

ekspertnih sustava također vide i mogućnost standardizacije te efikasnog baratanja hipotekarnim 

kreditima. Još jedna česta primjena ekspertnih sustava u financijskom području je u obliku pružanja 

trgovačkih preporuka u raznim trgovinama. Ovakve trgovine uključuje brojne varijable i ljudske 

osjećaje koje bi bilo nemoguće deterministički iskazati pa su stoga na takvim pozicijama primjenjeni 

ekspertni sustavi temeljeni na pravilima stručnjaka i simulacijskim podacima. Ekspertni sustavi ovog 

tipa mogu varirati od pružanja regionalnih prodajnih preporuka oko financijskih odluka donesenih od 

strane nadležnih institucija ili vlada.  

  I dok su se ekspertni sustavi dokazali u pronalasku praktične primjene za rješenja bazirana na 

umjetnoj inteligenciji, njihova primjena je ipak ostala ograničena. Ekspertni sustavi djeluju u izrazito 

uskom području znanja i ukoliko im je zadan problem koji nadilazi te granice mogu raditi greške koje 

bi čovjek lako primjetio. Isto tako nakon što je dio mističnosti vezane uz ekspertne sustave kao 

primjer umjetne inteligencije polako nestao, većina programera je shvatila kako su jednostavni 

ekspertni sustavi u svojoj biti samo malo razrađenije verzije logike odlučivanja koju su već bili koristili. 

Stoga se neke od tehnika ekspertnih sustava mogu pronaći u najkompleksnijim programima bez da se 

diže ikakva prašina oko toga.  

  Primjer i dobra demonstracija ograničenja ekspertnih sustava je ekspertni sustav koji velik 

broj ljudi koristi: sustav za otkrivanje greški inkorporiran u Microsoftov operativni sustav Windows. 

Microsoft je osmislio svoj ekspertni sustav kako bi pružao rješenja, savjete i prijedloge na neke 

Ekspertni sustavi 

 

 

  15 

    

uobičajene pogreške koje se mogu susresti tijekom korištenja operativnog sustava. Sam sustav 

možda i djeluje jednostavno, no pojedincima koji nisu usko vezani uz razvoj operativnog sustava, 

dobivanje stručne tehničke potpore preko tog sustava je često zahtjevno i teško je dobiti konkretne 

rezultate kojima će riješiti svoj problem. 

  Uz primjene u financijskim i proizvodnim područjima, tehnike umjetne inteligencije, pa tako i 

ekspertni sustavi, našli su i primjenu u sve više rastućem informatičkom području – računalnim 

igrama. U gotovo svim računalnim igrama postoji nekakav sustav umjetne inteligencije kojim se 

pokušava dočarati inteligencija protivnika ili računalnog suigrača. Ti sustavi su često razvijeni upravo 

preko samih ekspertnih sustava i baza znanja prema kojima će se entiteti u vritualnim okruženjima 

ponašati ovisno o geometriji samog okruženja, njihovim svojstvima ili akcijama igrača. 

Primjer: Ekspertni sustav inteligentnoga dizelskog motora 

  Ekspertni sustav za dijagnostiku stanja brodskoga dizelskog motora temelji se na 

eksperimentalnim podacima dobivenima mjerenjem relevantnih značajki brodskog motora i 

kontinuiranim praćenjem njegova rada. Baza znanja pri izradi dijagnostičkog ekspertnog sustava je 

datoteka kvarova gdje se unose teorijska i praktična znanja stručnjaka. Osnovni zahtjevi koji se 

očekuju u radu stroja, pa tako i brodskoga dizelskog motora, jesu maksimalni radni učinci s 

minimalnim troškovima održavanja. 

Uspješnost ekspertnog sustava izravno ovisi o kvantiteti i kvaliteti formiranih primjera i 

pravila. Poradi toga je potrebno uskladiti prikupljene podatke s radnim značajkama motora ovisno o 

okolnostima kvara. Najveći dio podataka za bazu znanja dobiva se eksperimentalnim putem, mjereći 

parametre motora u radnim uvjetima. Najprije se uspostavlja baza sirovih podataka na temelju već 

spomenutih eksperimentalnih vrijednosti, tj. laboratorijskih i servisnih podataka, a zatim se 

dopunjuje podacima tijekom "eksperimentiranja" (testiranjima) u radu. Posebnim softverskim 

postupkom, od prikupljenih podataka formira se baza kondenziranih podataka, koja sadržava 

statističke rezultate za kritične značajke.  

Koncept ekspertnog sustava za dijagnostiku kvarova prikazan je na slici. Nakon što se 

specificira problem, utvrđuju se zahtjevi potrebni da se dođe do informacija. Podaci se dobivaju iz 

odgovarajućih izvora i adekvatno se organiziraju u bazi ulaznih podataka. Slijedi izrada modela 

problema sa shemom procesa koji vodi do rješenja. Model problema zajedno s bazom ulaznih 

podataka tvori „ekspertni sustav za analizu informacija“. On služi za definiranje datoteke primjera, iz 

koje se primjenom pogodnog softwarea izvodi prototip "sustava utemeljenog na pravilima". Da bi se 

kompletirao ekspertni sustav, potreban je modul za donošenje odluke, koji konzultira bazu znanja i 

konstruira operacijski sustav baze znanja. Dijagnostika u sebi sadržava određivanje i analizu statičkih i 

dinamičkih značajka i procjenu sustava.  

Promjene stanja u sustavu prate se i kvantitativno mjere temeljem odgovarajućih značajka 

tehničkog sustava. Izbor dijagnostičkih značajka svakoga sastavnog dijela ili sustava obnavlja se na 

osnovi:  

Ekspertni sustavi 

 

 

  16 

    

proučavanja njihovih funkcija, načina i uvjeta rada 

analize razine njihova funkcioniranja 

sastavljanja logičkih shema uzročno‐posljedičnih veza značajka i činitelja koje utječu na 

radnu sposobnost tehničkog sustava 

analize otkaza i drugo. 

 

ULAZNI PODACI

eksperimantalni podaci

teorijski simulacijski podaci

prototip sustava utemeljenog na

pravilima

redefinirana pravila

datoteka primjera

ekspertno znanje

strateški model informacijskih analiza

baza ulaznih podataka

generiranje pravila

ULAZNI PODACI

modul za odlučivanje

operacijski sustav baze znanja

software za vezu

poboljšanja

software za uvođenje

pravila

baza znanja

 

Slika 8 

Na slici 8 prikazan je ekspertni sustav inteligentnog dizelskog motora u kojemu je prikazano polje 

POBOLJŠANJA. Poboljšanja se ostvaruju s pomoću jedinice za kontrolu cilindara ili jedinice za kontrolu 

motora postupnim otklanjanjem pojedinih vrijednosti od trenutnih. Otvaranje i zatvaranje ispušnih 

ventila te ubrizgavanje goriva više se ne obavljaju s pomoću bregaste osovine već se oni elektronički 

upravljaju, pa tako vremena nisu strogo definirana, već je moguće ugađati vremena otvaranja i 

zatvaranja ispušnih ventila te vremena i način ubrizgavanja goriva u cilindar. Izravnim istraživanjem 

tijekom rada brodskog motora, promjenom određenih parametara u njihovim dopuštenim granicama 

(dobivenih eksperimentalnim podacima na radnom stolu, teorijskim simulacijskim podacima i 

ljudskim znanjem) može se doći do optimalne potrošnje goriva i maziva bez posljedica za rad motora. 

Ekspertni sustavi 

 

 

  17 

    

U tablici 2 prikaz je dijela baze znanja za „inteligentni“ motor koji se odnosi na kontrolu ispušnih 

ventila i vremena ubrizgavanja goriva. Uz to prikazan je samo mali dio dijagnostičkog ekspertnog 

sustava, koji djeluje sa sustavom inteligentnog motora. 

 

pravilo br. 

AKO  TEST  AKCIJA 

…       

30103  broj okretaja prevelik  smanjeno opterećenje na propeleru 

smanji se dobava goriva u cilindar 

30104  tlak kompresije u cilindru nizak 

provjera stanja stapnih prstenova 

zamijene se stapni prstenovi 

30105  tlako kompresije u cilindru nizak 

provjera zračnosti ventila 

ispušni se ventil demontira i ubrusi 

30106  max. tlak izgaranja u cilindru nizak 

provjera visokotlačne pumpe goriva 

otkloni se kvar ili zamijene komponente pumpe 

30107  max. tlak izgaranja u cilindru nizak 

provjera ubrizgača goriva 

ubrizgač se demontira, rastavi, očisti i testira a po potrebi se ugradi novi 

30108  max. tlak izgaranja u cilindru nizak 

smanjena dobava goriva u cilindar 

poveća se dobava goriva u cilindar 

30109  max. tlak izgaranja u cilindru nizak 

zakašnjelo ubrizgavanje goriva u cilindar 

ubrizgavanje goriva u cilindar počne prije 

…       

30418  temperatura ispušnog plina se povisuje 

povećaba dobava goriva u cilindar 

smanji se dobava goriva u cilindar 

…       

Tablica 2 

Koristeći se računalom on–line povezuju se sve radnje u vezi s održavanjem broda 

(preventivno održavanje, održavanje nakon kvara, rezervni dijelovi...) pa se time postiže bolja 

organiziranost, što je preduvjet za sigurniju plovidbu. Satelitskom vezom brodar u svakom trenutku 

(u području pokrivenosti telekomunikacijskom vezom) može dobiti podatke o stanju porivnog motora. 

Tako se omogućuje ekspertu na kopnu uvid u kvar, ako kvar zahtijeva njegovu intervenciju.  

Primjenom elektroničkog uređaja koji preuzima funkciju bregaste osovine motora, otvaraju 

se nove mogućnosti za daljnji razvoj i ispitivanje brodskoga porivnog sustava. Centralizacijom 

informacija pojedinih sustava i podsustava može se ostvariti i veza onih elemenata koji nisu prije bile 

vezane sustavom automatizacije (npr. veza sustava rashladne morske vode s visokotemperaturnim i 

niskotemperaturnim sustavom slatke vode, pa zatim tih sustava sa sustavima uputnog zraka, ulja za 

podmazivanje,…). Ovim bi se omogućilo točnije zaključivanje ekspertnog računalnog sustava o kakvu 

se kvaru radi, te eventualna redukcija alarma 

   

Ekspertni sustavi 

 

 

  18 

    

Zaključak 

  Pojam umjetne inteligencije koji smo do prije par desetljeća mogli susretati samo u 

znanstveno fantastičkim filmovima sada je postao dio svakodnevnice i posve normalna pojava. Od 

svojih početaka na slabašnim računalima pred kraj dvadesetog stoljeća, ekspertni sustavi su razvojem 

informatičke industrije dobili znatan porast mogućnosti i sve veći broj primjena u rješavanju 

problema u mnogim svakodnevnim situacijama. U nekim područjima ta primjena je ostvarena na 

veoma visokoj razini, olakšavajući rad ljudima, omogućavajući pohranu znanja tvrtki, prijenos toga 

znanja na nove zaposlenike te veliku pomoć kroz savjete i predviđanja o datim problemima, no zato u 

nekim drugim područjima su se pokazali neuspješnim i nisu ispunili očekivanja koja su na njih 

postavljena. Ali razvoj ide dalje, uz kombinaciju ekspertnih sustava i ostalih oblika umjetne 

inteligencije u obliku hibridnih sustava povećavaju se i njihove mogućnosti a ekspertni sustavi sve 

više postaju korisni alati koji u svojim konkretnim područjima primjene na jedan ili drugi način 

izvršavaju svoju primarnu ulogu – pomaganje ljudima.  

   

   

Ekspertni sustavi 

 

 

  19 

    

Literatura 

Alempije Veljović : Menadžment informacioni sistemi (Kompjuter biblioteka, Beograd) 

Milenko Obad: CAD/CAM tehnologije (http://www2.fsr.ba/nastava/icad/ICAD‐CBR.pdf) 

Zoran Popović : Primena VI – Ekspertni sustavi (http://users.hemo.net/shoom/es.pdf) 

Giarratano – Riley: Expert  systems principles and programming (Brooks/Cole Publishing 

Co.,  Pacific Grove, CA, USA) 

http://en.wikipedia.org/wiki/Expert_system 

http://ai‐depot.com/Tutorial/RuleBased‐Methods.html 

http://hrcak.srce.hr/file/12790