Linux E X P R E S

Facebook

Go v Linuxu

go.png

V druhém monotematickém dílu seriálu o deskových hrách se budu věnovat hře go, která je též známá pod jmény Weichi, Igo nebo Baduk.


Země s největší tradicí hraní go jsou Japonsko, Korea a některé části kontinentální Číny. Během posledních několika desetiletí obliba hry na Západě prudce stoupá. Téměř jistě se go v České republice stalo – hned po šachu – deskovou hrou s nejvyšším počtem závodních hráčů. Kromě toho se s programováním herních enginů pro go pojí mnoho zajímavých teoretických otázek, takže je intenzivně zkoumáno z hlediska umělé inteligence.

Největší výhody go

  • Pravidla go jsou podstatně jednodušší než pravidla šachů.

  • Začátečníci ocení možnost hraní na malých deskách (nejčastěji 9×9 nebo 13×13).

  • Systém hendikepů nabízí možnost vyrovnané hry mezi různě silnými soupeři. Různého hendikepu se dosahuje přidáním jednoho až devíti extra kamenů začínajícího černého hráče na hvězdové body (hoši) před prvním tahem nebo stanovením nepřiměřené hodnoty prvního tahu (komi).

Největší nevýhody go

  • Terminologie vychází z východoasijských jazyků. Mnoho specializovaných webů, časopisů a knih se soustředí na mluvčí těchto jazyků.

  • Neexistuje skutečně silný počítačový engine hrající na standardně velké desce (goban).

Komplexní řešení pro go

Nejznámější herní servery jsou IGS Go server (známý též jako Internet go server, Pandanet) a KGS go server (Kiseido Go Server). V obou případech je dostupné plně funkční webové rozhraní založené na Java aplletu a originální herní klienti. Pro klient IGS jde o glGo a pro KGS jde o cGoban. Bohužel KGS poskytuje pouze speciální uzavřený protokol, který vylučuje alternativy k cGobanu.

Hikarunix je linuxová distribuce založená na distribuci Damn Small Linux. Hikarunix se soustředí na hraní a studium hry go. Bližší informace naleznete na Distrowatch.

Herní síla enginů

Na „strategicky“ jednoduchém malém gobanu (herní desce) 9×9 dokážou vzdorovat i profesionálním hráčům. S vzrůstajícími rozměry gobanu však výkonnost počítačových programů vzhledem k lidské herní síle prudce klesá. Na běžném gobanu 19×19 dosáhly nejlepší počítačové enginy ratingu nízkého amatérského danu (silný amatérský hráč). Avšak z hlediska herní strategie nedosahují této úrovně, takže při znalosti a využití jejich slabin je dokáže porazit i podstatně slabší hráč. Nejlepší enginy vycházejí z Monte Carlo evaluace pozic. Začátečníci mohou herní enginy použít při osvojování si pravidel hry nebo pro stanovování statutu živý/mrtvý u skupin kamenů v komplikovanějších případech počítání skóre. (Programy téměř vždy spočítají skóre správně.) Pro silné hráče zůstává zajímavá jen hra proti počítači na malém gobanu.

Enginy pravidelně poměřují vzájemné síly na akcích jako Computer Olympiad a některé hrají na výše zmíněných serverech jako regulérní hráči. V současnosti nelze o žádném enginu říci, že je výrazně silnější než konkurenční enginy. Vzájemná síla enginů se mění i v závislosti na velikosti gobanu, času na hru, použitém hardwaru (např. zda podporují SMP), použitém operačním systému...

Herní enginy a klienti

Fuego je soubor knihoven, dalších zdrojových kódů a dat související s go. Vývoj zajišťují především pracovníci University of Alberta v Kanadě. Mimo jiné je součástí jednoho z vůbec nejsilnějších herních enginů. Tento engine mimo jiné jako první program dokázal na malém gobanu (9×9) porazit hráče s ratingem profesionální devátý dan. Většinou tento software není v distribučních repozitářích. Stáhnout jej lze například z oficiální stránky projektu.

GNU Go v terminálu GNU Go v terminálu

GNU Go má velmi dlouhou historii. Dříve patřil mezi vůbec nejsilnější programy. O tuto pozici přišel během nástupu moderních enginů založených na Monte Carlo metodě. Podporuje japonský způsob počítání skóre. (Obvyklé Monte Carlo enginy z implementačních důvodů často podporují jen čínský způsob počítání skóre.) MoGo, Pachi, Indigo a další jsou méně významné enginy založené na Monte Carlo metodě. Prvním moderním enginem s Monte Carlo byl Crazy Stone.

K hraní je samozřejmě potřeba vhodný frontend. Lze použít jednoduchý Quarry nebo zvolit rozsáhlejší ccGo. Další frontend goGui doporučují například vývojáři Fuego. Dále lze například vybírat ze dvou výše uvedených klientů k herním serverům... Některé frontendy podporují i tisk odehraných partií a jiných go diagramů. K tisku pozic dále slouží například jedno a druhé rozšíření (La)TeXu. O podpoře této specializované typografie ze strany OpenOffice.org nemám informace.

Hra na malém gobanu v Quarry Hra na malém gobanu v Quarry

Kogos Joseki Dictinary v goGui Kogos Joseki Dictinary v goGui

Podobně jako v šachu lze i v go zvýšit sílu herního enginu pomocí knihovny zahájení. Jednu z takovýchto knihoven nabízí právě projekt Fuego. Vzhledem k velikosti gobanu a charakteru hry existují dvě odlišné politiky studia zahájení. V teorii lokálních zahájení se stanovují vhodné posloupnosti tahů v jednom z rohů (tzv. joseki) bez ohledu na zbytek gobanu. Naopak fuseki jsou plány, jak zaplňovat velký volný prostor a volit joseki. Na objasňujícím obrázku je vpravo příklad joseki (jedna varianta Taisha tobitsuke joseki) a vlevo příklad fuseki (jedna varianta Kobayashi fuseki), kdy v budoucnu, pokud tomu nezabrání zvláštní okolnosti, hráči v každém rohu vyberou některé z joseki. K zvládnutí fuseki nestačí memorovat si velké množství variant, toto úsilí se ani nevyplatí. Naopak naprosto klíčové je pochopit motivaci úvodních tahů, proto ve fázi zahájení umělá inteligence zaostává. Použití knihovny fuseki pouze zamezí, aby engine prováděl vysloveně špatné tahy jako třeba zahájení hry do středu gobanu.

Vlevo fuseki a vpravo joseki Vlevo fuseki a vpravo joseki

Další software a odkazy

Článek o go zakončuje několik internetových zdrojů, věnujte proto zvýšenou pozornost odkazům pod článkem.

Autorem obrázku, ze kterého vychází obrázek v úvodu článku je dracos. Dílo je zveřejněno pod licencí Creative Commons BY-NC-SA.

Diskuze (4) Nahoru