Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

Primer korišćenja

Radi ilustracije rada JavaDON-a, u ovom poglavlju je obrađen i objašnjen jedan primer
njegovog korišćenja.

Kreiranje novog projekta

Slika 1. Ekranske forme za kreiranje novog projekta

Kada se startuje deo programa za unos baze podataka, pojavljuje se forma sa slike 1.
(gornja polovina). Za početak rada na novom projektu potrebno je iz glavnog menija Project
izabrati stavku New. Tada se otvara nova forma (slika 1. - donja polovina) u koju se unosi ime
projekta. U ovom konkretnom primeru, ime projekta je BICIKLI. Potrebno je kliknuti na dugme
Ok da se potvrdi izbor. Tada se ova forma zatvara i menja se naslov glavne forme u ime
projekta.
Kreiranje okvira

Slika 2. Ekranske forme za kreiranje novog okvira

Kada se unosi novi okvir, potrebno je da jezičak Frames i gornjeg dela ekrana bude
aktivan (tj. potrebno je kliknuti na njega). Onda je potrebno desnim tasterom miša kliknuti na
belu površinu na kojoj je ikonica Frames. Time se otvara popup meni sa slike 2. (gornja
polovina). Klikom na Add otvara se forma (donja polovina slike 2.) u koju se unosi ime okvira.
Klikom na Ok se potrvđuje unos i zatvara ova forma. Stanje glavne forme posle ovog unosa se
menja i na beloj površini ispod jezička Frames se pojavljuje uneti okvir Korisnik.

Slika 3. Ekranska forma posle kreiranja novog okvira


Kreiranje domena

Slika 4. Ekranska forma za kreiranje novog domena

Kada se unosi novi domen, potrebno je da jezičak Domains iz gornjeg dela ekrana bude
aktivan (tj. potrebno je kliknuti na njega). Onda je potrebno desnim tasterom miša kliknuti na
belu površinu na kojoj je ikonica Domains. Time se otvara popup meni sa slike 3. (gornja
polovina). Klikom na Add otvara se forma (donja polovina slike 3.) u koju se unosi domen. U
polje ispod labele Name se unosi ime domena (u ovom slučaju niz_znakova). Padajuća lista
ispod labele Basic type služi za izbor osnovnog tipa. U ovom slučaju osnovni tip je string jer su
vrednosti ovog domena nizovi znakova. Polja ispod labela MAX LENGTH i MIN LENGTH
služe za unos maksimalne i minimalne dužine stringa za ovaj domen. Ostavljena su prazna jer u
ovom slučaju ograničenja nema. Pritiskom na taster Ok potrvrđuje se unos, a promene na glavnoj
formi su analogne onima koje se dešavaju posle unosa novog okvira.
Kreiranje atributa

Slika 5. Ekranska forma za kreiranje novog atributa

Pri unošenju novog atributa koristi se sličan postupak kao i u prethodnim slučajevima:
aktiviranje jezička Attributes, aktiviranje popup menija desnim tasterom miša i izbor stavke Add.
Tada se prikazuje forma sa slike 5. Ime atributa se unosi u polje ispod labele Name
(nacin_koris). Domen tog atributa se bira uz pomoć padajuće liste ispod labele Domain. Iz
padajuće liste se, u ovom slučaju, mogu izabrati dve stavke: <<make new>> i niz_znakova. Ako
se izabere druga stavka, novom atributu se dodeljuje domen iz prethodnog primera. Izborom
prve stavke i klikom na dugme Ok se startuje procedura iz prethodnog primera za unos novog
domena. To znači da nije neophodno da se ide redosledom unošenja domen pa atribut, već se to
može uraditi prirodnije: napravi se prvo atribut, pa odgovarajući domen i odmah se izvrši
pridruživanje.

Kreiranje slotova
Slika 6. Ekranske forme za kreiranje novog slota

Slotovi su zapravo atributi koji su pridruženi okvirima i koji mogu imati neku sliku i tekst
koji ih opisuju, kao i pitanje koje je potrebno postaviti korisniku da bi on uneo konkretnu
vrednost za slot. Procedura za kreiranje slota je sledeća: aktivira se jezičak Frames i klikne se na
okvir u koji je potrebno uneti slot. Tada se desnim tasterom miša aktivira popup meni i izabere
stavka Edit... i u okviru nje Add slot (slika 6. gornja polovina). Tada se otvara forma za unos
slota (slika 6.6 donja polovina). Uz pomoć padajuće liste (ispod labele Attribute) vrši se izbor
atributa koji se unosi kao slot u okvir. U toj listi postoji i stavka <<make new>> koja pokreće
unos novog atributa, slično kao u prethodnom primeru. Ako je slot takav da se zahteva unos
njegove vrednosti od strane krajnjeg korisnika, pitanje koje se pri unosu postavlja krajnjem
korisniku se upisuje u polje ispod labele Question (u primeru: Na koji nacin biste koristili ovaj
bicikl?). Pitanje može da bude sa predefinisanim ili odgovorima otvorenog tipa. Isto tako, moguć
je višestruki izbor predefinisanih odgovora i unos višestrukih vrednosti kod odgovora otvorenog
tipa. Pošto je odgovor na pitanje iz primera jedan (nije vušestruk), klikom na dugme ispred
labele Only one answer can be selected se dobija traženi efekat. Odgovori su predefinisani, pa je
i to potrebno uneti. Prvo se padajuća lista ispod labele Number of answers podešava na broj
odgovora (u ovom slučaju tri). Ako se ova lista ostavi tako da je izabrana vrednost 1, sistem će
podrazumevati da je odgovor otvorenog tipa. Tada se predefinisani odgovori unesu u tabelu
ispod labele Answers. Klikom na Ok se potvrđuju promene.U primeru je potrebno u isti okvir
uneti još jedan slot. Taj slot služi kao rešenje tj. ekspertni sistem sam izračunava njegovu
vrednost, pa nije potrebno unositi pitanje niti odgovore, već bi bilo poželjno (ali ne i obavezno)
uneti objašnjenje značenja vrednosti za taj slot. To objašnjenje bi se prikazalo krajnjem korisniku
na kraju, kada se prikažu svi zaključci. Tekst objašnjenja se unosi u polje ispod labele
Description (u ovom slučaju : Ovo je tip bicikla za Vas).
Slika 7. Ekranska forma za kreiranje drugog novog slota

Kreiranje pravila

Kreiranje samog pravila je analogno kreiranju okvira, domena ili atributa, pa se neće
opisivati. U daljem tekstu biće opisano dodavanje klauzula u pravilo kao i značenje važnosti
pravila.
Slika 8. Ekranske forme za dodavanje klauzula u pravilo

Znači, u primer je uneto pravilo «PITANJE». Svrha tog pravila je da se korisniku postavi
početno pitanje. To znači da to pravilo ne sadrži If klauzule već da je potrebno samo izvršiti
akciju postavljanja pitanja, i to za slot nacin okvira korisnik. Zbog toga, dovoljno je dodati Then
klauzulu u pravilo. To se radi na sledeći način: izabere se pravilo (klikom miša), pa se desnim
tasterom miša aktivira popup meni i izabere stavka Add Then clause u okviru stavke Edit... Tada
se otvara novi prozor, i iz padajuće liste izbere odgovarajući chuk. U našem primeru ne postoji
nijedan chunk pa je potrebno izabrati stavku <<make new>> i pritisnuti dugme Ok.

Slika 9. Ekranske forme za pravljenje novih klauzula

Klauzule su, u stvari, chunkovi koji su pridruženi pravilima u If ili Then delu. U
JavaDON-u postoje četiri tipa chunk-a: OARV, OAAc, OARF i OAROA.

OARV – koristi se kada slotu dodeljujete neku vrednost po nekoj relaciji npr.
Covek.visina_cm = 186 ili
Covek.visina_cm > 120

OAROA – koristi se kada se porede vrednosti dva slota npr.


Covek.visina < Vrata.visina

OAAc – koristi se kada je potrebno izvršiti neku akciju u vezi a nekim slotom npr.
ask_question(Covek.visina)
show_value(Covek.visina)

OARF – korisiti se kada se slotu dodeljuje vrednost koja se izračunava npr.


Vrata.visina_cm= Covek.visina_cm *1.1

U našem primeru je potrebno pitati korisnika kako će da koristi bicikl, pa se stoga pravi
OAAc chunk. Prvo se izabere jezičak OAAc. Onda se iz prve padajuće liste (ispod labele Frame)
izabere okvir Korisnik, a iz treće slot nacin. Tada se iz padajuće liste ispod labele Action izabere
akcija ask_question. Pritiskom na Ok forma se zatvara i ponovo se pojavljuje forma za unos
Then klauzule, ali ovaj put sa izabranim novim chunkom. Potrebno je pritisnuti taster Ok. Radi
funkcionisanja primera uneta su još tri pravila sa sledećom strukturom:

RESENJE1 (Importance= 0)
If
Korisnik.nacin_koris = «Za rekreaciju»
Then
Korisnik.tip_bicikla = «trkacki bicikl»

RESENJE2 (Importance= 0)
If
Korisnik.nacin_koris = «Kao prevozno sredstvo»
Then
Korisnik.tip_bicikla = «usluzni bicikl»

RESENJE3 (Importance= 0)
If
Korisnik.nacin_koris = «Za off-road voznju»
Then
Korisnik.tip_bicikla = «planinski bicikl (MTB)»

PRIKAZ_RESENJA (Importance= -10)


If

Then
Show_value(Korisnik.tip_bicikla)

Redosled izvršavanja pravila je sledeći: izvršava se ono pravilo čiji je If deo zadovoljen i
čija je važnost najveća. If deo pravila je zadovoljen ako važe sve If klauzule (kada je u pitanju
AND pravilo) ili kad važi bilo koja If klauzula (kada je u pitanju OR pravilo). Podešavanje vrste
pravila (OR ili AND) se vrši iz glavnog prozora aktiviranjem jezička Rules i posle izbora
željenog pravila klikom miša. Važnost pravila (Importance) je broj koji se unosi na isti način kao
i tip pravila. Što je to veći broj, to je veća i važnost pravila. U ovom primeru, važnost pravila
PITANJE je podešeno na 10 da bi se prvo izvršilo (jer ne poseduje If klauzule koje bi trebalo
zadovoljiti). Važnost pravila PRIKAZ_RESENJA je podešena na -10 da bi se poslednje izvršilo
(jer ni ono ne poseduje If klauzule). Važnost ostalih pravila je 0.
Pošto je primer unet, i potrebno ga je sačuvati. To se radi izborom stavke Save iz menija
Project glavne forme.

Pokretanje ekspertnog sistema

Slika 10. Ekranske forme za pokretanje ekspertnog sistema

Da bi se sačuvani primer pokrenuo, potrebno je da se učita. Učitavanje se vrši izborom


stavke Load questions menija File. Kada se učita, pitanja kreću automatski. Na pitanje se
odgovara klikom na dugme ispred tačnog (tačnih) odgovora i upisivanjem faktora sigurnosti u
polje desno od izabranog odgovora. Na seledeće pitanje se prelazi pritiskom na taster Next >>.
Ako više nema pitanja i proces zaključivanja se završi, korisniku se prikazuju zaključene
činjenice(slika 11.). Novi ciklus pitanja se počinje izborom stavke Start again menija File.
Slika 11. Ekranske forme za prikaz rešenja ekspertnog sistema

Na poslednjoj slici (11.) se vidi prikaz rešenja do kojeg je došao ekspertni sistem iz
primera. U donjem polju ispod Description je komentar koji je unet pri pravljenju slota
tip_bicikla. Konkretno koji će se slot prikazati, kao i da li će se prikazivati i slike (koje su
definisane uz slot - media) u desnom delu ekrana, zavisi od definisanih pravila. Moguće je
prikazivati i slike uz pitanja radi objašnjenja odgovora.

You might also like