Vještačka inteligencija

Hondin inteligentni humanoidni robot

Veštačka inteligencija (engl. artificial intelligence, skr. AI, takođe VI) je podoblast računarstva. Cilj istraživanja vještačke inteligencije je razvijanje programa (softvera), koji će omogućiti računarima da se ponašaju na način koji bi se mogao okarakterisati inteligentnim. Prva istraživanja se vežu za same korjene računarstva. Ideja o stvaranju mašina koje će biti sposobne da obavljaju različite zadatke inteligentno, bila je centralna preokupacija naučnika računarstva koji su se opredijelili za istraživanje vještačke inteligencije tokom cijele druge polovine XX vijeka. Danas, istraživanja u vještačkoj inteligenciji su orijentisana na ekspertne sisteme, prevodilačke sisteme u ograničenim domenima, prepoznavanje ljudskog govora i pisanog teksta, automatske dokazivače teorema, kao i konstantnim interesovanjem za stvaranje generalno inteligentnih, autonomnih agenata.

Vještačka inteligencija kao pojam u širem smislu, označava kapacitet jedne vještačke tvorevine za realizovanje funkcija koje su karakteristika ljudskog razmišljanja. Mogućnost razvoja slične tvorevine je budila interesovanje ljudi još od antičkog doba; ipak, tek u drugoj polovini XX vijeka takva mogućnost je dobila prva oruđa (računare), koja otvaraju put za taj poduhvat. [1]

Napretkom moderne nauke, istraživanje VI se razvija preko dva osnovna smjera: psihološka i fiziološka istraživanja prirode ljudskog uma, i tehnološki razvoj sve složenijih informatičkih sistema.

U tom smislu, pojam VI se prvobitno pripisao sistemima i računarskim programima sa kapacitetom realizovanja složenih zadataka, simulirajući funkcionisanje ljudskog razmišljanja, iako i dan danas, prilično daleko od cilja. U toj sferi, najvažnije oblasti istraživanja su procesovanje informacija, prepoznavanje modela različitih oblasti saznanja, igre i primjenjene oblasti, kao medicina, na primjer.

Neke oblasti današnjih istraživanja procesovanja informacija se koncentrišu na programe koji nastoje osposobiti računar za razumjevanje pisane i verbalne informacije, stvaranje rezimea, davanje odgovara na određena pitanja ili redistribuciju podataka korisnicima zainteresovanim za određene dijelove tih informacija. U tim programima, od suštinskog je značaja, kapacitet sistema za stvaranjem gramatički korektnih rečenica i uspostavljanje veze između riječi i ideja, odnosno identifikacija značenja. Istraživanja su pokazala da, dok je probleme strukturne logike jezika, odnosno njegove sintakse, moguće riješiti programiranjem odgovarajućih algoritama, problem značenja, ili semantika, je mnogo dublji i ide u pravcu autentične vještačke inteligencije.

Osnovne tendencije danas, za razvoj sistema VI predstavljaju: razvoj ekspertnih sistema i razvoj neuronskih mreža. Ekspertni sistemi pokušavaju reprodukovati ljudsko razmišljanjene preko simbola. Neuronske mreže to rade više iz biološke perspektive (rekreiraju strukturu ljudskog mozga uz pomoć genetskih algoritama). Uprkos složenosti oba sistema, rezultati su veoma daleko od stvarnog inteligentnog razmišljanja.

Mnogi naučnici su skeptici prema mogućnosti razvijanja istinske VI. Funkcionisanje ljudskog razmišljanja, još uvijek nije dublje poznato, iz kog razloga, informatički dizajn inteligentnih sistema, će još duži vremenski period biti u suštini onesposobljen za predstavljanje tih nepoznatih i složenih procesa.

Istraživanja u VI, su fokusirana na sljedeće komponente inteligencije: učenje, razmišljanje, rješavanje problema, percepcija i korišćenje jezika.

Učenje

[uredi | uredi kod]

Postoji više različitih oblika učenja koji su primjenjeni na oblast vještačke inteligencije. Najjednostavniji se odnosi na učenje na greškama preko pokušaja. Na primjer, najjednostavniji računaraski program za rješavanje problema matiranja u jednom potezu u šahu, je istraživanje mat pozicije slučajnim potezima. Jednom iznađeno riješenje, program može zapamtiti poziciju i iskoristiti je sljedeći put kada se nađe u identičnoj situaciji. Jednostavno pamćenje individualnih poteza i procedura - poznato kao mehaničko učenje - je vrlo lako implementirati u računarski sistem. Prilikom pokušaja implementacije tzv., uopštavanja, javljaju se veći problemi i zahtjevi. Uopštavanje se sastoji od primjene prošlih iskustava na analogne nove situacije. Na primjer, program koji uči prošla vremena glagola na srpskom jeziku mehaničkim učenjem, neće biti sposoban da izvede prošlo vrijeme, recimo glagola skočiti, dok se ne nađe pred oblikom glagola skočio, gdje će program koji je sposoban za uopštavanje naučiti "dodaj -o i ukloni -ti" pravilo, te tako formirati prošlo vrijeme glagola skočiti, bazirajući se na iskustvu sa sličnim glagolima.

Razmišljanje

[uredi | uredi kod]

Razmišljanje je proces izvlačenja zaključaka koji odgovaraju datoj situaciji. Zaključci se klasifikuju kao deduktivni i induktivni. Primjer deduktivnog načina zaključivanja bi mogao biti, „Savo je ili u muzeju, ili u kafiću. Nije u kafiću; onda je sigurno u muzeju“; i induktivnog, „Prethodne nesreće ove vrste su bile posljedica greške u sistemu; stoga je i ova nesreća uzrokovana greškom u sistemu“. Najznačajnija razlika između ova dva načina zaključivanja je da, u slučaju deduktivnog razmišljanja, istinitost premise garantuje istinitost zaključka, dok u slučaju induktivnog razmišljanja istinitost premise daje podršku zaključku bez davanja apsolutne sigurnosti njegovoj istinitosti. Induktivno zaključivanje je uobičajeno u naukama u kojima se sakupljaju podaci i razvijaju provizioni modeli za opis i predviđanje budućeg ponašanja, sve dok se ne pojave anomalije u modelu, koji se tada rekonstruiše. Deduktivno razmišljanje je uobičajeno u matematici i logici, gdje detaljno obrađene strukture nepobitnih teorema nastaju od manjih skupova osnovnih aksioma i pravila.

Postoje značajni uspjesi u programiranju računara za izvlačenje zaključaka, naročito deduktivne prirode. Ipak, istinsko razmišljanje se sastoji od složenijih aspekata; uključuje zaključivanje na način kojim će se riješiti određeni zadatak, ili situacija. Tu se nalazi jedan od najvećih problema s kojim se susreće VI.

Rješavanje problema

[uredi | uredi kod]

Rješavanje problema, naročito u vještačkoj inteligenciji, se karakteriše po sistematskom traženju u rangu mogućih akcija s ciljem iznalaženja nekog ranije definisanog riješenja. Metode rješavanja problema se dijele na one posebne i one opšte namjene. Metoda posebne namjene je traženje adaptiranog riješenja za određeni problem i sadrži vrlo specifične osobine situacija od kojih se on sastoji. Kao kontrast, metod opšte namjene se može primjeniti na širi spektar problema. Tehnika opšte namjene koja se koristi u VI je metod krajnje analize, dio po dio, ili postepeno dodavanje, odnosno redukovanje različitosti između trenutnog stanja i krajnjeg cilja. Program bira akcije iz liste metoda - u slučaju jednostavnog robota koraci su sljedeći: PICKUP, PUTDOWN, MOVEFROWARD, MOVEBACK, MOVELEFT i MOVERIGHT, sve dok se cilj ne postigne.

Veći broj različitih problema su riješeni preko programa vještačke inteligencije. Neki od primjera su traženje pobjedničkog poteza, ili sekvence poteza u igrama, kompleksni matematički dokazi i manipulacija "virtulenih objekata" u vještačkim, ili sintetičkim računarskim svjetovima.

Percepcija

[uredi | uredi kod]

Mašinska percepcija je sposobnost mašina da se koriste podacima iz senzora (kao što su kamere, mikrofoni, sonari i ostalim) da zaključe neke aspekte okoline. Računalni vid je sposobnost da se analiziraju podaci iz vizualnih senzora.

Istorijski pregled razvoja

[uredi | uredi kod]

Pojam vještačka inteligencija (VI), nastaje ljeta 1956. godine u Dartmudu, Hanover (SAD), na skupu istraživača zainteresovanih za teme inteligencije, neuronskih mreža i teorije automata. Skup je organizovao Džon Mekarti, ujedno sa C. Šanonom, M. Minskijem i N. Ročesterom. Na skupu su takođe učestvovali T. More (Prinston), A. Samuel (IBM), R. Solomonof i O. Selfridž (MIT), kao i A. Nevil, H. Simon (Carnegie Tech, danas Carnegie Mellon University). Na skupu su stvorene osnove koncepta i trasiran je put za dalji razvoj vještačke inteligencije.

Ranije, 1950. godine, Alan Tjuring je objavio jedan članak u reviji Majnd (Mind), pod naslovom Računari i inteligencija, u kojem govori o konceptu vještačke inteligencije i postavlja osnove jedne vrste probe, preko koje bi se utvrđivalo, da li se određeni komputacioni sistem (računarski sistem), ponaša u skladu sa onim što se podrazumjeva pod vještačkom inteligencijom, ili ne. Kasnije će ta vrsta probe dobiti ime, Tjuringov test.

Skup je posljedica prvih radova u oblasti. Nevil i Simon su na njemu predstavili svoj program za automatsko rezonovanje, Logic Theorist (koji je napravio senzaciju). Danas se smatra, da su koncept vještačke inteligencije postavili V. Mekulok i M. Pits, 1943. godine, djelom u kojem se predstavlja model vještačkih neurona na bazi tri izvora: spoznaja o fiziologiji i funkcionisanju moždanih neurona, iskazna logika Rasela i Vajteheda, i Tjuringova komputaciona teorija. Nekoliko godina kasnije stvoren je prvi neuralni računar SNARC. Zaslužni za poduhvat su studenti Prinstona, M. Minski i D. Edmons, 1951. godine. Negdje iz iste epohe su i prvi programi za šah, čiji su autori Šanon i Tjuring.

Iako se ova istraživanja smatraju kao začetak vještačke inteligencije, postoje mnoga druga koji su bitno uticala na razvoj ove oblasti. Neka potiču iz oblasti kao što su filozofija (prvi pokušaji formalizacije rezonovanja su silogizmi grčkog filozofa Aristotela), matematika (teorija odlučivanja i teorija probabiliteta se primjenjuju u mnogim današnjim sistemima), ili psihologija (koja je zajedno sa vještačkom inteligencijom formirala oblast kognitivne nauke).

U godinama koje slijede skup u Dartmudu, postižu se značajni napreci. Konstruišu se programi koji rješavaju različite probleme. Na primjer, studenti Minskog će krajem šezdesetih godina implementirati program Analogy, koji je rješavao geometrijske probleme, slične onima koji se javljaju u testovima inteligencije, i program Student, koji rješava algebarske probleme napisane na engleskom jeziku. Nevil i Simon će razviti General Problem Solver (GPS), koji pokušava imitirati ljudsko rezonovanje. Samuel je napisao programe za igru sličnu dami (checkers), koji su bili osposobljeni za učenje te igre. Mekarti, koji je u međuvremenu otišao na MIT, implementira programski jezik Lisp, 1958. godine. Iste godine je napisao članak, Programs with Common Sense, gdje opisuje jedan hipotetički program koji se smatra prvim kompletnim sistemom vještačke inteligencije.

Ova serija uspjeha se lomi sredinom šezdesetih godina i previše optimistička predviđanja, ranijih godina, se frustriraju. Do tada implemetirani sistemi su funkcionisali u ograničenim domenima, poznatim kao mikrosvijetovi (microworlds). Transformacija koja bi omogućila njihovu primjenu u stvarnim okruženjima nije bila tako lako izvodljiva, uprkos očekivanjima mnogih istraživača. Po Raselu i Norivig-u, postoje tri fundamentalna faktora koji su to onemogućili:

  1. Mnogi dizajnirani sistemi nisu posjedovali saznanje o okruženju primjene, ili je implementirano saznanje bilo vrlo niskog nivoa i sastojalo se od nekih jednostavnih sintaktičkih manipulacija.
  2. Mnogi problemi koje su pokušavali riješiti su bili u suštini nerješivi, bolje rečeneo, dok je količina saznanja bila mala i ograničena rješenje je bilo moguće, ali kada bi došlo do porasta obima saznanja, problemi postaju nerješivi.
  3. Neke od osnovnih struktura koje su se koristile za stvaranje određenog inteligentnog ponašanja su bile veoma ograničene.

Do tog momenta rješavanje problema je bilo bazirano na jednom mehanizmu opšte pretrage preko kojeg se pokušavaju povezati, korak po korak, elementarne osnove razmišljanja da bi se došlo do konačnog rješenja. Naravno takav pristup podrazumjeva i velike izdatke, te da bi se smanjili, razvijaju se prvi algoritmi za potrebe kontrolosinja troškova istraživanja. Na primjer, Edsher Dajkstra 1959. godine dizajnira jedan metod za stabilizaciju izdataka, Nevil i Ernst, 1965. godine razvijaju koncept heurističke pretrage i Hart, Nilson i Rafael, algoritam A. U isto vrijeme, u vezi programa za igre, definiše se pretraga alfa-beta. Tvorac ideje je inače bio Mekarti, 1956. godine, a kasnije ju je koristio Nevil, 1958. godine.

Važnost shvatanja saznanja u kontekstu domena i primjene, kao i građe strukture, kojoj bi bilo lako pristupati, dovela je do detaljnijih studija metoda predstavljanja saznanja. Između ostalih, definisale su se semantičke mreže (definisane početkom šezdesetih godina, od strane Kilijana) i okruženja (koje je definisao Minski 1975. godine). U istom periodu počinju da se koriste određene vrste logike za predstavljanje saznanja.

Paralelno s tim, tokom istih godina, nastavljaju se istraživanja za stvaranje sistema za igru checkers, za koji je zaslužan Samuel, orijentisan na implementaciju neke vrste metode učenja. E.B. Hunt, J. Martin i P.T. Stone, 1969. godine konstruišu hijerarhijsku strukturu odluka (radi klasifikacije), koju je već idejno postavio Šanon, 1949. godine. Kilijan, 1979., predstavlja metod ID3 koji treba da posluži kao osnova za konstrukciju takve strukture. S druge strane, P. Vinston, 1979. godine, razvija vlastiti program za učenje deskripcija složenih objekata, i T. Mičel, 1977., razvija tzv., prostor verzija. Kasnije, sredinom osamdesetih, ponovna primjena metode učenja na neuralne mreže tzv., backpropagation, dovodi do ponovnog oživljavanja ove oblasti.

Konstrukcija aplikacija za stvarna okruženja, dovela je do potrebe razmatranja aspekata kao što su neizvjesnost, ili nepreciznost (koji se takođe javljaju prilikom rješavanja problema u igrama). Primjenjivali su se probabilističke metode (teorija probabiliteta, ili probabilističke mreže) i razvijali drugi formalizmi kao difuzni skupovi (definisani od L. Zadeha 1965. godine), ili Dempster-Šaferova teorija (tvorac teorije je A. Dempster, 1968., sa značajnim doprinosom G. Šafera 1976. godine).

Na osnovu ovih istraživanja, počev od osamdesetih godina, konstruišu se prvi komercijalni sistemi vještačke inteligencije, uglavnom tzv., ekspertni sistemi.

Danas, osnovni problemi koji se javljaju u istraživanjima vještačke inteligencije, vezani su za nastojanja konstruisanja kooperativnih sistema na bazi agenata, uključujući sisteme za upravljanje podacima, utvrđivanje redosljeda procesovanja podataka i pokušaja imitacije ljudskog jezika, između ostalih.

Problem definicije vještačke inteligencije

[uredi | uredi kod]

Za razliku od drugih oblasti, u vještačkoj inteligenciji ne postoji saglasnost oko jedne definicije, nego ih ima više zavisno od različitih pogleda i metoda za rješavanje problema.

Definicija i ciljevi

[uredi | uredi kod]

Uprkos vremenu koje je prošlo od kada je Džon Mekarti dao ime ovoj oblasti na konferenciji održanoj 1956. godine u Dartmudu, nije nimalo lako tačno definisati sadržaj i dostignuća vještačke inteligencije.

Najvjerovatnije, jedna od najkraćih i najjednostavnijih karakteristika koja se pripisuje vještačkoj inteligenciji, parafrazirajući Marvina Minskog, (jednog od stručnjaka i najpoznatijih istraživača vještačke inteligencije), je „konstruisanje računarskih sistema sa osobinama koje bi kod ljudskih bića bile okarakterisane kao inteligentne“.

Tjuringov test

[uredi | uredi kod]

U poznatom takozvanom Tjuringovom testu, koji je Alan Tjuring opisao i objavio u jednom članku iz 1950. godine, pod naslovom Computing machinery and intelligence (Računske mašine i inteligencija), predlaže se jedan eksperiment čiji je cilj otkrivanje inteligentog ponašanja jedne mašine.

Test polazi od jedne igre u kojoj ispitivač treba da pogodi pol dva interlokutora, A i B, a koji se nalaze u posebnim i odvojenim sobama. Iako oboje tvrde da su ženskog pola, u stvari radi se o muškarcu i ženi. U izvornom Tjuringovom prijedlogu urađena je izvjesna modifikacija, te je ženu zamijenio računar. Ispitivač treba da pogodi ko je od njih mašina, polazeći od njihovog međusobnog razgovora i imajući u vidu da oboje tvrde da su ljudi.

Zadatak treba postići uprkos činjenici da nijedan od interlokutora nije obavezan da govori istinu, te na primjer, mašina može odlučiti da da pogrešan rezultat jedne aritmetičke operacije, ili čak da ga saopšti mnogo kasnije kako bi varka bila uvjerljivija.

Po optimističkoj hipotezi samog Tjuringa, oko 2000. godine, već je trebalo da postoje računari osposobljeni za igru ove igre dovoljno dobro, tako da prosječan ispitivač nema više od 70% šanse da uradi ispravnu identifikaciju, nakon pet minuta postavljanja pitanja.

Kada bi to danas zaista bilo tako, nalazili bi se pred jednom istinski inteligentnom mašinom, ili u najmanju ruku mašinom koja umije da se predstavi kao inteligentna.

Ne treba ni pomenuti da su Tjuringova predviđanja bila previše optimistična, što je bio vrlo čest slučaj u samim počecima razvoja oblasti vještačke inteligencije.

U stvarnosti problem nije samo vezan za sposobnost računara za obradu podataka, nego na prvom mjestu, za mogućnost programiranja računara sa sposobnostima za inteligentno ponašanje.

Osnovni ciljevi istraživanja na polju vještačke inteligencije

[uredi | uredi kod]

Trenutno, kada su u pitanju istraživanja na polju vještačke inteligencije, moguće je postići dva komplementarna cilja, koji respektivno naglašavaju dva aspekta vještačke inteligencije, a to su teorijski i tehnološki aspekt.

Prvi cilj je studija ljudskih kognitivnih procesa uopšte, što potvrđuje definiciju Patrika J. Hejesa - „studija inteligencije kao komputacije“, čime se vještačka inteligencija usmjerava ka jednoj svojevrsnoj studiji inteligentnog ponašanja kod ljudi.

Konstukcija programskih rješenja

[uredi | uredi kod]

Vještačka inteligencija, kao oblast informatike, bavi se projektovanjem programskih rješenja za probleme koje nastoji riješiti.

Ponašanje nasuprot rezonovanju

[uredi | uredi kod]

Vještačka inteligencija u obrazovanju

[uredi | uredi kod]

San o računarima koji bi mogli da obrazuju učenike i studente, više decenija je inspirisao naučnike kognitivne nauke. Prva generacija takvih sistema (nazvani Computer Aided Instruction ili Computer Based Instruction), uglavnom su se zasnivali na hipertekstu. Struktura tih sistema se sastojala od prezentacije materijala i pitanja sa više izbora, koja šalju učenika na dalje informacije, u zavisnosti od odgovora na postavljena pitanja.

Naredna generacija ovih sistema Intelligent CAI ili Intelligent Tutoring Systems, zasnivali su se na implementaciji znanja o određenoj temi, u sam računar. Postajala su dva tipa ovakvih sistema. Prvi je trenirao učenika u samom procesu rješavanja složenih problema, kao što je npr., prepoznavanje grešaka dizajna u jednom električnom kolu ili pisanje računarskog programa. Drugi tip sistema je pokušavao da održava silogistički dijalog sa studentima. Implementaciju drugog tipa sistema je bilo vrlo teško sprovesti u praksu, velikim dijelom zbog problema programiranja sistema za razumijevanje spontanog i prirodnog ljudskog jezika. Iz tog razloga, projektovano ih je samo nekoliko.

Tipični sistem za treniranje učenika i studenata se obično sastoji od četiri osnovne komponente.

  1. Prva kompoeneta je okruženje u kojem učenik ili student radi na rješavanju složenih zadataka. To može biti simulacija komponente ili komponenata elektronskih uređaja predstavljena kao serija problema koje student treba da riješi.
  2. Druga komponenta je ekspertski sistem koji može riještiti predstavljene probleme na kojima student radi.
  3. Treću čini jedan poseban modul koji može uporediti rješenja koja nudi student sa onima koje su ugrađene u ekspertski sistem i njegov cilj je da prepozna studentov plan za rješenje problema, kao i koje dijelove znanja najvjerovatnije student koristi.
  4. Četvrtu čini pedagoški modul koji sugeriše zadatke koje treba riješiti, odgovara na pitanja studenta i ukazuje mu na moguće greške. Odgovori na pitanja studenta i sugestije za planiranje rješavanja zadataka, zasnivaju se na prikupljenim podacima iz prethodnog modula.

Svaka od ovih komponenata može koristiti tehnologiju vještačke inteligencije. Okruženje može sadržati sofisticiranu simulaciju ili inteligentnog agenta, odnosno simuliranog studenta ili čak oponenta studentu. Modul koji čini ekspertski sistem se sastoji od klasičnih problema vještačke inteligencije, kao što su prepoznavanje plana i rezonovanje nad problemima koji uključuju neizvjesnost. Zadatak pedagoškog modula je nadgledanje plana instrukcije i njegovo adaptiranje na osnovu novih informacija o kompetentnosti studenta za rješavanje problema. Uprkos složenosti sistema za treniranje učenika i studenata, projektovani su u velikom broju, a neki od njih se regularno koriste u školama, industriji i za vojne instrukcije.

Reference

[uredi | uredi kod]

Literatura

[uredi | uredi kod]

Vanjske veze

[uredi | uredi kod]