RoomCraft AI: optimizar la distribución de una habitación con Simulated Annealing
Describe tu habitación en lenguaje natural y obtén plantas optimizadas en 3D. Detrás hay un parser con LLM, un optimizador de Simulated Annealing que coloca los muebles y exportación a PDF técnico.
Colocar los muebles de una habitación es un problema de optimización con muchas restricciones: la cama no va delante de la puerta, el escritorio quiere luz natural, hay que poder circular. Hay un número enorme de disposiciones posibles. RoomCraft AI las explora automáticamente a partir de una descripción en lenguaje natural.
El pipeline de tres etapas
- Parser con LLM: el usuario describe su habitación en texto libre ("un dormitorio de 4x3 con la puerta al norte y una ventana al este"). Un LLM (Llama 3.1 vía Groq) lo convierte en una estructura de datos validada con Pydantic: dimensiones, aberturas, muebles deseados. Latencia: <1s.
- Optimizador con Simulated Annealing: aquí está el corazón del proyecto.
- Visualización y export: los layouts se renderizan en 3D en el navegador con Three.js y se exportan como plano técnico en PDF con ReportLab.
Por qué Simulated Annealing
El espacio de disposiciones posibles es combinatorio y lleno de óptimos locales. Una búsqueda voraz se queda atascada en la primera solución "decente". El Simulated Annealing imita el enfriamiento de un metal: al principio acepta movimientos malos con cierta probabilidad (alta "temperatura"), lo que le permite escapar de óptimos locales; según baja la temperatura, se vuelve cada vez más exigente y converge. Es una metaheurística ideal cuando el espacio de soluciones es irregular y no tienes gradiente.
La función objetivo puntúa cada disposición de 0 a 100 según ergonomía: espacio de circulación, relaciones entre muebles, acceso a luz y aberturas. El sistema devuelve el top 5 de layouts, no solo el mejor, para dar opciones.
Rendimiento
- Parse: <1s. Optimización: 2–5s. Export PDF: <1s.
- Footprint en reposo: ~100 MB de RAM.
Qué aprendí
Que combinar un LLM (para entender lenguaje) con una metaheurística clásica (para optimizar de verdad) es un patrón potentísimo: el LLM traduce el problema humano a uno formal, y un algoritmo determinista y barato lo resuelve mejor —y de forma más explicable— que pedirle al propio LLM que "coloque los muebles".
Sobre este proyecto
RoomCraft AI — Layout Optimizer & 3D Room Planner
Herramienta de distribución de habitaciones con IA: describe tu habitación en lenguaje natural y el sistema genera automáticamente hasta 5 layouts optimizados rankeados por ergonom...