Conclusiones y Aprendizajes

Conclusiones generales

El trabajo permitió comparar dos familias de problemas de optimización con naturalezas muy distintas y dejó una conclusión central: la elección del método depende directamente de la estructura del problema. En la parte de optimización numérica, el descenso por gradiente mostró un buen comportamiento cuando la geometría de la función favorecía el uso de información local, como ocurrió especialmente en Griewank, Six-Hump Camel y, en menor medida, Rosenbrock 2D. Sin embargo, en funciones altamente multimodales o con paisajes más irregulares, como Rastrigin, Schwefel y Goldstein-Price, su desempeño se deterioró por la sensibilidad al punto inicial y la facilidad con la que puede quedar atrapado en mínimos locales.

La comparación final de la parte numérica confirmó que los métodos heurísticos ofrecieron la mejor calidad de solución en todos los casos analizados. Dentro de ellos, Evolución diferencial fue el método más robusto a nivel global, con el mejor resultado en 7 de 10 casos, mientras que PSO destacó especialmente en Griewank y Six-Hump Camel. Aun así, el descenso por gradiente conservó una ventaja importante en eficiencia computacional, ya que fue el método con menor número de evaluaciones en 7 de 10 casos. Esto muestra un patrón claro: los métodos locales pueden ser más baratos, pero los heurísticos y metaheurísticos son mucho más sólidos cuando la dificultad del paisaje aumenta.

En la parte de optimización combinatoria, el TSP sobre las 96 capitales departamentales de Francia evidenció que, en espacios discretos de gran tamaño, los enfoques exactos dejan de ser prácticos y las metaheurísticas se convierten en la alternativa más razonable. Tanto ACO como GA encontraron recorridos competitivos, pero el algoritmo genético alcanzó el mejor costo final con 3975.266333 euros, superando a ACO, que obtuvo 4022.039333 euros. La mejora fue de 46.773000 euros, equivalente a 1.1629 %, lo que confirma que ambos métodos fueron competitivos, pero que GA tuvo una mayor capacidad de refinamiento sobre la solución final.

Un hallazgo especialmente valioso fue la complementariedad entre métodos. En la parte combinatoria, ACO mostró una muy buena capacidad para construir rápidamente una solución inicial de alta calidad, mientras que GA resultó más fuerte en la fase de mejora fina. Esta lógica de exploración seguida de refinamiento resume uno de los aprendizajes más importantes del proyecto: en problemas complejos, combinar estrategias puede ser más efectivo que depender de un único enfoque desde el inicio.

Aprendizajes metodológicos

Otro resultado transversal del trabajo es que el éxito de la optimización no depende solo del algoritmo, sino también de cómo se formula el problema. En la parte combinatoria, la construcción del grafo, el web scraping de trayectos reales y la generación de una matriz completa de costos mínimos mediante Dijkstra fueron pasos tan importantes como la elección de ACO o GA. De forma análoga, en la parte numérica, la interpretación de la geometría de cada función fue clave para entender por qué algunos métodos convergían con estabilidad y otros no.

En conjunto, el proyecto confirma que no existe un método universalmente superior para todos los escenarios. Los métodos clásicos, como el descenso por gradiente, son apropiados cuando la función es diferenciable, el paisaje es relativamente favorable y se busca una solución rápida con bajo costo computacional. En cambio, los métodos heurísticos y metaheurísticos son preferibles cuando el problema es multimodal, la dimensión crece, el espacio de búsqueda es discreto o la información local ya no basta para orientar la búsqueda.

Como conclusión final, el trabajo muestra que optimizar no consiste en aplicar siempre el mismo algoritmo, sino en seleccionar o combinar herramientas según la dificultad, la representación y los objetivos del problema. Esa fue la lección más importante tanto en la parte numérica como en la combinatoria: la calidad de la solución depende de la correspondencia entre el método elegido y la naturaleza real del problema que se quiere resolver.