TFM Marco Cisneros
TFM Marco Cisneros
TFM Marco Cisneros
Optimización de estructuras de
acero utilizando diseño
paramétrico y algoritmos genéticos
en un entorno BIM
Dirigido por:
Dr. Rolando Antonio Chacón Flores
Màster en:
Ingeniería Estructural y de la Construcción
Barcelona,
1
Agradecimientos
• En primer lugar agradezco a mis padres por todo el esfuerzo y apoyo que siempre me
han dado durante todos mis años de estudios y haberlos hecho posibles.
• A mi novia y su familia por su apoyo y comprension durante mis estudios de máster.
• Agradezco a mi tutor el Dr. Rolando Antonio Chacón Flores por todo su apoyo durante
este TFM, el conocmiento que me brindó, consejos, tiempo y experiencia.
• A todos los profesores que tuve durante mis máster en la UPC que me proporcionaron
sus conocimientos y experiencia.
2
Contenido
AGRADECIMIENTOS ........................................................................................................... 2
ÍNDICE DE FIGURAS............................................................................................................ 5
ÍNDICE DE TABLAS............................................................................................................ 10
RESUMEN.............................................................................................................................. 11
ABSTRACT ............................................................................................................................ 11
1 INTRODUCCIÓN ......................................................................................................... 12
3 HERRAMIENTAS ........................................................................................................ 35
4 CASOS DE ESTUDIO................................................................................................... 49
3
4.1.5 Definición de las cargas ............................................................................................................... 54
4.1.6 Definición de materiales ............................................................................................................... 55
4.1.7 Ensamble del modelo .................................................................................................................... 56
4.1.8 Análisis estructural y su resultado ................................................................................................ 56
4.1.9 Optimización del perfil ................................................................................................................. 59
4.2 SEGUNDO CASO DE ESTUDIO ..................................................................................... 65
4.2.1 Criterio para mayoración de cargas ............................................................................................ 65
4.2.2 Modelación paramétrica............................................................................................................... 65
4.2.3 Simulación estructural .................................................................................................................. 67
4.2.4 Definición de los apoyos ............................................................................................................... 68
4.2.5 Definición de las cargas ............................................................................................................... 69
4.2.6 Definición de materiales ............................................................................................................... 70
4.2.7 Ensamblaje del modelo ................................................................................................................. 72
4.2.8 Optimización topológica ............................................................................................................... 73
4.2.9 Análisis estructural y su resultado ................................................................................................ 74
4.2.10 Optimización estructural .......................................................................................................... 76
4.2.11 Optimización a partir de Galápagos........................................................................................ 77
4.2.12 Optimización a partir de Octopus y Galápagos ....................................................................... 86
4.3 TERCER CASO DE ESTUDIO ........................................................................................ 91
4.3.1 Criterio para mayoración de cargas ............................................................................................ 92
4.3.2 Modelación paramétrica............................................................................................................... 92
4.4 SIMULACIÓN ESTRUCTURAL ...................................................................................... 94
4.4.1 Optimización estructural ............................................................................................................ 101
4.4.2 Optimización con Galápagos ...................................................................................................... 101
4.4.3 Optimización con Octopus .......................................................................................................... 104
7 BIBLIOGRAFÍA.......................................................................................................... 110
4
Índice de Figuras
6
Figura 49. Definición de Apoyos ............................................................................................. 54
Figura 50. Deifnición de Cargas en Karamba 3D .................................................................... 55
Figura 51. Catálogo de Perfiles de Acero ................................................................................ 56
Figura 52. Ensamble del Modelo ............................................................................................. 56
Figura 53. Análisis Estructural del Elemento .......................................................................... 57
Figura 54. Resultados del Modelo ........................................................................................... 57
Figura 55. Momento Actuante en Estado Límite de Servicio .................................................. 58
Figura 56. Momento Actuante es Estado Límite Último ......................................................... 58
Figura 57. Complemento de Optimización Karamba 3D ........................................................ 59
Figura 58. Anejo B Método 2 para Obtener Factores kij. Citado de (EN 1993-1-1, 2005)..... 60
Figura 59. Valores Límite Recomendados para Flechas Verticales. Citado de (Gulvanessian
& Holicky, 1996) ..................................................................................................................... 60
Figura 60. Resultado de Optimización..................................................................................... 61
Figura 61. Componente de Utilización de Elementos ............................................................. 62
Figura 62. Complemento de Catálogo con Perfiles IPE .......................................................... 63
Figura 63. Perfil IPE 400, Obtenido con Nuevo Catálogo ...................................................... 63
Figura 64. Programación Gráfica en Segundo Caso de Estudio .............................................. 65
Figura 65. Definición Geométrica de la Celosía Programada ................................................. 66
Figura 66. Modelo Visual de la Geometría de la Celosía ........................................................ 66
Figura 67. Definición de Geometría como Elemento en Karamba 3D .................................... 67
Figura 68. Clasificación de los Elementos de acuerdo con ID's .............................................. 67
Figura 69. Definición de Apoyos Caso 2 ................................................................................. 68
Figura 70. Componente para Definir Articulaciones ............................................................... 68
Figura 71. Definición de Carga y Casos de Carga en Karamba 3D ........................................ 69
Figura 72. Catálogo de Perfiles y Definición de Materiales .................................................... 70
Figura 73. Componente de Selección por Rango de Perfiles................................................... 71
Figura 74. Componente de Selección de Material ................................................................... 71
Figura 75. Componentes Deslizantes para Seleccionar Perfil ................................................. 71
Figura 76. Selector de Perfiles ................................................................................................. 72
Figura 77. Ensamble del Modelo ............................................................................................. 72
Figura 78. Optimización Topológica Celosía .......................................................................... 73
Figura 79. Sucesión de Aproximaciones en Optimización Topológica ................................... 73
Figura 80. Componente de Análisis Estructural y Desplazamientos ....................................... 74
7
Figura 81. Resultados del Modelo ........................................................................................... 75
Figura 82. Componente de Esfuerzos Resultantes en la Estructura......................................... 75
Figura 83. Numeración de los Elementos en la Celosía .......................................................... 76
Figura 84. Componente Galápagos .......................................................................................... 77
Figura 85. Componente de Función para Optimizar ................................................................ 77
Figura 86. "Genome" del Componente Galápagos .................................................................. 78
Figura 87. Componente en Código para Limitar Canto ........................................................... 79
Figura 88. Venta Para Programar en Código del Componente de Visual Basic...................... 79
Figura 89. Componente en Código para Limitar Flecha.......................................................... 80
Figura 90. Componente de Utilización .................................................................................... 81
Figura 91. Componente en Código para Verificar Ratios........................................................ 82
Figura 92. Componente en Código para Convertir a Mil ........................................................ 83
Figura 93. Datos Objetivo de Galápagos ................................................................................. 83
Figura 94. Componente Galápagos Durante Simulación ......................................................... 84
Figura 95. Estructura Obtenida con Galápagos ....................................................................... 84
Figura 96. Ratios de Utilización Obtenidos por Galápagos ..................................................... 86
Figura 97. Optimización Geométrica Octopus ........................................................................ 87
Figura 98. Función para Optimizar Ratios de Utilización en Galápagos ................................ 87
Figura 99. Modelo Primera Iteración con Octopus y Galápagos ............................................. 88
Figura 100. Modelo Segunda y Tercera Iteración con Octopus y Galápagos ......................... 88
Figura 101. Numeración de Elementos Segunda y Tercera Iteración con Octopus y Galápagos
.................................................................................................................................................. 89
Figura 102. Programación Gráfica en Tercer Caso de Estudio ............................................... 91
Figura 103. Modelación Geométrica de Viga Armada ............................................................ 92
Figura 104. Vista Frontal Viga Armada .................................................................................. 92
Figura 105. Sección Transversal Viga Armada ....................................................................... 93
Figura 106. Vista en Perspectiva Viga Armada ....................................................................... 93
Figura 107. Componente en Código para Analizar Viga Armada ........................................... 94
Figura 108. Relaciones Máximas Ancho/Espesor para Miembros a Compresión (Determinar
Clase del Alma). Citado de (EN 1993-1-1, 2005) ................................................................... 95
Figura 109. Relaciones Máximas Ancho/Espesor para Miembros a Compresión (Determinar
Clase de Patín). Citado de (EN 1993-1-1, 2005) ..................................................................... 96
8
Figura 110. Relación entre Factores de Pandeo y Esfuerzo en Base a Condiciones de
Contorno. Citado de (EN 1993-1-5, 2006) .............................................................................. 97
Figura 111. Contribución del alma 𝛘𝒘 a Resistencia a Pandeo por Cortante ......................... 98
Figura 112. Valores Recomendados para Factores de Imperfección para Curvas de Pandeo
Lateral. Citado de (EN 1993-1-1, 2005) .................................................................................. 99
Figura 113. Valores Recomendados para Curvas de Pandeo Lateral para Secciones
Transversales. Citado de (EN 1993-1-1, 2005) ....................................................................... 99
Figura 114. Factores de Corrección Kc. Citado de (EN 1993-1-1, 2005) ............................. 100
Figura 115. Parámetros para Modificar por Galápagos en Optimización ............................. 102
Figura 116. Función de Optimización Tercer Caso de Estudio ............................................. 102
Figura 117. Resultados Optimización Galápagos en Tercer Caso de Estudio ....................... 103
Figura 118. Resultados Optimización Octopus en Tercer Caso de Estudio .......................... 104
9
Índice de Tablas
10
Resumen
En el sector de la construcción las empresas cada vez requieren estructuras diseñadas de la
manera más optima posible, para reducir costes y hacerlas más sostenibles. Optimizar las
estructuras se ha convertido en una necesidad indiscutible hoy en día. Con el paso del tiempo
las técnicas de optimización han evolucionado y se han desarrollado algoritmos más potentes,
este hecho exige indirectamente una evolución en la manera en que se modelan los proyectos
para brindar mejores resultados y más rápidos al momento optimizar las estructuras, estos
modelos son llamados modelos paramétricos, los cuales permiten al usuario realizar grandes
modificaciones de manera rápida sin tener que redimensionar el proyecto ante cambios en su
configuración. En este TFM se desarrolló una metodología de cálculo para optimizar tres casos
de estudio mediante algoritmos a partir de modelos paramétricos en un entorno BIM. Los casos
analizados incluyen una viga laminada, una celosía y una viga armada. La metodología
aplicada en los tres casos de estudio demostró tener un buen funcionamiento, ya que los
modelos paramétricos trabajando en conjunto con los algoritmos de optimización genética
generaron resultados que se ajustaron de manera adecuada a las verificaciones de resistencia y
estabilidad del Eurocódigo 3. Los ratios de utilización y las deformaciones (ULS y SLS) se
ajustaron a los límites establecidos.
Abstract
In the construction sector, companies increasingly require structures designed as optimally as
possible, both to reduce costs and to add sustainability. Optimizing structures has become an
indisputable necessity today. Over time, optimization techniques have evolved and more
powerful algorithms have been developed, this fact indirectly demands an evolution in the way
in which projects are modeled to provide better results and faster when optimizing structures,
these models are called parametric models, which allow the user to make large modifications
quickly without having to start a model from scratch. In this thesis a calculation methodology
was developed to optimize three case studies using algorithms based on parametric models in
a BIM environment. The cases analyzed include a laminated beam, a lattice and an armed
beam. The methodology applied in the three case studies proved to have a good functioning,
since the parametric models working together with the genetic optimization algorithms
generated results that were adjusted in an adequate way to the resistance and stability
verifications of Eurocode 3 and the ratios of use and deflection were adjusted to the limits that
were established.
11
1 Introducción
1.2 Alcance
En esta tesis se analizan tres casos de estudio para verificar el comportamiento de la
optimización de dichos casos a través de algoritmos evolutivos genéticos aplicado por los
complementos Galápagos y Octopus. Se analizan dos casos de vigas simplemente apoyadas y
un caso de una celosía empotrada, todos con carga permanente. Los casos analizados se
verifican y optimizan en cuanto a resistencia y estabilidad a partir del Eurocdico 3, también se
verifica que cumplan con una flecha máxima admisible.
12
1.3 Metodología
La primera parte de la tesis consistió en obtener conocimiento fundamental sobre Grasshopper
para aprender a realizar programación gráfica, una vez que se logró este objetivo se procedió a
estudiar el complemento de Grasshopper llamado Karamba 3D que sirve para modelar y
analizar elementos estructurales. Con el conocimiento suficiente del software a utilizar se
realizan tres casos de estudio para aplicar distintos métodos de optimización. Cabe destacar
que el entorno de programación visual Grasshopper incluye una total interoperatibilidad con
entornos BIM (por ejemplo, Tekla) lo que permite de manera directa trabajar en el mismo
entorno.
13
Figura 1. Primer Caso de Estudio, Viga Simplemente Apoyada
• El segundo caso de análisis mostrado en la Figura 2 es una celosía empotrada con carga
permanente aplicada en de manera puntual al centro de la estructura, la optimización
es más compleja, se encuentran nuevas variantes como el canto de la celosía, el número
de divisiones y los perfiles a utilizar. El complemento optimizador de Karamba 3D ya
no es suficiente por lo que ahora es necesario utilizar los complementos de
Grasshopper que son Galápagos y Octopus que permiten buscar la mejor opción a
partir de algoritmos evolutivos.
• El tercer caso de análisis en la Figura 3 es una viga simplemente apoyada con carga
permanente en forma de carga distribuida, a diferencia de la viga en el primer caso de
estudio, esta viga es una viga armada en donde el perfil ya no puede ser obtenido a
través de catálogos, al tener este impedimento no se puede trabajar con Karamba 3D,
ya que solamente utiliza perfiles existentes. Para este caso se requiere de programación
haciendo una combinación entre complementos de Grasshopper que permiten
programar lo necesario para realizar las verificaciones estructurales utilizando Python
y Visual Basic y haciendo uso de Galápagos y Octopus nuevamente para optimizar el
elemento.
14
Figura 3. Tercer Caso de Estudio, Viga Simplemente Apoyada
15
2 Estado del arte
Un modelo paramétrico requiere una mayor inversión de tiempo inicial comparado con un
modelo no parametrizado (Muttio, Botello, & Tapia, 2017). De acuerdo con el autor Paulson,
en la Figura 4 se muestra como una mayor inversión en las etapas tempranas de diseño de
ingeniería conllevan a un menor costo en los cambios que se realicen posteriormente al diseño
(Paulson, 1976).
16
Figura 4. Curva de Paulson. Citado de (Paulson, 1976)
Los parámetros para modificar los modelos van desde el tamaño de la estructura, cantidad de
elementos, longitud de los elementos, altura, áreas, funciones matemáticas para describir la
forma del elemento y su ubicación, número de secciones en donde simplemente se puede
modelar una sección de modelo y ajustar cuantas veces se requiere repetir la misma forma, hay
una gran cantidad de parámetros que se pueden establecer y estos dependen tanto de las
necesidades del proyecto como del proyectista. Una de las grandes ventajas del diseño
paramétrico es que se pueden generar estructuras complejas utilizando funciones matemáticas
como parámetros, la Figura 5 muestra una estructura modelada paramétricamente, esta figura
muestra una estructura ya definida en su fase final, pero en su fase de diseño bien se podría
cambiar los segmentos que tiene y su forma con tan solo modificar sus parámetros.
17
La Figura 6 muestra una estructura modelada a través de diseño paramétrico utilizando
programación visual en donde se permite ver con mayor claridad el proceso y la relación que
existe entre los parámetros y el modelo obtenido. La programación visual permite crear
programas de manera visual, utilizando nodos y cables (Gil & Parsons, 2014). En esta figura
los parámetros que permiten modificar la estructura se encuentran en los rectángulos de color
gris que en programación visual serían los nodos, se puede observar de manera clara las
posibles soluciones estructurales existentes al modificar distintos grupos de parámetros
mostrados en la imagen, por ejemplo, se puede obtener una estructura con orificios más
abiertos, sin orificios, con mayor número de secciones y todo esto sin agregar nuevos
elementos, simplemente modificando los parámetros existentes.
Se han hecho muchos trabajos e investigaciones respecto a diseño paramétrico de los cuales se
consultaron algunos que se realizaron desde el año 2013 a la actualidad, lo que tienen en común
estos trabajos es que en la mayoría se utilizan los mismo programas y que conforme avanza el
tiempo se han realizado investigaciones más complejas utilizando diseño paramétrico, estos
18
hechos demuestran que los programas utilizados no han perdido vigencia con el tiempo y han
mejorado con el tiempo permitiendo a los usuarios realizar modelos más complejos.
En 2014 Kensek utilizó el diseño paramétrico para generar ocho casos de estudio para
experimentar con sensores que al recibir las condiciones ambientales como la luz solar se
puedan adaptar y modificar la fachada para mejorar la experiencia del usuario o aprovechar al
máximo la iluminación. De los ocho casos de estudio uno utilizó Arduino para percibir las
condiciones ambientales, Rhino para realizar el modelo en tiempo real, Grasshopper para
19
realizar el modelo paramétrico a través de programación visual y por último se utilizó el
componente Firefly para realizar la conexión entre los datos obtenidos del Arduino y los
parámetros de Grasshopper. El resto de los casos de estudio utilizó de igual manera Arduino
para recibir los datos externos, Revit como substituto de Rhino, y Dynamo como substituto de
Grasshopper. Los resultados fueron satisfactorios, pero concluyeron que Grasshopper y Rhino
tenían una respuesta más rápida al recibir los datos externos que Dynamo y Revit (Kensek,
2014). La Figura 8 muestra cómo se ajusta la fachada en Revit utilizando Dynamo al tener
distinta intensidad de luz solar.
Figura 8. Resultado Facha Paramétrica Ante Distinta Luz Solar. Citado de (Kensek, 2014)
En 2016 Ibrahim demuestra con su investigación la gran versatilidad que hay en el diseño
paramétrico, su investigación consistió en automatizar una persiana veneciana utilizando
diseño paramétrico en Grasshopper en donde el parámetro a leer en tiempo real era la luz solar,
con ayuda de los complementos Lady Bug y Honeybee para leer los ángulos e intensidad de la
luz brindadas por un hardware permitió simular en que posición se debería ajustar la persiana
para que la luz en el interior del edificio fuera la mejor y que no molestara a los usuarios.
Concluyeron que una persiana automatizada de manera paramétrica brinda mejores resultados
que una persiana común para el usuario (Ibrahim, Wagdy, Beccarelli, Carpenter , & Chilton,
2016).
20
En 2017 Muttio realizó un trabajo que tuvo como objetivo mostrar el desarrollo de una
aplicación computacional con la capacidad de definir parámetros para estructurar una
edificación, así obteniendo un campo de distintas soluciones en un lapso corto de tiempo,
obtener una propuesta optima en cuanto a su resistencia mecánica, disposición topológica y
que satisfaga las necesidades arquitectónicas solicitadas (Muttio, Botello, & Tapia, 2017).
En 2019 Pan realizó un trabajo para generar espacios multi funcionales y de grandes claros en
arenas deportivas utilizando diseño paramétrico y optimización con multi objetivos. Para el
recubrimiento en el techo consideraron tres tipos de estructuras, parrilla, marcos y celosías. El
espacio interior y exterior de la arena cambia dependiendo la distancia promedio del espectador
al centro de la arena, la distancia máxima de visión de diferentes actividades en la arena, ratios
de puntos ciego y obstrucción, ratio de asientos utilizados durante actuación en escenario, ratio
de asientos VIP con ángulo de visión horizontal al escenario y la acústica de la arena, al
optimizar estos parámetros y teniendo la flexibilidad de ir actualizado automáticamente el
modelo gracias a que fue modelado de forma paramétrica se genera el modelo más adecuado
para cada caso. Concluyeron que los resultados obtenidos para un diseño arquitectónico son
buenos, pero se requiere realizar más experimentación para generar modelos con cargas (Pan,
Turrin, Louter, Sariyildiz, & Sun, 2019). La Figura 9 muestra algunos de los modelos que se
generaron al modificar los parámetros de visión, acústica y peso estructural.
Figura 9. Modelos Generados con Distintos Parámetros. Citado de (Pan, Turrin, Louter, Sariyildiz, &
Sun, 2019)
La Figura 10 muestra un mapa conceptual en donde se presentan los programas actuales que
se utilizan en diseño paramétrica en el área de construcción, se divide en programas que
generan diseño paramétrico a partir de programación visual y programas que no requieren de
programación visual para realizar diseños paramétricos.
21
Figura 10. Programas Actuales para Diseño Paramétrico
22
Figura 11. Ejemplo de Optimización de Tamaño
23
2.2.1 Optimización metaheurística
El termino metaheurística se mencionó por primera vez en 1986 por Fred Glover en su artículo
sobre búsqueda del tabú, en un principio se rechazó que cambiara el termino heurístico por
metaheurístico, pero esto dio pie a nuevas investigaciones sobre el tema. Para definir la
optimización metaheurística primero se debe definir que es la optimización heurística el cual
es un procedimiento que permite resolver problemas de gran complejidad de manera intuitiva,
sabiendo esto la optimización metaheurística ejecuta procesos iterativos que permiten guiar y
modificar las operaciones heurísticas para dar una mejor calidad a las soluciones, de igual
manera toma como base procedimientos heurísticos para aplicarlo a distintos problemas
(Sörensen, Sevaux, & Glover, 2018).
Samuel Sánchez indica en su tesis que las técnicas metaheurísticas comparado con las técnicas
tradicionales de optimización (programación matemática, malla de puntos, técnica geométrica,
técnicas hibridas), no funcionan a través de métodos o reglas preexistentes de búsqueda, aun
así, las soluciones que proporcionan se consideran buenas y se obtienen en un periodo corto de
tiempo. Tiene el inconveniente de no garantizar la obtención del optimo absoluto en los
primeros resultados, esto hace necesario que el algoritmo tenga que llevar un proceso iterativo
para llegar a la solución óptima. Estos métodos son utilizando cuando no existe algún algoritmo
prestablecido que pueda optimizar el problema en cuestión. (Sánchez, 2012)
24
2.2.3 Investigaciones recientes sobre optimización estructural
Al hablar de optimización los trabajos realizados durante los últimos años tienen algo en
común, y es que la mayoría se enfoca en utilizar algoritmos que obtienen resultados a través de
iteraciones para lograr su objetivo. En el año 2012 Samuel Sánchez tuvo como objetivo en su
tesis doctoral generar un algoritmo de optimización evolutiva en Ansys (Ansys, 1970) que no
requiriera de una estructura predefinida para determinar y optimizar una geometría.
Normalmente al momento de realizar una optimización estructural se requiere de parámetros
de entrada que indirectamente predefinen una morfología inicial, para de esta manera no estar
limitado por las preconcepciones del proyectista. Con el algoritmo generado el siguiente
objetivo fue optimizar una estructura de diez barras y seis nodos en voladizo sujeto a
restricciones de tensión y desplazamiento, al no necesitar una estructura predefinida para
optimizar el modelo, el algoritmo solo requiere de la carga, número de apoyos y tipo de apoyos
(Sánchez, 2012). La Figura 14 muestra los resultados obtenidos tanto de Sánchez, como de
Ebenau y Balling en trabajos anteriores para comparar los resultados obtenidos a partir de
distintos algoritmos. El algoritmo de Ebenau solo permite variar las coordenadas de los nodos
superiores en el eje “y” por lo que el algoritmo desarrollado por Sánchez muestra un mejor
optimo y se demuestra como la manera de plantear el problema restringe el proceso de
búsqueda impidiendo obtener mejores resultados (Sánchez, 2012).
Figura 14. Resultados Obtenidos Por Diferentes Autores y Algoritmos. Citado de (Sánchez, 2012)
25
En 2014 Simonetti realizó una investigación para demostrar que los resultados obtenidos a
partir de la optimización topológica utilizando el sistema de las siglas en inglés SESO (Smooth
Evolutionary Structural Optimization) genera mejores resultados que el procedimiento
denominado ESO (Evolutionary Structural Optimization) en estructuras de tensión plana. La
teoría al pensar que el SESO genera mejores resultados que el sistema ESO viene de que si un
elemento no es necesario realmente para la estructura su contribución en cuanto a rigidez
estructural se va a ir reduciendo de manera gradual, por lo que remover este elemento se realiza
de manera suave. Simonetti comprobó obtener mejores resultados con el método SESO para
este tipo de estructuras y para estructuras de elasticidad bidimensional (Simonetti, Almeida, &
Neto, A smooth evolutionary structural optimization procedure applied to plane stress problem,
2014). La Figura 15 muestra como el remover la barra gradualmente con un mayor número de
interacciones en el método SESO tiene un menor efecto en las tensiones de la estructura,
mientras que al remover algún elemento de manera radical con el método ESO genera mayores
tensiones en la estructura.
Figura 15. Comparación de Resultados Método SESO y ESO. Citado de (Simonetti, Almeida, & Neto, A
smooth evolutionary structural optimization procedure applied to plane stress problem, 2014)
En 2018 Costanzi realizó una investigación sobre en el área de impresión de hormigón 3D. El
tema de impresión 3D es de bastante actualidad y ha ido evolucionando de manera acelerada.
En la actualidad existen moldes que se adaptan a la forma de la estructura que se desea
imprimir, ya que si se desea imprimir una estructura con cierta curvatura esto sería imposible
en un molde totalmente plano. Con lo anterior en mente el trabajo de Costanzi consistió en
26
optimizar la forma más adecuada del molde para la geometría a imprimir y de esta manera tener
la menor deformación posible entre la forma de la geometría deseada y el molde. Para el
proceso de optimización en el posicionamiento del molde se consideraron los siguientes pasos,
primero se definió la geometría considerando las limitaciones físicas de la impresora que
incluyen el mínimo radio de curvatura posible a imprimir y el ángulo máximo de inclinación
para evitar deformaciones y deslizamientos en la estructura. El segundo paso consistió el
colocar el modelo digital de la geometría a imprimir en un modelo digital del molde en
Grasshopper y posteriormente utilizando el algoritmo evolutivo llamado Galápagos se
optimizó la forma del molde considerando sus limitaciones reales para encontrar la forma más
adecuada con la geometría (Costanzi, y otros, 2018). La Figura 16 muestra de forma
esquemática el proceso realizado, en el paso uno en morado se encuentra la pieza seleccionada
a imprimir, el paso dos muestra el molde adaptado con la forma adecuada para la estructura y
el paso tres y cuatro muestra el proceso de impresión sobre el molde.
Figura 16. Proceso Propuesto de Impresión 3D de Concreto. Citado de (Costanzi, y otros, 2018)
27
Figura 17. Viga en Voladizo Utilizada en Optimización Topológica. Citada de (Simonetti H. L., Almeida,
Leitao, & Neves, 2019)
Figura 18. Viga Simplemente Apoyada Utilizada en Optimización Topológica. Citada de (Simonetti H. L.,
Almeida, Leitao, & Neves, 2019)
Las conclusiones que se presentaron fueron que los casos se analizaron para problemas
elásticos lineales bidimensionales. Al combinar el método BEM-ESO se obtuvo una mejora
considerable del costo computacional. Al calcular los esfuerzos con BEM es importante
controlar las cavidades virtuales generadas para que no haya degeneración en el proceso de
optimización topológica por lo que creen que en futuras investigaciones se pueden aplicar
funciones de forma más sofisticadas o expresiones analíticas para calcular con los esfuerzos
internos con una mayor calidad (Simonetti H. L., Almeida, Leitao, & Neves, 2019)
En 2019 Rombouts realizó un trabajo para proponer una manera de optimizar una estructura
de parrilla tensionada y simplemente apoyada. Lo que se buscó fue optimizar la forma de la
parrilla tomando y optimizando las fuerzas resultantes del proceso de instalación de la parrilla,
de esta forma se puede disminuir los efectos de las cargas externas y desplazamientos sobre la
parrilla. Para la optimización se utilizó el método llamado en inglés “moving asymptotes” que
consiste en mover las asíntotas superiores e inferiores para ajustar la curvatura de las funciones
aproximadas, es un método heurístico. El autor concluyó que el método de optimización
28
utilizado es efectivo especialmente para casos en donde las técnicas comunes para encontrar
una geometría de la parrilla no funcionan como en casis de parrillas simplemente apoyadas o
en voladizo. (Rombouts, Lombaert, De Laet, & Schevenels, 2019)
Em 2013 Kravanja utilizó el diseño paramétrico para optimizar una edificación industrial de
una planta utilizando un modelo MINLP (Mixed-Integer Non-Linear Programming). MINLP
permite generar un modelo y realizar una optimización a través de la modificación de distintos
parámetros para lograr distintos objetivos como reducir el peso de la estructura cumpliendo
con los requerimientos normativos (por ejemplo Eurocódigo) y optimizar la topología. Los
parámetros para modificar en el modelo MINLP fueron la carga vertical de nieve, carga
horizontal de viento, la luz de vano, la altura de los marcos principales de la edificación, tipo
de sección transversal y la resistencia del acero estructural. Esta metodología empleada permite
al diseñador decidir cuál es la estructura más conveniente al poder comparar gráficamente los
parámetros obtenidos en cada posible solución (Kravanja, Turkalj, Silih, & Zula, 2013).
30
Figura 20. Parámetros de las Edificaciones. Citado de (Taleb & Musleh, 2015)
En 2018 Tomei se publicó un trabajo sobre la optimización estructural sobre los patrones de
tipo diagrama en edificios altos (Tomei, Imbimbo, & Mele, 2018). El trabajo consistió en
optimizar el peso del edificio intentando diferentes patrones en el diseño como un patrón de
diagrama de 60°, 70° 80°, Angulo variable, doble densidad, densidad variable y líneas de
esfuerzo ISO como se muestra en la Figura 21.
Figura 21. Posibles Patrones de Diagrama Durante Optimización. Citado de (Tomei, Imbimbo, & Mele,
2018)
31
verificar los resultados (Tomei, Imbimbo, & Mele, 2018). La Figura 22 muestra la comparación
de las derivas entre los diferentes patrones.
Figura 22. Comparación de Derivas entre los Patrones. Citado de (Tomei, Imbimbo, & Mele, 2018)
El objetivo de este trabajo fue obtener el patrón de diseño optimo considerando el peso más
bajo como lo óptimo, pero se dieron cuenta que no siempre el más pesado es el más barato y
es por eso que se grafica el grado de complejidad en la construcción que es lo que podría elevar
el costo del edificio además del peso. En este caso concuerda que los de menor peso son los de
menor grado de complejidad. Comparando los resultados obtenidos por este método los
resultados obtenidos fueron siempre de menos peso comparado con los resultados obtenidos a
través de métodos tradiciones, por lo que se puede concluir que el método funciona de forma
adecuada (Tomei, Imbimbo, & Mele, 2018)
Figura 23. Software y su Proceso de Comunicación. Citado de (Yang, Ren, Turrin, Sariyildiz, & Sun,
2018)
33
La optimización contiene dos fases de variables, la primera es un conjunto de diseños
predefinidos del exterior del gimnasio observados en la Figura 24. El objetivo no es solo
estructuralmente hablando sino obtener una estructura que sea capaz de trabajar junto con la
luz ambiental para poder tener un gasto de energía durante la operabilidad más bajo que con
otros diseños (Yang, Ren, Turrin, Sariyildiz, & Sun, 2018)
Figura 24. Parámetros Externos de Estructura Exterior Predefinidas. Citado de (Yang, Ren, Turrin,
Sariyildiz, & Sun, 2018)
34
3 Herramientas
3.1 Rhinoceros 3D
Rhinceros 3D, también denominado como Rhino es un programa bajo licencia propietaria
(GPL) que permite acceder a una versión de evaluación durante tres meses, esta herramienta
permite crear, editar, analizar, documentar, renderizar, animar y traducir curvas NURBS,
superficies, solidos, nubes de puntos y mallas poligonales (McNeel & Associates, 2019).
Figura 25. Logotipo de Rhinoceros 3D. Citado de (McNeel & Associates, 2019)
35
Figura 26. Ejemplo de uso de NURBS. Citado de (McNeel, 2019)
Además de poseer sus propias herramientas, Rhino contiene herramientas para desarrolladores
que permiten una mayor flexibilidad con el usuario como lo son RhinoCommon (.NET),
Grasshopper, rhino.Python, RhinoScript, administrador de licencias para plug-ins del Zoo y
Rhino Installer Engine, Rhino posee código abierto lo que permite aún más a que el usuario
pueda interactuar de manera personalizada con el programa (McNeel & Associates, 2019).
Figura 27. Estructura Generada en Rhinoceros 3D. Citado de (McNeel & Associates, 2019)
36
3.2 Grasshopper
Grasshopper es un editor de programación visual desarrollado por David Rutten en Robert
McNeel & Associates. Grasshopper es un componente de Rhino3D que se puede utilizar por
profesionales en diferentes campos de trabajo y estudio como lo es la arquitectura, ingeniería,
diseño de productos y más. Grasshopper junto con Rhino ofrece la oportunidad al usuario de
tener un control paramétrico sobre los modelos realizados, además de brindar una plataforma
para desarrollar programas de alto nivel sobre una interfase grafica muy intuitiva (Gil &
Parsons, 2014).
37
Figura 29. Interfaz de Grasshopper. Citado de (Gil & Parsons, 2014)
38
Figura 30. Programación Visual en Grasshopper y su Modelo Visual en Rhino, Citado de (Gil & Parsons,
2014)
Figura 31. Proceso de Modelar una Curva a Través de Grasshopper en Distintos Métodos. Citado de (Gil
& Parsons, 2014)
3.3 Karamba 3D
Karamba 3D es un programa de elementos finitos como muchos otros, pero tiene la
particularidad de que se encuentra insertado en un entorno de programación visual como
Grasshopper. Es sencillo de utilizar, se ha ajustado a las necesidades de ingenieros y arquitectos
39
en las fases temprana de diseño y trabaja de forma interactiva a un costo menor al resto de los
programas (Preisinger, Linking Structure and Parametric Geometry, 2013).
Figura 32. Logotipo de Karamba 3D. Citado de (Preisinger, Karamba 3D Parametric Enginerring, 2019)
40
• Carga: Acción externa que se impone a la estructura.
• Sección Transversal: Define la sección de la geometría de los elementos.
• Material: Provee la información sobre el comportamiento físico del material provisto a
la sección del elemento.
• Soportes: Define como se conecta la estructura con el suelo u otros elementos.
Los objetos de Karamba 3D se comportan como las entidades de Grasshopper que se pueden
guardar en contenedores y pueden convertir en texto la información conectando los
componentes como los paneles, de esta forma se pueden observar las propiedades
fundamentales obtenidas durante sus procesos. Karamba 3D no requiere proveerse de toda la
información descrita anteriormente, en caso de no contar con material por default se considera
acero S235 de acuerdo con el Eurocódigo 3 (EN 1993-1-1, 2005), también el tipo de sección
por default se considera como una sección circular de 114.4 milímetros de diámetro y espesor
de 4 milímetros (Preisinger, Karamba 3D Parametric Enginerring, 2019). La Figura 34 muestra
el procedimiento simple para una viga en cantiléver programado en Karamba 3D.
Figura 34. Viga en Cantilever Modelada Utilizando Grasshopper y Karamba 3D. Citado por (Preisinger,
Karamba 3D Parametric Enginerring, 2019)
41
3.4 Galápagos
Galápagos es un solucionador de algoritmos genéticos evolutivos de objetivo simple, este
componente aplica lógica evolutiva para solucionar problemas específicos (Rutten, 2010).
Galápagos es un componente que forma parte de Grasshopper, por lo que tiene una interacción
completa con cualquier componente que se utilice dentro de Grasshopper.
Como toda herramienta tiene sus pros y sus contras, alguna de sus desventajas es que como
cualquier algoritmo evolutivo dependiente el proceso es lento, Si tiene procesos muy complejos
puede llegar a tardar días o hasta semanas en correr el procedimiento. Otra desventaja es que
no garantiza obtener una solución, por lo que se debe definir muy bien los parámetros a utilizar.
Además de sus desventajas tiene grandes ventajas como que son muy flexibles ya que puede
operar sobre diferente tipo de problemas, otra ventaja es que, aunque no se formulen muy bien
los problemas a solucionar el algoritmo lo pueden procesar de manera adecuada ya que su
proceso es progresivo. Una de las mejores ventajas es que tiene una gran interacción con el
usuario, el proceso es muy transparente y se pueden encontrar subramas de buenos resultados
óptimos (Rutten, 2010).
Para funcionar al algoritmo requiere de cinco partes (la mayoría ocurren de manera interna
dentro de Galápagos) que se podría llamar como su anatomía (Rutten, 2010):
42
Un ejemplo corto de cómo funcionan los algoritmos evolutivos es el siguiente, la Figura 36
muestra el objetivo a optimizar con dos variables, que representan dos valores que pueden
cambiar, en computación evolutiva las variables se denominan genes. Conforme se cambia el
gene A el modelo mostrado puede mejorar o empeorar de acuerdo con su objetivo, pero para
cada valor del gene A también se puede variar el gene B resultado en una mejor o peor
combinación entre ambos parámetros. El objetivo del ejemplo es encontrar el pico más alto del
modelo en la Figura 36. Cuando se coloca en un algoritmo evolutivo el algoritmo no sabe la
forma por lo que su primer paso interno es poblar el modelo con una colección al azar de
individuos o genomas, los genomas son valores que existen para cada gene, después de evaluar
los resultados se obtiene el resultado en la Figura 37. Después de saber que tanto se acercan
los resultados al objetivo se puede hacer una jerarquía entre los mejores y peores resultados, es
entonces cuando el algoritmo “mata” a los genomas que no se adaptan haciendo referencia a
términos evolutivos, por lo que los resultados restantes mostrados en la Figura 38 son los que
mejor se adaptan al resultado. Lo que hace Galápagos es repetir el procedimiento hasta obtener
un mejor resultado (Rutten, 2010).
43
Figura 37. Población de Individuos del Ejemplo. Citado de (Rutten, 2010)
La Figura 40 muestra la pestaña llamada solvers dentro del interfaz de Galápagos, en esta
sección de la interfaz es donde se corre el programa y se despliegan todos los resultados que se
han obtenido durante el proceso iterativo en la ventana inferior derecha.
45
Figura 40. Interfaz de Galápagos Pestaña de Solvers
3.5 Octopus
Octopus es un componente para resolver problemas con algoritmos evolutivos orientado a
diseño paramétrico (Vierlinger, 2012).
46
Al ser un algoritmo evolutivo, Octopus trabaja haciendo el mismo proceso lógico que
Galápagos, la diferencia se encuentra en que Octopus introduce el principio de Pareto para
poder trabajar a partir de múltiples objetivos (Vierlinger, 2012). Su interfaz se puede observar
en la Figura 42, los cuadros que se grafican representan los resultados que se obtienen tras
diferentes iteraciones y para el ejemplo de la imagen cada eje representa un parámetro que para
este caso son distancia, flecha y número de columnas, a partir de estos parámetros se van
situando los resultados de manera gráfica. Dentro de los ajustes que se ven del lado derecho se
puede modificar la velocidad de las iteraciones, número máximo de iteraciones y el intervalo
de tiempo.
47
Parte de las tareas que puede realizar Octopus son las siguientes (Vierlinger, 2012):
48
4 Casos de estudio
Ya se definió que es y como funciona el diseño paramétrico a treves del programa Rhino y su
complemento Grasshopper, se sabe la funcionalidad de los algoritmos genéticos de los
complementos Galápagos y Octopus para optimizar y se conoce que el complemento Karamba
3D para análisis y verificación estructural, a continuación, se define la metodología aplicada y
como se utilizaron los programas mencionados anteriormente para optimizar tres casos de
estudio.
• El segundo caso de estudio es una celosía empotrada mostrada en la Figura 66 con carga
puntual al centro de la celosía. Para este caso de estudio se generó un modelo
paramétrico utilizando Rhino y su complemento Grasshopper. Al igual que caso
anterior se utilizó Karamba 3D para realizar la simulación estructural. En este caso el
proceso de optimización fue diferente, primero se realizó una optimización topológica
utilizando el componente de Karamba 3D llamado ‘eliminar componentes’ para
eliminar elementos de la celosía que no se requieren y aligerar la estructura,
posteriormente se utilizó el complemento de Grasshopper llamado Galápagos que a
partir de algoritmos genéticos optimizó la estructura en dos fases, primero la geometría
de la estructura modificando el peralte de la estructura y el número de secciones y
posteriormente optimizando los perfiles de la estructura buscando obtener perfiles con
altos ratios de utilización y menor peso de la estructura. En este mismo caso de estudio
se realizó un proceso alterno en la optimización utilizando una combinación de los
49
complementos Octopus y Galápagos. En este proceso alterno el complemento Octopus
se utilizó para optimizar el peralte y número de secciones de la estructura, mientras que
Galápagos se utilizó para optimizar el tamaño de la estructura es decir el tipo de perfiles
utilizados.
• El tercer caso de estudio es una viga armada simplemente apoyada con carga distribuida
mostrada en la Figura 106. Para este caso de estudio se generó un modelo paramétrico
utilizando Rhino y su complemento Grasshopper, pero a diferencia de los casos
anteriores la geometría de la viga al tener parámetros variables por el usuario en cuanto
a canto, longitud, espesores de patines y almas y ancho se utilizó un componente de
Grasshopper de programación en código Python para modelar el perfil. Rhino cuenta
con un entorno de clases, objetos y métodos llamado Rhino Geometry que a partir de
comandos existentes en código facilita la conectividad entre el código en Grasshopper
y el modelo visual de Rhino. Para este caso no se utilizó Karamba 3D para simulación
estructural ya que al tener un perfil que no es estándar se dificulta la interacción con el
modelo, por lo que se optó por utilizar otro componente Grasshopper de programación
en código de Visual Basic, en este componente se generó un código para realizar las
verificaciones estructurales a partir del Eurocódigo 3 y al mismo tiempo contiene las
limitaciones necesarias para el proceso de optimización de la estructura. Para este caso
de estudio se realizaron dos alternativas en el proceso de optimización, la primera
constó en utilizar Galápagos para generar la viga armada modificando sus parámetros
de canto, ancho de los patines y espesor de las placas en los patines y alma, todo esto
mientras su objetivo consta de obtener el menor peso posible, cumplimiento de flecha
y mayor ratio de utilización estructural de la viga. La segunda alternativa de
optimización constó de utilizar el complemento Octopus en lugar de Galápagos
modificando los mismos parámetros y buscando el mismo objetivo que la alternativa
mencionada anteriormente.
50
4.1 Primer caso de estudio
En el primer caso de estudio se ha diseñado una viga simplemente apoyada mostrada en la
Figura 43 considerando los siguientes parámetros:
• Luz por cubrir: 8 metros.
• Tipo de acero: S275.
• Carga puntual permanente al centro de la viga adicional al peso propio de 26 kN.
• Carga axial permanente de 75kN.
• Catálogo para optimizar el elemento limitado a perfiles HEB.
• Catálogo para optimizar el elemento con disponibilidad de perfiles HEB e IPE.
El primer caso de estudio sirvió para verificar la funcionalidad de los complementos para
optimizar perfiles de acero incluidos en Karamba 3D y al mismo tiempo analizar las
limitaciones de este complemento.
51
4.1.1 Criterio para mayoración de cargas
Las cargas se mayoraron de acuerdo con la tabla A1.2 que se muestra en Eurocódigo y en la
Figura 44 (EN 1990, 2002).
Para estado límite último las cargas se mayoraron por 1.35 mientras que para el estado límite
de servicio las cargas se mayoraron por el coeficiente de 1.0.
52
Figura 45. Definición Geométrica de la Viga Programada
Al deslizar los valores dentro de los parámetros de punto inicial y punto final mostrados en la
Figura 45 es como se puede modificar el modelo de forma instantánea.
53
Al definir los elementos los nodos se numeran de izquierda a derecha como en la Figura 48.
54
utilizado para estado límite de servicio y estado límite último, así como sus factores de
amplificación.
55
Figura 51. Catálogo de Perfiles de Acero
56
Figura 53. Análisis Estructural del Elemento
57
Figura 55. Momento Actuante en Estado Límite de Servicio
Los resultados que se obtuvieron del análisis se encuentran resumidos en la Tabla 3, el cual
los muestra por su respectivo caso de carga.
58
Tabla 3. Resumen de Resultados
Estado Límite de Servició Estado Límite Último
Caso de Carga 0 1
Momento máx. (kN*m) -52 -70.20
Axil máx. (kN) -75 101.25
Cortante máx. (kN) 13 17.55
59
Figura 58. Anejo B Método 2 para Obtener Factores kij. Citado de (EN 1993-1-1, 2005)
Figura 59. Valores Límite Recomendados para Flechas Verticales. Citado de (Gulvanessian & Holicky,
1996)
60
Con los parámetros asignados se obtuvo como resultado la viga HEB 220 en la Figura 60.
Un error al utilizar la herramienta de Karamba 3D para optimizar los perfiles es que las
verificaciones y las flechas las obtiene del resultado más grande entre los casos asignados como
parámetros en las cargas, es decir que la verificación la realiza con las cargas de estado límite
último y las flechas también las verifica el resultado obtenido por las cargas en estado límite
último sin tomar en cuenta el estado límite de servicio. Probablemente la viga se podría
solucionar con un perfil HEB menor, pero al tener una flecha mayor se asignó un perfil más
grande. Se puede considerar como que el diseño es seguro ya que el error se encuentra del lado
de la seguridad, pero en estructuras complejas esto podría significar mucho dinero.
61
Tabla 4. Resumen de Parámetros Utilizados en Verificaciones de Perfil HEB 220
Perfil Seleccionado HEB 220
Ratio de Utilización 0.59
Flecha Admisible (cm) 2.67
Flecha Obtenida (cm) 2.25
NRd (kN) 2503.6
VyRd (kN) 1137.44
MtRd (kN*m) 7.62
MyRd (kN*m) 202.26
MzRd (kN*m) 71.09
Mcr (kN*m) 256.39
Ncry (kN) 2620.24
Ncrz (kN) 920.7
CMy 1
CMz 1
CMLT 1
ꭓy 0.6114
ꭓz 0.2708
ꭓLT Mod 0.7669
kyy 1.0388
kzz 1.0896
kyz 1.0896
kzy 0.9836
62
Figura 62. Complemento de Catálogo con Perfiles IPE
Al agregar el nuevo complemento los posibles perfiles abarcan desde HEB 100 hasta HEB
1000 y desde IPE 80 hasta IPE 600. Con el nuevo catálogo el nuevo perfil seleccionado fue el
IPE 400 de la Figura 63.
63
estado límite de servicio, de esta forma evitar la optimización de ambos casos de carga en
conjunto y evitar estructuras sobre diseñadas. Un ejemplo donde sería necesario evaluar los
resultados con estado límite de servicio y estado límite último por separado sería en un
elemento de gran longitud y donde la carga no es muy grande, en este caso sería sencillo que
el elemento cumpliera por resistencia, pero en estado límite último la flecha podría variar
significativamente con respecto a la de flecha en estado límite de servicio, por lo que sería
necesario tener especial cuidado en este tipo de casos al realizar la optimización.
64
4.2 Segundo caso de estudio
Para el segundo caso de estudio se diseñó una celosía empotrada en sus puntos de apoyo,
considerando los siguientes parámetros:
• Luz por cubrir: 20 metros.
• Tipo de acero: S235.
• Carga puntual permanente al centro de la celosía adicional al peso propio de 350 kN.
• Catálogo para seleccionar elementos limitado a perfiles HEA.
Los elementos para la programación gráfica que se utilizaron para este caso se encuentran en
la Figura 64. Comparado con el primero caso de estudio este caso tiene una mayor cantidad de
complementos ya que la celosía se compone por un mayor número de elementos y esto provoca
que el proceso de parametrizarlo sea más extenso. Para este caso se realizó la optimización de
la celosía utilizando el complemento de Galápagos y Octopus, de esta forma se analizó las
ventajas que se tienen al optimizar de esta manera.
Deslizando los valores en los parámetros de punto inicial y punto final en la Figura 65 es como
se puede variar la longitud de la celosía, de igual forma deslizando los parámetros de canto y
número de divisiones modifica instantáneamente esos parámetros en la geometría.
66
4.2.3 Simulación estructural
Para realizar una comunicación entre la geometría programada en Grasshopper y Karamba 3D
se utiliza el complemento de la Figura 67 el cual ayuda a definir el elemento como una
geometría estructural. A diferencia de la viga del primer caso de estudio en este caso se tienen
distintos elementos, estos elementos se deben diferenciar desde este punto del modelo de esta
manera se pueden trabajar en procesos posteriores. Los estribos superiores e inferiores se
designaron de tipo A, los elementos verticales se clasificaron de tipo B y los elementos
diagonales que se encontraban en la celosía desde la mitad hacia el lado izquierdo de
denominaron como C2, mientras que las del lado derecho se denominaron como C1. La Figura
68 muestra el modelo de la celosía con sus elementos clasificados.
67
4.2.4 Definición de los apoyos
Con los nodos y los elementos ya definidos se procedió a colocar los apoyos de tal forma que
la celosía se encuentra empotrada en sus extremos. Para el segundo caso de estudio los apoyos
se asignaron de forma diferente al primer caso, en este caso se colocaron las coordenadas de la
geometría en donde se asignan los puntos como muestra la Figura 69. La geometría se
encuentra modelada de tal forma que, si se modifica la longitud o el número de segmentos, las
coordenadas de los puntos de apoyo siempre serán las mismas.
Como parte de los apoyos al ser una celosía se definieron como articulaciones los elementos
C1 y C2 mostrado en la Figura 70. Definir las articulaciones en este modelo fue importante ya
que si no se definen los elementos diagonales no trabajan en conjunto con la estructura.
68
4.2.5 Definición de las cargas
La carga se definió de acuerdo con la Figura 71. Esta carga, su posición y dirección se encuentra
descrita en la Tabla 6. Al enfrentar la misma limitante que el caso de estudio anterior sobre los
casos de carga, se introducen de forma, es decir que se describió el número de caso de carga y
se introdujo el valor del caso carga. En la Tabla 7 se describió el caso de carga utilizado para
estado límite de servicio y estado límite último, así como sus factores de amplificación.
69
4.2.6 Definición de materiales
El tipo de material y catálogo de perfiles se programó de acuerdo con la Figura 72.
La forma en que funciona es la siguiente, el selector de perfiles por rango mostrado en la Figura
73 provee de un catálogo con perfiles HEA desde el HEA 100 hasta el HEA 1000. El selector
de materiales en la Figura 74 determina el tipo de material y su clase, para este caso de estudio
se utilizó acero S235. Los componentes deslizantes en la Figura 75 determinan el perfil que se
seleccionó de la lista disponible, estos tres componentes eligen un perfil para los elementos
tipo A, otro para los tipos B y otro para los elementos tipo C1 y C2, de esta manera se pueden
tener diferentes perfiles por tipo de elemento en la celosía. Finalmente, el perfil seleccionado
se traslada el selector de perfiles en la Figura 76, este componente contiene la información
definitiva sobre el tipo de material y tipo de perfil que se seleccionó para cada elemento.
70
Figura 73. Componente de Selección por Rango de Perfiles
71
Figura 76. Selector de Perfiles
72
4.2.8 Optimización topológica
La celosía contaba con muchas barras por lo que se eliminaron las barras a tensión con el
componente de eliminación de elementos en la Figura 78. Los parámetros introducidos fueron
los tipos de elementos a eliminar que en este caso fueron los C1 y C2 y el otro parámetro es
para indicar que elemento eliminar, para este caso se indicaron los elementos a tensión de los
elementos C1 y C2.
73
4.2.9 Análisis estructural y su resultado
El análisis estructural se realizó con el complemento de análisis en la Figura 80, este
complemento obtiene las flechas utilizando teoría de primer orden. El desplazamiento obtenido
es para estado límite de servicio se encuentra en el caso de carga 0 y para el estado límite último
en el caso de carga 1.
74
Figura 81. Resultados del Modelo
75
Figura 83. Numeración de los Elementos en la Celosía
76
4.2.11 Optimización a partir de Galápagos
La optimización con Galápagos se divide en dos fases, optimizar la geometría y optimizar el
tamaño de la estructura. Optimizar la geometría se refiere al hecho de variar el peralte y número
de segmentos de la celosía, mientras que optimizar el tamaño se refiere a el tipo de perfiles a
asignar a cada elemento. El componente de Galápagos se observa en la Figura 84.
Galápagos cuenta con dos parámetros el “Genome” que es lo que se busca modificar y el
“Fitness” que el objetivo que se busca lograr modificando los parámetros en el “Genome”.
Galápagos solo puede tener un objetivo para optimizar, es decir que si se quiere una estructura
óptima el objetivo del componente será minimizar el peso de la estructura, un desplazamiento
que cumpla los requerimientos de diseño y elementos estructurales trabajando lo más cercano
posible al 100% de su capacidad. Teniendo en cuenta los requisitos del objetivo a cumplir se
utilizó un componente de función observado en la Figura 85. La función establecida se decidió
por conveniencia y necesidad de esta manera para este caso de estudio, pero es importante
mencionar que se puede personalizar dependiendo de los objetivos que se desean conseguir en
el proceso de optimización.
77
El componente de la Figura 85 tiene cuatro parámetros de entrada, el primero es la función y
los otros tres parámetros son las variables que se utilizan en la función establecida. La función
es la suma de la masa de la estructura en el parámetro “m”, la flecha en el parámetro “d” y el
valor absoluto de la diferencia entre los ratios de utilización menos uno con la variable “r” para
obtener un valor menor que 1. Lo que se buscó es que tomara los ratios de utilización de cada
uno de los elementos de la celosía para ir verificando la función con cada uno de los ratios y
de esta forma se convirtió el resultado de la función en el parámetro “Fitness” del componente
Galápagos. Como se mencionó en el apartado anterior la función objetivo no siempre tiene que
ser igual, esta se puede ajustar dependiendo de las necesidades de cada usuario y colocar
distintos parámetros. Los parámetros para modificar, es decir el “Genome” para lograr el
objetivo se encuentran en la Figura 86.
Las variaciones de los parámetros pueden ser infinitas por lo que se requieren imponer ciertas
limitaciones antes de utilizar los parámetros como datos de entrada para la función “Fitness”
de Galápagos. En la Figura 87 se encuentra el componente de Visual Basic llamado “limitar
Canto” (Ver Anejo 1) este componente se maneja como cualquier otro componente de
Grasshopper pero la diferencia es que al acceder dando doble click, se puede programar en
código como se observa en la Figura 88 para generar componentes con nuevas funciones
personalizadas dentro de Grasshopper, las variables a utilizar en el código se pueden obtener
de forma externa, es decir que los valores se pueden conectar al componente de Visual Basic
78
para utilizarlos como variable o se pueden definir internamente dentro de la ventana de código
de Visual Basic. El componente para limitar el canto tiene como parámetros de entrada el canto
de la celosía, el peso de la estructura y la longitud, lo que hace es verificar si el canto se
encuentra entre L/15 y L/10, si cumple con el límite el peso de la estructura se mantiene real y
si no cumple el peso lo modifica a 10000, de esta forma al generar un número muy grande
Galápagos va a cambiar los parámetros hasta cumplir el límite y generar un peso menor. El
resultado se este componente se traslada el parámetro “m” en la Figura 85.
Figura 88. Venta Para Programar en Código del Componente de Visual Basic
79
El siguiente parámetro que se filtró fue el desplazamiento con el componente en la Figura 89
llamado “limitar desplazamiento” que fue programado (Ver Anejo 2). En el primer caso de
estudio durante la optimización era imposible verificar la flecha en estado límite de servició y
verificar la estructura en estado límite último, con este método es posible realizar la verificación
de forma correcta, lo que se hizo fue alimentar el componente “limitar desplazamiento” con el
desplazamiento obtenido en estado límite de servicio, de esta manera la optimización se realizó
en base al parámetro indicado. Lo que se realizó en este componente fue verificar si el
desplazamiento en estado límite de servicio era menor al límite impuesto de L/300, este límite
se utilizó también durante el primer caso de estudio, si el desplazamiento cumplía se mantenía
igual y en caso de no cumplir se aumentaba a 1000, este dato se insertó como parámetro de
entrada en la función “Fitness” de Galápagos de esta forma si Galápagos detectaba un valor de
desplazamiento muy alto su objetivo iba a ser reducirlo.
El siguiente parámetro a filtrar fue los ratios de utilización, estos datos se trataron en diferentes
fases. Primero se obtuvieron los ratios con el componente de utilización de la Figura 90, este
componente obtiene los ratios de acuerdo el Eurocódigo 3 y el Anexo B mostrado en la Figura
58, también numera los ratios de acuerdo a la numeración de los elementos de la Figura 83.
Los ratios mostrados se obtienen a partir del caso de carga que genera mayores esfuerzos, es
decir que los obtiene a partir de estado límite último.
80
Figura 90. Componente de Utilización
Una vez que se obtuvieron los ratios se utiliza el componente programado llamado “verifica
ratio” de la Figura 91 (Ver Anejo 3), este componente tiene como datos de entrada los ratios
de utilización, filtra los valores de la lista obtenida y verifica que ningún valor sea mayor a 1,
ya que si alguno es mayor a 1 el elemento en cuestión va a fallar. Si uno de los valores es mayor
a 1 lo modifica a 1000.
81
Figura 91. Componente en Código para Verificar Ratios
Al terminar el filtro de información los datos pasan por otro componente programado llamado
“convertir a mil” de la Figura 92 (Ver Anejo 4), este componente tiene como datos de entrada
la lista de ratios modificada de la Figura 91 y un componente que mide el tamaño de la lista
introducida, lo que hace es que si detecta un valor de 1000 en la lista convierte todos los valores
a 1000, esto se hace porque la lista de ratios se conecta como parámetro de entrada en la función
de optimización de Galápagos y si detecta algunos números en 1000 y otros más pequeños se
va a confundir y no va a optimizar de manera adecuada teniendo como resultado ratios de
utilización mayores a 1. La lista obtenida se introduce como parámetro “r” en la función de
optimización de la Figura 85. Cabe destacar que la estrategia utilizada para colocar las
limitaciones y los filtros necesarios para la optimización se deshicieron de manera personal
para este caso de estudio, se pueden obtener los mismos resultados realizando diferentes
procedimientos y siguiendo distintas estrategias.
82
Figura 92. Componente en Código para Convertir a Mil
Al tratar los datos se obtiene una lista de resultados mostrado en la Figura 93, esta lista suma
el peso de la estructura, la flecha de la estructura y el ratio de cada elemento de la celosía, este
resultado se vuelve el objetivo de Galápago y se busca minimizar estos valores para obtener el
resultado óptimo.
83
Con la función lista se ejecutó el componente de Galápagos mostrado en la Figura 94, este
comienza a hacer simulaciones variando los parámetros que se establecieron, cumpliendo las
restricciones que se impusieron y tomando en cuenta distintas posibilidades en las
combinaciones de los parámetros.
El resultado obtenido por Galápagos se muestra en la Figura 95. Los perfiles que se
seleccionaron se encuentran en la Tabla 9 y el canto, peso y número de divisiones que
resultaron se encuentran en la Tabla 10.
84
Tabla 9. Perfiles Obtenidos con Galápagos
Elemento Perfil
A HEA240
B HEA140
C1 HEA120
C2 HEA120
Los ratios de utilización obtenidos con Galápagos se muestran en la Figura 96, dichos ratios se
encuentran numerados de acuerdo con la Figura 83. Muchos de los valores se encuentran
cercanos a 1 y algunos no tanto, eso se debe a que al ser una carga puntual los elementos que
más trabajan se encuentran cerca de la carga, los elementos con menor ratio de utilización se
encuentran más alejados, pero al encontrarse vinculados por el mismo tipo de elemento todos
los elementos tipo A son iguales, todos los tipo B son iguales y los C1 y C2 son iguales, si se
quisiera tener una mayor optimización se podría permitir variabilidad entre los elementos
internos de la celosía y aumentar el catálogo de perfiles para tener mayores posibilidades de
ajustar un perfil más adecuado. Es importante mencionar que los valores marcados como 0 en
la Figura 96 se debe a que el elemento con ese número no existe en el modelo.
85
Figura 96. Ratios de Utilización Obtenidos por Galápagos
86
soluciones obtenidas durante el proceso de optimización, no todos son buenos resultados,
simplemente muestra los resultados que se van obteniendo durante sus iteraciones y
dependiendo en que espacio de la gráfica los ubica los parámetros son diferentes, por ejemplo
si la estructura se encuentra en un nivel más alto del eje y sus segmentos son más grandes o su
tamaño es más grande.
Una vez que finalizó el simulador de Octopus se utilizó el componente de Galápagos. Los
parámetros a modificar para Galápagos fueron los perfiles de los elementos de la celosía y su
objetivo a verificar fueron los ratios de utilización, como no se puede optimizar directamente
con los ratios se utilizó la ecuación de la Figura 98, esta pequeña función renta a 1 el valor de
los ratios y esto hace que al minimizar el resultado de esta función los ratios reales sean lo más
cercanos posibles a 1. La optimización obtenida con Galápagos es la optimización de tamaño
de los perfiles. Se requirió repetir el proceso de utilizar Octopus y Galápagos ya que al utilizar
dos componentes que ajustan diferentes parámetros de la estructura se debe realizar un proceso
iterativo hasta que el resultado converja, este proceso se realizó tres veces.
87
El modelo que resultó de la primera iteración se muestra en la Figura 99. La Tabla 11 contiene
un resumen de los perfiles asignados a la celosía y la Tabla 12 muestra el canto, número de
segmentos, peso y flechas.
La Figura 100 muestra el resultado para la segunda iteración y la tercera ya que convergió
durante la tercera iteración. La Tabla 13. Perfiles Seleccionados para Celosía en Segunda y
Tercera Iteración contiene un resumen de los perfiles asignados a la celosía y la Tabla 14
muestra el canto, número de segmentos, peso y flechas. Los elementos numerados se
encuentran muestran en la Figura 101.
88
Figura 101. Numeración de Elementos Segunda y Tercera Iteración con Octopus y Galápagos
La Tabla 15 contiene una comparación de resultados entre ambos métodos realizados, tanto
con el componente Galápagos y el método utilizando Octopus junto con Galápagos. El segundo
método tiene sus elementos con mayores ratios de utilización, pero en cuanto a peso, flecha y
una menor diferencia entre el tamaño de los elementos utilizados el primero método consiguió
mejores resultados. Los ratios de utilización en la Tabla 15 se encuentran numerados de
acuerdo a la Figura 83 y Figura 101.
89
Tabla 15. Comparación de Resultados entre Galápagos y Octopus en Conjunto con Galápagos
Comparación de Resultados entre los Métodos
Método de Optimización Galápagos Octupus y Galápagos
Canto (m) 2 2
# de Divisiones 8 10
Peso (kg) 3366.22 3635.36
Flecha (cm) 2.63 2.51
Perfil Elemento A HEA240 HEA260
Perfil Elemento B HEA140 HEA120
Perfil Elemento A HEA120 HEA100
Perfil Elemento A HEA120 HEA100
Ratio Elemento 0 0.7548 0.7564
Ratio Elemento 1 0.1439 0.1568
Ratio Elemento 2 0.1338 0.0509
Ratio Elemento 3 0.5186 0.1660
Ratio Elemento 4 0.5186 0.5291
Ratio Elemento 5 0.1338 0.5291
Ratio Elemento 6 0.1439 0.1660
Ratio Elemento 7 0.7548 0.0509
Ratio Elemento 8 0.1819 0.1568
Ratio Elemento 9 0.4110 0.7564
Ratio Elemento 10 0.5598 0.1109
Ratio Elemento 11 0.9932 0.2654
Ratio Elemento 12 0.9932 0.3913
Ratio Elemento 13 0.5598 0.4786
Ratio Elemento 14 0.4110 0.9101
Ratio Elemento 15 0.1819 0.9101
Ratio Elemento 16 0.4839 0.4786
Ratio Elemento 17 0.7238 0.3913
Ratio Elemento 18 0.6423 0.2654
Ratio Elemento 19 0.6852 0.1109
Ratio Elemento 20 0.7363 0.5014
Ratio Elemento 21 0.6852 0.8316
Ratio Elemento 22 0.6423 0.7759
Ratio Elemento 23 0.7238 0.7810
Ratio Elemento 24 0.4839 0.7723
Ratio Elemento 25 N/A 0.9172
Ratio Elemento 26 N/A 0.7723
Ratio Elemento 27 N/A 0.7810
Ratio Elemento 28 N/A 0.7759
Ratio Elemento 29 0.5834 0.8316
Ratio Elemento 30 0.6873 0.5014
Ratio Elemento 31 0.6620 N/A
Ratio Elemento 32 0.6276 N/A
Ratio Elemento 33 0.6245 N/A
Ratio Elemento 34 0.6620 N/A
Ratio Elemento 35 0.6873 N/A
Ratio Elemento 36 0.5834 0.5604
Ratio Elemento 37 N/A 0.752
Ratio Elemento 38 N/A 0.7366
Ratio Elemento 39 N/A 0.7273
Ratio Elemento 40 N/A 0.6184
Ratio Elemento 41 N/A 0.6184
Ratio Elemento 42 N/A 0.7273
Ratio Elemento 43 N/A 0.7366
Ratio Elemento 44 N/A 0.752
Ratio Elemento 45 N/A 0.5604
90
4.3 Tercer caso de estudio
Para el tercer caso de estudio se diseñó una viga armada simplemente apoyada considerando
los siguientes parámetros:
• Luz por cubrir: 30 metros.
• Tipo de acero: S275.
• Carga distribuida de 80 kN/m.
Los elementos para la programación gráfica que se utilizaron para este caso se encuentran en
la Figura 102. Comparado con el primer y segundo caso de estudio la programación gráfica
para este caso es mucho menos densa en cantidad de complementos utilizados, pero más
extensa en cuanto en cuanto al código utilizado, ya que este caso en su mayoría se realizó con
programación en Python y Visual Basic. La optimización se realizó con Galápagos y Octopus
de manera independiente.
91
4.3.1 Criterio para mayoración de cargas
Las cargas se mayoraron de acuerdo con la Figura 44. Para estado límite último las cargas se
mayoraron por 1.35 mientras que para estado límite de servicio las cargas se mayoraron
utilizando el coeficiente de 1.0.
A diferencia de los casos anteriores no hay componentes que definan la geometría si no que se
colocó un solo componente llamado “geometría viga armada” (Ver Anejo 5) que a partir de
parámetros generó un sólido que se muestra en la Figura 104 , Figura 105 y Figura 106.
92
Figura 105. Sección Transversal Viga Armada
93
La forma en que el componente “geometría viga armada” funciona es primero tomar los
parámetros necesarios para generar la geometría, utiliza la longitud de la viga, ancho de la viga,
espesor de los patines, canto de la viga, y espesor de la viga. Con los datos obtenidos primero
genera los puntos que conforman el alma de la viga en el punto inicial de la viga sobre el eje x
donde se tomó 0 como valor inicial. Con los cuatro puntos trazados del alma se generó la
superficie del alma. Tras haber generado el alma se generaron los puntos del patín inferior y
posteriormente su superficie. Al finalizar con el patín inferior se trazaron los puntos del patín
superior y a partir de sus puntos se generó la superficie. Con la primera cara de la viga trazada
se realizó el mismo procedimiento, pero tomando en cuenta el parámetro de longitud de la viga,
por lo que la nueva cara se trazó a una distancia de 30 metros. Teniendo las 2 caras de la viga
se generaron las superficies necesarias entre las 2 para genera finalmente un sólido.
94
Al ser una viga con un perfil hecho a medida primero se comenzó por determinar la clase de la
viga, obteniendo primero la clase del alma y de los patines obtenida en base a la tabla 5.2
mostrada en la Figura 108 y la tabla 5.3 de la figura Figura 109 respectivamente del Eurocódigo
3 parte 1-1 (EN 1993-1-1, 2005).
Figura 108. Relaciones Máximas Ancho/Espesor para Miembros a Compresión (Determinar Clase del
Alma). Citado de (EN 1993-1-1, 2005)
95
Figura 109. Relaciones Máximas Ancho/Espesor para Miembros a Compresión (Determinar Clase de
Patín). Citado de (EN 1993-1-1, 2005)
Tras seleccionar la clase del perfil en caso de ser clase 4 se procedió a obtener el factor de
reducción de área por pandeo en placas llamado ρ, este procedimiento se realizó de acuerdo
con las ecuaciones descritas a continuación tomadas del Eurocódigo 3 parte 1-5 (EN 1993-1-
5, 2006):
• Área efectiva:
Ac,eff = ρ Ac Ecuación (4.1)
96
• El valor de λ p se obtiene a partir de la siguiente ecuación:
𝑏/𝑡 235
λp= ;𝜀=√𝑓
28.4∗𝜀∗√kσ 𝑦
• El valor de ψ y k σ se obtiene de la tabla 4.1 del Eurocódigo 3 parte 1-5 (EN 1993-1-5,
2006) mostrado en la Figura 110. Estos valores dependen de la distribución de esfuerzos
provocada por la carga aplicada y condiciones de contorno, al ser la carga distribuida y
una viga simplemente apoyada el valor de ψ se tomó como -1 y el valor de k σ se tomó
como 23.9.
Figura 110. Relación entre Factores de Pandeo y Esfuerzo en Base a Condiciones de Contorno. Citado de
(EN 1993-1-5, 2006)
El valor de χ𝑤 se tomó de la tabla 5.1 del Eurocódigo 3 parte 1-5 en la figura Figura
111 (EN 1993-1-5, 2006) y el valor de Υ𝑀1 se tomó como 1.
97
Figura 111. Contribución del alma 𝛘𝒘 a Resistencia a Pandeo por Cortante
Cuando 𝑎/ℎ𝑤 ≥ 1
𝑘𝜏 = 5.34 + 4.00(ℎ𝑤 /𝑎)2 + 𝑘𝜏𝑠𝑙 (Ecuación A.5)
Cuando 𝑎/ℎ𝑤 < 1
𝑘𝜏 = 4.00 + 5.34(ℎ𝑤 /𝑎)2 + 𝑘𝜏𝑠𝑙 (Ecuación A.5)
ℎ 24 𝐼 3 2.1 3 𝐼𝑠𝑙
𝑘𝜏𝑠𝑙 = 9 ( 𝑎𝑤 ) √(𝑡 3 𝑠𝑙 ) pero no menos que √ℎ (Ecuación A.5)
ℎ𝑤 𝑡 𝑤
Para la resistencia a compresión, momento y pandeo lateral se tomaron las ecuaciones del
Eurócodigo 3 parte 1-1 (EN 1993-1-1, 2005):
• La resistencia a compresión de la viga para clase 1, 2 y 3 se obtuvo con:
𝐴𝑓𝑦 (Ecuación 6.10)
𝑁𝑐,𝑅𝑑 =
𝛾𝑀0
• Para perfiles clase 4 la resistencia a compresión se obtuvo a partir de:
𝐴𝑒𝑓𝑓 𝑓𝑦 (Ecuación 6.11)
𝑁𝑐,𝑅𝑑 = 𝛾𝑀0
Figura 112. Valores Recomendados para Factores de Imperfección para Curvas de Pandeo Lateral.
Citado de (EN 1993-1-1, 2005)
Figura 113. Valores Recomendados para Curvas de Pandeo Lateral para Secciones Transversales. Citado
de (EN 1993-1-1, 2005)
𝑊𝑦 𝑓𝑦
𝜆̅𝐿𝑇 = √ (Ecuación 6.56)
𝑀𝑐𝑟
1
𝐶1 =
(𝑘𝑐 )2
-El valor de corrección 𝑘𝑐 se obtuvo a partir de la tabla 6.6 del Eurocódigo 3 parte 1-1
(EN 1993-1-1, 2005) en la Figura 114. Se tomó el valor de 0.94 debido a la distribución
de momentos por carga distribuida y por ser una viga simplemente apoyada. La Figura
111 se podría colocar como parámetro de entrada para considerar los distintos tipos de
distribución de momentos y dar mayor versatilidad al sistema.
100
𝑞𝐿
𝑉𝑚𝑎𝑥 =
2
5𝑞𝐿4
𝐹𝑙𝑒𝑐ℎ𝑎𝑚𝑎𝑥 =
384𝐸𝐼
De acuerdo al Eurocódigo 3 parte 1-1 (EN 1993-1-1, 2005) verificaron los ratios de
utilización con las siguientes ecuaciones:
𝑀𝐸𝑑
≤ 1.0
𝑀𝑐,𝑅𝑑 (Ecuación 6.12)
Al ser una viga con carga distribuida y simplemente apoyada no se consideraron combinaciones
entre flexión y cortante ya que en el punto de máximo momento el cortante es cero y en el
punto de máximo cortante el momento es cero. Para que el perfil verificara debió cumplir con
el máximo de los ratios de utilización obtenidos.
101
Figura 115. Parámetros para Modificar por Galápagos en Optimización
Como objetivo se estableció una función que suma el peso de la estructura, el inverso del
ratio de utilización y la suma del desplazamiento, se observa en la Figura 116.
Un aspecto relevante durante la variación de los parámetros de la viga fue mantener una
proporción adecuada entre el ancho de los patines y el canto de la viga, en el componente de la
Figura 107 se realizó una revisión en el cual se debe mantener una proporción de 1 ≤ ℎ𝑤 /𝑏𝑓 ≤
2 en caso de no cumplir el peso se modifica nuevamente a 100.000 kg y en caso de cumplir el
peso se mantiene en su estado original, de esta forma durante el proceso iterativo de Galápagos
se mantiene una proporción adecuada en la viga armada.
103
Tabla 16. Resumen de Resultado Optimización Galápagos Tercer Caso de Estudio
Resultado Optimización Galápagos
Canto (mm) 3120
Ancho patines (mm) 1560
Espesor alma (mm) 10
Espesor patines (mm) 10
Clase del Perfil 4
Peso (kg) 14648
Flecha (mm) 40
Ratio de Utilización 0.999
Número de Iteraciones 26000
Tiempo de Optimización (s) 266
104
Tabla 17. Resumen de Resultado Optimización Octopus Tercer Caso de Estudio
Resultado Optimización Octopus
Canto (mm) 3118
Ancho patines (mm) 1561
Espesor alma (mm) 10
Espesor patines (mm) 10
Clase del Perfil 4
Peso (kg) 14648
Flecha (mm) 40
Ratio de Utilización 0.999
Número de Iteraciones 25650
Tiempo de Optimización (s) 900
105
5 Discusión de resultados
El primer caso de estudio de la viga simplemente apoyada con una carga puntual al centro y
una carga axial demuestra que el optimizar de perfiles con el que cuenta Karamba 3D funciona
de manera adecuada, dependiendo el catálogo de perfiles que se ponga a disposición del
componente el selector toma el perfil menos pesado y con un ratio de utilización mayor. El
componente de optimización cuenta con cierta ventajas como el realizar las verificaciones de
manera automática de acuerdo al Eurocódigo 3, verifica las distintas interacciones entre flexión
y cortante, flexión y axil y hace la verificación del perfil obteniendo los factores de interacción
en base al método 2 del Eurocódigo, hay ocasiones en que en proyectos reales dependiendo del
cliente y el proyecto surge la necesidad de obtener los factores con un método distinto y el no
tener la disponibilidad de seleccionarlo es una desventaja. Otra de las desventajas que se
observaron en general es que los casos de carga se deben introducir de manera manual y que a
pesar de tener la posibilidad de introducir los casos de carga, al revisar la flecha del elemento
se verifica por la flecha más grande presente en los casos de carga y no por la flecha generada
por estado límite de servicio. El complemento de optimización de perfiles obtiene buenos
resultados para casos en que se debe modificar los elementos de forma individual, pero al
buscar una optimización más compleja o de elementos que trabajan en conjunto no sirve para
el propósito.
El objetivo del segundo caso es optimizar una celosía con una carga puntual al centro y con los
apoyos empotrados. Para la optimización se utilizó Galápagos y una combinación entre
Galápagos y Octopus. Comparado al primer caso de estudio la optimización que se realizó fue
más compleja ya que el objetivo no solo fue optimizar los perfiles, sino que también la
geometría de la estructura, de esta manera se demostró que es posible trabajar casos de
optimización más complejos gracias a los complemento Galápagos y Octopus, pero se requiere
establecer componentes personalizados con programación para limitar las soluciones y generar
resultados más óptimos. Al estar trabajando con los datos de forma más libre fue posible decidir
el caso de carga deseado para verificar flechas y el caso de carga deseado para verificar
resistencia y estabilidad por lo que las limitaciones del primer caso de estudio desaparecieron.
Una de las limitantes de utilizar Galápagos es que solo verifica un objetivo, se puede utilizar
para verificar muchos objetivos como se hizo, pero la dificultad se encuentra en encontrar una
manera de unir los objetivos en uno solo. La ventaja de Octupus es que es multiobjetivo por lo
106
que no es difícil seleccionar los objetivos a utilizar, la desventaja en este caso de estudio es que
uno de los objetivos era los ratios de utilización en forma de lista y Octopus no los podía leer
de esta manera, es por eso que se tuvo que combinar con Galápagos. En cuanto a los resultados
obtenidos con el componente Galápagos se obtuvo una celosía con más elementos que con la
combinación de Octupus y Galapagos pero el peso obtenido fue menor, logrando un mejor
objetivo. Una de las razones por lo que el resultado de Octopus fue peor es porque no se pudo
manejar de manera individual y la celosía se optimizó en conjunto con Galápagos. Es posible
que de haber encontrado una manera de realizar la optimización con Octopus de manera
individual el resultado podría mejorar.
El tercer caso de estudio trató de una viga simplemente apoyada con carga distribuida, en este
caso se buscó optimizar una viga armada, comparado a los casos anteriores es un caso más
complejo ya que el perfil a revisar no es un existente y no se pudieron utilizar los componentes
de Karamba 3D. Entre más complejo es el caso más se requieren componentes personalizados
con un mayor nivel de programación para obtener los resultados deseados. En cuanto a la
optimización con Galápagos y Octopus se podría decir que llegaron prácticamente al mismo
resultado, el parámetro que más variación tuvo fue el tiempo de optimización ya que tardó un
70% más que Galápagos en obtener el resultado, no quiere decir que Galápagos sea mejor, pero
en este caso de estudio en particular los resultados de Galápagos fueron más favorables.
Fue muy importante la interacción BIM que hubo dentro de los programas ya que esto permitió
una interconectividad e interoperabilidad muy fluida entre realizar las geometrías de los casos
de estudio y visualizar los modelos al igual que permitió operabilidad entre la geometría
generada y el análisis estructural, al crear elementos de este tipo existe la posibilidad de
exportar el modelo generado y analizarlo en programas de cálculo externos que admitan el
mismo tipo de archivos y no existe la limitación de trabajar forzosamente con los
complementos de Karamba 3D o de programar para analizar los elementos.
107
6 Conclusiones y recomendaciones
Los tres casos de estudio de esta tesis se desarrollaron con el objetivo de desarrollar una
metodología que aprovechara tanto el diseño paramétrico como los algoritmos genéticos para
optimizar una estructura, aunque los casos de estudio son sencillos esta metodología se puede
aplicar a estructuras más complejas, la variante se encuentra en el modelo paramétrico que se
va a utilizar.
Es una gran ventaja contar con la interoperabilidad que brindan los componentes a trabajar en
un entorno como Grasshopper ya que hay a la mano muchas herramientas con las cuales
trabajar y esto brinda una gran flexibilidad al usuario sobre los proyectos, un ejemplo de esto
es que en el segundo caso de estudio la simulación estructural se realizó con Karamba 3D,
mientras que en el tercer caso de estudio no se usó Karamba 3D pero al tener distintas opciones
y flexibilidad dentro de Grasshopper se pudo utilizar programación en código para sustituir
esta necesidad.
Durante la etapa de aprendizaje de Karamba 3D se encontró que en algunos modelos con cierta
distribución de cargas se generaba una reducción de la capacidad del elemento a compresión y
a cortante al realizar sobre si el cortante actuante excede el 50% del cortante resistente, se daban
casos en donde por este proceso los extremos de un elemento tenían una resistencia menor a
las secciones internas, en los elementos analizados en esta tesis no ocurren esos problemas. Se
mantuvo contacto con el desarrollador y comentó que estaba al tanto, comentó que no había
mucho problema ya que el resultado se encontraba por el lado de la seguridad pero que en la
próxima actualización se iba a solucionar.
108
En cuanto al proceso de actualización se recomienda aplicar el procedimiento de Galápagos a
una estructura con múltiples elementos para probar la optimización con un grupo de elementos
de forma simultánea. También se recomienda encontrar una manera de que Octopus pueda
trabajar con listas como objetivo para que se pueda probar de manera independiente y obtener
mejores resultados con este complemento.
En cuanto al tercer caso de estudio se puede realizar un próximo trabajo en donde se amplié la
programación y se pueda analizar utilizando el método de elementos finitos, de igual manera
sería recomendable probar la optimización con más vigas armadas trabajando en conjunto.
En algún proyecto futuro se puede estudiar que tan bien se comportan los elementos
geométricos generados en Grasshopper en programas de análisis estructural externos. El hecho
de que todos los componentes de programación visual se encuentren fácilmente vinculados a
software de gestión BIM hace especialmente atractivo su uso en los próximos años en los que
se entenderá el BIM como un estándar en el sector de ingeniería y construcción.
109
7 Bibliografía
Ansys. (1970). Obtenido de https://www.ansys.com/
Autodesk. (s.f.). Revit. Obtenido de https://www.autodesk.es/
Bendsøe, M. (1989). Optimal shape design as a material distribution problem. Struct
Multidiscip Optim. 1, 193-202.
Cerrolaza, M., & Annicchiarico, W. (1996). Algoritmos de optimización estructural basados
en simulación genética. Caracas: Universidad Central de Venezuela. Primera Edición.
Costanzi, C., Ahmed, Z., Schipper, H., Bos, F., Knaack, U., & Wolfs, R. (2018). 3D Printing
Concrete on temporary surfaces: The design and fabrication of a concrete shell
structure. Automation in Construction, 94, 395-404.
Davis, D. (2013). Modelled on Software Engineering: Flexible Parametric Models in the
Practice of Architecture. PhD dissertation. RMIT University.
EN 1990. (2002). Eurocode: Basis of structural design. Bruselas: Comisión Europea de
normalización CEN.
EN 1993-1-1. (2005). Eurocode 3: Design of Steel Structures. Part 1-1: General rules and
rules for buildings. Bruselas: Comisión Europea de normalización CEN.
EN 1993-1-5. (2006). Eurocode 3: Design of Steel Structures. Part 1-5: Plated structural
elements. Bruselas: Comisión Europea de normalización CEN.
EnergyPlus. (s.f.). Obtenido de https://energyplus.net/
Gil, A., & Parsons, R. (2014). The Grasshopper Primer Third Edition. Mode Lab.
Gulvanessian, H., & Holicky, M. (1996). Designer´s Handbook to Eurocode 1 Part 1: Basis
of design. London: Thomas Telford. 1st Edition.
Ibrahim, H., Wagdy, A., Beccarelli, P., Carpenter , R., & Chilton, J. (2016). Applicability of
Flexible Photovoltaic Modules onto Membrane Structures Using Grasshopper
Integrative Model. Procedia Engineering, 155, 379-387.
Kensek, K. (2014). Integration of Environmental Sensors with BIM: case studies. Informes de
la Construccón, 66, 536-544.
Kravanja, S., Turkalj, G., Silih, S., & Zula, T. (2013). Optimal design of single-story steel
building structures based on parametric MINLP optimization. Journal of
Constructional Steel Research, 81, 86-103.
Lee, S., & Ha, M. (2013). Customer interactive building information modeling for apartment
unit design. Atomation in Construction, 35, 424-430.
McNeel & Associates. (2019). Rhinoceros. Obtenido de https://www.rhino3d.com/6/features
110
McNeel, R. (2019). McNeel Wiki. Obtenido de https://wiki.mcneel.com/rhino/nurbssurfaces
Muttio, E., Botello, S., & Tapia, M. (2017). Modelado paramétrico mediante programación
visual en el diseño y análisis estructural de edificios. Revista Mexicana de Métodos
Numéricos, 1. Obtenido de https://www.scipedia.com/public/Muttio_et_al_2017a
Pan, W., Turrin, M., Louter, C., Sariyildiz, S., & Sun, Y. (2019). Integrating multi-functional
space and long-span structure in the early design stage of indoor sports arenas by
using parametric modelling and multi-objective optimization. Journal of Building
Engineering, 22, 464-485.
Paulson, B. (1976). Designing to Reduce Construction Costs. Journal of the Construction
Division, 102, 587–592.
Preisinger, C. (2013). Linking Structure and Parametric Geometry. Obtenido de Archit
Design, 83: 110-113.
Preisinger, C. (2019). Karamba 3D Parametric Enginerring. Obtenido de User Manual
(Version 1.3.2): https://www.karamba3d.com/download/
Reinhart, C. (1998). Daysim. Obtenido de https://daysim.ning.com/
Rodríguez, A. (2015). Grasshopper - Pabellón Paramétrico [LunchBox]. Obtenido de
Youtube: https://www.youtube.com/watch?v=MqDlODqGkZ8
Rombouts, J., Lombaert, G., De Laet, L., & Schevenels, M. (2019). A novel shape
optimization approach for strained gridshells: Design and construction of a simply
supported gridshell. Engineering Structures, 192, 166-180.
Ruiz, R. (2015). Arquitectura de voltereta. Obtenido de WordPress:
https://arquitecturadevoltereta.wordpress.com/
Rutten, D. (September de 2010). Evolutionary Principles applied to Problem Solving using
Galapagos. Obtenido de https://www.grasshopper3d.com/profiles/blogs/evolutionary-
principles
s.p.a, E. (2002). modeFRONTIER. Obtenido de
https://en.wikipedia.org/wiki/ModeFRONTIER
Sánchez, S. (2012). Optimización estructural y topológica de estructuras morfológicamente
no definidas mediante algoritmos genéticos. Tesis Doctoral. Universidad Politécnica
de Valéncia. Obtenido de doi:10.4995/Thesis/10251/15409
Simonetti, H. L., Almeida, V. S., & Neto, L. d. (2014). A smooth evolutionary structural
optimization procedure applied to plane stress problem. Engineering Structures, 75,
248-258.
111
Simonetti, H. L., Almeida, V., Leitao, V., & Neves, F. (2019). Application of evolutionary
structural optimization based on the boundary element method using initial stress
fields. Structures, 20, 550-559.
Sörensen, K., Sevaux, M., & Glover, F. (2018). A History of Metaheuristics. In: Martí R.,
Panos P., Resende M. (eds) Handbook of Heuristics. Springer.
Taleb, H., & Musleh, M. (2015). Applying urban parametric design optimisation processes to
a hot climate: Case study of the UAE. Sustainable Cities and Society, 14, 236-253.
Tekla. (s.f.). Obtenido de https://www.tekla.com/la
Tomei, V., Imbimbo, M., & Mele, E. (2018). Optimization of structural patterns for tall
buildings: The case of diagrid. Engineering Structures, 171, 280-297.
Vierlinger, R. (December de 2012). Octopus. Obtenido de Grasshopper:
https://www.grasshopper3d.com/group/octopus?groupUrl=octopus&id=2985220%3A
Group%3A742529&page=7#comments
Yang, D., Ren, S., Turrin, M., Sariyildiz, S., & Sun, Y. (2018). Multi-disciplinary and multi-
objective optimization problem re-formulation in computational design exploration: A
case of conceptual sports building design. Automation in Construction, 92, 242-269.
112
Anexos
Anejo 1. Código en lenguaje de programación Visual Basic del componente “limitar
canto”
'Limita el canto máximo
If Canto >= L / 15 And Canto <= L / 10 Then
A=P
Else
A = 10000
End If
p1=rg.Point3d(0,-Ea/2,ha/2-Ep)
p2=rg.Point3d(0,Ea/2,ha/2-Ep)
p3=rg.Point3d(0,-Ea/2,-ha/2--Ep)
p4=rg.Point3d(0,Ea/2,-ha/2--Ep)
a=p1,p2,p3,p4
#Generar Superficie 1
s1=rg.NurbsSurface.CreateFromCorners(p1,p2,p4,p3)
#Cálculo de Área 1
A1=Ea * (ha-2*Ep)
p5=rg.Point3d(0,-Lp/2,-ha/2+Ep)
p6=rg.Point3d(0,-Lp/2,-ha/2)
p7=rg.Point3d(0,Lp/2,-ha/2)
p8=rg.Point3d(0,Lp/2,-ha/2+Ep)
#Generar Superficie 2
s2=rg.NurbsSurface.CreateFromCorners(p5,p6,p7,p8)
#Calculo de Área 2
A2=Lp *Ep
p9=rg.Point3d(0,-Lp/2,ha/2)
p10=rg.Point3d(0,-Lp/2,ha/2-Ep)
p11=rg.Point3d(0,Lp/2,ha/2-Ep)
p12=rg.Point3d(0,Lp/2,ha/2)
#Generar Superficie 2
s3=rg.NurbsSurface.CreateFromCorners(p9,p10,p11,p12)
#Cálculo de Área 3
A3=Lp *Ep
114
#Cálculo de Área Total
AT=A1+A2+A3
#Cálculo de Inercia en Y
div1=ha/2-2*Ep
I1=(Ea*pow(ha-2*Ep,3)/12)+A1*pow(0,2)
I2=(Lp*pow(Ep,3)/12)+A2*pow(ha/2-Ep/2,2)*2
Iy=I1+I2
p13=rg.Point3d(L,-Ea/2,ha/2-Ep)
p14=rg.Point3d(L,Ea/2,ha/2-Ep)
p15=rg.Point3d(L,-Ea/2,-ha/2--Ep)
p16=rg.Point3d(L,Ea/2,-ha/2--Ep)
#Generar Superficie 4
s4=rg.NurbsSurface.CreateFromCorners(p13,p14,p16,p15)
p17=rg.Point3d(L,-Lp/2,-ha/2+Ep)
p18=rg.Point3d(L,-Lp/2,-ha/2)
p19=rg.Point3d(L,Lp/2,-ha/2)
p20=rg.Point3d(L,Lp/2,-ha/2+Ep)
#Generar Superficie 5
s5=rg.NurbsSurface.CreateFromCorners(p17,p18,p19,p20)
p21=rg.Point3d(L,-Lp/2,ha/2)
p22=rg.Point3d(L,-Lp/2,ha/2-Ep)
p23=rg.Point3d(L,Lp/2,ha/2-Ep)
p24=rg.Point3d(L,Lp/2,ha/2)
a=p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,p17,p18,p19,p20,p21,p22,
23,p24
#Generar Superficie 6
s6=rg.NurbsSurface.CreateFromCorners(p21,p22,p23,p24)
#Generar Superficie 7
s7=rg.NurbsSurface.CreateFromCorners(p9,p21,p22,p10)
115
#Generar Superficie 8
s8=rg.NurbsSurface.CreateFromCorners(p1,p13,p15,p3)
#Generar Superficie 9
s9=rg.NurbsSurface.CreateFromCorners(p5,p17,p18,p6)
#Generar Superficie 10
s10=rg.NurbsSurface.CreateFromCorners(p1,p10,p22,p13)
#Generar Superficie 11
s11=rg.NurbsSurface.CreateFromCorners(p3,p5,p17,p15)
#Generar Superficie 12
s12=rg.NurbsSurface.CreateFromCorners(p12,p24,p23,p11)
#Generar Superficie 13
s13=rg.NurbsSurface.CreateFromCorners(p2,p14,p16,p4)
#Generar Superficie 14
s14=rg.NurbsSurface.CreateFromCorners(p8,p20,p19,p7)
#Generar Superficie 15
s15=rg.NurbsSurface.CreateFromCorners(p2,p11,p23,p14)
#Generar Superficie 16
s16=rg.NurbsSurface.CreateFromCorners(p4,p8,p20,p16)
#Generar Superficie 17
s17=rg.NurbsSurface.CreateFromCorners(p9,p12,p24,p21)
#Generar Superficie 18
s18=rg.NurbsSurface.CreateFromCorners(p18,p19,p7,p6)
s=[s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15,s16,s17,s18]
116
#Momento Actuante en Y kN*m
MyEd=(kN*1.35*pow((L/1000),2)/8)
#Deflec mm
d=(5*kN*pow(L,4))/(384*210000*Iy)
hw = ha - (2 * Ep)
tw = Ea
omega = 4
fyw = ta
bf = Lp
tf = Ep
fyf = ta
epsilon = (235 / ta) ^ (1 / 2)
kj = 23.9
chi = -1
gamma = 1
iz = tf * bf ^ 3 * 2 / 12
iw = iz * hw ^ 2 / 4
it = 1 / 3 * (2 * bf * tf ^ 3 + hw * tw ^ 3)
c1 = 1.132 'viene de kc=0.94
ge = 210000 / 2.6
lcr = L
mcr = (1 / 1000 / 1000) * (c1 * 3.1416 ^ 2 * 210000 * iz / lcr ^ 2) * (iw / iz + (lcr ^ 2 *
ge * it) / (3.1416 ^ 2 * 210000 * iz)) ^ 0.5
lambdalt1 = (mom1 / mcr) ^ 0.5
If hw / bf <= 2 Then
alfalt1 = 0.49
Else
alfalt1 = 0.76
End If
filt1 = 0.5 * (1 + alfalt1 * (lambdalt1 - 0.2) + lambdalt1 ^ 2)
chilt1 = 1 / (filt1 + (filt1 ^ 2 - lambdalt1 ^ 2)) ^ 0.5
lambdalt2 = (mom2 / mcr) ^ 0.5
If hw / bf <= 2 Then
alfalt2 = 0.49
Else
alfalt2 = 0.76
End If
filt2 = 0.5 * (1 + alfalt2 * (lambdalt2 - 0.2) + lambdalt2 ^ 2)
chilt2 = 1 / (filt2 + (filt2 ^ 2 - lambdalt2 ^ 2)) ^ 0.5
If chilt1 <= 1 Then
mltb1 = chilt1 * mom1
Else
mltb1 = 1 * mom1
End If
If chilt2 <= 1 Then
mltb2 = chilt2 * mom2
Else
mltb2 = 1 * mom2
End If
'cortante
'contibucion del alma
gm1 = 1
ar = hw * 4
katau = 5.34 + 4 * (1 / 3) ^ 2
sigmae = 189800 * (tw / hw) ^ 2
taucr = katau * sigmae
lambdaw = 0.76 * (fyw / taucr) ^ 0.5
chiw = 0.83 / lambdaw
vbwrd = chiw * fyw * tw * hw / gm1 / 3 ^ 0.5 / 1000
120
'contribucion de las alas
'peso propio
'Asignar clase
'Revisión viga
If Clase_gen = 1 Then
Mc_Rd = mom1c1
ElseIf Clase_gen = 2 Then
Mc_Rd = mom1c1
121
ElseIf Clase_gen = 3 Then
Mc_Rd = mom1c3
Else
Mc_Rd = mom1
End If
Vb_Rd = vtot
'Momento actuante
MyEd = (kN * math.Pow((L / 1000), 2) / 8) * 1.35
'Cortante Actuante
VEd = kN * 1.35 * (L / 1000) / 2
'Desplazamiento
'Cálculo de Intercia en Y
A1 = Ea * (ha - 2 * Ep)
A2 = Lp * Ep
A3 = Lp * Ep
I1 = (Ea * math.Pow(ha - 2 * Ep, 3) / 12) + A1 * math.Pow(0, 2)
I2 = (Lp * math.Pow(Ep, 3) / 12) + A2 * math.Pow(ha / 2 - Ep / 2, 2) * 2
Iy = I1 + I2
Desp = (5 * kN * math.Pow(L, 4)) / (384 * 210000 * Iy)
If Desp > (L / 300) Then
Desp = 100000
Else
Desp = peso
End If
Dim ratm, ratv,myed2,ved2,ratc,ratpl As Double
'Utilización
ratm = MyEd / Mc_Rd
ratv = VEd / Vb_Rd
ratpl = MyEd / mltb1
myed2 = ((kN * (L / 1000 / 2 / 2)) / 2) * ((L / 1000) - (L / 1000 / 2 / 2))
ved2 = kN * ((L / 1000 / 2) - (L / 1000 / 2 / 2))
ratc = (myed2 / Mc_Rd) + (ved2 / Vb_Rd)
If ratm > ratv And ratm > ratc And ratm > ratpl Then
Utilizacion = ratm
ElseIf ratv > ratm And ratv > ratc And ratm > ratpl Then
Utilizacion = ratv
ElseIf ratpl > ratm And ratpl > ratc And ratpl > ratv Then
Utilizacion = ratpl
Else
Utilizacion = ratc
End If
If Utilizacion > 1 Then
Utilizacion = 100000
Else
Utilizacion = peso
End If
122