O processo de dimensionamento estrutural tem se tornado cada vez mais rápido, preciso e padronizado devido ao crescimento tecnológico nas últimas décadas que proporcionou o surgimento de computadores mais robustos e softwares especializados. A aplicação de algoritmos de otimização no cálculo estrutural tem sido amplamente explorada na literatura, sua utilização torna possível a sistematização de processos e o pré-dimensionamento de elementos de maneira a evitar custos excessivos.
A necessidade de utilização desses algoritmos se dá pelo fato de que softwares de dimensionamento estrutural necessitam de parâmetros iniciais que interferem sensivelmente nos resultados finais e são altamente dependentes da experiência, intuição e tempo disponível do engenheiro calculista. Portanto, o dimensionamento de uma estrutura sujeita a um pré-dimensionamento ineficiente, mesmo que atenda a critérios de segurança e serviço, pode ter um custo elevado comparado a um que utilizou em seu pré-dimensionamento um algoritmo de otimização.
Recentemente, um novo ramo da inteligência artificial denominado Redes Neurais Artificiais (RNA’s) tem ganhado espaço em diversas áreas da engenharia civil. Devido sua capacidade de aprendizado e generalização, as RNA’s solucionam problemas que seriam difíceis ou até mesmo impossíveis à programação baseada em algoritmos sequenciais. Sua aplicação na engenharia civil tem sido demonstrada por exemplo, nos domínios da otimização estrutural, seleção de formas de madeira, avaliação de danos estruturais, estimativa da resistência do concreto e estabilidade de taludes.
Neste estudo foi desenvolvido uma aplicação que utiliza uma RNA com aprendizado supervisionado para a concepção inicial de vigas biapoiadas de concreto armado com custo mínimo, a partir das seguintes variáveis de entrada: comprimento (L), carregamento (q) e base (bw) da seção da viga. A rede adota como amostras de treinamento, valores otimizados de vigas de concreto armado. Para tanto, foi elaborado um programa desenvolvido em JAVA, afim de otimizar um conjunto de 40 vigas de concreto armado, com comprimentos e/ou carregamentos específicos, para obtenção das configurações ideais das seções transversais que retornassem os menores custos possíveis para cada viga.
Redes Neurais Artificiais (RNA)
Rede Neural Artificial é um processador paralelo e distribuído, composto por unidades de processamento simples que tem por finalidade armazenar conhecimento experimental e torná-lo disponível para utilização. O conhecimento é adquiro pela rede neural através de um processo de aprendizagem, onde ajustes nos pesos sinápticos são efetuados afim de armazenar esse conhecimento e atingir o objetivo de projeto desejado.
O processo de aprendizagem usual de uma rede neural (treinamento supervisionado), consiste na introdução de exemplos de entrada e saída de dados, onde a rede extrai características necessárias para modelar a informação relacional entre eles. Quando o processo de aprendizagem cessa, além de estabelecer uma relação entre o conjunto de entrada e saída dado, o modelo formado pela rede pode ser utilizado para a resolução de problemas distintos ao conjunto de exemplo de treinamento utilizados.
A rede Perceptron Multicamadas é aquela que possui ao menos uma camada intermediária. Tais redes podem operar como aproximadores universais de funções em problemas onde se deseja relacionar variáveis de entrada a saídas esperadas. É utilizado quando a modelagem por técnicas convencionais é inviável devido à complexidade do problema ou o dinamismo da função.
Figura 1 – Ilustração de uma rede Perceptron Multicamadas
Algoritmos Genéticos
Os Algoritmos Genéticos são métodos de otimização e busca inspirados no princípio da seleção natural e evolução, teoria proposta por Charles Darwin, na qual afirma que indivíduos mais adaptados ao meio ambiente são mais propensos a sobreviverem e gerarem descendentes. Seu objetivo é varrer o espaço de busca de maneira a encontrar uma solução ótima sem a necessidade de aplicar métodos de derivação, utilizando apenas operações simples em indivíduos de um grupo, denominado população.
O processo de funcionamento dos AG’s é composto por diversas fases, seu objetivo consiste em criar uma população de possíveis soluções para o problema e submetê-las a operações de cruzamento e mutação para então avaliá-las segundo uma função de aptidão.
Vigas de Concreto Armado
Vigas são elementos lineares em que a flexão é preponderante. Sua principal função é vencer vãos e transferir esforços de lajes, paredes e outros elementos aos pilares da edificação. Uma viga de concreto armado é composta basicamente por concreto e aço, tal junção se dá pelo fato de o concreto resistir bem a solicitações de compressão e o aço tanto a solicitações de compressão quanto de tração. O colapso da estrutura de concreto armado é caracterizado pela ruptura do concreto comprimido ou alongamento excessivo das armaduras tracionadas que são definidos na prática como estado limite último de ruptura ou de deformação plástica excessiva. As vigas de concreto armado são dimensionadas de maneira a resistir aos esforços solicitantes e apresentar boas características de ductilidade, respeitando a posição da linha neutra imposta pela norma. O dimensionamento das vigas de concreto armado também deve considerar os estados limites de serviços, que são aqueles relativos ao conforto, durabilidade ou aparência da estrutura. Devem ser consideradas também as hipóteses básicas na análise dos esforços resistentes de uma viga. (ABNT NBR 6118, 2014)
Vigas de armadura simples são aquelas que necessitam de armadura longitudinal para resistir apenas a esforços de tração, no entanto, por razões construtivas são dotadas também de armadura na região comprimida para suporte e amarração dos estribos, sendo que a resistência a compressão oferecida por elas não é levada em consideração no dimensionamento.
Figura 2 – Distribuição de tensões em uma viga simplesmente armada
Metodologia
Na aplicação proposta um conjunto de vigas biapoiadas de concreto armado submetidas a flexão simples são otimizadas de maneira a obter as dimensões e arranjos ideais do concreto e das barras de aço que resulte no menor custo possível. Quarenta vigas com carregamentos e/ou comprimentos diferenciados serão otimizadas por uma aplicação baseada em algoritmos genéticos e os dados otimizados das seções serão empregados no treinamento de uma rede neural perceptron multicamadas com a finalidade de transferir conhecimento especializado de otimização à rede. Por conseguinte, um novo conjunto de vigas serão inseridos na rede neural afim de comparar os dados obtidos com valores otimizados por algoritmos genéticos.
Seja um conjunto de 40 vigas retangulares e biapoiadas de concreto armado, de comprimentos ???? e submetidas a carregamentos distribuídos e constantes de projeto ??????. As figuras a seguir representam o modelo de viga j e a sua seção transversal. Cada viga possui carregamentos e um comprimento próprios.
Figura 3 – Modelo de viga j e sua seção transversal
Pretende-se minimizar o custo das vigas considerando o custo do concreto, aço e forma, ou seja:
O programa para a otimização do custo de seções transversais de vigas de concreto armado (nomeado VIGOTIM) foi desenvolvido na linguagem JAVA com auxílio da biblioteca JENETICS. O programa é composto por três classes distintas, conforme segue: CromossomoViga, DimensionamentoViga e a classe base Main que é a classe de execução do AG, responsável pelos processos de evolução da população. A classe CromossomoViga é responsável por determinar as variáveis da função objetivo necessárias à avaliação de cada indivíduo da população. As diferentes topologias de seções de vigas serão definidas a partir de 6 variáveis, totalizando 2.376.000 seções distintas possíveis.
Para o desenvolvimento da rede PMC foi utilizado o editor JOONE (Java Object Oriented Neural Engine) que é uma ferramenta baseada em módulos Java utilizada para construir e executar aplicativos de Inteligência Artificial (IA). Esta framework permite o desenvolvimento, treinamento e validação de redes neurais artificiais.
A escolha da rede PMC foi baseada na sua capacidade de aproximar funções. Como o objetivo era tornar a rede capaz de criar uma representação interna do processo de otimização de vigas de concreto armado, foi utilizado o conjunto das vigas otimizadas por algoritmos genéticos como amostra de treinamento para rede. Inicialmente foram configuradas as entradas e saídas de dados da rede. Para a camada de entrada foi definido cinco nós, sendo um nó de cada para o carregamento distribuído (q), o comprimento da viga (L), a base da viga (bw), a resistência a compressão do concreto (fck) e a tensão de escoamento do aço (fyk). Para a camada de saída foi definido 6 nós, representando à altura da viga (h), a área de aço tracionado (As), o número de camadas de barras (nc), o diâmetro da barra longitudinal (dl), o custo total da viga (CT) e a posição da linha neutra (x/d) expressa pelo adimensional (βx). Os valores de entrada e saída foram normalizados individualmente de modo que permanecessem na gama 0 e 1.
Considerações Finais
A utilização de vigas otimizadas por algoritmos genéticos como amostras de treinamento para a rede neural produziu resultados satisfatórios, uma vez que o erro (RMSE) resultou em valores baixos para a diferença entre valores desejados e os valores obtidos pela rede, conforme ilustrado na Figura 4. Porém deve-se sempre levar em conta a necessidade de conferição do dimensionamento otimizado pela RNA e sua adequação as normas vigentes, em razão da impossibilidade de entender o processo de obtenção dos resultados. As RNA são muito eficientes na modelação de funções, porém ainda são consideradas “caixas pretas” no mundo da computação. Alguns valores devem ser arredondados, como o número de camadas, para serem exequíveis.
Otimização de Vigas de Concreto Armado Utilizando Algoritmos Genéticos e Redes Neurais ArtificiaisRenato Filho Ximenes de Paula (1);
Li Chong Lee Bacelar de Castro (2)
(1) Engenheiro Civil pela Universidade Católica de Brasília, UCB
(2) Professor Doutor em Estruturas e Construção Civil, ambos pela Universidade de Brasília, UnB