Cómo funciona

Un KenKen es un sudoku con aritmética. Así lo leemos y lo resolvemos.

KenKenLab es un proyecto académico del curso CC58. Une dos áreas: visión computacional, para entender la foto, y programación con restricciones, para encontrar la solución.

Las tres reglas del juego

Regla 1

Cada fila usa todos los números una vez

En un tablero de 4×4 van del 1 al 4; en uno de 6×6, del 1 al 6. Nunca se repiten en la misma fila.

Regla 2

Cada columna también

Igual que en un sudoku: ningún número se repite en una columna.

Regla 3

Cada jaula cumple su pista

Las zonas de borde grueso son jaulas. Sus números, combinados con la operación indicada, deben dar el resultado. Aquí 1 × 3 × 2 = 6.

De la foto a la solución

El sistema trabaja en tres fases encadenadas. Todo ocurre de forma automática, sin intervención manual.

Foto o PDFentrada01Lecturatablero + pistas02Modeloreglas (CSP)03Soluciónsobre tu imagen04si no cuadra, se corrige la lectura
Fase 1

Ver el tablero

Limpiamos la foto, encontramos la grilla aunque esté torcida, la enderezamos y detectamos cuántas celdas tiene. Después separamos las jaulas por el grosor de las líneas y leemos cada pista con un lector de símbolos propio, entrenado solo con los 15 caracteres que puede tener una pista.

Fase 2

Plantearlo como reglas

Cada celda es una incógnita de 1 a N. Añadimos la regla de 'todos distintos' por fila y columna y una regla aritmética por jaula. Un solver (OR-Tools CP-SAT) deduce la única grilla que cumple todo, normalmente sin tener que probar opciones.

Fase 3

Corregir y mostrar

Si la lectura de alguna pista no encaja con el resto, el propio solver elige la interpretación más probable que sí funciona. Al final proyectamos los números sobre tu foto respetando la perspectiva del papel.

Con qué está hecho

OpenCV

Procesamiento de la imagen y geometría

OCR propio (k-NN)

Lectura de pistas sin modelos externos

OR-Tools CP-SAT

Solver de programación con restricciones

FastAPI

API HTTP que expone el pipeline

CLI (Typer)

Mismos comandos que la API, desde la terminal

Next.js + TypeScript

Esta interfaz web

Framer Motion

Animaciones de la interfaz

Dataset propio

30 puzzles reales etiquetados + 28 sintéticos

Equipo

Cada integrante lideró una fase del sistema.

Fase 1

Bedia Torres, Marcos Aaron

Extracción y limpieza de datos

Fase 2

Conza Hualpa, Alexia Evelyn

Modelado y resolución

Fase 3

Rojas Vélez De Villa, Sebastián

Entrenamiento, integración, visualización y despliegue

¿Listo para probarlo?

Ir al solver