F1-RaceTrack · GutiSoft

Documentación técnica · F1-RaceTrack

Del vector a la trayectoria óptima

Cómo se mueve el coche, qué significa cada tipo de trayectoria, cómo las calcula el Editor y cómo esos resultados se aplican a Alonso, Amateur y Demo.

Cinemática vectorial discreta Cálculo exacto de óptimas Continuidad multivuelta

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.

Qué busca el Editor

Todas las trayectorias que llegan a meta con el menor número de movimientos, no solo una de ellas.

Garantía de continuidad

En un circuito, cada llegada se analiza con su posición y vector finales para saber si admite otra vuelta válida.

Principio rector. El Editor es la referencia común de las reglas de cálculo y el juego aplica esas mismas reglas. El Editor conserva todas las trayectorias de mínimos movimientos, las cuenta exactamente y, en circuito, determina cuáles permiten completar otra vuelta. Las optimizaciones deben reducir la espera sin perder estados necesarios, empates ni condiciones de validez.
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 las fases de apertura o de vuelta cuando condicionan los movimientos siguientes. Con lluvia también importa la inercia anterior desde la velocidad crítica. 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.

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.

Colisión entre coches. Se puede atravesar la posición del rival; lo que está prohibido es terminar el turno en la misma intersección ocupada. La trayectoria prevista se revalida en cada movimiento porque la ocupación es dinámica.

Estado físico y clave de búsqueda

Tanto el DAG óptimo como el cálculo de la trayectoria amarilla distinguen la fase temporal de apertura. Mientras la restricción inicial está activa, llegar al mismo estado físico tras cuatro movimientos o tras cinco puede permitir continuaciones diferentes. Después del quinto movimiento esa fase ya no restringe y se fusionan las historias equivalentes. En la búsqueda con lluvia se conserva la inercia anterior solo desde el umbral de velocidad que hace relevante ese dato.

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.

  1. Calcula la trayectoria amarilla. Dijkstra encuentra la trayectoria válida de menor longitud euclidiana total.
  2. 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.
  3. 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.
  4. 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.
  5. Comprueba varias vueltas. Se distingue si la geometría y la cinemática permiten salida–meta–salida–meta.
  6. Filtra continuidad. Si es circuito, se determina qué estados finales óptimos permiten otra vuelta completa.
  7. 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 óptimas

El 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
C(salida) = 1  C(t) = Σ C(s), para cada estado anterior s que llega a t

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.
Alcance de estos resultados. No constituyen una clasificación demostrada de F1-RaceTrack completo. El juego añade capas de pista, orden de salida y meta, continuidad multivuelta, ocupación dinámica, conteo exacto de trayectorias óptimas y reglas propias de IA. La estrategia ganadora del artículo contempla todas las respuestas de un rival perfecto; no describe el modo de conducir de Alonso o Amateur. La geometría de límites de F1-RaceTrack tampoco se identifica con una de las dos variantes académicas sin una demostración específica.

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

Definición. En un circuito, una trayectoria óptima con continuidad es una trayectoria óptima absoluta cuyo estado al cruzar meta permite seguir una trayectoria válida y volver a cruzar la meta. No basta con llegar rápido: la posición, el vector y la capa de pista finales deben dejar una siguiente vuelta posible.

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.

m* = min { |T| : T ∈ 𝒱 y T cruza meta } 𝒪* = { T ∈ 𝒱 : T cruza meta y |T| = m* } 𝒪*cont = { T ∈ 𝒪* : Continúa(fin(T)) } mcont = min { |T| : T ∈ 𝒱, T cruza meta y Continúa(fin(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

  1. 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.
  2. 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.
  3. 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.
  4. Se filtran y cuentan las llegadas. La programación dinámica suma con BigInt cuántas trayectorias óptimas desembocan en estados finales certificados.
  5. Se profundiza solo si hace falta para la IA. Si la capa m* no contiene ninguna continuable, el generador de trai/troi continúa la BFS hasta la primera profundidad mcont que 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
P = 100 · Ncontinuables / Nóptimas

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 condición topológica previa y después explora la secuencia de dos vueltas con los movimientos válidos del Editor. El juego usa el mismo criterio y puede detenerse en cuanto demuestra que existe una segunda vuelta; la evaluación completa conserva los conteos que necesita. La condición previa evita clasificar un tramo como Espiral como circuito por un regreso geométricamente posible en sentido contrario a la 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.

Orden de meta y salida en un mismo movimiento. Durante la carrera, si un vector cruza primero meta y después salida, la meta cierra la vuelta y el cruce posterior de salida pertenece a la nueva vuelta. La certificación matemática del Editor parte actualmente del estado cinemático final y vuelve a exigir un cruce de salida posterior.

Qué ocurre si ninguna óptima absoluta continúa

El análisis visible del Editor conserva el dato: 0 óptimas continuables. En ese caso, la cobertura roja y los representantes verde y azul muestran todas las óptimas absolutas y sus extremos de distancia. Ese mismo conjunto permite evaluar Distribución, Diversidad y Ventaja experta; Continuidad aporta 0/15 y la pista sigue siendo un circuito, sin renormalizar los otros pesos. 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 del conjunto de trayectorias óptimas representado. Mínimo número de movimientos; en circuitos, las óptimas con continuidad si existe alguna, y todas las óptimas si no hay ninguna. 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
L(T) = Σ √(Δxᵢ² + Δyᵢ²) Tverde = arg min L(T), T ∈ 𝒪visible Tazul = arg max L(T), T ∈ 𝒪visible Tamarilla = arg min L(T), T ∈ 𝒱

𝒪visible contiene las óptimas continuables en circuitos cuando existe alguna; si su conteo exacto es cero, contiene todas las óptimas absolutas, igual que en los tramos. Este mismo conjunto se usa para puntuar Distribución, Diversidad y Ventaja experta. Continuidad se calcula por separado y conserva su peso de 15 % en circuitos. 𝒱 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.

Regla de conservación. Con una trayectoria válida conocida de coste U, se elimina un estado solo cuando 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 + h > U ⟹ descartar el estado

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
dfrenado(u) = |u|(|u| − 1) / 2 Δfrenado(u) = sign(u) · dfrenado(u)

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

En el Editor

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. Esta poda exige llegada interior: si se permiten llegadas exteriores, se omite la envolvente que solo representa terminales dentro del tablero.

En Alonso

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.

46,55 % menos Candelabro

Mejor caso temporal de A* en la prueba comparativa.

3,30 % más 4 Esquinas

Empeoramiento medido desde la salida.

5,37 % más Laberinto

Empeoramiento medido en una pista compleja.

0 Aplicaciones de A* al motor

No se adoptó: BFS conserva mejor las garantías y la estabilidad requeridas.

Ver cómo se comparan los tiempos
reducción = 100 · (treferencia − tnuevo) / treferencia aumento = 100 · (tnuevo − treferencia) / treferencia

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óptimas

D 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.

circuito: Nbase = 0,35D + 0,25V + 0,25E + 0,15C tramo: Nbase = (0,35D + 0,25V + 0,25E) / 0,85

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. La continuidad nula aporta 0 de sus 15 puntos, sin imponer un límite adicional a la nota final.

Ver la fórmula de la nota final
Nfinal = limitar entre 1 y 100 (redondear(Nbase · f))

f es el corrector heurístico, comprendido entre 0,90 y 1. Un circuito sin óptimas continuables conserva los pesos 35/25/25/15: sus otras cualidades se evalúan sobre todas las óptimas absolutas y Continuidad aporta 0/15. No se aplica ningún límite adicional por continuidad nula.

Las bandas de calificación son:

1–19Mala

Carencias importantes en las cualidades técnicas evaluadas.

20–49Aceptable

Funciona, pero tiene margen claro de variedad o conducción.

50–80Buena

Equilibrio sólido de los componentes aplicables.

81–100Muy buena

Destaca en varias dimensiones sin un defecto dominante.

La nota es una ayuda, no un veredicto. No mide por sí sola diversión, legibilidad, estética, equilibrio entre dos rivales ni calidad táctil en iPad. Esas propiedades necesitan juego real y criterio de diseño.

10 · Aplicación en el juego

Alonso, Amateur y Demo

Las trayectorias y reglas de cálculo del Editor son la referencia del juego. Alonso es el conductor experto y busca mínimos movimientos; el objetivo del humano es obstruir una intersección para obligarlo a abandonar su trayectoria óptima. Amateur conduce con los mismos movimientos válidos, pero toma decisiones deliberadamente menos perfectas para que el humano tenga oportunidades de vencer.

Alonso

  • Frente a un humano conduce el coche azul, que sale segundo. Intenta reutilizar trai, la representante precalculada más larga entre las óptimas elegibles, para evitar una nueva búsqueda; en circuitos, además, debe ser continuable.
  • Reutiliza su trayectoria calculada mientras el siguiente movimiento siga disponible.
  • El Web Worker reproduce la trayectoria preferida desde posición, vector, capa, fase de apertura y Meteo actuales; comprueba llegada y continuidad cuando procede. Si la acepta, la reutiliza sin buscar otra. El acceso rápido solo emplea resultados ya validados para ese contexto, no basta con que el primer movimiento esté disponible. Esta validación comprueba validez y continuidad; el carácter óptimo de trai procede de su cálculo previo, no se demuestra otra vez.
  • 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.
Matiz importante. El recálculo de Alonso durante la carrera devuelve la primera trayectoria determinista de mínimos movimientos que cumple continuidad. No recalcula necesariamente la óptima euclidiana más larga y, por tanto, no debe confundirse con volver a generar trai.

Amateur

  • Usa una búsqueda local de hasta 60.000 estados, ampliable a 220.000 sin reiniciarla si aún no hay llegada. Agotar el presupuesto significa cálculo inconcluso, no ausencia de trayectoria: en ese caso continúa con el motor exacto en un Web Worker.
  • Al elegir una nueva trayectoria, intenta añadir un 8 % al mínimo de movimientos restantes hasta meta, redondeado al entero más cercano. Si un bloqueo o un cambio de Meteo exige recalcular, aplica el porcentaje al nuevo mínimo restante, sin un presupuesto acumulado por vuelta ni un ajuste en cada movimiento.
  • Parte de una trayectoria mínima; la búsqueda local sortea entre hasta tres de menor longitud euclidiana. Sustituye tramos cortos por alternativas válidas con un movimiento adicional, conservando posición, velocidad, nivel y memoria de inercia al reincorporarse. La primera intersección y el tramo de llegada se conservan.
  • No se le exige continuidad. El ajuste está limitado a 30.000 estados y 256 intentos, con un máximo de 1.500 estados por intento. Si no alcanza el objetivo, conserva la mejor aproximación encontrada. No añade esperas en una misma intersección ni bucles para retrasarse y respeta las mismas reglas de lluvia y movimiento del Editor.
  • No sigue troi; conserva la trayectoria mientras sea válida. Aplica el mismo ajuste a las nuevas trayectorias obtenidas del motor exacto o del respaldo almacenado, sin modificar la biblioteca ni los resultados óptimos en caché.

Demo

Situación Reparto de pilotos Consecuencia
Un coche Siempre Alonso. Demostración de la política experta y continuable.
Dos coches, primera vuelta Alonso conduce inicialmente el rojo y Amateur el azul, con independencia de los nombres configurados para la carrera normal. Si la Demo empieza sin movimientos previos, la parrilla se ajusta para que el rojo pueda aprovechar el inicio de trai.
Dos coches, vueltas posteriores El primero que abre una nueva vuelta pasa a Amateur y el perseguidor recibe a Alonso inmediatamente, aunque todavía esté terminando la vuelta anterior. El reparto se mantiene hasta que se abre otra vuelta. No existe una alternancia rígida rojo/azul: depende del orden real de paso. Al cambiar los pilotos se descartan sus trayectorias anteriores para aplicar la nueva política.
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.

10.1 · Dificultad de Amateur

Cómo se construye una trayectoria un 8 % menos eficiente

Amateur ofrece al principiante un rival al que pueda ganar. Para ello, el ajuste busca una trayectoria válida con aproximadamente un 8 % más de movimientos hasta meta que la trayectoria mínima de referencia. La diferencia se obtiene mediante decisiones de conducción: frenar, acelerar o cambiar de dirección de otra manera.

El objetivo se calcula sobre lo que queda por conducir

Si N es el número de movimientos de la trayectoria mínima desde el estado actual hasta meta, se calcula un incremento entero Δ. El objetivo usa movimientos; la longitud euclidiana solo ayuda a elegir la trayectoria de partida.

Δ = round(0,08 × N)  ·  objetivo = N + Δ

Una trayectoria mínima de 50 movimientos da un objetivo de 54. Para 26, se buscan 28: dos movimientos más equivalen al 7,69 %. Si solo quedan seis, el incremento redondea a cero. Estos ejemplos explican por qué el porcentaje es aproximado.

Sustituir tramos sin descomponer el resto de la trayectoria

  1. Obtener la referencia. La búsqueda local encuentra mínimos movimientos y sortea entre hasta tres trayectorias de menor longitud euclidiana. Si el cálculo local queda inconcluso, puede recurrir al motor exacto; el respaldo almacenado también puede aportar una trayectoria validada. El ajuste opera sobre una copia de la referencia recibida.
  2. Reconstruir los estados. Cada intersección lleva asociadas velocidad, nivel, movimientos acumulados y memoria de si el movimiento anterior fue de inercia. Se comprueba la trayectoria con las mismas reglas de movimiento y Meteo que usa el Editor.
  3. Buscar una sustitución corta. Se examinan tramos de 4, 6 u 8 movimientos y se intenta sustituir cada uno por otro de 5, 7 o 9. Cada sustitución aceptada añade exactamente un movimiento. Se conservan la primera intersección elegida y el tramo final de llegada.
  4. Reincorporarse al mismo estado cinemático. La alternativa debe terminar en la misma posición, con la misma velocidad, nivel y memoria de inercia. Después se valida de nuevo toda la trayectoria modificada antes de aceptarla.
  5. Repetir hasta alcanzar el objetivo o agotar la búsqueda. Las siguientes sustituciones avanzan por la trayectoria y el incremento nunca supera Δ. Si faltan alternativas válidas, se conserva el incremento conseguido, que puede ser menor o incluso cero.
Ejemplo de una sustitución. Entre los estados A y B, un tramo de cuatro movimientos se sustituye por otro de cinco. Ambos llegan a B con el mismo vector de velocidad, nivel y memoria de inercia. Así se puede continuar por el resto de la trayectoria. Volver solo a la misma intersección con otra velocidad no bastaría: cambiaría el siguiente punto de inercia.

La búsqueda de la alternativa descarta posiciones repetidas dentro del tramo y las que ya pertenecen a otras partes de la trayectoria. No introduce paradas en la misma intersección ni bucles para consumir movimientos, y no permite cruzar meta antes del tramo final.

Lluvia, bloqueos y vueltas sucesivas

La memoria de inercia forma parte del estado de reincorporación porque, con lluvia, condiciona el siguiente movimiento permitido. Las intersecciones ocupadas se comprueban para el movimiento inmediato; las posiciones futuras del rival no se dan por conocidas.

Mientras la trayectoria sigue siendo válida, Amateur la conserva: no añade otro 8 % en cada movimiento. Si un bloqueo o un cambio de Meteo obliga a calcular otra, el porcentaje se aplica a los movimientos mínimos que quedan desde el nuevo estado. Por ejemplo, si en ese momento quedan 25 movimientos mínimos, el nuevo objetivo es 27; los movimientos ya realizados no se vuelven a incrementar.

No hay un presupuesto acumulado por vuelta. Por ello, los recálculos, las penalizaciones y las distintas posiciones de partida pueden producir una diferencia final distinta del 8 %. En Demo, además, los coches intercambian Alonso y Amateur según el orden al iniciar cada vuelta; comparar los totales rojo y azul no equivale a comparar dos pilotos fijos.

Amateur no exige continuidad multivuelta. El ajuste mantiene el estado con el que termina la trayectoria de referencia: si esa llegada permite continuar, las sustituciones conservan esa posibilidad. El porcentaje por sí solo no convierte una llegada no continuable en continuable. Tampoco se vuelve a demostrar que un respaldo almacenado sea el mínimo absoluto desde cualquier estado.

Cómo se acota el coste de cálculo

El ajuste explora como máximo 30.000 estados en total, 1.500 por intento y 256 intentos. Antes de desarrollar una alternativa, unas cotas por eje descartan desplazamientos incompatibles con las velocidades inicial y final y los movimientos disponibles. También se evita repetir estados de búsqueda ya visitados.

Es una búsqueda acotada de sustituciones, no una enumeración de todas las trayectorias más largas. Al llegar a un límite devuelve la trayectoria válida conseguida. La función que implementa el ajuste es buildAmateurAiPlan, en src/ai-core.ts; chooseAiMove lo aplica una vez al obtener una nueva referencia. Las óptimas almacenadas, la caché y las decisiones de Alonso se conservan.

Resultados medidos y alcance del objetivo

Pista y MeteoMínimo de referenciaAmateur: objetivo alcanzadoIncremento
Básica · seco26287,69 %
Granada · seco69758,70 %
Granada · lluvia fuerte84918,33 %
RockRace · lluvia ligera59648,47 %

Los ensayos del 23 de septiembre de 2026 incluyeron 17 trayectorias completas desde la parrilla; todas alcanzaron su objetivo redondeado. El ajuste adicional tardó entre 8 y 66 ms en este PC, ejecutando el motor en Node. Estas cifras excluyen la búsqueda inicial del mínimo y no predicen el tiempo de un iPad ni de otra plataforma.

Dos Demos de diez vueltas en Granada, una en seco y otra con Meteo cambiante, alcanzaron el objetivo en las 27 nuevas trayectorias de Amateur calculadas entre ambas. Son ejemplos comprobados; la búsqueda acotada no garantiza alcanzar siempre el porcentaje ni una frecuencia determinada de victorias humanas.

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 históricas orientativas de tiempo de pared en un entorno local, anteriores a la revisión de cálculos de septiembre de 2026. 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.

16/16 Conteos conservados

Mismos movimientos, óptimas totales y continuables en el conjunto de control.

5,868 → 3,204 s Recálculo reproducido

Mediana del estado bloqueado estudiado en 4_Esquinas.

2,7–2,9 → 0,554 s Continuidad aislada

Certificación booleana acelerada en el caso medido.

5,13–7,36 % Evaluación completa

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
reducción de tiempo = 100 · (treferencia − tnuevo) / treferencia

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

  1. Equivalencia de estados. La fase de apertura forma parte del DAG óptimo mientras afecta a las continuaciones. La corrección se contrasta con tres pistas válidas y una búsqueda independiente: 6 movimientos y 118 trayectorias; 9 y 588; 6 y 7. Con lluvia se distingue la inercia anterior solo cuando puede cambiar las opciones futuras. Coincidir en posición no basta para fusionar estados.
  2. Selección amarilla. Dijkstra compara distancias con number y tolerancia 10⁻⁶; la expresión exacta se reconstruye después, no gobierna toda la cola de prioridad.
  3. Dominio de las envolventes. El horizonte precalculado llega a 256 movimientos, exige coordenadas enteras seguras y metas ortogonales. La poda del DAG se desactiva si se permiten llegadas exteriores que la envolvente no representa. Fuera del dominio compatible el sistema no poda.
  4. 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.
  5. Circularidad durante la carga. El juego comparte el criterio exacto del Editor: condición topológica previa y existencia de una segunda vuelta completa con las mismas reglas. Para responder sí o no puede detenerse con la primera demostración positiva y reutilizarla mientras no cambie la pista; no necesita contar todas las posibilidades.
  6. 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.
  7. 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.
  8. Rendimiento. Una reducción de estados no implica automáticamente menor tiempo de pared. Caché, asignaciones y orden de empates también influyen. En pistas complicadas el cálculo inicial, incluida la continuidad de una trayectoria guardada, puede tardar según el procesador del dispositivo. El punto del HUD parpadea mientras se calcula; cancelar la carrera también cancela el trabajo pendiente que ya no sirve.

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. El motor del Editor es la referencia compartida; el juego añade el estado de Meteo y la ocupación actual sin mantener reglas geométricas divergentes para cada piloto.

Área Componente lógico Función
Cinemática y movimientos válidosMotor de movimientoConstruye estados, aplica aceleraciones y comprueba superficie, capas, sentido y ocupación final.
Óptimas y conteo exactoAnalizador BFS/DAGEncuentra la primera capa de llegada, conserva todos los empates y los cuenta con BigInt.
Distancia euclidianaPlanificador DijkstraObtiene la trayectoria amarilla y proporciona una cota válida al analizador exacto.
Aptitud para varias vueltasAnalizador topológicoComprueba que la pista permite completar dos vueltas respetando el orden de salida y meta.
Continuidad óptimaCertificador hacia atrásDetermina qué estados finales pueden completar otra vuelta y filtra el conteo óptimo.
Alcanzabilidad y frenadoEnvolventes cinemáticasDescarta estados imposibles sin eliminar soluciones óptimas y acelera la certificación booleana.
Representantes de bibliotecaSelector trai/troiElige las trayectorias de mayor y menor longitud euclidiana entre las continuables de mínimo número de movimientos.
Calificación de diseñoEvaluador de pistasRelaciona longitud, anchura, ramales y distribución de trayectorias con la experiencia de conducción.
Decisiones durante la carreraPlanificadores de Alonso, Amateur y DemoValidan el siguiente destino, conservan trayectorias útiles y recalculan cuando cambia la situación.
Alternativas algorítmicasPruebas comparativas aisladasPermiten medir otros métodos sin alterar las garantías del motor principal.
Separación de responsabilidades. El Editor puede realizar un análisis exhaustivo porque trabaja antes de la carrera; el juego reutiliza esos resultados y reserva el recálculo para los estados que cambian por la interacción entre coches.

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.

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. Martin Gardner, Mathematical Games, Scientific American, enero de 1973. Una de las referencias históricas de difusión del juego sobre papel cuadriculado.
  7. Racetrack (game), Wikipedia. Referencia secundaria para terminología, reglas comunes y variantes; no se usa como autoridad del comportamiento específico de F1-RaceTrack.
Criterio editorial. Los artículos protegidos se resumen y se enlazan mediante sus páginas canónicas; no se redistribuyen sus PDF. Las afirmaciones sobre F1-RaceTrack se apoyan en sus reglas, en la implementación de los algoritmos y en mediciones reproducibles.