Analogía física y conceptos fundamentales de la metaheurística “Simulated Annealing”

Figura 1. Proceso de recocido del acero. https://www.win-therm.com.my/what-is-annealing-heat-treatment-process-annealing/

En un artículo anterior describimos la metaheurística conocida como “Recocido simulado” o “Cristalización simulada”, que en inglés se conoce como “Simulated Annealing”. Para los que no estéis familiarizados con la optimización, os dejo en este enlace una descripción de lo que son las metaheurísticas.

En la década de 1980, Kirkpatrick et al. (1983), mientras trabajaban en el diseño de circuitos electrónicos, y de manera independiente, Cerny (1985), investigando el problema del TSP (Traveling Salesman Problem), consideraron la aplicación del algoritmo de Metrópolis en algunos de los desafíos de optimización combinatoria que surgen en este tipo de diseño. Para lograrlo, creyeron que era posible establecer una analogía entre los parámetros presentes en la simulación termodinámica y aquellos que se encuentran en los métodos de optimización local. En la Figura 2 se puede ver dicha analogía.

Figura 2. Analogía entre la termodinámica y la optimización (Díaz et al., 1996)

Como se puede observar, en el ámbito de la optimización, el concepto físico de temperatura no tiene un significado literal, sino que debe ser considerado como un parámetro, T, que necesita ser ajustado. De esta manera, podemos encontrar similitudes entre los procesos que tienen lugar cuando las moléculas de una sustancia se distribuyen en diferentes niveles energéticos en busca de un equilibrio a una temperatura específica y los procesos de minimización en la optimización local (o, en el caso de maximización, de manera similar).

En el primer caso, con una temperatura fija, la distribución de las partículas sigue la distribución de Boltzmann. Por lo tanto, cuando una molécula se desplaza, su movimiento será aceptado en la simulación si esto resulta en una disminución de la energía, o con una probabilidad proporcional al factor de Boltzmann si no es así. En el contexto de la optimización, al fijar el parámetro T, introducimos una perturbación y aceptamos directamente la nueva solución si su costo disminuye, o bien con una probabilidad proporcional al “factor de Boltzmann” en caso contrario.

La clave del recocido simulado es su estrategia heurística de búsqueda local. La elección del nuevo elemento del entorno, N(s), se hace de manera aleatoria, lo que puede llevar a quedar atrapado en óptimos locales. Para evitar esto, el recocido simulado permite, con una probabilidad decreciente a medida que nos acercamos a la solución óptima, el movimiento hacia soluciones peores. Al analizar el factor de Boltzmann en función de la temperatura, observamos que a medida que esta disminuye, la probabilidad de aceptar una solución peor disminuye rápidamente.

Figura 3. Valor del factor de Boltzmann en función de la temperatura y de δ (Díaz et al., 1996)

En consecuencia, la estrategia a seguir en el recocido simulado implica comenzar con una temperatura alta. Esto permite la posibilidad de aceptar soluciones peores en las primeras etapas, cuando estamos a gran distancia del óptimo global. A medida que se avanza hacia el óptimo global, se reducirá gradualmente la temperatura, disminuyendo así la probabilidad de aceptar soluciones peores. El nombre de este algoritmo proviene del proceso metalúrgico de “recocido” utilizado, por ejemplo, para eliminar las tensiones internas en el acero laminado en frío. En este proceso, el material se somete a un calentamiento rápido y luego se enfría de manera lenta y controlada durante horas.

A continuación os dejo un nomograma, elaborado junto con los profesores Trevor Blight y Pedro Martínez Pagán, para calcular la probabilidad en función de la temperatura y de δ. Aquí también resulta sencillo comprobar cómo varía dicha probabilidad en función de los valores anteriores.

 

Os dejo también un vídeo explicativo:

Referencias

CERNY, V. (1985). Thermodynamical approach to the traveling salesman problem: an efficient simulated algorithm. Journal of Optimization Theory and Applications, 45: 41-51.

DÍAZ, A. et al. (1996). Optimización heurística y redes neuronales en dirección de operaciones e ingeniería. Editorial Paraninfo, Madrid, 235 pp.

KIRKPATRICHK, S.; GELATT, C.D.; VECCHI, M.P. (1983). Optimization by simulated annealing. Science, 220(4598): 671-680.

LUNDY, M.; MEES, A. (1986). Convergence of an Annealing Algorithm. Mathematical programming, 34:111-124.

METROPOLIS, N.; ROSENBLUTH, A.W.; ROSENBLUTH, M.N.; TELLER, A.H.; TELER, E. (1953). Equation of State Calculation by Fast Computing Machines. Journal of Chemical Physics, 21:1087-1092.

GONZÁLEZ-VIDOSA-VIDOSA, F.; YEPES, V.; ALCALÁ, J.; CARRERA, M.; PEREA, C.; PAYÁ-ZAFORTEZA, I. (2008) Optimization of Reinforced Concrete Structures by Simulated Annealing. TAN, C.M. (ed): Simulated Annealing. I-Tech Education and Publishing, Vienna, pp. 307-320. (link)

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

Simposio sobre optimización, metaheurísticas y algoritmos evolutivos aplicados a la ingeniería civil

En el marco del próximo Congreso de Métodos Numéricos en Ingeniería CMN, que se desarrollará del 12 al 14 de septiembre de 2024 en la Universidad de Aveiro (Portugal), tengo el placer de anunciar la organización de un simposio sobre optimización, metaheurísticas y algoritmos evolutivos aplicados a la ingeniería civil. Dicho evento lo organizamos en colaboración con los profesores David Greiner y Diogo Ribeiro.

El principal objetivo de este simposio es congregar a investigadores y estimular el interés por la presentación de trabajos que aborden nuevas perspectivas en el ámbito de la optimización, las metaheurísticas y los algoritmos evolutivos en las disciplinas de ingeniería computacional y civil. Las comunicaciones deben centrarse en metaheurísticas, algoritmos evolutivos y otras técnicas de optimización aplicadas a la resolución de problemas de diseño óptimo en los campos de la ingeniería computacional y civil, así como en temas relacionados.

Los algoritmos evolutivos constituyen un área de investigación interdisciplinaria que abarca diversos paradigmas inspirados en el principio darwiniano de la evolución. En la fase actual de investigación, se consideran, entre otros, los siguientes paradigmas: Algoritmos Genéticos, Programación Genética, Estrategias Evolutivas, Evolución Diferencial, etc., además de otros enfoques de metaheurísticas como la Optimización por Enjambre de Partículas.

Se extiende una cordial bienvenida a las aplicaciones de estos métodos de optimización y otros en el ámbito de la ingeniería computacional y civil, tanto para resolver problemas de optimización de objetivo único como de objetivo múltiple. Los temas que se abordarán, sin limitarse a ellos, incluyen en el ámbito de la ingeniería civil aspectos relacionados con el diseño estructural, como estructuras de hormigón y/o acero, geotecnia, acústica, hidráulica e infraestructura. En el ámbito de la ingeniería computacional, los temas relacionados incluyen ingeniería mecánica y aeronáutica, energías renovables y confiabilidad, entre otros.

Se alienta la exploración de aspectos de desarrollo tales como la modelización de sustitución, la paralelización, la hibridación y la realización de comparaciones de rendimiento entre distintos métodos, entre otros.

Os paso, a continuación, la propuesta del simposio.

Descargar (PDF, 132KB)

Optimización de estructuras de hormigón armado asistida por metamodelos considerando la interacción suelo-estructura

Acaban de publicarnos un artículo en Engineering Structures, revista indexada en el primer cuartil del JCR. El artículo propone una estrategia de optimización metaheurística asistida por metamodelos para minimizar las emisiones de CO₂ de las estructuras de armazón de hormigón armado, teniendo en cuenta la interacción suelo-estructura. El enfoque permite abordar problemas de optimización estructural de alta complejidad y, al mismo tiempo, lograr un ahorro computacional de alrededor del 90%. El trabajo se enmarca dentro del proyecto de investigación HYDELIFE que dirijo como investigador principal en la Universitat Politècnica de València.

Las contribuciones de este trabajo son las siguientes:

  • El artículo propone una estrategia de optimización metaheurística asistida por metamodelos para minimizar las emisiones de CO₂ de las estructuras de armazón de hormigón armado, teniendo en cuenta la interacción suelo-estructura.
  • El enfoque sugerido permite abordar problemas de optimización estructural de alta complejidad y, al mismo tiempo, lograr un ahorro computacional de alrededor del 90%.
  • El estudio muestra que incluir la interacción suelo-estructura conduce a resultados de diseño diferentes a los obtenidos con los soportes clásicos, y que los cimientos también resultan importantes dentro del ensamblaje estructural.
  • El enfoque metaheurístico permite obtener resultados (de media) con una precisión de hasta el 98,24% en los suelos cohesivos y del 98,10% en los suelos friccionales, en comparación con los resultados de la optimización heurística.

Abstract:

It is well known that conventional heuristic optimization is the most common approach to deal with structural optimization problems. However, metamodel-assisted optimization has become a valuable strategy for decreasing computational consumption. This paper applies conventional heuristic and Kriging-based meta-heuristic optimization to minimize the CO2 emissions of spatial reinforced concrete frame structures, considering an aspect usually ignored during modeling, such as the soil-structure interaction (SSI). Due to the particularities of the formulated problem, there are better strategies than simple Kriging-based optimization to solve it. Thus, a meta-heuristic strategy is proposed using a Kriging-based two-phase methodology and a local search algorithm. Three different models of structures are used in the study. Results show that including the SSI leads to different design results than those obtained using classical supports. The foundations, usually ignored in this type of research, also prove significant within the structural assembly. Additionally, using an appropriate coefficient of penalization, the meta-heuristic approach can find (on average) results up to 98.24% accuracy for cohesive soils and 98.10% for frictional ones compared with the results of the heuristic optimization, achieving computational savings of about 90%. Therefore, considering aspects such as the SSI, the proposed metamodeling strategy allows for dealing with high-complexity structural optimization problems.

Keywords:

Structural optimization; Reinforced concrete; Frame structures; CO₂ emissions; Metamodel; Kriging; Soil-structure interaction

Reference:

NEGRÍN, I.; KRIPKA, M.; YEPES, V. (2023). Metamodel-assisted meta-heuristic design optimization of reinforced concrete frame structures considering soil-structure interaction. Engineering Structures, 293:116657. DOI:10.1016/j.engstruct.2023.116657

Al tratarse de un artículo publicado en abierto, os dejo el mismo para su descarga. Espero que os sea de interés.

Descargar (PDF, 8.18MB)

Optimización de muros de contención mediante enfoques de aprendizaje por refuerzo y técnicas metaheurísticas

Acaban de publicarnos un artículo en Mathematics, revista indexada en el primer decil del JCR. Se trata de un nuevo método para optimizar el diseño de muros de contención mediante funciones de aprendizaje y transferencia por refuerzo. El trabajo se enmarca dentro del proyecto de investigación HYDELIFE que dirijo como investigador principal en la Universitat Politècnica de València. Es fruto de la colaboración de nuestro grupo de investigación con los profesores chilenos.

El artículo presenta un nuevo método para optimizar el diseño de muros de contención mediante funciones de aprendizaje y transferencia por refuerzo. El estudio compara el método propuesto con otros métodos metaheurísticos y de fuerza bruta, y muestra que las funciones de transferencia en forma de S arrojan consistentemente mejores resultados en términos de costes y emisiones de CO₂. El documento concluye que el método propuesto proporciona un enfoque prometedor para reducir los costos y las emisiones de CO₂ y, al mismo tiempo, mejorar la resistencia estructural en los proyectos de ingeniería civil.

Las contribuciones de este artículo son:

  • Introducir una nueva técnica de discretización basada en funciones de aprendizaje y transferencia por refuerzo para optimizar el diseño de los muros de contención en términos de costes y emisiones de CO₂.
  • Comparar el método propuesto con varios métodos metaheurísticos y de fuerza bruta, y demostrar que las funciones de transferencia en forma de S arrojan consistentemente resultados más sólidos.
  • Proporcionar un enfoque prometedor para reducir los costos y las emisiones de CO₂ y, al mismo tiempo, mejorar la resistencia estructural en los proyectos de ingeniería civil.

Abstract:

The structural design of civil works is closely tied to empirical knowledge and the design professional’s experience. Based on this, adequate designs are generated in terms of strength, operability, and durability. However, such designs can be optimized to reduce conditions associated with the structure’s design and execution, such as costs, CO2 emissions, and related earthworks. In this study, a new discretization technique based on reinforcement learning and transfer functions is developed. The application of metaheuristic techniques to the retaining wall problem is examined, defining two objective functions: cost and CO2 emissions. An extensive comparison is made with various metaheuristics and brute force methods, where the results show that the S-shaped transfer functions consistently yield more robust outcomes.

Keywords:

Metaheuristics; concrete retaining walls

Reference:

LEMUS-ROMANI, J.; OSSANDÓN, D.; SEPÚLVEDA, R.; CARRASCO-ASTUDILLO, N.; YEPES, V.; GARCÍA, J. (2023). Optimizing Retaining Walls through Reinforcement Learning Approaches and Metaheuristic Techniques. Mathematics 11(9): 2104. DOI:10.3390/math11092104

Os paso el artículo para su descarga, pues se ha publicado en abierto:

Descargar (PDF, 824KB)

Discretización de metaheurísticas continuas a través de un operador KNN

Acaban de publicarnos un artículo en la revista Mathematics,  revista indexada en el primer cuartil del JCR. En este caso hemos abordado la binarización de metaheurísticas continuas. Se trata de una estrategia muy útil para el caso de la optimización de estructuras, puesto que éstas suelen presentar variables discretas para favoreces su constructabilidad. El trabajo entra dentro de la estrecha colaboración internacional de nuestro grupo de investigación, en este caso, con investigaciones chilenos.

En este trabajo se propone un operador de perturbación que utiliza la técnica de k-vecinos más cercanos, y se estudia con el objetivo de mejorar las propiedades de diversificación e intensificación de los algoritmos metaheurísticos en su versión binaria. Se diseñan operadores aleatorios para estudiar la contribución del operador de perturbación. Para verificar la propuesta, se estudian grandes instancias del conocido problema de cobertura de conjuntos. Se utilizan gráficos de caja, gráficos de convergencia y la prueba estadística de Wilcoxon para determinar la contribución del operador. Además, se realiza una comparación con técnicas metaheurísticas que utilizan mecanismos generales de binarización como las funciones de transferencia o el db-scan como métodos de binarización. Los resultados obtenidos indican que el operador de perturbación KNN mejora significativamente los resultados.

ABSTRACT:

The optimization methods and, in particular, metaheuristics must be constantly improved to reduce execution times, improve the results, and thus be able to address broader instances. In particular, addressing combinatorial optimization problems is critical in the areas of operational research and engineering. In this work, a perturbation operator is proposed which uses the k-nearest neighbors technique, and this is studied with the aim of improving the diversification and intensification properties of metaheuristic algorithms in their binary version. Random operators are designed to study the contribution of the perturbation operator. To verify the proposal, large instances of the well-known set covering problem are studied. Box plots, convergence charts, and the Wilcoxon statistical test are used to determine the operator contribution. Furthermore, a comparison is made using metaheuristic techniques that use general binarization mechanisms such as transfer functions or db-scan as binarization methods. The results obtained indicate that the KNN perturbation operator improves significantly the results.

KEYWORDS:

Combinatorial optimization; machine learning; KNN; metaheuristics; transfer functions

REFERENCE:

GARCÍA, J.; ASTORGA, G.; YEPES, V. (2021). An analysis of a KNN perturbation operator: an application to the binarization of continuous metaheuristics. Mathematics, 9(3):225. DOI:10.3390/math9030225.

Descargar (PDF, 1.02MB)

 

Los algoritmos genéticos

Charles Darwin en una fotografía tomada por J.M. Cameron en 1869.

Resulta fascinante comprobar cómo aplicando los mecanismos básicos de la evolución ya descrita por Darwin en su obra fundamental, El origen de las especies por medio de la selección natural, o la preservación de las razas preferidas en la lucha por la vida, publicada en 1859, se pueden generar algoritmos capaces de optimizar problemas complejos. Este tipo de metaheurísticas inspiradas en la Naturaleza ya se comentaron en artículos anteriores cuando hablamos de la optimización por colonias de hormigas o de la cristalización simulada. Aunque es un algoritmo ampliamente conocido por la comunidad científica, voy a intentar dar un par de pinceladas con el único afán de divulgar esta técnica. La verdad es que las implicaciones filosóficas que subyacen tras la teoría de Darwin son de una profundidad difícil de entender cuando se lleva a sus últimos extremos. Pero el caso es que estos algoritmos funcionan perfectamente en la optimización de estructuras de hormigón, problemas de transporte y otros problemas difíciles de optimización combinatoria.

Para aquellos interesados, os paso en las referencias un par de artículos donde hemos aplicado los algoritmos genéticos para optimizar rutas de transporte aéreo o pilas de puente huecas de hormigón armado.

Sin embargo, para aquellos otros que queráis un buen libro para pensar, os recomiendo “La peligrosa idea de Darwin”, de Daniel C. Dennett. A más de uno le hará remover los cimientos más profundos de sus creencias. Os paso la referencia al final.

Básicamente, los algoritmos genéticos “Genetic Algorithms, GA”, simulan el proceso de evolución de las especies que se reproducen sexualmente. De manera muy general, se puede decir que en la evolución de los seres vivos, el problema al que cada individuo se enfrenta diariamente es el de la supervivencia. Para ello cuenta, entre otras, con las habilidades innatas provistas en su material genético. A nivel de los genes, el problema consiste en la búsqueda de aquellas adaptaciones beneficiosas en un medio hostil y cambiante. Debido en parte a la selección natural, cada especie gana cierta “información” que es incorporada a sus cromosomas.

Durante la reproducción sexual, un nuevo individuo, diferente de sus padres, se genera a través de la acción de dos mecanismos fundamentales: El primero es el cruzamiento, que combina parte del patrimonio genético de cada progenitor para elaborar el del nuevo individuo; el segundo es la mutación, que supone una modificación espontánea de esta información genética. La descendencia será diferente de los progenitores, pero mantendrá parte de sus características. Si los hijos heredan buenos atributos de sus padres, su probabilidad de supervivencia será mayor que aquellos otros que no las tengan. De este modo, los mejores tendrán altas probabilidades de reproducirse y diseminar su información genética a sus descendientes.

Holland (1975) estableció por primera vez una metaheurística basada en la analogía genética. Un individuo se puede asociar a una solución factible del problema, de modo que se pueda codificar en forma de un vector binario “string”. Entonces un operador de cruzamiento intercambia cadenas de los padres para producir un hijo. La mutación se configura como un operador secundario que cambia, con una probabilidad pequeña, algunos elementos del vector hijo. La aptitud del nuevo vector creado se evalúa de acuerdo con una función objetivo.

Los pasos a seguir con esta metaheurística serían los siguientes:

  1. Generar una población de vectores (individuos).
  2. Mientras no se encuentre un criterio de parada:
    1. Seleccionar un conjunto de vectores padre, que serán reemplazados de la población.
    2. Emparejar aleatoriamente a los progenitores y cruzarlos para obtener unos vectores hijo.
    3. Aplicar una mutación a cada descendiente.
    4. Evaluar a los hijos.
    5. Introducir a los hijos en la población.
    6. Eliminar a aquellos individuos menos eficaces.

Normalmente este proceso finaliza después de un numero determinado de generaciones o cuando la población ya no puede mejorar. La selección de los padres se elige probabilísticamente hacia los individuos más aptos. Al igual que ocurre con en la Naturaleza, los sujetos con mayor aptitud diseminan sus características en toda la población.

Esta descripción de los GA se adapta a cada situación concreta, siendo habitual la codificación de números enteros en vez de binarios. Del mismo modo se han sofisticado los distintos operadores de cruzamiento y mutación.

Os dejo a continuación un vídeo explicativo que he elaborado para mis clases de “Modelos predictivos y de optimización heurística de estructuras de hormigón“, del Máster Universitario en Ingeniería del Hormigón, de la Universitat Politècnica de València.

Referencias:

DENNETT, D.C. (1999). La peligrosa idea de Darwin. Galaxia Gutenberg. Círculo de Lectores, Barcelona.

HOLLAND, J.H. (1975). Adaptation in natural and artificial systems. University of Michigan Press, Ann Arbor.

MARTÍNEZ, F.J.; GONZÁLEZ-VIDOSA, F.; HOSPITALER, A.; YEPES, V. (2010). Heuristic Optimization of RC Bridge Piers with Rectangular Hollow Sections. Computers & Structures, 88: 375-386. ISSN: 0045-7949.  (link)

MEDINA, J.R.; YEPES, V. (2003). Optimization of touristic distribution networks using genetic algorithms. Statistics and Operations Research Transactions, 27(1): 95-112.  ISSN: 1696-2281.  (pdf)

PONZ-TIENDA, J.L.; YEPES, V.; PELLICER, E.; MORENO-FLORES, J. (2013). The resource leveling problem with multiple resources using an adaptive genetic algorithm. Automation in Construction, 29(1):161-172. DOI:http://dx.doi.org/10.1016/j.autcon.2012.10.003. (link)

YEPES, V. (2003). Apuntes de optimización heurística en ingeniería. Editorial de la Universidad Politécnica de Valencia. Ref. 2003.249. Valencia, 266 pp. Depósito Legal: V-2720-2003.

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 la 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 donde 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 un artículo en 1997 donde 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 el que el primer algoritmo es mejor que el segundo como problemas en el 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 donde funcione peor que otros, lo cual significa que todos ellos se comportarán igual de bien (o de mal) en promedio.

De hecho, se podría decir 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, suele ser decisivo. 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 de poder usarse en cualquier tipo de problema de optimización que no sea para el que se diseñó.

Figura 2. El uso del conocimiento del problema puede mejorar el rendimiento, 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 donde 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 ayuda de las metaheurísticas. Nuestro grupo de investigación está abriendo puertas en este sentido, incorporando “deep learning” en el diseño de los 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 lo bien que trabajaron 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.

Descargar (PDF, 698KB)

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

El aprendizaje profundo (deep learning) en la optimización de estructuras

Figura 1. Relación de pertenencia entre la inteligencia artificial, el aprendizaje automático y el aprendizaje profundo

En este artículo vamos a esbozar las posibilidades de la inteligencia artificial en la optimización de estructuras, en particular, el uso del aprendizaje profundo. El aprendizaje profundo (deep learning, DL) constituye un subconjunto del aprendizaje automático (machine learning, ML), que a su vez lo es de la inteligencia artificial (ver Figura 1). Si la inteligencia artificial empezó sobre los años 50, el aprendizaje automático surgió sobre los 80, mientras que el aprendizaje profundo nació en este siglo XXI, a partir del 2010, con la aparición de grandes superordenadores y por el aumento de los datos accesibles. Como curiosidad, uno de los grandes hitos del DL se produjo en 2012, cuando Google fue capaz de reconocer un gato entre los más de 10 millones de vídeos de Youtube, utilizando para ello 16000 ordenadores. Ahora serían necesarios muchos menos medios.

En cualquiera de estos tres casos, estamos hablando de sistemas informáticos capaces de analizar grandes cantidades de datos (big data), identificar patrones y tendencias y, por tanto, predecir de forma automática, rápida y precisa. De la inteligencia artificial y su aplicabilidad a la ingeniería civil ya hablamos en un artículo anterior.

Figura 2. Cronología en la aparición de los distintos tipos de algoritmos de inteligencia artificial. https://www.privatewallmag.com/inteligencia-artificial-machine-deep-learning/

Si pensamos en el cálculo estructural, utilizamos modelos, más o menos sofistificados, que permiten, si se conocen con suficiente precisión las acciones, averiguar los esfuerzos a los que se encuentran sometidos cada uno de los elementos en los que hemos dividido una estructura. Con dichos esfuerzos se identifican una serie de estados límite, que son un conjunto de situaciones potencialmente peligrosas para la estructura y comparar si la capacidad estructural del elemento analizado, dependiente de las propiedades geométricas y de sus materiales constituyentes, supera el valor último de la solicitación a la que, bajo cierta probabilidad, puede llegar a alcanzar el elemento estructural analizado.

Estos métodos tradicionales emplean desde hipótesis de elasticidad y comportamiento lineal, a otros modelos con comportamiento plástico o no lineales más complejos. Suele utilizarse, con mayor o menos sofisticación, el método de los elementos finitos (MEF) y el método matricial de la rigidez. En definitiva, en determinados casos, suelen emplearse los ordenadores para resolver de forma aproximada, ecuaciones diferenciales parciales muy complejas, habituales en la ingeniería estructural, pero también en otros campos de la ingeniería y la física. Para que estos sistemas de cálculo resulten precisos, es necesario alimentar los modelos con datos sobre materiales, condiciones de contorno, acciones, etc., lo más reales posibles. Para eso se comprueban y calibran estos modelos en ensayos reales de laboratorio (Friswell y Mottershead, 1995). De alguna forma, estamos retroalimentando de información al modelo, y por tanto “aprende”.

Figura 2. Malla 2D de elementos finitos, más densa alrededor de la zona de mayor interés. Wikipedia.

Si analizamos bien lo que hacemos, estamos utilizando un modelo, más o menos complicado, para predecir cómo se va a comportar la estructura. Pues bien, si tuviésemos una cantidad suficiente de datos procedentes de laboratorio y de casos reales, un sistema inteligente extraería información y sería capaz de predecir el resultado final. Mientras que la inteligencia artificial debería alimentarse de una ingente cantidad de datos (big data), el método de los elementos finitos precisa menor cantidad de información bruta (smart data), pues ha habido una labor previa muy concienzuda y rigurosa, para intentar comprender el fenómeno subyacente y modelizarlo adecuadamente. Pero, en definitiva, son dos procedimientos diferentes que nos llevan a un mismo objetivo: diseñar estructuras seguras. Otro tema será si éstas estructuras son óptimas desde algún punto de vista (economía, sostenibilidad, etc.).

La optimización de las estructuras constituye un campo científico donde se ha trabajado intensamente en las últimas décadas. Debido a que los problemas reales requieren un número elevado de variables, la resolución exacta del problema de optimización asociado es inabordable. Se trata de problemas NP-hard, de elevada complejidad computacional, que requiere de metaheurísticas para llegar a soluciones satisfactorias en tiempos de cálculo razonables.

Una de las características de la optimización mediante metaheurísticas es el elevado número de iteraciones en el espacio de soluciones, lo cual permite generar una inmensa cantidad de datos para el conjunto de estructuras visitadas. Es el campo ideal para la inteligencia artificial, pues permite extraer información para acelerar y afinar la búsqueda de la solución óptima. Un ejemplo de este tipo es nuestro trabajo (García-Segura et al., 2017) de optimización multiobjetivo de puentes cajón, donde una red neuronal aprendía de los datos intermedios de la búsqueda y luego predecía con una extraordinaria exactitud el cálculo del puente, sin necesidad de calcularlo. Ello permitía reducir considerablemente el tiempo final de computación.

Sin embargo, este tipo de aplicación es muy sencilla, pues solo ha reducido el tiempo de cálculo (cada comprobación completa de un puente por el método de los elementos finitos es mucho más lenta que una predicción con una red neuronal). Se trata ahora de dar un paso más allá. Se trata de que la metaheurística sea capaz de aprender de los datos recogidos utilizando la inteligencia artificial para ser mucho más efectiva, y no solo más rápida.

Tanto la inteligencia artificial como el aprendizaje automático no son una ciencia nueva. El problema es que sus aplicaciones eran limitadas por la falta de datos y de tecnologías para procesarlas de forma rápida y eficiente. Hoy en día se ha dado un salto cualitativo y se puede utilizar el DL, que como ya hemos dicho es una parte del ML, pero que utiliza algoritmos más sofisticados, construidos a partir del principio de las redes neuronales. Digamos que el DL (redes neuronales) utiliza algoritmos distintos al ML (algoritmos de regresión, árboles de decisión, entre otros). En ambos casos, los algoritmos pueden aprender de forma supervisada o no supervisada. En las no supervisadas se facilitan los datos de entrada, no los de salida. La razón por la que se llama aprendizaje profundo hace referencia a las redes neuronales profundas, que utilizan un número elevado de capas en la red, digamos, por ejemplo, 1000 capas. De hecho, el DL también se le conoce a menudo como “redes neuronales profundas”. Esta técnica de redes artificiales de neuronas es una de las técnicas más comunes del DL.

Figura. Esquema explicativo de diferencia entre ML y DL. https://www.privatewallmag.com/inteligencia-artificial-machine-deep-learning/

Una de las redes neuronales utilizadas en DL son las redes neuronales convolucionales, que es una variación del perceptrón multicapa, pero donde su aplicación se realiza en matrices bidimensionales, y por tanto, son muy efectivas en las tareas de visión artificial, como en la clasificación y segmentación de imágenes. En ingeniería, por ejemplo, se puede utilizar para la monitorización de la condición estructural, por ejemplo, para el análisis del deterioro. Habría que imaginar hasta dónde se podría llegar grabando en imágenes digitales la rotura en laboratorio de estructuras de hormigón y ver la capacidad predictiva de este tipo de herramientas si contaran con suficiente cantidad de datos. Todo se andará. Aquí os dejo una aplicación tradicional típica (Antoni Cladera, de la Universitat de les Illes Balears), donde se explica el modelo de rotura de una viga a flexión en la pizarra y luego se rompe la viga en el laboratorio. ¡Cuántos datos estamos perdiendo en la grabación! Un ejemplo muy reciente del uso del DL y Digital Image Correlation (DIC) aplicado a roturas de probetas en laboratorio es el trabajo de Gulgec et al. (2020).

Sin embargo, aquí nos interesa detenernos en la exploración de la integración específica del DL en las metaheurísticas con el objeto de mejorar la calidad de las soluciones o los tiempos de convergencia cuando se trata de optimizar estructuras. Un ejemplo de este camino novedoso en la investigación es la aplicabilidad de algoritmos que hibriden DL y metaheurísticas. Ya hemos publicado algunos artículos en este sentido aplicados a la optimización de muros de contrafuertes (Yepes et al., 2020; García et al., 2020a, 2020b). Además, hemos propuesto como editor invitado, un número especial en la revista Mathematics (indexada en el primer decil del JCR) denominado “Deep learning and hybrid-metaheuristics: novel engineering applications“.

Dejo a continuación un pequeño vídeo explicativo de las diferencias entre la inteligencia artificial, machine learning y deep learning.

Referencias:

FRISWELL, M.; MOTTERSHEAD, J. E. (1995). Finite element model updating in structural dynamics (Vol. 38). Dordrecht, Netherlands: Springer Science & Business Media.

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

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

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. DOI:1007/s00158-017-1653-0

GULGEC, N.S.; TAKAC, M., PAKZAD S.N. (2020). Uncertainty quantification in digital image correlation for experimental evaluation of deep learning based damage diagnostic. Structure and Infrastructure Engineering, https://doi.org/10.1080/15732479.2020.1815224

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

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

Sesión temática en CMN2021: Optimization, metaheuristics and evolutionary algorithms in civil engineering

En el marco del próximo congreso CMN2021 (Congress on Numerical Methods in Engineering) que se celebrará en Las Palmas de Gran Canaria del 28 al 30 de junio de 2021, hemos organizado una sesión temática coordinada por David Greiner, Diogo Ribeiro y Víctor Yepes que versa sobre optimización, metaheurísticas y algoritmos evolutivos en ingeniería civil. Os dejo a continuación una breve descripción del congreso y un resumen de la sesión temática propuesta.

El objetivo del Congreso de Métodos Numéricos en Ingeniería (CMN) es actuar como un foro en que se recopilen los trabajos científicos y técnicos más relevantes en el área de los métodos numéricos y la mecánica computacional, así como sus aplicaciones prácticas. CMN 2021, organizado conjuntamente por las sociedades de métodos numéricos española (SEMNI), portuguesa (APMTAC) y por el Instituto Universitario de Sistemas Inteligentes y Aplicaciones Numéricas en Ingeniería (SIANI) de la Universidad de Las Palmas de Gran Canaria (ULPGC). Los anteriores congresos conjuntos de ambas sociedades fueron celebrados en Madrid (2002), en Lisboa (2004), en Granada (2005), Porto (2007), Barcelona (2009), Coimbra (2011), Bilbao (2013), Lisboa (2015), Valencia (2017) y Minho (2019). Habiendo sido Las Palmas de Gran Canaria la sede del Primer Congreso CMN organizado por SEMNI en 1990, (General Chairs: Gabriel Winter y Miguel Galante), retorna 31 años después a su primera sede. El programa científico del CMN 2021 estará estructurado en sesiones temáticas según las distintas especialidades de los métodos numéricos. Las comunicaciones presentadas en el congreso constituirán una referencia de los avances recientes y de las líneas de trabajo futuras. Asimismo, investigadores internacionales de reconocido prestigio impartirán una serie de conferencias plenarias. El enlace a la web del congreso es la siguiente: https://congress.cimne.com/cmn2021

Descargar (PDF, 129KB)

Optimización heurística mediante aceptación por umbrales

En algunos posts anteriores hemos comentado lo que es un modelo matemático de optimización, qué son las metaheurísticas, o cómo poder optimizar las estructuras de hormigón. A continuación os presentamos un Polimedia donde se explica brevemente cómo podemos optimizar siguiendo la técnica de optimización heurística mediante aceptación por umbrales. Podréis comprobar cómo se trata de un caso similar a la famosa técnica de la cristalización simulada. Espero que os sea útil.

Podéis consultar, a modo de ejemplo, algunos artículos científicos que hemos escrito a ese respecto en las siguientes publicaciones:

  • CARBONELL, A.; GONZÁLEZ-VIDOSA, F.; YEPES, V. (2011). Heuristic optimization of reinforced concrete road vault underpasses. Advances in Engineering Software, 42(4): 151-159. ISSN: 0965-9978.  (link)
  • MARTÍNEZ, F.J.; GONZÁLEZ-VIDOSA, F.; HOSPITALER, A.; YEPES, V. (2010). Heuristic Optimization of RC Bridge Piers with Rectangular Hollow Sections. Computers & Structures, 88: 375-386. ISSN: 0045-7949.  (link)
  • YEPES, V.; MEDINA, J.R. (2006). Economic Heuristic Optimization for Heterogeneous Fleet VRPHESTW. Journal of Transportation Engineering, ASCE, 132(4): 303-311. (link)

 

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