# AlphaGo

AlphaGo és un programa d'ordinador desenvolupat per Google DeepMind per jugar al go, el joc de tauler més antic del qual es conserven les regles. En el go les fitxes (anomenades pedres) no són al tauler, com passa en altres jocs, sinó que es van col·locant amb plena llibertat per tota la seva superfície amb l'objectiu d'abastar un territori més gran que el del rival. Durant molt temps el go s'ha vist com un dels majors desafiaments a la intel·ligència artificial.

## Fan Hui, derrota històrica

El 1997, per primera vegada en la història, una màquina —la supercomputadora d'IBM, Deep Blue— guanyava un campió mundial de jocs de tauler, l'escaquista rus Gary Kasparov. Gairebé dues dècades després, l'octubre de 2015, la versió distribuïda d'AlphaGo esdevingué el primer programa informàtic que batia un jugador professional de go. El rival humà va ser, en aquesta ocasió, el xinés d'origen francès Fan Hui, amb categoria 2 dan professional segons els sistemes de rànquing en el go. Es van jugar 5 partides sense handicap en un tauler de 19×19, AlphaGo les va guanyar totes.
Era la primera vegada que un programa d'ordinador guanyava un jugador de go humà professional. L'anunci de la notícia es va retardar fins al 27 de gener de 2016 per fer coincidir l'esdeveniment amb la publicació d'un article en la revista Nature que descriu els algoritmes emprats. Segons l'opinió d'alguns especialistes en intel·ligència artificial es calculava —així ho afirma l'article a Nature— que encara faltaven uns deu anys perquè un programa pogués vèncer un campió humà de go.
Demis Hassabis, responsable de Google Deepmind, va comentar,
| « | Ha estat el Sant Grial des que es va vèncer Kaspàrov als escacs. Hem trigat 20 anys, moltíssim temps si penses en l'esforç invertit i el creixement del poder de computació … Tots els experts deien que faltava una dècada per vèncer els millors jugadors professionals … Fins a nosaltres ens va sorprendre la força d'AlphaGo en aquell moment | » |
| — Demis Hassabis |||

## El go i la intel·ligència artificial

Els programes per jugar escacs, basats en l'ús de l'força bruta, són més forts que els humans. Amb els programes de go acabarà passant el mateix; tot i així, en el 2016, els programes tradicionals més potents d'intel·ligència artificial no són capaços encara de guanyar al go a jugadors aficionats amb nivells superiors al 5 dan (no professional). Els programes clàssics encara no han pogut batre mai un jugador professional de go, llevat que es jugui amb handicap.
El 2012, en un enfrontament amb el programari Zen corrent en un clúster de 4 ordinadors, el 9 dan professional Masaki Takemiya va perdre dues partides amb 5 i 4 pedres de handicap. El 2013, el programari Crazy Stone va batre Yoshio Ishida (9p) amb 4 pedres de handicap.
Resulta considerablement més difícil programar un ordinador per guanyar una partida de go que programar-lo per guanyar una partida d'escacs. Les combinacions possibles de moviments en el go són molt més elevades que en qualsevol altre joc de característiques similars, amb la qual cosa es fa molt difícil fer càlculs i prediccions sobre quina serà la direcció del joc amb metodologies algorítmiques tradicionals.
Es considera que el go és un joc més difícil que els escacs, ja que el seu arbre de cerca és més gran. Si en els escacs el nombre de moviments possibles en cada posició és aproximadament de 35 i el nombre total de moviments se situa al voltant dels 80, en el go el primer valor val ≈250 i el segon ≈150. Un algoritme de cerca sistemàtica amb avaluació de la posició mitjançant heurístics (com se sol usar en escacs) no és factible en el go.

### AlphaGo respecte al programari clàssic

AlphaGo representa una millora significativa sobre els programes tradicionals per jugar al go. En 500 partides contra altres programes de go disponibles, incloent-hi Zen i Crazy Stone, AlphaGo corrent en un sol ordinador va guanyar totes les partides excepte una. En un enfrontament similar, AlphaGo, corrent en ordinadors múltiples. va guanyar 500 partides, el 100%, contra altres programes de go, i el 77% de les partides jugades contra el mateix AlphaGo però corrent en un sol ordinador. La versió distribuïda utilitzà 1,202 CPU i 176 GPU, la qual cosa significa que pot arribar a ser unes 25 vegades més potent que la versió d'un sol equip.

### AlphaGo versus Lee Se-dol

AlphaGo es va entrenar per desafiar el jugador sud-coreà Lee Se-dol, 9 dan professional i campió mundial, en un torneig que se celebrà entre els dies 9 i 15 de març de 2016. Lee Se-dol és considerat el jugador més fort del món. Es creia que AlphaGo perdria en l'enfrontament del 2016 —les apostes només li donaven el 5% de possibilitats de triomf. Finalment, AlphaGo va guanyar el matx essent el vencedor de 4 partides d'un total de cinc. En cas de victòria, Lee Se-dol hauria guanyat un premi d'1 milió de dòlars.
Google va fer la retransmissió en directe via youtube. L'estatunidenc Michael Redmond, jugador professional de go, es va encarregar dels comentaris. D'altra banda, a Baduk TV també es va fer la retransmissió, amb Yoo Changhyuk i altres comentaristes i jugadors reconeguts.
L'encontre va tenir lloc a l'hotel Four Seasons, al centre de Seül, començant cada partida a la 1 pm hora local (05:00 a Espanya). El temps bàsic era de 2 hores per jugador, i hi havia 3 períodes de byo-yomi d'1 minut. Les partides van durar entre 4 i 5 hores. Es jugava amb regles xineses i amb 7,5 punts de komi.

## Algoritmes de caixa negra

AlphaGo fa servir algoritmes d'optimització, tipus caixa negra (black box), basats en xarxes neuronals artificials. El programa s'entrena amb un cert nombre d'exemples i pot emmagatzemar una sèrie de representacions internes o patrons associats a aquests exemples. A mesura que s'entrena pot anar reconeixent patrons diferents dels emmagatzemats com a patrons emparentats amb alguns d'aquells. D'aquesta manera és capaç de realitzar de forma eficient tasques com resoldre un problema d'optimització o avaluar un moviment en un joc com el go.

### Entrenament

AlphaGo disposa d'una xarxa de neurones artificials amb tretze capes ocultes. Utilitza tecnologia de xarxa neuronal profunda. En l'entrenament de la xarxa es fan servir tres fases,
* Aprenentatge supervisat. La xarxa aprèn de partides jugades per experts. S'han fet servir 30 milions de moviments del KGS Go Server, aconseguint que la xarxa predigui el moviment dels experts un 57,0% de les vegades. Altres programes de go no superen un 44,4%.
* Aprenentatge amb reforç. La xarxa aprèn de partides jugades contra altres programes de go. AlphaGo ha jugat contra el programa Pachi —capaç d'avaluar 100.000 possibilitats per a cada moviment— i ha vençut el 85% de les partides. Altres programes que fan servir aprenentatge supervisat només aconsegueixen vèncer Pachi un 12% de les partides.
* Aprenentatge amb reforç, en la qual AlphaGo s'ha enfrontat contra si mateix en 30 milions de moviments.
Al final de l'entrenament, la xarxa és capaç d'avaluar quins moviments seran més prometedors a l'hora de guanyar. Per recórrer l'arbre de cerca es fa servir l'algoritme de Montecarlo —com en la majoria dels programes que juguen al Go— que genera moviments aleatoris seguint una distribució de probabilitat esbiaixada gràcies a l'avaluació que ofereix la xarxa de neurones artificials. La xarxa generalitza els patrons apresos a l'hora d'avaluar nous moviments. La seva avaluació permet retallar l'arbre de cerca descartant moviments poc prometedors i modificar la cerca en profunditat (es prefereixen els moviments millor avaluats per la xarxa).

## L'estil de joc d'AlphaGo

Segons David Silver, qui ha desenvolupat AlphaGo al costat de Demis Hassabis en els laboratoris de Google Deepmind, es creia que el go tindria alguna cosa intuïtiva i que una màquina no podria adquirir la sofisticació d'un humà observant una posició i entenent-la. No obstant això, AlphaGo ha desenvolupat una cosa que podria denominar-se intuïció, gràcies a la feina de la seva intel·ligència artificial en diversos nivells.
Fan Hui, el primer jugador professional que va perdre en un enfrontament amb AlphaGo, va assegurar que el programa jugava com un ésser humà. Kim Myeong-wan, jugador 9 dan professional, va fer declaracions en el mateix sentit.
Fan Hui va comentar,
| « | La pèrdua va ser molt dura. Abans de jugar amb AlphaGo vaig pensar que guanyaria. Després del primer joc, vaig canviar d'estratègia i vaig lluitar més, però vaig acabar perdent. El problema és que els éssers humans fem de vegades grans errors, perquè som humans. A vegades estem cansats, a vegades tenim molt afany per guanyar el joc, tenim aquesta pressió. El programa no és així. És molt fort i estable, sembla com una paret. Per a mi això és una gran diferència. Sé que AlphaGo és un ordinador, però si ningú no m'ho hagués dit, potser jo hauria pensat que era un jugador una mica estrany, però un jugador molt fort, un ésser humà. Per descomptat, quan vaig perdre el joc no estava content, però tots els professionals necessiten perdre molts jocs. Així si perdo, puc descobrir els meus errors, i potser canvio la meva manera de jugar. Crec que és una bona cosa per al futur | » |
| — Fan Hui |||
Toby Manning, l'àrbitre del matx contra Fan Hui, va suggerir que l'estil de joc d'AlphaGo era més conservador que agressiu.
| « | El que més em va cridar l'atenció va ser que no podia dir qui era l'ésser humà i qui era l'equip. L'única cosa que no era humà va ser la forma en què AlphaGo va administrar el seu temps. Fan Hui va prendre més temps jugant els seus moviment. AlphaGo no semblava tan agressiu com podria haver estat un ésser humà, jugava amb molta calma evitant les lluites. | » |
| — Toby Manning |||

## Darkforest, de Facebook Inc.

La companyia Facebook Inc. —que també està interessada en el desenvolupament de la intel·ligència artificial— va voler fer-se amb Deepmind, però Google Inc. va guanyar la partida aquesta vegada. Des de llavors, l'empresa fundada per Demis Hassabis li ha donat grans alegries als seus compradors, amb diversos èxits tan celebrats en els mitjans com reconeguts en les revistes científiques.
Mesos abans, Facebook havia entrat en la cursa per conquistar el joc de go, en la qual Google Deepmind portava massa avantatge, com s'ha posat en evidència. El programari de Facebook, anomenat darkforest, encara està molt lluny dels sistemes comercials d'última generació que juguen al go. Quan ja se sabia que la cursa estava guanyada per Deepmind (la notícia estava embargada des de fa dies), Mark Zuckerberg publicava en el seu perfil els modestos èxits de la seva divisió d'intel·ligència artificial per aconseguir conquerir el go.

## Aplicacions futures d'AlphaGo

Segons Deepmind, en els anys vinents es desenvoluparan aplicacions pràctiques a partir del cervell d'AlphaGo que podrien abastar des de l'anàlisi de models climàtics fins al diagnòstic mèdic. La companyia ha llançat un missatge il·lusionant segons el qual la intel·ligència artificial podria arribar a assolir en menys de deu anys un rendiment comparable al nivell humà que permetria enfrontar problemes aparentment irresolubles el dia d'avui.

## Referències

* 1 2 3 4 5 6 «Go: La inteligencia artificial conquista el último tablero de los humanos | Ciencia | EL PAÍS» (en castellà). [Consulta: 23 febrer 2016].
* ↑ «Google AI algorithm masters ancient game of Go : Nature News & Comment» (en anglès). [Consulta: 24 febrer 2016].
* 1 2 3 4 5 «Research Blog: AlphaGo: Mastering the ancient game of Go with Machine Learning». Google Research Blog, 27-01-2016.
* 1 2 Metz, Cade. «In Major AI Breakthrough, Google System Secretly Beats Top Player at the Ancient Game of Go» (en anglès), 26-02-2016.
* 1 2 3 «Google achieves AI 'breakthrough' by beating Go champion». BBC News, 27-01-2016.
* ↑ «Sepcial Computer Go insert covering the AlphaGo v Fan Hui match». British Go Journal.
* ↑ «Première défaite d'un professionnel du go contre une intelligence artificielle» (en francès). Le Monde, 27-01-2016.
* 1 2 3 4 Silver, David; Huang, Aja; Maddison, Chris J.; Guez, Arthur; Sifre, Laurent; Driessche, George van den; Schrittwieser, Julian; Antonoglou, Ioannis; Panneershelvam, Veda «Mastering the game of Go with deep neural networks and tree search». Nature, 529, 7587, pàg. 484–489. DOI: 10.1038/nature16961.
* 1 2 «Computer scores big win against humans in ancient game of Go». CNN, 28-01-2016. [Consulta: 28 gener 2016].
* ↑ «Zen computer Go program beats Takemiya Masaki with just 4 stones!». Go Game Guru. Arxivat de l'original el 1 de febrer 2016. [Consulta: 28 gener 2016].
* ↑ «「アマ六段の力。天才かも」囲碁棋士、コンピューターに敗れる　初の公式戦». MSN Sankei News. Arxivat de l'original el 2013-03-24. [Consulta: 27 març 2013].
* ↑ Schraudolph, Nicol N.; Terrence, Peter Dayan; Sejnowski, J. Temporal Difference Learning of Position Evaluation in the Game of Go.
* 1 2 3 4 «Los algoritmos de caja negra de AlphaGo | Ciencia | La Ciencia de la Mula Francis» (en castellà). [Consulta: 23 febrer 2016].
* ↑ «Artificial intelligence breakthrough as Google's software beats grandmaster of Go, the 'most complex game ever devised'». Daily Mail, 27-01-2016 [Consulta: 29 gener 2016].
* ↑ «Google AlphaGo AI clean sweeps European Go champion». ZDNet, 28-01-2016. [Consulta: 28 gener 2016].
* ↑ «Google’s AI AlphaGo to take on world No 1 Lee Se-dol in live broadcast». The Guardian, 05-02-2016. [Consulta: 15 febrer 2016].
* ↑ «Repte intel·ligència artificial contra humà amb el go». [Consulta: 24 febrer 2016].
* ↑ Novet, Jordan. «YouTube will livestream Google’s AI playing Go superstar Lee Sedol in March», 04-02-2016.
* 1 2 «AlphaGo | Google DeepMind» (en anglès). Arxivat de l'original el 2016-02-25. [Consulta: 26 febrer 2016].
* ↑ «Pachi - Board Game of Baduk» (en anglès). [Consulta: 24 febrer 2016].
* 1 2 Gibney, Elizabeth «Go players react to computer defeat». Nature, 2016. DOI: 10.1038/nature.2016.19255.
* ↑ Gibney, Elizabeth. «Google AI algorithm masters ancient game of Go», 27-01-2016.
* ↑ Tian, Y., & Zhu, Y. (2015). Better Computer Go Player with Neural Network and Long-term Prediction. arXiv preprint arXiv:1511.06410.
* ↑ «Ciencia Kanija 2.0 | Un algoritmo se convierte en un maestro del antiguo juego del Go, Magufos» (en castellà). [Consulta: 26 febrer 2016].
* ↑ 90210, HAL «No Go: Facebook fails to spoil Google's big AI day» (en anglès). The Guardian, 28-01-2016.
* ↑ «Mark Zuckerberg | Facebook» (en anglès). [Consulta: 26 febrer 2016].

## Vegeu també

* Go
* Sistemes de rànquing en el go
* Handicap en el go
* Variants del go

## Enllaços externs

* «AlphaGo | Google DeepMind» (en anglès). Arxivat de l'original el 2016-02-25. [Consulta: 25 febrer 2016].
* «Demis Hassabis - Home» (en anglès). [Consulta: 26 febrer 2016].