1 / 81

Logical agents Logika primenjena na agente

Logical agents Logika primenjena na agente. Ra zmatra se dizajn agenata koji imaju neku predstavu o svetu, mogu da zaključuju i da na taj način dolaze do novih predstava o svetu, i da onda na osnovu novih predstava mogu da deluju. Logika – ispravno primenjeno znanje.

feoras
Télécharger la présentation

Logical agents Logika primenjena na agente

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Logical agentsLogika primenjena na agente Razmatra se dizajn agenata koji imaju neku predstavu o svetu, mogu da zaključuju i da na taj način dolaze do novih predstava o svetu, i da onda na osnovu novih predstava mogu da deluju

  2. Logika – ispravno primenjeno znanje • Agenti bazirani na logici – ispravno primenjenom znanju, poseduju određeno znanje koje je predstavljeno na određeni način, i na osnovu koga mogu da zaključuju, tj. da aktivno primenjuju znanje • Koncept predstavljanja znanja i korišćenja znanja za zaključivanje, je centralni koncept u oblasti veštačke inteligencije • Ljudi poseduju značajno znanje koje mogu veoma uspešno da koriste. • Znanje i zaključivanje su takođe od izuzetnog značaja za veštačke agente jer omogućavaju da ponašanje bude uspešno, što se ne bi moglo postići na neki drugi način

  3. Logika – ispravno primenjeno znanje • Znanje o rezultatima akcija omogućava agentima za rešavanje problema uspešno ponašanje u raznim složenim situacijama • Jednostavni refleksni agenti mogu da reše problem jedino putem slepih pokušaja – sistematskim pretraživanjem koje nije rukovođeno nekim dodatnim zanjem. • Znanje agenta za rešavanje problema je uglavnom veoma specifično i nefleksibilno • Na primer, program – agent za šah zna legalne poteze za svaku figuru, ali ne zna da jedna ista figura ne može biti na dva različita šahovska polja istovremeno, što je sasvim jednostavna činjenica, ali kao takva nije poznata agentu jer mu nije potrebna

  4. Logika – ispravno primenjeno znanje • Agent baziran na znanju može imati koristi od uopšteno predstavljenog znanja u raznim mogućim situacijama koje ne moraju biti uslovljene trenutnim potrebama – dokazivanje teoreme ili procena daleke budućnosti nebeskih tela • Znanje i zaključivanje su od centralnog značaja za uspešno ponašanje u delimično saznatljivim – dostupnim sredinama • Agent baziran na znanju može da na osnovu opšteg znanja i aktuelnih podataka o sredini zaključi o nečemu što nije direktno vidljivo ili merljivo sa senzorima kojima raspolaže

  5. Logika – ispravno primenjeno znanje • Slično tome, lekar postavlja dijagnozu na osnovu simptoma bolesti, pa na osnovu toga određuje lečenje • Postavljanje ispravne dijagnoze je težak problem, jer simptomi ne moraju 100% tačno da ukazuju na oboljenje koje samim tin i nije očigledno dostupno i saznatljivo • Nešto od znanja lekara je naučeno u školi, a nešto u praksi – uočavanje i povezivanje šablona simptoma i bolesti. • Iako lekar i ne mora toga biti svestan toga kako zaključuje, to se ipak računa kao neko znanje

  6. Logika – ispravno primenjeno znanje • Razmevanje govora takođe podrazumeva zaključivanje o onome što nije očigledno, a to je prava namera koja se krije iza izgovorene rešenice. • Pera je video dijamant kroz prozor i poželeo ga – dijamant a ne prozor • Svakodnevno zdravorazumsko znanje omogućava pravilno razumevanje raznih beskrajno raznovrsnih dvosmislenosti običnog govora • Agenti koji rešavaju probleme imaju naroćito velikih problema upravo sa višeznačnostima – neodređenostima u govoru, jer su za njih to problemi eksponencijalne složenosti

  7. Fleksibilnost bazirana na znanju • Fleksibilnost je dodatna pogodnost znanja, koja generalno omogućava prilagođavanje raznim novim zahtevima i situacijama kroz dodatno učenje koje to omogućava • Logika je osnovni način za predstavljanje znanja koje je uvek sasvim određeno – tačno ili netačno • Nasuprot tome, suštinska karakteristika ljudskog znanja je nesigurnost jer omogućava uspešno ponašanje u takođe neizvesnim situacijama • Zato je osim logike neophodno još i drugačije predstavljanje znanja vezano za prisutnu nesigurnost

  8. Agenti bazirani na znanju • Osnovna komponenta agenta baziranog na znanju je baza znanja BZ – knowledge base KB. • Baza znanja se sastoji iz komponenata – rečenica koje ne moraju da liče na rečenice u govornom jeziku • Rečenice se predstavljaju u jeziku za predstavljanje znanja i izražavaju neku tvrdnju o svetu • Jezik za predstavljanje znanja omogućava dodavanje novih tvrdnji kao i efikasno pretraživanje postojećih • Standardna imena za ove zadatke su TELL (reći) i ASK (pitati)

  9. Agenti bazirani na znanju • Oba pomenuta osnovna zadatka – TELL i ASK mogu uključivati i zaključivanje – inference za kreiranje sasvim novih rečenica baziranih na starim prethodno postojećim rečenicama • Kod logičkih agenata – baziranih na znanju, osnovni zahtev za zaključivanje je da odgovor sledi iz postojećeg znanja

  10. Agenti bazirani na znanju • Detalji zaključivanja i jezika za predstavljanje znanja su skriveni u navedenim funkcijama koje se pozivaju i čije su deklaracije navedene • MakePerceptSentence f-ja konstruiše rečenicu sa tvrđenjem da je agent opazio dati opažaj u trenutku vremena t • MakeActionQuery konstruiše rečenicu sa pitanjem koja akcija treba da se preduzme u datom trenutku vremena t • MakeActionSentence konstruiše rečenicu koja potvrđuje da je odabrana akcija zaista i izvršena • Detalji implementacije su sakriveni u funkcijama TELL i ASK

  11. Agenti bazirani na znanju • Postoje dva osnovna pristupa kod predstavljanja znanja – deklarativni i proceduralni • Deklarativni pristup predstavljanja znanja podrazumeva da se znanje predstavi preko niza rečenica koje ne predstavljaju eksplicitno ono što treba uraditi • Suprotno tome, proceduralni pristup je takav da zahteva eksplicitno predstavljanje akcija i procedura koje treba izvršiti • To se može porediti sa SQL – om deklarativni pristup i sa programskim jezicima – proceduralni pristup • Uspešni agenti treba da kombinuju i jedan i drugi pristup

  12. Wumpus world • Wumpus world je naziv za kompjutersku igru u kojoj postoji pećina sa više prostorija povezanih prolazima • Negde u pećini – u nekoj prostoriji, vreba wumpus – zver koja proždire svakoga ko uđe u prostorije • Agent može da ubije zver, ali ima samo jednu strelu • U nekim sobama se nalazi provalija bez dna, u koju wumpus ne može da upadne jer je preveliki • Jedina privlačnost života u takvom svetu je mogućnost da se pronađe velika količina zlata koja se nalazi u nekoj od prostorija pećine • Iako je ovakva igra dosta naivna za današnje standarde kopjuterskih igara, predstavlja dobar test za agente

  13. Opis okoline - PEAS • PEAS – Performance measure, Environment, Actuators, Sensors • Performance measure: + 1000 za nalaženje zlata, -1 za svaki potez, -10 za strelu, -1000 za smrt – jama ili wumpus • Environment: rešetka 4X4, agent uvek polazi iz polja [1,1] na desno, lokacije zlata i wumpus-a se slučajno biraju, a svako polje osim startnog može da bude jama sa verovatnoćom 0.2. • Actuators: agent može dase kreće napred, levo za 90o, desno za 90o, umire ako naiđe na provaliju ili živog wumpus-a, može da ga ubije, ali samo jednom strelom, može da podigne predmet u polju

  14. Opis okoline - PEAS • Agent ima 5 senzora – sensors: • Miris (stench): u prostoriji sa wumpus – om, kao i u susednim prostorijama agent oseća njegov miris • Promaja (breeze): u susednim prostorijama sa jamom, postoji promaja • Zlato: u prostoriji sa zlatom vidi se sjaj zlata – glitter • Zid: ako se udari u zid – bump • Kada / ako se ubije wumpus čuje se krik svuda u pećini • Opažaji se agentu predstavljaju kao n-torka: • Miris, promaja, sjaj, bum krik • Ako postoje samo miris i promaja, n-torka će biti: • [miris, promaja, ništa, ništa, ništa]

  15. Logic - logika • Pregledosnovnihkoncepatalogičkog predstavljanja znanja i zaključivanja • Baza znanja se sastoji od rečenica • Rečenice se izražavaju pomoću jezika zapredstavljanjeznanja u baziznanjai odgovarajućih sintaksnih pravila jezika za korektno formirane konstrukcije u tom jeziku • Zahtev za korektnom sintaksom je opšte prisutan u svim jezicima prirodnim i veštačkim –kompjuterskim • X + Y = 4 ispravno! • X2Y+= neispravno! • Semantika generalno određuje značenje rečenica, dok u logici označava istinitost (true / false) za slučaj bilo kog mogućeg sveta

  16. Logic - logika • X + Y = 4 je tačno u svetu u kome je na pr. X = 2 i Y = 2, dok je pogrešno u svetu u kome je X = 1 i Y= 1 • U klasičnoj logici, svaka rečenica mora u bilo kom svetu da bude ili tačna ili netačna, ništa treće • Može se upotrebiti i termin model za mogući svet • Izraz “m je model za α“ znači da je rečenica α tačna u modelu m • Dok se termin mogući svet može smatrati potencijalno postojećom sredinom- okruženjem, termin model je samo matematička apstrakcija koja služi da odredi istinitost neke rečenice

  17. Logic - logika • Pojam istinitosti se vezuje za logiku • Rečenice mogu biti logički povezane – entailment kada jedna rečenica logički sledi iz prethodne rečenice • α|= β • Rečenica βlogički sledi izα • α|= βje tačno, samo ako u svakom modelu u kome je α tačna rečenica, tačna i rečenica β • Ili, ako je α tačno, tačno je i β • Istinitost od βje određena, sadrži se u α • Baza znanja se može smatrati iskazom – statement • Iz baze znanja može da sledi zaključak - rečenica

  18. Postoji 8 mogućih modela u odnosu na mogućnost postojanja jame – pit, u kvadratima [1,2], [2,2] i [3,1] α1 i α2 su zaključci a KB je baza znanja

  19. α1 – ne postoji jama u polju [1,2] • α2 – ne postoji jama u polju [2,2] • KB baza znanja je tačna samo za tri modela • Svuda gde je KB tačna, tačan je i zaključak α1, dakle KB| = α1, zaključak α1 sledi iz KB • α2 zaključak nije tačan svuda gde i KB, dakle zaključak α2 ne sledi iz KB • Na osnovu toga agent može da zaključi da jama ne postoji u polju [1,2] kao i da nije tačno da ne postoji jama u polju [2,2], ali to ne znači da jama sigurno postoji u polju [2,2] • Zaključivanje se bazira na proveri svih modela

  20. Ako je i neki algoritam – postupak zaključivanja, na osnovu koga se iz baze znanja KB dolazi do zaključka α, to se piše kao: • KB | = iα • α se izvodi iz KB pomoću i, ili i izvodi α iz KB • Algoritam zaključivanja koji izvodi zaključke koji slede iz baze znanja naziva se sound – ispravan, ili truth preserving koji održava istinitost • Zaključivanje koje se bazira na proveri modela spada u takve algoritme • Kompletnost je osobina da algoritam zaključivanja može da izvede bilo koji zaključak koji sledi iz KB

  21. Ako postoji korespodencija između baze znanja i realnog sveta, onda se može reći da svaki zaključak izveden iz baze znanja tačnim – ispravnim algoritmom zaključivanja, važi takođe i u realnom svetu • Grounding je veza između KB i realnog sveta, i uspostavlja se pomoću senzora

  22. Propositional logic – iskazna logika (račun) • Sintaksa iskaznog računa definiše ispravne rečenice • Atomske rečenice – nedeljivi sintaksni elementi sastoje se od samo jednog iskaznog simbola • Svaki takav simbol označava iskaz koji može biti tačan ili netačan • Ovi simboli će se označavati velikim slovima P, Q, R • Imena su prozvoljna, ali se najčešće biraju tako da ukazuju na problematiku, na pr. – W1,3 što bi ukazivalo da je wumpus u polju [1,3] • W1,3 je atomski simbol, tako da bilo koji od znakova W, 1, 3 posebno, nemaju nikakvog značenja

  23. Iskazni račun • Dva iskazna simbola imaju uvek isto značenje – True, False – Tačno, Netačno • Složene rečenice se formiraju od jednostavnijih rečenica korišćenjem 5 logičkih veza: • Postoji 5 logičkih veza: • ¬ not – negacija • ˄ and, conjuction – i, konjukcija • ˅ or, disjunction – ili, disjunkcija • => implies, implication – implikacija, pravila ako onda •  equivalence – ekvivalencija, ako i samo ako

  24. Semantics - semantika • Semantika definiše pravila za određivanje istinitosti rečenica u zavisnosti od odabranog modela • U iskaznoj logici, model jednostavno određuje istinitost – true / false svakog iskaznog simbola • Na primer, ako rečenica u bazi znanja koristi iskaze P1,2, P2,2, P3,1, onda je jedan moguć model: • m={P1,2 = false, P2,2 = false, P3,1 = true} • Sa tri iskazna simbola, ima ukupno 23 = 8 modela • Semantika iskaznog računa mora da definiše kako se izračunava istinitosna vrednost bilo koje rečenice za dati model

  25. Semantics - semantika • Postupak utvrđivanja istinitosti je rekurzivan • Sve rečenice se konstruišu od atomskih – osnovnih rečenica i pet navedenih veza – logičkih operatora • Za to je potrebno znati kako se izračunavaju istinitosti osnovnih rečenica kao i složenih izraza dobijenih logičkim vezama – operatorima • True i false su isti u svim modelima • Istinitosna vrednost svih ostalih simbola mora biti precizirana u modelu, kao na pr P1,2 = false • Za složene rečenice postoje pravila ka na pr. • Za bilo koju rečenicu s i bilo koji model m rečenica ¬s je tačna ako i samo ako je u modelu m,s netačno

  26. Semantics - semantika • Ovakvim i sličnim pravilima se redukuje istinitost složenih rečenica na utvrđivanje istinitosti jednostavnijih rečenica • Tabele istinitosti definišu istinitosnu vrednost jednostavnih izraza sa logičkim operatorima

  27. Rečeno je da se baza znanja sastoji od skupa rečenica • Da bi baza znanja bila saglasna, rečenice od kojih se sastoji baza znanja treba da budu konjuktivno povezane • Ako se počne sa praznom bazom znanja, i rečenice dodaju sa TELL(KB, S1), TELL(KB, S2), ... TELL(KB, Sn) onda je baza znanja KB= S1 ˄ S2 ˄ ... ˄ Sn • Ekvivalencija je dvosmerna implikacija • a) B1,1 => P1,2 ˅ P2,1 • b) B1,1  P1,2 ˅ P2,1 • B – breeze (promaja), P – pit (jama) • Kakva je razlika?

  28. Jednostavna baza znanja • Rečenice kojima se opisuje wumpus world • Nema jame u polju [1,1] • R1: ¬P1,1 • U polju postoji promaja ako i samo ako je u susednom polju jama. To se mora posebno navesti za svako polje, ovde se navodi samo za dva polja • R2: B1,1 P1,2 ˅ P2,1 • R3: B2,1  P1,1 ˅ P2,2 ˅ P3,1 • R4: ¬B1,1 • R5: B1,2 • Baza znanja se sastoji od 5 rečenica koje su sve tačne, tako da se čitava baza znanja može predstaviti i samo jednom rečenicom • R1 ˄ R2 ˄ R3 ˄ R4 ˄ R5

  29. Inference - zaključivanje • Osnovni cilj logičkog zaključivanja je da se utvrdi da li baza znanja podržava neku rečenicu, tj. da li iz baze znanja logički sledi neka rečenica • KB |= α, za neku rečenicu α iz KB • Jedan od mogućih algoritama zaključivanja je da se proveri da li je α tačno u svakom od modela u kojima je KB tačna • U bazi znanja sa 5 pravila, R1 – R5 nalazi se 7 simbola B1,1, B2,1, P1,1, P1,2, P2,1, P2,2, P3,1 što daje 27 = 128 mogućih modela • Od ovih 128 modela, KB je tačna samo u tri

  30. Ekvivalentnost, validnost i zadovoljivost • Dve rečenice α i β su logički ekvivalentne, ako su tačne u istom skupu modela, što se obeležava kao • αβ • Alternativna definicija ekvivalentnosti • α ≡ β ako i samo ako α |= β i β |= α • Rečenica je validna ako je tačna u svim modelima • P ˅¬P je validna i poznata takođe kao tautologija • Za bilo koje dve rečenice α i β važi α |= β ako i samo ako je α => β • Rečenica je zadovoljiva, ako je istinita u nekom modelu

  31. Na primer, prethodno pomenuta rečenica – baza znanja R1 ˄ R2 ˄ R3 ˄ R4 ˄ R5 je zadovoljiva, tačna je u tri modela • Ako je rečenica α tačna u modelu m, onda se kaže da m zadovoljava α, ili da je m model za α. • Zadovoljivost se proverava nabrajanjem modela dok se ne nađe neki u kome je rečenica tačna • Problem provere zadovoljivosti je prvi problem tipa NP complete – NP kompletan problem • Problem je tipa NP kompletnog, kada se neko rešenje može lako zadovoljiti, u polinomijalnom vremenu, ali da je istovremeno i težak problem za koji ne postoje opšta rešenja koja se lako nalaze

  32. Mnogi problemi u informatici su problemi koji se mogu svesti na problem provere zadovoljivosti • Validnost i zadovoljivost su povezani međusobno: • Problem α je validan ako je ¬α nezadovoljiv • Obrnuto, problem α je zadovoljiv ako problem ¬α nije validan • Važi i: • α |= β ako je α ˄ ¬ β nezadovoljiv • Ova zadnja ekvivalentnost se standardno primenjuje u matematičkim dokazima kada se dokazuje nemogućnost negacije – reductio ad absurdum, što je ekvivalentno dokazu pozitivnog tvrđenja

  33. Pravila zaključivanja u iskaznom računu • Modus ponens pravilo zaključivanja glasi: • Ako je α => β tačno, i ako je α tačno, onda je kao posledica toga β tačno • And elimination • Iz konjukcije α ˄ β se može kao zaključak izvesti bilo koji od elemenata konjukcije ako je konjukcija istinita, jer oba moraju biti istinita • Bilo koja od navedenih logičkih ekvivalencija se može upotrebiti kao pravilo zaključivanja • Bi conditional elimination • Od αβ zaključuje se α => β ˄ β => α, kao i obrnuto: • Od α => β ˄ β => α zaključuje se αβ

  34. Pravila zaključivanja u iskaznom računu • Ne omogućavaju sva pravila zaključivanja simetrično zaključivanje – u oba smera • Na primer, Modus Ponens nije simetričan i ne omogućava izvođenje β => α iz α => β • Primer primene pravila zaključivanja Biconditional elimination za utvrđivanje ¬P1,2, tj. da nema jame (Pit – P) u polju [1,2] • Prvo se primenjuje pravilo zaključivanja Biconditional elimination na pravilo KB R2 • R2: B1,1 P1,2 ˅ P2,1

  35. Pravila R6 – R10 su nova pravila u KB koja su dobijena primenom zaključivanja • Prikazani niz povezanih zaključaka dobijen primenom pravila zaključivanja se naziva proof – dokaz

  36. Nalaženje dokaza je ekvivalentno nalaženju rešenja kod problema sa pretraživanjem • Traženje dokaza je alternativa za nabrajanje modela • Pretraga može da ide unapred – forward od početne baze znanja primenom pravila zaključivanja do rečenice koja predstavlja cilj, ili unazad – backward kada se polazi od rečenice koja predstavlja cilj i traži se niz pravila zaključivanja koji vodi do početne baze znanja • Činjenica da je zaključivanje u iskaznom računu NP kompletno znači da se u najgorem slučaju traženje dokaza svodi na nabrajanje svih modela, tj. Pretraživanje svih stanja

  37. U mnogim realnim slučajevima pretraživanje – nalaženje dokaza može biti mnogo efikasnije, zbog zanemarivanja irelevantnih iskaza koji se ne pojavljuju u pravilima koja se razmatraju • Dodavanje novih irelevantnih iskaza u tom slučaju ne otežava dokaz • Drugačiji pristup koji bi se bazirao na iscrpnoj pretrazi – enumeraciji modela, bi uzimao u obzir i potencijalno irelevantna stanja i na taj način bi bio značajno usporen • Princip monotonosti – monotonicity tvrdi da se dodavanjem novih informacija broj iskaza u KB samo povećava ako KB |= α onda i KB ˄ β |= α • Drugim rečima, dodavanje novih iskaza ne sme da promeni već postojeće znanje, može se dodati samo konzistentan iskaz

  38. Resolution • Princip rezolucije – resolution se bavi aspektom kompletnosti baze znanja, tj. da li skup pravila zaključivanja omogućava nalaženje cilja

  39. Factoring - faktorisanje je uklanjanje višestrukih kopija – redundantnih kopija rečenica – članova koji nisu neophodni • Iz α˅β i α˅ ¬β sledi zaključak α˅ α, što se redukuje samo na α • Pravilo rezolucije formira bazu za familiju – skup kompletnih procedura zaključivanja • Bilo koji kompletan algoritam pretraživanja primenjujući samo pravilo rezolucije može da izvede bilo koji zaključak iz bilo koje baze znanja u iskaznoj logici • Tu se krije jedna začkoljica, ne može se neki zaključak automatski dobiti, tj. ako je α tačno, onda se ne dobija automatski i zaključak α˅β, ali se takav zaključak može proveriti da li je tačan ili netačan • Ovo je poznato kao refutation principle – princip pobijanja, tj. ne mogu da se generišu sva moguća rešenja, ali mogu da se pobiju

  40. Conjuctive Normal Form - CNF • Princip rezolucije se primenjuje na disjunkciju literala – rečenica u iskaznoj logici, tj. na KB koje sadrže rečenice ove forme. • Kako se onda ovaj princip primenjuje za kompletne procedure zaključivanja u čitavoj iskaznoj logici? • Odgovor je taj da je svaka rečenica u iskaznoj logici ekvivalentna konjukciji disjunkcije logičkih elemenata –rečenica • Za rečenicu koja je izražena kao konjukcija disjunkcije elemenata se kaže da je u CNF

More Related