Anar al contingut

Escacs per computadora

De L'Enciclopèdia, la wikipedia en valencià
GNU Chess 5.07 en interfaç WinBoard 4.2.7.
Videojoc Lichess en format web.

En el XVIII va escomençar a difondre's l'idea de crear una màquina capaç de jugar al escacs. En l'any 1768 un jugador d'escacs autómata cridat El Turc[1] es va fer famós ans que es descobrira que era un engany. L'espanyol Leonardo Torres Quevedo va construir, en 1912, un autómata capaç de jugar a l'escacs, cridat El Ajedrecista. Despuix d'aquells successos el tema de l'escacs mecànic no es va tornar a mencionar i va caure en l'oblit, fins a l'aparició de la computadora en la década dels 50. Des de llavors, els aficionats de l'escacs i de l'informàtica han construït màquines i programes que juguen a l'escacs.

En les últimes décades de el XX i en XXI, les computadores d'escacs estan disponibles per un preu insignificant, i hi ha numerosos programes (molts de software lliure, com GNU Chess, Amy, lichess, o Crafty) que poden jugar a l'escacs en qualsevol ordenador personal i derrotar a jugadors professionals baix condicions de torneig, mentres que alguns d'entre els millors programes comercials d'escacs, com Shredder, Fritz, Rybka o Fruit, han vençut a molts jugadors de calibre i varis campeons del món en temps de control molt curts i partides llampada.

Existixen vàries causes que varen motivar l'existència de l'escacs computarizado, com l'entreteniment propi (permetent que els jugadors practiquen i es divertixquen quan no hi ha cap oponent disponible), també com a ferramenta o soport d'anàlisis, per a competicions entre computadores d'escacs, i com a investigació o abastiment del coneiximent humà.

No obstant, i a pesar de la sorpresa de molts, l'escacs nos ha ensenyat molt poc referent a la construcció de màquines que proporcionen inteligència humana, o fer qualsevol atra cosa que no siga jugar prodigiosamente a l'escacs. Per esta raó, l'escacs computarizado, aixina com també molts atres jocs, com el Scrabble, no tenen un gran interés acadèmic per als experts de l'inteligència artificial, sent este reemplaçat per jocs més intuïtius, com el Go. El funcionament dels programes d'escacs consistix, essencialment, en explorar un número molt elevat de possibles futurs moviments i aplicar-los una funció d'evaluació al resultat, mentres que les computadores de Go desafien als programadors a idear nous enfocaments i estratègies de joc.

Les tàctiques basades en la força bruta són pràcticament inútils per a la majoria de problemes que han afrontat els investigadors de l'IA. L'estil de joc d'un programa d'escacs es diferencia en gran mida de l'estil de joc humà, ya que l'elecció del moviment a jugar és totalment distinta. En alguns jocs d'estratègia, les computadores solen véncer fàcilment la gran majoria de partides, mentres que en uns atres, els principiantes vencen a les màquines sense major esforç. En l'escacs, el resultat de la fusió de les habilitats dels experts, en els programes d'escacs, és major que el de qualsevol dels dos a soles.

Estratègia contra força bruta

[editar | editar còdic]

El primer artícul sobre el tema va ser escrit per Claude Shannon,[2] i publicat en 1950, abans de l'existència d'una computadora que jugara a l'escacs, i va predir acertadamente les dos possibles principals formes de busca de qualsevol programa, a les que va nomenar de 'Tipo A', i de 'Tipo B'.


Els programes 'Tipo A', més rudimentaris, utilisarien una busca basada en la "força bruta", els quals examinarien totes possibles posicions de cada branca de l'arbre de moviments usant l'algoritme minimax. Shannon va creure que açò seria molt poc pràctic per dos raons:

  • Primer, en aproximadament 30 moviments possibles en una posició típica de mig joc, Shannon va predir que buscant les 306 (més de 700.000.000) posicions contingudes en els primers tres moviments (d'abdós bandos, lo que són 6 plies), tardaria aproximadament 16 minuts, inclús en el cas "molt optimiste" que el programa evaluara un milló de posicions per segon. Despuix d'esta conjectura, es va tardar al voltant de 40 anys per a conseguir eixa velocitat.
  • Segon, s'ignorava el problema de la latencia, ya que el programa tracta d'evaluar la posició resultant despuix de tot l'intercanvi de peces ocorregut durant tots eixos moviments al final de cada branca de l'arbre. Els programes de 'Tipo A' funcionen aixina, pero l'inconvenient és que s'incrementa enormement el número de posicions necessàries per a l'anàlisis, i d'esta manera el programa es relentizaba encara més.

En lloc d'este gastar la potència de procés examinant moviments mals o trivials, Shannon va sugerir que als programes tipo B utilisarien una espècie de "inteligència artificial estratègica" per a solucionar estos problemes en els que únicament s'analisarien solament les millors jugades de cada posició, alguna cosa semblat a lo que fan els jugadors humans. Açò permetria al programa analisar les llínees significantes de manera més profunda en un temps raonable.

Adriaan de Groot va entrevistar a varis jugadors d'escacs de varis nivells i la seua conclusió va ser que tant els grans mestres com els principiantes calculen aproximadament quaranta o cinquanta posicions abans de decidir que jugada moure. Lo que realment diferencia a jugadors experts de jugadors mediocres és l'habilitat del reconeiximent de patrons, que es va adquirint en l'experiència. Açò permet analisar més profundament les millors llínees i no perdre el temps en atres pijors. Una prova d'això és que els jugadors d'escacs recorden moltes de les posicions jugades en anteriors partides i deprenen de l'experiència, no obstant, les computadores no ho tenen tan fàcil.

El problema dels programes 'Tipo B' és que es confia massa que el programa pot decidir qué moviments són suficientment bons per a ser dignes de consideració en qualsevol posició, sent un problema molt més greu que en programes 'Tipo A' en un hardware de gran velocitat.

Un dels grans defensors de les computadores d'escacs entre els grans mestres va ser el Campeó del món d'escacs Mijaíl Botvínnik, que va escriure varis treballs en la matèria. També posseïa un doctorat en Ingenieria Elèctrica. Encara que va treballar en hardware relativament primitiu en l'URSS a principis dels anys 1960, Botvinnik no va tindre l'oportunitat d'investigar les tècniques de software de selecció de moviments, en eixe moment els ordenadors més potents podien conseguir tres plies per busca i Botvinnik no tenia tals màquines. En 1965 Botvinnik va ser conseller en el quipo ITEP en el partit de computadores EE. UU.-URSS.

En 1973, l'Universitat de Northwestern, encarregada de la creació de programes de Tipo B, va deixar de programar-los, passant al bando dels programes de Tipo A. Va ser la creadora d'una varis de programes d'escacs que varen guanyar els primers tres tornejos ACM Computer Chess Championships (1970-1972). El programa de Tipo A resultant va ser "Chess 4.0", guanyador del torneig ACM durant 5 anys seguits, ademés d'inaugurar un dels campeonats més importants, el World Computer Chess Championship (WCCC).


Una de les raons per les que varen realisar el canvi va ser perque trobaven als programes de Tipo B poc estimulants durant els tornejos, ya que és molt difícil predir lo que van a moure, i molt manco el per qué. Una atra raó va ser que en els programes de Tipo A era molt més fàcil detectar els fallos del programa i depurar-los, i varen conseguir fer d'ell un programa lo suficientment ràpit: en el temps que solien prendre per a decidir els moviments que eren dignes de ser buscats, era possible buscar tots ells.

De fet, Chess 4.0 va establir un paradigma que era i continua utilisant-se en tots els programes d'escacs actuals. Els programes tipo Chess 4.0 guanyaven per la simple raó que els seus programes simplement jugaven un millor escacs. Tals programes no intentaven imitar els processos de pensament humans, pero confiaven completament en busques alfa-beta i Negascout. Molts de tals programes (incloent tots els programes actuals) també inclouen una part selectiva prou llimitada de la busca basada en busques latents i normalment extensions i podat (particularment podat de moviments nuls des dels anys 1990) que eren llançades basades en certes condicions en un intent d'eliminar o reduir els moviments mals obvis (històrics de moviments) o investigar nodos interessants (p.ej. comprovació d'extensions, peons passats en la sèptima fila, etc). No obstant, els llançament d'extensió i poda tenen que utilisar-se en molt conte. Si es sobrextiende el programa gasten massa temps analisant posicions sense interés. Si es poda massa, hi ha riscs de tallar nodos interessants. Els programes d'escacs diferixen en térmens de cóm i quins tipos de regles de poda i extensió s'utilisen aixina com de la funció d'evaluació. Es creu que alguns programes són més selectius que uns atres (per eixemple Deep Blue se sap que és menys selectiu que molts programes comercials perque podia permetre's fer més busques completes), pero tots tenen una base de busques com a fonament i tots tenen component selectius (busca-Q, poda/extensions).

Encara que tals adició significa que el programa realment no examinaria cada nodo dins de la profunditat de busca (de tal manera que no seria realment força bruta en eixe sentit), els estranys errors deguts a estes busques selectives es troba que consumixen en temps extra que és aforrat degut a que es podria aumentar la profunditat. D'eixa manera els programes d'escacs poden obtindre lo millor d'abdós móns.

Ademés, el desenroll i els alvanços tecnològics varen fer que el sistema de força bruta continuara en alça i s'intensificara molt més en els anys 90. El resultat ha segut la creació de programes molt més sòlits, en una IA tàctica realment sorprenent, programes molt més exactes sense a penes errors, i conduïts cap al llímit de la seua profunditat de busca. Açò ha produït resultats extraordinaris, per lo manco referent a l'escacs, deixant que les computadoras facen lo que millor saben fer, calcular, en lloc d'intentar emular l'inteligència i coneiximent humans. En 1997, Deep Blue, una computadora de Tipo A, va derrotar al Campeó del Món Garry Kasparov, sent la primera volta que una computadora derrotara al campeó del món en temps de control de torneig.


No obstant, a finals dels anys 1990, els programadors varen escomençar a preferir els programes de Tipo B, i varen escomençar a substituir als de Tipo A. En 1998 es publica Rebel 10, un programa comercial de Tipo B, qui va derrotar a Viswanathan Anand per 5-3, i es va proclamar el segon motor d'escacs més fort del món aquell any. cal dir que de les quatre partides d'escacs ràpit (temps de control: 5 min + 5 s per jugada) que es varen jugar, Rebel va guanyar 3 d'elles, en les dos partides semirrápidas, varen quedar 1.5-0.5 a favor de Rebel, i en la partida en temps de control més llarc (40/2:00, 1 hora), va ser Anand qui va véncer. D'açò es pot deduir que les computadores juguen millor que els humans en temps de control més ràpits, pero que la força dels jugadors es medix en temps de control més llarcs, a on Anand va demostrar que els humans seguixen sent millors.[3]

A principis de el XXI varen sorgir nous programes d'escacs comercials, com Deep Junior, o Fritz, els qui varen conseguir empatar als campeons del món Garry Kasparov i Vladímir Krámnik. En el 2005, Hydra, una computadora d'escacs del Tipo B, va derrotar al millor jugador britànic i sèptim millor classificat del món, Michael Adams, en una trobada de sis partides en un contundent resultat: 5.5 - 0.5 a favor de Hydra.[4]

Vore també

[editar | editar còdic]
  1. Breu resenya sobre la màquina d'escacs autómata El Turc.
  2. Artículs publicats en 1951 i 1949 respectivament per C.Shannon i A.Touring.
  3. «Rebel vs Anand».
  4. «Hydra vs Michael Adams». Archivat des d'el original, el 11 d'agost de 2007.

Referències

[editar | editar còdic]


Referències

[editar | editar còdic]