universidade de brasÍlia - pecc.unb.br · 70.200-002 brasília – df brasil. iii. ... 10 2.3 –...

125
ALGORITMO GENÉTICO PARA OTIMIZAÇÃO DE ESTRUTURAS RETICULADAS LI CHONG LEE BACELAR DE CASTRO DISSERTAÇÃO DE MESTRADO EM ESTRUTURAS E CONSTRUÇÃO CIVIL DEPARTAMENTO DE ENGENHARIA CIVIL E AMBIENTAL FACULDADE DE TECNOLOGIA UNIVERSIDADE DE BRASÍLIA

Upload: dodat

Post on 19-Sep-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

ALGORITMO GENÉTICO PARA OTIMIZAÇÃO DE ESTRUTURAS

RETICULADAS

LI CHONG LEE BACELAR DE CASTRO

DISSERTAÇÃO DE MESTRADO EM

ESTRUTURAS E CONSTRUÇÃO CIVIL

DEPARTAMENTO DE ENGENHARIA CIVIL E AMBIENTAL

FACULDADE DE TECNOLOGIA

UNIVERSIDADE DE BRASÍLIA

UNIVERSIDADE DE BRASÍLIA

FACULDADE DE TECNOLOGIA

DEPARTAMENTO DE ENGENHARIA CIVIL E AMBIENTAL

ALGORITMO GENÉTICO PARA OTIMIZAÇÃO DE

ESTRUTURAS RETICULADAS

LI CHONG LEE BACELAR DE CASTRO

ORIENTADOR: PAUL WILLIAM PARTRIDGE

DISSERTAÇÃO DE MESTRADO EM ESTRUTURAS E

CONSTRUÇÃO CIVIL

PUBLICAÇÃO: E.DM - 001 A/05

BRASÍLIA/DF: MARÇO – 2005

UNIVERSIDADE DE BRASÍLIA

FACULDADE DE TECNOLOGIA

DEPARTAMENTO DE ENGENHARIA CIVIL

ALGORITMO GENÉTICO PARA OTIMIZAÇÃO DE ESTRUTURAS

RETICULADAS.

LI CHONG LEE BACELAR DE CASTRO

DISSERTAÇÃO SUBMETIDA AO DEPARTAMENTO DE ENGENHARIA CIVIL E AMBIENTAL DA FACULDADE DE TECNOLOGIA DA UNIVERSIDADE DE BRASÍLIA COMO PARTE DOS REQUISÍTOS NECESSÁRIOS PARA A OBTENÇÃO DO GRAU DE MESTRE EM ESTRUTURAS E CONSTRUÇÃO CIVIL.

APROVADA POR:

_________________________________________________

Prof. Paul William Partridge, PhD (ENC-UnB) (Orientador) _________________________________________________ Prof. Luciano Mendes Bezerra, PhD (ENC-UnB) (Examinador Interno) _________________________________________________ Prof. Nelson Francisco Favilla Ebecken, DSc (COPPE-UFRJ) (Examinador Externo) BRASÍLIA/DF, 04 DE MARÇO DE 2005.

ii

FICHA CATALOGRÁFICA

CASTRO, LI CHONG LEE BACELAR DE Algoritmo Genético Para Otimização de Estruturas Reticuladas [Distrito Federal] 2005. xviii, 106p., 297 mm (ENC/FT/UnB, Mestre, Estruturas e Construção Civil, 2005).

Dissertação de Mestrado – Universidade de Brasília. Faculdade de Tecnologia.

Departamento de Engenharia Civil e Ambiental. 1.Estruturas Reticuladas 2.Algoritmo Genético 3.Elementos Finitos 4.Otimização de Peso I. ENC/FT/UnB II. Título (série)

REFERÊNCIA BIBLIOGRÁFICA

CASTRO, L. L. B. (2005). Algoritmo Genético Para Otimização de Estruturas Reticuladas.

Dissertação de Mestrado em Estruturas e Construção Civil, Publicação E.DM 001A/05,

Departamento de Engenharia Civil e Ambiental, Universidade de Brasília, Brasília, DF,

106p.

CESSÃO DE DIREITOS

AUTOR: Li Chong Lee Bacelar de Castro.

TÍTULO: Algoritmo Genético Para Otimização de Estruturas Reticuladas.

GRAU: Mestre ANO: 2005

É concedida à Universidade de Brasília permissão para reproduzir cópias desta dissertação

de mestrado e para emprestar ou vender tais cópias somente para propósitos acadêmicos e

científicos. O autor reserva outros direitos de publicação e nenhuma parte dessa dissertação

de mestrado pode ser reproduzida sem autorização por escrito do autor.

____________________________

Li Chong Lee Bacelar de Castro SCES, TR. 02, LT. 02/41, AP. 203B, Asa Sul. 70.200-002 Brasília – DF Brasil.

iii

AGRADECIMENTOS Ao Professor Paul pela orientação, dedicação, paciência, incentivo e principalmente, pelas

valiosas sugestões e ensinamentos transmitidos.

A minha família, que não vejo há dois anos: Ailton, Sued, Lilian, Guliver, Joseph e

Anthony. Saudades!

A minha futura esposa, pela paciência, carinho e apoio: Patrícia, eu te amo.

Aos professores e funcionários do Programa de Pós-Graduação em Estruturas e Construção

Civil da UnB, em especial ao Professor Luciano Mendes Bezerra pelos conhecimentos

transmitidos nas disciplinas de Métodos dos Elementos de Contorno e Estruturas

Metálicas, e ao Professor Guilherme, pelo apoio no início do curso e orientações que,

foram e são valiosas na minha formação acadêmica.

Aos amigos da sala 14: Arlindo, Cláudio, José Mendes e Sávio. Arlindo, obrigado pela

disciplina, incentivo, sugestões nesta dissertação e principalmente pela sua amizade.

Ao Alexandre Gil, pelas correções iniciais e pelo companheirismo.

A “comunidade natalense”, que não nos deixam esquecer de onde viemos e aos amigos que

não mencionei, mas que estão em meu coração.

Não poderia esquecer o Engenheiro Lenílson e família, que sempre estiveram dispostos em

me ajudar.

À CAPES, pelo apoio financeiro.

iv

Dedicado a minha falecida

mãe, Stela Cristina.

v

RESUMO ALGORITMO GENÉTICO PARA OTIMIZAÇÃO DE ESTRUTURAS RETICULADAS Autor: Li Chong Lee Bacelar de Castro Orientador: Paul William Partridge Programa de Pós-graduação em Estruturas e Construção Civil Brasília, março de 2005.

Neste trabalho, o Algoritmo Genético (AG) é utilizado para a otimização de estruturas

reticuladas. O objetivo destes algoritmos é obter uma solução para um problema específico

usando uma estrutura de dados baseado em um cromossomo, uma das possíveis soluções

do problema. Os cromossomos são estruturados em uma cadeia binária e operadores

genéticos são aplicados para gerarem novos pontos amostrais em um espaço de busca que

recombinam estas estruturas preservando e aprimorando informações críticas. O Método

dos Elementos Finitos (MEF) é combinado com o AG com o intuito de avaliar cada

solução possível produzida. A otimização da estrutura é obtida através da minimização da

função objetivo, que para os exemplos considerados, estão em termos das áreas das seções

transversais das barras, peso específico e comprimentos das barras, representando o peso

global da estrutura. A função objetivo é responsável por classificar os indivíduos de acordo

com o grau de adaptação. Essa classificação é feita através da ordenação das soluções em

ordem crescente. O MEF permite avaliar a estrutura estática e dinamicamente. As áreas,

que são as variáveis de projeto, devem estar dentro de determinados limites, para obter

soluções factíveis. O controle dessa região – através de restrições – é proporcionado pela

consideração de penalizações na função objetivo. Restrições são aplicadas às tensões, aos

deslocamentos nodais e as freqüências naturais. Alguns exemplos em treliças e pórticos

são mostrados, objetivando a robustez e sua eficiência frente a outros métodos. O uso dos

algoritmos genéticos produz excelentes resultados e é de fácil implementação

computacional. Tal metodologia busca também sugerir seções iniciais de dimensionamento

que podem ser usadas na prática pelos projetistas em estruturas metálicas reticuladas.

vi

ABSTRACT GENETIC ALGORITHM FOR OPTIMIZATION OF FRAMED STRUCTURES Author: Li Chong Lee Bacelar de Castro Supervisor: Paul William Partridge Programa de Pós-graduação em Estruturas e Construção Civil Brasília, March of 2005

Here a Genetic Algorithm (GA) is used to optimize frame structures. The objective of

these algorithms is to obtain a solution to a specific problem using a data structure based

on a number of chromosomes, each of which contains a possible solution to the problem.

The chromosomes are stored as binary strings and genetic operators are applied to generate

new points in the search space that recombine these structures preserving and improving

critical information. The Finite Element Method (FEM) is combined with the GA in order

to analyses each possible solution produced. The optimization of the structure is carried out

thought the minimization of the objective function, which for the examples considered

here, is couched in terms of the cross sectional area, the specific weight and the length of

the bars, from which the total weight of the structure is obtained. The objective function

allows each member of the new population of chromosomes to be classified in accordance

with its degree of adaptation. This classification is obtained by ordering the solution in

increasing weight. The FEM allows the static and dynamic analysis of the structure.

The cross sectional areas of the bars, that are the project variables, must be within certain

limits in order to obtain feasible solutions. The control of these restrictions is done through

the use of penalty functions. Restrictions are applied to stresses, nodal displacements and

natural frequencies. Some examples of trusses and frames are considered and it is shown

that the algorithm is robust and efficient compared to the other methods. The genetic

algorithm produced excellent results and is easily implemented. The algorithm also permits

initial cross sectional areas be suggested for practical use by steel frame designers.

vii

SUMÁRIO

1 – INTRODUÇÃO ............................................................................................................. 1

1.1 – CONSIDERAÇÕES INICIAIS ........................................................................... 1

1.2 – MOTIVAÇÃO....................................................................................................... 2

1.3 – OBJETIVOS ......................................................................................................... 2

1.4 – ESTRUTURA DA DISSERTAÇÃO................................................................... 2

2 – OTIMIZAÇÃO .............................................................................................................. 4

2.1 – INTRODUÇÃO...................................................................................................... 4

2.2 – A FORMULAÇÃO DE UM PROBLEMA DE OTIMIZAÇÃO....................... 5

2.2.1 – A formulação de um problema de otimização com restrições................. 6

2.2.2 – Funções de penalização ............................................................................... 7

2.2.1.1 – Penalidades Estáticas .................................................................................. 9

2.2.1.2 – Penalidades Dinâmicas ............................................................................... 9

2.2.1.3 – Penalidades Adaptativas ........................................................................... 10

2.3 – MÉTODOS DE OTIMIZAÇÃO ........................................................................ 10

2.4 – COMPUTAÇÃO NATURAL ............................................................................. 12

2.4.1 – Lógica Nebulosa ......................................................................................... 13

2.4.2 – Redes Neurais Artificiais........................................................................... 13

2.4.3 – Computação Evolucionária....................................................................... 13

2.4.3.1 – Algoritmos Genéticos ............................................................................... 14

2.4.3.2 – Programação Evolucionária...................................................................... 14

2.4.3.3 – Estratégias Evolucionárias........................................................................ 15

2.4.3.4 – Programação Genética .............................................................................. 15

2.4.3.5 – Estratégia de Colônia................................................................................ 15

3 – ALGORITMOS GENÉTICOS .................................................................................. 16

3.1 – INTRODUÇÃO.................................................................................................... 16

3.2 – ALGUNS PROJETOS E PESQUISAS SOBRE ALGORITMOS

GENÉTICOS NA ENGENHARIA .................................................................................. 17

3.3 – VANTAGENS E DESVANTAGENS DOS ALGORITMOS GENÉTICOS.. 19

3.3.1 – Vantagens ................................................................................................... 19

3.3.2 – Desvantagens .............................................................................................. 20

viii

3.4 – ANALOGIA DO MECANISMO DE SELEÇÃO NATURAL COM A

OTIMIZAÇÃO DE SISTEMAS ARTIFICIAIS ............................................................ 20

3.5 – TEORIA DO PROCESSO EVOLUTIVO......................................................... 24

3.5.1 – Hipóteses dos Blocos de Construção ........................................................ 25

3.5.2 – Teorema Fundamental dos Algoritmos Genéticos.................................. 25

3.5.2.1 – Convergência dos Algoritmos Genéticos ................................................. 28

3.5.3 – Paralelismo Implícito................................................................................. 29

3.6 – ALGORITMOS GENÉTICOS GENÉRICOS.................................................. 30

3.6.1 – Algoritmo Genético Geracional................................................................ 32

3.6.2 – Algoritmo Genético em Regime................................................................ 33

3.7 – ESTRUTURA DE FUNCIONAMENTO........................................................... 33

3.7.1 – A representação ......................................................................................... 34

3.7.1.1 – Dimensionamento das variáveis ............................................................... 34

3.7.1.2 – Mapeamento das variáveis........................................................................ 35

3.7.2 – A configuração ........................................................................................... 36

3.7.2.1 – Tamanho da população ............................................................................. 36

3.7.2.2 – Taxa ou probabilidade de cruzamento...................................................... 37

3.7.2.3 – Taxa ou probabilidade de mutação ........................................................... 37

3.7.2.4 – Recomendações ........................................................................................ 38

3.7.3 – A inicialização ............................................................................................ 39

3.7.4 – Classificação dos cromossomos ................................................................ 39

3.7.4.1 – Ordenamento linear .................................................................................. 40

3.7.4.2 – Ordenamento exponencial ........................................................................ 41

3.7.4.3 – Escalonamento linear................................................................................ 41

3.7.5 – Avaliação dos cromossomos...................................................................... 42

3.7.5.1 – Roleta........................................................................................................ 42

3.7.5.2 – Torneio...................................................................................................... 44

3.7.5.3 – Amostragem Determinística ..................................................................... 44

3.7.5.4 – Seleção Estocástica Remanescente........................................................... 45

3.7.6 – Operadores de cruzamento e mutação .................................................... 45

3.7.6.1 – Operador de cruzamento........................................................................... 45

3.7.6.2 – Operador de mutação................................................................................ 47

3.7.7 – Atualização e critérios de parada............................................................. 47

3.7.7.1 – Atualização ............................................................................................... 47

ix

3.7.7.2 – Critérios de parada.................................................................................... 48

3.8 – OUTRAS ESTRATÉGIAS EMPREGÁVEIS................................................... 48

3.8.1 – Controle da diversidade populacional ..................................................... 48

3.8.2 – Hibridização ............................................................................................... 49

3.8.3 – Computação Paralela ................................................................................ 50

3.9 – CONSIDERAÇÕES GERAIS SOBRE O MÉTODO DOS ELEMENTOS

FINITOS............................................................................................................................. 51

3.9.1 – Análise Estática.......................................................................................... 52

3.9.1.1 – Elemento finito unidimensional reto para treliça...................................... 52

3.9.1.2 – Elemento finito unidimensional reto para viga......................................... 54

3.9.1.3 – Elemento finito unidimensional reto para pórtico .................................... 55

3.9.2 – Análise Dinâmica ....................................................................................... 56

3.9.2.1 – Vibrações livres ........................................................................................ 57

3.9.2.2 – Matriz de massa consistente ..................................................................... 58

3.10 – ACOPLAMENTO DOS ALGORITMOS GENÉTICOS COM

ELEMENTOS FINITOS PARA ESTRUTURAS RETICULADAS ............................ 59

4 – ANÁLISE NUMÉRICA.............................................................................................. 61

4.1 – INTRODUÇÃO.................................................................................................... 61

4.2 – TESTANDO O ALGORITMO GENÉTICO.................................................... 62

4.2.1 – Função Seno ............................................................................................... 63

4.2.1.1 – Maximizando ............................................................................................ 63

4.2.1.2 – Minimizando............................................................................................. 66

4.2.2 – Função de Rosenbrock .............................................................................. 68

4.2.3 – Conclusões .................................................................................................. 71

4.3 – ANÁLISE ESTÁTICA ........................................................................................ 71

4.4 – TRELIÇA PLANA DE 10 BARRAS ................................................................. 72

4.4.1 – Caso contínuo ............................................................................................. 74

4.3.1.1 – Otimização à tensão.................................................................................. 74

4.3.1.2 – Otimização à tensão e ao deslocamento combinados ............................... 75

4.4.2 – Caso discreto .............................................................................................. 77

4.4.3 – Conclusões .................................................................................................. 79

4.5 – TRELIÇA PLANA DE 38 BARRAS ................................................................. 79

4.5.1 – Caso contínuo ............................................................................................. 80

x

4.5.2 – Caso discreto .............................................................................................. 83

4.5.3 – Conclusões .................................................................................................. 85

4.6 – PÓRTICO PLANO DE 3 BARRAS................................................................... 85

4.6.1 – Caso I .......................................................................................................... 86

4.6.2 – Caso II......................................................................................................... 87

4.6.3 – Caso III ....................................................................................................... 88

4.6.4 – Resultados e conclusões............................................................................. 89

4.7 – EDIFÍCIO INDUSTRIAL DE 33 BARRAS (PÓRTICO ROTULADO) ....... 90

4.7.1 – Conclusões .................................................................................................. 93

4.8 – ANÁLISE DINÂMICA ....................................................................................... 94

4.9 – PÓRTICO PLANO DE 3 BARRAS................................................................... 95

4.9.1 – Caso I .......................................................................................................... 96

4.9.2 – Caso II......................................................................................................... 97

4.9.3 – Caso III ....................................................................................................... 98

4.9.4 – Resultados e conclusões............................................................................. 99

5 – CONCLUSÕES.......................................................................................................... 100

5.1 – INTRODUÇÃO.................................................................................................. 100

5.2 – CONCLUSÕES.................................................................................................. 100

5.3 – SUGESTÕES...................................................................................................... 101

REFERÊNCIAS BIBLIOGRÁFICAS .......................................................................... 102

xi

LISTA DE TABELAS

Tabela 2.1 – Algoritmos de Otimização (modificado - Soares, 1997). ............................... 11

Tabela 3.1 – Cromossomo, Esquemas, Comprimento de definição e Ordem. .................... 26

Tabela 3.2 – Valores aconselhados por De Jong (1975). .................................................... 38

Tabela 3.3 – Valores aconselhados por Grefenstette (1986) – Opção 1.............................. 38

Tabela 3.4 – Valores aconselhados por Grefenstette (1986) – Opção 2.............................. 39

Tabela 3.5 – Código binário, Código de Gray e a distância Hamming............................... 49

Tabela 3.6 – Valores aconselhados por Schaffer (1989). .................................................... 49

Tabela 4.1 – Parâmetros para a função seno. ...................................................................... 64

Tabela 4.2 – Parâmetros para a função de Rosenbrock (Primeira parametrização) ............ 70

Tabela 4.3 – Parâmetros para a função de Rosenbrock (Parametrização final) .................. 70

Tabela 4.4 – Propriedades do material e restrições (Treliça de 10 barras).......................... 73

Tabela 4.5 – Parâmetros para a treliça de 10 barras (Variáveis contínuas)......................... 74

Tabela 4.6 – Resultados comparativos (Peso e seções transversais para as tensões).......... 75

Tabela 4.7 – Resultados comparativos (Tensões nas seções transversais).......................... 75

Tabela 4.8 – Resultados comparativos (Tensões e deslocamentos). ................................... 76

Tabela 4.9 – Resultados comparativos (Peso e seções transversais para as tensões).......... 76

Tabela 4.10 – Conjunto de seções transversais disponíveis do AISC. ................................ 77

Tabela 4.11 – Parâmetros para a treliça de 10 barras (Variáveis discretas). ....................... 78

Tabela 4.12 – Resultados comparativos (Tensões e deslocamentos). ................................. 78

Tabela 4.13 – Resultados comparativos (Peso e seções transversais)................................. 78

Tabela 4.14 – Seções transversais agrupadas (Treliça de 38 barras)................................... 80

Tabela 4.15 – Propriedades do material e restrições (Treliça de 38 barras)........................ 80

Tabela 4.16 – Parâmetros para a treliça de 38 barras (Variáveis contínuas)....................... 81

Tabela 4.17 – Resultados comparativos ( Peso e deslocamento) ........................................ 82

Tabela 4.18 – Resultados comparativos (Seções transversais)............................................ 82

Tabela 4.19 – Parâmetros para a treliça de 38 barras (Variáveis discretas). ....................... 83

Tabela 4.20 – Resultados comparativos ( Peso e deslocamento) ........................................ 83

Tabela 4.21 – Resultados comparativos (Seções transversais)............................................ 84

Tabela 4.22 – Características das três casos do pórtico de 3 barras .................................... 86

Tabela 4.23 – Propriedades do material e restrições (Pórtico de 3 barras). ........................ 86

Tabela 4.24 – Parâmetros para o pórtico de 3 barras (Caso I)............................................. 87

Tabela 4.25 – Parâmetros para o pórtico de 3 barras (Caso II). .......................................... 87

xii

Tabela 4.26 – Propriedades do material e restrições. .......................................................... 88

Tabela 4.27 – Parâmetros para o pórtico de 3 barras (Caso III). ......................................... 89

Tabela 4.28 – Resultados comparativos (Três casos).......................................................... 90

Tabela 4.29 – Grupos e tipos de seções comerciais (Pórtico de 33 barras)......................... 91

Tabela 4.30 – Conjunto de seções transversais disponíveis do AISC. ................................ 91

Tabela 4.31 – Propriedades do material e restrições (Pórtico de 33 barras). ...................... 92

Tabela 4.32 – Parâmetros para o pórtico de 33 barras......................................................... 92

Tabela 4.33 – Resultados comparativos (Seções transversais, perfis e peso). .................... 93

Tabela 4.34 – Características das três casos do pórtico de 3 barras .................................... 95

Tabela 4.35 – Propriedades do material e restrições (Pórtico de 3 barras). ........................ 96

Tabela 4.36 – Parâmetros para o pórtico de 3 barras........................................................... 96

Tabela 4.37 – Resultados comparativos (Três casos).......................................................... 99

xiii

LISTA DE FIGURAS

Figura 2.1 – Pulso de seno (modificado - Lacerda e Carvalho, 1999). ................................. 6

Figura 2.2 – Treliça com duas barras (modificado - Fox, 1973). .......................................... 7

Figura 2.3 – Representação gráfica do espaço de busca (modificado - Fox, 1973). ............. 8

Figura 2.4 – Subáreas da Computação Natural (modificado - Castro, 2001)...................... 12

Figura 2.5 – Subáreas da Computação Evolucionária (modificado - Castro, 2001). .......... 14

Figura 3.1 – Trajeto retilíneo (Dorigo e Stützle, 2004). ...................................................... 21

Figura 3.2 – Introdução de um obstáculo (Dorigo e Stützle, 2004). ................................... 21

Figura 3.3 – Divisão das formigas no percurso (Dorigo e Stützle, 2004). .......................... 21

Figura 3.4 – Percurso ótimo com o passar do tempo (Dorigo e Stützle, 2004)................... 21

Figura 3.5 – Visão geométrica dos hiperplanos em 3D (Soares, 1997). ............................. 30

Figura 3.6 – Aplicabilidade versus Eficiência (Goldberg, 1989). ....................................... 31

Figura 3.7 – Estrutura de funcionamento de um Algoritmo Genético Genérico................. 32

Figura 3.8 – Cadeia com codificação binária. ..................................................................... 35

Figura 3.9 – Pressão de Seleção (modificado – Lacerda e Carvalho, 1999). ...................... 41

Figura 3.10 – Esboço do escalonamento linear (modificado - Goldberg, 1989)................. 42

Figura 3.11 – Amostragem estocástica universal. ............................................................... 43

Figura 3.12 – Método da roleta com elitismo (modificado – Sampaio, 2004).................... 44

Figura 3.13 – Cruzamento de um ponto (Sampaio, 2004). ................................................. 46

Figura 3.14 – Cruzamento de 2 pontos................................................................................ 46

Figura 3.15 – Cruzamento uniforme. .................................................................................. 47

Figura 3.16 – Operador de mutação (Sampaio, 2004)......................................................... 47

Figura 3.17 – Elemento de treliça plana. ............................................................................. 52

Figura 3.18 – Elemento de viga plana. ................................................................................ 54

Figura 3.19 – Elemento de pórtico plano. ........................................................................... 55

Figura 3.20 – Funcionamento de um Algoritmo Genético com Elementos Finitos. ........... 60

Figura 4.1 – Estrutura de funcionamento do programa de Algoritmo Genético. ................ 61

Figura 4.2 – Pulso de seno................................................................................................... 63

Figura 4.3 – Distribuição da população inicial (Maximização). ......................................... 65

Figura 4.4 – Distribuição da população nas gerações 1, 4 e 6 (Maximização). .................. 65

Figura 4.5 – Distribuição da população nas gerações 8 e 10 (Maximização). .................... 66

Figura 4.6 – Evolução da maximização da função seno...................................................... 66

Figura 4.7 – Distribuição da população na geração inicial (Minimização)......................... 67

xiv

Figura 4.8 – Distribuição da população nas gerações 1, 4 e 6 (Minimização).................... 67

Figura 4.9 – Distribuição da população nas gerações 8 e 10 (Minimização)...................... 67

Figura 4.10 – Evolução da minimização da função seno. ................................................... 68

Figura 4.11 – Função de Rosenbrock. ................................................................................. 68

Figura 4.12 – Evolução da minimização da função de Rosenbrock.................................... 70

Figura 4.13 – Estrutura de funcionamento do programa de MEF estático linear................ 71

Figura 4.14 – Treliça de 10 barras....................................................................................... 72

Figura 4.15 – Minimização do peso da treliça de 10 barras (Tensão)................................. 75

Figura 4.16 – Minimização do peso da treliça de 10 barras (Tensão e deslocamento). ...... 77

Figura 4.17 – Minimização do peso da treliça de 10 barras (Tensão e deslocamento). ...... 79

Figura 4.18 – Treliça de 38 barras (modificado – Templeman, 1988)................................ 80

Figura 4.19 – Minimização do peso da treliça de 38 barras (Caso contínuo). .................... 81

Figura 4.20 – Minimização do peso da treliça de 38 barras (Caso discreto)....................... 85

Figura 4.21 – Pórtico de 3 barras......................................................................................... 85

Figura 4.22 – Minimização do peso do pórtico de 3 barras (Caso I). ................................. 87

Figura 4.23 – Minimização do peso do pórtico de 3 barras (Caso II). ................................ 88

Figura 4.24 – Minimização do peso do pórtico de 3 barras (Caso III)................................ 89

Figura 4.25 – Pórtico de 33 barras....................................................................................... 90

Figura 4.26 – Minimização do peso do pórtico de 33 barras. ............................................. 93

Figura 4.27 – Funcionamento do programa em MEF para vibrações livres. ...................... 94

Figura 4.28 – Pórtico de 3 barras......................................................................................... 95

Figura 4.29 – Minimização do peso do pórtico de 3 barras (Caso I). ................................. 97

Figura 4.30 – Minimização do peso do pórtico de 3 barras (Caso II). ................................ 98

Figura 4.31 – Minimização do peso do pórtico de 3 barras (Caso III)................................ 98

xv

LISTA DE SÍMBOLOS, NOMENCLATURA E ABREVIAÇÕES

1 - Símbolos

(mín) – minimização

(máx) – maximização

– variável x, xi

)(),( xfxF – função objetivo

penal (x) – função de penalização

* – coringa, pode ser tanto o 0 quanto o 1

H, H1, H2 – esquemas

),( tHm – m representantes de um esquema H, numa geração t

medi ff , – desempenho e desempenho médio respectivamente

)1,( +tHm – m representantes de um esquema H, numa geração t + 1

2 - Matrizes e vetores

K – matriz de rigidez

M – matriz de massa

R – matriz de rotação

P – vetor das forças nodais

– vetor das funções de forma Ni

U, u – vetor dos deslocamentos nodais globais

– vetor dos deslocamentos nodais locais uL

X – vetor de variáveis, domínio da variável xi

3 - Escalares

xiL, xi

U – limites inferior e superior das variáveis respectivamente

tll, – comprimento e comprimento total de uma cadeia de caracteres respectivamente

)(Ho – ordem de um esquema

)(Hδ – comprimento de definição de um esquema

)(Hf – desempenho de um esquema

P, Pi – probabilidade de seleção

– número de indivíduos, tamanho da população popn

xvi

Pd, PD – probabilidades de destruição e de destruição real respectivamente

mc pp , – probabilidades de cruzamento e mutação respectivamente

PS, PS2 – probabilidade de sobrevivência

K, C – constante

k – número de alelos diferentes de um cromossomo

nv – número de variáveis discretas

ε – precisão decimal, deformação

ID – valor decodificado de um número binário em inteiro

– densidade de massa ρ

Li – comprimento de uma barra

– área da seção transversal Ai

W – peso de uma estrutura

– número inteiro esperado de cópias de um indivíduo Ei

– resíduo, parte fracionária do número de cópias esperadas de um indivíduo Ri

dH – distância Hamming

– componente de deslocamento na direção x iu

– componente de deslocamento na direção y iv

– componente de deslocamento na direção z iθ

– tensão normal σi

E – módulo de elasticidade

– freqüência natural iω

4 - Índices ( )T – denota transposta de uma matriz ou vetor

– indica que uma operação é feita no contorno do elemento em estudo ( )Γ

– indica que uma operação é feita no domínio do elemento em estudo ( )Ω

5 - Abreviaturas

AG – Algoritmo Genético

AGs – Algoritmos Genéticos

MEF – Método dos Elementos Finitos

FO – Função Objetivo

xvii

PO – Problema de Otimização

AFi – Função de aptidão ou desempenho

AISC – American Institute of Steel Construction

ASCII – American Standard Code for Information Interchange

xviii

1 – INTRODUÇÃO

1.1 – CONSIDERAÇÕES INICIAIS

Um projeto estrutural concentra-se na determinação de proporções ótimas de uma

variedade de tipos de formas para carregamentos atuantes, feitas através de várias análises

visando à concepção ou determinação da estrutura de melhor desempenho global. Sendo a

otimização estrutural uma fusão de áreas da engenharia e da matemática, capaz de

adicionar dados ao projeto estrutural além da experiência do projetista.

Segundo Xie e Steven (1997) os aspectos importantes da otimização que o projetista deve

estar atento incluem:

• Tamanho, forma e topologia sendo otimizados no mesmo problema em diferentes

partes da estrutura;

• Critérios diferentes de otimização em partes diferentes da estrutura;

• Estrutura composta por vários tipos de materiais;

• Consideração de análises bi e tridimensionais;

• Otimização considerando-se análises estáticas, dinâmicas e estabilidade

simultaneamente;

• Otimização com não linearidades físicas e geométricas.

A maioria dos engenheiros projetistas que dimensionam estruturas emprega robustos

pacotes comerciais de análise estrutural de uso geral e complexo, como o ANSYS®,

SAP2000® e outros, para os aspectos anteriormente mencionados. Freqüentemente, os

usuários não têm acesso ao código fonte, e mais ainda, ao conhecimento detalhado dos

algoritmos de análise estrutural contido nestes pacotes. No entanto, o maior desafio para os

pesquisadores em otimização estrutural é desenvolver métodos próprios para usar com os

pacotes comerciais. Um outro grande desafio é o alto custo computacional associado com a

análise dos mais complexos problemas do cotidiano. Em geral, o engenheiro que tem a

tarefa de dimensionar a estrutura não dispõe de muito tempo para analisá-la

exaustivamente.

Este ambiente propicia a busca de técnicas que minimizem as necessidades de pacotes

comerciais e que requeiram apenas um pequeno número de iterações.

1

Problemas, cujo principal objetivo está em determinar estruturas com peso mínimo

(mínimo custo) são comuns, se mostram bastante atraentes quanto ao aspecto econômico.

Por exemplo, projetos em estruturas metálicas, peças mecânicas com um grande número de

unidades fabricadas, se obtiverem uma redução por menor que seja em cada unidade

corresponderá a uma economia global considerável.

1.2 – MOTIVAÇÃO

A motivação em desenvolver pesquisa em aplicação de algoritmos genéticos em

otimização estrutural se dá pelos seguintes aspectos:

• Fácil identificação de solução ótima global, em geral;

• Fácil implementação na análise com variáveis contínuas e discretas - problemas

típicos de engenharia;

• Eficaz quando a otimização tem multi-objetivos;

• Domínio de aplicação amplo.

1.3 – OBJETIVOS

Este trabalho tem como objetivo desenvolver e implementar algoritmos genéticos com

elementos finitos para estruturas reticuladas com o intuito de resolver problemas de

otimização estrutural, assim como mostrar a robustez dos algoritmos genéticos e como

podem resolver problemas que apresentam dificuldades significativas quando analisados

por outros métodos e sugerir seções iniciais de dimensionamento que podem ser usadas na

prática pelos projetistas em estruturas reticuladas.

1.4 – ESTRUTURA DA DISSERTAÇÃO

O trabalho está subdividido em cinco capítulos incluindo a Introdução e a Conclusão.

O primeiro Capítulo é esta introdução. O Capítulo dois apresenta a formulação clássica de

um problema geral de otimização e a classificação dos algoritmos de otimização existentes.

Também são introduzidos os conceitos fundamentais de variáveis de projeto, restrições,

função objetivo e penalização.

No Capítulo três encontram-se as origens e os fundamentos teóricos sobre os algoritmos

genéticos, sua classificação em relação aos outros algoritmos evolucionários de otimização

2

existentes. Ainda neste capítulo é mostrado o acoplamento do AG com o MEF e alguns

tópicos em algoritmos genéticos, como os parâmetros de influência e configuração.

O Capítulo quatro mostra a análise de alguns casos clássicos de otimização estrutural

envolvendo pórticos e treliças, com a inclusão de variáveis contínuas e discretas. São

utilizados nas análises de dimensionamento, as tensões axiais, os deslocamentos nodais e

freqüências naturais. Os resultados são comparados aos da literatura.

Finalmente, no Capítulo cinco, apresentam-se as conclusões deste trabalho, as dificuldades

apresentadas, as sugestões e as propostas para possíveis desenvolvimentos futuros em

otimização estrutural através dos algoritmos genéticos.

3

2 – OTIMIZAÇÃO

2.1 – INTRODUÇÃO

Pode-se dizer que a otimização está intrinsecamente ligada ao desejo humano de se

superar (Vanderplaats, 1984).

Apesar de existirem muitos métodos de otimização, eles não são aplicados apenas na

engenharia, mas em outras áreas como na economia, medicina e ciências aplicadas. A

otimização estrutural tenta encontrar a melhor disposição das variáveis de projeto, com ou

sem restrições, dispostas no comportamento estrutural, geometria e outros fatores.

O objetivo da otimização está definido pela função objetivo (FO), que define alguma

grandeza significativa (custo, peso, dimensões, carregamento, etc.).

Segundo Gallagher (1977) as três partes básicas da otimização – variáveis de projeto,

função objetivo e restrições – contribuem para o dimensionamento em um espaço de busca

formado pelos dados do problema.

O tipo de função objetivo depende das informações disponíveis através dos resultados

conhecidos. Stark e Nicholls (1978) classificam as informações disponíveis de três

maneiras:

• De certeza: todas as ações realizadas para o problema levam a um resultado

esperado e conhecido;

• De risco: cada ação realizada para o problema leva a vários resultados. O resultado

definitivo não é conhecido até o problema ser posto em prática, mas a

probabilidade dos vários resultados ocorridos é conhecida;

• De incerteza: cada ação realizada para o problema leva a resultados que não são

bem conhecidos e as probabilidades destes resultados não podem ser estipulados.

Problemas de certeza e de incerteza podem ser classificados como casos limites de

problemas de risco.

Enquanto muitos problemas na prática são representados pela maior parte dos engenheiros

como problemas de certeza, visto que os mesmos são geralmente fáceis de modelar, os de

risco e de incerteza atraem as pesquisas atuais, pois levam a modelagens mais fidedignas.

4

2.2 – A FORMULAÇÃO DE UM PROBLEMA DE OTIMIZAÇÃO

Um problema de otimização (PO) está sempre associado a um problema de minimização

ou maximização de uma ou mais funções. No caso de minimização o PO pode ser colocado

na seguinte forma (Lemonge, 1999):

minimize W = f (x1, x2, x3, ..., xn) (2.1)

Onde a minimização da função f(x), x ∈ Rn, é equivalente à maximização da função g(x),

sendo que:

g(x) = - f(x) (2.2)

Assim, tem-se:

(mín) f(x) = (máx) g(x) = (máx) - f(x) (2.3)

As funções f(x) e g(x) são conhecidas como funções objetivo. Podem ser de uma ou mais

variáveis, sendo estas duas opções classificadas como otimização unidimensional e

multidimensional respectivamente. São estas funções que desejamos minimizar ou

maximizar, ou seja, encontrar o seu ponto extremo em um intervalo de busca (Santos

Júnior, 2002).

Em geral, é difícil afirmar que tal valor é extremo ou global devido à possibilidade de

existência de vários extremos locais e, assim, somente um deles será global, como visto na

Figura 2.1. O que se pode afirmar é que o valor encontrado é mínimo em uma vizinhança

do espaço de busca (Valente et al., 2002; Sampaio, 2004).

As variáveis – ou comumente variáveis de projeto – são aquelas que se alteram durante o

processo de otimização. Elas podem ser contínuas (reais), discretas ou inteiras (valores

compreendidos dentro de certo conjunto fixo).

5

Mínimos locais Mínimo global

Figura 2.1 – Pulso de seno (modificado - Lacerda e Carvalho, 1999).

Segundo Castro (2001), de um ponto de vista físico, as variáveis de projeto podem

representar as seguintes informações sobre uma estrutura:

• Propriedades mecânicas ou físicas do material;

• A topologia da estrutura, ou seja, padrão de conexão dos elementos ou o número de

elementos em uma estrutura;

• A forma geométrica ou a configuração da estrutura;

• Dimensões das seções transversais ou comprimento dos elementos.

2.2.1 – A formulação de um problema de otimização com restrições

Um PO com restrições pode ser formulado matematicamente da seguinte forma (Haftka e

Gürdal, 1992):

minimize W = f (x1, x2, x3, ..., xn)

submetido a gi (x) ≤ 0 para i = 1, ..., m

hi (x) = 0 para i = 1, ..., n

x ∈ X ⊂ Rn

X = x ∈ Rn: xiL ≤ xi ≤ xi

U , i = 1, 2, ..., n

6

O vetor X é designado como o vetor de incógnitas ou vetor de variáveis de projeto, f(x) é a

FO, como visto anteriormente, gi(x) e hi(x) são as restrições de desigualdade e igualdade,

respectivamente, e estas podem ser funções lineares e/ou não lineares do vetor de variáveis

de projeto.

O conjunto X é o domínio da variável de projeto x, que pode ser qualquer valor deste

domínio. O produto cartesiano dos domínios das variáveis de projeto define o domínio da

FO, este domínio por sua vez pode ser dividido em dois subconjuntos: a região viável ou

factível (feasible region) onde todas as restrições são satisfeitas e a região inviável

(unfeasible region) onde alguma restrição não é observada. Sempre que existir alguma

região viável, o problema tem solução (Mendonça. 2004).

A otimização com restrições é mais complexa e pode requerer estratégias específicas na

formulação do problema para que estas sejam satisfeitas.

2.2.2 – Funções de penalização

Como já visto, a principal dificuldade que aparece em um problema de minimizar com

restrições é que o ponto de mínimo global da FO pode estar fora da região factível.

A Figura 2.2 mostra uma estrutura hipotética a ser otimizada em relação ao seu peso

global, tendo como variáveis de projeto o diâmetro das seções transversais (d) e a sua

altura em relação aos apoios (h). E a Figura 2.3 é a representação gráfica da otimização

deste problema.

Figura 2.2 – Treliça com duas barras (modificado - Fox, 1973).

7

Figura 2.3 – Representação gráfica do espaço de busca (modificado - Fox, 1973).

A estrutura da figura anterior está sujeita a seis restrições (h1 a h6), podendo ser restrições

geométricas, que se todas satisfeitas formam uma região factível - hachurada - que

representa todas as possíveis configurações que podem representar o peso global desta

estrutura e o que está fora é a região não factível.

Um problema com restrições pode ser transformado em um problema sem restrições pela

associação de uma função de penalização. A sua utilização gera uma forma eficaz de se

tratar as restrições (Fox, 1973; Haftka e Gürdal, 1992; Shoenauer e Xanthakis, 1993).

A FO modificada pode ser colocada da seguinte forma (Lemonge, 1999):

)()()( xpenalxfxF += (2.4)

De acordo com o método e a maneira em que é aplicada às soluções não factíveis, a parcela

penal (x), que é a função de penalização, pode diferir.

Barbosa e Lemonge (2003) classificam as técnicas clássicas para lidar com restrições como

diretas (interior) – apenas soluções factíveis são consideradas - e indiretas (exterior), onde

soluções factíveis e não factíveis são usadas durante o processo de otimização.

8

A partir da década de noventa encontra-se outra classificação destas técnicas, que é

comumente utilizada nos problemas de otimização com restrições na atualidade

(Michalewicz, 1995; Lagaros et al, 2002; Barbosa e Lemonge, 2003).

Frente aos mais variados tipos de funções de penalização, são exemplificados nas

subseções seguintes, alguns encontrados na literatura.

2.2.1.1 – Penalidades Estáticas

Os parâmetros da função de penalização são determinados pelo projetista e pode demandar

tempo em função da complexidade do problema a ser analisado.

Homaifar et al. (1994) sugerem a determinação de intervalos com distintos valores dos

parâmetros de penalização associados a cada restrição Si, definindo vários níveis de

violação (l ) por Zij, com i = 1, 2,... ,l e j = 1, 2, ... m, onde m é o número de violações. A

criação dos coeficientes para cada nível de violação e restrição na penalização pode ser

colocada na forma:

(2.5) ∑∑==

+=m

jjij

l

xfZxfxF111

)(.)()(

Lemonge (1999) sugere multiplicar um valor constante qualquer C, escolhido pelo

projetista, pelos resíduos de cada restrição violada Si, com i = 1, 2,..., n. A função

modificada é dada por:

(2.6) ∑=

+=n

iiSCxfxF

1.)()(

2.2.1.2 – Penalidades Dinâmicas

Neste tipo de penalidade, os parâmetros de penalização dependem de que interação (t) o

processo de otimização está.

Joines e Houck (1994) colocam a FO da seguinte maneira:

(2.7) ( ) ∑=

+=m

jj xStCxfxF

1

)(..)()( βα

9

C, α e β, são constantes e têm valores sugeridos de 0,5 , 2 e 2 respectivamente. Nota-se

que a parcela atinge seu valor máximo na última iteração. ( )αtC .

2.2.1.3 – Penalidades Adaptativas

De acordo com as informações obtidas durante as iterações, os parâmetros de penalização

podem ser definidos (adaptados).

Bezerra (1993) propôs uma penalidade com um comportamento logarítmico, pois o mesmo

gradualmente, a cada iteração, penaliza a FO nas proximidades da região não factível. A

função é colocada da seguinte forma:

∑∑= =

+=L

j

P

i iji xS

RxfxF1 1 )(

1)()( (2.8)

Ri ≈ 10Ei, sendo esta última definida como

⎪⎪⎭

⎪⎪⎬

⎪⎪⎩

⎪⎪⎨

⎥⎥⎥⎥

⎢⎢⎢⎢

∑∑≈

= =

L

j

P

i ij

ii

xS

xfIntE

1 1

10

)(1)(

log

Quando Sj ≤ 1 a FO é penalizada e quando Sj ≥ 1 a função se mantém. L é o número de

restrições e P o número de variáveis de projeto.

Coit et al. (1996) propuseram a FO da seguinte forma:

( )∑=

⎟⎟⎠

⎞⎜⎜⎝

⎛−+=

m

j

K

j

jallfeas tq

xftFtFxfxF

1 )()(

)()()()( (2.9)

Onde Fall é a melhor solução na iteração anterior, sem considerar a penalização; Ffeas é a

melhor solução factível e K é uma constante.

2.3 – MÉTODOS DE OTIMIZAÇÃO

Apesar da individualidade de cada algoritmo, existem algumas semelhanças que motivam a

formação de grupos. Comumente encontram-se na literatura sobre este assunto os três

conjuntos principais dos métodos de procura, relacionados na Tabela 2.1:

10

Tabela 2.1 – Algoritmos de Otimização (modificado - Soares, 1997).

Programação Linear Simplex

Sem Cálculo de Derivadas

Brent, Powell, Rosenbrock e outros.

Com Cálculo de Derivadas

DBrent, Gradiente, Newton, Steepest Descent.

Direções Conjugadas BFGS, DFP, Fletcher & Reeves.

Programação

Não-Linear

Métodos das penalidades Exterior, Interior, Interior Extendida.

Métodos Determinísticos

Outros Elipsóide, Grid

Métodos Enumerativos Programação Dinâmica

Estratégias Evolucionárias Computação Evolucionária Algoritmos Genéticos

Tabu

Técnicas de

Procura

Métodos Estocásticos

Outros Recozimento Simulado

O primeiro do grupo, também conhecido por Métodos Baseados em Cálculo, reúnem os

algoritmos que fazem uso do cálculo de derivadas e necessitam de algum tipo de

informação do gradiente na procura do extremo global. Nele, o ponto corrente ou inicial é

o ponto e partida para a iteração seguinte, portanto, a procura é local. Assim, a solução

encontrada tem uma grande probabilidade de ser um extremo local. Outra dificuldade

comumente encontrada é quando a derivação se torna complicada pelo fato de o espaço de

busca não ser contínuo, por exemplo, o uso de variáveis discretas. Estes métodos possuem

grande rapidez e funcionam excepcionalmente bem para problemas contínuos.

O segundo do grupo, os Métodos Enumerativos, verificam todas as combinações possíveis

de soluções. São algoritmos computacionalmente caros para espaços de busca muito

grandes, portanto, sua eficiência fica comprometida.

Já os Métodos Estocásticos, o último do grupo, ganharam popularidade nas últimas

décadas. Eles buscam a solução a partir de regras de probabilidade, a busca é feita em

vários pontos do espaço e não há a necessidade de calcularem derivadas.

Uma das maiores preocupações em um algoritmo de otimização é a robustez, que é o

balanço entre eficiência (rapidez), eficácia (convergência para a solução global) e a fácil

adaptação a problemas em geral. Se um método é considerado robusto, sua solução é mais

11

confiável e, provavelmente, o custo de reprojeto para adaptar o método a novas situações é

reduzido ou até mesmo pode ser considerado nulo.

2.4 – COMPUTAÇÃO NATURAL

Durante muitos anos cresceu o interesse em se resolver problemas, das naturezas mais

diversas, através de procedimentos que utilizam algoritmos que consideram características

de hereditariedade entre as soluções factíveis.

Do ponto de vista filosófico, é o método de otimização utilizado pela natureza, que é tida

por muitos como o sistema mais perfeito. E do ponto de vista prático, resolve problemas

matematicamente complexos de modo simples, além de ser fácil acoplar outras técnicas

(hibridação) e/ou aplicações.

A Computação Natural surgiu como uma nova ciência computacional inspirada na

natureza. Castro (2001) organiza as principais subáreas em complemento aos Métodos

Estocásticos encontrados na Tabela 2.1 da seguinte forma:

Figura 2.4 – Subáreas da Computação Natural (modificado - Castro, 2001).

A Inteligência Computacional busca criar sistemas inteligentes reproduzindo os aspectos

do comportamento animal e/ou vegetal, tais como: adaptação, percepção, raciocínio e

aprendizado.

12

O Recozimento Simulado (Simulated Annealing) é um intermediário na inteligência

computacional. O princípio do método está na analogia com a termodinâmica,

precisamente no modo de como os líquidos se esfriam e se cristalizam ou no processo de

recozimento de metais.

A geometria fractal descreve bem as irregularidades e os processos turbulentos da

natureza, sendo amplamente utilizada na meteorologia, biologia, hidrografia, medicina,

geografia, dentre outros.

2.4.1 – Lógica Nebulosa

A lógica Nebulosa ou Difusa (Fuzzy Logic) surgiu da necessidade de tratar problemas onde

existe uma região cujas classificações tornam-se imprecisas (Tran e Zomorodi, 1994).

As variáveis de projeto não são tratadas como tendo apenas um estado, mas muitos; Cada

um com certo grau de associação, por exemplo, uma barra de aço não é grande e sim 0,8

grande, 0,2 média e 0,0 pequena; Gerando assim, a criação de conjuntos para os quais os

dados são inseridos. Isto permite um melhor tratamento de problemas onde existam

fronteiras imprecisas ou não bem definidas.

2.4.2 – Redes Neurais Artificiais

Inspiradas na estrutura do cérebro humano, as Redes Neurais, apresentam características

similares a ele: associação, abstração, generalização e aprendizado.

Os processadores (neurônios artificiais) são interconectados e cada um efetua um número

pequeno de operações simples. Os seus resultados são transmitidos aos processadores

vizinhos para a geração do resultado final (Hajela e Berke, 1990).

São efetivas no aprendizado de padrões (por exemplo: imagem, texto e voz) a partir de

dados não-lineares, incompletos, com ruídos e até compostos de exemplos contraditórios.

2.4.3 – Computação Evolucionária

A computação Evolucionária ou Algoritmos Evolucionários são técnicas estocásticas de

busca e otimização inspiradas nos mecanismos da evolução e da genética (Goldberg, 1989;

Maysa, 1996).

13

O princípio de funcionamento é a evolução de uma população de estruturas

computacionais, de tal modo tal que melhore a adequação média dos indivíduos que

formam esta população em relação ao ambiente a que ela está submetida.

De acordo com a linha de aplicação e alguns detalhes da Computação Evolucionária

podem-se formar novas subáreas como vistas na Figura 2.5.

Figura 2.5 – Subáreas da Computação Evolucionária (modificado - Castro, 2001).

2.4.3.1 – Algoritmos Genéticos

Os Algoritmos Genéticos são inspirados nos mecanismos naturais da genética. Operam

com populações de indivíduos representados por cromossomos, os quais durante o

processo de evolução são submetidos ao procedimento de seleção e reprodução, onde são

aplicados os operadores de recombinação e mutação (Goldberg, 1989).

2.4.3.2 – Programação Evolucionária

A Programação Evolucionária ou Evolutiva também opera com populações, porém alguns

tipos de mutações são efetuados sobre os pais na criação de novas soluções.

Concebida por Lawrence J. Fogel na década de sessenta, este tipo de programação não

necessita de populações constantes, como também não precisa ser fixado um número de

filhos por pai. Não efetuam recombinação, por isso têm a sua representação mais flexível.

14

2.4.3.3 – Estratégias Evolucionárias

Quase que exclusivamente empregadas na engenharia civil como alternativa aos métodos

convencionais, operam com cromossomos na forma de vetores de números reais e

originalmente na proporção (1+1), ou seja, cada pai gera um filho por geração. Caso este

descendente seja melhor que seu progenitor ele toma o seu lugar (Maysa, 1996).

Atualmente estas estratégias foram extendidas para outras proporções, além de usar

estratégias de recombinações introduzidas em seu processo evolutivo.

2.4.3.4 – Programação Genética

Geralmente utilizados na linguagem Lisp, a Programação Genética, opera sobre

representações de trechos de programas na forma de árvores, de modo que possam ser

combinados para gerarem novos trechos de programas mais complexos (Lemonge, 1999;

Castro, 2001).

Normalmente apenas o operador de recombinação é utilizado, através de uma seleção

aleatória de sub-árvores e troca nos indivíduos, para seleção conforme a aptidão de cada

indivíduo.

2.4.3.5 – Estratégia de Colônia

Opera com a idéia da comunicação indireta explorada pelas sociedades de insetos que

formam algoritmos distribuídos de multi-agentes. A Estratégia de Colônia (Swarm) é

inspirada no comportamento coletivo de colônias de insetos, como por exemplo, colônia de

formigas, ou em sociedades de outros animais (Dorigo et al, 1991).

Atualmente está sendo aplicada a vários problemas de otimização de cadeias de

telecomunicações e otimização multi-objetivos.

15

3 – ALGORITMOS GENÉTICOS

3.1 – INTRODUÇÃO

O desenvolvimento da genética estabeleceu que as características hereditárias são

transmitidas através de genes (unidades químicas que se localizam no núcleo das células).

Os genes são constituídos por uma substância química, o ADN, ou ácido

desoxirribonucléico (DNA), dispõem-se aos pares, dentro de filamentos visíveis ao

microscópio, chamados cromossomos. A propriedade fundamental dos genes é que eles se

auto-reproduzem, fielmente, entretanto, não há uma precisão absoluta nessa auto-

reprodução, podendo ocorrer mutações gênicas, ou seja, o gene que até aquele momento

produzia determinada característica passa a produzir outra.

Lamarck em 1809 argumentava que o meio ambiente provocaria a necessidade de

modificação nos seres que nele viviam. As mudanças nas espécies seriam produzidas pela

aquisição de novas características, isto é, novas habilidades que o indivíduo desenvolveria

na tentativa de adaptar-se ao ambiente. Darwin, em 1858 apresentou sua teoria de evolução

através da seleção natural, que seria o agente que propiciaria a evolução, os mais aptos

sobrevivem e levam suas características para a sua descendência. A seleção natural é

apenas um dos elementos da adaptação que se une a outros como a relação entre o

organismo e o ambiente e a hereditariedade. Além disso, é preciso distinguir adaptação de

adaptabilidade. Enquanto adaptação é o preparo do organismo para sobreviver num

ambiente, adaptabilidade é a capacidade de tirar vantagem do ambiente e, até mesmo,

controlá-lo.

Nas décadas de 50 e 60, muitos biólogos começaram a desenvolver simulações

computacionais de sistemas genéticos. Entre eles destacam-se N. A. Barricelli, com o

trabalho “Processos de Evolução Simbiogenética através de Métodos Artificiais”, em 1957

e “Teste Numérico da Teoria da Evolução” em 1962 e também A. S. Fraser, com os

trabalhos “Simulação de Sistemas Genéticos por Computadores Automáticos Digitais” e

“Acoplamento-S, Dominância e Epistasia e Simulação de Sistemas Genéticos”, em 1960 e

1962 respectivamente. Já nos anos 70, Holland desenvolveu uma metodologia baseada na

seleção genética natural de otimização de sistemas artificiais, cuja idéia estava direcionada

em três pontos: cromossomo, indivíduo e população. A tentativa era de encontrar uma

maneira de se codificar um cromossomo que representasse um indivíduo e uma população.

16

Em 1975 a publicação do livro “Adaptation in Natural and Artificial system” de John

Holland foi considerada o marco dos algoritmos genéticos (AGs), porém apenas em 1989

com o livro “Genetic Algorithms in Search, Optimization and Machine Learning” de

David E. Goldberg que os Algoritmos Genéticos foram popularizados e vêm sendo

aplicados com sucesso nas mais diversas áreas, entre elas a otimização em análise

estrutural (Lemonge, 1999).

3.2 – ALGUNS PROJETOS E PESQUISAS SOBRE ALGORITMOS GENÉTICOS

NA ENGENHARIA

A difusão dos Algoritmos Genéticos como ferramenta de otimização despertou o interesse

em pesquisadores da área de engenharia e ciências afins. Freqüentemente aplicados em

problemas de otimização, os AGs foram utilizados em pesquisas desde análises de projetos

de turbinas de aeronaves até recentemente a análises de estruturas de proteínas. Pode-se

encontrar em Goldberg et al. (1997) um resumo de aplicações, incluindo aproximadamente

4300 referências sobre a evolução e aplicação dos AGs.

Atualmente no Brasil, encontram-se várias pesquisas em andamento, destacando os

projetos de pesquisa realizados pela Coordenação dos Programas de Pós-Graduação de

Engenharia (COPPE) e pelo Laboratório Nacional de Computação Científica (LNCC).

O Laboratório de Métodos Computacionais em Engenharia (LAMCE/PEC/COPPE/UFRJ)

realiza pesquisas em sistemas inteligentes para engenharia com o objetivo de formular leis

que governam os fenômenos envolvidos em forma matemática e precisa. Essas descrições

perfeitas nem sempre são possíveis e o conhecimento incompleto e impreciso das

observações que são geralmente feitas em natureza qualitativa e a grande heterogeneidade

dos agentes que interagem causam incertezas na modelagem. Com a evolução da teoria

probabilística e da estatística clássica se fornecem meios teóricos para a descrição dessas

incertezas. A modelagem através de dados observados exige um processo de extração de

conhecimento existente em um banco de dados (data mining) e esse processo se vale de

diversas técnicas, entre elas os algoritmos genéticos.

O Laboratório de Bioinformática (LNCC/MCT) tem como objetivo principal o

desenvolvimento de softwares para análise de seqüências de nucleotídeos e de proteínas

em bancos de dados genéticos.

17

Além destes centros, na última década vários trabalhos têm sido publicados com relação à

aplicação dos algoritmos genéticos em engenharia por pesquisadores em outras

universidades, por exemplo, UFPE, UFMG, PUC/RJ, USP e outros, dos quais alguns

exemplos são considerados em seguida.

Soares (1997) em sua dissertação de mestrado analisou o desempenho dos AGs

numericamente e propõe novas técnicas de como proceder a codificação e parametrização

em código binário.

Lemonge (1999) apresentou em sua tese de doutorado a aplicação dos AGs em otimização

estrutural de estruturas reticuladas planas e espaciais, analisando problemas de

minimização de peso, minimização de trabalho de deformação, reação máxima de apoio e

otimização de parâmetros e topologia.

Borges (1999) desenvolveu em sua tese de doutorado, modelos de AGs paralelos e uma

formulação para problemas de identificação de danos estruturais, baseada em informações

a respeito do comportamento dinâmico da estrutura danificada.

Barcellos (2000) apresenta uma outra classe de AG, o MetaAG, verificando que o mesmo é

mais estável em relação aos seus parâmetros de controle.

Silva (2000) aplicou os AGs para otimizar estruturas de concreto armado, analisou um

trecho de pilar submetido à flexão composta oblíqua e um pórtico plano de cinco

pavimentos.

Castro (2001) em sua tese de doutorado desenvolveu um AG para otimização de problemas

estruturais com multi-objetivos, cuja finalidade era evoluir um conjunto uniformemente

distribuído de soluções para determinar o conjunto ótimo soluções do problema tratado,

além disso, propõe novas características para o AG, como combinação de outros

operadores genéticos.

Mendonça (2004) propõe em sua tese de doutorado uma estratégia híbrida paralela

utilizando redes neurais treinadas com indivíduos retirados das populações do AG para

aproximar funções não-lineares na otimização do casco de uma plataforma semi-

submersível, com o objetivo de minimizar movimentos.

18

Na UnB as pesquisas estão no seu estado inicial comparados a outras instituições, podendo

citar o trabalho de Torres et al. (2003) em “Determinação de Rotas ótimas de Ônibus

Urbano Utilizando Algoritmo Genético Associado ao Algoritmo de Dijkstra”, o de

Sampaio (2004) em “Determinação de uma Rede Ótima de Transporte Utilizando o

Algoritmo Genético” e o presente trabalho.

3.3 – VANTAGENS E DESVANTAGENS DOS ALGORITMOS GENÉTICOS

3.3.1 – Vantagens

Os Algoritmos Genéticos têm sido empregados em problemas complicados de otimização

em que, muitas vezes, os demais métodos falham. Algumas vantagens dos AGs observadas

podem ser:

• Funcionam tanto com parâmetros contínuos como discretos ou uma combinação

deles;

• Realizam buscas simultâneas em várias regiões do espaço de busca, pois trabalham

com uma população e não com um único ponto;

• Utilizam informações de custo ou recompensa e não derivadas ou outro

conhecimento auxiliar;

• Otimizam um número grande de variáveis;

• Otimizam parâmetros de funções objetivos com superfícies complexas e

complicadas, reduzindo a incidência de mínimos locais;

• Trabalham com uma codificação do conjunto de parâmetros e não com os próprios

parâmetros;

• Fornecem uma lista de parâmetros ótimos e não uma simples solução;

• Trabalham com dados gerados experimentalmente e são tolerantes a ruídos e dados

incompletos;

• São fáceis de serem implementados em computadores, inclusive com

processadores em paralelo;

• São modulares e portáteis, no sentido que o mecanismo de evolução é separado da

representação particular do problema considerado. Assim, eles podem ser

transferidos de um problema para outro;

• São flexíveis para trabalhar com restrições arbitrárias e otimizar múltiplas funções

com objetivos conflitantes;

19

• São também facilmente hibridizados com outras técnicas heurísticas;

• São mais resistentes a se prenderem a ótimos locais;

• Apresentam um bom desempenho para uma grande escala de problemas.

3.3.2 – Desvantagens

Mesmo com esse grande número de vantagens, citada na subseção anterior os AGs ainda

não são eficientes para muitos problemas. São considerados lentos e não raro ainda estão

avaliando a população inicial enquanto muitos métodos determinísticos já teriam

encontrado a solução. O principal campo de aplicação dos AGs é em problemas

complexos, com múltiplos mínimos e/ou máximos e para os quais não existe um algoritmo

de otimização eficiente conhecido para resolvê-los. Além disso, podem-se observar

também na literatura as seguintes desvantagens:

• Demora em achar o ótimo global exato;

• Grandes possibilidades de configurações das variáveis, levando a um grande

número de combinações de parâmetros a serem investigados.

3.4 – ANALOGIA DO MECANISMO DE SELEÇÃO NATURAL COM A

OTIMIZAÇÃO DE SISTEMAS ARTIFICIAIS

Há muito tempo, o homem tem se servido das características e princípios existentes na

natureza para a criação de máquinas, métodos e técnicas que melhorem sua qualidade de

vida no planeta. Alguns exemplos típicos são os aviões baseados nas características dos

pássaros, submarinos com sistemas de imersão semelhantes aos peixes, sonares baseados

nos morcegos, entre outros (Silva, 2000).

Dorigo e Stützle (2004) descrevem outro fato interessante ao estudarem o comportamento

de ninhos de formigas, pois, mesmo elas sendo tão simples e irracionais possuem

mecanismos naturais de otimização. São capazes de encontrar um caminho mais curto

entre o ninho e uma fonte de comida sem usar sugestões visuais, mesmo que ocorram

mudanças no ambiente original, como a introdução de um obstáculo, que pode ser

observado nas Figuras 3.1 a 3.4 a seguir.

20

Figura 3.1 – Trajeto retilíneo (Dorigo e Stützle, 2004).

Figura 3.2 – Introdução de um obstáculo (Dorigo e Stützle, 2004).

Figura 3.3 – Divisão das formigas no percurso (Dorigo e Stützle, 2004).

Figura 3.4 – Percurso ótimo com o passar do tempo (Dorigo e Stützle, 2004).

21

A explicação para a descoberta do caminho ótimo a ser percorrido pelas formigas, é que

elas depositam durante a caminhada certa quantidade de feromônio, com uma taxa fixa

através da urina e seguem a trajetória probabilisticamente mais rica em tal sinalizador

químico. O caminho original ao ser interrompido pela introdução de um obstáculo, leva as

formigas a se dividirem pelas alternativas possíveis e com o decorrer do tempo terão

passado pelo menor caminho, ficando o caminho com uma maior concentração do

feromônio, por isso este novo trajeto será adotado.

Outro exemplo, observado por Darwin, é que numa determinada população, quando há

escassez de recursos, sejam eles: comida, espaço ou outro recurso essencial. Os indivíduos

mais preparados para a competição dominam os mais fracos e sobrevivem, acontece

porque, dentre todas as características imprescindíveis à competição, esses serem possuem

algumas mais acentuadamente presente que os outros. Pela hereditariedade, essas

características passarão para seus descendentes, e assim, terão grande chance de serem

também vencedores. Porém, indivíduos fortes podem surgir da exploração de outra

característica ainda não desenvolvida na população. Se a natureza tentasse descobrir essas

novas características através da seleção dos mais aptos e do cruzamento dentro de um

mesmo grupo, certamente não teria sucesso, pois, ao longo das gerações, todos os

indivíduos compartilhariam praticamente do mesmo código genético. Contornando esse

problema inserindo material genético diferente através do processo conhecido por

mutação, a natureza, capacita o individuo a sobreviver, caso ele seja tão apto quanto aos

demais, no futuro processo de seleção. (Darwin, 1902)

Como mencionado anteriormente, Holland (1975) procurou implementar algo semelhante

para sistemas artificiais. Nessa comparação, descreve-se o problema (ambiente de

sobrevivência) sob a forma de uma função objetivo, em que as estruturas (indivíduos) mais

aptas obterão valores mais altos dessa função, assim, cada indivíduo corresponde a uma

possível solução. Então trabalhando com um grupo de indivíduos simultaneamente,

verifica-se a potencialidade de cada um em relação aos demais, tentando selecionar os mais

aptos para o cruzamento. Após o cruzamento, cada gene de cada indivíduo estará sujeito à

ação da mutação. Nos algoritmos genéticos esses processos são conhecidos como

operadores genéticos.

22

Para manter a analogia, são usados nos sistemas artificiais, os termos usuais à genética

natural nos sistemas artificiais. Lacerda e Carvalho (1999) dispõem a terminologia básica

da seguinte maneira:

• Cromossomo e Genoma: na biologia, genoma é o conjunto completo de genes de

um organismo. Um genoma pode ter vários cromossomos. Nos AGs, os termos

cromossomo e genoma, representam a estrutura de dados que codifica uma solução

para um problema, ou seja, um cromossomo, ou genoma representa um simples

ponto no espaço de busca;

• Gene: na biologia, é a unidade de hereditariedade que é transmitida pelo

cromossomo e que controla as características do organismo. Nos AGs, é um

parâmetro codificado no cromossomo, ou seja, um elemento do vetor que

representa o cromossomo;

• Indivíduo: um simples membro da população. Nos AGs, um indivíduo é formado

pelo cromossomo e sua aptidão;

• Genótipo: na biologia, representa a composição genética contida no genoma. Nos

AGs representa a informação contida no cromossomo ou genoma;

• Fenótipo: nos AGs, representa o objeto, estrutura ou organismo construído a partir

das informações do genótipo. É o cromossomo decodificado. Por exemplo,

considere que o cromossomo codifica parâmetros como as dimensões das vigas em

um projeto de construção de um edifício. O fenótipo seria o edifício construído;

• Alelo: na biologia, representa uma das formas alternativas de um gene. Nos AGs,

representa os valores que o gene pode assumir. Por exemplo, um gene que

representa o parâmetro de forma geométrica da seção transversal de uma barra,

poderia ter os alelos de parâmetros circulares, retangulares, circulares vazado, etc;

• Locus: nos AGs, representa uma posição no cromossomo;

• Epistasia: interação entre genes do cromossomo, isto é, quando um valor de um

gene influencia no valor de outro gene. Problemas com alta epistasia são de difícil

solução por AGs;

• População: conjunto de cromossomos ou soluções;

• Operações Genéticas: são operações que o AG realiza sobre cada um dos

cromossomos.

• Geração: é o número total de ciclos de evolução de um AG.

23

A idéia de otimização em conjunto com a seleção natural dos mais aptos no processo de

evolução torna-se um campo convidativo e interessante pelos inúmeros resultados de

sucesso nas mais diferentes áreas de aplicação. Além de ser uma alternativa de grande

força por sua característica: robustez, flexibilidade, eficiência e principalmente,

simplicidade.

3.5 – TEORIA DO PROCESSO EVOLUTIVO

Os Algoritmos Genéticos caminham na direção do ponto ótimo através da procura por

semelhanças na codificação dos indivíduos de bom desempenho. Goldberg (1989) e

Holland (1975) analisaram o indivíduo de um ponto de vista mais amplo. No caso de uma

codificação binária, um esquema é uma cadeia formada com o alfabeto A = 0, 1, *. O

caractere “*” é um coringa, ou seja, pode ser tanto 0 ou 1.

Um esquema (H) descreve um conjunto de cadeias de caracteres que possuem semelhanças

em certas posições. Então, por exemplo, suponha que uma cadeia de caracteres tenha

comprimento = 4. Dessa forma, um esquema H1 poderia ser **10 e esse esquema

representaria as cadeias de caracteres 0010, 0110, 1010 e 1110. Cada cadeia de caracteres

possível significa uma instância do esquema.

l

Algumas características relativas às posições fixas são muito importantes na análise de

desempenho desses esquemas. Chama-se ordem (o(H)) de um esquema, o número de

símbolos que não sejam o “*” (asterisco) e, portanto o esquema H1 anteriormente citado

tem o(H) = 2. Chama-se também, comprimento de definição (δ(H)) do esquema a distância

entre o primeiro e o último símbolo não asteriscos do esquema. Sendo assim, o esquema

H1 tem o δ(H) = 1 (o 1 está na terceira e na quarta posição, então 4 – 3 = 1).

Um outro fator importante ao esquema é o seu desempenho ( ( )Hf ), que é medido pela

média aritmética da aptidão entre todas as suas instâncias, para uma dada população e

geração.

Portanto, duas considerações teóricas são de grande importância para a análise do

mecanismo de pesquisa dos AGs: A Hipótese dos Blocos de Construção e o Teorema

Fundamental dos Algoritmos Genéticos.

24

3.5.1 – Hipóteses dos Blocos de Construção

Quando a análise da população é feita pela perspectiva de esquemas, a descrição sobre a

performance dos AGs fica mais clara. Esquemas de pequeno comprimento de definição, de

baixa ordem e com alto desempenho são amostrados e recombinados, formando cadeias de

mais alto valor de aptidão e neste sentido, reduzindo a complexidade do problema. A

intenção é construir indivíduos fortes a partir dos melhores existentes, ao invés de se tentar

combinar quaisquer cadeias de caracteres. Para isso os esquemas curtos, de baixa ordem e

desempenho acima da média se juntam como blocos de construção, gerando uma estrutura

maior.

Os blocos de construção (building blocks) são muito importantes na fase inicial dos AGs,

onde o objetivo é encontrar a região onde se encontra a solução global. Já na outra fase, a

de convergência final, as cadeias de caracteres compartilham praticamente o mesmo

código genético e conseqüentemente, os mesmos esquemas de alto desempenho, tornando

então bem menos significativa à contribuição dos esquemas nos blocos de construção.

3.5.2 – Teorema Fundamental dos Algoritmos Genéticos

O Teorema fundamental dos algoritmos genéticos, desenvolvido por Goldberg (1989),

utilizou os três operadores genéticos básicos de um AG: seleção, cruzamento e mutação.

Inicialmente suponha que numa geração t, um esquema particular H possua m

representantes, essa situação será denotada por . E durante a reprodução uma

cadeia de caracteres é copiada de acordo com a probabilidade de seleção (

),( tHm

P )

proporcionada pelo seu desempenho , perante todos os desempenhos encontrados na

população , ou seja:

if

∑ f

=f

fP i (3.1)

Analogamente, para esquemas em que é o desempenho médio das instâncias do

esquema:

)(Hf

=f

HfP )( (3.2)

25

Como na geração t + 1, npop indivíduos são selecionados, espera-se ter:

=+f

HfntHmtHm pop)(.).,()1,( (3.3)

Representantes de H. A média de desempenhos da população é definida como: medf

pop

med nf

f ∑= (3.4)

Portanto a equação 3.3 pode ser reescrita como:

medfHftHmtHm )(),()1,( =+ (3.5)

Da equação 3.5 nota-se que o número de esquemas aumentará dependendo da razão entre

os desempenhos médios de suas instâncias e da população. Esta etapa considerou apenas o

efeito da seleção (selection).

Considere agora o cromossomo C abaixo, de comprimento 7 e dois esquemas por ele

representado:

Tabela 3.1 – Cromossomo, Esquemas, Comprimento de definição e Ordem.

C 1010101 )(Hδ )(Ho

H1 ****1*1 2 2 H2 1*0***1 6 3

Em qualquer um dos 6 pontos possíveis em que possa haver cruzamento (crossover) o

esquema H2 será partido (probabilidade 1). Já no esquema H1 uma quebra, por exemplo,

na segunda posição (bit), o manteria inalterado.

Isto ocorre por causa do comprimento de definição ( )(Hδ ). Em H1 a probabilidade de

haver quebra, isto é, de o ponto de escolha para o cruzamento ser escolhido de modo a

romper a estrutura é de 2/6 (as únicas posições em que ocorrem quebras são: após o

primeiro 1, antes do asterisco e logo antes do segundo 1, após o asterisco). No esquema H2

a probabilidade de quebra é 6/6 = 1 (qualquer local entre os dois uns irá romper o

26

esquema). O lugar em que o cromossomo se parte é selecionado aleatoriamente com

probabilidade uniforme em todas as posições, ou seja, uma escolha entre 1 e - 1.

Portanto a probabilidade de um esquema H ser quebrado (destruído) pelo cruzamento será:

l

)1()(

−=

l

HPdδ (3.6)

Considerando agora a probabilidade de haver um cruzamento, a probabilidade real de

romper o esquema será , já que e são eventos independentes, portanto:

cp

DP dc Pp . cp dP

)1()(.

−=

l

HpP cDδ (3.7)

O cruzamento pode ser realizado entre representantes do mesmo esquema, e assim esse

esquema jamais será destruído, então:

)1()(.

−≤

l

HpP cDδ (3.8)

É interessante trabalhar com a probabilidade de sobrevivência ao invés de , assim: SP DP

DS PP −= 1 (3.9)

)1()(.1

−−≥

l

HpP cSδ (3.10)

A ação conjunta dos processos de reprodução e de cruzamento são eventos independentes,

e simplesmente multiplicando-se estes dois eventos a equação 3.5 fica:

⎥⎦

⎤⎢⎣

⎡−

−=+)1()(1)(),()1,(

l

Hpf

HftHmtHm cmed

δ (3.11)

Esta equação mostra que se um esquema tem desempenho acima do desempenho médio da

população e pequeno comprimento de definição, provavelmente ele proliferará. Nesta

etapa considerou agora o efeito da seleção (selection) e do cruzamento (crossover).

O último operador a ser considerado é a mutação (mutation). Cada alelo simples tem

probabilidade mS PP −= 12 , e como cada mutação é estatisticamente independente, a

27

probabilidade de sobrevivência para um esquema particular será o produto das

probabilidades para cada posição fixa, ou seja, a probabilidade de sobrevivência de um

esquema com ordem o(H) é:

2SP

(3.12) )(2 )1( Ho

mS pP −=

Neste ponto, fazemos uma simplificação na equação 3.12, pois geralmente << 1

(grandes probabilidades de mutação transformam o problema em um processo aleatório,

pois se perde o material genético que foi aprimorado pelo cruzamento) e, portanto

(Goldberg, 1989):

mp

)(12 HopP mS −= (3.13)

O efeito combinando dos três operadores leva a equação 3.5 para a seguinte forma:

[ )(1)1()(1)(),()1,( HopHp

fHftHmtHm mc

med

−⎥⎦

⎤⎢⎣

⎡−

−=+l

δ ] (3.14)

Reorganizando e ignorando os termos cruzados do tipo , pois estamos analisando

apenas os efeitos sem a suas interdependências, teremos:

cm pp .

⎥⎦

⎤⎢⎣

⎡−

−−=+ )(

)1()(1)(),()1,( HopHp

fHftHmtHm mc

med l

δ (3.15)

Que é finalmente a formulação matemática dos efeitos dos operadores genéticos sobre o

número de esquemas esperados para a próxima geração e também conhecido como

Teorema Fundamental dos Algoritmos Genéticos.

3.5.2.1 – Convergência dos Algoritmos Genéticos

Analisando a equação 3.15 observa-se que a parcela formada pelos efeitos do cruzamento e

mutação é uma constante (K), representada entre os colchetes, e que se a relação do

desempenho médio das instâncias do esquema H com a média de desempenhos de a

população permanecer constante, teremos:

KtHmtHm ).,()1,( =+ (3.16)

28

Começando com t = 0, Barcellos (2000) observou que na geração (t) a ação dos operadores

genéticos sobre os esquemas tem forma exponencial, ou seja, para tem-se: ),( tHm

(3.17) tKHmtHm ).0,(),( =

Mostrando que esquemas que tem valores de K superiores a 1 (condições do teorema do

esquema) produzem cromossomos representantes a uma taxa exponencial com o tempo e

valores de K inferior a 1 tem um decaimento exponencial com o tempo e tendem a

desaparecer. Sendo então o AG um método de otimização de convergência exponencial.

3.5.3 – Paralelismo Implícito

O AG, a cada geração, processa npop indivíduos, mas o que faz dele um poderoso método

de procura é que, na análise dos npop indivíduos, ele verifica paralelamente npop3 esquemas.

Esse resultado recebeu o nome de paralelismo implícito. A estimativa npop3 esquemas por

npop indivíduos foi desenvolvida por Goldberg (1989).

A estimativa do número de esquemas processados em paralelo inicia-se conhecendo a

capacidade de formação dos indivíduos e esquemas de qualquer código. Para qualquer tipo

decodificação, seja k o número de alelos diferentes e l o comprimento da cadeia de

caracteres, existem então k possibilidades de formação de cadeias de caracteres e (k + 1) l

de esquemas. Cada cadeia de caracteres específica é representante de k l esquemas

diferentes. Por exemplo, seja uma população composta por 4 cromossomos com 3 genes:

l

• 011 • 010 • 111 • 100

Os seguintes esquemas representam o primeiro indivíduo:

• 011 • 01* • 0*1 • *11 • 0** • *1* • **1 • ***

29

Neste caso, temos no máximo 32 (= 4 x 23) e no mínimo 8 (= 23) esquemas presentes na

população. Porém Goldberg (1989) estimou que o limite de esquemas fosse de 3 ,

portanto, 3

l

3 = 27 e não 32 como encontrado anteriormente.

Ainda assim, não é fácil enxergar o paralelismo implícito com os quais os AGs trabalham.

Uma outra forma de verificação deste paralelismo é a visão geométrica de esquemas num

espaço de busca. Consideremos então esquemas de comprimento = 3, como no exemplo

anterior, e um espaço de busca tridimensional. Esquemas com ordem 3 definem pontos

específicos no espaço, esquemas com ordem 2 definem linhas de possíveis soluções. Os

planos no espaço são esquemas de ordem 1, enquanto que todo espaço é coberto por

esquema de ordem 0, ou seja, ***, que pode ser visto na Figura 3.5. Para espaços

superiores a três dimensões (3D), o raciocínio é análogo, porém para estas dimensões, a

visão geométrica é complexa.

l

Figura 3.5 – Visão geométrica dos hiperplanos em 3D (Soares, 1997).

3.6 – ALGORITMOS GENÉTICOS GENÉRICOS

Os Algoritmos Genéticos são muito utilizados em problemas onde, dado um conjunto de

elementos ou indivíduos, deseja-se encontrar aquele ou aqueles que melhor atendam a

certas condições previamente especificadas.

Lemonge (1999) relaciona algumas aplicações entre tantas em engenharia:

• Otimização de forma de elementos estruturais;

30

• Otimização de topologia;

• Localização ótima de sensores e atuadores;

• Detecção, localização e quantificação de danos em estruturas;

• Problemas de identificação e problemas inversos;

• Concepção de projetos;

• Problemas de locação/alocação.

Representando de forma abstrata no eixo das abscissas todos os problemas cujas soluções

podem ser obtidas por algoritmos de otimização e no eixo das ordenadas suas respectivas

eficiências, pode-se determinar curvas indicativas da aplicabilidade em problemas versus

eficiência dos métodos disponíveis, exemplificado pela Figura 3.6 (Goldberg, 1989).

Figura 3.6 – Aplicabilidade versus Eficiência (Goldberg, 1989).

Distinguem-se acima três tipos extremos de métodos. O Método 1 é pouco eficiente para

quase todos os problemas existentes, ou seja, funciona apenas para casos específicos. O

Método 2 é altamente eficiente para uma pequena faixa de problemas, entretanto, pouco

eficiente ou nem aplicável para a grande maioria deles. O último, o Método 3, é

razoavelmente eficiente para quase todos os problemas existentes.

Dentro deste contexto, os AGs se aproximam da terceira classe de métodos, não sendo

mais eficiente que aqueles especificamente projetados para determinado problema,

contudo, modificações no problema original trariam poucos, ou quase nenhum prejuízo aos

AGs, mas provavelmente, a inutilidade de outros métodos.

31

Existem inúmeras versões dos algoritmos genéticos em relação aos procedimentos

empregados (por exemplo, nos operadores).

Figura 3.7 – Estrutura de funcionamento de um Algoritmo Genético Genérico.

No entanto, são duas as formas mais freqüentemente observadas quanto à sua estrutura de

funcionamento, e portanto, sendo estes os algoritmos genéticos genéricos dos quais os

outros AGs existentes são fundamentados. Sendo estes dois explicados nas subseções

seguintes.

3.6.1 – Algoritmo Genético Geracional

No Algoritmo Genético Geracional toda a população é substituída por novos indivíduos

gerados pelo processo de seleção e aplicação dos operadores genéticos. Toda a geração

(Pais) é integralmente substituída pela mais nova (Filhos), não existindo a “convivência”,

havendo a perda de bons indivíduos no processo. Por essa razão, nos problemas de

otimização, um procedimento freqüentemente empregado é o elitismo, isto é, um ou dois

dos melhores indivíduos de uma geração são preservados, passando diretamente para a

geração seguinte.

32

3.6.2 – Algoritmo Genético em Regime

Neste tipo de algoritmo, também conhecido por AG Steady State, apenas um indivíduo é

criado de cada vez e depois da sua avaliação, o mesmo é inserido na população em

substituição a outro, por exemplo, pelo pior de todos. Porém caso ele seja pior que todos os

já existentes, então nada é alterado e procede-se uma nova criação de indivíduo.

Uma maneira de facilitar a comparação do indivíduo gerado com os já existentes na

população é utilizar um ordenamento ou escalonamento, desta forma, o indivíduo é

comparado apenas com o último indivíduo, caso seja superior a ele, assumirá a posição

correspondente no ordenamento ou escalonamento, sendo portanto, o último eliminado

pela seleção natural (Silva, 2000).

3.7 – ESTRUTURA DE FUNCIONAMENTO

O princípio básico de funcionamento do AG é que um critério de seleção vai fazer com

que, depois de um determinado número de gerações, um conjunto inicial de indivíduos

gere indivíduos mais aptos. Basicamente, cinco aspectos fundamentais são usados para

resolver um problema de otimização (Lemonge, 1999):

• Uma codificação genética de soluções para o problema;

• Um procedimento para criar uma população inicial de soluções;

• Uma função de avaliação que retorna a aptidão de cada indivíduo;

• Operadores genéticos que manipulam a codificação dos pais durante o processo de

reprodução, dando origem a novos indivíduos;

• Parâmetros a serem utilizados no algoritmo durante o processo de cruzamento e

mutação.

Inicialmente, é gerada uma população formada por um conjunto aleatório de indivíduos

que podem ser vistos como possíveis soluções do problema. Durante o processo evolutivo,

esta população é avaliada: para cada indivíduo é atribuído uma nota, ou índice, refletindo

sua habilidade de adaptação a determinado ambiente.

Uma porcentagem dos mais aptos é mantida, enquanto os outros são descartados

(Darwinismo). Os indivíduos da população mantidos pela seleção podem sofrer

modificações em suas características fundamentais através dos operadores genéticos de

33

mutação (mutation) e cruzamento (crossover) gerando descendentes para a próxima

geração. Esse processo, chamado de reprodução, é repetido até que uma solução

satisfatória seja encontrada.

3.7.1 – A representação

Uma das principais preocupações a ser avaliada quando se utiliza o AG como ferramenta

de otimização de um determinado problema é a codificação a ser utilizada para representar

as possíveis soluções. Existem vários tipos de codificação utilizados nesse procedimento,

destacando-se entre eles a codificação binária e a codificação real. É comum a utilização

de codificações binárias para problemas com variáveis discretas e de codificações reais

para problemas com variáveis contínuas.

Pacheco (1999), Ochi e Rocha (2000) afirmam que o importante nesse caso, independente

da representação escolhida, é que esta deve ser capaz de representar todo espaço de busca

que se deseja investigar, ou seja, toda solução deve estar associada a um cromossomo e,

reciprocamente, todo cromossomo gerado pelo AG deve estar associado a uma solução

válida do problema analisado.

3.7.1.1 – Dimensionamento das variáveis

A escolha do número de bits para cada variável, o tamanho do cromossomo e sua

decodificação dependem de cada problema (Goldberg, 1989).

• Para um espaço de busca com variáveis discretas, tem-se:

(3.18) nv=l2

Onde é o comprimento da cadeia, ou o número de bits. E nv é o número de possíveis

valores assumidos.

l

• Para um espaço de busca com variáveis reais (contínuas), tem-se:

ε

LU xx −≥ 2logl (3.19)

l bits possibilitam a representação de valores discretos que são distribuídos

uniformemente no intervalo [x

l2L, xU], que possibilitem uma precisão ε de:

34

12 −

−=

l

LU xxε (3.20)

Por exemplo, se ε = 0,01 e, xU = 50,0 e xL = 20,0 teremos então ≥ 12. l

3.7.1.2 – Mapeamento das variáveis

Neste trabalho optou-se por utilizar a representação (codificação) binária. Essa

representação é a mais empregada por ser mais simples, fácil de manipular através dos

operadores genéticos e de ser transformada em uma representação inteira ou real. É obtida

pela concatenação de cada elemento do espaço de busca.

1 0 1 1 1 0 0 1

1 0 1 1 0 0 11

Concatenação

Figura 3.8 – Cadeia com codificação binária.

Para recuperar os valores originais (físicos) das variáveis, é necessário um procedimento

de decodificação. Nessa decodificação, os valores são inteiros e compreendidos na faixa

[0, 2 l -1].

Para as variáveis discretas a decodificação fornece um número inteiro que representa o

índice da variável em uma lista que é o espaço de busca correspondente a essa variável

(isto é, um conjunto de números não contínuos). Por exemplo, seja a variável x1 = 10 da

Figura 3.8, sua decodificação indicará o índice ID = 1 x 21 + 0 x 20 = 2, que apontará para

a segunda variável do espaço de busca dessa variável.

Já para as variáveis contínuas tem-se a decodificação na seguinte forma:

12

.−−

+=l

LUL

ixxIDxx (3.21)

Então imaginemos que temos uma precisão ε = 0,01; limites xU = 50,0 e xL = 20,0; e

tamanho = 12. Se xl 1 = 101000100001 então seu ID é:

35

ID = 1 x 211 + 0 x 210 + 1 x 29 + 0 x 28 + 0 x 27 + 0 x 26 + 1 x 25 + 0 x 24 + 0 x 23 + 0 x 22 +

+ 0 x 21 + 1 x 20 = 2593

E sua variável no intervalo [20, 50] é (utilizando a equação 3.21):

x1 = 20,0 + 2593.12

0,200,5012 −− = 38,99

3.7.2 – A configuração

A configuração correta dos parâmetros que influenciam os algoritmos genéticos é um dos

aspectos mais relevantes dentro da estratégia de configuração. A literatura sobre este tema

não é direcionada, uma vez que tais configurações irão depender entre outras coisas da

aplicação a ser resolvida, entretanto, é intuitivo perceber que este passo é de grande

importância no desempenho do mecanismo de busca. A eficiência e funcionamento de um

AG são altamente dependentes dos seus parâmetros de controle, cujos tipos básicos são

descritos nas subseções seguintes.

3.7.2.1 – Tamanho da população

O tamanho da população (npop) indica o número de cromossomos que há em cada

população. Com uma população pequena, o desempenho do AG pode cair, pois a mesma

representaria uma pequena parte do espaço de busca do problema. Já com grandes

populações, apresentará uma maior diversidade de soluções, contudo, será dispendioso

computacionalmente efetuar muitas avaliações da função de aptidão. Portanto, as

principais influências deste parâmetro estão relacionadas com o desempenho global e com

a eficiência.

Em Khan (2002) sugere-se o tamanho da população de duas formas. A primeira, que é uma

investigação teórica feita por Goldberg, mostra que a população ótima cresce

exponencialmente com o tamanho do problema, ou seja:

(3.22) l.21,02.65,1=popn

Aplicando-se esta fórmula tem-se, por exemplo, para = 10, 20, 30 e 40 bits obtém-se

= 7, 30, 130 e 557 respectivamente, notando que para grandes precisões, isto é, para

muito grande teremos uma população que será dispendiosa computacionalmente. A

l

popn

l

36

segunda, que é uma observação prática de vários pesquisadores, mostra que para a grande

maioria dos problemas, a população deve estar entre l e , ou seja: l.2

ll .2≤≤ popn (3.23)

Sendo assim, aplicando-se a equação 3.23 para o mesmo exemplo anterior teremos

entre 10, 20, 30 e 40 e = 20, 40, 60 e 80 respectivamente.

popn

popn

Não existem critérios para definição do tamanho da população ainda bem definidos,

portanto a escolha vai depender de cada problema e da experiência adquirida ao longo do

processo (Lemonge, 1999).

3.7.2.2 – Taxa ou probabilidade de cruzamento

Este parâmetro indica a probabilidade de um indivíduo ser recombinado com outro.

Quanto maior for esta taxa ( ), mais rapidamente novos indivíduos serão introduzidos na

população, em contrapartida, se for muito alta, indivíduos com boas aptidões poderão ser

retirados mais rapidamente da população, ocorrendo perda de indivíduos de alta aptidão.

Valores baixos podem tornar lenta a convergência do algoritmo.

cp

Usualmente, a taxa de cruzamento varia entre 0,50 e 0,95. Estes números indicam apenas

uma ordem de grandeza, já que existem vários tipos possíveis de cruzamentos, limitados

apenas pela capacidade criativa do pesquisador.

3.7.2.3 – Taxa ou probabilidade de mutação

A taxa de mutação indica a probabilidade de que o conteúdo de uma determinada posição

do cromossomo seja alterado. A mutação é empregada para fornecer novas informações

dentro das populações, prevenindo que as mesmas tornem-se saturadas com cromossomos

similares na medida em que aumenta a diversidade da populacional, possibilitando ainda

uma maior varredura do espaço de busca. Taxas muito altas podem tornar a busca

essencialmente aleatória. Por isso alguns pesquisadores recomendam a escolha da taxa de

mutação com base no tamanho dos cromossomos e das populações. De Jong (1975) sugere

que a taxa de mutação deva ser inversamente proporcional ao tamanho da população, ou

seja:

37

pop

m np 1

= (3.24)

Barbosa e Lemonge (1997) sugerem que a taxa deva ser inversamente proporcional ao

tamanho do cromossomo, isto é:

l

1=mp (3.25)

Hesser e Manner (2000) sugerem que uma taxa ótima de mutação pode ser achada pela

expressão:

lpop

m np 1

= (3.26)

Porém, assim como os demais parâmetros, a taxa de mutação ideal dependerá da aplicação

a ser resolvida. Todavia, a maioria das taxas utilizadas varia entre 0,001 e 0,1.

3.7.2.4 – Recomendações

De Jong (1975) sugere que para um desempenho satisfatório a uma vasta gama de

problemas em que haja aspectos complicantes como descontinuidades, alta dimensão e

ruído a seguinte configuração de parâmetros:

Tabela 3.2 – Valores aconselhados por De Jong (1975).

Tamanho da população ( ) popn

Probabilidade de cruzamento ( ) cp

Probabilidade de mutação ( ) mp

50 -100 0,60 0,001

Grefenstette (1986) em simulações similares concluiu que para um melhor desempenho,

quando a média da função objetivo de cada geração é usada como o índice a ser otimizado,

devam ser usados:

Tabela 3.3 – Valores aconselhados por Grefenstette (1986) – Opção 1.

Tamanho da população ( ) popn

Probabilidade de cruzamento ( ) cp

Probabilidade de mutação ( ) mp

30 0,95 0,01

38

Já onde o índice a otimizar é a função objetivo do melhor cromossomo na população,

normalmente o indicador mais usado para rotinas de otimização, ele recomenda os

seguintes valores:

Tabela 3.4 – Valores aconselhados por Grefenstette (1986) – Opção 2.

Tamanho da população ( ) popn

Probabilidade de cruzamento ( ) cp

Probabilidade de mutação ( ) mp

80 0,45 0,01

3.7.3 – A inicialização

O processo se inicia com a codificação do campo de trabalho, ou seja, a escolha do tipo de

representação a ser utilizada para o universo das soluções. Uma vez definida a codificação

e o estabelecimento de uma população inicial, que é a representação de possíveis soluções

do problema a ser avaliado, deflagrar-se o processo de atuação do algoritmo. Os indivíduos

que constituem a população inicial são escolhidos, geralmente, de forma aleatória

utilizando-se funções randômicas, e assumindo tipicamente formas de cadeias binárias.

3.7.4 – Classificação dos cromossomos

A avaliação é a fase mais importante onde se encontra a ligação entre o algoritmo e o

problema. Avaliar um cromossomo em um AG significa determinar o seu nível de aptidão

de sobrevivência em relação aos demais indivíduos da população (Ochi e Rocha, 2000).

Nessa etapa é realizado o primeiro passo da seleção, onde cada indivíduo é associado a um

valor numérico, que representa seu grau de adaptação, obtido através de sua avaliação pela

função de desempenho (aptidão). Para tanto, existe a função aptidão que é responsável por

classificar os indivíduos de acordo com o grau de adaptação e é específica para cada tipo

de problema. Essa classificação pode ser feita através da ordenação das soluções em ordem

crescente ou decrescente de suas aptidões, se o problema é de minimização ou

maximização, respectivamente.

Genericamente, a função aptidão para um problema de otimização pode ser definida como

na equação 2.2 vista anteriormente e mostrada abaixo:

)()()( xpenalxfxF +=

39

Se o problema não apresenta restrições em sua formulação, a função de penalização não é

considerada e a função aptidão é a própria função objetivo (FO). A penalização está

diretamente associada às restrições e somente será ativada quando alguma delas for

violada.

No presente trabalho utilizará para as estruturas reticuladas (Gere e Weaver, 1981) a FO

apresentada abaixo:

(3.27) ( ) ( ) ∑=

===n

iiii LAWAfxf

A parcela penal (x), que a função de penalização, será definida no próximo capítulo para

cada tipo de problema.

No entanto, o valor da função objetivo nem sempre é adequado para ser utilizado como

parâmetro para a aptidão. Se a função objetivo assumir valores negativos alguns métodos

de seleção podem não funcionar, valores muito próximos tornam a seleção aleatória e

ainda, valores muito elevados em relação ao resto da população causam a convergência

prematura. Para isso ordena-se ou escalona-se a FO para o valor da aptidão, sendo

necessário controlar a pressão de seleção.

A pressão de seleção é a relação entre a maior aptidão e a aptidão média na população. Se

para alguns indivíduos a FO tiver valores muito elevados em relação ao restante da

população a pressão de seleção será grande e pode causar a convergência prematura e no

caso de valores muito próximos da FO a pressão de seleção será muito baixa tornando a

busca quase aleatória e, portanto sem controle, como na FO sem ordenação ou

escalonamento.

Nas subseções seguintes são mostrados algumas das possíveis formas de ordenar ou

escalonar a função objetivo para gerar a aptidão.

3.7.4.1 – Ordenamento linear

Este método de ordenamento é o mais comum encontrado na literatura dos AG

(Baker, 1987). A função aptidão ou de desempenho é dada por:

1

min)(maxmin−−

−+=N

iNAFi (3.28)

40

O valor de i é o índice do cromossomo na população em ordem decrescente de valor da

função objetivo e N é o número de indivíduos da população. É utilizado 1 ≤ max ≤ 2 e

min + max = 2 ou min + max = 3.

A alta pressão de seleção favorece os melhores cromossomos, direcionando a busca às

melhores soluções encontradas até então, isto é, aperfeiçoando certa região do espaço de

busca (explotação). Já a baixa pressão de seleção favorece os piores cromossomos,

direcionando a busca para regiões desconhecidas no espaço de busca (exploração).

Figura 3.9 – Pressão de Seleção (modificado – Lacerda e Carvalho, 1999).

3.7.4.2 – Ordenamento exponencial

No método de ordenamento exponencial, a aptidão é dada por (Michalewicz, 1996):

( ) 11 −−= ii qqAF (3.29)

Em que q ∈ [0,1] e i é o índice do cromossomo na população em ordem decrescente do

valor da função objetivo. Caso seja necessário, a aptidão pode ser normalizada dividindo a

equação 3.24 pelo fator 1-(1-q)N.

Este tipo de ordenamento permite a maior pressão de seleção do que o ordenamento linear.

3.7.4.3 – Escalonamento linear

Neste método, proposto por Goldberg (1989), a aptidão é obtida por:

41

bagAFi += (3.30)

Em que g é o valor da função objetivo, como exemplificado na Figura 3.9. Os coeficientes

a e b são determinados de forma a limitar o número esperado de filhos dos cromossomos.

Este método transforma as aptidões de forma que a aptidão média torna-se igual ao valor

médio da função objetivo (isto é, gAFi = ), e a aptidão máxima igual a C vezes a aptidão

média (ou seja, gCAFi =max ). Normalmente o valor de C está entre 1,2 e 2,0. Os

coeficientes a e b são calculados diferentemente quando o escalonamento gera aptidões

negativas.

Figura 3.10 – Esboço do escalonamento linear (modificado - Goldberg, 1989).

3.7.5 – Avaliação dos cromossomos

Nesta fase os indivíduos mais aptos da geração atual são selecionados. Esses indivíduos

são utilizados para gerar uma nova população por cruzamento e cada indivíduo tem uma

probabilidade de ser selecionado proporcional à sua aptidão, como pode ser exemplificado

por alguns métodos a seguir.

3.7.5.1 – Roleta

Para visualizar o método da roleta, considere um círculo dividido em n regiões (tamanho

da população), onde a área de cada região é proporcional à aptidão do indivíduo como na

Figura 3.11. Coloca-se sobre este círculo uma “roleta” com n cursores, igualmente

espaçada. Após um giro da roleta a posição dos cursores indica os indivíduos selecionados.

Este método é denominado amostragem universal estocástica. Evidentemente, os

42

indivíduos cujas regiões possuem maior área terão maior probabilidade de serem

selecionadas várias vezes. Como conseqüência, a seleção de indivíduos pode conter várias

cópias de um mesmo indivíduo enquanto outros podem desaparecer.

Figura 3.11 – Amostragem estocástica universal.

Como exposto, nesse método, cada indivíduo é representado na roleta proporcionalmente

ao seu índice de aptidão, privilegiando, logicamente, os indivíduos com alta aptidão, que

terão uma porção relativamente alta em relação aos indivíduos de aptidão baixa.

Dada uma população com M indivíduos, a probabilidade de seleção Pi (equação 3.26), de

cada cromossomo i, com aptidão fi, é dada por (Lacerda e Carvalho, 1999):

(3.31) ∑i

f=

= M

ii

ifp

1

A cada giro na roleta será sorteada uma cópia exata do candidato a compor a população

intermediária que irá passar pelos demais operadores de cruzamento e mutação

(Torres, 2003).

É possível que no processo de evolução um indivíduo com alta aptidão seja eliminado,

devido ao corte do cruzamento ou à ocorrência de mutação. É importante garantir que o

melhor indivíduo passe de uma geração a outra sem alterações. Para tanto se utiliza o

recurso do operador elitismo. A Figura 3.12 representa este procedimento, que pode ser

aplicado a qualquer método de seleção.

43

Descendência

Transformação

População Intermediária

(m)

Elitismo

Método da

roleta

População

Substituição

Figura 3.12 – Método da roleta com elitismo (modificado – Sampaio, 2004).

3.7.5.2 – Torneio

O método da seleção por torneio, retorna o melhor indivíduo entre dois obtidos no método

da roleta. Este método tenta dificultar, mas não elimina as possibilidades de um indivíduo

com baixo desempenho ser escolhido.

3.7.5.3 – Amostragem Determinística

Na amostragem determinística (Deterministic sampling - DS), o processo de seleção possui

dois estágios. O primeiro é a criação de uma população temporária, a qual é preenchida

com o número inteiro do cálculo da expectativa de cópias de cada membro i da população.

Dado pela seguinte expressão:

ipopi PnE .= (3.32)

A parte inteira , designada por iE ( )iEint , será o número esperado de cópias e o

resíduo:

iR

( )ii EI int= (3.33)

iii IER −= (3.34)

Devido às partes fracionárias desta expectativa, haverá lacunas a preencher. No segundo

estágio, essas lacunas são preenchidas de acordo com os indivíduos que possuírem a parte

fracionária de valor de desempenho mais alto.

44

3.7.5.4 – Seleção Estocástica Remanescente

Similarmente ao DS, a seleção estocástica remanescente (Stochastic remainder sampling -

SRS), também cria uma população temporária com a parte inteira da expectativa de cópias.

As lacunas restantes são preenchidas, verificando-se a ocorrência de um evento com a

probabilidade da parte fracionária. Soares (1997) sugere que a escolha dos indivíduos

(parte fracionária, neste caso) seja na ordem crescente de desempenho, oferecendo assim,

uma oportunidade aos indivíduos de menores valores de desempenho.

3.7.6 – Operadores de cruzamento e mutação

Os operadores genéticos de cruzamento e mutação representam a essência de um AG e têm

como objetivo básico produzir novos cromossomos que possuam propriedades genéticas

superiores às encontradas nos pais, garantindo que a nova geração seja totalmente nova,

apesar de possuir, de alguma forma, características de seus pais, mas mantém

características de adaptação adquiridas pelas gerações anteriores.

3.7.6.1 – Operador de cruzamento

Após a seleção, pares de indivíduos são escolhidos aleatoriamente ( ) para se cruzarem.

Nessa operação, dois novos indivíduos são gerados, os quais possuem características

genéticas de seus pais (Lucas, 2000).

cp

O cruzamento é um importante mecanismo de recombinação de soluções, uma vez que

permite a troca de material genético entre os indivíduos participantes, originando dois

novos pontos no espaço de otimização. Para tanto, divide um par de indivíduos em locais

pré-definidos e recombina seus materiais genéticos formando novos indivíduos, que

novamente são avaliados e recebem um novo valor de aptidão individual. As Figuras 3.13

e 3.14 apresentam os esquemas de cruzamentos clássicos, o cruzamento de um ponto e de

dois pontos. Os demais são a generalização do cruzamento de um ponto.

45

0 0 1 1 0 1 0 1

0 1 0 1

1 0 1 1 1 0 0 1

1 0 1 1 1 0 0 1 0 0 1 1

Pai 1 Pai 2

0 0 1 1 1 0 0 1

1 0 1 1 0 1 0 1

Filho 1

Filho 2

Figura 3.13 – Cruzamento de um ponto (Sampaio, 2004).

Figura 3.14 – Cruzamento de 2 pontos.

Um outro esquema clássico de cruzamento é o uniforme. Para cada par de pais é gerada

uma máscara de bits aleatórios. Se o primeiro bit da máscara possuir o valor 1, então o

primeiro bit do Pai1 é copiado para o primeiro bit do Filho1 e o primeiro bit do Pai2 é

copiado para o Filho2. Caso contrário, o primeiro bit do Pai2 é copiado para o primeiro bit

do Filho1 e o primeiro bit do Pai1 é copiado para o primeiro bit do Filho2, como pode ser

visto na Figura 3.15.

46

Figura 3.15 – Cruzamento uniforme.

3.7.6.2 – Operador de mutação

A mutação é realizada em seguida operando sobre os indivíduos resultantes do processo de

cruzamento e, com uma probabilidade pré-determinada ( ), efetua um tipo de alteração

em sua estrutura, a qual consiste na alteração randômica no valor do bit do cromossomo. A

Figura 3.16 ilustra os procedimentos básicos adotados pelos operadores de mutação.

mp

0 0 1 1 1 0 0 1 1 0 1 1 0 1 0 1

Filho 1 Filho 2

0 1 1 0 1 0 1 1 1 0 1 1 0 1 0 1

Figura 3.16 – Operador de mutação (Sampaio, 2004).

3.7.7 – Atualização e critérios de parada

3.7.7.1 – Atualização

Nesse ponto, os indivíduos resultantes do processo de cruzamento e mutação são inseridos

na população segundo a política adotada pelo AG. A população mantém um tamanho fixo

e os indivíduos são criados em mesmo número que seus antecessores e os substituem por

completo (Lucas, 2000).

47

3.7.7.2 – Critérios de parada

A finalização é feita por um teste que dá fim ao processo de evolução caso o AG tenha

chegado a algum ponto de parada preestabelecida. Deve-se salientar que não existe um

critério exato para terminar a execução do AG.

3.8 – OUTRAS ESTRATÉGIAS EMPREGÁVEIS

3.8.1 – Controle da diversidade populacional

A diversidade populacional está relacionada com a variabilidade genética dos

cromossomos da população: quanto maior a diversidade, isto é, quanto maior a diferença

entre os cromossomos, maior o espalhamento das possíveis soluções no espaço de busca.

Normalmente o espalhamento é máximo no inicio do processo, quando a população inicial

é gerada aleatoriamente.

Podem-se criar vários métodos para medir a diferença entre dois indivíduos da população.

O código binário possui um problema de representação que é a presença dos Hamming

cliffs, ou seja, grandes diferenças de bits nas cadeias de caracteres que codificam valores

inteiros adjacentes. Com o intuito de resolver esse problema, um outro tipo de código

binário, denominado de código de Gray (criado por Frank Gray em 1953), foi aplicado

com a finalidade de diferenciar um bit para cada dois números inteiros em seqüência.

Portanto, o código de Gray possui mais adjacência (propriedade de semelhança na cadeia

codificada para representação de inteiros em seqüência) na codificação que o código

binário, como por exemplo, na tabela 3.5. Esta adjacência associada a uma pequena taxa de

mutação ajudará na convergência final do AG, enquanto que no código binário uma

pequena taxa favorece a exploração de novas regiões.

No código binário é importante enfatizar que devido à presença dos Hamming cliffs, os

operadores genéticos, como cruzamento e mutação, poderão ter dificuldade em vencer uma

grande distância Hamming ( ) se o ponto de máximo ou mínimo global estiver distante

(por Hamming) destes cromossomos e toda a população for idêntica ou muito parecida,

gerando um tempo de convergência muito grande. Para isso Schaffer (1989) realizou um

extenso trabalho para quantificar e identificar a influência dos parâmetros de controle

(como na subseção 3.7.2.4), usando o código de Gray e a estratégia elitista, podendo ser

resumido na Tabela 3.6.

dH

48

Tabela 3.5 – Código binário, Código de Gray e a distância Hamming.

Inteiro Binário dH Gray dH

0 0000 - 0000 - 1 0001 1 0001 1 2 0010 2 0011 1 3 0011 1 0010 1 4 0100 3 0110 1 5 0101 1 0111 1 6 0110 2 0101 1 7 0111 1 0100 1 8 1000 4 1100 1 9 1001 1 1101 1 10 1010 2 1111 1 11 1011 1 1110 1 12 1100 3 1010 1 13 1101 1 1011 1 14 1110 2 1001 1 15 1111 1 1000 1

Tabela 3.6 – Valores aconselhados por Schaffer (1989).

Tamanho da população ( ) popn

Probabilidade de cruzamento ( ) cp

Probabilidade de mutação ( ) mp

20-30 0,75-0,95 0,005-0,01

3.8.2 – Hibridização

A hibridização é uma alternativa para melhorar o funcionamento dos Algoritmos

Genéticos, visando acoplar algoritmos distintos com o intuito de tirar o melhor proveito de

cada um deles. Assim, é possível acoplar-se aos Algoritmos Genéticos outros métodos

matemáticos que efetuem uma busca local mais agressiva. Esta alternativa híbrida

resultante possui a capacidade de exploração global da região viável aliada à eficiência nas

buscas locais.

49

Os trabalhos que fizeram uso deste tipo de técnica híbrida buscaram algoritmos

determinísticos que apresentam bons resultados em termos de precisão, eficiência e

robustez, como o de Adeli e Cheng (1994) que utilizaram os multiplicadores de Lagrange

para o refinamento a partir de certas regiões, o de Mendes et al. (1996) que utilizaram o

método do Elipsóide, o de Kim (1997) que os princípios de Subida de Encosta (Hill-

Climbing) para encontrar a melhor relação entre busca local e busca global e o de Soares

(1997) que utilizou o método BFGS. Porém com o inconveniente de haver a necessidade

de cálculo de derivadas. Uma possibilidade de não calcular derivadas é utilizar o método

de Rosenbrock ou o Gradientelike-Bitwise Improvement proposta por Goldberg, que são

tomadas como base os dois melhores indivíduos da atual iteração, depois disto varre-se bit

a bit cada uma, mudando o valor do bit e avaliando o desempenho do indivíduo, no final,

escolhe-se a melhor solução para repô-la na população. O problema desta última técnica é

computacionalmente dispendiosa.

3.8.3 – Computação Paralela

A existência de um ambiente computacional paralelo pode ser aproveitada para tirar

vantagem do alto grau de paralelismo, este implícito, em um algoritmo genético. Existem

diversas formas para se empregar computação paralela. A etapa de seleção necessita de

certa centralização, devendo os valores de aptidão de todos os indivíduos da população

estarem disponíveis simultaneamente em algum processador para a seleção natural dos

indivíduos. Em seguida, os operadores genéticos escolhidos são aplicados sobre os

indivíduos desejados para a evolução do processo (Silva, 2000). Posteriormente, no que diz

respeito à estrutura espacial da população utilizada, pode-se ter a separação dos elementos

da população inicial com a criação de subpopulações, sendo estas residentes nos n

processadores disponíveis, submetidas cada uma a um AG independente, sujeitas a trocas

de material genético entre os grupos em determinados intervalos ou, caso não ocorra

nenhuma comunicação entre os n processadores, aconteceria como se o problema fosse

seqüencial, isto é, a população envolvida com a participação de todos os indivíduos

durante todo o processo evolutivo.

Segundo Borges (1999) os modelos a serem adotados podem ser baseados nas teorias de

Wright e Fisher, vindas da Biologia. O primeiro modelo, o de Wright, a evolução se dá

principalmente através do intercâmbio entre subpopulações, que produz um efeito benéfico

nas gerações subseqüentes, ou seja, se um nicho alcançar determinado resultado,

50

proveniente de sua diversidade genética, limitada pela pequena dimensão populacional.

Melhores indivíduos só virão com o intercâmbio com outros subgrupos possuidores de

diferentes padrões genéticos. Já no segundo, o de Fisher, a separação espacial não é

necessária. Em um ambiente onde a aptidão comporta-se de uma forma tridimensional com

diferentes regiões de alta aptidão espalhados pelo espaço e sofrendo variações decorrentes

das mudanças ambientais, a evolução se faz pela seleção dos alelos, ou grupo de alelos,

que produzam melhores efeitos na população, tornando, assim, o processo mais eficiente,

com toda a população servindo como um banco de dados genético, para as possíveis

combinações que conduzirão a indivíduos mais aptos.

Como a maior parte dos assuntos relacionados aos AG, a implementação computacional

distribuída ainda se encontra em evolução, pela infinidade de alternativas possíveis,

restritas apenas pela própria imaginação.

3.9 – CONSIDERAÇÕES GERAIS SOBRE O MÉTODO DOS ELEMENTOS

FINITOS

O Método dos Elementos Finitos (MEF) foi originalmente desenvolvido para analisar

configurações estruturais bem definidas. Sua popularidade cresceu de uma forma

fenomenal devido à versatilidade e praticidade do método, resolvendo vários tipos de

problemas.

O MEF pode ser interpretado do ponto de vista físico e matemático. O conceito básico do

método na parte física consiste em dividir a estrutura em vários elementos, denominados

de elementos finitos. A resposta de cada elemento é determinada em termos de um número

finito de graus de liberdade caracterizados como um valor de uma função, em um conjunto

de pontos. A resposta do modelo matemático é obtida reunindo todos os elementos

(Felippa, 2000).

Alguns dos princípios que foram utilizados neste trabalho são mostrados nas subseções

seguintes e seguiram os programas implementados de Brebbia e Ferrante (1986).

51

3.9.1 – Análise Estática

3.9.1.1 – Elemento finito unidimensional reto para treliça

A treliça plana foi modelada através do Método dos Elementos Finitos, utilizando as

funções de forma apropriadas (Zienkiewicz, 1977; Desai, 1979). Conhecendo-se a matriz

de rigidez da estrutura e suas condições de contorno, podem-se obter os deslocamentos

genéricos através do sistema:

KU = P (3.35)

Na Figura 3.17 representam-se os deslocamentos de um elemento de treliça plana

considerando coordenadas locais e globais, cuja origem é no nó 1 na extremidade

esquerda.

Figura 3.17 – Elemento de treliça plana.

No sistema local o elemento tem deslocamentos apenas axiais (uL1 e uL2). Já no sistema

global tem dois graus de liberdade por nó, sendo duas translações (u1 e v1 ou u2 e v2) de tal

forma que o vetor de deslocamentos é:

⎥⎦

⎤⎢⎣

⎡=

2

1

L

LL u

uu (3.36)

⎥⎥⎥⎥

⎢⎢⎢⎢

=

2

2

1

1

vuvu

u (3.37)

Para o sistema local e global, tem-se respectivamente.

52

A equação geral dos trabalhos virtuais para o MEF na forma fraca para problemas estáticos

(elasticidade 2D) é dada por (Segerlind, 1976):

( ) ( ) ( )∫∫∫ Ω++Γ+=Ω++ dububdvPuPd yxyxyyyyxyxyxxxx δδδδδεσδγσδεσ ( (3.38)

Têm-se apenas efeitos axiais de tal forma que σxx ≠ 0 e as forças de corpo como nulas

temos:

( ) uPdxxxx δδεσ∫ =Ω (3.39)

A aproximação de elementos finitos é uma equação do tipo:

∑= niiUNU (3.40)

Onde U é uma função desconhecida, necessária para calcular os termos da equação 3.38,

Ni são funções conhecidas, chamadas de funções de forma, e Uin são valores nodais das

incógnitas.

Para o elemento de treliça plana as funções de forma para a equação 3.40 são:

LxN −= 11 (3.41)

LxN =2 (3.42)

De tal forma que:

2211 LL uNuNU += (3.43)

Podem-se estabelecer os coeficientes de rigidez para elementos reticulados usando o lado

esquerdo da equação 3.38, devendo-se substituir a aproximação de elementos finitos e

integrar termo a termo.

A matriz de rigidez do elemento treliça plana considerando o sistema local, é denominada

KLET.

⎥⎥⎥

⎢⎢⎢

−=

LEA

LEA

LEA

LEA

K ETL (3.44)

53

3.9.1.2 – Elemento finito unidimensional reto para viga

Na Figura 3.18 representam-se os deslocamentos de um elemento de viga plana

considerando coordenadas locais e globais, cuja origem é no nó 1 na extremidade

esquerda.

Figura 3.18 – Elemento de viga plana.

Os deslocamentos locais para este elemento são:

⎥⎥⎥⎥

⎢⎢⎢⎢

=

2

2

1

1

θ

θ

L

L

L v

v

u (3.45)

As funções de forma para a equação 3.40 são:

⎟⎟⎠

⎞⎜⎜⎝

⎛+−= 132

2

2

3

3

1 Lx

LxN (3.46)

⎟⎟⎠

⎞⎜⎜⎝

⎛+−= x

Lx

LxN

2

2

3

22

(3.47)

⎟⎟⎠

⎞⎜⎜⎝

⎛−= 3

3

2

2

323Lx

LxN (3.48)

⎟⎟⎠

⎞⎜⎜⎝

⎛−=

Lx

LxN

2

2

3

4 (3.49)

De tal forma que:

24231211 θθ NvNNvNU LL ++++= (3.50)

54

A matriz de rigidez do elemento treliça plana considerando o sistema local, é denominada

KLEV e obtida de maneira análoga à subseção anterior.

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

−−−

=

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

K EVL

4626

612612

2646

612612

22

2323

22

2323

(3.51)

3.9.1.3 – Elemento finito unidimensional reto para pórtico

Na Figura 3.19 representam-se os deslocamentos de um elemento de pórtico plano em

coordenadas locais cuja origem é no nó 1 na extremidade esquerda.

Figura 3.19 – Elemento de pórtico plano.

O elemento tem três graus de liberdade por nó, sendo duas translações e uma rotação. O

vetor deslocamento do elemento correspondente é:

(3.52)

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

=

2

2

2

1

1

1

θ

θ

L

L

L

L

L

vu

vu

u

A matriz de rigidez do elemento de pórtico plano em coordenadas locais, denominada

KLEP, é obtida somando em nível de coordenadas locais, a matriz de rigidez de um

55

elemento de treliça (equação 3.44) com a matriz de rigidez de um elemento de viga

(equação 3.51), também em coordenadas locais.

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

−−−

=

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEA

LEA

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEI

LEA

LEA

K EPL

460260

61206120

0000

260460

61206120

0000

22

2323

22

2323

(3.53)

Após gerar a matriz de rigidez do elemento finito (treliça, viga ou pórtico) em relação ao

seu sistema de coordenadas (locais) é necessário referi-la a um sistema global de

coordenadas e para isso usa-se a matriz de rotação ( R ). Para o elemento pórtico plano, por

exemplo, tem-se:

(3.54) RKRK EPL

TEPG =

(3.55)

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

=

1000000cos0000cos0000001000000cos0000cos

ββββ

ββββ

sensen

sensen

R

Onde β é a inclinação do elemento em relação ao eixo x mostradas na Figura 3.19.

Maiores informações sobre rotação do sistema de coordenadas pode ser obtidas em

Zienkiewicz (1977).

3.9.2 – Análise Dinâmica

Na análise linear de estruturas é importante a distinção das cargas estáticas de cargas

dinâmicas para a avaliação da resposta de cada carga separadamente e só então, fazer a

superposição de efeitos para obter a resposta total da estrutura. Carga dinâmica é qualquer

carga cuja magnitude, direção ou posição varie no tempo (Clough e Penzien, 1993;

Chopra, 1995). O principal objetivo de uma análise dinâmica é encontrar os deslocamentos

56

em função do tempo. A expressão matemática que define o deslocamento dinâmico é

denominada de equação de movimento. A equação de movimento para um sistema linear

sujeita a forças externas é uma equação diferencial de segunda ordem, dada por:

( )tPKuuCuM =++ &&& (3.56)

Onde M, C e K são as matrizes de massa, de amortecimento e de rigidez da estrutura,

respectivamente; , e u são os vetores de aceleração, velocidade e deslocamento,

respectivamente, em um determinado instante de tempo .

u&& u&

t

3.9.2.1 – Vibrações livres

O estudo de vibrações livres tem como objetivo a determinação das propriedades

dinâmicas mais importantes de uma estrutura: as freqüências naturais de vibração e seus

respectivos modos normais. A determinação das freqüências e modos normais de uma

estrutura são feitos omitindo-se o amortecimento, que normalmente existe em uma

estrutura considerando isto a ser relativamente pequeno e praticamente não afetando o

cálculo das freqüências naturais e dos modos normais (Paz, 1980). A análise de vibrações

livres para sistemas lineares com vários graus de liberdade é governada pela equação 3.56

com = 0 que com a ausência de amortecimento é dada por: ( )tP

0=+ KuuM && (3.57)

A equação 3.57 representa um conjunto de equações diferenciais homogêneas que estão

acopladas através das matrizes de massa e rigidez. A solução desta equação é um problema

matemático conhecido como problema de autovalores e autovetores, e dado por:

(3.58) 0][ 2 =− iMK φϖ

A solução fornece os valores das freqüências naturais de vibração ωi correspondentes aos

modos naturais de vibração φi (i = 1, 2, 3,..., n). Sendo as matrizes de massa e rigidez

conhecidas, o problema resume-se em determinar o escalar e o vetor φ2iϖ i. A equação

3.58 possui sempre a solução trivial φi = 0, ou seja, não existe movimento no sistema.

Fazendo-se uso da equação 3.58, têm-se soluções não-triviais.

(3.59) 0]det[ 2 =− MK ϖ

57

Esta equação possui raízes reais e positivas para , pois as matrizes de massa e rigidez

são simétricas e positivas definidas.

2iϖ

As raízes da equação 3.58 determinam as freqüências naturais de vibração. Estas raízes da

equação característica são conhecidas como autovalores. Encontrando-se as freqüências

naturais ωi, a equação 3.57 pode ser resolvida. A solução desta equação não estabelece a

amplitude dos vetores φi, apenas sua forma. Para todo autovalor existe um vetor

independente φi chamado de modo natural de vibração ou autovetor.

Tanto as freqüências naturais quanto os modos de vibração são propriedades da estrutura e

dependem apenas das propriedades de massa e rigidez (Craig, 1981). O subscrito indica

o número do modo e o primeiro modo (i = 1) é também chamado de modo fundamental.

i

Em geral, os métodos numéricos são empregados para o cálculo dos autovalores e

autovetores, no presente trabalho utilizou-se o método de Jacobi generalizado.

3.9.2.2 – Matriz de massa consistente

Segundo Weaver e Johnston (1987) a matriz de massa de um determinado elemento é

definida por:

∫ Ω= dNNM T )(ρ (3.60)

Considerando um elemento de treliça com seção uniforme A e substituindo as respectivas

funções de forma (equações 3.41 e 3.42) na equação 3.60, tem-se:

dxLx

Lx

Lx

Lx

AML

ETL ⎥⎦

⎤⎢⎣⎡ −

⎥⎥⎥

⎢⎢⎢

⎡ −= ∫ 1.

1

0

ρ (3.61)

Resolvendo a equação 3.61 termo a termo, a matriz de massa consistente para o elemento

de treliça em coordenadas locais é dada por:

⎥⎦

⎤⎢⎣

⎡=

2112

6LAM ET

Lρ (3.62)

Procedendo da mesma maneira para o elemento de viga, empregando as funções de forma

dadas nas equações 3.46 a 3.49, tem-se:

58

⎥⎥⎥⎥

⎢⎢⎢⎢

−−−−−−

=

22

22

422313221561354313422135422156

420LLLL

LLLLLLLL

LAM EVL

ρ (3.63)

A matriz de massa consistente para o elemento de pórtico é obtida pelo somatório das

contribuições das matrizes de massa dos elementos de treliça e de viga, conforme a

equação 3.64.

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

−−−

−−

=

22

22

4220313022156013540

001400070313042013540221560007000140

420

LLLLLL

LLLLLL

LAM EPL

ρ (3.64)

Da mesma forma que na análise estática, é necessário referir a matriz de massa a um

sistema de coordenadas globais e analogamente ao visto anteriormente:

(3.65) RMRM EPL

TEPG =

3.10 – ACOPLAMENTO DOS ALGORITMOS GENÉTICOS COM ELEMENTOS

FINITOS PARA ESTRUTURAS RETICULADAS

Para fazer as conexões entre o AG e o programa de elementos finitos, pode-se fazer uma

escolha entre as seguintes opções:

• Fazer com que o programa de elementos finitos seja uma sub-rotina do AG. No

momento de calcular a função aptidão os parâmetros serão enviados para esta sub-

rotina que gerará, de acordo com esses parâmetros, os dados da estrutura a ser

avaliada.

• Fazer uma chamada externa, dentro do AG, do programa de elementos finitos e

neste caso os códigos são independentes demandando escrever e ler arquivos. O

custo computacional pode ficar maior, mas podendo ser usado pacotes comerciais.

No presente trabalho optou-se pela primeira opção, representando a sua estrutura como a

seguir.

59

Operador de Seleção

Operador de Cruzamento

Operador de Mutação

População i+1

Fim

Sim

Parar?

MEF

População i

Início

Figura 3.20 – Funcionamento de um Algoritmo Genético com Elementos Finitos.

60

4 – ANÁLISE NUMÉRICA

4.1 – INTRODUÇÃO

Neste capítulo será feita a análise numérica de alguns exemplos clássicos de otimização de

estruturas reticuladas em engenharia estrutural. As implementações foram realizadas em

linguagem de programação FORTRAN, com o compilador FORTRAN POWER

STATION 4.0 da Microsoft. O algoritmo genético usado é do tipo geracional combinado

com a estratégia elitista. Foram usados os operadores genéticos clássicos: seleção,

cruzamento e mutação. As funções e os parâmetros utilizados são mencionados nos

respectivos problemas. A estrutura de funcionamento está representada no fluxograma da

Figura 4.1 e segue a usada por Torres et al. (2003).

Figura 4.1 – Estrutura de funcionamento do programa de Algoritmo Genético.

As sub-rotinas apresentadas no fluxograma têm as seguintes funções:

61

INPUT: lê de um arquivo em formato ASCII os dados relativos ao problema a maximizar

ou a minimizar, tais como número gerador aleatório (seed), tamanho da população, número

de bits por cromossomo, tipo de cruzamento, probabilidades, etc;

POPIN: gera uma população de acordo com a seed, e o número de bits;

RAN2: gerador de números aleatórios, a partir de uma semente (seed);

BASE10: converte os números binários em inteiros;

FOBJ: mapeia os valores no intervalo de busca e substitui na função objetivo;

ORDENA: ordena a população em ordem crescente de aptidão;

APT: calcula a aptidão e a aptidão acumulada;

SELEC: seleciona com uma probabilidade os pares de indivíduos para serem avaliados

pelos operadores genéticos;

EXECRS: operador de cruzamento;

MUTAC: operador de mutação;

CONV: verifica a população em relação a alguns critérios de parada;

MUTAC: operador de mutação;

OUTPUT: gera o arquivo de saída com os resultados da função maximizada ou

minimizada com a respectiva geração.

4.2 – TESTANDO O ALGORITMO GENÉTICO

Não há algoritmo de otimização que resolva satisfatoriamente qualquer problema, devido a

grande variedade dos mesmos. Então foram escolhidas duas funções teste de forma a tentar

agrupar algumas características comuns a uma série de outras funções. As características

são de continuidade, ser multimodal e ter apenas uma solução global.

62

4.2.1 – Função Seno

Esta primeira função, conhecida como pulso de seno, mostrada na Figura 4.2, embora

aparentemente simples, não é de fácil solução. Existem vários pontos de máximo e de

mínimos, mas muitos não representam o maior ou o menor valor que esta função pode

atingir. O método do gradiente, por exemplo, não é capaz de localizar o ponto de máximo

ou de mínimo global desta função (Lacerda e Carvalho, 1999).

f(x) = x.sen(10.π.x) + 1

-1,00-0,500,000,501,001,502,002,503,00

-1,00 -0,50 0,00 0,50 1,00 1,50 2,00

X

Y

Figura 4.2 – Pulso de seno.

4.2.1.1 – Maximizando

Sendo este problema considerado de otimização sem restrições, utilizaremos a própria

função como a função objetivo, portanto:

1)..10(.)()( +== πxsenxxfxF (4.1)

O espaço de busca a ser considerado é formado por variáveis contínuas que tem os limites

no intervalo de busca com xi ∈ [-1;2] e serão distribuídos uniformemente com uma

precisão de ε = 0,000001.

O primeiro passo é definir o tamanho da cadeia de bits, isto é, o tamanho do cromossomo,

utilizando a equação 3.19 teremos:

63

22

223000000log000001,0

)1(2log

minmaxlog

22

2

2

2

≥⇔≥

−−≥

−≥

l

l

l

l

nb

ε

O segundo é definir o tamanho da população ( ) e as probabilidades dos operadores

( e ). A escolha deve ser feita de modo a ter a configuração de parâmetros que

associem a exploração e explotação, portanto um processo empírico. Para este problema

foram utilizados as equações 3.23 para o cálculo do tamanho da população:

popn

cp mp

30

4422

.2

=

≤≤

≤≤

pop

pop

pop

n

n

n ll

e a equação 3.26 para o cálculo da probabilidade de mutação. Estas equações serviram

como ponto inicial para as avaliações e podem ser utilizadas outras.

007,02230

1

1

==

=

m

popm

p

np

l

O restante dos parâmetros foram baseados no artigo de Lacerda e Carvalho (1999), sendo

então mostrados na Tabela 4.1:

Tabela 4.1 – Parâmetros para a função seno.

Parâmetros População ( ) popn 30

Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,007Operador de cruzamento 1 (um) pontoCritério de parada Convergência dos cromossomospopn

64

A melhor solução, segundo Lacerda e Carvalho (1999) ocorre no ponto cujo valor de x é

igual a 1,85055 e portanto a função assume o valor 2,85027. Após a montagem do arquivo

de entrada em formato ASCII e executado o programa tem-se os seguintes resultados:

Convergência de todos os cromossomos em 9 gerações ao resultado conhecido.

A evolução do processo de localização do ponto máximo global ao longo das gerações e a

evolução da função objetivo são mostradas nas Figuras 4.3 a 4.6.

-1,00

0,00

1,00

2,00

3,00

-1,00 -0,50 0,00 0,50 1,00 1,50 2,00

X

Y

GERAÇÃO 0

Figura 4.3 – Distribuição da população inicial (Maximização).

-1,00

0,00

1,00

2,00

3,00

-1,00 -0,50 0,00 0,50 1,00 1,50 2,00

X

Y

GERAÇÃO 1 GERAÇÃO 4 GERAÇÃO 6

Figura 4.4 – Distribuição da população nas gerações 1, 4 e 6 (Maximização).

65

-1,00

0,00

1,00

2,00

3,00

-1,00 -0,50 0,00 0,50 1,00 1,50 2,00

X

Y

GERAÇÃO 8 GERAÇÃO 10

Figura 4.5 – Distribuição da população nas gerações 8 e 10 (Maximização).

2.50000

2.90000

0 1 2 3 4 5 6 7 8 9

GERAÇÃO

f(x)

POP = 30 - PC = 0,80 e PM = 0,007

Figura 4.6 – Evolução da maximização da função seno.

4.2.1.2 – Minimizando

Para este caso continuaremos utilizando a própria função como a função objetivo (equação

4.1), e os mesmos parâmetros da subseção anterior, como visto na Tabela 4.1. A melhor

solução ocorreu no ponto cujo valor de x é igual a 1,95050 e a função assumiu o valor

-0,95026. Após a montagem do arquivo de entrada em formato ASCII e executado o

programa tem-se os seguintes resultados: Convergência de todos os cromossomos em 10

gerações ao resultado conhecido.

A evolução do processo de otimização ao longo das gerações e a evolução da otimização

da função são mostradas nas Figuras 4.7 a 4.10.

66

-1,00

0,00

1,00

2,00

3,00

-1,00 -0,50 0,00 0,50 1,00 1,50 2,00

X

Y

GERAÇÃO 0

Figura 4.7 – Distribuição da população na geração inicial (Minimização).

-1,00

0,00

1,00

2,00

3,00

-1,00 -0,50 0,00 0,50 1,00 1,50 2,00

X

Y

GERAÇÃO 1 GERAÇÃO 4 GERAÇÃO 6

Figura 4.8 – Distribuição da população nas gerações 1, 4 e 6 (Minimização).

-1,00

0,00

1,00

2,00

3,00

-1,00 -0,50 0,00 0,50 1,00 1,50 2,00

X

Y

GERAÇÃO 8 GERAÇÃO 10

Figura 4.9 – Distribuição da população nas gerações 8 e 10 (Minimização).

67

-1,00000

-0,50000

0 1 2 3 4 5 6 7 8 9 10

GERAÇÃO

f (x)

POP = 30 - PC = 0,80 e PM = 0,007

Figura 4.10 – Evolução da minimização da função seno.

4.2.2– Função de Rosenbrock

Nesta segunda função, conhecida como função de Rosenbrock ou função teste F2 de

DeJong (1975), mostrada na Figura 4.11 é freqüentemente utilizada na literatura para testes

e comparações de algoritmos de otimização.

Figura 4.11 – Função de Rosenbrock.

Neste problema deseja-se encontrar o mínimo para esta função (equação 4.2), com o

intervalo de busca -2,048 ≤ xi ≤ 2,048 em duas dimensões.

68

( ) ( )21

2

22

121 1.100),( xxxxxf −+−= (4.2)

Tem como características ser unimodal e sua solução é 0)1,1( =f . Utilizaremos a própria

função como a função objetivo, portanto:

( ) ( )21

2

22

12121 1.100),(),( xxxxxfxxF −+−== (4.3)

Para definir o tamanho da cadeia de bits, primeiramente define-se a precisão, e neste caso

adotaremos ε = 0,0001. Usando a equação 3.19, teremos:

16

2240960log0001,0

)048,2(048,2log

minmaxlog

16

2

2

2

≥⇔≥

−−≥

−≥

l

l

l

l

nb

ε

Este é um problema em duas dimensões, e o tamanho da cadeia de bits acima foi definida

para uma variável, portanto, como a outra tem os mesmos intervalos de busca, teremos um

cromossomos de comprimento = 32. tl

Os demais parâmetros: o tamanho da população ( ) e as probabilidades dos operadores

( e ) foram escolhidos de forma análoga aos exemplos anteriores. Para este problema

foram utilizado a equação 3.23 para o cálculo do tamanho da população:

popn

cp mp

60

6432

.2

=

≤≤

≤≤

pop

pop

tpopt

n

n

n ll

E equação 3.26 para o cálculo da probabilidade de mutação:

003,03260

1

1

==

=

m

tpopm

p

np

l

69

Tabela 4.2 – Parâmetros para a função de Rosenbrock (Primeira parametrização)

Parâmetros População ( ) popn 60Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,003Tipo de Avaliação Ordenamento linearCritério de parada Convergência dos cromossomos popn

Com essa parametrização, houve convergência prematura, mas não obstante da solução e

com apenas 6 gerações o mínimo encontrado foi (1,0019; 0,9689) = 0,1219. Através de

exaustivas tentativas, variando os três parâmetros acima citados, conclui-se que para esta

função a melhor alternativa está no aumento da população, pois ampliará a distribuição da

população no espaço de busca. E com apenas 9 gerações o mínimo encontrado foi

(1,0000; 0,9999) = 0,000001.

f

f

Tabela 4.3 – Parâmetros para a função de Rosenbrock (Parametrização final)

Parâmetros População ( ) popn 100

Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,001Operador de cruzamento 1 (um) pontoCritério de parada Convergência dos cromossomos popn

0.00

0.05

0.10

0.15

0 1 2 3 4 5 6 7 8 9

GERAÇÃO

f (x,

y)

POP = 100 - PC = 0,80 e PM = 0,001

Figura 4.12 – Evolução da minimização da função de Rosenbrock.

70

4.2.3 – Conclusões

O uso do operador de cruzamento com um ponto, se mostrou satisfatório para problemas

com poucas dimensões. Os dois problemas anteriormente executados serviram como base

para validar o programa do AG, que será acoplado ao programa de MEF para estruturas

reticuladas, e padronizar a metodologia para a parametrização dos problemas que serão

analisados, onde demonstrou eficiência no encontro das soluções disponíveis na literatura.

4.3 – ANÁLISE ESTÁTICA

Para a avaliação das estruturas reticuladas o MEF é apenas acoplado ao AG (ver Figura

3.9). A estrutura básica do programa para o MEF segue a usada por Brebbia e Ferrante

(1986), sendo apresentada na Figura 4.13.

Figura 4.13 – Estrutura de funcionamento do programa de MEF estático linear.

A seguir descrevem-se as sub-rotinas utilizadas no programa para o caso estático.

71

INPUT: lê de um arquivo em formato ASCII os dados relativos à estrutura, tais como

número de nós, número de elementos, graus de liberdade por nó, número de nós por

elemento, carregamentos, condições de contorno, propriedades e tipo dos elementos;

ASSEM: responsável pela montagem da matriz de rigidez global e vetor global de cargas;

STIFF: gera a matriz de rigidez para cada elemento de pórtico/treliça;

ELASS: aloca na matriz global a matriz de rigidez de cada elemento que compõe a

estrutura em forma de banda simétrica;

BOUND: introduz na matriz de rigidez global e no vetor de cargas da estrutura as

condições de contorno;

SLBSI: resolve o sistema de equações PKU = , utilizando o método da eliminação de

GAUSS em matriz banda simétrica;

FORCE: calcula os esforços para o elemento de pórtico/treliça;

OUTPUT: gera o arquivo de saída com os resultados dos deslocamentos nodais, esforços

nos elementos de pórtico/treliça.

4.4 – TRELIÇA PLANA DE 10 BARRAS

Este problema, a treliça de 10 barras, é um exemplo clássico de otimização de peso.

Figura 4.14 – Treliça de 10 barras. 72

Sendo colocado da seguinte forma: encontre o conjunto de áreas Ai = A1, A2, ..., An que

minimize o peso da estrutura (equação 3.27):

( ) ( ) ∑=

===n

iiii LAWAfxf

Sujeito às restrições de tensões e deslocamentos (Equações 4.4 e 4.5, respectivamente)

para todos os graus de liberdade da estrutura.

01≤−máx

i

σσ

(4.4)

01≤−máx

i

dd

(4.5)

Este problema será separado em duas partes: otimização à tensão (Full Stressed Design) e

otimização à tensão e ao deslocamento combinados. A Tabela 4.4 mostra as propriedades

do material e os limites admissíveis para as tensões e os deslocamentos. Para todos os

problemas que serão apresentados a seguir, utilizou-se uma função aptidão incorporada a

uma função de penalização (equação 2.2), transformando o problema com restrições em

um problema sem restrições.

Tabela 4.4 – Propriedades do material e restrições (Treliça de 10 barras).

Propriedades Valores Módulo de Young (E) 104 Ksi

Densidade (ρ) 0,10 lbm/in³ Carga (P) 100,0 Kips

Tensão admissível (σmáx) ± 25,0 Ksi Deslocamento nodal admissível (dmáx) ± 2,0 in

A parcela penal (x) será definida para cada um dos três problemas mencionados, ficando:

(4.6) ( ) ( ) )()(1

xpenalLAxpenalxfxFn

iii +=+= ∑

=

ρ

73

4.4.1 – Caso contínuo

Para o caso contínuo, o espaço de busca tem o limite inferior e superior iguais a xU =

40,0 in² e xL = 0,1 in² respectivamente e ε = 0,1. Os parâmetros , e foram

escolhidos de forma análoga aos exemplos anteriores e quando necessário e serão

ajustados quando a convergência estiver muito lenta.

popn cp mp

popn mp

A definição do tamanho da cadeia de bits foi estipulado usando a equação 3.19.

109

399log2

=≥

l

l

l

Como temos 10 variáveis de projeto, teremos um cromossomo de comprimento = 100. tl

Após teste com 10 sementes (seeds), a Tabela 4.5 representa a parametrização final para os

dois problemas.

Tabela 4.5 – Parâmetros para a treliça de 10 barras (Variáveis contínuas).

Parâmetros População ( ) popn 100

Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,01Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 30000 gerações

4.3.1.1– Otimização à tensão

A função objetivo é dado pela seguinte expressão:

∑∑ ⎥⎦

⎤⎢⎣

⎡−+=

= i

in

iiii LAAF 1)(

max1 σσ

αρ (4.7)

O α = 550 foi estipulado após algumas tentativas de ajustes. A melhor solução

(sombreado) foi obtida na geração de número 7299 e são comparados com os resultados de

Schmit Jr. e Farshi (1973) e mostrados nas Tabelas 4.6 e 4.7.

74

Tabela 4.6 – Resultados comparativos (Peso e seções transversais para as tensões).

Áreas (in ²) W (lb) 1 2 3 4 5 6 7 8 9 10 1593,20 8,06 3,94 7,94 0,10 5,57 0,10 5,75 5,57 0,10 0,10 1594,50 8,07 3,94 7,94 0,10 5,57 0,10 5,75 5,58 0,10 0,10

Tabela 4.7 – Resultados comparativos (Tensões nas seções transversais).

Tensões (Ksi) 1 2 3 4 5 6 7 8 9 10

-25,00 -25,00 25,00 15,53 -25,00 -21,97 25,00 25,00 0,00 15,53 -24,98 -24,99 24,99 15,52 -24,99 -21,95 24,98 24,95 -0,05 15,52

1550.00

2550.00

3550.00

4550.00

0 10000 20000 30000

GERAÇÃO

PESO

PR

ÓPR

IO (L

b)

POP = 100 - PC = 0,80 e PM = 0,01

Figura 4.15 – Minimização do peso da treliça de 10 barras (Tensão).

4.3.1.2 – Otimização à tensão e ao deslocamento combinados

Neste problema a função objetivo será dado por:

∑∑∑ ⎥⎦

⎤⎢⎣

⎡−+⎥

⎤⎢⎣

⎡−+=

= i

i

i

in

iiii d

dLAAF 11)(

maxmax1α

σσ

αρ (4.8)

A parametrização segue a Tabela 4.5. A melhor solução (sombreado) foi obtida na geração

de número 24170 e os resultados são comparados com os trabalhos citados na Tabela 4.8.

75

Também são mostrados, além das seções transversais, os deslocamentos nodais verticais

nos nós 5 e 6 e a tensão na barra 9 nas Tabelas 4.8 e 4.9, conforme Figura 4.14.

Tabela 4.8 – Resultados comparativos (Tensões e deslocamentos).

Referências W (lb)

dy5 (in)

dy6 (in)

σ9 (Ksi)

Lemonge (1999) 5060,92 -1,99 -1,99 24,99 Haftka e Gürdal (1992) 5061,04 -1,99 -1,99 24,99 Presente Dissertação 5062,91 -1,99 -1,99 24,77 Lemonge e Barbosa (2004) 5069,08 -2,00 -1,99 24,75 Schmit Jr. e Farshi (1973) 5089,02 -1,99 -1,99 21,38 Adeli e Kamal (1991) 5052,62 -2,02 -2,01 23,07 Ali et al (2003) 4984,98 -2,04 -2,02 25,97 Galante (1992) 4999,21 -2,03 -2,02 25,09

Tabela 4.9 – Resultados comparativos (Peso e seções transversais para as tensões).

Áreas (in ²) W (lb) 1 2 3 4 5 6 7 8 9 10 5060,92 23,16 15,11 30,56 0,10 21,09 0,10 7,47 21,52 0,10 0,54 5061,04 23,20 15,22 30,52 0,10 21,04 0,10 7,46 21,53 0,10 0,55 5062,91 22,64 15,35 30,64 0,10 21,28 0,10 7,59 21,43 0,10 0,53 5069,08 24,18 14,94 29,22 0,10 21,92 0,10 7,49 21,29 0,10 0,39 5089,02 24,26 14,26 33,43 0,10 20,74 0,10 8,33 19,69 0,10 0,10 5052,62 24,65 15,39 31,28 0,10 21,53 0,10 7,90 19,07 0,10 0,10 4984,98 22,48 14,94 30,75 0,14 21,10 0,13 7,26 20,74 0,12 0,42 4999,21 21,79 14,26 30,44 0,10 21,63 0,10 7,62 21,36 0,10 0,45

76

5050.00

6150.00

7250.00

0 10000 20000 30000

GERAÇÃO

PESO

PR

ÓPR

IO (L

b)

POP = 100 - PC = 0,80 e PM = 0,01

Figura 4.16 – Minimização do peso da treliça de 10 barras (Tensão e deslocamento).

4.4.2 – Caso discreto

Nesta segunda análise para o problema com tensão e deslocamento combinados, o espaço

de busca para as áreas Ai é discreto. São 42 seções transversais escolhidas e disponíveis do

AISC - American Institute of Steel Construction que estão dispostas na Tabela 4.10.

Tabela 4.10 – Conjunto de seções transversais disponíveis do AISC.

Seções Comerciais (in²) 1,62 1,80 1,99 2,13 2,38 2,62 2,63 2,88 2,93 3,09 3,13 3,38 3,47 3,553,63 3,84 3,87 3,88 4,18 4,22 4,49 4,59 4,80 4,97 5,12 5,74 7,22 7,9711,5 13,5 13,9 14,2 15,5 16,0 16,9 18,8 19,9 22,0 22,9 26,5 30,0 33,5

Para análise com espaço de busca discreto, codificamos o cromossomo com o uso da

equação 3.18. As 42 seções transversais serão armazenas em um vetor e com o

mapeamento das soluções relacionamos as variáveis de projeto com esse vetor. Então

teremos:

6422

2

≥=

=

l

l

l nv

A única solução possível é ≥ 6, sendo l 64=nv que é maior que 42, porém como artifício,

as 22 primeiras variáveis serão alocadas no vetor duas vezes, ou seja, as seções de 1,62 a

77

4,59 serão dispostas na seguinte forma por exemplo, S = 1,62; 1,62; 1,80; 1,80, e etc. A

partir daí temos então um cromossomo de comprimento = 60. Os outros parâmetros

partem do princípio visto anteriormente, e no decorrer do processo eles são ajustados

empiricamente de maneira a melhorar a convergência. Como pode ser visto na Tabela 4.11,

a parametrização final para este problema é:

tl

Tabela 4.11 – Parâmetros para a treliça de 10 barras (Variáveis discretas).

Parâmetros População ( ) popn 80Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,02Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 20000 gerações

A melhor solução (sombreado) foi obtida na geração de número 10357 e os resultados são

comparados com os trabalhos citados na Tabela 4.12. Nas Tabelas 4.12 e 4.14, além das

seções transversais são mostrados os deslocamentos nodais verticais nos nós 5 e 6 e a

tensão na barra 9, conforme Figura 4.14.

Tabela 4.12 – Resultados comparativos (Tensões e deslocamentos).

Referências W (lb)

dy5 (in)

dy6 (in)

σ9 (Ksi)

Lemonge (1999) 5490,73 -1,96 -1,99 14,20 Lemonge e Barbosa (2004) 5490,73 -1,96 -1,99 14,20 Presente Dissertação 5491,71 -1,96 -1,99 13,85 Galante (1996) 5458,33 -1,97 -2,01 14,35 Rajeev e Krishnamoorthy (1992) 5613,58 -1,88 -2,00 6,65

Tabela 4.13 – Resultados comparativos (Peso e seções transversais).

Áreas (in ²) W (lb) 1 2 3 4 5 6 7 8 9 10 5490,73 22,9 14,2 33,5 1,62 22,9 1,62 7,97 22,0 1,62 1,62 5490,73 22,9 14,2 33,5 1,62 22,9 1,62 7,97 22,0 1,62 1,62 5491,71 22,9 15,5 33,5 1,62 22,0 1,62 7,97 22,0 1,62 1,62 5458,33 22,0 14,2 33,5 1,62 22,9 1,62 7,97 22,0 1,62 1,62 5613,58 22,0 15,5 33,5 1,62 19,9 2,62 14,20 19,9 1,62 1,62

78

5450.00

6450.00

7450.00

0 10000 20000

GERAÇÃO

PE

SO P

PRI

O (L

b)

POP = 80 - PC = 0,80 e PM = 0,02

Figura 4.17 – Minimização do peso da treliça de 10 barras (Tensão e deslocamento).

4.4.3– Conclusões

Para este primeiro problema, uma foi obtida pela equação 3.25, que proporcionou uma

convergência com um número menor de gerações. Tanto no caso contínuo, quanto no caso

discreto, o algoritmo convergiu ou ficou muito próximo das soluções encontradas na

literatura, se mostrando bastante preciso, visto que em alguns casos nota-se que as

restrições foram violadas por precisão decimal.

mp

4.5 – TRELIÇA PLANA DE 38 BARRAS

Neste segundo problema, a treliça de 38 barras, pretende-se minimizar o peso total da

estrutura impondo-se a restrição de que o deslocamento na direção vertical do nó da

extremidade livre não seja superior a 10 mm. As seções transversais das barras são as

variáveis de projeto, e tem a característica de possuir algumas das 38 seções transversais

agrupadas conforme a Tabela 4.14.

79

Tabela 4.14 – Seções transversais agrupadas (Treliça de 38 barras).

Seções transversais (Ai)

A2 = A20 = A29

A21 = A30

A22 = A31

A23 = A32

A24 = A33

A25 = A34

A26 = A35

A27 = A36

A28 = A37

Totalizando, portanto, 28 variáveis de projeto. A tabela 4.15 mostra as propriedades dos

materiais e restrições.

Tabela 4.15 – Propriedades do material e restrições (Treliça de 38 barras).

Propriedades Valores Módulo de Young (E) 210,0 KN/mm²

Densidade (ρ) 7,85 x 10-6 kg/mm³Carga (P) 100,0 KNCarga (P1) 10,0 KNDeslocamento admissível na extremidade livre (dmáx) 10 mm

Figura 4.18 – Treliça de 38 barras (modificado – Templeman, 1988)

4.5.1 – Caso contínuo

Nesta primeira análise o espaço de busca, contínuo, é limitado no intervalo [7,0; 90,0]

(mm² x 10-3). Com ε = 0,01. Os parâmetros , e foram escolhidos de forma popn cp mp

80

análoga aos exemplos anteriores. Usando a equação 3.19 para a definição do tamanho da

cadeia de bits, teremos:

1414

8300log2

=≥

l

l

l

Como temos 28 variáveis de projeto, teremos um cromossomo de comprimento = 392. tl

Após teste com 30 sementes (seeds), a Tabela 4.16 representa a parametrização final para o

caso contínuo.

Tabela 4.16 – Parâmetros para a treliça de 38 barras (Variáveis contínuas).

Parâmetros População ( ) popn 400Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,002Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 100000 gerações

Na geração de número 31952 a melhor solução (sombreado) foi obtida e os resultados não

alcançaram aos encontrados por Lemonge (1999) e Templeman (1988) respectivamente na

Tabela 4.17 e 4.18.

8150.00

8500.00

0 25000 50000 75000 100000

GERAÇÃO

PESO

PR

ÓPR

IO (K

g)

POP = 400 - PC = 0,80 e PM = 0,002

Figura 4.19 – Minimização do peso da treliça de 38 barras (Caso contínuo).

81

Tabela 4.17 – Resultados comparativos ( Peso e deslocamento)

Referências W (kg)

dy1 (mm² x 10³)

Lemonge (1999) 8165,70 -9,99 Templeman (1988) 8166,67 -9,99 Presente Dissertação 8173,94 -9,99

Tabela 4.18 – Resultados comparativos (Seções transversais).

Seções transversais (Ai)

Áreas (mm² x 10³)

Áreas (mm² x 10³)

Áreas (mm² x 10³)

A1 9,95 10,22 11,30 A2 = A20 = A29 7,04 7,00 7,02

A3 10,44 10,53 10,82 A4 7,38 7,38 7,63 A5 10,90 10,70 11,34 A6 7,71 7,45 7,50 A7 11,35 11,33 12,25 A8 8,02 7,95 8,28 A9 11,78 11,82 11,22 A10 8,33 8,22 8,99 A11 12,19 12,17 12,12 A12 8,62 8,69 9,05 A13 12,59 12,60 12,94 A14 8,90 8,94 9,05 A15 12,98 12,95 12,16 A16 9,18 9,27 9,45 A17 13,35 13,45 13,53 A18 9,44 9,42 8,54 A19 13,72 13,78 13,48

A21 = A30 14,42 14,35 13,83 A22 = A31 22,15 22,32 21,23 A23 = A32 30,19 30,30 30,27 A24 = A33 38,55 38,78 37,45 A25 = A34 47,21 47,26 48,51 A26 = A35 56,17 56,29 55,50 A27 = A36 65,42 65,06 66,15 A28 = A37 74,95 74,72 74,50

A38 84,75 84,74 85,49

82

4.5.2 – Caso discreto

Na segunda análise, o espaço de busca, discreto, é formado pelo seguinte conjunto S =

5,0; 10,0; 20,0; 40,0; 75,0 (mm² x 10-3). O cromossomo foi codificado com o uso da

equação 3.18. As 5 seções transversais serão armazenas em um vetor e com o mapeamento

das soluções relacionamos as variáveis de projeto com esse vetor. Então teremos:

352

2

≥=

=

l

l

l nv

A única solução possível é ≥ 3, sendo l 8=nv que é maior que 5, porém como artifício, a

primeira variável será alocado no vetor duas vezes, co ma subseção 4.4.2. Temos então um

cromossomo de comprimento = 84. Os outros parâmetros partem do princípio já visto

anteriormente, e como pode ser visto na Tabela 4.19, a parametrização final para este

problema, após 20 seeds é:

tl

Tabela 4.19 – Parâmetros para a treliça de 38 barras (Variáveis discretas).

Parâmetros População ( ) popn 200Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,01Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 100000 gerações

A melhor solução (sombreado) foi obtida na geração de número 25559 e os resultados são

os mesmos encontrados por Lemonge (1999) e Templeman (1988), vistos na Tabela 4.20 e

Tabela 4.21.

Tabela 4.20 – Resultados comparativos ( Peso e deslocamento)

Referências W (kg)

dy1 (mm² x 10³)

Lemonge (1999) 8489,16 -9,95 Templeman (1988) 8489,16 -9,95 Presente Dissertação 8489,16 -9,95

83

Tabela 4.21 – Resultados comparativos (Seções transversais).

Seções transversais (Ai)

Áreas (mm² x 10³)

A1 10,0

A2 = A20 = A29 5,00 A3 10,0 A4 10,0 A5 10,0 A6 10,0 A7 10,0 A8 10,0 A9 10,0 A10 10,0 A11 10,0 A12 10,0 A13 10,0 A14 10,0 A15 10,0 A16 10,0 A17 10,0 A18 10,0 A19 10,0

A21 = A30 20,0 A22 = A31 20,0 A23 = A32 40,0 A24 = A33 40,0 A25 = A34 40,0 A26 = A35 75,0 A27 = A36 75,0 A28 = A37 75,0

A38 75,0

Observou-se que aproximadamente em torno de 25000 avaliações o processo de

otimização estava apenas refinando a solução, pois neste ponto a otimização se encontrava

em 8567,66 kg e apenas a variável A6 apresentava uma área diferente da esperada.

84

8400,00

9200,00

0 25000 50000 75000 100000

GERAÇÃO

PESO

PR

ÓPR

IO (K

g)

POP = 400 - PC = 0,80 e PM = 0,01

Figura 4.20 – Minimização do peso da treliça de 38 barras (Caso discreto).

4.5.3 – Conclusões

Por se tratar de um problema com um grau maior de dificuldade, onde temos mais

variáveis de projeto, a parametrização se tornou menos sensível e a convergência bem mais

demorada. No caso contínuo, não se chegou a melhor solução encontrada na literatura, mas

como pôde ser visto na Figura 4.19, em torno de 2500 gerações já se encontrava próximo à

região da solução. Já no caso discreto chegou-se à solução encontrada na literatura.

4.6 – PÓRTICO PLANO DE 3 BARRAS

Neste problema, da Figura 4.21, assim como os anteriores também é uma otimização de

peso.

Figura 4.21 – Pórtico de 3 barras.

85

Só há análise de variáveis contínuas e apenas alguns nós são restritos a deslocamentos.

Está dividido em três casos que serão descritos na Tabela 4.22 a seguir:

Tabela 4.22 – Características das três casos do pórtico de 3 barras

Caso Características

I Nós 2 e 3 restritos a um deslocamento de ± 0,10 in.

Todas as barras restritas às tensões de ± 24,0 Ksi.

II Nós 2 e 3 restritos a um deslocamento de ± 0,70 in.

Todas as barras restritas às tensões de ± 24,0 Ksi.

III Nós 2 e 3 restritos a um deslocamento de ± 0,20 in.

A Tabela 4.23 mostra as propriedades do material e os limites admissíveis para as tensões e

os deslocamentos que serão utilizados.

Tabela 4.23 – Propriedades do material e restrições (Pórtico de 3 barras).

Propriedades Valores Intervalo de dimensionamento 0,1 in² - 150,0 in² Módulo de Young (E) 3 x 104 Ksi Densidade (ρ) 0,283 lb/in³

Tensão Limite (σmáx) ± 24,0 Ksi Deslocamento Limite (dmáx) ± 0,20 in e ± 0,07 in Momento de Inércia (I) 75*Ai in4

A definição do tamanho da cadeia de bits, usando a equação 3.19, com ε = 0,01 é:

14

14990log2

l

l

Para 3 variáveis de projeto, teremos um cromossomo de comprimento = 42. tl

4.6.1 – Caso I

Para este caso será usada a função objetivo conforme equação 4.8. O α = 6000 foi

estipulado após algumas tentativas de ajuste e na Tabela 4.24 a parametrização.

86

Tabela 4.24 – Parâmetros para o pórtico de 3 barras (Caso I).

Parâmetros População ( ) popn 50Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,02Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 5000 gerações

A melhor solução foi obtida na geração de número 1296 e os resultados estão na Tabela

4.28.

4290.00

4590.00

0 2500 5000

GERAÇÃO

PESO

PRÓ

PRIO

(Lb)

POP = 50 - PC = 0,80 e PM = 0,02

Figura 4.22 – Minimização do peso do pórtico de 3 barras (Caso I).

4.6.2 – Caso II

Neste caso também usa a equação 4.8 e α = 6000 e na Tabela 4.25 a parametrização.

Tabela 4.25 – Parâmetros para o pórtico de 3 barras (Caso II).

Parâmetros População ( ) popn 50

Probabilidade de cruzamento ( ) cp 0,80Probabilidade de mutação ( ) mp 0,02Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 5000 gerações

87

A melhor solução foi obtida na geração de número 642 e os resultados estão na Tabela

4.28.

6100.00

6400.00

6700.00

0 1250 2500

GERAÇÃO

PESO

PRÓ

PRIO

(Lb)

POP = 50 - PC = 0,80 e PM = 0,01

Figura 4.23 – Minimização do peso do pórtico de 3 barras (Caso II).

4.6.3 – Caso III

Para este caso, onde somente os deslocamentos são restrições, temos a seguinte função

objetivo, com α = 6000:

∑∑ ⎥⎦

⎤⎢⎣

⎡−+=

= i

in

iiii d

dLAAF 1)(

max1αρ (4.9)

A Tabela 4.26 mostra as propriedades do material e os limites admissíveis para as tensões e

os deslocamentos que serão utilizados. Na Tabela 4.27 a parametrização.

Tabela 4.26 – Propriedades do material e restrições.

Propriedades Valores Intervalo de dimensionamento 0,1 in² - 150,0 in² Módulo de Young (E) 3 x 104 Ksi Densidade (ρ) 0,283 lb/in³

Tensão Limite (σmáx) ± 24,0 Ksi Deslocamento Limite (dmáx) ± 0,20 in e ± 0,07 in Momento de Inércia (I) 75*Ai

88

Tabela 4.27 – Parâmetros para o pórtico de 3 barras (Caso III).

Parâmetros População ( ) popn 50Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,01Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 5000 gerações

A melhor solução foi obtida na geração de número 1064 e os resultados estão na Tabela

4.28.

2100.00

2450.00

2800.00

0 2500 5000

GERAÇÃO

PESO

PRÓ

PRIO

(Lb)

POP = 50 - PC = 0,80 e PM = 0,01

Figura 4.24 – Minimização do peso do pórtico de 3 barras (Caso III).

4.6.4 – Resultados e conclusões

Os resultados (sombreados) são comparados com os trabalhos de Schmit e Miura (1976) e

Khan et al. (1979), respectivamente como mostra a Tabela 4.28.

Podemos notar que a convergência do algoritmo levou a soluções melhores que na

literatura, e mais uma vez nota-se que algumas das restrições foram violadas por precisão

decimal. Observa-se também, que se trata de um problema com um grau maior de

dificuldade, isto é, variáveis de projeto com maior influencia na estrutura, no pórtico,

diferentemente das treliças, o momento de inércia das seções transversais contribuem

significativamente na resolução do problema.

89

Tabela 4.28 – Resultados comparativos (Três casos).

Áreas (in ²) W (lb) dx2 (in)

dy2 (in)

dx3 (in)

dy3 (in)

σ1 (Ksi)

σ2 (Ksi)

σ3 (Ksi) 1 2 3

4393,57 -0,102 -0,036 -0,102 0,062 -10,82 0,11 18,71 19,74 105,38 30,13 4397,25 -0,102 -0,035 -0,102 0,062 -10,78 0,11 18,67 19,81 105,39 30,18

I 4300,46 -0,099 -0,049 -0,099 0,044 -14,94 0,11 13,28 14,15 95,55 42,26 6134,85 -0,069 -0,038 -0,069 0,029 -11,49 0,08 8,70 18,34 134,00 64,44 6145,62 -0,070 -0,039 -0,069 0,026 -11,77 0,08 8,07 17,78 130,07 69,31

II 6134,59 -0,069 -0,037 -0,069 0,029 -11,20 0,07 8,96 18,84 135,36 62,57 2145,98 -0,200 -0,113 -0,199 0,085 -33,99 0,21 25,67 6,22 47,74 21,87 2147,68 -0,199 -0,108 -0,199 0,081 -32,69 0,23 24,31 6,43 46,42 23,04

III 2147,68 -0,199 -0,111 -0,199 0,081 -33,59 0,21 25,07 6,28 47,24 22,37

4.7 – EDIFÍCIO INDUSTRIAL DE 33 BARRAS (PÓRTICO ROTULADO)

Para este pórtico de 33 barras (Figura 4.25), pretende-se minimizar o peso total da estrutura

impondo-se a restrição de deslocamento e de tensões. As seções transversais das barras são

as variáveis de projeto, e têm a característica de todas as 33 seções transversais serem

agrupadas como na Tabela 4.29.

Figura 4.25 – Pórtico de 33 barras.

90

Tabela 4.29 – Grupos e tipos de seções comerciais (Pórtico de 33 barras).

Grupos de seções transversais (Ai) Tipo de Perfil

A1 = A26 W A2 = A25 W A3 = A27 W

A4 = A29 = A31 = A33 W A5 = A28 = A30 = A32 W A6 = A7 = A23 = A24 W A8 = A9 = A10 = A11 WT

A12 = A13 = A14 = A15 WT A16 = A22 L A17 = A21 L A18 = A20 L

A19 L

São três tipos de seções transversais escolhidas e disponíveis do AISC, conforme Tabela

4.30. Temos 64 para a seção W (perfil em forma de I), 16 para a seção WT (perfil em

forma de T) e 32 para a seção L (cantoneira de abas desiguais).

Tabela 4.30 – Conjunto de seções transversais disponíveis do AISC.

Seções Comerciais W (in²) 2,51 2,68 2,96 3,55 3,83 3,84 4,16 4,44 4,45 4,71 4,72 4,74 5,26 5,56 5,57 5,89 6,16 6,48 6,49 6,50 7,08 7,36 7,61 7,65 7,68 7,69 8,24 8,79 8,84 8,85 9,12 9,13 9,71 10,00 10,30 10,31 10,32 10,60 11,20 11,50 11,70 11,71 11,80 11,81 12,60 13,10 13,30 13,31 13,50 14,10 14,11 14,12 14,40 14,60 14,70 14,71 15,60 15,61 15,80 15,81 16,20 16,21 16,30 16,31

Seções Comerciais WT (in²) 1,25 1,34 1,48 1,77 1,78 1,91 1,92 2,08 2,21 2,22 2,23 2,35 2,36 2,50 2,63 2,78

Seções Comerciais L (in²) 0,49 0,72 0,82 0,90 0,92 0,95 1,00 1,07 1,09 1,16 1,19 1,20 1,32 1,37 1,44 1,46 1,48 1,56 1,63 1,73 1,75 1,78 1,93 2,11 2,22 2,25 2,26 2,43 2,51 2,75 2,86 2,99

91

Para esta análise, codificamos o cromossomo com o uso da equação 3.18. As 112 seções

transversais e os seus respectivos momentos de inércia serão armazenas em três vetores e

com o mapeamento das soluções relacionamos as variáveis de projeto com esses vetores.

Então teremos:

6642

2

==

=

l

l

l nv

4162

2

==

=

l

l

l nv

5322

2

==

=

l

l

l nv

Temos seis variáveis de projeto com seções W, duas com seção WT e quatro com seção L.

Portanto temos um cromossomo de comprimento = 64. tl

Tabela 4.31 – Propriedades do material e restrições (Pórtico de 33 barras).

Propriedades Valores Módulo de Young (E) 3 x 104 Ksi

Densidade (ρ) 0,283 lb/in³

Tensão Limite (σmáx) ± 36,0 Ksi Deslocamento Limite (dmáx) ± 1,5 in Carga (P) 100,0 Kips Carga (M) 700,0 Kips.in

Tabela 4.32 – Parâmetros para o pórtico de 33 barras.

Parâmetros População ( ) popn 100

Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,01Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 50000 gerações

A melhor solução foi obtida na geração de número 13689 e os resultados estão na Tabela

4.33 em comparação ao trabalho de Erbatur et al. (1999).

92

Tabela 4.33 – Resultados comparativos (Seções transversais, perfis e peso).

Erbatur (1999) Presente Dissertação Seções transversais

(Ai) Perfil

(AISC)

Áreas

(mm² x 10³)

Perfil

(AISC)

Áreas

(mm² x 10³)

A1 = A26 W16x36 10,60 W8x35 10,30 A2 = A25 W21x57 16,70 W24x55 16,30 A3 = A27 W6x16 4,74 W6x16 4,74

A4 = A29 = A31 = A33 W21x44 13,00 W14x48 14,10 A5 = A28 = A30 = A32 W6x12 3,55 W8x10 2,96 A6 = A7 = A23 = A24 W14x26 7,69 W8x28 8,24 A8 = A9 = A10 = A11 WT3x4,5 1,34 WT3x4,5 1,34

A12 = A13 = A14 = A15 WT3x4,5 1,34 WT3x4,5 1,34 A16 = A22 L3x2x3/16 1,80 L3x2,5x3/8 1,93 A17 = A21 L3x2,5x3/16 1,99 L3x3x3/8 2,11 A18 = A20 L3x2x3/16 1,62 L3x2,5x5/16 1,63

A19 L3x2x3/8 3,47 L6x4x5/16 2,99 Peso Total (lb) 8693,21 8711,15

8600.00

9100.00

9600.00

0 25000 50000

GERAÇÃO

PESO

PR

ÓPR

IO (L

b)

POP = 100 - PC = 0,80 e PM = 0,01

Figura 4.26 – Minimização do peso do pórtico de 33 barras.

4.7.1 – Conclusões

Neste último exemplo, em análise estática, procurou associar a dificuldade com a

versatilidade. Dificuldade, pois no pórtico, as variáveis de projeto são muito mais

interdependentes da solução do que na treliça. E versatilidade, porque é comum

encontrarmos estruturas que tem os mais diversos tipos de associação de elementos, no

93

referido problema, pórtico associado à treliça. Além disso ao associar seções comerciais à

estrutura, pode-se sugerir um pré-dimensionamento.

4.8 – ANÁLISE DINÂMICA

Para a avaliação dinâmica para vibrações livres, tomou-se como base o algoritmo usado

por Brebbia e Ferrante (1986), sendo apresentada na Figura 4.27.

Figura 4.27 – Funcionamento do programa em MEF para vibrações livres.

O acoplamento segue o da Figura 3.9. As sub-rotinas apresentadas no fluxograma têm as

seguintes funções:

INPUT: lê de um arquivo em formato ASCII os dados relativos à estrutura, tais como

número de nós, número de elementos, tipo de carregamento, tempo de análise,

propriedades físicas, etc.;

ASSEM: é responsável pelo controle da montagem da matriz de rigidez e da matriz de

massa de cada elemento e da alocação destas nas matrizes de rigidez e de massa globais da

estrutura;

STIFF: possuem as mesmas características da análise estática;

MASS: gera a matriz de massa para os elementos de pórtico/treliça;

94

ELASS: aloca na matriz global, em forma quadrada simétrica, as matrizes de rigidez e de

massa de cada elemento que compõem a estrutura, introduzindo em seguida as condições

de contorno;

OUTPUT: gera o arquivo com os resultados para frequências, períodos, modos naturais de

vibração, esforços, deslocamentos, velocidades e acelerações da estrutura.

4.9 – PÓRTICO PLANO DE 3 BARRAS

Para o dimensionamento ao mínimo peso deste problema (Figura 4.28), analisar-se-á

apenas variáveis contínuas e restrições sendo as freqüências naturais de vibração. Apenas

os três primeiros modos são considerados. O problema será dividido em dois casos que

serão descritos na Tabela 4.34.

Figura 4.28 – Pórtico de 3 barras

Tabela 4.34 – Características das três casos do pórtico de 3 barras

Caso Características

I Primeira freqüência natural igual 5 Hz.

II Segunda freqüência natural igual a 15 Hz.

III Primeira freqüência natural igual a 5 Hz. Segunda freqüência natural igual a 15 Hz. Terceira freqüência natural menor que 18 Hz.

95

Para este problema, onde somente as freqüências naturais são restrições, temos a seguinte

função objetivo:

∑∑ ⎥⎦

⎤⎢⎣

⎡−+=

= i

in

iiii LAAF 1)(

max1 ϖϖ

αρ (4.10)

A Tabela 4.35 mostra as propriedades do material e os limites admissíveis para as

frequências naturais que serão utilizados.

Tabela 4.35 – Propriedades do material e restrições (Pórtico de 3 barras).

Propriedades Valores Intervalo de dimensionamento 0,1 in² - 150,0 in² Módulo de Young (E) 3 x 104 Ksi

Densidade (ρ) 0,283 lb/in³

Primeira Freqüência Limite (ϖ1máx) 5 Hz

Segunda Freqüência Limite (ϖ2máx) 15 Hz

Terceira Freqüência Limite (ϖ3máx) 18 Hz Momento de Inércia (I) 75*Ai

A definição do tamanho da cadeia de bits, usando a equação 3.19, com ε = 0,01 é:

14

14990log2

l

l

Para 3 variáveis de projeto, teremos um cromossomo de comprimento l = 42.

Tabela 4.36 – Parâmetros para o pórtico de 3 barras.

Parâmetros População ( ) popn 50Probabilidade de cruzamento ( ) cp 0,80

Probabilidade de mutação ( ) mp 0,01Operador de cruzamento 2 (dois) pontosCritério de parada Menor peso encontrado em 5000 gerações

4.9.1 – Caso I

Para este caso, onde a primeira freqüência natural é a restrição, temos a seguinte função

96

objetivo, com α = 1000.

∑∑ ⎥⎦

⎤⎢⎣

⎡−+=

= i

in

iiii LAAF 1)(

max1

1

1 ϖϖ

αρ (4.11)

A melhor solução foi obtida na geração de número 756 e os resultados estão na Tabela

4.37.

1100.00

2650.00

4200.00

0 2500 5000

GERAÇÃO

PESO

PR

ÓPR

IO (L

b

POP =50 - PC = 0,80 e PM = 0,01

Figura 4.29 – Minimização do peso do pórtico de 3 barras (Caso I).

4.9.2 – Caso II

Para este caso, onde a segunda freqüência natural é a restrição, temos a seguinte função

objetivo, com α =1000.

∑∑ ⎥⎦

⎤⎢⎣

⎡−+=

= i

in

iiii LAAF 1)(

max2

2

1 ϖϖ

αρ (4.12)

A melhor solução foi obtida na geração de número 2483 e os resultados estão na Tabela

4.37.

97

650.00

1725.00

2800.00

0 2500 5000

GERAÇÃO

PESO

PR

ÓPR

IO (L

b)

POP = 50 - PM = 0,80 - PC = 0,01

Figura 4.30 – Minimização do peso do pórtico de 3 barras (Caso II).

4.9.3– Caso III

Para este caso, onde as três primeiras freqüências naturais são as restrições, temos a

seguinte função objetivo, com α = 1000.

∑∑∑∑ ⎥⎦

⎤⎢⎣

⎡−+⎥

⎤⎢⎣

⎡−+⎥

⎤⎢⎣

⎡−+=

= i

i

i

i

i

in

iiii LAAF 111)(

max3

3

max2

2

max1

1

1 ϖϖ

αϖϖ

αϖϖ

αρ (4.13)

A melhor solução foi obtida na geração de número 1768 e os resultados estão na Tabela

4.37.

1000.00

1800.00

2600.00

0 2500 5000

GERAÇÃO

PESO

PR

ÓPR

IO (L

b)

POP = 50 - PC = 0,80 e PM = 0,01

Figura 4.31 – Minimização do peso do pórtico de 3 barras (Caso III). 98

4.9.4 – Resultados e conclusões

Os resultados (sombreados) são comparados com em relação às freqüências com o

SAP2000N®, como mostra a Tabela 4.37 abaixo:

Tabela 4.37 – Resultados comparativos (Três casos).

Áreas (in ²) W (lb) ϖ1 (Hz)

ϖ2 (Hz)

ϖ3 (Hz) 1 2 3

1161,44 5,21 9,61 13,43 19,24 19,24 3,00 I 1161,44 4,67 8,20 13,12 19,24 19,24 3,00 673,68 8,88 15,20 19,12 10,53 10,53 3,00 II 673,68 8,63 14,45 18,73 10,53 10,53 3,00 1032,80 3,93 13,15 16,57 13,01 12,93 10,92 III 1032,80 3,64 12,99 16,56 13,01 12,93 10,92

Observa-se a que quando levamos em consideração as três primeiras freqüências naturais

associadas à estrutura, a mesma se mostra um pouco mais leve em relação ao caso I. Para a

análise dinâmica com vibrações livres, a implementação se mostrou muito simples e de

fácil parametrização.

99

5 – CONCLUSÕES

5.1 – INTRODUÇÃO

Os problemas tratados nesta dissertação foram de otimização do peso de estruturas

reticuladas. Para atingir a otimização da estrutura foi escrita uma função objetivo e a partir

da minimização desta função, chega-se a uma configuração chamada ótima. Os valores das

tensões axiais, deslocamentos nodais e freqüências naturais de vibração quando

considerados limites, foram considerados como restrições à função objetivo.

O processo de otimização fez uso do Algoritmo Genético (AG), do tipo geracional com

codificação binária e estratégia elitista, associado ao Método dos Elementos Finitos

(MEF). As restrições, inerentes às variáveis de projeto e da composição estrutural, foram

considerados nos problemas por meio de uma função objetivo modificada pela adição de

um termo de penalização. Desta forma, os problemas com restrições foram tratados como

problemas sem restrições. As funções de penalização foram definidas através de

parâmetros de penalização constantes durante toda a evolução. No entanto, foram testados,

mas não incluídos nos problemas pelo fato de não terem sido representativos. Estas

funções mostraram-se sensíveis e de difícil definição dos parâmetros envolvidos.

Quase em sua totalidade, as soluções encontradas foram melhores ou muito próximas das

melhores encontradas na literatura. Em todos os casos estudados nenhum tipo de

informação sobre a solução do problema foi introduzido no algoritmo e a busca baseou-se

apenas em valores da função aptidão.

5.2 – CONCLUSÕES

A partir das respostas observadas nos exemplos estudados podem-se apresentar as

seguintes conclusões:

• Para os problemas estudados não houve a necessidade de um código exclusivo, e

sim mudanças na codificação e parametrização para a avaliação da função

objetivo;

• As sugestões de parametrização para o Algoritmo Genético foram bem

consistentes, visto que em apenas em alguns casos foi necessário reajustá-lo;

100

• Comparado aos métodos clássicos (quando esses são aplicáveis) nota-se que, em

geral os AGs apresentam um maior custo computacional no que diz respeito ao

número de avaliações. Porém os AGs mostram-se robustos e eficazes na busca de

soluções ótimas, como visto nos gráficos. Boas soluções foram encontradas

rapidamente, demorando apenas no refinamento das soluções;

• Dada disponibilidade de peças estruturais pré-fabricadas no mercado, escolher

entre elas o conjunto que minimize o custo de um projeto é fácil de implementar e

desenvolver, possibilitando sugerir configurações estruturais a serem utilizadas na

prática;

• Problemas com uma grande variedade de variáveis de projeto tornam o processo

de avaliação da estrutura demorada, tanto no caso contínuo, quanto no caso

discreto. Além disso, a codificação binária exige grandes cadeias de bits e de um

número grande de indivíduos para diversificar o espaço de busca dessas estruturas;

• A codificação binária para casos discretos, mostrou-se bem superior em relação às

variáveis contínuas.

5.3 – SUGESTÕES

Como desenvolvimentos futuros podem ser considerados os seguintes aspectos:

• Implementação de técnicas de hibridização, através de estratégias de busca local

e/ou acoplamento de outros algoritmos ao AG, buscando reduzir os custos

computacionais com o refinamento das soluções;

• Utilização da codificação de Gray ou real como uma alternativa à codificação

binária tradicional e a utilização de outros operadores genéticos;

• Implementação de Algoritmos Genéticos Paralelos, fazendo-se estudos

comparativos com os problemas estudados neste trabalho e analisar novos

problemas (como por exemplo, estruturas reais e de grande porte);

• Implementação para a análise multi-objetivos;

• Estudo de convergência e critérios de parada para os AGs;

• Criação de uma interface gráfica, o que tornaria o processo de otimização mais

interativo, pois possibilitaria acompanhar a otimização em tempo real;

• Análise de estruturas reticuladas em 3D e/ou outras estruturas.

101

REFERÊNCIAS BIBLIOGRÁFICAS

Adeli e Cheng (1994) a. “Concurrent Genetic Algorithms for Optimization of Large

Structures”, In: Journal of Aerospace Engineering, 7(3), 276-296.

Adeli, H. e Kamal, O. (1991) a. “A Efficient Optimization of Plane Trusses.” In: Adv. Eng.

Software, 13(3), 116-122.

AISC - American Institute of Steel Construction (1991). “Manual of steel construction:

Allowable stress design”. 9th edition, Chicago, USA.

Ali, N., Behdinan, K. e Fawaz, Z. (2003) a. “Applicability and Viability of GA Based

Finite Element Analyses Architecture for Structural Design Optimization.” In:

Computers & Structures, 81, 2259-2271.

Baker, J. (1987) a. “Reducing Bias and Inefficiency in Selection Algorithm”, In:

Proceedings of The Second International Conference on Genetic Algorithm and Their

Application, 14-21.

Barbosa, H. J. C. e Lemonge, A. C. C. (2003) a. “A New Adaptive Penalty Scheme for

Genetic Algorithms”, In: Information Science. 156(2003), 215-251.

Barcellos, J. C. H. (2000). Algoritmos Genéticos Adaptativos: Um Estudo Comparativo,

Dissertação de Mestrado, Escola Politécnica de São Paulo, 131p.

Bezerra, L. M. (1993). Inverse Elastostatics Solutions with Boundary Elements, PhD

Thesis, Carnigie Intitute of Technology, Pittsburgh, USA, 107p.

Borges, C. C. H. (1999). Algoritmos Genéticos para Otimização em Dinâmica de

Estruturas, Tese de Doutorado, Universidade Federal do Rio de Janeiro COPPE, 216p.

Brebbia, C. A. e Ferrante, A. J. (1986). “Computational Methods for the Solution of

Engineering Problems. 3th edition. London, UK.

Castro, R. E. (2001). Otimização de Estruturas com Multi-objetivos Via Algoritmos

Genéticos de Pareto, Tese de Doutorado, Universidade Federal do Rio de Janeiro

COPPE, 224p.

Chopra, A. K. (1995), “Dynamics of Structures – Theory and Applications to Earthquake

Engineering”, Prentice Hall, New Jersey, USA.

Clough, R. W. e Penzien, J. (1993), “Dynamics of Structures”, 2nd edition, McGraw-Hill,

New York, USA.

102

Coit, D. W., Smith, A. E. e Tate, D. M. (1996) a. “Adapitive Penalty Methods for Genetic

Optimization of Constrained Combinatorial Problems”. In: Journal on Computing, 6(2),

173-182.

Craig, Jr., R. R. (1981), “Structural Dynamics – An Introduction to Computer Methods”,

John Wiley & Sons, New York, USA.

Darwin, C. R. e Darwin, F. (1902). “Charles Darwin: His Life Told in an Autobiographical

Chapter, and in a Selected Series of his Published Letters”, John Murray (ed), London,

UK.

De Jong, K. A. (1975). An Analysis of Behavior of a class of Genetic Adaptive System,

PhD Thesis, University of Michigan, USA.

Desai, C. S. (1979), “Elementary Finite Element Method”, Prentice Hall, Inc., 10th Edition,

Englewood Cliffs – New Jersey.

Dorigo, M. e Stützle, T. (2004). “Ant Colony Optmization”, Bradford Books, USA.

Dorigo, M., Maniezzo, V. e Colorni, A. (1991) a. “The Ant System: An Autocatalytic

Optimizing Process”, In: Technical Report 91-016.

Erbatur, F., Hasançebi, I. T. e Kiliç, H. (2000) a. “Optimal Design of Planar and Space

Structures with Genetic Algorithms”, In: Computer & Structures, 75 (2000), 209-224.

Felippa, C. A. (2000). “Introduction to The Finite Element Method – Lecture Notes”,

University of Colorado at Boulder.

Fox, R. L. (1973). “Optimization Methods for Engineering Design”, 2nd edition, Addison-

Wesley Publishing Company, London, U.K.

Galante, M. (1992) a. “Structures Optimization By a Simple Genetic Algorithm.” In:

Numerical Methods In Engineering And Applied Sciences, 863-870.

Galante, M. (1996). “Genetic Algorithms As An Approach To Optimize Real-World

Trusses.”, In: International Journal for Numerical Methods In Engineering, 39, 361-

382.

Gallagher, R. H. (1977), “Terminology and Basic Concepts”, In: Optimum Structural

Design. (ed.) John Wiley & Sons, New York, USA.

Gere, J. M. e Weaver, W. JR. (1981). “Análise de Estruturas Reticuladas”, Editora

Guanabara Dois, Rio de Janeiro.

Goldberg, D. E. (1989), “Genetic Algorithms in Search, Optimization and Machine

Learning”, Addison-Wesley, USA.

103

Goldberg, D. E., Zakrzewski, K., Sutton, B., Gadient, R., Chang, C., Gallego, P., Miller, B.

e Cantú-Paz, E. (1997) a. “Genetic Algorithms: A Bibliografy”, In: Illigal Report N.°

97011.

Grefenstette, J. J. (1986) a. “Optimization of Control Parameters for Genetic Algorithms”,

In: IEEE Transaction, Systems Man, and Cybernetics, 16(1), 122-128.

Haftka, R. T. e Gürdal, Z. (1992). “Elements of Structural Optimization”, 3th edition,

Kluwer Academic Publishers, London, U.K.

Hajela, P. e Berke, L. (1990) a. “Neurobiological Computational Models in Structural

Analysis”. In: Computers & Structures. 41(4), 657-667.

Holland, J. H. (1975). “Adaptation in Natural and Artificial Systems”, University of

Michigan Press, USA.

Homaifar, H., Lai, S. H. Y. e Qi, X. (1994) a. “Constrained Optimization Via Genetic

Algorithms”, In: Simulation, 64(2), 242-254.

Joines, J. e Houck, C. (1994) a. “On the Use of Non-stationary Penalty Functions to Solve

Nonlinear Constrained Optimization Problems with Gas”, In: Proceedings of the First

IEEE international Conference on Evolutionary Computation, 579-584.

Khan, M. R., Willmert, K. D. e Thornton, W. A. (1979) a. “An Optimality Criterion

Method for Large-Scale Structures.” In: AIAA Journal, 17(7), 753-761.

Khan, N. (2002). “Population Sizing in Genetic and Evolutionary Algorithms – Lecture

Notes”, University of Illinois at Urbana-Champaign.

Kim, J-K. (1997) a. “Evolutionary Programming Techniques for Constrained Optimization

Problems”, In: IEEE Transactions On Evolutionary Computation, 1(2), 129-140.

Lacerda, E. G. M. e Carvalho, A. C. P. L. F. (1999). “Introdução aos algoritmos

genéticos”. In: Sistemas Inteligentes: Aplicações a Recursos Hídricos e Sistemas

Ambientais, Editora Universidade, UFRGS.

Lagaros, N. D., Papadrakakis, M. e Kokossalakis, G. (2002) a. “Structural Optimization

Using Evolutionary Algorithms”, In: Computer and Structures, 80(2002), 571-589.

Lemonge, A. C. C. (1999). Aplicação de Algoritmos Genéticos em Otimização Estrutural,

Tese de Doutorado, Universidade Federal do Rio de Janeiro COPPE, 218p.

Lemonge, A. C. C. e Barbosa, H. J. C. (2004) a. “An Adaptive penalty Scheme for

Genetic Algorithms In Structural Optimization.”, In: International Journal for

Numerical Methods In Engineering, 59, 703-736.

Lucas, D. C. (2000). Algoritmos Genéticos: Um Estudo de seus Conceitos Fundamentais e

Aplicação no Problema de Grade Horária, Monografia de Graduação, 92p.

104

Maysa, M. P. (1996). “Genetic Algorithms on Evolving Solutions to NP-Complete

Problems”, In: <http://www.kneehighs.com/outline.html>, Acesso em 06/2004.

Mendes, J. M. N., Saldanha, R. R. e Vasconcelos, J.A. (1996) a. “A Hybrid Algorithm

Applied to Nonlinear Optimization Problems”, In: Segundo Congresso Brasileiro de

eletromagnetismo, 222-225.

Mendonça, C. E. L. R. (2004). Um Sistema Computacional para Otimização Através de

Algoritmos Genéticos e Redes Neurais, Tese de Doutorado, Universidade Federal do

Rio de Janeiro COPPE, 135p.

Michalewicz, Z. (1995) a. “Genetic Algorithms, numerical Optimization, and Constraints”,

In: Proceedings of the 6th International Conference on Genetic Algorithms, 151-158.

Michalewicz, Z. (1996). “Genetic Algorithms + Data Structures = Evolution Programs”, 3th

Edition, Springer-Verlag, Berlin, Germany.

Ochi, L. S., Rocha M. L. (2000) a. “A New Hybrid Evolutionary Algorithm for the Vehicle

Routing and Scheduling Problems”, In: Proceedings of the Ninth International

Conference on Intelligence Systems: Artificial Intelligence Applications for the New

Millennium, 135-140.

Pacheco, M. A. (1999) a. “Algoritmos Genéticos: Princípios e Aplicaciones”, In: V

Congresso Internacional de Ingeniería Electrónica, Elétrica y Sistemas - INTERCON,

11-16.

Paz, M. (1980). “Structural Dynamics: Theory and Computation”, Van Nostrand Reinhold,

New York.

Rajeev, S. e Krishnamoorthy, C. S. (1992) a. “Discrete Optimization Of Structures Using

Genetic Algorithms”, In: Journal of Structural Engineering, 118(5), 1233-1250.

Sampaio, C. C. D. (2004). Determinação de uma Rede Ótima de Transporte Utilizando o

Algoritmo Genético, Dissertação de Mestrado, Universidade de Brasília, 98p.

Santos Júnior, J. C. (2002). Otimização de Estruturas Contínuas Bidimensionais pelo

Método dos Elementos de Contorno, Dissertação de Mestrado, Universidade de Brasília,

91p.

Schmit Jr, L. A. e Farshi, B. (1973) a. “Some Approximation Concepts for Structural

Synthesis.” In: AIAA Journal, 12(5), 692-699.

Schmit, L. A. e Miura, H. (1976) a. “Approximation Concepts for Efficient Structural

Analysis/Synthesis.” In: NASA, CR-2552.

Segerlind, L. J. (1976), “Applied Finite Element Analysis”, John Wiley & Sons, New

York, USA.

105

Shaffer, J. D., Caruana, R. A., Eshelman, L. J., Das, R. A. (1989) a. “A Study of Control

Parameters Affecting Online Performance of Genetic Algorithms for Functions

Optimization”, In: Proceedings of the Third International Conference on Genetic

Algorithms, 51-60.

Shoenauer, M. e Xanthakis, S. (1993) a. “Constrained GA Optimization”, In: Proceedings

of The 4th International Conference on Evolutionary Programming, 573-580.

Silva, E. E. (2000). Otimização de Estruturas de Concreto Armado Utilizando Algoritmos

Genéticos, Dissertação de Mestrado, Universidade Federal de Pernambuco, 131p.

Soares, G. L. (1997). Algoritmos Genéticos: Estudo, Novas Técnicas e Aplicações,

Dissertação de Mestrado, Universidade Federal de Minas Gerais, 137p.

Stark, R. M., e Nicholls, R. L. (1978). “Mathematical Foundations for Design Civil

Engineering Systems”, McGraw-Hill Book Company, New York.

Templeman, B. A. (1988) a. “Discrete Optimum Structural Design”, In: Computers &

Structures, 30(3), 511-518.

Torres, A. C. S. (2003). Determinação de Rotas Ótimas de Ônibus Urbanos Utilizando

Algoritmo Genético. Dissertação de Mestrado, Universidade de Brasília, 87p.

Torres, A. C. S.; Santana, J. A.; Partridge, P. W. (2003) a. “Determinação de Rotas Ótimas

de Ônibus Urbano Utilizando Algoritmo Genético Associado ao Algoritmo de

Dijkstra”. In: XVII ANPET, 957-968.

Tran, T. e Zomorodi, A. (1994) a. “A Touch of Gray”, In: Vertices, 10(1), 11-12.

Valente, S.A., Lopes, H.S., Arruda, L.V.R. (2002). “Genetic Algorithms for the Assembly

Line Balancing Problem: a real-world automotive application”, Springer-Verlag, Berlin,

Germany.

Vanderplaats, G. N. (1984). “Numerical Optimization Techniques for Engineering

Design”, McGraw-Hill Book Company, New York.

Weaver Jr., W. e Johnston, P. R. (1987). “Structural Dynamics by Finite Elements”,

Prentice Hall, Englewood Cliffs, New Jersey.

Xie, Y. M. e Steven, G. P. (1997). “Evolutionary Structural Optimization”, Springer-

Verlag, Berlin, Germany.

Zienkiewicz, O. C. (1977), “The Finite Element Method”, McGraw-Hill Book Company,

3th Edition, London, UK.

106