[Arriba] [Paderborn'99] [WMCCC London 2000] [10 WCCC 2002]

Campeonato del mundo de programas de ajedrez

Paderborn - 1999

El pasado mes de Junio de 1999 tuvo lugar en la Universidad de Paderborn el campeonato del mundo de programas de ajedrez organizado por la ICCA en colaboración con la citada universidad, además de otras entidades patrocinadoras. Veamos un resumen de la información que se puede encontrar en la página oficial del campeonato.

Participantes:

Programa País Nombre
1 Arthur Netherlands Walter Ravenek
2 Centaur Russia Victor Vikhrev and Alexey Manjakhin
3 ChessTiger Guadaloupe Christophe Theron
4 Cilkchess USA Reid Barton, Don Beal, Don Dailey, Matteo Frigo, Charles Leiserson, Phil Lisiecki, Ryan Porter, Harald Prokop
5 DarkThought GER Ernst Heinz, Markus Gille
6 Diep Netherlands Vincent Diepeveen
7 EUGEN Spain Eugenio Castillo Jiménez
8 Ferret USA Bruce Moreland
9 Francesca UK Tom King
10 Fritz GER Frans Morsch, Mathias Feist
11 GromitChess GER Frank Schneider
12 Hiarcs UK Mark Uniacke, Eric Hallsworth (Book), Matthias Wüllenweber (GUI), Erdogan Günes (GUI), Mathias Feist (GUI)
13 Ikarus GER Muntsin Kolss and Munjong Kolss
14 Isichess GER Gerd Isenberg
15 Junior Israel Amir Ban, Shay Bushinsky
16 LambChop New Zealand Peter McKenzie
20 MChess USA Marty Hirsch, Sandro Necchi
17 Mini USA Larry Kaufman, Don Dailey
18 Neurologic GER Jochen Peussner
19 Nimzo Austria Chrilly Donninger, H.Weigel (Coauthor, Tuning, Testing), A.Kure (Book), W.Zugrav (Hardware), B.Biberle (Operator), Cock de Gorter (special book)
20 Now USA Mark Lefler
21 P.ConNerS GER Ulf Lorenz, Heiner Matthias (Book)
22 Patzer GER Roland Pfister
23 Rebel Netherlands Ed Schroeder
24 RuyLopez Spain Alvaro Begue, Jose Manuel Moran
25 Shredder GER Stefan Meyer-Kahlen
26 SOS GER Rudolf Huber
28 Virtual   Chess X France Marc-Francois Baudot, Jean-Christophe Weill
29 XXXX2 GER Martin Zentner
30 Zugzwang GER Rainer Feldmann, Peter Mysliwietz, Heiner Matthias

 

Arthur es un fuerte programa amateur holandés. Ha sido el mejor programa amateur durante las tres últimas ediciones del campeonato holandés de programas de ajedrez, obteniendo también un razonable rendimiento ante programas comerciales. El programa consiste en una engine independiente que se conecta a una interfaz gráfica de usuario para Macintosh. Próximamente estará disponible una versión para Winboard. Arthur es bastante capaz tácticamente, pero tiende a plantear partidas de carácter posicional si se le da la oportunidad.

Centaur is un programa fuertemente selectivo, original del Kurchatov Institute en Moscú. Es un programa totalmente único. A pesar de la rapidez de su hardware, sólo es capaz de examinar unas 500 posiciones por segundo. Centaur obtuvo una prestación ELO de 2266 en AEGON'97.

Centaur utiliza cinco valores para estimar una posición de ajedrez. Uno realista, dos pesimistas y dos optimistas. Los cinco valores de una posición se graban en memoria y se utilizan para escoger la dirección en la que debe progresar el análisis.
La última modificación de Centaur utiliza algo del código del programa ruso Mirage. Los principios en los que se basa la técnica del Centaur se describe en el boletín de la ICCA número 2 de 1996.

Chess Tiger solía ser un fuerte programa táctico, pero ha sido mejorado con la adición de más conocimiento posicional y ahora es un programa más equilibrado. Chess Tiger es todavía un programa desarrollado bajo el sol, en Guadalupe, en las Indias Occidentales francesas.

Cilkchess es un programa paralelo que correrá en una máquina con 256 procesadores SGI Origin 2000 en la NASA Ames durante el campeonato del mundo. Cilkchess ganó el primer premio en el Open Holandés de 1996 y obtuvo el segundo premio en 1997 y 1998. El programa anterior, Socrates, obtuvo el segundo puesto en el campeonato del mundo de 1995, superando al campeón Fritz durante la mayor parte del torneo pero perdiendo en los playoff.

Cilkchess está programado usando el lenguaje multihebra Cilk, que permite crear programas muy poco comunes, como los de ajedrez, con tecnología paralela. El programa utiliza una variante paralela del algoritmo de búsqueda MTD(f) que incorpora la poda por movimiento nulo pero con pocas extensiones. La función de evaluación ha sido afinada a partir de miles de partidas en modo autojuego utilizando un algoritmo de aprendizaje. Las tablas de transposición se almacenan en 32 Gigabytes (!) de memoria compartida. En el medio juego tardío, Cilkchess profundiza habitualmente hasta el pliegue 15 y calcula entre 5 y 11 millones de movimientos por segundo.

DarkThought es un programa totalmente desarrollado en 64 bits basado en la tecnología "bitboard". Se desarrolló en el  Institute for Program Structures and Data Organization (Universidad de Karlsruhe, Alemanía) y ha participado exitosamente en todos los campeonatos del mundo desde 1995. Corre en una máquina KryoTech Alpha-21164a a 767 MHz con 256 Mbytes de RAM. DarkThought alcanza fácilmente la cota de las 350000 posiciones por segundo en el medio juego mientras que llega al millón en el final de partida.
DarkThought tiene un algoritmo de búsqueda alpha-beta sofisticado escrito en ANSI-C que usa PVS/NegaScout con mejoras de última tecnología como varias tablas de transposición, poda de jugadas vanas en modo normal y extendido, profundización interna iterativa, ordenación interna dinámica (history+killer heuristic), poda por mivimiento nulo recursiva, extensiones selectivas y reconocedores de nodos internos (incluyendo acceso a bases de datos de finales).

Para conocer más sobre DarkThought:
http://wwwipd.ira.uka.de/Tichy/DarkThought/

Diep comenzó en 1994. Ahora el programa está en una fase experimental de multiproceso. Todavía utiliza la misma inmensa función de evaluación. Posiblemente es la mayor función de evaluación jamás implementada en un programa de ajedrez. 

La búsqueda de Diep es muy selectiva actualmente. El programador planea implementar un algoritmo de búsqueda totalmente nuevo para el mundial de 1999. No únicamente paralela,  porque está muy próxima a la profundidad limitada de las búsquedas alfabeta.

Eugen  nació en 1994 como un proyecto personal durante el tiempo libre. Primeramente se programó en Pascal y el lenguaje Ensamblador, pero en 1995 se tradujo a C. Eugen está parcialmente basado en programas freeware como TChess, GNU Chess y Crafty.

Ferret es un programa normal de ajedrez que utiliza la poda por movimiento nuloy evaluación de punto final. La dirección de e-mail de su autor es brucemo@seanet.com. Estará encantado de atender cualquier pregunta sobre su programa.

Francesca es un programa amateur. Sigue las tendencias de la mayoría de los programas desde los 70 y utiliza muchas de las últimas técnicas: alpha-beta, movimiento nulo, otras técnicas de poda por adelantado, tablas de transposición, etc.

Antes de 1998, Francesca consistía principalmente en una valoración de piezas y casillas junto a un motor de búsqueda muy rápido. En 1998, la función de evaluación fue reescrita por completo y todas las evaluaciones se hacen ahora en los extremos del árbol de búsqueda. Esto ha mejorado el juego de Francesca. Aunque en 1999 es más lento que en 1998, juega un ajedrez más interesante y desafiante.

Fritz está construído alrededor de una técnica selectiva conocida como movimiento nulo. Como parte de esta técnica, Fritz permite a un bando mover dos veces seguidas. Esto permite al programa detectar debilidades antes de tener que analizar el árbol completo. Generadores de movimientos, funciones de evaluación y estructuras de datos se han diseñado expresamente para maximizar la efectividad de la búsqueda con movimiento nulo. Fritz venció en el campeonato del mundo de Hong Kong en 1995. 

GromitChess es un programa escrito en C++, desarrollado en un entorno Linux (Emacs, gcc). Calcula entre 25000 y 50000 posiciones por segundo en un K6/200 y trata de ser tan inteligente como rápido. La piezas atacables son la primera estructura de datos (16 bit para cada casilla y jugador; bit n se pone a 1 si la pieza n ataca la casilla). La búsqueda utiliza profundización iterativa, PVS, tablas de transposición, heurísticas killer y history, movimiento nulo (R=2), unas 10 extensiones específicas de ajedrez y algunas heurísticas de poda. La quiescencia usa un evaluador estático de intercambio e incluye algunos jaques y otros movimientos amenazantes. Algunas partes de la función de evaluación se inicializan en la raíz del árbol, pero la mayoría lo hacen en los extremos de las ramas. 
Más información en: http://home.t-online.de/home/hobblefrank/index.htm

HIARCS está escrito en C como un proyecto total de tiempo libre.
HIARCS calcula muchas menos posiciones por segundo (unas 18.000) que la mayoría de sus competidores. A pesar de esto, su búsqueda es más inteligente y su evaluación más precisa.
HIARCS utiliza varias extensiones con heurísticas selectivas para guiar la búsqueda e incorpora una búsqueda muy sofisticada para resolver incertidumbres tácticas al mismo tiempo que encuentra líneas con beneficios posicionales.

HIARCS ganó el mundial de 1993 en Munich, Alemania, y ha ganado otros muchos torneos de computadoras y de humanos.
HIARCS 7.0 obtuvo la primera posición rn la lista sueca de la SSDF y en la lista inglesa de Selective Search.

La versión que compite en este mundial es una nueva versión experimental. Es un programa de 32 bit que correrá bajo Windows y soportará bases de tablas de finales.

El desarrollo de Ikarus comenzó em enero de 1997 cuando el programa anterior, BasicChess, alcanzó el máximo de 64Kb permitido por Borland Pascal 7.0 para estructuras de datos y el código fuente se había convertido en una amalgama totalmente críptica. Se tradujo a Delphi 2.0, lenguaje de 32bit orientado a objetos y bajo entrono Windows, lo que permitió el uso de tablas de transposición. Al año siguiente se implementó una interfaz gráfica y muchas de las heurísticas de búsqueda más habituales. También se añadieron algunas estructuras de datos avanzadas como tablas de transposición para rey y peones.

Desde marzo de 1998 hay una versión para WinBoard que ha estado jugando en modo autojuego contra otros programas de ajedrez. Ikarus tiene un nuevo libro de aperturas totalmente desarrollado a mano y, desde Navidades de 1998, cuenta con soporte para las tablas de Nalimov de finales.

IsiChess nació en 1991 basado en el libro "Computer Chess Compendium" de David Levy. La búsqueda es un algoritmo estándar alfa-beta con ventana nula y profundización iterativa. También cuenta con poda por movimiento nulo, con algunas extensiones de amenazas y con las heurísticas killer y history. Está escrito en C++ y es capaz de jugar hasta 10 partidas simultáneas en 10 ventanas independientes.

LambChop es un programa convencional basado en un algoritmo de búsqueda alfa-beta con profundización iterativa, tablas de transposición, extensores, quiescencia, etc. LambChop puede agruparse dentro de los programas que utilizan una combinación de poda por movimiento nulo recursiva y evaluación completa en el punto final. La filosofía de diseño es dar prioridad al procesamiento preciso de cada posición en lugar de obtener una capacidad de calculo mayor.

La última versión de M-Chess Professional que ha obtenido numerosos éxitos como el primer puesto en el mundial de 1995 y victorias ante 3 GMs en  Aegon, 1995. Este programa utiliza evaluaciones inteligentes y algoritmos exclusivos para táctica a gran profundidad. Tiene un estilo de juego dinámico y es conocido por su juego excitante y excelentes resultados ante jugadores humanos.

Nimzo es uno de los principales programas de ajedrez. Combina un juego posicional junto a una gran fuerza táctica. Nimzo-Paderborn es una versión muy mejorada respecto de las versiones que actualmente se comercializan como Nimzo 98, 99 y 2000.

Nimzo-Paderborn aprende automáticamente de partidas de grandes maestros. Está equipado con el lenguaje propietario llamado Lenguaje de Consejos de Ajedrez (Chess-Advice-Language Che++) que permite a jugadores humanos formular conocimiento de ajedrez. El programa también puede acceder a bases de datos de finales y busca desde el medio juego la posibilidad de entrar en finales ganados.

P.ConNerS trabaja con  'Parallel Controlled Conspiracy Number Search'. Ha sido escrito por Ulf Lorenz, miembro del grupo de investigación del Prof. Dr. Burkhard Monien de la  University of Paderborn. U. Lorenz trabaja principalmente en el desarrollo de búsquedas selectivas en árboles de juego y en algoritmos paralelos eficientes para la resolución de problemas.

P.ConNerS utiliza una variante del algoritmo llamado 'Controlled Conspiracy Number Search'. Como resultado de esto, examina árboles muy selectivos e irregulares. Las evaluaciones se hacen en los extremos con ayuda de buscadores estándar alfa-beta a profundidad 2.

Es capaz de calcular hasta 1200000 posiciones por segundo en un sistema multiproceso de 60 Pentium a 300 MHz. En febrero de 1999 ganó el Octavo Campeonato de programas de ajedrez de Paderborn.

Patzer utiliza un buscador estándar alpha-beta PVS mejorado con tablas de transposición (esquema de reemplazo por 4 intentos), poda por movimiento nulo recursiva (R=2) con verificación si sólo hay una pieza presente, heurística especial de poda en todos los nodos y extensores de diversa índole. También utiliza una tabla especial de transposición para ajustar el material en momentos especiales como el final de juego. Valora mucho la seguridad del rey y peones pasados. Es un programa de tablero de bits incremental con tablas de ataque que son utilizadas también durante la generación de movimientos y su ordenación.

REBEL BV es una compañía holandesa totalmente dedicada al desarrollo de programas de ajedrez desde 1985. En aquel destacado año, el primer programa comercial (Rebel 5.0) salió a la venta mediante Mephisto Hegener & Glaser en un micro dedicado.

Rebel es uno de los programas más fuertes del mundo. Es famoso por su nivel de juego pero también, especialmente, por su profundo conocimiento posicional. Rebel es un producto para profesionales del ajedrez con un análisis fiable de las posiciones. Rebel también es conocido por ser muy fácil de utilizar y apenas es necesario acudir al manual de instrucciones.

El libro de paerturas de Rebel 10.0 contiene más de 1500000 posiciones introducidas a mano a lo largo de ocho años de trabajo.

Ruy-López es un buscador estándar alfa-beta con algunos métodos innovadores de poda por adelantado. La función de evaluación es bastante sofisticada y algo lenta. Después de cuatro años programando Torquemada, un programa de damas españolas, se comenzó programar Ruy-Lopez en Julio de 1997 por pura afición. Actualmente es el campeón de España de programas de ajedrez.

Shredder comenzó en 1995 como un proyecto de universidad. Los buenos resultados en torneo y test provocaron una mayor dedicación al programa para ganar el campeonato del mundo de 1996 en Yakarta. Shredder está a la venta desde entonces y ha seguido puntuando muy bien en torneos de ajedrez por computadora. Fue tercero en Paris 1997. Shredder está escrito en ANSI-C y por ello es fácilmente compilable para diversas plataformas de hardware.

SOS es un programa amateur que comenzó a programarse en 1993. La versión más reciente corre en sistemas multiprocesador y ha sido paralelizado utilizando una versión de mtd(f) como algoritmo de búsqueda minimax. SOS suele ser un calculador bastante rápido y capaza de sobrepasar la profundidad de sus oponentes. Esto ha cambiado y se le ha añadido más conocimiento posicional. También se le ha mejorado el libro de aperturas. Juega una gran variedad de aperturas.

Virtual Chess es la versión comercial de los programas Ecume y Cumulus 2. Ganó el campeonato del mundo en 1997. El motor de ajedrez está escrito en C y en Ensamblador de 32 bit. Está basado en PVS, utiliza poda por movimiento nulo e incluye evaluación dinámica de seguridad del rey y estructuras de peones. La función de evaluación trata de realizar planes al mismo tiempo que reconoce características posicionales. Corre en un PC con Windows (Win9x, o WinNT), con una espléndida interfaz gráfica desarrollada por Titus Interactive.

XXXX II es un programa de ajedrez convencional. Contra otros progaramas es más fuerte en niveles lentos de juego. Tiene un poco de conocimiento posicional, lo que le lleva a plantear partidas interesantes.

Zugzwang está escrito por Rainer Feldmann y Peter Mysliwietz (hasta 1996). Son miembros del equipo de investigación del Prof. Dr. Burkhard Monien en la Universidad de Paderborn. Zugzwang es producto del avance en el desarrollo de algoritmos paralelos para la resolución de problemas. El programa comenzó como un programa OCCAM para Transputers. En 1992 jugó el campeonato del mundo en Madrid corriendo en un sistema con 1024 procesadores. Desde 1995, el programa ha sido reescrito en C. Ahora corre eficientemente en otras plataformas de hardware como Power PC multiprocesador o Cray T3E.

El libro de aperturas está totalmente escrito a mano. No se utiliza compilación automática. El algoritmo de búsqueda utilizado es el "Fail High Reductions algorithm". El programa soporta acceso a las bases de finales de Ken Thomson.

 

Agenda

14 Junio 12:40 Ceremonia de apertura
10:00 - 12:00 Inscripción Oficial y reunión para exponer el reglamento
13:00 - 20:00 Ronda 1
15 Junio 09:00 - 16:00 Ronda 2
17:00 - 24:00 Ronda 3
16 Junio 13:00 - 20:00 Ronda 4
17:00 - 24:00 Reunión trienal de la ICCA y elecciones
17 Junio 13:00 - 20:00 Ronda 5
18 Junio 13:00 - 20:00 Ronda 6
19 Junio 09:00 - 16:00 Ronda 7
16:00 - as req. Desempate (si fuera necesario)
20:00 Comida para participantes y promotores
20 Junio 11:00 - 11:30 Entrega de premios
11:30 - 17:30 Encuentro Hombres-Máquinas:
Los primeros 5 programas clasificados están invitados a jugar un match contra un equipo de jugadores.

Clasificación:

Pos.

Nombre

Ronda

Puntos

Ptos. opo.

1

2

3

4

5

6

7

1

Shredder

1w30

1b3

1w7

½b8

½w10

½b2

1w5

5.5

29.0

2

Ferret

1b20

1w14

0b10

1w24

1b12

½w1

1w3

5.5

28.0

3

Fritz

1b27

0w1

1b26

1w13

1b5

1w10

0b2

5.0

27.5

4

Cilkchess

1w21

1b24

0b5

½w12

1b11

½w6

1b10

5.0

26.5

5

Junior

1w15

1b6

1w4

½b10

0w3

1w8

0b1

4.5

32.5

6

DarkThought

1b12

0w5

1b21

½w11

1b16

½b4

½w7

4.5

28.5

7

Rebel

1b25

1w11

0b1

1w18

0b8

1w13

½b6

4.5

28.0

8

Nimzo

½b26

1w22

1b16

½w1

1w7

0b5

½w9

4.5

27.5

9

ChessTiger

0b10

0w13

1b29

1w22

1b14

1w19

½b8

4.5

23.5

10

Hiarcs

1w9

1b17

1w2

½w5

½b1

0b3

0w4

4.0

33.5

11

LambChop

1w18

0b7

1w15

½b6

0w4

1b24

½w16

4.0

27.0

12

Francesca

0w6

1b28

1w17

½b4

0w2

½w16

1b20

4.0

26.5

13

Virtual_Chess_X

0w24

1b9

1w19

0b3

1w26

0b7

1w18

4.0

24.5

14

GromitChess

1w28

0b2

0w18

1b23

0w9

1w27

1b25

4.0

22.0

15

Eugen

0b5

1w29

0b11

1w21

½b24

½w20

1b19

4.0

21.0

16

Zugzwang

½w19

1b23

0w8

1b17

0w6

½b12

½b11

3.5

26.5

17

MChess

1b29

0w10

0b12

0w16

½b25

1w26

1w24

3.5

19.5

18

P.ConNerS

0b11

1w20

1b14

0b7

0w19

1w21

0b13

3.0

25.5

19

Isichess

½b16

½w26

0b13

1w25

1b18

0b9

0w15

3.0

23.5

20

Diep

0w2

0b18

½w30

1b28

1w22

½b15

0w12

3.0

22.0

21

Patzer

0b4

1w27

0w6

0b15

1w30

0b18

1w29

3.0

20.5

22

Mini

½w23

0b8

½w28

0b9

0b20

1w30

1b27

3.0

19.5

23

Now

½b22

0w16

0b27

0w14

½w28

1b29

1b26

3.0

17.0

24

SOS

1b13

0w4

1b25

0b2

½w15

0w11

0b17

2.5

28.5

25

Arthur

0w7

1b30

0w24

0b19

½w17

1b28

0w14

2.5

20.0

26

Ikarus

½w8

½b19

0w3

1w27

0b13

0b17

0w23

2.0

25.0

27

Centaur

0w3

0b21

1w23

0b26

1w29

0b14

0w22

2.0

21.0

28

RuyLopez

0b14

0w12

½b22

0w20

½b23

0w25

½b30

1.5

20.5

29

XXXX2

0w17

0b15

0w9

1b30

0b27

0w23

0b21

1.0

21.0

30

Neurologic

0b1

0w25

½b20

0w29

0b21

0b22

½w28

1.0

19.5

 

Encuentro hombres - programas

 

Alvaro Benlloch - Traducción del web oficial del campeonato - 13/03/2000