Gomocup 2020: Embryí obhajoba

Gomocup 2020: Embryí obhajoba

Poslední dubnový víkend proběhl již 21. ročník Gomocupu, nebo-li turnaje umělé inteligence (AI) v gomoku/piškvorkách a renju. Po loňském senzačním výsledku Embrya od českého programátora Míry Fontána jsme byli zvědaví, jestli se letos objeví nějaké překvapení a současného krále z některého ze čtyř trůnů sesadí. Zároveň s tím se nabízela otázka, zda Embryo usedne i na trůn nové kategorie, kde se mu postavil dosud nepoznaný a velmi silný protivník.

Pro ty, kdo o soutěži dosud neslyšeli, připomínáme, že GOMOCUP je každoroční událost, které by se dalo přezdívat jako "mistrovství světa umělé inteligence v piškvorkách a renju". Letos se na start oproti předchozímu ročníku postavil opět větší počet brainů, konkrétně 48, z toho 3 zcela nové a dále několik vylepšených verzí již ostřílených brainů (včetně českých zástupců v podobě Embryo20 a XOXO20).

Novinkou letošního ročníku byla jedna zbrusu nová "experimentální" kategorie. K tradičním 4 kategoriím: Freestyle (20x20, 5 a více, 30s/tah a 180s/hru + pro finále 300s/tah a 1000s/hru), Fastgame (20x20, 5 a více, 5s/tah a 120s/hru), Standard (15x15, pouze 5, 300s/tah a 1000s/hru) a Renju (15x15, renju pravidla, 300s/tah a 1000s/hru), přibyla kategorie Experimental (15x15, swap2, pouze 5, bez omezení času na tah a 90min/hru).

V hlavních 4 kategoriích jsme se nedočkali žádného velkého překvapení a stejně jako loni směřuje i letos velká gratulace Mírovi Fontánovi, jež se svou opět o něco vylepšenou verzí Embrya obhájil svá prvenství a potvrdil, že prostě nemá konkurenci! Jediná změna oproti předchozímu ročníku se udála v kategoriích Standard a Renju na bronzové příčce, kde brain Wulin, jež se letos soutěže neúčastnil, vystřídal brain PentaZen. V kategorii Standard na sebe upozornil i nakonec bramborový brain AlphaGomoku, když porazil i stříbrný Yixin18 poměrem 12:11 a kromě prvního Embry nebyl poražen.

Zlepšení zaznamenal i další český programátor a hráč v jedné osobě Jakub "3ifndef" Horák se svou letošní verzí XOXO. Kvůli chybě v protokolu mu sice nevyšla hlavní kategorie Fastgame, ale v kategorii Freestyle poskočil z loňského 10. na letošní 6. místo a připsal si posílení o 159 Elo. Premiérový start v kategorii Standard mu pak vynesl pěkné 5. místo ze 17 soutěžících. Dané naznačuje, že pokud Kuba vytrvá, příští rok již bude bojovat o medaile!

Už výše zmiňovanou novinkou letošního ročníku pak byla kategorie Experimental, jejíž pravidla již více méně odpovídala profesionálnímu gomoku zápasu. Programy mezi sebou hrály pouze dvě partie s tím, že každý programátor volil zahájení. Hrálo se podle pravidla swap2 a časový limit byl 90 minut/hru bez omezení času na tah. Brainy navíc běžely na počítačích jejich vývojářů a neexistovalo žádné hardwarové omezení. V této kategorii to tedy již nebyl pouze souboj mezi algoritmy za stejných podmínek, ale do hry vstupovaly další faktory, ať už strategie či technické vybavení.

V této kategorii se vůbec poprvé objevil brain KataGomo, který funguje na principu neuronové sítě. KataGomo je odvozený od projektu KataGo, což je open source projekt vybudovaný na myšlence AplhaGo od Google. Samotný princip, jak KataGomo funguje, nám vysvětlil Míra Fontán:

"KataGomo se učí ze sehraných partií, přičemž se užívají výlučně partie sehrané aktuální verzí algoritmu v dané fázi učení. Na úplném začátku jsou to tedy pouze náhodné tahy, dokud se omylem nepodaří udělat pětku. Tato náhoda je poté ohodnocena tím, že tato partie je vybrána jako vzorová a jsou z ní vyextrahované nějaké vědomosti do neuronové sítě, tj. že pětka je dobrá a čtyřka, která jí předchází taky. Postupně tak síť objevuje vzory, které jsou výhodné a naučí se hrát. Počet partií, které jsou sehrané, je v řádu několika milionů, přičemž na relativně dostupném HW je to otázka dnů až týdnů."

KataGomo ukázalo svou sílu a zvítězilo. Zaváhalo pouze v jedné hře s AlphaGomoku, které i přes prohru s Embryem bralo možná trochu překvapivě stříbro. Míru a jeho Embryo bohužel zradily jak skryté chyby v kódu, tak i podcenění přípravy zahájení, takže z toho byla "jen" bronzová příčka.

Přestože letošní ročník nebyl výsledkově zlomový a možná ani tak napínavý jako tomu bylo v minulých letech, představil nám novou kategorii, ve které již nerozhoduje pouze faktor nejlépe napsaného kódu, ale do hry vstupují další neméně podstatné okolnosti jako například vhodně zvolená strategie zahájení nebo přístup k technickému vybavení. Ne každý musí tento směr vítat, pro fanouška soutěže je to ovšem zajímavé zpestření, když to i s ohledem na téměř neomezené možnosti činí tuto kategorii více nepředvídatelnou.

Nadto stojí za zmínku, že i letos na sebe značným zlepšením upozornili vývojáři některých brainů, ať už PentaZen nebo AlphaGomoku, které již šlapaly (a mnohdy velmi úspěšně) na paty těm nejlepším.

Máme tedy rozhodně již nyní důvod těšit se, co přinese příští ročník!

VÝSLEDKY jednotlivých kategorií jsou prozatím ZDE

EDIT: Omlouváme se za nepřesné tvrzení v původní verzi článku, dle kterého se letos jednalo o premiéru umělé inteligence fungující na principu neuronové sítě. Ve skutečnosti se již programy fungující na principu neuronové sítě soutěže v předchozích letech účastnily (např. AlphaGomoku či Stardust), byť za značně limitujících hardwarových podmínek, kde se jejich skutečná síla nemohla naplno projevit, jako se tak mohlo stát letos poprvé právě v kategorii Experimental.



Diskuze k článku

 
1