Un motor d'escacs és un programa que sap jugar escacs i que implementa un llenguatge de comunicació que li permet parlar amb altres programes.
Història El significat de la frase “motor d'escacs” ha evolucionat amb el temps. El 1986, Linda i Tony Sherzer van ingressar el seu programa Bebe al 4t Campionat Mundial d'Escacs Informàtic, executant-lo a "Chess Engine", el seu nom comercial per al maquinari informàtic d'escacs https://www.game-ai-forum.org/icga-tournaments/tournament.php?id=65 fabricat i comercialitzat per la seva empresa Sys-10, Inc. http://www.sys-10.com/ El 1990, els desenvolupadors de Deep Blue, Feng-hsiung Hsu i Murray Campbell, van escriure sobre donar al seu programa un "motor de cerca", aparentment referint-se al programari més que al maquinari.Feng-hsiung Hsu, Thomas Anantharaman, Murray Campbell and Andreas Nowatzyk. "A Grandmaster Chess Machine." Scientific American. October 1990. El desembre de 1991, Computer-schach & Spiele es va referir al recent llançament de Fritz de Chessbase com a 'Schach-motor', la traducció alemanya de 'motor d'escacs'.Computer-schach & Spiele would later start using the English word 'engine,' eg. 1997#6 when describing Fritz or Hiarcs. A principis de 1993, Marty Hirsch estava fent una distinció entre programes d'escacs comercials com Chessmaster 3000 o Battle Chess per una banda, i "motors d'escacs" com ChessGenius o el seu propi MChess Pro de l'altra. En la seva caracterització, els programes d'escacs comercials tenien un preu baix, tenien gràfics elegants, però no ocupaven un lloc destacat a les llistes de classificació de la SSDF (Associació Sueca de Computadores d'Escacs), mentre que els motors eren més cars i tenien puntuacions altes."The True Value of Chess Software." Computer Chess Reports. 1992-3. vol. 3 no. 2 page 22
El 1994, Shay Bushinsky estava treballant en una versió inicial del seu programa Junior. Volia centrar-se en la part dels escacs en lloc dels gràfics, per la qual cosa va preguntar a Tim Mann com podia aconseguir que Junior es comuniqués amb Winboard. La resposta de Tim va formar la base del que es va conèixer com el Protocol de Comunicació del Motor d'Escacs o motors Winboard, originalment un subconjunt de la interfície de línia d'ordres de GNU Chess. http://tim-mann.org/history.html
També el 1994, Stephen J. Edwards va llançar l'especificació Portable Game Notation (PGN). Esmenta que els programes de lectura de PGN no necessiten tenir un "motor d'escacs complets". També esmenta tres "interfícies gràfiques d'usuari" (GUI): XBoard, pgnRead i la base de dades Slappy. http://www.thechessdrum.net/PGN_Reference.txt
Interfícies Xboard / Winboard va ser una de les primeres interfícies gràfiques d'usuari (GUI). Tim Mann el va crear per proporcionar una GUI per al motor GNU Chess, però després d'això, van aparèixer altres motors com Crafty que usaven el protocol Winboard. Finalment, el programa Chessmaster va incloure l'opció d'importar altres motors Winboard a més del motor King inclòs.
El 1995, ChessBase va començar a oferir el motor Fritz com un programa separat dins del programa de base de dades de ChessBase i dins de la GUI de Fritz. Poc després, van afegir els motors Junior i Shredder a la seva línia de productes, empaquetant-los dins de la mateixa GUI que es va fer servir per a Fritz. A finals de la dècada de 1990, la GUI de Fritz podia executar motors Winboard a través d'un adaptador, però després de 2000, Chessbase simplement va afegir suport per a motors UCI i ja no va invertir gaire esforç a Winboard.
El 2000, Stefan Meyer-Kahlen va començar a vendre Shredder en una interfície gràfica d'usuari UCI separada del seu propi disseny, cosa que permetia importar motors UCI o Winboard.
Convekta de Chess Assistant i ChessPartner de Lokasoft també afegeixen la capacitat d'importar motors Winboard i UCI als seus productes. Shane Hudson va desenvolupar la Shane's Chess Information Database, una GUI gratuïta per a Linux, Mac i Windows. Martin Blume va desenvolupar Arena, una altra GUI gratuïta per a Linux i Windows. Lucas Monge va entrar al camp amb la GUI gratuïta de Lucas Chess. https://lucaschess.pythonanywhere.com/ Tots tres poden manejar motors UCI i Winboard.
En Android, Aart Bik va sortir amb Chess per a Android, http://www.aartbik.com/android.php una altra GUI gratuïta, i Chess PGN Master http://pgnmaster.kalab.com/ de Gerhard Kalab i Droidfish de Peter Osterlund http://hem.bredband.net/petero2b/droidfish/index.html també poden servir com a GUI per a motors.
La Wiki de Computer Chess enumera moltes GUI d'escacs. http://computer-chess.org/doku.php?id=computer_chess:wiki:lists:gui_protocol_support_list
Protocols Els motors comuns de Winboard inclourien Crafty, ProDeo (basat en Rebel), Chenard, Zarkov i Phalanx.
El 1995, ChessBase va llançar una versió del seu programa de base de dades que incloïa Fritz 4 com a motor independent. Aquesta va ser la primera aparició del protocol ChessBase. Poc després, van afegir els motors Junior i Shredder a la seva línia de productes, inclosos els motors al protocol CB com a programes separats que podrien instal·lar-se al programa Chessbase o en una de les altres GUI d'estil Fritz. Fritz 1-14 només es van emetre com a motors Chessbase, mentre que Hiarcs, Nimzo, Chess Tiger i Crafty s'han adaptat al format Chessbase tot i que eren motors UCI o Winboard. Recentment, Chessbase ha començat a incloure motors d'Interfície Universal d'Escacs (UCI) als seus programes de joc, com Komodo, Houdini, Fritz 15-16 i Rybka en lloc de convertir-los en motors de ChessBase.
El 2000, Stefan Meyer-Kahlen i Franz Huber van llançar la Interfície Universal d'Escacs, un protocol més detallat que va introduir un conjunt més ampli de característiques. Poc després, Chessbase va abandonar el suport per als motors Winboard i va afegir suport per a UCI a les GUI dels seus motors i els programes de ChessBase. La majoria dels motors principals són UCI en aquests dies: Stockfish, Komodo, Leela Chess Zero, Houdini, Fritz, Rybka, Shredder, Fruit, Critter, Ivanhoe i Ruffian.
Des de 1998, l'empresa alemanya Millenium 2000 va passar breument dels ordinadors dedicats als escacs al mercat de programari, desenvolupant el protocol Millennium Chess System (MCS) per a una sèrie de CD que contenen ChessGenius o Shredder, però després de 2001 va deixar de llançar programari nou.Computer-schach & Spiele. L'empresa holandesa Lokasoft ha utilitzat un protocol de motor més antic, http://www.lokasoft.nl/ que finalment es va fer càrrec de la comercialització de Rebel d'Ed Schröder.
Força creixent Els motors d'escacs incrementen la força de joc cada any. Això és en part per l'increment de la capacitat de processament que permet fer càlculs més profunds en un temps determinat. Addicionalment, les tècniques de programació han millorat permetent als mòduls ser més selectius en les línies que analitzen i tenir més “entesa posicional”.
Alguns motors usen bases de dades de finals per incrementar la seva força durant el final. Una base de dades de finals emmagatzema totes les possibles posicions amb petits grups de material. Cada posició és de manera concloent determinada com a guanyadora, perdedora, o taules per al jugador que mou, i el nombre de jugades per al final amb el millor joc de cada costat. Les bases de dades de finals en tots els casos identifiquen la millor jugada a cada posició inclosa (identificant la jugada que guanya més ràpid contra una defensa perfecta, o la jugada que perd més lentament contra un atac òptim). Hi ha bases de dades disponibles per a finals de 3 a 6 peces (comptant els reis) i per a alguns de 7 peces. Quan la maniobra en un final per aconseguir un millorament irreversible se'n va més enllà de l'horitzó de càlcul del motor, no es garanteix que aquest trobi la millor jugada sense l'ús d'una base de dades de finals, i en molts casos pot incórrer a la regla de les 50 jugades. Alguns experts han assenyalat el potencial mal ús de les bases de dades de finals pels programadors, portant a un joc dolent.
Comparació entre motors Tornejos Els resultats dels tornejos de motors, com el Torneig Mundial d'Escacs per Ordinador, donen una idea de les forces relatives entre els motors d'escacs. Tot i això, en els tornejos no es juga un nombre de partides estadísticament significatiu per determinar de manera precisa la força dels motors. De fet, el nombre de partides necessari per assolir la precisió és de milers i és impracticable sota l'esquema d'un torneig. Molts tornejos permeten, a més, qualsevol tipus de maquinari, en aquests es comparen les combinacions motor/hardware.
Històricament, els programes comercials han estat els motors més forts. Rybka va guanyar el WCCC del 2007. Una cosa que s'ha vist és que si un motor guanya un torneig o té un bon exercici en un (per exemple Zappa el 2005), llavors és ràpidament comercialitzat.
Llistes de classificació de motors Les llistes de qualificació dels motors d'escacs ajuden a proveir mesures estadístiques sobre la força dels diferents motors. Aquestes llistes juguen moltes partides entre motors en plataformes estàndard de maquinari, traient així el factor de diferències de processador que pot ser un avantatge. Aquestes llistes no només estableixen una classificació, sinó també marges d'error per a les qualificacions donades. A més, les llistes típicament juguen partides contínuament, publicant moltes dades per any, comparat amb els tornejos que només es fan una vegada a l'any. +Llistes de classificació a l'11 de novembre de 2020 Llista de classificació Control de temps (moviments / minuts) Any iniciat Última actualització Entrades de motor / plataforma Jocs jugats Els tres millors motors Classificació CCRL 40/40 Reflexió APAGAT 2005 7 de novembre de 2020 2,732 1,189,229 Stockfish 12 x64 4CPU Komodo 14 x64 4 CPU Houdini 6 x64 4CPU 3516 3419 3400 CEGT 40/20 Reflexionar APAGAT 2006 8 de novembre de 2020 1875 1,401,865 Stockfish 12.0 x64 4CPU LCZero 0.26.3 Houdini 6.0 3587 3539 3426 IPON 5m + 3s ~ 16min / partida Reflexionar ENCÈS 2006 15 de juliol de 2018 208 546,430 Stockfish 9 Houdini 6.02 Komodo 11.2.2 3383 3347 3322 SSDF Torneig 40/120 (+20 moviments/hora) Reflexionar sobre ? 1984 11 de juliol de 2020 391 153,481 Stockfish 11 x64 Komodo 13,1x64 Deep Shredder 13 x64
Suites de prova Els motors es poden provar mesurant el seu exercici en posicions específiques. L'ús de Suites de prova és típic, on per a una posició donada hi ha una millor jugada per trobar. Aquestes posicions poden ser orientats cap a allò posicional, tàctic o joc de finals. La suite de prova Nolot, per exemple, s'enfoca en sacrificis profunds. Hi ha altres suites com la BT2450 i BT2630 desenvolupades per Hubert Bednorz i Fred Toennissen. Aquestes suites mesuren la capacitat tàctica d'un mòdul i han estat utilitzades almenys per REBEL. Hi ha a més una suite d'ús general anomenada Brilliancy per Dana Turnmire. La suite ha estat compilada majoritàriament des de How to Reassess Your Chess Workbook.
Categories de motors Motors gratuïts Hi ha centenars de motors d'escacs disponibles de manera gratuïta i que compleixin algun dels protocols de comunicació esmentats anteriorment. Molts corren a Windows o són codi obert. Uns quants dels més forts es llisten. Altres es poden trobar mirant les llistes de qualificació o els enllaços externs.
Puntuacions Elo preses de CCRL 40/40, accedit al juliol de 2011.
Alaric (v707 Elo 2752) per Peter Fendrich (SE) Alfil (v811 Elo 2706) per Enrique Sánchez (SP) Aristarch (v4.50 Elo 2698) per Stefan Zipproth (DE) Baron (v1.8.1 Elo 2625) per Richard Pijl (NL) Crafty (v21.5 Elo 2631 - 21.6 disponible) per Bob Hyatt (US) Delfi (v5.2 Elo 2756) per Philippe Fabiani (FR) Fruit (v2.3.1 Elo 2863) per Fabien Letouzey (FR) Gambit Fruit (derivat de Fruit) per Fabien Letouzey/Bryan Hofmann (FR/US) Houdini (v1.5a Elo 3309) Glaurung (v1.2.1 Elo 2726) per Tord Romstad (NO) Ktulu (v4.2) per Rahman Paidar (IR)