Minulo sredo je v Tokiu na Japonskem potekalo finale vsakoletnega tekmovanja v hevrističnem kodiranju AtCoder World Tour 2025. AtCoder je velika spletna telovadnica za programerje, ki omogoča reševanje različnih programerskih nalog, učenje novih algoritmov in tekmovanje z drugimi programerji po svetu.

Tekmovanje v hevrističnem programiranju od tekmovalcev medtem zahteva, da najdejo optimalno rešitev zelo zapletenega problema, ki nima enostavne oziroma popolne rešitve. Pogosto gre za probleme, kjer obstaja veliko oziroma preveč možnosti, da bi jih računalnik vse preizkusil. Hevristično programiranje je tudi izjemno pomembno v resničnem svetu. Veliko problemov, s katerimi se srečujejo podjetja in znanstveniki, je preveč kompleksnih za »popolne« rešitve. Kot primere se pogosto navajajo optimizacija dostavnih poti za pakete in načrtovanje letalskih prog, optimizacija naložbenih portfeljev ter sprejemanje odločitev v igrah, kot je Go, kjer je preveč možnih potez.

Modeli umetne inteligence so leta 2023 znali uspešno rešiti vsega 4,4 odstotka kodirnih problemov. Lani se je to število že povzpelo na 71,7 odstotka.

Čeprav je hevristično programiranje pomembno, takšna tekmovanja običajno minejo brez velike odmevnosti. Letošnje tekmovanje najboljših 12 hevrističnih programerjev pa je pritegnilo kar nekaj pozornosti, saj se je tokrat proti človeškim programerjem v maratonskem 10-urnem tekmovanju pomeril tudi prilagojen model umetne inteligence o3 podjetja OpenAI. Končni rezultat je presenetil. Modeli umetne inteligence so leta 2023 znali uspešno rešiti vsega 4,4 odstotka kodirnih problemov. Lani se je to število že povzpelo na 71,7 odstotka. Letos pa je umetna inteligenca na prestižnem tekmovanju kodiranja zasedla drugo mesto. Za zmagovalcem, Poljakom Przemysławom Dębiakom, ki je nekoč tudi sam delal za OpenAI, je zaostala zgolj za 9,5 odstotka zbranih točk. Za seboj je medtem pustil deset elitnih človeških programerjev. »Človeštvo je zmagalo (za zdaj)!« je na omrežju X po zmagi zapisal Dębiak in dodal, da je med sodelovanjem na več tekmovanjih v treh dneh le malo spal. »Popolnoma sem izčrpan … Komaj sem živ.« Umetna inteligenca težav z izčrpanostjo ni imela.

Podjetje OpenAI je drugo mesto svojega modela umetne inteligence označilo za vrhunski dosežek. »Modeli, kot je o3, se uvrščajo med sto najboljših na tekmovanjih v programiranju, vendar kolikor nam je znano, je to prva uvrstitev med prve tri na vrhunskem tekmovanju v programiranju,« so sporočili. »Dogodki, kot je AtCoder, nam omogočajo, da preizkusimo, kako dobro se naši modeli lahko strateško odločajo, načrtujejo v dolgih časovnih obdobjih in izboljšujejo rešitve s poskusi in napakami – tako kot bi človek.«

Programerji so menili, da bo umetna inteligenca njihovo delo pospešila za 24 odstotkov, a je raziskava pokazala, da so z njo delali 19 odstotkov počasneje.

Umetna inteligenca povečuje produktivnost?

Dosežek je tudi velika zmaga za javno podobo umetne inteligence. Podjetje METR, ki raziskuje in izdeluje metode za ocenjevanje kakovosti generativne umetne inteligence, je pred kratkim objavilo raziskavo o učinkih umetne inteligence na produktivnost programerjev. Vsi glavni ponudniki umetne inteligence že od prvega dne trdijo, da umetna inteligenca verjetno ne bo nadomestila programerjev, ampak bodo z njeno pomočjo postali bolj produktivni. Da so s pomočjo umetne inteligence bolj produktivni, pogosto menijo tudi programerji sami. Raziskava METR, ki je potekala med februarjem in junijem 2025, je to oceno postavila na glavo.

Izkušeni programerji, ki so sodelovali v raziskavi, so menili, da bodo s pomočjo umetne inteligence rešili naloge 24 odstotkov hitreje, na koncu pa se je presenetljivo izkazalo, da so v resnici porabili 19 odstotkov več časa, kot bi ga potrebovali, če ne bi uporabljali umetne inteligence. Zaradi šokantnih rezultatov se je sprva menilo, da raziskava ni verodostojna, a so se ti dvomi medtem večinoma polegli.

Kako je lahko prišlo do težave? Kdor pogosto uporablja umetno inteligenco za doseganje točno določenih ciljev, verjetno že ve. Generativna umetna inteligenca je izvrstna za ustvarjanje izdelkov, ki navdušijo v promocijskih videih, dosti slabše pa ji gre pri ustvarjanju točno takšnih izdelkov, kot smo si jih zamislili. Najpogostejši primer so slike, ki so skoraj popolne, a je kompozicija kadra vseeno neprimerna za potrebe. Želeli ste sliko psa, ki piše knjigo, pa mu je umetna inteligenca namesto šape naredila človeško roko. Napako ste poskušali odpraviti. Pes je v novem poskusu sicer dobil pasjo šapo, namesto pisalnega stroja pa ima zdaj pred seboj že kar natisnjeno knjigo, po kateri piše.

Podobno se dogaja programerju, ki mora porabiti veliko časa za resnično natančna navodila umetni inteligenci, da bi naredila točno to in zgolj to, kar zares hoče. To pogosto zahteva tudi več dopisovanja z umetno inteligenco, na koncu pa sledijo še popravki kode. Vse skupaj traja dlje, kot če bi izkušen programer sam napisal kodo.

Nekateri izkušeni programerji so ob tem izpostavili, da svojo kodo pogosto zelo dobro razumejo in bolje vedo, kaj je treba pri njej storiti, kot umetna inteligenca, ki ji je treba svoje želje jasno sporočiti. Nekateri pa so dodali, da kljub zamudnosti pomoč umetne inteligence vseeno ni tako nehvaležna. Na nek način deluje kot ruleta, saj se vselej lahko zgodi, da ugane pravilno in človeku močno privarčuje delo. Hkrati ima človek med čakanjem na odgovor umetne inteligence na zahtevno nalogo čas, da malce odklopi in pobrska po spletu. 

Priporočamo