Brăilago

Brăila, Go, restul se înţelege

RSS 2.0

Despre tătucul lui LeelaZero, Gian-Carlo Pascutto

Despre Demis Hassabis, cel ce a adus pe lume AlphaGo și AlphaZero, am amintit în destule articole de-a lungul anilor, despre David Silver, cel ce a condus echipa de la DeepMind am amintit luna trecută cu un lung  interviu, iar despre creatorul lui KataGo, am amintit acum două luni, deasemeni cu un interviu.

A venit deci vremea să îl prezentăm și pe Gian-Carlo Pascutto, cel ce a creat LeelaZero.

Wikipedia ne prezintă scurt cîteva date în articolul dedicat.

Aflăm deci că este născut în 1982 și este un  belgian programator, de profesie. Este autorul programului de șah  Sjeng și a celui de Go  Leela,[1] și autorul original al programului sursă deschisă Leela Zero.[2][3] Gian-Carlo de asemeni a scris multe componente de bază a foobar2000 media player.[4]

A absolvit Hogeschool Gent în 2006,  și a lucrat ca inginer al platformei mobile și manager la Mozilla Corporation din 2011.

Pascutto este născut în Ninove.[5] Este căsătorit și are doi copii.[6]

Dar pe lîngă aceasta scurtă prezentare mai există și un interviu publicat pe situl EGF.

Gian-Carlo Pascutto – The man behind LeelaZero

Voi traduce integral interviul mai jos.

Gian-Carlo Pascutto (GCP), autorul cărții LeelaZero, a fost de acord să ne acorde (EGN) un interviu.

EGN: Gian-Carlo, presupun că majoritatea jucătorilor Go au auzit de tine datorită software-ului LeelaZero, dar înainte ai programat șah. Ne poți spune o parte din istoria motorului tău Sjeng?

GCP: Am scris prima versiune ca proiect școlar și pentru a învăța programarea șahului. Existau deja o mulțime de motoare obișnuite de șah, așa că am scris ceva care ar putea juca în schimb mai multe variante. A fost foarte distractiv și mulți oameni l-au apreciat (este programul de șah care vine cu computerele Apple chiar și azi!) Dar a existat o mare lipsă de adversari împotriva cărora să se testeze. Am avut ocazia să particip la Open Dutch Computer Chess Championship și am decis să lucrez puțin la partea de șah obișnuită în pregătire. Turneul s-a dovedit a fi foarte distractiv, cu o victorie asupra unui adversar profesionist (Regele, motorul care alimentează ChessMaster) și am fost vrăjit. În vara următoare, am neglijat activitatea obișnuită de student, și am scris un motor îmbunătățit pentru a încerca să-l vînd: Deep Sjeng. În cele din urmă va deveni unul dintre cele mai puternice motoare și va câștiga două campionate mondiale.

EGN: Ce te-a determinat să fii interesat să scrii un motor pentru Go?

GCP: Lumea șahului electronic a avut  frecvent probleme cu plagiatul, care au făcut-o din ce în ce mai puțin interesantă ca o competiție de programare. Între timp, un cercetător francez a publicat o lucrare revoluționară despre Go electronic, care a resetat stadiul tehnicii de la adăugarea manuală de cunoștințe de Go elaborate cu atenție, la programe de căutare rapidă care se bazau pe cunoștințe relativ minime. Așadar, mi s-a părut un moment bun să încerc să scriu un program pentru Go. În plus, următorul Campionat Mondial de Șah pe Computer urma să se desfășoare împreună cu Olimpiada de Calculatoare de la Beijing, China. Aceasta părea o locație adecvată pentru a debuta și în competiția de Go.

EGN: Cred că acel cercetător a fost fie Bruno Bouzy (Indigo), fie Sylvain Gelly (Mogo).

GCP: Nu, a fost Rémi Coulom. Lucrarea a fost „Selectivitate eficientă și operatori de rezervă în căutarea arborelui Monte-Carlo”, care a introdus MCTS (Monte Carlo Tree Search). Aceasta a fost adevărata descoperire – ai putea spune că a sigilat soarta umanității. Gelly și Wang au îmbunătățit metoda prin înlocuirea unor construcții ad-hock cu o metodă care are o bază matematică mai fermă … atîta timp cît sunteți dispus să presupuneți că jocul Go este același lucru cu jocul la sloturile din Vegas. Un salt ciudat de știință care sigur îi va face pe jucătorii Go să se încrunte, dar pare să funcționeze totuși.

EGN: Cît despre programare, cineva ți-a influențat în mod special munca?

GCP: Programul Fruit de Fabien Letouzey a fost foarte instructiv pentru mine. Dintr-o dată ai un program extrem de simplu, care este mult mai puternic decît orice altceva. A fost o lecție grea că testarea este mult mai importantă decît aducerea de idei (complicate) și cod.

EGN: Ai avut vreo rivalitate amicală cu un adversar pe care ai vrut să îl depășești în programare?

GCP: Nu chiar. Adversarii veneau și plecau. Pe cîțiva i-aș considera colegi și am avut discuții interesante cu ei. Deoarece acest lucru a fost în mare parte un hobby, depășirea cuiva este oarecum restricționată de cantitatea de timp care poate fi comisă.

EGN: Ai avut mult succes, dar ce zici de momentele jenante? (La olimpiade, software-ul tău a jucat vreodată o scară întreruptă sau a părăsit o regină ân priză?)

GCP: Nu chiar. În timpul unuia dintre primele mele turnee, am avut norocul că cineva mi-a spus: „Poți vedea cu ușurință cine sînt profesioniștii și amatorii. Amatorii sîît cei care își îmbunătățesc programul între runde”. Implicația a fost, desigur, că, fără timp pentru a testa lucrurile în mod corespunzător, au obținut opusul. Am luat acest sfat foarte în serios. Deși, atunci cînd cineva se bazează pe ajutor extern (operatori, producători de cărți, etc.), cu siguranță am ceva păr alb din încercarea împărtășirii importanței acestui lucru celorlalți. Într-un caz, am primit hardware sponsorizat livrat cu o zi înainte de a pleca la un turneu în Austria (Campionatul Mondial de Șah 2003 la Graz), o mașină nouă care era la acea vreme una dintre primele cu capacitate AMD64. Nu a fost timp să testăm nimic, portarea programului avea erori și rezultatul a fost foarte mediocru. Dar nu a ratat nici regine, nici altceva.

EGN: Tu persoal joci Go? Presupun că publicul este curios să-ți cunoască rangul!

GCP: Am jucat ultima dată Go acum aproape 20 de ani. Am jucat câteva luni într-un club în timp ce eram student, dar am fost distras de alte interese. Nu am avut niciodată un rang real, dar puterea mea trebuie să fi fost de aproximativ 15-20 kyu sau cam așa ceva. Evident, acest lucru nu este o piedică pentru realizarea unui program de computer puternic. Atunci cînd dezvoltă sisteme de viziune pentru autoturisme, nimeni nu cere ingineri cu viziune 20/20.

EGN: Ești interesat de alte jocuri de strategie sau pasiunile tale se află în altă parte?

GCP: Am început să joc șah competitiv din nou la sfârșitul anului trecut, după ce una dintre fiicele mele mi-a cerut să o învăț jocul și mi-am dat seama că sunt suficient de bătrîn pentru a-mi permite să am iar astfel de pasiuni 🙂

EGN: Pentru non-experți, poți explica care este diferența esențială dintre Leela și LeelaZero?

GCP: Leela a fost instruit după jucători umani puternici și are destulă cunoștință (umană) și euristică despre joc programat în el. El folosește o combinație de rețele neuronale și redări Monte Carlo. Leela Zero cunoaște doar regulile de bază, nimic mai mult, și folosește doar o rețea neuronală fără simulări Monte Carlo.

EGN: Ai fost surprins de interesul generat de LeelaZero?

GCP: Da, foarte mult. Pe baza contribuției obținute la efortul de testare distribuită pentru Stockfish și a numărului comparativ mai mare de jucători de șah din vest, am estimat că vom avea, probabil, aproximativ 10 entuziaști de computer care să ruleze clientul. De fapt, în general au trecut peste 500! În mod similar, au existat și contribuții cu coduri de foarte bună calitate.

EGN: Deja o mulțime de proiecte încep să folosească LeelaZero. I-am văzut pe Lizzie, SabakiLeela și Iceelz. Ai tu însăși o idee pentru un viitor instrument didactic legat de Leela?

GCP: Voi lăsa acest lucru altora, pentru că nu este atît de distractiv pentru mine. Există un GUI de bază pentru Leela obișnuit din necesitate – mulți oameni care sunt mai puțin versați în ceea ce privește computerele ar avea mari probleme în a descărca și instala un motor separat și GUI și am vrut să-i ajut. La un moment dat, va fi actualizat la Leela Zero. Aș fi fericit să am doar o interfață grafică de analiză a jocului care să gestioneze bine variațiile, cu un fel de bază de date fuseki / joseki și cu un motor puternic care să o susțină, așa cum au avut șahiștii și le-au folosit ca pe cal de povară de zeci de ani. Sper că deschiderea sursei Leela Zero va realiza acest lucru. De asemenea, am făcut public rețelele și datele rezultate. Dacă cineva face ceva foarte frumos pe baza asta și dorește să perceapă bani pentru munca lui, poate face acest lucru.

EGN: Care sînt obiectivele viitoare pentru Leela Zero?

GCP: S-au schimbat pe măsură ce comunitatea a continuat să ofere resurse de calcul (și entuziasm!). Inițial am vrut doar să demonstrez că Alpha Zero poate fi reprodus printr-un efort distribuit și să văd dacă rezultatele lor sunt reproductibile. După aceea, am fost foarte fericit cînd a depășit-o pe Leela obișnuită (și ceva mai tîrziu, toate celelalte programe publice), ceea ce m-a făcut să mă simt bine, deoarece acum era cu adevărat ceva de arătat pentru toți oamenii care și-au donat timpul la computer. Apoi, bătînd un profesionist, și, în cele din urmă, depășind cu totul oamenii. Sînt sigur că am ajuns la acest punct acum. Din punct de vedere al forței, singurul motiv pentru a continuăm este să creăm o anumită marjă și să obținem același nivel pe telefoanele mobile.

Făcînd totul gratuit, am oferit, de asemenea, o bază pentru disponibilitatea publică a unui software și date bune. Nu pot spune exact cum Leela Zero a influențat lucrurile, dar cel puțin echipa TensorFlow de la Google, echipa Facebook PyTorch și Tencent (într-o oarecare măsură) și-au deschis acum eforturile în Goul electronic. În mod ironic, doar echipa originală DeepMind nu a făcut acest lucru. Efortul Facebook a urmărit destul de îndeaproape Leela Zero și rezultatele lor ne-au oferit o perspectivă bună despre unde vom ajunge. Am reușit să facem cîteva modificări pentru a îmbunătăți performanța atunci cînd jucam împotriva unui handicap, bazîndu-ne pe observarea punctelor slabe ale rezultatului lor.

EGN: Ai reușit să cîștigi bani de la Leela Zero?

GCP: Nu. Dar cred că a făcut mulți jucători Go să fie fericiți.

EGN: Post AlphaGo, credeți că munca implicată în Computer Go își va păstra interesul pentru dezvoltatori? Sau va deveni o zonă învechită?

GCP: Este greu de spus. Șahul computerizat a avut cîțiva ani decenți după Deep Blue. Dacă un mainframe IBM poate învinge campionul mondial, nu ajută cu niumic pe jucătorii de acasă. A trecut ceva timp pînă cînd software-ul pentru PC a fost clar mai puternic decît oamenii. Cu Goul lucrurile au decurs repede. Leela Zero bate deja profesioniști puternici pe un desktop de acasă. Mai există cîteva lucruri de abordat, cum ar fi jocul mai bun cu handicap, komi diferit și poate chiar reguli japoneze. Atît timp cît există o piață, vor găsi dezvoltatori. Dar pentru cercetători, este probabil mai distractiv să împingem granița la ceva la care computerele sunt încă slabe, decît să o împingem și mai mult în afara limitelor umane.

Categories: Diverse Tags:

Costel


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.

Categorii

Arhive