La inteligencia de la naturaleza: cinco lecciones de los algoritmos genéticos.

Optimizar una estructura de hormigón no es solo una cuestión de cálculo, sino una batalla contra la entropía. Además, en la búsqueda de la combinación precisa entre la cantidad de acero y la resistencia del hormigón, el ingeniero se enfrenta a un océano de variables en el que la solución «perfecta» suele estar oculta bajo capas de complejidad técnica. Por tanto, el proceso exige no solo rigor analítico, sino también una comprensión profunda de cómo interactúan todos los factores que condicionan el diseño estructural.

Ante este desafío, la ingeniería moderna ha dejado de lado las calculadoras para observar el mecanismo de diseño más refinado de la historia: la selección natural.

Hace más de un siglo, Charles Darwin descubrió que la supervivencia es el resultado de un proceso en el que sobreviven los más aptos y transmiten sus rasgos. Hoy en día, aplicamos este rigor biológico a los algoritmos genéticos. Estos sistemas no solo resuelven problemas, sino que también imitan la vida misma para encontrar respuestas con una elegancia estructural que antes considerábamos inalcanzable.

Lección 1: La evolución no ocurre en el individuo, sino en su código.

Una de las distinciones más profundas de la computación evolutiva es que la mejora de un sistema no se logra manipulando el objeto final (el puente o la viga), sino su receta original. Para que un algoritmo sea verdaderamente evolutivo, debe comprender que el éxito se forja en las estructuras subyacentes, tal y como lo definió Davis en 1991:

«La evolución opera en los cromosomas, en lugar de en los individuos a los que representan».

Este enfoque resulta fascinante por lo contraintuitivo que es: para optimizar una estructura física (el fenotipo), manipulamos un vector binario o un string (el genotipo). Al trabajar con la representación abstracta, permitimos que el código explore cambios profundos sin las limitaciones del diseño inmediato, entendiendo que el cromosoma es el verdadero custodio de la adaptación global.

Lección 2: El diccionario biológico del programador.

Para resolver problemas de ingeniería como si fueran organismos vivos, debemos traducir la realidad física a un lenguaje genético preciso. Ver una solución técnica como un «ser» con ADN transforma radicalmente nuestra metodología de resolución.

  • Fenotipo: la solución final y detectable; la expresión física de la interacción genética.
  • Genotipo: la estructura o plan maestro a partir del cual se construye el organismo.
  • Cromosoma: vector o cadena de datos que almacena información.
  • Gen: Cada elemento del vector (un «vagón de tren» en la cadena de datos).
  • Alelo: el valor específico que adopta ese elemento (el bit o dato concreto).
  • Locus: posición exacta del gen, fundamental porque controla un carácter específico de la solución.
  • Aptitud (fitness): función objetivo que mide la capacidad de la solución para sobrevivir en su entorno técnico.

Lección 3: La «ruleta» de la supervivencia y la selección natural.

La selección natural no funciona como un sorteo, aunque tampoco actúa como una sentencia absoluta. Este principio se traslada al código mediante el método de la ruleta. En dicho procedimiento, cada solución se representa por un segmento circular cuya superficie es proporcional a su nivel de aptitud.

Esta «justicia algorítmica» garantiza que los mejores tengan mayores probabilidades de dejar descendencia. Sin embargo, no garantiza el monopolio de la reproducción, ya que los individuos menos aptos mantienen una pequeña probabilidad de transmitir sus genes. Este «caos controlado» es vital, ya que garantiza la diversidad estructural y evita que el algoritmo se estanque en óptimos locales, es decir, soluciones que parecen buenas solo porque el sistema ha perdido la capacidad de mirar más allá de lo inmediato.

Lección 4: Cruzamiento y mutación. El «sexo» de los datos.

La evolución exige novedad. Si nos limitáramos a clonar a los mejores, el progreso se detendría. Por ello, los algoritmos utilizan la recombinación o cruzamiento, mediante el cual dos progenitores intercambian información para crear descendientes con rasgos mixtos. Se destacan operadores sofisticados como el PMX (Partially-Matched Crossover), que copia un fragmento del código manteniendo las posiciones y rellena el resto con valores no utilizados, y el SEX (Strategic Edge Crossover), que busca identificar y preservar secuencias presentes en ambos progenitores.

Pero la mezcla no es suficiente. Es necesaria la mutación para introducir variaciones que no existían en la población original.

«Mutación: modificación espontánea de la información genética».

La mutación actúa como un factor de diversificación radical. Ya sea reemplazando un bit o recombinando elementos al azar sin considerar su aptitud inicial, este mecanismo introduce el «ruido» necesario para sacudir el sistema y permitirle dar el salto a fronteras de eficiencia completamente nuevas.

Lección 5: La memoria es un lastre para la evolución.

Siguiendo la lógica de Holland, uno de los conceptos más disruptivos de la evolución es su capacidad para vivir en el presente absoluto. A diferencia de otros sistemas de optimización que arrastran sesgos históricos, la evolución es un proceso sin memoria en el sentido estricto, ya que es una eficiencia de estado.

Durante la formación de nuevos cromosomas, el algoritmo solo tiene en cuenta la información del periodo inmediatamente anterior. Este enfoque «radical» permite que el sistema converja hacia la excelencia técnica basándose exclusivamente en la eficacia actual de los rasgos, sin verse frenado por configuraciones que fueron útiles en el pasado, pero ya no sirven para afrontar los desafíos del presente. Se podría decir que es una búsqueda de la perfección despojada de prejuicios históricos.

Los algoritmos genéticos demuestran que la naturaleza ya había resuelto los problemas de optimización más difíciles hace millones de años. Al adoptar estas leyes biológicas, la ingeniería no solo encuentra mejores soluciones para sus puentes y edificios, sino que lo hace con una elegancia que solo la evolución puede dictar.

Si principios tan elementales como la herencia y la mutación pueden dar lugar a estructuras de hormigón de una eficiencia asombrosa, ¿qué otros procesos naturales esconden hoy la clave para el próximo gran avance en la inteligencia de nuestro software?

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

Este vídeo resume bien los conceptos básicos de los algoritmos genéticos.

Aquí tenéis un vídeo en el que explico este algoritmo. Espero que os interese.

Genetic_Algorithms

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.

Inteligencia artificial y eficiencia en el diseño de edificios

La inteligencia artificial (IA) está transformando de manera radical el diseño arquitectónico y la edificación. En la actualidad, el sector de la construcción se enfrenta a tres tendencias clave: la industrialización, la sostenibilidad y la transformación digital e inteligente. La convergencia de estos factores genera numerosas oportunidades, pero también desafíos significativos.

Los proyectos contemporáneos son cada vez más grandes y complejos, y están sujetos a requisitos ambientales más estrictos, lo que aumenta la presión sobre los equipos de diseño en términos de procesamiento de información, tiempo y recursos. En este contexto, la IA no solo optimiza los procesos, sino que también mejora la eficiencia de los métodos tradicionales de diseño.

A continuación, analizamos cómo la IA puede impulsar la eficiencia del diseño, fomentar la innovación y contribuir a la sostenibilidad de los proyectos. La tecnología ya está presente en todas las etapas del ciclo de vida del edificio, desde el análisis predictivo y la supervisión de la construcción hasta el mantenimiento de las instalaciones.

La digitalización ha transformado profundamente la forma en que concebimos, proyectamos y gestionamos las infraestructuras. Tras la aparición del diseño asistido por ordenador (CAD) y el modelado de información para la construcción (BIM), la inteligencia artificial (IA) se presenta como el siguiente gran avance tecnológico. A diferencia de otras herramientas, la IA no solo automatiza tareas, sino que también aprende, genera propuestas y ayuda a tomar decisiones complejas de manera óptima. Como señalan Li, Chen, Yu y Yang (2025), la IA se está consolidando como una herramienta fundamental para aumentar la eficiencia en el diseño arquitectónico e integrar criterios de sostenibilidad, industrialización y digitalización en toda la cadena de valor.

La IA se puede definir como un conjunto de técnicas informáticas que buscan reproducir procesos propios de la inteligencia humana, como el razonamiento, el aprendizaje o el reconocimiento de patrones. Entre sus ramas se incluyen el aprendizaje automático (machine learning o ML), basado en algoritmos que identifican patrones en grandes volúmenes de datos; las redes neuronales artificiales, que imitan el funcionamiento del cerebro y permiten resolver problemas complejos, como la predicción energética (Chen et al., 2023); los algoritmos genéticos, que simulan procesos evolutivos para hallar soluciones óptimas en problemas con múltiples variables, y la IA generativa, capaz de crear contenidos originales, como imágenes o planos, a partir de descripciones textuales. Este último enfoque, también conocido como AIGC (contenido generado por IA), ha popularizado herramientas como Stable Diffusion o Midjourney (Li et al., 2025).

En el sector de la construcción confluyen tres grandes tendencias: la industrialización, vinculada a la modularización y la prefabricación de componentes; el desarrollo sostenible, que impulsa diseños energéticamente eficientes y con menor impacto ambiental; y la digitalización inteligente, en la que la IA desempeña un papel protagonista (Asif, Naeem y Khalid, 2024). Estas tres dinámicas están interrelacionadas: sin tecnologías de análisis avanzado, como la IA, sería mucho más difícil cumplir los objetivos de sostenibilidad o gestionar procesos constructivos industrializados.

Tendencias de la construcción

Las aplicaciones de la IA se extienden a lo largo de todo el ciclo de vida del edificio. En las primeras fases de diseño, los algoritmos generan en segundos múltiples alternativas de distribución, optimizando la orientación, la iluminación natural o la ventilación. El diseño paramétrico asistido por IA permite explorar variaciones infinitas ajustando solo unos pocos parámetros (Li et al., 2025). Durante la fase de proyecto, los sistemas basados en procesamiento del lenguaje natural pueden interpretar normativas y detectar incumplimientos de forma automática, lo que reduce la probabilidad de modificaciones en obra (Xu et al., 2024). Además, las técnicas de simulación permiten prever el comportamiento estructural, acústico o energético de un edificio antes de su construcción, lo que proporciona seguridad y precisión en la toma de decisiones.

Avances de la IA en el diseño arquitectónico

En el sector de la construcción, la IA se combina con sensores y análisis de datos en tiempo real para optimizar la producción y la logística. En la construcción industrializada, los algoritmos ajustan la fabricación de elementos prefabricados, optimizan los cortes y los ensamblajes, y mejoran la gestión de las obras (Li et al., 2025). Al mismo tiempo, la monitorización inteligente permite anticiparse a las desviaciones, planificar los recursos con mayor eficiencia e incrementar la seguridad en entornos complejos.

Optimización del ciclo de vida del edificio con IA

Uno de los campos más avanzados es la predicción y optimización del consumo energético. Algoritmos como las redes neuronales, las máquinas de soporte vectorial o los métodos evolutivos permiten modelizar con gran precisión el comportamiento energético, incluso en las fases preliminares (Chen et al., 2023). Gracias a estas técnicas, es posible seleccionar soluciones constructivas más sostenibles, diseñar envolventes eficientes e integrar energías renovables en el proyecto. Como señalan Ding et al. (2018), estas herramientas facilitan el cumplimiento de los sistemas de evaluación ambiental y apoyan la transición hacia edificios de energía casi nula.

Las ventajas de la IA son evidentes: aumenta la eficiencia, reduce los errores y permite generar múltiples alternativas en mucho menos tiempo (Li et al., 2025). También optimiza los aspectos energéticos y estructurales, lo que hace que los proyectos sean más fiables y competitivos. La automatización de tareas repetitivas agiliza la creación de planos y documentos, mientras que los profesionales pueden dedicarse a tareas creativas. Además, las herramientas de gestión de proyectos con IA ayudan a organizar mejor los recursos y los plazos. Gracias a su capacidad para analizar grandes volúmenes de datos, fomentan la innovación, diversifican los métodos de diseño y facilitan la selección de materiales y el rendimiento energético.

Beneficios de la IA en el diseño

Sin embargo, la IA también plantea importantes desafíos. Su eficacia depende de la calidad de los datos; sin información fiable, los algoritmos pierden precisión. Además, integrarla con plataformas como CAD o BIM sigue siendo complicado (Xu et al., 2024). A esto se suman cuestiones éticas y legales, como la propiedad intelectual de los diseños generados por IA, la opacidad en la toma de decisiones y el riesgo de que los diseñadores pierdan cierto control. En algunos lugares, como EE. UU., se han revocado derechos de autor sobre obras generadas por IA, lo que refleja la incertidumbre legal existente.

Otros retos son la homogeneización del diseño si todos usan herramientas similares, la reticencia de algunos profesionales a adoptar soluciones de IA por dudas sobre la personalización y la fiabilidad, y los altos costes y la limitada disponibilidad de hardware y software especializados. Aún así, la IA sigue siendo una herramienta poderosa que, si se utiliza correctamente, puede transformar la eficiencia, la creatividad y la sostenibilidad en el sector de la construcción, abriendo un futuro lleno de oportunidades.

Desafíos de la adopción de la IA en el diseño

Ya existen ejemplos prácticos que muestran el potencial de estas tecnologías. Herramientas como Stable Diffusion o FUGenerator pueden generar imágenes y maquetas a partir de descripciones en lenguaje natural y actúan como asistentes que multiplican la productividad del proyectista (Li et al., 2025). Estas plataformas no sustituyen la creatividad humana, pero ofrecen un apoyo decisivo en la fase de ideación.

Bucle interactivo de inferencia de diseño arquitectónico de FUGenerator (Li et al., 2025)

La IA se está convirtiendo en un pilar fundamental de la construcción, integrándose cada vez más con tecnologías como la realidad aumentada (RA), la realidad virtual (RV), la realidad mixta (RM) y los gemelos digitales. Gracias a esta combinación, no solo es posible visualizar cómo será un edificio, sino también anticipar su comportamiento estructural, energético o acústico antes de su construcción (Xu et al., 2024). Esto permite a los diseñadores y a los clientes evaluar las propuestas en las primeras etapas, lo que mejora la calidad del diseño y la experiencia del usuario.

La IA del futuro será más inteligente y adaptable, capaz de predecir con gran precisión los resultados del diseño y ofrecer soluciones personalizadas. Su impacto no se limita al diseño arquitectónico: la gestión de la construcción se beneficiará de la robótica asistida, lo que aumentará la seguridad y la eficiencia en tareas complejas o de alto riesgo; la operación de los edificios podrá monitorizar su rendimiento, anticipar las necesidades de mantenimiento y prolongar su vida útil, lo que reducirá los costes, y el análisis de mercado aprovechará el big data para prever la demanda y los precios de los materiales, lo que optimizará la cadena de suministro.

En ingeniería civil, la integración de la IA y las tecnologías avanzadas permite tomar decisiones más fundamentadas, minimizar riesgos y entregar proyectos más seguros y sostenibles (Xu et al., 2024). Así, la construcción del futuro se perfila como un proceso más eficiente, innovador y conectado, en el que la tecnología y la planificación estratégica trabajan juntas para lograr resultados óptimos.

En conclusión, la IA no pretende sustituir a los ingenieros y arquitectos, sino ampliar sus capacidades, como ya hicieron el CAD o el BIM (Asif et al., 2024; Li et al., 2025). Automatiza tareas repetitivas, agiliza el diseño, facilita la toma de decisiones basada en datos y ayuda a elegir materiales, mejorar la eficiencia energética y estructural e inspirar soluciones creativas. Su impacto trasciende el diseño y se extiende a la planificación, la supervisión de la construcción y la gestión del ciclo de vida del edificio. No obstante, su adopción plantea desafíos como los altos costes, la escasez de software disponible y la necesidad de contar con datos de calidad y algoritmos robustos. Si se depende en exceso de la IA, los diseños podrían homogeneizarse, por lo que es fundamental definir claramente los roles entre los arquitectos y la IA. Si se utiliza correctamente, la IA puede potenciar la creatividad, la eficiencia y la sostenibilidad, y ofrecer un futuro más innovador y dinámico para la construcción.

Os dejo un vídeo que resume las ideas más importantes.

Referencias:

Glosario de términos clave

  • Inteligencia Artificial (IA): Una disciplina científica y tecnológica de vanguardia que simula el aprendizaje y la innovación humanos para extender el alcance de la aplicación de la tecnología.
  • Inteligencia Artificial Generativa (GAI): Un subconjunto de la IA que utiliza el aprendizaje automático y las capacidades de procesamiento del lenguaje natural para que las computadoras simulen la creatividad y el juicio humanos, produciendo automáticamente contenido que cumple con los requisitos.
  • Diseño Paramétrico: Un método de diseño en el que se utilizan algoritmos para definir la relación entre los elementos de diseño, permitiendo la generación de diversas variaciones de diseño mediante el ajuste de parámetros.
  • Diseño Asistido por IA: Métodos en los que las herramientas de IA ayudan a los diseñadores a optimizar diseños, analizar datos, resolver problemas y explorar conceptos creativos.
  • Colaboración Hombre-Máquina: Un enfoque en el que humanos y máquinas trabajan juntos en tareas complejas, con la IA apoyando la innovación humana y el intercambio de información eficiente.
  • Redes Neuronales Artificiales (RNA o ANN): Un tipo de algoritmo de IA, modelado a partir del cerebro humano, que se utiliza para modelar relaciones complejas entre entradas y salidas, a menudo empleadas en la predicción del consumo de energía de los edificios.
  • Aprendizaje Profundo (Deep Learning): Un subcampo del aprendizaje automático que utiliza redes neuronales con múltiples capas (redes neuronales profundas o DNN) para aprender representaciones de datos con múltiples niveles de abstracción.
  • Redes Neuronales Profundas (DNN): Redes neuronales con numerosas capas ocultas que permiten que el modelo aprenda patrones más complejos en los datos, mejorando la precisión en tareas como la predicción del consumo de energía.
  • Máquinas de Vectores de Soporte (SVM): Un algoritmo de aprendizaje supervisado utilizado para tareas de clasificación y regresión, especialmente eficaz con conjuntos de datos pequeños y para identificar relaciones no lineales.
  • Procesamiento del Lenguaje Natural (PLN o NLP): Un campo de la IA que se ocupa de la interacción entre las computadoras y el lenguaje humano, permitiendo a los sistemas interpretar y generar lenguaje humano.
  • Modelado de Información de Construcción (BIM): Una metodología para la gestión de la información de construcción a lo largo de su ciclo de vida, utilizada con la IA para mejorar las simulaciones de rendimiento del edificio.
  • Algoritmos Genéticos (GA): Una clase de algoritmos de optimización inspirados en el proceso de selección natural, utilizados para encontrar soluciones óptimas en tareas de diseño complejas.
  • Adaptación de Bajo Rango (LoRA): Un método de ajuste de bajo rango para modelos de lenguaje grandes, que permite modificar el comportamiento de los modelos añadiendo y entrenando nuevas capas de red sin alterar los parámetros del modelo original.
  • Stable Diffusion: Una herramienta avanzada de IA para generar imágenes a partir de descripciones de texto o dibujos de referencia, que a menudo utiliza el modelo LoRA para estilos específicos.
  • Inception Score (IS) y Fréchet Inception Distance (FID): Métricas cuantitativas utilizadas para evaluar la calidad y diversidad de las imágenes generadas por modelos de IA, con IS evaluando la calidad y FID la similitud de la distribución entre imágenes reales y generadas.
  • FUGenerator: Una plataforma que integra varios modelos de IA (como Diffusion Model, GAN, CLIP) para respaldar múltiples escenarios de aplicación de diseño arquitectónico, desde la descripción semántica hasta la generación de bocetos y el control.
  • Industrialización (en construcción): Énfasis en métodos de construcción modulares y automatizados para mejorar la eficiencia y estandarización.
  • Desarrollo Ecológico (en construcción): Enfoque en la conservación de energía durante el ciclo de vida, el uso de materiales sostenibles y la reducción del impacto ambiental.
  • Transformación Digital-Inteligente (en construcción): Integración de sistemas de digitalización e inteligencia, aprovechando tecnologías como la GAI para optimizar procesos y mejorar la creación de valor.
  • Problema Mal Definido (Ill-defined problem): Problemas de diseño, comunes en arquitectura, que tienen propósitos y medios iniciales poco claros.
  • Problema Malicioso (Wicked problem): Problemas de diseño caracterizados por interconexiones y objetivos poco claros, que requieren enfoques de resolución complejos.
  • Integración del Internet de las Cosas (IoT): La interconexión de dispositivos físicos con sensores, software y otras tecnologías para permitir la recopilación y el intercambio de datos, crucial para los sistemas de control de edificios inteligentes

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.

Pincha aquí para descargar

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 descritos 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 en 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 a la teoría de Darwin son de una profundidad difícil de comprender cuando se llevan a sus últimas consecuencias. 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 quienes estén interesados, os paso en las referencias un par de artículos en los que 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 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á quitar los cimientos más profundos de sus creencias. Os paso la referencia al final.

Básicamente, los algoritmos genéticos, o “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 por su material genético. A nivel de los genes, el problema consiste en buscar adaptaciones beneficiosas en un medio hostil y cambiante. Debido, en parte, a la selección natural, cada especie gana cierta “información” que se incorpora a sus cromosomas.

Durante la reproducción sexual, un nuevo individuo, diferente de sus padres, se genera mediante 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 conservará parte de sus características. Si los hijos heredan buenos atributos de sus padres, su probabilidad de supervivencia será mayor que la de aquellos que no los tengan. De este modo, los mejores tendrán altas probabilidades de reproducirse y de transmitir 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 puede asociarse a una solución factible del problema, de modo que pueda codificarse como un vector binario “string”. Entonces, un operador de cruzamiento intercambia las 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 según 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 padres que serán reemplazados por la población.
    2. Emparejar aleatoriamente a los progenitores y cruzarlos para obtener unos vectores hijos.
    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 los individuos menos eficaces.

Normalmente este proceso finaliza después de un número determinado de generaciones o cuando la población ya no puede mejorar. La selección de los padres se realiza de forma probabilística hacia los individuos más aptos. Al igual que ocurre en la naturaleza, los sujetos con mayor aptitud difunden sus características a lo largo de toda la población.

Esta descripción de los GA se adapta a cada situación concreta, siendo habitual la codificación en números enteros en lugar de binaria. Del mismo modo, se han sofisticado los distintos operadores de cruzamiento y de 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.

Diseño automático de puentes pretensados con algoritmos heurísticos

Acaban de publicarnos un artículo donde se utilizan cuatro algoritmos heurísticos: Descent Local Search, Threshold Accepting Algorithm with Mutation Operation, Genetic Algorithm y Memetic Algorithm para el diseño automático de puentes pretensados.

Se puede descargar gratuitamente este artículo hasta el 10 de junio de 2017 en el siguiente enlace: https://authors.elsevier.com/a/1UwC15s1QSxbmc

Referencia: 

YEPES, V.; MARTÍ, J.V.; GARCÍA-SEGURA, T.; GONZÁLEZ-VIDOSA, F. (2017). Heuristics in optimal detailed design of precast road bridges. Archives of Civil and Mechanical Engineering, 17(4):738-749. DOI: 10.1016/j.acme.2017.02.006

Abstract:

This paper deals with the cost optimization of road bridges consisting of concrete slabs prepared in situ and two precast-prestressed U-shaped beams of self-compacting concrete. It shows the efficiency of four heuristic algorithms applied to a problem of 59 discrete variables. The four algorithms are the Descent Local Search (DLS), a threshold accepting algorithm with mutation operation (TAMO), the Genetic Algorithm (GA), and the Memetic Algorithm (MA). The heuristic optimization algorithms are applied to a bridge with a span length of 35 m and a width of 12 m. A performance analysis is run for the different heuristics, based on a study of Pareto optimal solutions between execution time and efficiency. The best results were obtained with TAMO for a minimum cost of 104184 euros. Among the key findings of the study, the practical use of these heuristics in real cases stands out. Furthermore, the knowledge gained from the investigation of the algorithms allows a range of values for the design optimization of such structures and pre-dimensioning of the variables to be recommended.

Keywords:

Optimization; Metaheuristics; Bridges; Overpasses; Structural design

 

Planificación de redes de transporte con baja demanda

La planificación y gestión de redes de distribución de baja demanda exigen contar con técnicas eficientes de optimización de rutas. El sistema de optimización de rutas disponible no solo afecta el desarrollo de operaciones, sino también las decisiones tácticas y estratégicas, como el tamaño óptimo de la flota, la estimación de costes, las políticas de publicidad y la rotura de servicio, etc.  Por ejemplo, es habitual la venta de paquetes turísticos que incluyen el transporte; los precios se fijan mucho antes de que la demanda de transporte sea conocida, siendo frecuentes las cancelaciones de última hora y la llegada de nuevos clientes. Si  el número de pasajeros que deben ser transportados es pequeño, en comparación con la máxima capacidad de carga del vehículo óptimo a la distancia correspondiente, los beneficios o pérdidas del transporte dependen críticamente de la eficiencia del sistema de optimización de rutas. La Figura muestra la influencia de la optimización de operaciones en la planificación y la gestión de redes de distribución de baja demanda.

Redes de baja demanda
Planificación y Gestión de Redes de Distribución de Baja Demanda

Así pues, la planificación y gestión de redes de distribución de baja demanda generan una variedad de problemas de decisión que dependen críticamente de la optimización de operaciones, con espacios de solución muy amplios y, además, crecientes exponencialmente con el número de destinos y el tamaño de la flota. Esta explosión combinatoria de soluciones y la complejidad de las variables a optimizar impiden que la optimización pueda abordarse con técnicas de optimización exactas; por el contrario, las técnicas metaheurísticas y probabilísticas son alternativas siempre viables que, aunque no garantizan alcanzar la solución óptima absoluta, sí pueden proporcionar buenas soluciones a problemas reales complejos (ver Díaz et al., 1996). En este contexto, los sistemas inteligentes son métodos apropiados para resolver problemas complejos de optimización combinatoria como el planteado (ver Goonatilake and Treleaven, 1996, Fayyard et al., 1996 y Medina, 1998). En este artículo, se ha utilizado un algoritmo genético originalmente diseñado para resolver el TSP para abordar problemas más complejos como el CVRP y el SCVRP, utilizando funciones de coste y restricciones muy  variadas.

Por otro lado, el problema de optimización de las operaciones de transporte es crucial para la propia existencia de un cierto nicho de mercado de baja demanda. Si se consigue una distribución muy eficiente, es posible aflorar una demanda latente y satisfacerla con una flota pequeña y un costo razonable. Esta situación se produce en el mercado turístico con destinos poco masificados. En un ejemplo de aplicación presentado por Medina y Yepes (2003), se utiliza un aeropuerto hub, donde tanto para fijar precios como para definir la mejor estrategia comercial resulta imprescindible disponer de un sistema flexible para optimizar la distribución de pasajeros y de modelos estocásticos de simulación de escenarios.

Pantallazo rutas
Salida típica del programa de optimización de rutas

Referencias:

DÍAZ, A., GLOVER, F., GHAZIRI, H.M., GONZÁLEZ, J.L., LAGUNA, M., MOSCATO, P. y TSENG, F.T.(1996). Optimización Heurística y Redes Neuronales en Dirección de Operaciones e Ingeniería.  Editorial Paraninfo S.A., Madrid (España).

FAYYARD, U.M., PIATETSKI-SHAPIRO, G., SMYTH, P., and UTHURUSAMI, R.(1996). Advances in   Knowledge Discovery and Data Mining. MIT Press.

GOONATILAKE, S. and TRELEAVEN, P. (1996). Intelligent Systems for Finance and Business. John Wiley.

MEDINA, J.R.(1998). Algoritmos genéticos para la optimización de redes de distribución. Actas del X Congreso Panamericano de Ingeniería de Tránsito y Transporte. Santander 1998, Ministerio de Fomento (España), pp. 339-347.

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)

Métodos no convencionales de investigación basados en la inteligencia artificial

El pasado mes de octubre tuve la ocasión de impartir un seminario en la Universidad Católica de Chile denominado «Métodos de investigación no convencionales basados en la inteligencia artificial». Os paso la presentación que hice. Espero que os guste.Pincha aquí para descargar