Por qué «no existe la comida gratis» en el mundo de los algoritmos

El mito del algoritmo universal: una humillación necesaria.

Durante décadas, la comunidad científica persiguió con arrogancia el «santo grial»: el algoritmo de optimización universal. Se soñaba con una «caja negra», ya fuera basada en elegantes procesos evolutivos o en redes neuronales profundas, capaz de resolver cualquier problema, desde el diseño de un puente atirantado hasta la logística del viajante, con una eficiencia superior.

Sin embargo, esta búsqueda no solo era ambiciosa, sino que también era fundamentalmente errónea. La revelación de que no existe una inteligencia algorítmica absoluta supuso un golpe de humildad para quienes creían haber capturado la esencia del aprendizaje, cuando en realidad solo habían logrado un ajuste estadístico fortuito.

La revelación matemática: todos los algoritmos son, en promedio, iguales.

Este mito fue desmentido en 1997 por David Wolpert y William Macready. Sus teoremas «No Free Lunch» (NFL) establecieron una igualdad matemática absoluta que rompe el ego de cualquier programador: si promediamos el rendimiento sobre el conjunto de todos los problemas posibles, cualquier algoritmo sofisticado es idéntico a una búsqueda aleatoria.

Lo que un algoritmo gana en un tipo de problemas, lo paga inevitablemente con un fracaso estrepitoso en otro. No hay «comida gratis»: la superioridad de un algoritmo genético de última generación frente a un proceso de búsqueda ciega es una ilusión que solo se sostiene cuando ignoramos la inmensidad del espacio de funciones posibles.

El teorema uno nos muestra que el uso del conocimiento del dominio puede mejorar el rendimiento, a costa de la generalidad.

La geometría del éxito: el problema de la «alineación».

Para comprender la optimización del éxito, debemos abandonar la idea de la «fuerza bruta» y abrazar la geometría. Imagine el espacio de todas las funciones posibles como una esfera gigantesca. En este espacio, cada algoritmo es un vector v y la distribución de los problemas que deseamos resolver es otro vector p.

Estar «bien adaptado» a un problema significa que el vector del algoritmo apunta en la misma dirección que el del problema.

  • Alineación geométrica: que el vector del algoritmo apunte en la misma dirección que el del problema. El rendimiento es, en esencia, el producto interno de ambos vectores.
  • Sacrificio de la generalidad: un algoritmo «generalista» apunta hacia todas partes y, por tanto, su proyección (su éxito) en un punto concreto es nula.
  • Curvatura del conocimiento: el éxito no reside en el código, sino en cómo este «se dobla» para encajar con la estructura lógica y física del problema.

Los investigadores del problema del viajante no han creado algoritmos «mejores» en términos absolutos, sino que han esculpido herramientas íntimamente alineadas con la geometría específica de las rutas y las distancias.

El golpe al ego: el algoritmo aleatorio como juez de paz.

Los teoremas 5 y 6 de Wolpert y Macready introducen un estándar de rigor que actúa como un «mínimo ético» para la ciencia. Si un algoritmo no consigue que el coste disminuya más rápido que con una búsqueda aleatoria, el investigador habrá fracasado.

Esta métrica es el antídoto contra el fraude intelectual del ajuste fino o manual. Muchos de los éxitos que se describen en la literatura no son más que el resultado de forzar un algoritmo a un puñado de problemas específicos sin superar el umbral de una búsqueda ciega. Superar al «juez de paz» aleatorio es la única prueba de que el algoritmo ha logrado capturar alguna estructura real del problema.

Consecuencias prácticas: el fin del experto generalista.

En ingeniería civil, las implicaciones del NFL son tajantes. No existen programas comerciales que puedan optimizar cualquier estructura de forma indiscriminada. Las herramientas generales (como las toolboxes estándar de Matlab) suelen ser ineficaces porque carecen del «conocimiento del hormigón».

Esta realidad ha provocado una «carrera armamentística» hacia la especialización.

  • Hibridación: La respuesta de la ingeniería moderna consiste en combinar metaheurísticas con técnicas de deep learning y redes neuronales para «aprender» la estructura del dominio.
  • Alineación estructural: un matemático brillante fracasará al optimizar un puente atirantado si no comprende la resistencia de los materiales. No se trata de falta de cálculo, sino de que su algoritmo no está alineado con la «curvatura» física del problema. El conocimiento experto es lo que permite al algoritmo encontrar el camino en un espacio de búsqueda que, de otro modo, sería un desierto uniforme.

El dilema del observador: la ceguera del éxito pasado.

Incluso cuando un algoritmo ha funcionado bien hasta ahora, el teorema 10 (sección VII) nos da un jarro de agua fría: observar el rendimiento pasado no garantiza el éxito futuro sin un conocimiento adicional sobre la función de coste. Sin conocer la estructura, no vemos el siguiente paso.

En este estado de «oscuridad estructural», un procedimiento de elección «irracional» (cambiar un algoritmo que ha funcionado bien por otro que ha funcionado mal) es tan válido como uno «racional». Sin suposiciones sobre la relación entre el algoritmo y la función, el comportamiento pasado es un predictor pobre. La lógica solo surge cuando el observador aporta información que no está presente en los datos.

Conclusión: hacia una optimización consciente.

Debemos aceptar una verdad incómoda: nuestra inteligencia artificial es un reflejo limitado del conocimiento que somos capaces de codificar en ella. La ciencia de la optimización ya no debe buscar el «algoritmo perfecto», sino métodos más profundos para transferir el conocimiento del dominio al proceso de búsqueda.

Si el rendimiento de nuestras máquinas depende por completo de lo que ya sabemos sobre el mundo, ¿no será que la «inteligencia artificial general» es un mito termodinámico, similar a la máquina de movimiento perpetuo? Quizás el mayor descubrimiento de Wolpert y Macready no fue matemático, sino filosófico: la inteligencia no es más que el conocimiento del problema disfrazado de código.

En esta conversación puedes escuchar las ideas más interesantes sobre este tema.

Este vídeo resume bien los conceptos más importantes tratados.

The_Universal_Algorithm_Myth

Referencias:

GARCÍA, J.; YEPES, V.; MARTÍ, J.V. (2020a). A hybrid k-means cuckoo search algorithm applied to the counterfort retaining walls problem. Mathematics,  8(4), 555.

MARTÍNEZ-MUÑOZ, D.; GARCÍA, J.; MARTÍ, J.V.; YEPES, V. (2022). Optimal design of steel-concrete composite bridge based on a transfer function discrete swarm intelligence algorithm. Structural and Multidisciplinary Optimization, 65:312. DOI:10.1007/s00158-022-03393-9

NEGRÍN, I.; CHAGOYÉN, E.; KRIPKA, M.; YEPES, V. (2025). An integrated framework for Optimization-based Robust Design to Progressive Collapse of RC skeleton buildings incorporating Soil-Structure Interaction effects. Innovative Infrastructure Solutions, 10:446. DOI:10.1007/s41062-025-02243-z

WOLPERT, D.H.; MACREADY, W.G. (1997). No Free Lunch Theorems for Optimization. IEEE Transactions on Evolutionary Computation, 1(1):67-82.

YEPES-BELLVER, L.; BRUN-IZQUIERDO, A.; ALCALÁ, J.; YEPES, V. (2025). Surrogate-assisted cost optimization for post-tensioned concrete slab bridgesInfrastructures, 10(2): 43. DOI:10.3390/infrastructures10020043.

A continuación os dejo el artículo original «No Free Lunch Theorems for Optimization». Se ha convertido en un clásico de optimización heurística.

Pincha aquí para descargar

Licencia de Creative Commons
Esta obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional.

¿Cuál es el mejor algoritmo para optimizar un problema? «No free lunch»

Figura 1. Desgraciadamente, no existe comida gratis. https://medium.com/@LeonFedden/the-no-free-lunch-theorem-62ae2c3ed10c

Después de años impartiendo docencia en asignaturas relacionadas con la optimización heurística de estructuras de hormigón, y tras muchos artículos científicos publicados y más aún en los que he sido revisor de artículos de otros grupos de investigación, siempre se plantea la misma pregunta: De todos los algoritmos que utilizamos para optimizar, ¿cuál es el mejor? ¿Por qué dice en su artículo que su algoritmo es el mejor para este problema? ¿Por qué no nos ponemos de acuerdo?

Para resolver esta cuestión, dos investigadores norteamericanos, David Wolpert y William Macready, publicaron en 1997 un artículo en el que establecieron un teorema denominado «No free lunch«, que, traducido, sería algo así como «no hay comida gratis». Dicho teorema establece que, por cada par de algoritmos de búsqueda, hay tantos problemas en los que el primer algoritmo es mejor que el segundo como problemas en los que el segundo algoritmo es mejor que el primero.

Este teorema revolucionó la forma de entender el rendimiento de los algoritmos. Incluso una búsqueda aleatoria en el espacio de soluciones podría dar mejores resultados que cualquier algoritmo de búsqueda. La conclusión es que no existe un algoritmo que sea universalmente mejor que los demás, pues siempre habrá casos en los que funcione peor que otros, lo que significa que todos ellos se comportarán igual de bien (o de mal) en promedio.

De hecho, podría decirse que un experto en algoritmos genéticos podría diseñar un algoritmo genético más eficiente que, por ejemplo, un recocido simulado, y viceversa. Aquí el arte y la experiencia en un problema y en una familia de algoritmos determinados suelen ser decisivos. En la Figura 2 se puede ver cómo un algoritmo muy especializado, que conoce bien el problema, puede mejorar su rendimiento, pero pierde la generalidad para usarse en cualquier tipo de problema de optimización distinto del que se diseñó.

Figura 2. El uso del conocimiento del problema puede mejorar el rendimiento, pero a costa de la generalidad. https://medium.com/@LeonFedden/the-no-free-lunch-theorem-62ae2c3ed10c

¿Qué consecuencias obtenemos de este teorema? Lo primero, una gran decepción, pues hay que abandonar la idea del algoritmo inteligente capaz de optimizar cualquier problema. Lo segundo, que es necesario incorporar en el algoritmo cierto conocimiento específico del problema, lo cual equivale a una «carrera armamentística» para cada problema de optimización. Se escriben y escribirán miles de artículos científicos en los que un investigador demuestre que su algoritmo es mejor que otro para un determinado problema.

Una forma de resolver este asunto de incorporar conocimiento específico del problema es el uso de la inteligencia artificial en apoyo de las metaheurísticas. Nuestro grupo de investigación está abriendo puertas en este sentido, incorporando «deep learning» en el diseño de algoritmos (Yepes et al., 2020; García et al., 2020a; 2020b) o bien redes neuronales (García-Segura et al., 2017). Incluso, en este momento, me encuentro como editor de un número especial de la revista Mathematics (primer decil del JCR) denominado: “Deep Learning and Hybrid-Metaheuristics: Novel Engineering Applications”, al cual os invito a enviar vuestros trabajos de investigación.

Si nos centramos en un tipo de problema determinado, por ejemplo, la optimización de estructuras (puentes, pórticos de edificación, muros, etc.), el teorema nos indica que necesitamos gente formada y creativa para optimizar el problema concreto al que nos enfrentamos. Es por ello que no existen programas comerciales eficientes capaces de adaptarse a cualquier estructura para optimizarla. Tampoco son eficientes las herramientas generales, «tools», que ofrecen algunos programas, como Matlab, para su uso inmediato e indiscriminado.

Por tanto, no se podrá elegir entre dos algoritmos solo basándose en el buen desempeño que obtuvieron anteriormente en un problema determinado, pues en el siguiente problema pueden optimizar de forma deficiente. Por tanto, se exige conocimiento intrínseco de cada problema para optimizarlo. Es por ello que, por ejemplo, un experto matemático o informático no puede, sin más, dedicarse a optimizar puentes atirantados.

Referencias:

GARCÍA, J.; YEPES, V.; MARTÍ, J.V. (2020a). A hybrid k-means cuckoo search algorithm applied to the counterfort retaining walls problem. Mathematics,  8(4), 555.

GARCÍA, J.; MARTÍ, J.V.; YEPES, V. (2020b). The buttressed  walls problem: An application of a hybrid clustering particle swarm optimization algorithm. Mathematics,  8(6):862.

GARCÍA-SEGURA, T.; YEPES, V.; FRANGOPOL, D.M. (2017). Multi-Objective Design of Post-Tensioned Concrete Road Bridges Using Artificial Neural Networks. Structural and Multidisciplinary Optimization, 56(1):139-150.

WOLPERT, D.H.; MACREADY, W.G. (1997). No Free Lunch Theorems for Optimization. IEEE Transactions on Evolutionary Computation, 1(1):67-82.

YEPES, V.; MARTÍ, J.V.; GARCÍA, J. (2020). Black hole algorithm for sustainable design of counterfort retaining walls. Sustainability, 12(7), 2767.

A continuación os dejo el artículo original «No Free Lunch Theorems for Optimization». Se ha convertido en un clásico en optimización heurística.

Pincha aquí para descargar

Licencia de Creative Commons
Esta obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional.