Utilização de Algoritmos Genéticos para Otimização
de Altura de Coluna da Matriz de Rigidez em Perfil
no Método dos Elementos Finitos
André Luiz Ferreira Pinto
Pontifícia Universidade Católica do Rio de Janeiro – PUC-Rio
Departamento de Engenharia Elétrica
Rua Marquês de São Vicente, 225 – CEP 22451-900 – Rio de Janeiro, RJ
e-mail: [email protected]
Resumo: O Método dos Elementos Finitos é uma das grandes ferramentas no cálculo de estruturas, em especial na
Engenharia Civil. Para tal, é necessário o emprego de grandes matrizes para a resolução do sistema e uma conseqüente
necessidade de uma grande capacidade de processamento numérico. Para a redução do tempo de processamento, assim
como do uso racional da infra-estrutura, faz-se necessária a utilização de métodos de armazenagem diferenciados e
ajustados para o problema em questão. No trabalho aqui mostrado, esta armazenagem é feita com a técnica da matriz em
perfil. Para uma melhora ainda mais significativa, é feita uma renumeração nodal. Para tal renumeração, no entanto, não há
consenso sobre um algoritmo ótimo. Este trabalho tenta resolver tal problema através da utilização de Algoritmos
Genéticos.
Palavras-Chave: Algoritmos Genéticos, Otimização, Método dos Elementos Finitos, Armazenagem em Perfil
Temos assim
, onde
, portanto
uma aproximação
.
Conforme aumentamos o número de lados, é de se esperar
que encontremos o valor exato de .
1.
Introdução
1.2. O Método da Rigidez Direta
1.1. O que é um elemento finito?
Podemos ter uma idéia geral do conceito de elemento
finito olhando para um problema muito antigo: encontrar
o perímetro de um círculo de raio , conforme a Figura
, o problema é equivalente a achar o
1. Como
valor de .
Figura 1 - Discretização de um círculo
Uma maneira aproximada de resolver este problema é
inscrever um polígono regular de
lados no círculo e
tomar o perímetro do polígono.
O termo Método dos Elementos Finitos, na verdade,
identifica um leque de técnicas que possuem algumas
características em comum. Duas subclassificações
aplicáveis à mecânica estrutural são:
Das variantes listadas, muita ênfase é dada à formulação
dos deslocamentos e a solução por rigidez. Esta
combinação é chamada Método da Rigidez Direta. Este
método é de longe a implementação mais comum do
Método dos Elementos Finitos. Em particular, todos os
grandes programas comerciais de elementos finitos são
baseados no Método da Rigidez Direta.
Figura 2 – Exemplos de Elementos Finitos
O elemento finito estrutural mais simples é a barra de
treliça de dois nós, ilustrada na Figura 2-a. Talvez o
elemento finito mais complicado (pelo menos em relação
ao número de graus de liberdade) é o “bloco”
tridimensional curvo, ilustrado na Figura 2-b. No entanto,
uma das grandes vantagens do Método da Rigidez Direta é
que ambos são tratados da mesma maneira. Para ilustrar
os passos básicos deste método, será utilizada a estrutura
simples da barra de treliça.
Outra grande vantagem do Método da Rigidez Direta é a
possibilidade de se trabalhar de forma matricial,
permitindo uma fácil implementação computacional.
1.2.1. A formulação matricial
é a força na direção
correspondente a um
deslocamento unitário na direção mantendo todos os
outros iguais a zero.
Percebe-se agora um fator muito importante: o tamanho
da matriz . No caso simples da estrutura composta de
barras de treliça da Figura 3, que possui três nós e dois
graus de liberdade por nó (as translações horizontal e
vertical), a matriz é de ordem 6. Nota-se que para
estruturas reais com elementos com mais graus de
liberdade e milhares de nós, necessita-se uma abordagem
diferente.
Nota: Haver uma matriz de rigidez global subentende a
existência de uma matriz de rigidez “não-global”. Esta
matriz é chamada de matriz de rigidez local e pode ser
obtida para cada um dos elementos de modo similar à
obtenção da global. No caso dos elementos finitos, se
constrói a matriz global a partir das várias matrizes locais
que se calculam, conforme será visto à frente.
1.2.2. Os passos
Os passos necessários para o processamento do Método da
Rigidez Direta são: a separação do modelo em elementos
finitos para a obtenção das matrizes de rigidez locais
(como na Figura 4), seguido da remontagem destas
matrizes de rigidez locais na matriz global e subseqüente
solução do problema.
Figura 3 – Representação por Elementos Finitos
As equações de rigidez globais relacionam as forças
nodais
da estrutura aos deslocamentos nodais
da
estrutura antes da especificação das condições de
contorno, como mostrado na Figura 3. Por ser assumido o
comportamento da treliça como linear, estas equações que
conectam os componentes dos dois vetores devem ser
relações lineares. Além disso, será assumido que se todos
os deslocamentos desaparecerem, também desaparecerão
as forças. Se ambas as suposições forem verdadeiras, a
relação deve ser homogênea e expressa como:
Figura 4 - Separação do modelo
A solução consiste na aplicação das condições de
contorno e na resolução do sistema linear para a obtenção
dos deslocamentos nodais.
1.2.3. A implementação
Para uma implementação prática do Método da Rigidez
Direta deve-se levar em conta dois fatores-chave:
A utilização de um Vetor de Incidência Cinemática, para o
mapeamento entre os índices da matriz de rigidez local e
da global;
A armazenagem da matriz de rigidez levando-se em conta
a simetria e a esparsidade da matriz.
Ambos visam um menor dispêndio de memória, já que
este pode se tornar um bottleneck no Método dos
Elementos Finitos.
Simplificadamente:
1.3. O problema
Onde:
é o vetor das forças nodais atuantes na estrutura;
é a matriz de rigidez global;
é o vetor de deslocamento nodais resultantes (ou graus
de liberdade);
Os elementos da matriz de rigidez global são chamados
coeficientes de rigidez e tem a seguinte interpretação
física:
Dados os fatores-chave expostos no item anterior, todos os
programas comerciais tentam otimizar seu código. Para o
caso da armazenagem da matriz, um dos métodos muito
utilizados é a armazenagem em perfil.
Na armazenagem em perfil orientado a colunas (o mais
usual), somente são armazenados os elementos a partir do
primeiro elemento não-nulo até o último não-nulo de cada
coluna, como visto na Figura 5. No caso de matrizes
simétricas, pode-se ir somente até a diagonal principal.
108
3
120
2
1
2
...
1
3
3
4
//
//
//
//
//
nno
ndesno
nelm
nnoelm
etf
Onde:
Figura 5 – Exemplo de matriz de rigidez
1.3.1. Onde entra o Algoritmo Genético?
Embora obtenhamos uma matriz esparsa, vemos que as
colunas podem ter alturas variadas, ditas alturas efetivas.
Mas, quanto controle temos sobre a altura da coluna?
Sabe-se que cada elemento da matriz corresponde a uma
interação entre dois graus de liberdade e que tais graus
têm uma correspondência com a numeração nodal. Se
pudermos rearranjar a numeração nodal de tal forma que
os elementos não-nulos da matriz de rigidez se aproximem
da diagonal principal, a altura das colunas pode ser
diminuída consideravelmente.
Todos os programas comerciais utilizam algum algoritmo
de renumeração de nós, no entanto, não há consenso sobre
um algoritmo ótimo.
Por se tratar de um problema com espaço de busca muito
grande, o emprego de algoritmos genéticos se encaixa
perfeitamente.
O presente trabalho busca encontrar a numeração nodal
ótima para um dado problema.
2.
é o número de nós da estrutura;
é o número de graus de liberdade por nó;
é o número de elementos da estrutura;
é o número de nós por elementos;
é o vetor de incidência cinemática e consiste de
linhas, descrevendo as ligações de cada elemento com os
nós. O primeiro item de cada linha é o número do
elemento em questão e cada item seguinte corresponde a
um dos nós nos quais este elemento se liga.
3.2. Experimento 1
Neste primeiro experimento foi modelado o pórtico da
Figura 6. Os elementos são mostrados na Figura 7 e os nós
na Figura 8. O gráfico evolutivo é dado pela Figura 9 e os
dados do melhor indivíduo pela Figura 10.
O Algoritmo Genético
2.1. A representação
A modelagem do algoritmo empregou o framework
GACOM utilizando representação baseada em ordem com
um segmento. Este segmento possui genes, definido no
arquivo de entrada de dados, e referente ao número de
nós, ou seja, cada gene representa o número de um nó, que
será permutado para se atingir a configuração ótima.
Figura 6 - Estrutura do pórtico
2.2. A avaliação
A avaliação consiste na utilização de um algoritmo que
pesquisa a ordem da menor numeração de ponto nodal do
elemento e calcula a altura efetiva de cada coluna e a
subseqüente soma acumulada das alturas efetivas.
Deve-se notar que o algoritmo calcula as alturas baseado
na topologia do problema, e não por pesquisa exaustiva
dos zeros na matriz, traduzindo em um ganho substancial
em velocidade de execução.
A avaliação se dá pela soma acumulada: quanto maior este
valor, pior a avaliação.
3.
Os experimentos
3.1. O arquivo de entrada de dados
O arquivo de entrada de dados consiste em um arquivo de
texto que segue o exemplo abaixo:
Figura 7 - Elementos do pórtico
Figura 8 - Nós do pórtico
Figura 9 - Gráfico evolutivo
Figura 11 - Estrutura da placa
Figura 12 - Elementos da placa
Figura 10 - Melhor indivíduo
3.3. Experimento 2
Neste segundo experimento foi modelada a placa da
Figura 11. Os elementos são mostrados na Figura 12 e os
nós na Figura 13. O gráfico evolutivo é dado pela Figura
14 e os dados do melhor indivíduo pela Figura 15.
Figura 13 - Nós da placa
Figura 14 - Gráfico evolutivo
Figura 15 - Melhor indivíduo
4.
Conclusões
Algumas conclusões puderam ser tiradas com os
experimentos realizados, demonstrando a eficácia da
utilização do Algoritmo Genético neste tipo de problemas.
Considera-se que foram encontrados resultados
satisfatórios para as estruturas analisadas e o mais
importante foi que soluções cada vez melhores foram
encontradas conforme se aumenta o número de graus de
liberdade da estrutura, dado que existem mais
possibilidades de permutação da numeração nodal.
5.
Referências Bibliográficas
Felippa, Carlos A. Introduction to Finite Element
Methods. Draft, Department of Aerospace Engineering
Sciences at the University of Colorado at Boulder. 2004.
Boulder, Colorado, USA.
Download

Utilização de Algoritmos Genéticos para - RICA - PUC-Rio