Из техничких разлога садржај читалишта можете пратити искључиво на латиници.

Istorijski razvoj programskih jezika

Najstariji računarski sistemi razvijani su u prvoj polovini dvadesetog veka. Oni su bili mehaničkog ili elektromehaničkog tipa. Programiranje istih je, ukoliko su uopšte bili programabilni, bila funkcija mehaničkog prepodešavanja njihovog hardvera. Unos novog ili promena tekućeg programa izvršavana je tako što su zubčanici ili električni releji prepovezivani na konfiguraciju koja bi odgovarala željenom poslu. Ova praksa se uz manje izmene nastavila i kroz prve čisto električne računare. Prvi svetski priznati čisto električni univerzalni računar ENIAC koristio je ovu formu programiranja u procesu koji je mogao trajati i do nekoliko nedelja. 

Опширније...

Neuro-evolucija sa menjajućim topologijama (3.)

Eksperimentalni rezultati

Uz ovaj rad, NEAT tehnika je implementirana na par problema. Prvo, standardni problemi treniranja mreža koje rešavaju eksluzivno ili (xor) i problem balansiranja inverznog klatna na kolicima (pole balancing problem). Zatim, NEAT je korišćen da trenira botove za igricu Racer, u kojoj oni treba da kontrolišu pojednostavljena kola u trci.

 

Опширније...

Neuro-evolucija sa menjajućim topologijama (2.)

 

Neuro-evolucija sa menjajućim topologijama (Neuro-evolution with augmenting topologies, NEAT) je tehnika koju su 2002. razvili Kenet Stenli Oven I Risto Mikulainen sa Univerziteta Teksas. Ova tehnika koristi genetske algoritme da istrenira strukturu mreže i težine veza, i ima zgodan način izbegavanja nazivanja istog neurona različitim imenima koristeći istorijske podatke generisane pri stvaranju novih neurona i veza. NEAT pokušava da proizvede mrežu minimalne veličine, tako što počinje evoluciju koristeći inicijalnu populaciju mreža sa minimalnom topologijom i dodavanjem neurona i veza za vreme evolucije. Ovo je zanimljivo rešenje zato što i priroda radi na sličan način – povećavajući složenost organizama vremenom.

 

Opširnije...

Neuro-evolucija sa menjajućim topologijama (1.)

Mašinsko učenje je naučna disciplina koja se bavi stvaranjem i proučavanjem algoritama koji mogu da uče iz podataka. Takvi algoritmi funkcionišu gradeći model baziran na ulazima, i koriste ga da naprave predviđanja ili odluke (umesto zakucanih programskih instrukcija). Neuralne mreže su model inspirisan radom mozga. Predstavljaju se kao sistem međusobno povezanih neurona, koji mogu da računaju svoje vrednosti u zavisnosti od ulaza.

Опширније...

Kako da razmišljate kao programer? (3.)

Jedna od najvećih grešaka koju stalno susrećem u svetu tehnologije je problem kratkoročne koristi nasuprot dugoročnih rešenja. Previše često programer koristi prečice: ono što je najlakše, uzima alatke koje već ima, ili tehnologije koje su trenutno popularne. Te vrste kompromisa dovode do sistema koji su sklepani, postaju zastareli kôd koji je skoro nemoguć za održavanje, neefikasan i spor.

Опширније...

Kako da razmišljate kao programer? (2.)

 

U prvom delu teksta koji je izašao na IT Čitalištu, bilo je reči o tome kako je obrazovanje, pogotovo solidna osnova u matematici, suštinski važno da bi se postalo odličan programer. U ovom, drugom delu teksta, obradićemo neke stvari koje su veoma bitne za lični razvoj svakog programera.

Опширније...