fvan fÁbio mota de menezeswebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - finile...

112
fVAN FÁBIO MOTA DE MENEZES TÉCNICAS DE REORDENAÇÃO PARA SOLUÇÃO DE SISTEMAS ESPARSOS TESE DE DOUTORADO Departamento de Engenharia Civil PONTIFÍCIA UNIVERSIDADE CATÓLICA DO R IO DE JANl IRO Rio de Janeiro, Junho de 1995

Upload: others

Post on 13-Dec-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

fVAN FÁBIO MOTA DE MENEZES

TÉCNICAS DE REORDENAÇÃO PARA SOLUÇÃO DE SISTEMAS ESPARSOS

TESE DE DOUTORADO

Departamento de Engenharia Civil PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANl IRO

Rio de Janeiro, Junho de 1995

Page 2: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

• ·.t .) • • ... ... '\, \ -\ .. {,; 7 -.. \ . ~...; . ...

· ~ • 1

' ..

Page 3: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Ivan Fábio Mota de Menezes

' -TECNICAS DE REORDENAÇAO PARA -SOLUÇAO DE SISTEMAS ESPARSOS

Tese apresentada a.o Departamento de

Engenharia Civil da PUC-Rfo como parte

dos requisitos para obtenção do título de

Doutor em Ciências em Engenharia Civil.

Ênfase: Estruturas

Orientador: Marcelo Gattass

Departamento de Engenharia Civil

Pontifícia Universidade Católica do Rio de Janeiro

Rio de Janeiro, 28 de Junho de 1995

Page 4: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

62,~ VI S'l3 t

1t: )( L10

Page 5: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

À minha querida Bene ( in memorian)

Page 6: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Agradecimentos

Aos meus pais, pelo carinho, pelo apoio e, principalmente, pelo exemplo, que me

permitiu seguir adiante nos momentos mais difíceis.

\o professor Marcelo Gattass, pela orientação segura, pelo apoio constante e pela

confian•;a depositada no decorrer deste trabalho.

Ao professor Subrata M ukherjee, pela colaboração científica e pelo suporte oferecido

na Uni\ersídade de Cornell.

Ao amigo Gláucio Paulino, da Universidade de Cornell, pelo apoio, pelas inúmeras

discussões técnicas e pela co-orientação deste trabalho.

À equipe de suporte do TeCGraf (Grupo de Tecnologia em Computação Gráfica),

pela presteza e eficiência na solução dos problemas de ordem técnica.

Aos amigos e colegas da PUC-Rio, pelos momentos de descontração, fundamentais

em qualquer ambiente de trabalho.

A todas as pessoas que, direta ou indiretamente, contribuíram para a realização

deste tra ,alho. Em especial, aos amigos Luiz Cristovão, Marcelo Tilio e Waldemar Ceies,

pelai div<~rsas discussões e sugestões dadas.

Aos amigos Afonso, Alkimin, Assis, Paulo, Rafael ( in memorian) e Ricardo, pela

convivên< ia agradável durante este período de pós-graduação. A certeza de poder

contar com a nossa amizade, em qualquer situação, foi fundamental para a realização

dest<' trabalho.

Am funcionários do Departamento de Engenharia Civil e do TeCGraf, pela eficiência

e pela amizade. Em especial à Ana Roxo, Yedda, D. Neuza, Santa.na e Claudinei.

À I iseane Morosini, pela paciência, compreensão, carinho e incentivo dado em todas

as etapas deste trabalho.

Ao CNPq e ao TeCGraf, pelo apoio financeiro.

li

Page 7: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Resumo

Este tn,ba.lho a.presenta. técnicas de reordenação para minimização de banda, perfil e frente

de malhas de elementos finitos. Um conceito unificado relacionando as malhas de elemen­

tos finitos, os grafos associados e as matrizes correspondentes é proposto. As informações

geométricas, disponíveis nos programas de elementos finitos, sã.o utilizadas para aumentar

a eficiêr..cia dos algoritmos heurísticos. Com base nestas idéias, os algoritmos sã.o classifi­

cados em topológicos, geométricos, híbridos e espectrais. Um Grafo de Elementos Finitos

- Finile Element Graph (FEG) -- é definido como um grafo nodal (G), um grafo dual

( G') ou um grafo de comunicação ( Gº), associado a uma dada malha de elementos finitos.

Os algoritmos topológicos mais utilizados na literatura técnica, tais como, Reverse-Cuthill­

Mc.Kee (RCM), Collins, Gibbs-Poole-Stockmeyer (GPS), Gibbs-King (GK), Snay e Sloan,

sã.o inve:;tigados detalhadamente. Em particular, o algoritmo de Collins é estendido para

consider.1çã.o de componentes não conexos nos grafos associados e a numeração é invertida

para uma posterior redução do perfil das matrizes correspondentes. Essa nova versão é

denominl.da Modified Reverse Collins (MRCollins). Um algoritmo puramente geométrico,

denomin.1do Coordinate Based Bandwidth and Profile Reduction (CBBPR), é apresentado.

Um nove algoritmo híbrido (HybWP) para redução de frente e perfil é proposto. A ma­

triz Laplaciana [L(G), L(G* ou L(Gº)], utilizada no estudo de propriedades espectrais de

grafos, é ·:onstruída a partir das relações usuais de adjacências entre vértices e arestas. Um

algoritmc automático, baseado em propriedades espectrais de FEGs, é proposto para reor­

denação< e nós e/ ou elementos das malhas associadas. Este algoritmo, denominado Spectral

FEG Res:quencing (SFR), utiliza informações globais do grafo; não depende da escolha de

um vértice pseudo-periférico; e não utiliza o conceito de estrutura de níveis. Um novo

algoritmo espectral para determinação de vértices pseudo-periféricos em grafos também é

proposto. Os algoritmos apresentados neste trabalho sã.o implementados computacional­

mente e testados utilizando-se diversos exemplos numéricos. Finalmente, conclusões são

apresentadas e algumas sugestões para trabalhos futuros são propostas.

ll1

Page 8: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Abstract

This W<•rk presents resequencing techniques for minimizing bandwidth, profile and wave­

frout of finite element meshes. A unified approach relating a finite element mesh, its as­

sociated graphs, and the corresponding matrices is proposed. The geometrical information

ava.ilable from conventional finite element program is also used in order to improve heuristíc

algorithms. Following these ideas, the algoríthms are classified in topological, geometrical,

hyhrid, ind spectral. A Finite Element Graph (FEG) is defined here as a nodal graph (G),

a dual graph (G*) ora communication graph (G•) associated with a generic finíte element

me:;h. The most widely used topological algoríthms, such as R.everse-Cuthíll-McKee (RCM),

Collins, Gibbs-Poole-Stockmeyer (GPS), Gibbs-King (GK), Snay, and Sloan, are investi­

gated in detail. ln particular, the Collins algorithm is extended to consider nonconnected

components ín the assocíated graph and the orderíng provided by thís algorithm is reverted

for impMved profile. This new version is called Modified Reverse Collins (MRCollins). A

purely g~ometrical algorithm, called Coordinate Based Bandwidth and Profi/e Reduction

(CBBPR), is presented. A new hybrid reorderíng algorithm (HybWP) for wavefront and

profile reduction is proposed. The Laplacian matrix [L( G), L( G*) or L( Gº)), used for the

study of spectral properties of an FEG, is constructed from usual vertex and edge con­

nectivitits o{ a graph. An automatic algorithm, based on spectral properties of an FEG,

is propos ~d to reorder the nodes and/ or elements of the associated finite element meshes.

The new algorithm, called Spectral FEG Resequencing (SFR), uses global information in

the grapl ; it does not depend on a pseudoperipheral vertex ín the resequencing process;

and it does not use any kind of levei structure of the graph. A new spectral algorithm

for findin~ pseudoperipheral vertices in graphs is also proposed. The algorithms presented

herein ar•~ computationally implemented and tested against severa! numerical examples.

Finally, conclusions are drawn and directions for future work are given.

IV

Page 9: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Sumário

Resum»

Abstract

Lista de Figuras

Lista de Tabelas

Lista de Símbolos

1 Introdução

l 1 ltevisão Bibliográfica

1 2 Objetivos e Escopo do Trabalho

2 !v1alhas, Grafos e Matrizes

3 Algoritmos Clássicos de Reordenação

3.1 Vértices Pseudo-Periféricos .

3.'.? Algoritmos Topológicos .

3.:1 Algoritmos Geométricos . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4 A 1goritmos Híbridos . . ............................

V

iii

iv

viii

X

xiii

1

3

4

5

9

9

12

21

22

Page 10: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

4 Algoritmos Espectrais de Reordenação 25

4.1 Propriedades Espectrais de Grafos . 25

4.2 Algoritmo SFR .......... . 28

·t.3 Tratamento de Grafos Não Conexos . 32

4.4 Um Exemplo Simples ..... . 33

1.5 Implementação Computacional 36

·L6 Algoritmo SGPD . . . . . . . . 43

S. Reordenação usando Simulated Annealing 45

0.1 .\lgoritmo SA ................ . 47

6 Exen1plos Numéricos 49

6.1 Biblioteca Padrão de Exemplos 49

6. 2 l :xemplos Práticos de Elementos Finitos 58

6 .. 3 Comparação entre SFRsturm e SFRs1M 62

6.4 Análise de Tempo de Execução 65

6. 'i Estratégia de Pré-ordenação .. 68

6.G Aplicação do Algoritmo SGPD . 69

6 " .. Algoritmo FWR: Resultados Preliminares 71

6.8 A'goritmo SA: Resultados Preliminares . . . . . . . . . . . . . . . . . . . . 73

VI

Page 11: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

7 Conclusões e Sugestões

7.1 Principais Contribuições

7.2 Sugestões para Trabalhos Futuros

A - Conceitos Básicos da Teoria de Grafos

B -- Terminologia para Matrizes Esparsas

Referências Bibliográficas

vii

74

74

77

78

81

83

Page 12: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Lista de Figuras

2.1 Correspondência entre Malhas, Grafos e Matrizes. . . . . . . . . . . . . . . 7

·tl Diagrama de Blocos do Algoritmo SFR. ....... .

4.2 Exemplo para Ilustrar o Algoritmo SFR (Parte 1/2).

4.2 Exemplo para Ilustrar o Algoritmo SFR (Parte 2/2).

30

34

35

4.3 Contra-exemplo proposto por Grimes et a/. [69]. . . . . . . . . . . . . . . . 44

5.1 Mínimos Locais em uma Curva Típica de Energia. . . . . . . . . . . . . . . 46

6.1 Domo Lattice (101 Nós e 280 Elementos). . .

6.2 Estação Espacial (304 Nós e 1428 Elementos).

6.3 Painel de Fuselagem com Fratura (1262 Nós e 2018 Elementos).

6.4 Lâmina de Turbina de Gás (1820 Nós e 944 Elementos) ..

6 .5 Ferramenta Mecânica (471 Nós e 592 Elementos).

6.6 :Estrutura Offshore (492 Nós e 1437 Elementos) ..

6. 7 Disco de Turbina com 12 Lâminas (1152 Nós e 504 Elementos).

6.'i F·~rramenta Mecânica (Grafo Nodal). .

6.9 Ft!rramenta Mecânica (Grafo Dual) ...

Vlll

59

59

60

60

62

63

63

66

66

Page 13: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.10 Ferramenta Mecânica (Grafo de Comunicação). . ........ .

6.11 Malhas de Elementos Finitos para Avaliação do Algoritmo FWR.

66

71

9.1 Exemplo para Ilustrar a Terminologia de Matrizes Esparsas. . . . . . . . . 82

lX

Page 14: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Lista de Tabelas

:l.1 Algoritmo para Determinação de Vértices Pseudo-Periféricos em Grafos. 11

3.2 Algoritmo Reverse Cuthill-McKee . ....

:J.3 Algoritmo de Gibbs-Poole-Stockmeyer ..

:~.4 Algoritmo de Gibbs-King. . . . . . .

Algoritmo Modífied Reverst Collins . .

a.6 o\lgoritmo de Snay. . . .

3. 7 Estratégia do Banqueiro.

3.8 Algoritmo de Sloan. . . .

3.9 Algoritmo Front Width Reduction.

3 10 Algoritmo Coordinate Based Bandwidth and Profile Reduction.

12

13

14

15

17

17

19

21

22

3.11 Algoritmo Hybrid Wavefront and Profile Reduction. . . . . . . . . . . . . . 24

4' 1 Algoritmo Spectral FEG Resequencing. . . . . . . . . . . . . . .

4. '2 Primeira Alternativa para Tratamento de Grafos Não Conexos ..

4.:l S.!gunda Alternativa para Tratamento de Grafos Não Conexos ..

4.4 1\~rceira Alternativa para Tratamento de Grafos Nã.o Conexos.

4.ét D•iscriçã.o Geral do Programa SFRsrM. . . . . . . . . . . . ..

X

31

32

33

33

39

Page 15: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

4.6 Parâmetros Default do Programa SFRsrM·

4. 7 Algoritmo da Seqüência de Sturm .....

4.8 Descrição Geral do Programa SFRsturm·

4.9 Parâmetros Defau/t do Programa SFRsturm·

4.10 Algoritmo Spectral Graph Pseudoperipheral and Pseudodiameter . .

.1.1 Requisitos Básicos para Utilização da Técnica de SA.

(í.2 Algoritmo Simulated AnneaJing. . .......... .

6.l Grafos Conexos da Biblioteca de Exemplos de Everstine (Parte 1/5).

6.1 Grafos Conexos da Biblioteca de Exemplos de Everstine (Parte 2/5).

6.1 Grafos Conexos da Biblioteca de Exemplos de Everstine (Parte 3/5).

61 Grafos Conexos da Biblioteca de Exemplos de Everstine (Parte 4/5).

6 1 C:rafos Conexos da Biblioteca de Exemplos de Everstine (Parte 5/5).

6.2 Ferfis obtidos com os Exemplos Não Conexos da Biblioteca de Everstine.

6.3 Exemplos Práticos de Elementos Finitos.

6.4 SF'Rstunn X SFRsrM· ......... · .

6 .. ) Desempenho dos Algoritmos com Relação ao Tempo de Execução.

6.tJ Estratégia de Pré-ordenação. . . . . . . . . . . . . . . . . . . . . . . . . . .

6.í· Aplicação do Algoritmo SGPD. . . . . . . . . . . . . . . . . . . . . . . . .

6.8 La.rgura.s de Frente Obtidas com o Algoritmo FWR.

XI

39

41

42

42

43

47

48

51

52

53

54

55

57

61

64

67

68

70

72

Page 16: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.9 Resultados Preliminares obtidos com o Algoritmo SA. . . . . . . . . . . . . 73

7.1 Classificação dos Algoritmos de Reordenação. . . . . . . . . . . . . . . . . 76

Xll

Page 17: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Lista de Símbolos

Página

A Ma.triz de coeficientes dos sistemas de equações lineares 1

6 Vetor dos termos independentes 1

:i: Vetor das incógnitas 1

n Ordem dos sistemas de equações 1

P Ma.triz de permutação 2

G Grafo nodal 6

G* Grafo dual 6

G• Grafo de comunicação 6

(JK Grafo ordenado e não dirigido, associado a uma dada matriz K 8

\'K Conjunto de vértices do grafo QK 8

DK Conjunto de arestas do grafo GK 8

V; Vértice ido conjunto VK 8

k;; Componente ij da matriz K 8

L( s) Estrutura de níveis de um grafo, com raíz no vértice s

.4dj ( v) Conjunto de adjacência do vértice v

ll!I Número de elementos do conjunto V

A Matriz de adjacência

D Matriz de grau

l, Matriz Laplaciana

Af Matriz de incidência vértice-aresta

grau( t ") Grau do vértice v

\ Autovalor de uma matriz

o Raio espectral de uma matriz

( >., , 712) Segundo autopar da matriz Laplaciana

XIII

11

12

12

25

25

25

25

26

27

27

27

Page 18: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Capítulo 1

Introdução

O problema de reordenação de sistemas esparsos de equações lineares para redução de

banda, perfil ou frente, tem sido objeto de pesquisa há muito tempo. Diversos livros

sobre o Método dos Elementos Finitos (MEF), tais como, Desai e Abel (1972) [40], Irons

e Ahmac (1980) [84], Bathe (1982) [18], Hughes (1987) [82] e Zienkiewicz e Taylor (1989) [16::!], ob:;ervam a importância deste assunto.

Em geral, tais sistemas esparsos surgem quando métodos numéricos são empregados

na solução de problemas físicos reais, para os quais as soluções analíticas são matematica­

mente in1 ratáveis. Dentre os diversos métodos numéricos existentes, o MEF se destaca por

ser o mais utilizado na literatura técnica, levando a sistemas de equações lineares da forma

A a: = b, (1.1)

onde A é uma matriz conhecida de ordem n x n, b é um vetor também conhecido de ordem

n e :r é o vetor das incógnitas de ordem n, que corresponde a uma aproximação da solução

real do problema.

Dependendo do tipo de problema a ser analisado ou do método numérico a ser

empregadJ, a matriz dos coeficientes (A) pode se apresentar com diferentes configurações

em n·laçâ•> à simetria e esparsidade. Em geral, no MEF, a matriz A é esparsa, simétrica e

positwa-d·~finida.

A maioria dos algoritmos disponíveis na literatura técnica, para solução de sistemas

de equações lineares provenientes do MEF, se baseia no método padrão de eliminação

de Gauss JU variações deste método visando uma minimização do número de operações.

De acordo com a forma como as equações são armazenadas e a eliminação de Gauss é

processada, os algoritmos são classificados em: banda, perfil e frontal. Os algoritmos do

tipo bandh e perfil foram os primeiros a se desenvolverem, acompanhando desde o início

a evolução dos métodos numéricos, enquanto que os algoritmos frontais somente surgiram

na literatura em 1970, através do trabalho original de B. M. Irons [83].

1

Page 19: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

A característica fundamental da técnica frontal é o fato de que a matriz dos coefi­

cientes não precisa ser montada explicitamente. Ou seja, enquanto os algoritmos de banda

e perfil esperam a montagem completa desta matriz para que o processo de eliminação de

Gauss se inicie, os algoritmos frontais trabalham com a montagem e a eliminação de Gauss

simultaneamente [83]. Esta característica se torna ainda mais importante em problemas de

grande ;:iorte ou quando o limite de memória disponível é excedido.

Para tirar vantagem da esparsidade da matriz dos coeficientes (A), os algoritmos do

tipo banda ou perfil procuram armazenar a mínima quantidade de zeros, com relação ao

processe de eliminação de Gauss. Observe-se que a presença, nesta matriz, de um elemento

não-nul<• a;j significa que os graus de liberdade i e j estão conectados, isto é, pertencem a um

mesmo demento. Portanto, a esparsidade da matriz dos coeficientes, e por conseguinte, a

diciênci.t dos algoritmos de banda e perfil dependem, exclusivamente, da numeração nodal

na malhi de elementos finitos.

Entretanto, para os algoritmos frontais, a quantidade de memória requerida é definida

pelo tamanho da máxima largura de frente. O termo largura de frente (ou frente de onda) é

aqui usado para se referir ao número corrente de graus de liberdade ativos. As equações são

pro<'essadas elemento por elemento. Quando um elemento é processado, todos os seus graus

de liberdade se tornam ativos. Um grau de liberdade ativo é colocado na frente até que

possa ser eliminado, isto é, até que o último elemento ao qual ele pertença seja processado.

Portanto. a eficiência dos algoritmos frontais depende, exclusivamente, da numeração dos

elemento" na malha de elementos finitos.

Rf-ordenar um sistema de equações lineares (Equação 1.1) é equivalente a se de­

terminar uma matriz de permutação P que conduza a uma ordenação conveniente dos

coeficient·~s da matriz A, através da seguinte transformação

(P APT) (Póll) = Pb. (1.2)

Por definição, cada linha ou coluna da matriz de permutação possui apenas um elemento

não nulo e igual a unidade. Além disso, através da propriedade de ortogonalidade da

matriz de permutação, pT = p-i (a identidade é o exemplo mais simples de uma matriz

de permutação). Por ser impraticável a verificação das n! ordenações possíveis para um

sistema dt n equações, diversos algoritmos heurísticos foram desenvolvidos. Além disso,

o problemi de se determinar uma ordenação ótima para um sistema esparso de equações

foi mostrado ser do tipo NP-completo [126, 56) e, portanto, os algoritmos heurísticos se

rnnstit.uerr. na única solução prática para esta classe de problemas.

2

Page 20: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

1.1 Revisão Bibliográfica

Duff [43] apresentou uma revisão bibliográfica sobre matrizes esparsas, cobrindo a literatura

<tté 197{, em que cita mais de 600 referências. Everstine [48] realizou uma revisão dos

algoritmos de reordenação publicados até 1978. Chinn et ai. [30] cobriu a literatura técnica

até 1981, em um trabalho no qual enfatiza o problema da largura de banda de grafos e

matrizes. Armstrong utilizou técnicas de simulated annealing para obtenção da largura de

banda mínima [10] ou perfil e largura de frente mínimos [11]. Os resultados apresentados

por Armstrong têm sido utilizados para aferir o desempenho de novos algoritmos. George

[65] apre~entou uma revisão das técnicas de reordenação de nós e elementos no contexto de

geração hutomática de malhas de elementos finitos.

D versos trabalhos sobre técnicas de reordenação no MEF foram publicados recen­

temente. Shephard et ai. (1988) [141] desenvolveu o algoritmo Node Queue, que utiliza

a estrutura de dados topológica da malha (finite quadtree e finite octree mesh generators)

para reordenar os nós ou elementos da malha. A vantagem de se utilizar esta estrutura de

dados ao invés da tabela de conectividades, para obtenção das informações de adjacência,

eE.tá na redução substancial de memória .. Sloan (1989) [146] apresentou um algoritmo e o

correspondente código FORTRAN para redução de perfil e largura de frente de matrizes

esparsas. Livesley e Sabin (1991) [104) estudaram algoritmos para redução de banda em

malhas dt' elementos finitos bi e tri-dimensionais, com geometria retangular. Este estudo

demonstrou que o algoritmo de Gibbs et al. (1976) [66] apresenta um pobre desempenho

nestas malhas, especificamente naquelas que se aproximam de um cubo. Livesley e Sabin

também criaram um novo algoritmo que produz melhores numerações para esta classe de

problemaE. Kaveh (1991) [91] propôs um sistema para reordenação de nós e elementos.

Em seu ti abalho, quatro algoritmos foram apresentados para seleção de nós iniciais no

proce;;so de numeração da malha. J .. c. Luo (1992) [105] desenvolveu um algoritmo para

redução d" banda e perfil de matrizes esparsas. Um grafo associado à matriz do sistema é

decomposto em diversos grupos através de estruturas de níveis. Estes grupos sã.o usados

para a colistruçã.o de uma partição com máxima profundidade, na qual cada nível pos­

sua aproximadamente a mesma largura. Com relação ao algoritmo de Gibbs et a/. [66],

o algoritm·) de Luo é mais complicado e, geralmente, produz menor banda e maior per­

HI. Koo ar.d Lee (1992) [95] desenvolveram um algoritmo para redução de perfil baseado

t'm um esquema de ordenação frontal e teoria de grafos. Neste trabalho, foi utilizado um

esquema indireto ( two-step approach), no qual os elementos sã.o primeiramente ordenados

utilizando-:ie o algoritmo de Cuthill-McKee (1969) [36}. Em seguida, os nós sã.o ordenados

baseado no conceito de largura de frente e relações de adjacência da teoria de grafos. Uma

3

Page 21: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

proposta anterior para ordenação indireta de elementos em uma malha de elementos finitos

foi apresentada por Fenves and Law (1983) [50]. Medeiros et ai. (1993) [110] publicaram

um algc.•ritmo para redução de perfil e frente, baseado em algumas idéias dos métodos de

Gibbs-King [67, 93] e Sloan [146]. Através de testes numéricos, foi mostrado que o algoritmo

de Meddros et ai. produz melhores resultados do que os algoritmos Reverse Cuthill-Mckee

[36, 62], Gibbs-King [67, 93) e Sloan [146).

1.2 Objetivos e Escopo do Trabalho

Esta tes1~ apresenta dois objetivos principais:

• De~envolver um enfoque moderno e unificado das técnicas de reordenação para redução

de banda, perfil e frente, apresentando uma revisão crítica da literatura;

• Ap:esentar melhorias em diversos algoritmos existentes e propor novos algoritmos.

A organização deste trabalho é apresentada a seguir. O capítulo 2 propõe um

enfoque prático e unificado envolvendo malhas de elementos finitos, grafos associados e

matrizes :orrespondentes. No capítulo 3, alguns dos mais conhecidos algoritmos clássicos

de reordenação são discutidos; uma nova versão do algoritmo de Collins [32] é apresentada

e novos algoritmos são propostos. No capítulo 4, técnicas espectrais aplicadas a problemas

de reordenação são apresentadas e novos algoritmos espectrais são propostos. O capítulo 5

apref.enta uma visão geral da técnica de simulated annealing aplicada a problemas de reor­

denação. No capítulo 6, diversos exemplos numéricos são apresentados para validação dos

algontmo" propostos. No capítulo 7, algumas conclusões são apresentadas e sugestões para

trabalhos futuros são propostas. Os conceitos básicos sobre teoria de grafos e a terminologia

utilizada para matrizes esparsas são apresentados nos apêndices A e B, respectivamente.

4

Page 22: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Capítulo 2

Malhas, Grafos e Matrizes

O objetivo deste capítulo é apresentar uma abordagem prática e unificada envolvendo as

malhas de elementos finitos, os grafos associados e as matrizes correspondentes. Algumas

definiçâts básicas da teoria de grafos estão apresentadas no apêndice A1 .

Existe uma correspondência intrínseca entre a matriz de rigidez do método dos ele­

mentos f nitos e a topologia da malha. Tais propriedades topológicas podem ser exploradas

através ela associação de grafos a malhas e matrizes [62, 119, 120]. A permutação de li­

nha.' e colunas numa dada matriz, corresponde a uma renumeração dos vértices do grafo

associadc•, ou a uma renumeração dos nós da malha.

De uma maneira simplifica.da, uma malha de elementos finitos pode ser definida

como um conjunto de nós e elementos interconectados. Dois ou mais nós sã.o adjacentes

quando pertencem a um mesmo elemento. Dois elementos sã.o adjacentes quando possuem

uma fronteira em comum, podendo esta fronteira ser uma superfície (face), e/ou uma curva

( 11resta), .i/ou um nó (vértice). As técnicas de reordenação abordadas neste trabalho sã.o

aplicá.veis a malhas de elementos finitos genéricas e arbitrárias, isto é,

• Malhas com qualquer configuração geométrica ou topológica;

• Malnas com elementos finitos de dimensões diferentes, por exemplo, elementos unidi­

memionais (1-D) retos ou curvos, elementos bidimensionais (2-D) planos ou curvos e

elementos tridimensionais (3-D) cúbicos ou piramidais;

• Malhas de elementos finitos com diferentes formas geométricas, por exemplo, elemen­

tos triangulares e elementos quadrilaterais;

• Malbas de elementos finitos com diferentes funções de interpolação, por exemplo,

lineares, quadráticas e cúbicas.

1 Para informações mais detalhadas sobre a teoria de grafos, ver o livro clássico de Harary (72}, ou mais

rec<:ntement<, o livro de Buckley e Harary [24).

5

Page 23: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

A Figura (2.la) mostra uma malha de elementos finitos composta por elementos trian­

gulares de 3 nós (T3) e elementos quadrilaterais de 4 nós (Q4). Um conjunto de graus

de liberdade é associado a cada nó da malha. Por questão de simplicidade, porém sem

qualqun perda de generalidade, considera-se apenas um grau de liberdade por nó (como

ocorre, por exemplo, em problemas de potencial).

Seja um Grafo de Elementos Finitos - Finite Element Graph (FEG) - isto é, um

grafo a.<sociado a uma malha de elementos finitos [123, 124]. Neste trabalho, os termos

nós e elementos referem-se às malhas de elementos finitos, enquanto os termos vértices e

art8tas 'eferem-se aos grafos, mais especificamente, aos FEGs.

Alguns exemplos de FEGs sã.o: grafo nodal (G), grafo dual (G*) e grafo de co­

municação (G•). A associação de grafos com malhas de elementos finitos faz com que

as técnkas de reordenação se tornem bem mais eficientes. A teoria de grafos tem sido

utilizadé. em diversas áreas de aplica.çã.o, por exemplo, elementos finitos, otimização, com­

putação gráfica e computação paralela [91, 62, 119, 120, 79]. Portanto, a reordenação é

apenas tma das áreas onde a teoria de grafos pode ser aplicada.

A conectividade nodal (relação de adjacência entre os nós) da malha da Figura (2.la)

pode ser representada pelo grafo nodal (G) mostrado na Figura (2.lb). Cada vértice do

grafo nodal corresponde a um nó da malha e cada aresta do grafo nodal corresponde a um

par de n<Ís adjacentes, ou seja, nós que pertencem a um mesmo elemento. As técnicas de

reordena1;ã.o baseadas no grafo nodal são adequadas para minimização da largura de banda

e/ou do perfil das matrizes correspondentes (por exemplo, matriz de rigidez global).

A conectividade dos elementos (relação de adjacência entre elementos) também pode

ser representada por meio de grafos. A Figura (2.lc) mostra o grafo dual ( G*por meio asso­

ciado à malha de elementos finitos da Figura (2.la). Cada vértice do grafo dual corresponde

a um elewento da malha e cada aresta do grafo dual corresponde a um par de elementos

que apres•mtam pelo menos uma fronteira comum (podendo esta fronteira ser uma face ou

uma aresta).

A Figura (2.ld) mostra o grafo de comunicação (Gº) associado à malha de elementos

finitos da Figura (2.la). Cada vértice do grafo de comunicação corresponde a um elemento

da malha e cada aresta do grafo de comunicação corresponde a um par de elementos que

apresentam pelo menos um nó comum. As técnicas de reordenação baseadas nos grafos

dual ou dt comunicação são adequada8 para minimização da largura de frente da8 malhas

de elementos finitos.

6

Page 24: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

3\ 6

© CD ® 9- 4

® ® ®

2 7

(a) Malha de Elementos Finitos

;------------,------------;1

L------1

'

'

1 ,

, , -------(------

1 ,'

I_ - -- -----~ ---~-:_---------··

* (e) Grafo Dual G

r-X

X

X

X

1-

X

X

X

X

, '

X X

X

X

1

8

5

X X X

X X X X

X X X X X

X X X X

(e) Matriz K

(b) Grafo Nodal G

~------------,------------;, 1 , 1

1

( 1 ,, , 1 1 1 , l _____________ , ____________ _

- . (d) Grafo de Comunicac;ao G

., X

X X

X X X X X X

X

X X X

X X X X_.

Figura 2.1: Correspondência entre Malhas, Grafos e Matrizes.

7

Page 25: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

A principal vantagem do grafo dual, em relação ao grafo de comunicação, está na

reduçã.i de memória requerida, uma vez que, o grafo dual é menos denso, isto é, possui

menos J.restas (comparar Figuras 2.lc e 2.ld). Por outro lado, em alguns casos, o grafo dual

apreser ta a desvantagem de não poder representar completamente a conectividade de uma

malha, ou seja, em certas situações, malhas de elementos finitos inicialmente conexas, são

associa.ias a grafos duais não conexos. Isso pode ocorrer, por exemplo, quando elementos

finitos de dimensão n estão conectados através de fronteiras de dimensão n-1 (por exemplo,

do.1s elementos Q4 conectados por um único nó), ou quando a malha possui elementos de

dirnensoes diferentes (por exemplo, elementos planos quadrilaterais conectados a elementos

urndimcnsionais). Portanto, para se evitar grafos duais não conexos, em muitas situações

sãc- utíl zados os grafos de comunicação, apesar do aumento do esforço computacional. É

sempre possível definir novos grafo8 com características intermediárias entre G* e G". No

entanto. os grafos dual e de comunicação são os que representam as relações de adjacência

entre elementos da maneira mais natural [123].

A correspondência entre grafos (especificamente grafos nodais) e matrizes

(Figuras 2.lb e 2.le) pode ser estabelecida considerando-se matrizes simétricas de ordem

n e diagonal não nula. O grafo ordenado e não dirigido associado a uma dada matriz K é representado por QK == (vK,EK). Este grafo possui n vértices numerados de 1 a n e

{{ v,, Vj} E EK ~ k;j = kji # O, i -=/ j} onde k;j são as componentes da matriz K e v;

representa o vértice ido conjunto VK. A Figura (2.le) mostra a matriz correspondente

ao grafo nodal da Figura (2.lb). Cada vértice do grafo nodal corresponde a um nó da

malha d<c Figura (2.la) e a um elemento da diagonal da matriz K. Cada aresta do grafo

nodal (v;, vi) corresponde a um par de graus de liberdade adjacentes da malha de elementos

finitos (graus i e j) e a um par de elementos não nulos da matriz K (k;i e kj;).

Uma vez estabelecidas as relações entre malhas, grafos e matrizes, o problema de

reordena(ão pode ser colocado de uma maneira unificada, ou seja: reordenar nós ou ele­

memos d~ uma malha de elementos finitos, corresponde a reordenar os vértices do grafo

a.~sociado (G, G*, ou Gº) ou permutar línhas e colunas das matrizes correspondentes.

8

Page 26: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Capítulo 3

Algoritmos Clássicos de Reordenação

Neste capítulo, alguns algoritmos clássicos de reordenação são discutidos. Uma descrição

formal destes algoritmos é apresentada. As informações geométricas, disponíveis nos pro·

gram.~s de elementos finitos, são utilizadas para aumentar a eficiência dos algoritmos

heuriiticos.

Os algoritmos de reordenação são classificados em topológicos, geométricos e híbridos.

Os algoritmos topológicos mais conhecidos na literatura, tais como, Reverse Cuthill-McKee

(RCM) [36, 62], Gibbs-Poole-Stockmeyer (GPS) [66], Gibbs-King (GK) [67, 93], Collins

[:32], ~:nay [151] e Sloan [145, 146] são investigados. Em particular, o algoritmo de Collins

[:12] é estendido para consideração de componentes não conexos nos grafos associados, e a

numeração final é invertida para uma posterior redução do perfil. Um novo algoritmo para

reduçi.o da largura de frente, baseado no método direto de reordenação de elementos, é

propm:to. Um algoritmo puramente geométrico para redução de banda e perfil é apresen·

to.do. Finalmente, um novo algoritmo híbrido para redução de frente e perfil de matrizes

espars.ts é proposto.

3.1 Vértices Pseudo-Periféricos

Após a publicação do famoso artigo de Cuthill e McKee {1969) [36), a teoria de grafos

tornou-se uma metodologia padrão para minimização de banda, perfil e frente de matrizes

esparsas. No entanto, o sucesso da maioria dos algoritmos depende da escolha de vértices

iniciais Foi observado que os vértices periféricos - aqueles para os quais a excentricidade

é igual ao diâmetro do grafo - são excelentes para serem utilizados como vértices iniciais

nos algoritmos de reordenação [66, 62). Porém, a localização de tais vértices nos grafos é

bastant~ cara computacionalmente [148, 23]. Por esta razão, a maioria dos algoritmos uti­

liza vér,ices pseudo-periféricos - aqueles que apresentam altas excentricidades. Exemplos

9

Page 27: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

de tais algoritmos são: Reverse Cuthill-McKee (RCM) [36, 62], Gibbs-Poole-Stockmeyer

(GPS) [66], Gibbs-King (GK) [67, 93], Snay [151], Sloan [146), Medeiros et ai. [110), Fenves

e Law !50], Hoit e Wilson [77] e Livesley e Sabin [104]. Diversos artigos foram publica­

dos especificamente sobre algoritmos para determinação de vértices pseudo-periféricos, por

exemph, Cheng (1973) [29], Gibbs et ai. (1976) [66], George e Liu (1979) [61], Pachl (1984)

{118], Smyth (1985) [150], Kaveh (1990) [90] e Grimes et ai. [69].

Observe-se, entretanto, que o conceito de vértices pseudo-periféricos não se restringe

ao prob.ema de reordenação de sistemas esparsos de equações. Este conceito tem aplicações

em diversas áreas como a geografia [154] e o mapeamento de ma.lhas de elementos finitos

(ver refrrência [138], página 1417), dentre outras.

lima versão modificada do algoritmo de Gibbs et ai. [66) para determinação de

vértices pseudo-periféricos em grafos é apresentada neste trabalho. Esta versão consiste na

incorporação das estratégias de sho11; circuite shrinking, propostas por George e Liu [61] e

Sloan [J.15), respectivamente, para aumentar a eficiência do algoritmo origina.!.

Os principais passos deste algoritmo estão apresentados na Tabela (3.1 ).

10

Page 28: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 3.1: Algoritmo para Determinação de Vértices Pseudo-Periféricos em Grafos.

(1) Selecionar um vértices com grau mínimo;

(2) Gerar uma estrutura de níveis L(s), com raiz em s;

(3) Ordenar os vértices do último nível, na ordem crescente de seus graus,

e gerar um subconjunto Q contendo apenas um vértice de cada grau

;empates são decididos arbitrariamente);

(4) ·nicializar a variável min_width como sendo um número suficientemente grande;

(5) Para cada vértice i em Q, na ordem crescente de graus, gerar a estrutura de níveis

com raiz em i. Se o comprimento desta estrutura for maior do que

o comprimento de L(s) e a largura desta estrutura for menor do que min_width,

então fazer s == i e voltar para o Passo (3). Caso contrário,

(comprimento de L(i) for igual ao comprimento de L(s)),

se a largura desta estrutura for menor do que min_width, então fazer

e= i, L(e) = L(i) e min_width =largura da estrutura de níveis corrente;

(6) 1erminar com o vértice inicial se sua estrutura de níveis L(s)

(caso o usuário esteja interessado em um simples vértice pseudo-periférico), ou

1 erminar com o vértice inicial s, o vértice final e

e suas estruturas de níveis L(s) and L(e), respectivamente

(caso o usuário esteja interessado nos vértices extremos de um pseudo-diâmetro). -------------------------------------

11

Page 29: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

3.2 Algoritmos Topológicos

3.2.1 Algoritmo RCM

O algoritmo original de Cuthill-Mckee (CM), publicado em 1969 [36), foi desenvolvido para

reduçãc da largura de banda de matrizes simétricas e esparsas. Sem dúvidas, é o algoritmo

mais conhecido na literatura técnica.

O algoritmo RCM (Reverse Cuthill-Mckee) [36, 62) difere da versão original no fato

de que a numeração final é invertida. Esta observação foi feita por George [60], em sua tese

de doutorado. Tal inversão, preserva a largura de banda e jamais aumenta o perfil [60].

(1 algoritmo RCM, cujos principais passos estão apresentados na Tabela (3.2), pode

ser desc1ito da seguinte forma [48]: (i) dentre todos os vértices de grau mínimo, selecionar

aquele C<tpaz de gerar uma estrutura de níveis de menor largura. Este procedimento cor­

respondt a se determinar um vértice pseudo-periférico no grafo associado (ver Tabela 3.1 );

( ii) atribuir o rótulo 1 ao vértice inicial; ( iii) atribuir os rótulos 2, ... , \V\ aos vértices

adjacent•~S ao último vértice numera.do, em ordem crescente de grau, até que todos os nós

sejam numerados; (iv) inverter a numeração atribuindo o rótulo (i) ao rótulo (\V\- i + 1),

parai= 1,2, ... , \V\.

Tabela 3.2: Algoritmo Reverse Cuthill-McKee.

(1) Determinar um vértice pseudo-periférico ( v );

(2) Renumerar este vértice;

(3) Para i = 1, ... , \V\, renumerar todos os vértices pertencentes

ao conjunto Adj(v;), em ordem crescente de seus graus;

( 4) Repetir o algoritmo para cada componente conexo;

(5) Inverter a numeração final atribuindo o rótulo (i)

ao rótulo (\V\ - i + l}, parai= 1, 2, ... , \V\.

12

Page 30: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

3.2.2 Algoritmo GPS

O .Jgor tmo GPS (Gibbs-Poole-Stockmeyer) foi desenvolvido em 1976 [66]. Diferentemente

do algoiitmo RCM, que utiliza um único vértice pseudo-periférico, o GPS utiliza os vértices

extremos de um pseudo-diâmetro. Ele é considerado um dos algoritmos mais eficientes para

redução de banda. A idéia deste algoritmo consiste em se combinar as estruturas de níveis

com raí ies em cada vértice extremo do pseudo-diâmetro, de tal maneira que se obtenha

uma nora estrutura de níveis com uma largura menor. A partir deste ponto, o GPS é

sirnílar w RCM. Informações mais detalhadas sobre o GPS podem ser encontradas em

\48. 66, 57' 68, 101 ].

A Tabela (3.3) mostra os principais passos do algoritmo GPS.

Tabela 3.3: Algoritmo de Gibbs-Poole-Stockmeyer.

(1) Determinar os extremos de um pseudo-diâmetro;

(2) Minimizar a largura de nível;

(3) Numerar o grafo de maneira similar ao algoritmo RCM;

( 4) Repetir o algoritmo para cada componente conexo.

3.2.3 Algoritmo GK

Baseado ('m trabalhos anteriores de Gibbs et ai. [66] e King [93], Gibbs propõs um novo

algoritmo para redução do perfil de matrizes simétricas e esparsas. O algoritmo GK (Gibbs­

Kíng) também utiliza os extremos de um pseudo-diâmetro como vértices iniciais. Para

ma.iores ddalhes sobre o algoritmo GK, ver, por exemplo, referências [48, 67, 68, 93, 101].

Os principais passos do algoritmo GK estão mostrados na Tabela (3.4). Note-se que

os dois primeiros passos dos algoritmos GPS e GK são idênticos.

13

Page 31: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 3.4: Algoritmo de Gibbs-King.

(1) Determinar os extremos de um pseudo-diâmetro;

(2) Minimizar a largura de nível;

(3) Numerar o grafo de acordo com o critério de King (93);

( 4) Repetir o algoritmo para cada componente conexo.

3.2.4 Algoritmo MRCollins

O algoritmo original de Collins foi publicado em 1973 [32). É considerado suficientemente

rápido para uso prático, particularmente para problemas pequenos. A quantidade de

memórif. requerida pelo algoritmo de Collins é mínima. Desenvolvido inicialmente com

o objeti\o de reduzir a largura de banda, o algoritmo de Collins, entretanto, jamais produz

resultados inaceitáveis para o perfil. De acordo com Gibbs et ai. [68), uma desvantagem

do algoritmo de Collins é a sua incapacidade de tratar grafos não conexos.

Uma versão mais eficiente do algoritmo de Collins é apresentada neste trabalho. Ela

é denominada MRCollins (Modified Reverse Collins) e suas principais características sã.o:

• Corcsideraçã.o de componentes não conexos;

• Uso da numeração inversa para uma posterior redução do perfil;

• Uso de informações gerais de adjacência ao invés das tabelas de conectividade do

mét·:>do dos elementos finitos. Isso facilita a combinação de tipos diferentes de ele­

mentos finitos em uma mesma ma.lha;

• Nenmma restrição ao número de nós por elemento (o algoritmo original utiliza no

máxmo4);

• Reestruturação global do código (existem alguns erros tipográficos na versão original).

Os ::irincipais passos do algoritmo MRCollins estão descritos na Tabela (3.5).

14

Page 32: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 3.5: Algoritmo Modified Reverse Collins.

(1) Selecionar um vértice do grafo;

(2) Renumerar este vértice e considerá-lo como vértice de referência;

(3) Renumerar cada vértice (que ainda não tenha sido numerado) adjacente ao

vértice de referência em ordem crescente;

(4) Computar a máxima diferença entre os novos números atribuídos

e o número do vértice de referência;

(5) Se esta diferença ( +1) for maior ou igual a largura de banda produzida pelas

numerações anteriores (incluindo a original), abandonar a numeração corrente,

selecionar um novo vértice inicial do grafo e voltar para o Passo (2);

(6) Se ainda existirem vértices não numerados no componente conexo corrente,

então considerar o próximo vértice como sendo o vértice de referência e

voltar para o Passo (3);

(7) Repetir o algoritmo para cada componente conexo;

(8) Inverter a numeração atribuindo (i) para (!VI - i + 1) comi= 1, 2, ... , jVj.

15

Page 33: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

3.2.5 Algoritmo de Snay

Este algoritmo foi proposto por Snay [151] para redução de perfil de matrizes simétricas e

esparsfü. Apesar de não ser muito conhecido na comunidade de engenharia, ele é bastante

utilizadn no campo da geodésia.

O algoritmo original de Snay utiliza um conjunto de dez vértices iniciais, de acordo

com a referência [151]. O perfil é calculado pa.ra cada um destes vértices iniciais e escolhe­

se a numeração que conduza a.o menor perfil. Jonge [87] adotou uma estratégia diferente,

que comiste na utilização de um único vértice inicial. Em seu trabalho [87], foi mostrado

que. partindo-se de um único vértice pseudo-periférico pode-se obter perfis próximos aos

do algoritmo original, com diferenças da ordem de 1 % a 10%, e com um reduzido tempo de

CPU. No presente trabalho, utiliza-se a estratégia proposta por Jonge e o vértice pseudo­

periférico obtido através do algoritmo descrito na Tabela (3.1).

A estratégia do banqueiro ( banker's strategy), bastante utilizada em algoritmos de

reordenação, foi derivada de uma situação denominada dilema do banqueiro (banker's

dílemma) (151, 87], na qual um banqueiro tem que distribuir lotes de terra para os moradores

de uma 'ila. Antes de alguém receber um lote, os débitos existentes devem ser quitados.

O proces~o de transferência do lote e a quitação dos débitos, leva um dia pa.ra ser efetuado,

para cada morador.

Di.i.riamente o banqueiro pode atender a apenas um morador. Cada dia no banco

estão os moradores que possuem algum débito com o morador escalado para ser atendido,

e os mora.lores que já estiveram no banco, mas ainda não receberam um lote de terra. Este

último gncpo, que diariamente retorna ao banco na esperança de ser atendido, é conhecido

como mor,tdores esperançosos (hopefu0. Como o banqueiro ficará com má reputação a cada

dia em que a multidão se aglomera na porta do seu banco, ele tenta atender a.o morador que

possui alg11m tipo de débito com o menor número de moradores. Esta estratégia tem por

:ih jeti vo rr inimizar o número pessoas que passarão a ficar esperando na porta do banco.

Diante do exposto, pode-se estabelecer a analogia entre o dilema do banqueiro e o

problema de reordenação. A vila de moradores corresponde a.o grafo associado a uma dada

matriz; os moradores correspondem ao conjunto de vértices do grafo e os débitos entre os

moradores correspondem às arestas do grafo. A ordem em que os moradores são atendidos

(Or.responde à numeração do grafo.

16

Page 34: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

lJrn morador que foi atendido no j-ésirno dia esperou (j - i) dias, caso o primeiro

morador do grupo com o qual ele mantinha algum débito tenha sido atendido no i-ésimo dia.

Isto implica numa j-ésirna largura de banda de j-i + 1. O perfil da matriz, desconsiderando­

se os te:·mos da diagonal, corresponde a.o tempo total de espera dos moradores. O número

de mondores ( + 1) que estão esperando no i-ésimo dia é igual a uma largura de frente dei.

Os principais passos do algoritmo de Snay estão apresentados na Tabela (3.6).

Tabela 3.6: Algoritmo de Snay.

( 1) Determinar um vértice pseudo-periférico;

( 2) Renumerar os vértices do grafo de acordo com a estratégia do banqueiro

(descrita na Tabela 3.7);

(3) Repetir o algoritmo para cada componente conexo.

É conveniente estabelecer a seguinte notação a ser utilizada na descrição da es­

tratégia do banqueiro (Tabela 3.7): V é o conjunto de todos os vértices; L é o conjunto dos

vértices numerados; H é o conjunto dos vértices esperançosos ( hopefuQ; e C é o conjunto

dos >'érti.:es candidatos.

Tabela 3.7: Estratégia do Banqueiro.

(1) Numerar o vértice inicial como v =} L = {v };

(2) H = Adj(L)

C = H U (Adj(H) - L);

(3) Numerar o próximo vértice y E e com mínimo IQI, onde

IQI = l{q E Adj(y)lq tf. H}I. se y tf. H; ou

IQI = l{q E Adj(y)lq tf. H}I 1. se y EH;

(4) L=LU{y};

(5) Se V = { } parar; caso contrário, voltar para o Passo (2).

De acordo com Jonge [87), os algoritmos de King [93], Snay [151] e Levy [100) uti­

lizam a. estratégia do banqueiro. Eles diferem entre si na maneira pela qual um determinado

morador é definido corno um candidato a ser atendido. No critério de King [93), os can­

didatos são apenas os moradores esperançosos. No critério de Snay [151], os candidatos são

17

Page 35: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

os moradores esperançosos e todos aqueles que têm algum débito com estes moradores. No

criiério de Levy [100], todos os moradores são candidatos. Formalmente, o conjunto C no

Pai<so ('.!) da estratégia do banqueiro passa a ser dado por:

• King: C == H

• Snay: C == H u (Adj(H) - L)

• Le>'y: C == V - L

3.2.6 Algoritmo de Sloan

Sloan [H 5, 146) propôs um dos mais eficientes algoritmos para redução de perfil e largura

de frente de matrizes simétricas e esparsas. O algoritmo utiliza corno vértices iniciais os

extremos de um pseudo-diâmetro.

Seguindo a observação de Jonge [87), o algoritmo de Sloan também utiliza a es­

tratégia do banqueiro (ver Tabela 3. 7). Além disso, a definição de vértices esperançosos e

candidatos é a mesma utilizada no algoritmo de Snay. No entanto, em vez de utilizar estes

termos, Sloan utiliza os termos ativos, pré-ativos, pós-ativos e inativos para se referir aos

vértices do grafo.

A idéia do algoritmo de Sloan consiste em se adicionar informações globais aos

vértices, ao invés de se utilizar apenas informações locais como nos algoritmos anteriores .

.E~ta., informações globais são as distâncias topológicas entre o vértice corrente e o vértice

final do pteudo-diâmetro.

Os vértices são numerados de acordo com o critério de Sloan, isto é, após k vértices

terem sidc numerados, escolhe-se o vértice k + 1 como sendo aquele (y) que minimiza a

seguinte q•iantidade

P(y) == W1 IQI - W2 d(e,y),

onde d( e, y) é a distância topológica mencionada anteriormente, JQI está indicado no

Passo (3) da Tabela (3.7) e W1 e W2 são pesos inteiros tomados como 2 e 1, respecti­

vamente. Observe-se que, para W1 == 1 e W2 == O, os algoritmos de Sloan e Snay são

idênticos.

18

Page 36: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Os principais passos do algoritmo de Sloan estão mostrados na Tabela (3.8). Para

maioref detalhes sobre este algoritmo, ver referências [145, 146].

Tabela 3.8: Algoritmo de Sloan.

(1) Determinar os extremos de um pseudo-diâmetro;

(2) Renumerar os vértices do grafo de acordo com o critério de Sloan;

(3) Repetir o algoritmo para cada componente conexo.

3.2. 7 Algoritmo FWR

Nesta seção, um novo algoritmo para redução da largura de frente de uma malha de ele­

mentos f.nitos é proposto. O algoritmo, denominado FWR (FrontWidth Reduction), produz

numeraç5es de elementos que são adequadas para um esquema de solução do tipo frontal.

De acordo com Akin e Pardue [2], os algoritmos existentes para numeração de ele­

meutos podem ser classificados em dois grupos: ( i) indiretos, que consiste em se numerar

os eleme:itos baseado numa numeração nodal prévia, isto é, os elementos são numerados

na ordem crescente da numeração nodal; e ( ii) diretos, que consiste na numeração dos

elemento,, diretamente a partir das relações de adjacência dos próprios elementos.

Ot' acordo com Sloan e Randolph [144], a idéia do enfoque indireto é que, embora nos

algoritmos frontais as equações sejam montadas elemento por elemento, elas são eliminadas

m) por nó Portanto, se os nós forem numerados de uma maneira tal que a largura de frente

global (às vezes referida como largura de frente do sistema [2]) seja reduzida, então, quando

os eJ.•men tos forem renumerados na ordem crescente da numeração nodal, os algoritmos

fronta.is preservam a máxima largura de frente tão próxima quanto possível, durante o

processo ce eliminação de Gauss. Conseqüentemente, a eficiência dos algoritmos indiretos

para redu,;ão da largura de frente dependente da eficiência dos algoritmos de reordenação

nodal.

Al~uns exemplos de algoritmos indiretos são: Akin e Pardue [2], Razzaque [132],

Sloan e Randolph [144] e Duff et al. (45]. Akin e Pardue (2] utilizam o algoritmo de Cuthill­

McKee [36] no processo de reordenação nodal, seguido de um reordenador de elementos

haseado no conceito de grau do elemento. Razzaque [132] utilizou um algoritmo para

reduçi;o dt banda no processo de reordenação nodal. Os elementos são reordenados na

19

Page 37: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

ordem crescente da numeração nodal. Sloan e Randolph [144] e Duff et al. [45] mantiveram

a mesrr a estratégia para numeração dos elementos, porém utilizaram um algoritmo para

redução de perfil no processo de reordenação nodal.

i\ idéia básica dos algoritmos diretos para reordenação de elementos consiste na

cor;stru(;ão de listas de adjacências apropriadas, a partir das quais o processo de reor­

dena.ção prossegue de maneira similar à utilizada na reordenação nodal. Alguns exemplos

de algontmos diretos são: Bykat [27], Pina [127], Fenves e Law [50] e Duff et ai. [45). Pina

[127] propôs um algoritmo baseado no conceito de grau corrente de um nó. Os elementos

são numerados de tal maneira a manter a largura de frente a mínima possível. No trabalho

proposk por Bykat [27], os elementos são numerados utilizando-se o algoritmo padrão de

Cuthill-McKee. Duff et ai. [45] utilizaram um algoritmo para redução de perfil, baseado

no ;;lgontmo de Sloan [146], para reordenação dos elementos.

A idéia do algoritmo FWR é reordenar os elementos de maneira a minimizar a

forgrJra à frente corrente. Ou seja, após a numeração do k-ésimo elemento, escolhe-se

o próximo elemento (k + 1) tal que a quantidade correspondente ao número de graus de

liberdadf que serão adicionados na frente, menos a quantidade de graus de liberdade que

poderão ;;er retirados da frente, seja minimiza.da..

A relação de adjacência entre elementos é definida de acordo com o trabalho de

Duff et ai. [45], em que, dois elementos são adjacentes quando possuem pelo menos um

nô comun. De acordo com Paulino ti ai. [123], esta definição corresponde à utilização do

grafo de < omunicação no processo de reordenação.

O algoritmo FWR consiste na solução de dois problemas globais: (i) seleção do

elemento inicial; e (ii) processo de reordenação de elementos. O primeiro problema é

resolvido utilizando-se o algoritmo para determinação de vértices pseudo-periféricos em

grafos, det.crito na Tabela (3.1 ).

A '.''a.bela (3.9) ilustra. os principais passos do algoritmo FWR.

20

Page 38: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 3.9: Algoritmo Front Width Reduction.

)) Selecionar um elemento inicial E. Numerar este elemento como l;

1'2) Todos os elementos adjacentes a E ou adjacentes aos elementos que são

adjacentes a E são colocados na lista de candidatos;

( 3) Se a lista de candidatos está vazia, Parar.

(4) Se (k) elementos tiverem sido numerados, selecionar o elemento (k + 1)

como sendo o elemento E da lista de candidatos, que

minimiza o crescimento da largura de frente;

( 5) Retirar o elemento E da lista de candidatos;

(6) Voltar para o Passo (2);

(7) Repetir os Passos (1-6) para cada componente conexo.

3.3 Algoritmos Geométricos

3.3.1 Algoritmo CBBPR

Um novo algoritmo, denominado CBBPR ( Coordinate Based Bandwidth and Profile Re­

d11ctwn) ,; proposto nesta seção. Ele é baseado em coordenadas Cartesianas, mas pode

ser facilmente adaptado para qualquer outro sistema de coordenadas, como, cilíndricas ou

esféricas. Para estruturas do tipo cascas cilíndricas, as coordenadas cilíndricas (r, O, z) são

mai~ apropriadas (119]. Já para estruturas reticuladas em forma de domos ou semi-esferas,

as coordenadas esféricas (R, O, ef>) são mais apropriadas (119]. Exemplos de estruturas em

forma de domo estão mostradas nas referências [71, 119]. Um exemplo típico de reor­

dena<.ào nodal usando-se coordenadas cilíndricas é um edifício alto, de forma cilíndrica,

onde a reordenação seria feita por pavimento (fixando-se r e variando-se O), para um dado

valor da coordenada z.

O algoritmo CBBPR é bastante simples e sua eficiência é altamente dependente da

geometria da malha de elementos finitos e da orientação desta malha com relação ao sistema

de coordenadas. Embora não exista qualquer garantia de que este algoritmo produza boas

numerações, ele pode ser uma alternativa viável, especialmente para malhas regulares, em

que uma d.mensão prevalece sobre as demais (por exemplo, edifícios altos e barragens).

21

Page 39: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Üs principais passos do algoritmo CBBPR estão apresentados na Ta.bela (3.10).

Observe-se que apenas as informações geométricas sã.o requeridas.

Tabela 3.10: Algoritmo Coordinate Based Bandwidth and Profile Reduction.

(1) Determinar as dimensões do domínio nas direções Cartesianas;

(2) Ordenar os vértices de acordo com as coordenadas na maior direção.

Em caso de empate, selecionar a próxima direção com maior dimensão;

(3) Calcular o perfil;

(4) Inverter a numeração e recalcular o perfil;

(5) Selecionar a numeração que produz o menor perfil.

3.4 Algoritmos Híbridos

Os algor tmos híbridos utilizam as informações topológicas e geométricas presentes nas

malhas de elementos finitos para redução de banda, perfil ou frente de matrizes simétricas

e esparsa;.

Af informações geométricas podem ser utilizadas para aumentar a eficiência dos

a.lgoritmcs. Por exemplo, no algoritmo RCM, descrito anteriormente, a.o invés de se utilizar

um vértice pseudo-periférico, poder-se-ia utilizar como vértice inicial aquele que apresenta

coordenadas Cartesianas mínimas (x, y, ez). De acordo com Paulino [119], esta estratégia

cc.nd11z a melhores larguras de banda e perfis em diversos exemplos.

Es'a idéia pode ser estendida para o contexto de pré-processadores gráficos interati­

vos de malhas de elementos finitos [119]. Neste caso, o usuário seleciona.ria. o vértice inicial

numa malha complexa, apontando-o diretamente na tela do computador.

Deatro do escopo da aplicação de técnicas de geometria computacional para re­

ordenação de nós e elementos, uma nova geração de algoritmos de reordenação pode ser

desenvolvida [112].

22

Page 40: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

3.4.1 Algoritmo HybWP

Nesta stçâ.o, um novo algoritmo híbrido para reordenação de nós e elementos numa ma.lha

genérica de elementos finitos é apresentado. O algoritmo, denominado HybWp (Hybrid Wa1Jefront and Profile), baseia-se no trabalho de AI-Na.sra e Nguyen [6], sobre decomposição

de domíiio na análise por elementos finitos usando computação paralela.

Nós e elementos sã.o renumerados naturalmente em um processo integrado. Observe­

se ql1e não se trata de um algoritmo indireto de reordenação, tal como utilizado em trabalhos

ankriores (por exemplo, Fenves e Law [50], Koo e Lee [95), Pina [127), Razzaque [132) e

Sloan e Randolph [144]). Além disso, o algoritmo híbrido não depende de um vértice

pseudo-periférico e envolve a aritmética de números inteiros e reais, na manipulação de

dados topológicos e geométricos, respectivamente. O algoritmo HybWP é eficiente para a

reduçâ.o de perfil (adequado para algoritmos de soluçâ.o do tipo perfil) e redução de largura

de frente (adequado para algoritmos de soluçâ.o do tipo frontal).

Q; principais passos do algoritmo HybWP estâ.o mostrados na Tabela (3.11). De

acordo com Al-Nasra e Nguyen [6], o objetivo de se adicionar pesos extras aos nós situados

ao longo da maior direção (ver Passo 4 da Tabela 3.11) é garantir que a numeraçâ.o se

desenvolv.:i. ao longo da menor dimensão do problema.

23

Page 41: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 3.11: Algoritmo Hybrid Wavefront and Profile Reduction.

(1) Determinar o máximo comprimento em cada direção ( Llxmax. LlYmax• Az,,..,, );

(2) Determinar o eixo Cartesiano que corresponda a maior dimensão;

(3) Determinar os pesos iniciais w{ de cada nó i (i = 1, .. ., n), onde

wf = número de elementos finitos conectados ao nó i, e

n = número total de nós da malha;

(4) Determinar o peso extra wf de cada nó i (i = 1,. . .,n), de acordo com as

seguintes fórmulas (Assumir que o eixo y tenha sido escolhido no Passo 2)

wE - (~) (~ -1) para malhas 2D i - A Y maz 6.Xma.i-

WE - (~) (~ + ~ - 2) para malhas 30 i - à Y ma:r AXmc.r .6.Zmaz

Ay; = Y; - Ymin• Yi é a coordenada nodal e Ymin é a coordenada mínima

ao longo do eixo de maior dimensão;

(5) Determinar os pesos corrigidos w; = w{ + wf de cada nó i (i = 1, ... , n);

(6) Determinar o nó com menor peso corrigido. Renumerar este nó;

( 7) Para cada elemento conectado a este nó, fazer:

1' a) renumerar este elemento;

(b) renumerar os nós conectados a este elemento;

( c) reduzir em 1 os pesos corrigidos de todos os nós conectados a este elemento;

Os nós são renumerados na ordem inversa, ou seja, Nó(i) <- n - i + l; (8) Determinar o nó com mínimo peso corrigido dentre todos os nós visitados

(isto é, nós para os quais os pesos tenham sido reduzidos pelo menos de 1}.

Se não existir nenhum nó neste estágio, voltar para o Passo (6), considerando

os nós restantes da malha que ainda não tenham sido renumerados;

(9) Repetir os Passos (7-8) até que todos os elementos tenham sido renumerados;

(10) Repetir os Passos (1-9) para cada componente conexo.

24

Page 42: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Capítulo 4

Algoritmos Espectrais de Reordenação

Ne8te capítulo, novos algoritmos baseados em propriedades espectrais de grafos são propos­

tos. Inicialmente, uma base teórica sobre propriedades espectrais de grafos é apresentada.

Em seguida, um novo algoritmo para minimização de perfil e frente de matrizes simétricas

e esparsas é proposto. Os aspectos numéricos relacionados à implementação computacional

deste alf,oritmo são descritos. Duas versões do algoritmo espectral são apresentadas. Fi­

naJmenk, um novo algoritmo espectral para determinação de vértices pseudo-periféricos

em ,grafo> é proposto.

4.1 .Propriedades Espectrais de Grafos

Seja G = (V, E) um grafo não dirigido1• V = { v1, Vz, .•• , v,.} é um conjunto de vértices

com !VI = n, onde 1 · 1 denota a cardinalidade do conjunto. E = { ei, e2, .•• , em} é um

conjunto de arestas com IEI = m, onde as arestas são pares de vértices de V, distintos e

não ordenados.

Dado um grafo G, devidamente ordenado, existem algumas matrizes que podem ser

a.ssociadaf a G, tais como, a matriz de adjacência (A), a matriz de grau (D), a matriz de

íncid•~ncia vértice-aresta ( M) e a matriz Laplaciana ( L ). Em particular, as propriedades

espectrais da matriz Laplaciana serão examinadas detalhadamente. ·--·-------------

1 Apenas os conceitos e definições relevantes para este trabalho serão mencionados. Maiores detalhes

iobre 1.écnic•is espectrais aplicadas à teoria de grafos podem ser encontrados no livro de Cvetkovié el ai.

25

Page 43: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

\ matriz de adjacência A(G) = [a;j]nxn de um grafo ordenado G é definida como

a;j = f 1,

1 o, se V; é adjacente a Vj, isto é, {v;,vJ} E E;

caso contrário. (4.1)

li matriz de grau D(G) = [d;j)nxn é uma matriz diagonal contendo os graus de cada

vértice, isto é,

l grau(v;), sei=j; d;j =

O, caso contrário,

onde grau( vi) é o número de arestas incidentes em v; ou, equivalentemente,

grau(v;) = IAdj(v;)I,

onde Adi(v;) é o conjunto de vértices adjacentes a v;.

A matriz Laplaciana L( G) = [l;j]nxn é definida como

L(G) = D(G) - A(G);

portanto. as componentes de L( G) são dadas por

-1, se v; é adjacente a Vj, isto é, {v;,v;} E E;

grau(v;), se z = Ji

O, caso contrário.

(4.2)

(4.3)

(4.4)

(4.5)

Recentemente, Merris (113] publicou um artigo bastante completo apresentando

diversos resultados sobre matrizes Laplacianas associadas a grafos.

A matriz de incidência vértice-aresta M( G) = [m;j]nxm é definida da seguinte forma:

in:ici;ilme1 te, as arestas de G sã.o orientadas arbitrariamente. Então

1, se e; aponta na direção de v;;

-1, se Cj aponta na direção oposta a v;;

O, caso contrário.

(4.6)

~ote-se que duas linhas distintas de M terão entradas não nulas na mesma coluna, se, e

somente st, existir uma aresta conectando os vértices correspondentes. Estas entradas na

ma.trii seri.o dadas por 1 e -1. Pode ser mostrado que

(4.7)

26

Page 44: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Da mesma forma, pode ser facilmente mostrado que L é independente da orientação ado­

tada para as arestas de G. A forma quadrática associada à matriz L pode ser obtida

como

zTLz=zTMMTz=(MTz)T(MTz)= L: (x;-x;) 2 , (4.8) {v;,v,)EE

iJSn

onde x; denota a i-ésima componente do vetor. De acordo com Anderson e Morley, o

nome matriz Laplaciana surgiu a partir de uma analogia com o operador Laplaciano discreto

utilizadl' na análise numérica [7]. Considere-se, por exemplo, uma malha retangular, sujeita

a condiçôes de contorno do tipo Neumann, usada no Método das Diferenças Finitas (MDF);

nes1 e caw, o operador Laplaciano e a matriz Laplaciana coincidem. Para maiores detalhes

sobre o :\fDF, ver, por exemplo, Forsythe e Wasow [55], seção 20.7, ou Lapidus e Pinder

(99], seçi,o 5.2.l.

A partir da Equação (4.8), conclui-se que a matriz Laplaciana (L) é simétrica,

singular :a soma dos elementos de qualquer linha ou coluna é nula), positiva semi-definida

e representa o grafo G a menos de isomorfismo2; a matriz Laplaciana também apresenta

importantes propriedades, como (para maiores detalhes, ver referências (7, 51, 52, 53)):

• Se .\é um autovalor de L(G) então

O :5 À :5 n. (4.9)

• A multiplicidade do autovalor À = O corresponde ao número de componentes conexos de<;.

• Se ) = n é um autovalor de L(G), então G é conexo.

• Se O é conexo, então À2 > O, onde À2 é o segundo menor autovalor.

• llm limite superior para À2 é dado por

Ài :S (-n-) min l;;. n -1 •

• Seja p (L( G)) o raio espectral da matriz Laplaciana L( G). Então

p ( L( G)) :S max (grau ( v;) + grau ( v; )), .. , considerando todos os pares de vértices { v;, v;} conectados por uma aresta.

(4.10)

( 4.11)

2 Dois grafos G1 = (Vi, E1) e G2 = (V2, E2) são isomorfos se existe uma função biunívoca f: Vi -+ V2

<1ue pr1>serva adjacência, isto é, E2 = {{f(v;),/(v;)} 1 {v;, v;} E Ei}.

27

Page 45: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

• S•üa G um grafo conexo. Então

p(L(G))::; 2 max (grau(v;)), 1::;: i::; n . •

( 4.12)

Considere-se um grafo G conexo e não-dirigido. Seja os autovalores de L( G) orde­

nados de tal maneira que

( 4.13)

O menor autovalor é À1 = O e o autovetor associado (111) apresenta todas as suas com­

ponente; normalizadas iguais a 1. As propriedades espectrais do segundo autovalor À2 e

seu corn!spondente autovetor (112 ) foram estudadas por Fiedler [51, 53). Ele denominou À2

como a ·~onectividade algébrica ( algt:braic connectivity) do grafo G, a qual está relacionada

com as wnectividades usuais entre vértices e arestas de G. Para determinados grafos que

apresentam uma simples topologia, existem soluções analíticas para À2 [51, 7]. Por exemplo,

;12 "= l para um grafo estrela; À2 = 2 para um cubo de dimensão n; e À2 = 2 [1 - cos (jt'1)]

para um grafo na forma de um circuito. As componentes de y2 podem ser associadas aos

vértices :ie G e consideradas como funções peso. Fiedler [53] denominou esta função de

pondera~ão de avalíação característica (characteristic valuation) de G.

Técnicas espectrais aplicadas a grafos já foram utilizadas por diversos pesquisadores,

especialmente no campo da partição de domínio [74, 128, 142]. Juvan e Mohar [88] estu­

daram os algoritmos espectrais para problemas de ordenação em grafos. Eles utilizaram o

vetor de Fiedler (112) para problemas de redução de banda, p-sums e cutwidth. Entretanto,

o usü de algoritmos espectrais para redução de perfil e frente foi proposto, pela primeira

vez, por Paulino et al. [123, 124].

4.2 Algoritmo SFR

Nesta seçúo, um novo algoritmo parn redução de perfil e frente de matrizes simétricas e

espar'as é proposto. O algoritmo, denominado Spectral FEG Resequencing (SFR), baseia­

se em propriedades espectrais da matriz Laplaciana (L) de um grafo associado a uma

dada malta de elementos finitos. O algoritmo SFR apresenta algumas características que

o diferencia dos demais: ( i) utiliza informações globais do grafo; ( ii) não utiliza o conceito

de vértice pseudo-periférico; (iii) não utiliza nenhum tipo de estrutura de níveis do grafo;

(iv) consiste em uma análise de autovalor para determinação do segundo autopar da ma­

triz La.pia.e iana; e ( v) sua implementação é relativamente simples e se baseia numa teoria

algébrica bem estabelecida.

28

Page 46: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Algoritmos de reordenação anteriores, como, RCM [36, 62], Levy [100], GPS [66], GK [67, 93], Snay [151] Sloan (145, 146] e Medeiros et ai. [110], utilizam informações

locais do grafo, ou seja, informações de adjacência entre os vértices do grafo, no processo

d1· reordenação. Conceitualmente, o algoritmo SFR difere dos demais no sentido de que

ek se baseia em propriedades globais do grafo. Dois outros algoritmos de reordenação

basead·)S em informações globais, mas que também utilizam informações locais do grafo,

foram propostos por Armstrong (10, 11 ]. Foram utilizadas técnicas de simulated annealing

para obtenção do mínimo global da largura de banda [10] ou do perfil e largura de frente

[l J ] de matrizes simétricas e esparsas.

A maioria dos algoritmos de reordenação, baseados na teoria de grafos, utiliza

vértice> pseudo-periféricos como vértices iniciais (por exemplo, RCM [36, 62], GPS [66], GK [67, 93], Snay [151] e Sloan [145, 146]). O algoritmo SFR não utiliza o conceito de

vértices pseudo-periféricos.

li. maioria dos algoritmos, baseados na teoria de grafos, utiliza o conceito de estrutura

de níveis em grafos, (por exemplo, RCM [36, 62], GPS [66], GK {67, 93], Fenves e Law {50], Hoit e Wilson [77], Kaveh [91), Koo e Lee [95), Levy [100], Livesly e Sabin [104), Luo [105], Sna.y {H·l], Sloan e Randolph [144], Sloan {145, 146] e Medeiros et a/. {110]). O algoritmo

SFR nà<• utiliza nenhum tipo de estrutura de níveis.

O maior esforço computacional no algoritmo SFR se concentra na solução de um

prohlem.t de autovalor, onde o segundo autopar (À, y 2) da matriz Laplaciana deve ser deter­

minado. Portanto, a maior parte computacional do algoritmo SFR se baseia na aritmética

de ponto flutuante. Este aspecto o distingue dos demais, que se baseiam na aritmética de

inte.-ros (por exemplo, RCM [36, 62], GPS [66], GK [67, 93], Sloan [145, 146] e Medeiros et

ai. [110]).

A implementação computacional do algoritmo SFR é bastante simples e depende

diretamente da existência de um algoritmo para solução de problemas de autovalor. Hoje

em dia, 1:,,s softwares de elementos finitos possuem algoritmos para solução de problemas

de a.utov1dor como parte de sua biblioteca. Além disso, existem bibliotecas de softwares

bastante 2onhecidas, como, IMSL (Jnternationa/ Mathematica/ and Statistíca/ Library) e

IBM (lnfornational Business Machines) ESSL (Engineering and Scientific Subroutine Li­

brnry) qut' possuem sub-rotinas para solução de problemas de autovalor disponíveis para o

usuár.io.

29

Page 47: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Considere-se uma malha consistente de elementos finitos [58], isto é, uma malha

pa.ra a qual não existe nenhuma inconsistência geométrica ou topológica no modelo (por

exemplo, nós repetidos ou elementos coincidentes). Partindo-se desta malha, a Figura ( 4.1)

mostra um diagrama de blocos que sumariza o algoritmo espectral proposto. Um aspecto

importante deste método é que a numeração dos nós ou dos elementos da malha pode

sei dividida em duas tarefas completamente independentes (Figura 4.1). Os algoritmos

ai1erio1es encontrados na literatura (por exemplo, [50, 95]) não atingem este nível de

independência.

Malha de Elementos Finitos

l Reordenacão

Nodal

G

l Reordenação de Elementos

T Matriz Laplaciana L( . )

Segundo Autopar de L( . )

G•

Vetor de Permutação de Nó ou Elemento

1

Figura 4.1: Diagrama de Blocos do Algoritmo SFR.

De acordo com a Figura (4.1), o algoritmo de reordenação proposto baseia-se em

propriedades espectrais da matriz Laplaciana (L) de um FEG (G, G* ou G•) associado a

urna dada malha de elementos finitos. Observe-se que um problema de reordenação de nós

ou elementos de uma malha pode sempre ser convertido em um problema de reordenação dos

vértices do FEG associado. O algoritmo SFR é baseado no autovetor de L correspondente

à conectiv dade algébrica do grafo (>.2), isto é, o segundo autovetor (y2). As componentes

deste auto <etor possuem a avaliação característica dos vértices do grafo de elementos finitos.

Diferenças entre as componentes de y2 caracterizam as distâncias topológicas entre os

l'értices do grafo. Portanto, as componentes de y2 podem ser tomadas como pesos a serem

30

Page 48: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

atribmdos aos vértices no processo de reordenação. Os principais passos do algoritmo SFR,

para grafos conexos, estão apresentados na Tabela ( 4.1 ). Os casos de grafos não conexos

serão considerados na próxima seção.

Tabela 4.1: Algoritmo Spectral FEG Resequencing.

(1) Construir um grafo de elementos finitos (G, G* ou Gº) correspondente

a uma dada malha de elementos finitos;

(2) Construir a matriz Laplaciana [L(G), L(G*) ou L(Gº)]

associada ao grafo selecionado no item anterior;

(3) Calcular o segundo autopar (>.2, Jh) de L( · );

(4) Reordenar os vértices na ordem crescente das componentes de y2.

Alguns resultados teóricos que justificam a idéia do algoritmo SFR podem ser en­

contrados nas referências [17, 88]. Juvan e Mohar [88] mostraram alguns limites superiores

para a largura de banda e problemas do tipo p-sums em função dos autovalores da matriz

Laplaciana. Mais recentemente, Barnard et ai. [17] apresentaram justificativas teóricas

para o algoritmo espectral de redução de perfil, mostrando que o autovetor y2 resolve uma

versão contínua de um problema discreto relacionado com a minimização de perfil. J usti­

ficativas teóricas mais profundas para este problema estão sendo investigadas por George

e Pothen [64].

N,1. solução numérica do problema de autovalor, os autovalores são calculados com

relação a um fator de escala arbitrário. Uma troca de sinal deste fator de escala conduz a

uma ordenação inversa dos vértices do grafo. Como o algoritmo SFR é global, a seleção do

sinal deste fator de escala não deve afetar significantemente os resultados obtidos. Neste

trabalho, o sinal do fator de escala será obtido arbitrariamente.

Devido ao rápido avanço tecnológico, a geração de malhas de elementos finitos

utilizando-se computação gráfica interativa, tem-se tornado uma prática bastante comum

[119, 120]. Paulino (119] desenvolveu, com sucesso, um módulo independente de reor­

denação nodal, para pré-processadores de pórticos espaciais. Paulino e Gattass (120] ge­

neralizaram esta idéia para malhas genéricas de elementos finitos. Portanto, o esquema

proposto na Figura (4.1) e Tabela (4.1) pode também ser implementado em um módulo

independe,1te de um pré-processador ou de um programa para geração de malhas.

31

Page 49: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

4.3 Tratamento de Grafos Não Conexos

Tr(·s té1.nicas para o tratamento de grafos não conexos são apresentadas nesta seção. A

primeim é uma técnica conhecida no tratamento desta classe de grafos. A segunda é uma

técnica •mplícita no algoritmo SFR A última é uma alternativa teoricamente viável.

A primeira alternativa para o tratamento de grafos não conexos está apresentada na

Tabela ( 4.2). Ela consiste em se adicionar um passo extra no final da Tabela ( 4.1 ). Toda

vez que o FEG associado ao problema for não conexo, o algoritmo reconhece este caso e

repde todos os passos anteriores para cada componente conexo. Esta técnica é bastante

comum" já foi adotada nos algoritmos GPS [66] e GK [67, 93]. Outros algoritmos que

também se utilizam desta estratégia são o GENRQT (general refined quotient tree) e o

GENlD (general one-way dissection), contidos no pacote SPARSPAK [62].

T"bela 4.2: Primeira Alternativa para Tratamento de Grafos Não Conexos.

(1-4) Mesmos da Tabela (4.1};

(5) Repetir o algoritmo para cada componente conexo.

A >egunda alternativa para tratamento de grafos não conexos é dada na Tabela (4.3).

Ela tamb,;m consiste em se adicionar um passo extra no final da Tabela ( 4.1 ). Trata-se de

uma técnica numérica para tratamento de grafos não conexos no processo de reordenação.

Resultados preliminares mostram que, na maioria dos casos, os autovalores nulos repetidos

produzem uma numeração sequencial em cada componente conexo do grafo. Em outras

palavras, .:ada componente é numerado separadamente e não há mistura de numeração en­

tre componentes. Todavia, esta técnica é essencialmente baseada em resultados numéricos.

Outros re~ultados numéricos mostram também que, em geral, o uso do autovetor corres­

pondente ao primeiro autovalor não nulo, não conduz a bons resultados em termos de perfil

"' largura de frente, e também não separa os componentes do grafo. Estas observações po­

dem ter implicações nos algoritmos de decomposição de domínio propostos por Pothen et ~/. [128] e Hendrickson e Leland [74]. Ambos os algoritmos são baseados em propriedades

espectrais de grafos.

Finalmente, a terceira alternativa para tratamento de grafos não conexos consiste

fm se mofftorar a conectividade a priori, tal como explicado na Tabela(4.4).

32

Page 50: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 4.3: Segunda Alternativa para Tratamento de Grafos Não Conexos.

(1-4) Mesmos da Tabela (4.1);

(5) Se existirem dois ou mais componentes no grafo, utilizar o autovetor

associado a À2 = O que produz o menor perfil.

Tabela 4.4: Terceira Alternativa para Tratamento de Grafos Não Conexos.

Se existirem componentes não conexos no grafo; adicionar o mínimo

número de arestas fantasmas para estabelecer a conectividade; executar

Passos (1) a (4) da Tabela 4.1; e em seguida, remover as arestas fantasmas.

Esta estratégia tem sido utilizada por Hendrickson e Leland [74]. Entretanto, ela

nâti garante urna numeração sequencial dos componentes, tal como na primeira alternativa

(T<cbela 4.2).

4.4 Um Exemplo Simples

Esta, seção apresenta um exemplo simples para tentar esclarecer os principais passos de

algoritrnJ SFR (Tabela 4.1). Considere-se a malha de elementos finitos da Figura (4.2a)

com doz•~ nós, quatro elementos T3, quatro elementos Q4 e sem condições de contorno.

Inicialmente, os nós e elementos da malha da Figura (4.2a) são numerados arbi­

trariamente. A conectividade dos nós pode ser representada topologicamente pelo grafo

nodal G da Figura ( 4.2b ). A matriz Laplaciana associada a este grafo L( G) é mostrada na

Figura ( 4.2g), para a qual À2 = 1.1071 e y 2 = [ -0.0608, -0.2023, 1.0000, -0.5303, 0.0658,

-0.4721, 0.3099, 0.3106, -0.2399, 0.5829, -0.3125, -0.4514 f. A conectividade dos ele­

memos P'Jde ser representada topologicamente pelo grafo dual G* da Figura (4.2c). Nesta

figura, as linhas tracejadas representam a malha original (Figura 4.2a). A matriz Laplaciana

associada a este grafo L(G*) está mostrada na Figura (4.2h), para a qual Àl = 0.5509 e

y 2 =' [ -0.1806, 0.2805, -0.6151, 1.0000, -0.3423, 0.4491, -0.5491, -0.0426 f. Uma outra

mam·ira conveniente de se representar a conectividade dos elementos é através do grafo de

comunica.;ão e• mostrado na Figura ( 4.2d). Nesta figura, as linhas tracejadas representam

a malha original e as linhas mais grossas o grafo dual. Note-se que o grafo dual G* está

contido n" grafo de comunicação G•. A matriz Laplaciana associada a este grafo L(Gº)

33

Page 51: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

3 7 2 6 I ,~. 1

1 4 ' CD 0) 10 k:. 5 9

12 l(i:

1 0 11 ~)

8~ 4

(a) Malha de Elementos Finitos (b) FEG Rotulado G

(e) FEG Rotulado G * • (d) FEG Rotulado G

12 9 6 2 12 9 6 2

8 © 5 0 3 8 © 5 CD 3 11 11

7 0 4 CD 1 0 7 0 4 0 1 10 10

(el Numeração de Nó e Elemento (f) Numeração de Nó e Elemento

(usando G e G~ respectivamente} (usando G e G~ respectivamente)

Figura 4,2: Exemplo para Ilustrar o Algoritmo SFR (Parte 1/2),

34

Page 52: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

-' t o o o -1 o o -1 -1 o -1 o ) 5 o o -1 -1 -1 o i_l o o -1 ) o 2 o o o -1 o o -1 o o

(

(

( l o o 3 o o o o -1 o -J -1 -1

o o -

1 1 o 1

o

_ij ~~--1 -1

-1 -1 -1 o

-1 o o

-1

-1 5 o

··1 -

-1 -1 -1 -1

-

-1 o --·

o o 7 o -1 -1 o o o 3 o o

-1 o -1 o 5 o o o -1 o o 3 o 1-l -1 -1 -1 o -1 o -1 o -1 -1 o -1 -1 o o o o -1 o -1 o o

'

(g) L(G)

~

-1 -1 -1 -1 -1 -1 o -1 -1 -1 o -1

3 o -1 o t-1 o o 3 o -1 o o

-1 o 6 -1 -1 -1

o -1 -1 5 o -1 -1 o -1 o 3 o

-l 1 o o 1 -1 -1 -1 o 4 -• (i) L ( G )

-1 -1 -1 o -1 o o -1 -1 -1 o o o -1 o o 8 o -1 -1 o 4 o o

-1 o 5 -1 -1 o -1 ~

r-

X X X X

X X X X X X X X

X X

._

.... 3 o o o -1 -1

o 2 o o o -1 o o 2 o -1 o o o o 1 o -1

-1 o -1 o 3 o -1 -1 o -1 o 3 -1 o -1 o o o o -1

L... o o -1 o

(h) L( o*)

X X X X

X X X X X X X X X X X X X

X X X X X X X X X X X X X X X X

X X X X X X X

X X X

(j) p TA p

Figura 4.2: Exemplo para Ilustrar o Algoritmo SFR (Parte 2/2).

35

--1 o o -1

-1 o o o o -1 o o 2 o o ~

~

X X X X X X X >s.

Page 53: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

está m•>Strada na Figura ( 4.2i), para a qual .Ã2 = 1.8395 e y2 = [ 0.0000, 0.4807, -1.0000,

0.8284, -0.1605, 0.4807, -1.0000, 0.3707 JT. Neste caso, a segunda e a sexta componente

são igu.us, assim como a terceira e a sétima. Para ordenar as componentes do autovetor,

os emp;ites são resolvidos naturalmente, buscando-se o maior número de casas decimais na

representação computacional da solução numérica. A Figura ( 4.2e) mostra a numeração

de nós ~elementos utilizando-se G e G", respectivamente. A Figura (4.2j) mostra a es­

trutura da matriz de rigidez, por exemplo, assumindo-se um grau de liberdade por nó,

obtida ;; partir da reordenação com o grafo G. Na Figura ( 4.2j), o símbolo "X" representa

um componente não nulo na matriz,, Comparando a estrutura das matrizes mostradas nas

Figuras (4.2g e 4.2j), pode-se verificar que as componentes não nulas da Figura (4.2j) estão

ma1s co11centradas em torno da diagonal (propriedade de banda da matriz de rigidez cor­

respond,,rite a uma numeração apropriada dos nós da malha). Finalmente, a Figura ( 4.2f)

mo~tra Ls numerações de nós e elementos obtidas com os grafos G e G•, respectivamente.

Note-se que as numerações nodais das Figuras ( 4.2e e 4.2f) são idênticas, visto que ambas

utibzam G. Entretanto, a numeração dos elementos da Figura (4.2e) (utilizando G") é

diferente da numeração da Figura (4.2f) (utilizando Gº).

4.5 Implementação Computacional

O ohjetho desta seção é descrever os principais aspectos relativos à implementação com­

putacional do procedimento descrito na Figura ( 4.1 ). O esquema numérico deve ser capaz

de tratar malhas genéricas e arbitrárias de elementos finitos. O principal interesse é a

dete1min1o..ção precisa do segundo aut.ovalor da matriz Laplaciana L e seu correspondente

auto1·etor

Duas versões do algoritmo SFR são propostas. Na primeira versão, a solução do

problema de autovalor (Passo 3 da Tabela 4.1) é obtida a partir do Método da Iteração de

Subebpaço (SIM) [18). Esta versão é denominada SFRsrM [123, 124). Na segunda versão,

utiliza-se<> Método da Seqüência de Sturm (Sturm) [18), sendo, portanto, denominada de

SFRs urm lll].

36

Page 54: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

4.5.1 Versão SFRs1M

O algoritmo SFR (Figura 4.1eTabela4.1) necessita do segundo autopar da matriz Lapla­

ciana L. Para este fim, uma versão especial do Método da Iteração de Subespaço foi

desenvolvida e seus principais aspectos são discutidos a seguir.

Considere-se a forma padrão do problema de autovalor

(L - >.I) z =O (4.14)

onde z ;ão vetores base. A solução numérica da Equação (4.14) é obtida utilizando-se o

Método da Iteração de Subespaço e iterações QR sobre o espaço reduzido [18). A partir da

experiência prática, recomenda-se [18] que a ordem do subespaço seja obtida utilizando-se

a seguin1,e expressão

q = min(2p, p+8, n), ( 4.15)

ond<' p é o número de autopares desejados e n é a ordem do espaço original. Neste trabalho,

n =0 IVI. que é, em geral, muito maior do que q. Para grafos conexos, o interesse está no

segundo autopar, logo, p = 2. Portanto, de acordo com a Equação (4.15), q = 4 é a

dimensãü que pode ser adotada para o espaço reduzido. O uso de q > 4 geralmente conduz

a rei;ultados ma.is precisos, porém mais caros computacionalmente.

P<.ra a solução do problema de autovalor no espaço reduzido, diversos métodos

podt'm ser utilizados. Neste trabalho. adota-se o método H-QR (Householder-QR) [18]. As

tramformações de Householder reduzem a matriz do problema para a forma de Hessenberg,

que llO caso de matrizes simétricas, corresponde a uma forma tri-diagonal. Para o método

QR, a ma~riz ortogonal Q é obtida através de sucessivos produtos entre matrizes de rotação

(matrizes de Jacobi), enquanto que a matriz R é uma matriz triangular superior. As

itera(:ões ~e processam até que a matriz do sistema seja diagonalizada (ver referência [18]).

Como a ordem do espaço reduzido é, em geral, pequena, (ver parágrafos anteriores), a etapa

correopondente às transformações de Householder é omitida para que se possa aumentar a

eficiêll eia computacional. Portanto, a solução do problema de autovalor no espaço reduzido

é obtida a'.ravés de iterações QR em matrizes de ordem q.

Ne~ta versão proposta para o Método da Iteração de Subespaço, a matriz Laplaciana

é transformada de acordo com

L <- L +a I, (4.16)

o nele o é uma constante ( shifting constant). Foi adotado o valor a = 1, de tal forma que

todos os autovalores da Equação (4.14) se tornem positivos (Àj 2'. 1.0; 1 $ j $ n).

37

Page 55: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Este procedimento não altera os autovetores da matriz Laplaciana e resolve o problema de

singularidade no cálculo dos autovetores correspondentes aos autovalores nulos.

Um passo crucial na solução iterativa do problema de autovalor é a estimativa da

precisâ.i dos resultados. A solução é obtida quando os valores convergem segundo uma dada

tolerân•:ia. O critério de convergência pode ser definido em termos de iterações consecutivas

[82j. B;;.the [18] mede a convergência através do erro relativo entre sucessivas aproximações

dos au 1, )Valores i>·~+l - >.}i

;.•.+i :::;: TO L, J

( 4.17)

onde o índice inferior indica o j-ésimo autovalor, o índice superior indica o número de

iteraçôe> e TOL é um valor de tolerância prescrito. A Equação (4.17) é denominada de

critério de convergência por autovalores. A convergência da solução pode também ser

medida .i partir da diferença absoluta entre valores sucessivos de autovetores normalizados

1::::: j::::: q ( 4.18)

onde e 0 = [l, ... , 1 V é um vetor unitário de dimensão n e os primeiros q autovetores são

consider<idos. A Equação (4.18) é denominada de critério de convergência por autovetores.

Para. ass·~gurar uma melhor precisão, cada autovetor é normalizado com relação ao valor

abs(lluto da maior componente. A verificação apresentada na Equação (4.18) é mais se­

vera do que a da Equação (4.17). Além disso, em termos computacionais, o critério da

Equação (4.17) é mais eficiente (rápido) do que o da Equação (4.18).

Üi; sistemas de equações lineares que surgem no Método da Iteração de Subespaço

sií.o resohidos utilizando-se uma versão modificada do método de Crout [57]. A ordenação

das componentes do segundo autovetor (y2) é feita utilizando-se o algoritmo quicksort [139].

Una visão geral do programa SFRs1M está apresentada nas Tabelas (4.5) e (4.6). Uma descrição dos aspectos computacionais do algoritmo SFRs1M é dada na Tabela (4.5).

Deve··Se a;;sumir a existência prévia de um FEG (G, e• ou G*) juntamente com sua estru­

r,ura de dtdos (Tabela 4.5).

A tela inicial do programa SFRs1M é apresentada na Tabela (4.6), mostrando as

op1;ôes disponíveis juntamente com os parâmetros default. O algoritmo de reordenação

apresentado nas Tabelas ( 4.5 e 4.6) pode ser facilmente implementado em um módulo

>epa.rndo de um pré-processador ou um gerador de malhas de elementos finitos [119, 120].

38

Page 56: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 4.5: Descrição Geral do Programa SFRsJM·

Equipamento Sun SparcStation 2

Linguagem C

Compilador gcc Version 2.4

Número de rotinas 33

Número de linhas ativas 974

Tamanho do código fonte 58923 Bytes

Tamanho do código objeto 77376 Bytes

Tamanho do código executável 90112 Bytes

Tabela 4.6: Parâmetros Default do Programa SFRsIM·

< 1 > Nome do arquivo de dados [.dat) ......................... : exemplo

< 2 > Formato do arquivo de dados .............................. : FEM

< 3 > Matriz do problema de autovalor ......................... : Laplaciana

<4> C • , • d A • nteno e convergenc1a ...................................... : Autovalor

< 5 > Ordem do subespaço ........................................... : 4

< 6 > Máximo # de iterações para o subespaço ............ : 125

< 7 > Máximo #de iterações para o QR ...................... : 125

< 8 > Tolerância para o subespaço ................................ : 10-6

< 9 > Tolerância para o QR .......................................... : 10-6

< 10 > Constante de Shifting ......................................... : 1.0

< 11 > Número de pontos extremos a serem exibidos ...... : 1

< 12 > Número de autopares a serem calculados ............. : 1

Autopar( es): 2

39

Page 57: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Alguns comentários sobre as opções mostradas na Tabela ( 4.6) são apresentados a

seguir. A opção < 2 > permite a escolha entre uma entrada de dados convencional de

elementos finitos (FEM) (ou seja, coordenadas e incidências), ou uma entrada de dados

p.articular usada por Everstine (48] em sua biblioteca de exemplos. A opção < 3 > assume

a matriz Laplaciana como default. No entanto, para solução do problema de autovalor,

o prog1 ama admite outras matrizes, como por exemplo, a matriz de adjacência. A opção

< ·1 > assume o critério de convergência por autovalores (ver Equação 4.17) como opção

difault. No entanto, o critério de convergência por autovetores também está disponível. A

opç.ão < 5 > assume q = 4, o que é uma estimativa razoável para a maioria dos grafos

co11exm. As opções < 6 > e< 7 > permitem especificar o número máximo de iterações

para. o método do subespaço e para o método QR (no espaço reduzido). Os valores default

para arrbos os casos é 125, baseado em experiência numérica. Para melhorar a precisão dos

resultados, estes valores podem ser substituídos por um número maior. As opções < 8 > e < 9 > permitem especificar a tolerância numérica para o método do subespaço e para o

método QR, respectivamente. O valor default escolhido (também baseado em experiência

numérica) foi de 10-6• A opção< 10 >foi discutida anteriormente na Equação (4.16). A

opção < 11 > permite escolher o número de pares de pontos extremos a serem exibidos, que

correspondem aos primeiros e últimos vértices reordenados. Finalmente, a opção < 12 >' permite ~acolher o número de autopares da matriz do sistema a serem calculados. No caso

da matriz Laplaciana, os autopares começam do segundo, uma vez que o primeiro autopar é

sempre conhecido (O, e). A menos que seja explicitado, os parâmetros default apresentados

na Tabela (4.6) serão utilizados em todos os exemplos deste trabalho.

4.5.2 Versão SFRsturm

Uma versão especial do Método da Seqüência de Sturm [18] foi desenvolvida para a solução

do problema de autovalor mostrado no Passo (3) da Tabela (4.1). Os principais passos

dessf método estão apresentados na Tabela ( 4. 7).

O intervalo inicial para o Método da Seqüência de Sturm pode ser obtido a partir

dos limitei superior e inferior de À2 , dados pelas Equações ( 4.9 e 4.10), ou seja

(4.19)

•)nde I';; siio os elementos da diagonal da matriz L. Para se obter uma maior eficiência

cornp11tacional, os sucessivos valores de À são calculados utilizando-se o Método da Seção

40

Page 58: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 4.7: Algoritmo da Seqüência de Sturm.

( 1) Escolher um intervalo [a, b] onde o segundo autovalor (.X2) deva se encontrar;

(2) Para um dado À E [a, b] decompor L - À] em C'DCT, onde C é uma matriz

triangular superior com todos os elementos da diagonal iguais a 1

e 'D é urna matriz diagonal.

(3) O número de elementos negativos em 'D é igual ao número de autovalores

menores do que >.. Então, se o número de elementos negativos em 'D

for menor do que 2, escolher um valor maior para .\; caso contrário,

escolher um valor menor para .\;

(4) Repetir os Passos (2 e 3) até que a diferença entre valores sucessivos de.\

seja menor do que certa tolerância (TOL);

(5) Calcular o autovetor correspondente (y2) usando Iterações Inversas com Shifting.

Áurea ( Golden Section Method) [159]. No Passo (5) da Tabela (4.7), o segundo autovetor

é computado através de iterações inversas [18]. Numericamente, o desempenho deste algo­

ritmo é sensível à escolha do vetor inicial. Este vetor nã.o deve ser ortogonal ao que está

sendo ciJculado [18). Neste trabalho, metade das componentes do vetor inicial sã.o geradas

randomicamente e, em seguida, repetidas com sinal contrário para a outra metade do vetor.

Uma alternativa, porém nã.o adotada aqui, consiste em se utilizar componentes unitárias,

com simâs apropriados. Se este vetor possuir um número ímpar de componentes, a última

componente é tomada como zero. Note-se que este vetor inicial é ortogonal ao primeiro

autovetor da matriz Laplaciana.

O critério de convergência é definido em termos do erro absoluto entre sucessivas

a.proxim<cções dos autovalores

1 >.'+1 - >.' 1 ~ TOL, ( 4.20)

ond1· os mdices superiores denotam o número de iterações e TOL é uma tolerância pres­

crita. O número de ciclos de iterações inversas para cálculo do segundo autovetor pode ser

especificado a priori. Uma implementação eficiente, robusta e extremamente simples do al­

goritmo ~-FRsturm foi desenvolvida. Uma visã.o geral do programa SFRsturm é apresentada

nas Tabelas (4.8 e 4.9).

41

Page 59: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 4.8: Descrição Geral do Programa SFRsturm·

Equipamento

Linguagem

Compilador

Número de rotinas

Número de linhas ativas

Tamanho do código fonte

Tamanho do código objeto

Tamanho do código executável

Sun SparcStation 2

e gcc Version 2.4

20

645

42800 Bytes

54448 Bytes

73728 Bytes

Tabela 4.9: Parâmetros Defau/t do Programa SFRsturm·

< 1 > Nome do arquivo de dados (.dat] ......................... : exemplo

< 2 > Formato do arquivo de dados .............................. : FEM

< 3 > Matriz do problema de autovalor ......................... : Laplaciana

< 4 > Autopar a ser calculado ....................................... : 2

< 5 > Número de ciclos de iterações inversas ................. : 3

< 6 > Tolerância para a Seqüência de Sturm .................. : 10-s

< 7 > Constante de Shifting .......................................... : 1.0

< 8 > Número de pseudo-vértices a serem exibidos ........ : 1

42

Page 60: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

4.6 Algoritmo SGPD

Nt>sta feção, um novo algoritmo para determinação de um vértice pseudo-periférico ou os

vértice; extremos de um pseudo-diâmetro de um grafo é proposto. O algoritmo é denomi­

nado SiJPD - Spectral Graph pseudoPeripheral and pseudoDiameter (125].

Jm vértice pseudo-periférico é um vértice aproximadamente periférico, isto é, uma

aproximação heurística de um vértice periférico. De maneira similar, um pseudo-diâmetro

é uma aproximação heurística de um diâmetro de um grafo. Observe que os vértices

de um ,JSeudo-diâmetro são necessariamente pseudo-periféricos, porém a recíproca não é

verdadeira.

Como mencionado anteriormente, a maioria dos algoritmos de reordenação, que se

baseiam na teoria de grafos, utiliza vértices pseudo-periféficos como vértices iniciais para

o proce~so de numeração (por exemplo, RCM (36, 62], GPS (66], GK (67, 93], Snay (151]

e Sloan [145, 146]). Como a localização de vértices periféricos é relativamente cara com­

putacioralmente [148, 23], diversos artigos foram escritos especificamente sobre algoritmos

eficiente; para determinação de tais vértices, por exemplo, George e Liu (61], Pachl [118]

e Grimei, Pierce e Simon [69]. Outros algoritmos de reordenação que utilizam o conceito

de vértices pseudo-periféricos sã.o o refined quotient tree, o one-way dissection e o nested

dis.1ection no pacote computacional de matrizes esparsas SPARSPAK [62].

Os principais passos do algoritmo SGPD estão apresentados na Tabela (4.10).

Taoela 4.10: Algoritmo Spectral Graph Pseudoperipheral and Pseudodiameter.

(1) Calcular o segundo autovetor (y2) da matriz laplaciana L;

(2) O vértice correspondente à maior (ou menor) componente de y 2

é um vértice pseudo-periférico. Os vértices correspondentes à menor e à maior

componentes de y2 são os extremos de um pseudo-diâmetro.

Un algoritmo similar para determinação de vértices pseudo-periféricos em grafos foi

proposto oor Grimes et ai. [69] e Kaveh (90]. No entanto, eles utilizaram uma variação da

matriz de adjacência (B) ao invés da matriz Laplaciana (L). A matriz B é definida como

B(G) = I(G) + A(G), ( 4.21)

43

Page 61: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

011de I é a matriz identidade3• Observe-se que os autovalores da matriz B são os mesmos

da ma1 riz A acrescidos da unidade, enquanto que os autovetores das matrizes A e B são

os mes nos. Grimes et ai. [69] e Kaveh [90] utilizaram o vértice correspondente à menor

cornpouente do autovetor dominante de B( G) como um vértice pseudo-periférico. Straf­

fin [15ti] utilizou o vértice correspondente à maior componente do autovetor dominante

de B( C:) para determinação do vértice mais acessível de uma rede de grafos, em uma in­

teressante aplicação da geografia. Observe-se que o conceito de vértice mais acessível é

op"sto a.o conceito de vértice pseudo-periférico. A Figura ( 4.3) mostra um contra-exemplo

apresentado por Grimes et ai. [69]. O algoritmo de Grimes et ai. [69] falha para este

4

3

Figura 4.3: Contra-exemplo proposto por Grimes et ai. (69].

exemplo, enquanto que o algoritmo SGPD fornece a solução ótima. Os vértices nos dois

cliques no lado esquerdo (v1 , v2, v3 ) e direito ( v8 , v9 , v10 ) da Figura ( 4.3) são periféricos.

O autovetor dominante Yn (n == 10) de B correspondente ao maior autovalor (>.n == 4.1 ~84) f' Yn( B) = ( 0.1073, 0.1073, 0.1073, 0.1211, 0.0569, 0.0569, 0.1211, 0.1073, 0.1073, 0.1073 jT. As menores componentes de Yn(B) correspondem aos vértices interiores v5 e v6 , que

são inconsistentes com o objetivo do algoritmo de determinação de vértices aproximada­

mente p·~riféricos. Com relação à Figura ( 4.3) e ao algoritmo SGPD da Tabela ( 4.10),

o autovetor y 2 de L correspondente à conectividade algébrica do grafo (>.2 == 0.1442) é

112( L l = [ 1.0000, 1.0000, 1.0000, 0.8558, 0.2997, -0.2997' -0.8558, -1.0000, -1.0000, -1.0000 V. As menores componentes de y 2(L) correspondem ao clique (v8 , v9, v10) no lado direito da

Figt1 ra ( 4 .3) e as maiores componentes de y2( L) correspondem ao clique (vi, v2 , v3 ) no lado

esquerdo da Figura ( 4.3). Neste caso, o algoritmo SGPD captura a essência da estrutura

do grafo·~ determina um vértice realmente periférico (por exemplo, v8 ), ou os extremos de

um diâmetro (por exemplo, v8 e vi).

3 Booth e Lipton [23] denominam eBta matriz (B) de matriz de adjacência aumentada. Ele6 também

justificam " uso desta matriz (B) ao invés da matriz de adjacência padrão (A).

44

Page 62: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Capítulo 5

Reordenação usando Simulated Annealing

Neste ,;apítulo, uma técnica de otimização para determinação do mínimo global de pro­

blt>mas do tipo NP-completo é apresentada. Introduzida por Kirkpatrick et ai. [94], esta

técnica é motivada pela analogia existente com o comportamento estatístico dos materiais

duraut•~ o processo de resfriamento (annealing) [137, 103].

O termo annealing é empregado no processo de fabricação de objetos constituídos,

em geul, de vidro ou metal. Este processo consiste em se aquecer um objeto a altas

temperaturas de maneira a relaxar as tensões, sem que haja mudança de estado físico, e

em seguida, resfriar o objeto lentamente, permitindo assim a formação de uma estrutura

cristalitia. Geralmente, um baixo nível de energia corresponde a um alto grau de ordenação

molecular. Temperaturas elevadas permitem diversos rearranjos moleculares. Para cada

temperntura, o sistema busca um equilíbrio termodinâmico. Dependendo da maneira como

estes objetos sã.o moldados, regiões de concentração de tensão sã.o formadas em resposta às

deforma.ções nos níveis atômicos. Estas regiões possuem níveis elevados de energia (regiões

ins'.áveis) e, portanto, podem facilitar a formação de fissuras [41]. Se a fase de resfriamento

for muito rápida, não haverá tempo suficiente para que o sistema busque um estado de

bai Ka ellergia.

A simulação computacional deste processo físico é denominada simulated annealing

(SA ). Suas principais etapas sã.o: < i > para uma dada temperatura (T), aplicar um

conjunto de trocas locais na configuração corrente da estrutura; < 2 > para cada troca,

verificar a variação de energia (dE) do sistema; < 3 > se a energia diminuir (dE < O), entào a troca é aceita; < 4 > caso contrário, (dE > O), a troca ainda poderá ser aceita

de acordo com o critério de Metropolis [114], isto é, a nova configuração será aceita com -dE

uma probabilidade e 11'1i", onde KB é a constante de Boltzmann. Para altas temperaturas,

esta prohabilidade é muito grande e, portanto, quase todas as trocas sã.o aceitas (mesmo

as q11e aumentam a energia do sistema). A medida em que a temperatura diminui, o valor -•E

de e KBT também diminui e apenas as trocas que reduzem a energia do sistema passam a

S•~r aceité,s.

45

Page 63: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

A idéia de se usar probabilidades para direcionar estas buscas estocásticas, tornam

o prowsso de SA uma técnica bastante poderosa na determinação do estado de energia

minima (ou quase-mínima) de um sistema, pois, diferentemente das técnicas de otimização

base.ad;tS em direções de máxima descida, a técnica de SA sempre permite que o sistema

adquin. energia suficiente para sair de prováveis mínimos locais. A Figura (5.1) ilustra a

i d,;ia d., se fugir de mínimos locais, conhecidas como métodos de uphil/ climbing.

<\ distribuição de Boltzmann, que se constitui em uma das leis básicas da mecânica

estatística, é a ligação lógica entre o processo físico de annealing e a teoria de otimização

[41 ]. Ela permite que um dado sistema exista com um nível de energia acima do seu mínimo,

de acordo com um certo critério de probabilidade [114, 103].

Função Objetivo (Energia)

/ Uphil/Move

Configurações

Figura 5.1: Mínimos Locais em uma Curva Típica de Energia.

ll ma vez obtida uma analogia com o processo de annealing, a técnica de SA pode ser

apfüada na minimização de qualquer grandeza. Esta é a idéia chave que permite utilizar

a técnica de SA como uma ferramenta geral no contexto de problemas de otimização. A

Tabela ( í.1) mostra os requisitos básicos para que um problema genérico de otimização

possa ser resolvido através da técnica de SA. Ainda nesta tabela é feita uma analogia com

o processo físico de annealing.

46

Page 64: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 5.1: Requisitos Básicos para Utilização da Técnica de SA.

REQUISITOS BÁSICOS ANALOGIA COM ANNEALING

Uma função para minimizar Energia (E)

Um parâmetro de controle Temperatura (T)

Uma maneira eficiente de

Uma técnica de perturbação trocar as posições dos átomos

e moléculas do material

Uma função para descrever

Uma estratégia de resfriamento como a temperatura diminue

ao longo da simulação

5.1 Algoritmo SA

A t.écnica de SA pertence a uma área de otimização conhecida como otimização combi­

natoória, que consiste em se arranjar um conjunto finito de objetos (domínio discreto) em

uma dada configuração considerada a melhor, segundo um critério pré-estabelecido. O

critério de Metropolis [114] é fundamental na técnica de SA pois define como um dado

sistema atinge o equilíbrio termodinâmico, para cada temperatura, durante a estratégia de

resfriamento [137].

Em função dos problemas de otimização combinatória serem do tipo NP-completo,

isto é, requerem um tempo exponencial para serem resolvidos a medida que o tamanho

destes p:oblemas aumenta, então, as técnicas heurísticas têm sido largamente empregadas.

No entanto, tais técnicas foram desenvolvidas para fornecerem uma solução aceitável, num

tempo ra.zoável. embora não haja qualquer garantia de que a solução obtida seja sequer

próxima do mínimo global do problema. Por esta razão, cresceu bastante o interesse pela

técnica de SA (137]. Os resultados obtidos por esta técnica são considerados suficientemente

próximos da solução ótima do problema. Eles também são utilizados como parâmetros de

a.valiaçâ<.• de novos algoritmos heurfrticos.

A técnica de SA tem sido estudada por diversos pesquisadores em diferentes áreas

de aplicação. Armstrong a utilizou para minimização de banda [10] e perfil [11] de matrizes

simétricas e esparsas. Singh e Deshpa.rd [143} utilizaram SA para partição de cargas no con­

texto de computação paralela. Lewis [103] desenvolveu uma nova estratégia utilizando SA

47

Page 65: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

para n·dução de perfil de matrizes esparsas. Ele comparou os seus resultados com diversas

técnicas de reordenação conhecidas na literatura, utilizando a biblioteca de exemplos da

Harwell-Boeing [45). Dubuc [42) apresentou uma implementação bastante eficiente desta

térn.ica para redução de banda de matrizes esparsas. Corana et ai. [34] generalizaram

as téCJJicas de SA para funções contínuas, testando seu algoritmo através das conhecidas

funçõef de Rosenbrock em 2, 4 e 10 dimensões.

~ Tabela (5.2) apresenta os principais passos do algoritmo de SA implementado

neste tJ"abalho. Os parâmetros iniciais do algoritmo (Passo 1 da Tabela 5.2) são: tempe­

ratura inicial (To); temperatura minima (Tm;n); número de ciclos necessários para que o

sistema atinja o equilfbrio termodinâmico (NumCycles); e o fator de redução de tempera­

tma (o , onde O S a S 1.

Tabela 5.2: Algoritmo Simulated Annealing.

(1) Inicializar parâmetros (T0 , Tmin· NumCycles e a);

{2) Fazer T =To;

(3) Para i = 1, 2, ... , NumCycles:

(4) Paraj=l,2,. . .,n:

(5) Gerar dois números inteiros randômicos (r and s)

tal que 1 S r, s ~ n;

(6) Trocar linhas e colunas r e s da matriz correspondente;

(7) Calcular a variação de energia* do sistema ( dE)

(8) Se dE < O, então aceitar a troca;

Caso contrário (dE >O):

Gerar um número randômico q (q E [O, l]};

Se q < e~, então aceitar a troca;

(9) Fim j (Passo 4);

(10) Fim i (Passo 3);

(11) Reduzir Temperatura, ou seja, T = a T;

(12) Se T > Tmin• então voltar para o Passo (3); caso contrário, Parar.

* Neste trabalho, a Energia é igual ao perfil (ou banda) das matrizes.

48

Page 66: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Capítulo 6

Exemplos Numéricos

Pa.ra verificação da eficiência dos algoritmos implementados neste trabalho, diversos exem­

plos são apresentados e seus resultados são discutidos. Este exemplos incluem: (1) avaliação

do desempenho dos algoritmos utilizando-se uma biblioteca padrão de exemplos;

(2) avaliação do desempenho dos algoritmos utilizando-se exemplos práticos de elementos

finitos; (3) comparação entre as versões SFRs1M e SFRsiurm; (4) estudo da eficiência com­

putacic·nal dos algoritmos, com relação ao tempo de CPU; (5) estratégia de pré-ordenação

para aumentar a eficiência do algoritmo SFRsturmi (6) exemplo de aplicação do algoritmo

SGPD; e (7) resultados preliminares com os algoritmos FWR e SA.

6.1 Biblioteca Padrão de Exemplos

Everstiue [48] apresentou uma coleção de 30 malhas de elementos finitos para testar algorit­

mos de reordenação nodal. As malhas variam em tamanho de 59 a 2680 nós. Uma descrição

completa destes exemplos, juntamente com os desenhos das malhas, podem ser encontradas

no artigo de Everstine [48]. Os exemplos utilizam uma estrutura de dados baseada em in­

formaçúes de adjacência nodal (grafo noda0. Como as informações geométricas destas

malhas não estão disponíveis, apenas os algoritmos topológicos e espectrais podem ser

avaliados nesta seção.

Os exemplos da biblioteca de Everstine [48] são separados em dois grupos. Primeiro,

os algoritmos são testados utilizando-se as malhas para as quais os grafos nodais G asso­

ciados siío conexos (.À2 =1- O.O), isto é, 24 exemplos. Em seguida, os outros 6 exemplos,

associados a grafos não conexos (.À2 = O.O), são considerados.

49

Page 67: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.1.1 Grafos Conexos

Grafos conexos representam uma importante classe de grafos, pois, para muitos casos

prátic(•S da análise por elementos finitos, a matriz de rigidez está associada a malhas

conexas.

A Tabela (6.1) mostra alguns dados iniciais e os resultados obtidos com os algoritmos

RCM, GPS, GK, MRCollins, Snay, Sloan, SFRs1M e SA utilizando-se os grafos conexos da

bibliott·ca de Everstine [48]. Os dados iniciais sã.o: o número de vértices do grafo (!V\),

o :1úm1ro de arestas do grafo (IE!), as densidades das matrizes (f) e as conectividades

algébricas (.\2 ). Os resultados apresentados na Tabela (6.1) sã.o as larguras de banda (B), os perfi,; (P), as máximas frentes ('W) e as r.m.s. frentes (W), respectivamente1. O critério

de com ergência por autovalores (gquaçã.o 4.17) foi adotado para o algoritmo espectral

(SFRs1M)·

Os resultados do algoritmo SA (Símulated Annealíng) apresentados na Tabela (6.1) foram obtidos por Armstrong [10, 11]. Para as larguras de banda (B), foi utilizado o

algoritmo SAb [10], o qual adota a estratégia NSAL (Node-Shuffiíng Algorithm Long) [10].

Parn os perfis (P), máximas frentes (W), e r.m.s. frentes (W) foi utilizado o algoritmo

SApw [11). De acordo com Arrnstrong, este algoritmo produz perfis e frentes mínimas ou

quase-m/nimas, porém é bastante lento para uso geral. Existem evidências empíricas de

que o alf:oritmo SApw sempre produz perfis que sã.o menores ou iguais aos obtidos com os

algoritmos heurísticos, tais como, RCM, GPS, GK, Snay e Sloan. Portanto, o algoritmo

SApw é bastante útil para comparação e avaliação do desempenho de novos algoritmos.

De acordo com a Tabela (6.1) fica evidente que os algoritmos GPS e MRCollins

produzem os melhores resultados para redução de largura de banda, enquanto os algoritmos

Sna). Sloan e SFRsrM produzem os melhores resultados de redução de perfil e frente. Em

geral. um esquema de numeração que é eficiente para redução de perfil não é eficiente para

redu•;ão de banda (e vice-versa) [119, 151).

1 As definições de f, B, P, W e W são dadas no apêndice B deste trabalho.

50

Page 68: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 6.1: Grafos Conmco~ da Bibliot.rca de Exemplos de Everntíne (Parte 1/5).

r J Par,;m,.trr. J fnicial li RCM j 1 1 1 j ···- ···-1

Exemplo GPSj GK J MRCollins J Snay j Sloan SFRs1M SAb & SApw l

1 1 1 '.?€ li " 1 ~ 1 1 1 ' ..

)V)= 59 R " :! u 9 30 19 11 7

IEI = 104 p 464 328 340 314 319 302 289 290 273

!(%) = 7.67 w 11 8 8 8 7 7 7 7 6

À2 = 0.0666 w 8.22 5.76 5.99 5.53 5.54 5.24 5.05 5.06 4.74

IVI = 66 B 45 4 4 4 5 4 5 4 4

IEI = 127 p 640 193 193 193 226 193 193 194 193

!(%) = 7.35 w 21 3 3 3 5 3 3 3 3

,\z = 0.0115 w 11.01 2.94 2.94 2.94 3.49 2.94 2.94 2.95 2.94

IV!= 72 B 13 8 7 11 8 18 14 13 7

IEI = 75 p 244 368 356 336 362 228 306 255 219

[(%) = 4.28 w 4 8 7 7 8 4 7 6 4

À2 = 0.0215 w 3.46 5.39 5.18 4.89 5.28 3.25 4.46 3.68 3.12

)VI= 87 B 64 21 18 21 17 26 22 20 12

IEI = 227 p 2336 699 713 680 773 534 578 604 515

!(%) = 7.15 w 43 13 13 12 13 10 11 11 9

À2 = 0.0969 w 29.38 8.57 8.74 8.23 9.22 6.45 7.05 7.31 6.16

!VI= 162 B 157 17 16 19 16 151 22 30 14

IEI = 510 p 2806 1641 1643 1566 1597 1413 1544 1564 1272

!(%) = 4.50 w 33 15 15 14 14 12 14 16 11

À2 = 0.0577 w 18.96 10.53 10.50 10.00 10.22 8.88 9.87 10.07 7.97

Page 69: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 6.1: Grafo~ Conexos da Biblioteca de Exemplos de Everstinc (Parte 2/5).

~ 1 1 P , 1 T .. , li R~'f ! -·ps· i [ Exemp o J aramctro j uuuaij t.,,. j b J GK j MRCollins J Snay , Sloa.n , SFRs1M ,_SAb& SApw 1

1 ' ' 1 !V! = 1Q3 J B l G3 li 55

1 4'(

1 rn 43 M rn ~ ~

IEI = 1650

/(%) = 9.38

À2 = 0.8147

IVI = 209

IEI = 767

/(%) = 3.99

À2 = 0.1211

!VI= 221

IEI = 704

/(%) = 3.34

À2 = 0.0256

IVI = 245

IEI = 608

!(%) = 2.43

À2 = 0.0354

!VI= 307

IEI = 1108

!(%) = 2.68

À2 = 0.1605

p

w w B

p

w w B

p

w w B

p

w w B

p

w w

7953 4997 5196 4928

62 40 44 41

43.84 27.18 28.30 26.99

185 37 38 51

9712 3978 4183 3625

71 31 33 28

50.32 19.99 21.19 18.20

188 17 19 21

10131 2225 2241 2101

77 16 17 15

50.39 10.57 10.65 9.96

116

4179

30

46 40

4417 4850

35 39

50

3803

27

18.48 19.59 21.49 16.61

64 43 42 51

8132 8650 8690 8166

35 39 42 40

27.36 29.51 29.66 27.91

4894 4850 4726

34 34 34

26.24 26.08 25.39

34 101 65

3923 3261 3181

31 27 28

19.80 16.44 16.02

17 31 34

2204 1977 2030

16 13 14

10.41 9.30 9.60

33

4075

26

89

2713

18

100

2885

20

17.74 11.77 12.70

35 191 81

8244 7330 7543

34 32 35

27.58 24.85 25.65

5149

39

27.62

53

3320

27

16.59

24

2028

14

9.53

94

2957

23

13.10

65

7742

32

25.91

4409

31

23.70

24

2693

20

13.33

14

1848

12

8.64

23

2161

13

9.23

37

6535

33

22.33

Page 70: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela ô. l: Grafos ron.-xos da Bib!iot.::-i::a de Exeinplos de Everstine (Parte 3i5).

! . -

1 P • ! I-' ' 1 ~ RCM I GPsj ! ! 1 '

SÁb& SAp~] Ex,.mplo -~ . ara.metro L mua1 • I l • Í GK L MRCollins l Snay j Sloan SFRsrM

1 1 1 '"' li • " 1 - 1 1 1 1 - --·- -- ---~

IV!= :!10 B """ 10 I:J HI 15 27 22 19 13

IEI = 1069 p 3006 3104 3035 2992 3035 2955 2975 3100 2940

!(%) = 2.55 w 16 14 14 13 14 12 13 13 12

À2 = 0.0164 w 9.85 10.23 9.96 9.80 9.96 9.67 9.74 10.14 9.62

!VI= 361 B 51 16 15 15 16 35 18 25 15

IEI = 1296 p 5445 5075 5060 5060 5060 5046 5066 5339 4992

!(%) = 2.27 w 25 16 15 15 ] .~ 16 15 17 18

À2 = 0.0358 w 15.38 14.28 14.23 14.23 14.23 14.20 14.25 15.02 14.08

IVI = 419 B 357 35 34 48 34 166 120 66 28

IEI = 1572 p 40145 8643 8686 8544 9300 7530 7164 8908 6512

!(%) = 2.03 w 172 33 33 32 32 28 25 40 21

À2 = 0.0362 w 107.07 21.36 21.54 21.18 23.07 18.60 17.58 22.83 15.96

IVI = 503 B 453 59 57 70 52 338 187 92 49

IEI = 2762 p 36417 16031 15024 15042 15550 20850 14434 14672 11958

!(%) = 2.38 w 126 53 50 50 45 87 45 46 31

À2 = 0.1001 w 78.60 34.37 32.09 32.22 32.23 46.96 30.69 30.98 24.93

IVI = 592 B 260 43 37 38 41 279 147 131 33

IEI = 2256 p 29397 11509 11262 11111 16267 13357 10279 10379 9417

!(%) = 1.46 w 88 38 34 36 37 40 40 36 28

À2 = 0.0201 w 55.18 20.82 20.33 20.05 28.10 24.51 18.97 18.69 16.65

Page 71: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabeb ti. 1 · Grafoo Cunexos da Bibiioteca. de Exemplos de Everstine (PartP 4/-5).

! 1 1 li 1 GPSj MRCollins ' S~a;T Sl~~n SFRs1M 1 SAb & SApw 1 L Exemplo j Parâmetro j Inicial ' RCM _j GK

1 1 1 li ' ' ' -·-- - - . -·-

t ir1 ""'.)8 B 201 30 26 26 26 182 -50 41 21 1 1-'

IEI = 2618 p 23871 8645 8223 8175 8302 12515 7604 7573 7123

!(%) = 1.04 w 61 28 25 25 26 47 24 22 21

À2 = 0.0025 w 37.95 12.92 12.07 12.01 12.26 20.19 10.95 10.77 10.05

IVI = 869 B 587 39 42 66 41 229 77 135 38

IEI = 3208 p 20397 16496 17314 16074 18734 14272 15238 15750 13207

!(%) = 0.96 w 41 ;:ig 42 40 38 25 38 ;39 27

À2 = 0.0078 w 25.02 20.91 22.11 20.35 23.05 17.14 19.47 20.03 15.63

IVI = 878 B 520 44 28 41 35 326 179 95 26

IEI = 3285 p 26933 21641 19955 19696 20943 19560 20707 20529 17835

/(%) = 0.97 w 40 38 26 25 35 36 40 32 30

À2 = 0.0147 w 31.92 25.42 22.90 22.60 24.29 23.17 24.43 23.87 20.98

IVI = 918 B 840 49 50 65 48 451 150 81 36

IEI = 3233 p 109273 21729 21296 20497 24209 40142 16741 18246 15949

/(%) = 0.88 w 194 42 40 39 42 84 30 33 29

À2 = 0.0085 w 131.14 24.92 24.32 23.39 27.88 48.64 18.93 20.53 18.02

IVI = 992 B 514 62 36 36 55 67 124 62 36

IEI = 7876 p 263298 36566 34068 34068 35368 33344 34292 35716 32528

/(%) = 1.70 w 514 60 36 36 52 38 54 42 46

À2 = 0.0590 w 302.00 38.17 34.66 34.66 36.31 34.10 35.34 36.33 33.51

Page 72: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 6.1: Grafos Conexos da Bíblioteca de Exemplos de F.ver~t.in<> (P~~t,. '5/S).

Exemplo Parâmetro Inicial RCM GPS GK MRCollins Snay Sloan SFRs1M SAb & SApw

!Vi= 1005 B 852 102 107 136 71 890 275 152 72

IEI = 3808 p 122075 41900 43105 40141 41980 78721 35200 34784 32513

/(%) = 0.85 w 228 91 97 89 67 128 65 54 46 ,

À2 = 0.0304 w 137.66 46.69 49.27 44.80 44.38 86.28 38.67 35.93 33.79

IVI = 1007 B 987 39 35 .').') 33 111 61 í3 30

21977 1 22794 IEI = 3784 p 26793 23606 22681 22465 24252 21450 19913

/(%) = 0.85 w 32 36 33 33 31 33 34 29 28

À2 = 0.0104 w 26.93 24.11 22.87 22.63 24.55 22.13 23.14 21.67 20.26

IVI = 1242 B 937 96 101 130 84 446 280 139 61

IEI = 4592 p 111430 50463 54651 52949 55122 42396 37145 43025 33098

/(%) =0.68 w 193 68 84 84 67 55 52 59 43

À2 = 0.0159 w 105.20 42.66 47.43 46.26 46.08 35.68 30.79 35.94 27.30

IVI = 2680 B 2500 71 70 87 68 1477 164 161 58

IEI = 11173 p 590543 105879 110685 100748 108405 120279 90492 92498 84900

/(%) = 0.35 w 362 61 70 59 61 70 56 51 44

À2 = 0.0046 w 234.42 40.61 42.83 38.56 41.44 46.48 34.47 35.20 32.27

Page 73: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.1.2 Grafos Não Conexos

l\esta seção, os exemplos da biblioteca de Everstine [48] associados a grafos não conexos

(,1 2 •• O.O), são considerados. Esta classe de grafos é importante, por exemplo, em

aplicaliies do tipo subestruturação no método dos elementos finitos [119] ou partição de

domín o para computação paralela [74, 128, 142]. O objetivo é avaliar o desempenho

do algnritmo SFRsJM utiliza.ndo-se grafos não conexos. Duas das três alterna.tivas pa.ra

tratamento de grafos não conexos, propostas neste trabalho, são investigadas. Elas são

denom nadas SFR(l) e SFR(2) e se referem às Tabelas (4.2 e 4.3), respectivamente.

A Tabela (6.2) mostra alguns dados iniciais e os resultados obtidos com os algoritmos

RCM, GPS, GK, MRCollins, Snay, Sloan, SFRsJM e SApw [11] sobre os exemplos da

bibliot€ca de Everstine [48], correspondentes a grafos não conexos. Os dados iniciais são:

o númuo de vértices do grafo (l\'I), o número de arestas do grafo (IEI), a densidade

da maViz (f) e o número de componentes conexos do grafo (#C.C.). Para simplificar

a apresentação dos resultados, apenas os perfis (P) são mostrados na Tabela (6.2). Com

relação ,J.O algoritmo SFRs1M e à segunda estratégia para tratamento de grafos não conexos

- SFR!2), as ordens adotadas para os espaços reduzidos (q), foram 15, 17, 11, 7, 42 e 11,

res1Jecti·1amente.

A seguir, são apresentados alguns comentá.rios com relação ao algoritmo SFR(2).

Parn o (aso onde IVI == 492, existem dois componentes conexos. Todas as componentes

negativas de y2 estão associadas ao primeiro componente conexo (249 vértices) e todas as

cornponfntes positivas estão associadas ao segundo componente conexo (243 vértices). Para

todos os exemplos na Tabela (6.2), exceto para o caso em que IVI = 198, os componentes

do grafo foram numerados sequencialmente. Para o exemplo em que IVI = 198, houve uma

pequena nistura de componentes ( 6 Yértices apenas). Todavia, se o critério de convergência

adota.do for o de autovetor, então os componentes são completamente separados. Além

disso, paia resolver este tipo de problema, as duas alternativas - SFR(l) e SFR(2) - podem

sE"r comb nadas de forma eficiente. Vale ressaltar que estas observações estão baseadas

esser:cialnente em resultados numéricos.

Embora a Tabela (6.2) represente um conjunto muito limitado de exemplos, o al­

goritmo SFRsrM mostrou que se comporta muito bem em rela.ção a grafos não conexos.

Entretant•>, maiores investigações numéricas precisam ser conduzidas.

56

Page 74: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 6.2: Perfis obtidos com os Exemplos Não Conexos da Biblioteca de Everstine.

Exemplo [(%) #C.C. Inicial RCM GPS GK MRCollins Snay i_ S!oan SFR(i)* SApw

IVI = 198 3.55 6 5817 1331 1346 1323 1363 1566 1299 1438 1287

IEI = 597 1454

IVI = 234 1.52 7 1999 1542 1500 1356 1480 1046 1262 1462 1016

IFI = 300 • • 1487

IVI = 346 2.69 4 9054 8733 10230 7989 8099 6756 7177 7722 6136

IEI = 1440 10873

IVI = 492 1.30 2 34282 6696 5807 5513 7021 3600 3447 3973 3304

IEI = 1332 3984

IVI = 512 1.34 32 6530 5145 5212 4982 5218 4859 4613 4936 4384

IEI = 1495 5139

IVI = 607 1.39 4 30615 15926 15749 14887 15938 21790 14639 15088 13065

IEI = 2262 15600

* i=l,2 - O primeiro resultado (i=l) se refere à Tabela (4.2). O segundo resultado (i=2) se refere à Tabela (4.3).

Page 75: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.2 Exemplos Práticos de Elementos Finitos

Nesta Heção, o desempenho dos algoritmos de reordenação apresentados no presente tra­

balho ~ão avaliados através de exemplos práticos de elementos finitos. Quatro exemplos

foram selecionados. As malhas de elementos finitos estão mostradas nas Figuras (6.1a6.4).

Est,es e.<emplos utilizam diversos tipos de elementos finitos, tais como, elementos de treliça

espacia de 2-nós (Domo Lattice e a Estação Espacial), elementos planos triangulares de

3-nós (T3) e quadrilaterais de 4-nós (Q4) (Painel de Fuselagem com Fratura) e elementos

sólidos de 8-nós (B8) (Lâmina de Turbina de Gás). A numeração inicial é totalmente ar­

bitrária A estrutura da Figura (6.1) foi estudada por Paulino [119] e Haber et ai. [71]. A

estrutura da Figura (6.2) foi estudada por Aubert [13]. A Figura (6.3) mostra a fuselagem

de um avião com uma fratura na parte central. Esta estrutura foi estudada por Potyondy

)29]. A estrutura da Figura (6.4) foi estudada por Wawrzynek [162] para simulação do

creocimt'nto de fissura devido à fadiga.

A Tabela (6.3) mostra alguns dados iniciais e os resultados obtidos com os algo­

ritmos RCM, GPS, GK, MRCollins, Snay, Sloau, CBBPR, HybWP e SFRsIM· Os dados

iniciais são: o número de vértices do grafo (!VI), o número de arestas do grafo (jEI) e a

cont>ctividade algébríca (A2). Os resultados apresentados na Tabela (6.3) são as larguras de

banda (B), os perfis (P), as máximas frentes (W) e as r.m.s. frentes (W), respectivamente.

A mesma tendência reportada na seção anterior foi obtida aqui. A Tabela (6.3)

moslra que os algoritmos GPS e MRCollins são os mais eficientes para a redução de banda,

enquanto que os algoritmos Snay, Sloan e SFRs1M são os mais eficientes para redução de

perfil e fr.~nte.

58

Page 76: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Figura 6.1: Domo Lattice (101 Nós e 280 Elementos).

Figura 6.2: Estação Espacial (304 Nós e 1428 Elementos).

59

Page 77: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

~: Lâmina de Turbina de Ü;í;; (1820 Nós e 944 Elementos).

Page 78: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 6.3: Exemplos Práticos de Elementos Finito•

Exemplo Parâmetro Inicial RCM GPS GK MRCollins Snay Sloan SFRs1M CBBPR HybWP

Figura. ( 6.1) B 100 23 19 25 22 55 33 24 36 26

IVI = 101 p 3539 1302 1296 1233 1834 1086 1214 1241 1210 1207

IEI = 280 w 63 21 19 18 22 14 20 19 18 19

À2 = 0.2554 w 38.84 13.58 13.48 12.77 19.12 11.07 12.63 12.86 12.52 12.49

Figura (6.2) B 303 49 37 48 31 166 151 53 131 95

48081 IVI = 304 p 28816 6696 5623 5503 5530 5041 7611 5401 5405

IEI = 1248 w 184 39 31 33 29 29 33 49 38 34

À2 = 0.0546 w 108.97 24.97 20.08 19.81 18.92 17.60 18.55 29.02 19.81 19.73

Figura ( 6.3) B 1259 103 99 132 82 980 192 183 382 168

IVI = 1262 p 504649 73633 71922 69324 68401 59888 61103 48512 51092 47321

IEI = 4264 w 682 88 84 89 79 74 78 54 75 65

À2 = 0.0175 w 447.61 61.02 58.87 57.02 55.43 50.65 50.82 39.46 42.00 38.87

Figura (6.4) B 1819 133 127 178 122 749 236 550 1782 145

IVI = 1820 p 1313225 134375 136906 130175 140729 190024 122697 250857 340300 127133

IEI = 15833 w 1305 122 122 118 120 181 94 265 267 103

À2 = 0.0843 w 817.29 77.10 78.75 74.79 80.29 113.01 70.25 147.72 202.61 72.36

Page 79: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.3 Comparação entre SFRsturm e SFRs1M

Nesta ~eçã.o, o desempenho do algoritmo SFRsturm é avaliado e comparado com o algo­

ritmo SFRsIM· Para este estudo, três exemplos representativos de elementos finitos sã.o

considerados. As malhas de elementos finitos estão mostradas nas Figuras (6.5, 6.6 e

6. 7 ). E;tes exemplos utilizam diferentes tipos de elementos finitos, tais como, elementos

de treli1;a espacial de 2-nós (Estrutura Offshore), elementos planos triangulares de 3-nós

(T:!) e quadrilaterais de 4-nós (Q4) (Ferramenta Mecânica) e elementos sólidos de 8-nós

(B8) (Disco de Turbina com Jfl Lâminas [79]). Para a solução do problema de autovalor,

foi adoLtda a tolerância TOL =:: 10-5 na Equação (4.20) e 3 ciclos de iteração inversa para

cálculo do autovetor correspondente.

Üs resultados estão apresentados na Tabela (6.4). Esta tabela mostra que ambas as

implementações dos algoritmos SFRsturm e SFRs1M produzem bons resultados em termos

de B, P W, W e tempo de CPU (t).

Figura 6.5: Ferramenta Mecânica (471 Nós e 592 Elementos).

62

Page 80: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Figura 6.6: Estrutura Offshore (492 Nós e 1437 Elementos).

Fi~ura 6.7: Disco de Turbina com 12 Lâminas (1152 Nós e 504 Elementos).

63

Page 81: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 6.4: SFRsturm X SFRsrM·

Exemplo 1 Parâmetro li SFRsJM 1 SFRsturm 1

B 23 23

Ferramenta Mecânica p 4674 4674

Figura (6.5) w 15 15

w 10.13 10.13

t* 593.02 820.29

B 75 84

Estrutura Offshore p 4062 4105

Figura ( 6.6) w 17 17

w 8.91 9.05

t* 639.62 418.20

B 102 78

Disco de Turbina com 12 Lânlinas p 35148 35373

Figura (6.7) w 48 47

w 31.60 31.76

l t* 1629.75 1747.42

* Tempo de CPU (em segundos) usando uma SUN Sparc Station 2.

64

Page 82: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.4 Análise de Tempo de Execução

Nesta seção, o desempenho do algoritmo espectral SFRsturm é comparado com os algoritmos

clássin.s (RCM, GPS, GK, MRCollins, Snay, Sloan, CBBPR e HybWP) em termos de

tempo de CPl1 (Central Processing Unit). Este tempo foi obtido utilizando-se uma SUN

SparcS:ation 2. Para o presente estudo, três exemplos práticos de elementos finitos foram

utilizacos. As Figuras (6.8, 6.9 e 6.10) ilustram a representação geométrica do grafo nodal

(G), dt:al (G') e de comunicação (Gº), respectivamente, associados à malha de elementos

finitos da Figura (6.5). Para a solução do problema de autovalor, foi adotada a tolerância

TOL = 10-5 na Equação (4.20) e 3 ciclos de iteração inversa para cálculo do autovetor

corresp.mdente.

A Tabela (6.5) mostra alguns dados iniciais e os resultados obtidos com os algoritmos

RCM, GPS, GK, MRCollins, Snay, Sloan, CBBPR, HybWP e SFRsturm· Os dados iniciais

são: o tipo de grafo associado (G, G'* ou G•), o número de vértices do grafo (IVI), o número

de arestas do grafo (\EI) e a conectividade algébrica (.\.2). Os resultados apresentados na

Tabelai 6.5) são as larguras de banda (B), os perfis (P), as máximas frentes (W), as r.m.s.

frentes iW) e o tempo de CPU (t), respectivamente.

Da Tabela (6.5) pode-se concluir que, embora o algoritmo SFRsturm seja bem efi­

ciente n.1 redução de perfil, ele é bastante caro computacionalmente, quando comparado

com os demais. Por esta razão, estudos mais aprofundados estão sendo conduzidos com o

objetivo de melhorar a eficiência computacional dos algoritmos espectrais. Por exemplo,

Rajendra.n e Narasímhan apresentaram recentemente uma técnica para acelerar o Método

da [tera1;ão de Subespaço [131], que consiste na utilização de informações das iterações

ant.t>rions para se criar um novo subespaço com um maior número de vetores linearmente

indt·pencentes. A combinação desta técnica com algoritmos mais eficientes de solução de

sistt>mas de equações lineares, pode melhorar substancialmente o desempenho do algoritmo

SFRsJM· Com relação ao algoritmo SFRsturm, estratégias de pré-ordenação podem ser

utilizada,; para acelerar o Método da. Seqüência de Sturm. Este será o objeto de estudo da.

próxima >eção.

65

Page 83: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Figura 6.8: Ferramenta Mecânica (Grafo Nodal).

~. ,-<l'..Y~ ~~ ~ ~ ~t T ~ ~ t-K.,'-< >-).., ")..-!, rTT77 >-<r l-''>-'r-» ·7 ITTTTT7lt ~ ~ "( >-- r >-)_)-:o:~- ~ ·-->~ ~h:>--

Figura 6.9: Ferramenta Mecânica (Grafo Dual).

Figura 6.10: Ferramenta Mecânica (Grafo de Comunicação).

66

Page 84: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 6.5: Desempenho dos Algoritmos <Com Relação ao Temno OP E>rPrm;i>n

Exemplo Parâmetro Inicial RCM GPS GK MRCollins Snay Sloan CBBPR HybWP SFRsturm

Grafo: G B 447 23 17 26 18 77 41 23 53 23

Figura (6.8) p 81251 5092 4803 4773 4994 4448 4614 4904 4794 4674

IVI = 471 w 286 23 16 17 17 14 20 16 17 15

IEI = 1447 w 193.27 11.38 10.44 10.39 10.90 9.63 10.13 10.68 10.42 10.13

À2 = 0.0061 t* - 0.27 0.38 0.42 0.8.5 0.6.5 0.27 0.27 0.05 820.29 --·---··--

Grafo: G* B 578 1.5 18 27 14 234 56 22 104 25

Figura (6.9) p 105504 5161 5342 5279 5333 5334 4911 5189 5704 4758

IVI = 592 w 290 14 18 16 14 13 16 15 18 14

IEI = 905 w 198.12 9.00 9.54 9.37 9.26 9.30 8.65 9.08 10.15 8.28

À2 = 0.0012 t* - 0.33 0.50 0.57 1.10 0.70 0.33 0.36 0.05 888.49

Grafo: a· B 591 36 30 41 29 223 79 39 90 38

Figura (6.10) p 141189 9282 8950 8922 10335 12829 8313 9890 9152 8713

1v1=592 w 415 36 28 29 28 53 32 35 34 28

IEI = 2728 w 269.18 17.40 16.43 16.41 18.65 24.65 15.26 18.51 16.86 15.90

À2 = 0.0040 t* - 0.47 0.58 0.65 3.05 0.97 0.45 0.37 0.07 2175.77

* Tempo de CPU (em segundos} usando uma SUN Sparc Station 2.

Page 85: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.5 Estratégia de Pré-ordenação

Numericamente, a eficiência do algoritmo SFR é bastante sensível à ordenação inicial dos

vértice., do grafo. Paulino et ai. [123, 124] mostraram que o emprego de urna pré-ordenação

pode melhorar consideravelmente o desempenho dos algoritmos espectrais, em termos de

tempo de CPU. Esta idéia consiste em se pré-ordenar de forma eficiente os vértices do

grafo, é.ntes da execução do algoritmo espectral.

Seja t1 o tempo de CPU gasto no processo de reordenação original, isto é, através

da aplicação direta do algoritmo SFRsturm. Seja f2 o tempo de CPU gasto no processo

de pré-•)rdenação dos vértices do grafo. Finalmente, seja f3 o tempo de CPU gasto no

processo de reordenação utilizando o algoritmo SFRsturm, a partir do grafo pré-ordenado.

Teoricamente, espera-se que

(6.1)

Ne:;te ti abalho, o algoritmo RCM [36, 60] foi utilizado no processo de pré-ordenação, por

ser um ;Jgoritmo eficiente e bastante rápido.

A Tabela (6.6) mostra os tempos de CPU obtidos com o algoritmo SFRsturm sem

(t1) e cem (t2 + t3) a pré-ordenação pelo algoritmo RCM. Observe-se que, para os exem­

plos mo:;trados na Tabela (6.6), foram obtidas reduções no tempo de CPU de até 95%

(com relação ao tempo original do algoritmo). Esta redução não havia sido obtida com a

ven;ão SFRsJM do algoritmo espectral [124]. Além disso, uma comparação dos resultados

(t 1 ) e (t~ + t3 ) na Tabela (6.6), mostra que a inequação apresenta.da na expressão (6.1) é

plenameate satisfeita.

Tabela 6.6: Estratégia de Pré-ordenação. e-­e·_ '

Exemplo

Ferramenta. Mecânica

Estrutura Offshore

Q>isco <le Turbina com 12 Lâminas -----

t* 1

820.29

418.20

1747.42

t* 2 t* 3 t2 + t3

0.29 4.52 4.81

0.25 5.97 6.22

1.30 79.63 80.93

.Tempo de CPU (em segundos) usando uma SUN Sparc Station 2.

68

(t2+t,) X 100% t,

0.59

1.49

4.63

Page 86: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.6 Aplicação do Algoritmo SGPD

Nesta ieção, os vértices obtidos pelo algoritmo SGPD são utilizados como vértices iniciais

nos algoritmos RCM (Tabela 3.2), GPS (Tabela 3.3) e GK (Tabela 3.4). Estes algoritmos

foram Helecionados para comparação por serem bastante conhecidos e bem estabelecidos na

literatua técnica (ver, por exemplo, referências [48, 134, 11, 9, 145, 119, 146, 95)).

A. versão original do algoritmo RCM utiliza o algoritmo de G&L [61] para deter­

minação do vértice pseudo-periférico. As versões originais dos algoritmos GPS e GK uti­

lizam o algoritmo de Gibbs et ai. [66] para determinação do pseudo-diâmetro. Nos exemplos

aqui apresentados, o primeiro passo dos algoritmos RCM, GPS e GK foi substituído pelo

alg:oritno SGPD. Note-se que, a combinação do algoritmo SGPD com os algoritmos RCM, GPS e GK dá origem a novas versões destes últimos algoritmos, as quais são denominadas

RCMscPD, GPSsaPD e GKsaPD, respectivamente. Para o presente estudo, são considera­

dm• os (Xemplos da biblioteca de Everstine [48], correspondentes aos grafos conexos.

A Tabela {6.7) mostra o número de vértices do grafo (jVI) e os valores normalizados

de B, P e W para os algoritmos RCM, GPS e GK. Os valores normalizados consistem

na razão entre os resultados obtidos com estes algoritmos combinados com o SGPD e os

resultados obtidos com as versões originais destes algoritmos.

übserve-se que, para todas as colunas da Tabela (6.7), o número de vezes em que

os algoritmos de reordenação combinados com o SGPD são melhores {razão < 1.0) para

a redução de B, P e W, é maior do que o número de vezes em que os algoritmos origi­

nais são melhores (razão > 1.0). Os resultados quantitativos globais estão mostrados na

Tabela (6. 7), onde G (Ganhar) significa o número de vezes em que os algoritmos de reor­

denação combinados com o SGPD ganham dos algoritmos originais, e P (Perder) significa

o contrário. Obviamente, esta comparação exclui os empates (razão = 1.0).

D·~ acordo com a Tabela (6.7), as seguintes conclusões podem ser obtidas. Para o

algoritmr• RCM, o algoritmo SGPD é mais eficiente do que o algoritmo G&L [61]. Com

relação aos algoritmos GPS e GK, o algoritmo SGPD é um pouco melhor do que o algoritmo

de Gibbs et ai. [66].

69

Page 87: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Tabela 6.7: Aplicação do Algoritmo SGPD.

li 2 3 7 li 8 9 10

·hlema RCMs.aec GPSs.ae.c GKs.aeo RCM GPS GK

VI B p ii,' B p w B p w 59 1.000 1.000 1.000 0.889 0.909 0.894 0.833 0.917 0.901

56 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000

72 1.125 1.073 1.076 1.286 1.127 1.151 1.000 1.217 1.247

:l7 1.158 0.984 0.987 0.850 0.952 0.942 0.810 0.829 0.809

162 1.059 0.982 0.985 1.071 0.993 1.002 1.000 1.004 1.012

113 1.140 0.965 0.957 1.302 1.023 1.027 1.196 1.060 1.065

21)9 1.000 1.002 1.002 0.767 0.772 0.752 0.939 0.767 0.757

2:!1 0.800 0.914 0.899 0.895 0.964 0.959 0.857 0.943 0.938

2.,,5 0.793 0.800 0.765 1.000 1.000 1.000 1.000 1.000 1.000

3(17 0.933 0.938 0.921 1.023 0.966 0.947 1.125 0.946 0.935

310 0.937 0.966 0.961 0.933 0.991 0.990 0.727 0.993 0.993

361 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000

419 1.147 0.984 0.993 1.206 0.981 0.992 1.143 1.002 1.012

503 1.000 1.000 1.000 1.000 1.000 1.000 0.986 0.971 0.966

5n 1.000 1.000 1.000 1.000 0.997 0.993 1.000 1.000 1.000

75;; 1.000 0.984 0.985 1.000 0.999 0.999 1.000 1.000 1.000

86'.l 0.954 0.880 0.896 1.000 1.000 1.000 1.000 1.000 1.000

87t 0.808 0.983 0.974 1.000 0.994 0.994 1.000 1.000 1.000

91t l .069 0.995 1.009 1.180 1.027 1.047 1.185 1.075 1.106

992 0.970 0.978 0.974 1.000 1.000 1.000 1.000 1.000 1.000

100.'1 0.981 0.984 0.962 0.963 1.006 1.001 0.824 0.971 0.946

100'' 1.000 1.000 1.000 0.914 0.996 0.993 0.800 1.003 1.002

124~ 1.000 1.000 1.000 0.970 0.963 0.961 0.815 0.882 0.875

2 68( 1.000 1.004 l.OO:i 1.014 1.016 1.017 0.989 1.048 1.053

édi<t 0.995 0.976 0.973 1.011 0.987 0.986 0.968 0.985 0.984 -· G/P 8/6 14/3 13/4 8/7 13/5 12/6 10/4 9/7 9/7 -·

70

Page 88: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6. 7 Algoritmo FWR: Resultados Preliminares

Nesta seção, alguns resultados preliminares obtidos com o algoritmo FWR são apresentados.

Para ·~ste estudo, quatro exemplos práticos de elementos finitos são considerados. As

malhas de elementos finitos utilizadas estão mostradas na Figura (6.11 ). Estas malhas

foram estudadas por Bykat [27], Everstine [48], Razzaque [132] e Pina [127].

'\\T/: // --/:t7~---JL

// H

r--i

l/ \ H

,,

(a) (b)

(e) (d)

Figura 6.11: Malhas de Elementos Finitos para Avaliação do Algoritmo FWR.

71

Page 89: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

A Tabela (6.8) mostra alguns dados iniciais e os resultados obtidos com o algoritmo

F WR. Os dados iniciais sã.o: o número de nós da malha, o número de elementos da malha, o

tipo d•~ elemento finito usado em cada exemplo e as larguras de frente obtidas nas referências

originttis.

A Tabela (6.8) mostra que o algoritmo FWR é eficiente para redução da largura

di· freute. Entretanto, maiores investigações estão sendo conduzidas com o objetivo de

melho1ar o desempenho deste algoritmo [112).

Tabela 6.8: Larguras de Frente Obtidas com o Algoritmo FWR.

í Exemplo Referência 1 Original 1 FWR 1

Figura (6.lla)

36 Nós Pina [127) 7 7

48 Elementos (T:J)

Figura (6.llb)

157 Nós Everstine [48) 33 12

116 Elementos (Q4) Pina [127) 11

Figura (6.llc)

73 Nós Razzaque [132] 23 22

24 Elementos (T6 & Q8) Pina [127] 22

Figura (6.lld)

140 Nós Bykat [27] 20 13

202 Elementos (T3) Pina [127] 13

72

Page 90: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

6.8 Algoritmo SA: Resultados Preliminares

Nesta seçã.o, sã.o apresentados alguns resultados preliminares obtidos com o algoritmo SA, a

partir da implementaçã.o feita pelo autor deste trabalho. Para este estudo, quatro exemplos

retirados da biblioteca de Everstine [48) sã.o utilizados. Os resultados sã.o comparados com

os oblidos pelo algoritmo SApw, proposto por Armstrong [11]. Os parâmetros iniciais

rt·queridos pelo algoritmo SA {Passo 1 da Tabela 5.2) são: To = 10 IVI; Tmin = 0.1;

ll'umCycles = 1000; e a= 0.9.

A Tabela (6.9) mostra o número de vértices do grafo associado a cada exemplo e os

pl'rfis ( P), máximas frentes (W) e r.m.s. frentes {W}, obtidos com o algoritmo SApw [11)

e com •l algoritmo SA, proposto neste trabalho.

Tabela 6.9: Resultados Preliminares obtidos com o Algoritmo SA.

Exemplo Parâmetro Inicial SApw [11) SA (proposto)

p 464 273 273

IVI = 59 w 11 6 6

w 8.22 4.74 4.74

p 640 193 193

IVI = 66 w 21 3 3

w 11.01 2.94 2.94

p 244 219 223

IVI = 72 w 4 4 4

w 3.46 3.12 3.18

p 2336 515 515

IVI = 87 w 43 9 9

w 29.38 6.16 6.16

De acordo com a Tabela (6.9} pode-se concluir que a implementaçã.o proposta para o

algoritmo SA produz perfis e frentes que sã.o comparáveis às obtidas pelo algoritmo SApw,

proposto por Armstrong [11). No entanto, o autor ressalta que estudos mais aprofundados

sobn· estt algoritmo devem ser realizados, principalmente no que diz respeito à escolha

adequa.da dos parâmetros iniciais (ver Tabela 5.2) e ao tempo de execuçã.o do algoritmo.

73

Page 91: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Capítulo 7

Conclusões e Sugestões

E8te trabalho apresentou um estudo sobre técnicas de reordenação de nós e elementos

df' malhas de elementos finitos, para minimização de banda, perfil e frente de matrizes

simétricas e esparsas. Os principais algoritmos da literatura técnica foram discutidos e

implementados. Novos algoritmos foram propostos e testados através de diversos exem­

plos m; méricos. A seguir, apresentam-se as principais contribuições desta tese e algumas

sugestões para trabalhos futuros.

7 .1 Principais Contribuições

• Um enfoque unificado relacionando malhas de elementos finitos, grafos associados e

matrizes correspondentes foi proposto. A permutação de linhas e colunas em uma

matriz, corresponde a uma reordenação dos vértices do grafo associado ou a urna

rnJrdenação dos nós ou elementos da malha.

• Dt~ acordo com o tipo de informação usada no processo de reordenação, os algoritmos

foram classificados em topológicos, geométricos, híbridos e espectrais. Dependendo do

tir·o de redução obtida, os algoritmos foram também classificados em banda, perfil e

frente. A Tabela (7.1) apresenta uma classificação geral dos algoritmos de reordenação

ap'.esentados neste trabalho.

Os algoritmos topológicos mais C'.Onhecidos na literatura técnica, tais como, RCM

[36, 62], GPS [66], GK [67, 93], Collins [32], Snay [151] e Sloan [146] foram inves­

tigados e implementados em um contexto unificado. O algoritmo GPS se mostrou

o nais eficiente para redução da largura de banda - conclusão que está de acordo

con a referência [17}. O algoritmo de Collins foi estendido para a consideração de

componentes não conexos nos grafos e sua numeração final foi invertida para uma

posterior redução do perfil. O algoritmo de Sloan se mostrou o mais eficiente para

redução de perfil e frente.

74

Page 92: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

• Um algoritmo geométrico bastante intuitivo, denominado CBBPR, foi desenvolvido.

Apesar de muito simples, o algoritmo CBBPR se mostrou eficiente, produzindo boas

ordenações especialmente para malhas regulares.

• Um algoritmo híbrido, denominado HybWP, também foi proposto. Ele utiliza in­

formações geométricas e topológicas para produzir reordenações de nós e elementos

em um processo integrado. O algoritmo não depende da escolha de um vértice pseudo­

:>eriférico e é razoavelmente eficiente para redução de perfil e frente.

• ;:<;ste trabalho apresentou uma aplicação bastante interessante no sentido de que

uma quantidade algébrica, tal como um autovetor de um FEG, pode ser utilizada

rnm sucesso no processo de reordenação de nós e elementos de uma malha genérica

<'e elementos finitos. O algoritmo espectral proposto, denominado SFR, apresenta

< aracterísticas bem diferentes dos demais algoritmos conhecidos na literatura. É re-

1.itivamente simples e pode ser aplicado para a redução de perfil e frente de matrizes

s métricas e esparsas.

As principais vantagens do algoritmo SFR são: (i) apresenta uma base matemática

s<ilida; (ii) as tarefas de reordenação de nós e elementos são completamente inde­

p·~ndentes; (iii) utiliza informações globais do grafo; (iv) não utiliza o conceito de

V•~rtices pseudo-periféricos; (v) não utiliza o conceito de estruturas de níveis de um

FEG; (vi) apresenta uma implementação simples. A base matemática do algoritmo

SFR está fundamentada na álgebra linear, em constraste com os algoritmos puramente

bturísticos, que apresentam um menor embasamento teórico. A maior desvantagem

de algoritmo SFR, quando comparado com os demais algoritmos, está no tempo de

CPU requerido para solução do problema de autovalor, isto é, para o cálculo do

sei\undo autopar da matriz Laplaciana.

Dlias versões do algoritmo SFR foram implementadas neste trabalho. A primeira

versão (SFRs1M) utiliza o Método da Iteração de Subespaço [18] para solução do

problema de autovalor, enquanto que a segunda versão (SFRsturm) se baseia no

Mttodo da Seqüência de Sturm [18]. Diversos testes computacionais envolvendo

urna grande variedade de problemas foram apresentados para validação de ambas

as mplementações.

A versão SFRsturm, tal como implementada neste trabalho, se mostrou numerica­

mente sensível à ordenação inicial dos vértices do grafo. Portanto, uma estratégia

de pré-ordenação foi apresentada, levando a reduções da ordem de 95% no tempo de

execução do algoritmo, com relação à versão original.

75

Page 93: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

• Um novo algoritmo espectral, denominado SGPD, foi proposto para determinação

de vértices pseudo-periféricos ou vértices extremos de pseudo-diâmetros em grafos.

Baseado em estudos numéricos comparativos, o algoritmo SGPD se mostrou mais

eficiente do que os algoritmos de Grimes et ai. [69], George e Liu (G&L) [61] e Gibbs

et al. (GPSD) [66].

• Uma técnica de otimização conhecida como simulated annealing, para determinação

do mínimo global de problemas do tipo NP-completo, foi apresentada neste trabalho.

Os resultados obtidos por esta técnica são considerados suficientemente próximos

da solução ótima do problema. Uma implementação do algoritmo SA também foi

proposta neste trabalho.

Tabela 7.1: Classificação dos Algoritmos de Reordenação.

Algoritmo de

Reordenação

RCM (36, 62]

GPS [66]

GK [67, 93]

MRCollins [32, 112]

Snay [151]

Sloan [146]

CBBPR [112]

HybWP [112]

SFR [123, 124]

FWR [112]

Geo == Geométrica

Híb == Híbrida

B ==Banda

Tipo de Informação Tipo de Redução

Geo Top Híb

X

X

X

X

X

X

X

X

X

76

Esp B P/F

X X

X

X

X X

X

X

X X

X

X X

X

Top == Topológica

Esp == Espectral

P/F ==Perfil/Frente

Page 94: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

7 .2 Sugestões para Trabalhos Futuros

• Implementar um algoritmo indireto para reordenação de elementos. Baseado nesta

implementação, realizar um estudo comparativo sobre qual o tipo de redução mais

~equada no processo indireto, com relação à etapa de reordenação nodal (isto é,

·eduçã.o de banda ou perfil). Este novo algoritmo poderá também ser utilizado na

.waliação de desempenho do algoritmo FWR.

• Melhorar a implementação atual do algoritmo FWR. Realizar estudos numéricos mais

é.profundados para uma melhor avaliação do desempenho deste algoritmo.

• Melhorar a implementação do algoritmo de simulated annealing através de uma es­

colha mais apropriada do conjunto de parâmetros requeridos por este algoritmo (ver

f'asso 1 da Tabela 5.2). Uma maneira mais eficiente de calcular a variação de energia

do sistema, também deve ser considerada.

• Extensão dos algoritmos apresentados neste trabalho, no contexto de partição de

d•)mínio de malhas de elementos finitos para computação paralela (para maiores in­

formações, ver, por exemplo, os trabalhos de Hsieh et a/. [81]).

• Melhorar o desempenho dos algoritmos espectrais em termos da eficiência computa­

cional através de: ( i) modificação do algoritmo de solução do problema de auto­

valor. Como a parte dominante do algoritmo espectral diz respeito à determinação

do segundo autopar da matriz Laplacíana, propõem-se que novos algoritmos se­

jam avaliados. O algoritmo de Lanczos é um forte candidado a ser investigado.

Este algoritmo é utilizado por diversos pesquisadores (ver, por exemplo, referências

[117, 140, 142, 80, 81, 17, 73, 74, 75]); (ii) vetorizaçã.o/paralelizaçã.o do código, isto

é, .i parte numérica mais intensa do algoritmo espectral envolve aritmética de ponto

flu:.uante (em contraste com os demais algoritmos de reordenação que se baseiam em

ari'.mética de números inteiros}. Por esta razão, os algoritmos espectrais sã.o bastante

adtquados para computadores equipados com processamento vetorial ou paralelo.

77

Page 95: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Apêndice A

Conceitos Básicos da Teoria de Grafos

• Um grafo G = (V, E) consiste em um conjunto finito e não vazio de vértices

V= 'v1,v2,. .. ,vn} e de arestas E= {e1,e2, ... ,em}, que são pares não ordenados de

vértict·s distintos de V.

• Vértices sã.o os elementos do conjunto V. !VI é a cardinalidade do conjunto V, isto é, o número total de elementos do conjunto V.

• Arestas sã.o os elementos do conjunto E. E= {{v;,vj} 1 v; E V,vj E V,i =F j}. IEI é a cardinalidade do conjunto E.

• G é um grafo dirigido, se os elementos de E são pares ordenados de vértices, isto

é, cada aresta {v;,vj} é um segmento ordenado de v; a Vj.

• G é um grafo não dirigido, se os elementos de E sã.o pares não ordenados de

vé1tices.

• Uma rotulação de G é uma função f: V(G) -+ D, onde D é um conjunto de

rótulos. Um grafo rotulado por D é denominado Gº = (Vº, Eº). Os vértices podem ser

refrridm através de seus rótulos no grafo rotulado.

• O grafo associado a uma matriz A de ordem n x n, simétrica e com os elementos

da diagonal não nulos é o grafo não dirigido rotulado com n vértices GA = (VA, EA) tal

que {v;, ''i} E EA # ª•i = ªii #O, i -f j. O termo v; denota o vértice de VA com rótulo i.

• Vértices adjacentes em G são quaisquer dois vértices que definam uma aresta,

isto é, v; e Vj são adjacentes se { v;, v;} E E.

• Se W é um subconjunto de V (W C V), o conjunto de adjacência de W, deno­

minado Adj (W), é o conjunto de vértices que são adjacentes aos vértices de W, mas que

nii.o pertencem a W: Adj (W) = {v; E (V - W), WC V 1 {v;, v;} E E, v; E W}. Se W for

78

Page 96: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

<omp·)Sto por um único vértice v, o conjunto de adjacência de W será dado por Adj (v),

aoimésdeAdj({v}),istoé,seW = {v},Adj(W) =Adj(v).

• O grau de um conjunto W é definido como grau(W) = !Adj(W)I. Novamente, se

14' for composto por um único vértice v, o grau de W será dado por grau(v), ao invés de

grau(, v} ), isto é, se W = { v }, gr11u(W) = grau(v) = !Adj(v)I.

• Um subgrafo G(V, E) de G(V, E) é um grafo para o qual V é um subconjunto de

V e E é um subconjunto de E, isto é, V e V e E e E.

• Um grafo seção G(W) é o subgrafo G(W, E(W)) para o qual W e V,

E1W) ""'{{v;,v;} E E 1 v; E W,v; E W}.

• Um clique é um grafo seção cujos vértices são adjacentes aos pares, isto é, cada

vértice é adjacente a todos os outros. Em termos de matrizes, um clique corresponde a

uma submatriz cheia. (V,E) é um clique*? para cada v; E V, Vj E V, i # j, {v;, v;} E E.

• Um caminho em um grafo conexo G = (V, E) é um conjunto ordenado de vértices

( v1, ... , Vn+1) tal que vk e Vk+i são adjacentes para k = 1, 2, ... , n. Esse caminho é dito

ser de v, a Vn+J e seu comprimento é n. Neste caso, V1 e Vn+i são os pontos extremos do

caminhe. Um caminho de comprimento n pode também ser interpretado como um conjunto

ordenad1) de n arestas ( ei, ... , en)·

• Um caminho simples é um caminho no qual todas as arestas e vértices são dis­

tíntos, exceto que v1 e Vn+i podem ser iguais.

• Um circuito é um caminho de comprimento ~ 1 sem arestas repetidas e cujos

pontos e>tremos são iguais. Um ciclo é um circuito simples.

• Um grafo conexo G é aquele para o qual qualquer par de vértices distintos é

conectadc por pelo menos um caminho. Caso contrário, G é um grafo não conexo, e

consiste de dois ou mais componentes conexos.

• lsomorfismo em grafos se refere a grafos que apresentam a mesma topologia.

Dois grafos G1 = (Vi, E1) e G2 = (Vi, E2) são isomorfos, se existir uma função biunívoca

f •• Vi---+ Vi que preserva adjacência, isto é, E2 = {{f(v;),f(vj)} 1 {v;,vj} E Ei}. Neste

·~aso, J é um isomorfismo de G1 para G2.

79

Page 97: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

• A distância d(v;, v3) entre dois vértices em um grafo conexo é o comprimento do

menor caminho entre eles, isto é, d( v;, v3) = min 1 caminho entre vi e vJI.

• A excentricidade e( v) de um dado vértice v de G(V, E) é a maior distância entre

t e qi:.alquer outro vértice do grafo, isto é,

e(v) = max{d(v,v;) 1 Vi E V}= max {d(vi,vj) 1 Vi,Vj E V}.

• O diâmetro de um grafo G(V, E) é a maior excentricidade dos vértices do grafo,

isto é, diâmetro( G) = max{ e( v) 1 v E V}.

• Um vértice periférico v é aquele para o qual a excentricidade é igual ao diâmetro

do grafo, isto é, e(v) = diâmetro(G).

• Uma estrutura de níveis geral é uma partição

{,={Lo, L1, ... , Li} tal que,

Adj(Lo) e L1

Adj(L1) e L1-1

Adj(L;) e L;-1 U L;+1 i = 2, .. .,/-1.

Note que U~~~ Lk =V. A largura w de l é definida como

w = max { JLd, OS i SI}

• Uma estrutura de níveis com raiz é um caso particular de uma estrutura de níveis

geral. Da.do um vértice r E V, a estrutura de níveis com raiz em ré a seguinte partição

l(r) = {Lo(r), Li (r), ... , Le(r)(r)}, tal que,

Lo(r) = {r},

L1(r) = Adj(Lo(r)),

Li(r) = Adj(Li-1(r) - Li-2(r)), i = 2, ... , e(r).

Note que u:~b Lk(r) =V. O comprimento de l(r) é a excentricidade e(r). A largura w(r) de .C( r) é definida como

w(r) = max { !Li(r)!, OS i $ e(r)}.

80

Page 98: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Apêndice B

Terminologia para Matrizes Esparsas

Dada 11ma matriz simétrica e esparsa de ordem n, a largura de banda (B) é definida como

B = maxb;, i ::; n, (9.1)

onde b. é a i-ésima largura de banda, isto é, o número de colunas a partir do primeiro

elemento não nulo da linha i, até (e inclusive) o elemento da diagona!1.

O perfil da matriz (P) é definido como

n

P = L b;. (9.2) i=l

A largura de frente (W), ou máxima largura de frente, ou simplesmente frente, é definida como

W = max e;, i ::; n, (9.3)

onde e; 1· a i-ésima largura de frente, isto é, o número de colunas ativas da linha i. A coluna

;i é dita .~tiva na linha i, se j ?: i e existe um elemento não nulo na coluna j correspondente

à linha 1:, para a qual k ::; i.

De acordo com Everstine [48], a largura de frente média (W) é definida como

-- 1 ~ p lV = - L.. e; = -.

n i=l n (9.4)

Para uma matriz simétrica, tem-se que L:i=i e; = L:i=i b;, embora, em geral, e; :f b;.

A r.m.s. frente (W) (root-mean-squan wavefront) de uma matriz é definida como

(9.5)

1 Note qt e esta definição de largura de banda inclui os elementos da diagonal.

81

Page 99: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

A partir das definições acima, tem-se que

W::; W::;W::; B$n. (9.6)

A densidade de uma matriz (!) é dada por

f = 2\EI + n 1003 n2

(9.7)

onde E é o conjunto de arestas do grafo associado.

Para ilustrar as definições acima, a Figura (9.la) mostra um pórtico plano com 5

nos e 4 elementos de viga (1-D).

5 4

2

(a) Pórtico Plano 5 nós ; 4 elementos

K (b) Grafo G

IVI = 5 ; IEI = 4

r-X

X

._

X

X

X X

X X

X X

(e) Matriz K (5 x5)

....,

X

X

X

Figura 9.1: Exemplo para Ilustrar a Terminologia de Matrizes Esparsas.

J\'.este exemplo, onde apenas elementos finitos uni-dimensionais sã.o utilizados, a

topologi.t da malha e do grafo nodal associado sã.o coincidentes. Uma outra possibili­

dade de representação do grafo nodal GK (VK, EK) (grafos isomorfos) para o modelo da

Figura (9.la) está mostrada na Figura (9.lb), onde VK = {1,2,3,4,5} e

EK = { {1,4}, {4, 3}, {3, 5}, {5,2}}.

Por quesi.ã.o de simplicidade, considera-se um grau de liberdade por nó na Figura (9.la). A

representação da matriz de rigidez associada a esta malha está mostrada na Figura (9.lc)

através da matriz simétrica K (de ordem 5) com componentes k;; e densidade f = 52%.

Finalmente, utilizando as Equações (9.1 a 9.5), chega-se a B = 4, P = 11, W = 3,

U7 = 2.2000 e W = J5.4 ~ 2.3238, atendendo plenamente à expressão (9.6).

82

Page 100: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

Referências Bibliográficas

[l] Ahba.s, S. F., 'Some novel applications of the frontal concept', International Journal fo" Numerical Methods in En.9ineering, 15, 519-536 (1980).

[2] Akin, J. E. e R. M. Pardue, 'Element Resequencing for Frontal Solutions', Editor: J. R. Whiteman, Mathematics of Finite Elements and Applícations, Academíc Press, Nfw York, 1975.

[3] Akhra.s, G., 'Letters to the Editor - A new node renumberíng algorithm for bandwidth reduction', International Journal for Numerica/ Methods in Engineering, 24, 1823-18~4 (1987).

[4] Akhras, G. e G. Dhatt, 'An automatic node relabelling schemefor minimizing a matrix or uetwork bandwidth', International Journal for Numerícal Methods in Engineering,

10. 787-797 (1976).

[5) Akyuz, F. A. e S. Utku, 'An automatic node-relabeling scheme for bandwidth mini­mi;:a.tion of stiffness matrices', AJAA Journal, 6, (4), 728-730 (1968).

[6.l AI-Na.sra, M. e D. T. Nguyen, 'An algorithm for domain decomposition in finiteelement analysis', Computers and Structures, 39, 3/4, 277-289 (1991).

[7] Arnlerson Jr., W. N. e T. D. Morley, 'Eigenvalues of the Laplacian of a. graph', Linear anil Multilinear Algebra, 18, 141-145 (1985), (publicado originalmente como Relatório Técnico TR-71-45, Universidade de Maryland, 1971).

[8) Arany, I., W. F. Smyth e L. Szóda, 'An improved method for reducing the bandwidth of Si)arse symmetric matrices', Anais do JFIP - Congresso 71, Editor: e. V. Freiman, North-Holland Publ. Co., Amsterdam, London, 1246-1250, (1972).

[9] Ara•.íjo Filho, H. A., Reordenação Nodal para Solução de Grandes Sistemas Con­sidf rando a Esparsidade, Dissertação de Mestrado, Departamento de Engenharia Mecânica, COPPE/UFRJ, Rio de Janeiro, 1986.

[10] Arrnstrong, B. A., 'A hybrid algorithm for reducing matrix bandwidth', International

Joumal for Numerical Methods in Engineering, 20, 1929-1940 (1984).

[11) Armstrong, B. A., 'Near-minimal matrix profiles and wavefronts for testing nodal re­sequencing algorithms', lnternational Journal for Numerical M ethods in Engineering, 21, : 785-1790 (1985).

Page 101: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

[12] Ashcraft, C. C., R. G. Crimes, J. G. Lewis, B. W. Peyton e H. D. Simon, 'Progress Í1 sparse matrix methods for large linear systems on vector supercomputers', The lnternational Journal of Supercomputer Applications, 1, (4), 10-30 (1987).

[13] Aubert, B. M., Numerical Simulation of the Transient Nonlinear Dynamics of Actively

Controllcd Structures, Tese de Doutorado, Escola de Engenharia Civil e Ambiental, t niversidade de Cornell, Ithaca, 1992.

[14) D'Azevedo, E. F., P. A. Forsyth e W.-P. Tang, 'Ordering methods for preconditioned conjugated gradient methods applied to unstructured grid problema', SIAM Journal 0;1 Matrix Analysis and Applications, 13, (3), 944-961 (1992).

[15] B.ubosa, V. C., 'Redes neuronais e simulated annealing corno ferramentas para otimização combinatória', lnvestigación Operativa, 1, (2), 125-142 (1989).

[16]

[17]

[18]

[19)

[21 J

1221

[23]

Barnard, S. T. e H. D. Simon, 'A fast multilevel irnplementation of recursive spec­tral bisection for partitioning unstructured problerns', Em: Parallel Processing for Scientific Computing, Editores: R. F. Sincovec et ai., SIAM, 711-718, 1993.

Barnard, S. T.,A. Pothen e H. D. Simon, A spectral algorithm for envelope reduction of sparse matrices, Relatório Técnico CS-93-49, Departamento de Ciência da Corn­pu tação, Universidade de Waterloo, Waterloo, 1993 (submetido para o Journal of Numerical Linear Algebra with Applications).

Bathe, K. J., Finite Element Procedures in Engineering Analysis, Prentice-Hall, En­glewood Cliffs, New Jersey, 1982.

Behin, Z. e D. W. Murray, 'A substructure-frontal technique for cantilever erection analysis of cable-stayed bridge>', Computers and Structures, 42, (2), 145-157 (1992).

Ber,ner, R. E., G. R. Montry e G. G. Weigand, 'Concurrent rnultifrontal methods: shared rnemory, cache, and frontwidth issues', The International Journal of Super­co11 puter Applications, 1, (3), 26-44 (1987).

Bergrnann, V. L. e S. Mukherjee, 'A hybrid strain finite elernent for plates and shells', lnttrnational Journal for Numtrical Methods in Engineering, 30, 233-257 (1990).

Ben y, R. D., 'An optimal ordering of electronic circuit equations for a sparse matrix solu·ion', IEEE Transactions on Circuit Theory, CT-18, (1), 40-50 (1971).

Boo1 h, K. S. e R. J. Lipton, 'Cornputing extremai and approxirnate distances in graphs havi:1g unit cost edges', Acta lnformatica, 15, 319-328 (1981 ).

[2:4] Budley, F. e F. Harary, Distance in Graphs, Addison Wesley, Redwood City, Califor­nia, l990.

[25] Burgess, I. W. e P. K. Lai, 'A new node renumbering algorithrn for bandwidth re­duction ', International Journal for Numerical Methods in Engineering, 23, 1693-1704 !1986 ).

84

Page 102: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

(26] Burgess, I. W., 'Authors' Reply - A new node numbering algorithm for bandwidth reduction ', lnternational Journal for Numerical Methods in Engineering, 24, 1824 ( 1987).

[27] Bykat, A., 'A note on an element orderíng scheme', International Journal for Numer­ícal Methods in Engineering, 11, 194-198 (1977).

[28] Chan, W. M. e A. George, 'A linear time implementation of the reverse Cuthíll-Mckee a!goríthm', BIT, 20, 8-14 (1980).

{29] Cheng, K. Y., 'Note on minimizing the bandwidth of sparse, symmetric matrices', Computing, 11, 27-30 (1973).

[30) Chinn, P. Z., J. Chvátalová, A. K. Dewdney e N. E. Gibbs, 'The bandwidth problem for graphs and matrices - a survey', Journal of Graph Theory, 6, (3), 223-254 (1982) (cita 93 referências).

[31] Chung, F. R. K., V. Faber e T. A. Manteuffel, 'An upper bound on the diameter of a ,graph from eigenvalues associated with its Laplacian', SIAM Journal on Discrete M.ithematics, 7, (3), 443-457 (1994).

{32] Collins, R. J., 'Bandwidth reduction by automatic renumbering', International Journal for Numerical Methods in Engíneering, 6, 345-356 (1973).

[33] Co·)k, D., S. Malkus e M. E. Plesha, Concepts and App/ications of Finite E/ement Arialysis, Terceira Edição, John Wiley & Sons, New York, 1989.

[34] C01ana, A., M. Marchesi, C. Martini e S. Ridella, 'Minimizing multimodal functions of rnntinuous variables with the simulated annealing algorithm', ACM Transactions on \tathematical Software, 13, (3), 262-280 (1987).

[35] Crane Jr., H. L., N. E. Gibbs, W. G. Poole Jr. e P. K. Stockmeyer, 'Algorithm 508 - Matrix bandwidth and profile reduction', ACM Transactions on Mathematical Soft­war<', 2, (4), 375-377 (1976).

[:l6] Cuthill, E. e J. McKee, 'Reducing the bandwidth of sparse symmetric matrices', ACM - Anais da 24a. Conferência Nacional, P-69, 157-172, (1969).

[37) Cuthill, E., 'Severa! strategies for reducing the bandwidth of sparse matrices', Sparse Afatr-ices and their Applications, Editores: D. J. Rose e R. A. Willoughby, 157-166 ( 197'.!).

[38) Cveti<ovié, D. M., M. Doob e H. Sachs, Spectra of Graphs - Theory and Application, Academic Press, New York, 1980.

f3!l] Deo, ~., Graph Theory with Applications to Engineering and Computer Science, Pren­tice Hall, Englewood Cliffs, New Jersey, 1974.

85

Page 103: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

[40] I>esai, C. S. e J. F. Abel, Introduction to the Finite Element Method - A Numerical Afethod for Engineering Analysis, Litton Educational Publishing, 1972.

[41] l\1cLaughlin, M. P., 'Simulated Annealing', Dr. Dobb 's Journal, Software Tools for the Frofessional Programmer, 1989.

[42] Dubuc, E. J., 'Bandwidth reduction by simulated annealing', International Journal fi•r Numtrical Methods in Engineering, 37, 3977-3998 (1994).

[43] Duff, I. S., A survey of sparse matrix research, Anais do IEEE, 65, (4), 500-535 (1977) (cita 604 referêncías ).

[44] D1ff, I. S. e J. K. Reid, 'The multifrontal solution of indefinite sparse symmetric linear equations', ACM Transactions on Mathematical Software, 9, (3), 302-325 (1983).

[4:-i] D11ff, I. S., R. G. Crimes e J. G. Lewis, 'Sparse matrix test problems', ACM Transac­tilns on Mathematical Software, 15, 1-14 (1989).

[4ti] Di:ff, I. S., J. K. Reid e J. A. Scott, 'The use of profile reduction algorithms with a frontal code', International Journal for Numerical Methods in Engineering, 28, 2555-251i8 (1989).

[47]

'48' t j

Dutto, L. C., 'The effect of ordering on preconditioned GMRES algorithm, for solv­ing the compressible Navier-Stokes equations', International Journal for Numerical Methods in Engineering, 36, 457-497 (1993).

Evustine, G. C., 'A comparison of three resequencing algorithms for the reduction of ma1rix profile and wavefront', lnternational Journal for Numerical Methods in Engi­nei ·ing, 14, 837-853 (1979) (cita 65 referências).

[49] Everstine, G. C. e E. H. Cuthill, 'The optimal ordering of tree networks', Computers and Structures, (Nota Técnica), 17, (4), 621-622 (1983).

[50] Fenves, S. J. e K. H. Law, 'A two-step approach to finite element ordering', lnterna­ti:on,zl Journal for Numerical Methods in Engineering, 19, 891-911 (1983).

[fü] Fiedler, M., 'Algebraic connectívity of graphs', Czechoslovak Mathematical Journal, 23, { 98), 298-305 (1973).

[52] Fiedler, M., 'Eigenvectors of acyclic rnatrices', Czechoslovak Mathematical Journal, 25, ( 100), 607-618 (1975).

[53] Fiedler, M., 'A property of eigenvectors of nonnegative symmetric matrices and its a.pplkation to gra.ph theory', Czechoslovak Mathematical Journal, 25, (100), 619-633 (1975).

154] Fiedler, M., Special Matrices and Their Applications in Numerical Mathematics, Mar­tinus Nijhoff Publishers, Dordrecht, 1986.

86

Page 104: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

[.'i5] Forsythe, G. l. e W. R. VVa.sow, Finite-Difference Methods for Partia/ Differentia/ Equations, John Wiley & Sons, New York, 1960.

[.56] Garey, M. R. e D. S. Johnson, Computers and Intractabi/ity: A Cuide to the Theory ''Í NP-Completeness, W. H. Freeman and Company, San Francisco, 1979.

[.'i7] Gatta.ss, M., M. Ferrari e L. H. Figueiredo, Solution of Systems of Sparse Symmetric Positive Definite Matrices - Tht: Modified Crout Method, Relatório Interno AT 24/84, Departamento de Engenharia Civil, PUC-Rio, Rio de Janeiro, 1984.

[f18] Catta.ss, M., G. H. Paulino e J. C. Gortaire C., 'Geometrical and topological consis­t"ncy in interactive graphical preprocessors of three-dimensional framed structures', Computers and Structures, 46, (1), 99-124 (1993).

[59] Gay, R. K. L., K. K. Chin, S. H. Chua, C. H. Chan e S. Y. Ho, 'Node reordering algorithms for water network analysis', International Journal for Numerical Methods in Engineering, 12, 1241-1259 (1978).

[60] G•'orge, J. A., Computer lmplementation of the Finite Element Method, Tese de Doutorado, Departamento de Ciência da Computação, Universidade de Stanford, 1971.

[6l J Gt-orge, J. A. e J. W.-H. Liu, 'An implementation of a pseudoperipheral node finder', AGM Transactions on Mathematical Software, 5, (3), 284-295 (1979).

[62] George, J. A. e J. W.-H. Liu, Computer Solution of Large Sparse Positive Definite Sy.~tems, Prentice-Hall, New Jersey, 1981.

[63) Ge•lrge, J. A. e J. W.-H. Liu, 'The evolution of the minimum degree ordering algo­rithm', SIAM Review, 31, (1), 1-19 (1989).

[64:1 George, J. A. e A. Pothen, 'An analysis of the spectral approach to envelope reduction via quadratic a.ssignment problems', (em preparação).

!65] Gec•rge, P. L., Automatic Mesh Generation - Application to Finite Element Methods Johrr Wiley & Sons, Ma.sson, Paris, 1991.

[66] Gibbs, N. E., W. G. Poole Jr. e P. K. Stockmeyer, 'An algorithm for reducing the bandwidth and profile of a sparse matrix', SIAM Journal on Numerica/ Ana/ysis, 13, (2), 236-250 (1976).

[67] Gíbhs, N. E., 'Algorithm 509 - A hybrid profile reduction algorithm,' ACM Transac­tion .. i on Mathematical Software, 2, (4), 378-387 (1976).

[68] Gibhs, N. E., N. G. Poole Jr. e P. K. Stockmeyer, 'A comparison of severa! bandwidth and profile reduction algorithms', ACM Transactions on Mathematical Software, 2, (4), :122-330 (1976).

87

Page 105: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

[69] Grimes, R. G., D. J. Pierce e H. D. Simon, 'A new algorithm for finding a pseudope­ripheral node ín a graph', SIAM Journal on Matrix Analysis and Applications, 11, ( 2), 323-334 (1990).

(70] (;rooms, H. R., 'Algorithm for matrix bandwidth reduction', ASCE Journal of the .~·tructural Division, 98, STI. 203-214 (1972).

[71] haber, R. B., T. A. Mutryn, J. F. Abel e D. P. Greenberg, 'Computer aided design o' framed dome structures with interaçtive graphics', Computer Aided Design, 9, (3), 1)7-164 (1977).

[72] Harary, F., Graph Theory, Addison-Wesley, Reading, Massachusetts, 1969.

[7:~] Hendrickson, B. e R. Leland, An Improved Spectral Graph Partitioning Algorithm for Mapping Para/lei Computations, SANDIA Report SAND92-1460, Category UC-405, St.ndia National Laboratories. Albuquerque, 1992.

[74] tt.~ndrickson, B. e R. Leland, 'Multidimensional spectral load balancing', SANDIA R<port SAND93-0074, Category UC-405, Sandia National Laboratories, Albuquerque, 19J3.

[n·,j Hfndrickson B. e R. Leland, A Multí/evel Algorithm for Partitioning Graphs, SANDIA Report SAND93-1301, Category UC-405, Sandia National Laboratories, Albuquerque, 1993.

[76] Hendrickson, B. e R. Leland, The CHAGO User's Guíde - Version 1.0, SANDIA Report SAND93-2339, Category UC-405, Sandia National Laboratories, Albuquerque, 1%3.

[77! Hoit, M. e E. L. Wilson, 'An equation numbering algorithm based on a minimum front criteria', Computers and Structures, 16, {1-4), 225-239 (1983).

[78] Hood, P., 'Frontal solution program for unsyrnmetric matrices', International Journal for Numerical Methods in Engineering, 10, 379-399 (1976).

[79] Hsil'h, S.-H., 'Parallel Processing for Nonlinear Dynamics Simulationss of Strnctures Including Rotating Bladed-Dísk Assemblies', Tese de Doutorado, Escola de Engenharia Civil e Ambiental, Universidade de Comei!, Ithaca, 1993.

[80] Hsíeh, S. H., G. H. Paulino e J. F. Abel, 'Recursive spectral algorithms for automatic domain partitioning in parallel finite element analysis', Computer Methods in Applied A.fecitanics and Engineering (aceito para publicação).

[81] Hsieh., S. H., G. H. Paulino e J. F. Abel, Evalv.ation of automatic domain partition­ing algorithms for parallel finite element analysis, Relatório Técnico 94-2, Escola de Engrnharia Civil e Ambiental, lthaca, 1994.

[82] Hughes, T. J. R., The Finite E1ement Method - Linear Static and Dynamic Finite F;/u;-irnt Analysis, Prentice-Hall, Englewood Cliffs, New Jersey, 1987.

88

Page 106: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

183] lrons, B. M., 'A frontal solution program for finite element analysis', lnternational Journal for Numerical Methods in Engineering, 2, 5-32 (1970).

[84] lrons, B. M. e S. Ahmad, Techniques of Finite Elements, Ellis Horwood, Chichester, 1980.

[85] Jalón, J. G. dee R. Muguerza, 'On the mini-computersolution of large systems of linear equations arising from the finite element method', Applied Mathematical Modelling, 4, 3~1-388 (1980).

[86] Jennings, A., Matrix Computation for Engineers and Scientísts, John Wiley & Sons, Chichester, 1977.

[87] Jonge, P. J. de, 'An analysis of ordering schemes for the unknowns during the solving of geodetic least squares systems', Relatórios da Faculdade de Engenharia Geodésica, lhiversidade de Delft, Delft, 1991.

[88] Juvan, M. e B. Mohar, 'Optimal linear labelings and eigenvalues of graphs', Discrete App/ied Mathematics, 36, 153-168 (1992).

[89] K;,ne, J. H., B. L. K. Kumar e S. Sa.igal, 'An arbitrary condensing, noncondensing solu­tion strategy for large scale multi-zone boundary element analysis', Computer Methods ín Applied Mechanics and Engineering, 79, 219-244 (1990).

[90] Kaveh, A., 'Algebraic graph theory for ordering', Computers and Structures, 37, (1), 51-54 (1990).

[91] Kaveh, A., 'A connectivity coordinate system for node and element ordering', Com­pulers and Structures, 41, (6), 1217-1223 (1991).

[921 Kaveh, A., 'Graphs and structures', Computers and Structures, 40, (4), 893-901 (19'!1 ).

193] King, I. P., 'An automatic reordering scheme for simultaneous equations derived from network systems', International Journal for Numerical Methods in Engineering, 2, 523-533 {1970).

[94] Kirkpatrick, S., Gelatt, C. D., Jr., e Vecchi, M. P., 'Optimization by simulated an­nealing', Science, 220, (4598), 671-680 (1983).

[95] Koo, B. U. e B. C. Lee, 'An efficient profile reduction algorithm based on the frontal ordering scheme and the graph theory', Computers and Structures, 44, (6), 1339-1347 (199~).

[96] Laarhoven, P. J. M. van e E. H. L. Aarts, Simulated Annealing: Theory and Applica­tion~, D. Reide! Publishing Company, Dordrecht, 1987.

89

Page 107: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

t97] Lanczos, C., 'An iteration method for tbe solution of the eigenvalue problem of linear differential and integral operators', Journal of Research of the National Bureau of Standards, 45, 255-281 (1950).

[98} Law, K. H., 'On updating the structure of sparse matrix factors', International Journal

f1r Numerícal Methods in Engineering, 28, 2339-2360 (1989).

[99] Lapidus, L. e G. F. Pinder, Numerical Solution of Partia/ Differential Equations in Science and Engineering, John Wiley & Sons, New York, 1982.

[100] ',.,evy, R., 'Resequencing of t.be structural stiffness matrix to improve computational ef!iciency', JPL Quarterly Technical Review, 1, (2), 61-70 (1971).

[101] Lewis, J. G., 'lmplementation of the Gibbs-Poole-Stockmeyer and Gíbbs-King algo­ri1hms', ACM Transactions on Mathematical Software, 8, (2), 180-189 (1982).

[102] Lewis, J. G. e H. D. Simon, 'The impact of hardware gather/scatter on sparse gaussian elimination', SJAM Journal on Scientific and Statistical Computing, 9, (2), (1988).

[103] Lewis, R. R., 'Simulated annealing for profile and fill reduction', lnternational Journal foi· Numerical Methods in Engineering, 37, 905-925 (1994).

[llH] L:vesley, R. K. e M. A. Sabin, 'Algorithms for numbering the nodes of finite element meshes', Computing Systems in Engineering, 2, (1), 103-114 (1991).

(105) Luo, J.-C., 'Algorithms for reducing the bandwidth and profile of a sparse matrix', Conputers and Structures, 44, (3), 535-548 (1992).

[106] Ma.ckay, D. R., K. H. Law e A. Raefsky, 'An implementation of a generalized spa;se/profile finite element solution method', Computers and Structures, 41, (4), 723-737 (1991).

[lOí] M.J.one, J. G ., 'Automated mesh decomposition and concurrent finite element analysis for hypercube multiprocessar computers', Computer Methods in Applied Mechanics and Engineering, 70, 27-58 (1988).

[1081 Martin, A. F., 'Comments on the optimal ordering of tree structures', Computers and Structures, (Nota Técnica), 21, (4), 859 (1985).

[109] Martin, A. F. e E. Alarcón, 'A contribution to the optimal numbering of tree struc­ture~', Computers and Structures, 15, (3), 283-290 (1982).

[110] Medeiros, S. R. P., P. M. Pimenta e P. Goldenberg, 'An algorithm for profile and wavefront reduction of sparse matrices with a symmetric structure', Engineering Com­putations, 10, (3), 257-266 (1993).

[111] Menezes, 1. F. M., G. H. Paulino, M. Gattass e S. Mukherjee, 'Profile and wavefront reduction of large sparse matrices based on spectral properties of a graph', lnvesti­gación Operativa, 4, (1), 27--48, (1994).

90

Page 108: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

[112] Menezes, I. F. M., G. H. Paulino, M. Gattass e S. Mukherjee, 'Resequencingfor Solv­ing Large Sparse Systems - Review, Classification, New Algorithms, and Examples', ( ~m preparação).

[113] Merris, R., 'Laplacian matrices of graphs: A survey', Linear Algebra and lts Appli­C<1tions, 197, 198, 143-176 (1994) (cita 155 referências).

[I 14] Metropolis, N., Rosenbluth, A., Rosenbluth, M., Teller, A., e Teller, E., 'Equation ol state calculations by fast computing machines', Journal of Chemistry and Physics, 21, 1087-1090 (1953).

[1L5] Mohar, B., 'Isoperimetric numbers of graphs', Journal of Combinatorial Theory, Se­ri,;s B, 47, 274-291 (1989).

[l l 6] Nievergelt, J. e K. H. Hinrichs, Algorithms and Data Structures with Applications to Graphics and Geometry, Prentice Hall, Englewood Cliffs, New Jersey, 1993.

[117] l\our-Omid, B., B. N. Parlett e R. L. Taylor, 'Lanczos versus subspace iteration for solution of eigenvalue problem', lnternational Journal for Numerical Methods ín Er1gineering, 19, 859-871 (1983).

[118] Pachl, J. K., 'Finding pseudoperipheral nodes in graphs', Joumal of Computer and Sy."tem Sciences, 29, 48-53 (1984).

[119] Paulino, G. H., Pré-processamento de Estruturas Espaciais, com Reordenação Nodal, usando Computação Gráfica Interativa, Dissertação de Mestrado, Departamento de Engenharia Civil, PUC-Rio, Rio de Janeiro, 1988.

\120] Paulino, G. H. e M. Gattass, 'Uma metodologia para o desenvolvimento de pré­processadores gráficos interativos de elementos finitos', ABCM - Anais do 100. Con­gresso Brasileiro de Engenharia Mecânica, 117-120 (1989).

[121] Paulino, G. H. e M. Gattass, Projeto de Pré-processadores Gráficos Interativos de Elementos Finitos, Relatório Interno RI 03/89, Departamento de Engenharia Civil, PUC-Rio, Rio de Janeiro, 1989.

[122i Paultre, P. 1 P. Léger e J. Proulx, 'Computer graphics for computer assisted learning of structural analysis', Computers and Structures, 36, (6), 1159-1166 (1990).

[123] Padino, G. H., I. F. M. Menezes, M. Gattass e S. Mukherjee, 'Node and element resecuencing using the Laplacian of a finite element graph - Part l: General con­ceptf and algorithm', International Journal for Numerica/ Methods in Engineering, 37, 1511-1530 (1994) (submetido em 30 de março de 1993).

[124] Paulino, G. H., I. F. M. Menezes, M. Gattass e S. Mukherjee, 'Node and element resequencing using the Laplacian of a finite element graph - Part II: Numerical results', Jnternatíona/ Jouma/ for Numerical Methods in Engineeríng, 37, 1531-1555 (1994) (submetido em 30 de março de 1993).

91

Page 109: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

[125] Paulino, G. H., 1. F. M. Menezes, M. Gatta.ss e S. Mukherjee, 'A new algorithm for linding a pseudoperipheral vertex or the endpoints of a pseudodiameter in a graph ', Communications in Numerical Methods in Engineering, 10, 913-926 (1994).

[126] Papadimitriou, Ch. H., 'The NP-completeness of the bandwidth minimization prob­J,~m', Computing, 16, 263-270 (1976).

[127] Pina, H. L. G., 'An algorithm for frontwidth reduction', lnternational Journal for Numerical Methods in Engineering, 17, 1539-1546 (1981).

[128] Pothen, A., H. D. Simon e K. P. Liou, 'Partitioning sparse matrices with eigenvec­tors of graphs', SIAM Journal on Matriz Analysis and Applications, 11, (3), 430-452 (J990).

[129] Potyondy, D. O., 'A software framework for simulating curvilinear crack growth in pressurized thin shells', Tese de Doutorado, Escola de Engenharia Civil e Ambiental, Uaiversidade de Cornell, Ithaca, 1993.

[130] I'uttonen, J., 'Simple and e:ffective bandwidth reduction algorithm', lnternational Journal for Numerical Methods in Engineering, 19, 1139-1152 (1983).

[lill] Rajendran, S. e M. V. Narasimhan, 'An accelerated subspace iteratíon method', Jn,'.ernational Journal for Numerica/ Methods in Engineering, 37, 141-153 (1994).

[Ia2) Razzaque, A., 'Autornatic reduction of frontwidth for finite elernent analysis', lnter­national Journal for Numerical Methods in Engineering, 15, 1315-1324 (1980).

[133] Reid, J. K., 'Frontal methods for solving finite element systems of linear equations', Err: Sparse Matrices and their Uses, Editor: I. S. Duff, Academic Press, London, 265-281 (1981).

jl34] Rt>zende, N. S., Redução de Perfil e de Largura de Banda de Matrizes Esparsas,

Disaertação de Mestrado, Departamento de Engenharia de Sistemas, COPPE/UFRJ, Rio de Janeiro, 1979.

[135] Roberts Jr., E., 'Relabeling of finite element meshes using a random process', NASA Technical Memo, NASA TM X-2660, Lewis Research Center, Cleveland, 1972.

[136] Rodrigues, J. S., 'Node numbering optimization in structural analysis', ASCE Journal of the Structural Division, 101, ST2, 361-376 (1975).

[137] Rutenbar, R. A., 'Simulated annealing algorithms: An overview', IEEE Circuits and Devices Magazine, 1989.

[138] Sadayappan, P. e F. Ercal, 'Nearest-neighbor rnapping of finite element graphs onto proetssor meshes', IEEE Transactions on Computers, C-36, (12), 1408-1424 (1987).

[1:39] Sedgewick, R., 'Implernenting quicksort prograrns', Communications of the ACM, 21, ( 10), 847-857 (1978).

92

Page 110: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

\140] Sehmi, N. S., Large Order Structural Eigenanalysis Techniques - Algorithms for Fi­nite Element Systems, Ellis Horwood, Chichester, 1989.

[141] Sbephard, M. S., P. L. Baehmann, e K. R. Griece, 'The versatility of automatic mesb generators based on tree structures and advanced geometric constructs', Communica­tions in Applied Numerical Methods, 4, (3), 379-392 (1988).

[142] Simon, H. D., 'Pa.rtitioning of unstructured problems for pa.rallel processing', Com­puting Systems in Engineering, 2, (2/3), 135-148 (1991).

[l43] Singh, G. S. e Deshpande, K. R., 'On Fast loa.d partitioning by simulated anneal­itg, and heuristic algorithms for general class of problems', Advances in Engineering

S.Jjtware, 16, 23--29 (1993).

[1'14] Sloan, S. W. e M. F. Randolph, 'Automatic element reordering for finite element a.1,alysis with frontal solution schemes', International Journal for Numerical Methods

in Engineering, 19, 1153-1181 (1983).

[H5] Sloan, S. W., 'An algorithm for profile and wavefront reduction of sparse matrices', biternational Journal for Numerical Methods in Engineering, 23, 239-251 (1986).

[146] Sloan, S. W., 'A FORTRAN program for profile and wavefront reduction', Interna­tional Journal for Numerical Methods ín Engineering, 28, 2651-2679 (1989).

[147] S oan S. W. e W. S. Ng, 'A direct comparison of three algorithms for reducing profile and wa.vefront', Computers and Structures, 33, (2), 411--419 (1989).

[148] Smyth, W. F. e W. M. L. Benzi, 'An algorithm for finding tbe diameter of a graph', Proceedings of IFIP Congress 74, Editor: J. L. Rosenfeld, North-Holland Publ. Co., Amsterdam, 500-503 (1974).

[149] Srnyth, W. F. e I. Arany, 'Another algorithm for reducing bandwidth and profile of a sparse matrix', AFIPS Conference Proceedings, Editor: S. Winkler, AFIPS Press, Mo.1tvale, New Jersey, 45, 987-994 (1976).

[150] Smyth, W. F., 'Algorithmsforthereductionofmatrixbandwidthandprofile', Journal of C:omputational and Applied Mathematics, 12 & 13, 551-561 (1985).

[ 151 j Sn.ty, R. A., 'Reducing the profile of sparse symrnetric matrices', Bulletin Géodésique, 50, (4), 341-352 (1976).

{152] Souza, L. T. e M. Gattass, 'A new scheme for mesh generation and mesh refinement usin~ graph theory', Computers and Structures, 46, (6), 1073-1084 (1993).

[153) Sporzynski, S. R., 'lmplementa.tion and use of high-performance parallel skyline ma­trix subroutines on the IBM vector facility', Computing Systems in Engineering, 2, (2/3', 203-215 (1991).

93

Page 111: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

[154] Straffin Jr., P. D., 'Linear algebra in geography: eigenvectors of networks', Mathe­rnatics Magazine, 53, (5), 269-276 (1980).

[155) Taniguchi, T. e N. Shiraishi, 'New renumbering algorithm for minimizing the band­width o.f sparse matrices', Advances in Engineering Software, 2, (4), 173-179 (1980).

tl56] Taniguchi, T., 'Complexities of the design of the bandwidth and profile minimization dgorithms', Advances in Engineering Software, 6, (1), 22-29 (1984).

[157] Taniguchi, T., 'New algorithm for the reduction of matrix profile', ln NUMETA 85, Numerical Methods in Engineering: Theory and Applications, Editor: J. Middleton e G. N. Pande, 293-302 (1985).

[158) Thompson, E. e Y. Shimazaki, 'A frontal procedure using skyline storage', Interna­

t,:onal Journal for Numerical Methods in Engineering, 15, 889-910 (1980).

[159] Vanderplaats, G. N., Numerical Optimization Techniques for Engineering Design (With Applications), McGraw-Hill, New York, 1984.

(160] Vassilev, T., 'FRED - An interactive plane frame preprocessor', Microcomputers in Civil Engineering, 5, 139-150 (1990).

[161] Venkatakrishnan, V., H. D. Simon e T. J. Barth, 'A MIMO implementation of a parallel Euler solver for unstructured grids', The Journal of Supercomputing, 6, 117-1~<7 (1992).

(162] \Vawrzynek, P. A., Discrete Modeling of Crack Propagation: Theoretical Aspects and lmplementation lssues in Two and Three Dímensions, Tese de Doutorado, Escola de Engenharia Civil e Ambiental, Universidade de Cornell, Ithaca, 1991.

[163] Zienkiewicz, O. C. e R. L. Taylor, The Finite Element Method, Vol. 1, Quarta Edição, M·:Graw-Hill, London, 1989.

94

Page 112: fVAN FÁBIO MOTA DE MENEZESwebserver2.tecgraf.puc-rio.br/~mgattass/teses/1995... · - Finile Element Graph (FEG) --é definido como um grafo nodal (G), um grafo dual ( G') ou um grafo

'Técnicas de Reordenação para Solução de Sistemas Esparsos". Tese de Doutorado

apresentada por IVAN FÁBIO MOTA DE MENEZES em 28 de Junho de 1995 ao

Departamento de Engenharia Civil da PUC-Rio e aprovada pela Comissão Julgadora,

formada pelos seguintes professores:

Visto e permitida a impressão,

Rio de Janeiro, oz /O!/ f.IS6

arcelo Gattass (Orientador) o de Engenharia Civil./ PUC-Rio

Prof. Luiz Fernando Campos Ramos Martha Departamento de Engenharia Civil I PUC-Rio

Prof. Raul Rosas e Silva Departamento de Engenharia Civil I PUC-Rio

Prof. Paulo Cezar Pinto Carvalho IMPA