2 INTELIGENTNI AGENTI 

 

U kome se govori o prirodi agenata, perfektnih ili ne, raznolikosti okruženja , i rezultujudoj menadžeriji tipova 

agenata. 

 

 

U  poglavlju  jedan  je  identifikovan  koncept 

racionalnih  agenata 

kao  glavnim  za  naš  prilaz  veštačkoj 

inteligenciji. U ovom poglavlju, ovu ideju još više konkretizujemo. Videdemo da se koncept racionalnosti može 
primeniti na širok  spektar agenata koji rade  blio kakvom zamišljenom okruženju.  Naš plan  u ovoj knjizi je da 
iskoristimo ovaj koncept ne bi li razvili mali set dizajnerskih principa za razvijanje uspešnih agent-sistema koji se 
sa  pravom  mogu  zvati 

inteligentni. 

Počedemo  sa  razmatranjem  agenata,  okruženja,  i  njihovim  međusobnim 

sparivanjem. Zapažanje da se neki agenti ponašaju bolje od drugih prirodno vodi ka ideji o racionalnom agentu-
onom koji se ponaša najbolje mogude. Kako dobro se agent može ponašati zavisi od prirode okruženja; neka 
okruženja su mnogo teža od drugih. Dademo grubu kategorizaciju okruženja i pokazati kako osobine okruženja 
utiču  na  dizajn  odgovarajudih  agenata  za  to  okruženje.  Opisademo  neloliko  osnovnih  "skeleton"  nacina 
dizajniranja agenata, koji ce se povremeno pojavljivati u ostatku knjige. 

 

2.1  AGENTI I OKRUŽENJA 

 

 

Agent

  je  nešto  što  se  može  posmatrati  kao  sagledavanje  svog 

okruženja

  kroz 

senzore

  i  delovanje  u 

takvoj sredini kroz 

aktuatore.

 

Ovo je jednostavna ideja ilustrovana na

 

slici 2.1.

 

Ljudski agent ima oči, uši i ostale 

organe  koji  su  senzori  i  ruke,  noge,  usta,  i  druge  delove  tela  koji  su  aktuatori.  Robotski  agent  može  imati 
kamere  i trgače  u  IC  opsegu  koji  predstavljaju  senzore  i  razne  motore  koji su  aktuatori.  Softverski  agent  kao 
senzorski  ulaz  dobija  pritiske  tastera,  sadržaje  datoteka  i  mrežne  pakete  i  deluje  na  okolinu  prikazom  na 
ekranu, pisanjem datoteka i slanjem mrežnih paketa. Uzedemo kao opštu pretpostavku da svaki agent spoznaje 
svoje akcije (ali ne uvek i efekte). Koristidemo termin opažaj koji de se odnosti na perceptivne ulaze agenta u 
svakom trenutku. Opažajna sekvenca agenata je kompletna istorija svega što je agent ikada video

U

 principu, 

agentov

 izbor akcije u svakom trenutku može zavisiti od cele opažajne sekvence koju je on primio do sada

Ako 

možemo odrediti izbor agentove akcije za svaku mogudu opažajnu sekvencu, onda smo rekli manje-više sve što 
se  može  redi  o  agentima.  Matematički  rečeno,  kažemo  da  je  ponašanje  agenta  opisano  od  strane 

agentske 

funkcije

 koja sprovodi ma koju opažajnu sekvencu u akciju

.  

 

Slika 2.1

 

 

Možemo zamisliti tabeliranje  agentske  funkcije  koja opisuje  bilo kog agenta; za vedinu agenata,  to bi  

bila veoma velika tabela - beskonačna, u stvari, osim ako mi ne stavimo granicu na dužinu opažajne sekvence 
koju  želimo  uzeti  u  razmatranje.  Dopuštajudi  agentu  da  eksperimentiše  sa  njom,  možemo,  u  principu, 
konstruisati ovu tabelu isprobavanjem svih mogudih opažajnih sekvenci i beleženjem akcije koju agent obavlja 
kao odgovor na nju. Tabela je, naravno, spoljna karakterizacija agenta. Interno, agentska funkcija za veštačkog 
agenta de biti implementirana od strane 

agentskog programa

. Važno je da ove dve ideje budu shvadene kao 

različite. Agentska funkcija je apstraktni matematički opis; Agentski program je konkretna implementacija, koja 
radi na arhitekturi agenta. 

 

Da bi ilustrovali ove ideje, mi demo koristiti vrlo jednostavan primer - usisivačev svet koji je prikazan na 

slici 2.2. Ovaj svet je toliko jednostavan da možemo opisati sve što se dešava; to je takođe izmišljen svet, tako 
da  možemo  izmisliti  mnoge  varijacije.  Ovaj  konkretni  svet  ima  samo  dve  lokacije:  kvadrate  A  i  B.  Usisivačev 
agent  opaža u kom je kvadratu i da li postoji prljavštine u njemu. Može da odluči da li da se krede levo, desno, 
usisa prljavštinu, ili da ne radi ništa. Jedna vrlo jednostavna agentska funkcija može biti slededa: ako je trenutni 
kvadrat je prljav, onda usisati, inače pređi u drugi kvadrat. Delimično tabelarni prikaz ove agentske funkcije je 
prikazan na slici 2.3. Jednostavan agentski program za ovu funkciju agenta je dat kasnije u poglavlju,na slici 2.8. 

 

background image

 

2.2  DOBRO PONAŠANJE: KONCEPT RACIONALNOSTI 

     

 

Racionalni agent

 je onaj koji radi pravu stvar - konceptualno posmatrano, svaki unos u tabelu agentske 

funkcije je ispravno popunjen. Očigledno, raditi pravu stvar je bolje nego raditi pogrešnu stvar, ali šta to znači  
uraditi pravu stvar? Kao prvu aproksimaciju, redidemo da je ispravno delovanje ono koje čini da agent  bude što 
uspešniji.  Dakle,  bide  nam  potreban  neki  način  merenja  uspeha.  Zajedno  sa  opisom  okruženja,  senzora  i 
aktuatora agenta, to de obezbediti potpunu specifikaciju zadatka sa kojim se suočava agent. S obzirom na to, 
možemo definisati preciznije šta to znači biti racionalan. 

 

 

Mera performansi 

 

 

Mera performansi

 je otelotvorenje kriterijuma uspeha ponašanja jednog agenta. Kada agent uronjen u 

okruženje, to stvara niz aktivnosti u skladu sa  percepcijama koje prima. Ovaj niz akcija uzrokuje da okruženje 
prođe  kroz  niz  stanja.  Ako  je  sekvenca  poželjna, onda  se  agent  pokazao  dobrim.  Očigledno,  ne  postoji  jedna 
fiksna  mera pogodna za sve  agente. Mogli bi smo da pitamo agenta za subjektivno mišljenje o tome  kako je 
zadovoljan svojim učinkom, ali neki agenti nede biti u stanju da odgovore, a drugi bi obmanjivali sebe. Dakle, mi 
demo insistirati na objektivnom merenju performansi, obično onom nametnutom od strane dizajnera koji  pravi 
agenta. 

 

Razmotrimo  agenta  usisivača  iz  prethodnog  odeljka.  Možemo  predložiti  da  se  performanse  mere  u 

odnosu na količinu prljavštine očišdene u jednoj osmočasovnoj smeni. Sa racionalnim agentom, naravno, ono 
što  tražite  je  ono  što  dobijete.  Racionalni  agent  može  maksimizirati  ovu  meru  performansi  čišdenjem 
prljavštine, a zatim njenim ponovnim prosipanjem po podu, a zatim njenim ponovnim čišdenjem, i tako dalje. 
Povoljnija mera performansi bi nagraditila agenta za to sto on ispred sebe ima čist pod. Na primer, jedan poen 
može  biti  dodeljen  za  svaki  čist  kvadrat  u  svakom  vremenskom  koraku  (mozda  sa  kaznom  za  potrošenu 
električnu  energiju  i  buku). 

Kao  opšte  pravilo,  bolje  je  dizajnirati  mere  performansi  u  skladu  sa  onim  što  se 

zapravo želi postidi u okruženju, a ne po tome kako neko misli da agent treba da se ponaša. 

 

Izbor mera performansi nije uvek lak. Na primer, pojam "čist pod" iz prethodnog paragrafa se bazira na 

prosečnoj čistodi tokom nekog vremena. Ipak, ista prosečna čistoda može se postidi sa dva različita agenta, od 
kojih  jedan radi osrednji posao sve vreme: a drugi čisti veoma brzo, ali pravi duže pauze. Šta je bolje može se 
činiti  kao predmet razmatranja domarske nauke, ali u stvari, to je duboko filozofsko pitanje sa dalekosežnim 
posledicama. Šta je bolje - bezobziran život uspona i padova, ili sigurno, ali dosadno postojanje? Šta je bolje- 
ekonomija  u kojoj svako živi u  umerenom  siromaštvu, ili ona  u kojoj neki žive u izobilju, dok  su drugi veoma 
siromašni? Mi demo ostaviti ova pitanja, kao vežbu za marljive čitaoce. 

 

Racionalnost 

 

Šta je racionalno u bilo kom trenutku zavisi od četiri stvari: 

 

 

Mere performansi koje definišu kriterijum za uspeh. 

 

Predznanje agenta o okruženju. 

 

Radnje koje agent može da obavlja. 

 

Dosadašnja opažajna sekvenca agenta. 

 

 

Ovo vodi do

 definicije racionalnog agenta

 

 

Za svaku mogudu opažajnu sekvencu, racionalni agent treba da izabere akciju od koje se očekuje postizanje 

maksimalne mere performansi, uzimajudi u obzir podatke koje obezbeđuje opažajna  sekvenca i bez obzira na znanje 
koje agent ved poseduje. 

 

Zamislite jednostavni agent usisivač koji čisti kvadrat ako je prljav i seli se u drugi kvadrat, ako prethodni nije prljav; 
ovo je agentska funkcija u tabeli na slici 2.3. Da li je to racionalni agent? To zavisi! Prvo, moramo da kažemo šta je 
mera performansi, šta se zna o okruženju, i koje senzore i aktuatore agent poseduje. Pretpostavimo sledede: 

 

 

Mera performansi dodeljuje bod za svaki čist kvadrat u svakom koraku "života" u trajanju od 1000 
vremenskih koraka. 

 

"Geografija" okruženja je 

a priori

 poznata (Slika 2.2), ali distribucija prljavštine i početni položaj  

agenta nisu. Očišdeni kvadrati ostaju čisti i usisavanjem se čisti trenutni kvadrat. Akcije 

Left 

 i 

Right

 pomeraju 

agenta levo i desno osim kada bi to agenta odvelo van okruženja, u kom slučaju agent 

ostaje gde je. 

 

Na raspolaganju su samo akcije 

Left, Right, Suck, 

and 

NoOp 

(ne radi ništa). 

 

Agent ispravno opaža svoju lokaciju i da li ta lokacija sadrži prljavštinu. 

 

Tvrdimo  da  je 

pod  ovim  okolnostima

  agent  zaista  racionalan;  njegove  očekivane  performanse  su  barem  na 

visokom nivou kao bilo kog drugog agenta. Vežba 2.4  traži od vas da to dokažete. 

background image

van rute njenog domašaja, buba nastavlja i oponaša zapušavnje gnezda sa nepostojedom loptom balege, nikada 
ne  primedujudi  da  lopta  nedostaje.  Evolucija  je  ugradila  pretpostavku  u  ponašanje  bube,  i  kada  je  ona 
prekršena,  daje  neuspešne  rezultate  ponašanja.  Malo  inteligentnija  je  osa  kopačica.  Ženska  osa  de  iskopati 
rupu,  otidi  i  ubosti  gusenicu  i  dovudi  je  do  rupe,  udi  ponovo  u    jazbinu  i  proveriti  da  li  je  sve  u  redu,  uvudi 
gusenicu  unutra, i položiti svoja.  Gusenica služi kao izvor hrane,  kada  se  jaja izlegu. Za sada je  dobro, ali ako 
entomolog  pomeri  gusenicu  nekoliko  centimetara  dalje,  dok  osa  proverava  rupu,  ona  de  se  vratiti  na  korak 
"dovlačenje" iz svog plana i nastavide plan bez izmena, čak i posle desetine  pomeranje-gusenica intervencija. 
Osa nije u mogudnosti da nauči da njen urođeni plan omašuje, i zbog toga ga nede promeniti. 

 

Uspešni agenti dele zadatak računanja agentske funkcije u tri različita perioda: kada je agent dizajniran, 

neka od izračunavanja su izvršili dizajneri, kada razmatra svoju narednu akciju, agent radi još izračunavanja, i 
kako uči iz iskustva, on radi još više izračunavanja ne bi li odlučio kako da promeni svoje ponašanje. 

 

Ukoliko se agent pretežno oslanja na prethodno znanje svojih dizajnera, a ne na sopstvena opažanja, 

kažemo da je agent nema autonomiju. Racionalni agent treba da bude autonoman - on bi trebalo da nauči šta 
može kako bi nadoknadio delimično ili netačno predznanje. Na primer, ususivač agent koji uči da predvidi gde i 
kada  de  se  pojaviti  dodatna  prljavština  de  se  pokazati  bolje  nego  onaj  koji  to  ne  radi.  Kao  stvar  praktičnosti, 
jedan retko zahteva potpunu autonomiju u odnosu na početak: kada agent ima malo ili nikakvo iskustvo, on de 
morati da deluje nasumično, osim ako dizajner  nije pružio kakvu pomod. Dakle, kao što evolucija obezbeđuje   
životinjama dovoljno ugrađenih refleksa kako bi mogle da prežive dovoljno dugo dok same ne nauče dovoljno, 
bilo  bi  razumno  obezbediti  veštačkom  inteligentnom  agentu  neka  početna  znanja,  kao  i  sposobnost  da  uči. 
Posle  dovoljno  iskustva  o  njegovom  okruženju,  ponašanje  racionalnog  agenta  može  da  postane  efikasno 
nezavisno  od  njegovog  predznanja.  Dakle,  ugradjivanje  učenja  omogudava  dizajn  jednog  racionalnog  agenta 
koji de biti uspešan u širokom dijapazonu okruženja. 

 

 

2.3  PRIRODA OKRUŽENJA 

 

Sada  kada  imamo  definiciju  racionalnosti,  skoro  smo  spremni  da  razmišljamo o  izgradnji  racionalnog  agenta. 
Prvo,  međutim,  moramo  razmišljati  o 

zadacima  okruženja

,  koji  su  u  suštini  "problemi"  za  koje  su  racionalni 

agenti    "rešenja".  Počedemo  od  toga  kako  odrediti  zadatak  okruženja,  ilustrujudi  proces  velikim  brojem 
primera. Zatim demo pokazati da zadaci okruženja dolaze u različitim ukusa. Ukus zadatka okruženja direktno 
utiče na odgovarajudi dizajn programa agenta. 

 

Određivanje zadatka okruženja 

 

U  našoj  raspravi  o  racionalnosti  jednostavnog  usisivača  agenta, morali  smo  da  odredimo mere  performanse, 
okruženja, kao i agentove aktuatore i senzore. Sve to demo grupisati pod naslovom zadatka okruženja. Za one 

Želiš da pročitaš svih 29 strana?

Prijavi se i preuzmi ceo dokument.

Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.

Slični dokumenti