Todas las trayectorias que llegan a meta con el menor número de movimientos, no solo una de ellas.
01 · Alcance
Qué documenta esta página
Este texto explica el funcionamiento técnico de F1-RaceTrack. No es una reconstrucción histórica general de Racetrack, sino una explicación de las reglas, los algoritmos y sus efectos en la conducción.
El objetivo es hacer comprensible el proceso completo: desde la regla de movimiento vectorial hasta las trayectorias que muestra el Editor y las decisiones que toman las inteligencias artificiales. Cuando una propiedad pertenece solo a un ensayo —por ejemplo, la comparación entre dos algoritmos— se identifica expresamente como experimental.
En un circuito, cada llegada se analiza con su posición y vector finales para saber si admite otra vuelta válida.
Diccionario técnico Busca un término o despliega sus definiciones con el signo +
El documento usa cada palabra con un significado estable. Trayectoria designa la secuencia completa; movimiento, cada paso del coche; segmento, la línea geométrica que deja ese movimiento; y turno, la oportunidad de decidir.
Reglas y trayectorias
IntersecciónPunto de la cuadrícula donde puede terminar el coche
Es el cruce de dos líneas de la cuadrícula. La posición del coche siempre se expresa mediante una intersección.
VectorVelocidad y dirección del coche
Es el par ordenado (vₓ, vᵧ). Sus valores indican cuántas intersecciones avanza el coche en horizontal y vertical: su magnitud expresa la velocidad y su orientación, la dirección. Al inicio de la carrera el vector es (0,0); la velocidad es cero y la dirección aún no está definida. Ese estado inicial todavía no cuenta como movimiento.
MovimientoPaso completo desde una intersección hasta la siguiente
Después de elegir una aceleración se obtiene un nuevo vector. Ese vector lleva el coche hasta otra intersección y representa un movimiento. Se comprueba todo el segmento atravesado, no solo el punto final.
EstadoLa información necesaria para continuar la carrera
Incluye la intersección, el vector, la capa de pista y, cuando corresponde, la fase de vuelta. Dos coches en la misma intersección pero con vectores distintos representan estados matemáticos distintos, aunque no puedan ocuparla simultáneamente.
Capa de pistaCalzada inferior o zona elevada
Permite distinguir dos superficies que se cruzan visualmente, como un puente y la calzada que pasa por debajo.
TrayectoriaSecuencia ordenada de movimientos hasta cruzar la meta
Es la secuencia ordenada de movimientos —y de los vectores que los producen— desde una intersección de la línea de salida hasta cruzar la meta. Desde un punto intermedio, es la continuación desde el estado actual hasta la meta. El orden importa: por eso no es simplemente un conjunto de vectores.
Trayectoria válidaLlega a meta respetando todas las reglas
Todos sus movimientos permanecen dentro de los límites y capas de la pista, respetan el sentido de salida y meta y no terminan sobre la posición de otro coche. Un movimiento puede atravesar la posición rival si termina en otra intersección.
Trayectoria óptimaTrayectoria válida con el menor número de movimientos
Se define respecto de un estado inicial concreto. En la salida, ese estado combina una intersección disponible y el vector (0,0); durante la carrera puede ser cualquier posición y vector válidos. Normalmente existen muchas trayectorias óptimas con el mismo número de movimientos.
Trayectoria óptima más cortaLa óptima de menor longitud euclidiana
Entre las trayectorias óptimas comparables, es la que suma la menor distancia geométrica. En el Editor se representa en verde.
Trayectoria óptima más largaLa óptima de mayor longitud euclidiana
Entre las trayectorias óptimas comparables, es la que suma la mayor distancia geométrica sin aumentar el número de movimientos. En el Editor se representa en azul.
Trayectoria óptima con continuidadEs óptima y su estado final permite otra vuelta
En un circuito, es una trayectoria óptima cuyo estado al cruzar meta permite seguir una trayectoria válida y volver a cruzar la meta. Si ninguna óptima absoluta cumple esto, el juego distingue el caso y puede buscar una trayectoria continuable con algún movimiento adicional.
Trayectoria continuable de mínimo número de movimientosLa mejor alternativa cuando ninguna óptima puede continuar
Es la trayectoria válida más rápida entre las que permiten completar otra vuelta. Puede necesitar más movimientos que la trayectoria óptima absoluta; por eso se nombra de forma distinta.
Trayectoria euclidiana más cortaLa trayectoria válida de menor distancia total
Minimiza la suma de las longitudes de todos los movimientos, aunque para hacerlo necesite más movimientos. En el Editor se representa en amarillo.
Circuito y tramoPista apta para varias vueltas o pista de una sola pasada
Un circuito permite encadenar salida–meta–salida–meta en el sentido correcto. Un tramo termina en meta y no exige regresar a la salida para otra vuelta.
Cálculo y algoritmos
Distancia euclidianaDistancia en línea recta
Para un movimiento es √(Δx² + Δy²). La longitud euclidiana de una trayectoria es la suma de las distancias de todos sus movimientos.
Grafo de estadosMapa matemático de estados y movimientos posibles
Cada nodo representa un estado y cada enlace representa un movimiento válido entre dos estados.
BFS — búsqueda en anchuraExplora primero las trayectorias con menos movimientos
Examina el grafo por capas: primero un movimiento, después dos, luego tres. La primera capa que cruza meta determina el mínimo número de movimientos.
Capa de BFSConjunto de estados alcanzados con el mismo número de movimientos
No debe confundirse con la capa de pista de un puente. Aquí “capa” indica profundidad de cálculo.
DAG — grafo dirigido acíclicoRepresentación compacta de todas las trayectorias óptimas
Conserva los estados y movimientos que pertenecen a alguna trayectoria óptima. Cada enlace avanza una capa de BFS, así que no puede volver hacia atrás y formar un ciclo.
Programación dinámicaReutiliza cálculos compartidos
Cuando muchas trayectorias llegan al mismo estado, cuenta una sola vez sus continuaciones y reutiliza el resultado en lugar de reconstruir cada trayectoria completa.
BigIntEntero capaz de guardar cantidades enormes sin redondeo
Es un tipo de entero de JavaScript con tantos dígitos como sean necesarios. Permite contar exactamente cantidades de trayectorias que no caben en un número ordinario.
Problema de decisiónPregunta matemática cuya respuesta es sí o no
Permite estudiar con precisión los recursos necesarios para resolver una familia de casos. Su clasificación describe cómo crece la dificultad con el tamaño de la entrada; no predice los segundos que tardará una pista concreta.
L — espacio logarítmicoProblemas resolubles con una cantidad muy contenida de memoria auxiliar
Es una clase de problemas de decisión resolubles con un algoritmo determinista cuya memoria auxiliar crece de forma logarítmica respecto al tamaño de la entrada. La letra se refiere al uso de memoria, no al tiempo medido en una pista concreta.
NL — espacio logarítmico no deterministaPuede verificar una secuencia candidata usando muy poca memoria auxiliar
Es la versión no determinista de L: un caso afirmativo dispone de al menos una secuencia de elecciones que puede verificarse con memoria logarítmica. No significa «no lineal» ni describe un método aleatorio.
NL-completoUno de los problemas más difíciles de la clase NL
El problema pertenece a NL y cualquier otro problema de esa clase puede transformarse en él mediante una reducción adecuada. Es una clasificación teórica del peor caso, no una medida directa del rendimiento del Editor.
P — tiempo polinómicoProblemas resolubles en un tiempo que crece polinómicamente
Reúne problemas de decisión para los que existe un algoritmo determinista cuyo tiempo está acotado por un polinomio del tamaño de la entrada. Pertenecer a P no garantiza que todos los casos reales sean rápidos.
P-completoUno de los problemas más difíciles de la clase P
El problema pertenece a P y cualquier otro problema de P puede transformarse en él mediante una reducción adecuada. Suele indicar que una paralelización muy eficiente es difícil; no significa NP-completo ni implica por sí solo un crecimiento exponencial.
NC¹-difícilCota inferior relacionada con el cálculo paralelo
Indica que el problema es al menos tan difícil como todos los problemas resolubles por circuitos de tamaño polinómico y profundidad logarítmica, bajo la reducción utilizada. Es una cota inferior técnica, no una clasificación completa del problema.
DijkstraAlgoritmo que minimiza la suma de distancias
En F1-RaceTrack encuentra la trayectoria euclidiana más corta porque trata la longitud de cada movimiento como un coste positivo.
A* — A estrellaBúsqueda guiada por una estimación
Combina el coste ya empleado con una estimación de lo que falta. Se estudió como alternativa, pero no sustituye la búsqueda principal del juego.
HeurísticaEstimación que ordena una búsqueda
Ayuda a explorar antes los estados prometedores. Una heurística admisible nunca exagera el coste mínimo que todavía falta.
Envolvente cinemáticaLímite de lo que el coche podría alcanzar
Describe los estados alcanzables en cierto número de movimientos si se ignoran paredes y otras restricciones. Si ni siquiera esa versión favorable alcanza meta, el estado real tampoco puede hacerlo.
PodaDescarte anticipado de cálculos imposibles
Elimina una rama de cálculo solo cuando se ha demostrado que no puede contener una trayectoria necesaria. Una poda segura acelera sin cambiar el resultado.
CotaLímite demostrado para comparar o descartar
Una cota superior es un resultado que sabemos que puede alcanzarse; una cota inferior expresa lo mejor que todavía podría conseguirse desde un estado.
Web WorkerCálculo separado de la interfaz
Es una tarea del navegador que realiza cálculos intensivos sin bloquear el hilo que dibuja y responde a los controles de la página.
No hay términos que coincidan con la búsqueda.
02 · Modelo matemático
La pista como espacio de estados
El grafo puede contener varios estados asociados a una misma intersección: una posición con distinto vector o capa representa una situación cinemática diferente. Esta multiplicidad matemática no permite que dos coches terminen en la misma posición durante una carrera.
Estado y transición
El estado físico fundamental del Editor es
(x, y, vₓ, vᵧ, capa de pista). La capa de pista distingue la calzada inferior de una zona
elevada. En cada turno se puede modificar cada componente del vector
en −1, 0 o +1; por tanto hay como máximo nueve aceleraciones candidatas.
Ver las fórmulas de un movimiento
Actualización del vector
vₜ = vₜ₋₁ + aₜ, aₜ ∈ {−1, 0, 1}²La aceleración se aplica primero. Puede modificar cada componente del vector en una unidad.
Actualización de posición
pₜ = pₜ₋₁ + vₜEl nuevo vector determina el segmento completo que atraviesa el coche en ese movimiento.
Ejemplo: desde p=(10,8) con vector v=(2,1), elegir a=(1,−1) produce v'=(3,0) y la nueva posición p'=(13,8).
Un movimiento que mantuviera el vector total en cero no es válido. Además, la validez no se decide mirando únicamente el destino: el segmento debe respetar la superficie de la pista, los arcenes, las capas, las reglas iniciales y el sentido correcto de salida y meta.
El movimiento es un segmento, no un salto
Durante una transición se calculan los cruces con las líneas de salida y meta. Si ambos ocurren en el mismo vector, se conserva su orden exacto. La comparación se realiza mediante fracciones enteras, sin depender de redondeos de coma flotante.
Estado físico y clave de búsqueda
Algunos cálculos añaden una fase temporal mientras está activa la regla de apertura de la carrera. Esa fase pertenece al cálculo de la trayectoria amarilla. El cálculo principal de trayectorias óptimas usa posición, vector y capa de pista; esta diferencia se declara de nuevo entre los límites.
03 · Evaluar una pista
Cómo evalúa el Editor una pista
Al pulsar Evaluar pista, el Editor no ejecuta un único algoritmo. Encadena cálculos con objetivos distintos y reutiliza resultados seguros para reducir trabajo.
- Calcula la trayectoria amarilla. Dijkstra encuentra la trayectoria válida de menor longitud euclidiana total.
- Obtiene una cota de movimientos. Como la trayectoria amarilla es válida, su número de movimientos es un límite superior para cualquier trayectoria óptima.
- Construye el DAG óptimo. La búsqueda en anchura (BFS) conserva todos los estados y movimientos que participan en trayectorias de mínimo número de movimientos.
- Protege el resultado. Si la búsqueda con cota devolviera meta inalcanzable, se repite sin ella para comprobar que la poda no ha ocultado una trayectoria válida.
- Comprueba varias vueltas. Se distingue si la geometría y la cinemática permiten salida–meta–salida–meta.
- Filtra continuidad. Si es circuito, se determina qué estados finales óptimos permiten otra vuelta completa.
- Calcula representantes y puntuación. Cobertura roja, trayectorias verde y azul, porcentaje continuable y métricas de diseño.
La orquestación se ejecuta en un Web Worker. El cálculo intensivo queda separado del hilo de interfaz, que permanece receptivo y puede cancelar o ignorar una evaluación obsoleta. El resultado se entrega completo al finalizar, sin mezclarlo con el análisis de una pista nueva.
04 · BFS, DAG y conteo exacto
Encontrar todas sin enumerarlas
El número de posibilidades puede crecer de forma enorme. El Editor evita guardar una lista gigantesca: fusiona estados equivalentes y cuenta trayectorias sobre una representación compacta.
Búsqueda en anchura (BFS) por capas
Cada capa de BFS corresponde a un número de movimientos. La primera capa que contiene llegadas válidas fija el mínimo. Se completa esa capa para no perder otros estados finales con el mismo número de movimientos y después se eliminan los estados que no pertenecen a ninguna trayectoria óptima.
Ver cómo se compactan todas las trayectorias óptimas
Fusión de estados
clave = (posición, vector, capa de pista)Muchas secuencias distintas llegan al mismo estado y comparten desde ahí las mismas continuaciones.
Representación útil
salida → estados útiles → metas óptimasEl resultado es un DAG: cada enlace avanza exactamente una capa de BFS.
Programación dinámica con enteros arbitrarios
Para cada estado se acumula cuántas trayectorias llegan hasta él. La
programación dinámica reutiliza los
resultados compartidos y BigInt conserva
exactamente todos los dígitos del conteo.
Ver la fórmula del conteo exacto
La salida contiene una forma de empezar. Para cada estado t se suman las cantidades de trayectorias que llegan desde sus estados anteriores. Al final se suman los estados que cruzan meta.
Sumando los conteos de los estados finales se obtiene el número total de trayectorias óptimas. El mismo principio permite contar solo las que conducen a estados finales continuables. Así se han manejado pistas con más de 10²³ trayectorias óptimas sin construir cada trayectoria por separado.
Complejidad computacional del modelo académico
Holzer y McKenzie estudiaron varias preguntas de decisión sobre el Racetrack académico. Sus resultados respaldan que la representación natural sea un grafo de estados que incluya posición y vector, pero no proporcionan una poda ni una aceleración directa para los cálculos del Editor.
Ver los resultados de complejidad del modelo académico
Las clases siguientes describen recursos asintóticos en el peor caso cuando crece el tamaño de la pista. No expresan cuánto tarda una evaluación concreta ni cuántas trayectorias óptimas existen.
| Pregunta académica | Regla sobre el límite de la pista | Resultado formal | Lectura sencilla |
|---|---|---|---|
| ¿Puede un coche alcanzar la meta, sin limitar los movimientos? | Se puede tocar el límite | En L y NC¹-difícil | Se relaciona con la alcanzabilidad en un laberinto de cuadrícula no dirigido y requiere muy poca memoria auxiliar. |
| ¿Puede un coche alcanzar la meta, sin limitar los movimientos? | No se puede tocar el límite | NL-completo | El vector conserva información esencial y el problema está entre los más difíciles de NL. |
| ¿Puede un coche alcanzar la meta dentro de un máximo de movimientos? | Ambas variantes | NL-completo | Decidir si existe una trayectoria dentro del límite no equivale a contar todas las trayectorias óptimas. |
| ¿Dispone el primer jugador de una estrategia ganadora contra toda respuesta rival? | Se puede tocar el límite | En P; se desconoce si es P-completo | Existe un algoritmo de tiempo polinómico, pero el artículo no demuestra que sea P-completo. |
| ¿Dispone el primer jugador de una estrategia ganadora contra toda respuesta rival? | No se puede tocar el límite | P-completo | Está entre los problemas más difíciles de P y se considera poco favorable a una paralelización muy eficiente. |
05 · Varias vueltas
Circularidad no equivale a continuidad óptima
Una pista puede permitir carreras a varias vueltas y, a la vez, tener cero trayectorias óptimas capaces de iniciar la siguiente vuelta desde su estado final.
Qué es una trayectoria óptima con continuidad
Esta definición mantiene un significado único para “óptima”: siempre se refiere al menor número absoluto de movimientos. Si ninguna trayectoria óptima absoluta puede continuar, se busca otra clase distinta, la trayectoria continuable de mínimo número de movimientos. Esta segunda necesita más movimientos que la óptima absoluta.
Ver la diferencia con fórmulas
𝒱 es el conjunto de trayectorias válidas y |T|, el número de movimientos de la trayectoria T.
Si mcont = m*, existen trayectorias óptimas con continuidad. Si mcont > m*, ninguna óptima absoluta continúa y la alternativa continuable necesita la mínima cantidad adicional de movimientos.
Cómo se calcula
- Se construye la primera capa de llegadas. La BFS fija
m*y conserva en un DAG todos los estados y movimientos que forman trayectorias válidas de esa longitud. - Se distinguen los estados finales. Dos trayectorias que terminan en la misma posición pero con vector o capa diferentes no dejan la misma posibilidad para la vuelta siguiente.
- Se certifica otra vuelta. Desde cada estado final, el Editor comprueba si existe una trayectoria válida que cruce la salida y después vuelva a cruzar la meta.
- Se filtran y cuentan las llegadas. La programación dinámica suma con
BigIntcuántas trayectorias óptimas desembocan en estados finales certificados. - Se profundiza solo si hace falta para la IA. Si la capa
m*no contiene ninguna continuable, el generador detrai/troicontinúa la BFS hasta la primera profundidadmcontque sí la tenga.
El porcentaje que muestra el Editor se calcula siempre sobre las trayectorias de m*. Por
eso puede mostrar 0 % aunque el generador de biblioteca encuentre después una trayectoria continuable
de mcont movimientos.
Ver la fórmula y el redondeo del porcentaje
Ncontinuables cuenta las trayectorias óptimas absolutas continuables y Nóptimas, las trayectorias óptimas absolutas totales. Los dos conteos son enteros exactos. El porcentaje visible se redondea a dos decimales. Por ello, un 0,00 % mostrado puede significar cero trayectorias continuables o una proporción positiva menor que 0,005 %.
Dos preguntas distintas
- Aptitud general
- ¿Existe alguna trayectoria válida que cruce meta, vuelva a cruzar salida y alcance meta otra vez?
- Continuidad óptima
- De todas las llegadas con el mínimo número absoluto de movimientos, ¿cuántas permiten completar otra vuelta?
La primera comprobación aplica una precondición topológica y después explora exhaustivamente la
secuencia de dos vueltas. La precondición evita que un tramo como Espiral sea clasificado
como circuito por una vuelta atrás geométricamente posible pero ajena al sentido de carrera.
Para la segunda pregunta, cada estado final conserva posición, vector y capa. No basta con que el coche haya llegado a meta: importa cómo ha llegado.
Qué ocurre si ninguna óptima absoluta continúa
El análisis visible del Editor conserva el dato: 0 óptimas continuables. Al generar
los representantes de biblioteca para la IA, el planificador tiene otra obligación práctica: buscar
la primera profundidad posterior que sí contiene trayectorias continuables. trai y
troi pueden, por tanto, emplear algún movimiento más que el óptimo absoluto si esa es la
mínima penalización necesaria para encadenar vueltas.
06 · Representantes visibles
Rojo, verde, azul y amarillo
Los cuatro colores responden a preguntas diferentes. Llamarlos a todos “la trayectoria óptima” ocultaría información decisiva para conducir y diseñar pistas.
| Color | Qué representa | Prioridad matemática | Lectura para la conducción |
|---|---|---|---|
| Rojo | La cobertura de todos los estados y movimientos de las trayectorias óptimas elegibles. | Mínimo número de movimientos; en circuitos, solo las óptimas con continuidad. | Muestra la amplitud real de decisiones igualmente rápidas. |
| Verde | La trayectoria óptima más corta. | Primero mínimos movimientos; después mínima longitud euclidiana. | La trayectoria geométricamente más compacta entre las igualmente rápidas. |
| Azul | La trayectoria óptima más larga. | Primero mínimos movimientos; después máxima longitud euclidiana. | La trayectoria geométricamente más abierta sin aumentar los movimientos. |
| Amarillo | La trayectoria euclidiana más corta. | Mínima distancia, aunque necesite más movimientos. | Contrasta “cubrir menos distancia” con “terminar en menos movimientos”. |
Distancia euclidiana
La longitud de una trayectoria es la suma de las longitudes de sus vectores. Para verde y azul se comparan expresiones exactas como sumas de radicales y también se cuentan exactamente los empates.
Ver las fórmulas de las trayectorias por color
𝒪elegible contiene las trayectorias óptimas comparables —en circuitos, las que además tienen continuidad— y 𝒱 contiene todas las trayectorias válidas.
La amarilla se selecciona con Dijkstra usando valores numéricos y una tolerancia de 10⁻⁶. Una vez escogida, su longitud se reconstruye como expresión radical exacta. Por ello, no debe describirse su proceso de selección como aritmética simbólica completamente exacta.
trai, troi y tray
| Campo | Contenido | Uso | No significa |
|---|---|---|---|
trai |
Entre las trayectorias continuables de mínimo número de movimientos, la de mayor longitud euclidiana. | Trayectoria precalculada preferente de Alonso y alineación de su salida. | No es cualquier trayectoria larga ni el resultado obligatorio de cada recálculo. |
troi |
Entre las trayectorias continuables de mínimo número de movimientos, la de menor longitud euclidiana. | Segundo representante matemático de la biblioteca. | No es la trayectoria de Amateur. |
tray |
Historial de una nueva vuelta récord realizada por un humano sin IA ni Demo. | Conservar y reproducir el récord de la pista. | No es un representante calculado por el motor exacto. |
Aunque sus nombres proceden de extensiones históricas, trai, troi y
tray se almacenan como campos asociados a cada pista dentro de la biblioteca de
trayectorias. Si existen óptimas absolutas con continuidad, los representantes trai y
troi tienen m* movimientos; si no existen, usan la primera profundidad
continuable mcont.
07 · Envolventes cinemáticas
Descartar lo imposible sin perder lo óptimo
Antes de explorar una rama costosa puede demostrarse que, incluso ignorando paredes y capas, su velocidad y posición ya hacen imposible llegar a meta dentro del tiempo disponible.
Descomposición por ejes
Tras n movimientos, las aceleraciones elegidas determinan un intervalo exacto de velocidades y posiciones posibles en cada eje. El motor combina después los intervalos horizontal y vertical.
Ver las fórmulas de la envolvente cinemática
Vector tras n movimientos
vₙ = v₀ + Σᵢ₌₁ⁿ aᵢCada aceleración de un eje vale −1, 0 o +1.
Posición tras n movimientos
pₙ = p₀ + n·v₀ + Σᵢ₌₁ⁿ (n − i + 1)·aᵢLas aceleraciones tempranas pesan más porque afectan a más movimientos posteriores.
Fijados n y el cambio total de vector, las posiciones posibles llenan un intervalo entero exacto, sin huecos. El motor precalcula máscaras de alcanzabilidad hasta un segmento finito de meta y cruza las condiciones de X e Y para hallar el primer número de movimientos cinemáticamente posible.
Por qué la poda es segura
La envolvente es una relajación: ignora la forma concreta de la pista, capas, ocupación y algunas restricciones de validez. Puede aceptar un falso positivo —“quizá sea posible”—, pero un resultado negativo demuestra que ni siquiera la cinemática libre alcanza el objetivo. Solo esos negativos se usan para podar.
g + h > U. La igualdad se conserva porque puede contener
otras trayectorias óptimas cuyo conteo es obligatorio.
Ver la fórmula de la poda segura
g son los movimientos ya realizados, h es una cota inferior de los que faltan y U es el número de movimientos de una trayectoria válida conocida. Si hay igualdad, el estado se conserva.
Frenado discreto de F1-RaceTrack
Si una componente tiene velocidad entera u, la distancia acumulada al reducirla en una unidad por turno hasta cero es:
Ver la fórmula de frenado
La primera expresión es una distancia positiva por eje; la segunda conserva el sentido y representa un desplazamiento con signo.
Esta expresión no es la distancia v²/4 de la variante física de Vawter: aquella emplea
otras aceleraciones y otra actualización de posición.
Dos usos diferentes
La amarilla aporta la cota superior; la envolvente elimina estados que no pueden llegar dentro de ella. Un reintento sin cota actúa como salvaguarda.
La BFS visible se conserva. La envolvente ordena y memoiza la certificación booleana de continuidad; no decide qué representante se muestra.
08 · Elección de algoritmos
Por qué este método y no otro
La decisión no se basa en que exista un único algoritmo “correcto”, sino en las garantías que exige cada resultado: una trayectoria, la totalidad de óptimas, la continuidad, el tiempo y la estabilidad visual.
| Método | Fortaleza | Limitación o hipótesis | Uso en F1-RaceTrack |
|---|---|---|---|
| BFS + DAG + programación dinámica | Garantiza mínimos movimientos, conserva todos los empates y permite contarlos exactamente. | Puede explorar muchos estados; necesita podas demostrablemente seguras. | Integrado Motor principal de óptimas y recálculo determinista. |
| Dijkstra | Optimiza la suma de longitudes positivas de los vectores. | Responde a distancia euclidiana, no a mínimo número de movimientos. | Integrado Trayectoria amarilla y cota válida. |
| A* | Una heurística admisible puede reducir estados manteniendo el coste óptimo. | El tiempo real no mejoró de forma estable y puede escoger otro representante entre empates. | Ensayo comparativo No sustituye la BFS del motor principal. |
| Regiones de aterrizaje / R* | Reduce el grafo explotando la geometría de curvas y rectas. | Los resultados de Bekos et al. suponen anchura uniforme, tramos rectilíneos largos, un coche y curvas bien separadas. | Referencia académica No trasladado literalmente a pistas con ramales, puentes y anchuras variables. |
| Algoritmos genéticos / BDD | Ofrecen otras formas de buscar o representar conjuntos grandes. | No aportan aquí una vía más simple para contar todas las óptimas y certificar continuidad exacta. | Alternativas estudiadas No se utilizan en el motor. |
| Variante física de Vawter / Joyner | Relaciona el juego con aceleración física y distancia de frenado. | Cambia las reglas: aceleraciones, posición siguiente, frenado y colisiones no coinciden con F1-RaceTrack. | Fundamento histórico Se explica como alternativa, pero sus reglas no se aplican a F1-RaceTrack. |
El caso de A*
Se construyó una prueba comparativa con una heurística admisible derivada de las envolventes. Redujo estados, pero no ofreció una mejora temporal uniforme y cambió la trayectoria visible cuando había empates. El motor conserva BFS porque mantiene todos los empates necesarios para el conteo y ofrece una elección estable de representantes.
Cada combinación se midió en un proceso independiente, con una pasada de calentamiento y tres pasadas cronometradas. Los porcentajes siguientes describen ese entorno de ensayo y no una promesa de rendimiento para cualquier equipo o pista.
Mejor caso temporal de A* en la prueba comparativa.
Empeoramiento medido desde la salida.
Empeoramiento medido en una pista compleja.
No se adoptó: BFS conserva mejor las garantías y la estabilidad requeridas.
Ver cómo se comparan los tiempos
Se usan palabras —“menos tiempo” o “más tiempo”— para evitar que un signo negativo se confunda con un resultado peor.
09 · Aplicación al diseño
De los números a la conducción
La calificación del Editor resume propiedades observables, pero no pretende sustituir la prueba de una pista por personas reales.
| Componente | Peso | Qué mide | Qué se siente al conducir |
|---|---|---|---|
| Distribución | 35 % | Cobertura de intersecciones útiles y equilibrio de decisiones a distintas profundidades. | Si la pista ofrece espacio y elecciones reales o conduce por un único pasillo obligado. |
| Diversidad de trayectorias | 25 % | Separación euclidiana y espacial entre verde, azul y amarillo. | Si hay trayectorias con personalidad distinta, no solo pequeñas variaciones del mismo carril. |
| Ventaja experta | 25 % | Penalización en movimientos de la amarilla frente a la trayectoria óptima. | Cuánto premia anticipar velocidad en vez de limitarse a recorrer la distancia más corta. |
| Continuidad | 15 % | Porcentaje de óptimas que pueden enlazar otra vuelta. | Libertad para cruzar meta rápido sin convertir la siguiente vuelta en una recuperación imposible. |
En los tramos no circulares el bloque de continuidad no es aplicable y los otros tres pesos se renormalizan. La cobertura obtiene su puntuación máxima al alcanzar el 50 % de la superficie relevante; la ventaja experta, cuando la trayectoria euclidiana más corta necesita un 25 % más de movimientos; y la diversidad combina un 40 % de separación euclidiana con un 60 % de separación espacial.
Ver cómo se combinan las métricas de diseño
Cada componente se expresa entre 0 y 100:
D = 0,50 · cobertura + 0,50 · equilibrio de decisiones V = 0,40 · diversidad euclidiana + 0,60 · separación espacial E = 100 · min(1, ((mamarilla − m*) / m*) / 0,25) C = 100 · Ncontinuables / NóptimasD mide distribución; V, diversidad; E, ventaja experta; y C, continuidad. Las métricas de equilibrio y separación son indicadores de diseño calibrados, no teoremas sobre la diversión de una pista.
Corrector por trayectorias separadas, límites y calificación
Un corrector entre 0,90 y 1 pondera si las trayectorias aprovechan opciones espacialmente separadas. Es un indicador heurístico: no demuestra por sí mismo que existan ramales topológicos. Si el porcentaje de continuidad mostrado se redondea a 0,00 %, la nota final queda limitada a 19 puntos.
Ver la fórmula de la nota final
f es el corrector heurístico, comprendido entre 0,90 y 1. Si el porcentaje continuable ya redondeado es 0,00 %, se aplica además Nfinal = min(Nfinal, 19). Una proporción exacta positiva menor que 0,005 % también se muestra como 0,00 %.
Las bandas de calificación son:
Problema estructural grave o continuidad mostrada como 0,00 % en un circuito.
Funciona, pero tiene margen claro de variedad o conducción.
Equilibrio sólido de los componentes aplicables.
Destaca en varias dimensiones sin un defecto dominante.
10 · Aplicación en el juego
Alonso, Amateur y Demo
Las trayectorias del Editor alimentan el juego, pero cada piloto conserva una política distinta. La diferencia no es solo cosmética: expresa talento, regularidad y oportunidades para el humano.
Alonso
- Intenta alinearse con
trai, la representante precalculada más larga entre las óptimas elegibles; en circuitos, además, debe ser continuable. - Reutiliza su trayectoria calculada mientras el siguiente movimiento siga disponible.
- La vía directa comprueba posición y vector y valida el movimiento inmediato; cuando la trayectoria se entrega como preferencia al Web Worker, el planificador reproduce y valida la trayectoria completa.
- Si la trayectoria ya no encaja o el siguiente destino está ocupado, recalcula mediante BFS desde el estado actual.
- En circuitos exige continuidad. Si ninguna óptima absoluta continúa, busca la primera profundidad continuable.
trai.
Amateur
- Usa una búsqueda local con límites de 60.000 estados y un reintento ampliado de 220.000.
- Si existe una trayectoria de un movimiento adicional, la elige con una probabilidad del 42 %.
- En los demás casos sortea entre hasta tres óptimas de menor longitud euclidiana.
- No se le exige continuidad, porque debe dejar margen a un humano experimentado para batirlo.
- No sigue
troi; su política se calcula desde la situación actual y conserva la trayectoria hasta agotarla o bloquearse.
Demo
| Situación | Reparto de pilotos | Consecuencia |
|---|---|---|
| Un coche | Siempre Alonso. | Demostración de la política experta y continuable. |
| Dos coches, primera vuelta | El coche alineado con el inicio de trai queda como Alonso; el otro, Amateur. |
La parrilla se ajusta antes de una Demo iniciada sin movimientos. |
| Dos coches, vueltas posteriores | El primero que entra en la nueva vuelta queda registrado como Amateur para esa vuelta; el otro será Alonso al alcanzarla. | No existe una alternancia rígida rojo/azul: depende del orden real de paso. |
| Demo activada durante la carrera | Se conservan las posiciones actuales y se cancelan elecciones de salida pendientes. | Las trayectorias se reconstruyen desde el estado en que los humanos entregaron el volante. |
11 · Evidencia y límites
Resultados medidos y límites de validez
Los conteos son deterministas; los tiempos dependen del equipo, del navegador, de la carga y del estado concreto desde el que se recalcula.
Mediciones de las envolventes
Son mediciones orientativas de tiempo de pared en un entorno local. El recálculo de
4_Esquinas resume seis ejecuciones; las evaluaciones completas de Caleidoscopio y
Candelabro usan la mediana de tres procesos independientes por pista. La carga del equipo y del
navegador puede cambiar los tiempos, pero no los conteos deterministas.
Mismos movimientos, óptimas totales y continuables en el conjunto de control.
Mediana del estado bloqueado estudiado en 4_Esquinas.
Certificación booleana acelerada en el caso medido.
Mejora medida en Caleidoscopio y Candelabro.
Estos datos muestran una mejora medible sin alterar los resultados del conjunto de control. No permiten extrapolar la misma mejora a todas las pistas ni a todos los estados.
Ver la fórmula usada para expresar la mejora
El tiempo de referencia es el medido antes de aplicar la mejora y el tiempo nuevo, el medido después en las mismas condiciones de ensayo.
Límites formales y de implementación
- Fase de apertura en el DAG óptimo. La clave principal no incluye la fase saturada de apertura. Existe un caso adversarial teórico si un mismo estado cinemático reaparece en fases distintas antes de que la regla deje de importar.
- Selección amarilla. Dijkstra compara distancias con
numbery tolerancia 10⁻⁶; la expresión exacta se reconstruye después, no gobierna toda la cola de prioridad. - Dominio de las envolventes. El horizonte precalculado llega a 256 movimientos, exige coordenadas enteras seguras y metas ortogonales. Fuera de ese dominio el sistema falla de forma conservadora: no poda.
- Punto de evaluación. El Editor analiza el coche y la dirección inicial configurados en la pista; no recalcula todas las plazas posibles de una parrilla multijugador.
- Circularidad durante la carga. El Editor realiza una comprobación exhaustiva para analizar la pista. El lector de pistas del juego conserva límites operativos de estados y movimientos para mantener una carga ágil.
- Fase del movimiento final. La carrera conserva un cruce de salida posterior a meta dentro del mismo movimiento. La certificación del Editor parte del estado cinemático final y exige un cruce de salida posterior; por ello puede explorar más movimientos de los necesarios para la regla de carrera.
- Ocupación dinámica. Una trayectoria válida en un turno puede bloquearse en el siguiente por el rival; por eso el juego valida el destino inmediato y recalcula cuando procede.
- Rendimiento. Una reducción de estados no implica automáticamente menor tiempo de pared. Caché, asignaciones y orden de empates también influyen.
12 · Arquitectura
Cómo se reparten los cálculos
El sistema separa la validez del movimiento, la optimización, la continuidad y las decisiones de carrera. Esta división permite aplicar una garantía distinta allí donde realmente hace falta.
| Área | Componente lógico | Función |
|---|---|---|
| Cinemática y movimientos válidos | Motor de movimiento | Construye estados, aplica aceleraciones y comprueba superficie, capas, sentido y ocupación final. |
| Óptimas y conteo exacto | Analizador BFS/DAG | Encuentra la primera capa de llegada, conserva todos los empates y los cuenta con BigInt. |
| Distancia euclidiana | Planificador Dijkstra | Obtiene la trayectoria amarilla y proporciona una cota válida al analizador exacto. |
| Aptitud para varias vueltas | Analizador topológico | Comprueba que la pista permite completar dos vueltas respetando el orden de salida y meta. |
| Continuidad óptima | Certificador hacia atrás | Determina qué estados finales pueden completar otra vuelta y filtra el conteo óptimo. |
| Alcanzabilidad y frenado | Envolventes cinemáticas | Descarta estados imposibles sin eliminar soluciones óptimas y acelera la certificación booleana. |
| Representantes de biblioteca | Selector trai/troi | Elige las trayectorias de mayor y menor longitud euclidiana entre las continuables de mínimo número de movimientos. |
| Calificación de diseño | Evaluador de pistas | Relaciona longitud, anchura, ramales y distribución de trayectorias con la experiencia de conducción. |
| Decisiones durante la carrera | Planificadores de Alonso, Amateur y Demo | Validan el siguiente destino, conservan trayectorias útiles y recalculan cuando cambia la situación. |
| Alternativas algorítmicas | Pruebas comparativas aisladas | Permiten medir otros métodos sin alterar las garantías del motor principal. |
13 · Bibliografía y referencias
De Racetrack académico a F1-RaceTrack
Las fuentes externas sitúan el modelo y sus alternativas; las reglas y algoritmos descritos aquí se aplican al funcionamiento de F1-RaceTrack.
- Michael A. Bekos, Till Bruckdorfer, Henry Förster, Michael Kaufmann, Simon Poschenrieder y Thomas Stüber, Algorithms and Insights for RaceTrack, FUN 2016, LIPIcs 49:6. Fuente académica principal sobre grafos de estados, BFS, regiones de aterrizaje, estrategias limitadas y complejidad. Publicada con licencia CC BY 3.0.
- Markus Holzer y Pierre McKenzie, The Computational Complexity of RaceTrack, FUN 2010, LNCS 6099, pp. 260–271. Clasifica la complejidad de varios problemas de decisión del modelo académico de Racetrack; no clasifica el conjunto completo de reglas ni el rendimiento práctico de F1-RaceTrack.
- Peter E. Hart, Nils J. Nilsson y Bertram Raphael, A Formal Basis for the Heuristic Determination of Minimum Cost Paths, IEEE Transactions on Systems Science and Cybernetics, 1968. Referencia fundacional de A*, utilizada para situar la prueba comparativa.
- Richard Vawter, Physics of the game of racetrack, American Journal of Physics 46, 1978. Variante físicamente motivada con reglas distintas a la cinemática de F1-RaceTrack.
- Keith A. Joyner y Clyde J. Smith, Comments on “Physics of the game of racetrack”, American Journal of Physics 47, 1979. Representación posición–vector y catálogo de variantes de reglas.
- Martin Gardner, Mathematical Games, Scientific American, enero de 1973. Una de las referencias históricas de difusión del juego sobre papel cuadriculado.
- Racetrack (game), Wikipedia. Referencia secundaria para terminología, reglas comunes y variantes; no se usa como autoridad del comportamiento específico de F1-RaceTrack.