P. 1
osnovi vestacke inteligencije 1

osnovi vestacke inteligencije 1

|Views: 601|Likes:
Published by Goran Karaica

More info:

Published by: Goran Karaica on Jun 06, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/15/2013

pdf

text

original

Sections

  • 1.1 Definicija i oblasti bavljenja VI
  • 1.2 Kratak uspon i pad, zatim renesansa
  • 1.3 Oblasti
  • 2 Poglavlje 2 - Predstavljanje problema
  • 2.1 Pojam problema
  • 2.2 Reˇsavanje problema, uopˇsteni koraci
  • 2.3 Notacije, naˇcini reprezentovanja
  • 2.4 Modeli grafova u VI
  • 2.4.3 Grafiˇcka reprezentacija i prirodni jezik
  • 2.5 Traˇzenje pravog reprezentovanja
  • 2.6 Programski jezici PROLOG i LISP
  • 2.7 Grafovi
  • 2.7.1 Petri-mreˇze
  • 3 Formalni sistemi - deklarativno znanje i za-
  • 3.1 Definicija formalnih sistema
  • 3.2 Iskazni raˇcun i predikatski raˇcun prvog reda
  • 3.3 Zakljuˇcivanje
  • 4 Rezolucija
  • 4.1 Klauzalna forma
  • 4.2 Unifikacija
  • 4.3 Princip rezolucije
  • 4.4 Rezolucija i jednakost
  • 4.5 Strategije rezolucije
  • 4.5.1 Strategije brisanja
  • 4.5.2 Jediniˇcna rezolucija
  • 4.5.3 Ulazna rezolucija
  • 4.5.4 Linearna rezolucija
  • 4.5.5 Rezolucija skupom podrˇske
  • 4.5.6 Ured¯ena rezolucija
  • 4.5.7 Usmerena rezolucija
  • 4.5.8 Sekvencijalno zadovoljenje uslova
  • 5.1 Nemonotono zakljuˇcivanje
  • (default reasoning)
  • 5.3 Indukcija
  • 5.4 Zakljuˇcivanje sa nesigurnim uverenjima
  • 5.5 Jedno formalno zasnivanje verovatnosne logike
  • 5.6 Znanja i uverenja
  • 5.6.1 Iskazna logika uverenja
  • 5.7 Meta-znanje i meta-zakljuˇcivanje
  • 6 Stanje i akcije
  • 6.1 Stanja
  • 6.2 Akcije
  • 6.3 Problem okvira
  • 6.4 Redosled akcija
  • 6.5 Uslovljenost
  • 7 Planiranje
  • 7.1 Poˇcetno stanje
  • 7.2 Ciljevi
  • 7.3 Akcije
  • 7.4 Planovi
  • 7.5 Grinov metod
  • 7.6 Blokovi akcija
  • 7.7 Uslovni planovi
  • 7.8 Smer planiranja
  • 7.9 Odsecanje nedostiˇznoˇs´cu
  • 7.10 Poravnavanje stanja (usaglaˇsavanje)
  • 7.11 Ukidanje aksioma okvira
  • 7.12 Ciljna regresija
  • 7.13 Razlike stanja
  • 8 Arhitektura inteligentnih agenata
  • 8.1 Tropistiˇcni agenti
  • 8.2 Histeretiˇcni agenti
  • 8.3 Agenti nivoa znanja
  • 8.4 Agenti znanja u koracima
  • 8.5 Agenti s namerom
  • 8.6 Promiˇsljeni agenti
  • 9 Klasiˇcne metode reˇsavanja problema
  • 9.1 Algoritmi za koje su poznata polinomijalna reˇsenja
  • 9.2 Klasifikacija problema prema sloˇzenosti
  • 9.3 klasa NP: nedeterministiˇcki polinomijalni problemi
  • 10 Reˇsavanje problema propagiranjem i nabra-
  • 10.1 Gradijent metode
  • 10.2 Linearno programiranje
  • 10.3 Gradijent metoda u teoriji grafova
  • 10.4 Heuristiˇcko pretraˇzivanje
  • 10.5 A∗ algoritam
  • 10.6 Implicitno nabrajanje propagiranjem uslova
  • 10.7 Dinamiˇcko programiranje
  • 10.8 GPS - General Problem Solver
  • 11 Programi - igre, psihologija reˇsavanja prob-
  • 11.1 Drvo pretraˇzivanja (drvo ispravnih poteza)
  • 11.2 Evaluacija pozicije
  • 11.3 MINIMAX izbor i algoritam, alfa-beta algoritam
  • 11.4 α-β kresanje (odsecanje)
  • 11.5 Psiholoˇska izuˇcavanja reˇsavanja problema i igranja
  • 11.6 Teorija igara
  • 12 Ekspertni sistemi
  • su ekspertni sistemi
  • 12.1 MYCIN - primer
  • 12.2 Produkcioni sistemi
  • 12.3 Ekspertni sistemi zasnovani na logici prvog reda
  • 12.4 Deklarativno-proceduralna kontroverza
  • 12.5 Razliˇciti tipovi znanja i njihova reprezentacija
  • 12.5.1 Reprezentovanje znanja

Seminarski rad: Osnove veˇtaˇke inteligencije I s c

Popovi´ Zoran, Tanja Vukovi´ c c Centar za multidisciplinarne studije Univerzitet u Beogradu 18. decembar 2006

Saˇetak z Ovaj tekst je saˇetak knjiga [JL] i [GN] i predstavlja pregled osz novnih koncepat veˇtaˇke inteligencije. Tekst je napisan kao deo ispita s c iz predmeta ”Uvog u veˇtaˇku inteligenciju.” s c

Profesor: Predrag Janiˇi´ cc

Osnove veˇtaˇke inteligencije I s c

1

Sadrˇaj z
1 Poglavlje 1 - veˇtaˇka inteligencija, istorijski razvoj i uvod s c 1.1 Definicija i oblasti bavljenja VI . . . . . . . . . . . . . . . . . 1.2 Kratak uspon i pad, zatim renesansa . . . . . . . . . . . . . . 1.3 Oblasti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 8 9

2 Poglavlje 2 - Predstavljanje problema 11 2.1 Pojam problema . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Reˇavanje problema, uopˇteni koraci . . . . . . . . . . . . . . 11 s s 2.3 Notacije, naˇini reprezentovanja . . . . . . . . . . . . . . . . . 12 c 2.4 Modeli grafova u VI . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4.1 Reprezentovanje znanja u automatskom reˇavanju probs lema . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.4.2 Grafiˇko reprezentovanje znanja u automatskom reˇavanju c s problema . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.4.3 Grafiˇka reprezentacija i prirodni jezik . . . . . . . . . 18 c 2.5 Traˇenje pravog reprezentovanja . . . . . . . . . . . . . . . . . 18 z 2.6 Programski jezici PROLOG i LISP . . . . . . . . . . . . . . . 19 2.7 Grafovi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.7.1 Petri-mreˇe . . . . . . . . . . . . . . . . . . . . . . . . 20 z 3 Formalni sistemi - deklarativno znanje i zakljuˇivanje c 3.1 Definicija formalnih sistema . . . . . . . . . . . . . . . . . . . 3.2 Iskazni raˇun i predikatski raˇun prvog reda . . . . . . . . . . c c 3.3 Zakljuˇivanje . . . . . . . . . . . . . . . . . . . . . . . . . . . c 4 Rezolucija 4.1 Klauzalna forma . . . . . . . . . . 4.2 Unifikacija . . . . . . . . . . . . . . 4.3 Princip rezolucije . . . . . . . . . . 4.4 Rezolucija i jednakost . . . . . . . . 4.5 Strategije rezolucije . . . . . . . . . 4.5.1 Strategije brisanja . . . . . 4.5.2 Jediniˇna rezolucija . . . . . c 4.5.3 Ulazna rezolucija . . . . . . 4.5.4 Linearna rezolucija . . . . . 4.5.5 Rezolucija skupom podrˇke s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 23 25 29 30 30 31 32 34 35 35 36 36 36 36

2 4.5.6 4.5.7 4.5.8

Seminarski rad Ured ¯ena rezolucija . . . . . . . . . . . . . . . . . . . . 37 Usmerena rezolucija . . . . . . . . . . . . . . . . . . . 37 Sekvencijalno zadovoljenje uslova . . . . . . . . . . . . 37 38 38 40 41 43 46 48 48 51 56 56 57 58 59 60 64 64 64 64 66 67 67 68 69 70 70 72 72 75

5 Zakljuˇivanje sa nesigurnim uverenjima i drugi naˇini zac c kljuˇivanja c 5.1 Nemonotono zakljuˇivanje . . . . . . . . . . . . . . . . . . . . c 5.2 Taksonomijske hijerarhije i pretpostavljeno zakljuˇivanje (dec fault reasoning) . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Indukcija . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4 Zakljuˇivanje sa nesigurnim uverenjima . . . . . . . . . . . . . c 5.5 Jedno formalno zasnivanje verovatnosne logike . . . . . . . . . 5.6 Znanja i uverenja . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.1 Iskazna logika uverenja . . . . . . . . . . . . . . . . . . 5.7 Meta-znanje i meta-zakljuˇivanje . . . . . . . . . . . . . . . . c 6 Stanje i akcije 6.1 Stanja . . . . . 6.2 Akcije . . . . . 6.3 Problem okvira 6.4 Redosled akcija 6.5 Uslovljenost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7 Planiranje 7.1 Poˇetno stanje . . . . . . . . . . . . c 7.2 Ciljevi . . . . . . . . . . . . . . . . 7.3 Akcije . . . . . . . . . . . . . . . . 7.4 Planovi . . . . . . . . . . . . . . . . 7.5 Grinov metod . . . . . . . . . . . . 7.6 Blokovi akcija . . . . . . . . . . . . 7.7 Uslovni planovi . . . . . . . . . . . 7.8 Smer planiranja . . . . . . . . . . 7.9 Odsecanje nedostiˇnoˇ´u . . . . . . z sc 7.10 Poravnavanje stanja (usaglaˇavanje) s 7.11 Ukidanje aksioma okvira . . . . . . 7.12 Ciljna regresija . . . . . . . . . . . 7.13 Razlike stanja . . . . . . . . . . .

. . . . . . . . . 9 Klasiˇne metode reˇavanja problema c s 9. . 11. . . . . . . . . . . . . . .1 Algoritmi za koje su poznata polinomijalna reˇenja . . . . . . . . . . . . . . . . . 10. . . . . . . . . . . . c z ∗ 10. . 12. .2 Klasifikacija problema prema sloˇenosti . . . . . psihologija reˇavanja problema s 11. . . . . . . . . . 134 . . . . . . . . . . . . . . 10. . . . .5. . . . . . . . . . . . . .5 Razliˇiti tipovi znanja i njihova reprezentacija . . . . . . . . . . . . . . 127 . 12. . . . . . 10.1 Gradijent metode . . . s 9. . . . . . . . . . . . . . .2 Produkcioni sistemi . . . . . . . . z 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6 Implicitno nabrajanje propagiranjem uslova . . . c 8. 12 Ekspertni sistemi 12. . . . . .4 Deklarativno-proceduralna kontroverza . . . . . . . . . . . . . . . . . . .Osnove veˇtaˇke inteligencije I s c 8 Arhitektura inteligentnih agenata 8. .2 Evaluacija pozicije . . . . .4 α-β kresanje (odsecanje) . . . . . . . . . . . . . . c 10. . . . . . . . . . . .General Problem Solver . . . . c 10 Reˇavanje problema propagiranjem i nabrajanjem s 10. . . . .3 klasa NP: nedeterministiˇki polinomijalni problemi . . .6 Teorija igara . . . . 132 . . . . . .2 Histeretiˇni agenti . . . . . . . . .1 MYCIN . . . . . . .1 Tropistiˇni agenti . . . . . . . . . . . . .7 Dinamiˇko programiranje . . . .4 Heuristiˇko pretraˇivanje . . . . 8. . . . . 129 . . . alfa-beta algoritam . . . 8. . . . . . . . . . . . . . . . . .3 Agenti nivoa znanja . . . . . . . . . . .2 Linearno programiranje . . . . . . . . . . 10. . c 12. . . . . . . . . . . . . . . . . . . . . . . . c 8. . . . . . . . . . 11. . . . . . . . . . . . .igre.4 Agenti znanja u koracima . 12. . . . . z 11. . . . . . . . . . . . .1 Drvo pretraˇivanja (drvo ispravnih poteza) . . . . . . . 127 . . . .5 A algoritam . . . . 132 . 10.5 Psiholoˇka izuˇavanja reˇavanja problema i igranja s c s 11. . s 3 77 77 79 80 83 86 90 92 98 100 101 106 106 107 107 108 108 110 112 115 117 117 117 118 120 122 122 . . . . . . . . . . . . . . . . . . . 135 . . . . . . . . . . . . . . . . . . 8. . . 11 Programi . .3 Gradijent metoda u teoriji grafova . . . . . . . .primer . . . . . . . . . 11. . . . . . . . . . . . . . . . . . . . . . .8 GPS . .6 Promiˇljeni agenti . . . . . . . . . . . . . . . . . . . .3 Ekspertni sistemi zasnovani na logici prvog reda 12. .5 Agenti s namerom . . . . .3 MINIMAX izbor i algoritam. . .1 Reprezentovanje znanja . . . .

. . . . .5. .2 Uˇenje pravila i planova .1 Primer STRIPS . 140 c 13. . . . . .3 Uˇenje karakteristika i koncepta. . . . . . . . 140 13. . . . .2 Osobine sistema produkcionih pravila . . . . 141 c . . . . . . . . . Vereov primer . . . . . . . . . . . . . . . . . . . . . 136 13 Uˇenje c 138 13. . . .4 Seminarski rad 12. . . . . .

s Nekoliko istraˇivaˇa na Dartmut koledˇu 1956. Semjuel. ... a i dans je u izvesnom obimu) gde su Allen Newell i c Herbert Simon prezentovali ..veˇtaˇka inteligencija. poznat i kao otac savremene statistiˇke s c informacione teorije . Frege.ˇlan komisije.zajedno sa Alanom Tjuringom . automatsko dokazivanje teorema (pomenuti . godine predlaˇ prvi model veˇtaˇke neuronske mreˇe.Logic Theorist” ... g.ironiˇno. pogotovu jednim generisanim dokazom koji je bio kra´i nego jedan naveden u . Simon i Newell).. istoris c jski razvoj i uvod Istorijski gledano.prvi program za automatsko dokazivanje teorema (Bertrand Rasel je bio zadovoljan rezultatima.Newell. a s z s c z 1951.physical c s . sa 3000 vakuumskih cevi) zasnovan na takvoj mreˇi (u okviru dokz torske disertacije za ˇiju je komisiju bilo diskutabilno da li se moˇe takav c z rad svrstati u matematiku . c ˇ gde su uˇestvovali i Minski. Sajmon i Njuel daju 1963. jedan od osnivaˇa c moderne simboliˇke logike. 1955. joˇ je Lajbnic pominjao . Solomonov i drugi. kao i ambiciozan pokuˇaj ostvarivanja opˇteg sistema za reˇavanje s s s problema GPS (General Problem Solver . pretpostavku sistema fiziˇkih simbola koja je uspeˇno naknadno osporac s vana.Princ cipia Mathematica” . je predloˇio notacioni sistem za mehaniˇko rec z c ˇ zonovanje. 1963). izjavio je c da ´e biti jednog dana ako ve´ nije .univerzalnu algebru” kojom s bi se svekolika ljudska znanja (ukljuˇuju´i i etiku i metafiziku) obuhvatila c c jednog dana u jedinstvenom deduktivnom sistemu. McCulloch i Walter Pits joˇ 1943. imao je nameru da napravi i c s c c maˇinu za igranje ˇaha. Veˇtaˇka inc s c teligencija beleˇi prve uspehe akademske prirode kao ˇto su prvi program za z s igranje ˇaha (Claude Shannonn.analitiˇku maˇinu” koja z s c c s raˇuna i ˇtampa neke matematiˇke proraˇune. Tek napretkom informatike i tehnologije 1940-tih i s s 1950-tih nastaju prvi rezultati koji spadaju u domen VI.ovo se smatra jednim od najbitnijih presudnih rezultata u istoriji VI) ili dama (Arthur Samuel.svi su ipak bili svesni da su to samo poˇetni rezultati). upravo je Minski teorijskim c c c rezultatima . Carls Bebidˇ 1834.pokopao” neˇto kasnije ovu oblast za narednih par decenija).Osnove veˇtaˇke inteligencije I s c 5 1 Poglavlje 1 . 1960). (Dartmouth College) z c z uˇestvuje u seminaru koji organizuje McCarthy na temu VI (koji je prvi c predloˇio upravo taj naziv za tu oblast. konstruiˇe mehaniˇku . Jonh von Neumann.Logic Theorist”. ali je vaˇan deo istorije: svaki sistem (ljudski ili veˇtaˇki) koji se smatra z s c inteligentnim mora da radi tako da uzima fiziˇke ˇablone (simbole.. a poznat je i kao otac LISP-a koji je z bio znaˇajan alat u VI. godine Marvin Minsky i Dave Edmonds prave prvi elektronski raˇunar c (SNARC. Senon.

te oblasti ve´ su ostvarile s c sjajne rezultate.1 Bilo koji problem za koji ne postoji efikasno algoritamsko reˇenje je problem veˇtaˇke Inteligencije (VI). naprotiv . to ne znaˇi da su oblasti c VI rekle sve ˇto imaju (daleko od toga). Kognitivne nauke. a na poslednje pis tanje uglavnom daje negativan odgovor. umnim i racionalnim bi´ima. ona vodi ka ozbiljnim ontoloˇkim pitanjima i problemima: imamo sliku o s ljudima kao svesnim. ne postoji potpuno dobra definicija VI jer ne postoji ni potpuno dobra definicija inteligencije i pojmova u vezi nje. VI se moˇe smatrati eksperimentalz nom naukom u kojoj se eksperimenti vrˇe na raˇunaru u okviru modela koji s c . kombinuje ih u strukture (izraze) i rukuje njima (koriste´i proc cese) da bi proizveo nove strukture (izraze). liˇenom smisla (mehanicistiˇki i partikularno. povezuje ih i odgovara na njih. gde ˇestice nes c c maju svest). Iako ova potonja definicija c c c daje intuitivniji i u nekom smislu precizniji opis oblasti kojima se bavi VI. Kako to onda da u takvom svetu postoje ljudi kao bi´a sa c sveˇ´u i namerom ? Da li je mogu´e um preneti iz jednog organskog bi´a sc c c u punom smislu u neki fiziˇki sistem zasnovan iskljuˇivo na postoje´oj ili c c c budu´oj informacionoj tehnologiji ? Ovo su samo neka pitanja koje Dˇon c z Serl veˇto postavlja u [JS]. Na kraju. 1. Richard Karp). Efikasnost se moˇe jasno.prvi teorijski rezultati nastaju tek poˇetkom 1970-tih c godina (Steven Cook. ali ˇesto se deˇava c c z c s i obratno. i u mnogome pomogle kao alati i ljudima i nauci. a u isto vreme c ljudi su agenti u fiziˇkom svetu ustrojenom u nauˇnom smislu deterministiˇki c c c i materijalno. ˇije su posledice s c razvejane tek pojavom prvih ekspertnih sistema. ali i one koje su u vezi sa njom a nisu u direktnoj vezi sa VI i raˇunarstvom. slobodim. Med ¯utim.1 Definicija i oblasti bavljenja VI Definicija 1.6 Seminarski rad patterns”).npr. polinomijalna kompleksnost (i NP) je dobra i poˇeljna (u z smislu efikasnosti) . mogu pomo´i istraˇivanjima u oblasti VI. pa ˇak i formalno definisati komplesnoˇ´u alz c sc goritma . s s c Ovu definiciju i jedan dobar deo strukture ovog teksta dugujem [JL] i [GN]. Suˇtina zablude. Ovakva definicija daje praktiˇniji i bolji pogled na pojam VI od uobiˇajene c c Makartijeve (MIT) definicije da je to oblast raˇunarstva ˇiji je cilj rezonoc c vanje na raˇunaru na naˇin koji je sliˇan ljudskom. jeste nedostatak domenskog znanja potrebnog inteligentnim sistemima umesto iskljuˇivog oslanjanja na c sintaksnu analizu.

prec c c poznavanje i obrada (pattern recognition) zvuˇnih i vizuelnih signala predc stavlja izazov za sebe. s Postoje dobro ustanovljeni formalizmi i u matematici i u igrama koji ˇine c simboliˇke (nenumeriˇke) podatke posebno znaˇajnim. Na primer.postoji c c s matematiˇki formalizam kojim se ovo moˇe preciznije obuhvatiti i definisati c z kao ˇto su to npr. programi i ispitivaˇi) . ali je posebno zanimljivo razumevanje i zakljuˇivanje c koje sledi nakon toga. Zato prva osobina nudi osnovu z z reˇavanja prvog problema na koji se nailazi u VI . moˇe bolje razumeti . tiˇu se obrade simboliˇkih podataka (nasuprot tradicionalnoj numeriˇkoj c c c obradi kao primeni raˇunara) c 2. Pod algoritmom obiˇno podrazumevamo ured konaˇan c ¯en c niz precizno definisanih operacija koje mogu biti izvrˇene (na raˇunaru).. S druge strane.Osnove veˇtaˇke inteligencije I s c 7 su izraˇeni programima i ˇijim se testiranjem i dorad z c ¯ivanjem postiˇu neki z modeli ljudske inteligencije (kojima se ova npr..klasiˇan” algoc c c ritam za igranje ˇaha koji bi mogao da se koristi upotrebljivo jer bi algoritmu s koji bi ispitao sve mogu´e pozicije za svaki potez bile potrebni barem milioni c godina i na najbrˇim postoje´im raˇunarskim sistemima. z c c Osnovne dve osobine oblasti kojima se bavi VI (bez osvrta na neke odred ¯ene dobro definisane metode): 1. Tjuringove maˇine i sliˇni formalizmi (Alan Tjuring. ustanovio je prvi praktiˇan test programa VI u kome razdvojeni c c uˇestvuju ljudi.sakupljanje informacija.ne z postoji realno oˇekivanje niti cilj da VI zameni ljudsku inteligenciju osim u c nekim specifiˇnim oblastima ljudske delatnosti i primenama raˇunarstva ˇije c c c granice pomera VI). uvek ukljuˇuju nekakav element izbora: nedeterminizam kojim se kaˇe c z da ne postoji algoritam na osnovu koga bi izabrali neku opciju u skupu mogu´ih za datu situaciju c Raˇunari danas sve bolje rukuju multimedijalnim sadrˇajima ali je to rukoc z vanje i njihova obrada joˇ uvek daleko od onoga ˇto ljudska ˇula i svest s s c pruˇaju u opaˇanju i razumevanju sveta. inaˇe s s c c je jedan od prvih informatiˇara i jedan od prvih istraˇivaˇa VI na digitalnim c z c raˇunarima. . Ali s c to ne znaˇi da ´e biti izvrˇene u nekom . ne postoji .razumnom” vremenu .

kada se izmed bar dva jezika nekoliko puta ista reˇenica prevede ¯u c anegdota kaˇe da je od engleske poslovice .. od srca” tako z c dobijen . Mitchell). poˇetkom z s s c 1970-tih) Minskog kojima se to znanje formalizuje ali i praktiˇno koristi.. Prvi uspeˇni ekspertni sistemi kao ˇto je to bio DENDRAL i MYCIN s s (Edward Feigenbaum) predstavljaju poˇetak izlaska iz te krize. Ideja inteligentnog samostalnog entiteta ili agenta koji kontinualno funkcioniˇe u stvarnom svetu sa usad s ¯enom inteligencijom (situated intelligence) takod postaje sve aktuelnija (predlog uopˇtenog reˇenja ¯e s s kroz SOAR arhitekturu kao primer . novim metodama i teorijskoj potvrdi novih metoda . ili life-long learning. c Minski je bio poznat i kao tvorac mirkosvetova kao probnih formalnih poligona za reˇvanje problema VI (koje je davao svojim studentima). slede´i jezik VI (posle LISP-a) koji c pored ostalih klasifikacija spada u deklarativne programske jezike i jedan je od najznaˇajnijih alata VI. Maˇinsko uˇenje koc s c risti dostignu´a matematiˇke statistike. o ˇemu npr. kakav je s bio i Svet blokova (sistem SHRDLU koji je razvio Terry Winograd 1971. generacije.Newell. da za automatsko prevod ¯enje nisu dovoljni samo sintaksna analiza. piˇe Dreyfys 1972.Daleko od oˇiju. Od 1980-tih godina nakon prvih pokuˇaja indusc s trijalizacije VI (i raˇunari 5.. i kasnije c c s Lighthill 1973. Alain Colmerauer je razvio Prolog. Tom M. ali je bio potpuno nepris s menjiv za bilo kakvo uopˇtavanje zbog nedostatka domenskog znanja. John Laird. koje s je u tom sluˇaju bilo . pored jezika) i eksplozije PC inc dustrije poˇinje zreliji period razvoja VI sa akcentom na primeni postoje´ih c c teorija.2 Kratak uspon i pad. ali i nove metode ˇija je primena ve´ c c c c sada nezamenljiva. Takvi problemi su naruˇili nerealno idealnu sliku s o VI i oznaˇili period njene krize. zatim renesansa Nakon poˇetnog entuzijazma nastalog pod uticajem tehnoloˇkog razvoja c s raˇunara do poˇetka 70-tih brzo se doˇlo do zakljuˇka o pravoj teˇini probc c s c z lema VI. pa i c c opˇte znanje i iskustvo (poznat je primer o programima za automatsko pres vod ¯enje. Osnovu c izlaska ˇini i posmatranje domenskog (deklarativnog) znanja inteligentnih sisc tema.nevidljivi idiot”).8 Seminarski rad 1. reˇnik i dobri algoritmi pretrage ve´ i znanje o semantici jezika. Ideja deklarativnog znanja razvojem . gde su vaˇni bili uopˇteni alati kao ˇto su frejmovi (okviri. ˇiji preterano kritiˇan izveˇtaj utiˇe na sudbine mnogih isc c s c traˇivaˇkih projekata (problem nije bio u VI ve´ u zahtevima od tada mlade z c c oblasti).neki rezultati u oblasti prepoznavanja govora ili raˇunarske vizije su tako bliˇi realnom svetu c z (naspram teorijskih mikrosvetova) i praktiˇnoj upotrebi. npr. Rosenbloom.utkano” u sintaksnu analizu tog sistema). Negde c 1972. je bio veoma uspeˇan u reˇavanju njegovih problema.

1. otkrivanja znanja (Data Mins c ing). ovakav pristup definisanju ima dodatnu slabost . prepoznavanje ˇablona (pattern recognition) s • igre . Med s c ¯utim. dobavljanje informacija (information retrieval). automatsko ispravljanje i generisanje • agenti . formalno automatsko dokazivanje ispravnosti • obrada prirodnog jezika . gde pojam web ontologije prirodno nasled ¯uje okvire Marvina Minskog.Osnove veˇtaˇke inteligencije I s c 9 WWW-a postaje sve aktuelnija idejom semantiˇkog web-a (Tim Bernersc Lee. javlja se potreba za reˇavanjem problema kojima c s treba prevazi´i neki ljudski nedostatak. softboti. razumevanje i analiza dijaloga. web mining . indukcija. regulisanog W3C). ali ne objaˇnjava s potrebu i naˇin na koji ljudi ˇele da upravljaju znanjem. velika koliˇina znanja koc c jim je teˇko upravljati ˇak i uz pomo´ ve´eg broja ljudi . s • predstavljanje znanja .formalna definicija s c c c u uvodnom poglavlju ne ostavlja nedoumice u tom pogledu. Na primer. ˇah .sistemi kojima se ˇuva i eksploatiˇe znanje na naˇin c s c sliˇan ljudskim ekspertima c • maˇinsko uˇenje .maˇinsko prevod s ¯enje. Oblasti veˇtaˇke c z s c inteligencije sa nekim podoblastima i tipovima inteligentnih sistema (neke od njih ili bar najve´i deo bi´e objaˇnjen u ovom tekstu detaljnije) jesu: c c s • ekspertni sistemi .pretraˇivanje.3 Oblasti Inteligentnim sistemima nazivamo programske sisteme i druge praktiˇne c rezultate VI.u oblastima kakve su maˇinsko s uˇenje ili ekspertni sistemi. strukture • rasud ¯ivanje (rezonovanje) . razliˇite metode rasud z c ¯ivanja (od Aristotelovih silogizama do danas) i automatsko dokazivanje teorema. odnosno posledicu jedne od neformalnih definicija VI (kao oblasti raˇunarstva koja je posve´ena inteligentnim sistemima): entiteti koji c c imaju sposobnost inteligentnog ponaˇanja koje sre´emo kod ljudi.metode klasifikacije..multi-agentski sistemi i primene.. koji je ujedno i idejni tvorac web-a zasnovanog na HTTP i HTML.jezici predstavljanja znanja.teorija igara i primene.

fazi logika i sistemi. s veza sa tehnologijom • filozofski aspekti. ali predstavljaju dobar nagoveˇtaj daljih saznanja u vezi ostalih osnovnih pojmova VI.. genetski algoritmi.problemi prepoznavanje. neuronske c mreˇe. antropologija): uverenja. primene u automatskom odluˇivanju i upz c ravljanju • robotika • kognitivne nauke (multidisciplinarna oblast u kojoj se prepli´u VI i c psihologija. kreativnost. percepcija. prepoznavanje govornika i autentifikacija • vizija .10 Seminarski rad • govor . lingvistika. 12 i 13 (i donekle 7) izlaze izvan okvira ovog teksta. filozofija. biologija. Poglavlja c s 8. dijaloga i objaˇnjenja. neurologija. pam´enje.problemi interpretacije i razumevanja slika • raˇunska inteligencija (soft computing) . priroda inteligenc cije i svesti. generisanje i razumevanja govora.kombinacije” kakva je i evolutivna psihogija (uticaj bioloˇke strukture ors ganizma na psihu i obratno . s .modeliranje korisnika. usad ¯ena sposobnost saznavanja (kognicija).jedinke kao eksponenti DNK) • edukacija . i mnoge . etiˇke i druˇtvene implikacije c s Naredno poglavlje ima takod uvodni karakter. znanja i njegovog reprezentovanja.inteligentni tutorski sistemi • inteligentni interfejsi . emocije. gde se pre svega ilustruje ¯e znaˇaj pojmova problema i reˇenja.

Potrebno je zato najpre na´i formu zapisa problema c c tako da se ovi nedostaci izbegnu. Izvedi neposredne zakljuˇke o tome ako je mogu´e (time se moˇe do´i do nedostaju´ih podataka i elegantnije formulacije) c c c c 3. pogotovu matematiˇki problemi s c ili igre. U realnom svetu problem moˇe biti opisan prirodnim jezikom (ˇije z c razumevanje u smislu interpretacije predstavlja jedan od osnovnih primera problema VI) koji sa taˇke glediˇta reˇavanja problema ima barem ˇetiri c s s c ozbiljna nedostatka: nekompletnost (bez konteksta lako moˇe do´i do nesz c porazuma u razgovoru). Variajante ovakvih problema s mogu biti reˇavanje slagalice (gde je lako navesti sve dozvoljene transofors macije od poˇetnog stanja do zavrˇnog) ili dokazivanje jednaˇine gde izbor i c s c broj transformacija uopˇte nije jednostavno na´i. s c 2. uopˇteni koraci s s Uobiˇajen redosled koraka u reˇavanju problema mogao bi biti: c s 1. nejasno´a tj. viˇesmislenost i grac s matiˇka neispravnost.Predstavljanje problema Pojam problema Problema postajemo svesni kada ˇelimo da neˇto postignemo ali ne znamo z s kako da do toga dod ¯emo.1 Poglavlje 2 . Primer za to su zatvoreni izrazi: x ∈ X : K(x) gde se pod tim podrazumeva da za dati skup X (ˇime je implicitno data c struktura skupa sa svojim operacijama) treba na´i sve njegove elemente x c za koje je ispunjen skup ograniˇenja K(x).2 Reˇavanje problema. Ovo obiˇno vodi ka postupku c c traˇenja prvog reˇenja koje smanjuje dalji prostor reˇenja koji treba prez s s traˇiti i dozvoljenim transformacijama se tako iterativno dolazi do kona’ˇnog z c zatvorenog izraza koji daje direktno reˇenje.Osnove veˇtaˇke inteligencije I s c 11 2 2. algoris tam kojim bismo doˇli do toga). Za razliku od problema u svakodnevnom ˇivotu. s z problemi ˇkolskog tipa su obiˇno precizno opisani zajedno sa ponud s c ¯enim podacima neophodnim za njegovo reˇavanje. Problem uvek podrazumeva i neko reˇenje s s ili potragu za reˇenjem. ne znamo njegovo reˇenje (ili postupak. redundantnost. Proˇitaj ili upamti problem s razumevanjem c c c z c 2. ’Poigraj’ se sa dobijenim zakljuˇcima i upam´enim ˇinjenicama (veoma bitan korak ljudima) .

inteligentno reˇavanje problema pretpostavlja stvaranje plana za njes govo reˇavanja. Napravi plan (veza podataka i nepoznatih. Matematiˇke notacije su polazna osnova s c c za izgrad ¯ivanje formalizama koji su nam neophodni za prouˇavanje ovakvih c modela. uslovi. prefiksni (poljski) i . i sl. s c s Ljudski um se u svakodnevnom ˇivotu rukovodi apstraktnim modelima ˇto z s zapoˇinje u razliˇitim slojevima od samih ˇula sve do psihiˇkih procesa.) c 3.koliko objekata napadaju) koji predstavljaju mogu´e akc cije nad objektima. muzike ili matematiˇkih izraza s c koji su suˇtinski grafiˇkog karaktera. Porazmisli o svemu. drugaˇija formulacija. Proveri ispravnost reˇenja. crteˇ. korak ili nad konaˇno reˇenje ¯i c s ¯i c s 7. uoˇi zatvoren izraz z c Seminarski rad 6. naˇin zapisivanja i reprezentovanja problema je s c veoma bitan deo reˇavanja jer pojednostavljuje i ˇesto ubrzava reˇavanje. Sprovedi plan (da li su svi koraci jasni i da li se mogu potkrepiti dokazima ?) 4. Pravilno formirane niske definisane prema redosledu objekata i operatora daju izraze koji mogu imati vrednost (primeri: infiksni. potproblemi i ranije reˇavani s problemi.) z 2. Koc c c c riste se nizovi simbola i ˇeme za zapis teksta. Prouˇi dobijeno reˇenje (da li je ispravno. s 2.3 Notacije. Linearne notacije predstavljaju niske ovakvih simbola. potraˇi mogu´e uopˇtenje s z c s Postupak koji je predloˇio George Polya (1956) se moˇe uporediti sa prethodz z nim: 1. nepoznate. Svi notacioni sistemi uopˇteno se sastoje od simbola objekata i simbola ops eratora (arnost . Potraˇi bolju formulaciju. da li se moˇe primeniti na c s z neke druge probleme) Dakle.12 4. Shvati problem (podaci. ostavi da stvari sazru 5. Nad delimiˇno reˇenje i vrati se na 2. naˇini reprezentovanja c Kao ˇto je pomenuto. itd.

listovi objekti. Liste se mogu posmatrati kao ured ¯ene trojke (S. null je oznaka prazne liste).glava” ili operator.. izrazi naspram relacija. pogotovu u nekim programskim jezicima c kao ˇto je LISP) i takod se mogu pokazati ekvivalentnim nekim prethodnim s ¯e strukturama.. s Upotreba grafova je i u tome od znaˇaja kako ljudima.dvodimenzione” notacije se ovakvi izrazi mogu takod zapisati (ˇvorovi su ¯e c operatori. tako i programima c .R) gde je S . dok su L i R zapravo c pokazivaˇi na ˇlanove niza. objekti. Ovo nas dovodi do zapisa koji su upotrebljivi u algoritmima i programima (liste su znaˇajne zbog toga posebno.4 Modeli grafova u VI Grafovi su znaˇajan alat za reprezentaciju objekata i znanja kao dva bitna c nivoa prisutna kako u matematici (npr.. automatskog reˇavanja problema i razumevanja prirodnog jezika..u uobiˇajenoj infiksnoj notaciji se svode na zamenu ili brisanje podterma c ili grane na drvetu. Naravno.L. a redosledom obilaska i ˇitanja drveta se moˇe doc z biti linearan zapis i obratno).sestra”.     d   d   d S    ©      d S d  ‚ d   a b a b 2. i listovi imaju objekte umesto operatora (listovi c c imaju .Osnove veˇtaˇke inteligencije I s c 13 postfiskni zapisi aritmetiˇkih izraza. a L i R su takod liste ili .. U veˇtaˇkoj inteligenciji se tako mogu s c lakˇe razmatrati problemi maˇinskog dokazivanja teorema. teorema) tako i drugim oblastima.rep”(leva i desna . niz ovakvih trojki je u memoriji indeksiran i poˇinje sa pomenutom trojkom. c c Koriˇ´enjem grafova tj. Transformacije nad ovakvim strukturama kao ˇto su zamena podliste drugom listom ili brisanje podliste s . problemi vizije s s i govora.L=R=null”. ¯e redosled kao kod obrnute poljske notacije). drveta kao specijalne vrste grafova koji su primer sc . izraza teorije skupova ili logiˇkih izraza).

4. c s 2... Heuristike (kao preˇice u postupku reˇavanja c s nekog problema koje daju efikasnije algoritme) se porede npr. Takvi grafovi c su korisni u algoritmima za maˇinsko dokazivanje gde se heuristike stans dardnih algoritama za rad sa grafovima svode na heuristike u dokazivanju.S.1 Reprezentovanje znanja u automatskom reˇavanju problema s ' $ ' E $ Formalni iskaz problema & Formalni iskaz reˇenja s T % % & Spoljaˇnja reprezentacija s .. Relacija (time i graf kao naˇin prikaza relacije) moˇe imati osobine koje c z je ˇine relacijom ekvivalencije (R.T) ili relacijom poretka. a ve´ c c naˇeta tema reprezentacije znanja (i strukture znanja) bi´e dalje pojaˇnjena. U jednom od narednih odeljaka s bi´e kratko navedene formalne definicije grafova i njihovih osobina.. c c s Grafovi takod predstavljaju i jedan od bitnih spojeva razliˇitih formalno ¯e c definisanih problema i njihovih praktiˇnih reˇenja u VI. Graf moˇe biti od pomo´i kao vizuelno i intuitivno pomagalo ˇoveku i ekviz c c valentna struktura u programu.14 Seminarski rad i reˇenjima VI u smislu modela grafova. ili moˇe biti od pomo´i kao struktura koja z c opisuje postupke u reˇavanju problema i odnose med objektima (nose´i njis ¯u c hovu sintaksu i semantiku). s internim znanjem nekog matematiˇara kada reˇava neki problem i uopˇte su veoma c s s . transformacija . ' c $ ' E $ Interni iskaz problema & Interni iskaz reˇenja s % % & Interna reprezentacija (ilustracija odnosa formalnog i internog reprezentovanja problema i reˇenja) s Interna reprezentacija je zapravo prostor reˇenja u kome se od nekog poˇetnog s c stanja nekim postupkom reˇavanja stiˇe do reˇenja (prostor reˇenja je defins z s s isani podskup prostora stanja).

semantiˇkog”).sintaksnog”) reprezentovanja c znanja i internog (. 1979) c s umesto Venovih dijagrama: A B 1 2 3 A B 1 2 3 mogu se dobiti pregledniji grafovi kao pomo´ u reˇavanju. vaˇi: z Teorema 1 A∗ = (A − A) ∨ (C(A) ∧ A) A A 1 2 3 4 C(A) C(A) .. Nekoliko interesantnih primera / skica c automatskog dokaza teorema u geometriji i teoriji skupova: Primer 1 . kao i razdvajanje eksterne (.polaze´i od topoloˇkog reprezentovanja skupova (Merialdo.. Primer: c s z ako je A zatvorenje skupa A (najmanji zatvoren skup koji sadrˇi A) i A∗ = A ∧ C(A) njegova granica.Osnove veˇtaˇke inteligencije I s c 15 znaˇajne za VI.

Elementi ovakvog dijagrama se predstavlc jaju u tabeli ˇiji su redovi oblika: naziv objekta (d). Vaˇi da I pripada OB. Prava d potpuno zadata taˇkama O c i B koincidira sa d poˇto su trouglovi BCD i OCD jednakostraniˇni.pravu s c d i taˇku I koja polovi CD. z Poˇto je ugao AIB prav to znaˇi da I pripada krugu nad preˇnikom s c c . O. a tvrd ¯enje sledi poˇto s isto tako vaˇi da je A − A = atom 2 i C(A) ∧ A = atom 4..atomski elementi”(zapravo reprezenti klasa elemenata datih osobina) granice . prava je odred ¯en ¯ena dvema razliˇitim taˇkama.ovakav red se nalazi na poˇetku reˇavanja problema. konstruiˇu´i dva bitna objekta .vidi” da su ..16 Seminarski rad Na grafu se . (d) B D k I C O R (d’) A Program moˇe kao i ˇovek da pod od pretpostavke da gotovo reˇenje z c ¯e s postoji kao u dijagramu iznad. I .pripadaju d) . Primer s ¯e c problema: ako je dat krug k i dve taˇke A i B van tog kruga konc struisati pravu p kroz A tako da su njeni preseci C i D sa k jednako udaljeni od B.atomi 2 i 4. tip (prava). predstavnici (B. s c OI i BI bisektrise CD i time ista (jedinstvena) prava. B je c c zadata a I tek treba odrediti). stepen c slobode (1). z Primer 2 Traˇenje geometrijskog mesta taˇaka ili konstrukcija lenjirom i z c ˇestarom su takod mogu´a primena upotrebe grafova u VI. Stepen slobode govori koliko je elec s ment odred (npr. B. I. ˇto daje red u s pomenutoj tabeli: d prava 0 d .

ILI” se odnose na disjunkcije a ˇvorovi .... k2 = f ◦ h ◦ g. PG1p ˇ Cvorovi .I" PG1 PG2 . logiˇki iskaz se razvije i od korena .. preslikavanja. g i h bijekcije. Svaka podgrana (PG) predstavlja podcilj u pretrazi koji se moˇe z reˇavati posebnim metodama koje opet mogu proizvesti svoje podgrane (pods ciljeve).diskuz s c tuje” prema listovima): CVOR .ILI" PG11 PG12 ..2 Grafiˇko reprezentovanje znanja u automatskom reˇavanju c s problema O automatskom reˇavanju i razvijanju grafa moˇe se govoriti i kroz primer s z I . k3 = g ◦ f ◦ h vaˇi da su surjekcije (NA) i da je tre´e z c injekcija (1-1). kongruencija i kardinalnostu. ¯en Odatle sledi da je p potpuno odred ¯ena taˇkama I i A..Osnove veˇtaˇke inteligencije I s c 17 AB koji je time potpuno odred a time i I kao njegov presek sa d.primeri (neki detalji su c .I” se odnose na konc junkcije.. h : C → A tri preslikavanja i ako za dva od bilo koja od tri preslikavanja k1 = h◦g ◦f .4. c Primer 3 Primer iz teorije skupova sa preslikavanjima i kompozicijama koji je uspeˇno reˇio program DATE (Pastre. Razbijanje problema na podprobleme kao i drveta s z na poddrve´e je korisna osobina i jednog i drugog . PGn CVOR .. Primer teoreme koju DATE moˇe da dokaˇe: z z Teorema 2 Ako su f : A → B. onda su sva tri preslikavanja f . 2.ILI drveta traˇenja reˇenja (npr.. g : B → C. Tada je veoma poˇeljno svesti takvo drvo na jednu granu (da li zbog z naˇina pretraˇivanja ili zbog samog problema nedeterminizma prisutnog u c z VI to je teˇko dostiˇno). 1978) kao i joˇ oko 150 teos s s rema u vezi teorije skupova.

Proˇirene Mreˇe Prelaska (Augmented Transition Networks . redom. ali i kao intuitivan ljudski alat za reˇavanje s problema. s PARI (problemi celobrojne aritmetike. Grandbastien. s z 1975) mogu se koristiti za sintaksno-semantiˇku analizu i predstavljaju grafove c ˇiji su ˇvorovi ili reˇi. Primer je i upored c ¯ivanje problema optimizacije u operacionim istraˇivanjima gde se iskazi oblika .3 Grafiˇka reprezentacija i prirodni jezik c Veza sintakse i semantike jezika je presudna kod problema razumevanja prirodnog jezika u cilju automatskog prevod ¯enja. LR1) su morale biti nadograd ¯ene gramatikama u kojima bi jeziˇki automat u nekom trenutku analc ize se vra´ao na prethodne nivoe obilaska drveta transformacija i razreˇio c s neke semantiˇke probleme da bi nastavio analizu (rekurzivne gramatike viˇeg c s reda).. Grafovi su korisni i kao formalni oblik c reprezentacije podataka i znanja. 1966). kao i dosta pragc matiˇnog ljudskog znanja o svetu uopˇte.. Woods. Ono ˇto je interesantno za njih je da s s jeziˇki procesor koji ovako tekst analizira gradi na osnovu semantiˇkih pravc c ila internu formu koja se zove semantiˇka mreˇa (semantic network) i koja c z predstavlja rezultat obrade reˇenice prirodnog jezika (u [JL] dat je primer c vezan za analizu elektriˇnih kola). 2. Prvi pokuˇaji koji su se s oslanjali samo na sintaksu i prevod reˇi u reˇ su se pokazali nedovoljnim.5 Traˇenje pravog reprezentovanja z Traˇenje pravog naˇina reprezentovanja problema je skoro uvek najznaˇijniji z c c korak u reˇavanju problema .ATN. 1978) ili automatsko dokazivanje teorema iskaznog raˇuna (Pitrat. Burgoin.4. 1974). c c ve´ je potrebno u reˇniku dati nekakvo semantiˇko znaˇenje na osnovu koc c c c jeg program gradi semantiˇku konstrukciju dela teksta.primer problema: dva crna skakaˇa s jedne s c strane i dva bela s druge na 3x3 ˇahovskoj tabli treba da zamene mesta u ˇto s s .proces z prethodi procesu uz potrebna vremena za izvrˇenje” i . Kontekstno slobodne gramatke c s ˇ Noama Comskog s pravilima transformacija (npr. 2.18 Seminarski rad u [JL]): PRET (reˇavanje trigonometrijskih problema. ili semantiˇke familije ili podgrafovi (tako da je ovakva c c c c reprezentacija suˇtinski rekurzivna).procesi se nemogu s paralelno izvrˇiti” reˇavaju algoritimima optimizacije putanje kroz graf i s s bojenja grafa.

. Ako se uzmu u obzir Hornove klauzule i rezolucija. Kada se uoˇi da su pozicije skakaˇa elementi skupa c c cikliˇne strukture reda 8 onda se lako uoˇi i reˇenje. Njegova sintaksa se moˇe vrlo jednostavno definisati z <S-izraz> := <atom> | <lista> <lista> := ( <telo> ) <telo> := <nil>| <S-izraz> | <S-izraz> <telo> <atom> := niska alfanumerika bez razmaka (standardni identifikator) i specijalnih znakova.. funkcija QUOTE koja zaustavlja evaluaciju L za (QUOTE L) ili skra´eno ’L) a evaluacija funkcije tako zadate listom je izvrˇavanje LISP c s programa.en ] ili [glava|rep]. Jednom s usvojeno iskustvo sa ovakvom strukturom i funkcionalnom filozofijom programiranja se lako prenosi i u druge pristupe programiranju i VI. takav naˇin c reprezentovanja znanja i jezik su najbliˇi PROLOG-u.. Njihov znaˇaj i primene u veˇtaˇkoj inteligenicji (pored istorijskih) su c s c brojne. gde je nil je prazna lista bez elemenata. PROLOG takod z ¯e koristi liste (sintaksa oblika [e1 . Prvi atom liste je funkcija koja moˇe z biti ugrad ¯ena (npr.· · ·. Lista kao osnovna struktura podataka u LISP-u je ujedno i naˇin c reprezentovanja znanja (sam program je takod lista pa se npr.Osnove veˇtaˇke inteligencije I s c 19 manjem broju koraka. itd). c 2. u nekim ¯e genetskima algoritmima koristi kao struktura koja se rekombinuje. odnosno naˇin reprezentovanja znanja.. dok se u tekstu koristi .6 Programski jezici PROLOG i LISP PROLOG i LISP su jedni od najznaˇajnijih programskih jezika bitnih za c VI.” taˇka umesto vertikalne crte . c c s 2.|”) ali ne kao osnovnu strukturu c podataka. mnogi sistemi kao ˇto je to npr.7 Grafovi Formalna matematiˇka definicija grafa je: c . U ostatku teksta ´e se uglavnom koristiti . CLIPS su inspirisani ovim jezikom.kvazi-predikatski” jezik i rec prezentacija znanja koja ukazuje na predikatski raˇun prvog reda ili bliske c forme.

7. U ) akko Y = X i V ⊂ U. kaˇe se da graf nije orijentisan i veze izmed ˇvorova su c z ¯u c ivice.. ˇija se formalna definicija odnosi na standardne ili obiˇne Petri c c . Definicija 2. je a = c1 i b = cn i svaki (ci . problemi najkra´ih puteva i drugo).20 Seminarski rad Definicija 2. z 2. Putanja od temena a do temena b u G je konaˇni niz temena c1 . Ako za za svaka dva ˇvora grafa postoji lanac koji ih povezuje kaˇe se da c z je graf povezan.2 G = (Y. G je pod-graf grafa G akko Y ⊂ X i V = U − W gde je W = { (v.1 Petri-mreˇe z Osnovnu postavku Petri mreˇa u svojoj doktorskoj disertaciji dao je Carl z Adam Petri.. ci−1 ) ∈ U . a ako je antisimetriˇna (bitan je redosled temena) onda su veze izmed c ¯u temena lukovi. Ako graf nije orijentisan onda je dovoljno da (ci . w) | v ∈ X − Y ∨ w ∈ X − Y } (uklonjena su neka temena zajedno s lukovima). a ako ih povezuje putanja (graf je orijentisan) onda je jako povezan. Warshall-ov algortiam za tranzitivno zatvorenje. R) je graf gde je X skup ˇvorova ili c temena grafa. ukupan broj prethodnika i naslednika (ulaznih c i izlaznih lukova). Stepen ˇvora je broj suseda tj. ci−1 ) ∈ U ili (ci−1 .1 Struktura G = (X. Ako je R simetriˇna. cn c td. Jedno od veoma korisnih proˇirenja poc s jma grafa su Petri mreˇe (i njeni derivati). a = b.. V ) je parcijalni graf grafa G = (X. ci ) ∈ U i onda je putanja lanac koji povezuje a i b. Postoji mnogi alati teorije grafova i algoritmi koji su korisni i u mnogim konkretnim primenama (npr. . Ciklus je zatvoren lanac tj. a R je binarna relacija nad skupom X (R ⊆ X × X).

3 Petri mreˇa je petorka C = (P. µpn ). B.. bag . • µ : P → N je funkcija markiranja koja dodeljuje nenegativan ceo broj mestu. f ) gde je f : S → N preslikavanje koje slika element osnovnog skupa S u broj ponavljanja . x ∈ B.. . . P ∩ T = ∅ (skup mesta i skup c prelaza). izlazna funkcija preslikava prelaz u multiskup izlaznih mesta. gde je: z • P = {p1 ... . ar } skup lukova gde vredi: (∀ai ∈ A)ai = (vj . B(tj )) p Nizom paljenja prelaza se definiˇe izvrˇavanje Petri mreˇe. vk ) ⇒ (vj ∈ P ∧ vk ∈ T ) ∨ (vj ∈ T ∧ vk ∈ P ) Grafiˇka reprezentacija mesta je obiˇno krug ili elipsa (sa nekom oznakom c c tokena oznaˇavanja). s s z Graf Petri mreˇe G = (V.... F (tj )) Paljenjem prelaza tj ∈ T dolazi do promene vektora markiranja µ u novi vektor µ∗ takav da je: (∀pi ∈ P )µ∗i = µpi − #(pi . i A = {a1 . .Osnove veˇtaˇke inteligencije I s c 21 mreˇe kao najrasprostanjeniji dijalekat (vrsta). vs } z c koga ˇine dva disjunktna skupa V = P ∪ T . pn } neprazan skup mesta. • F : T → NP . Postoje i mnoga proˇirenja. P ∩ T = ∅.. tm } neprazan skup prelaza td. Petri mreˇa kao struktura se oslanja na pojam z multi-skupa (skup u kome je dozvoljeno . ali moˇe predstavljena i kao n-dimenzionalni vektor markiranja z µ = (µp1 . broj ponavljanja elementa x multiskupa B.. A) je takav da skup ˇvorova V = {v1 . • B : T → NP . Prelaz ti ∈ T moˇe biti upaljen ako je: z (∀pi ∈ P )µpi ≥ #(pi . z s primene i posledice ovog alata. ulazna funkcija preslikava prelaz u multiskup ulaznih mesta. F (tj )) + #(pi . • T = {t1 . B) (njegova kardinalnost).multiset.formalno par (S.. . a prelaz pravougaonikom ili vertikalnom crtom.... F..u suˇtini dovoljno je f kao multiskup s ako se S podrazumeva). T.. Tako c se graf sastoji pre svega iz dva tipa lukova: . n = |P | gde je µi broj tokena u mestu pi . c Definicija 2.. se oznaˇava i sa #(x.ponavljanje” elementa . µ).

22

Seminarski rad • ulaznih (od mesta ka prelazu - vaˇi ako je F (tj , pi ) > 0, ako je vrednost z ve´a od 1 upisuje se iznad luka) c z • izlaznih (od prelaza ka mestu - vaˇi ako je B(tj , pi ) > 0, ako je vrednost ve´a od 1 upisuje se iznad luka) c

Mogu´e su mnoge primene i primeri ovakvih struktura: modeli i formalna c verifikacija distribuiranih sistema (multi-agentskih sistema, primera radi), komunikacionih protokola, upavljanje projektima i planiranje, modeli multiprocesorksih sistema, itd.

Osnove veˇtaˇke inteligencije I s c

23

3

Formalni sistemi - deklarativno znanje i zakljuˇivanje c

Formalno predstavljanje znanja je neophodan korak u reprezentovanju znanja i izgrad ¯ivanju osnovnih struktura u programu pa i u VI. Formalni sistemi su vrsta apstraktnih struktura kojima se mogu strogo matematiˇki c zasnovati formalni jezici, matematiˇka logika ili druge strukture i osnovne c matematiˇke oblasti koje su neophodne kao osnovni primeri formalnog reprezenc tovanja znanja i zakljuˇivanja o njemu - za strogo zasnivanje neophodno bi c bilo definisati pojmove kao ˇto su: niz, nizovi simbola (niske - je prazna reˇ s c duˇine 0, Σn je skup svih niski duˇine n nad alfabetom Σ, Σ∗ = i∈N Σi ), z z jezik kao podskup svih niski datog alfabeta ˇiji su elementi reˇenice, forc c malna (kontekstno slobodna) gramatika kao struktura G = (V, T, P, S) (gde su V neterminalni simboli, T terminalni, P skup produkcija tj. relacija med reˇenicama kojima se zadaju pravila izvod ¯u c ¯enja (koraka transformacije) reˇenica, S je poˇetni neterminalni simbol) i jezik L(G) njome definisan, itd. c c

3.1

Definicija formalnih sistema

Definicija 3.1 Formalni sistem (FS) je ured ¯ena petorka (Σ, G, A, P, T ) gde je: 1. Σ konaˇni alfabet (ˇiji su elementi terminalni simboli jezika formalnog c c sistema) 2. G formalna gramatika - kao naˇin strogog definisanja pravila formiranja c ispravnih reˇenica (wff - well formed formulas) odnosno formula FS c 3. A skup reˇenica koje predstavljaju aksiome - formule FS koje imaju c posebnu ulogu u FS. 4. P konaˇan skup pravila izvod c ¯enja (ili dedukcija, zakljuˇivanja) reˇenica c c (ispravnih u sistemu) u obliku relacija reˇenica: c U1 , U2 , ...Up → W1 , W2 , ...Wn ˇime se oznaˇava izvod c c ¯enje iz reˇi Ui (1 ≤ i ≤ p) u reˇi Wj (1 ≤ j ≤ n) c c 5. T skup teorema - formula FS koje se mogu izvesti iz aksioma, ukljuˇuju´i c c i aksiome

24

Seminarski rad

Dokaz je konaˇan niz reˇi M1 , ..., Mr ˇiji su ˇlanovi ili aksiome ili reˇi izvec c c c c dene iz prethodnih ˇlanova tog niza prema pravilima izvod c ¯enja (4). Teorema t je reˇ (formula) za koju postoji dokaz tako da je Mr ≡ t i piˇe se c s t. Aksiome su teoreme po definiciji. Dok se za nisku moˇe u konaˇnom z c broju koraka odrediti da li je ispravna reˇenica, za pitanje da li je formula c teorema to ne mora biti tako. Vaˇi: T ⊆ L(G) ⊆ Σ∗ . Kao ˇto postoje neterminalni simboli kod formalz s nih gramatika koji nisu deo alfabeta ali uˇestvuju u produkcijama (svojevrsne c promenljive, konaˇno izvedena reˇenica ih ne sadrˇi), tako se i u aksiomama i c c z pravilima izvod ¯enja mogu koristiti gde zamenjuju bilo koju ispravnu reˇenicu c FS (praktiˇno se mogu shvatiti i interpretirati kao sheme aksioma i pravila c npr. jedna aksioma sa takvim simbolom predstavlja zapis prebrojivo mnogo aksioma, koliko ima i formula FS). Pravila koja sadrˇe takve promenljive zovu z se prepravljanja (re-writing - odnose se na deo reˇenice leve strane pravila), c inaˇe su zovu produkcijama. Pretpostavka je da je broj aksioma i reˇenica c c rekurzivno prebrojiv (postoji pravilo, algoritam po kome se moˇe do´i do z c svakog u konaˇnom broju koraka). c Pored ovih apstraktnih struktura, znaˇajan je i pojam konceptualizacije kao c modela univerzalne algebre, odnosno trojke (∆, F, R) gde je ∆ skup elemenata domena, F skup funkcija (elementi su f : ∆n → ∆, razliˇitih arnosti n), c R skup relacija konceptualizacije (elementi su ρ ⊆ ∆m , razliˇtih arnosti m). c Uz predikatski raˇun prvog reda (PR1) kao odgovaraju´i jezik konceptualc c izacije dobijamo sintaksni nivo deklarativnog znanja koji odred ¯uje alfabet sa tri klase: simbolima konstanti domena, konstanti funkcija i konstanti relacija, a uz interpretaciju (preslikavanje ovakvih elemenata jezika u odgovaraju´e elc emente konceptualizacije tj. modela) dobija se deklarativna semantika, veza izmed sintakse (jezika) i semantike (konceptualizacije). Znanje formalizo¯u vano ovakvim strukturama se naziva deklarativnim znanjem. Znaˇaj pojma c konceptualizacije je i taj da ne mora da zavisi od izbora jezika, tako da umesto PR1 to moˇe da bude jezik binarne tabele, semantiˇke mreˇe, okvira z c z (koji se uglavnom mogu svesti na PR1, proceduralni deo okvira se jedino ne uklapa) ili neki drugi.

2 Iskazni raˇun i predikatski raˇun prvog reda c c Tako je iskazni raˇun jedan od najpoznatijih primera formalnih sistema c (klasiˇan oblik matematiˇke logike u uˇem smislu. dok se o deklarativnom znanju z s i zakljuˇivanju moˇe saznati viˇe iz [GN]. ali i kao metod dedukcije c (zakljuˇivanja o znanju i njegovim posledicama): c • alfabet: {p. w1 ⇒ w2.)} • ako su w. w1 i w2 pravilne reˇenice onda su to i: c slovo alfabeta.s.PR1 se moˇe formalizovati (u smislu prethodno definisanih s z FS) i praktiˇno koristiti kao reprezentacija znanja.¬.prethodi definiciji predikatskog raˇuna c s c prvog reda (PR1). teorija skupova i teorija s izraˇunljivosti).Osnove veˇtaˇke inteligencije I s c 25 Pomenuti formalni sistemi su osnova za definisanje pojma formalnog matematiˇkog c dokaza..r. ali to ne znaˇi da je onda dedukcija s c efikasnija): p ⇒ (q ⇒ p) (p ⇒ (q ⇒ r)) ⇒ ((p ⇒ q) ⇒ (p ⇒ r)) p∧q ⇒p p∧q ⇒q (1) (2) (3) (4) .∧. dok teorija modela (univerzalna algebra c + logika) teˇi semantiˇkom pogledu. (w).⇒.∨. Definicija FS potiˇe iz knjige [JL]. ¬w. w1 ∧ w2. kao i Bulova algegbra. gde se obiˇno podrazumeva Hilbertov sistem dedukcije koji posmatra c logiku sa ˇisto sintaksnog aspekta.. o forz c c malnim jezicima se moˇe saznati viˇe iz [HU].(. koji je osnova mnogih praktiˇnih inteligentnih sistema c i osnovni primer matematiˇkog jezika i zakljuˇivanja kao modela ljudskog c c razmiˇljanja . Slede primeri i pojaˇnjenja. c c z dok se u ˇirem smislu podrazumeva i teorija modela. i s time se neˇto smanji broj aksioma. i mnogo viˇe od toga . w1 ∨ w2 • ˇema aksioma (koje ukljuˇuju i ∨ iako se moˇe sistem definisati potpuno s c z bez disjunkcije koja se onda naknadno definiˇe: p ∨ q ≡ ¬(¬p ∧ ¬q). c z s s 3.q..

promenljive i konstante (kvantifikator ∃ se definiˇe s . z Ako se tako definiˇe semantika reˇi iskaznog raˇuna nad skupom B = { .takvo preslikavanje u izraz c koji zavisi samo od slova u njemu je interpretacija (bez vrednosti promenljivih).) Kod iskaznog raˇuna preslikavanje τ reˇi u izraz sa funkcijama kao interc c pretacijama logiˇkih operatora nad skupom B .26 p ⇒ (q ⇒ (p ∧ q)) p⇒p∨q q ⇒q∨q (p ⇒ q) ⇒ ((r ⇒ q) ⇒ (p ∨ r ⇒ q)) (p ⇒ q) ⇒ ((p ⇒ ¬q) ⇒ ¬p) p ⇒ (¬p ⇒ q) p ∨ ¬p Seminarski rad (5) (6) (7) (8) (9) (10) (11) (umesto (2) moˇe (p ⇒ q) ⇒ ((p ⇒ (q ⇒ r)) ⇒ (p ⇒ r)). ⊥} s c c (Bulova algebra). itd. w1 ⇒ w2 → w2 (mada se mogu koristiti i druga kao ˇto su to npr. ∧-eliminacija: w1 ∧ w2 → w1 . Vaˇne osobine ovog formalnog sistema su (ili nekog drugog formalnost sisz tema prvog reda): nekontradiktornost (konzistentnost). Slede´i vaˇan primer formalnog sistema je predikatski raˇun prvog reda (PR1) c z c gde se uvode i pojmovi predikata odnosno relacije (odred ¯ene arnosti). onda su validne reˇi (tautologije) one ˇija je istinitosna c c vrednost uvek (ili istinite) bez obzira na vredost promenljivih i interpretaciju (i pokazuje se da je svaka tautologija teorema iskaznog raˇuna. modus tolens: ¬w2 . w2 → w1 ∧ w2 . 1921). ∧-uvod ¯enje: w1 . odluˇive (uvek postoji posc c tupak kojim se u konaˇno mnogo koraka za bilo koju reˇ utvrd c c ¯uje da li jeste ili nije teorema). univerzalni kvantifikator ∀. w2 . a za niz koknretnih vrednosti slova u B se kaˇe da je valuacija promenljivih. kompletnost (svaka validna reˇ ili njena negacija su teoreme sistema). s w1 ⇒ w2 → ¬w1 . z i umesto (9) i (10) moˇe ¬¬p ⇒ p) z • modus ponens je dovoljan kao jedino pravilo izvod ¯enja: w1 . c Emil Post.

27 Definicija interpretacije je takod proˇirena uz pojmove apstraktne strukture. Dodatne aksiome pored aksioma iskaznog raˇuna: c (∀x)P (x) ⇒ P (u) (aksiom partikularizacije). F.. promenljivama i funkcijama. npr. x nije slobodna u w1 .stroga definicija je rekurzivnog c karaktera. F je skup funkcija. formalna aritmetika) i atomski iskazi redom (kojima se . Interpretacija I je model reˇi (formule) ako je zadovoljena za svaku valuaciju. z φ ≡ τ |= φ za datu PR1 teoriju τ .Osnove veˇtaˇke inteligencije I s c sa (∃x)P ≡ ¬(∀x)¬P ). Formule mogu biti i kvantifikovane . Teorija je konaˇno aksiomatizabilna ako postoji c c konaˇna baza (podskup reˇi) iz kojih se mogu izvesti svi elementi τ .proˇiruju” formule iskaznog s raˇuna). R je skup relacija tako da su ti objekti slike (piˇe s I se npr. Ako je reˇ φ zadovoljena c c bez obzira na interpretaciju onda je tautologija (|= φ). . . Tada se moˇe definisati: |=I [V ]φ ili reˇ φ je zadovoljena akko posz c toji interpretacija I i valucija V td. I(ρ) = ρ ) funkcionalnih i relacionih konstanti kojima su grad ¯eni termi (izrazi nad konstantama. R) gde je ∆ domen . J se kaˇe da su elementarno ekvivalentne (I ≡ J) akko vaˇi |=I φ ≡|=J φ za z z proizvoljnu teoremu φ. ((∀x)(w1 ⇒ w2 )) ⇒ (w1 ⇒ (∀x)w2 ). Ako je formula φ zadovoljena za svaku interpretaciju za koju je zadovoljen i skup hipoteza τ onda se kaˇe da je logiˇka posledz c ica ili implikacija tog skupa formula i piˇe se τ |= φ.baza znanja”) kao da su aksiome ˇto se s zapisuje kao τ φ.skup iz koga interpretacije mogu uzimati vrednosti. kao trojke (∆. Za datu teoriju (ili sistem) i njene dve interpretacije I. Takod moˇe se pokazati τ ¯e. ¯e s konceptualizacije (koja uz PR1 daje model deklarativnog znanja). gde je x slobodna u w). npr. je φ istinita. Dodatna pravila izvod ¯enja: generalizacija: w ⇒ (∀x)w. Skup τ je teorija s ako je zatvoren logiˇkom implikacijom (ne postoji teorema izvan njega koja c proizilazi iz tog skupa) i moˇe kao deo formalnog sistema isto biti konzistenz tan. kompletan ili odluˇiv. Teorija c c je nekonzistentna ako ne postoji interpretacija i valuacija tako da je svaki element zadovoljen. Formula φ moˇe se z izvesti koriste´i se i formulama nekog skupa formula τ (hipoteza.. baza c podataka u PROLOG programu.

..28 Seminarski rad Za PR1 kao formalni sistem se pokazuje da jeste nekontradiktoran. Ovim teoremama se npr. .npr. moˇe skratiti formalan dokaz ako se koriste kao svoz jevrsna heuristika (kao i dodatnim pravilim zakljuˇivanja). Gedelova teorema nekompletc nosti). . φn } φ tada je ∆ φ. Znaˇajna ograniˇenja formalnih sistema pokazuje i c c teorema Tarskog . PR2 gde se c kvantifikuju i predikati pored promenljivih) ali da nije odluˇiv (Church-ova c teorema: postoje neodluˇivi formalni sistemi. Teorema 4 (Pravilo T) Ako je ∆ φ1 .dok su npr. Postoje i mnoge c alternativne logike i njihovi formalni sistemi sa svojim osobinama i domenima primene ..ovu lepu osobinu nema. recimo. kompletan (Gedelova teorema kompletnosti kojom se praktiˇno pokazuje da je u c PR1 zadoljovost ekvivalentna konzistentnosti... intuicionistiˇka (naglaˇava matematiˇki konstruktivizam pre c s c . kao ni teorija grupa. skup je konzistentan ako je takav i c svaki njegov konaˇan podskup . odnosno semantiˇka vrednost c formule ekvivalentna je sintaksnoj .ovo je povezano i sa osobinom kompaktnosti: po teoremi kopmaktnosti svaki nekonzistentan skup formula u PR1 ima konaˇan nekonzistentan podskup tj. ∆ φn i {φ1 . prstena i polja (ˇto je Tarski pokazao . s projekivna geometrija i teorija zatvorenih realnih polja odluˇive). c Slede´e teoreme su praktiˇno veoma korisne: c c Teorema 3 (Teorema Dedukcije) Ako je ∆ {φ} ψ onda je ∆ (φ ⇒ ψ). Teorema 7 (Teorema generalizacije) Ako je ∆ φ i ν je promenljiva koja se pojavljuje kao slobodna u ∆ onda ∆ (∀ν)φ. Formalna c aritmetika (Peano zasnovao oslanjaju´i se na PR1) nije kompletna (Gedelov c dokaz aritmetizacijom). Teorema 5 (Teorema kontrapozicije) ∆ {φ} ¬ψ akko ∆ {ψ} ¬φ.. Teorema 6 (Teorema odbacivanja) Ako je ∆ {φ} nekonzistentna tada je ∆ ¬φ.postoje formalni sistemi u kojima za svaku interpretaciju postoji valjana reˇ za koju ne postoji dokaz.

Neki metod zakljuˇivanja tj. Moˇe da zavisi od prethodnih zakljuˇaka c z c (istorije) makar implicitno zbog same prirode procedure.Osnove veˇtaˇke inteligencije I s c 29 nego pojam istine. c . Postoje klase formalnih c c sistema i metodi koji su u tome uspeˇni. Markovljeva funkcija next koja slika skup reˇenica baze znanja s c (kojima su zadate polazne pretpostavke i izvedene posledice) u naredni. npr. izvedeni skup reˇenica baze znanja. itd. Ako se baza znanja u svakom koraku izvod ¯enja uve´ava tj. a jedan od poznatijih je algoritam s rezolucije (na kome se bazira interpretacija PROLOG programa). u PR1 problem egzistencije stepena iracionalnih bro√ √ √2 2 √ √2 jeva koji je racionalan: 2 = 2 ∈ Q iako o osnovi 2 ne moramo da znamo da li je takva . modalna. Procedura zakljuˇivanja predstavlja izbor narednog koraka zakljuˇivanja kao c c ˇto je to npr. ako je svaki naredni korak nadskup c prethodnog onda je procedura zakljuˇivanja inkrementalna. 3. c temporalna. dokazivanja teoz c rema je ispravan ako je svaki zakljuˇak dobijen postupkom tog metoda iz c njegove baze znanja logiˇka posledica te baze (kompletan ako vaˇi i obratno) c z u smislu logiˇke implikacije i zakljuˇivanja u PR1.3 Zakljuˇivanje c Automatsko dokazivanje teorema s obzirom na sve prethodno moˇe da z bude veoma teˇak problem.kod intuicionistiˇke logike to nije dokaz).

30 Seminarski rad 4 Rezolucija Rezolucija je primer metode zakljuˇivanja koja se moˇe efikasno automac z tizovati. standardizovanje promenljivih .za svaki kvantifikator posebna promenljiva: npr.1 Klauzalna forma Rezolucija se primenjuje nad jednim pojednostavljenim oblikom izraza PR1 ˇiji su osnovni elementi klauzule. Skica algoritma za pretvaranje iskaza PR1 u klauzalnu formu je (oblik PRENEX algoritma za normalnu formu iskaza): 1. Klauzalna forma je konz s junkcija klauzula. c 4. Klauzule se sastoje od literala koji su c zapravo atomski predikati (pozitivni literali) ili njihove negacije (negativni literali). (∀xP (x)) ∨ (∃xP (x)) zamenjuje se sa (∀xP (x)) ∨ (∃yP (y)) 4. i u odred ¯enim sluˇajevima se pokazuje da je to ispravna i kompletna c procedura zakljuˇivanja.eliminacija egzistencijalnog kvantifikatora. eliminacija kvantifikatora . ulazak negacije: ¬¬φ se zamenjuje sa φ ¬(φ ∧ ψ) se zamenjuje sa ¬φ ∨ ¬ψ ¬(φ ∨ ψ) se zamenjuje sa ¬φ ∧ ¬ψ ¬∀νφ se zamenjuje sa ∃ν¬φ ¬∃νφ zamenjuje se sa ∀ν¬φ 3. izbacivanje implikacija: φ ⇒ ψ se zamenjuje sa ¬φ ∨ ψ φ ⇐ ψ se zamenjuje sa φ ∨ ¬ψ φ ⇔ ψ se zamenjuje sa (¬φ ∨ ψ) ∧ (φ ∨ ¬ψ) 2. a klauzula je disjunkcija literala. . skolemizacija: svaka formula koja nije pod dejstvom univerzalnog kvantifikatora oblika (∃x)P (x) se zamenjuje formulom P (C) gde je C (Skolemova) konstanta koja se ne javlja ni u jednoj drugoj formuli. Od posebnog znaˇaja su Hornove c klauzule koje sadrˇe najviˇe jedan pozitivan literal.

eliminacija kvantifikatora . se ni jedna promenljiva ne javlja u viˇe s klauzula od jedne. . Npr. kao i primena supstitucije na izraz) se dobija tako ˇto se najpre primene zamene iz τ na σ a onda se s dobijenom dodaju zamene iz τ . Jedinstven je do na imenovanje promenljivih. xn /tn } pod uslovom da se ni jedna od navedenih promenljivih ne javlja ni u jednom od termova.Osnove veˇtaˇke inteligencije I s c 31 Svaka formula prethodnog oblika koja je i pod dejstvom univerzalnog kvantifikatora se zamenjuje formulom u kojoj je promenljiva pod dejstvom egzistencijalnog kvantifikatora zamenjena (Skolemovom) funkcijom (argumenti su promenljive pod dejstvom univerzalnog kvantifikatora) koja se ne javlja ni u jednom drugoj formuli.. . y. {Q. xn termovima t1 . Ako supstitucija σ nema nijednu promenljivu koju ima supstitucija τ onda je τ razliˇita od σ.eliminacija univerzalnog kvantifikatora: poˇto drugih kvantifikatora nema.. Supstitucija σ je opˇtija ili jednako opˇtija s s od τ ako (∃δ)σδ = τ . Supstitucija primenjena na neku formulu predstavlja jednu instancu te formule. svod ¯enje na disjukntivnu normalnu formu: φ ∨ (ψ ∧ χ) se zamenjuje sa (φ ∨ ψ) ∧ (φ ∨ χ) 7.. Viˇe takvih zac c s mena (. Kompozicija c dveju takvih supstitucija στ (zapisuje se postfiksno. . Rekurzivni algoritam za traˇenje nou za dva izraza je (moˇe se uopˇtiti): z z s . y)) umesto ∀x∀y∃zP (x.. y..2 Unifikacija Unifikacija je postupak u kojem se dva izraza izjednaˇavaju (ukoliko je to c mogu´e) zamenama promenljivih odgovaraju´im termovima. (∃δ)φγδ = φσ = ψσ. ∀x∀yP (x.. umesto P ∧ (Q ∨ R) piˇe se: {P }.. Najopˇtiji unifikator (nou) γ izraza φ i ψ je opˇtiji od s s bilo koje druge supstitucije koja σ koja izjednaˇava ta dva izraza (φσ = ψσ) c tj... F (x. z).. 4. zapis klauzalne forme: npr. 5. standardizacija promenljivih: zamene se promenljive td. tn je supstitucija σ = {x1 /t1 . R} s 8.vezivanja”) promenljivih x1 . nema ni zabune ako se uklone svi s kvantifikatori (sliˇno generalizaciji). c 6.

B.i).3 Princip rezolucije Sliˇno modus ponensu .g) i=i+1 end loop end Nou Nouvar(x.B. Compose spaja dve z liste.ako se primeni na jednostavan sluˇaj prikazan c c klauzulama sa prostim literalima izgleda ovako: {R.i)) if s==FALSE ==> Return(FALSE) g=Compose(g. Cons ako je argument konstanta (ukljuˇuju´i c c i funkcijsku konstantu tj.C)..y) if Includes(x. a vaˇi Const(F)=TRUE).y)) if Var(y) ==> Return(Nouvar(y. {Q.Q} .g) y=Substitute(y.P}. ¬ P} {R. Φ = Φγ.npr. Substitute primenjuje na izraz listu zamena (supstituciju).x)) if Const(x) or Const(y) ==> Return(FALSE) if Not(Length(x)==Length(y)) ==> Return(FALSE) i=0.C). g=[] loop if i==Length(x) ==> Return(g) s=Nou(Part(x.y) if x=y ==> Return() if Var(x) ==> Return(Nouvar(x.ve´ implementiran predikat” Var tj. itd. funkcija je iss c tinita ako je argument promenljiva. ukratko: . Part(F(A. 4.Part(y. Φ je faktor Φ ako (∃Ψ ⊆ Φ)(∃γ)γ = nou(Ψ) td. ime funkcije .y) ==> Return(FALSE) Return([x/y]) end Nouvar Objaˇnjenje. Part(F(A.1) == A.32 Seminarski rad Nou(x.0) == F.s) x=Substitute(x.

. 2. Pozitivne (bez ¬) i negativne c instance literala (sa ¬) P koje se javljaju u polaznim klauzulama se . sliˇno zapisu pravila u PR1. (Φ − {φ}) (Ψ − {¬φ})γ.privremeno ubaci” u bazu da bi se doˇlo do kontradikcije s odbacivanje rezolucijom. ili se traˇe vrednosti promenljivih (.fillz in-the-blank”) koje zadovoljavaju postavljeni cilj gde se onda koristi pomo´ni c predikat Ans(X1 .resolution trace”. Kada se prikazuje niz c koraka zakljuˇivanja dodaje se ∆ na kraju ako pripada bazi ili redni broj c koraka na osnovu kojih se zakljuˇuje.Kim)} ∆ {¬F(x.Jon). Ψ.P(x. sistem je nezadovoljiv). Dedukcija (zakljuˇak) Φ rezolucijom na osnovu baze (znanja) ∆ je niz klauzula c ˇiji je element Φ i ˇiji je svaki ˇlan dobijen primenom principa rezolucije ili c c c na klauzulu iz ∆ ili na nekog prethodnog ˇlana niza. je γ = nou(φ.) onolike arnosti koliko nepoznatih uˇestvuje u upitu.y)} ∆ {¬P(z. to znaˇi c c da je u pitanju kontradikcija med pretpostavkama tj.. 3.. literali sadrˇe terme sa promenljivama i tada je neophodan s c z algoritam unifikacije da bi se primenilo pravilo rezolucije: Φ. c Primer .potiru”. dva pokazivaˇa (jedan .Ans(z)} Γ . . ili Γ ako je u pitanju negirani cilj (ako c je cilj pokazati ispravnost upita zadatog klauzulom ili literalom onda se njegova negacija . 4.. U opˇtem sluˇaju.y). .. {F(Art.Jon)} ∆ {F(Bob. ψ) Ako je rezolventa (zakljuˇak principom rezolucije) prazna klauzula.. Algoritam kojim se realizuje automatska dedukcija rezolucijom se svodi na grad ¯enje stabla zakljuˇivanja (po nivoima.Jon): 1. npr. c c Uslov je obiˇno ili prazna klauzula kojom se traˇi odgovor ISTINA / NEISTINA c z na postavljen cilj (zadatu klauzulu).sporije”.. φ∈Φ ¬ψ ∈ Ψ td.upit glasi P(z.Osnove veˇtaˇke inteligencije I s c 33 Horizontalnom crtom je razdvojena rezolventa (izvedena klauzula) od polaznih klauzula. jedan .. postoji kontradikcija ¯u u bazi znanja.brˇe”) c z prolaze kroz sve rezolvente ukljuˇuju´i i novonastale) sve do ispunjenja uslova. poˇevˇi od baze kao polaznog c c s nivoa.

Primer je relacija jednakosti koja ima podrazumevane osobine. {¬F(w. kod koji vra´a s s c njegovu vrednost. 3 7. c 4.Jon)} 1.Ans(w)} 3.Jon).4 Rezolucija i jednakost Programsko prikljuˇenje (procedural attachment) je korisno proˇirenje c s postupka rezolucije (kao i bilo koje druge dedukcione procedure) . ve´ se ili mora preformulisati c tako da su svi termi bez promenljivih na prvom nivou literala u kojima se javljaju: F act(0) = 1 k − 1 = j ∧ F act(j) = m ∧ k ∗ m = n ⇒ F act(k) = n ili se aksiomatizuje jednakost a onda i aksiome supstitucije terma termima za svaku relaciju i funkciju: ∀x x = x ∀x∀y x = y ⇒ y = x ∀x∀y∀z x = y ∧ y = z ⇒ x = z ∀k∀j∀m k = j ∧ F act(j) = m ⇒ F act(k) = m . Erbranov svet konstantnih terma .). 7 Pokazuje se da je princip rezolucije ispravan i kompletan metod dedukcije (koriste´i Erbranove teoreme.34 Seminarski rad 5. Time se moˇe smanjiti broj koraka dedukcije. {P(Bob.. 3 6. {Ans(Art)} 4. 5 1..Kim)} 2. 4 8. {Ans(Art)} 9. ali to z moˇe biti i problem jer u takvim sluˇajevima princip rezolucija nemora biti z c dovoljno mo´an pa se mora pribe´i ipak doslednom aksiomatskom definc c isanju.predikat (literal) ili funkicja se evaluira tako ˇto se izvrˇi program tj. {P(Art. recimo klasiˇna rekurzivna definicja faktorijala: c f act(0) = 1. f act(k) = k ∗ f act(k − 1)) Rezolucija nije dovoljna za takvu definiciju.

i ovo pravilo moˇe biti upotrebljeno nakon svakog s z dedukcionog koraka.5 Strategije rezolucije Drvo rezolucije lako moˇe da ekplozivno naraste i time postupak dedukcije z postaje neefikasan. c Eliminacija ˇistih literala: c Literal je ˇist ako se nigde u bazi znanja ne pojavljuje nijednja njegova komc plementarna instanca. Φσ ⊆ Ψ.. 4. Klauzule koje ga sadrˇe su beskorisna za odbacivanje z rezolucijom i zato se mogu brisati iz baze.5. da bi se doˇlo do tautologija. Moˇe se pokazati da ako se baza znanja z sastoji samo od Hornovih klauzula.subsumption”) klauzule Ψ akko postoji supstitucija σ td. Dovoljno je jednom primeniti ovo pravilo na poˇetku procesa rezolucije. prema tome s mogu biti brisane. Osnovna osobina svih ovih strategija z c je upotreba Hornovih klauzula. c Eliminacija tautologija: Tautologija je klauzula koja sadrˇi komplementarne literale. U ovom poglavlju se razmatraju varijante kao strategije i heuristike kojima se to moˇe izbe´i. za razliku od prethodnog.Osnove veˇtaˇke inteligencije I s c ∀k∀j∀m∀n j = m ∧ k ∗ m = n ⇒ k ∗ j = n 35 4. Eliminacija podklauzula: Klauzula Φ je podklauzula (.1 Strategije brisanja Jedan naˇin poboljˇanja rezolucije je brisanje nepotrebnih klauzula iz c s baze u odred ¯enim sluˇajevima. Pokazuje se da z zadovoljivost baze znanja ne zavisi uopˇte od takvih klauzula. z . Podklauzule se mogu brisati i ovo pravilo kao i prethodno se moˇe primenjivati nakon svakog koraka dedukcije. Unifikacija se ne koristi. da je svaka od ovih strategija ispravan i kompletan metod dedukcije.

je ∆ − Γ zadovoljiv zove se skupom podrˇke za ∆.ˇitkiji” od drugih.3 Ulazna rezolucija Ulazna rezolventa je ona kojoj je bar jedan roditelj element baze znanja. Dedukcija skupom podrˇke se sastoji od rezolventi skupom s podrˇke.5.4 Linearna rezolucija Linearna rezolucija (ancestry-filtered) je vid uopˇtenja ulazne rezolucije.5.5 Rezolucija skupom podrˇke s Ako odbacime sve rezolvente iskljuˇivo nad klauzulama iz skupa znanja c koji je zadovoljiv pokazuje se da to ne utiˇe na odbacivanje rezolucijom. 4. Ulazno odbacivanje je ono koje je dostignuto ulaznom dedukcijom.36 4. c 4. s Ako je baza zadovoljiva onda su negirane klauzule cilja upravo skup podrˇke. i svaki slede´i korak sledi iz poslednje rezolvente (bliski c roditelj) i klauzule koja je u bazi znanja ili predak prvog / bliskog roditelja (daleki roditelj).5. 4. sa samo jednim literalom (singlton). Ulazna rezolucija je ona u kojoj su sve rezovlente ulazne.. Jediniˇno odbacivanje je ono koje je dostignuto c c jediniˇnom dedukcijom. Rezolvetna skupom podrˇke ima uvek jednog roditelja iz Γ ili s s je potomak od Γ.5. Linearna rezolucija poˇinje gornjom klauzulom c (iz baze znanja).2 Jediniˇna rezolucija c Seminarski rad Jediniˇna rezolventa je ona kojoj je bar jedan roditelj jediniˇna klauzula. Jediniˇna rezolucija je ona u kojoj c su sve rezovlente jediniˇne. c c tj. s Linearna rezolventa ima bar jednog roditelja koji je ili u bazi znanja ili je predak svog drugog roditelja. c . c Podskup Γ skupa ∆ (baze znanja) td. Dokazi dobijeni ovom metodom polaze od cilja unatrag i obiˇno s c su .

Pokazuje se da je optimalan redosled odred td. se pretraˇivanje procena koˇtanja minimizuje kao i samo koˇtanje ¯en z s s redosleda tj..6 Ured ¯ena rezolucija 37 Ova strategija je veoma restriktivna ali i veoma efikasna.5.5. Tako onda imamo dve vrste rezolventi i rezolucija: unc apred (u kojem uˇestvuju prednje) i unazad (u kojem uˇestvuju zadnje). Sam problem biranja podstrategije je NP-kompletan. s ..8 Sekvencijalno zadovoljenje uslova Ovo je strategija koja se koristi za ciljeve gde se traˇe vrednosti i gde su z upiti oblika npr.5. broj dedukcionih koraka potrebnih da bi se doˇlo do cilja. Za c c neke upite je efikasnije koristiti jednu podstrategiju od druge.Osnove veˇtaˇke inteligencije I s c 4. Klauzule se tretiraju kao ured ¯eni nizovi literala i rezolvente mogu biti samo nad prvim literalima u klauzuli. 4. 4. Sam redosled z formula u konjunkciji upita je bitan u odnosu na broj konstantnih literala po svakom konjunktu u bazi znanja.: P ∧Q∧R . gde se traˇe vrednosti promenljivih za koje je zadovoljen.7 Usmerena rezolucija Ovo je vid ured ¯ene rezolucije u kojem se klauzule razvrstavaju u dve grupe Hornovih klazula: prednje (pozitivni literal je na kraju) i zadnje (pozitivni literal je na poˇetku).

38 Seminarski rad 5 5.1 Zakljuˇivanje sa nesigurnim uverenjima i c drugi naˇini zakljuˇivanja c c Nemonotono zakljuˇivanje c U ovom poglavlju se razmatraju metodi dedukcije u kojima dodavanje formule skupu pretpostavki utiˇe na zakljuˇak. Najjednostavniji metod kompletiranja je pretpostavka zatvorenog sveta (PZS. kojom se praktiˇno svaki kvantifikac tor moˇe zameniti konaˇnim disjunkcijama i konjunkcijama.unique names assumption”) koja primenjuje princip PZS na jednakost (∆ (t1 = t2 ) ⇒ {t1 = t2 } ∈ ∆pu ).closed-world assumption”). Uz PZS se obiˇno koristi i pretpostavka jedinstvenih imena c (PJI. Jednostavno. kao i pretpostavka zatvorenja domena (PZD. pored ∆ skupa ispravnih aksioma teorije. Ovakvo proˇerenje zas kljuˇivanja moˇe biti od znaˇaja za sistem koji npr. P ] kompletiranje predikata P u bazi s c ∆ koje daje proˇirenje baze tako da P vaˇi samo za one vrednosti za koje je s z . . treba da se prilagodi c z c nepotpunoj bazi znanja. Nemonotono zakljuˇivanje c c moˇe zavisiti i od celog skupa pretpostavki a ne od njegovog podskupa.pretpostavljena uverenja.domain closure assumption”). c Baza se takod moˇe kompletirati u odnosu na svoje predikate tako da ¯e z se pretpostavlja da zadate ˇinjenice u bazi definiˇu sve zadovoljive vrednosti c s predikata. .. pod uslovom da nema funkcijskih konstanti u jeziku (inaˇe postoji c beskonaˇan broj termova nad konstantama koje bi trebalo staviti u ovakvu c aksiomu ili ih kvantifikovati). ili z od formula koje ne pripradaju skupu pretpostavki. PZD prevazilazi ograniˇenje da su jedino one c konstante objekata koje se javljaju u bazi ∆ mogu´e. Skup formula ∆ se moˇe zatvoriti logiˇkom implikacijom τ (∆) ali to nemora z c dati kompletnu teoriju. .. ∆ ∪ ∆pu je onda dopunjena teorija. Suˇtinu ˇini COM P [∆. gde su ti konstante objekata jezika.. Kod logiˇkog zakljiˇivanja u c c c c PR1 to nije bio sluˇaj i zato se zove monotonim. PZD je zadat z c aksiomom ({(∀x)x = t1 ∨ · · · x = tn } ∈ ∆pu ). z onda se njegova negacija dodaje u skup uverenja ∆pu . Moˇe se pokazati da je ovo ekvivalentno postupku PZS uz neke z pretpostavke. φ ∈ P ZS(∆) akko (∆ ∆pu ) |= φ. Pokazuje se da ako je ∆ konzistentna baza i sastoji od Hornovih klauzula onda je i P ZS(∆) konzistentna. ako se za konstantni literal ne moˇe izvesti da pripada teoriji niti njegova negacija.

· · · . Pn } niti z negativne instance iz {P1 .. P ] ≡def ∆ ∧ ((∀x)P (x) ⇔ Ei ) gde su Ei leve strane implikacija klauzula u normalnoj formi u bazi (∀x)Ei ⇒ P (x) koje se mogu grupisati disjunkcijom. a s c u odnosu na predikat P se dobija samo ¬P (B) ˇto posle dovodi do zakljuˇka s c R(B)) . ako je ∆ = {P (A)∨Q. Ako je ∆ = z {P (A). npr. Postoji postupak paralelnog z kompletiranja usamljenih klauzula za skup predikata u bazi. Npr.dozvoljava”. Pi−1 }) i gde se kompletiranje skupa predikata dobija kao konjunkcija kompletiranja pojedinih predikata. P (B)} onda vaˇi COM P [∆. · · · . ti su termi. konstrukcijom u PR2 (kvanz s tifikuju se predikati) td. ˇto je nekonzistentno sa ∆). Ovo se moˇe uopˇtiti minimalnim modelom. Ei da sadrˇi nijedan iz {Pi . R(B) ∨ P (B)} se dobija ¬R(B) i ¬P (B) u opˇtem sluˇaju. iz ∆ = {(∀x)Q(x) ⇒ P (x). P (B)∨¬Q} onda se u odnosu na P dobija i P (A) i P (B).skup klauzula je usamljen u P akko svaka klauzula sa pozitivnim pojavljivanjem (instancom) P ima najviˇe jedno takvo pojavljivanje. Q(A). U tom sluˇaju c c je COM P [∆. kompletiranje predikata . P ] ≡ ∆ ∧ ((∀x)P (x) ⇒ x = A ∨ x = B). za koje baza ∆ to . z . ako je ∆ = {P (A)} onda vaˇi P (A) ⇔ ((∀x)x = A ⇒ P (x)) a formula (∀x)P (x) ⇒ x = A daje z potreban uslov da bude zadovoljeno iskljuˇivo jedino P (A). Usamljene klauzule u odnosu s na predikat jesu Hornove. z Kompletiranje predikata odgovara PZS u odnosu na predikat gde se PZS primenjuje samo u odnosu na zadati skup predikata (ako je to skup svih predikata u bazi onda se poklapa sa PZS.Osnove veˇtaˇke inteligencije I s c 39 P istinit u bazi. Zato se s kompletiranje radi samo sa predikatima usamljenim u bazi . ali obratno ne vaˇi. · · · .. P ] ≡ ∆ ∧ ((∀P ∗ )(∆(P ∗ ) ∧ P ∗ ≤ P ) ⇒ P ≤ P ∗ ) gde je A ≤ B ≡def ((∀x)A(x) ⇒ B(x)) a x moˇe biti i n-torka promenljivih. i u kojem se pazi da ne dod do cirkularnih c ¯e definicija (predikati Π = {P1 . x promenljive koje se ne javljaju u ti a Qi literali u kojima se ne javlja P . Normalna forma klauzula je oblika ∀x(∃y(x = t) ∧ Q1 ∧ · · · ∧ Qm ) ⇒ P (x) gde se pod x = t podrazumeva x1 = t1 ∧ · · · xn = tn . U opˇtem sluˇaju s c kompletiranje je COM P [∆. Pn } su uredeni : za svaku (∀x)Ei ⇒ Pi (x) ¯ disjunkciju klauzula iz baze za Pi .radi” i za formule oblika P (A) ∨ P (B) koje nisu usamljene u bazi (cirkumskripcija): CIRC[∆. P ] ≡ (∆ ∧ ((∀x)P (x) ⇒ x = A)) ≡ ((∀x)P (x) ⇔ x = A) (moˇe se odmah koristiti i ekvivalencija umesto implikacije).tu se javlja problem nekonzistentnosti iako se koristi baza Hornovih klauzula u odnosu na predikat (npr. za koji se moˇe z pokazati da ˇuva konzistentnost.

taksonomijsku c hijerarhiju. Stvar(x) ⇒ Ptica(x) ∨ x=Tviti Ptica(x) ⇒ Noj(x) Noj(x) ⇒ Lete´i-Noj(x) c ¬ Lete´i-Noj(x) c Ab1(x) ⇒ Ptica(x) . 2.npr. Svaki objekat moˇe z imati neke opisane osobine koje su date skupom reˇenica osobina ∆P .JESTE” koja je parcijalno ured ¯ena i tranzitivna (Noj JESTE Ptica). Mogu postojati izuzeci u ovakvom odnosu nasled ¯ivanja koji se opisuju pravilima prekidanja nasled ¯ivanja (inheritance cancellation rules). dok se u ∆P mogu uvrstiti reˇenice: s z c Stvar(x) ∧ ¬ Ab1(x) ⇒ ¬ leti(x) Ptica(x) ∧ ¬ Ab2(x) ⇒ leti(x) Noj(x) ∧ ¬ Ab3(x) ⇒ ¬ leti(x) Lete´i-Noj(x) ⇒ leti(x) c Kompletiranjem (paralelnim) predikata u ∆H se dobijaju reˇenice: c 1. 5. u ∆H se mogu uvrstiti onda: Stvar(Tviti) Ptica(x) ⇒ Stvar(x) Ptica(x) ⇒ Ab1(x) Noj(x) ⇒ Ptica(x) Noj(x) ⇒ Ab2(x) Lete´i-Noj(x) ⇒ Noj(x) c Lete´i-Noj(x) ⇒ Ab3(x) c ˇto se moˇe prikazati i grafom. Dobro je takva pravila napisati dovoljno uopˇteno . odnosno upotrebom relacije t .Noj(x) ⇒ Ptica(x)”. Da bi primer bio kompletan.2 Taksonomijske hijerarhije i pretpostavljeno zakljuˇivanje c (default reasoning) ˇ Cesto je potrebno predstaviti bazu znanja u obliku ˇeme odnosa med obs ¯u jektima. abnormalnosti. 3. . a c prethodne reˇenice o odnosima i izuzecima odnosa daju ∆H ... 4. gde je Ab1 predikat koji se vezuje za odred ¯eni tip izuzetka.40 Seminarski rad 5. ako je s data reˇenica u ∆P : Stvar(x) ∧ ¬ Ab1(x) ⇒ ¬ leti(x) gde je opisana c osobina letenja stvari. kao ˇo je to npr. onda je pravilo izuzetka u ∆H : Ptica(x) ⇒ Ab1(x).

Ab2(x) ⇒ Noj(x) Ab3(x) ⇒ Lete´i-Noj(x) c 41 Iz toga se moˇe zakljuˇiti da Tviti ne leti jer je stvar. ili PZS u odnos na predikat P : :¬P (x) ¬P (x) Problem sa univerzalno kvantifikovanim reˇenicama sa implikacijom i izuzecc ima kao kod taksonomijskih hijerarhija je poznat kao problem kvalifikacije (Lifschitz. D) i β(X0 ) je konzistentna sa ε(∆. ali ako se izmeni tvrdnja z c i pretpostavi da je Tviti ptica onda se kompletirane formule o stvarima i pticama menjaju (Stvar(x) ⇒ Ptica(x). opet z primera radi. D) baze ∆ s skupom pretpostsavljenih pravila D sadrˇi γ(X0 ) ako postoji instanca X0 z za x td. ptica(x) : leti(x) → leti(x) (ovo ujedno primer normalnih pravila kod kojih je β = γ). Nemonotono zakljuˇivanje moˇe biti i posledica nestandardnih c z pravila zakljuˇivanja. zakljuˇiti da sve ptice lete osim onih za koje se ekplicitno tvrdi c da ne lete. Ptica(x) ⇒ Noj(x) ∨ x=Tviti) i moˇe zakljuˇiti da Tviti leti. Zato je zgodno koristiti proceduru zakljuˇivanja sa privrec menim pretpostavkama odnosno pretpostavljenim rasud ¯ivanjem. 1986). α(X0 ) sledi iz ε(∆. Bazu z c s c znanja delimo na bazu uverenja ∆ nad kojom se rade uopˇtavanja i pozadins sku teoriju Γ td.3 Indukcija Veoma vaˇna osobina zakljuˇivanja je i uopˇtavanje zakljuˇivanja.Osnove veˇtaˇke inteligencije I s c 6. hipoteza je konzistenta sa pozadinskom teorijom: ¬(Γ ∆ |= ¬φ) s 2. pretpostavljenih (prototipnih) pravila (default rules) c i pretpostavljenih teorija: α(x) : β(x) → γ(x). ¬(Γ |= ∆). D). Proˇirenje ε(∆. Ovaj proces delimiˇnog kompletiranja u bazi naziva se razdc c c vojenim kompletiranjem (delimited completion). Tada je φ induktivni zakljuˇak (Γ ∆ φ) c akko: 1. 7. Moˇe biti korisno. hipoteza objaˇnjava bazu: Γ {φ} |= ∆ . Tako se sistem vremenom menja u toku samog z c uˇenja ˇinjenica. 5. Npr.

S skup (specifiˇna granica) c minimalnih a G (generalna. Osnovni c s tip poboljˇanja je npr. a graf verzija u kojem su orijentisani lukovi relacijom opˇtosti s . poznat je primer Peanovog c modela prirodnih brojeva) . Tada s vaˇi: z Teorema 8 Za (P. c z z Ako se definiˇe proizvod prostora verzija. ako vaˇi P (A) onda vaˇi P (x). ili viˇe specifiˇan). Indukcija je povezana je i sa problemima (maˇinskog) uˇenja i verovatnosnog zakljuˇivanja.42 Seminarski rad Indukcija je pomak od pojedinog ka opˇtem pod nekim uslovima. s c Zavisno od prirode problema neki put je mogu´e uticati na izbor naredne c instance i traˇiti informacije o njenoj klasifikaciji . pod z z uslovom da nije ¬P (x) (ne postoji negativan primer).ˇvor p je manje opˇti od ˇvora q ako je p ⊆ q (ispravni podskup relacije c s c kao skupa. Prihvatljiva relacija je karakteristiˇna ako c zadovoljena za sve iz P . Primer postupka induktivnog zakljuˇivanja je i problem c c formacije koncepta. Ovo nudi mogu´nost dodatnog poboljˇavanja postupka. Skup V je dobro formiran ako za svaki lanac s c u grafu postoji minimalni i maksimalni element. uneti podatak prepravljaju skupovi G i S c (umesto celog prostora V ) td. diskriminanta ako ne zadovoljava nijednu iz N i dopustljiva je ako zadovoljava oba uslova. Λ) sa dobro formiranim V i S. c Postoji postupak eliminacije kandidata kojim se za svaku (pozitivnu i negativnu simetriˇno) instancu tj. ostaje samo jedna instanca u V . uopˇtena granica) maksimalnih elemenata. N. Algoritam dovodi c do S = G tj.PR1 zakljuˇi moraju pripadati definc isanom reˇniku) i Λ je logiˇki bias (zakljuˇi moraju biti odred c c c ¯ene forme zadate jezikom Λ) i uvodi se pojam prihvatljve relacije (ako zadovoljava biase. a time i faktorizacija. Skup svih dopustljivih relacija je skup verzija V .mogu´e je vrˇiti eksperz c s imente. je pokrivena nova ˇinjenica. C skup svih koncepata koji se koriste da bi se definisao koncept (konceptualni bias . N skup negativnih. C.na primer. Primer s c c moˇe biti i problem klasifikacije ˇinjenica prema nekim atributima i kriterz c ijumima (kao u sistemu i algoritmu ID3 gde se generiˇe pravilo klasifikacija s ulaznih ˇinjenica). mogu´e je s c . ali s c ˇesto samo traˇenje takve instance moˇe da bude zahtevno samo po sebi. definisana nad C u jeziku Λ). Λ) kao problem s c formacije koncepta gde je P skup pozitivnih instanci koncepta (potvrd ¯uju ga). Definiˇe se formalno ˇetvorka (P. G skupovima tada r ∈ V akko je ograniˇena elementima iz S i G. Prethodna teorema (kao i sam postupak i njegove osobine) garantuje reˇenje i to u konaˇnom broju koraka. N. naˇin zas c kljuˇivanja opravdan induktivnom hipotezom (IH. izbor instance koja ´e prepoloviti prostor verzija. C.

4 Zakljuˇivanje sa nesigurnim uverenjima c Potrebno je povezati pojam iskaza sa pojmom sluˇajne promenljive tako c ˇto ´e svaki iskaz imati distribuciju sluˇajne promenljive sa dve vrednosti s c c {1-p.Osnove veˇtaˇke inteligencije I s c 43 dobiti bolje rezultate i varijante algoritma.p}. Viˇe o ovome i o nemonotonom zakljuˇivanju s c se moˇe na´i u [GN]. Tako se Bajesovo pravilo moˇe upotrebiti sliˇno modus ponensu: ako je p(Q|P ) z c uslovna verovatno´a dogad c ¯aja Q ako je P ispunjeno. Tako atom P (dogad ¯aj) je istinit sa verovatno´om p. ¬Q}. {P. Q}. To je deo sluˇajeva c p1 za koje je P ispunjeno kada je i Q ispunjeno: p(Q|P ) = p1 +p2 = p(P.. ¬Q}) i njihove verovatno´e: c p(P ∧ Q) = p1 p(P ∧ ¬Q) = p2 p(¬P ∧ Q) = p3 p(¬P ∧ ¬Q) = p4 tada su verovatno´e dogad c ¯aja odnosno konstantnih atoma P i Q verovatno´e c marginalnih raspodela takve viˇedimenzionalne sluˇajne promenljive za {P. p(P ) p(P. Meta-DENDRAL ili ID3 s koji su . p(P |Q) = p(P. z c 5. Q)/p(Q) i odatle sledi: p(Q|P ) = p(P |Q)p(Q) p(P ) . Q}. Q}: s c p(P ) = p1 + p2 = p(Q) = p1 + p3 = i p(P |Q = Qi ) i p(Q|P = Pi ) Najˇeˇ´e nisu date sloˇene verovatno´e i bez njihove distribucije je teˇko o c sc z c s njima znati dovoljno na osnovu distribucije marginalnih promenljivih. Pored formacije koncepta nezavisne od domena postoje i sistemi kao ˇto su to npr. koji su manje ili viˇe zavisni od domena jer prets postavljaju da su svi podaci na raspologanju na samom poˇetku. Sa dva konstantna atoma moˇemo formirati raspodelu c z viˇedimenzionalne sluˇajne promenljive (za sloˇene dogad {P. s c z ¯aje {¬P.Q) . a ¬P sa c verovatno´om 1 − p.model-driven” tj. Q) = p(P ∧ Q). Obrnuto. {¬P. dok su ostali c inkrementalni (data-driven).

Cesto se koriste logaritmi ovih koeficijenata l = log λ koji se nazivaju indeksi dovoljnosti (ˇto je ve´i to je i p(Q|P ) ve´e) i l = log λ s c c indeks potrebnosti (ˇto je manji to je i p(Q|¬P ) manje). Takod vaˇi veza s ¯e.44 Seminarski rad Dakle. ako je poznato p(Q) i ako se pretpostavi P ili ¬P onda se moˇe izraˇunati uslovna verovatno´a za Q. kao i λ = 1 akko λ = 1. Ekspertni sistemi (rulez c c based) koriste bazu znanja u kojima se nalaze i pravila oblika P → Q da Q moˇe slediti iz P . O(Q|¬P ) = λO(Q) Postoji povezanost vrednosti λ i λ: λ= 1 − λp(P |¬Q) 1 − p(P |¬Q) ali su obe neophodne da bi se naˇla uslovna verovatno´a za Q ako je P ili s c ¬P posebno.. Bajesovo pravilo nudi mogu´nost da se zakljuˇi neˇto i o uzroku na c c s osnovu posledice.izgledi za E”) pa ako je (faktor dovoljnosti) λ =def nosti) λ =def p(¬P |Q) p(¬P |¬Q) i (faktor potreb- onda je: O(Q|P ) = λO(Q). p(P |¬Q)p(¬Q) p(¬Q|P ) = p(P ) p(Q|P ) p(P |Q)p(Q) = p(¬Q|P ) p(P |¬Q)p(¬Q) O(E) =def p(E) p(E) = p(¬E) 1 − p(E) p(P |Q) p(P |¬Q) (. U PR1 to znaˇi da se moˇe zakljuˇiti Q uz to pravilo z c z c ako je P istinito. ali ako c c c uz pravilo se veˇe i njegovo λ i λ onda je to mogu´e. ¬P ) i sa p(P |P ) verovatno´a da je P onda c . A ako se sa P izrazi z nesigurnost u pretpostavku P (tj. O tome treba voditi raˇuna prilikom c ˇ grad ¯enja baze znanja. Poˇto je je 0 < p(P |¬Q) < 1. z izmed p(Q) i O(Q): ¯u p(Q) = O(Q)/(O(Q) + 1) Na osnovu ovoga svega. ali u verovatnosnom zaljuˇivanju to nije tako. ili bar nije c jednostavno do´i do verovatno´e p(Q) uz p(P ⇒ Q) pored p(P ). ako je λ < 1 onda je λ > 1 s i obratno.

. P1 ) = λ2 O(Q|P1 ) i O(Q|¬P2 . P4 onda su i A i B uslovno nezavisne i zakljuˇak Qf koji sledi iz A.sliˇan mehac z c c nizam. onda se verovatno´a zakljuˇka Q moˇe izraˇunati. A zavisi od P1 . P )p(P |P )+p(Q|¬P. P1 )p(¬P2 |P2 ) gde je O(Q|P2 .back-propagation”.npr. Tu se naslu´uje iterativni postupak u kome se koristi prethodno izraˇunato O(Q|P1 ) c c gde se za svako Pi vezuje odgovaraju´i par λi i λi . Zakljuˇivanje unazad (backward-chaining .Osnove veˇtaˇke inteligencije I s c 45 se moˇe pretpostaviti da je p(Q|P. Zakljuˇivanje unapred (forwad-chaining) c propagiranjem pravila nad ˇinjenicama sve do zakljuˇka nalazi verovatno´u c c c zakljuˇka u mreˇi. P3 . B zavisi od njih. ¬P |P ) = p(Q|P.forward-propagation” i . P |P )+p(Q. To se reˇava obiˇno s c dodatnim ad hoc mehanizmima i podeˇavanjima. P1 ) = p(Q|P2 . c Mnogi ekspertni sistemi ih koriste. ∧ Pn . neki ekspertni sistemi koriste p(P ) = mini [p(Pi )] ili p(P1 ∨ . vaˇi: c z p(Q|P2 . gde se takore´i menjaju koeficijenti z s c pravila na osnovu poˇetnih pretpostavki. P1 )p(P2 |P2 ) + p(Q|¬P2 .. Probc lem je ako neki od med ¯uzakljuˇaka zavisi od nekih drugih med c ¯uzakljuˇaka c iako se pretpostavlja da su nezavisni iz bilo kog razloga. . Zanimljivo..npr. P4 uslovno nezavisne. Tada uz pomenutu c pretpostavku i pretpostavku da su obzervacije Pi nezavisne od Pj osim odgovaraju´e . ∨ Pn ) = maxi [p(Pi )] iako bi uz pretpostavku . P2 . Pn } hipoteze koje su uslovno c nezavisne (jaka pretpostavka. ako c c c je p(P |P ) = p(P ) onda je p(Q|P ) = p(Q) .gubi se informacija o uticaju P na Q.. P2 i B zavisi od P3 . Ako imamo pravilo obs lika P1 ∧ . P ) = p(Q|P ) i p(Q|¬P..svoje”Pi . kao i c c z c da se uslove verovatno´e za Pi nekakvim uverenjima Pi ..onda se interaktivno unosi verovatno´a takvih s c c c pretpostavki ako je potrebno dok se ne potvrdi uticaj na zakljuˇak. Sliˇno prethodnom.. z aproksimativno). moˇe se samo opravdati samo do izvesne mere. i da Q ne zavisi dodatno od Pi .. ∧ Pn → Q onda treba najpre izaraˇunati zavisnu verovatno´u za c c P = P1 ∧ . c Tako se mogu graditi mreˇe zakljuˇivanja (inference networks) . . P ) = p(Q|¬P ) z (P i P su zavisne u tom smislu) i vaˇi: z p(Q|P ) = p(Q. iskaz koji nije atom . izraˇunatog i zadatog zakljuˇka) c c c npr.. P1 ) = λ2 O(Q|P1 ). P )p(¬P |P ) gde je onda p(Q|P ) linearna interpolacija verovatno´e izmed kranjih vredc ¯u nosti da je P taˇno ili nije znaju´i verovatno´u da je P .. ako z c su P1 . analizira drvo mreˇe zakljuˇivanja traˇe´i poˇetnu pretpostavku koja z c z c c najviˇe utiˇe na zakljuˇak .. postoji kod nekih klasa neuronskih mreˇa kao ˇto je perceptron. ako su {P1 ..

poˇto ne znamo u kojem od ta dva sveta zaista jeste s (. c 5. gde su slova iskazne promenljive. odnosno 1 − p da pripada W2 ... i-tom c T skupu svetova Wi odgovara Vi = [vji ] gde je: vji = 1. ali to onda nije fuzzy teorija u opˇtem c c s sluˇaju). Ako je L-dimenziona kolona Π = [πj ]T verovatno´a reˇenica φj iz Γ onda je: c c Π = VP .46 Seminarski rad da su Pi nezavisne verovatno´a konjunkcije bila manja od navedenog minuc muma.Zadeh.5 Jedno formalno zasnivanje verovatnosne logike Formalno zasnivanje verovatnosne logike se vezuje za formalno zasnivanje sluˇajnih promenljivih i verovatno´e...svaka reˇenica moˇe biti taˇna ili ne (pozitivni ili c c z c negativni literal je taˇan). VK odgovaraju konzistentnim valuacijama reˇenica u Γ td. s c s c za φ1 ∧ φ2 ne uzimaju se u obzir svetovi gde je φ1 taˇno kao i φ1 ∧ φ2 . a c φ2 nije. φj taˇna u Wi c 0. ..svakom elec mentu i podskupu dodeljena je funkcija koja meri pripadnost skupu. ˇto bi s moglo da se tumaˇi kao verovatno´a.. ali u kranjem sluˇaju gde sve verovatno´e imaju vrednosti 0 ili 1 i c c jedno i drugo se svodi na Bulovu algebru (koja se poklapa sa fuzzy teorijom skupova u ovakvom specijalnom sluˇaju . Ako je reˇenica φ u svetu W1 istinita. c c neka je onda P kolona dimenzije K veorvatno´a [pi ]T vezanih za odred c ¯eni skup svetova Wi . i ako su nabrojani.u stvarnom svetu moˇe biti samo u jednom od ta dva”) to se izraˇava z z verovatno´om p da pripada W1 .. Neka su reˇenice φj u Γ nabrojane. odnosno osobine za koje se vezuju elementarni dogad ¯aji). L-dimenzioni vektori c V1 . i od korena (prve c reˇenice) do lista (zadnje reˇenice) postoje putevi koji daju konzistentne c c skupove (kombinacije). 1965-1975 . Ako imamo c viˇe reˇi onda ima i viˇe kombinacija svetova u kojima su taˇne. ali npr. Za skup reˇenica Γ je mogu´e napraviti semantiˇko drvo i tako c c c odrediti mogu´e svetove . na svakom nivou po jedna iz Γ. c c c a u svetu W2 nije. ostali se odbacuju (moˇe se prikazati tabelarno . VK ]. . φj netaˇna u Wi c Neka je onda L × K matrica V = [V1 . Neka ima K nepraznih c c skupova u K = {Wi } mogu´ih svetova za L reˇenica iz Γ.ima z 2broj slova |Γ| ih praktiˇno 2 c a ne 2 . Verovatno´a reˇenica je c c onda zbir verovatno´a svetova u kojima je taˇna.

prvi red) za tu formulu z s da bi se dodao i uslov (*). c c s Primer: ∆ = {(∃y)P (y). Dakle. vφ1 vφ2 · · · vφK πφ Ako se sa V oznaˇi V bez poslednjeg reda (za φ) i sa Π kolona bez zadnjeg c ˇlana πφ u Π.      .Osnove veˇtaˇke inteligencije I s c 47 uz uslov i pi = 1 za 0 ≤ pi ≤ 1 (*). c z s Γ se moˇe proˇiriti sa i V sa jednim redom (npr. verovatnosna derivacija c c (probabilistic entailment) reˇenice φ iz ∆ se moˇe svesti na problem reˇavanja c z s sistema linearnih nejednaˇina gde je Γ = ∆ {φ} i V je dobijeno npr. Ovo se ¯en moˇe i geometrijski shvatiti i pokazati: jediniˇne vektore V (kao operator) z c slika u temena te oblasti koja su zapravo kolone matrice V. slede´i je naredna c c formula u ∆ i njena negacija. Π =  πj  =  . treba u sistemu ovakvog verovatnosnog zakljuˇivanja voditi o tome raˇuna (npr. 1]K je konveksna oblast (kao slika konveksne oblasti linearnim preslikavanjem V) i predstavlja oblast gde su verovatno´e πj konzistentne i u opˇtem sluˇaju je poliedar c s c omed hiperravnima u L-dimenzionom prostoru (i ima K temena).  .   .   . i 4 nepoznatih pi ).   . Ovaj diedar kada se preseˇe jediniˇnom c c c kockom [0. 1]L u prostoru vektora Π kao slika vektora P ∈ [0. ako c c . Tada se moˇe pokazati da je: z p((∃y)P (y)) + p((∀x)P (x) ⇒ Q(x)) − 1 ≤ p((∃z)Q(z)) ≤ 1 Ovo se moˇe dobiti tako ˇto se 2. i tre´i je ϕ i njena negacija . i 3.   vL1 vL2 · · · vLK  . sec mantiˇkim drvetom . tada se najpre reˇavanjem po P sistema Π = V P dobija c s πφ = p(φ) = ϕP. prvi nivo semantiˇkog drveta ima dve grane: P (A) i ¬P (y). ϕ = (∃z)Q(z) (npr. Sistem najˇeˇ´e ima mnogo reˇenja i zato je interesantno c sc s na´i interval u kome se kre´e reˇenje.  .reˇenica sa njihovim poznatim πi verovatno´ama. Ako je ∆ skup uverenja (belief) .ova metoda se moˇe proˇiriti Skolemizacijom i na PR1. poˇto je zadnja ona kojom se raˇuna c s c verovatno´a ϕ. P .za svaki list onda c imamo kolona nula i jedinica za formule i negacije po nivoima).   v11 v12 · · · v1K  .. (∀x)P (x) ⇒ Q(x)}. Ako se φ doda kao poslednji red ϕ = [vφi ] u V tada je:     1 1 1 ··· 1  . jednaˇina za V saberu i od toga z s c se oduzme prva odakle se dobije da je p1 = π1 + π2 − 1 i na osnovu toga p3 = π1 + π2 − 1 + p2 + p4 (3 jednaˇine.

nije dovoljno pretpostaviti da agent veruje logiˇkom zatvorenju c s c svoje baze znanja ve´ se najˇeˇ´e koristi i prikladnije je da agent veruje onim c c sc reˇenicama koje moˇe da zakljuˇi u zadatom vremenskom roku uz zadatu c z c proceduru zakljuˇivanja. Ako su ψ i φ ispravne reˇi onda su iskazne formule nad njima takod c ¯e ispravne reˇi c Agent a je odred svojim skupom pravila zakljuˇivanja ρa i skupom uv¯en c erenja δa . u smislu c gornjih i donjih granica verovatno´a umesto jedinstvenih vrednosti. inteligentni c agent sa svojom konceptualizacijom tako raspolaˇe uverenjima pre nego znanz jem. c 5. PR1 ispravne reˇi c 2. Tada je teorija Ta zatvorenje δa svojim pravilima zakljuˇivanja c (P ∈ Ta akko δa a P )..b sa ugnjeˇdenim verovanjem se c z zasniva na modelu u b zakljuˇivanja u a. Problem nastaje kada ta Skolemova konstanta ide z i unutar modalnog kvantifikatora . jer uvek mora da zadrˇi mogu´nost da neka informacija ili zakljuˇak nisu z c c ˇ taˇni. c 5. φ) ispravna reˇ (Bα (φ)) c 3. ˇto u praksi nije ˇest sluˇaj i zato se koriste aproksimativne s c c ˇ metode. Cesto se koriste intervali verovatno´a.agent (.vernik”) na osnovu svojih uverenja i zakljuˇivanja u svom modelu moˇe izabrati odgovaraju´u konstantu c z c . Ovo. Kanonizacijom V i drugim standardnim postupcima se moˇe optimizovati reˇavanje ovakvih sistema.6 Znanja i uverenja Ve´ je pomenuta razlika izmed znanja u smislu baze znanja u vezi PR1 i c ¯u uverenja u smislu verovatnosnog zakljuˇivanja (derivacije).ispravne reˇi su: s s c c c 1. kako je pomenuto. naravno. Atomi uverenja: ako je φ obiˇna PR1 zatvorena formula i α je konc stantni term. Npr. Skolemova konstanta se alocira i c obeleˇava simbolom Sk.1 Iskazna logika uverenja (Sentential Logic of Belief) Konstruiˇe se proˇirenje PR1 na slede´i naˇin .6. onda je B(α. S aviˇe.48 Seminarski rad neka verovatno´a nije u toj oblasti onda se menjanjem ostalih parametara c dovede u tu oblast). Zakljuˇivanje a. ima smisla z s samo ako je matrica V dovoljno mala (pa se mogu primeniti metode linearnog programiranja).

. w1 . P (•Sk)). a u drugom ne.npr.koriste se klauzule.. Moˇe se uvesti dodatno skup javnih konstanti C koje z specijalno imaju istu vrednost med svim agentima po definiciji. U jednom z svetu neki agent moˇe znati neku ˇinjenicu.metak”) i piˇe se ispred (zavisne) Skolemove konstante pod z s kvantifikatorom . gde interpretacija za datu konceptualizaciju moˇe imati slike u bilo kojem od svetova. Obiˇni kvantifikatori mogu da ˇetaju unutar i izvan modalnog kvantifikatora c s B. wj ).schema attachment”. wi . φn+1 ) ∨ ψn+1 φ1 ∧ · · · ∧ φn α φn+1 Sledi: ψ1 ∨ · · · ∨ ψn+1 Jedna definicija modalnog kvantifikatora znanja K glasi Kα (φ) ≡ Bα (φ) ∧ φ (nemoˇe neko znati neˇto ˇto nije taˇno). ¯u Koristi se pravilo zakljuˇivanja prikljuˇenja ˇeme (. Da bi se formalnije definisala sez s s c mantika modalnih kvantifikatora potrebno je uvesti pojam logike mogu´ih c svetova. Zbog toga se uvodi pomo´ni operator koji se s c obeleˇava sa • (.. Sliˇno. B(α... Kaˇe c s z se da atom znanja K(α. Svetovi w0 . c c s sliˇno rezoluciji . supstitucija podizraza logiˇki ekvivalentnom podizrazom u forc c muli ispod modalnog kvantifikatora nije dozvoljena kao ˇto je to mogu´e kod s c iskaznih operatora. wi mogu biti apstraktne alternative kao konceptulazacije znanja (u smislu ranije pomenutih konceptuazicija koje mogu biti brojevi ili neki drugi objekti.. φn ) ∨ ψn ¬B(α. . i relacija dostupnosti (accessibility) sveta wj iz sveta wi za agenta α: k(α. manje bitno). φ2 ) ∨ ψ2 . Semantikom z c mogu´ih svetova se objaˇnjavaju konstrukcije iskazne logike verovanja. ∃Q(x) ∧ B(A. P (x)) postaje Q(Sk) ∧ B(A..Osnove veˇtaˇke inteligencije I s c 49 koja uopˇte nemora biti ista.. ali ne transformiˇu se formule ispod c s modalnih kvantifikatora): Iz: B(α. . φ1 ) ∨ ψn B(α. . φ) ima istinitu vrednost za svet wi akko je φ istinita .

50 Seminarski rad za svaki svet dostupan iz wi . Seme aksioma i pravila z zakljuˇivanja za rad sa K (formalna sintaksna definicija): c • (A1) Kα (φ) ∧ Kα (φ ⇒ ψ)) ⇒ Kα (ψ) ili ekvivalentno: Kα (φ ⇒ ψ) ⇒ Kα (φ) ⇒ Kα (ψ) (aksioma distribucije) • (A2) Kα (φ) ⇒ φ (aksioma znanja. w1 . w3 ) ⇒ k(α. a time se namerava znaˇenje da agent α zna c ˇ formulu φ. w2 . w3 )) • pravilo (P1) (epistemiˇna obaveznost. Dodatne osobine verovanja: • (A5) ¬Bα (F ) • (A6) Bα (φ) ⇒ Bα (Bα (φ)) • (A7) Bα (φ) ⇒ Kα (Bα (φ)) • (A8) Bα (Bα (φ)) ⇒ Bα (φ) • (A9) Bα1 (Bα2 (φ)) ⇒ Bα1 (φ) . . dostupnost je refleksivna) • (A3) Kα (φ) ⇒ Kα (Kα (φ)) (pozitivna introspekcija . Priz c padnost aksioma jw med ¯usobno uslovljene osobinama dostupnosti (RST).dostupnost je tranzitivna relacija) • (A4) ¬Kα (φ) ⇒ Kα (¬Kα (φ)) (negativna introspekcija. To se moˇe dalje rekurzivno primenjivati. w1 .. k(α. w2 ) ∧ k(α.epistemic necessity”): c ako φ onda je Kα (φ) • pravilo (P2): ako φ ψ i Kα (φ) onda je Kα (ψ) • pravilo ekvivalentno prethodnom (P2’): ako φ ψ onda je Kα (φ) ⇒ Kα (ψ) Iz (P2) npr. dostupnost je euklidska tj. se moˇe zakljuˇiti distributivnost (K) nad konjunkcijom.

CK se moˇe koristiti sliˇno kao i K u c z c aksiomama. Prethodno poglavlje i opisana modalna c c s logika se ovde tretiraju kao polazni domen nad kojim se gradi formalna konceptualizacija i PR1 reˇnik kojim se opisuje formalno zakljuˇivanje nad c c ovakvim domenom. φ) ≡ φ ∧ EK(G. φ) · · · Iako je beskonaˇna konjunkcija. φ) ∧ EK2 (G.npr. {φi } φ i za svako φi postoji agent Ak ∈ G td. φ) znaˇi da grupa G ima implicitno znanje o φ akko postoji c skup {φi } td. Dalje. K(Ak .. φ) ≡ EK(EKk (G. 5. Introspekcija je osz c obina agenta da samog sebe objaˇnjava tj.). φ) ≡ Ai ∈G K(Ai . φi ). a . svoje zakljuˇke i verovanja. Koristi se klauzalna forma (kao liste literala . neki agent iz G zna φ: SK(G. Kao posledica toga mogu se konstruisati agenti koji su u stanju da zakljuˇuju o verovanjima i zakljuˇivanju drugih agenata (ili se c c moˇe dodatno optimizovati njihov proces zakljuˇivanja). φ) EK Opˇte znanje u grupi: s k+1 (G. kao i pravilo zakljuˇivanja: ako c φ onda CK(φ) (G se podrazumeva). φ) ≡ Ai ∈G K(Ai .7 Meta-znanje i meta-zakljuˇivanje c Potrebno je neki put znati kako se doˇlo reˇenja i obrazloˇiti to na prihs s z vatljiv naˇin a ne samo na´i reˇenje. φ)) CK(G. s c Meta-jezik kojim ´e ovaj koncept biti opisan je PR1 (formalnim jezikom c se opisuje sliˇan formalni jezik). Koriste se znaci navoda da bi se time c naznaˇilo da je reˇ o simbolu kao meta-objektu ..Osnove veˇtaˇke inteligencije I s c 51 Koriste se grupe agenata i dodatni modalni operatori (pomo´ni): za konaˇnu c c grupu G IK(G. φ) Svaki agent zna: EK(G. Kratko(”Osoba”) moˇe c c z znaˇiti da je simbol Osoba kratak (do 5 karaktera) a Visoka(Osoba) moˇe c z biti reˇenica jezika kojom se utvrd ˇ c ¯uje (c)injenica o osobi a ”Visoka(Osoba)”je izraz kojim je to zapisano (mada se izraz ne tretira kao niska karaktera ve´ c ima PR1 strukturu).

Clause.z) ∀s Combine(s.y.[x/z])).(y/z).t)) ∀x∀y∀s Mgu(x.[x/y]) ∀x∀y ¬Variable(x) ∧ Variable(y) ∧ ¬Among(y. Atom.t) ⇒ Mgu(x. Append.s)) ∀c∀d∀x∀y∀s (Member(x.[ ])=x ∀x∀s Constant(x) ⇒ Subst(x.Subst(Append(l. Database.c) ⇒ Literal(x)) (∀d Database(d) ⇔ (∀x Member(x.Combine(s.m)."¬<y>".. npr. c Funexpr. Termlist (uz implicitnu definiciju ˇlana liste Member).x) ⇒ Mgu(x. Among. Extend.l. Mgu s (Nou. .[y/x]) ∀x∀y∀l∀m∀s∀t Mgu(x.Most General Unifier”). c s Variable.(x/z).l.z)=(u/Subst(v.s).c) ∧ Member("¬<y>".s)=Subst(x.y.52 Seminarski rad kao mehanizam zakljuˇivanja rezolucija (formalno se zapisuju meta-jezikom c reˇenice kojima se definiˇu predikati (pretpostavljaju se predikati Objconst.(x/z).t)=Combine(Extend(s...[ ]) ∀x∀y Variable(x) ∧ ¬Among(x.s)=z ∀x∀y∀z∀s Variable(x) ∧ y = z ⇒ Subst(x.s). npr. Term.[ ])=s ∀s∀t∀x∀z Combine(s.y.y.x.x. .Subst(l.s)=x ∀x∀z∀s Variable(x) ⇒ Subst(x.s) ⇔ Resolvent(x.d) ∧ Mgu(x.Subst(m.: ∀x Subst(x.s.s)=Subst(x.m.Extend(s. Combine.: ∀x Constant(x) ⇔ Objconst(x) ∨ Funconst(x) ∨ Relconst(x).y) ⇒ Mgu(x.z)=[x/z] ∀u∀v∀x∀z∀s Extend((u/v).y.l) ⇔ (Funconst(f) ∧ Termlist(l)) ∀f ∀l Atom(r.s) ∀x∀l∀s Subst(x. ∀x Term(x) ⇔ Objconst(x) ∨ Variable(x) ∨ Funexpr(x) ∀l Termlist(l) ⇔ (∀x Member(x.d) ⇒ Clause(x)) Za potrebe unifikacije i rezolucije definiˇu se Subst. Funconst.l. Relconst.s)) ⇔ .x.” je operator konkatenacije elementa i liste) Costant.m. Delete).l) ⇒ Term(x)) ∀f ∀l Funexpr(f.x.s). Literal.x.s) ∀x∀z Extend([ ].z).s) ∧ Mgu(Subst(l. Resolvent.y.t) ∀x Mgu(x.l) ⇔ (Relconst(x) ∧ Termlist(l)) ∀x Literal(x) ⇔ (Atom(x) ∨ (∃z x="¬<z>"∧ Atom(z))) ∀c Clause(c) ⇔ (∀x Member(x.

q) ∧ Resolvent(p. Konaˇno.p) ⇔ Derivable(Append(Clauses("¬<p>").B)" i ["P". Reˇenice nemogu da budu i jednog i drugog z c c .p) ⇔ (∃n Member(p.[ ]) ∀a∀p Bel(a.s)) 53 Procedura zakljuˇivanja opisuje se Markovljevom funkcijom koja slika bazu c u bazu naslednika (Concs(c. Dvonivoosko zakljuˇivanje c c c (bilevel) sadrˇi reˇenice oba tipa. Osnovno (baselevel) i meta (metalevel) zakljuˇivanje su mononivoovska (moc nolevel) jer koriste iskljuˇivo reˇenice jednog tipa.d) ∨ (∃p∃q Derivable(d.d.p) ∧ Derivable(d.Delete("¬<y>".1)=d ∀d∀n n>1⇒Step(d. i ako se koriste samo Hornove klauzule i upiti samo kao konjunkcije pozitivnih literala onda vaˇi Next(d)=Append(Concs(Car(d).q. c c c Neophodno je u ranije opisani mehanizam dodati nekoliko izmena da bi radio na takav naˇin .meta-zakljuˇivanje.x.p) ⇔ Provable(Data(a).Step(d.c). za "P(A.n-1)) Definiˇe se dalje Derivable(d. s z c inaˇe je netaˇan literal i briˇe se iz klauzule).npr.d)).Subst(Append(Delete(x. unifikacije da bi se upored ¯ivali i izrazi pod navodnicima i poˇto je ravnopras van zapis u obliku liste sa izrazom pod navodnicima . Variable("v") vra´a da v jeste promenljiva c c ako jeste i briˇe klauzulu iz baze jer ne moˇe da uˇestvuje u rezoluciji dalje. Provable s je onda dokaz odbacivanjem (refutation) tako da se zakljuˇi [ ] (prazna c klauzula).r) ⇔ Member(r.Osnove veˇtaˇke inteligencije I s c Resolvent(c.d)."B"] dobija se lista vezivanja [x/"A"].n))) ∀d∀p Provable(d.Cdr(d))): z ∀d Step(d. Takod modifikuje se algoritam c c s ¯e.r) (da li r proizilazi iz d po rezoluciji). ako Data mapira agenta u listu reˇenica (njegovu bazu).d) daje sve rezolvente klauzule i baze.r)) ∀d∀p Derivable(d.n)=Next(Step(d.predikati koji potrd c ¯uju promenljive i konstante definiˇu se s programskim prikljuˇenjem (npr. c c predikat Bel ima znaˇenje modalnog kvanitifikatora verovanja: c ∀d∀r Derivable(d.p) Osnovna prednost ovakvog pristupa formalnog definisanja metaznanja je mogu´nost odgovora na pitanja o procesu zakljuˇivanja .d).

Ako Markovljeva funkcija next vra´a bazu prema pravilima c u data(Ω.next(data(Ω. u kome se zakljuˇuje c c c o zakljuˇivanju i utiˇe (menja mehanizam) na zakljuˇivanje zove se reflekc c c sija.Θ . Npr. i ako se dva nivoa posebno obrad ¯uju onda je next(Ω)=append(next(data(Ω). manja ide ispred. Proces zakljuˇivanja je refleksivan akko obuhvata viˇe nivoa. postavlja negacija cilja i dodaje prikladan skup reˇenica Θ) next(Ω)=reflect(Ω)=[Next("∆") = d.k) = z z data(Ω. c Pokazuje se da je kompulsivna introspekcija introspektivno verna za svaku konzistentnu i introspektivno kompletnu bazu. c inaˇe se primenjuje refleksija (preveliki broj ili nedostatak zakljuˇaka okidaju c c refleksiju u kojoj se npr.za svaki korak se konsultuje metabaza i pri tome se. definiˇe i primeni Add i Order kojim se . c s Interesantno je kada postoji veza izmed razliˇtih nivoa. Metabaza je inz trospektivno kompletna ako propisuje svaki korak zakljuˇivanja osnovne baze c (svako pravilo zakljuˇivanja nad osnovnom bazom potiˇe od metabaze).2) onda je introspektivno verna u bazi Ω.2) meta nivo.2)).. Ans(d)] .k)). c c z ovakvo zakljuˇivanje dvonivoovska baze se zove kompulsivna introspekcija.1))). Postoji efikasnija varijanta je da se c Θ doda metabazi i da se koriste duˇine klauzula (broj literala) umesto broja z zakljuˇaka. Unverzalno ¯u c pravljenje podciljeva (universal subgoaling) se definiˇe tako da ako u ranis joj definiciji next funkcije imamo 5 ili manje zakljuˇaka ostaje kako jeste.ovaj c skup Θ npr.2) ako ih ima i nikada ne vra´a bazu koja nije po pravilima u c data(Ω. Ako se pretpostavi da baza Ω moˇe da se razdvoji z na data(Ω. c Kompulsivna refleksija .1) osnovni i data(Ω. za razliku od kompulsivne introspekcije. Med ¯utim. u realnosti je potrebna veza izmed dva nivoa jer meta-nivo utiˇe ¯u c na osnovni. Proces u kome se prekida trenutni naˇin zakljiˇivanja. Ans(d)].prerasporede” klauzule s po broju zakljuˇaka td. zakljuˇuje i o metabazi: c newmeta(∆)=[Next("∆") = d. Ne postoje procedure zakljuˇivanja koje su introspektivno verne nad svim bazama (teorema c dokaz sledi iz primera koji sadrˇi kontradikciju u metabazi). Ako c c se pri svakom koraku rezolucijom iz metabaze dobija pravilo u kojem se zakljuˇi nad osnovnom bazom i dobijeni zakljuˇak osnovnog tipa pridruˇi bazi. Proces zakljuˇivanja na jednom ili viˇe nivoa viˇenivoovkse baze (uzc s s ima se najniˇi nivo k u obzir) moˇe da promeni bazu (data(next(Ω).54 Seminarski rad tipa niti meta-meta tipa.

1)) Ans("∆") ∈ Ω → next(Ω)=append(data(Ω.2)-answers(data(Ω.data(Ω.2)). ∆) Traˇi se zakljuˇak o next funkciji i kada se nad odgovor na osnovu pravila z c ¯e metabaze.2)).data(Ω. newmeta(∆). baza se ˇisti od Ans literala i dodaje se odgovor osnovnoj bazi i c time je spremna za slede´i korak.Osnove veˇtaˇke inteligencije I s c 55 Ans("∆") ∈ Ω → / next(Ω)=append(concs(car(data(Ω. c .2)).

Posmatrajmo varijaciju ovog sveta u kojem postoje samo tri kutije.56 Seminarski rad 6 6.S1) itd.S1) Table(A. c ili situacija. Na primer. Ova ideja je lepˇe ilustrovana u kontekstu z c s mikrokosmosa kakav je poznati primer Sveta blokova. Stanje. a skup stanja koje odred ¯uje nazivamo fluentom. iznad samo jedne kutije. Da bismo oznaˇili da je objekat stanje c c c koristimo konstantu unarne relacije (unary relation constant) State(S1).S1) Clear(B. U razliˇitim trenucima svet c moˇe biti u razliˇitim stanjima.1 Stanje i akcije Stanja Pojam stanja je osnovni pojam u konceptualizaciji fiziˇkog sveta. Da bismo sada zapisali . koristimo On(A. Primer: On(B.A. nazivamo deskriptor stanja (state descriptor).S1) Clear(C. Postoji alternativa ovom pristupu u kojem predstavljamo svojstva koja zavise od stanja kao funkcije koje ne zavise od stanja.B). je snimak sveta u datom trenutku. Ilustrujmo primer: c b a c a b c Oznaˇimo sa S1 i S2 objekte prostora pretrage. Te funkcije preslikavaju objekte u skupove stanja u kojima ti objekti imaju asocirana obeleˇja zavz isnih stanja. Oznaka stanja (state designac tor) ´e oznaˇavati stanja tih objekata. Ovaj term. On(A.B) kao konstantu binarne funkcije (binary function constant) koja oznaˇava skup stanja u kojima je blok A c na bloku B. Najjednostavniji naˇin da se opiˇe stanje je da se koriste jednostavnije funkcije c s ili relacije za svaku vrstu informacija vezane za stanje. Razliˇita stanja odnose c se na razliˇite konfiguracije kutija(blokova). Svaka kutija moˇe biti z negde: na tabli ili na vrhu.

a c s akcija stack (S) stavlja jedan blok na drugi. s Na primer.s) ⇔ (T(p. Operator je funkcija izmed objekata i akcija koja preslikava grupu ob¯u jekata u zajedniˇki naˇin manipulisanja tim objektima. T(On(C. akcija M(a. .c) pomera blok a od bloka b do bloka c i sl. A.Osnove veˇtaˇke inteligencije I s c 57 reˇenice koje zavise od stanja koristimo konstantu binarne relacije T (binary c relation constant).2 Akcije Svet egzistira u jednom stanju dok akcija menja to stanje u novo stanje. c c Evo samo jednog primera: ∀x ∀s T(Table(x). konjukciju i disjunkciju za ∩ i ∪ i implikaciju da bismo izrazili da je uzrok podskup posledice. ”Objekat je na tabli akko nije na nekom drugom objektu”. kutije.b.s) ∀s T(p⇒q.Taˇno je da je C na A u stanju S1”. uniju i presek tih skupova.s) ⇒ T(q.S1) koja se interpretira kao .s) ⇔ (T(p. Koristimo operator negacije za komplement. 6. Sliˇno.s) ∨ T(q. c Poˇto deskriptori stanja oznaˇavaju skupove stanja.s) ∧ T(q. Moˇemo pisati takve kompozicije sa obiˇnim skupovnim z c operatorima..y). ali obiˇno koristimo simbole identiˇne logiˇkim operatorima da c c c naglasimo da deskriptori predstavljaju osobine stanja. Takve ˇinjenice nazivamo ograniˇenja stanja (state constraints).s) ∀s T(p∧q. moˇemo govoriti o s c z kompoziciji deskriptora stanja koji predstavljaju komplement.A).s) ⇔ (T(p.s)) ∀s T(p∨q. Npr. B i C) koja su ukljuˇena u akciju move c (M). U naˇem prostoru pretrage akcije konceptualizujemo kao i stanja kao objekte.s) tj.s)) Neke ˇinjenice su taˇne u svim stanjima iako sadrˇe funkcije ili relacije zavisc c z nih stanja.s) ⇔ ¬∃y T(On(x..s) ⇔ ¬T(p. akcija unstack(U) skida blok sa vrha i smeˇta ga na tablu. Primer: ∀p ∀p ∀p ∀p ∀s ∀q ∀q ∀q T(¬p. operator presc c likava 3 objekta (blokove.

Na primer: do(M(C.A) c U(C.58 Seminarski rad c a b S(C.y).s) ∧ T(Clear(x). U(C. Ovakvom notacijom imenujemo svaku akciju. Akcije u dometu operatora se ˇesto nazivaju instancama tog c operatora.s) 6.S15) . Cinjenicu da je neki operator akcija moˇemo izraziti koriste´i unarnu relaciju Action(M(C.Do(U(x. Operator U moˇemo opisati na sl.s) ⇒ T(Table(x).y).B) ) nazivamo oznake akcija (action designator).B). da bismo opisali operatore i akcije prvo im dajemo imena kao ˇto s s smo ve´ i uˇinili.skida blok C sa bloka A i smeˇta s ga na tablu.gde je rezultat stanje nakon delovanja akcije M u stanju S15.s) ∧ T(Clear(y).A.Do(U(x.A) .3 Problem okvira Opisi operatora nisu kompletni.y).A. Efekte akcija moˇemo koncipirati u obliku funkcije: z do: A × S → S koja preslikava par (akcija. Uopˇte.A) a b S(C. stanje) u novo stanje. Oni opisuju ˇinjenice koje postaju istic nite (taˇne) kao rezultat izvrˇavanja instanci svakog operatora i indirektno c s opisuju ˇinjenice koje postaju netaˇne. oni ne oznaˇavaju niˇta c c c s . M(C.A) .A. a te terme c c ˇ (npr. naˇin z c T(On(x.B)) z c ˇije su vrednosti T (true) ili F (false) u zavisnosti od toga da li je term koji c je argument relacije akcija ili ne. Ponekad.stavlja blok C na blok A.

c U naˇem primeru. npr.B)].S(A. razmotrimo sl. Poˇto ne postoji granica broja akcija c s u bloku.s) ⇒ T(Clear(u). Rezultat svake od akcija u nizu je stanje na koje deluje slede´a akcija. a u prvom planu postavljaju akcije.: [U(C. c ili oznaˇavaju neˇto vezano za ˇinjenice koje su bile netaˇne pre i koje ostaju c s c c netaˇne posle. Dakle. M i Noop.S(B. c z Blok akcija je konaˇan niz akcija.C).A).y). Problem okvira razlikuje c pozadinu. 6.Osnove veˇtaˇke inteligencije I s c 59 vezano za ˇinjenice koje su pre toga bile istinite i ostaju istinite posle toga. aksiomu okvira za U operator: T(Clear(u). . c Animatori ˇesto prvo nacrtaju okvir. U svetu realne sloˇenosti z postoji veliki broj relacija i operacija pa je i broj aksioma okvira velik. moˇemo formirati neograniˇeno mnogo takvih objekata iz svakog z c nepraznog skupa takvih akcija. s c a c b b → a Problem koji se karakteriˇe aspektima stanja koja se ne menjaju akcijama s naziva se problem okvira. Jedan od naˇina da se to uradi je da se piˇu aksiome okvira (frame c s axioms) koje ukazuju na osobine koje ostaju nepromenjene delovanjem akcija. Npr. Do(U(x.4 Redosled akcija Sloˇene akcije dobijamo kao kompoziciju jednostavnih akcija uz pretz postavku da se one odvijaju u odred ¯enom redosledu. bez preklapanja. s)) . Zatim to ostave i u naredc nim sliˇicama. kao i za opertore S. Blok akcija oznaˇavamo na slede´i naˇin (kao c c c c listu). Izostavljamo navod ¯enje ostalih aksioma okvira za U operator.. od prvog plana u kojem akcije dovode do izmena. Naziv potiˇe iz analogije sa svetom animacija.: blok b je u nekom stanju na tabli i on je s na tabli posle premeˇtanja bloka c sa bloka a na blok b. ako je clear pre te akz cije. i sl. pozadinu.aksioma izraˇava da je blok clear posle akcije U. nemenjanu akcijama. Napomenimo samo da je broj aksioma okvira proporcionalan proizvodu broja relacija i broja operacija. razmotrimo sl. kljuˇ uspeha pri analizi sloˇenih akcija je redosled akcija.

Do(a.b]. Rezultat c s izvrˇenja nepraznog bloka sa poˇetnom akcijom a i ostatka (repa) bloka l s c u stanju s je stanje dobijeno izvrˇavanjem bloka l u stanju koje je rezultat s izvrˇavanja a u s.l. T(p. ne moˇe c z se koristiti beskonaˇna lista.s))) ⇔ T(p. z Razmotrimo problem opisivanja beskonaˇnog niza akcija. Naravno. opisujemo i efekte bloka akcija u znaˇenjima osobina tih stanja. c Slede´e reˇenice koriste relaciju T u izraˇavanju prethodnih definicija u ovom c c z alternativnom obliku.Do(l.s) = Do(b. tj.reˇenice koje definiˇu sekvencijalnu proceduru c s koja diktira tri akcije nakon kojih sledi niz Noop akcija: F(1)=U(C.s)).s) ⇔ T(p.Do([ ]. s s Rezultuju´e stanje posle izvrˇavanja praznog bloka u stanju s je s. Diskutova´emo o tri pristupa formalizovanja uslovljavanja: uslovne c . Primer .l. s Do([ ].A) F(2)=S(B.s)) Primetimo da je predstavljanju ove kompozicije preslikavanja redosled akcija obrnut od redosleda elemenata u listi. Do([a. tj. Sekvencijalna procedura je funkcija pozitivnih celih brojeva koja se slika u beskonaˇan niz akcija f : N → A. c Opisuju´i sekvencijalnu proceduru.Do(a.Do(a.C) F(3)=S(A.s)) T(p.s)) Ovde je vaˇno da se naglasi da moˇemo redukovati pitanja vezana za efekte z z blokova akcija u pitanja vezana za efekte akcija sadrˇanih u tim blokovima.pa se kao reˇenje koriste razliˇiti koncepti rec s c dosleda akcija. mi implicitno karakteriˇemo niz akcija c s koji se na nju odnosi.B) n ≥ 3 ⇒ F(n)=Noop 6. Isto tako.5 Uslovljenost ˇ Cesto ˇelimo razgovarati o akcijama koje su izvrˇene samo pod odred z s ¯enim uslovima.s) = Do(l.s) = s Do(a.60 Seminarski rad Kada govorimo o rezultatima izvrˇavanja bloka akcije proˇirujemo Do funkciju.Do(a.

Produkciona pravila su parovi koji se sastoje od uslova i akcije. gde c je If ternarna funkcija konstante. Jedna lepa posledica ove politike razreˇavanja konfliktne rezolucije s (postupanja u konfliktnim situacijama) jeste da moˇemo koristiti redosled z . rezultat izvrˇavanja produkcionog sistema u datom stanju je c s stanje dobijeno izvrˇavanjem diktirane akcije: s (¬∃a Dictates(p. a c α oznaka akcija. Da bismo formalizovali efekte izvrˇavanja produkcionog s sistema definiˇemo relaciju ozanaˇenu sa Dictates.l.s. koja za dati produkcioni s c sistem. Ako je uslov zadovoljen primenjuje se prva akcija.b) Ako sistem ne diktira neku akciju za dato stanje.s) ⇒ Dictates((p→a).s. Inaˇe.a)) ⇒ Do(p.Do(a.s)) Navedena definicija relacije Dictates zahteva da se uvek uzme prvo pravilo iz liste koje ispunjava uslove tako da je svaka dvosmislenost eliminisana. φ deskriptor (opisivaˇ) stanja.s. Izvrˇavanje se zavrˇava akko ne s s postoji produkciono pravilo ˇiji je uslov zadovoljen.l. 61 Uslovna akcija se sastoji od uslova i dve akcije. izvrˇena akcija je deo akcije prvog produkcionog s pravila u nizu uslova koji su zadovoljeni.s)=Do(p.s) ∧ Dictates(l. Produkcioni sistem je konaˇan skup produkcionih pravila. U svakom koraku.β).Osnove veˇtaˇke inteligencije I s c akcije. a α i β akc cije.s)=s Dictates(p. a ako nije druga akcija. stanje i akciju vaˇi akko produkcioni sistem diktira specifiˇnu akciju z c u datom stanju: T(p. c Izvrˇavanje produkcionog sistema u poˇetnom stanju moˇe ukljuˇiti mnogo s c z c koraka. pri ˇemu je φ deskriptor stanja.a) ⇒ Do(p.b) ⇒ Dictates((p→a).a) ¬T(p. produkcioni sistemi i Markovljeve procedure.s. Uslovne akcije oznaˇavamo uslovnim izrazima (upitima): If(φ.s.α. rezultat je njegovo postoje´e c stanje. Neki produkcioni sistemi koriste razliˇite strategije za razreˇavanje konfliktne rec s zolucije. c Produkciona pravila su oblika φ → α.

kada zakljuˇak nije pozitivan i kada c se pojavljuju viˇestruki razliˇiti termi stanja. Markovljev program nije uvek kompletan. iz svake reˇenice izostavljamo ime c c procedure (kao i T relacije) i sve promenljive stanja. 1986) javlja se i alternativni metod nepoznavanja hronologije (chronological ignorance. Markovljev program je lokalni ako i samo ako svaka reˇenica sadrˇi najviˇe c z s jedan term oznake stanja. Naravno.62 pravila.z). ili viˇestruka pojavljivanja tog terma. Primer pravila koje je ukljuˇeno u c s c c Markovljevu proceduru za parcijalni program P1: T(Clear(C). . Konaˇno menjamo ⇒ c u →. jednostavno se konvertuje u produkcioni sistem: formira se lista reˇenica. Znaˇaj ove c s c osobine je u tome da je onda akcija odred ¯ena iskljuˇivo osobinama stanja.z) → U(C. i ako postoji s oznaka stanja je promenljiva stanja kvantifikovana univerzalnim kvantifikatorom. Koristimo predikatski jezik kao opisni jezik pa se tako Markovljev program sasatoji od konstante funkcije (function constant) π koja opisuje proceduru i skupa reˇenica predikatskog c jezika koje opisuju tu proceduru.s) ⇒ P1(s)=U(C.z) koje odgovara zapisu pravila produkcionog sistema: Clear(C) ∧ On(C. Ipak ne moˇe svaki Markovljev program biti napisan na ovakav naˇin. Markovljev program opisuje Markovc ljevu proceduru formalnim programskim jezikom. u drugim sluˇajevima program moˇe specificirati akc c z cije za neka stanja dok za druga ne i takvi parcijalni programi su karakteristiˇni za VI (veˇtaˇku inteligenciju). ˇ Cak i ako procedura opisana programom diktira jednu akciju za svako stanje. c Kada je Markovljev program lokalni. Markovljev program je kompletan ako i samo ako opisuje samo jednu akciju u svakom stanju. Shoham. taj opis moˇe biti nekompletan. Prisustvo deskriptora stanja ne´e naruˇiti ovu definiciju. Produkcioni sistem je samo specifiˇan deo Markovljeve procedure.z). Seminarski rad Markovljeva procedura f je funkcija f : S → A. 1986). z c Problem nastaje kada program sadrˇi reˇenice koje ne zavrˇavaju vrednosz c s tima koje su definisane za tu proceduru. itd. U nekim sluˇajevima moˇemo imati opis koji z c z ograniˇava skup akcija.s) ∧ T(On(C. s c Uz problemu okvira i ranije pominjan problem kvalifikacije (Lifschitz.

potrebno je direktno shvatanje hronologije (obiˇno formulacije stanja ne pominju hronologiju eksplicitno. c Pored ovih smernica.od znaˇaja c z c c su i simultane akcije koje se javljaju pored akcija u reˇenicama. dok s c neka druga pribegavaju modalnoj temporalnoj logici. mada je oˇic c gledna implicitna veza). Prvo .Osnove veˇtaˇke inteligencije I s c 63 Klasiˇni modeli stanje-akcija.pretpostavkom konceptualizacije koja ukljuˇuje hronologiju moˇmo posmatrati kontinuitet akcija. . u veˇtaˇkoj inteligencijiji u oblasti problema shvatanja s c hronologije neka reˇenja ukljuˇuju argument vremena u same relacije. drugo . opisani u ovom poglavlju mogu biti generc alizovani u tri pravca. i tre´e .

Npr.: c c T(Clear(C). Kaˇemo da je stanje ciljno stanje z ako i samo ako zadovoljava tu relaciju. U opisivanju ciljeva koristimo konstantu relacije Goal koja oznaˇava cilj relacije.B). U ovom poglavlju prvo ´emo razmotriti ulaz procesa planiranja. Ove mogu´nosti predstavljaju konc cepte ciljeva kao unarnu relaciju stanja.t) ∧ T(On(B. Npr. s c 7. Iako posz c toji konaˇno mnogo oznaka primitivnih akcija. cilj moˇe biti svako dostignuto stanje. c c zatim njegov izlaz.S1) -u poˇetnom stanju S1 na bloku C nema niˇta .2 Ciljevi Uopˇteno govore´i. c s Znanjem posledica preduzetih akcija i koriˇ´enjem tog znanja mi stiˇemo sc z do cilja izbegavaju´i opasnosti i dobro ekonomiˇu´i resursima.: c T(On(A. U planiranju c s c zapoˇinjemo sa skupom ˇeljenih osobina i pokuˇavamo smisliti plan kako do c z s cilja do´i.t) ⇔ Goal(t) 7. 7. dok se u potpunosti c s ne opiˇe poˇetno stanje.C). itd.64 Seminarski rad 7 Planiranje Sposobnost planiranja unapred je kljuˇni aspekt inteligentnog ponaˇanja. Oznaka poˇetnog stanja je naˇe ime za ovo stanje i mi ga c c s koristimo za pisanje reˇenica vezanih za poˇetno stanje.1 Poˇetno stanje c Poˇetno stanje u problemu planiranja je stanje u kojem izvrˇilac oˇekuje c s c poˇetak akcije. U nekim planis c z ranjima postoji samo jedno ciljno stanje.3 Akcije Skup oznaka akcija u planiranju problema ukljuˇuje term za svaku primc itivnu ili sloˇenu akciju koja konvertuje poˇetno stanje u ciljno. a potom metode za planiranja bloka akcija i uslova planiranja. moˇe postojati beskonaˇno c z c .

Do(If(p. s z Uzimaju´i u obzir elemente skupa oznaka akcija u planiranju problema.s) ∧ T(Clear(x). veze koje se ne menjaju ni za jednu akciju. obiˇne definicije za c sloˇene akcije kao ˇto su blokovi akcija i uslovne akcije.Do([ ]. Kada je ovo sluˇaj.s)) Aksiome ograniˇenja stanja: c T(Table(x).s))) ⇒ T(p.Blue) da bude upotrebljen u uslovnim akcijama ako znamo da izvrˇilac ne moˇe odrediti boju blokova.Osnove veˇtaˇke inteligencije I s c 65 mnogo sloˇenih akcija u tom skupu.y).Do(a. tj.Do(a.y).s) ∧ y=z ⇒ ¬T(On(x.y).Do(l.s)) ⇒ T(q. One ukljuˇuju c opise operatora i aksiome okvira za primitivne akcije.s) ⇔ ¬∃y T(On(x.y).y).s)) T(p.s) ∧ T(q. neprikladno je s dopustiti deskriptoru stanja Color(A.Do(U(x.s) ∧ x =y ⇒ T(On(x.s) T(Clear(y). umesto toga specis firamo izraˇunljivu metanivoovsku relaciju koja je istinita za svaki term u c skupu i samo ti termi su u skupu.l.s) ∧ T(q.b).Do(a.a.s))) T(Table(x).s) ⇒ T(p.y).a.Do(S(x.z).b).Do(If(p.s) ⇔ ¬∃x T(On(x. Primer aksioma: T(On(x.s) T(On(x.s)) Aksiome za blokove akcija: T(p.Do(b. i zato.s)) ¬T(p.y). Razlog za ukljuˇivanje ove informacije kao c ulaza planiranja je ograniˇavanje planova koji ih proizvode kako bi mogli biti c upotrebljeni od strane izvrˇioca kojeg imamo na umu.s) ∧ T(Clear(y). c imamo prikladne deskriptore akcija i aksiome kojima su zadati.s)) .s)) ⇒ T(q.s) Aksiome uslovnih akcija: T(p. i ograniˇenja stanja z s c koja moraju biti istinita u svakom stanju. ne moˇemo uzeti z c z ovakav skup kao argument za naˇe planiranje .s) ∧ T(Clear(x).s) ⇒ T(Table(x).Do(U(x.s))) ∧ T(Clear(y). Npr.y).

7. elemenat Γ.S(A. Goal(Do([U(C. razmotrimo situaciju u kojoj je S1 oznaka poˇetnog stanja i Goal ime c ciljne relacije.S1)). Za Ω mora biti dokazano γ postiˇe zadovoljavaju´e stanje ρ kada je z c izvrˇena u stanju σ: s Ω |= (ρ(Do(γ.Do(S(x.s)) . Term [U(C.s)) T(Table(u). itd.s)) T(Clear(u).Do(U(x.C).y). On s je.s) ∧ u =x ⇒ T(Table(u).v). ciljnu relaciju i upotrebljive akcije.y).s)) T(On(u.y)..s)) T(On(u. a koriste´i informacije iz Ω dokazujemo da ovaj plan c radi. tj.A).Do(S(x.v).y). oznake ciljne c relacije ρ.s) ⇒ T(Table(u).B)].Do(U(x. tj. Deskriptor poˇetnog stanja c c c tvrdi da je blok C na bloku A i blokovi A i B da su na tabli.Do(U(x. jasno.s)) T(p. Deskriptor cilja tvrdi da stanje zadovoljava ciljeve ako i samo ako je blok A na bloku B i blok B je na na bloku C. skupa oznaka akcija Γ . 2.y). Oznaka akcije mora biti elemenat skupa oznaka akcija.S(A.. c Oznaka akcije γ je plan za planiranje problema ove vrste ako i samo ako zadovoljava slede´e uslove: c 1. Pretpostavimo da Γ ukljuˇuje imena za sve obiˇne primitivne c c akcije Sveta blokova i stoga sve konaˇne reˇenice.y).v).Do(S(x. baze podataka Ω koja ukljuˇuje reˇenice c c koje opisuju poˇetno stanje. γ ∈ Γ. .s) ⇒ T(On(u.S(B.C).s) ⇒ T(Clear(u).66 Seminarski rad Neke karakteristike stanja nisu obuhva´ene ovim operatorima kao ˇto su c s slede´im aksiomama okvira koje ukljuˇuju i Noop akciju.A).Do(Noop.4 Planovi Problem planiranja se sastoji od oznake poˇetnog stanja σ..S(B. c c T(Table(u).s) ⇒ T(p.B)] je plan za reˇavanje ovog problema.s)) T(Clear(u).s) ∧ u =y ⇒ T(Table(u).s) ∧ u =x ⇒ T(On(u. σ))) Npr.v).

predikat zadovoljen planovima c izvrˇavanja i samo njima . On je i kompletan i to garantuje produkovanje korektnih planova kad god oni postoje. Ako pronad ¯emo odgovor koji zadovoljava ovaj predikat dobijamo taj term kao odgovor na problem planiranja. Metod je siguran u smislu da produkuje samo korektne planove. mogu biti ekstremno z neefikasne.σ)) Koristimo predikate koji se izvrˇavaju da bismo oznaˇili svaki odgovor dos c bijen ovim procesom.5 Grinov metod Grinov metod je procedura planiranja zasnovana na rezoluciji. Pokuˇavamo da doc s bijemo tvrd ¯enje postojanja plana(plan-existence): ∃ν ρ(Do(ν. Ovaj metod uzima kao argumente : term koji oznaˇava poˇetno stanje. z Osnova ovog metoda je popunjavanje praznine rezolucije dobijene kao sporedni efekat korektnog plana prilikom dokaza njegovog postojanja. Ne postoje ograniˇenja c vezana za tip ukljuˇenih planova. i bazu podataka vezanu za poˇetno stanje. nastavljamo c nabrajanjem reˇenja.S1) T(On(B.6 Blokovi akcija Jednostavna primena Grinovog metoda je u poznatom primeru odred ¯ivanja niza akcija u svetu blokova. c Na ˇalost.S1) T(On(A. Grinov metod.S1) . s Kako je Grinov metod zasnovan na rezoluciji mogu´e je dokazati neke jaˇe c c karakteristike vezane za njegove sposobnosti planiranja. Inaˇe. T(Clear(A). konstantu c c unarne relacije koja oznaˇava ciljnu relaciju.S1) T(Table(C). Dati su term poˇetnog stanja σ i konstante ciljne relacije ρ .Osnove veˇtaˇke inteligencije I s c 67 7.C).B). relaciju s c cilja i raspoloˇive operacije. Primer: Uzmimo da je S1 poˇetno stanje u kojem je blok A na bloku B i blok B na c bloku C. kao i sve procedure planiranja. 7.

Do(a. s s T(Clear(A). Stoga ne postoji jedna akcija koja garantuje reˇenje problema. i dodaju´i literal odgovora doc c bijamo: 1. Ans (U(A.. ali moˇemo napisati uslovni program za reˇavanje probs z s lema . =T(Clear(A). tj. Ans(U(A.S1).{Ans(U(A.{¬T(Clear(A).answer literal”.B))} Ans(a) je . Na sre´u moˇmo reˇiti probc z s leme ove vrste pomo´u uslovnih akcija. ponekad je nemogu´e planic rati blok akcija koji garantuje postizanje cilja. c Npr.B) )} 5. literal sa odgovorom. Tako imamo. 1.S1)).S1) Cilj nam je da blok A bude natabli. konvertuju´i ga u klauzalnu formu. {¬Goal(Do(a.S1).S1).t) ⇔ Goal(t) Planiranje procesa zapoˇinjemo sa (plan-existence) tvrd c ¯enjem postojanja plana.y))} 4.S1)). Ans(a)} 3.S1)). tj. razmatramo c problem planiranja u kojem znamo da na bloku a nema niˇta u poˇetnom s c stanju i ne znamo niˇta viˇe.t) ⇔ Goal(t) Problem ne moˇemo ograniˇiti u smislu da blok A moˇe biti na tabli ili na z c z tabli mogu biti blok B ili blok C.{¬Goal(Do(a.68 Seminarski rad Definiˇimo cilj sa s T(Table(a). 7.{¬T(On(A. koriste´i Grinov metod za generisanje uslovnog plana.{¬T(Table(A). Ans(a)} .. Npr. T(Table(A).y).7 Uslovni planovi Kada informacija nedostaje u toku planiranja. Ans(a)} 2.

Ans(If(p.S1).a. Ako uzmemo reˇenice c dobijene iz negacije (plan-existence statement) postojanja plana kao skupa podrˇke.S1).S1).K). poˇinjemo negacijom cilja. od cilja.Noop))} {Ans(If(On(A. u drugim sluˇajevima bolje je da idemo unazad.S1).S1). T(On(A. ¬T(On(A. ¬T(Table(A). Do(a. 3.Noop))} K je Skolemova konstanta za promenljivu iza egzistencijalnog kvantifikatora poteklu od od ograniˇenja za stanje.S1). c c dok je u nekim najbolje koriˇ´enje oba metoda.a. Ans(If(p. i tako dok c ne dobijemo uslove poˇetnog stanja. 10. ¬T(On(A. ¬T(Table(A).K).b))} {T(p.a. 69 {¬T( Table(A).K). c Jedan od problema koriˇ´enja (set-of-support) strategije podrˇanog skupa sc z i njegove implementacije unapred jeste taj da on ne mora biti kompletan.Osnove veˇtaˇke inteligencije I s c 2.y).S1).Noop)). razmotrimo problem planiranja u kojem ne postoje informacije vezane za poˇetno stanje i u kojem ne postoji akcija koja zadovoljava cilj u svakom c stanju. redukujemo cilj na podciljeve. Ans(If(p. A ako posmatramo c s uniju ovih skupova dobijamo tre´u varijantu .a. Ans(a)} {¬T(p. Ans(If(On(A. 9.S1)).S1).b))} {¬T(p.Do(a.K).y).K). U svakom od njih.S1).Noop))} {T(p. Ans(If(p.U(A.U(A.S1).a. c Svi proizvodi prethodnih primera su instance planiranja unazad. ¬T(Table(A). Npr. Ans(If(p. Ako uzmemo reˇenice koje opisuju s c poˇetno stanje naˇeg skupa dobijamo planiranje unapred.Do(b. ¬T(Clear(A).K). Koriste´i u ovoj situaciji planiranje unazad moˇemo dobiti plan koji c z ne´emo mo´i dedukovati unapred.S1). Ans(If (On(A.y). 12. 7.8 Smer planiranja Jedan od naˇina za pove´anje efikasnosti planiranja je smer planiranja c c (planning direction).S1)). 4.K).U(A.y).Noop))} {T(On(A.U(A. U mnogim sluˇajevima i jedno i drugo c c c .y).U(A.y).primenu oba metoda. Generalizacijom K se dobija ˇeljeni c z plan. Ans(If(p. 6. 8. 11.y). 7.S1)).b))} {¬T(p. 5.S1).b))} {T(p.S1).b))} {¬T(On(A.K). sc U planiranju zasnovanom na rezoluciji moˇemo uticati na smer koriˇ´ez sc njem restrikcione strategije modifikovanog skupa podrˇke u kojoj slabimo s pretpostavku da je komplement tog skupa zadovoljiv. Ans(If(On(A.a. U nekom sluˇaju je bolje da planiramo unapred poˇev c c od poˇetnog stanja.b)} {Ans(If(On(A. rezultat je planiranje unazad.

Seminarski rad Sa druge strane. a B je Clear (tj. Ako faktor grananja u smeru unazad premaˇuje isti u direkciji s unapred.70 planiranje su jednako kompetentni.9 Odsecanje nedostiˇnoˇ´u z sc Jedan razlog izraˇunljive slabosti u planiranju unazad je rad na reˇenicama c c koje opisuju nedostignuta stanja. Postoje i sluˇajevi za koje je nemogu´e znati da li ´e se desiti probc c c lem ako originalni rezolucioni proces ˇeka kompletiranje ovog rezolucionog c potprocesa.10 Poravnavanje stanja (usaglaˇavanje) s Tokom procesa planiranja moˇemo se sresti sa situacijom u kojoj postoji z nekoliko uslova koji moraju biti zadovoljeni u jednom stanju. poˇev od pozicije koja je donela pobedu. Kada koris- . nemogu´e je stanje u kojem ja A na c B. Na primer. Jedan naˇin da detektujemo takve sluˇajeve je da postavimo rezolucioni potc c proces koji testira validnost reˇenica (klauzula). Izbor naˇina planiranja pravimo c vode´i se efikasnoˇ´u. c c ta reˇenica se izuzima iz daljeg razmatranja. Ako ovaj test pokaˇe da je c z reˇenica validna (njena negacija nije nekonzistentna sa ograniˇenjima stanja). z sc Baza podataka za testiranje logiˇnosti sastoji se od (1) aksioma ograniˇenja c c u problemu planiranja. Ovakva strategija brisanja se c ponekad zove odsecanje nedostiˇnoˇ´u. problem pobed ¯ivanja u igranju ˇaha. zamena cilja pobede ciljem ˇiju vrednost c menjamo evaluacionom funkcijom stanja. bolje je koristiti planiranje unapred. 7. Problem ´e biti velik broj mogu´nosti. 7. Jedan od naˇina za reˇavanje ove situacije je ograniˇavanje c s c utroˇenog vremena u kontrolisanju logiˇnosti. i (2) reˇenica dobijenih iz negiranog tvrd c ¯enja koje je pitanju. Drugi pristup je isprepletena s c provera konzistentnosti procesa sa procesom planiranja. Za mnoge baze znanja moˇe se pokazati da je rezolucioni posz tupak garantovano odred uz pokazivanje konzistentnosti ili nekonzistent¯en nosti. Stoga. postoje situacije u kojima je nepraktiˇno primeniti planic ranje unazad. tada koristimo planis ranje unazad. s z idu´i unazad. Alternativa je uzeti s c c c u obzir nekoliko koraka unapred. Moˇemo. Npr. Ako broj mogu´nosti koje se koriste u smeru unapred c sc c premaˇuje broj onih koje se koriste u smeru unazad. da odredimo svaki c c naˇ slede´i potez. na B nije postavljen nijedan drugi blok). takva tvrd ¯enja odsecamo.

S1). ¬T(On(B. dobijamo na kraju reˇenicu koja ukljuˇuje dva uslova u stanju c c S1 i preostali uslov u Do(a.. a ostali uslovi se moraju nalaziti u slede´im stanjima. ¬T(Clear(B).Osnove veˇtaˇke inteligencije I s c 71 timo operator (operator description axiom) koji zadovoljava jedan od ovih uslova. zato ˇto je nemogu´e dosti´i stanje u kojem na B nema s c c niˇta i u kojem je A na B.y).Do(a. 1. σ).S1).B). c Npr. S1). ¬T(Table(B).S1)).S1)). Ponekad.y). s c Kada koristimo odsecanje nedostiˇnoˇ´u. 2. moˇemo odse´i drugu reˇenicu u s z c c prethodnom primeru. {¬T(On(A. poravnanje stanja moˇe biti z sc z vod ¯eno suˇtinskim poboljˇanjima u planiranju efikasnosti. Do(a.B).S1)} Prva reˇenica izraˇava da je cilj da je A na B i B na tabli. sve dok stanja ne budu poravnata z z (usaglaˇena). Obiˇno je taj podcilj nedostiˇan. ali mi ne c z moˇemo koristiti nedostiˇna odsecanja. Sada imamo mogu´nost izbora: da li da redukujemo uslove u s c stanju S1 ili da redukujemo preostale uslove u Do(U(B. dolazimo do potproblema u kojem preduslovi operatora moraju biti u jednom stanju.S1). c . z sc c Jasno je da upotreba poravnanja stanja moˇe naruˇiti kompletnost Griz s novog metoda kada se upotrebljava na proizvoljnom skupu aksioma. Poravnanje stanja (state alignment) je strategija restrikcije (redukcije) koja iskljuˇuje bilo kakvu rezoluciju nad literalom koji sadrˇi term stanja σ c z kada postoji drugi literal u istoj reˇenici koji sadrˇi (state term) term stanja c z Do(α. Ovaj problem se ne bi desio da smo primenili odses canje nedostiˇnoˇ´u u prvoj reˇenici. Npr. Posle koriˇ´enja c z sc operatora opisa aksioma za U.Do(U(B. Naˇa je namera da izbegnemo redukcije uslova u jednom stanju s dok postoji joˇ uslova u slede´im stanjima koje treba redukovati. Kao rezultat. ako su sve te aksiome napisane u formi opisa operatora ili aksioma okvira to se ne´e desiti. redukujemo jedan od uslova u stanju oznaˇnom c sa Do(a. moˇemo eliminisati takve reˇenice c z c i poˇtedeti se daljeg posla oko njih.y). Poravnanjem us s slova u reˇenici u jednom stanju ponekad sre´emo protivreˇne reˇenice na c c c c koje inaˇe ne bismo nailazili.S1))} {¬T(On(A.

y)) = {Table(x). Pozitivni efekti Add(a) su efekti c z koji postaju taˇni posle izvrˇavanja akcije. Preduslovi Pre(a) akcije a su uslovi koji moraju biti taˇni da bi akcija a imala ˇeljene efekte.11 Ukidanje aksioma okvira Pokazuje se da je ˇesto korisno ukinuti rezoluciju u kojoj se primenjuje c aksioma okvira kao ograniˇenje za promenljivu akcije tj.y).Clear(x)} Add(U(x. Efekti svakog operatora su karakterc isani jednom reˇenicom (ne raˇunaju´i aksiome okvira i ograniˇenja stanja). c c c c Reˇenica je u svakom sluˇaju implikacija u kojoj je premisa uslov o stanju c c koje je neophodno da bi operator imao efekte koji se javljaju u zakljuˇku. gde se zakljuˇuje c c iz literala koji je uslov za term stanja oblika Do(ν. On(x.y) c c ukljuˇuju deskriptore stanja Clear(x) i On(x. ali jednostavniji oblik.y)) = {On(x. Postoji samo jedan negativan efekat. moˇemo koz ristiti veoma jednostavnu ali mo´nu strategiju planiranja poznatu kao ciljna c regresija (goal regression). koji predstavlja skup s skupova stanja. Negativni efekti Del(a) su uslovi c s koji postaju netaˇni. c Npr.σ) gde je ν promenljiva.y). skupom pozitivnih s i skupom negativnih efekata. tako da je svako stanje koje je u preseku ovih skupova zadovoljeno. Prvo prevedemo naˇ operator u ekvivalentan. 7.12 Ciljna regresija Interesantno je pomenuti da svi operatori koji se opisuju u naˇim primes rima imaju priliˇno jednostavnu formu. s Svaki primer operatora se karakteriˇe skupom preduslova. Ovo je pored pomenutog odsecanja takod naˇin da se pove´a efikasnost ¯e c c planiranja. Pozitivni efekti ukljuˇuju c c Table(x) i Clear(y). Npr.y)) = {On(x. Posz c matraju´i opis operatora prime´ujemo da uslovi u primeru oblika U(x. slede´i ciljni skup opisuje skup stanja u kojima su blokovi A i c . Pre(U(x..Clear(y)} Del(U(x.y)} U ovoj formulaciji definiˇemo ciljni skup (goal set). razmotrimo kako moˇemo drugaˇije zapisati opis operatora U.y).72 Seminarski rad 7. c Ishod svega ovog je to da kada imamo opise operatora ove vrste.

Redukcija mora imati osobine da izvrˇavanje opisane s akcije u stanju u kojem je podcilj zadovoljen dovodi do stanja u kojem je cilj zadovoljen. Plan(q.s.s) ⇒ Plan(q. Niz a.a.a). koja je taˇna za dati ciljni skup.Osnove veˇtaˇke inteligencije I s c B na tabli: {Table(A). Prazan niz je plan za ciljni skup q u stanju s ako s zadovaljava elemente u q.B) dolazimo do slede´eg c c ciljnog skupa. regresiraju´i ovaj ciljni skup kroz akciju U(A.l je plan za ciljni skup q ako: (1) a je akcija pozitivnih efekata sa nekim elementom iz q i (2) l je plan koji postiˇe ciljni skup dobijen pomo´u regresiranjem q kroz a.s. koji proizilazi iz regresije za q kroz akciju a. s c stanje. Table(B)} Dalje. tako da ova definicija vaˇi.l) ⇔ T(q.Do(l. On(A. z c T(q.s) Konaˇno moˇemo iskoristiti definiciju regresije da damo uslove unutar c z kojih je niz akcija plan. (q ∩ Del(a)) = {} ⇒ Reg(q. z Podciljni skup se sastoji iz preduslova za U(A.B) zajedno sa onim ciljem koji nije sadrˇan u pozitivnim efektima akcija. cilj Ψ. ciljna regresija je onda . Shodno prethodnoj definiciji vidimo da se podcilj Reg(q.s. i niz akcija akko je stanje koje je rezultat izvrˇavanja niza akcija u s datom stanju u ciljnom skupu.s.a) = Pre(a) ∪ (q-Add(a)) Npr. Table(B)} 73 Osnovni korak u ciljnoj regresiji je redukcija jednog cilja na podcilj na osnovu opisa akcija. z {Clear(A). sastoji od preduslova za a zajedno sa ˇlanovima u q med kojima nisu pozitivni efekti za a.{}) (q ∩ Add(a)) = {} ∧ Plan(Reg(q.l) ⇒ Plan(q.a). Da bi se akcija c ¯u primenila ne sme biti preklapanja negativnih efekata akcije i uslova u cilju.l) Ako je inicijalno stanje (deskriptor) σ.B). definiˇimo ternarnu relaciju Plan. Nijedan od originalnih ciljeva ne predstavlja negativan efekat ove akcije.

γ).ˇist”. Skupovi podciljeva koji se dobiju iz regresije cilja kroz ove dve akcije su pokazani ispod cilja i relevantne akcije su indukovane pomo´u oznaka na granama. Krajnji levi je nemogu´.B) Table(A) Clear(A) Clear(B) On(B.B) izvrˇava akciju On(A.C) U(C.C) Table(B) Clear(B) Clear(C) Table(A) Clear(C) Clear(A) On(A. drugi i tre´i s c z c c podcilj su nekonzistentni (nesaglasni ) i mogu biti odseˇeni. z z Kao primer ciljne regresije posmatrajmo slede´i primer: U poˇetnom c c stanju blok C je na bloku A i blokovi A i B su na tabli. c Poslednji podcilj se odnosi na akciju S(B. tj. da na B z s c nema niˇta i da A bude na B.C). vaˇi Plan(Ψ.A) Clear(x) On(x.B) Table(A) Clear(A) On(B.A) Clear(x) On(x. Promenljiva c c c y ne moˇe biti A poˇto blok ne moˇe biti na vrhu. Sliˇno. c On(A. On zahteva da B bude . U stvari. Postoje dve akcije sa pozitivnim efektima koje ukljuˇuju elemente naˇeg cilja.B) On(B.y) U(x. Akcija S(A.A) Table(A) Clear(B) On(B.y) Clear(B) On(B.C) S(B.C).C) akciju On(B.C) S(A.C) U(x. ovaj cilj ima podcilj koji smo videli i on je taˇan u poˇetnom stanju ako x c c .B) i akc s s cija S(B. Cilj je do´i u stanje c u kojem je A na B i B na C. i ovaj cilj je saglasan. Vidimo da je to nemogu´e.A) Table(B) Clear(B) Clear(C) Table(A) Podcilj desno moˇe biti napuˇten.ˇist” i ne moˇe biti C jer je B na C..B) U(A.B) Clear(x) On(x. Isto tako y ne moˇe biti z s z z B poˇto B mora biti .σ.C) Table(B) Clear(B) Clear(C) On(A. s c Podcilj levo ima ˇetiri mogu´a podcilja.74 Seminarski rad pronalaˇenje γ td..

Razmotrimo funkciju razlikovanja stanja c u primeru Sveta blokova.. ˇak i male analize pokazuju da su sliˇne. Da bi funkcija razlikovanja stanja bila u potpunosti iskoriˇtena za poboljˇanje s s efikasnosti planiranja mora postojati korelacija izmed funkcije razlike i plani¯u ranja da bi se jedno stanje konvertovalo u drugo. ciljna regresija je c c ekvivalentna Grinovom metodu kada se on koristi u konjukciji sa poravnanjem stanja i aksiomama okvira. stanja su identiˇna. Ostaje nam problem odluˇivanja kojim c c c redom izvrˇavati odluke koje dozvoljava ta strategija. Ako je vrednost c s funkcije nula. vrednost razlike lokacije je 1. Redosled stanja (state ordering) je rezoluciona strategija u kojoj se redosled rezolucije (odluke) na klauzulama poravnanja stanja odred ¯uje pomo´u c funkcije razlikovanja stanja. Ako su dva razliˇita bloka s c c c u dva razliˇita stanja na istom bloku. stavimo A na B. a u drugom ne. U ekstremnim sluˇajevima. na primer. s sa procedurom . i na kraju. U toj taˇki moˇemo na´i korektan plan ˇitaju´i akcije sa c z c c c stabla u obrnutom poretku (unazad).13 Razlike stanja Iako je u nekoj restrikcionoj strategiji mogu´e eliminisati sve pretrage.najbolji prvi”. sc c ¯u Funkcija razlikovanja stanja (state-difference function) je binarna funkcija stanja koja vra´a broj koji odgovara stepenu sliˇnosti izmed stanja. skinemo C sa A. Razlika lokacije ukazuje na to da li je blok smeˇten na razliˇitom mestu u dva razliˇita stanja. Razlika c popunjenosti za blok je 1 ako se dva stanja ralikuju po tome da li je jedan blok u jednom stanju popunjen. . Ukupna vrednost je suma razlike lokacija i razlika koje se odnose na to da li je na bloku smeˇten neki drugi blok (clearness s difference-razlika popunjenosti). Ve´a c c ¯u c vrednost funkcije oznaˇava da se stanja viˇe razlikuju.Osnove veˇtaˇke inteligencije I s c 75 zamenimo sa C. Iako se ciljna regresija veoma razlikuje od predhodnih strategija planiranja. Kada funkcija razlikovanja stanja nije monoz tona moramo se osloniti na strategiju sa (backup) podrˇkom kao. Jedan uobiˇajeni naˇin s c c pravljenja ovog izbora je koriˇ´enje mere nesliˇnosti izmed stanja. U stvari. c ovakav ishod je priliˇno nemogu´. 7. c kada je funkcija stanja monotona i kada je u pitanju teˇko´a planiranja s c moˇemo koristiti hillclimbing. zatim stavimo B na C. Prvo.

najbolji c prvi” dolazimo do procedure A∗ . Ovo dobijamo na osnovu veliˇine c preseka izmed dva skupa stanja.. Moˇemo eliminisati neefikasnost proˇiruju´i z s c pojam razlike stanja na skupove stanja.76 Seminarski rad Iako smo govorili samo o teˇko´i planiranja uobiˇajeno je da saberemo s c c razlike stanja i da izraˇunamo troˇkove plana da bi doˇli do komplikovanijih c s s pravila redosleda. Koriste´i ovo kombinovano merenje u proceduri . ¯u .

s z Karakteriˇu´i senzorne sposobnosti agenata delimo skup S spoljaˇnjih stanja s c s u skup T nepovezanih podskupova.Osnove veˇtaˇke inteligencije I s c 77 8 Arhitektura inteligentnih agenata Agenti su formalizmi sliˇni konaˇnim automatima i Tjuringovim maˇinama. Karakteriˇu´i efekte ovih akcija definiˇemo funkciju s c s do koja preslikava svaku akciju i stanje u stanje koje nastaje posle primene date akcije u prvobitnom stanju. ali za sada ´emo ignorisati tu mogu´nost. povezujemo stanja iz S sa odgovaraju´im c particijama. c c s ali imaju i dodatne osobine. pa rec c c s cimo.do.action) c s c s .1 Tropistiˇni agenti c Tropizam je tendencija biljaka i ˇivotinja da (odgovaraju) reaguju na z spoljaˇnje uticaje.A. do : A × S → S Posmatraju´i aktivnost agenata definiˇemo funkciju action koja preslikava c s particiju kojoj stanje pripada u akciju. see : S → T Sliˇno senzornim sposobnostima. drugi ih mogu pokretati ali ne mogu menjati njihovu boju i sl. u naˇem primeru. Funkciju ove vrste nazivamo sposobnost delovanja (effectory function). neki njihovu teˇinu i sl. Funkciju ove vrste nazivamo senzorna funkcija (sensory function). definiˇemo tropistiˇne agente kao ˇestorku (S. Tako je i aktivnost ove klase agenata vezana iskljuˇivo s c za spoljaˇnji uticaj. c c Razliˇiti agenti ´e opaziti (reagovati) na razliˇita spoljaˇnja stanja. neki registruju boju blokova. action : T → A Konaˇno. Neki agenti mogu crtati c blokove. iako je u oblasti veˇtaˇke inteligencije ˇest sluˇaj s c c c da ih je viˇe (razliˇitih vrsta) i da interaguju med s c ¯usobno. ali ih ne mogu pokretati. Uvode´i funkciju see koja preslikava c stanje iz S u particiju kojoj pripada. 8.see. U ovom poglavlju govorimo o agentima sa unutraˇnjim s s stanjima (memorijom).T . razliˇiti agenti mogu imati i sposobnosti c c pravljenja razliˇitih efekata (effectory capabilities). Ovde se kratko razmatraju vrste agenata koji deluju usamljeni u svetu.

agent posmatra particiju t koja se z odnosi na senzornu funkciju see(s). koristi action da nad akciju a koja je ¯e dodeljena particiji t. dole. levo i desno ( 4 ) z z • moˇe da stavi zlato u kolica • moˇe da premesti zlato z . ovi agenti imaju i ograniˇeno delovanje c c (ograniˇene efekte).skup akcija • see : S → T • do : A × S → S • action : T → A Moˇemo ovako sumirati delovanje tropistiˇnih agenata: u svakom ciklusu z c agentovo okruˇenje je u nekom stanju s . s). sluˇe da bi se opisao tok rada. u nekom polju ili negde drugde. Stanje c u svakom podskupu se slaˇe sa pozicijom kolica. Jednostavan primer jeste Svet lavirinta gde imamo 3×3 povezana kvadrati´a. ali kada je u pitanju zlato z c moˇe samo re´i da li je zlato u kamionu. Sa naˇe taˇke glediˇta. Postoji 90 mogu´ih stanja c : kolica mogu biti u 9 polja i za svaku takvu mogu´nost zlato se moˇe na´i u c z c nekom od 9 polja ili u kolicima (razlikuje se situacija kada su zlato i kolica u istom polju i kada je zlato u kolicima). Cilj je da se u kolica natovari zlato.ˇime produkuje stanje do(a.skup particija od S. Ono se. z pozicijom zlata u odnosu na kolica. U naˇem primeru oni mogu pomeriti kolica od polja do c s polja i mogu manipulisati zlatom kad god je ono u kolicima ili na nekom polju. inteligentni agent c sa senzorima na kolicima moˇe re´i svoju lokaciju. Efekte koje proizvode agenti moˇemo grupisati u sedam akcija z • agent moˇe pomeriti kolica gore.skup stanja spoljnog sveta Seminarski rad • T . mogu´e je iz s c s c bilo kog stanja dosti´i svako od stanja. z c Ova senzorna ograniˇenja dele skup od 90 stanja u 27 podskupova. Za razliku od toga. c kolica i zlato..78 • S . c Pored senzorne ograniˇenosti.algoritam” z • A . . ali se ne slaˇe sa taˇnom pozicijom zlata z c kada je ono locirano u razliˇitom polju u odnosu na kolica. s c ciklus se ponavlja. na kraju izvrˇava akciju . takod slaˇe sa z ¯e.

agent pomera kolica kroz lavirint dok zlato ne bude pronad c ¯eno i to tako ˇto ga pomera prvo kroz prvu vrstu.2 Histeretiˇni agenti c Agent moˇe biti u nekom od stanja iz skupa unutraˇnjih stanja I. ako su kolica na izlazu i ako je zlato u istom polju. c Pretpostavimo da su u poˇetnom stanju kolica u gornjem levom polju lavirc inta. Vaˇna razlika izmed tropistiˇnih i histeretiˇnih agenata je to da funkcija z ¯u c c akcije za histeretiˇnog agenta uzima u obzir interna stanja kao i opaˇanja u c z diktiraju´im akcijama. agent pomera kolica ka izlazu 5. Pretz s postavimo da agent moˇe dosti´i bilo koje stanje iz bilo kog drugog stanja z c te ovde nije potrebno particionisanje skupa I u podskupove (particije) ili definisanje senzorne funkcije. c action : I × T → A Kod histeretiˇnih agenata takod postoji memorija koja pokre´e funkciju c ¯e c koja preslikava unutraˇnje i posmatrano stanje u slede´e untraˇnje stanje. s c s internal : I × T → I .Osnove veˇtaˇke inteligencije I s c • moˇe da ne proizvodi nikakav efekat (ne radi niˇta) z s 79 Razmotrimo problem dizajniranja akcija za agente sa ovim ograniˇenjima. agent pomera zlato 3. agent stavlja zlato u kolica 4. Cilj nam je da dod ¯emo do zlata koje je u donjem desnom polju. ako kolica nisu na izlazu i ako je zlato u kolicima. ako su kolica na izlazu i ako je zlato u kolicima. pa se spuˇta u krajnje s s desno polje druge vrste i na kraju iz prvog polja druge vrste prelazi u prvo polje tre´e vrste c 8. ako su kolica na bilo kom polju i ako je zlato na istom polju. Isto tako pretpostavimo da agent moˇe transz formisati I u neki od elemenata istog u jednom koraku. inaˇe. agent ne radi niˇta s 2. 1.

nije potrebno ˇ znati svako kolo raˇunara da bismo znali kako raˇunar radi). I u ovom sluˇaju ´e situacije u kojima su kolica na izlazu a zlato c c negde dalje biti nemogu´e. T. tj. Prvi podskup sadrˇi 9 stanja u kojima z je zlato u kolicima. i agentove z c c . Drugi se odnosi na 9 stanja u kojima su zlato i kolica u istom polju.80 Histeretiˇni agenti se definiˇu kao osmorka c s (I. sa mnogo detalja (npr. U ovoj apstrakciji unutraˇnja stanja s s s agenta sadrˇe samo baze podataka reˇenica predikatskog raˇuna. agenti sa senzornim ograniˇenjima dele s c skup od 90 stanja u tri podskupa. c 8. Funkcijom see preslikavamo svako stanje u odgovaraju´u particiju (podskup). see. I tre´i podskup sadrˇi 72 c z stanja u kojima je zlato u drugim poljima i pri to nije u kolicima. action) gde su : • I skup unutraˇnjih stanja s • S skup spoljaˇnjih stanja s • A skup akcija • see funkcija iz S u T • do funkcija iz A × S u S • internal funkcija iz I × T u I • action funkcija iz I × T u A Seminarski rad Kada je u pitanju naˇ primer. c U ovom poglavlju ispitujemo koncept agenata koje nazivamo nivoi znanja u kojem se sav viˇak detalja eliminiˇe. do. internal.3 Agenti nivoa znanja Problem je ˇto za ciljeve veˇtaˇke inteligencije nije potrebno predstavljati s s c problem uvek na visokom nivou. S. A. Zelimo samo c c dizajn u kojem su fiziˇki elementi predstavljeni apstraktno. ali da pri tom zlato nije u kolicima. Sada c definiˇemo skup unutraˇnjih stanja koja ´emo predstaviti brojevima od 1 do s s c 9 i koja oznaˇavaju polja u lavirintu(umesto podataka koji odgovaraju vrsti c i koloni).

jednoˇlanim c c skupom : Cart(AA) Poˇto je unutraˇnje stanje promenjeno. treba da redefiniˇemo agentovu funkciju s s s akcije tako da ona uzima u obzir bazu podataka umesto brojeva. Funkcija akcije . s BB. drugde). c Celobrojne vrednosti kojima smo oznaˇili unutraˇnja stanja u prethodnom c s poglavlju ovde zamenjujemo reˇenicama predikatskog raˇuna baze podataka. see je funkcija iz S u T . database : D × T → D Agenta nivoa znanja predstavljamo osmorkom. database je funkcija iz D × T u D i action je funkcija iz D × T u D. (D. BA. c c U naˇem primeru lavirinta imenujmo 9 polja simbolima AA. i simbol Gold koji oznaˇava unarnu relaciju koja sadrˇi c z onu particiju stanja koja se odnosi na lokaciju na kojoj je zlato. see. Imamo tri mogu´e particije stanja IC (”in the cart”. Iako c c i . action : D × T → A Funkcija osveˇavanja baze podataka database preslikava bazu podataka z particiju stanja T u novu internu bazu podataka.action. T. S. T je skup particija od S. do. A. Takod treba da definiˇemo funkciju baze podataka koja preslikava bazu po¯e s dataka i particiju stanja u baze podataka koje odgovaraju celim brojevima u unutraˇnjem stanju kod prethodnih agenata.Osnove veˇtaˇke inteligencije I s c 81 mentalne akcije koje predstavljaju zakljuˇke koji su dobijeni iz tih baza poc dataka. A je skup akcija. action) Odavde vidimo da je svaki agent nivoa znanja ujedno i histeretiˇni agent. BC. u c kolicima). za agenta nivoa znanja. do je funkcija iz A × S u S. u istom polju) i EW (”elsewhere”. Umesto da startujemo sa 1 kao poˇetnim stanjem mi startujemo sa sl. Skup D ovde predstavlja proizvoljan skup predikatskog raˇuna baze podataka. s Za ove agente je karakteristiˇno ekstremno ograniˇenje sposobnosti. S je skup spoljaˇnih c s stanja. database. CA. SC (”in the same cell”. AB. AC. CB i CC. Uzmimo relacioni simbol Cart koji oznaˇava unarnu relaciju koja sadrˇi polje c z na kojem su kolica. preslikava bazu podataka i particiju skupa stanja T u akciju koja ´e biti izvrˇena od strane c s agenta .

Levo ´emo navesti imena particija a s c c desno akcija. gore i dole. Alternativa je definc isanje fleksibilnijih agenata koji ´e biti programirani pomo´u izmena reˇenica c c c u agentovoj bazi podataka. izmena ´e biti velika. . levo. . e e e ( ) ( ) ( ) = IC e(left) = L e(right) = R e(up) = U = SC e(down) = D e(in) = I e(out) = O =EW e(noop) = N . L. primerom. Cart(CC) ∧ Gold(IC) ⇒ M ust = O Cart(CC) ∧ Gold(SC) ⇒ M ust = N Pretpostavimo da poˇetno stanje sadrˇi reˇenicu koja opisuje lokaciju kolica c z c u poˇetnom stanju. Ilustrujmo. out). Potreban nam je reˇnik te koristimo simbole R. pomo´nu funkciju e. z Cart(AA) ∧ Gold(IC) ⇒ M ust = R Cart(AA) ∧ Gold(SC) ⇒ M ust = I Cart(AA) ∧ Gold(EW ) ⇒ M ust = R . U i D za akcije desno. c Simbolima I i O oznaˇimo akcije stavljanja zlata u kolica i izlaska van lavirc inta (in. Ako ˇelimo modifikovati fiziˇkog agenta i kao i njegove z c funkcije implementirane u hardver. Modifikacija ove vrste nije mogu´a bez definisanja potpuno nove c funkcije za agenta. zatim. Sa M ust oznaˇimo akciju koju c ˇelimo da preduzme agent u datom trenutku.82 Seminarski rad je njihovo ponaˇanje razliˇito shodno poloˇaju zlata ono predstavlja fiksirs c z anu pretragu u nalaˇenju zlata i sledi fiksiranu putanju do izlaza ako je zlato z pronad ¯eno. c Cart(AA) Definiˇimo. kratko. te simbol N za null akciju.

Ovo razmatranje name´e pitanje da li je mogu´e dizajnirati monotone c c agente u kojima su nove reˇenice dodane u unutraˇnju bazu ali nisu premeˇtane c s s (dodavanje da. t) = ( − Cart(σ)) ∪ Cart(next( . pa zakljuˇujemo da moˇemo izmeniti proceduru menjaju´i bazu poc z c dataka. s action( . posle svake akcije stanje je promenjeno i opis mora biti promenjen tako da se odnosi na stanje koje nastaje posle dejstva akcije. ali je s c potrebno napraviti neke izmene. t)) Prime´ujemo da ovaj agent izvrˇava opisanu proceduru u svojoj poˇetnoj c s c bazi. koristimo s . Zatim treba da konvertujemo relacioni simbol. moˇemo definisati i jedc s z z nako mo´ne agente koji ´e biti mnogo fleksibilniji. premeˇtanje-uklanjanje ne). c c c poglavlju. Iako je oblik reˇenica u opisu neˇto stroˇi. Svaka baza opisuje samo jedno stanje. Razlog za ovo je to ˇto naˇ koncept relacija s s zavisnosti od stanja ne obuhvata stanje . Prvo je potrebno primeniti koncept zasnovan na stanjima.na primer lokacija kolica. Koristi´emo c relaciju T za opisivanje karakteristika individualnih stanja.Osnove veˇtaˇke inteligencije I s c 83 Kada baza podataka sadrˇi reˇenicu Cart(σ) i z c Cart(σ) ∧ Gold(e(t)) ⇒ M ust = e(a) tada agent izvrˇava akciju a . u funkcijski simbol. 8. database( . a to ´emo videti u sl. Ovo je zaista mogu´e.4 Agenti znanja u koracima Agenti opisani u prethodnom poglavlju nisu monotoni: reˇenice mogu biti c izmenjene ili dodavane u bazu. kao ˇto je Cart. t) = a Funkcija baze podataka diktira novu bazu koja sadrˇi sve reˇenice stare baze z c osim one koja opisuje lokaciju kolica koja se kroz funkciju next prepravlja u novu lokaciju.

Ext(n)) ⇒ M ust(n) = R T (Cart(AA). poˇto se informacije menjaju posle c s svake akcije. Ext(1)) Ovaj ”reˇnik”moˇemo koristiti i za opis agentovih procedura prema prethodc z nom sluˇaju. . Ext(n)) ∧ T (Gold(EW ). S. Agent ipak treba da zna koji ciklus se izvrˇava da bi koristio s s informaciju zabeleˇenu u bazi podataka. see. Ext(n)) ∧ T (Gold(IC). . Ext(n)) ⇒ M ust(n) = I T (Cart(AA). Ext(n)) ∧ T (Gold(SC). Ext(n)) ⇒ M ust(n) = N Na ˇalost ove izmene same po sebi nisu dovoljne da dozvole ˇisto monotono z c ponaˇanje. T (Cart(CC). z T (Cart(AA).84 Seminarski rad unarni funkcijski simbol Ext koji oznaˇava funkciju koja preslikava svaki pozc itivan ceo broj u spoljaˇnje stanje ciklusa agentove operacije koji odgovara s tom celom broju. Naravno ovaj opis ne´e biti kompletan jer ne uzima u c obzir poloˇaj zlata. Primetimo da Ext preslikava ceo broj u spoljaˇnje stanje s a ne u pariciju stanja. A. Sa ovim ”reˇnikom”moˇemo opisati poˇetno stanje c z c u primeru Lavirinta. Alternativa je definisati novu vrstu agenta nivoa znanja u kojem unutraˇnje stanje ukljuˇuje brojaˇ isto kao i njegova baza reˇenica. do. T. Agenti s c c c nivoa znanja u koracima su osmorka (D. action) gde su: c • D -skup baza podataka predikatskog raˇuna • S -skup spoljaˇnjih stanja s • T -skup particija od S . U ovom sluˇaju koristimo promenljivu n koja oznaˇava redosled c c c kroz ciklus agentove operacije i imamo konvertovan objekat konstante M ust u funkcijsku konstantu. database. Ext(n)) ∧ T (Gold(IC). Ext(n)) ⇒ M ust(n) = O T (Cart(CC). Ext(n)) ⇒ M ust(n) = R . Ext(n)) ∧ T (Gold(SC). On ne moˇe ˇuvati informacije z z c vezane za teku´i ciklus u svojoj bazi. T (Cart(AA).

s (1) . Sasvim je jednostavno modifikovati akcije i bazu funkcija za programibilne agente u prethodnom poglavlju tako da zadovoljavaju definiciju i uslove ˇeljenog ponaˇanja. i agentova c s prva akcija je odred ¯ena njegovom poˇetnom bazom oznaˇenom brojem 1 i c c agentovim poˇetnim opaˇanjem.s preslikava ceo broj n u akciju koju uzima agent u n-tom ciklusu. ˇesto je korisno karakterisati kako se unutraˇnje stanje.s (1) = see(s) . posmatranje i akcije u agentima nivoa znanja u koracima menjaju s obzirom na redni broj ciklusa. Oni treba da budu malo komplikovaniji da bi upravljali z s promenljivima u bazi. Unutraˇnje stanje prs s c s vog ciklusa agentovih opercija je agentova poˇetna baza podataka i spoljaˇnje c s stanje prvog cikusa je poˇetno spoljaˇnje stanje.Osnove veˇtaˇke inteligencije I s c • A -skup akcija • see -funkcija iz S u T • do -je funkcija iz A × S u S • database -je funkcija D × N × T u D • action -je funkcija iz D × N × T n u A 85 Primetimo da je jedina razlika izmed agenata nivoa znanja u koracima i ¯u obiˇnih agenata nivoa znanja zavisnost baze podataka i funkcija akcija od c agentovog rednog broja ciklusa. c c Za cilj analize. Funkcija obs . c z int ext obs . a inaˇe su identiˇni.s (1) = =s . Funkcija c s ext . Prvo agentovo opaˇanje se c s z odnosi na primenu funkcije see u poˇetnom spoljaˇnjem stanju. Funkcija int . Funkcija act .s preslikava ceo broj n u skup stanja posmatran od strane agenta u n-tom ciklusu. spoljaˇnje c s s stanje.s preslikava ceo broj n u unutraˇnje stanje koje je rezultat n-tog ciklusa agenta nivoa znanja u koracima s sa poˇetnom bazom podataka c i poˇetnm spoljaˇnjim stanjem s.s preslikava ceo broj u spoljaˇnje stanje koje je rezultat aktivnosti u ns tom ciklusu. Pogledajmo ˇta se deˇava sa poˇetnim vrednostma. Redni broj ciklusa ˇuva se van baze poc dataka.

86 act
,s (1)

Seminarski rad = action( , 1, see(s))

Definicije za ove funkcije slede posle prvog ciklusa. Unutraˇnje stanje u s svakom ciklusu je rezultat delovanja agentove funkcije memorije u prethodnom unutraˇnjem stanju, prethodnom (rednom) broju ciklusa, i agentovog s posmatranja prethodnog spoljaˇnjeg stanja. Spoljaˇnje stanje je rezultat s s izvrˇavanja akcije oznaˇene u prethodnom ciklusu prethodnim spoljaˇnjim s c s stanjem. Agentovo opaˇanje (posmatranje) je particija stanja koja sadrˇi z z spoljaˇnje stanje. Akcija koja ´e biti izvrˇena je odred s c s ¯ena primenom funkcije action u teku´em unutraˇnjem stanju, teku´em broju ciklusa, i agentovim c s c opaˇanjem teku´eg spoljaˇnjeg stanja. z c s int
,s (n)

= database(int
,s (n)

,s (n ,s (n

− 1), n − 1, obs − 1), ext
,s (n

,s (n

− 1)

ext

= do(act
,s (n)

− 1)

obs act
,s (n)

= see(ext

,s (n))

= action(int

,s (n), n, obs ,s (n))

Agent nivoa znanja sa poˇetnom bazom i poˇetnim spoljaˇnjim stanjem c c s postoji ako i samo ako njegova baza podataka postoji u svakom ciklusu. Agent nivoa znanja pamti bazu podataka (database retentive) ako i samo ako njegova baza u svakom ciklusu posle prvog logiˇki implicira bazu prethodnog c cikusa. int ,s (n) |= int ,s (n − 1) Jednostavniji tip (database retentive) agenata koji pamte bazu podataka je onaj kod kojeg su sve reˇenice iz int ,s (n − 1) sadrˇane u int ,s (n) c z

8.5

Agenti s namerom

Posmatraju´i agente opisane u prethodnom poglavlju, interesantno je c primetiti da pod uobiˇajenom interpretacijom simbola u reˇniku ovog agenta c c baza podataka svakog ciklusa korektno opisuje svoje spoljaˇnje okruˇenje. s z Poˇto se agent pomeri desno u poˇetnom stanju kolica su u polju AB kao s c ˇto je specificirano u bazi podataka tog ciklusa. Ako bi permutovali baze pos dataka sistematski i modifikovali bazu podataka agenta kao i funkcije akcije, agent bi reˇio problem podjednako dobro, ali reˇenice u bazi podataka ´e s c c biti netaˇne pod uobiˇajenom interpretacijom. Sa druge strane, analiziraju´i c c c

Osnove veˇtaˇke inteligencije I s c

87

nivo znanja agenta mi obiˇno ˇelimo da priˇamo o ponaˇanju agenta uzic z c s maju´i u obzir neke interpretacije ili parcijalne interpretacije za reˇenice u c c bazi podataka. Uopˇte, ne moˇemo oˇekivati od agenta da se povinuje naˇoj s z c s interpretaciji za sve simbole u njegovom reˇniku. Ipak, interesantno je poglec dati agentove osobine ako pretpostavimo da se slaˇu sa nama u pogledu nekih z simbola u njegovom reˇniku. Slede´e veze su posebno korisne. c c Funkcija obsrecord preslikava pozitivne cele brojeve n i particiju stanja T u skup reˇenica tvrde´ da je spoljaˇnje stanje u ciklusu n ˇlan particije T . U c c s c prethodnom primeru posmatranje prvog ciklusa i particije stanja u kome se zlato nalazi na nekom drugom mestu je baza podataka koja se sastoji od jednostruke reˇenice T (Gold(EW ), Ext(1)). c

obsrecord

(
1,

)

={T(Gold(EW),Ext(1))}

Da bismo kodirali naredbe u bazi podataka agenta potreban nam je reˇnik c koji opisuje akcije koje bi agent trebalo da radi. Funkcija mustrecord preslikava pozitivan ceo broj n i akciju a u skup reˇenica tvrde´i da bi agent c c trebalo da izvrˇi akciju a u ciklusu n. Npr. moˇemo kodirati ˇinjenicu da se s z c agent kre´e desno u svom prvom ciklusu: c mustrecord(1, right) = M ust(1) = R Funkcija mustnotrecord preslikava pozitivan ceo broj n i particiju stanja T u skup reˇenica tvrde´i da bi agent trebalo da izbegava akciju a u ciklusu n. c c Npr.,moˇemo kodirati ˇinjenicu da se agent ne pomera desno u svom prvom z c ciklusu kao ˇto je prikazano : s mustnotrecord(1, right) = M ust(1) = R Funkcija actrecord preslikava pozitivan ceo broj n i akciju a u skup reˇenica c tvrde´i da agent u stvari izvrˇava akciju a u ciklusu n. Moˇemo npr.,kodirati c s z ˇinjenicu da se agent pomera desno u svom prvom ciklusu reˇenicom : c c act(1) = R actrecord(1, right) = Act(1) = R

88

Seminarski rad

Kao ostale aspekte operacija agenta, pogodno je da se napravi koncept funkcija koji definiˇe zapise (record) za opaˇanje i akcije agenta. Definiˇemo s z s obsrec ,s koja preslikava broj ciklusa u zapis posmatranja za n-ti ciklus aktivnosti agenta nivoa znanja sa poˇetnom bazom podataka c i poˇetnim c spoljaˇnjim stanjem s. Funkcija actrec ,s preslikava broj ciklusa u odgos varaju´i zapis akcije. Koriste´i terminologiju iz zadnjeg odeljka moˇemo c c z definisati obsrec ,s = obsrecord(n, obs ,s (n)) actrec
,s

= actrecord(n, act

,s (n))

Kaˇemo da je agent (observation retentive) pamti opaˇanja ako i samo z z ako zapisuje svoja zapaˇanja u svakom ciklusu u svoju bazu, tj. u svakom z ciklusu, posle prvog, agentova baza logiˇki povlaˇi zapis opaˇanja prethodnog c c z ciklusa. int ,s (n) |= obsrec ,s (n − 1) Agent ˇuva (pamti) akcije (action retentive ) ako i samo ako je zapis njegovih c akcija u svakom ciklusu u njegovoj bazi, tj. ako u svakom ciklusu, posle prvog, agentova baza logiˇki povlaˇi zapis akcije prethodnog ciklusa. c c int
,s (n)

|= actrec

,s (n

− 1)

Kaˇemo da baza podataka z zapisuje akciju a u ciklusu n agentove operacije (P ( , n, a)) ako i samo ako logaˇki povlaˇi da akcija mora biti c c izvrˇena u n-tom koraku. s |= mustrecord(n, a) Koriste´i ovu notaciju moˇemo definisati ˇta se podrazumeva pod zabranc z s jenom akcijom. Kaˇemo da zabranjuje akciju a u n-tom ciklusu agentovih z operacija (F ( , n, a), ako i samo ako triangle logiˇki povlaˇi da akcija a ne c c sme biti izvrˇena u koraku n. s |= mustnotrecord(n, a) Agent nivoa znanja je lokalno ,,veran” (locally faithful) ako i samo ako svaki ciklus njegovih operacija zadovoljava sl.uslove: 1. Agent izvrˇava svaku akciju koja je zapisana pomo´u agentove baze s c podataka i njegovih opaˇanja u teku´em stanju. z c P (int
,s (n)

∪ obsrec

,s (n), n, a)

⇒ act

,s (n)

=a

c c c agent moˇe zakljuˇiti da zlato nije locirano u AA.s (n) ∪ actrec . iako on nije dugo razmatrao z c tu ˇinjenicu. n. nejednakost agentovih razliˇitih akcija.Osnove veˇtaˇke inteligencije I s c 89 2. c histrec = . a) ⇒ act .s (n) =a Kod nekih agenata nivoa znanja ovi su uslovi redukovani.s (n − 1) ∪ obsrec . Zato posz toji baza za zabranjene akcije u kojoj nisu zapisane ostale akcije i mi ˇelimo z biti sigurni da agent ne´e selektovati zabranjenu akciju. neophodno je odrediti (zapisati) remaining akcije. ne moˇemo c c z niˇta raditi bez zapisanih uslova pa zato postoje baze koje zapisuju neke aks cije koje ne zabranjuju druge akcije i mi ne ˇelimo da agent izvrˇava samo z s nezabranjenu akciju kada postoje neke druge (odred ¯ene) zapisane akcije. Teorema 9 Saglasnost je neophodan uslov za lokalnu vernost. Sliˇno. njegovom istorijom i c teku´im opaˇanjem. z c F (int . Istorijski zapis (history record) za partikularne korake agentove operacije je skup opaˇanja i akcija koje se zapisuju za svaki korak i za sve prethodne z korake.s (n) = n=0 c . Agent koji razmiˇlja je globalno veran (globally faithful) akko c s on postupa u skladu sa njegovom poˇetnom bazom. Sa druge strane.s (n) inaˇe {} histrec Primetimo da prethodne informacije vezane za istoriju u agentovoj bazi ˇesto dopuˇtaju agentu izvod c s ¯enje zakljuˇaka koji inaˇe ne bi bili mogu´i. c istorijom i opaˇanjem u teku´em stanju z c P( ∪ histrec . pretpostavimo da agentova baza ima aksiome koje tvrde da postoji samo jedna zapisana akcija za svaki ciklus i pretpostavimo da. c z 1.s (n) ∪ obsrec . tj. posle uoˇavanja da zlato nije u ´eliji AA i posle pomeranja u ´eliju AB. Tada. agent zabranjuje sve ostale akcije. Npr. n. agent izvrˇava svaku akciju koja je oded s ¯ena njegovom poˇetnom bazom.. ako baza odredi (zapiˇe) akcije c s za svaki ciklus.s (n). c c c Npr. takod postoje aksiome koje tvrde ¯e. a) ⇒ act .s (n) =a . Funkcija histrec preslikava broj u odgovaraju´i istorijski zapis. i ako baza zabrani sve akcije osim jedne. Agent izbegava (poniˇtava) svaku akciju koja je zabranjena pomo´u s c njegove baze podataka i njegovog opaˇanja u teku´em stanju.s (n).s (n − 1) ∪ obsrec . ne moˇemo izostaviti uslove vezane za zabranjene akcije.

s (n) =a Teorema 10 Pam´enje baze podataka. agent izbegava svaku akciju koja je zabranjena njegovom poˇetnom c bazom. n. s s s s Ako je u ciklusu n mogu´e dokazati mustrec(n. opaˇanja i akcija i lokalna vernost c z impliciraju globalnu vernost.90 Seminarski rad 2.DB) ACT := FIND(k.DB) CYCLE := CYCLE+1 GOTO Tag End . a) whenever ∪ obsrecord(n.Ext(CYCLE)=k. t) = a whenever ∪ obsrecord(n. n. tada agent z c c izvrˇava akciju a.DB) EXECUTE(ACT) DB := APPEND([Act(CYCLE)=ACT]. z z database( . s action( . Kljuˇna ideja u definisanju agenata ove klase je koriˇ´enje c sc metode automatskog zakljuˇivanja kao ˇto su rezolucija u proizvod c s ¯enju reˇenice c koja ukazuje na traˇenu akciju u svakom ciklusu. a) Agentova baza je aˇurirana usled opaˇanja i akcija u ciklusu. t) ∪ actrecord(n. a) Procedure Begin Tag CD(DB) CYCLE := 1 OBS := OBSERVE(CYCLE) DB := APPEND([T(OBS. t) |= mustrecord(n. Agent ove vrste je promiˇljen z s u tome ˇto razmiˇlja u svakom ciklusu o spoljaˇnjoj akciji koju treba izvrˇiti. n. 8.s (n). t) = ∪ obsrecord(n. a) ⇒ act .s (n − 1) ∪ obsrec .a) za teku´u bazu i zapis c c opaˇanja koriste´i rezoluciju ili drugu proceduru zakljuˇivanja.6 Promiˇljeni agenti s U ovom poglavlju definiˇemo klasu neˇto specifiˇnijih agenata nivoa znanja s s c od globalno vernih. t) |= mustrecord(n.Must(CYCLE)=k. istorijom i opaˇanjem u teku´em stanju z c F( ∪ histrec .

agent prolazi kroz jednostavan ciklus njegove istorije.opisivaˇ stanja. To povlaˇi akciju i c aˇuriranje baze i broja ciklusa. pamti s z akcije i pamti bazu podataka. Stoga imamo: Teorema 11 Svaki promiˇljeni agent sa valjanim i kompletnim dokazivaˇem s c teoreme je globalno taˇan (veran). z Iz ove definicije lako se vidi da je promiˇljeni agent pamti opaˇanja. U svakom trenutku s petlje. Tada agent izvodi c c zakljuˇak na bazi dok dedukuje akciju za izvod c ¯enje.Osnove veˇtaˇke inteligencije I s c 91 Program CD uzima poˇetnu bazu kao argument i manipuliˇe sa 4 c s promenljive: CYCLE . s c Kod definiˇe jednostavnu slobodno-izlaznu petlju.ˇuva c c c poˇetnu bazu. DB . OBS . Prvo. Tada se ciklus ponavlja. Agentov ”reˇnik efikasnosti” je c c implementiran u primitivnoj potprogramu EXECUTE (argument joj je oznaka akcije i kada je pozvana izvrˇava odgovaraju´u akciju). see(s)) ). sva opaˇanja i zapise akcija i ACT . Agentova senzorna sposobnost je implementirana u potprogramu s OBSERVE (argument joj je redni broj ciklusa i kada je izvrˇena u stanju s s vra´a kao vrednost obsrecord(n.je ime akcije koja ´e biti c z c izvrˇena. c .broj teku´eg satnja. okolina je posmatrana i u bazu je upisana karakteristiˇna reˇenica.

potrebno je 832040 izraˇunavanja tj. sloˇenost je merena naporom da se izraˇuna gotova formula c z c koja ukljuˇuje samo konaˇan broj simbola. sloˇenost O(1). Bonaccij-jev sin 1540 .) c f Rekurzivna definicija F (n) = F (n − 1) + F (n − 2). Izraˇunavanje sume prvih n prirodnih brojeva: c n i= i=1 n(n + 1) 2 izraˇunavanje sume kvadrata prvih n prirodnih brojeva: c n i2 = i=1 n(n + 1)(2n + 1) 6 Ovi primeri se lako reˇavaju pomo´u date eksplicitne formule (sloˇenost s c z je konstantna tj. Fibonaˇijevi brojevi (Leonard de Pise. F (2) = F (1) = 1 Za n=30 npr. c z s Primer 2. Upotreba odred ¯enih procesa npr. Upotreba algoritma koji konvergira ka reˇenju s 4. z c z s U tom sluˇaju. pa je tako bez obzira ˇta su ulazni c c s parametri. rekurzivno raˇunanje c c . Upotreba rekurzivne definicije 3.92 Seminarski rad 9 Klasiˇne metode reˇavanja problema c s Mogu se izdvojiti ˇetiri osnovna naˇina reˇavanja problema: c c s 1. z Primeri algoritama (uglavnom polinomijalne sloˇenosti): z Primer 1. O(1) i odnose se na prvi naˇin pronalaˇenja reˇenja). Primena eksplicitno zadate formule koja nalazi reˇenje s 2. pokuˇaja i greˇke sa nabrajanjem s s sluˇajeva c Vidimo da je najbolje kada moˇemo primeniti prvi naˇin za nalaˇenje reˇenja.

Sortiranje pored ¯enjem. U c svakom koraku polovimo broj elemenata (uz upotrebu . Sortiranje je primer netrivis c s jalnog reˇenja za koje moˇemo dati polinomijalni algoritam.. v:=1. Skup od n brojeva moˇe biti ured na z ¯en n! naˇina (permutacije). v:=w. return u. Dubina stabla je tada log2 n. w:=u. Stablo pretrage za proizvoljni algoritam ´e c c imati 2t listova sa t pored ¯enja.potrebno je izvrˇiti n-2 koraka sabiranja. Klasiˇan ... tj. Kako je 2t > n!. z s 93 Eksplicitno reˇenje rekurentne relacije se traˇi u obliku F (n) = rn s z preko karekteristiˇne jednaˇine. end Fibonacci Sloˇenost je O(n) . i u najgorem sluˇaju.Osnove veˇtaˇke inteligencije I s c je O(F (n)). Eksplicitna formula glasi : c c √ √ [(1 + 5)n − (1 − 5)n ] √ F (n) = 2n 5 Problem sa ovom formulom je taj da je rezultat priliˇno veliki broj s c pokretnim zarezom i samim tim s velikom greˇkom a traˇi se ceo broj s z tako da je to nepraktiˇno u ovom sluˇaju.takmiˇenjem” parova brojeva pri z c ˇemu redukujemo broj poredjenja. tj. Bolji algoritam moˇemo dobiti . repeat while i!=n i:=i+1. ˇto je veoma skupo. c .bubble sort” algoritam je O(n2 ) ˇto je loˇije od teoretskog c s s O(n log n). O(n log n) ˇto je najbolje mogu´e reˇenje. ukupan broj potrebnih c pored ¯enja je n · broj potrebnih pretraga stabla od n elemenata. u:=1. Krajz c ¯u c z nje je nepraktiˇno nabrajati sve mogu´e putanje i traˇiti najkra´u c c z c za poˇetak uzeti samo elementarne putanje (bez samopresecanja. Pronalaˇenje najkra´eg puta izmed taˇaka mreˇe (grafa). prema Stirlingovoj n+1 formuli koja tvrdi da je za veliko n n! reda n 2 pa je t = O(n log n). s z Primer 4. c c Primer 3.heap” struktura) koji se porede. s Iterativno reˇenje glasi : s Fibonacci(n) i:=2. u:=u+v.

vreme za koje je minimalno potrebno da se obavi ceo proces (od taˇke α to taˇke ω npr. i Whiting i Hiller 1960. Sloˇenost algoritma se z n 2 moˇe oceniti sa k=1 (n − k) tj. i)] se c . za razliku od slede´eg primera: c Primer 5. O(n ). i)]. a n zavrˇna c c s taˇka putanje koja se traˇi u grafu ({1.i) else D(i):= ∞.gde to joˇ nije c c s ∗ poznato. do ∀i ∈ S and (j.3. Pod uslovom da nema ciklusa c c u grafu. D(i) = ∞.gde se c za sve ˇvorove zna minimalno rastojanje od ˇvora 1.j). . Algoritam koji sledi iz ovoga: c D(1):=0.. i ∈ S ∗ ..n}. S .. backz tracking-om). i = 1. do ∀i ∈ S: if (1. S:={2.. varijacije algoritma su dali Dantzig 1960. Ako se pretpostavi da je graf z orijentisan postupak je isti. end Algoritam su prvi dali Mur 1957. Na poˇetku S = {1}. D∗ (1) = 0. i ∈ S na datum stupnju. Moˇe se krenuti od poˇetne c s z c taˇke ka susedima pa onda dalje iterativno . i) ∈ U D(i):= min[D(i). while S = ∅ repeat choose j ∈ S such that D(j) = mini∈S D(i). (k.. c z D∗ (i) =udaljenost od 1 do ˇvora i. U ⊆ {1..za svaki stupanj se tako c zna putanja minimalne duˇine (bez potrebe za rekurzijom tj.i) ∈ U then D(i):=L(1. L(i. D(i) =najkra´e rastojanje c c od 1 do i. Ako ured ¯eni graf predstavlja redosled procesa sa vremenima potrebnim za njihovo obavljanje onda je cilj na´i putanju sa maksimumom c zbira vremena tj. c Tada. i)]. n}2 . Problem redosleda poslova / zadataka (task-ordering problem). S:=S-{j}.. end repeat. ideja je sliˇna prethodnom D(i) = maxj∈J [D(j) + L(j....94 Seminarski rad svaki ˇvor se pojavljuje najviˇe jednom).). i Dijkstra 1959. n}. Ako je 1 polazna taˇka.. od 1 do c prve taˇke u S i ostatak do j). Tada na svakom stupnju vaˇi: z ako i ∈ S ∗ onda D(i) = D∗ (i) inaˇe i ∈ S i vaˇi D(i) = min[D(k) + L(k. i) ∈ U c z Na poˇetku je S ∗ = {1}. U ) td. j) = pozitivno rastojanje za luk (i. k ∈ S ∗ . D(j) + L(j. ako je D(j) = mini∈S [D(i)] za neko j ∈ S onda je D(j) = D∗ (j) najkra´i put od 1 do j (dokaz po konstrukciji puta iz dva dela. . Time se ˇvorovi grafa dele u dve particije: S ∗ .

ali je mogu´e na´i redosled po kome traˇiti ˇvorove da z c c z c bi se dobila najbolja konvergencija. C . . ... B. x2 ) ∈ U )ν(x1 ) < ν(x2 ). ω-kraj procesa. Ako nema ciklusa onda se moˇe z pokazati da postoji bijekcija ν iz skupa taˇaka grafa X u {1.sloju”): c c Ovakav graf sadrˇi potrebne informacije: z α-poˇetak procesa. Proces zapoˇinje c zato ˇto vaˇi slede´e svojstvo: s z c .Osnove veˇtaˇke inteligencije I s c 95 traˇi iterativno.slojeve” Yk (ako se iz grafa najpre izbaci poˇetni c c ˇvor zajedno sa lukovima koji ga povezuju s narednim onda naredni c predstavljaju nove poˇetne ˇvorove u novom .. (∀(x1 . Uvek postoji polazni ˇvor tj. n} za c svaku putanju od α do ω td. a broc jevi predstavljaju vreme u satima potrebno za izvrˇenje zadataka. Tako se ˇvorovi klasifikuju u .su zadaci. A.. Uss merenje grafa govori o mogu´em redosledu izvrˇavanja zadataka. uzimaju´i u obzir z s c odsustvo ciklusa i prolazak kroz granu samo jednom. s Prethodni algoritam koji se odnosio na pronalaˇenje minimalnog puta z moˇe biti modifikovan za reˇavanje ovog problema.. ˇvor c c bez ulaznih lukova ako je graf ured ¯en... Probc s lem se svodi na nalaˇenje puta od α do ω za koje je suma vrednosti z grana (teˇina grana) maksimalna (u suprotnom neki od poslova ne bi z bili zavrˇeni u datom vremenu).

j) ∈ U ⇒ i < j. p:=p+1. Algoritam je takod sloˇenosti O(n2 ).j)∈U [D∗ (i) + L(i. K. (i. k:=k+1. T:= T − Yk . c Ovaj metod je poznat kao metod potencijala-Bernard Roy 1960. end repeat. x2 ). repeat for j. (x1 . x2 ) ∈ U : v(x1 ) < v(x2 ) ˇ Ovaj problem reˇavamo reorganizacijom grafa. gde je n ukupan broj c ˇvorova u X takav da c ∀x(x1 . Algoritam: p:=1. 3<j<n: D∗ (j) := max(i. j) ∈ U izbaci (i. do (∀j)j ∈ X. j)]. T:=X.2). D∗ (2) :=L(1. Teorema 12 Konaˇan usmeren graf je bez ciklusa ako i samo ako posc toji bijekcija v skupa ˇvorova X u interval 1. ¯e z . end repeat.n. Nakon ovakve konstrukcije vaˇi da ako pomenutom bijekcijom prenuz meriˇemo graf td.j) iz U.96 Seminarski rad Svaki konaˇan graf bez ciklusa ima najmanje jedan ˇvor koji nema predc c hodnika (izvor). Cvorove grupiˇemo u s s slojeve tako da ne sadrˇe ˇvor koji ima predhodnika (ne postoji grana z c koja spaja dva ˇvora unutar jednog sloja). (i. Algoritam je onda jednostavan: s D∗ (1) :=0. while T = ∅ repeat ( Yk je skup polaznih) izvora u T do (∀i)i ∈ Yk ν(i) := p .=0.

Potreban uslov je takod c ¯e i da je stepen svakog ˇvora paran (da bi za svaki dolazak u teme posc tojao i razliˇit odlazak). gde je to problem pronalaˇenja ciklusa kroz z ˇvorove. Analiza problema koja podrazumeva stavljanje u oblik koji je lakˇi s za razumevanje 2. a to je ujedno i dovoljan uslov.. Opis postupka: prilikom svakog prolaska kroz neki luk on se izbacuje (oznaˇava). moramo i iza´i iz njega). G2 .. P2 . Prouˇavanje problema izraˇenog u ovom jednostavnijem prostoru. nad rekom Pregel u s gradu K¨nigsberg) Treba prona´i ako je mogu´e putanju koja poˇinje u o c c c nekoj taˇki grafa i prolazi kroz svaki luk grafa taˇno jednom i vra´a se c c c na poˇetak. Neka je P neki ciklus u G i G graf dobijen uklanjanjem grana koje ˇine P iz grafa G. Ovaj problem je dosta sliˇan c Hamiltonovom problemu. ostaje nekoliko povezanih podgrafova Gi koji se s . E) sa m grana. Izdvojimo komponente povezanosti G1 . taj problem pripada drugoj klasi problema.. ne kroz grane (Hamiltonov ciklus je specijalan sluˇaj Ojlerovih c c gde se prolazi samo jednom kroz svaki ˇvor). Generalizacija 4. c z pomo´u metoda koje su vod c ¯ene jednostavnim idejama proizaˇlim s iz primera 3. c Dokaz se izvodi matematiˇkom indukcijom: c (IH) Povezani graf sa manje od m ˇvorova u kojem svi ˇvorovi imaju c c paran stepen sadrˇi Ojlerov put i umemo da ga nad z ¯emo.. Konstrukcija i dokaz algoritma za reˇavanje s s Primer 8 Topoloˇki problem Ojlervoih ciklusa (ponatiji kao problem Kenigzberˇkih mostova.Gk i (IH) primenimo na njih. Ako se pretpostavi da ne moˇe da se napravi takva putanja c z ali se zavrˇava u V. Stepeni svih c ˇvorova u G su parni jer broj uklonjenih grana susednih bilo kom ˇvoru c c je paran (kada ud ¯emo u ˇvor. Posmatrajmo G(V. Med c ¯utim. Preduslov je da je graf povezan. primera u ovom poglavlju: c s 1. Izdvojene zatvorene Ojlerove cikluse oznaˇimo sa P1 . (IH) se ne moˇe c c z primeniti na G jer on ne mora biti povezan.Osnove veˇtaˇke inteligencije I s c 97 Faze koje se name´u u reˇavanju problema tj.Pk i sada je samo potrebno da c ih objedinimo u jedan povezani graf.

Ako se polazi od ˇvora V. 1736. a onda dalje od g1 do g2 itd. return P. sve dok se ne c s iscrpe svi podgrafovi. P:=null.nO(n) z c c • Konstrukcija drveta najmanje cene za graf sa m lukova . end Euler.v). Petlja na izolovanom ˇvoru c je takod Ojlerov ciklus (Euler. 9.98 Seminarski rad sustiˇu sa putanjom P u ˇvorovima gi . end repeat. until u=w. Algoritam je sloˇenosti O(|U |). c [H je ˇvor koji i na putanji P i na neoznaˇenom luku] c c spoj putanju Euler(H) sa P.v) je prvi luk iz u koji nije oznaˇen} c oznaˇi (u. s To barem daje opravdanje za dalja istraˇivanja u oblasti VI. ¯e Euler(w). konc c c struiˇe se putanja P od V do g1 . u:=w. u:=v.. je dao prvi dokaz). repeat while postoje neoznaˇeni lukovi u G. onda povratak u V. Sada je lako zapisati algoritam: P:=Euler(S). repeat while exists {(u.1 Algoritmi za koje su poznata polinomijalna reˇenja s Daleko je manji broj klase algoritama za koje je poznato da su polinomijalne sloˇenosti u odnosu na ostale.O(m log m) . Ojlerov ciklus E1 u grafu G1 koji s poˇinje i zavrˇava se u g1 . dok je algoritam provere potrebnog i z dovoljnog uslova O(n).v)}. Za mnoge od njih je tek u zadnjih 20-30 z godina otkriveno polinomijalno reˇenje i dokazano da jesu optimalno takvi. c P:=P {(u. Joˇ neki primeri z s sa njihovim sloˇenostima su: z • Pronalaˇenje reˇi u tekstu od n reˇi .

L.Osnove veˇtaˇke inteligencije I s c 99 .O(mn) (Dijkstra 1959. Prim 1957.O(n) . c ¯u c Minoux 1978) • Testiranje planarnosti grafa . Ford 1965) • Povezane komponente . simpleks metoda. Gondran. je naˇao s s algoritam polinomijalne sloˇenosti koji je kao posledicu imao mnoge z algoritme numeriˇke analize zadate taˇnosti . Hopcroft.npr. koristi se u operativnim istraˇivanjima (Dantzig-ov algoriz tam.ako su lukovi oznaˇeni protokom odred c ¯enog tipa. Kachian 1979.cilj je na´i podksup svih lukova td. O(n) 1970-1974) • Linearno programiranje . zbog konveksnosti prostora pretraˇivanja konz vergira ka optimumu tek kada se prod kroz odred broj taˇaka ˇto ¯e ¯en c s je O(nm ) ali u praksi viˇe kao O(n3 ). vodovod za zadate mogu´e putanje (Kruskal 1956. c Tarjan 1977) • Pronalaˇenje najkra´e putanje izmed zadatih ˇvorova sa n ˇvorova i m z c ¯u c c lukova .O(n3 ) . c Jack Edmonds je naˇao polinomijalno reˇenje) s s • Maksimalni protok .da li je mogu´e prikazati graf u c ravni bez presecanja lukova (Kuratowski 1930 O(n6 ). Dantzig 1960.iste sloˇenosti) c c z .reˇiti u Rn : Ax ≤ b. Fulkerson 1950. A ∈ Rm×n . G.O(n5/2 ) . Floyd 1962. b ∈ Rm . Tarjan O(n log n).O(n2 ) . se c ne sustiˇu ni u jednom temenu (teorema Claude Berge-a daje osnovu.prona´i maksimalno povezane podc grafove datog grafa n ˇvorova (Tremaux 1882. s a moˇe se i dodati uslova da neka realna funkcija cx ima minimalnu z vrednost. Tarjan 1972) c • Tranzitivno zatvorenje grafa (relacije) . na´i maksilan izmed dva ˇvora (Ford.O(n2 ) • Maksimalno pored ¯enje .

dobrih” problema. izraˇenih u funkciji veliˇine ulaznih pos z c dataka. konstrukcija minimalno povezanog stabla O(m log n). suˇtinski eksponencijalni algoritmi (sloˇenost ove klase je najmanje reda s z n f . Linearni algoritmi su obiˇno najbolji po pitanju sloˇenosti. gde je f ili konstanta ili polinom od n 3. ¯u c c Ako je n mera veliˇine podataka (duˇina niza cifara npr.stvar moˇe biti i gora. jer f c z z ne mora biti nsamo konstanta ili polinom.. linearan. Sloˇenost problema je sloˇenost najbolje poznate procedure za njez z govo reˇavanje..100 Seminarski rad 9. najkra´i c put izmed ˇvorova grafa od n ˇvorova i m grana O(mn) itd.. problemi koji nisu ni polinomijalni ni eksponencijalni (za ovu klasu vaˇi z da se za njih ne zna nijedan algoritam polinomijalne sloˇenosti) z Navedimo samo neke od problema za koje su poznati algoritmi polinomijalne sloˇenosti: sortiranje skupa od n brojeva O(n log n). za koje postoji poznat algoritam sloˇenosti z r O(n ) gde r ne zavisi od n. s • klasa E: suˇtinski eksponencijalni algoritmi algoritam ˇija je sloˇenost barem O(f n ) .2 Klasifikacija problema prema sloˇenosti z Sloˇenost procedure definiˇemo kao gornju granicu broja elementarnih z s operacija potrebnih za reˇavanje. pronalaˇenje Ojlerovog z z ciklusa O(n). polinomijalni algoritmi (sastoje se od svih problema ˇiji su algoritmi c poznati i sloˇenost im je polinomijalna funkcija veliˇine ulaznih poz c dataka) 2. c z Osnovne klase algoritama prema sloˇenosti su: z • klasa P: polinomijalni algoritmi Klasa . u operaciji sabic z ranja) i ako je broj koraka algoritama oblika ax+b onda je algoritam sloˇenosti z O(n). ve´ takod eksponencijalna c ¯e 2. funkcija (2 ) . s Name´u se dva pitanja: c • Do kojih granica se moˇe poboljˇati neki algoritam? z s • Da li sloˇenost moˇe sugerisati grupisanje u klase? z z Navedimo klasifikaciju problema shodno sloˇenosti: z 1.

.Osnove veˇtaˇke inteligencije I s c 101 • klasa III: problemi koji nisu ni P ni E Niˇta u njihovoj formulaciji ne ukazuje da su suˇtinski eksponencijalni. 1971) – Problem optimizacije putovanja putuje´eg trgovca (u narednom c poglavlju) z – Problem biranja fajlova u nestruktuiranoj bazi radi pretrage (traˇenja nekog elementa) po najmanjoj ceni – optimalno pakovanje po najmanjoj ceni – dijagnoza / troubleshooting (npr.trial and error”) sve do reˇenja.. qn . nasuprot Ojlerovom gde je uslov da ciklus prolazi kroz svaki luk) – postojanje skupa logiˇkih vrednosti koje zadovoljavaju logiˇki izraz c c (Cook. qn ): . programom s i domenom koji vrˇi u svakom koraku neku operaciju nad domenom koja s zavisi od stanja i promeni stanje. Ova instrukcija kreira onoliko kopija maˇine koja je izvrˇava koliko ima elemanata u S i dalje nastavlja izvrˇanje s s s paralelno sve dok jedna od kopija ne izvrˇi komandu stop. Ovako neˇto je s s veoma korisno za probleme koji se reˇavaju nabrajanjem tj. kod ekspertnih sistema) – itd. . formalno zasc s niva pojam algoritma i moˇe se pokazati da je ekvivalentan sliˇnim formalz c izmima kao ˇto su rekurzivne funkcije) je automat sa stanjem. Pored te maˇine postoji NDTM (nedeters ministiˇka Tjuringova maˇina) koja se u odnosu na DTM razlikuje u samo c s jednoj dodatnoj instrukciji choice[S]. 9. s s niti je nad polinomijalan algoritam za njihovo reˇavanje.iskaz je c izvodljiv ako postoje vrednosti promeljivih tako je njegova vrednost .... Skica algoritma za iskaz E(q1 . . c s s s Primer 1 ...izvodljivost logiˇkog iskaza sa promenljivama q1 . ispitivanjem svih s mogu´nosti pokuˇavanjem i greˇkom (.3 klasa NP: nedeterministiˇki polinomijalni problemi c Tjuringova deterministiˇka maˇina (DTM kojom se npr. Primeri: ¯en s – Ceolobrojne (Difoantove) jednaˇine c – Traˇenje ciklusa koji prolazi kroz svaki ˇvor datog grafa samo z c jednom (Hamiltonov problem.

stop. Seminarski rad Primer 2: bojenje mape pomo´u 3 boje . td. qn ) then IZVODLJIV. end repeat. Rn od kojih c su svake dve susedne razliˇite b oje: c boja( R1 ):=c1. else Rmin je region sa najmanjim indeksom za kojeg su boje j1 i j2 raspoloˇive. c Ei = Ei G F • Particija skupa: sliˇno prethodnom. Tako nastaje 2n kopija. .. stop. 1 ≤ i ≤ n: qi := choice[T. primeri su i: • Pokrivanje datog skupa .102 repeat for i. Pored pomenutih. U prvom primeru ako je iskaz dat u normalizovanoj formi i ako se algoritam drugaˇije napiˇe moˇe se dobiti algoritam koji je polinomijalan u odnosu na c s z broj elemanata normalizovane forme.. . repeat for i... 1 ≤ k ≤ n: while postoje regioni koji nisu obojeni if Rk obojiva samo bojom j then boja( Rk ) := j.za datu familiju F podskupova Ei skupa E na´i podfamiliju G td.oblasti su R1 . else NIJE. if E(q1 . P ⊂ NP Neki put je potrebna veoma mala promena parametra algoritma da bi postao P umesto NP (npr. repeat for k.F]. end repeat. ako se u drugom primeru koriste dve umesto tri boje).. su Ei proizvoljni skupovi iz G c i Ej Ek = ∅ za svako j = k (disjunktni) . ako je pri tom svaka klase P onda je problem NP. 1 ≤ i ≤ n: if R1 ˇusedna”Ri then nadji boju za Ri s end repeat.j2]. z boja( Rmin ) := choice[j1. Svaka kopija je DTM..

..Osnove veˇtaˇke inteligencije I s c 103 • Pronalaˇenje klike od k ˇvorova neured z c ¯enog grafa: klika je skup ˇvorova c sa lukom za svaki par. c n ai xi = b i=1 ili uopˇte. cena := cena + cena(luk( vnv . 1} za date cele brojeve ai . ˇto se moˇe znati tek kada sve kopije maˇina vrate USPEH s z s ili postoji neka sa vrednoˇ´u NEUSPEH. // poˇetni ˇvor c c nv := 1. c • Egzistencija Hamiltonovog ciklusa za neured graf ¯en • . repeat while S = ∅ vnv+1 := naslednik(od vnv u S). ¯e z Definicija 9.1 Problem Q je svodljiv na problem R ako za reˇenje s problema s R postoji polinomijalno izraˇunljiva funkcija g td.{ vnv+1 }. yn } celih brojeva na dva podskupa S1 i S2 td. k-klika je klika sa k ˇvorova.. S := S . // broj obid ¯enih ˇvorova c cena := 0. . b td.. yi = yi i∈S1 i∈S2 c ¯eni graf i cenu manju od zadate je • Problem putuju´eg trgovca za ured problem Hamiltonovog ciklusa sa cenom manjom od zadate: v1 :=1. je g(s) reˇenje problema c s Q.n}. reˇavanje Diofantove jednaˇine s s c • Binarno particioniranje skupa S = {y1 . ali za NP to nemora da vaˇi. if nv=n and and cena ≤ b then USPEH stop else NEUSPEH.. S:={2. vnv+1 )).. nv := nv + 1. Za problem komplementaran sc problemu P klase je jasno da je takod P. end repeat. .knapsack”: na´i xi ∈ {0... Ali sam problem optimalnog Hamiltonovog ciklusa nije NP i zapravo je problem komplentaran ovom jer se traˇi da li postoji ciklus cene ve´e z c od zadate.

c z NP-kompletni P NP NP-teˇki s Ostali problemi . teˇko da je c s s s s N P = P . NP-teˇak ne povlaˇi da jeste NP.4 Problem je NP-kompletan akko je NP-teˇak i ako ∈ NP.104 Seminarski rad Piˇe se Q → R. ˇtaviˇe.. s c z s z Definicija 9. z c Teorema 13 Fundamentalna teorema (Cook) SAT problem (zadovoljivost logiˇkog izraza) je NP-teˇak. Ali ne znamo da li z s su polinomijalni i da li postoji deterministiˇko reˇenje za neki od njih. KNF) moˇe se dobiti npr. z Mnogi klasiˇni problemi su NP-teˇki i NP-kompletni. Definicija 9. z ovakvo drvo svodljivosti nekih NP-kompletnih problema: .3 Problem je NP-teˇak akko bilo koji NP problem moˇe biti z z sveden na njega. Definicija 9. Svi NP-kompletni problemi su ekvivalentni u tom smislu da ako jedan moˇe da se reˇi polinomijalno onda mogu i ostali.2 Ako je Q → R i R → Q onda su Q i R ekvivalnentni. td. Znaˇi da ako moˇe da se reˇi R onda moˇe i Q. i uz dokaze gde se izodljivost logiˇkog izraza svodi c neki problem (konjunktivna normalna forma.. c s Svodljivost je tranzitivna.

.knapsack”← · binarno particioniranje · .Osnove veˇtaˇke inteligencije I s c • SAT (← ukazuje na relaciju svodljivosti) ← – k-klika ← ∗ postoji Hamiltonov ciklus ← Hamiltonov ciklus ∗ pokrivanje ← . ve´ina ostalih z c c zato se i tiˇe oblasti VI. Sam problem prepoznavanja nekog od klasiˇnih c c (poznatih) dobrih problema i njihovo prevod ¯enje u oblik koji je upotrebljiv za direktnu primenu poznatog algoritma je sam po sebi nepolinomijalan problem ! . 105 c – 3-SAT (sa taˇno 3 literala po klauzuli) ← bojenje ← particioniranje – izvodljivost sistema celobrojnih nejednaˇina c Na kraju... malo je problema za koje se moˇe re´i da su dobri.

¯u c Uopˇteni postupak za reˇavanje jeste: s s 1. gradus = korak). pred na 1 4.106 Seminarski rad 10 Reˇavanje problema propagiranjem i nabras janjem Ovo poglavlje se bavi detaljnije metodama nabrajanja pomentim na poˇetku c prethodnog.1 Gradijent metode Metode poznate i kao . s ne razlikuje globalne od lokalnih ekstrema. za svaki problem se nalazi funkcija ˇiji se ekstrem traˇi tako ˇto se za c z s svaku iteraciju pribliˇava ekstremu. proveri K(x0 ) ¯i 3. x0 je jedno reˇenje. Jedan primer je simpleks algoritam i neke njegove c varijante. postoje modifikacije i primeri numeriˇkih algoritama). 10. Definicija 10. c c efikasnost je ista kao kod pretrage stabla u dubinu. isprobavaju z sve dostupne putanje redom. zahteva z c pre svega da slika oblasti u kojoj se reˇava bude konveksna (inaˇe ne garans c tuje reˇenje.1 Kombinatorni problem je problem oblika: na´i element x ∈ c X td. pred na 1 ako su potrebna sva reˇenja s ¯i s Primer: Pronalaˇenje izlaska iz lavirinta (x0 je trenutno polje. Generalna strategija za prethodni problem u okviru ove metode je da se pronad uz neke mofikacije globalni optimum na osnovu lokalnih optimuma ¯e te ovo moˇe biti dobro ˇak i ako prostor pretrage nije povezan. ako nije zadovoljen neki uslov. vaˇi skup uslova K(x) gde je X konaˇan i diskretan (postoji konaˇna z c c separacija izmed svake dva para taˇaka tj. z c .hill-climbing” (gradijent je varijacija. izaberi prvu x0 ∈ X koja nije razmatrana 2... neophodna je heuristika pretrage. Prednosti ovog metoda: smanjuje se broj ˇvorova koje treba obi´i. ako se iscrpu reˇenja back-tracking na neko s ranije gde nije). ne pamti prethodne korake i ne snalazi se sa . Nedostaci ovog metoda: laˇni vrhovi u kojima ´e do´i do povratka.preprekama” tj. Metoda ima svoja ograniˇenja. a i z c c reˇenje ne mora biti pronad s ¯eno iako postoji. skup je diskontinualan).

[JL]: 1. V ) minimalne ukupne teˇine (drvo nema ciklusa i z za n temena ima n − 1 luk). na´i c z c ∗ parcijalno drvo A = (X.Osnove veˇtaˇke inteligencije I s c 107 10. vod gradijent metodom c c ¯en kao izborom. gradijent je koeficijent u pivotiranoj matrici takvog sistema) poˇevˇi od trivijalnog reˇenja za x = 0 td. c 10. Kruskal je predloˇio metodu gradijenta (ovaj z algoritam se zove joˇ i . z V:= ∅. m] kojima odgovara kvadratna matrica B ranga n dobijena od A. x ∈ Rn . Svaka taˇka poliedra je linearna kombinacija svojih temena (ekstremnih c taˇaka). Onda je optimum dostignut samo kao reˇenje baze. c z fiksiraju se dostignuti maksimumi. je s s B · xB + N · xN = b.3 Gradijent metoda u teoriji grafova Ako je G = (X. Optimum nije unutar poliedra jer se moˇe konstruisati taˇka na povrˇini z c s linearnim kombinacijama (preformuliˇe se sistem dodatnim pomo´nim s c promenljivama za nejednaˇine po kojima se onda isto traˇi maksimum. A se particioniˇe u dve podmatrice A i N td. na´i Z = max(c x). Baza od A je podksup pljosni [1. je Z c s s uve´ano. U ) oznaˇen graf teˇinama (svakom luku dodeljena).. koje su presek m hiperravni dobijenih iz m jednaˇina . Broj temena je konaˇan pa algoritam konvergira. bazno reˇenje definisano sa xN = 0 se nalazi s reˇavanjem (Kramer) B · xB = b. while ima lukova koji nisu razmotreni . Algoritam pretraˇuje samo ostvarive baze xB ≥ 0 ˇetaju´i od temena do z s c temena (jedna promenljiva sa vrednoˇ´u 0 se zamenjuje drugom da bi se sc dobila vrednost razliˇita od 0 ako je mogu´e). Simpleks algoric tam.pohlepni”): s uredi lukove po teˇini. s 5. Ako problem nije degenerisan rang(A) = m onda je mogu´e c c ivicom povrˇine sti´i tako do najbliˇeg temena s c z 4. · · · .2 Linearno programiranje Problemi oblika A x ≤ b. Presek viˇe nejednaˇina tog oblika daje poliedar (ograniˇen ili ne) s c c 2.temena c c   n n onda ima m u R 3.

a) je cena od stanja S1 do S2 akcijom a). 3 i c 5 se koristi obiˇno funkcija kojom se evaluira stanje.kraj. s c z Kod ovakvih algoritama se obiˇno vode dve liste ˇvorova . Funkcija f (S) ima numeriˇku vrednost u ovom algoritmu td. f (S) = g(S) + h(S) gde je g(S) c poznata cena u postizanju stanja S (c(S1 . Izaberi neku akciju iz skupa mogu´ih c 2. inaˇe ponovo 1. Raphael. 10. Tako se moˇe prethodni c z Kruskalov algoritam modifikovati i poboljˇati: uvek se bira luk najmanje s teˇine med raspoloˇivim. Ako je S0 poˇetno stanje i S situacija u nizu kao c posledica akcija algoritma. Odbaci neˇeljena stanja z 5. nema potrebe sortirati lukove. cilj je dosti´i odred c ¯eno stanje.5 A∗ algoritam Poboljˇanje gradijent metode u smislu navedenih nedostataka (Hart. c z npr. Izvrˇi je promenivˇi trenutno stanje s s 3. end. Nilss son.jedna za ve´ c c c obid ¯ene ˇvorove (zatvorene) i one koje su raspoloˇivi za pretragu (otvorene. c 10. U koracima 1.4 Heuristiˇko pretraˇivanje c z Jedna uopˇtena klasa problema se moˇe reˇavati na slede´i naˇin: s z s c c 1. Ako je g ∗ (S) najmanja cena dostizanja situacije S z c s od poˇetne S0 onda je f ∗ (S) = g ∗ (S) + h∗ (S) reˇenje najmanje cene koje c s . S2 . Ako je h∗ (S) minic mum cene za proizvoljan put od situacije S do reˇenja. Ako je dostignut cilj . 1968-1972). a h(S) heuristiˇka funkcija koja procenjuje cenu dostizanja reˇenja c s iz S najboljim (optimalno) mogu´im redosledom akcija. Evaluiraj novo stanje 4. onda je h(S) donja s granica: 0 < h(S) ≤ h∗ (S) (obiˇno se koristi najbolja procena h jer se retko c moˇe izraˇunati baˇ h∗ ). c Simpleks algoritam je primer heurstiˇke gradijent metode. i ako se naid na z ¯u z ¯e ciklus u V nakon dodavanja se obriˇe luk najve´e teˇine u V.108 Seminarski rad if prvi od ovih ne formira ciklus sa V then dodaj ga u V. poˇetni).

Poˇto je h(S) z s ∗ ∗ nenegativna. h(Si ) ≤ h∗ (Si ) c Korak 4: u O stavi sve Si koji nisu ni u O ni u C. O ← S0 (particija otvorena za pretraˇivanje). ˇto protivreˇi pretpostavci da s c je f neograniˇena. i odatle konaˇno: f (S2 ) ≤ g (S2 ) + h (S2 ) = f (S2 ). je S2 ∈ O. gde je k neka konstanta. a za one koji jesu: f (Si )novo ← min[f (Si )staro . Ako je v ∗ (S) broj akcija od S0 do s c c S (ne mora uopˇte da se poklapa sa A∗ putanjom). je f (S) minimum O ← O − S. A∗ ne konvergira ˇto je mogu´e samo akko O raste beskonaˇno. vaˇi: g(S) ≥ G(S) > kv (S). O ← O + Si opet Moˇe se pokazati da algoritam uvek nalazi reˇenje ako postoji konaˇan niz z s c akcija koji vodi od poˇetnog stanja ka reˇenju: c s Teorema 14 Algoritam A∗ se zavrˇava ako postoji konaˇan niz akcija od s c poˇetne situacije S0 do reˇenja. i onda na osnovu definis cije g ∗ vaˇi: g(S) ≥ g ∗ (S) > kv ∗ (S). neka je S2 (mora postojati ako A nije konvergirao) prva situacija td. Ako je c niz akcija optimalan. f (Si )novo ] ako je Si u C onda C ← C − Si . c s Trivijalna posledica: ako je skup akcija konaˇan kao i broj mogu´ih situacija. onda je f (S2 ) ≤ f ∗ (S0 ). a f (S) je njegova procena i donja granica.Osnove veˇtaˇke inteligencije I s c prolazi kroz S. A∗ algoritam: 109 Korak 0: konstruiˇi graf R = (E. A) (lukovi su akcije). C ← C + S ako je S reˇenje stani. z C ← ∅ (particija zatvorena za pretraˇivanje) z dok je O = ∅ ponavljaj Korak 1: izaberi S ∈ O td. 0 ≤ i ≤ nS redom iz akcija ∈ S s c Korak 3: za svako ovo i raˇunaj f (Si )novo = g(Si )+h(Si ) td. c . vaˇi g(S2 ) = g ∗ (S2 ). pa ako je v neograniˇena onda je z c ∗ i f (S) (A ne konvergira). c s c c ˇto znaˇi da je vrednost f (S) neograniˇena. Po konstrukciji A∗ vaˇi z z ∗ ∗ ∗ ∗ h(S2 ) ≤ h (S2 ). s f (S0 ) ← O. Moˇe se ipak pokazati da tokom izvrˇavanja A∗ z s uvek postoji situacija S2 takva da je f (S2 ) ≤ f ∗ (S0 ): ako postoji konaˇan c ∗ niz akcija od S0 do cilja. c c ∗ onda A na osnovu ovoga konvergira. Poˇto je f (S2 ) = g(S2 ) + h(S2 ) i po definis ciji situacije pre S2 su u C. Dokaz (reductio ad absurdum): graf nije konaˇan. inaˇe: s c Korak 2: razvij S konstruiˇu´i stanja Si .

td. z c 10. je z z ispunjeno K(x) i uopˇtiti ako se posmatra svaki element iz x kao neki izbor s datih mogu´nosti. mada se moˇe vrednost α menjati i dinamiˇki. Na poˇetku su sve pozicije u vektoru dozvolc jene (slobodne) pa je L1 = L2 = L3 = L4 = (0. prvo poboljˇanje je da se umesto vektora brojaˇa kos c risti vektor vektora odnosno matrica . 0) Ako izaberemo y1 =1: L1 L2 L3 L4 = (1. N } nekakav i=1 skup izbora. 0.6 Implicitno nabrajanje propagiranjem uslova Ovo se moˇe objasniti kroz primer problema rasporeda dama na ˇahovskom z s polju N × N td. kao z c i uopˇtenje (koje je predloˇio Pohl.. Varijanta algoritma kada su teˇine sortirane je algoriz tam za pronalaˇenje najkra´e putanje kroz graf (Moore-Dijkstra. α = 1 gradijent metoda (α = 0 . · · · . 0. Pomenutim metodom nabrajanja se mogu pamtiti izbori u nekom vektoru brojaˇa kojima se pravi backtracking i c proverava uslov K(x) ali se ne postavlja zauzetost polja na osnovu izbora za naredne izbore. onda se ovaj problem moˇe prikazati kao traˇenje x ∈ X td. 1. 1. 1970): f (S) = (1− α)g(S)+ αh(S). 0.110 Seminarski rad Najve´a mana algoritma je njegovo ponaˇanje kada nema reˇenja. Postoje dva poboljˇanja s s ovakvog algoritma za problem dama koja se svode na poboljˇavanje provere s uslova i izbora obilaska drveta pretrage. 0. g(S) = broj koraka od S0 do S. nijedna figura ne napada drugu (i da je u u svakom redu po jedna).. 1957).primer: slagalica z c s 3 × 3. h(S) = broj elemenata koji nisu na pravom mestu.verzija 1 (posmatramo tablu 4x4): Neka yk oznaˇava koju smo poziciju izabrali za damu. Ako se pretpostavi da je X = N Yi gde je Yi = {1.zauzetosti” polja (elementi su indeksi izbora ili 0 ako je polje ostalo slobodno). i tre´e. 1) = (1. da se na kraju pravi izbor c redosleda redova (najpre oni koji imaju manje slobodnih polja). 0. 1. Prec s s traˇe se sva stanja da bi se zakljuˇilo da nema reˇenja . 1) = (1. 0. 1. 1) = (1. zato.British Museum”). a Lk je vektor u koji c zapisujemo zabranjene pozicije. 1) . Reˇavanje ovog problema pretraˇivanjem redom po drvetu c s z mogu’´nosti izbora iz reda u red (u dubinu) je onda algoritam implicitnog c nabrajanja (uopˇtenog kombinatornog karaktera). Primer . je s z 1 ∗ onda α = 2 zapravo A -algoritam.

verzija 2: Osnovna razlika izmedju prve i druge verzije je da je shema izvod ¯enja testiranja promenjena tako ˇto se posle svakog uˇinjenog izbora uzima u obzir s c ono ˇto taj izbor povlaˇi. 1) L4 = (1. Izaberimo u drugoj vrsti ˇetvro polje c L2 = (1. c s c . te poˇto je to drugi c s izbor po redu obeleˇimo ga sa 2. 2. 1. 2) L3 = (1. polja z L2 = (1. c c c Problem osam kraljica . Slede´e polje koje bic ramo neka bude na poziciji druge vrste i tre´e kolone. 2) L3 = (1.Osnove veˇtaˇke inteligencije I s c 111 Znaˇi ako smo izabrali da je dama na prvoj poziciji. 2. onda su sva polja u c prvoj vrsti. Sva polja koja su slobodna postaju zabranjena s c i zapisana u vektor slobodnih zajedno sa brojem izbora (biramo slobodno polje koje nam omogu´ava viˇe nezabranjenih polja u slede´em koraku). 1. 1. 2. 0. 0. 1) L4 = (1. 2. 1) Ovo nam omogu´ava izbor u tre´oj i ˇetvrtoj vrsti. 0. 1) Vidimo da nam u tre´oj vrsti ne ostaje nijedno dozvoljeno polje pa vrˇimo c s bektrek. 1. prvoj koloni i po dijagonali zabranjena. 0. Zabranjena su sl.

npr.). Optimalno reˇenje zavisi od izbora potproblema kao zbira ali ne s i od pojedinih njegovih vrednosti. c s Osnovna ideja je traˇenje optimalnog reˇenja problema upotrebom optimalz s nih reˇenja potproblema. knapsack. ekonomije. ¯e a i mnogi drugi problemi se mogu reˇavati ovom metodom (npr. postoje funkcije g. primeri nad diskretnim skupovima): 10. i na kraju ukupno optimalno reˇenje tj.7 Dinamiˇko programiranje c Dinamiˇko programiranje je metod za reˇavanje problema optimizacije. Reˇavanje se obiˇno odvija u koracima ili fazama s s c i svakom takvom koraku postoji odred broj mogu´nih izbora: ako dva ra¯en c zliˇita niza odluka daju reˇenje. zbir s (minumum). v. ako je data tabela cene proizvodnje 0-4 artikla (kolone) u toku tri meseca za svaki mesec posebno (vrste). h(u. Obiˇno c s c c c se zadaje funkcija ˇija se ekstremna vrednost traˇi pod nekim dodatnim c z uslovima . z z Definicija 10. Za svaki broj artikala u tre´em mesecu s c se nalazi optimalan (minimalan) zbir preostalog broja artikala u prva dva meseca ukupno (potproblem).112 L1 L2 L3 L4 1 1 1 1 1 1 2 1 2 1 2 1 2 2 1 L1 1 L2 1 L3 1 L4 1 1 1 3 2 1 1 1 3 1 2 2 1 Seminarski rad L1 L2 L3 L4 1 1 1 1 1 1 3 3 1 1 1 1 1 1 2 4 1 2 1 2 Primer je i dinamiˇko programiranje (opˇtije od linearnog programiranja c s . Linearno programiranje je takod primer.ako se funkcija dekomponuje na kompoziciju funkcija od kojih je prva monotono nerastu´a onda se problem svodi na potproblem optimizacije druge c funkcije. v. w moˇe se dekomponovati ako 1. v. itd. h tako da f moˇe biti napisana kao kompozicija: z ∀(u. w)f (u. w)) . cilj je proizvesti (bar) 4 artikla za 3 meseca po ˇto manjoj ceni. samo ´e bolje od njh biti ˇuvano.2 Funkcija f tri realne promenljive u. w) = g(u. s brojni primeri iz operacionih istraˇivanja.

0) zadate teˇine lukova) reda O(n3 ). raspored ljudi na sastanku uz pravila ko sme pored koga da sedi. w takvu da ju je mogu´e dekomponovati f (u. j. v. funkcija g je monotono neopadaju´a c 113 Za dinamiˇko programiranje znaˇajna je slede´a teorema (koja se moˇe uopˇtiti c c c z s na proizvoljan broj promenljivih i potfunkcija): Teorema 15 Za svaku realnu funkciju realnih promenljivih u. c c i sa [1. Med c ¯utim. Obiˇno se formiraju velike (memo) tabele sa svim prethodnim rezultac tima koji bi mogli biti od znaˇaja u narednim iteracijama. j. k. w)) vaˇi: c z optu.q] skup prvih q brojeva koji predstavljaju boje. w)])] Znaˇaj dinamiˇkog programiranja ogleda se u slede´em: c c c Svaka podstrategija optimalne strategije mora i sama biti optimalna.v.w [f (u. k) = min(p(i.w [h(v. j) ∈ U . za mape na povrˇi postoji kombis natoran dokaz da je taj broj 4. sa S skup ˇvorova grafa. k − 1). Appel i Haken 1976. v. bojenje ˇvorova grafa: potrebno je najpre odrediti najmanji c broj razliˇitih boja potrebnih za bojanje mape tako da drˇave koje se graniˇe c z c ne budu obojene istom bojom (hromatski broj grafa je minimalan broj boja potreban da bi se graf obojio . q] tako da za sve (i. v.specijalno. Moˇemo postupiti kao i kod problema osam dama: obojimo prvi ˇvor i z c on dalje name´e pravila igre dok ne obojimo celu mapu. h(v. Dinamiˇko programiranje je c efikasno kada se moˇe svesti na nekoliko manjih. a primer je i Floyd-Warshall-ov s algoritam najkra´e putanje ured c ¯enog grafa (zasnovan na rekurzivnoj relaciji p(i. Problem je orc ganizovati izraˇunavanje tabele na najefikasniji naˇin i ˇesto se javlja probc c c lem kombinatorne eksplozije njenih vrednosti.j). postoji . p(i. ali ne sasvim malih nezaz visnih potproblema. k − 1) + p(k. Problemi bojenja grafa i trgovaˇkog putnika (traveling c salesman) se mogu reˇiti ovom metodom.Osnove veˇtaˇke inteligencije I s c 2.). w) = g(u. ili npr. optv. w)] = optu [g(u. Oznaˇimo sa γ(G) broj boja. j. boja(i) = boja(j) c i q je minimalno. U skup grana (i. z Na primer. j. Zadatak glasi: Prona´i funkciju boje: S −→ [1. k − 1)) gde su p(i.

Cak nudi ve´ neko ograniˇenje. redukcija c na pokrivaˇ grana). s Polazimo od ˇvora sa najve´im stepenom (koji ima najviˇe neobojenih c c s susednih ˇvorova.114 Seminarski rad razlika u naˇinu optimizacije . Znaju´i rastojanja izmed gradova treba da pronad c c ¯u ¯emo put kojim trgovaˇki putnik treba da putuje kako bi ponudio svoje proizvode proc laze´i kroz svaki grad samo jednom i prave´i tako minimalan put. Poseban (lakˇi) sluˇaj su Euklidski grafovi (rastojanja c s c poˇtuju nejednakost trougla.rezulc tat je ili obojen graf ili ˇinjenica da se nemoˇe obojiti zadatim brojem boja c z (. traˇenje maksimalne klike moˇe biti sam po sebi zahtevan z z problem) grafa koji predstavlja mapu koji daje praktiˇno donje ograniˇenje c c ˇ i klika koja nije maksimalna ali dovoljno velika potrebnog broja boja.. problem glasi: za zadati teˇinski graf G (svakom luku je doz deljen broj) ustanoviti da li u G postoji Hamiltonov put manji od zadate cene a zatim i najmanje mogu´e cene (problem je NP-kompletan.u ovom sluˇaju se zaustavljamo pre ˇto nego c c s iscrpimo sve mogu´nosti. ali efikasnije je po´i od donje granice c i uve´avati broj boja.pohlepni” algoritam). c c Grafovski. c c Na ovo se oslanja naredni primer problema putuju´eg trgovca (najˇuveniji c c problem operacionih istraˇivanja): trgovaˇki putnik mora da obid n razliz c ¯e ˇitih gradova. efikasnosti radi) i bojimo njemu susedne ˇvorove (analogno c c opet problemu rasporeda dama na tabli) uz ograniˇenja i backtracking . Drugi korak je traˇenje optimalnog reˇenja. ˇim smo u mogu´nosti da pokaˇemo da ne posc c c z toji bolje reˇenje. z . Gornje z s ograniˇenje moˇe biti (u najgorem) broj ˇvorova. 1975). Minimalan broj boja potreban za bojenje date mape c je donekle dualan problemu kardinalnosti najve´e klike (klika je potpuno c povezan podgraf. dok se uz upotrebnu pomenutih metoda optimizacije dostiˇe O(2n ). Iterativno se smanjuje broj c z c boja dok se ne utvrdi minimalan broj. Christofides. tj. Hamiltonov ciklus kome se izbaci ˇvor onda s c nemoˇe biti duˇi). Grubom silom (kombinatorno) probc c lem je reda O(n!). a zatim se traˇi optimalno reˇenje z s naˇelan postupak sliˇan prethodnom. Problem se reˇava najpre traˇenjem proizvoljnog reˇenja kao c s z s gornje granice (npr. ali u opˇtem sluˇaju rastojanja mogu biti ˇak i negativna z z s c c i asimetriˇna.

GPS traˇi jedan c c c z ili viˇe podciljeva dok ili ciljni objekat ne bude dostignut ili dok ne dod s ¯emo do objekta koji je napuˇten a koji joˇ moˇe biti razvijen. U GPS pokuˇajima izbori se s c s prave pomo´u tabele konekcija za redukovanje razlika izmedju objekata. i traˇenje razlike i operatora koji c z je smanjuje izmed dva data objekta.y) prona´i operator O koji ´e redukovati neke razlike iz ∆ c c izmedju x i y 3. slagalica do PR1 dokazivanja i gramatiˇke analize.x.majmun i banane”.∆.Osnove veˇtaˇke inteligencije I s c 115 10.uopˇteni reˇavaˇ problema .y) transformacija objekta x u y Svi problemi imaju na poˇetku cilj: T(objekat(poˇetni).8 GPS . c Primer operacija za ovaj problem: O1 veranje :uslov loc(M)=loc(C) . Majmun moˇe do´i c z c do banana samo ako kutija stoji ispod banana i ako se majmun na nju popne. od simboliˇke s s s c integracije. objekat(zavrˇni)) c c s Polaze´i od poˇetnog objekta. pri ˇemu potreba redukovanja neˇeljenih ¯u c z razlika generiˇe novi cilj na prirodan naˇin. GPS je u boljoj poziciji od ljudskog reˇavaoca zato ˇto postoji lista operacija upotrebljivih za s s taj problem. a unapredili su ga Ernst i Newel 1957. Reˇenje zahteva niz koraka. skup operatora. T(x.ime je ˇuvenog programa kojeg su s s c c razvili Newel... Vrednost ovog primera je da s s pokaˇe u potpunosti detalje kako svakodnevno rezonovanje moˇe zahtevati niz z z elementarnih akcija. c c s GPS ima tri cilja: 1. a grana banana je zakaˇena za plafon. Primer za ovakovo s s z reˇavanje je dao JohnMcCourty 1963. Svaki problem stavljen u GPS ima ¯u oblik : inicijalni objekat. A(O.General Problem Solver GPS . koriste´i opisane metode. . operatori koji s omogu´avaju transformacije nad objektom. ciljni objekat. F(O. Pretraga je vod ¯ena pomo´u koncepta razlike c izmed objekata prostora pretrage. Shaw i Simon 1950. dok se ˇovek svega mora setiti ili ˇak izmisliti u toku reˇavanja.x) primeniti operator O na objekat x 2. Zamiˇljen je kao uopˇteni sistem VI za reˇavanje problema. i to jednim c uopˇtenim postupkom u kome se inicijalni objekti i ciljevi. Cilj se dostiˇe mehanizmom koji je ekstremno jednosz tavan i lak za implementaciju. Problem je trivijalan za ˇoveka ˇto ne vaˇi za opisivanje ponaˇanja GPS-a u c s z s reˇavanju zahteva. Na podu sobe su s majmun i kutija.

ALICE (A z s s Language for Intelligent Combinatorial Exploration). npr. netrivijalnih problema. sistem nije upotrebljiv za iole sloˇenije probleme i ˇesto je doz c voljno teˇko formulisati problem i predstaviti ga u GPS-u. i Quirilan 1969. zasnovan na strategiji identifikos c vanja razlika izmedju objekata i redukovanju tih razlika. Ovu ideju je dalje razradjivao Slagle 1963. Med ¯utim.116 akcija :uslov akcija pokret: uslov setnja loc(M)=on(C) x je lokacija loc(M)=x x je lokacija loc(M)!=on(C) loc(M)=loc(C) loc(M)=x loc(C)=x loc(C)=ispod(B) loc(M)=na(C) sadrzaj(rukeM)=B Seminarski rad O2 O3 akcija O4 uslov akcija Zakljuˇak: GPS pokazuje da je mogu´e imati jedan uniforman sistem za c c reˇavanje razliˇitih. . s Postoje i druga okruˇenja za uopˇteno reˇanje problema.

veoma lako dolazi do c kombinatorne eksplozije (otvaranje poˇine sa izborom od oko 20 mogu´ih c c poteza. Osnovni metod je ograniˇavanje drveta pretraˇivanja ili po c z ˇirini ili po dubini. Dobar primer je ˇah. i ˇto je ve´a vrednost to je prednost izraˇenija.proseˇna s s c c partija traje oko 40 poteza a ve´ je 4012 za pretraˇivanje dubine 12 poteza c z reda veliˇine broja sekundi starosti sunˇevog sistema).dokle god ima vremena”. na c ˇahovskoj tabli). Potrebno je voditi raˇuna o tome da neki put presecanje ne pokaˇe c z veoma loˇ ili dobar ishod u slede´em koraku pa se proverava da li je pretraga s c donela . Po ˇirini se mogu odbacivati grane npr. ˇto do srediˇnjice narasta do reda 40-50 mogu´ih poteza . uz to da se moˇe pove´avati iterativno z c dubina i drvo pretrage) i oni koji ga pretraˇuju nivo po nivo (breadth-first) z nisu ipak dovoljno efikasni za mnoge probleme. Stanje u z s drvetu pretrage moˇe biti pozicija u igri.1 Programi . Ako je njena vrednost negativno onda je protivnik u preds nosti (i obratno). psihologija reˇavanja probs lema Drvo pretraˇivanja (drvo ispravnih poteza) z U igri u kojoj uˇestvuje viˇe igraˇa svaki uˇesnik se trudi da predvidi c s c c mogu´e poteze ostalih do izvesne dubine i da izabere najpovoljniji potez koji c bi ga doveo do pobede. To je. biti i ˇvor I . pozicija i vrsta figura kao i drugih bitnih eleme- .. ali i napraviti poboljˇanja algoritma kojima se ublaˇava s z eksponencijalnu eksploziju algoritama koji igraju ovakve i neke druge igre u realnom vremenu. Ako se kao skupovi izbora s u algoritmu nabrajanja izaberu mogu´i potezi u igri. ako se pouzdano s s oceni da ne donose bitnu prednost ili su potpuno nebitne.2 Evaluacija pozicije Osnovni naˇin da se utvrdi koliko je stanje u drvetu pretrage dobro za c igraˇa je ocena funkcijom evaluacije pozicije F (S) (gde je S stanje npr. ali moˇe npr. ali nude mogu´nost postupnog c pretraˇivanja i poboljˇavanja pretrage . nars c z avno.igre. vrednost koja ne moˇe biti apsoltno taˇna ve´ je posledica praktiˇnih z c c c vrednosti i osobina igre.Osnove veˇtaˇke inteligencije I s c 117 11 11. Veliki izazov zato c c predstavlja igrati. Uopˇte.stabilne” rezultate.. algoritmi pretraˇivanja koji prate stablo s z pretrage do zadate dubine (depth-first i varijanta koja prvo bira po nekom kriterijumu najbolju granu: best-first. Po dubini se moˇe skratiti pretraga ako se zna da preko zadate dubine nije u realnom z vremenu. 11.ILI z z c drveta.

118

Seminarski rad

nata (parametri koji je odred ¯uju osim argumenta se takod mogu dinamiˇki ¯e c menjati). Primer: F (s) = aB + bR + cM + dC + eP + f A =
i

wi fi (s)

gde su R, M, C, P, A mere koje se odnose na karakteristike u opadaju´em c redosledu vaˇenja: z • R - relativna sigurnost kralja • M - mobilnost figure; broj polja koje svaka figura mozˇe napustiti z • C - kontrola centra • P - struktura pijuna - pozitivan doprinos dolazi od zaˇti´enih pijuna, s c pijuna koji napreduju i isto iz neprijateljskih, izolovanih i nezaˇti´enih s c pijuna • A - mera relativne mogu´nosti napada c Sve ovo zahteva veliko strpljenje i istrajnost u odred ¯ivanju odgovaraju´ih c koeficijenata koji se ˇak i u toku igre mogu promeniti. Ovaj oblik funkcije c moˇe dati i ˇrtvovane poteze - to su potezi za koje ´e vrednost za B biti z z c negativna, iako ´e teˇina cele sume biti pozitivna. c z

11.3

MINIMAX izbor i algoritam, alfa-beta algoritam

Ako se tako pretpostavi da oba igraˇa koriste istu funkciju evaluacije c (Neumann, Morgenstern) onda je jednom bitno da maksimizuje njenu vrednost a drugom da je minimuzuje u toku pretrage. Ako je na prvom i ostalim koracima (nivoima drveta) pretrage cilj na´i maksimalnu vrednost, onda se c za pretragu zadate dubine traˇi maksimalna ili minimalna vrednost funkcije z listova koja se propagira na pozicije iznad sve do polazne pozicije gde se konaˇno bira najve´a (uz pretpostavku da protivnik isto radi pa se zato u c c neparnim koracim traˇi minimalna vrednost). z Ovo je MINIMAX algoritam (primer - ˇah): s

Osnove veˇtaˇke inteligencije I s c

119

MINIMAX(tabla) dubina ← 1; strana ← 1; E(1) ← potezi(tabla,strana); eval(1) ← −∞; repeat while E ≥ 1 repeat while E(dubina) = ∅ potez(dubina) ← sa_liste(E(dubina)); tabla ← uradi(tabla,potez(dubina)); if dubina = maksimalna onda dubina ← dubina+1; strana ← -strana; E(dubina) ← potezi(tabla,strana); else eval(dubina) ← MAX[eval(dubina)*strana,valuacija(tabla)]; tabla ← vrati(tabla,potez(dubina-1); end if; end repeat; [sledi backtracking] if dubina = 1 then MINIMAX ← eval(1) end if; strana ← -strana; dubina ← dubina-1; potez(dubina) ← sa_liste(E(dubina)); tabla ← vrati(tabla,potez(dubina)); eval(dubina) ← MAX(eval(dubina),-eval(dubina+1)); end repeat; end MINIMAX;

Ukratko: potezi generiˇe listu poteza koje igraˇ moˇe (na tom nivou) da s c z napravi, sa_liste skida vrednost sa liste kao steka, uradi menja tablu prema potezu a vrati suprotno.

max(min(−20, 11), min(−8, 7)) = max(−20, 8) = 8

120

Seminarski rad

Mnogo je ˇitljiviji (i poznatiji) rekurzivni oblik ovog algoritma, gde se pretc postavlja da prvi igraˇ vuˇe MAX poteze a drugi MIN poteze (ˇto je odred c c s ¯ivala promenljiva strana u prethodnom algoritmu), i u je ˇvor pretrage za koji se c traˇi MINIMAX ocena pozicije (trenutno stanje): z

minimax(u) if jeste_list(u) then valuacija(u); else if jeste_max_potez(u) then za_naredne_poteze(v1,...,vn); return max(minimax(v1),...,minimax(vn)); else za_naredne_poteze(v1,...,vn); return min(minimax(v1),...,minimax(vn)); end if; end if; end minimax;

11.4

α-β kresanje (odsecanje)

Postoji poboljˇanje ovog algoritma tzv. alfa-beta algoritam (McCarthy, s 1961). Pod odred ¯enim uslovima se mogu ,,kresati” (prune) ˇitave grane c drveta pretrage. Ako je s budu´a minimax vrednost poˇetne pozicije, α c c vrednost podgrane ispod nje (dobijena punom pretragom do zadate dubine), y budu´a vrednost naredne podgrane koja ima svoju podgranu s vrednoˇ´u z c sc (takod dobijene punom pretragom) tako da je z ≤ α onda se moˇe odustati ¯e z od dalje pretrage ,,ispod” y jer je (po pretpostavci i minimax osobinama) y ≤ z ≤ α ≤ s - alfa kresanje. Isto tako se i za protivniˇke poteze radi beta c kresanje. Takod ako se na ve´oj dubini iste parnosti naid na izraˇunatu ¯e, c ¯e c poziciju z ≤ α moˇe se analogno prema njoj primeniti alfa kresanje. z

alpha.Osnove veˇtaˇke inteligencije I s c 121 max(min(10. // beta-kresanje . else loop naredni_potez(v) do val := evalmax(v. return z.beta) z := alpha.+infty).beta) z := beta. evalmin(u. x)) = max(5. if z >= beta then exit loop. end alphabeta. min(3.val). end if.alpha. evalmax(u. else return evalmin(u. if jeste_list(u) then return valuacija(u).z). if jeste_list(u) then return valuacija(u). else loop naredni_potez(v) do val := evalmin(v. z := max(z. x) = 5.-infty.-infty. end if.alfa.z.beta).+infty). end loop. x≥3 x<3 Primer rekurzivnog alfa-beta algoritma uz ˇuvanje dubinskog kresanja: c alphabeta(u) if jeste_max_potez(u) then return evalmax(u. 5). end evalmax.

Kratkotrajna memorija je upc ravo vezana direktno (brˇe. Seminarski rad // alfa-kresanje Osnovni nedostaci ovih algoritama su: nedostatak sagledavanja opˇte strates gije igranja (modifikacije sa otvaranjem i zavrˇnicama ne reˇavaju problem s s suˇtinski). c 11. end evalmin. .spoljni svet.pokazano je da ta kratkotrajna memorija moˇe da sadrˇi 7 ± 2 osnovna objekta pam´enja (. z z c Med ¯utim sama obrada velike koliˇine podataka je daleko sloˇenija od prosc z tog izvrˇavanja programa ili algoritma.. dok komunikacija kratkotrajne i trajnije memorije traˇi c z dodatno vreme. Tako je odavno poznato da procesi razmiˇljanja i zac s kljuˇivanja zavise od memorije. end loop. i uvek se . Psiholozi (Alfred Binet. Igranje ˇaha i igranje uopˇte su posluˇili kao dobar model za s s z ovakva prouˇavanja. a VI danas nudi sredstva kojima se mogu ovakvi modeli c prouˇavati. end if.6 Teorija igara Teorija igara se definiˇe kao disciplina koja se bavi pronalaˇenjem optis z malnog reˇenja u uslovima konflikta (konflikt je skup uslova kojim se ograniˇava s c . return z. z 11.val).122 z := min(z...horizonta” (program ne vidi pozicije van dubine s pretraˇivanja.trudi” da izbegne neugodne pozicije koje su u z dometu pretraˇivanja)..Otto s Seiz. Mozak koristi kratkos trajnu i dugotrajnu memoriju . if z <= alpha then exit loop.operandi” instrukcije). 1920) su davno uspostavili model ljudskog razmiˇljanja i reˇavanja probs s lema kao linearnog niza osnovnih operacija (kao deo psihiˇkih procesa koji c se odvijaju u ˇoveku). 1894 . mnogi se procesi odvijaju paralelno. kao i problem . ali i percepcije..5 Psiholoˇka izuˇavanja reˇavanja problema i igranja s c s Raˇunari danas raspolaˇu velikom koliˇinom memorije i brzo procesiraju c z c podatke i mogu efikasnije to da rade od mozga u domenu nekih specifiˇnih c primena ali i dalje je to daleko od .nesvesno”) z za ˇula .hardvera” sa nekih 100 milijardi neurona (od koji svaki nosi sigurno viˇe od jednog bita).

potezi se igraju naizmeniˇno. Dalje. Ki . Ki = Kd su beskoalicione. S.kada svaka koalicija izabere strategiju. gde se onda posmatra jednostavnija struktura Γ = (I. {SK }K∈Kd . { gde su komponente: • Kd skup koalicija dejstva: ako je skup igraˇa K. Igre se u odnosu c na ovu strukturu dalje mogu klasifikovati . S.u smislu teorije igara to su razliˇiti interesi s c igraˇa). {Si }i∈I .interesantne su igre |Ki | > 1 (za |Ki | = 1 se svodi na klasiˇan ekstremalni problem). antagonistiˇka igra ima c c |I| = 2 i (∀s ∈ S)H1 (s) = −H2 (s). pozicione igre (kakav je i ˇah). a med njima moe c c ¯u biti i sluˇajnih c • mogu´e je da igraˇima nisu poznate sve informacije u vezi partije c c • funkcija dobitka definiˇe isplatu na kraju igre za svakog od igraˇa s c . Formalno. implicitno je definisan ishod konflikta • S ⊆ K∈Kd SK je skup situacija: sve mogu´i tokovi konflikta. zovu se situacije • Ki skup koalicija interesa: Ki ⊆ P (K) ˇine skupovi igraˇa koji su c c zainteresovani za ishod reˇenja s • K je binarna relacija prednosti nad situacijama kojom svaka koalicija interesa daje neku prednost jedne situacije u odnosu na druge. |Kd | > 1 su strateˇke c s igre. Ovo se ˇesto realizuje funkcijom dobitka HK koja se definiˇe nad skupom c s situacija u neki ured ¯eni skup (brojeva) K }K∈Ki ) Podrazumeva se da su ovi skupovi konaˇne kardinalnosti. onda Kd ⊆ P (K) ˇine c c skupovi igraˇa koji mogu uticati na reˇenje konflikta c s • SK je skup strategija koalicije K.Osnove veˇtaˇke inteligencije I s c 123 optimalno reˇenje problema . igra je struktura: c Γ = (Kd . gde svaka koalicija dejstva traˇi neka z reˇenja putem izbora nekog elementa iz skupa svih reˇenja koja su joj s s dostupna . s podrazumevaju: • postoji jedno unapred definisano stanje igre .poˇetna pozicija c • od poˇetne pozicije. definisani c kada svaka koalicija izabere svoju strategiju. {Hi }i∈I ) gde je I skup igraˇa.

skriva poteze” . raspodela verovatno´e na skupu njenih alc ternativa • razbijanje svakog od skupova Si na informacione skupove Sij takve. moˇemo pretpostaviti da je svaki od igraˇa ve´ pre poˇetka s z c c c partije izabrao strategiju. da ako pozicije X i Y pripadaju istom informacionom skupu. svaki igraˇ zaista razmiˇlja pomalo unapred. igra´u ovako”. c c s Naveˇ´u joˇ nekoliko osnovnih osobina i klasa igara. Kada kaˇemo da neki igraˇ igra po nekoj strategiji. Sn • za svaku od pozicija iz S0 .u igrama sa nepotpunom informacijom). podrazumevamo z c da taj igraˇ u svakoj poziciji u kojoj on odluˇuje o nastavku igre ima definc c isan slede´i potez. .skup ˇistih strategija S svih n igraˇa je ravnoteˇna c c z situacija (reˇenje igre) ako je svaka strategija iz tog skupa optimalna za s z igraˇa i (i = 1. U praksi. Skup dostiˇnih pozicija bilo koje partije neke igre ˇini z c z c prostor stanja igre. Pozicione igre posc s drazumevaju slede´e dodatne komponente: c • konaˇno drvo igre Γ sa korenom A c • razbijanje skupa svih nezavrˇnih pozicija na n+1 skup: skup S0 pozicija s iz kojih se igra sluˇajan potez. To c c s razmiˇljanje ide u pravcu ”ako se desi ova pozicija. upravo definiˇe jednu strategiju. tada: – broj alternativa pozicije X jednak je broju alternativa pozicije Y – ako je X = Y .. dobijamo niz pozicija koji ako se raˇˇlani na podsc nizove poteza pojedinih igraˇa i ˇita unazad. Nojman-Morgenˇternova teorema tvrdi da svaka igra s konaˇnog broja igraˇa sa potpunom informacijom (|Sij | = 1) ima ravnoteˇnu c c z . n).. tada X ne moˇe slediti Y i Y ne moˇe slediti X z z • funkcija dobitka koja svakoj zavrˇnoj poziciji dodeljuje jedan n-dimenzionalni s vektor ˇ Cista strategija ne uzima u obzir potez protivniˇkog igraˇa (ˇto praktiˇno ima c c s c jedino smisla u igrama gde protivnik . n) S1 . i skupovi pozicija iz kojih igra svaki igraˇ c c (i = 1. Bez umans c jenja opˇtosti. skup dobitaka definisanih ravnoteˇnom situacijom zove c se ravnoteˇna taˇka. optimalna je ona ˇija je funkcija dobitka ve´a od c c svake druge strategije .. jer ako pratimo pozicije c unazad od kraja partije. koren je poˇetna c z c pozicija.124 Seminarski rad Drvo igre je konaˇan graf pozicija igre koji ne sadrˇi cikle.. To je u neku ruku i taˇno.

recimo. postoje tri definicije c reˇene igre: s • veoma slabo reˇena igra . Igra je sa potpunom memorijom za nekog od igraˇa ako on tokom c igre ne zaboravlja poteze koje je do tog trenutka igrao. Pozicije u koje je mogu´e do´i na viˇe od jednog naˇina . Nedeterministiˇka igra uvek podrazumeva neke faktore koji c ne zavise samo od kvaliteta igraˇa i njegove strategije jer je skup sluˇajnih c c poteza S0 neprazan (iskustvo igraˇa postaje manje bitno)..kretanja”kroz c c s c drvo igre. Potez M koji pozic ciju A transformie u poziciju B je konverzija ako nijedna pozicija iz drveta igre koje opisuje igru od poˇetka do pozicije A ne moˇe da se pojavi u drvetu c z igre koje opisuje nastavak igre iz pozicije B do kraja (potez u ˇahu lovcem je s konverzija. kao i poteze svih svojih protivnika. ˇto podrazumeva potpunu pretragu s drveta igre (ˇija sloˇenost najˇeˇ´e nije zanemariva) c z c sc • tip B: koristi heuristike i pretragu pozicija koje najviˇe obe´avaju s c poseduje statiˇko znanje c • tip C: koristi iskustvo da bi uˇio tokom igranja i poboljˇavao perforc s manse . zovu se transpozicije. to ne znaˇi praktiˇno puno) s c c .odred s ¯ena je teoretska vrednost poˇetne pozic cije (u ˇahu. Programi koji igraju deterministiˇke antagonistiˇke igre sa potpunom inc c ˇ formacijom i memorijom.Osnove veˇtaˇke inteligencije I s c 125 situaciju.ovo je vaˇno za osobinu konvergentnosti z igre. kao i uzimanje figure) .poseduje dinamiˇko znanje c Za njih je znaˇajan (kanonski) globalan plan igre: c • sve dok se pozicija prepoznaje u bazi otvaranja: igraj poteze iz baze otvaranja • sve dok se na tabli ne prepozna pozicija iz baze zavrˇnica: s igraj poteze pretraivanjem i evaluacijom pozicija • sve dok igra nije gotova: igraj poteze iz baze zavrˇnica s Za antagonistiˇke igre sa potpunom informacijom. u Senonovom smislu se klasifikuju u tri tipa: • tip A: bira uvek najbolji potez.

pronad s ¯ena je optimalna strategija iz poˇetne pozicije c s ¯ena je optimalna strategija iz svih dopuˇtenih s • jako reˇena igra . c s . a viˇe o svemu tome u [MD]. naravno) Oblast teorije igara u okvirima VI je dostigla mnoge primene (ne samo u raˇunarskim igrama).126 Seminarski rad • slabo reˇena igra .pronad pozicija (u nekom razumnom vremenu.

ILI” ˇvorovi). z c c broj izmed -1 i 1. Oni z ¯u izraˇavaju stepen pouzdanosti. njegovo proˇirenje MYCIN-TEIRESIAS. dva pravila. ako su u pitanju npr. c Ako neke premise ne mogu biti evaluirane u nekom dostignutom stanju bivaju ostavljene kao unutraˇnji podciljevi (. 2 pravilo ne daje informaciju ali ni ne poriˇe pretpostavke. V (F ) = V (R)·min[V (Pj )]. a ai akcije. gde je Pj j-ta premisa pravila ¯u R. and aj Pi su pravila.. Predikati su oblika ˇetvorke : c < predikat >< objekat >< atribut >< vrednost > Teˇinski koeficijenti sa vrednostima izmed 0 i 1 su dati za svaku akciju. MYCIN je shva´en s c kao interaktivan sistem koji moˇe pomo´i doktorima u davanju dijagnoza. Tek kada se s c . Ako je |V | ≥ 0.. Mogu´e je izvoditi zakljuˇak iz dva ili viˇe c c s pravila. F je dedukovano iz pravila R. Proces zakljuˇivanja se temelji na i/ili stablu.Osnove veˇtaˇke inteligencije I s c 127 12 Ekspertni sistemi Vremenom i razvojem raˇunarska obrada podataka se sve viˇe okre´e ka c s c simboliˇkim podacima a sve manje ka numeriˇkim. Osnovni izvor znanja ovog ES je oko 400 produkcionih pravila oblika: P1 and P2 and. leva c c strana takvog pravila (. Za c bilo koji cilj sistem razmatra sva pravila ˇiji se zakljuˇci odnose na cilj... s c Ako je |V | < 0. z c Organizovan je u vidu dijaloga izmed korisnika i samog sistema.. Svaka ˇinjenica ima svoju meru verovatno´e. Sistem ¯u postavlja pitanja za koja su mu potrebni odgovori i vrˇi zakljuˇivanje na s c osnovu produkcionih pravila. then a1 and a2 . tj.. 2 izbacujemo iz baze znanja. verovatno´ tog zakljuˇka c c c se izvodi na osnovu Bajesove formule V = V1 + V2 − V1 V2 .primer Ekspertni sistemi su raˇunarski programi izgrad c ¯eni modelom reˇavanja s problema pomo´u ljudskih eksperata. 12.1 MYCIN . pri ˇemu.I” ˇvor) je evaluirana i daje koeficijent verovatno´e c c V koji je jednak po apsolutnoj vrednosti premisi minimalne vrednosti. Sve |V | < 0. Klasa programa koji se c c bave pomaganjem u donoˇenju odluka u dobro definisanim oblastima znanja s su ekspertni sistemi. Jedan od njih je MYCIN (medicinska c dijagnoza). 2 desna strana pravila se konstruiˇe i ima koeficijent verovatno´e |V |.

izbegao traˇenje informacija koje je ve´ koristio ili koje ne moˇe dobiti z c z 2. Njegov model pravila sastoji se iz: ¯u 1) liste primera (jednostavan podskup relevantnih pravila) 2) opis karakteristiˇnog ˇlana podskupa c c (premise i zakljuˇci karakterizovani atributima koji se ˇesto ponavljaju) c c 3) korelacija izmed atributa (statistiˇka analiza) ¯u c 4) dve liste pravila: osnovnih i specifiˇnih c . Sistem pamti sve informacije koje je c dobio i koristio i to da bi: 1. Ekspertni sistem TEIRESIAS je zamiˇljen bio najpre kao proˇerenje s s prethodnog i omogu´ava sistemu da organizuje telo znanja uz pomo´ eksperta. a isto tako mogu i redukovati broj pravila. To su pravila o pravilima. Mogu izmeniti redosled razmatranja pravila. Ovo ubrzava izraˇunavanje s c tako ˇto pokazuje da li je poseban atribut ukljuˇen viˇe puta u ras c s zliˇitim premisama kroz razliˇita pravila i tako se postiˇe brza i gruba c c z preliminarna evaluacija premisa. Oznaˇena su brojevima i pozivaju se kada su svi podciljevi razc motreni. Metapravila izraˇavaju stratec z giju kojom se izbegava iscrpljivanje nabrajanjem. MYCIN je u stanju i da nudi objaˇnjenje za svoje odgovore pored samih s odluka. da bi pokazao ekspertu kako su dobijeni neki zakljuˇci c 3. • Metapravila su simboliˇki podaci sliˇne strukture kao pravila koja omoc c gu´avaju sistemu napredovanje u pretrazi. 24) predikata i govore sistemu koji atributi kontroliˇu predikate. da bi znao ˇta pitati eksperta kada neke informacije nedostaju s Sistem ima pristup liˇnoj prezentaciji znanja i poseduje odred c ¯enu koliˇinu c znanja o tome kroz profile i metapravila: • Profili su dodani svakom od (u ovom primeru.128 Seminarski rad iscrpe sve mogu´nosti traˇe se nove informacije u obliku pitanja (pitanja se c z generalizuju kada god je to mogu´e). Komunikacija se vrˇi prirodc s nim jezikom kao izmed dva eksperta. c c ali i da upravlja znanjem i o njemu zakljuˇuje. te na taj naˇin upravljati pretragom i odsec canjem stabla pretrage.

silogizmima. ali nije jedini. Osnovni princip zakljuˇivanja je modus c c ponens. Plan pravila koja ˇekaju razmatranje c trenutni plan napada (na problem) potproblemi. Pravila su sliˇna teoremama. Metapravila strategije reˇavanja. Cinjenice simboliˇki i numeriˇki podaci c c radne hipoteze T c E..then deo”.Osnove veˇtaˇke inteligencije I s c 129 12. 1963). akt..if c deo”. razreˇavanje sukoba. pravila rukovanja koeficijentima D.. pravila donoˇenja novih s pravila. metodi izbora pravila s modeli pravila. Prvi su iskoriˇ´eni za definisanje formalnih jezika i gramatika (E. metapravila Produkcioni sistemi se sastoje od produkcionih pravila: LS → DS pri ˇemu leva strana (LS) opisuje situaciju koja je zadovoljena (uslov) . Pravila interna reprezentacija produkcionih pravila ˇinjeniˇno i heuristiˇko znanje c c c koncepti. mreˇe zakljuˇivanja. Dok je rad sa produkcionim pravilima nekako suprotna paradigma u odnosu na proceduralne jezike. 1936 i Comski.2 Produkcioni sistemi A. propagiranje uslova s rukovanje prioritetima. unifikacija. Iz skupa pravila koji ˇine bazu znanja izdvaja c . osveˇavanje memorije z T T c B. pravila z c c ˇ C. s druge strane su formalno ekvivalentni. a desna strana (DS) predstavlja akciju (posledica) .. sc ˇ Post.

Sta je neophodno da bi se razvio jedan ekspertni sistem? 1. mnogi sistemi u svojim pravc ilima ukljuˇuju i procedure kojima evaluiraju rezultat.viˇe s s su orijentisani promenama oblasti prouˇavanja nego invarijantama c 5. a veza izmed parametara slaba inaˇe z ¯u c leve strane postaju predugaˇke i isprepletene c 3. c c c Pretraga koja vodi cilju moˇe se predstaviti I-ILI drvetom. Ovaj prostor igra ulogu kratkotrajne c s memorije koja ˇuva jednostavna tvrd c ¯enja da bi formirala deo statiˇkog opisa c prostora pretrage.priroda ukljuˇenih entiteta moˇe se razlikovati od jednog c z do drugog sistema shodno oblasti prouˇavanja.130 Seminarski rad se radni prostor i interpretator. to moˇe uˇiniti mogu´im c z c c adaptaciju nekih sistema za razliˇite oblasti. Baza znanja . problemi kombinatorne prirode) . Zakljuˇivanje mora biti mogu´e pomo´u jednostavnih procedura (kao c c c ˇto su modus ponens i sliˇno) s c 4. Potrebno je da specijalisti opiˇu oblast prouˇavanja i da to znanje fors c muliˇu pomo´u pravih koncepta s c 2. Pravila moraju biti izraˇena. Sistemi ovog tipa su neprikladni za reˇavanje problema ˇija su tvrd s c ¯enja ili reˇenja komplikovana (npr. Radni prostor u svakom trenutku sadrˇi sve z ˇinjenice koje je program dedukovao do tog trenutka. c . Unifikacija je c c mehanizam koji ˇini mogu´im rad ovakvog sistema tako ˇto pronalazi skup c c s supstitucija koji dve logiˇke formule ˇini identiˇnim (ako to jesu). Pravila z mogu ukljuˇivati promenljive ˇije su vrednosti dodeljene pomo´u interprec c c tatora u svakom trenutku izvrˇavanja pravila pa ga tako ˇine saglasnim sa s c poznatim ˇinjenicama pomo´u semiunifikacije ili filtriranja. pogodan fiksiran format c je izabran za pravila i parametre koji su tipizirani tako da proces unifikacije moˇe biti zadovoljivo restrikovan tokom primene. dok dugotrajna memorija predstavlja dinamiˇko znanje c koje sadrˇi operatore transformacije u obliku produkcionih pravila. Najˇeˇ´e se koristi c c c sc obilazak unazad zato ˇto ˇinjenice nisu nezavisne i mnoge od njih ne´e biti s c c relevantne za delove problema (da bi se izbegla mogu´a kombinatorna ekc ˇ splozija). Dok su z u nekim sluˇajevima premise i zakljuˇci osnovne ˇinjenice koje mogu c c c biti oznaˇene i po potrebi modifikovane. u poˇetku sadrˇi samo c c z tvrd ¯enja problema koji ´e biti reˇavan. kao kod dokazivaˇa z c teorema (od ˇinjenica ka zakljuˇku ili unazad. obrnuto).

Izbor napravljen izraˇunavanjem c 3. Alternativa je evaluacija svakog kandidata. sc c c Znanje se moˇe organizovati u sloˇenije jedinice koje reprezentuju sloˇene z z z situacije ili objekte domena. Med ¯e c s ¯utim. shodno nekom kriterijumu. metod iscrpne pretrage je pogodan u sluˇajevima kada je prosc tor pretrage mali i kada ne postoji opasnost od kombinatorne eksplozije. Najvaˇnija s c z karakteristika ovakve kontrole pravila je da metapravila mogu biti dodana baˇ s kao i obiˇna pravila. Kontrola pomo´u metapravila c Ukratko. na primer: • vaˇnost zakljuˇka i akcije pravila u vreme evaluacije. Mnoge izmene i heuristike su pravljene da bi se ubrzali ovakvi interpreteri (npr. i automatski proces izgrad ¯ivanja sloˇenih strukz tura je takod naˇin reˇavanja prethodnog problema.. koriˇ´enje samo pravila ˇije su premise trenutni zakljuˇci). U drugom sluˇaju. s Postoje tri familije kontrola: 1. Dakle. te da ona pravila koja imaju vec liki broj neuspeha bivaju izbaˇena filtriranjem (ili ona koja izazivaju kruˇna c z izvod ¯enja). Kontrolna struktura . ovde efikasnost zavisi od redosleda kojim su ¯e pravila navedena. sirova strategija bi bila primeniti prvo pravilo koje .Osnove veˇtaˇke inteligencije I s c 131 6. u svakom trenutku c c pretrage ponaˇanje prorama zavisi od teku´eg stanja pretrage.osnovni problem kontrolne strukture je razreˇavanje s sukoba (conflict resolution): donoˇenje odluke koja pravila pozvati ako s postoji viˇe kandidata koji odgovaraju. Iscrpna pretraga 2. izmenjena ili obrisana. ve´ i zbog sposobnosti sistema z c da razume sopstvene akcije i poboljˇava performanse. Strategija izbora je od vitalne s vaˇnosti i to ne samo zbog efikasnosti. radi postizanja z c cilja c • izbor pravila koja mogu biti unifikovana sa ˇinjenicama koje se odnose na najvaˇnije z • izbor pravila koja mogu dati najspecifiˇnije zakljuˇke c c ¯enja) • izbor determinisan grafom (izvod • izbor najskorije koriˇ´enog pravila sc Kontrola pomo´u metapravila zavisi od logiˇkog izbora.sisc temu dod pod ruku”. veliki broj . tj.

s takod primer jezika logike prvog reda.iterativno. Minski je prototip odnosno frejm video kao naˇin c da se reˇi ovaj problem (postoji deo znanja koji se ne menja primenom nekih s pravila kojima se dolazi do reˇenja.osnovna osobina algoritam i proceduralnosti . ¯e. z Primeri ekspertnih sistema napisanih u PROLOGU su PEACE (koji tiˇe sinc teze i analize elektriˇnih kola). METALOG kao predlog modifikacije PROLOGa dodatnim kontrolnim predikatima (Gallaire. Petri mreˇa i programskih shema se na primer ovim bave) u odnosu na deklarz ativne. i MECHO (sistem za reˇavanje problema u c s mehanici).3 Ekspertni sistemi zasnovani na logici prvog reda Jezik dizajniran specijalno za modelovanje ljudskog rezonovanja (zakljuˇivanja) postoji dugo: to je jezik matematiˇke logike. i drugi odnosi) a suˇtina je razlika izmed specis ¯u fikacija i procedura. PROLOG je programski jezik ˇije osnovne jedinice nisu c c c instrukcije kao u klasiˇnim programskim jezicima. 12.4 Deklarativno-proceduralna kontroverza Razlika izmed proceduralnih i deklarativnih jezika se moˇe uporediti sa ¯u z razliˇitim paradigmama proceduralnih jezika (funkcionalno . 12. Nije toliko bitna ni prisutnost redosleda proceduralnih programa (instrukcija .132 Seminarski rad ˇinjenica i pravila sa promenljivama izaziva kombonatornu eksploziju i metazc nanje je onda neophodno. Osnovna razlika jezika proceduralnog tipa i deklarativnih jezika u koje bi se ubrajala i produkcionih pravila leˇi u samoj kontrolnoj strukturi z . c rekurzivno .deskriptivno.problemi paralelizma.situacija . parametre kvantifikovane unic verzalnim i egzistencijalnim kvantifikatorom. SNARK je. kao i pomenuti MYCIN i TEIRESIAS i mnogi drugi. sliˇno pozadini animacije (frame) ispred s c kojih su dinamiˇki objekti . ve´ teoreme logike prc c vog reda. izraˇene Hornovim klauzulama.mogu´i zakljuˇak” izraˇena u razliˇitim formalizmima u osnovi je c c z c teorema tog subjekta koja se odnosi na tvrd ¯enje ˇija interpretacija moˇe biti c z taˇna ili netaˇna. Ove teoreme ukljuˇuju promenljive.tako se moˇe smanjiti pretraga i izbor pravc z ila). kontrola i zakljuˇivanje su kodirani u proceduc ralne programe dok deklarativni imaju dostupnu bazu znanja i metapravila.. Kao primeri ekspertnih sistema zasnovanih na produkcionim pravilima navode se DENDRAL i META-DENDRAL (strukturne organske formule). Znanje. Lasserre) kojima se utiˇe na izbor literala u c klauzuli za unifikaciju ili klauzule naslednika kada ih ima viˇe. Produkciona pravila c c .

predlaˇe modiz fikaciju pomenutog Markovljevog sistema (u zagradi je naredno pravilo koje se primenjuje): P 1 == P 2 = xy P3 P4 = → → =x → = → (P 4) (P 2) (P 1) (P 4) Ovde se koriste dva tokena: T (True) i F (False) prema istinitosnoj vrednosti leve strane pravila. Zisman 1978. Primer Markovljevog produkcionog sistema za invertovanje niske: R1 = xy → y = x R2 == → % R3 % = → % R4 %x → x% R5 % → R6 x → %x gde x i y mogu zameniti bilo koju nepraznu nisku. poboljˇao c z s tako ˇto je uveo mesta kao ˇvorove obeleˇene krugom koji sadrˇe tokene (els c z z ementi koji se odnose na leve strane pravila) i tranzicije obiˇno obeleˇene c z vertikalnom crtom kao ˇvorove koji se aktiviraju ako su sva mesta ulaznih c grana popunjena tokenima. a Holt je to 1970. c sc sve komunikacije izmed razliˇitih delova programa preko osnovnih ˇinjenica. a nakon aktivacije tranzicije mesta izlaznih grana dobijaju nove tokene (prema pravilu. Vaˇnost z c z deklarativnih jezika proistiˇe iz njihove kompletne modularnosti: koriˇ´enje. if-then) je lokalizovana i dobra je za manje koliˇine znanja i jasne zadatke .desna strana c pravila zato moˇe biti poziv procedure. ¯u c c odsustvo potrebe za bilo kakvim redosledom znanja ili ˇinjenica. Petri je 1962. opet). predloˇio z grafove kao naˇin da se prikaˇu tokovi procesa. Ovako to izgleda prikazano grafiˇki: c . programsko prikljuˇenje.Osnove veˇtaˇke inteligencije I s c 133 produkcionih sistema koja je potpuno odvojena od podataka za razliku od proceduralnih programa. Proceduralna kontrolna struktura (npr. odsustvo imc perativnih instrukcija i mogu´nosti bek-treka u procesu reˇavanja i u upitima c s vezanim za pravila.

svojstvenom reprezentacijom znanja ¯u c i dobro definisanim procesom za izmenu informacija izmed razliˇitih izvora ¯u c znanja. Posledica ovih zahteva trebao bi biti uspeˇan sisc s tem za upravljanje velikom i dobro struktuiranom bazom znanja. z 12. Ovakvom reprezentacijom se lakˇe uoˇavaju konc z s c flikti pravila (kada se viˇe produkcionih pravila moˇe okinuti) i prikazuju ins z terne strukture pravila interpretatora i sistema sa problemima paralelizma. Mi stalno koristimo heuristike zasnovane na metaznanju. Sa naˇeg stanoviˇta.134 Seminarski rad T P2 F P3 T T. sa naznaˇenim c razlikama izmed razliˇitih nivoa znanja. Osnovni elementi i objekti realnog sveta (naˇa percepcija fiziˇkog sveta) s c 2. ja bih to znao”.sistem zna ono ˇto mi znamo”. z c s s s koriˇ´enje takvih meta znanja je karakteristika svakodnevnog ˇivota (na primer. i takva pravila zavise od dva osnovna parametra: vaˇnosti koju za nas imaju pojedinaˇne ˇinjenice i nivoa naˇe z c c s kompetentnosti u toj oblasti. Tvrd ¯enja i definicije (odnose se na osnovne objekte) . i sa druge c z strane dijalog koji se vodi izmed sistema i korisnika zasnovan na primerima ¯u njihovog liˇnog rezonovanja. Navedimo neke osnovne tipove znanja: 1. sc z moˇemo sresti nekoga koga znamo ali da se ne moˇemo setiti taˇno njegovog z z c imena).. Moˇemo re´i da . gubi se osobina modularnosti produkcionih sistema i zato je ova reprezentacija bliˇa proceduralnim. Med ¯utim.da je bilo tako. F F P1 P4 T F KRAJ Jasno je da su konaˇni automati i poboljˇane mreˇe prelaska (ATN) specic s z jalni sluˇajevi Petri mreˇa.5 Razliˇiti tipovi znanja i njihova reprezentacija c Cilj istraˇivanja u oblasti VI je kreiranje sistema koji sa jedne strane koz risti veliku koliˇinu znanja sakupljenu od strane ˇivih eksperata. kao ono ..

) z 5. ovo se tiˇe organizacije c tela znanja razliˇitih tipova.relacija-entitet”. Teoreme i pravila prezapisivanja (ovo su pojedinaˇni sluˇajevi produkc c cionih pravila sa posebnim karakteristikama) 6. 1962).otvorenijim”. obiˇno PR1 c jezikom) 4. koji je stepen vaˇnosti z napada na predmet znanja u relaciji celog tela.1 Reprezentovanje znanja Pomenute su mnoge reprezentacije znanja. Algoritmi za reˇavanje problema s 7. Strategije i heuristike (postoje pravila ponaˇanja. potrebno je znati ˇta je poznato. deklarativnim: • konaˇni automati (Markov.. s familije. Koncepti (grupisanje i generalizicaija osnovnih objekata. Meta-znanje (organizovano je u nekoliko nivoa. preteˇa danas aktuelnih (web) ontologija c z • grafovi. Moramo nac ¯u glasiti da je reprezentacija znanja u ekspertnim sistemima veoma sliˇna c modelu koriˇtenom u relacionim bazama podataka . 1975: u mnogo ˇemu sliˇan pojmu objekta u OOP. c c podrazumeva i proceduralne elemente).5. 1978) • skriptovi (sheme) (Schank.. Relacije (izraˇavaju osnovne karakteristike osnovnih elemenata i usz postavljaju uzrozvcno poslediˇne veze izmed koncepata. frejmovi. 1954) c • programi (Meyer. 1977) c z • frejmovi (Minsky. urod s ¯ena ili steˇena. skripte su jednostavno izraˇene binarne relacije. koje je pouzdano mesto u znanju. 1977) • semantiˇke mreˇe (McCarthy. i mogle bi se pored ¯ati od . mreˇe (Petri. c koja nam govore koje ´e akcije biti poduzete u datoj situaciji i shodno c njima reguliˇemo ponaˇanje) s s s 8.Osnove veˇtaˇke inteligencije I s c 135 3. ATN ..zatvorenih” proceduralnih ka . kao i kada i kako mogu biti koriˇtena ta c s znanja) 12..

1979) c • teoreme. Semantiˇke mreˇe ili grafovi. su kompleksne strukture podataka kojima se bavio Minski.bavi se dinamiˇkim aspektima u odnosu s c na frejmove. Skript. svakodnevne akcije ljudi i viˇe . 1976) • prirodni jezik (Pitrat. ili prototipovi.5. 1978) • produkciona pravila (Shortliffe.. Mane sis¯u z tema produkcionih pravila: s c 1. Neki noviji formalizmi su nastali kao potreba VI: c frejmovi. ili (programska) shema. daemoni). Grafovi i dijagrami ¯u su bili koriˇteni u kompjuterskom dokazivanju teorema. (rewrite) pravila prezapisivanja (Huet. objekat-atribut-vrednost). osobinama) koji mogu imati razliˇite tipizirane vrednosti. 1981) • predikatski raˇun (Kowalski. programi. Tako se c c c konkretne instance okvira mogu poistovetiti sa objektima. ATN (Augmented s Transition Networks) predstavlja proˇirenje takvog koncepta. koji c z c opisuju elemente prostora pretrage i relacije izmed njih. s 12. sadrˇi informacije kako se sloz tovi pune (faceti.statiˇnu situaciju” odnosno okvir kao objekat sa svojim atributima (sloc tovima.. gde okviri imaju svoje atribute sa konkretnim vrednostima u konkretnim instanca (model OA-V.2 Osobine sistema produkcionih pravila Ekspertni sistemi zasnovani na produkcionim pravilima i srodni ES su med najbrojnijim.136 • formalne specifikacije (Germain. pored toga. ˇesto su kolekcija frejmova i skriptova. Svaki frejm (okvir) sadrˇi . kako se frejmovi aktiviraju kao i ˇta je potrebno s uˇiniti u nekim netipiˇnim situacijama (sliˇno set/get metodama). opisuje stereotipan scenario koji ukljuˇuje c npr. i njihove osobine i zbog toga posebno vaˇne. Teˇko´a dizajniranja produkcionih pravila koja se odnose na predmete znanja .slotove” za objekte koji su ukljuˇeni u z c . 1981) Seminarski rad Konaˇni automati. predikatski raˇun i produkciona pravila se c c mogu pokazati ekvivalentnim (Tjuringovoj maˇini) ali je velika razlika u njis hovoj praktiˇnoj primerni. sa mogu´noˇ´u c c sc da se slot poziva na drugi frejm.

Kod c produkcionih sistema se strategije upravljanja znanjem takod izraˇavaju kao ¯e z pravila. Teˇko´a koriˇtenja pravila Prednosti: 1. da ga po potrebi c struktuira. bazu c znanja. Znanje c sistema o upravljanju na ovaj naˇin je meta-znanje. od sistema se oˇekuje da upravlja ovim znanjem. Citljivost 4. . Laka modifikacija ˇ 3. Modularnost 2.Osnove veˇtaˇke inteligencije I s c 2. Teˇko´a formulisanja pravila s c s c s 3. samo su izdvojena kao posebna pravila dostupna sistemu. Mogu´nost samoobjaˇnjenja c s 137 Meta znanje . menja i apstrahuje. Ovo je posebno bitno ako c je baza znanja velika (sliˇno sistemu za upravljanje bazom podataka).ako se od eksperta oˇekuje da ponudi sistemu znanje tj. da zakljuˇuje o primeni. generalizuje.

izmedu 1956 i 1967. ili kao specifiˇnost problema).. ali joˇ uvek ne postoji dovoljno c s dobar takav program (kao primer) ili opˇte reˇenje. Proc c gram je pamtio 180000 pozicija. Situacije koje su simetriˇne izmed belih i crnih figura tretiraju se simultano (istovremeno) . Tada se. zajedno sa akcijama c c c koje ih slede.uslovni refleksi”) 3. Mehaniˇko uˇenje (sve mogu´e situacije se pamte. kraljevi ili napred ili nazad s c i to obe vrste figura samo po jedno polje. na ovom nivou sistem moˇe sam kreirati nove situacije.. Programirano uˇenje (ve´ uneto. c s c z s c Svakako je lakˇe da program sam sakupi informacije tj. godine.138 Seminarski rad 13 Uˇenje c Budu´nost veˇtaˇke inteligencije leˇi u ovoj oblasti (maˇinsko uˇenje).instinkti”. Program za ovu igru je napisao A. . Statistiˇko uˇenje(sliˇno drugom nivou. Mogu se izdvojiti pet s s nivoa uˇenja: c 1. Ovo predstavlja uˇenje bez uˇitelja. i sistem ˇuva samo c c opise razliˇitih klasa. naravno. svi kompjuterski proc c grami su ovog nivoa) 2. javlja problem pam´enja velike koliˇine informacija te Samjuel c c koristi tri procedure: 1. Nema uˇitelja. Radi brˇeg pristupa. Samuel. IBM-ov inˇenjer. Igra se igra na z ˇahovskoj tabli gde se pijuni kre´u samo unapred. . sc c ´ L. situacije su sortirane shodno z a) broju pijuna i kraljeva na svakoj strani i b) prema uˇestalosti kojom su se pojavljivale u proˇloj igri c s c ¯u 2. Uˇenje pomo´u uˇitelja(sistem moˇe da uˇi i da vrˇi generalizaciju) c c c z c s 5. nauˇi nego da ih ˇovek s c c unosi (a ˇesto je to i neophodno kao naˇin borbe sa ogromnom koliˇinom c c c podataka. Prvi program koji je Samjuel napisao bio je na nivou mehaniˇkog uˇenja. Za njim c c c sledi nivo 4. samo ˇto su sve situacije grupisane c c c s u klase dobijene proouˇavanjem mnogo primera. uzetih iz najbolje odigranih partija. c z nove hipoteze i nove koncepte Naveˇ´emo primer igre oznaˇavanja.

Pogram je i u prethodnoj verziji posle 20-ak partija igrao veoma dobro i dugo je bio najbolji te vrste. gde su sa pi oznaˇeni teˇinski faktori . Program je dobio modifikaciju (uˇenje bez uˇitelja) gde se z c c c npr. ako se za svaki pi proceni da li je slaganje terma pi Pi sc za pi < 0 sa evaluacijom ve´e ili manje raˇunanjem Ci = (Li − Hi )/(Li + Hi ). 15-tak koraka je isto tako dovoljno da promeni potpuno parametre (uˇi u toku igre c nakon svakog koraka) jer minimaks algoritam oˇekuje da protivnik igra idec alno najbolje. ako je Ci < 0 onda pozitivan pi treba uve´ati a negativan pi smanjiti c ako je Ci ≥ 0 i obratno za pi ≥ 0 (ˇtaviˇe.. i ovako je brzo konvergirao. a ako se to ponovi viˇe puta onda se radikalnije promeni (. takmiˇe dve funkcije evaluacije td.ako je H broj poteza koji su trebali biti bolji prema evaluaciji c c nego pretraˇivanjem i L koji su se suprotno pokazali gorim. a sa Pi karakteristike (njih 38).Osnove veˇtaˇke inteligencije I s c 139 3.ˇekala”). uvod s ¯enjem varijante alfa-beta algoritma u kojoj ako se neka ista situaciju pokaˇe preoptimisticˇno osenjenom u odnosu na ponovlz c jenu prethodnu situaciju i novu evaluaciju (F (S) > F (S)) evaluacija se upored ¯uje sa drugom i menja prema odgovaraju´im koeficijentima korelacije c (sl. c sc pamti se 16 karakteristika . Da bi se to prevaziˇlo koristio je matrice kombinacija karakteristika (nekih 38. pa ako je protivnik loˇ i program uˇi i poˇinje da igra loˇe s c c s nakon toga protivnik samo treba da zaigra dobro da bi pobedio. radi se c vrednovanje minimax algoritmom.. postavlja se pk = 1 za Ck sa s s najve´om apsolutnom vrednoˇ´u i pi = 1/2n gde je n ≤ |ck /ci | ≤ n + 1. Na osnovu upam´enih pozicija i odigranih partija. prema s ekspertima) umesto parametara linearne kombinacije (ˇime se evaluacija zac pravo svodi skoro na pretragu po tabelama) i ˇest faza igranja prema broju s . Dalje. odnosno potpuno neslaganje vrednoˇ´u −1. Korekcije teˇinskih faktora su vrˇene na z s slede´i naˇin . onda korelacija z (ne u pravom statistiˇkom smislu reˇi) C = (L − H)/(L + H) vrednoˇ´u 1 c c sc pokazuje idealno poklapanje situacije sa evaluacijom. Koristio je polinomijalnu evaluacionu s c z funkciju F = i pi Pi . c Samjuel je tablu predstavio pomo´u 36-to bitne reˇi i napravio je nekoc c liko verzija / poboljˇanja programa. Med ¯utim. ona koja izgubi biva manje promenc jena. Ci samo za F (S) > F (S)).ostalima pi = 0 ˇto se desi kada tri puta ima s najmanju apsolutnu vrednost Ci i zamenjuje se karakteristikom koja je najduˇe .perturbed s gradient” koji se kao modifikacija gradijent metode koristi za nekonveksne povrˇi). c c tj. Postojao je metod za eliminaciju (bodovanjem) onih pozicija koje su se najmanje ˇesto pojavljivale tokom prethonih igara.

O1 Ok c gde se npr.*”) i s desne akcija tj. uˇenje pravila i uˇenje karakteristika (indukcijom).2 Uˇenje pravila i planova c Igranje pokera kao primer (Waterman. koje je korelacijom trenirao koriste´i nekih 180000 utakmica. Npr. Uˇenje se deˇava svaki put kada se pronad z c s ¯e niz operatora koji postiˇe cilj. Elementarni operatori nad njegovim svetom zadati su kao trojke listi gde je prvi element spisak uslova pod kojim se okida operator. · · · On . . z 13. . i koji razvija i pretraˇuje skupove akcija koje c z se smatraju korisnim za familje situacija. Pored ¯ajmo niz operatora O1 .140 Seminarski rad figura. Ovo se c u [JL] navodi kao Semjuelov primer generalizovanog uˇenja. . . . . a pored toga se c opisuju: uˇenje planova. npr.1 Primer STRIPS STRIPS je sistem ˇija je osnovni motiv nastanka i upotrebe upravljanje c robotom sa automatizovanim uˇenjem. . . . Uvek postoji i mogu´nost intervencije c c . Za svako pravilo c se vezuje skup ograniˇenja promenljivih s leve strane koja se mogu menjati c dodavanjem novog ako ne postoji drugo primenjivo pravilo osim izabranog kojem nedostaju samo druga ograniˇenja. O1 · · · Ok · · · . Oj . Razvijen je kao sistem koji daje c sposobnost uˇenja i planiranja. On tako da formira slede´i trougao: c O1 . c c c 13. a tre´i c s c element je spisak ˇinjenica koje se dodaju okidanjem operatora (pozitivna c lista).. drugi element je lista ˇinjenica koje se briˇu okidanjem (negativna lista). Jednom pronad z ¯eni niz se pamti i moˇe da se z iskoristi i za neke nove probleme. . potez igraˇa. Oj . · · · .. Ok u redu j trougla odnosi na ˇinjenice dodate operatorom Ok koje vaˇe do primene Oj . ..makro” kojim se postiˇe taj novi cilj. . · · · . Oj . 1970) . ako je novi cilj prepoznat u redu j i uslovi trenutne situacije (najpre) u nekom Oi iznad Oj onda je niz Oi ..vektor (ˇest) bitnih karaks teristika je s leve strane pravila (gde mogu biti i promenljive ili oznaka da je vrednost nebitna.

proc c gram 3) se nakon perioda testiranja pokazao veoma uspeˇnim (evoluciona s teorija igara.njime se npr. Voterman je ispitao pet razliˇitih programa: 1) sluˇajno igranje.3 Uˇenje karakteristika i koncepta. itd. Neispravan primer z c koji se malo razlikuje je koristan . Da ne bi nekontrolisano rastao. [PLAN]. Osnovna zamerka ovakvom uˇenju je pored nedostatka c simboliˇkih parametara (kao i kod Semjuela) je to ˇto zavisi od redosleda c s pravila i ˇesto zato dolazi do ˇudnogi i nestabilnog ponaˇanja. Za ovo je bitno: razumevanje pozicije (odred potez u stablu poteza dovodi do pozicije u kojoj se nepri¯en jatelj napada ako neprijatelj ne odgovori na odgovaraju´i naˇin. Jedan naˇin uˇenja planova bi mogao biti i producioni sistem kojim se utiˇe c c c na strukturu i parametre pravila i planove. 4) pravila c c c c c data od dobrog igraˇa. 1970).pomeri je. Uvek se podrazumeva prilikom svakog poteza pra´enje pravila po c odred ¯enom redosledu sve do poslednjeg koje se uvek pretpostavlja . minimaks c c se primenjuje). korak po korak moˇe opisati z . moˇe unifikacijom uporediti i zakljuˇiti da je ispravan. ispred. modifikacija i primena planova (generalizovano drve´e prec traˇivanja se ˇuva u obliku analognom ˇemama Minskog . Winston. levo-od. i drvo pretrage).Osnove veˇtaˇke inteligencije I s c 141 eksperta. pored. 13. 2) c c uˇenje uz pomo´ uˇitelja. kao i ljudi. Program bi c c s trebao da bude u stanju da zakljuˇuje (generalizuje) na osnovu samo jednog c primera kada god je to mogu´e. podrˇava. polja koja mogu biti prijateljska ili neprijateljska.sluˇajan c izbor poteza sa nebitnom vrednoˇ´u svih karakteristika . Vereov primer c Primer uˇenja u kome se opisuje svet predikatima (u poznatom primeru c sveta blokova: iznad. H.generalizovani z c s potezi. c Primer programa za igranje ˇaha koji polazi od samo dve elementarne s strategije: ako je figura napadnuta . Ispravan primer se npr. kao i na njihovo dodavanje ili brisanje.novo generalizovano pravilo se dodaje ispred pogreˇnog (koje je dalo pogreˇnu odluku) ili se restrikuje pogreˇno i dodaje s s s ispod.) i objektima z kroz primere i kontraprimere (P. [MD]). 5) uˇenje bez zadatog vektora karakteristika . pojednostavljenje i generalizacija (za razliku od pokera i dama u ˇahu postoji previˇe karakteristika i daleko je teˇe nai´i ponovo na s s z c istu situaciju).od ovog pravila se sc polazi. broj pravila se ograniˇava i mogu se c brisati ako se ograniˇenja nekog pravila ili samo pravilo pokaˇu takvim da c z druga pravila budu nepotrebna . i ako figura napada neprijateljsku uzmi napad u obzir (Jacques Pitrat). 3) automatizovano uˇenje bez uˇitelja.

(1. a supstitucija se zapisuje kao lista trojki (term. Na primer. redosled pojavljivanja / promenljiva) i piˇe se ispred izraza.142 Seminarski rad negacijama sloˇeni objekta. nema bektrekinga. Pravo uˇenje jeste nalaˇenje rezultata c z indukcijom nad manjim brojem primera. Term se ovakvom induktivnom supstitucijom nemora uvek zameniti istom promenljivom. i da se term zamenjuje samo kada je to neophodno tj. Vere (1975) daje interesantan model uˇenja baziran na generalizaciji kao c postupku suprotnom od unifikacije.piˇe se E1 ≤ E2 . ali ako se sistemu ponudi potpuno razliˇit primer z c on je nemo´an. s Za date E1 . Generalizacija je stroga ako E1 = OE2 niti je E1 dobijen prostim preimenovanjem promenljivih u E2 . Definicija 13. i supstitucija ne c moˇe da koristi promenljive koje izraza kojeg generalizuje. Ova ograniˇenja z c (1) su neophodna ako se ˇeli oˇuvanje polaznog izraza nakon deduktivne z c supstitucije iz generalizovanog oblika. itd. E2 i O. 1/y)}. Kao i u aritmetici (najve´i zajedniˇki delilac) sada se c c moˇe definisati najve´a zajedniˇka generalizacija (nzg) E za dva data izraza z c c E1 i E2 kao E ≤ E1 ∧ E ≤ E2 . ∃E : E < E ≤ E1 ∧ E < E ≤ E2 . i supstituciju: O={(Vuk. Odatle proistiˇe c c da redosled pojavljivanja nije potreban za pravedne supstitucije. term u ostatku se zamenjuje samo ako je ve´ zamenjen u vezivanju. E1 ⊆ OE2 (koristi se konjunktivna normalna forma pa se porede skupovi literala) .1 Izraz E1 je uopˇteniji od izraza E2 akko postoji induktivna s supstitucija O td. Koriste se pravedne supstitucije koje su takve da pored c navedenih osobina koriste uvek istu promenljivu za isti term u svim pojavljivanjima.3)/x). deo OE2 koji se javlja u E1 zove se vezivanje (coupling) a ostalo je ostatak. Sistem uopˇte nemora da konvergira i pati od mnogih drugih c s mana (ne pamti ranije primere. vaˇi: z OE = ((napravio) x y) ∧ (prosvetitelj x) ∧ (pisac x) Istom promenljivom se nemogu zameniti razliˇiti objekti. za izraz: s E=((napravio) Vuk Azbuka) ∧ (prosvetitelj Vuk) ∧ (pisac Vuk) . Viˇe razliˇitih supstitucija mogu dati isto vezivanje ali s c razliˇite ostatke... Term se zamenjuje promenljivom i primenom takve supstitucije izraz postaje apstraktniji. (azbuka.).

. p.Osnove veˇtaˇke inteligencije I s c 143 Koncept je nzg primera (iterativno se moˇe uopˇtiti na proizvoljan broj z s primera).. i tada je nauˇen koncept: c C1 = P 1 ∧ ¬N 1 • traˇi se nzg ostatka pozitivnih primera kao ispravak N2 ispravka N1.kontradikcija u ostacima. q • konstruiˇe se P1 kao nzg. – nzg ne postoji .. U najgorem c sc sluˇaju rezultat je disjunkcija svih primera i mogu´ih sluˇajeva... Kontraprimeri preˇiˇ´avaju ali i komplikuju analizu. pa z nauˇen koncept postaje: c C2 = P1 ∧ ¬ (N1 ∧ ¬ N2) – ako ih ima viˇe. Algoritam c c c koristi oblik A ∧ ¬(B ∧ ¬C) umesto (A ∧ ¬B) ∨ (A ∧ B ∧ C). • ako postoje negativni primeri. npr. formira se ipak njihova disjunkcija. ¬ Nk)).: pozitivan primer: (x ON y) ∧ (GREEN x) negativan primer: (x ON y) ∧ (GREEN x) ∧ (RED y) • ovaj postupak se ponavlja sve dok se ne dobije konaˇan nauˇeni konc c cept: C = P1 ∧ ¬ (N1 ∧ ¬ (N2 ∧ ¬ (.kontradikcija . s s – ako ih ima viˇe.. Skica Vereovog algoritma: • ulaz: primer ui : i = 1. s – nzg ne postoji .) ili dok se ne dobije prazan nzg kao posledica kontradiktornosti ostataka . formira se ipak njihova disjunkcija. kontra-primeri vj : j = 1. konstruiˇe se ispravak N 1 kao nzg njis hovog ostatka (primeri bez literala kontraprimera pogodnom supstitucijom).

O4 = (Q8/x. O3 = (Q5/x. u4 ) = P1=(x ON y) ∧ (CUBE y) ∧ (GREEN y).Q2/y) u 3 = (Q7 ON x) ∧ (CUBE Q7) ∧ (CUBE x) ∧ (YELLOW Q7) ∧ (BLUE x). 4 se raˇunaju kao: c u 1 = (SPHERE x) ∧ (BLUE x). Q6/y) u 4 = (CUBE x) ∧ (BLUE x).Q9/y) . u2 . u3 . Kontra-primer v2 se eliminiˇe jer nema zelene kocke u P1. 3. i = 1.144 Primer: Seminarski rad G G B G G Y G R G Y B G G B B G B G u1 = (O1 ON O2) ∧ (SPHERE O1) ∧ (CUBE O2) ∧ (GREEN O1) ∧ (GREEN O2) u2 = (O3 ON O4) ∧ (PYRAM O3) ∧ (CUBE O4) ∧ (BLUE O3) ∧ (GREEN O4) u3 = (O5 ON O6) ∧ (CUBE O5) ∧ (CUBE O6) ∧ (YELLOW O5) ∧ (GREEN O6) u4 = (O7 ON O8) ∧ (O9 ON O7) ∧ (CUBE O7) ∧ (CUBE O8) ∧ (CUBE O9) ∧ (RED O7) ∧ (GREEN O8) ∧ (GREEN O9) v1 = (Q1 ON Q2) ∧ (SPHERE Q1) ∧ (CUBE Q2) ∧ (BLUE Q1) ∧ (GREEN Q2) v2 = (Q3 ON Q4) ∧ (SPHERE Q3) ∧ (CUBE Q4) ∧ (GREEN Q3) ∧ (BLUE Q4) v3 = (Q5 ON Q6) ∧ (Q7 ON Q5) ∧ (CUBE Q7) ∧ (CUBE Q5) ∧ (CUBE Q6) ∧ (YELLOW Q7) ∧ (BLUE Q5) ∧ (GREEN Q6) v4 = (Q8 ON Q9) ∧ (CUBE Q8) ∧ (CUBE Q9) ∧ (BLUE Q8) ∧ (GREEN Q9) Odatle sledi: nzg(u1 . a ostaci u i = s {vi − Oi P 1}. O1 = (Q1/x.

i C1=(x ON y) ∧ (CUBE y) ∧ (GREEN y) ∧ ¬ (BLUE x). pa ovo treba ispraviti ponovo ¯u z formiranjem ostataka i pomenutim postupkom: C = (x ON y) ∧ (CUBE y) ∧ (GREEN y) ∧ ¬ ((BLUE x) ∧ ¬(PYRAM x)) . u2 sadrˇi N1. Med primerima.Osnove veˇtaˇke inteligencije I s c 145 odakle sledi da je N1=(BLUE x).

wikipedia.wikipedia.org/wiki/Formal_system http://en. Genesereth and Nils J.org/wiki/Hilbert_systems http://en.org. John Searle. & Ullman. Nilsson: Logical Foundations of Artificial Intelligence [JS] Minds.org/wiki/Model_theory http://en.umich. Brains and Science.wikipedia. Mihailo Despotovic.com [W] http://en.wikipedia. and Computation [MD] Uˇenje u strateˇkim igrama.html http://www. [TB] Donald E. e Knoblock & Steven Minton [www] http://www. Craig A.org/wiki/Traveling_salesman_problem http://en.wikipedia.wikipedia.org http://www.pcug.html http://sitemaker.wikipedia. J (1979). 2001. Languages. Jos´ Luis Ambite.wikipedia.idsia. http://www.org/wiki/Category:Mathematical_logic http://en.edu/soar/home [MW] Mathworld. Goran Nenadi´: OSNOVI L TEX-A cc c [HU] Hopcroft.ch/~juergen/goedelmachine. J.com/mihailod/thesis/thesismain.aaai. Wolfram Research.au/~dakin/tspbb.htm http://homepage.mac. 1984.org/wiki/Dynamic_programming http://en.org/wiki/Multiset . Knuth: The TeXbook A [PG] Predrag Janiˇi´. Vladan Devedˇi´ [PLAN] Plan Optimization by Plan Rewriting.146 Knjige koriˇ´ene tokom pisanja ovog rada: sc Seminarski rad Literatura [JL] Jean-Louis Lauriere: Problem-Solving and Artificial Intelligence [GN] Michael R.wolfram. Introduction to Automata Theory. c s zc [VD] Tehnologije inteligentnih sistema.org/wiki/Propositional_calculus http://en.

wikipedia.org/wiki/List_of_algorithms http://en.wikipedia.wikipedia.org/wiki/Modal_logic http://en.org/wiki/Intuitionistic_logic http://en.wikipedia.org/wiki/Boolean_network 147 .wikipedia.org/wiki/Heyting_algebra http://en.Osnove veˇtaˇke inteligencije I s c http://en.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->