Menu Zavřít

Vítězství stroje nad člověkem? Umělá inteligence zabodovala v soutěži programátorů

4. 2. 2022
Autor: Youtube
  • Společnost DeepMind patřící Googlu vyvinula AI, jež umí samostatně řešit úlohy z konkurenčního programování

  • Software se jmenuje AlphaCode a v programovací soutěži na platformě Codepowers porazil 54 procent svých soupeřů. V celkovém půlročním pořadí se umístil mezi nejlepšími 28 procenty programátorů

  • Umělá inteligence se v praxi lidem stále nevyrovná, neumí improvizovat ani odhalit chybu. I tak ale dalece předčí očekávání svých tvůrců i pořadatele výzvy

Porazí stroje lidstvo? Zatím není třeba se bát, vysavače ani kuchyňské roboty se nezačnou měnit v Terminátory ještě hodně dlouho. S nejvyšší pravděpodobností k tomu nedojde nikdy, ale v programování už umělá inteligence začíná lidský mozek dotahovat. Alespoň to vyplývá z oznámení zástupců firmy DeepMind vlastněné Googlem. Společnost svou umělou inteligenci jménem AlphaCode přihlásila do soutěže v konkurenčním počítačovém programování, během níž se utkala s 5000 účastníky v deseti simulacích. Stroj porazil 54 procent z nich.

Podobná věta možná rozsvítí červenou kontrolku v hlavách mnoha přihlížejících, ale známým Turingovým testem, který slouží k rozeznání, zda se za zdí nachází člověk či stroj, by kód stále neprošel. Kdyby totiž organizátoři v průběhu kola změnili pravidla soutěže, soupeř by AI okamžitě odhalil. Neuměla by se totiž přizpůsobit - specializuje se velmi úzce a improvizovat neumí. Zástupci DeepMind přiznávají, že ještě musí na kódu programovacího počítače zapracovat, než bude podávat stejné výkony jako špičkoví odborníci z masa a kostí.

Příliš velké sousto i pro Muska? Šéf Tesly chce do roka vyrobit robota, který bude chodit na nákup sám
Přečtěte si také:

Příliš velké sousto i pro Muska? Šéf Tesly chce do roka vyrobit robota, který bude chodit na nákup sám

Pokud by se umělá inteligence učila přímo na soutěžních příkladech, samozřejmě by ji nepřekonal nikdo, ale to by pak o nic nešlo. Ony konkrétní úkoly ale stroj nikdy předtím neviděl, a proto od něj vyžadovaly zapojení kombinace kritického myšlení, logiky, algoritmů, programování a přirozeného porozumění jazyku. Zkrátka musel uvažovat jako člověk.

Program píše program

Typické zadání v soutěži totiž vypadalo třeba jako městské plánování. Programátoři měli na základě určitých omezení vymyslet, jak umístit budovy a silnice tak, aby město fungovalo. Dále měli třeba tvořit strategie, které by jim přinesly vítězství v deskových hrách. „Soutěže v programování mě fascinovaly celý život,“ prozradil BBC vedoucí vědec ve výzkumném oddělení DeepMind Oriol Vinyals. Práce na AlphaCode mu splnila dětský den, ale ani on nikdy neočekával, že AI se vyrovná průměrným lidem a skončí v lepší polovině pořadí soutěže.

Vinyals zároveň napsal webu the Verge, že výzkumy ohledně algoritmu teprve začínají, ale že tato soutěž celou firmu posunula blíž jejímu cíli – tedy vytvoření kreativní a přizpůsobivé umělé inteligence, jež bude schopna samostatně řešit problémy. Takový program by pak mohl sám tvořit jiné programy, což zatím dokážou pouze lidé. „V dlouhodobém měřítku mohu říci, že se těším, až AlphaCode bude pomáhat programátorům i amatérům s psaním kódů. Zvýší jejich produktivitu a mohou díky němu objevit nové způsoby tvorby softwaru,“ pokračuje vědec.

Turnaj měl na starosti Mike Mirzayanov, zakladatel platformy Codeforces, který nazval AlphaCode slibným nováčkem v klání. „Mohu bezpečně tvrdit, že AlphaCode překonal má očekávání,“ sdělil tisku. „Byl jsem skeptický, protože ani v nejjednodušších soutěžích většinou nestačí implementovat existující algoritmus. Jde o to ho vymyslet, což je nejsložitější část procesu,“ dodal.

Tři kódy pro Popelku

Na webu Codeforces se každý týden objevují pravidelné výzvy, v nichž mohou zájemci z řad veřejnosti otestovat své dovednosti, podobně jako šachisté v rámci statistického hodnocení výkonnosti Elo. Tyto úkoly často vychází z praxe a zadání tvoří například typické překážky čekající na tvůrce komerčních webových a mobilních aplikací. Typicky se jedná o hádanky vyžadující širší znalosti algoritmů i počítačové teorie a k jejich rozlousknutí potřebuje hráč logiku, matematiku a zkušenosti s kódy.

Jednou si měli soutěžící například zahrát na Popelku a za použití omezeného množství vstupů roztřídit náhodně pomíchaná písmena do vzorně srovnaných řádků. Obtížnost tohoto úkolu spočívala například v tom, že účastníci nemohli psát nová písmena – museli tedy znaky pouze ubírat. AlphaCode po předložení hádanek tohoto typu postupoval následujícím způsobem: nejprve vygeneroval velké množství možných odpovědí, následně je jednu po druhé zkoušel a ty nefunkční vyhazoval. Někteří lidští soutěžící to dost možná dělají stejně. „Celý proces je automatický a s výběrem nejlepšího vzorce mu nijak nepomáháme,“ tvrdí shodně Yujia Li a David Choi, kteří společně vedli studii ohledně AlphaCode. I tak se na stránce Codeforces systém objevil mezi 28 procenty nejúspěšnějších hráčů z posledních šesti měsíců.

„Vyřešení problému pomocí konkurenčního programování je opravdu náročné, protože to vyžaduje jednak dobré kódovací dovednosti a jednak kreativitu při nahlížení na problém,“ okomentoval úspěch umělé inteligence softwarový inženýr Googlu Petr Mitrichev, který se této disciplíně rovněž věnuje.

Trochu pokročilejší autokorekce

AI se zaměřením jen a pouze na tento typ kódování sama o sobě není příliš užitečná. Její potenciál spočívá v tom, že plní funkci průkopníka, který by mohl otevřít dveře k mnohem rozsáhlejší automatizaci programovacího procesu. Na podobných projektech totiž pracuje mnoho dalších společností. Koneckonců samotný zakladatel DeepMind Mustafa Suleyman nyní firmu opouští a své mnoho let sbírané znalosti ohledně AI si ponese s sebou do nové práce.

Své peníze svěřuje do ,robo-rukou‘ stále více investorů. V USA už umělá inteligence spravuje lidem finance za téměř bilion dolarů
Přečtěte si také:

Své peníze svěřuje do ,robo-rukou‘ stále více investorů. V USA už umělá inteligence spravuje lidem finance za téměř bilion dolarů

Například laboratoř OpenAI patřící Microsoftu upravila program generující jazyk GPT-3 tak, aby dokončoval řetězce kódu. GPT-3 je stejně jako AlphaCode založen na architektuře umělé inteligence známé jako transformátor, která je zvláště zběhlá v analýze sekvenčního textu - jak přirozeného jazyka, tak kódu. Koncovému uživateli tedy podobně jako obyčejná autokorekce v mobilu nabízí možnosti, jak dokončit slovo či větu. Nebo algoritmus.

FIN25

Ale stejně, jako bychom svou klávesnici nenechali za sebe psát pracovní maily, ani tyto systémy nemohou nahradit práci vývojářů. Stále ještě chybují, protože se často učí ve veřejných databázích kódů a pak opakují části cizích materiálů i s jejich nedokonalostmi. Proto je budou programátoři začleňovat do své práce jen velmi pozvolna. Systémy se totiž mají ještě mnoho co učit. A že to jim jde rychle.

  • Našli jste v článku chybu?