Programarea pe calculator a jocului Go este un domeniu al inteligenței artificiale. Această programare a fost mult timp considerată ca o provocare foarte dificilă în comparație cu programarea șahului pe calculator. În timp ce unele programe de calculatoare au devenit maeștri internaționali la șah, în ceea ce privește go-ul performanțele au fost atinse mult mai greu. În prezent (2012) cel mai bun program are 6 dan.[1]

Cauzele care fac dificilă programarea

modificare

Regulamentul jocului este foarte simplu, dar teoria este foarte dezvoltată, cu tehnici, concepte și mutări specifice, principii de strategie, scheme de captură la colțurile sau pe laturile tablei de joc, toate legate între ele. Jocul este abstract la maxim: nu există decât piese albe și negre, toate cu aceeași formă.

O altă cauză, mai puțin importantă, este cea istorică - șahul a pătruns mai repede în Europa și America. În cazul șahului programarea s-a bazat inițial pe sistematizarea arborelui mutărilor pieselor, dar apoi s-a combinat această idee cu încercarea de eliminare a unor posibile viitoare ramificații pe baza unor considerente teoretice, evaluându-se static poziția curentă. Același lucru îl fac intuitiv oamenii, care simt și resping anumite variante, fără a realiza niciun calcul.

Cea mai mare problemă și adevărata rămânere în urmă a programării go-ului față de programarea șahului este că în go nu există piese, există formații. Piesele pot fi pierdute, valorând doar un punct, dar formațiile trebuiesc apărate, extinse, întărite, eventual abandonate. Evaluarea configurațiilor de piese nu poate fi făcută pe căi exhaustive (ca la șah, unde se păstrează fișiere cu poziții „bune” și „proaste”). Numărul de configurații posibile pe tabla de Go este de 3361 (există 361 de intersecții - fiecare cu 3 stări posibile - ocupată de o piesă albă; ocupată de o piesă neagră; sau liberă). Din acest număr se mai scade puțin deoarece trebuie să nu existe grupuri fără libertăți. Aceste formații trebuiesc privite ca structuri bidimensionale, analiza acestora fiind imposibilă de calculatoarele de până în anii 2000. Recunoașterea acestor forme este un domeniu foarte studiat al inteligenței artificiale, cu limitări uriașe ale aplicabilității.

În 1986, Multitech Industrial Corporation[2] a lansat un premiu de un milion de dolari pentru primul program de go de nivel dan, oferta fiind valabilă până în 2000.[3]

Istoria programelor de go

modificare

Primul program de Go a fost scris de Albert Zobrist în 1968, ca parte a tezei sale cu privire la recunoașterea modelelor.

Listă de programe

modificare
 
Logo-ul GNU Go
  • AYA Arhivat în , la Wayback Machine. de Hiroshi Yamashita
  • Crazy Stone de Rémi Coulom (vândut ca Saikyo no Igo în Japonia)
  • Fuego, un program Monte Carlo open source
  • GNU Go, un program clasic de Go, open source
  • Go++ de Michael Reiss (vândut ca Strongest Go sau Tuyoi Igo în Japonia)
  • Go Intellect de Ken Chen
  • Handtalk/Goemate, dezvoltat în China de Zhixing Chen (vândut ca Shudan Taikyoku în Japonia)
  • Haruka de Ryuichi Kawa (vândut ca Saikouhou în Japonia)
  • Indigo de Bruno Bouzy
  • Katsunari de Shin-ichi Sei
  • KCC Igo, din Coreea de Nord (vândut ca Silver Star sau Ginsei Igo în Japonia)
  • Leela, primul program Monte Carlo de vânzare pentru publicul larg
  • The Many Faces of Go de David Fotland (vândut ca AI Igo în Japonia)
  • MyGoFriend Arhivat în , la Wayback Machine. de Frank Karger
  • MoGo Arhivat în , la Wayback Machine. de Sylvain Gelly; versiune paralelă: http://www.lri.fr/~teytaud/mogo.html Arhivat în , la Wayback Machine. mai mulți autori.
  • Pachi program Monte Carlo open source de Petr Baudiš, versiune online Peepo Arhivat în , la Wayback Machine. de Jonathan Chetwynd, cu hărți și comentarii despre joc
  • Smart Go de Anders Kierulf, inventatorul a Smart Game Format
  • Zen de Yoji Ojima aka Yamato (vândut ca Tencho no Igo în Japonia); versiune paralelă de: Hideki Kato.
  1. ^ KGS Game Archives, www.gokgs.com 
  2. ^ http://taiwantoday.tw/ct.asp?xItem=110433&CtNode=122
  3. ^ Anunțul a fost și pe Communications of the ACM
  • Gh. Păun - Matematica! Un spectacol!, Ed. Științifică și Enciclopedică, Colecția Știința pentru toți, nr. 303, 1988, pag. 75-82