El Algoritmo de Emparejamiento: Cómo Funcionan Realmente los Emparejamientos Suizos

Capítulo 5 — Guía Cómo funciona el algoritmo de emparejamiento Dutch de la FIDE: criterios C1-C19 simplificados, grupos de puntuación, colores, flotantes. Actualizado para las reglas FIDE 2026. Incluye guía de archivos TRF.

Cada vez que haces clic en «Generar Emparejamientos» en un torneo suizo, un sofisticado algoritmo se ejecuta en milisegundos entre bastidores. Comprender cómo funciona no solo satisfará tu curiosidad — te ayudará a explicar emparejamientos «inusuales» a los jugadores, evitar errores comunes de configuración y sacar el máximo provecho de tu software de emparejamiento. Este capítulo desmitifica el sistema Dutch de la FIDE, actualizado para las reglas vigentes desde el 1 de febrero de 2026.

¿Por qué un algoritmo? ¿Por qué no emparejar manualmente?

En los primeros días de los torneos de ajedrez, los árbitros emparejaban a los jugadores a mano — a menudo con un tablero físico y fichas de colores. Para 8 jugadores en 5 rondas, eso es manejable. Para 200 jugadores en 9 rondas, es una pesadilla logística que lleva horas y es propensa a errores.

Más importante aún, emparejar a mano introduce sesgos. Un árbitro que conoce a los jugadores podría (consciente o inconscientemente) crear enfrentamientos «interesantes», favorecer a ciertos jugadores o evitar ciertas combinaciones. Un algoritmo es determinístico y transparente: dada la misma entrada, siempre produce la misma salida, y cualquiera puede verificar el resultado.

El sistema Dutch de la FIDE no es una sola regla — es una jerarquía ordenada de criterios. El algoritmo intenta satisfacer los criterios de mayor prioridad primero, y solo relaja los de menor prioridad cuando no hay otra forma de completar los emparejamientos de la ronda.

Qué cambió en FIDE 2026

El 1 de febrero de 2026, la FIDE puso en vigor una versión revisada de las reglas de emparejamiento suizo (C.04.1, C.04.2, C.04.3). Los cambios son principalmente aclaraciones y renumeración, pero son importantes para cualquier evento valorado por la FIDE a partir de esa fecha:

ÁreaAntes de feb. 2026Desde feb. 2026
Numeración de criterios Varios códigos de letras/números (A1, B1…) Secuencia unificada C1–C19
Asignación de color Cierta ambigüedad en casos límite Reglas explícitas para todos los casos límite
Partidas no jugadas Tratadas como victoria con punto completo para el historial de color Tratadas como ½ punto tanto para color como para Buchholz
Sistema Burstein Descrito en C.04.4 Permanece en C.04.4, aclaraciones menores
Sistema Doble Suizo Nuevo: C.04.5 (dos llaves suizas paralelas)
Aceleración Bakú C.04.5 Renumerado C.04.7
§ FIDE C.04.1 Reglas Básicas (vigente desde 1 feb. 2026) y C.04.3 Sistema Dutch FIDE (vigente desde 1 feb. 2026) son las referencias principales. → Leer C.04.1  |  → Leer C.04.3

Grupos de puntuación: la base del emparejamiento suizo

La idea fundamental del sistema suizo es simple: los jugadores con la misma puntuación se enfrentan entre sí. Un grupo de puntuación es el conjunto de todos los jugadores que tienen el mismo número de puntos en un momento dado del torneo.

Dentro de cada grupo de puntuación, los jugadores se ordenan según su cabeza de serie (que generalmente se basa en su rating previo al torneo). El grupo se divide entonces en dos mitades: la mitad superior (jugadores mejor clasificados) y la mitad inferior (jugadores peor clasificados). El jugador 1 de la mitad superior se enfrenta al jugador 1 de la mitad inferior, el jugador 2 al jugador 2, y así sucesivamente.

Emparejamiento por grupo de puntuación — ejemplo visual (8 jugadores, Ronda 1)
GRUPO DE PUNTUACIÓN: 0.0 puntos (todos los jugadores, Ronda 1)
S1Fischer2200 — MITAD SUPERIOR
S2Kasparov2180 — MITAD SUPERIOR
S3Tal2150 — MITAD SUPERIOR
S4Petrosian2120 — MITAD SUPERIOR
S5Spassky2080 — mitad inferior
S6Karpov2050 — mitad inferior
S7Botvinnik1990 — mitad inferior
S8Lasker1960 — mitad inferior
↕ emparejar mitad superior vs mitad inferior (S1↔S5, S2↔S6, S3↔S7, S4↔S8)
Fischer (B)vsSpassky (N)
Kasparov (B)vsKarpov (N)
Tal (B)vsBotvinnik (N)
Petrosian (B)vsLasker (N)

Después de la ronda 1, los grupos de puntuación se dividen. Los jugadores que ganaron (1.0 punto) forman el grupo superior. Los jugadores que empataron (0.5) forman el grupo medio. Los jugadores que perdieron (0.0) forman el grupo inferior. El algoritmo entonces intenta emparejar dentro de cada grupo — pero las cosas se complican rápidamente, como veremos en la Ronda 2.

La jerarquía de criterios: C1 a C19

El sistema Dutch de la FIDE define 19 criterios, ordenados por prioridad. Al generar emparejamientos para un grupo de puntuación, el algoritmo intenta encontrar un emparejamiento que satisfaga la mayor cantidad posible de criterios de alta prioridad. Si satisfacer C3 implica violar C7, elige C3 — a menos que C3 sea superado por C1 o C2.

Estos son los criterios más importantes explicados en lenguaje sencillo:

  • C1
    Ningún jugador recibe más de un bye Absoluto
    Un bye (punto libre cuando hay un número impar de jugadores) solo puede otorgarse una vez por jugador, y nunca a un jugador que ya haya recibido uno. Esto no puede ser anulado.
  • C2
    Ningún jugador se enfrenta al mismo rival dos veces Absoluto
    El algoritmo nunca emparejará a dos jugadores que ya se hayan enfrentado en el mismo torneo. Esta es una regla absoluta — no puede relajarse, ni siquiera en la última ronda. Si evitarlo es verdaderamente imposible (torneos muy pequeños con muchas rondas), el árbitro debe intervenir.
  • C3
    Minimizar la diferencia de puntuación entre jugadores emparejados Alta
    Los jugadores en el mismo grupo de puntuación idealmente tienen puntuaciones idénticas. Si el emparejamiento dentro del grupo es imposible, el algoritmo puede emparejar entre grupos (flotantes), pero intenta minimizar la diferencia de puntos. Un jugador con 3.0 puntos jugando contra alguien con 2.5 es mejor que jugar contra alguien con 2.0.
  • C4
    Minimizar el número de flotantes descendentes Alta
    Un flotante descendente es un jugador que pasa de su grupo de puntuación al grupo inferior porque no pudo ser emparejado dentro de su propio grupo. El algoritmo intenta minimizar la frecuencia con que esto sucede.
  • C5
    Ningún jugador desciende dos veces seguidas si es evitable Alta
    Si un jugador fue movido a un grupo inferior en la ronda anterior, el algoritmo intenta evitar hacerlo de nuevo en esta ronda. El descenso consecutivo se penaliza fuertemente.
  • C6–C8
    Equilibrio y alternancia de color Alta
    Cada jugador debería alternar colores (blancas, negras, blancas, negras…) tanto como sea posible. Ningún jugador debería tener más de 2 partidas consecutivas con el mismo color. La «preferencia de color» se rastrea desde la ronda 1 e influye en cada decisión de emparejamiento posterior.
  • C9–C12
    Restricciones de diferencia de color Media
    La «diferencia de color» es el conteo de partidas con blancas menos partidas con negras. Las reglas FIDE buscan mantener esto dentro de ±1 el mayor tiempo posible. Los jugadores con grandes desequilibrios de color tienen prioridad para su color preferido en la siguiente ronda.
  • C13–C19
    Cabezas de serie y calidad de emparejamiento dentro del grupo Media
    Entre todos los emparejamientos válidos que satisfacen C1–C12, el algoritmo selecciona el que mejor coincide con la estructura «ideal» de mitad superior vs mitad inferior. Aquí es donde el orden de rating/cabeza de serie vuelve a entrar en juego como medida de calidad dentro del grupo.
La idea clave

El algoritmo no optimiza para «el mejor enfrentamiento ajedrecístico» — optimiza para la adherencia a la jerarquía de criterios. A veces esto produce emparejamientos que parecen extraños a los jugadores. La sección 9 de este capítulo explica los escenarios de «emparejamientos extraños» más comunes.

Asignación de color: blancas, negras y equilibrio

La asignación de color es una de las partes más malinterpretadas del emparejamiento suizo. Los jugadores a menudo sienten que reciben demasiadas negras — y a veces tienen razón, pero normalmente el algoritmo está haciendo exactamente lo que las reglas requieren.

Preferencia de color vs derecho de color

Un jugador tiene una preferencia de color si su historial de color está desequilibrado (más blancas que negras o viceversa). Tiene un derecho de color si ha tenido dos partidas consecutivas con el mismo color — en ese caso, debe recibir el color opuesto a continuación, a menos que sea imposible emparejar la ronda.

Cuando dos jugadores con derechos de color en conflicto son emparejados, el algoritmo debe romper la regla para uno de ellos. Elige al jugador con la menor reclamación — típicamente aquel cuya secuencia de color ha sido menos desequilibrada en general.

Color en la Ronda 1

En la Ronda 1, todos los jugadores tienen un historial de color igual (ninguno). Los colores se asignan según un principio general: el jugador mejor clasificado (en la mitad superior) recibe blancas, el jugador peor clasificado recibe negras. Por eso en el Alekhin Memorial, Fischer (S1) juega con blancas y Spassky (S5) juega con negras.

§ Las reglas de asignación de color se especifican en FIDE C.04.3, secciones 4–7 (vigente desde 1 feb. 2026). → Leer C.04.3

Flotantes y flotantes descendentes

Cuando un grupo de puntuación tiene un número impar de jugadores, un jugador no puede ser emparejado dentro del grupo y debe ser movido. A este jugador se le llama flotante.

Un flotante descendente es movido al siguiente grupo de puntuación inferior (por ejemplo, del grupo de 3.0 puntos al grupo de 2.5 puntos). Un flotante ascendente es el jugador del grupo inferior que recibe a este «invitado» de arriba.

El algoritmo intenta minimizar la flotación (criterios C4–C5). Cuando la flotación es inevitable, sigue reglas específicas sobre quién flota: el jugador peor clasificado del grupo de puntuación es el flotante descendente preferido, a menos que ese jugador ya haya descendido en la ronda anterior o tenga una reclamación de color particularmente fuerte que haga imposible el emparejamiento en el grupo inferior.

📉 Ejemplo de flotante descendente — Ronda 2 del Alekhin Memorial

Después de la Ronda 1: Fischer, Kasparov, Tal, Petrosian ganaron todos → 4 jugadores con 1.0 punto (grupo par, no se necesita flotante).

Spassky, Karpov, Botvinnik, Lasker perdieron todos → 4 jugadores con 0.0 puntos (grupo par, no se necesita flotante).

La Ronda 2 es limpia: el grupo de 1.0 se empareja internamente, el grupo de 0.0 se empareja internamente.

Pero imaginemos que Tal empatara en vez de ganar: entonces tendríamos 3 jugadores con 1.0, 2 con 0.5 y 3 con 0.0. El grupo de 0.5 tiene solo 2 jugadores — lo cual está bien (un emparejamiento). Pero el grupo de 1.0 tiene 3 jugadores — uno debe descender al grupo de 0.5. El jugador peor clasificado con 1.0 (Petrosian, S4) se convierte en el flotante descendente.

Ronda 1 en detalle: el Alekhin Memorial

Sigamos el emparejamiento completo de la Ronda 1 paso a paso para nuestro torneo de 8 jugadores.

Entrada: 8 jugadores, todos con 0.0 puntos, ordenados por cabeza de serie según rating. Un grupo de puntuación: {Fischer, Kasparov, Tal, Petrosian, Spassky, Karpov, Botvinnik, Lasker}.

Paso 1 — Dividir en mitades: Mitad superior = Fischer, Kasparov, Tal, Petrosian (S1–S4). Mitad inferior = Spassky, Karpov, Botvinnik, Lasker (S5–S8).

Paso 2 — Aplicar criterios C1–C2: Sin rivales previos (primera ronda), sin restricción. Sin byes aún.

Paso 3 — Emparejamiento ideal: S1↔S5, S2↔S6, S3↔S7, S4↔S8. Todos los criterios satisfechos. Este es el emparejamiento.

Paso 4 — Asignación de color: La mitad superior recibe blancas por defecto en la Ronda 1.

Alekhin Memorial — Emparejamientos Finales de la Ronda 1
Tb 1Fischer (B)vsSpassky (N)
Tb 2Kasparov (B)vsKarpov (N)
Tb 3Tal (B)vsBotvinnik (N)
Tb 4Petrosian (B)vsLasker (N)

Ronda 2 en detalle: se forman los grupos de puntuación

Tras los resultados de la Ronda 1 (Fischer 1–0 Spassky, Kasparov 1–0 Karpov, Tal 1–0 Botvinnik, Petrosian 1–0 Lasker), tenemos dos grupos de puntuación:

Grupo A (1.0 pto): Fischer, Kasparov, Tal, Petrosian — los 4 ganaron.
Grupo B (0.0 ptos): Spassky, Karpov, Botvinnik, Lasker — los 4 perdieron.

Emparejamiento del Grupo A: Dividir en mitades → Fischer, Kasparov (superior) vs Tal, Petrosian (inferior). Ideal: Fischer↔Tal, Kasparov↔Petrosian. Verificar C2: ninguno se ha enfrentado antes. ✓

Paso de color: En la Ronda 1, Fischer y Kasparov tuvieron blancas. Ahora necesitan negras. Tal y Petrosian tuvieron negras, ahora necesitan blancas. Entonces: Tal (B) vs Fischer (N), Petrosian (B) vs Kasparov (N). ✓

Mira los emparejamientos generados en vivo en ChessPairings.org

Crea un torneo de prueba con 8 jugadores y observa cómo funciona el algoritmo ronda a ronda.

Pruébalo ahora →

Emparejamientos «extraños»: ¿por qué sucede esto?

Los jugadores y organizadores a menudo cuestionan ciertos emparejamientos. Aquí están las situaciones más comunes y la razón algorítmica detrás de cada una.

«El jugador X tiene 3 puntos pero está emparejado contra alguien con solo 2.5»

Esto sucede cuando el grupo de 3.0 puntos tiene un número impar de jugadores y alguien debe descender. El algoritmo probó todas las combinaciones dentro del grupo de 3.0 pero descubrió que todos los emparejamientos posibles violan C1, C2 o C5 (por ejemplo, todos los jugadores de 3.0 puntos ya se han enfrentado entre sí, o tienen conflictos severos de color). Hacer descender a un jugador al grupo de 2.5 fue la única opción válida.

«El jugador X siempre recibe negras»

Cuando un jugador desciende, a menudo debe aceptar un color que normalmente no recibiría, porque el emparejamiento en el grupo inferior lo requiere. Esta es una limitación conocida del sistema suizo — la restricción de equilibrio de color tiene menor prioridad que C1–C5, por lo que puede ser anulada.

«¿Por qué los dos mejores jugadores se enfrentan ya en la ronda 4?»

Si ambos líderes tienen la misma puntuación, y el algoritmo no encuentra ningún otro emparejamiento válido dentro de su grupo de puntuación (todos los demás jugadores del grupo ya se han enfrentado a ellos, o tienen derechos de color en conflicto), el algoritmo empareja a los dos primeros entre sí. Este es el comportamiento correcto — la jerarquía de criterios lo requiere.

Otros sistemas aprobados: Burstein, Aceleración Bakú

Sistema Burstein (C.04.4)

El sistema Burstein es una variante del sistema Dutch con un enfoque diferente para la formación de grupos de puntuación. En lugar de grupos estrictos con flotantes, permite emparejamientos cruzados más flexibles entre grupos manteniendo la proximidad de rating dentro de los pares. Se usa con menos frecuencia en eventos valorados por la FIDE pero es reconocido como alternativa.

§ FIDE C.04.4 — Sistema Burstein (vigente desde 1 feb. 2026). → Leer C.04.4

Aceleración Bakú (C.04.7)

La Aceleración Bakú se usa en torneos suizos muy grandes (típicamente con más de 200 jugadores) para asegurar que los mejores jugadores se enfrenten antes, en lugar de encontrarse solo en las rondas finales después de ganar varias partidas fáciles contra oposición débil.

La idea: en las primeras rondas, los jugadores mejor valorados reciben una ventaja «virtual» de medio punto, lo que los coloca en un grupo de puntuación superior a su puntuación real. Esto crea enfrentamientos más tempranos entre jugadores fuertes. A partir de la ronda 3 o 4, los puntos virtuales se eliminan y el emparejamiento suizo normal se reanuda.

§ FIDE C.04.7 — Sistemas Acelerados: Aceleración Bakú (vigente desde 1 feb. 2026). → Leer C.04.7

Lectura de un archivo TRF

El TRF (Tournament Report File — Archivo de Informe de Torneo) es el formato estándar de intercambio para datos de torneos de ajedrez. ChessPairings.org exporta tanto TRF-16 (legado) como TRF-25 (nuevo formato 2025). Así se ve un archivo TRF-16 para nuestro Alekhin Memorial después de la Ronda 1:

012 Alekhin Memorial Open
022 Club Room, Alessandria
032 2026-03-03
042 2026-03-03
052 Mikhail (Chief Arbiter)
062 5
072 1
082 Rapid
092 15+10
132 Buchholz Cut-1, Buchholz, Wins, Direct Encounter
001  No  Name              Rtg  FID       Pts  R1
001    1 Fischer           2200 1234567   1.0  0000 W  5 1
001    2 Kasparov          2180 2345678   1.0  0000 W  6 1
001    3 Tal               2150 3456789   1.0  0000 W  7 1
001    4 Petrosian         2120 4567890   1.0  0000 W  8 1
001    5 Spassky           2080 5678901   0.0  0000 B  1 0
001    6 Karpov            2050 6789012   0.0  0000 B  2 0
001    7 Botvinnik         1990 7890123   0.0  0000 B  3 0
001    8 Lasker            1960 8901234   0.0  0000 B  4 0

Cada línea 001 es un jugador. Leyendo de izquierda a derecha: número de jugador, nombre, rating, ID FIDE, puntuación total, y para cada ronda: ranking inicial (0000 = no aplicable), color (W/B), número del rival, resultado (1 = victoria, 0 = derrota, = = tablas, H = bye de medio punto, F = victoria por incomparecencia).

Nunca necesitas editar este archivo manualmente — ChessPairings.org lo genera automáticamente. Pero saber cómo leerlo ayuda al verificar resultados o importar en otro software.

bbpPairings: el motor detrás de ChessPairings.org

ChessPairings.org usa bbpPairings como su motor de emparejamiento suizo — una implementación de código abierto en C++ del sistema Dutch de la FIDE mantenida por la comunidad de programación de ajedrez. bbpPairings es utilizado por múltiples federaciones nacionales y sistemas de gestión de torneos en todo el mundo.

Para los cálculos de desempate, ChessPairings.org usa un módulo dedicado TieBreakServer (Python), que implementa los 28 sistemas de desempate soportados de forma independiente del motor de emparejamiento. Esta separación asegura que la lógica de emparejamiento y desempate sean verificables de forma independiente.

Ambos motores se actualizan cada vez que la FIDE revisa sus reglas — los cambios de reglas de febrero de 2026 están totalmente reflejados en la versión actual de ChessPairings.org.

Para los técnicamente curiosos

El problema de emparejamiento Dutch es matemáticamente equivalente a un problema de emparejamiento máximo ponderado en teoría de grafos. Cada emparejamiento potencial es una arista con un peso que representa cuán bien satisface la jerarquía de criterios. El algoritmo encuentra el emparejamiento perfecto de peso máximo — por eso puede tomar una fracción de segundo incluso para torneos de 500 jugadores.

¿Listo para Organizar tu Torneo?

Emparejamiento Suizo conforme a FIDE 2026, 28 sistemas de desempate, completamente gratis.

Crear Cuenta Gratuita