About MariaGO

Crear una IA que se pueda entender

¿Quién gestiona este sitio?

Hola, soy Saenggaknamu (“Árbol Pensante”), el dueño de este sitio. Soy un desarrollador con 32 años de experiencia y construyo muchos tipos de modelos de IA con el objetivo de lograr una IA con calidez humana, que piense como las personas. Cuando la IA se volvió de uso general y pude desarrollar por mi cuenta, empecé a afrontar todo tipo de retos.

Entonces vi a una IA resolver un sudoku. A diferencia de cómo piensan las personas, rellenaba las respuestas fila por fila desde la primera casilla, como un niño que ya conoce la solución. Cuando le dije que eso era hacer trampa, solo entonces comparó las filas, las columnas y los cuadros de 3×3 según las reglas del sudoku. Al ver esto, descargué modelos de Hugging Face y empecé a entrenarlos yo mismo. Desde entonces he descubierto que muchos modelos resuelven juegos de entrenamiento mental como si ya conocieran la respuesta.

En MariaGO me encargo personalmente de todo: el entrenamiento de los modelos, los motores de juego, las páginas web y los servidores. Lo que se escribe aquí no es un resumen de una enciclopedia general de juegos, sino que se basa en el código y en los registros de experimentos comprobados durante la implementación.

El “GO” del nombre del proyecto se refiere al go (baduk), donde empezó todo. Las preguntas que nacieron con el go se extendieron al gomoku, Othello, el janggi, el ajedrez y los rompecabezas de números y palabras. Las reglas cambian de un juego a otro, pero todos comparten un mismo tema: “¿cómo lee la IA el estado actual y elige su siguiente acción?”

¿Por qué crear otro sitio de juegos más?

Ya existen muchos servicios de juego en línea. El problema que MariaGO intenta resolver no es encontrar rápido un rival para competir. Quería un espacio personal de juego donde puedas hacer una jugada cuando quieras sin quedar con nadie, parar cuando te falte tiempo y volver a la misma partida.

El objetivo no es presumir de la IA más fuerte, sino que cualquiera pueda conocer directamente en el navegador el criterio de un modelo entrenado y comprender el proceso que hay detrás.

Me encanta la película Blade Runner. En ella, J.F. Sebastian y el doctor Tyrell juegan al ajedrez desde lugares distintos, intercambiando las jugadas de palabra, una a una. El go de MariaGO no tiene límite de tiempo por turno para que tenga ese mismo carácter.

Cada vez que confirmas una jugada, el tablero y el orden de las jugadas se guardan en el servidor, y la partida en curso se vuelve a cargar en tu siguiente visita. Puedes recorrer el registro hacia atrás y hacia delante y volver a jugar desde cualquier jugada.

Nota: las partidas se guardan con un ID creado para cada navegador. Si juegas en una ventana privada o en otro navegador, no se cargarán tus partidas anteriores y se creará un guardado nuevo.

¿Cómo se desarrolla?

El modelo de go se entrena con posiciones y jugadas siguientes extraídas de registros SGF de aficionados avanzados y profesionales. No basta con introducir los registros originales tal cual. Las coordenadas de 19×19 se convierten en una cuadrícula alineada que el modelo pueda leer, se eliminan las posiciones duplicadas y se comprueba que los datos de entrenamiento y el servidor de partidas reales usen la misma representación del tablero.

Solo mucho después de empezar supe que no todos los modelos de IA usan las mismas coordenadas de go. Entrené Google Gemma durante mucho tiempo, pero el modelo siempre jugaba en el cuarto cuadrante. Así que añadí varias restricciones, y esas restricciones provocaron a su vez nuevos errores.

Más tarde descubrí que cada modelo usaba coordenadas distintas, y que incluso los registros SGF y nuestro propio modelo no coincidían. También fue entonces cuando supe que, al decirle a un modelo la jugada de la persona, respondía con otro sistema de coordenadas. Por eso, al principio dediqué muchísimo tiempo a entrenar a los modelos para alinear las coordenadas, y solo después de eso su nivel de go empezó a subir de forma drástica.

Tras el entrenamiento no nos fijamos solo en el porcentaje de victorias. Registramos si el modelo encuentra las coordenadas de las cuatro esquinas con una precisión similar, si elige puntos que ya están ocupados y si pasa demasiado pronto. En las partidas web tampoco se aplica la jugada de la IA tal cual: el motor de juego comprueba las jugadas ilegales, como el suicidio, las infracciones de ko y jugar en un punto ocupado.

Datos de entrenamientoPosiciones y jugadas siguientes reales extraídas de SGF de aficionados avanzados y profesionales
Formato de posiciónUna cuadrícula de texto de 19×19 con los números de fila y columna alineados a dos dígitos
Comprobaciones realesPrecisión de coordenadas, tasa de jugadas legales, pases prematuros y sesgo direccional comprobados por separado
Guardado de partidasEstado del tablero y orden completo de jugadas guardados en cada jugada, para repasar y continuar

Principios de contenido y funcionamiento

Escribimos lo que hemos comprobado

Las funciones se describen tal como funcionan hoy. Las nuevas funciones se añaden cada vez que surge una idea, y los textos se actualizan junto con ellas.

También publicamos los límites

Las condiciones que los lectores deben conocer, como los errores del modelo o los límites del recuento automático para juzgar la vida y muerte, se indican junto con los resultados.

Dejamos por escrito cómo se hacen las cosas

En lugar de limitarnos a reunir enlaces a juegos, te permitimos leer las reglas, cómo están implementadas e incluso el registro de lo que falló y cómo se corrigió.

Buscamos una experiencia sin prisas

Si surge algo, simplemente para. Cuando vuelvas a tener tiempo y se te ocurra una jugada, hazla entonces. Si hiciste una mala jugada, siempre puedes volver a ese punto y jugar de nuevo.

Somos claros sobre los límites actuales

No todos los juegos de MariaGO están igual de completos. El go permite guardar registros y continuar partidas, pero las funciones de los demás juegos varían. El recuento automático del go cuenta las zonas vacías rodeadas y las piedras capturadas, pero no puede identificar por completo las piedras muertas. Su valor no es el veredicto final de un árbitro, sino una referencia para que los jugadores revisen el tablero.

Estas diferencias y estos fallos son, de hecho, el núcleo del registro del proyecto. Cuando cambien las funciones, esta página y las notas de investigación también se actualizarán.