Você está na página 1de 171

MTODOS COMPUTACIONAIS

EM
ENGENHARIA MECNICA

Joo Burguete Cardoso


Pedro Gonalves Coelho

MESTRADO INTEGRADO EM ENGENHARIA MECNICA


DEPARTAMENTO DE ENG. MECNICA E INDUSTRIAL
FCT/UNL

2011/2012

Apontamentos da disciplina

J. Cardoso/P. Coelho

MCEM

ii

Apontamentos da disciplina

MCEM

NDICE

1. CLCULO TENSORIAL ............................................................................................ 1


2. INTRODUO AO MTODO DOS ELEMENTOS FINITOS............................... 11
2.1. O mtodo dos elementos finitos .......................................................................... 12
2.2. Um pouco de histria........................................................................................... 13
2.3. Princpios variacionais......................................................................................... 13
2.4. Princpio da energia potencial total estacionria ................................................. 14
2.5. Mtodo de Rayleight-Ritz ................................................................................... 16
3. ELEMENTOS FINITOS EM VIGAS........................................................................ 19
3.1. Exemplo Estrutura constituda por uma viga e uma barra ............................... 40
4. ELEMENTOS FINITOS BIDIMENSIONAIS .......................................................... 47
4.1. Problemas de transmisso de calor...................................................................... 47
4.2. Resoluo de outros problemas com a equao de Poisson ................................ 57
4.3. Exemplo Transmisso de calor em regime estacionrio .................................. 59
4.4. Exemplo Toro de um veio de seco rectangular ......................................... 59
4.5. Problemas de elasticidade plana .......................................................................... 68
5. OPTIMIZAO ESTRUTURAL.............................................................................. 87
5.1. Introduo............................................................................................................ 87
5.2. Um pouco de histria........................................................................................... 89
5.3. Optimizao de dimenses .................................................................................. 91
5.4. Optimizao de forma ......................................................................................... 92
5.5. Optimizao de topologia.................................................................................... 93
5.6. Formulao do problema de projecto ptimo...................................................... 97
5.7. Resoluo grfica de problemas de optimizao................................................. 99
5.8. Conceitos fundamentais de projecto ptimo ..................................................... 103

J. Cardoso/P. Coelho

iii

Apontamentos da disciplina

MCEM

5.9. Problemas de projecto ptimo no constrangido............................................... 107


5.10. Problemas de projecto ptimo constrangido ................................................... 109
5.11. Optimalidade global ........................................................................................ 114
5.12. Condies de 2 ordem para optimizao constrangida .................................. 117
5.13. Anlise ps-ptimo.......................................................................................... 119
5.14. Mtodos de optimizao baseados no gradiente.............................................. 121
5.15. Mtodos de optimizao no baseados no gradiente....................................... 132
BIBLIOGRAFIA .......................................................................................................... 153
ANEXO 1 - Introduo ao MATLAB.......................................................................... 155

J. Cardoso/P. Coelho

iv

Clculo tensorial

MCEM

1. CLCULO TENSORIAL

As principais quantidades fsicas usadas em mecnica dos meios contnuos e as


equaes que as relacionam podem ser apropriadamente descritas atravs de tensores e
de clculo tensorial. Tensores so entidades matemticas abstractas criadas em lgebra
para generalizar os conceitos de vector e matriz.
Pela importncia que o clculo tensorial tem em toda a mecnica dos meios contnuos
apresenta-se uma breve reviso das principais definies e operaes sobre vectores,
matrizes e outros tensores. Este captulo segue principalmente a excelente obra de Mase
(1992), que se sugere como consulta a quem queira aprofundar os conceitos
apresentados.
Representao de tensores
a)
b)

Simblica: v, A
Indicial: vi, Aij

c)

A11

Matricial: [v1 v2 v3], A21

A31

A12
A22
A32

A13

A23

A33

A ordem de um tensor indicada pelo nmero de ndices livres (representados por letras
que aparecem apenas uma vez num dado termo):
a)
b)
c)

Ordem 0: escalar,
(exemplo: temperatura, velocidade)
Ordem 1: vector, v , vi (exemplo: fora, velocidade)
Ordem 2: matriz, A , aij (exemplo: tensor das tenses, tensor das deformaes)

No espao tridimensional, os ndices livres tomam sucessivamente valores: 1, 2 e 3. Se


o nmero N o nmero de ndices livres num tensor, esse tensor tem 3N componentes
no espao tridimensional.
Um tensor designa-se cartesiano quando referido a um sistema de eixos rectilneos
cartesiano. A figura 1.1 representa o vector v no sistema de coordenadas cartesianas
0x1x2x3 . Este vector pode ser decomposto nas suas componentes v1, v2, v3 usando os trs
versores que constituem a base do sistema de eixos, 1, 2, 3 .

J. Cardoso/P. Coelho

Clculo tensorial

MCEM

Os versores 1, 2, 3 constituem uma base ortogonal (vectores mutuamente


perpendiculares) e ortonormal (base ortogonal com vectores de base unitrios).
Observa-se na figura que a orientao dos 3 eixos verifica a regra da mo direita, isto ,
o produto externo de 1 por 2 tem como resultado 3.
x3
v3
3
v1

v
2

v2

x2

x1

Fig. 1.1 Decomposio do vector v usando o referencial cartesiano 0x1x2x3


Pode exprimir-se a decomposio de v pela equao,
3

v = v1e 1 + v2 e 2 + v3e 3 = vi i
i =1

Conveno de soma
Quando um ndice aparece repetido exactamente duas vezes em qualquer termo de uma
expresso, esse ndice toma sucessivamente os valores 1, 2 e 3 sendo os termos
resultantes somados e no se representando o smbolo de somatrio.
vi i = v11 + v22 + v33 (i o ndice de soma pois aparece repetido duas vezes)

A letra usada no ndice irrelevante, isto , vi i equivalente a vj j ou vk k quando se


usa a conveno de soma. Mas note-se que nenhuma letra pode aparecer mais do que
duas vezes no mesmo termo. Contudo em qualquer termo pode estar presente mais do
que um par de ndices de soma.
Operaes sobre vectores
a)
b)
c)

Adio: w = u + v ou wi i = ui i + vi i = (ui + vi) i


Multiplicao de escalar por vector: v = vii
Produto interno: uv = vu = uv cos

Onde o ngulo entre u e v. O produto interno apresenta a propriedade comutativa e


pode ser apresentado em notao indicial usando o operador Delta de Kronecker.
Delta de Kronecker, ij

ij = 1

se e s se i = j

ij = 0

se e s se i j

J. Cardoso/P. Coelho

A representao
matricial de ij a
matriz identidade.

1 0 0
ij = 0 1 0

0 0 1
2

Clculo tensorial

MCEM

r r
Define-se i j = ij , logo u v = ui e i v j e j = ui v j (e i e j ) = ui v j ij = ui vi .
d)

Produto externo: u v = v u = ( uv sin )

Onde o versor normal ao plano definido por u e v cujo sentido respeita a regra da
mo direita. O produto externo exprime-se em notao indicial atravs do Smbolo de
Permutao.

Smbolo de Permutao, ijk

+1

ijk = +1

se ijk = 123,231,312

ijk = 1

se ijk = 132,321,213

ijk = 0

se i = j ou j = k ou i = k

1
3

r r
Define-se i j = k, logo u v = ui e i v j e j = ui v j (e i e j ) = ijk ui v j k .
Conveno de diferenciao
Utiliza-se uma vrgula para indicar diferenciao parcial em ordem aos eixos do
referencial cartesiano, isto :

= ,i
xi

vi
= vi , j
x j

Tij

2 ui
= ui , jk
x j xk

xk

= Tij ,k

A diferenciao de um tensor produz um tensor de ordem imediatamente superior.

Em notao indicial representase por uma vrgula, seguido de


um ndice.

O Operador Nabla, , definido por:

=
e1 +
e2 +
e3 =
ei =
x1
x 2
x3
xi

,i

Em representao matricial corresponde a um vector,

r
=
x1

x 2

x3

Pode ser usado na definio de vrias quantidades importantes para a mecnica dos
meios contnuos.

Gradiente de um campo escalar


r

grad = = ,i =
e1 +
e2 +
e3
x1
x2
x3

J. Cardoso/P. Coelho

Clculo tensorial

MCEM

Matricialmente, representa-se pelo campo vectorial


grad =
x1

x 2

x3

Gradiente de um campo vectorial

r rr
grad v = v = vi , j
Matricialmente, representa-se pelo campo tensorial de 2 ordem,

v1

x1
r v 2
grad v =
x1
v
3
x1

v1
x 2
v 2
x 2
v3
x 2

v1

x3
v 2
x3
v3

x3

Divergncia de um campo vectorial

v
v v
r r r
div v = v = vi ,i = 1 + 2 + 3
x1 x 2 x3
A divergncia de um campo vectorial um campo escalar.

Rotacional de um campo vectorial

r r r
rot v = v = ijk v k , j

ou

Matricialmente representa-se pelo vector,

r v v
rot v = 3 2
x 2 x3

v1 v3

x3 x1

e1
r

rot v =
x1
v1

e2

x2
v2

v 2 v1

x1 x 2

Representao matricial
A ou [Aij] ou Aij ou [ A]
m o n total de linhas
n o n total de colunas
i n da linha; i = 1,,m
j n da coluna; j = 1,,n
m ,n
i , j =1

Matriz quadrada tem m = n


Matriz rectangular tem m n

J. Cardoso/P. Coelho

e3

x3
v3

linha

A11
A = A21
A31
coluna

A12
A22
A32
triangular
inferior

A13
A23
A33

triangular
superior

diagonal

Clculo tensorial

MCEM

Produto vector-matriz
Av = Aijvji
i = 1 A1jvj1 = (A11v1 + A12v2 + A13v3)1
i = 2 A2jvj2 = (A21v1 + A22v2 + A23v3)2
i = 3 A3jvj3 = (A31v1 + A32v2 + A33v3)3

Em notao matricial: Av = A11

A21

A31

A12
A22
A32

Produto interno

A13 v1 A11v1 + A12 v2 + A13v3


A23 v2 = A21v1 + A22v2 + A23v3


A33 v3 A31v1 + A32v2 + A33v3


Vector representado como
matriz coluna, m1

Para multiplicar uma matriz por um vector necessrio que o nmero de colunas da
matriz seja igual ao nmero de linhas do vector. Obtm-se um vector cujo nmero de
componentes igual ao nmero de linhas da matriz.
Multiplicao de matrizes

Uma matriz A s pode ser multiplicada por uma matriz B se o n de colunas de A for
igual ao n de linhas de B. A matriz produto AB tem tantas linhas quanto as de A e
tantas colunas quanto as de B.

[ ]

Por exemplo, A = Aij

m ,n

i , j =1

[ ]

n, p

; B = B jk

j ,k =1

[ ] [B ]

; AB = Aij

Cik = Aij B jk

m ,n

i , j =1

n, p
jk j ,k =1

= [Cik ]i ,k =1 ou
m, p

ou Cik = Aij B jk

j =1

(i e k so ndices livres e j ndice de soma logo, os js repetidos duas vezes


contraem-se!)

Cada componente de AB o produto de uma linha de A por uma coluna de B.


Cada coluna de AB o produto da matriz A por uma coluna de B.
Cada linha de AB o produto de uma linha de A pela matriz B.

Operaes sobre matrizes e vectores

Matriz transposta: AijT = Aji

Vector transposto:

J. Cardoso/P. Coelho

A11

A = A21

A31

A12
A22
A32

A13
A11

A23 AT = A12

A13
A33

A21
A22
A23

A31

A32

A33

v1

T
v = v2 v = [v1 v2 v3 ]

v3

Clculo tensorial

MCEM

Se A = AT ento a matriz A simtrica


Se A = AT ento a matriz A anti-simtrica
A + B = B + A (a soma de matrizes comutativa)
A + AT A AT
A=
+
(decomposio em matriz simtrica e anti-simtrica)
2
2
A + (B + C) = (A + B) + C (a soma de matrizes associativa)
A = Aij (produto de matriz por um escalar)
AB BA (multiplicao de matrizes em geral no comutativa)
(AB)C = A(BC) multiplicao de matrizes associativa
A(B + C) = AB + AC (propriedade distributiva)
AA = A2
AAA = A3
AmAn = Am+n (propriedade de expoente)

(A ) = (A )
n T

T n

Se BB = A B =

A = (A )

1/ 2

(A + B )T = A T + B T
(AB )T = B T A T
A A 1 = A 1A = I (matriz inversa e matriz identidade)
A 1 = AT ento A uma matriz ortogonal, isto , ATA = I
A 1 = AT = A ento A matriz simtrica e ortogonal
(AB )-1 = B -1A -1

(ABC)-1 = C-1B-1A -1
Uma matriz quadrada invertvel se e s se no-singular. S podem ser invertidas
matrizes quadradas.
Teoremas sobre determinantes

Produto Se A e B so matrizes quadradas: det (AB) = det(A) det(B)


Inversa Se A uma matriz no-singular, ento det(A) 0 e det(A1) = 1/det(A)
Transposta Se A quadrada det(AT) = det(A)
Clculo do determinante de uma matriz de dimenso 3 3:

A11

A12

A13

det (A ) = Aij = A21

A22

A23 = A11

A31

A32

A33

A22

A23

A32

A33

A12

A21

A23

A31

A33

+ A13

A21

A22

A31

A32

= A11 ( A22 A33 A23 A32 ) A12 ( A21 A33 A23 A31 ) + A13 ( A21 A32 A22 A31 )

Sistemas de equaes lineares

Um sistema de equaes linear pode ser representado em notao simblica por Ku = f .


O vector de incgnitas, u pode ser obtido multiplicando a inversa de K pelo vector f ,
isto , u = K1f .

J. Cardoso/P. Coelho

Clculo tensorial

MCEM

Em notao matricial, o sistema de equaes ser,


K 11

K n 1

...

K 1n u1 f1

: : = :

K nn u n f n

O
...

ou

u 1 K 11 + ... + u n K 1 n f 1 = 0

...

u 1 K n 1 + ... + u n K nn f n = 0

Na prtica no conveniente inverter K, o vector u pode ser obtido usando mtodos


directos ou mtodos iterativos. Um dos mtodos directos mais conhecidos o mtodo
de eliminao de Gauss, que transforma a matriz original K numa matriz triangular
superior,
K 11

K 11

K 22

K 1 n u1 f 1

K 2 n u 2 f 2
=
M M M

K nn u n f n

O mtodo de Gauss elimina cada termo Kij situado abaixo da diagonal multiplicando
toda a linha i pelo quociente Kjj / Kij e em seguida subtraindo linha i a linha j. Uma vez
obtida a matriz triangular, o ltimo valor de u, pode ser calculado,
un =

fn
K nn

E em seguida todos os restantes atravs de

fi

ij

uj

j = i +1

ui =

K ii

Num sistema de n equaes a n incgnitas podemos ter os seguintes casos de solues:


Determinado (tem soluo)
Impossvel (no tem solues)
Indeterminado (soluo infinita)
Uma matriz K no-singular quando, por eliminao de Gauss, se obtm uma matriz
triangular superior com todos os elementos na diagonal diferentes de zero.
Matriz K no-singular ento o sistema determinado
Matriz K singular ento o sistema impossvel ou indeterminado.
Transformao de coordenadas

A transformao de coordenadas entre o


referencial 0x1x2x3 e o referencial
0x1x2x3 definida pela matriz de
transformao A.
Os componentes de A so os cosenos
dos ngulos entre os eixos dos dois
referenciais, aij = cos(xi,xj) .

J. Cardoso/P. Coelho

x3 x2
arccos(a13)
x3

x1
arccos(a12)
x2
x1

arccos(a11)

Fig. 1.2 Transformao de coordenadas.


7

Clculo tensorial

MCEM

Se a matriz A transforma 0x1x2x3 em 0x1x2x3 ento cada linha i de A contm os


cosenos directores do eixo x1 em relao ao referencial 0x1x2x3 . Como a matriz de
transformao A tem a propriedade da ortogonalidade, i.e., AAT = I, ento a
transformao inversa de A, entre 0x1x2x3 e 0x1x2x3 definida por AT . Pode dizer-se
que cada coluna j de A contm os cosenos directores de xj em relao ao referencial
0x1x2x3.

Leis de transformao de coordenadas para


a)
b)

Vectores:

vj = ajivi ou v = Av = vAT
vk = ajkvj ou v = vA = ATv
Tensores de 2 ordem:
Tij = aqiamjTqm ou T = ATTA ou [Tij ] = [aiq]T [Tqm] [amj ]
Tij = aiqajmTqm ou T = ATAT ou [Tij ] = [aiq ] [ Tqm ] [amj]T

Problema de valores e vectores prprios


Pode considerar-se que qualquer matriz quadrada e simtrica A de dimenso n um
operador linear que transforma um vector v num vector r.

r = Av

r = Av
Fig. 1.3 O problema de valores e vectores prprios.
Existir algum vector v tal que Av resulte num vector r alinhado com v, como se indica
na figura 1.3? Demonstra-se que existem pelo menos n direces segundo as quais
podem ser dispostos os vectores v para que esta condio se verifique. Os vectores r so
nestes casos mltiplos escalares dos vectores v que os originam, i.e., r = v. Os valores
de e os correspondentes vectores v designam-se respectivamente valores prprios e
vectores prprios da matriz A.
r = Av = v Av v = 0 ( A I ) v = 0

(A

ij

ij )v j = 0

Determinao de valores prprios e vectores prprios


Para uma matriz de dimenso n, o problema de valores e vectores prprios conduz
determinao de n valores prprios, e para cada um deles, determinao do vector
prprio associado. Sabendo que para cada valor conhecido de o problema
( A I ) v = 0 se transforma num sistema de equaes linear homogneo, e que para
que exista uma soluo no trivial deste necessrio que a matriz dos coeficientes tenha
determinante nulo, podem obter-se os valores prprios calculando os que anulam o
determinante A I = 0 . Para n = 3 obtm-se o sistema de equaes,

J. Cardoso/P. Coelho

Clculo tensorial

MCEM

( A11 )v1 + A12 v2 + A13v3 = 0


A21v1 + ( A22 )v2 + A23v3 = 0
A31v1 + A32 v2 + ( A33 )v3 = 0

Como apenas duas destas equaes so linearmente independentes, a este sistema


acrescenta-se a equao que corresponde a considerar unitrio cada vector v,
vi vi = 1

O determinante A I = 0 pode ser expandido na equao caracterstica da matriz A

3 I A 2 + II A III A = 0
As razes da equao caracterstica so os valores prprios. Os coeficientes IA , IIA , IIIA
designam-se respectivamente primeiro, segundo e terceiro invariantes.
I A = Aii = trao A

II A =

1
1
( Aii A jj Aij A ji ) = (trao A) 2 ( trao A2 )
2
2

III A = ijk A1i A2 j A3k = determinante A

J. Cardoso/P. Coelho

Clculo tensorial

J. Cardoso/P. Coelho

MCEM

10

Introduo ao mtodo dos elementos finitos

MCEM

2. INTRODUO AO MTODO DOS


ELEMENTOS FINITOS

A criao de modelos de fenmenos fsicos uma das actividades importantes da


engenharia. Praticamente todos os fenmenos da natureza podem ser descritos pelas leis
da fsica e modelados atravs de equaes algbricas, diferenciais ou integrais
relacionando as vrias quantidades que os caracterizam.
As descries analticas dos fenmenos fsicos designam-se modelos matemticos. Um
modelo matemtico pode ser definido como um conjunto de equaes que exprime
caractersticas essenciais do comportamento do sistema fsico atravs de relaes entre
as variveis e os parmetros que descrevem o sistema. Os modelos matemticos de
fenmenos fsicos so muitas vezes baseados em leis fundamentais da fsica, tais como
o princpio da conservao da massa, conservao do momento linear e conservao da
energia.
A resoluo dos conjuntos de equaes que formam um modelo matemtico depende
fundamentalmente da complexidade dessas equaes. Enquanto para modelos simples a
resoluo analtica fcil de obter, para modelos complexos com equaes diferenciais
e integrais definidas em domnios de geometria complicada, a resoluo analtica pode
ser difcil ou mesmo impossvel. Por isso, at ao aparecimento dos computadores, era
comum simplificar drasticamente as equaes ou os domnios, de forma a obter
solues por via analtica.
Nas ltimas dcadas, contudo, a utilizao de computadores veio possibilitar, com a
ajuda de modelos matemticos adequados e de mtodos numricos, resolver muitos
problemas prticos de engenharia. O uso de um mtodo numrico e de um computador
para avaliar o modelo matemtico de um fenmeno fsico e estimar as suas
caractersticas designa-se por simulao numrica. Actualmente existe um domnio do
conhecimento em expanso relacionado com o desenvolvimento de modelos
matemticos e o uso de simulaes numricas de fenmenos fsicos, que designado
por mecnica computacional.
Entre os mtodos numricos destaca-se o mtodo dos elementos finitos, que constitui
uma ferramenta poderosa capaz de analisar problemas reais de engenharia. Com este
mtodo possvel executar simulaes em vrios domnios da engenharia e da fsica,
por exemplo envolvendo anlise de tenses e deformaes, determinao de vibraes

J. Cardoso/P. Coelho

11

Introduo ao mtodo dos elementos finitos

MCEM

ou anlise do escoamento trmico. Outros mtodos tambm muito usados so o mtodo


das diferenas finitas e o mtodo dos volumes finitos.

2.1. O mtodo dos elementos finitos


O mtodo dos elementos finitos (MEF) um mtodo numrico, tal como o mtodo das
diferenas finitas, mas mais geral e poderoso pelas capacidades que oferece de
resolver problemas concretos de engenharia envolvendo geometrias, comportamentos
fsicos ou condies fronteira complexas. No MEF o domnio do problema
decomposto em vrios sub domnios e em cada um desse sub domnios as equaes que
regem o fenmeno so aproximadas usando um mtodo variacional. A razo principal
para procurar aproximar uma soluo num conjunto de sub domnios reside no facto de
ser mais fcil representar uma funo complicada como uma composio de funes
polinomiais simples, com um erro que pode ser to pequeno quanto se pretenda,
bastando aumentar o nmero de sub domnios.

f(x)
p2(x)

pi(x)
p8(x)

p (x)

x
a

d1

d2

di

d8

Fig. 2.1 A funo f(x) pode ser aproximada pelo conjunto de funes pi(x).
A figura 2.1 ilustra este conceito. A funo f(x), representada a negro, pode ser
aproximada pelos polinmios p1(x), p2(x), ... p8(x) representados a vermelho. Cada
polinmio pi(x) definido apenas no sub domnio di. O erro cometido na aproximao
pode ser to reduzido quanto se queira, mesmo que os polinmios pi(x) tenham um grau
baixo, desde que se aumente o numero de troos ou divises do domnio entre a e b.
O uso de princpios variacionais necessrio porque a obteno dos sistemas de
equaes que permitem solucionar um problema pelo MEF requer que este seja
formulado como um integral definido em todo o domnio. Contudo, os conjuntos de
equaes que descrevem os fenmenos fsicos estabelecem normalmente relaes entre
as variveis e os parmetros do problema fsico na vizinhana de cada ponto do

J. Cardoso/P. Coelho

12

Introduo ao mtodo dos elementos finitos

MCEM

domnio. Para passar desta descrio pontual do fenmeno fsico para a descrio
integral requerida pelo MEF usam-se os princpios variacionais.

2.2. Um pouco de histria


O mtodo dos elementos finitos desenvolveu-se quando apareceram os computadores
que tornaram a sua aplicao vivel. De facto este mtodo implica sempre um volume
de clculo aprecivel pelo que o clculo manual apenas permite utilizar um reduzido
nmero de elementos. S a utilizao de computadores permite explorar
convenientemente todas as suas potencialidades.
Os trabalhos de Hrenikoff (1941) e de Courant (1943) so unanimemente considerados
percursores do mtodo. O primeiro considerou que um domnio elstico podia ser
representado como uma coleco de barras e de vigas. O segundo apresentou a ideia de
usar funes definidas por troos para aproximar funes desconhecidas e usou um
conjunto de elementos triangulares e o princpio da energia potencial total estacionria
para encontrar solues para o problema da toro de St. Venant. Embora algumas
caracteristicas essencias do mtodo tenham sido propostas por Hrenikoff e Courant, a
sua apresentao formal atribuda a Turner, Clough, Martin e Topp (1956) e a Argyris
e Kelsey (1960). A designao elemento finito foi pela primeira vez usada por Clough
(1960). Desde a sua criao o mtodo dos elementos finitos tem sido aperfeicoado e
expandido a novos domnios de aplicao. Informao adicional sobre a histria deste
mtodo pode ser obtida no artigo de Babuska (1994).

2.3. Princpios variacionais


O MEF pode ser considerado como uma aplicao ao nvel dos elementos de um
mtodo variacional e por isso til perceber como que estes mtodos funcionam.
Diz-se que um mtodo variacional quando se baseia em princpios variacionais tal
como o princpio dos trabalhos virtuais, o princpio da energia potencial total
estacionria ou o princpio de Hamilton para obter solues aproximadas de problemas.
No sentido clssico, um princpio variacional est relacionado com a obteno de um
extremo (mximo ou mnimo) ou de um valor estacionrio de um funcional em relao
s variveis do problema. Define-se funcional em matemtica como sendo uma
aplicao de um campo vectorial num campo escalar, geralmente o dos nmeros reais.
Uma classe especial de funcionais a que estabelece a aplicao de uma funo f(x) no
conjunto dos reais atravs de um integral que depende da funo f(x) ou das suas
derivadas f (x), f (x):

= H ( f ( x ), f ( x ),...)dx

J. Cardoso/P. Coelho

13

Introduo ao mtodo dos elementos finitos

MCEM

O clculo das variaes ou clculo variacional o domnio da matemtica que lida


com funcionais, por oposio ao clculo ordinrio que lida com funes. O objectivo do
clculo variacional normalmente obter a funo que faz com que um funcional atinja
um valor extremo, mximo ou mnimo.
Para resolver problemas usando um princpio variacional e o clculo das variaes, deve
escrever-se um funcional que inclua todas as caractersticas intrnsecas do problema tais
como as equaes que regem o fenmeno e as condies fronteira ou condies iniciais.
Em mecnica dos slidos ou em mecnica estrutural o funcional pode representar a
energia total do sistema. Diz-se que esse funcional corresponde formulao
variacional do problema. Embora o termo formulao variacional se referisse
inicialmente construo de um funcional baseado num princpio variacional,
actualmente designa-se por formulao variacional qualquer formulao em que as
equaes que regem o fenmeno fsico so escritas sob a forma de equaes integrais
que no so necessariamente equivalentes a princpios variacionais. Mesmo os
problemas que no admitem princpios variacionais no sentido clssico do termo por
exemplo o comportamento de um fluido viscoso definido pelas equaes de NavierStokes podem agora ser formulados usando equaes integrais.
Pode ento dizer-se que o conjunto de equaes diferenciais que descreve um fenmeno
fsico em todos os pontos do domnio corresponde formulao forte ou forma forte do
problema fsico. Para se poder usar o MEF, necessrio obter uma formulao integral
que transforma a obrigatoriedade de verificao pontual do conjunto de equaes numa
obrigatoriedade de verificao mdia no domnio. Essa formulao designa-se
formulao fraca ou forma fraca do problema. Um dos processos de a obter consiste em
usar o clculo variacional e deduzir a forma fraca a partir da formulao variacional do
problema.

2.4. Princpio da energia potencial total estacionria


Este princpio aplica-se a problemas de equilbrio esttico e diz que uma posio de
equilbrio corresponde a um ponto de estacionaridade do funcional que representa a
energia potencial total. Este ltimo consiste na soma da energia de deformao do
sistema, U, com a energia potencial das foras aplicadas sobre ele, V.

= U +V
Para perceber como este princpio pode ser usado, considere-se um exemplo simples em
que a energia de deformao e a energia potencial so funo de um s parmetro, x,
como o caso da massa m suspensa da mola de rigidez k indicadas na figura seguinte.
Neste caso simples a energia potencial total uma funo de x e no um funcional.
Considerando que x = 0 representa a posio inicial da massa m , o princpio permite
calcular a posio final de equilbrio.
A energia de deformao e a energia potencial devida ao peso, mg, so respectivamente:

J. Cardoso/P. Coelho

14

Introduo ao mtodo dos elementos finitos

U=

1 2
kx
2

MCEM

V = mgx
k

E a energia potencial total :

1
2

= U + V = kx 2 mgx

Fig. 2.2 Energia potencial total


para um sistema massa-mola.
Como a energia potencial uma funo de x, pode obter-se um ponto de estacionaridade
derivando em ordem a x e igualando a zero, o que permite obter a soluo do
problema:

mg
= kx mg = 0 x =
x
k
Assumindo valores para os parmetros, isto , considerando m = 10 kg, g = 9,81 m/s e
k = 1962 N/m, pode desenhar-se o grfico da funo (x), que est representado na
figura 2.3. Pode observar-se que o ponto de equilbrio corresponde a um mnimo da
energia potencial total, o que implica que esse equilbrio estvel. O valor de no
ponto x = 0,05 m 2,4525, o que corresponde ao mnimo assinalado.

x
0

-0.5

-1

Mnimo da energia
potencial total

-1.5

-2

-2.5

0.01

0.02

0.03

0.04

0.05

0.06

0.07

Fig. 2.3 Grfico da energia potencial total em funo do parmetro x.

J. Cardoso/P. Coelho

15

Introduo ao mtodo dos elementos finitos

MCEM

2.5. Mtodo de Rayleight-Ritz


Este mtodo foi introduzido por Rayleigh em 1890 e desenvolvido por Ritz em 1906.
um mtodo variacional em que uma soluo u para a funo a determinar aproximada
por uma combinao linear, u~ , de funes conhecidas, i , e de coeficientes
desconhecidos, ci :

u~ =

i i

i =1

As funes i so escolhidas para cada problema e devem respeitar as condies


fronteira essenciais. Podem usar-se polinmios ou funes trigonomtricas desde que
sejam linearmente independentes. Para ilustrar o uso deste mtodo considere-se o
exemplo da viga em consola sujeita a uma carga distribuda uniforme qo como indicado
na figura 2.4.
Para esta viga, a energia de deformao e a energia potencial devida carga distribuda
so:

U=

1 d 2u
dx
EI
2 dx 2

V = q0u dx
0

A energia potencial total :


q0

1 EI d u q u dx
0
2 dx 2

x
L

Fig. 2.4 Viga em consola com carga distribuda uniforme


Onde a funo desconhecida, u(x), representa o deslocamento transversal da viga.
Considere-se 1 = x2 , que respeita as condies fronteira essenciais do problema, e
portanto que u(x) aproximada por:

u~ = c1 x 2
Ento

du
= 2c1 x
dx

d 2u
= 2c1
dx 2

Substituindo na expresso da energia potencial total,


L 1

= EI (2c1 )2 q0c1 x 2 dx
0

J. Cardoso/P. Coelho

16

Introduo ao mtodo dos elementos finitos

MCEM

Verifica-se que, tal como no exemplo anterior, s depende de um parmetro, c1, por
isso existe equilbrio quando:

d
=
dc1

q0 L2
2c1EI q0 x dx = 0 c1 =
12 EI

(
L

A soluo aproximada do problema ento:

q0 L2 2
~
u=
x
12 EI
Como segunda aproximao considerem-se as funes 1 = x2 e 2 = x3. Logo,

u~ = c1 x 2 + c2 x 3
d 2u
= 2c1 + 6c2 x
dx 2

du
= 2c1 x + 3c2 x 2
dx
Substituindo na expresso da energia potencial total,

L 1

= EI (2c1 + 6c2 x )2 q0 c1 x 2 + c2 x 3 dx
0

Verifica-se agora que depende de dois parmetros, c1 e c2 . Por isso existe equilbrio
quando:
L
L
d
(
)
=
EI
2
c
+
6
c
x

2
dx

q0 x 2dx = 0
1
2
dc
0
0
1
d
L
L

= EI (2c1 + 6c2 x ) 6 xdx q0 x 3dx = 0


0
0
dc2

Este sistema de duas equaes a duas incgnitas pode escrever-se sob a forma matricial:

4L
2
6 L

qL3
6 L c1 3EI
5qL2
qL
= 4 c1 =
, c2 =
3
24 EI
12 EI
12 L c2 qL
4 EI
2

E a soluo aproximada ser agora:

5qL2 2
qL 3
~
u=
x
x
24 EI
12 EI

J. Cardoso/P. Coelho

17

Introduo ao mtodo dos elementos finitos

MCEM

O facto de se transformar a soluo de um problema definido por equaes diferenciais


na soluo de um sistema de equaes algbricas inspirou o MEF. De facto pode dizerse que este uma forma de automatizar o mtodo de Rayleigh-Ritz.

J. Cardoso/P. Coelho

18

Elementos finitos em vigas

MCEM

3. ELEMENTOS FINITOS EM VIGAS

Apresenta-se a aplicao deste mtodo na soluo de problemas com vigas sujeitas a


carregamento axial e transversal. Considera-se comportamento linear e comportamento
geometricamente no linear.
A formulao do mtodo dos elementos finitos pode obter-se de vrios modos. Um
deles consiste em utilizar o princpio da energia potencial total estacionria.

= U +V
Energia potencial total
U Energia de deformao
V Energia potencial das foras aplicadas
Este princpio diz que uma posio de equilbrio caracterizada pelo facto de
corresponder a um ponto de estacionaridade da energia potencial total.
Energia de deformao

A expresso geral da energia de deformao contida num corpo de volume V :

U=

1
ij ij dV
2 V

(3.1)

Podem considerar-se independentes os estados de tenso e de extenso associados ao


esforo axial e ao momento-flector. Podem tambm desprezar-se as parcelas da energia
de deformao associadas s tenses tangenciais e as deformaes provocadas pelo
esforo transverso na viga.
x2
x3

x1

Fig. 3.1 Referencial usado na viga.


J. Cardoso/P. Coelho

11

ij = 0

0
0
0

11

ij = 0

22
0

33

19

Elementos finitos em vigas

MCEM

Utilizando um referencial de eixos x1x2x3 como o representado na figura 3.1, o estado de


tenso e de extenso em cada ponto da viga ser caracterizado pelos tensores das
tenses e das deformaes indicados. Designam-se os deslocamentos de um ponto
segundo x1, x2 e x3 por u1, u2 e u3 respectivamente.
Energia de deformao associada ao esforo axial

Numa viga apenas com carregamento axial, pode considerar-se o estado de tenso e de
extenso uniforme para todos os pontos da mesma seco transversal, com 11= P/A
onde P a carga axial e A a rea da seco. Considerando comportamento elstico
linear, 11= E 11, onde E o mdulo de Young. O nico produto diferente de zero em
ijij 1111 e a equao (3.1) d origem a:

U=

1 L
1 L
1 L
2

dAdx
=
EA

dx
=
EAu12,1dx1
11
11
1
11
1

0
A
0
0
2
2
2

Pois a extenso 11 em qualquer ponto da seco igual derivada u1,1 =

(3.2)
u1
do
x1

deslocamento segundo x1.

x2
x3

uI
uII

x1

Fig. 3.2 Elemento finito barra.


Considere-se o elemento finito com dois ns representado na figura 3.2. Sejam uI e uII
os deslocamentos segundo x1 desses ns. Devido ao carregamento axial existir
deslocamento axial u1 dos pontos situados sobre o eixo da viga. Assumindo que esse
deslocamento varia linearmente entre as extremidades,

u1 = a0 + a1 x

(3.3)

Utilizando duas funes de forma, NI e NII, o deslocamento u1 em qualquer ponto da


viga ser dado por:
2

u1 = u I N I + u II N II = u J N J = u J N J
J =1

A expresso analtica para estas funes pode ser facilmente obtida a partir do
polinmio (3.3) e das condies fronteira da viga,

J. Cardoso/P. Coelho

x1 = 0

u1 = a0 = u I

x1 = L

u1 = a0 + a1 L = u II
20

Elementos finitos em vigas

MCEM

logo,

a1 =

a0 = u I

u II u I
L

E substituindo no polinmio (3),

x
x
u1 = 1 1 u I + 1 u II
L
L

(3.4)

As duas funes de forma esto representadas graficamente na figura 3.3:

x1

x1

Fig. 3.3 Funes de forma para representar o deslocamento axial da viga.

N I = 1

x1
L

N II =

x1
L

N II ,1 =

1
L

As derivadas destas duas funes so respectivamente,

1
N I ,1 =
L

Utilizando as funes de forma, e sabendo que u1,1 = uJ NJ,1 , pode escrever-se a energia
de deformao (3.2) no elemento:

U=

L
1 L
1
2
(
)
EA
u
N
dx
=
u
EA N J ,1 N K ,1dx1u K
J
J
,
1
1
J
2 0
2 0

(3.5)

Esta expresso resulta mais clara se for usada uma representao matricial das vrias
quantidades envolvidas. Definindo a extenso segundo x1:

11 = u1,1 = u J
J =1

J. Cardoso/P. Coelho

N J
N J
= uJ
= {u I
x1
x1

N I
x
1
u II }
N II
x1

21

Elementos finitos em vigas

MCEM

Pode escrever-se a expresso (3.5) de forma matricial:

U=

1
{u I
2

N I

L x1
u II }
0
N
II
x
1

N I

x1

uI
N II

EAdx1
x1
u II

(3.6)

ou

1
1
U = u J K JK uK = {u I
2
2

uI

u II }K JK
u
II

onde
L

K JK = N J ,1 N K ,1 EAdx1

(3.7)

a matriz de rigidez que contabiliza a parcela da energia de deformao elstica devida


ao carregamento axial.
Esta matriz pode ser obtida escrevendo a equao (3.7) sob a forma matricial, para uma
viga de seco transversal uniforme:

K JK

L
L 1
=

0
1

L
L

EA
L
1
EAdx1 =
L
EA
L

EA
L

EA
L

(3.8)

Energia potencial das foras aplicadas

A energia potencial de uma fora aplicada sobre um corpo igual ao produto da fora
pelo deslocamento do seu ponto de aplicao, afectado do sinal negativo (quando o
ponto de aplicao da fora se desloca no sentido da fora, diminui a energia potencial).
Se apenas se considerarem foras aplicadas sobre os ns no sentido do eixo x1 a energia
potencial das foras aplicadas ser,

V = u J FJ = {u I

f
u II } I
f II

E a energia potencial total ser:

1
2

= u J K JK u K u J FJ =

J. Cardoso/P. Coelho

1
{u I
2

u
u II }K JK I {u I
u II

f
u II } I
f II
22

Elementos finitos em vigas

MCEM

Para que um corpo esteja em equilbrio necessrio que a derivada de em ordem aos
parmetros de que depende a energia potencial total, que so aqui os deslocamentos
dos ns seja zero.

u f

= K JK u K FJ = K JK I I = 0
u K
u II f II
Para obter os valores desconhecidos dos deslocamentos nodais basta resolver o sistema
de equaes lineares indicado:

AE
L
AE

AE
L uI = f I
AE u II f II

Para perceber como aplicar esta metodologia, considere-se o exemplo simples


representado na figura 3.4, onde se pretende calcular o deslocamento na extremidade C
e a reaco no ponto A produzidos pela fora P aplicada sobre a viga indicada.
LAB = 0,6 m
LBC = 0,4 m
AAB = 0,005 m2
ABC = 0,0025 m2
E = 200 GPa
P= 100 kN

x2
x3

P
A

LAB

B
LBC

x1

C
1

2
1

Fig. 3.4 Viga encastrada de seco varivel e respectiva malha de elementos finitos.
A viga constituda por dois troos de seco diferente. Como a matriz de rigidez K
pressupe uma rea constante do incio ao fim do elemento, consideram-se dois
elementos finitos para representar a viga. Designa-se por malha de elementos finitos o
conjunto de ns e elementos que constituem o modelo de elementos finitos da viga.
Neste caso a malha constituda por dois elementos (nmeros indicados dentro de
quadrados) e trs ns (nmeros indicados dentro de crculos), como representado na
figura 3.4.
Atendendo ao comprimento, rea da seco transversal e mdulo de elasticidade de
cada elemento podem calcular-se as duas matrizes de rigidez:

EAAB
L
K 1 = AB
EAAB
LAB
J. Cardoso/P. Coelho

EAAB
LAB

EAAB
LAB

EABC
L
K 2 = BC
EABC
LBC

EABC
LBC

EABC
LBC

23

Elementos finitos em vigas

MCEM

possvel escrever um sistema de equaes como o indicado anteriormente para cada


um dos elementos. Contudo, reparando que o deslocamento do segundo n do elemento
1 idntico ao do primeiro n do elemento 2, podem escrever-se a matriz de rigidez
global e os vectores dos deslocamentos e de foras globais.

AAB E

LAB
AAB E
LAB

AAB E
LAB
AAB E ABC E
+
LAB
LBC
A E
BC
LBC

u1 f1
ABC E

u 2 = f 2
LBC
ABC E u3 f 3

LBC

Nestes vectores os ndices referem-se aos ns indicados na malha de elementos finitos


da figura 3.4. O processo de obteno da matriz de rigidez global da estrutura a partir
das matrizes de rigidez de cada elemento designa-se assemblagem.
Reparando que o n 1 est encastrado verifica-se que u1 = 0 e que f1 corresponde
reaco desconhecida no apoio A. Retirando a primeira linha e a primeira coluna da
matriz de rigidez obtm-se o sistema:
L = 0,6 m
AB

AAB E ABC E
L + L
BC
AB
A
E
BC

LBC

ABC E
LBC u 2 f 2

=
ABC E u3 f 3
LBC

LBC = 0,4 m
AAB = 0,005 m2
ABC = 0,0025 m2
E = 200 GPa
P= 100 kN

Ou

2,9167 109

9
1,25 10

1,25 109 u2 0

=
1,25 109 u3 100000

Resolvendo este sistema de equaes obtm-se u2 = 0,06 103 m , u3 = 0,14 103 m.


Utilizando a primeira linha da matriz de rigidez 3 3 original, calcula-se
f1 = 100000 N, como seria de esperar.
Energia de deformao associada ao momento flector

Pode estudar-se independentemente a flexo nos planos x1x2 e x1x3. Considere-se apenas
o plano x1x2 e tambm que a seco da viga uniforme. Considere-se vlida a lei de
Hooke.
A deformao que ocorre numa seco funo apenas do deslocamento transversal, u2.
Sabe-se da teoria de vigas que 11 =

J. Cardoso/P. Coelho

M
x2
I

24

Elementos finitos em vigas

MCEM

U=

1 L
11 11dAdx1
2 0 A

1 L 112
=
dAdx1
2 0 A E
1 L M2 2
= 2 x2 dAdx1
2 0 AI E
1 L M2
= 2
2 0 I E

( x dA ) dx
A

2
2

1 LM2
1 L
=
dx1 = EIu22,11 dx1
2 0 IE
2 0
Atendendo a que

x22 dA = I e

u2,11 =

(3.9)

M
EI

x2
vI
vII

x3

II

x1

Fig. 3.5 Elemento finito viga.


Considere-se o elemento finito com dois ns representado na figura 3.5. Sejam vI e vII os
deslocamentos segundo x2 desses ns e I e II as rotaes em torno de x3 do eixo da
viga nesses ns. Assumindo que a elstica da viga ser representada por um polinmio
de terceiro grau vir,

u2 = a0 + a1 x + a2 x 2 + a3 x 3

(3.10)

Pode exprimir-se u2 utilizando funes de forma, NJ . Contudo, como o polinmio tem


quatro parmetros, so necessrias quatro funes de forma e os deslocamentos u2 em
quatro ns. possvel, em alternativa, utilizar quatro funes de forma e apenas dois
ns, mas neste caso necessrio considerar simultaneamente o deslocamento u2 e a
rotao em torno de x3 nesses dois ns.

u2 = v I N I + I N II + v II N III + II N IV = u J N J

J. Cardoso/P. Coelho

(3.11)

25

Elementos finitos em vigas

MCEM

onde uJ um vector contendo os deslocamentos generalizados nos ns do elemento


viga,
(3.12)

u J = {v I

v II

II }

Tal como anteriormente acontecia para a viga com carregamento axial possvel obter
estas funes de forma explcita. Considerando as condies fronteira:

x1 = 0

u2 = a0 = v I

x1 = 0

u2,1 = a1 = I

x1 = L

u2 = a0 + a1 L + a2 L2 + a3 L3 = v II

x1 = L

u2,1 = a1 + 2a2 L + 3a3 L2 = II

podem obter-se os coeficientes a0, a1, a2 e a3:

a0 = v I
a1 = I

3
2
3
1
v I + 2 v II II
2 I
L
L
L
L
2
1
2
1
a3 = 3 v I + 2 I 3 v II + 2 II
L
L
L
L

a2 =

Que substitudos no polinmio inicial (3.10) permitem obter u2 como funo de uJ

u2 =

2
1
2
1
3
v x 3 + 2 I x13 3 v II x13 + 2 II x13 2 v I x12
3 I 1
L
L
L
L
L
2
3
1
I x12 + 2 v II x12 II x12 + I x1 + v I
L
L
L

Agrupando convenientemente os termos referentes a vI, vII, I e II obtm-se os


polinmios de Hermite:
NI

NI = 1

3 2 2 3
x1 + 3 x1
L2
L

x1
L

N II = x1

2 2 1 3
x1 + 2 x1
L
L

NII
x1
L

J. Cardoso/P. Coelho

26

Elementos finitos em vigas

MCEM

NIII

N III =

3 2 2 3
x1 3 x1
L2
L
L

N IV =

1 2 1 3
x1 + 2 x1
L
L

NIV

L x1

(3.13)
Fig. 3.6 Polinmios de Hermite

A energia de deformao elstica da viga foi expressa em (3.9) em funo das segundas
derivadas do deslocamento transversal u2. Derivando a equao (3.11) obtm-se:

u2,11 = v I N I ,11 + I N II ,11 + v II N III ,11 + II N IV ,11 = u J N J ,11

(3.14)

Pelo que necessrio obter as derivadas das funes de forma. O clculo analtico
destas derivadas permite obter:

N I ,11 =
N III ,11 =

6 12
+ x1
L2 L3

6 12
x1
L2 L3

N II ,11 =

4 6
+ x1
L L2

N IV ,11 =

2 6
+ x1
L L2

Substituindo na equao (3.9) u2,11 por uJ NJ,11 obtm-se,

U=

L
1 L
1
2
(
)
EI
u
N
dx
=
u
J
J ,11
1
J EI N J ,11 N K ,11dx1u k
2 0
2 0

ou

U=

(3.15)

1
u J K JK uk
2

onde
L

K JK = EI N J ,11 N K ,11dx1
0

(3.16)

a matriz de rigidez que contabiliza a parcela da energia de deformao elstica devida


flexo.
J. Cardoso/P. Coelho

27

Elementos finitos em vigas

MCEM

Os elementos desta matriz podem ser calculados escrevendo primeiramente a equao


(3.14) sob a forma matricial,

u2,11 = {v I

v II

6 12
L2 + L3 x1

4 6
L + L2 x1

II }

6 12 x
L2 L3 1

2
6
+ x
L L2 1

E em seguida realizando os produtos e a integrao que surgem na expresso da matriz


de rigidez (3.16). Obtm-se ento,

K JK

12 EI
L3

6 EI
L2
=
12 EI
3
L
6 EI

L2

6 EI
L2

4 EI
L

6 EI
2
L
2 EI
L

12 EI
L3
6 EI
L2

12 EI
L3

6 EI
L2

6 EI
L2

2 EI
L

6 EI
2
L
4 EI

(3.17)

As duas matrizes de rigidez, associadas traco/compresso e flexo podem ser


combinadas numa s.
O elemento viga da figura 3.2 apenas contabiliza a energia de deformao associada
traco/compresso. O clculo dessa energia apenas depende do deslocamento segundo
o eixo x1 de cada n do elemento. Diz-se que cada n tem um grau de liberdade. O
elemento tem dois ns e por isso tem um total de dois graus de liberdade. Por isso o
vector de deslocamentos do elemento tem dois elementos e a sua matriz de rigidez tem a
dimenso 22.
De modo anlogo diz-se que cada n do elemento viga da figura 3.5 tem dois graus de
liberdade e que esse elemento tem um total de quatro graus de liberdade.
Verifica-se que os graus de liberdade associados traco/compresso so
independentes dos graus de liberdade associados flexo. Agrupando num vector de
deslocamentos generalizados todos os 6 graus de liberdade obtm-se:

J. Cardoso/P. Coelho

28

Elementos finitos em vigas

MCEM

u J = {u I

vI

u II

II }

v II

(3.18)

A energia de deformao continuar a ser obtida pela expresso,

1
u J K JK uk
2

U=

E a matriz de rigidez do elemento viga com 6 graus de liberdade ser,

K JK

EA
L

0
=
EA

EA
L

12 EI
L3

6 EI
L2

6 EI
L2

4 EI
L

EA
L

12 EI
L3

12 EI
L3
6 EI
L2

6 EI
L2

2 EI
L

0
12 EI
L3
6 EI
L2

6 EI
L2

6 EI
L2

2 EI

6 EI
2
L
4 EI

L (3.19)

Energia potencial para foras e momentos aplicados nos ns

Considerando foras aplicadas sobre os ns de um elemento finito com trs graus de


liberdade por n e dois ns, a energia potencial associada a essas foras ser:

V = u J FJ

com

u J = {u I

J. Cardoso/P. Coelho

vI

u II

v II

II }

fI


pI


mI

FJ =
f
II

p
II


mII

29

Elementos finitos em vigas

MCEM

FJ o vector contendo as foras generalizadas aplicadas nos ns do elemento, sendo fi


e pi as foras aplicadas no n i segundo x1 e x2 respectivamente e mi o momento no n i
em torno de x3.

Energia potencial para cargas distribudas

Se sobre o mesmo elemento finito estiver aplicada uma carga distribuda uniforme Q
ento:
x2

x3

x1

Fig. 3.7 Carga distribuda uniforme.


L

V = u2Qdx1
0

Utilizando funes de forma para representar u2, u2 = uJNJ ,


L

V = u J N J Qdx1
0

(3.20)

Realizando este integral, obtm-se:

V = {u I

J. Cardoso/P. Coelho

vI

u II

v II

0
QL

2
QL

II } 12
0
QL
2

2
QL
+

12

30

Elementos finitos em vigas

MCEM

Onde os sinais negativos que surgem nos elementos do vector de foras equivalentes se
devem ao facto de se considerar positiva uma carga Q que actua no sentido oposto ao
eixo x2. O integral na equao (3.20) pode ser obtido para qualquer funo Q(x1). Para
os carregamentos triangulares indicados na figura 3.8, os vectores de foras
equivalentes so os seguintes,
x2
QI

x2
QII

x3

x1

x3

x1

Fig. 3.8 Cargas distribudas triangulares.

7Q L
I
20
Q L2
I
20
FJ =

3Q I L
20

2
Q
L
I
+

30

3Q L
II
20
Q L2
II
30
FJ =

7
Q
L
II

20

2
+ QI L

20

Energia potencial para cargas axiais

Um caso particular ocorre quando o ponto de aplicao de uma fora actuando segundo
o eixo da viga sofre deslocamento devido flexo existente na viga. Este facto vai
implicar um comportamento no linear da viga.
P

Fig. 3.9 Encurtamento de uma viga com uma cara axial provocando flexo.
J. Cardoso/P. Coelho

31

Elementos finitos em vigas

MCEM

P
F

Comportamento linear

M = FL
L

Comportamento no linear

M = FL + P
M

Fig. 3.10 Viga com flexo e compresso.


O comportamento no linear (isto uma relao no linear entre foras e
deslocamentos) est neste caso associado ao facto dos deslocamentos serem
suficientemente grandes para que no possa ser desprezada a modificao na posio do
ponto de aplicao das foras que ocorre durante a deformao.
Este comportamento no linear tambm se diz comportamento geometricamente no
linear para o diferenciar do comportamento no linear com origem na deformao
plstica do material, que se designa por comportamento materialmente no linear. Este
ltimo no abordado aqui.
Para pequenos deslocamentos e rotaes, usual considerar que as foras so aplicadas
na configurao inicial da viga. Assume-se tambm que o deslocamento dos pontos de
aplicao dessas foras durante a deformao no afecta os esforos internos. Obtm-se
assim uma relao linear entre foras e deslocamentos.
Isto equivalente a considerar que os integrais realizados anteriormente no clculo da
energia de deformao so sempre realizados na configurao inicial.
Se os deslocamentos e rotaes forem grandes, ento o efeito da alterao do ponto de
aplicao das foras externas deve ser considerado. Para vigas com cargas axiais, isto
pode ser conseguido contabilizando a variao da energia potencial devida
modificao de comprimento da viga por flexo.
O deslocamento da Figura 3.9 pode ser aproximado por:

1 L 2
u2,1dx1
2 0

A energia potencial associada fora axial P ser,

V = P =

J. Cardoso/P. Coelho

P L 2
u2,1dx1
2 0
32

Elementos finitos em vigas

MCEM

Esta expresso pode ser discretizada recorrendo s funes de forma da viga sujeita
flexo,

V =

L
P
u J N J ,1 N K ,1dx1u K
0
2

ou

V =
onde

(3.21)

P
u J G JK u K
2
L

(3.22)

G JK = N J ,1 N K ,1dx1
0

a matriz de rigidez geomtrica ou matriz geomtrica da viga. Quando P provoca


compresso na viga, os coeficientes de G, multiplicados por P devem ser subtrados
matriz de rigidez K deduzida anteriormente provocando uma diminuio de rigidez. No
caso da fora P provocar traco, ocorre um aumento de rigidez.

G JK

6
5L

1
10
=
6

5L
1

10

1
10

6
5L

2L
15

1
10

1
10

L
30

6
5L

1
10

1
10

L

30

1

10
2L

15

(3.23)

De notar que os deslocamentos e rotaes contidos no vector uJ so os indicados em


(3.12) e a matriz G ter por isso a dimenso 44. Contudo, pode sempre obter-se uma
matriz com 66 elementos, compatvel com (3.19) acrescentando duas linhas e duas
colunas com zeros, para os deslocamentos segundo x1 em (3.19).
A equao (3.10) utilizada para representar a deformada da viga (equao da linha
elstica) representa a soluo de uma viga sujeita a cargas concentradas que apresente
uma variao linear do momento flector, mas na ausncia da fora axial P. Por isso,
utilizando a matriz de rigidez KJK e a matriz geomtrica GJK apenas se podero obter
solues aproximadas para problemas com cargas axiais. Para obter solues exactas
para problemas como o da viga da figura 3.9, necessrio utilizar matrizes que se
baseiem na soluo exacta da equao de equilbrio considerando cargas axiais, que
toma a forma:

u2 = a0 sin kx1 + a1 cos kx1 + a2 x1 + a3

(3.24)

com k2 = P / EI . Considerando os deslocamentos generalizados nos ns do elemento


viga, que se indicaram anteriormente na equao (3.12), e as mesmas condies
fronteira:
J. Cardoso/P. Coelho

33

Elementos finitos em vigas

MCEM

x1 = 0

u2 = a1 + a3 = v I

x1 = 0

u2,1 = a0k + a2 = I

x1 = L

u2 = a0 sin(kL) + a1 cos(kL) + a2 L + a3 = v II

x1 = L

u2,1 = a0k cos(kL) a1k sin(kL) + a2 = II

podem obter-se os coeficientes a0, a1, a2 e a3:

a0 =

sin(kL)
cos(kL) 1 + kL sin(kL)
sin(kL)
cos(kL) 1
vI +
I
v II
II
A
kA
A
kA

a1 =

cos(kL) 1
kL cos(kL) sin(kL)
cos(kL) 1
sin(kL) kL
vI +
I
v II +
II
A
kA
A
kA

a2 =

a3 =

k sin(kL)
cos(kL ) 1
k sin(kL )
cos(kL) 1
vI +
v II +
I +
II
A
A
A
A

kL cos(kL) sin(kL)
cos(kL ) 1 + kL sin(kL)
cos(kL) 1
sin(kL) kL
vI
v II
I +
II
A
kA
A
kA

Que substitudos no polinmio inicial (3.24) permitem obter u2 como funo de uJ sob a
forma:

u2 = v I N I + I N II + v II N III + II N IV = u J N J

(3.25)

com

NI =

sin(kL)
cos(kL) 1
k sin(kL)
cos(kL) 1 + kL sin(kL)
sin(kx ) +
cos(kx )
x+
A
A
A
A

N II =

cos(kL) 1 + kL sin(kL)
kL cos(kL) sin(kL)
cos(kL) 1
sin( kx ) +
cos(kx ) +
x
kA
kA
A

N III =

kL cos(kL) sin(kL)
kA

sin(kL)
cos(kL) 1
k sin(kL)
cos(kL) 1
sin(kx )
cos(kx ) +
x+
A
A
A
A

J. Cardoso/P. Coelho

34

Elementos finitos em vigas

N IV =

MCEM

cos(kL) 1
sin(kL) kL
cos(kL) 1
sin(kL) kL
sin( kx ) +
cos(kx ) +
x
kA
kA
A
kA

possvel ento, utilizando as equaes calcular uma matriz que contabilize


simultaneamente a energia de deformao da viga e a energia potencial associada
carga axial.

1
U V = uJ
2

EI N J ,11N K ,11dx1uk

P
uJ
2

N
0

J ,1 N K ,1dx1u K

Procedendo como anteriormente, obtm-se a seguinte matriz de rigidez exacta:

T
K JK

121
L2

62

EI L
=
L 121
2
L
62

62
L

121
L2

43

62
L

62
L

24

62
L

24

62

43

121
L2

62
L

(3.26)

As funes i designam-se por funes de estabilidade e so definidas por:

1 = 2 cot
2 =

2
3(1 cot )
3
4

1
4

3
2

1
2

3 = 2 + cot
4 = 2 cot
com

kL L
=
=
2 2

J. Cardoso/P. Coelho

P
=
EI 2

P
PE

PE =

2 EI
L2

35

Elementos finitos em vigas

MCEM

PE a carga critica de uma viga com as dimenses, mdulo de elasticidade e momento


de inrcia do elemento viga considerado e com as duas extremidades apoiadas.
Observa-se que os elementos da matriz de rigidez total se obtm a partir dos elementos
correspondentes da matriz de rigidez inicial, (3.17), multiplicados pelas funes de
estabilidade. Estas so funes no lineares e esto representadas graficamente na
figura seguinte.

P/PE

Fig. 3.11 Funes de estabilidade


Energia potencial total

Obtidos todos os termos de U e V, a energia potencial total agora uma funo de vrias
incgnitas. Essas incgnitas so os deslocamentos e rotaes nos ns da viga e esto
arrumadas num vector de deslocamentos generalizados. A expresso geral para :

1
2

= u J K JK u K

P
u J G JK u K u J FJ
2

(3.27)

Como enunciado anteriormente uma posio de equilbrio caracterizada por


corresponder a um ponto de estacionaridade da energia potencial total. Um ponto de
estacionaridade existe quando,

=0
u J
J. Cardoso/P. Coelho

36

Elementos finitos em vigas

MCEM

Derivando (3.27) em ordem aos elementos do vector uJ obtm-se a seguinte equao de


equilbrio:

(K JK P GJK ) uK

= FJ

(3.28)

Com esta equao podem resolver-se vrios tipos de problema:

Considerando comportamento linear

K JK u K = FJ
Esta formulao conduz a um sistema de equaes lineares. A sua soluo permite
obter os deslocamentos e esforos na viga para as cargas aplicadas existentes em FJ.

Considerando comportamento no-linear e uma fora axial P desconhecida.

(K JK P GJK ) uK

=0

Na ausncia de foras externas aplicadas nos ns ou de carregamentos distribudos, o


vector de foras FJ zero e esta formulao conduz a um problema de valores prprios
e vectores prprios. A soluo permite determinar as cargas crticas, P, ou cargas que
provocam a instabilidade do sistema (os valores prprios) e as deformadas
correspondentes ou modos de instabilidade (os vectores prprios).

Considerando comportamento no-linear e a existncia de carregamentos


aplicados em FJ.

(K JK P GJK ) uK

= FJ

Esta formulao conduz a um sistema de equaes no-linear porque a fora P no


normalmente conhecida (para estruturas compostas por vrias vigas) pois o esforo
axial em cada viga e depende de uK . Por isso esta equao dever ser resolvida
iterativamente.
Problemas de dinmica

O princpio da energia potencial total estacionria est limitado resoluo de


problemas de equilbrio esttico de corpos slidos. O princpio de Hamilton uma
generalizao do princpio dos trabalhos virtuais dinmica de corpos slidos. O
princpio assume que o sistema caracterizado por duas energias: energia cintica e
energia potencial total e considera que para existir equilbrio necessrio que a
seguinte quantidade seja estacionria,
t2

(T ) dt
t1

J. Cardoso/P. Coelho

37

Elementos finitos em vigas

MCEM

T Energia cintica
Energia potencial total (soma da energia de deformao e da energia potencial das
foras aplicadas)

As equaes de equilbrio do elemento podem ser deduzidas a partir deste princpio,


obtendo-se,

T
+
=0
t u& u

u& =

com

u
t

(3.29)

Energia cintica

A expresso geral da energia cintica de um corpo slido de volume V ,


2

1 u
T = dV
2 V t

(3.30)

Considere-se um elemento finito de viga com material homogneo e seco transversal


uniforme, de rea A. Utilizando as funes de forma empregues anteriormente, pode
discretizar-se o campo de velocidade na viga e obter,

u u J
=
NJ
t
t
Escrevendo ento a equao (3.30) para o elemento viga vir,

T=

1 u J
2 t

ou

T=

AN J N K dx1
0

uk
t

1 u J
u
M JK k
2 t
t

onde MJK a matriz de massa do elemento, dada por,


L

M JK = AN J N K dx1
0

J. Cardoso/P. Coelho

38

Elementos finitos em vigas

M JK

1
3

0
= AL
1

MCEM

1
6

13
35

11L
210

9
70

11L
210

L2
105

13L
420

1
3

9
70

13L
420

13
35

13L

420

L2

140

11L
210

13L

420

2
L

140

11L

210
L2

105

(3.31)

Introduzindo na equao de equilbrio dinmico (3.29) as expresses da energia


cintica, energia de deformao e energia potencial discretizadas, obtm-se:

M JK

2uK
+ K JK uk = FJ
t 2

ou

M JK u&&K + K JK uk = FJ

com

2u
u&& = 2
t

(3.32)

Esta equao pode ser usada para resolver fenmenos transientes, com foras aplicadas
FJ que variem com t, o que exigir a integrao ao longo do tempo.
Para vibraes harmnicas e na ausncia de foras exteriores aplicadas (FJ = 0), a
expresso simplifica-se. Considerando que,

uK = uK sin t
u& K = uK cos t
u&&K = uK 2 sin t
Onde uK representa a amplitude da vibrao sinusoidal no grau de liberdade
correspondente, uK . Pode, substituindo em (3.32), obter-se:

( M
2

J. Cardoso/P. Coelho

JK

u K + K JK uk )sin t = 0
39

Elementos finitos em vigas

ou

MCEM

(K

JK

2 M JK ) uk = 0

Que a formulao de um sistema de valores prprios e vectores prprios. Este sistema


pode ser resolvido para determinar as frequncias naturais (os valores prprios) e os
modos de vibrao (os vectores prprios) da viga.

3.1. Exemplo Estrutura constituda por uma viga e uma barra


Analise pelo mtodo dos elementos finitos a estrutura representada na figura seguinte.

Barra AC

20 mm

Barra BC

160 mm
45
B

C
40 mm
P = 30 kN

2,5 m

Resoluo :

Vamos utilizar o mtodo dos elementos finitos para determinar as reaces nos apoios e
os deslocamentos horizontal e vertical do ponto C assim como a sua rotao. Este
problema pode ser resolvido pelo programa matef.m lendo o ficheiro de dados viga.inp.
Como a barra AC est articulada nas duas extremidades, apenas transmite foras axiais.
Justifica-se por isso utilizar dois tipos de elementos finitos diferentes, ambos
representados por uma linha com dois ns localizados nas extremidades :

J. Cardoso/P. Coelho

40

Elementos finitos em vigas

MCEM

Um elemento com 2 graus de liberdade ( gdl ) apenas, os deslocamentos segundo o eixo


x dos ns do elemento, que representar a barra AC.
Elemento Finito com 2 gdl
u1

u2

n 2

n 1

Outro elemento com 6 gdl, os deslocamentos segundo x e y e as rotaes dos ns do


elemento, que representar a barra BC.
Elemento Finito com 6 gdl
y
v1

v2

u1

u2

n 2

n 1

A estrutura ficar assim representada pela seguinte malha de elementos finitos, contendo
2 elementos ( um de cada tipo ) e 3 ns. De notar que, uma vez que os dois referenciais
locais no so coincidentes, necessrio definir um referencial global X, Y.
Y

1
1

3
2
Matriz de Rigidez do Elemento
N 1 = 1
N 2 = 2
L1 = 3,5355 m
1 = 315
A1 = 3,14210-4 m2
E = 200 GPa
J. Cardoso/P. Coelho

2
P
Y

1
2

41

Elementos finitos em vigas

MCEM

Matriz de rigidez do elemento com 2 gdl em coordenadas locais :

AE
[Kl ] = LAE

AE
L
AE

f1
u1
= [K l ]
f2
u2

Matriz de transformao de coordenadas globais em coordenadas locais :

cos
0

sen 0
0 cos

[T ] =

u1x
u
u1
1y
= [T ]
u2
u2 x
u2 y

0
sen

O vector u = { u1x , u1y , u2x , u2y }T representa os deslocamentos dos ns do elemento no


referencial global X,Y.
Matriz de rigidez do elemento com 2 gdl em coordenadas globais :

[K ] = [T ] [K ][T ]
T

AE
2
L cos

[K g ] =

AE
sen cos
L
AE
sen 2
L

AE
cos2
L

AE
sen cos
L
AE
cos 2
L

AE

sen cos
L

AE
sen 2

AE
sen cos

AE
2
sen

f1 x
u1 x
f
u
1y
1y
[
]
=
K

g
f2x
u2 x
f 2 y
u2 y
8,886 106

obtm-se para o elemento 1, [K g ] =

J. Cardoso/P. Coelho

8,886 106

8,886 106

8,886 106

8,886 106
8,886 106

8,886 106

8,886 106
8,886 106

8,886 106

42

Elementos finitos em vigas

MCEM

Matriz de Rigidez do Elemento

N 1 = 2
N 2 = 3
L2 = 2,5 m
2 = 180
A2 = 64,010-4 m2
I2 = 1,365310-5 m2
E = 200 GPa

Matriz de rigidez do elemento em coordenadas locais :

AE
L

[K l ] =

12 EI
L3

6 EI
L2
4 EI
L

AE
L

6 EI

L2
2 EI
L

0
6 EI
2
L
4 EI
L

12 EI
3
L
6 EI
2
L

0
0
AE
L

0
12 EI
L3

f1
u1
p
v
1
1
m1
1
= [K l ]
f2
u2
p2
v2


m2
2

Matriz de transformao de coordenadas globais em locais :

cos
-sen

0
[T ] =
0
0

sen
cos
0
0
0
0

0
0
1

0
0
0

0 cos
0 - sen
0
0

0
0
0
sen
cos
0

0
0

0
0

u1
u2 x
u
v
1
2y
2
1
= [T ]
u2
u3 x
v2
u3 y


2
3

Matriz de rigidez do elemento com 6 gdl em coordenadas globais :

[K ] = [T ] [K ][T ]
T

ou

J. Cardoso/P. Coelho

43

Elementos finitos em vigas

AE
2
+ L cos

+ 12EI sen2
L3

[K g ] =

AE
sen cos
L
12EI
3 sen cos
L
AE
+
sen2
L
12EI
+ 3 cos2
L
+

MCEM

6EI
2 sen
L
6EI
cos
L2
4EI
L

AE
cos2
L
12EI
3 sen2
L
AE

sen cos
L
12EI
+ 3 sen cos
L
6EI
sen
L2
AE
+
cos2
L
12EI
+ 3 sen2
L

AE
sen cos
L
12EI
+ 3 sen cos
L
AE

sen2
L
12EI
3 cos2
L
6EI
2 cos
L
AE
+
sen cos
L
12EI
3 sen cos
L
AE
+
sen2
L
12EI
+ 3 cos2
L

6EI
2 sen
L

6EI
cos

L2

2EI

6EI

sen
2
L

6EI
2 cos
L

4EI

f2x
u2 x
f
u
2y
2y
m2
2
= [K g ]
f3x
u3 x
f3y
u3 y


m3
3

obtm-se para o elemento 2,

5,1200 108

[K g ] =

0
2,0971 106

0
2,6214 106

5,1200 108
0

0
2,0971 106

4,3690 106

0
5,1200 108

2,6214 106
0
2,0971 106

0
6
2,6214 10
2,1845 106

2,6214 106

4,3690 106

A matriz de rigidez da estrutura representar a assemblagem das matrizes de rigidez dos


dois elementos,
J. Cardoso/P. Coelho

44

Elementos finitos em vigas

f 1 x 8,886 10 6
f
1y
f 2x

f2y
=
m2
f 3x

f3y
m3
S

8,886 10 6
8,886 10

MCEM

8,886 10 6
8,886 10

5,2089 108

8,886 10 6

8,886 10 6

5,1200 10 8

1,0983 10 7

2,6214 10 6

2,0971 10 6

2,6214 10 6

8,886 10

4,3690 10

5,1200 10 8

0
2,0971 10 6

u1x
u
0
1y
u 2 x
0

6
2,6214 10 u 2 y

2,1845 10 6 2

0
u3x

6
2,6214 10 u 3 y

4,6390 10 6 3
0

ou {f} = [K] {u}, onde {f} o vector de foras generalizado ( alguns elementos do
vector podem ser momentos ) e {u} o vector de deslocamentos generalizado ( alguns
elementos do vector podem ser rotaes ).
Este sistema deve agora ser alterado, devido ao facto de elementos do vector {u} e do
vector {f} terem valores conhecidos
Aplicao das condies fronteira.
No vector dos deslocamentos, so conhecidos os valores
u1x = 0
u1y = 0
u3x = 0
u3y = 0
3 = 0

No vector de foras so conhecidos


f2x = 0
f2y = 30000
m2 = 0

( negativo porque P actua no sentido contrrio ao eixo Y )

Isolando a 3, 4 e 5 equao, obtm-se o sistema :

+ 5,2089 108 u2 x 8,886 106 u2 y = 0

6
7
6
8,886 10 u2 x + 1,0983 10 u2 y 2,6214 10 2 = 30000
2,6214 106 u + 4,3690 106 = 0
2y
2

que resolvido permite obter a soluo do problema,


u2x = 5,52860 105 m
u2y = 3,24021 103 m
2 = 1,94412 103 radianos

J. Cardoso/P. Coelho

45

Elementos finitos em vigas

MCEM

os sinais indicam que os deslocamentos tm o sentido contrrio ao dos eixos do


referencial global considerado. Para obter as reaces nos apoios basta utilizar as
restantes equaes.

f1 x = 8,886 106 u2 x + 8,886 106 u2 y

6
6
f1 y = +8,886 10 u2 x 8,886 10 u2 y

8
f 3 x = +5,1200 10 u3 x
f = 2,0971 106 u + 2,6214 106
2y
2
3y
6
6
m
=

2
,
6214

10
u
+
2
,
1845

10

2y
2
3
obtm-se,

f1 x = 28301 N
f = +28301 N
1 y
f 3 x = +28301 N
f = +1699 N
3y
m3 = +424730 N m
Em seguida, os esforos nos elementos podem ser calculados transformando os
deslocamentos obtidos no referencial global em deslocamentos referidos ao referencial
local de cada elemento, atravs da matriz [T], e depois multiplicando o resultado pela
matriz de rigidez do elemento no referencial local, [Kl] isto :

f1
u2 x
u
p
1
2y
2
m1
= [K l ][T ]
f2
u3 x
p2
u3 y


m 2
3

u1x
u
f1
1y
= [K l ][T ]
f2
u2 x
u2 y

obtm-se, para o elemento 1,


f2 = 40029 N

f1 = 40029 N

f1= 40029 N
f2= +40029 N

n 1 = 1

n 2 = 2

e para o elemento 2,
f1= +28301 N
p1= +1699 N
m1= 0 Nm
f2= 28301 N
p2= 1699 N
m2= +4247 Nm

m2 = 4247 Nm
x

p2 = 1699 N
f2 = 28301 N
n 2 = 3

p1 = 1699 N
m1 = 0

f1 = 28301 N
n 1 = 2

J. Cardoso/P. Coelho

46

Elementos finitos bidimensionais

MCEM

4. ELEMENTOS FINITOS BIDIMENSIONAIS

4.1. Problemas de transmisso de calor


Estes problemas regem-se pela equao diferencial de Poisson, que se deduz em
seguida para um domnio D definido no plano xy. Consideramos que no existe variao
de temperatura ao longo do eixo z e que, como consequncia, o fluxo de calor nulo
nessa direco.
O fluxo de calor representado por um vector com duas componentes:

r qx
q=
q y
Considerando um elemento infinitesimal de dimenso dxdy (e dimenso unitria na
direco z), a equao que traduz o balano de fluxo trmico no elemento ser:

q y + y dy dx
y

qx + x dx dy
x

q x dy

q y dx
x
Fig. 4.1 - Balano de fluxo trmico no elemento.

J. Cardoso/P. Coelho

47

Elementos finitos bidimensionais

MCEM

q y

dy dx q x dy q y dx = fdxdy
q x + x dx dy + q y +

onde f a quantidade de calor gerado por unidade de volume no elemento. Simplificando


esta equao obtm-se

q x q y
+
= f
x
y

ou, em notao indicial,

qi ,i = f

Consideramos agora a Lei de Fourier, que diz que o fluxo trmico proporcional ao
gradiente da temperatura, sendo k coeficiente de condutividade trmica a constante
de proporcionalidade,

T
x
T
q y = k
y

qx = k

qi = kT,i

ou,

Substituindo esta lei na equao de balano,

T T
= f
k
k
x x y y

e assumindo que k constante ao longo de x e y, obtemos a equao diferencial de


Poisson :

2T 2T
k 2 + 2 = f
y
x

Nota : Utilizando o operador nabla, =


x
escrever-se :

kT,ii = f

ou

(4.1)

, a expresso anterior pode

k 2T = f

Obter a soluo de um problema de conduo de calor consiste em obter a funo T(x,y)


definida no domnio do problema que verifica esta equao diferencial em todos os
pontos do domnio. necessrio ainda que a funo T(x,y) verifique tambm as
condies fronteira do problema. Estas podero ser de trs tipos diferentes e por isso
consideramos a fronteira F decomposta em trs partes, F1, F2 e F3 :

J. Cardoso/P. Coelho

48

Elementos finitos bidimensionais

1.

MCEM

A temperatura tem um valor conhecido numa parte da fronteira,

T = T0
2.

em F1

(4.2)

O fluxo na direco normal fronteira, q0, tem um valor conhecido,

kT n = q0

em F2

(4.3)

3.
O fluxo na direco normal fronteira proporcional diferena de
temperaturas entre o exterior e a fronteira, sendo a constante de proporcionalidade
designada por coeficiente de convexo, h,

kT n = h(T T0 ) em F3

(4.4)

A funo T(x,y) que representa a soluo deve verificar a equao (4.1) em todos os
pontos do domnio, D, e as condies fronteira (4.2), (4.3) e (4.4) respectivamente em
F1 , F2 e F3. O mtodo dos elementos finitos permite obter uma soluo numrica
aproximada do problema. Esta soluo consiste num vector contendo as temperaturas
em alguns pontos seleccionados do domnio os ns e algumas funes conhecidas
as funes de forma que, em conjunto, permitem calcular o valor da temperatura em
qualquer ponto do domnio.
Para obter essa soluo, conveniente escrever novamente a equao (4.1), que traduz o
equilbrio pontual, sob a forma de um integral calculado em todo o domnio D do
problema. Esta equao integral, tambm designada forma fraca da equao
diferencial, pode em problemas de mecnica estrutural ser obtida atravs do princpio da
energia potencial total estacionria ou do mtodo dos trabalhos virtuais.
No problema da conduo de calor, podemos obter a equao integral, multiplicando
ambos os termos de (4.1) por uma funo T arbitrria, que representa uma
variao virtual na distribuio de temperatura, e integrando em seguida em todo o
domnio D,

2T 2T
D k x 2 + y 2 T dD = D f T dD

integrando por partes esta equao, obtemos,

T T T T
k
+
dD q0 T dF + h (T T0 ) T dF = f T dD
D
F2
F3
D

(4.5)

Qualquer funo que verifique esta equao satisfaz simultaneamente a equao


diferencial (4.1) e as condies fronteira naturais (4.3) e (4.4). Somente a condio
fronteira essencial (4.2) necessita ser imposta na soluo.
J. Cardoso/P. Coelho

49

Elementos finitos bidimensionais

MCEM

As funes T(x,y) e T ( x, y ) devem em seguida ser discretizadas. Para isso


consideremos o domnio D dividido em elementos finitos triangulares, com um n em
cada vrtice, como indicado na figura 4.2.
n 3

n 2

n 1

Fig. 4.2 - Elemento finito triangular.


Consideremos que a funo que define a temperatura no elemento a seguinte funo
linear em x e y,

T ( x, y ) = A0 + A1 x + A2 y

(4.6)

Os coeficientes A0 , A1 e A2 desempenham o papel de incgnitas do problema. Se for


possvel determin-los ento poderemos obter a temperatura em todos os pontos do
elemento triangular. Estes coeficientes no so contudo as incgnitas mais convenientes
para resolver o problema, sendo prefervel utilizar antes T1, T2 e T3, respectivamente as
temperaturas nos ns 1, 2 e 3 do elemento. Podemos escrever um conjunto de trs
equaes que nos dizem que a temperatura nos trs ns, de coordenadas x1 y1, x2 y2 e x3
y3 respectivamente igual a T1, T2 e T3,

T1 = A0 + A1 x1 + A2 y1

T2 = A0 + A1 x2 + A2 y2
T = A + A x + A y
0
1 3
2 3
3
O sistema pode ser resolvido em ordem a A0 , A1 e A2 , e os resultados substitudos na
equao (3.6), para obter,

T ( x, y ) = (a1 + b1 x + c1 y ) T1 + (a2 + b2 x + c2 y ) T2 + (a3 + b3 x + c3 y ) T3


(4.7)

onde

N i ( x, y ) = (ai + bi x + ci y )
so as trs funes de forma do elemento triangular. Os coeficientes ai , bi , ci so iguais
a:

a1 = ( x2 y3 x3 y 2 ) / J

b1 = ( y 2 y3 ) / J

a3 = ( x1 y 2 x2 y1 ) / J

b3 = ( y1 y 2 ) / J

a2 = ( x3 y1 x1 y3 ) / J

J. Cardoso/P. Coelho

b2 = ( y3 y1 ) / J

50

Elementos finitos bidimensionais

MCEM

c1 = (x3 x2 ) / J
c2 = ( x1 x3 ) / J

c3 = ( x2 x1 ) / J

J = x1

x2

x3 = 2 rea do elemento

x3

x3

x3

T(x,y)

n 3
1
n 2

n 1

Fig. 4.3 Funo de forma N1(x,y).


A equao (4.7) pode ser escrita na forma (4.8), o que ilustrado graficamente na figura
4.4.

T(x, y) = N1( x, y) T1 + N2 (x, y) T2 + N3(x, y) T3

T(x,y)

T1

T2
y

T(x,y)

A temperatura em todos os pontos


do elemento finito triangular,

T3

T(x,y)

(4.8)

||
o resultado da contribuio do n 1

T1

N1 ( x, y ) T1
x

T(x,y)

+
somada contribuio do n 2
T2

N 2 ( x, y ) T2
x

+
T(x,y)

e contribuio do n 3

T3

N 3 ( x, y ) T3
x

Fig. 4.4 Utilizao de funes de forma Ni(x,y).


J. Cardoso/P. Coelho

51

Elementos finitos bidimensionais

MCEM

De notar que, na equao (4.5) surgem derivadas do campo de temperaturas.


Considerando que este ltimo representado pela equao (4.8), facilmente obtemos,

T(x, y) N1(x, y)
N (x, y)
N (x, y)
T1 + 2
T2 + 3
=
T3
x
x
x
x

T(x, y) N1(x, y)
N (x, y)
N (x, y)
=
T1 + 2
T2 + 3
T3
y
y
y
y
onde,

N1(x, y)
= b1 = ( y2 y3 ) / J
x

N1(x, y)
= c1 = ( x3 x2 ) / J
y

N2 (x, y)
= b2 = ( y3 y1 ) / J
x

N2 (x, y)
= c2 = ( x1 x3 ) / J
y

N3(x, y)
= b3 = ( y1 y2 ) / J
x

N3(x, y)
= c3 = (x2 x1 ) / J
y

De notar que, devido s funes de forma utilizadas, estas derivadas so constantes


dentro do elemento, isto , o campo de temperaturas apresenta gradiente constante
dentro de cada elemento.
Finalmente,

funo T ( x, y) poder ser representada de forma anloga,

T (x, y) = N1(x, y) T1 + N2 (x, y) T2 + N3(x, y) T3

(4.9)

e as duas funes podem ser substitudas na equao (4.5). Consideremos que o


domnio foi discretizado em Ne elementos e analisemos o primeiro termo desta equao,
Ne
T T T T
T T T T
k
+
dD
=
k
+

dD

D x x y y
D
y y
i=1 i x x

por comodidade, representemos o termo entre parntesis sob a forma de um produto


matricial,

T
T T T T T T x
+

x y T
y

tambm podemos utilizar esta representao para as derivadas do campo de


temperaturas, obtendo-se,
J. Cardoso/P. Coelho

52

Elementos finitos bidimensionais

MCEM

N1 N1
x y

N2 N2
T T

= {T1 T2 T3}

y
x y

N3 N3

x y

T
x

=
T
y

e,

T1
N1 N2 N3
x x x

T2
N1 N2 N3
y y y

T3

Substituindo as derivadas das funes de forma pelos coeficientes bi e ci obtidos


anteriormente e efectuando o produto matricial, fica,

b1
T3 }b2

b3

T T T T
+

= {T1 T2

c1
b
c2 1
c1
c3

b2
c2

T1
b3
T
T2 = {T }[B ] [B ]{T }

c3
T3

Escrevendo agora o primeiro termo da equao (4.9), obtm-se


Ne
T T T T
T
k
+
dD
=
k {T }[B ] [B ]{T }dD

Di
D
i
i =1
i =1
x x y y
Ne

Ne

T
= {T } k [B ] [B ]dD {T }
Di

i =1
Ne

= {T } [K i ]{T }
i =1

Sendo [Ki] a matriz de rigidez do elemento i , de dimenso 33, dada por,

[Ki ] = D k [B ]T [B ]dD

(4.10)

De notar que, como todos os termos dentro do integral so constantes em Di , a


integrao implica apenas o produto de k [B]T [B] pela rea do elemento.
Passando agora ao segundo termo de (4.5), considerando uma fonte de calor f constante
em cada elemento e utilizando as equaes (4.8) e (4.9), como anteriormente,

Ne

Ne

Ne

f T dD = f T dD = f {T }{N }dD = {T }{Fi }

J. Cardoso/P. Coelho

i =1

Di

i =1

Di

i =1

53

Elementos finitos bidimensionais

onde

N1
{N } = N 2
N
3

MCEM

{Fi } = D f {N }dD

(4.11)

Os dois restantes termos da equao (4.5) envolvem condies fronteira em F2 e F3.


Consideremos em primeiro lugar a fronteira F3. Podemos decompor o termo relativo a
F3 em,

F3

h(T T0 ) T dF = hT T dF hT0 T dF
F3

(4.12)

F3

De forma semelhante utilizada para discretizar o domnio, vamos discretizar esta


fronteira utilizando um nmero NeF3 de elementos linha.
Elementos linha

Fronteira F3

Fig. 4.5 Discretizao de fronteira curvilnea.


Se as funes de forma foram interpoladas linearmente nos elementos triangulares,
natural considerar uma interpolao semelhante nos elementos linha que constituem a
fronteira. Isso pode ser feito da seguinte forma. Seja L o comprimento de um desses
elementos. Se considerarmos um eixo s, alinhado com a direco do elemento, de forma
que seja s = 0 no primeiro n e s = L no segundo n, ento a funo interpoladora
passar a escrever-se,

T (s ) = A0 + A1s
como

T1 = A0 + A1 0

(4.13)

T2 = A0 + A1 L

obtm-se os coeficientes A0 e A1 que substitudos em (4.13) permitem escrever,

s
T (s ) = 1 T1 + T2 = {N 1
L
L
onde

N1 = 1

J. Cardoso/P. Coelho

s
L

T
N 2 } 1 = {N }{T }
T2
N2 =

s
L

54

Elementos finitos bidimensionais

MCEM

so as funes de forma do elemento, que esto representadas graficamente na figura


4.6.
N1(s)

N2(s)

s
L
Fig. 4.6 Funes de forma.

Obtemos ento, para a primeira parte do segundo termo de (4.12),


NeF 3

hT T dF = h T T dF
F3

i =1
NeF 3

i =1

Fi 3

Fi 3

NeF 3

{T } h {N } {N }dF {T }
T

Fi 3

i =1

h {T }{N } {N }{T }dF

NeF 3

{T }[K ]{T }
i3

i =1

onde [Ki3] a matriz de dimenso 22, correspondente contribuio da condio


fronteira para a matriz de rigidez global. Se h for constante no elemento, a integrao
imediata,

1
3
T
[K i 3 ] = F h {N } {N }dF = hL
i3
1
6

1
6

1
3

(4.13)

A segunda parte da contribuio da condio fronteira em F3 pode ser calculada como


se segue,

Fi 3

hT0 T dF =

NeF 3

i =1

NeF 3

i =1

NeF 3

Fi 3

h T0 T dF
hT0 {T }{N } dF
T

{T }
i =1

Fi 3

h T0 {N } dF
Fi 3

NeF 3

{T } {F }
i3

i =1

J. Cardoso/P. Coelho

55

Elementos finitos bidimensionais

MCEM

onde {Fi3} igual a,

{Fi 3 } = F

i3

h T0 {N }

h T0 L
2
dF =

h T0 L
2

Para completar a discretizao por elementos finitos apenas falta o termo respeitante
fronteira F2 na equao (4.5). Consideremos essa fronteira decomposta num nmero
NeF2 de elementos linha, semelhantes aos utilizados em F3, e tambm que f constante
para cada um desses elementos,

F2

q0 T dF =

NeF 2

Fi 2

i =1

NeF 2

NeF 2

{T }

Fi 2

i =1

f {T }{N } dF
T

Fi 2

i =1

f T dF

T
f {N } dF

NeF 2

{T } {F }
i2

i =1

onde

{Fi 2 } = F

i2

f {N }

f L
2
dF =

f
L

Agrupando todos o termos analisados anteriormente, verificamos que a discretizao


por elementos finitos da equao integral (4.5) d origem equao (4.14), que em
conjunto com a condio fronteira T = T0 em F1 , permite obter uma soluo
numrica aproximada do problema da conduo de calor.
Ne

NeF 3

Ne

NeF 3

NeF 2

{T } [ K ]{ T } {T }{ F }+ {T }[ K ]{ T } {T } { F } {T } { F } = 0
i

i =1

i3

i =1

i =1

i3

i =1

i2

i =1

(4.14)

J. Cardoso/P. Coelho

56

Elementos finitos bidimensionais

MCEM

Como o vector contendo as temperaturas nos ns do campo de temperaturas virtuais,


{T }, aparece em todos os termos da equao (4.14), e como esta equao deve ser
verificada para qualquer conjunto de valores desse vector ento, podemos eliminar {T }.
Agrupando os termos de (4.14),
Ne

NeF 3

Ne

NeF 3

NeF 2

i =1

i =1

i =1

i =1

i =1

[ K i ]{ T }+ [ K i 3 ]{ T } = { Fi }+ { Fi 3 }+ { Fi 2 }
Ou

[ K ]{ T } = { F }

(4.15)
(4.16)

onde [ K ] a matriz de rigidez generalizada, { T } o vector contendo as temperaturas


nos ns e { F } o vector de foras generalizado, contendo a contribuio dos termos
relativos s fontes de calor no domnio e ao fluxo de calor na fronteira. Para resolver
um problema pelo mtodo dos elementos, utiliza-se a equao (4.16) e as condio
fronteira em F1.
Para isso, calculamos a matriz [ K ] e o vector { F } respectivamente agrupando a
contribuio de cada elemento finito do domnio e da fronteira, e em seguida
resolvemos o sistema de equaes lineares representado por (4.16) para obter os
elementos de { T } que so desconhecidos.
Finalmente, utilizando as funes de forma (4.8) e as suas derivadas, obtemos as
temperaturas e os fluxos em todos os pontos de domnio D do problema.

4.2. Resoluo de outros problemas com a equao de Poisson


Muitos problemas fsicos so descritos por equaes diferenciais semelhantes que
descreve o fenmeno da transmisso de calor em regime estacionrio por conduo. Por
exemplo a equao diferencial de equilbrio que relaciona a deformao ocorrida numa
membrana elstica com as cargas transversais aplicadas ,

2u 2u
T 2 + 2 = p
y
x

J. Cardoso/P. Coelho

em D

u = u0

em F1

Tu n = T0

em F2

57

Elementos finitos bidimensionais

MCEM

onde T representa a tenso superficial por unidade de comprimento, u o deslocamento


transversal ou deformada da membrana e p a presso aplicada transversalmente. Nas
fronteiras F1 e F2 so impostos respectivamente os valores da deformada e da tenso.
Atendendo semelhana verificada nas equaes diferenciais, a discretizao utilizada
anteriormente poderia ser aqui aplicada. Isto significa que um programa de computador
desenvolvido para resolver problemas de conduo de calor poder tambm resolver
problemas de deformao de membranas elsticas.
O significado fsico dos dados de cada problema deve ser adequado natureza do
problema. Contudo, a discretizao por elementos finitos manipula apenas valores
numricos, no necessitando o programa de computador de saber o significado fsico.
Apresenta-se em seguida uma lista de problemas que utilizam a equao diferencial de
Poisson, e que podem ser representados pelas equaes (4.5) a (4.16), desde que o
significado fsico do vector { T }, do coeficiente k e da funo f que surgem nessas
equaes seja adaptado ao problema que se pretende resolver,
Problema
Transmisso
calor

Incgnita T
de Temperatura

Coeficiente k
Funo f
Coeficiente
de Fonte de Calor
Condutibilidade
Trmica

Escoamento
em Presso hidrulica
materiais porosos

Permeabilidade

Escoamento
de Funo escoamento
fluidos
incompressveis

Unidade

Duas
vezes
vorticidade

Deformao
membranas
elsticas

Tenso superficial

Presso

de Deflexo

Toro de
elsticos

veios Funo tenso

1 / Mdulo
distoro

Toro de
elsticos

veios Funo
empenamento

Unidade

Distribuio
de Voltagem
potencial elctrico

J. Cardoso/P. Coelho

Condutividade
elctrica

de Duas
vezes
o
ngulo de toro
unitrio

Fonte de corrente

58

Elementos finitos bidimensionais

MCEM

4.3. Exemplo Transmisso de calor em regime estacionrio


Analise pelo mtodo dos elementos finitos o problema de transmisso de calor por
conduo em regime estacionrio no domnio bidimensional indicado na figura 4.7. O
domnio tem conductividade trmica constante, k= 150 W/m C, e est em contacto com
trs meios diferentes, ar, gua e isolamento trmico perfeito. A temperatura e o
coeficiente de convexo do ar so Tar= 100 C e har= 50 W/m2 C. A temperatura e o
coeficiente de convexo da gua so Tgua= 10 C e hgua= 500 W/m2 C.

0,6 m

0,4 m

Ar

0,6 m

0,4 m

gua

Isolamento trmico

Fig. 4.7 Domnio do problema.


Resoluo :

Vamos utilizar o mtodo dos elementos finitos e o programa poisson.m para resolver o
problema de conduo de calor em regime estacionrio.
necessrio, para obter a soluo com recurso a este programa, discretizar o domnio
em elementos triangulares. A discretizao adoptada, que est representada na figura
seguinte, permite determinar as coordenadas dos ns e a ligao dos elementos que est
contida no ficheiro termico.inp.

J. Cardoso/P. Coelho

59

Elementos finitos bidimensionais

MCEM

O domnio foi dividido em 85 ns e 128 elementos. Por comodidade, omitiu-se da


figura a numerao de alguns ns e elementos. Considerando a origem do referencial
coincidente com o n 75, obteve-se a lista com as coordenadas dos ns e a topologia dos
elementos seguinte ( A lista completa est contida em termico.inp ).
Y
1

2
1

3
2

3
5
4

7
6

10
9

11
10

13
12

15
14

16

11

15
17

19
18

21
20

23
22

24

16

20
25

31
26

32

21

25
33

39
34

40

26

30
41

47
42

31

48

35

36

38

37

39

40

49

41
67

50

68

42

52
69

87
70

88

53

63
107

89

108

90
64

74
111

109

112

110
75

125

76

127
126

77

78

79

80

81

82

84

83

128

85

Fig. 4.8 Malha de elementos finitos.


Coordenadas dos ns
0.000000
0.100000
0.200000
0.300000
0.400000
0.000000
...

J. Cardoso/P. Coelho

Definio dos elementos


1.000000
1.000000
1.000000
1.000000
1.000000
0.900000

1
2
2
3
3
4
...

6
6
7
7
8
8

2
7
3
8
4
9

1
1
1
1
1
1

60

Elementos finitos bidimensionais

MCEM

Resultados obtidos :
A soluo do problema, obtida depois de executar o programa poisson com os dados
contidos em termico.inp, consiste numa lista de temperaturas nos ns e de fluxos
trmicos nos elementos. Estas listas so guardadas nos ficheiros termico.tem e
termico.flx respectivamente, e esto parcialmente representadas em seguida,
Temperaturas nos ns
60.713
59.725
59.43
59.804
60.822
59.053
58.04
57.748
58.146
59.199
56.68
. . .

Fluxos trmico nos elementos ( qx , qy , qtotal )


9.09494702e-013
-5.00000000e+003
0.00000000e+000
0.00000000e+000
9.09494702e-013
0.00000000e+000
. . .

0.00000000e+000
9.09494702e-013
5.00000000e+003
7.07106781e+003
5.00000000e+003
5.00000000e+003
5.00000000e+003
5.00000000e+003
5.00000000e+003
5.00000000e+003
5.00000000e+003
5.00000000e+003

Utilizando a funo contourf do Matlab, pode representar-se graficamente a


distribuio de temperaturas no domnio, obtendo-se:
10

11
10
9
8
7
6
5
4
3
2
1

Fig. 4.9 Distribuio de temperaturas.

J. Cardoso/P. Coelho

61

Elementos finitos bidimensionais

MCEM

4.4. Exemplo Toro de um veio de seco rectangular


Determine pelo mtodo dos elementos finitos a distribuio de tenses tangenciais na
viga de seco rectangular representada na figura.

h = 20 mm

T
x
L = 1000 mm
b = 10 mm

Fig. 4.10 Veio de seco rectangular sujeito toro.


A viga tem seco rectangular com 10 20 mm, o material tem um mdulo de distoro
G = 70 GPa e a seco representada rodou um ngulo = 0.0005 rad em relao
seco que est na origem do referencial.
Utilizando as expresses que permitem o clculo da tenso tangencial mxima e do
ngulo de toro em vigas de seco rectangular ( Ver Mecnica dos Materiais, Beer &
Johnston ),

max =

T
c1ab 2

TL
c2 ab 3G

onde c1 e c2 so valores que dependem do quociente entre a e b, sendo estes


respectivamente os lados maior e menor da seco transversal rectangular. Para
a / b = 2, obtm-se c1 = 0,246 e c2 = 0,229.
Utilizando as duas equaes possvel calcular que, para obter uma rotao = 0.0005
rad necessrio aplicar um momento de toro T = 0,1603 Nm. Esse momento produz
uma tenso tangencial mxima max = 0,3255 MPa.
J. Cardoso/P. Coelho

62

Elementos finitos bidimensionais

MCEM

Resoluo :

Vamos utilizar o mtodo dos elementos finitos e o programa poisson.m para determinar
a distribuio de tenses tangenciais na seco transversal da viga.
De facto, Prandtl props a utilizao de uma funo tenso ( y, z ) a partir da qual as
tenses tangenciais pudessem so obtidas por derivao :

xy =

xz =

(1)

Sabe-se que as equaes de equilbrio, que devem ser verificadas para qualquer ponto
de um corpo slido so,

ji , j

+ bi = 0

ou seja,

yx
x
zx
x + y + z + bx = 0

y
zy
xy
+
+
+ by = 0

y
z
x
xz
yz
z
+
+
+ bz = 0

Em qualquer corpo prismtico sujeito toro, verifica-se que as tenses


x = y = y = yz = 0, o que, na ausncia de foras mssicas bi permite simplificar
estas equaes,

xy
xz
y + z = 0

xy = xz = 0
x
x

(2)

z
x

Fig. 4.11 Corpo prismtico sujeito toro.


J. Cardoso/P. Coelho

63

Elementos finitos bidimensionais

MCEM

Se substituirmos as equaes (1) em (2), obtemos,


2 2

=0
yz zy

Esta equao satisfeita por qualquer funo contnua e com segunda derivada
contnua, que por isso conduzir a uma distribuio de tenses tangenciais que verifica
o equilbrio. A soluo correcta para o problema da toro, contudo, dever ser uma
distribuio de tenses que no s verifica o equilbrio mas tambm produz
deformaes e deslocamentos compatveis.
Da anlise da geometria da seco transversal, obtemos que os deslocamentos v e w,
respectivamente nas direes x e y, de qualquer ponto P so,
w z
v = z

w = y

Fig. 4.12 Relao entre deslocamentos, v e w, e rotao, , num veio.


onde a rotao da seco devida toro. Se designarmos por o ngulo de rotao
de duas seces da viga situadas distncia de uma unidade de comprimento, ento a
rotao de uma seco situada distncia x da origem ser x e os deslocamentos
segundo os eixos x , y , z de qualquer ponto P sero,
u = f ( y, z )

w = xy

v = xz

(3)

Relacionando os deslocamentos com as deformaes e estas com as tenses, atravs da


lei de Hooke, obtemos,
u

xy = G xy = G +
y x

u w
+

z x

xz = G xz = G

ou, utilizando as relaes (3),


u

xy = G z
y

+ y
z

xz = G

(4)

Igualando os segundos termos das equaes (4) e (1) e derivando a primeira equao em
relao a z e a segunda em relao a y, obtemos

u

= G z
z z
z y

J. Cardoso/P. Coelho


= G + y
y y
y z

64

Elementos finitos bidimensionais

MCEM

subtraindo a segunda equao primeira, obtemos,


2 2
+ 2 = 2G
y 2
z

(5)

Que a equao da compatibilidade para o problema da toro de vigas prismticas.


Qualquer funo (y,z) contnua at s segundas derivadas que satisfaa (5) verifica o
equilbrio e compatvel com as deformaes e deslocamentos da viga. Qualquer
equao com esta forma tambm designada por equao de Poisson.
O programa poisson.m permite obter uma soluo numrica aproximada de qualquer
problema que seja governado por esta equao utilizando o mtodo dos elementos
finitos. necessrio, para obter a soluo com recurso a este programa, discretizar o
domnio em elementos triangulares. A discretizao adoptada, que est representada na
figura seguinte, permite determinar as coordenadas dos ns e a ligao dos elementos
que est contida no ficheiro torcao.inp.
O domnio foi dividido em 45 ns e 64 elementos. Por comodidade, omitiu-se da figura
a numerao de alguns ns e elementos. Considerando a origem do referencial
coincidente com o n 1, obteve-se a lista com as coordenadas dos ns e a topologia dos
elementos que est no ficheiro torcao.inp.
Y
41

42
57

59

61

58

45

44

43

60

63
62

64

36

40
49

55
50

56

31

35
41

47
42

48

26

30
33

39
34

40

21

25
25

31
26

32

16

20
17

23
18

24

11

15
9

15
10

16

10
1
2

4
2

8
4

Fig. 4.13 Malha de elementos finitos no problema da toro.

J. Cardoso/P. Coelho

65

Elementos finitos bidimensionais

MCEM

Resultados obtidos :
A soluo do problema, obtida depois de executar o programa poisson com os dados
contidos em torcao.inp, consiste numa lista contendo o valor da funo tenso (y,z)
nos ns e de tenses tangenciais nos elementos. Estas listas so guardadas nos ficheiros
torcao.tem e torcao.flx respectivamente, e esto parcialmente representadas em seguida,
Funo tenso nos ns
1.7412e-010
0.00017412
0.00022479
0.00017412
1.7412e-010
0.00017412
348.24
449.58
348.24
. . .

Tenso tangencial nos elementos ( zx , zy , total porque z o eixo da viga )


1.75000000e+005
0.00000000e+000
0.00000000e+000
0.00000000e+000
-2.91038305e-011
0.00000000e+000
. . .

0.00000000e+000
1.75000000e+005
1.75000000e+005
1.75000000e+005
1.75000000e+005
1.75000000e+005

1.75000000e+005
1.75000000e+005
1.75000000e+005
1.75000000e+005
1.75000000e+005
1.75000000e+005

Utilizando a funo surface do Matlab, pode representar-se graficamente a


distribuio da funo tenso no domnio, obtendo-se :

800
600
400
200
0
0

5
4
2

3
6

2
10

Fig. 4.14 Representao grfica da funo tenso.


J. Cardoso/P. Coelho

66

Elementos finitos bidimensionais

MCEM

O valor mximo da tenso tangencial, obtido pelo poisson.m para este problema
max = 0.175 MPa, o que corresponde a um erro de 46 %. Verifica-se tambm que o
valor de constante num grande nmero de elementos situados junto periferia da
seco, pelo que se pode concluir que o facto do elemento triangular utilizar funes de
forma lineares, e portanto com derivada constante dentro de cada elemento conduz a
uma aproximao grosseira do campo de tenses.
Para obter uma aproximao mais precisa poder aumentar-se o nmero de ns e de
elementos da discretizao ou utilizar-se elementos finitos com funes de forma de
ordem superior, quadrtica ou cbica, ou ainda realizar estas duas aces
simultaneamente.
Deve salientar-se o facto do valor da funo tenso ter sido calculado pelo programa
com erros muito inferiores aos obtidos para as tenses. Para obter uma soluo mais
aproximada do problema utilizou-se uma discretizao com 800 elementos
isoparamtricos de 8 ns PLANE77 do ANSYS. Este elemento que utiliza funes de
forma quadrticas e conduziu aos seguintes resultados.

Discretizao
64 elementos triangulares
( poisson.m )
800 elementos PLANE77
( ANSYS )
Soluo analtica

J. Cardoso/P. Coelho

Mximo da Funo Tenso


784,7

Fluxo mximo ( max )


0,2371 MPa

797,1

0,3255 MPa
0,3258 MPa

67

Elementos finitos bidimensionais

MCEM

4.5. Problemas de elasticidade plana


O estudo dos fenmenos fsicos permite muitas vezes estabelecer relaes entre
quantidades e derivadas ou diferenciais de quantidades. Por isso muitas leis fsicas so
expressas matematicamente sob a forma de equaes diferenciais.
A soluo de um problema fsico, uma vez conhecida a equao diferencial que rege o
fenmeno fsico, consiste em obter as funes que so soluo dessa equao
diferencial. O mtodo dos elementos finitos permite obter estas funes sob a forma de
campos discretizados. Aborda-se aqui a aplicao do mtodo a problemas de
elasticidade plana tenso plana ou deformao plana. Utiliza-se a notao indicial
para escrever as equaes da elasticidade, considerando um referencial de eixos x1x2. Os
ndices i,j,m,n designaro eixos do referencial e os ndices J,K designaro os ns do
elemento finito considerado.

F2

bi
F3

x2

F1

x1
Fig. 4.15 Domnio de um corpo elstico de forma arbitrria e condies de fronteira.
Considere-se um problema de elasticidade plana, envolvendo um corpo elstico de
volume V e superfcie F sob a aco de foras mssicas bi . O corpo poder ter
condies fronteira de trs tipos diferentes:
1.
2.
3.

O deslocamento ui conhecido numa parte F1 da fronteira.


A tenso i conhecida na fronteira F2 de normal nl.
A tenso na fronteira F3 proporcional ao deslocamento ui nessa fronteira.

Para resolver este problema recorre-se s equaes da teoria da elasticidade, que so:

J. Cardoso/P. Coelho

68

Elementos finitos bidimensionais

MCEM

Equao de equilbrio

ji , j + bi = 0

(4.17)

Relao deformao-deslocamento (para deslocamentos infinitsimais)

ij =

1
(ui. j + u j ,i )
2

(4.18)

Relao tenso-deformao (para material com comportamento elstico e isotrpico)

ij =

1
(1 + ) ij ij kk
E

(4.19)

Nestas equaes,

ji Tensor das tenses.


Densidade mssica.
bi Foras actuando por unidade de volume, na direco i.
ij Tensor das deformaes infinitesimais.
ui Deslocamento na direco i.

As condies fronteira podem ser descritas da seguinte forma:

ui = ui*

em F1

ij ni = *j

em F2

ij ni = K ji (ui uiext )

em F3

Para formular o problema pelo mtodo dos elementos finitos comea-se por transformar
a equao diferencial de equilbrio (4.17) que essencialmente uma descrio pontual
da relao entre derivadas do tensor das tenses e foras mssicas, numa outra equao
mais adequada que a forma integral ou forma fraca da equao diferencial. Para isso
multiplicam-se ambos os termos de (4.17) por um deslocamento u virtual
e
integra-se em todo o domnio.

(
V

J. Cardoso/P. Coelho

ji , j

+ bi ) ui = 0
69

Elementos finitos bidimensionais

MCEM

A integrao por partes origina ento,

u dV ji n j ui dF = bi ui dV

ji i , j

devido simetria do tensor das tenses,

ji ui , j = ij ij
onde ij o tensor das deformaes associado aos deslocamentos virtuais. A equao
anterior pode escrever-se:

ij ij

dV + K ij u j ui dF3 = biui dV + i*ui dF2 + K ij u ext


j ui dF3
F3

F2

F3

(4.20)

Esta expresso corresponde equao integral procurada. Qualquer campo de


deslocamentos que a verifique, verifica simultaneamente as equaes diferenciais em
todo o domnio V e as condies fronteira naturais do problema em F2 e F3. A condio
fronteira essencial,

ui = ui*

em F1

deve sempre ser imposta na soluo do problema.


Analisando a equao integral (4.20) verifica-se que o primeiro termo representa o
trabalho realizado pelas foras internas devido ao deslocamento virtual u e o segundo
termo o trabalho realizado pela mola que actua na fronteira F3. Os termos restantes
representam o trabalho das vrias foras exteriores devido ao deslocamento virtual e a
equao exprime o princpio dos trabalhos virtuais da mecnica.
Considerando a matriz Kij simtrica, a equao (4.20) tambm poderia ser obtida a partir
do princpio da energia potencial total estacionria, isto , a partir das condies de
estacionaridade do funcional:

1
1

dV
+
K ij u j ui dF3 biui dV
ij
ij
V
2 V
2 F3

(4.21)

i*ui dF2 K ij u ext


j ui dF3
F2

J. Cardoso/P. Coelho

F3

70

Elementos finitos bidimensionais

MCEM

Discretizao do domnio e do campo de deslocamentos


O passo seguinte na formulao do mtodo dos elementos finitos consiste na
discretizao da equao integral (4.20). Considere-se em primeiro lugar a discretizao
do domnio V. Este vai ser dividido num nmero NEL de elementos finitos distintos,
sendo cada elemento designado por um nmero, de forma a poder ser perfeitamente
identificado. Considerem-se elementos com a forma de quadrilteros com quatro ns,
um em cada vrtice. necessrio indicar quais os ns que pertencem a cada elemento e
para isso os ns so numerados, sendo feita a correspondncia entre o nmero de cada
elemento e os nmeros dos ns que lhe esto associados, atravs de uma tabela.
11

16

5
9

7
12

21

13

2
6
17
3

10

8
13

14

7
4

14

4
5

x2

10

15

18

11

19

12
16

20

26
18

23

27

24 19

30

x1

15

28

20

25

35

24

17

22

29

23

34

21
22

33

31

32

Fig. 4.16 Domnio discretizado com elementos quadrilteros.


Na figura 4.16 apresenta-se, como exemplo, a malha de elementos finitos para o
exemplo placa com furo, que pode ser resolvido com o programa young lendo o ficheiro
pcf.inp. Esta malha constituda por 24 elementos e 35 ns.
Elemento
1
2
3
...
24
J. Cardoso/P. Coelho

1 N
1
2
3
...
29

2 N
2
3
4
...
30

3 N
7
8
9
...
35

4 N
6
7
8
...
34
71

Elementos finitos bidimensionais

MCEM

Designando por NX o nmero de ns existentes na malha de elementos finitos pode


construir-se uma segunda tabela com as coordenadas dos ns.
N
1
2
3
...
35

Coordenada x1 Coordenada x2
1.0000
0.0000
1.8826
0.0000
2.8393
0.0000
...
...
0.0000
5.0000

Considere-se em seguida a discretizao das funes deslocamento e deslocamento


virtual, cada uma delas com duas componentes, ui e ui com i =1,2.

Funo linear aproximada ui

ui

Funo u~i

ui4

N 4

ui3

ui1

N 1

N 3
ui2

N 2
Fig. 4.17 Funo deslocamento (a cheio) e a sua aproximao linear (a tracejado).
Considere-se que u~i a soluo exacta do problema que se pretende resolver , e que
aproximada por uma funo ui linear em x1 e x2 no domnio de cada elemento finito. As
duas funes podem ser representadas por superfcies e esto indicadas a cheio ( u~i ) e a
tracejado (ui) na figura. A funo ui(x1x2) diz-se bilinear e tem a forma,

ui = a 0 + a1 x1 + a 2 x 2 + a3 x1 x 2

(4.22)

A soluo exacta u~i desconhecida, assim como so desconhecidos os coeficientes


da funo que representa a soluo aproximada. Contudo, se ui1, ui2, ui3, ui4, forem os
deslocamentos segundo o eixo i dos quatro ns do elemento, a expresso (4.22) pode ser
escrita como o somatrio,

J. Cardoso/P. Coelho

72

Elementos finitos bidimensionais

MCEM

ui = uiJ N J = uiJ N J
J =1

Onde as funes NJ se designam funes de forma e esto representadas na figura 4.18,

ui

ui

N1(x1x2)

N2(x1x2)

1
1

ui

ui

N3(x1x2)

N4(x1x2)

1
1

Fig. 4.18 Funes de forma usadas no elemento.


Utilizando estas funes podem ser calculadas aproximaes das componentes dos
deslocamentos ou dos deslocamentos virtuais, a partir dos valores nodais desses
deslocamentos e em qualquer ponto do domnio do elemento finito considerado.

ui = uiJ N J
(4.23)

ui = uiK N K
importante constatar que as funes de forma NJ dependem do grau do polinmio
usado para aproximar a funo exacta e por outro lado que o nmero de ns escolhido
para o elemento est associado ao nmero de constantes que ocorrem nesse polinmio.
Assim, o facto de ter sido escolhido um polinmio (4.22) com 4 constantes a0, a2, a3 e
a4, conduz obrigatoriamente a utilizar quatro ns no elemento.

J. Cardoso/P. Coelho

73

Elementos finitos bidimensionais

MCEM

Os elementos finitos usados para resolver problemas de elasticidade plana podem ter
uma geometria triangular ou quadrangular. Cada um deste tipo de elementos pode ter
um nmero varivel de ns, isto , a funo usada para aproximar as componentes do
deslocamento pode ter um nmero muito varivel de termos. Destacam-se duas famlias
de elementos finitos distintos, a famlia dos elementos lagrangeanos e a famlia dos
elementos serendipity, que se distinguem pelo facto dos primeiros terem ns interiores,
enquanto os segundos apenas os tem nas arestas ou vrtices.

Fig. 4.19 Tringulo de Pascal e funes interpoladoras.


Para escrever o polinmio correspondente ao elemento pretendido, consideram-se todas
as linhas do tringulo de Pascal, desde o vrtice superior at linha pretendida, para o
tringulo com 6 ns, fica:
primeira linha ->
segunda linha ->
terceira linha ->

1
x2

y
xy

y2

logo,

ui = a 0 + a1 x + a 2 y + a 3 x 2 + a 4 xy + a5 y 2

J. Cardoso/P. Coelho

74

Para elementos finitos quadrangulares pode construir-se uma tabela semelhante

Fig. 4.20 Tringulo de Pascal e funes interpoladoras.


A figura mostra o tringulo de Pascal e a forma utilizada para obter os termos da funo polinomial aproximadora do campo dos deslocamentos, para
elementos quadrangulares das famlias lagrangeana e serendipity . Considera-se x x1 e y x2.
J. Cardoso/P. Coelho

75

Elementos finitos bidimensionais

MCEM

Elementos isoparamtricos
t

+1

+1

x2

1
2
x1

Fig. 4.21 Elemento isoparamtrico. Referencial global e do elemento.


Os elementos isoparamtricos utilizam uma transformao de coordenadas entre um
referencial auxiliar s,t e o referencial x1x2 para cada elemento resultante da discretizao
do domnio. Para elementos quadrangulares de 4 ns como os indicados na figura, essa
transformao tal que os pontos do referencial auxiliar de coordenadas (1,1),
(+1,1), (+1,+1) e (1,+1) correspondem respectivamente aos ns 1,2,3 e 4 do
elemento, definidos no referencial x1x2.
A transformao de coordenadas definida atravs das funes de forma que so usadas
para aproximar os deslocamentos, isto , as coordenadas x1 e x2 de qualquer ponto no
interior do elemento so funes das coordenadas x1 e x2 dos seus 4 ns, X1J e X2J .

x1 = X 1J N J ( s, t )
x 2 = X 2 J N J ( s, t )

(4.24)

As funes de forma N J ( s, t ) so iguais para todos os elementos pois o referencial s,t


sempre igual, e so facilmente deduzidas, obtendo-se:

N 1 ( s, t )

N 1 ( s, t ) = 0,25(1 s )(1 t )
+1

N 2 ( s, t ) = 0,25(1 + s )(1 t )

1
1

+1

Fig. 4.21 Funo de forma N 1 ( s, t ) .


J. Cardoso/P. Coelho

N 3 ( s, t ) = 0,25(1 + s )(1 + t )

(4.25)

N 4 ( s, t ) = 0,25(1 s )(1 + t )

76

Se em vez do elemento quadrangular de 4 ns, for considerado o elemento quadrangular de 8 ns da famlia serendipity, obtm-se as
funes de forma seguintes:

Fig. 4.22 Funes de forma do elemento de 8 ns serendipity.


Considerou-se aqui um referencial , em vez de s,t. As funes de forma so aqui designadas por J.

J. Cardoso/P. Coelho

77

Elementos finitos bidimensionais

MCEM

A generalidade dos elementos finitos utilizados em problemas de elasticidade utiliza


este tipo de transformao de coordenadas, que possibilita realizar as integraes
necessrias para calcular a matriz de rigidez no referencial s,t. Os elementos
isoparamtricos so os mais comuns, mas tambm se podem utilizar elementos
superparamtricos ou subparamtricos, consoante a ordem do polinmio e por
conseguinte o nmero de ns utilizado para gerar as funes de forma para a funo
aproximada e para a transformao de coordenadas. De facto no obrigatrio que as
funes de forma utilizadas em ambos os casos sejam as mesmas. Utilizando
polinmios de ordem superior (e mais ns) para a transformao de coordenadas, temos
elementos superparamtricos. Se, pelo contrrio, forem considerados elementos com
polinmios de ordem superior para a funo aproximada, tem-se elementos
subparamtricos.
Para um elemento quadrangular, como o indicado na figura, com ns paramtricos
,
onde o valor da funo aproximada especificado, e ns geomtricos
, onde as
coordenadas so conhecidas, pode ter-se:

Superparamtrico

Isoparamtrico

Subparamtrico

Fig. 4.23 Elemento isoparamtrico, superparamtrico e subparamtrico.

Matriz de rigidez
A matriz de rigidez do elemento resulta da discretizao do primeiro termo da equao
(4.20),

dV

ij ij

Em primeiro lugar, o integral no domnio do problema convertido numa soma de


integrais realizados nos NEL elementos finitos em que o domnio est dividido.

NEL

ij ij dV = ij ij dV
N =1

VN

Em seguida aplicam-se as equaes (4.23) para representar os campos de deslocamento


e deslocamento virtual que existem em cada integral. Para isso, este ltimo
modificado, considerando vlida a lei de Hooke, e

ij =

1
(ui , j + u j ,i ) ui , j
2

J. Cardoso/P. Coelho

ij = Eijnm nm E ijnm u n ,m

78

Elementos finitos bidimensionais

MCEM

obtendo-se

VN

ij ij dV = Eijnm nm ij dV = Eijnm u n ,m ui , j dV
VN

VN

e porque un e ui so aproximadas por unK N K e uiJ N J

respectivamente, tem-se que

un ,m = unK N K ,m
(4.26)

ui , j = uiJ N J , j
Obtm-se
NEL

N =1

VN

NEL

NEL

N
Eijnm u n , m ui , j dV = uiJ Eijnm N J , j N K , m dV unK = uiJ K iJnK
unK
VN

N =1

N =1

onde
N
K iJnK
= E ijnm N J , j N K , m dV

(4.27)

VN

a matriz de rigidez do elemento N. Esta matriz tem a dimenso 88 e o integral


realizado no domnio do elemento definido no referencial x1x2 .
Indicou-se anteriormente que os elementos isoparamtricos utilizam funes de forma
para estabelecer uma transformao de coordenadas entre x1x2 e s,t tendo sido
apresentadas as funes de forma N J ( s, t ) vlidas num domnio quadrado de dimenso
22.
Por outro lado, as funes NJ(x1x2) so desconhecidas. Usando as equaes (4.24), pode
contudo escrever-se:

N J ( x1 , x 2 ) = N J X 1K N K ( s, t ), X 2 K N K ( s, t )

considere-se a seguinte relao:

N J ( s, t ) = N J X 1K N K ( s, t ), X 2 K N K ( s, t )

J. Cardoso/P. Coelho

(4.28)

79

Elementos finitos bidimensionais

MCEM

Que determina que a funo de forma NJ (x1,x2) apresenta o mesmo valor que N J ( s, t )
para pontos correspondentes. Essa correspondncia estabelecida pela transformao de
coordenadas.

N 1 ( x1 , x 2 )

N 1 ( s, t )
1

x2

+1

+1

x1

Fig. 4.24 - O valor das duas funes de forma idntico para pontos correspondentes.
Uma vez estabelecida a relao (4.28) podem obter-se as derivadas dos deslocamentos
necessrias, para utilizar na equao (4.27):

N J ( s, t ) N J x1 N J x 2
=
+
s
x1 s x 2 s
N J ( s, t ) N J x1 N J x 2
=
+
t
x1 t
x 2 t
ou na forma matricial,

N J

N J
s

x1
s

=
x1
t

x 2 N J
s x1

x 2 N J
t x 2

(4.29)

Nestas equaes surgem as derivadas das funes de forma definidas em s,t , que so
fceis de calcular por derivao das expresses (4.25),

N 1
= 0,25(1 t )
s

N 1
= 0,25(1 s )
t

N 2
= 0,25(1 t )
s

N 2
= 0,25(1 + s )
t

J. Cardoso/P. Coelho

80

Elementos finitos bidimensionais

MCEM

N 3
= 0,25(1 + t )
s

N 3
= 0,25(1 + s )
t

N 4
= 0,25(1 + t )
s

N 4
= 0,25(1 s )
t

Tambm podem ser calculadas as derivadas

x1
s

x2
s

x1
t

x2
t

N J ( s, t )
x1
=
X 1J N J ( s, t ) = X 1J
s s
s

N J ( s, t )
x 2

=
X 2 J N J ( s, t ) = X 2 J
s s
s

(4.30)

N J ( s, t )
x1
=
X 1J N J ( s, t ) = X 1J
t t
t

N J ( s, t )
x 2
X 2 J N J ( s, t ) = X 2 J
=
t
t
t

Finalmente, os valores de
(4.29),

N J
x1

N J
x
1

N J
x 2

N J
x2

podem ser calculados invertendo a relao

x 2

1 t
=
J x1
t

x 2 N J
s s

x1 N J
s t

(4.31)

onde

J=

J. Cardoso/P. Coelho

x1 x 2 x 2 x1

s t
s t

81

Elementos finitos bidimensionais

MCEM

o determinante da matriz jacobiana da transformao de coordenadas que permite


relacionar a rea de um elemento infinitesimal nos dois referenciais,

dV = JdV
A matriz de rigidez, dada pela equao (4.27) pode ser calculada atravs de:
N
K iJnK
= E ijnm N J , j N K , m JdV

(4.32)

VN

Onde NJ,j e NK,m so agora funes de s,t e a integrao feita no domnio s,t. As
expresses analticas para as derivadas NJ,j e NK,m no so conhecidas de forma explcita,
contudo podem ser calculadas atravs das expresses (4.31) em todos os pontos do
domnio do elemento.
Esse clculo envolve:

A determinao das derivadas


pelas suas coordenadas s,t.

x1 x2
s s

x1
t

x2
t

no ponto especificado
N J
x1

N J
.
x2

A determinao das 8 derivadas das funes de forma

A determinao da matriz de rigidez, atravs do produto por Eijnm e por J.

Integrao numrica
A integrao numrica de uma funo permite obter o valor aproximado do integral
dessa funo atravs do clculo da funo num nmero discreto de pontos. Considere-se
o seguinte exemplo:

F()
F(3)
F(1)

F(2)

Fig. 4.25 Funo F ( ) e pontos de integrao.


J. Cardoso/P. Coelho

82

Elementos finitos bidimensionais

MCEM

I = F ( )d F (i ) wi
A

i =1

O integral I entre A e B pode ser obtido calculando a funo num nmero r de pontos,
sendo i as coordenadas desses pontos e wi os coeficientes ou pesos que afectam cada
um dos valores F(i).
Vrios mtodos podem ser utilizados para determinar os valores de i e de wi entre os
quais se destaca o mtodo de Newton-Cotes, a regra de Simpson ou as frmulas de
Gauss. Estas ltimas optimizam a localizao dos pontos no domnio a integrar e o
valor dos correspondentes pesos de forma a obter a mxima preciso possvel. Pode
demonstrar-se que com r pontos, o mtodo de Gauss permite obter o integral exacto de
um polinmio at ordem 2r 1.
Como os integrais necessrios ao clculo da matriz de rigidez dos elementos
isoparamtricos so sempre realizados no domnio [1, +1], possvel por isso calcular
as coordenadas i e os pesos wi que sero utilizados para todos os elementos, que so
indicados na tabela seguinte:
Coordenadas, i

Pesos, wi

Fig. 4.26 - Coordenadas dos pontos e respectivos pesos para integrao numrica.
O integral na equao (4.32) um integral de rea em s e t. Para a funo bilinear
utilizada neste elemento ser necessrio utilizar dois pontos segundo s e dois pontos
segundo t o que perfaz 4 pontos. Na tabela seguinte indica-se a localizao dos pontos
utilizados em vrios elementos isoparamtricos para funes aproximadoras de
diferente grau.
J. Cardoso/P. Coelho

83

Elementos finitos bidimensionais

MCEM

Fig. 4.27 Localizao dos pontos de Gauss para vrias ordens de integrao de
funes no plano .
Utilizando a integrao de Gauss com 22 pontos, a expresso (4.32) transforma-se em,

N
iJnK

= (Eijnm N J , j N K , m J ) wIS wIT

(4.33)

IS =1 IT =1

J. Cardoso/P. Coelho

84

Elementos finitos bidimensionais

MCEM

Matriz das constantes elsticas


Para materiais isotrpicos e estados de tenso plana ou de extenso plana, a matriz das
constantes elsticas pode escrever-se em funo do mdulo de elasticidade longitudinal
ou mdulo de Young, E, e do coeficiente de Poisson, , do material.
Tenso Plana

E
(1 2 )
E
=
(1 2 )

E1111 = E 2222 =
E1122 = E 2211

E (1 )
4(1 2 )

E1212 = E 2121 =
Extenso Plana

Todos os restantes
elementos so nulos.

E1111 = E 2222 =

E (1 )
(1 + )(1 2 )

E1122 = E 2211 =

E
(1 + )(1 2 )

E1212 = E 2121 =

E
4(1 + )

Todos os restantes
elementos so nulos

Discretizao dos restantes termos da equao integral (4.20)

FiJ2, N = N i* N J dF

3, N
K iJnK
= N K ij N J N K dF

F2

F3

FiJ1, N = bi N J dV

FiJ3, N = N K ij u ext
j N J dF

VN

F3

Juntando todos estes termos, a equao (4.20) pode escrever-se da seguinte forma:

NEL

N
uK +
u J K iJnK

N =1

NELF 3

NEL

3, N
u K = u J FiJ1, N +
u J K iJnK

N =1

N =1

NELF 2

u J FiJ2, N +
N =1

NELF 3

FiJ3, N

N =1

onde NELF2 e NELF3 so respectivamente o nmero de elementos utilizados na


fronteira F2 e F3. A esta equao sempre necessrio juntar as condies fronteira em
F1 :

u J = u *J

J. Cardoso/P. Coelho

85

Elementos finitos bidimensionais

MCEM

Construda a expresso discretizada da equao integral, resta agora efectuar o


somatrio das vrias matrizes e vectores calculados para os elementos. Esta operao,
que tem como resultado uma matriz de rigidez global e um vector de foras global,
designa-se por assemblagem.

N
3, N
K iJnK
, K iJnK

FiJ1, N

, FiJ2, N

, FiJ3, N

K Global

FGlobal

Todos os valores nodais dos vectores uK e u J esto contidos nos vectores U e U que
so designados vector dos deslocamentos globais e vector dos deslocamentos virtuais
globais, respectivamente. Ento a equao integral toma a forma:

U K GlobalU = U FGlobal
com U = U *

em F1

ou dividindo ambos os termos por U ,

K GlobalU = FGlobal
com U = U *

(4.34)

em F1

Este sistema de equaes lineares pode ser resolvido de forma a obter o valor das
incgnitas, que so os deslocamentos nos ns da malha de elementos finitos.
A partir dos deslocamentos nos ns, podem obter-se os deslocamentos no interior dos
elementos, utilizando as funes de forma. A partir destes ltimos podem calcular-se as
extenses e as tenses em qualquer ponto de qualquer elemento da malha.

J. Cardoso/P. Coelho

86

Optimizao estrutural

MCEM

5. OPTIMIZAO ESTRUTURAL

5.1. Introduo
Este captulo sobretudo baseado na obra de Arora (1989). A ideia bsica de
optimizao em geral encontrar o vale mais profundo (minimizao) ou o pico mais
elevado (maximizao) de uma funo no domnio das suas variveis (ver figura 5.1).

Funo
Michalewicz

Funo
Shekel

a)

b)

Fig. 5.1 A optimizao procura dar resposta s seguintes questes: a) Qual o "vale"
mais profundo?; b) Qual o "pico" mais elevado?.
A optimizao estrutural uma disciplina que engloba um conjunto de teorias e
mtodos que procuram obter a estrutura que desempenha mais eficientemente a funo
pretendida. A ideia bsica da optimizao estrutural consiste em determinar um
conjunto de parmetros de uma estrutura (as variveis de projecto) de modo a
minimizar ou maximizar uma funo de custo (ou funo objectivo) sem violar
determinados constrangimentos relacionados com a integridade estrutural.
A optimizao estrutural tem um papel importante no projecto de estruturas. Por um
lado constitui um auxiliar precioso no projecto de estruturas complexas, com grande
nmero de parmetros e de constrangimentos. Por outro lado contribui para sistematizar
a actividade de projecto.

J. Cardoso/P. Coelho

87

Optimizao estrutural

MCEM

A actividade de projecto desempenhada na forma tradicional sempre procurou obter


bons projectos, isto , solues finais que, verificando os requisitos ou critrios
impostos so tambm econmicas e fceis de construir e de utilizar. Esta actividade
sempre foi associada a um processo iterativo. Para desenvolver um projecto, e aps uma
fase inicial de formulao do problema so executadas algumas iteraes em que vrias
solues so analisadas e melhoradas at convergncia para a soluo final. Esse
processo ilustrado na figura 5.2a).
A optimizao estrutural tambm envolve vrias iteraes, mas neste caso controladas
por um algoritmo de optimizao. A formulao do problema feita de forma
matematicamente rigorosa, definindo variveis de projecto, que so os parmetros a
alterar pelo algoritmo de optimizao, uma funo objectivo que se pretende melhorar e
um ou vrios critrios a verificar pelo projecto, os constrangimentos. A verificao
desses constrangimentos feita atravs da anlise de um modelo numrico, sendo muito
frequentemente usado o mtodo dos elementos finitos para esse efeito. Este processo
ilustrado na figura 5.2b).
Formulao do problema:
1 Variveis de projecto
2 Funo objectivo
3 Constrangimentos

Recolha de informao
sobre o sistema

Criao do modelo
numrico do sistema

Soluo inicial
(Pr-projecto)

Definio dos valores


iniciais das variveis

Anlise do sistema

Anlise do sistema

Verificao dos
requisitos

Verificao dos
constrangimentos

O projecto
satisfaz ?
No
Modificao do projecto
baseada na experincia /
heursticas

a)

Sim

Terminar

Verifica
os critrios de
convergncia ?

Sim

Terminar

No
Modificao do projecto
usando um algoritmo de
optimizao

b)

Fig. 5.2 Processo iterativo: a) na actividade de projecto; b) na optimizao estrutural.

J. Cardoso/P. Coelho

88

Optimizao estrutural

MCEM

5.2. Um pouco de histria


A optimizao estrutural tem constitudo um tpico de interesse por mais de 100 anos.
Os primeiros trabalhos analticos sobre optimizao estrutural foram publicados por
Maxwell (1890) e Michell (1904). Mas a optimizao estrutural moderna teve incio
aps a dcada de 50, onde ocorreram desenvolvimentos significativos em trs domnios
importantes:

Os computadores digitais, que surgiram no incio da dcada de 1950.


Os mtodos numricos de programao matemtica
Os mtodos numricos de anlise de estruturas, como o mtodo dos elementos
finitos.

Durante a 2 Guerra Mundial, a dcada de 1940 e incio da dcada de 1950 as aplicaes


da optimizao estrutural envolviam sobretudo a minimizao do peso de componentes
usados na indstria aeronutica como, por exemplo: colunas e painis reforados
sujeitos a cargas de compresso.
Os computadores digitais surgiram no incio da dcada de 1950 e deram um forte
impulso neste perodo aplicao dos mtodos numricos de Programao Linear
(SIMPLEX), ento desenvolvidos pela comunidade de Investigao Operacional. Estes
mtodos foram aplicados para resolver problemas de optimizao estrutural envolvendo
estruturas reticuladas (trelias).
Nos finais da dcada de 1950, o interesse pela optimizao estrutural foi grande na
indstria aeroespacial devido necessidade de projectar estruturas leves. Visto que os
programas de explorao espacial estavam em ascenso neste perodo, recursos
avultados foram aplicados em investigao nesta rea.
Para alm do avano tecnolgico ao nvel da informtica durante a dcada de 1950,
sucederam-se avanos tericos significativos na rea dos mtodos numricos aplicados
mecnica estrutural. A descoberta do mtodo dos elementos finitos (muitas vezes
atribuda a Courant, 1943, enquanto Clough, 1960, criou o nome que designa o mtodo)
abriu pela primeira vez a possibilidade dos engenheiros projectistas realizarem a anlise
de estruturas verdadeiramente complexas.
Os desenvolvimentos acumulados at finais da dcada de 1950 encerravam um
potencial enorme para a optimizao estrutural, permitindo que esta conhecesse um
franco progresso no perodo seguinte. O trabalho de Schmit (1960) considerado hoje
em dia como o marco que separa os desenvolvimentos iniciais da optimizao estrutural
e a optimizao estrutural moderna. Basicamente, este artigo adquiriu uma importncia
nica no momento da sua publicao porque, por um lado, introduziu a ideia de
combinar a anlise estrutural por elementos finitos com os mtodos numricos de
optimizao e, por outro lado, demonstrou a viabilidade deste processo na resoluo de
problemas reais. Esta combinao veio revolucionar a metodologia do projecto ptimo
de estruturas, tornando-o num processo automtico eficiente.
A optimizao estrutural moderna, como reconhecida desde 1960 at aos nossos dias,
tem sido marcada por sucessivos progressos conseguidos ao nvel da teoria da
optimizao, dos mtodos numricos de optimizao, do hardware e do software. Neste
J. Cardoso/P. Coelho

89

Optimizao estrutural

MCEM

cenrio de desenvolvimento, a optimizao estrutural no se limitou apenas s


indstrias aeronutica e espacial, mas expandiu-se a um maior nmero de domnios:
construo automvel, produo de mquinas-ferramentas, construo civil e naval.
Anteriormente, referiu-se a resoluo de problemas de Programao Linear,
especialmente na dcada de 1950. Os mtodos de Programao No Linear aplicados a
problemas contnuos conheceram um desenvolvimento substancial nas dcadas de 1970
e 1980. De entre estes mtodos destacam-se a Programao Quadrtica Sequencial
(SQP Sequential Quadratic Programming, Schittkowski 1985) pelo seu uso
generalizado e o Mtodo das Assmptotas Mveis (MMA Method of Moving
Asymptotes, Svanberg 1987) por revelar propriedades particularmente atraentes na
soluo de problemas com nmero elevado de variveis de projecto como sucede na
optimizao de topologia de estruturas contnuas. Acrescente-se ainda que, existindo a
necessidade do desenvolvimento de mtodos com espectro de aplicao mais alargado,
a partir da dcada de 1980 houve um desenvolvimento substancial e entusistico de
mtodos aplicveis a problemas de optimizao estrutural discretos e mistos. Em parte,
este objectivo foi atingido pelas Meta-Heursticas1 (Glover 1986) que haviam sido
desenvolvidas e aplicadas com sucesso a problemas de optimizao combinatria no
mbito da Investigao Operacional.

100 anos
Mitchell
Maxwell
1890 1904

Mtodos
numricos:

1950

Programao
Linear (Simplex)

1960

1970

1980 1986

Programao
No Linear (SQP)

Meta-Heursticas

Fig. 5.3 - Mtodos numricos em optimizao estrutural ao longo da corrente do tempo.


A optimizao estrutural pode ser classificada em trs categorias principais: (1)
optimizao dimensional, (2) optimizao de forma ou de configurao e (3)
optimizao de topologia ou lay-out. A natureza das variveis de projecto (discreta,
contnua ou booleana) pode diferir consoante a categoria. Para alm destas trs
categorias principais, acrescente-se tambm a optimizao de material. Neste caso a
geometria e dimenses da estrutura no so alterados. O objectivo encontrar o material
ptimo.

Inclui tcnicas tais como: Algoritmos Genticos (Genetic Algorithms), Recozimento Simulado
(Simulated Annealing), Pesquisa Tabu (Tabu Search), etc.
J. Cardoso/P. Coelho

90

Optimizao estrutural

MCEM

Exemplos de variveis de projecto em optimizao de material so: as propriedades


elsticas, a orientao das fibras de materiais compsitos e espessuras de camadas de
laminados. As trs principais categorias de optimizao referidas so agora detalhadas
em baixo.

5.3. Optimizao de dimenses


No incio do perodo da optimizao estrutural moderna, na dcada de 1960, a
optimizao estrutural estava sobretudo orientada para a resoluo de problemas de
optimizao dimensional ou de dimenses. Num problema de optimizao dimensional,
as variveis de projecto so as dimenses das seces transversais dos elementos da
estrutura. Ao longo do processo de optimizao a forma e a topologia da estrutura
permanecem inalteradas.
No exemplo da trelia da figura 5.4-a), os dimetros das barras ou as reas das suas
seces transversais constituem as variveis de projecto. Estas variveis podem variar
continuamente entre um valor limite inferior e superior ou assumir valores discretos, por
imposio das dimenses normalizadas disponveis no mercado. Neste ltimo caso,
xi D = {A1, A2 ..., Ap}, em que D representa o conjunto dos valores discretos das reas
de seco transversal normalizadas.
Seco
transversal
da viga

Elemento
estrutural:

F
w

(a) Trelia
(b) Viga em consola
Fig. 5.4 - Optimizao dimensional ou de dimenses
A resoluo do problema de optimizao dimensional com variveis discretas
tipicamente um problema de optimizao combinatria em que as solues so
combinaes dos valores do conjunto D. Por exemplo, quando se pretende optimizar a
trelia de 10 barras da figura 5.4-a) e esto disponveis 42 seces normalizadas ento, o
nmero de combinaes ou solues possveis dado por 4210 1.71 1016, o que
requer a utilizao de um algoritmo que obtenha a soluo ptima calculando apenas
uma pequena parte dessas combinaes.
No exemplo da figura 5.4-b), ilustra-se a optimizao dimensional de uma viga e
mostram-se as variveis de projecto que so as dimenses da seco transversal da viga,
b, h, t e w. De notar que o comprimento da viga, L, j no considerada um varivel de
dimenso. Outros problemas de optimizao dimensional contnua ou discreta

J. Cardoso/P. Coelho

91

Optimizao estrutural

MCEM

envolvem a optimizao de espessuras de placas, a optimizao do nmero de lminas


ou a optimizao da orientao das fibras de cada lmina num material compsito.

5.4. Optimizao de forma


Depois de um esforo de investigao sobretudo focalizado na optimizao
dimensional, passou-se a estudar com mais interesse a optimizao de forma de
estruturas. A optimizao de forma pode ser combinada com a optimizao dimensional
e conduz normalmente a solues ainda mais eficientes para uma estrutura.
A optimizao de forma comea a surgir em numerosas publicaes no incio da dcada
de 1970, como sendo a optimizao de uma estrutura cuja topologia est predefinida,
mas onde se considera varivel a fronteira delimitadora do domnio que ela ocupa.
Esta fronteira pode ser definida por um conjunto de pontos, uma linha ou uma
superfcie. Essa linha ou superfcie de fronteira pode ser modelada por funes
matemticas (splines ou outras) mediante a definio de pontos de controlo.
As variveis de projecto so ento as coordenadas de posio desses pontos ao longo da
fronteira. O objectivo da optimizao de forma ser encontrar o conjunto de valores das
variveis geomtricas, ou seja, a forma ptima da fronteira , que minimiza a funo
objectivo do problema.
Para os elementos estruturais unidimensionais, barras e vigas, ou bidimensionais,
membranas, cascas, a optimizao de forma aparece quase sempre associada a
variaes de configurao. Estas ocorrem sempre que se modifica a orientao no
espao dos referenciais locais desses elementos estruturais. De facto a fronteira de uma
viga constituda pelos dois pontos da extremidade, visto o domnio ser constitudo
pela linha que representa o seu eixo e por isso a variao do domnio corresponde ao
deslocamento das extremidades ao longo do eixo. Mas a variao da posio no espao
das coordenadas das extremidades envolve quase sempre variao da orientao do eixo
da viga. Normalmente considera-se que a optimizao de forma destes elementos
estruturais engloba os dois tipos de modificao da geometria.
As variveis de projecto na optimizao de forma so contnuas e tambm so
designadas por variveis geomtricas, dado o seu controlo sobre a geometria da
estrutura.
A modificao da posio dos ns de uma trelia est ilustrada na figura 5.5-a). A
topologia da estrutura (nmero de ns, barras e conectividade entre os ns) mantm-se
inalterada. Na figura 5.5-b) ilustrada a optimizao de forma de uma viga em consola.
So modificadas as fronteiras do domnio ocupado pela viga (inicialmente
rectangular) ou da seco transversal (inicialmente em I).
Nos problemas de optimizao de forma, a topologia inicial da estrutura fixa ao longo
do processo de optimizao, pelo que a soluo final depende fortemente dessa
topologia. Pode acontecer que a topologia de partida no seja ptima e como tal a
soluo final obtida ser sub-ptima. A introduo de variveis topolgicas na

J. Cardoso/P. Coelho

92

Optimizao estrutural

MCEM

optimizao de estruturas pode levar a uma melhoria do desempenho da estrutura


conforme se explica de seguida.
Seco
transversal
da viga

F
(a) Trelia de 10 barras

(b) Viga em consola

Fig. 5.5 - Optimizao de forma de estruturas bidimensionais.

5.5. Optimizao de topologia


A optimizao de topologia de estruturas teve como pioneiro Maxwell (1890), mas os
trabalhos de investigao cientfica relevantes neste assunto surgiram sobretudo a partir
da dcada de 1980.
Para introduzir o conceito de optimizao topolgica ou de layout de uma estrutura
pode considerar-se o caso de uma trelia. Neste caso, a optimizao topolgica procura
optimizar o nmero de ns e de barras bem como as condies de apoio da trelia. As
condies de apoio impostas por restries aos graus de liberdade de deslocamento num
n e a conectividade entre os ns por meio de barras, so modeladas por variveis
booleanas (0 ou 1). Estas variveis representam um estado de existncia (1) ou ausncia
(0). Por exemplo, um valor 0 indica que uma determinada barra que liga dois ns no
deve ser considerada durante a anlise estrutural e a avaliao da funo objectivo.
Similarmente, um valor 0 usado para indicar que um grau de liberdade num n no
est restringido.
A figura 5.6-a) pretende mostrar que, partindo-se de uma topologia inicial (trelia de 10
barras), a optimizao de topologia procura descobrir quais os ns e as barras
(conectividades) que correspondem utilizao mais eficiente do material, ou seja,
aquele que minimiza o peso e satisfaz os constrangimentos de tenso, deslocamento e
encurvadura. Este mtodo de optimizao topolgica conhecido por Ground Structure
Approach e especificamente aplicado a estruturas reticuladas.

J. Cardoso/P. Coelho

93

Optimizao estrutural

MCEM

Material (barras) ausentes


na topologia final
Seco
transversal
da viga

Vazios de material
F

F
(a) Trelia de 10 barras

Domnio ocupado
pela estrutura

(b) Viga em consola

Fig. 5.6 - Optimizao de topologia de estruturas


No caso da optimizao topolgica envolvendo problemas de elasticidade dos meios
contnuos bidimensionais ou tridimensionais, pode aplicar-se um mtodo baseado numa
filosofia semelhante ao Ground Structure Approach e que conhecido por Hard-Kill
Method ou tambm conhecido por Fully Stressed Design Technique.
Inicialmente, considera-se que o domnio da estrutura um meio contnuo
discretizado por uma malha fina de elementos finitos (EF). Procede-se a uma anlise de
EF para o clculo do campo de tenso nesse domnio. Em seguida, estabelece-se uma
relao entre os resultados de tenso e o mdulo de elasticidade do material. Esta
relao expressa por uma funo em degrau que determina, simplesmente, se um dado
elemento finito faz ou no faz parte integrante da estrutura na anlise seguinte de EF.
Volta a ser efectuada uma anlise da estrutura por EF e assim se procede
sucessivamente a uma remoo de material (minimizao do peso) at ser satisfeito um
determinado critrio de paragem. A figura 5.6-b) pretende mostrar, esquematicamente, o
resultado final deste procedimento no caso da optimizao de uma viga. A estrutura
final ocupar uma parte do domnio inicial e poder apresentar-se perfurada ou com
vazios de material.
Tipicamente, a optimizao topolgica pode ser vista como um procedimento de
optimizao que distribui racionalmente o material disponvel numa rea ou volume
fixos atravs da remoo gradual de pequenas pores de material com nvel baixo de
tenso que no est sendo usado eficientemente na transmisso dos esforos internos.
A optimizao topolgica na sua gnese um problema inteiro ou discreto,
representado por variveis booleanas que exprimem a existncia de material (1) ou a
ausncia de material (0). Um problema com estas caractersticas no pode ser resolvido
por mtodos de programao matemtica, mas pode ser resolvido recorrendo s metaheursticas. No entanto, de salientar o esforo de investigao que tem sido feito no
sentido de tornar o problema de optimizao topolgica um problema contnuo e
resolvel atravs dos mtodos de programao contnua. Este esforo tem merecido as
seguintes justificaes:

J. Cardoso/P. Coelho

94

Optimizao estrutural

MCEM

Os algoritmos exactos conhecidos para optimizao inteira so ineficientes para


um grande nmero de variveis de projecto como ocorre em optimizao de
topologia.
A remoo discreta de material corresponde ao aparecimento de furos na
estrutura o que pode implicar uma anlise por EF numericamente instvel.

No caso da optimizao topolgica de trelias, em vez das variveis booleanas, podem


considerar-se variveis contnuas que representam a variao de rea das barras desde
um valor mnimo (prximo de zero) at um valor mximo. As barras com valor mnimo
de rea so consideradas desnecessrias e, portanto, eliminadas da estrutura.
No caso de problemas de elasticidade dos meios contnuos surge uma variante do
mtodo Hard-Kill Method designada por Soft-Kill Method, a qual resolve um problema
contnuo em vez de discreto. Neste caso estabelece-se uma relao linear entre o campo
de tenso e a densidade relativa do material. Inicialmente, todo o material do domnio
da estrutura tem densidade relativa uniforme igual a 1 e, subsequentemente, a
optimizao topologia consiste em obter a distribuio ptima de material atravs da
variao entre 0 e 1 do valor da densidade dos elementos finitos estendidos ao domnio
da estrutura.
Em termos grficos, o projecto ptimo pode ser obtido pela variao de densidade dos
elementos do domnio do seguinte modo:

Zonas escuras de elevada densidade (prxima de 1) indicam existncia de


estrutura.
Zonas cinzentas de densidade intermdia (entre 0 e 1) do uma noo possvel
do contorno da estrutura.
Zonas claras de baixa densidade (prximas de 0) indicam um vazio de material.

O modelo de optimizao topolgica que utiliza uma distribuio de material com


densidade varivel (material compsito), foi encarado com muito entusiasmo em
optimizao de topologia por permitir abordar um problema por natureza discreto de
uma forma contnua. Uma contribuio significativa na utilizao de um modelo de
material compsito em optimizao topolgica de estruturas foi dada por Bendse &
Kikuchi (1988). Estes investigadores desenvolveram um mtodo designado por mtodo
de homogeneizao que consiste em preencher o domnio ocupado pela estrutura com
um modelo de material poroso de microestrutura peridica atravs da repetio no
espao de uma clula quadrada com um furo de geometria rectangular ou circular. As
variveis de projecto so as dimenses do furo da clula que caracterizam a
microestrutura e definem, em cada ponto do espao, um material poroso cuja densidade
relativa toma valores contnuos no intervalo [0,1]. O valor 1 corresponde a clula cheia
de material (furo inexistente), o valor 0 corresponde a clula com vazio de material
(furo maior) e todos os valores intermdios correspondem a um material de densidade
relativa intermdia. O problema de optimizao de topologia definido como a procura
da porosidade ptima no domnio da estrutura.
Outro mtodo de optimizao de topologia baseado num modelo material tambm de
densidade varivel designado por SIMP (Solid Isotropic Material with Penalization).
Por vezes, este mtodo tambm designado de material interpolation, artificial or
fictious material, power law ou artificial density approach. A ideia bsica deste mtodo
J. Cardoso/P. Coelho

95

Optimizao estrutural

MCEM

foi proposta por Bendse (1989) e o termo foi introduzido mais tarde por Rozvany et al.
(1992). Este mtodo relaciona o tensor da elasticidade Eijkl, em cada ponto x do domnio
da estrutura, com um tensor de elasticidade E0ijkl de um material base slido e
isotrpico atravs de uma lei de potncia que toma como argumento a funo densidade
(x)]0,1] e expoente p. Nesta relao de rigidez, um expoente p > 1 tem como efeito
penalizar os valores intermdios da densidade, 0 < < 1, levando a uma caracterizao
final do domnio atravs de regies de material ( = 1) e vazio ( = 0). O trabalho
de Bendse e Sigmund (1999) fornece uma interpretao fsica para as solues
compsitas (0 < < 1) atribudas ao modelo SIMP. Aqui, conclui-se que, sob
determinadas condies de penalizao (p > 3 em problemas 2D e 3D), qualquer tensor
Eijkl obtido com o modelo SIMP pode ser fisicamente interpretado como um tensor da
elasticidade de um material compsito feito de vazio e uma quantidade do material base
correspondente fraco volmica dada por . No entanto, no contexto do modelo
SIMP, a variao da densidade do material no deve ser confundida com a optimizao
de material, pois o objectivo no obter as propriedades ptimas do material sob
determinadas condies. Pretende-se, unicamente, identificar o domnio ocupado pela
estrutura. A figura 5.7 mostra um exemplo de aplicao do mtodo SIMP.

iter 0

iter 1

iter 2

iter 4

iter 6

iter 8

iter 10

iter 15

iter 20

iter 30

iter 40

Fig. 5.7 - Exemplos de optimizao de topologia para problemas de elasticidade.


Considerando novamente o caso da optimizao de estruturas reticuladas, faz sentido
combinar em simultneo as variveis de topologia (nmero de barras e ns) com as
variveis de forma (posio dos ns) e variveis dimensionais (seco das barras).
Tambm no caso de estruturas contnuas bidimensionais e tridimensionais uma
optimizao de topologia pode ser combinada com uma optimizao de forma para
definir melhor o contorno da estrutura uma vez que, na optimizao de topologia, zonas
de densidade relativa intermdia podem ter significado matemtico, mas no fsico.

J. Cardoso/P. Coelho

96

Optimizao estrutural

MCEM

5.6. Formulao do problema de projecto ptimo


A formulao de um problema de optimizao ou projecto ptimo envolve trs passos:
1. Identificao das variveis de projecto. As variveis de projecto devem ser
independentes umas das outras tanto quanto possvel.
2. Identificao de uma funo objectivo ou funo custo e express-la como
funo das variveis de projecto. A funo objectivo o critrio necessrio para
analisar se um dado projecto melhor ou no do que outro.
3. Identificao de todos os constrangimentos de projecto e a sua transcrio em
expresses matemticas. Estes constrangimentos podem incluir limitaes de
recursos, critrios de cedncia de material, resposta do sistema, dimenses
geomtricas dos membros do sistema, etc. Se um projecto satisfaz todos os
constrangimentos diz-se que temos um projecto admissvel.
Um problema de optimizao estrutural pode ser formulado matematicamente da
seguinte forma standard:

min
x

Sujeito a

f (x)
gj (x) 0
; j = 1,..., m
hk (x) = 0
; k = 1,..., p
x i l xi x i u ; i = 1 ,..., n

Onde x = (x1, x2,..., xn), o vector das n variveis de projecto, f (x) a funo objectivo,
gj (x) so os m constrangimentos de desigualdade, hk (x) so os p constrangimentos de
igualdade, xi l e xi u so os limites inferior e superior de variao das variveis de
projecto xi, respectivamente.
Observaes formulao standard do problema de optimizao:

As funes objectivo e dos constrangimentos dependem apenas das variveis de


projecto.
O n de constrangimentos de igualdade deve ser menor ou quando muito igual
ao n de variveis de projecto, i.e., p n.
se p > n sistema de equaes indeterminado. Existem constrangimentos de
igualdade redundantes ou a formulao do problema inconsistente.
se p < n a soluo ptima para o problema possvel.
se p = n no existe optimizao a fazer porque o valor ptimo soluo dos
constrangimentos de igualdade.
No existe restrio no n de constrangimentos de desigualdade.
Se f, h e g so funes lineares diz-se problema de programao linear.
Se f, h ou g so funes no lineares diz-se problema de programao no
linear.
Tratamento do problema de maximizao: max f(x) min [- f(x) ]
Tratamento dos constrangimentos de maior ou igual: gj (x) 0 [- gj (x)] 0

J. Cardoso/P. Coelho

97

Optimizao estrutural

MCEM

Constrangimentos activos, inactivos e violados. Seja x* o ponto ptimo e gj (x)


os constrangimentos de desigualdade,
Se gj (x) = 0 gj (x) 0 constrangimento de desigualdade activo em x*
Se gj (x) < 0 gj (x) 0 constrangimento de desigualdade inactivo em x*
Se gj (x) > 0 ou hk (x) 0 constrangimentos violados em x*

A funo objectivo mais utilizada sempre foi o peso de uma estrutura, que sempre se
pretendeu minimizar. Contudo possvel alterar a formulao indicada caso se queira
maximizar o valor de uma funo. Outra funo objectivo com grande interesse o
custo de uma estrutura, o que pode envolver o custo de fabrico, o custo de utilizao e
outros custos. A tabela 1 mostra as variveis de projecto e os constrangimentos mais
usados em optimizao estrutural.
Tabela 5.1 Exemplos de funo objectivo, variveis de projecto e constrangimentos
mais usados em optimizao estrutural.
Funo objectivo

Peso

Custo

Variveis de projecto

Dimenses

Forma

Topologia

Constrangimentos
Deslocamento
Tenso
Frequncia natural
Carga crtica
Fiabilidade

Conforme referido nas seces anteriores o projecto ptimo de uma estrutura pode ser
formulado em termos da optimizao dimensional, de forma e de topologia. A natureza
das variveis de projecto pode ser diferente dependendo da formulao do problema
(ver tabela 4.1).
Tabela 5.2 - Tipos de varivel de projecto dependendo da formulao do problema de
optimizao estrutural

Tipo de
optimizao

Tipo da varivel
de projecto

Significado fsico
Possvel

Inteira

Seleco de seces transversais

Dimensional
Real
Forma
ou
configurao

Geomtrica (Real)
Booleana

Topologia
Real

Dimenses vlidas num


intervalo de variao contnuo
Coordenadas nodais
Existncia ou ausncia de
material
Densidade do material varivel

Observao
Procura atravs de
uma tabela de valores
normalizados
_____
Posio de ns varia
entre um limite
inferior e superior
_____

Observa-se que, a grande maioria dos problemas de optimizao estrutural, considera


somente as reas das seces transversais dos elementos estruturais como variveis de
projecto. De facto, a optimizao estrutural dimensional a mais vulgar e quase sempre
surge combinada com a optimizao de forma ou de topologia.

J. Cardoso/P. Coelho

98

Optimizao estrutural

MCEM

Um problema apresenta-se especialmente complexo quando se pretende a optimizao


simultnea de dimenses, de forma e de topologia, em que as variveis de projecto
podem ser simultaneamente discretas, contnuas e booleanas. Devido diferena na
natureza das variveis de projecto, os mtodos de optimizao de programao
matemtica (baseados no clculo do gradiente) no podem ser aplicados porque o
espao de projecto no convexo e disjunto. Alis, o sucesso alcanado por estes
mtodos, nomeadamente os mtodos SQP, quando aplicveis, fica muitas vezes
limitado a problemas em que a configurao ou a topologia so fixas. Daqui decorre a
necessidade de mtodos de optimizao de propsito mais generalizado (robustos),
capazes de lidar com as dificuldades inerentes natureza das variveis de projecto.
Neste sentido, as meta-heursticas surgem como um mtodo atraente e efectivo na
resoluo de problemas com o grau de dificuldade referido.
Nas prximas seces considera-se a optimizao de funes contnuas e pelo menos
duas vezes continuamente diferenciveis.

5.7. Resoluo grfica de problemas de optimizao


Qualquer problema de optimizao tendo duas variveis de projecto pode ser resolvido
usando o mtodo grfico. Neste mtodo so traados os grficos das funes dos
constrangimentos e identificado o domnio admissvel de projecto. Este domnio no
mais do que o conjunto dos pontos do plano que satisfazem todos os constrangimentos
de igualdade e de desigualdade existentes. Para identificar o melhor projecto, a funo
custo deve ser tambm representada graficamente. Avalia-se pelo traado das linhas de
isocusto (isolinhas) sentidos de crescimento ou de decrescimento da funo custo no
domnio admissvel. Em seguida possvel identificar visualmente um projecto ou
soluo ptima para o menor custo e ler directamente os valores das variveis de
projecto (ponto de ptimo).

Exemplo 1: Optimizao de lucros de empresa


Sabe-se que:
Uma empresa fabrica as mquinas A e B.
Utilizando os recursos disponveis, possvel fabricar 28 mquinas A ou 14
mquinas B por dia.
O departamento de vendas consegue vender 14 mquinas A ou 24 mquinas B
por dia.
O armazm s tem espao para expedir um total de 16 mquinas por dia.
A companhia ganha 400 em cada mquina A e 600 em cada mquina B.
Pretende-se saber qual o nmero de mquinas A e B que dever ser fabricado para
maximizar os lucros da empresa.

Resoluo

Variveis de projecto:

J. Cardoso/P. Coelho

x1 nmero de mquinas A fabricadas por dia.


x2 nmero de mquinas B fabricadas por dia
99

Optimizao estrutural

MCEM

Funo objectivo: O lucro total 400 x1 + 600 x2 e por isso, utilizando a formulao
anterior:
F(x1 , x2 ) = (400 x1 + 600 x2)
Constrangimentos: Os constrangimentos correspondem a limitaes na capacidade de
fabrico, no pessoal associado s vendas e na expedio. Este ltimo constrangimento
pode ser obtido facilmente:
x1 + x2 16
Para obter o constrangimento associado s limitaes na capacidade de fabrico
considera-se que, fabricando x1 mquinas A por dia, os restantes recursos podem ser
utilizados para fabricar um nmero proporcional de mquinas B:

x1 x2
+ 1
28 14

Fig. 5.8 - Optimizao pelo mtodo grfico (exemplo 1).

J. Cardoso/P. Coelho

100

Optimizao estrutural

MCEM

De forma semelhante possvel obter o constrangimento associado fora de vendas:

x1 x2
+
1
14 24
Obviamente, x1 0 e x2 0.
Trata-se de um problema de optimizao linear com duas variveis e constrangimentos
lineares, que pode ser resolvido graficamente, obtendo-se:

x1* = 4; x2* = 12; F* = - 8800

(ponto D do grfico da figura 5.8)

Exemplo 2: Optimizao do peso de uma coluna


P

Sabe-se que:

Uma coluna tem um comprimento L e suporta uma


carga axial P. A coluna tem uma seco tubular,
com raio R e espessura t.
A carga critica de Euler no pode ser ultrapassada,

Pcritica =

2 EI
4L2

A tenso normal admissvel, adm no pode ser


ultrapassada.

2R

Considerando P = 10 MN, E= 207 GPa, = 7833 Kg/m3, L = 5,0 m e adm = 248 MPa
pode-se formular o problema de optimizao:

Resoluo

Variveis de projecto:

R raio mdio da seco tubular.


t espessura

Funo objectivo: Pretende-se minimizar a massa da coluna e por isso esta funo :

F ( R, t ) = 2 R t L
= 2 R t 5 7833
= 2,4608 105 R t

J. Cardoso/P. Coelho

101

Optimizao estrutural

MCEM

Constrangimentos: Considerando a formulao apresentada, os dois constrangimentos


de desigualdade, associados tenso mxima admissvel e carga crtica podem ser
assim definidos:

g1 ( R, t ) =

P
adm 0
2 R t

g 2 ( R, t ) = P

3E R3 t
4 L2

e obviamente com R 0 e t 0.
Trata-se de um problema de optimizao no-linear com duas variveis que pode ser
resolvido graficamente traando as curvas correspondentes a F(R,t) = Const. Estas
curvas so paralelas ao constrangimento g1. A curva AB corresponde ao conjunto de
pontos que so soluo ptima. Em particular o ponto A:

R* = 0,1575 m; t* = 0,0405 m; F* = 1579 Kg

Fig. 5.9 - Optimizao pelo mtodo grfico (exemplo 2).


J. Cardoso/P. Coelho

102

Optimizao estrutural

MCEM

5.8. Conceitos fundamentais de projecto ptimo


Conceito de mnimo
Uma funo f(x) de n variveis tem um mnimo global (absoluto) em x* se

f(x*) f(x), xS
onde S o domnio admissvel do espao de projecto.
Mnimo global estrito se

f(x*) < f(x), xS


Uma funo f(x) de n variveis tem um mnimo local (relativo) em x* se

f(x*) f(x), xN=x| xS , x-x*<


onde N uma vizinhana do ponto x* e >0.
Mnimo local estrito se

f(x*) < f(x), xN


Teorema de Weierstrass (existncia de mnimo global):
Se uma funo f(x) contnua num conjunto admissvel, S, que limitado e fechado,
ento f(x) tem um mnimo global em S.

S conjunto fechado se inclui os seus pontos fronteira e qualquer sequncia de pontos


tem uma sucesso que converge para um ponto do conjunto.
S conjunto limitado se para xS, xT. x < c, c um nmero finito.
Se as condies do teorema de Weierstrass so satisfeitas ento est garantida a
existncia de um ptimo global. Se no forem satisfeitas tanto pode existir como no
um ptimo global.

Vector gradiente
Vector coluna das derivadas parciais de f(x) no ponto x*:

f (x*)
x
1

f
(
x
*)

f (x*) f (x*) f (x*)


f (x *) =

= x2
x2
xn
x1
M
f (x*)

xn

J. Cardoso/P. Coelho

103

Optimizao estrutural

MCEM

Propriedades do vector gradiente:

O vector gradiente f de uma funo f(x1,x2,...,xn) no ponto x* = (x*1,x*2,...,x*n)


ortogonal (normal) ao plano tangente "hiper"-superfcie f(x1,x2,...,xn) = const
(ver superfcie da figura 5.10 para o caso de uma funo de 3 variveis).
O gradiente representa a direco de mxima taxa de aumento da funo f(x) no
ponto x*.
A mxima taxa de variao de f(x) em qualquer ponto x* dada pelo
comprimento do vector gradiente.

Estas propriedades do gradiente so muito importantes no desenvolvimento das


condies de optimalidade do problema de optimizao bem como de mtodos
numricos para optimizao.

( )

f x *

x*
superfce f (x ) = const

Fig. 5.10 - Vector gradiente para f(x1,x2,x3) no ponto x*.

Matriz Hessiana
Matriz das segundas derivadas parciais da funo f(x), que obtida derivando uma vez
o vector gradiente em ordem a cada varivel xi.

2 f

2
x1
2 f
H = 2 f = x x
2 1
2M
f
x x
n 2

2 f
x1x2
2 f
x22
M
2 f
xn x2

2 f

x1xnj
2 f

x2xn
O
M
2 f

xn2

Cada elemento da matriz Hessiana uma funo que avaliada num dado ponto x*. A
funo f(x) assume-se duas vezes continuamente diferencivel. As derivadas cruzadas
so iguais o que implica que H seja matriz simtrica.

J. Cardoso/P. Coelho

104

Optimizao estrutural

MCEM

Expanso em srie de Taylor


Uma funo pode ser aproximada por polinmios numa vizinhana de qualquer ponto
em termos do seu valor e derivadas usando expanso em sries de Taylor.
No caso de uma funo apenas de uma varivel:

( )(

( )(

2
df x *
1 d 2 f x*
*
f (x ) = f x +
xx +
x x* + R
2
dx
2 dx

( )
*

R chamado de resduo e um termo pequeno quando comparado com os outros se x


estiver suficientemente prximo de x*.
Definindo d = x x* como o incremento ou perturbao na varivel de projecto, tem-se:

) ( )

f x * + d = f x* +

( )

( )

df x *
1 d 2 f x* 2
d+
d +R
dx
2 dx 2

No caso de uma funo de n variveis e utilizando notao matricial:

( )

) 12 (x - x ) H(x - x ) + R

f (x ) = f x* + f T x - x* +

* T

se d = x - x* ento vem
1
f x* + d = f x* + f T d + dT Hd + R ou
2

) ( )

1
f = f T d + dT Hd + R; com f = f x* + d f x*
2

) ( )

Variao de 1 ordem de f(x) em x*:


f = f T x; x = x x*

uma aproximao aceitvel para a variao da funo original quando x est prximo
de x*.

Formas quadrticas e matrizes definidas


Forma quadrtica uma funo no linear especial tendo apenas termos de 2 ordem
(variveis ao quadrado ou produto de duas variveis).

F (x) =

1 n n
1
pij xi x j ou na forma matricial F (x) = xT Px

2 i =1 j =1
2

onde P chamada a matriz da forma quadrtica F(x). Dada uma forma quadrtica F(x)

J. Cardoso/P. Coelho

105

Optimizao estrutural

MCEM

podemos sempre substituir P por uma matriz simtrica A, i.e., F (x) =

1 T
1
x Px = x T Ax
2
2

em que aij = (pij + pji)/2. Observa-se atrs que o terceiro termo da expanso em srie de
Taylor uma forma quadrtica nas variveis d. Portanto, a Hessiana H a matriz
associada com essa forma quadrtica.
A forma quadrtica usada nas condies de 2 ordem para um ponto ptimo local e
tambm para determinar a convexidade de funes conforme poder ser visto mais
frente.

Forma de uma matriz Forma definida:


positiva F(x) > 0, x0
negativa F(x) < 0, x0
Forma indefinida:
F(x1) < 0 e F(x2) > 0
Forma semi-definida:
positiva F(x) 0, x x0: xTAx=0
negativa F(x) 0, x x0: xTAx=0
Mtodos para determinar se uma matriz ou forma quadrtica positiva definida ou
semi-definida: Valores prprios e Menores principais.

Valores prprios
Sejam i, i = 1,...,n, os n valores prprios de uma matriz simtrica A (nn) associada
1
com a forma quadrtica F (x) = xT Ax :
2

F(x) positiva definida se e s se (sse) i > 0, i = 1,...,n


F(x) positiva semi-definida sse i 0, i = 1,...,n (pelo menos um i = 0)
F(x) negativa definida sse i < 0, i = 1,...,n
F(x) semi-definida negativa sse i 0, i = 1,...,n (pelo menos um i = 0)
F(x) indefinida se i < 0 e i > 0

Uma matriz definida positiva no pode ter elementos na diagonal que sejam zeros ou
negativos.

Derivada da forma quadrtica


Seja a forma quadrtica simtrica:

F (x) =

J. Cardoso/P. Coelho

1 n n
aij xi x j
2 i =1 j =1

106

Optimizao estrutural

MCEM

F (x) n
= aij x j
xi
j =1
Gradiente da forma quadrtica:

F ( x ) = Ax

derivando novamente:
2 F ( x)
= aij
x j xi

As componentes aij da matriz A so as componentes da matriz Hessiana para a forma


quadrtica.
Condies necessrias e suficientes

As condies que devem ser satisfeitas no ponto ptimo so chamadas


necessrias.
Pontos ptimos devem satisfazer as condies necessrias. Pontos que no as
satisfazem no podem ser ptimos.
Um ponto satisfazendo as condies necessrias pode no ser o ptimo, i.e.,
pontos que no so ptimos podem tambm satisfazer as condies necessrias.
Pontos satisfazendo as condies necessrias so chamados candidatos a pontos
ptimos.
Um ponto ptimo que satisfaz as condies necessrias e suficientes o ptimo.
Se as condies suficientes no podem ser usadas ou no so satisfeitas, no
podemos tirar nenhumas concluses acerca da optimalidade do ponto candidato
a ptimo.

Nas seces seguintes sero apresentadas as condies de optimalidade ou as condies


que devero ser satisfeitas para que um ponto seja um ptimo local de um problema de
optimizao que poder ser ou no ser constrangido.

5.9. Problemas de projecto ptimo no constrangido


O objectivo aqui minimizar uma funo f(x) sem qualquer constrangimento em x.
As condies de optimalidade para problemas constrangidos e no constrangidos podem
ser usadas de dois modos:

Se um ponto do espao de projecto dado, as condies de optimalidade podem


ser usadas para verificar se o ponto ou no um candidato a ptimo.
As condies de optimalidade podem ser resolvidas para pontos candidatos a
ptimos.

Um ponto satisfazendo as condies necessrias de optimalidade simplesmente um


candidato a mnimo local. As condies suficientes distinguiro pontos mnimos de
outros.
J. Cardoso/P. Coelho

107

Optimizao estrutural

MCEM

Procedimento para derivar as condies de optimalidade locais:


Assume-se que temos um ponto mnimo x* e examinamos uma vizinhana pequena dele
para estudar as propriedades da funo e suas derivadas. Portanto, x* mnimo local de
f(x) e x ponto suficientemente prximo de x*. Incrementos em x e f(x) so d = x x* e
f = f(x) f(x*), respectivamente. Se f(x) tem um mnimo local em x* ento f 0. Para
d pequeno f pode ser aproximado por uma srie de Taylor em x* e daqui podem ser
ento derivadas condies de optimalidade locais conforme apresentado em seguida.
Condies de optimalidade para funes de uma varivel
Condies necessrias de 1 ordem:
Srie de Taylor de f(x) no ponto x*:

( )

f ( x ) = f x* +

( )

( )

df x *
1 d 2 f x* 2
d+
d +R
dx
2 dx 2

Sendo f = f(x) f(x*), ento


f ( x ) =

( )

( )

df x *
1 d 2 f x* 2
d+
d +R
dx
2 dx 2

Se x* mnimo local f 0

( )

df x *
d , domina os restantes termos.
Para d pequeno o 1 termo da srie de Taylor,
dx
df x *
df x *
A quantidade
d pode ser negativa dependendo do sinal de
, a menos que
dx
dx
esta derivada seja igual a zero. De facto, a nica condio para que o termo no seja
negativo para todo o d na vizinhana de x* dada por:

( )

( )

( )

df x *
=0
dx
Pontos satisfazendo esta condio chamam-se pontos de estacionaridade (so pontos
candidatos a ptimo e podem ser pontos de mnimo, de mximo ou de inflexo).
Condies suficientes:
Visto que pontos de estacionaridade, x*, satisfazem
f ( x ) =

( )

( )

df x *
= 0 ento,
dx

1 d 2 f x* 2
d +R
2 dx 2

O 2 termo domina todos os restantes de maior ordem. A desigualdade f > 0 satisfeita


se este termo positivo para todo d 0 e

J. Cardoso/P. Coelho

108

Optimizao estrutural

MCEM

( )

d 2 f x*
>0
dx 2
Este resultado significa que a funo tem curvatura positiva nos pontos de mnimo.
Condio necessria de 2 ordem

( )

d 2 f x*
0
dx 2

( )

( )

d 2 f x*
d 2 f x*
>
0
no

satisfeita,
i.e.,
= 0 , no podemos concluir que x* seja ou
2
2
dx
dx
no um ponto de mnimo. Precisamos avaliar derivadas de ordem superior.
Se

( )

d 3 f x*
= 0 (Condio necessria, ponto de estacionaridade)
dx 3

( )

d 4 f x*
> 0 (condio suficiente, ponto x* mnimo)
dx 4
Em geral, todas as derivadas mpares ordenadas de ordem inferior quela que no zero
(derivada de ordem par, condio suficiente) devem ser zero (condio necessria para
mnimo local).
Condies de optimalidade para funes de vrias variveis
Expanso em srie de Taylor em torno do ponto x*:
1
f = f T x * d + d T H x* d + R
2

( )

( )

Se assumirmos que x* um mnimo local ento f 0 e, portanto,


condio necessria: f(x*) = 0 (x* ponto de estacionaridade)
condio suficiente: dTH(x*)d > 0 para d0; H(x*) matriz positiva definida.

5.10. Problemas de projecto ptimo constrangido


Condies necessrias: constrangimentos de igualdade
A soluo destas condies d pontos candidatos a ptimos.
Ponto regular
Considere-se um problema constrangido para minimizar f(x) sujeito aos
constrangimentos de igualdade hi(x)=0; i = 1,...,p. Um ponto x* satisfazendo os
J. Cardoso/P. Coelho

109

Optimizao estrutural

MCEM

constrangimentos h(x*)=0 ponto regular do espao de projecto se os vectores


gradiente de todos os constrangimentos no ponto x* so linearmente independentes.
Quando existem tambm constrangimentos de desigualdade, ento para que um ponto
seja regular, os gradientes das desigualdades activas devem ser tambm linearmente
independentes.
Independncia linear
Para determinar se um conjunto de vectores a(1), a(2),..., a(n) linearmente dependente ou
independente resolve-se o sistema Ax = 0 em que a matriz A = { a(1),a(2),...,a(n)}. Se
x = 0 a nica soluo, ento o conjunto de vectores a(1), a(2),..., a(n) linearmente
independente. Independncia linear dos vectores dos gradientes significa que nenhum
par de gradientes ou dois gradientes so paralelos um ao outro e nenhum gradiente pode
ser expresso como uma combinao linear dos outros.
Teorema dos Multiplicadores de Lagrange
Considere-se o problema de minimizao de f(x) sujeito a constrangimentos de
igualdade hi(x) = 0, i=1,...,p. Seja x* um ponto regular que um mnimo local para o
problema. Ento existem multiplicadores de Lagrange vj*, j = 1,..., p tal que:

( )

( )

p
h x*
f x*
+ v*j j
= 0, i = 1,..., n
xi
xi
j =1

h j (x* ) = 0;

j = 1,..., p

Definindo-se a funo Lagrangeana por


p

L(x, v ) = f (x ) + v j h j = f (x ) + v T h
j =1

ento as condies anteriores so as condies necessrias para existncia de mnimo


local e representam a estacionaridade da funo Lagrangeana relativamente s variveis
de projecto xi e multiplicadores de Lagrange vj L x* , v * = 0 , i.e., podemos reescrever
as condies anterior na forma:

L x* , v *
= 0, i = 1,..., n
xi
L x* , v *
= 0, j = 1,..., p
v j

Estas condies resultam num sistema de n + p equaes, com n incgnitas xi e p


incgnitas vj. Este sistema de equaes pode ser no linear e por isso pode ser de difcil
resoluo analtica. Neste caso, um algoritmo numrico como o mtodo de NewtonRaphson poderia ser utilizado.

J. Cardoso/P. Coelho

110

Optimizao estrutural

MCEM

Os multiplicadores de Lagrange vj associados apenas constrangimentos de igualdade so


livres em sinal, i.e., podem ser positivos, negativos ou nulos.
Significado geomtrico dos multiplicadores de Lagrange
Da estacionaridade da Lagrangeana relativamente s variveis de projecto vem que:

( )

( )

p
h j x *
f x *
*
= v j
, i = 1,..., n ou
xi
xi
j =1

( )

( )

f x * = v T h x *

Deste resultado conclui-se que o gradiente da funo objectivo uma combinao linear
dos gradientes dos constrangimentos no ponto candidato a ptimo e os multiplicadores
de Lagrange so os escalares dessa combinao linear.
No exemplo mostrado na figura 5.11 de minimizao de uma funo sujeita a um
constrangimento de igualdade, pode tambm notar-se que no ponto candidato a ptimo,
o gradiente da funo objectivo e da funo do constrangimento esto ao longo da
mesma linha e so proporcionais um ao outro, sendo o multiplicador de Lagrange a
constante de proporcionalidade.
Significado fsico dos multiplicadores de Lagrange
O multiplicador de Lagrange associado a um constrangimento pode ser interpretado
como a fora requerida para impor o constrangimento ou para que este no seja violado.

Fig. 5.11 - Soluo grfica de minimizao de uma funo quadrtica sujeita a um


constrangimentom linear. Interpretao geomtrica das condies necessrias.

J. Cardoso/P. Coelho

111

Optimizao estrutural

MCEM

Condies necessrias: constrangimentos de desigualdade


Condies necessrias de Kuhn-Tucker (K-T conditions)
Seja x* um ponto regular do conjunto dos constrangimentos e um mnimo local para
f(x) sujeito aos constrangimentos:
hi(x) = 0; i = 1,...,p
gi(x) 0; i = 1,...,m

A funo Lagrangeana do sistema :


p

i =1

i =1

L(x, v, u, s ) = f (x ) + vi hi (x ) + ui g i (x ) + si2 = f (x ) + v T h(x ) + u T g (x ) + s 2

Ento existem multiplicadores de Lagrange v* e u* tal que a Lagrangeana estacionria


em relao a xj, vi, ui e si:

p
m
h
g
L
f
=
+ vi* i + ui* i = 0,
x j x j i =1 x j i =1 x j

( )

j = 1,..., n

hi x* = 0; i = 1,..., p

n + p + 2m
equaes

( )

g i x* + si2 = 0
*
i i

u s = 0; i = 1,..., m

tem de verificar-se ainda que:


ui* 0; i = 1,..., m

Observaes:

si varivel artificial. A introduo deste tipo de variveis serve o propsito de


transformar os constrangimentos de desigualdade (gi(x) 0) em
constrangimentos de igualdade ( g i (x* ) + si2 = 0 ). O termo si2 sempre 0 logo

se g i (x* ) + si2 = 0 for satisfeita porque g i (x* ) 0 e assim garantimos a

satisfao do constrangimento de desigualdade. Quando si = 0 o correspondente


constrangimento gi satisfeito na igualdade, i.e., g i (x* ) = 0 , diz-se que o

constrangimento est activo. Quando si2 > 0 o correspondente constrangimento

( )

gi uma desigualdade estrita, i.e., g i x* < 0 , diz-se que o constrangimento est


inactivo em x*.

J. Cardoso/P. Coelho

112

Optimizao estrutural

MCEM

A condio necessria de que os multiplicadores de Lagrange dos


constrangimentos de desigualdade tm der ser no negativos, ui* 0 , garante
que os gradientes da funo custo e das funes dos constrangimentos apontam
em direces opostas. Sendo assim, f no pode ser mais reduzido na direco
negativa do seu gradiente sem violar o constrangimento (ver figura 5.12 em
baixo). Por outras palavras, no existem direces admissiveis em relao aos
constrangimentos gi(x) 0 no ponto x* ao longo das quais a funo custo
poderia ser reduzida.
f aponta no sentido de f crescente
h aponta no sentido de g
crescente, i.e., para a regio no
admissvel

x2
f=0.75
f=0.5

x2*
Domnio
admissvel

linhas de
isocusto

x1*

x1

Fig. 5.12 - Soluo grfica de minimizao de uma funo quadrtica sujeita a um


constrangimentom linear. Interpretao geomtrica das condies necessrias.

As condies de K-T so chamadas de condies necessrias de 1 ordem. Estas


podem ser usadas com dois objectivos: (1) confirmar a optimalidade de um dado
ponto; (2) determinar pontos candidatos a mnimos locais.

No ponto de estacionaridade, a direco negativa para a funo custo uma


combinao linear dos gradientes dos constrangimentos onde os multiplicadores
de Lagrange so os escalares dessa combinao linear.

p
m
f
h
g
= vi* i + ui* i ,
x j i =1 x j i =1 x j

j = 1,..., n

As m condies complementares ui* si = 0 resultam em vrios casos possveis


(2m casos), isto porque estas condies podem ser satisfeitas fazendo si = 0 ou ui
= 0.

si2 = g i x* permite comprovar a admissibilidade de um dado ponto candidato a

( )

ptimo em relao ao constrangimento g i (x ) 0 .

Se um constrangimento de desigualdade g i (x ) 0 est inactivo no ponto


candidato a ptimo, x* ento: g i (x ) < 0; si2 > 0; ui* = 0 .

J. Cardoso/P. Coelho

113

Optimizao estrutural

MCEM

Se um constrangimento de desigualdade g i (x ) 0 est activo no ponto


candidato a ptimo, x* ento: g i (x ) = 0; si2 = 0; ui* 0 .

Qualquer ponto que no satisfaa as condies K-T no pode ser um mnimo


local, a menos que seja um ponto irregular (neste caso as condies de K-T no
so aplicveis).

Os pontos que satisfazem as condies K-T podem estar constrangidos ou no.


Estes esto no constrangidos quando no existem igualdades ou todas as
desigualdades esto inactivas. Se o candidato a ptimo est no constrangido,
este pode ser um mnimo ou mximo local ou ponto de inflexo dependendo da
forma da matriz Hessiana da funo objectivo (aplicam-se as condies
necessrias e suficientes mostradas atrs para problemas no constrangidos).

Se existem constrangimentos de igualdade e nenhuma desigualdade est activa


(i.e. u = 0) ento os pontos satisfazendo as condies K-T so apenas pontos de
estacionaridade. Estes podem ser um mnimo ou mximo local ou ponto de
inflexo.

Se algumas desigualdades esto activas e os seus multiplicadores so positivos


ento os pontos satisfazendo as condies K-T no podem ser mximos locais
da funo objectivo (estes podem ser mximos locais se as desigualdades activas
tiverem multiplicadores nulos). Este pontos podem tambm no ser mnimos
locais, isso vai depender das condies de 2 ordem apresentadas frente).

As condies K-T podem ser usadas para verificar se um dado ponto ou no


um ponto candidato a mnimo. Este tem de ser admissvel, o gradiente da
Lagrangeana tem der ser nulo relativamente s variveis de projecto e os
multiplicadores de Lagrange das desigualdades devem ser no negativos.

Para um dado problema, as condies de K-T as variveis artificiais podem ser


usadas para descobrir pontos candidatos a mnimos locais. Vrios casos
provenientes das condies de complementaridade devem ser considerados e
resolvidos. Cada caso pode dar solues mltiplas.

5.11. Optimalidade global


Para estudar a optimalidade global podemos faz-lo de duas formas:
1) Teorema de Weirstrass: Se a funo custo f(x) contnua numa regio
admissvel limitada e fechada ento o teorema garante a existncia de um
mnimo global.
2) Estudar da convexidade do problema de optimizao. Os desenvolvimentos
apresentados de seguida abordam este estudo.

J. Cardoso/P. Coelho

114

Optimizao estrutural

MCEM

Conjuntos Convexos
Um conjunto convexo S uma coleco de pontos tendo a seguinte propriedade: se P1 e
P2 so quaisquer pontos de S, ento todo o segmento de recta P1P2 tambm pertence a S.
Em geral, para um espao de dimenso n, o segmento de recta entre quaiquer dois
pontos x(1) e x(2) pode ser escrito na forma paramtrica.
x = x(2) + (1 - )x(1) ; 0 1

x2
x1

xS

Fig. 5.13 - Conjunto convexo S.


Se o inteiro segmento de recta est dentro do conjunto S, ento este um conjunto
convexo.
A interseco de conjuntos convexos um conjunto convexo.
Funes Convexas
Um funo convexa f(x) definida num conjunto convexo, i.e., a varivel independente
x deve estar contida num conjunto convexo.
Uma funo convexa f(x) designada convexa num conjunto convexo S se a
representao dos seus pontos inferior a um segmento de recta ligando quaisquer dois
pontos na curva f(x).
A definio de uma funo convexa pode ser expressa pela desigualdade:

f ( x) f ( x2 ) + (1 ) f ( x1 ) sendo x = x2 + (1 ) x1 em que 0 1 ou ento,


f (x2 + (1 )x1 ) f ( x2 ) + (1 ) f ( x1 )

J. Cardoso/P. Coelho

115

Optimizao estrutural

MCEM

f(x)

f ( x2 ) + (1 ) f (x1 )
f(x2)
f(x1)

f (x2 + (1 )x1 )
x1

x2

x = x2 + (1 ) x1
Fig. 5.14 - Caracterizao de uma funo convexa.
Em geral, para uma funo de n variveis:

( )

( )

f x (2) + (1 )x (1) f x (2) + (1 ) f x (1)


com 0 1 , x (1) e x (2) quaisquer pontos do conjunto S.
Teorema para teste da convexidade de uma funo:

Uma funo de n variveis f(x1, x2, ..., xn) definida num conjunto convexo S convexa
se e s se a matriz Hessiana da funo positiva semidefinida ou positiva definida em
todos os pontos do conjunto S.
Se a matriz Hessiana positiva definida para todos os pontos no conjunto S ento f
chamda de funo estritamente convexa.
Este teorema aplicado a funes de apenas uma varivel resume-se condio da
segunda derivada da funo ser no negativa.

Problema de programao convexa


Teorema - Funes convexas e conjuntos convexos
Seja um conjunto S definido com constrangimentos do problema de optimizao geral:

S = {x gi (x ) 0, i = 1,..., m; h j (x ) = 0, j = 1,..., p}
Ento S convexo se gi so funes convexas e hi so funes lineares.
Note-se ainda que existem alguns problemas tendo constrangimentos de desigualdade
que so funes no convexas, mas a regio admissvel pode ser ainda convexa.

J. Cardoso/P. Coelho

116

Optimizao estrutural

MCEM

Um conjunto definido por qualquer constrangimento de igualdade no linear sempre


um conjunto no convexo. Para um constrangimento de igualdade o conjunto S o
conjunto dos pontos da superfcie gerada por hi(x)=0. Se tomarmos quaisquer dois
pontos da superfcie, a linha recta que os liga no pode pertencer superfcie a menos
que esta seja um plano (constragimento de igualdade linear). Um conjunto definido por
constrangimentos de igualdade e desigualdade lineares sempre linear.
Teorema - Mnimo global
Se f(x*) um mnimo local para uma funo convexa f(x) definida num conjunto
convexo S, ento este tambm um mnimo global.
Se S convexo e f(x) convexa (problema de programao convexa) e as condies de
K-T para mnimos locais so satisfeitas, ento as condies de K-T so necessrias e
suficientes para assegurar que o mnimo local tambm o mnimo global.
Se as funes do problema falham teste de convexidade ento no podemos usar o
teorema anterior para assegurar optimalidade global, i.e., pode haver ou no mnimo
global.

5.12. Condies de 2 ordem para optimizao constrangida


As solues das condies necessrias so candidatos a mnimos locais. As condies
suficientes determinam se um candidato de facto um mnimo local ou no.

Condies suficientes para problemas convexos


Teorema Se f(x) uma funo convexa definida numa regio admissvel convexa
(conjunto constrangido), ento as condies de 1 ordem de Kuhn-Tucker so
necessrias bem como suficientes para um mnimo global.

Condies de 2 ordem para problemas em geral


Pode-se usar informao de 2 ordem (curvatura) acerca das funes no ponto candidato
a ptimo x* para determinar se este de facto um mnimo local.
No caso de um problema no constrangido a forma quadrtica da expanso em srie de
Taylor para f(x) em torno de x* devia ser positiva para d0.
No caso de um problema constrangido consideram-se os constrangimentos activos em
x* para determinar variaes admissveis em d.
Consideramos os pontos x = x* + d numa vizinhana de x* que satisfazem as equaes
dos constrangimentos activos.
Os vectores d so ortogonais aos gradientes dos constrangimentos activos, g iTd = 0 ,
logo pertencem ao plano tangente ao constrangimento conforme se mostra na figura
em baixo.
J. Cardoso/P. Coelho

117

Optimizao estrutural

MCEM

gi (x)

d
x

gi (x) = 0
Fig. 5.15 - Direces espaciais d usadas nas condies suficientes para optimizao
constrangida.
Ento, x* um mnimo local se o termo de 2 ordem da expanso em srie de Taylor
positivo para todo o d contido no plano tangente ao constrangimento.
Teorema - Condies necessrias de 2ordem para problemas constrangidos em geral.
Seja x* satisfazendo as condies necessrias de 1 ordem de K-T. Definimos a matriz
Hessiana da funo Lagrangeana por:
p

i =1

i =1

2 L = 2 f + vi* 2 hi + ui* 2 g i
Digamos que existem direces admissveis (d 0) satisfazendo os seguintes sistemas
lineares no ponto x*:
hiTd = 0; i = 1,..., p
g iT d = 0 para todos as desigualdades activas, i.e., gi (x*) = 0
Para x* ser um mnimo local para o problema de projecto ptimo, ento:

( )

Q = d T 2 L x* d 0
Nota: nenhum ponto que no satisfaa as condies necessrias de 2ordem no pode
ser um ponto de mnimo local.
Teorema - Condies suficientes para problemas constrangidos em geral
Seja x* satisfazendo as condies necessrias de 1 ordem de K-T.
p

i =1

i =1

Seja 2 L = 2 f + vi* 2 hi + ui* 2 g i


Sejam direces d admissveis no nulas soluo do sistema de equaes:

J. Cardoso/P. Coelho

118

Optimizao estrutural

MCEM

hiT d = 0; i = 1,..., p
g iT d = 0; i = 1,..., m desigualdades activas com ui > 0
Seja tambm g iT d 0 para aqueles constrangimentos com ui = 0
Se Q = dT2L(x*)d > 0 ento x* um ponto de mnimo local isolado na vizinhana de
x*.
Note-se que se 2L(x*) positiva definida ento Q = dT2L(x*)d > 0 para qualquer d
0, ento pode usar-se o seguinte teorema:
Teorema - Condio suficiente forte
Seja x* satisfazendo as condies necessrias de 1 ordem de K-T para o problema de
projecto ptimo geral. Definindo a Hessiana para a Lagrangeana no ponto x*, 2L(x*),
ento se 2L(x*) positiva definida, x* um ponto de mnimo isolado.
Se 2L(x*) no positiva definida no se pode concluir que x* no um ponto de
mnimo isolado. Neste caso ter-se-ia que proceder ao teste de suficincia exigido pelo
penltimo teorema.

5.13. Anlise ps-ptimo


Esta seco trata da anlise ps-ptimo ou anlise de sensibilidade. Pretende-se estudar
a sensibilidade da funo objectivo a variaes nos valores limites dos
constrangimentos.
Uma vez que o problema de minimizao tenha sido resolvido com hi(x) = 0 e gj(x) 0,
pretendemos saber o que acontece funo objectivo quando variam os limites dos
constrangimentos (perturbao em torno do valor zero). Os multiplicadores de Lagrange
(v*,u*) no projecto ptimo providenciam informao para resolver a questo da
sensibilidade da funo objectivo variao da fronteira da regio admissvel, i.e.,
variao dos limites dos constrangimentos.

Efeitos de variar os limites dos constrangimentos


Considere-se o problema de optimizao modificado que consiste em minimizar f(x)
sujeita aos constrangimentos:

hi(x) = bi; i = 1,...,p


gj(x) ej; j = 1,...,m constrangimentos activos
bi , ej so pequenas variaes na vizinhana de zero.
O ponto ptimo passa a ser uma funo de b e e que pode ser escrito como x* = x*(b,e).

J. Cardoso/P. Coelho

119

Optimizao estrutural

MCEM

f f
,
so as derivadas que podem ser usadas para calcular variaes na funo
bi ei
objectivo quando bi e ej so alterados.
Teorema - Sensibilidade variao do constrangimento
Sejam f(x), hi(x) com i = 1,...,p e gj(x) com j = 1,...,m funes duas vezes continuamente
diferenciveis. Seja x* um ponto regular que com os multiplicadores uj* e vi* satisfazem
as condies necessrias de K-T e as condies suficientes do teorema para a existncia
de um mnimo local isolado para o problema de optimizao formulado na forma
standard. Se para cada gj(x*) = 0 verdade que uj* > 0, ento a soluo x*(b,e) do
problema de optimizao modificado anterior uma funo continuamente
diferencivel de b e e em alguma vizinhana de (b,e) = (0,0). Para alm disso,

f x* (0,0 )
= vi* ; i = 1,..., p
bi

f x* (0,0 )
= u *j ;
e j

j = 1,..., m

Este teorema fornece os valores das derivadas implcitas de 1ordem da funo


objectivo em relao aos parmetros dos segundos membros dos constrangimentos.
A expanso em srie de Taylor para a funo objectivo em termos de bi , ej pode ser
usada. A expanso em srie de Taylor de 1 ordem da funo objectivo em torno do
ponto (bi , ej) = (0,0) dada por:

f (bi , e j ) = f (0,0) +

f (0,0 )
f (0,0)
bi +
ej
e j
bi

f (bi , e j ) = f (0,0) vi*bi u *j e j


f = vi*bi u *j e j
Em geral, f = vi*bi u *j e j
i

Para ej > 0 temos uma relaxao da regio admissvel


Para ej < 0 temos uma contraco da regio admissvel
Podem comparar-se os valores dos multiplicadores de Lagrange associados aos vrios
constrangimentos activos. Os multiplicadores de Lagrange de maior valor querem dizer
que a sensibilidade da funo objectivo variao dos limites dos constrangimentos
associados elevada. Quanto maior for o valor do multiplicador de Lagrange, mais se
ganha na relaxao do constrangimento ou mais se perde na contraco do mesmo.
Podem ser apurados os constrangimentos mais crticos, i.e., aqueles que tm uma maior
influncia na variao da funo objectivo e ento analisar se estes constrangimentos
podem ser relaxados por forma a reduzir ainda mais o valor da funo objectivo.

J. Cardoso/P. Coelho

120

Optimizao estrutural

MCEM

Efeito de escalar a funo objectivo nos multiplicadores de Lagrange


Multiplicar a funo objectivo f(x) por uma constante no altera o ponto ptimo, mas
altera o valor ptimo para a funo objectivo.

f (x ) = kf (x ) com k > 0
*

u i = kui* ; i = 1,...,m
*

v j = kv*j ; j = 1,...,p
Efeito de escalar constrangimentos nos multiplicadores de Lagrange
A multiplicao de um escalar por um constrangimento no altera a fronteira definida
pelo constrangimento e, logo, no afecta a soluo ptima do problema. Apenas os
multiplicadores de Lagrange so afectados pelo escalar.

M j g (x j ) 0
Pi h( xi ) = 0

uj =

u *j
Mj

e vi =

vi*
Pi

5.14. Mtodos de optimizao baseados no gradiente


Os mtodos de optimizao baseados no gradiente podem ser classificados em dois
grandes grupos:

Mtodos indirectos (ou analticos) caracterizados pela aplicao de tcnicas de


minimizao analticas que, em geral, envolvem a resoluo de um sistema de
equaes cujas solues satisfazem as condies de optimalidade.
Mtodos directos (ou numricos) comeam com uma soluo que representa
uma estimativa inicial do ponto ptimo e, por meio de um processo iterativo, as
solues subsequentes vo sendo melhoradas at que as condies de
optimalidade sejam satisfeitas. Os mtodos numricos tambm so conhecidos
por Mtodos de Programao Matemtica.

As condies de optimalidade so as condies que uma funo f(x) deve satisfazer no


seu ponto de mnimo. O procedimento para derivar condies de optimalidade local
assume que se est num ponto de mnimo x* e examinada uma pequena vizinhana em
sua volta, d, para estudar as propriedades da funo como o declive e a curvatura
atravs das suas derivadas. Visto que se considera uma vizinhana pequena, a funo
f(x) pode ser aproximada por polinmios, numa vizinhana de qualquer ponto do
domnio, em termos do seu valor e das suas derivadas usando uma expanso em srie de
Taylor. Considerando uma funo de n variveis, f (x), a expanso em srie de Taylor
da funo :
f (x) = f (x*) + f (x*)T d + dT H(x*)d + R

J. Cardoso/P. Coelho

121

Optimizao estrutural

MCEM

ou em termos da variao do valor da funo objectivo:

f = f (x*)T d + dT H(x*)d + R
A notao x, x*, d = x x* representa vectores de dimenso n, f (x*) o vector
gradiente tambm de dimenso n, H(x*) a matriz Hessiana de dimenses n n e R
um termo residual.
Da expanso em srie de Taylor de f(x) decorrem as seguintes condies necessrias e
suficientes (condies de optimalidade) para a existncia de mnimo local num
problema de optimizao no constrangido:

Condio necessria de 1ordem: Se f(x) tem um mnimo local em x* ento,

f (x*) =

f
(x*) = 0; i = 1n
xi

Condio necessria de 2ordem: Se f(x) tem um mnimo local em x*, ento a


matriz

2 f

xi x j

Hessiana H(x*) =

positiva semidefinida ou positiva


( nn )

definida no ponto x*.

Condio suficiente de 2ordem: Se a matriz H(x*) positiva definida no ponto


de estacionaridade x*, ento x* um mnimo local da funo f(x).

No caso de um problema de optimizao com constrangimentos de igualdade e


desigualdade, as condies necessrias para a existncia de mnimo local so
habitualmente conhecidas como condies necessrias de Khun Tucker (KT). Estas
condies so usadas para verificar a possibilidade de optimalidade num dado ponto e
determinar os pontos candidatos a mnimos locais.
No caso de se aplicarem os mtodos analticos, as condies necessrias de
optimalidade so traduzidas em expresses analticas que formam um sistema de
equaes cuja soluo fornece os pontos candidatos a mnimos locais. No entanto,
existem basicamente trs razes que podem tornar desinteressante ou impossvel a
aplicao destes mtodos:
a)

b)
c)

O nmero de variveis de projecto e constrangimentos pode ser muito


elevado. A escrita das condies necessrias resulta num sistema de um
grande nmero de equaes que pode ser de resoluo morosa e difcil,
especialmente se existir no linearidade nas equaes.
As funes objectivo e constrangimentos do problema podem ser no
lineares. Mesmo para uma dimenso n pequena do problema, o sistema de
equaes no lineares resultante pode ser intratvel.
As funes objectivo e constrangimentos do problema podem ser funes
implcitas das variveis de projecto.

Tendo em considerao o conjunto das razes apresentadas, torna-se conveniente


desenvolver e aplicar mtodos numricos para muitos problemas de optimizao em
J. Cardoso/P. Coelho

122

Optimizao estrutural

MCEM

engenharia. Em problemas de programao linear, caracterizados pela linearidade das


funes objectivo e dos constrangimentos, o mtodo numrico designado por Simplex
muitas vezes utilizado em vez da resoluo analtica. Em problemas de programao
no linear, caracterizados por algumas ou todas as funes serem no lineares, os
mtodos numricos assumem particular relevncia face complexa resoluo por via
analtica.
Todos os mtodos de optimizao numricos conduzem a um processo iterativo que
efectua uma procura organizada de ponto para ponto no espao de projecto. Este
processo iterativo pode ser sumarizado pelo algoritmo geral da tabela que comum aos
vrios mtodos numricos de optimizao constrangida e no constrangida.
Tabela 5.3 - Algoritmo geral de optimizao por um mtodo directo.

1 Etapa: Estimar um ponto de partida razovel x(0) e inicializar o contador de


iteraes k = 0.
2 Etapa: Calcular uma direco de procura d(k) no espao de projecto. Em geral, este
clculo requer o valor da funo objectivo e o seu gradiente para problemas
no constrangidos. Adicionalmente, para problemas constrangidos, so
requeridos os valores dos constrangimentos e seus gradientes.
3 Etapa: Verificao de convergncia do algoritmo com base na satisfao das
condies de optimalidade ou na satisfao de algum outro critrio de
paragem. Se existe convergncia termina-se o processo iterativo seno, 4
Etapa.
4 Etapa: Clculo do passo positivo ptimo, k , na direco d(k).
5 Etapa: Clculo de um novo ponto no espao de projecto: x(k+1) = x(k) + k d(k)
Fazer k = k + 1 e voltar 2 Etapa.
Como se depreende do indicado na tabela, o problema de obter uma variao no espao
de projecto x = x(k+1) x(k) = kd(k) normalmente decomposto em duas partes:
determinao da direco de procura, d(k), e determinao do passo ptimo, k, isto ,
quanto se avana na direco de procura. Por exemplo, quando se pretende a
minimizao de f (x), a determinao de d(k) e k deve ser tal que seja sempre garantido
um decrscimo no valor da funo objectivo, ou seja, f(x(k+1)) < f(x(k)). Por esta razo, ao
vector d(k) tambm se chama direco de descida. A condio de descida expressa por:

f(x(k+1)) < f(x(k))


f(x(k) + kd(k)) < f(x(k))
Aproximando o primeiro membro desta desigualdade por uma expano linear
(1ordem) em srie de Taylor obtm-se:

f(x(k)) + k(c(k)d(k)) < f(x(k))

k(c(k)d(k)) < 0
Esta desigualdade expressa a condio de descida. Geometricamente, esta desigualdade
mostra que o ngulo entre os vectores c(k) e d(k) deve ser entre 90 e 270. Por outras
J. Cardoso/P. Coelho

123

Optimizao estrutural

MCEM

palavras, qualquer pequeno deslocamento em tal direco d deve diminuir o valor da


funo objectivo.
Dada uma direco de procura d(k), a determinao do passo ptimo k sempre um
problema de optimizao unidimensional. Em geral, a aplicao de mtodos analticos
resoluo deste problema complicada o que levou ao estabelecimento de mtodos
numricos chamados de algoritmos de optimizao ou de pesquisa em linha (line search
methods). Exemplos destes algoritmos so: Mtodo da Bisseco, Mtodo da Seco
Dourada, Mtodo de Newton, e Mtodo Polinomial.
Os vrios mtodos numricos para a resoluo de problemas de Programao No
Linear diferenciam-se pela forma como determinada a direco de procura d(k). Tendo
em conta o gradiente da funo a optimizar, f(x), alguns mtodos numricos aplicados a
problemas de Programao No Linear no constrangidos so os seguintes:

Mtodo do Declive mais Acentuado (Steepest Descent Method)


Mtodo do Gradiente Conjugado (Conjugate Gradient Method )
Mtodo de Newton (Newton Method)

Estes mtodos numricos para optimizao no constrangida podem ser tambm


utilizados para resolver problemas de optimizao constrangida. Contudo, para que tal
seja possvel, so aplicados mtodos de transformao para se passar de um problema
constrangido a no constrangido. A ideia bsica desta transformao construir uma
funo objectivo (x,r) a partir da funo objectivo original, f (x), tal que

(x,r) = f (x) + P(h(x),g(x),r)


A funo P uma funo de penalidade constituda pelas funes dos constrangimentos
de igualdade h(x), pelas funes dos constrangimentos de desigualdade g(x) e pelo
vector r de parmetros de penalidade que penalizam a funo f (x) sempre que os
constrangimentos sejam violados. As solues do problema no constrangido devero
convergir para a soluo do problema constrangido original. A forma da funo P
depende do mtodo de transformao utilizado. Um dos mtodos usados o Mtodo da
Lagrangeana Aumentada (Augmented Lagrangian Methods).
Para alm destes mtodos de transformao foram desenvolvidos mtodos numricos
para resolver directamente o problema de optimizao constrangido original.
Conceptualmente, os algoritmos para problemas de optimizao constrangida e no
constrangida so baseados na mesma filosofia de processo iterativo. Contudo, nos
problemas constrangidos, as funes dos constrangimentos so consideradas na
determinao da direco de procura e do passo ptimo. Alguns dos mtodos numricos
para problemas de Programao No Linear constrangidos so os seguintes:

Algoritmo de Programao Linear Sequencial (Sequential Linear Programming


Algorithm)
Mtodo de Programao Quadrtica Sequencial (Sequential Quadratic
Programming Method)
Mtodo das Direces Admissveis (Method of Feasible Directions)

J. Cardoso/P. Coelho

124

Optimizao estrutural

MCEM

Em geral, estes mtodos envolvem a construo de um modelo aproximado do


problema original, baseado na informao do declive e da curvatura locais da funo
original f (x) expandida em srie de Taylor.
Os mtodos de Programao Quadrtica Sequencial so considerados como algoritmos
capazes de lidar com uma grande variedade de problemas de Programao No Linear.
Estes mtodos consideram uma funo objectivo quadrtica (expanso em srie de
Taylor at ao termo de 2 ordem) e constrangimentos lineares (linearizao das funes
dos constrangimentos).

Convergncia de algoritmos
A ideia por detrs dos mtodos numricos de optimizao procurar um projecto
ptimo de um modo iterativo pela gerao de uma sequncia de anlises de projectos
que se espera que convirja para um design final ptimo. A propriedade de convergncia
para um mnimo local independentemente do ponto de partida chamada convergncia
global do mtodo numrico.

Taxa de convergncia
Na prtica, um mtodo numrico pode levar muitas iteraes para alcanar o ponto de
ptimo. Portanto, importante implementar mtodos que tenham uma taxa rpida de
convergncia. A taxa de convergncia de um algoritmo usualmente medida pelo
nmero de iteraes e de avaliaes da funo objectivo para obter uma soluo
aceitvel. Algoritmos rpidos usualmente fazem uso de informao de 2 ordem acerca
das funes do problema.

Avaliao numrica dos gradientes


O clculo analtico do gradiente de uma funo complexa pode tornar-se na prtica
impossvel de obter. Neste caso, possvel aproximar o gradiente ou Hessiana da
funo por diferenas finitas. Assume-se aqui que as funes so contnuas e
diferenciveis. A derivada parcial de uma funo de n variveis em relao varivel xi
definida por:

f
f ( x1 ,..., xi + xi ,..., xn ) f ( x1 ,..., xi ,..., xn )
= lim
0

i
xi
xi
onde xi uma pequena perturbao da varivel xi . Usando a definio de derivada
parcial pode-se avaliar numericamente o gradiente de uma funo em um dado ponto.
Vrias expresses podem ser desenvolvidas com base nessa definio conforme se
segue:
a)

Diferenas finitas progressivas (forward)

f
f ( x1 ,..., xi + xi ,..., xn ) f ( x1 ,..., xi ,..., xn )

xi
xi
b)

Diferenas finitas retroactivas (backward)

J. Cardoso/P. Coelho

125

Optimizao estrutural

MCEM

f
f ( x1 ,..., xi ,..., xn ) f ( x1 ,..., xi xi ,..., xn )

xi
xi
c)

Diferenas finitas centrais (central)


1
1

f x1 ,..., xi + xi ,..., xn f x1 ,..., xi xi ,..., xn


f
2
2


xi
xi

Em todas estas expresses xi substitudo por uma variao finita xi para obter um
valor aproximado da derivada. A funo avaliada em dois pontos vizinhos e a
diferena dos respectivos valores das funes dividida pela variao xi . Claro que se
a perturbao xi for demasiado grande ento a avaliao numrica do gradiente ser
muito grosseira. Usualmente, se a funo no demasiado no linear, uma perturbao
de 1% funciona muito bem (i.e., xi = 0.01 xi ).
A principal desvantagem do clculo dos gradientes por diferenas finitas que o
nmero de avaliaes da funo aumenta significativamente afectando assim a
eficincia de um algoritmo de optimizao. Isto devido ao facto de que para cada
incremento xi as funes tm de ser reavaliadas. Neste sentido as diferenas finitas
centradas ainda exigem mais uma avaliao da funo por cada xi quando comparadas
com as diferenas progressivas e retroactivas.

Inconvenientes dos mtodos baseados no gradiente


Nos problemas de optimizao discretos torna-se evidente que no so aplicveis os
algoritmos baseados no gradiente. Mesmo em problemas contnuos, a optimizao
atravs de uma estratgia analtica ou numrica baseada no gradiente s possvel se
forem satisfeitos os seguintes requisitos:

Espao de projecto convexo, fechado e limitado


Continuidade das funes objectivo e dos constrangimentos
Diferenciabilidade das funes objectivo e dos constrangimentos

O legado dos grandes matemticos dos sculos XVIII e XIX foi exactamente a viso de
um mundo de funes bem comportadas, isto , funes objectivo quadrticas,
constrangimentos lineares e diferenciabilidade sempre presentes.
Muitos problemas que tm surgido ao longo dos tempos evidenciam uma realidade bem
diferente. Existem problemas onde, apesar da garantia de continuidade, no possvel
obter analtica ou numericamente a derivada da funo objectivo porque esta no
diferencivel ou o s em parte do domnio. A satisfao dos requisitos anteriores
limita a aplicao dos mtodos baseados no gradiente a muitos problemas da vida real.
Os mtodos baseados no gradiente apresentados na seco anterior so mtodos exactos
que procuram satisfazer as condies de optimalidade local, isto , quando encontrado
J. Cardoso/P. Coelho

126

Optimizao estrutural

MCEM

um ptimo local o processo iterativo termina. Se a funo objectivo for unimodal (ver
figura 5.16a) o ptimo local ser tambm o ptimo global. No entanto, se a funo a
optimizar for multimodal (existem vrios ptimos locais ou globais, ver figura 5.16b) o
ptimo encontrado corresponde ao melhor numa determinada vizinhana da soluo
corrente. Visto que este ptimo local encontrado depende do ponto do espao de
projecto que serviu de partida ao processo iterativo, ento no existe garantia de que
seja o ptimo global.
A estratgia do gradiente na optimizao de funes multimodais revela-se pouco
eficiente. Com o objectivo de superar esta limitao, usual reiniciar o processo
iterativo a partir de um ponto diferente do domnio e, assim, poder ser encontrado
outro ptimo, melhor do que o anterior. Nos algoritmos de optimizao baseados no
gradiente a parte de maior consumo de tempo de computao est associada fase da
anlise de sensibilidade, ou seja, ao clculo das derivadas das funes. Em funes com
elevado grau de no linearidade os tempos de anlise de sensibilidade podem mesmo
tornar desinteressante a aplicao destes mtodos.

25

10

20

15

10
-5

5
-10
60

0
60
60

40

40

20

20
0

a)

40
20
0

10

20

30

40

50

b)

Fig. 5.16 - (a) Funo convexa (uninodal); (b) funo no convexa com mnimos locais
(multimodal).
Em seguida so apresentados trs mtodos baseados no gradiente que podem ser
aplicados resoluo de problemas de optimizao contnua no constrangida.

Mtodo do Declive Mais Acentuado


O mtodo do declive mais acentuado ou da descida mais rpida (steepest descent)
tambm conhecido como simplesmente mtodo do gradiente (introduzido por Cauchy
em 1847). Este mtodo o mais simples, antigo e provavelmente mais conhecido
aplicado a problemas de optimizao no constrangidos. A ideia do mtodo descobrir
a direco d na iterao actual segundo a qual a funo objectivo f(x) decresce mais
rapidamente, pelo menos localmente. Este mtodo um mtodo de 1 ordem visto que
apenas o gradiente da funo objectivo calculado e usado para avaliar a direco de
procura.
A direco de mximo decrscimo na funo objectivo o negativo do gradiente num
dado ponto x. Qualquer pequeno deslocamento na direco negativa do gradiente

J. Cardoso/P. Coelho

127

Optimizao estrutural

MCEM

resultar na mxima taxa de decrscimo local no valor da funo objectivo. O vector


negativo do gradiente representa ento a direco da descida mais acentuada da funo
objectivo.
Teorema - Direco da descida mais acentuada
Seja f(x) uma funo diferencivel em relao s variveis de projecto xi. A direco da
descida mais acentuada para f(x) em qualquer ponto :

d = -c

ou

d i ci =

f
; i = 1,..., n
xi

Este vector d ento a direco de variao no espao de projecto para ser usado em:

x(k+1) = x(k) + k d(k)


Resumo do algoritmo:
1 Passo - Estimar um ponto de partida no espao de projecto x(0) e colocar o contador
de iteraes a zero, k = 0. Seleccionar uma tolerncia para o parmetro de convergncia
> 0.
2 Passo - Calcular o gradiente de f(x) no ponto x(k), c(k) = f(x(k)). Calcular c( k ) . Se

c ( k ) < , ento o processo iterativo termina e x* = x(k) o ponto de mnimo. Do


contrrio, avana-se para o passo 3.
3 Passo - Calcula-se a direco de procura no ponto actual x(k), i.e., d(k) = - c(k).
4 Passo - Calcular o passo de procura k para minimizar f(x(k) + k d(k)). Um mtodo de
pesquisa em linha (unidimensional) utilizado para determinar k. Segundo a direco
d movemo-nos tanto quanto o necessrio para reduzir a funo objectivo.
5 Passo - Actualizar o projecto de acordo com x(k+1) = x(k) + k d(k). Fazer k = k + 1 e
voltar para o 2 passo anterior.
interessante notar que as sucessivas direces de declive mais acentuado so normais
umas em relao s outras, i.e.,
c(k).c(k+1) = 0
Para compreender este resultado note-se que a pesquisa em linha para determinar o
passo k envolve a minimizao da funo f(x(k) + k d(k)) que ento apenas
dependente de uma varivel, k. A condio necessria de ptimo para este problema
unidimensional df/d = 0. Por aplicao da regra da cadeia da diferenciao tem-se
que:

df x ( k +1)
df x ( k ) + k d ( k ) f x ( k +1) x ( k +1)
=
=
= c( k +1) .d ( k ) = 0

d
d
x
Esta ortogonalidade pode ser observada na figura 5.17 numa exemplificao de
funcionamento do mtodo para minimizao de uma funo de duas variveis. As linhas
de contorno fechadas representam linhas de isocusto da funo objectivo.
A condio de ortogonalidade referida pode ser usada como critrio de paragem no
mtodo de pesquisa em linha usado no clculo do passo de procura.
J. Cardoso/P. Coelho

128

Optimizao estrutural

MCEM

Fig. 5.17 - Funcionamento do


mtodo do declive mais acentuado.
As direces de procura ao longo
das
vrias
iteraes
so
perpendiculares entre si.

Este mtodo tem como principais desvantagens uma convergncia lenta para o mnimo
local do problema. A informao calculada em iteraes anteriores no aproveitada o
que contribui para a ineficincia do mtodo. Apenas informao de 1 ordem acerca da
funo objectivo utilizada no clculo da direco de pesquisa. Tipicamente verifica-se
grandes redues nos valores da funo objectivo durante as primeiras iteraes mas
depois nas iteraes posteriores a reduo d-se de forma muito lenta. A direco do
declive mais acentuado poder ser boa localmente (numa pequena vizinhana) mas no
globalmente.
Mtodo dos Gradientes Conjugados
O mtodo dos gradientes conjugados, atribudo a Fletcher e Reeves (1964), aparece
como uma simples e efectiva modificao do mtodo do declive mais acentuado. Na
seco anterior verificou-se que as direces de declive mais acentuado em duas
iteraes consecutivas do mtodo eram ortogonais entre si. Isto tende a tornar este
mtodo vagaroso em termos de convergncia.
As direces dos gradientes conjugados no so ortogonais entre si. Neste mtodo, estas
direces tendem a atalhar pela diagonal relativamente s direces ortogonais dadas
pelo mtodo do declive mais acentuado. Portanto, estas novas direces melhoram a
taxa de convergncia do mtodo de declive mais acentuado consideravelmente. Na
verdade, as direces dos gradientes conjugados d(i) so ortogonais relativamente a uma
matriz A simtrica e positiva definita, i.e., d(i)TA d(i) = 0 para todo i e j e i j.
Resumo do algoritmo:
1 Passo - Estimar um ponto de partida no espao de projecto x(0) e colocar o contador
de iteraes a zero, k = 0. Seleccionar uma tolerncia para o parmetro de convergncia
> 0. Calcular
d ( 0) = c ( 0) f x ( 0)

( )

Verificar se c

(k )

< . Se verdade, o algoritmo termina. Do contrrio, prosseguir para

o 4 passo (notar que o 1passo do mtodo dos gradientes conjugados e do declive mais
acentuado o mesmo).
2 Passo - Calcular o gradiente da funo objectivo como c ( k ) f x ( k ) .

( )

Se c

(k )

< ento o algoritmo termina. Se no o algoritmo continua para o passo

seguinte.
3 Passo - Calcular a nova direco conjugada como

J. Cardoso/P. Coelho

129

Optimizao estrutural

MCEM
2

c(k )
(k)
(k)
(k - 1)
d = -c + k d
com k = ( k 1)
c

(k)
(k)
4 Passo - Calcular k = que minimiza f(x + k d ).
5 Passo - Actualizar o projecto de acordo com x(k+1) = x(k) + k d(k).
Fazer k = k + 1 e seguir para o 2 passo.
A nica diferena entre este mtodo e o anterior reside apenas no clculo de d(k) = -c(k) +
k d(k - 1). Aqui a direco actual de declive mais acentuado somada com a direco
usada na iterao anterior afectada de um parmetro de escala . Portanto, a direco
conjugada no mais do que uma direco de declive mais acentuado degenerada. Esta
constitu uma modificao simples mas bastante eficiente em termos de convergncia
do algoritmo.
Mtodo de Newton
No mtodo do declive mais acentuado, apenas informao de 1 ordem acerca da funo
objectivo usada na representao da funo num ponto para determinar a direco de
procura. Se derivadas de 2 ordem da funo objectivo estiverem disponveis, poder-seia us-las para representar a funo objectivo de forma mais precisa e tambm obter
uma melhor direco de procura poderia ser encontrada. Isto poderia melhorar assim a
taxa de convergncia do algoritmo. Por exemplo, o mtodo de Newton que usa a matriz
Hessiana da funo objectivo tem uma taxa de convergncia quadrtica. Em outras
palavras, para qualquer funo quadrtica definida positiva, o mtodo converge apenas
em uma iterao e o passo de procura igual unidade.
A ideia bsica do mtodo de Newton usar a expanso em srie de Taylor at ao termo
de 2ordem da funo objectivo em torno do ponto de projecto actual. Isto resulta em
uma expresso quadrtica para a variao no projecto x. As condies necessrias para
minimizao desta funo quadrtica aproximada resultam ento em um clculo
explcito da direco de procura no espao de projecto. Um passo de procura apropriado
nesta direco ento completa uma alterao do algoritmo.
A referida expanso em srie de Taylor resulta ento em
f (x + x) = f (x) + cTx + 0.5x THx
onde x uma pequena variao no projecto e H matriz Hessiana de f no ponto x.
Esta equao uma funo quadrtica em termos de x. A teoria dos problemas de
programao convexa garante que se H positiva definida, ento existe um x que d
um mnimo global para a funo f (x + x). Acrescente-se, se H positiva definida,
ento o mnimo nico. Aplicando as condies de optimalidade (f/(x)=0) funo
f (x + x), vem que:
c + Hx = 0
Assumindo que H no singular, obtm-se:
x = -H-1c

J. Cardoso/P. Coelho

130

Optimizao estrutural

MCEM

usando este resultado a nova estimativa para o projecto dada por:


x(1) = x(0) + x
Visto que a expanso em srie de Taylor apenas uma aproximao da funo f no
ponto x(0), x(1) no ser provavelmente o ponto de mnimo exacto de f(x). Portanto, o
processo ter que ser repetido para obter estimativas melhoradas at que o mnimo seja
alcanado.
Cada iterao do mtodo de Newton requer o clculo da Hessiana da funo objectivo
que uma matriz simtrica. Portanto, isto requer o clculo de n(n+1)/2 segundas
derivadas de f(x) (n o nmero de variveis de projecto). Isto pode requerer
considervel esforo computacional.
Resumo do algoritmo:
1 Passo - Estimar um ponto de partida no espao de projecto x(0) e colocar o contador
de iteraes a zero, k = 0. Seleccionar uma tolerncia para o parmetro de convergncia
> 0.
2 Passo - Calcular c( k ) f x ( k ) . Se c (k ) < o algoritmo termina. Do contrrio,

( )

continuar.
2 f
3 Passo - Calcular a matriz Hessiana: H x (k ) =
; i = 1,..., n; j = 1,..., n
xi x j
4 Passo - Calcular a direco de procura: d(k) = -H-1c(k)
O clculo de d aqui atravs da inversa apenas simblico porque na realidade este
calculo como soluo do sistema de equaes lineares Hd(k) = c(k).
5 Passo - Actualizar o projecto de acordo com x(k+1) = x(k) + k d(k) onde k calculado
de modo a minimizar f(x(k) + k d(k)).

( )

As desvantagens deste mtodo para aplicaes em geral so:


a)
Custo computacional elevado associado ao clculo das segundas derivadas.
Em algumas aplicaes estas derivadas podem no ser possveis de calcular.
Um sistema de equaes lineares tambm tem que ser resolvido.
b)
A Hessiana pode ser singular em algum ponto do espao de projecto.
c)
Este mtodo no aproveita o histrico de optimizao o que poderia ajudar
na eficincia.
Deve aqui enfatizar-se que a menos que H seja positiva definida, a direco
d)
d determinada atravs de d(k) = -H-1c(k) no resulta numa diminuio do valor
da funo objectivo. Este mtodo no tem garantias de convergncia.

J. Cardoso/P. Coelho

131

Optimizao estrutural

MCEM

5.15. Mtodos de optimizao no baseados no gradiente


A partir da dcada de 80 houve um desenvolvimento substancial e entusistico de
mtodos aplicveis a problemas de optimizao estrutural discretos e mistos1. Para esta
classe de problemas no podem ser aplicados os mtodos de optimizao baseados no
gradiente uma vez que a continuidade no garantida. Mesmo que as variveis e
funes do problema sejam contnuas se as funes no so diferenciveis ento
tambm no podem ser aplicados os mtodos baseados no gradiente.
Procurar a soluo ptima em problemas de optimizao inteira ou no diferencivel
envolve a utilizao de mtodos alternativos aos mtodos baseados no gradiente. Em
parte, este objectivo tem sido atingido pelas Meta-Heursticas que foram desenvolvidas
e aplicadas com sucesso a problemas de optimizao combinatria no mbito da
Investigao Operacional. O termo meta-heursticas foi introduzido em 1986 (Glover,
1986) e serve para englobar um conjunto de tcnicas conhecidas na literatura anglosaxnica por: Tabu Search, Simulated Annealing, Genetic Algorithms, Evolutionary
Methods, Scatter Search, Neural Networks, GRASP2, Variable Neighborhood Search,
Ant Colonies.
Uma heurstica uma tcnica que procura boas solues (quase ptimas) a custo
computacional razovel sem ser capaz de garantir a admissibilidade e optimalidade das
mesmas. Em alguns casos, nem sequer pode determinar quo perto do ptimo se
encontra a soluo admissvel. Em contraste com um mtodo de optimizao exacto ou
determinstico (baseado no gradiente), uma heurstica um mtodo de pesquisa menos
ambiciosa, isto , vai calculando o valor de uma funo objectivo em pontos julgados
promissores que vo sendo identificados ao longo de um processo iterativo. Quando
este processo termina ter-se- encontrado uma soluo quase ptima. Eventualmente o
ptimo global pode ser encontrado, mas no existem garantias disso.
Atendendo a que as tcnicas heursticas chegam a solues sub-ptimas, se se pretende
minimizar uma funo, estes mtodos tambm so designados por mtodos de limiar
mximo porque definem um limite superior (upper bound) para o valor ptimo.
Formalmente, define-se meta-heurstica como um processo iterativo de gerao de
solues, que utiliza uma ou mais heursticas subordinadas, combinando diferentes
conceitos de pesquisa e explorao do espao de solues. Alguns aspectos que
distinguem as meta-heursticas das heursticas e que abonam a favor do uso das
primeiras so os seguintes:

Uma heurstica dependente da especificidade do problema que resolve. Uma


meta-heurstica tem um espectro de aplicao mais alargado.
Uma heurstica assenta em procedimentos iterativos que terminam quando no
encontrada uma soluo que melhore a anterior. Uma meta-heurstica incorpora
estratgias de modo a explorar o espao de solues para alm da optimalidade
local.

Problemas que combinam variveis de projecto de natureza contnua e discreta.

Greedy Randomized Adaptive Search Procedure.

J. Cardoso/P. Coelho

132

Optimizao estrutural

MCEM

As meta-heursticas baseiam-se em analogias com assuntos abordados em reas


to diversas como as cincias sociais, a fsica, a biologia, etc.

Vantagens dos Mtodos Heursticos


Os mtodos heursticos no dependem das propriedades analticas de continuidade ou
de diferenciabilidade da funo, o domnio pode ser disjunto ou no convexo e as
variveis de projecto podem ser contnuas ou discretas. Em geral, a aplicao de uma
meta-heurstica requer apenas a especificao do domnio das solues, uma funo
objectivo, uma estrutura de vizinhana e um mtodo eficiente de explorao dessa
vizinhana. Atendendo a estas caractersticas estes mtodos apresentam-se como sendo
capazes de lidar com um maior nmero de problemas da vida real.
As meta-heursticas embora no sejam classificadas como mtodos de optimizao
global, mas sim local, revestem-se de estratgias de pesquisa que permitem escapar de
um ptimo local e continuar o processo iterativo em busca do ptimo global embora
sem a garantia de o atingir. Basicamente, as estratgias para escapar da optimalidade
local baseiam-se na possibilidade de aceitar solues vizinhas que do origem a uma
deteriorao do valor da funo objectivo e pesquisar o domnio atravs de uma
populao de pontos em cada iterao.
O problema do tempo despendido na anlise de sensibilidade referido anteriormente
associado estratgia do gradiente no se coloca no mtodo heurstico. No entanto, um
grande nmero de avaliaes da funo objectivo nos pontos do domnio pode ser
requerido pelas meta-heursticas levando a que os tempos de computao sejam tambm
elevados.
Eficincia dos Mtodos na Optimizao
1
Mtodo robusto

ndice de
eficincia

Mtodo especializado

Mtodo enumerativo ou
aleatrio

0
combinatrio

unimodal

multimodal

Tipo de problema

Fig. 5.18 - Enquadramento de vrios mtodos de optimizao em termos de eficincia e


espectro de problemas resolvidos3.
3

Extrado de Goldberg (1989).

J. Cardoso/P. Coelho

133

Optimizao estrutural

MCEM

De acordo com Chen & Rajan (2000), um mtodo de optimizao eficiente se


encontra uma soluo aceitvel com um mnimo de esforo computacional. Seria
interessante ficar com uma percepo da eficincia dos vrios mtodos de optimizao
referidos atendendo ao espectro largo de problemas que podem existir para resolver.
Goldberg (1989) transmite esta ideia atravs de um grfico conforme se mostra na
figura 5.18 e cujo contedo se explica em seguida.
Na figura 5.18 o enquadramento dos mtodos de optimizao efectuado em funo da
aplicabilidade dos mesmos a uma variedade de problemas (combinatrios, unimodais ou
multimodais) e de um ndice hipottico de eficincia demonstrada na resoluo desses
problemas. Um problema unimodal caracterizado por uma funo objectivo que
apresenta apenas um "vale" ou um "pico" enquanto o multimodal envolve uma funo
com vrios "vales" ou "picos".
Quanto aos mtodos de optimizao, Goldberg identifica trs tipos principais de
mtodos convencionais de optimizao:

Mtodos aleatrios ou mtodos de pesquisa aleatria pura em que se baseiam


algumas heursticas (random walk4)
Mtodos enumerativos como seja o Branch & Bound.
Mtodos especializados como sejam os mtodos baseados no clculo do
gradiente.

De acordo com a figura 5.18, a eficincia destes mtodos convencionais no se revela


satisfatria ao longo do largo espectro de problemas.
A utilizao dos mtodos baseados no gradiente est muito condicionada pelas
propriedades do espao de projecto e das funes objectivo e dos constrangimentos.
Estes mtodos quando aplicveis, embora sejam muito eficientes na optimizao de
funes unimodais, so pouco eficientes no caso de funes multimodais no sendo
mesmo aplicveis em problemas discretos como os de optimizao combinatria. Por
esse facto, os mtodos baseados no gradiente so encarados como mtodos
especializados pois ganham interesse especial apenas num certo tipo de problemas do
mundo real.
Os algoritmos enumerativos so atraentes pela sua simplicidade e flexibilidade de
aplicao a diversos problemas, mas revelam falta de eficincia. Muitos problemas da
vida real so simplesmente de dimenso to elevada que um mtodo baseado na
enumerao das solues possveis pode levar a tempos de clculo proibitivos. Os
mtodos aleatrios acabam tambm por no fazer melhor em termos de eficincia do
que os mtodos enumerativos quando a dimenso do problema elevada.

Devem distinguir-se os mtodos aleatrios das tcnicas aleatorizadas usadas em algumas metaheursticas. Por exemplo, nos algoritmos genticos e recozimento simulado usada escolha aleatria
como uma ferramenta para guiar a explorao do espao de projecto. No entanto, a utilizao de
aleatoriedade na pesquisa do espao no implica necessariamente procura desgovernada pois, estes
mtodos servem-se ao mesmo tempo de conceitos de pesquisa orientada que os distinguem de um
algoritmo random walk.

J. Cardoso/P. Coelho

134

Optimizao estrutural

MCEM

Goldberg associa os mtodos de optimizao robustos s meta-heursticas. Embora no


apresentem um pico de performance como os mtodos especializados, as metaheursticas atingem um nvel relativamente elevado de eficincia num leque mais
diversificado de problemas (ver figura 5.18).
Em seguida, o algoritmo gentico escolhido como exemplo de uma meta-heurstica e
explica-se de forma mais detalhada o seu modo de funcionamento.
Algoritmos Genticos
Os algoritmos genticos (AG) foram introduzidos por John Holland da Universidade de
Michigan como resultado dos trabalhos de investigao na rea da gentica e sistemas
adaptativos.
Os AG lidam com uma populao de indivduos. Cada um representa de forma
codificada um ponto no espao das solues possveis de um problema de optimizao.
A codificao realizada em analogia com estruturas genticas: cromossomas e genes.
Cada indivduo ou ponto definido por um cromossoma cuja informao gentica
nica. O algoritmo evolui para a soluo ptima do problema de tal modo que os
indivduos da populao com melhor aptido ou, os pontos do domnio com melhores
valores da funo objectivo, tero uma probabilidade maior de serem seleccionados para
reproduo, i.e., a sua informao gentica cruzada de modo a serem produzidos
descendentes (geraes futuras). Os indivduos com pior aptido tm uma probabilidade
menor de serem seleccionados para reproduo, ou seja, no produzem descendentes,
logo a sua informao gentica tende a desaparecer nas geraes futuras.
Quando dois indivduos da populao so seleccionados para reproduo, o acto de
reproduo consiste em cruzar a informao gentica contida nos cromossomas de
ambos os indivduos. O algoritmo gentico implementa este procedimento atravs do
operador cruzamento. Atravs deste operador os filhos herdam parte dos cromossomas
do "pai" e parte dos cromossomas da "me". O sucesso do algoritmo gentico reside na
expectativa do resultado do cruzamento de cromossomas progenitores, com bons
valores de aptido, gerar dois novos cromossomas de melhor qualidade, ou seja, de
aptido ainda melhor do que os progenitores.
A propagao da informao gentica ao longo das geraes atravs do operador
cruzamento importante para conseguir, por um lado, explorar bem o espao das
solues e, por outro lado, reunir a melhor informao gentica num cromossoma que
representar a soluo ptima do problema de optimizao.
Para alm do operador cruzamento, aplica-se tambm o operador mutao durante a
fase de reproduo dos indivduos da populao. A mutao consiste em alterar
aleatoriamente genes dos cromossomas. Por outras palavras, o operador mutao
explora caractersticas genticas que s por aplicao do operador cruzamento no
seriam exploradas. Deste modo este operador pode proporcionar uma maior diversidade
entre os indivduos da populao de modo a explorar regies do espao de pesquisa
eventualmente ainda no exploradas.

J. Cardoso/P. Coelho

135

Optimizao estrutural

MCEM

Na seco seguinte descreve-se o algoritmo gentico na sua forma bsica conforme


apresentado inicialmente por Holland (1975) e que conhecido por algoritmo gentico
simples de acordo com Goldberg (1989). Esta estrutura bsica do algoritmo
considerada pelos investigadores como uma plataforma de trabalho sobre a qual, ao
longo dos tempos, tm sido introduzidas modificaes e melhoramentos.
Algoritmo gentico simples
A estrutura do algoritmo gentico simples pode ser apresentada atravs do fluxograma
da figura 5.19.

Incio

gen = 0

Inicializao

Avaliao de
desempenho

Critrio
verificado?

Sim

No
Seleco

Cruzamento
gen = gen + 1
Mutao

Substituio

Fim

Fig. 5.19 - Algoritmo gentico simples


Em primeiro lugar gerada aleatoriamente uma populao inicial de indivduos que
representam de forma codificada pontos do domnio da funo objectivo (inicializao).
Em seguida avaliada a aptido ou desempenho de cada indivduo e aplicam-se
sucessivamente os operadores: seleco, cruzamento e mutao. O resultado da
aplicao destes operadores uma populao caracterizada por uma nova gerao de
indivduos que substituiro os indivduos pertencentes gerao anterior (substituio).

J. Cardoso/P. Coelho

136

Optimizao estrutural

MCEM

O desempenho dos novos indivduos avaliado e testado um critrio de paragem do


algoritmo. Pretende-se com a repetio deste processo ao longo de vrias iteraes ou
geraes que uma populao inicial de pontos ou solues convirja para a soluo
ptima do problema.
A tabela 4 estabelece a correspondncia entre a terminologia utilizada em algoritmos
clssicos de optimizao e em AG.
Tabela 5.4 - Comparao de terminologias
Algoritmos genticos
Indivduo
Populao
Desempenho ou aptido
Gerao
Aplicao de operadores
genticos

Optimizao clssica
Soluo no espao de projecto
Conjunto de solues
Funo objectivo
Iterao
Gerao de novas solues

Algumas caractersticas que distinguem os AG dos mtodos clssicos so as seguintes:

Em vez de lidarem directamente com os valores das variveis de projecto,


utilizam uma codificao dessas variveis.
Utilizam operadores probabilsticos (seleco, cruzamento e mutao) em vez de
operadores determinsticos (por exemplo: o gradiente).
Em vez da pesquisa ser efectuada num ponto do domnio em cada iterao, esta
feita com base numa populao de pontos em cada iterao.
No so utilizadas derivadas ou outras informaes auxiliares a respeito da
funo objectivo, apenas requerida a avaliao da funo nos pontos do espao
de pesquisa.

Codificao das variveis de projecto


Quando se pretende aplicar um algoritmo gentico a um problema de optimizao
comea-se pela codificao das variveis de projecto. O AG bsico utiliza uma
codificao binria das variveis caracterizada por um cromossoma contendo vrios
genes, cada qual podendo tomar o valor 0 ou 1. Em seguida, explica-se detalhadamente
como funciona este tipo de codificao.
O vector das variveis de projecto x = (x1,...,xn) codificado num cromossoma a
contendo k genes, representado pelo vector a = (a1,...,ak) B k, sendo B = {0,1}.
Portanto, cada gene pode ser visto como um bit (0 ou 1). Quando se codificam n
variveis de projecto num cromossoma, existem genes especficos atribudos a cada
uma das variveis. Ao conjunto de genes do cromossoma que codificam a varivel xi
designa-se por segmento i. Para simplificar a exposio deste conceito, pode considerarse o cromossoma a dividido em n segmentos de igual comprimento k tal que k = n k,
e o segmento i representado pelos genes ai1,...,aik B k codifica a varivel de projecto
xi.

J. Cardoso/P. Coelho

137

Optimizao estrutural

MCEM

A descodificao de cada segmento do cromossoma no respectivo valor da varivel de


projecto xi pode ser efectuada em duas fases:

Primeiro, comea-se por transformar os genes contidos no segmento i num


nmero inteiro positivo zi por aplicao de i . Por exemplo, a descodificao
do cromossoma 11001 num inteiro 120 + 021 + 022 + 123 + 124 = 25. O
maior inteiro que um cromossoma com k genes pode codificar 2k 1. O
nmero de inteiros de 2k.

k '1

z i = ai( k ' j ) 2 j
j =0

z i = i (a i1 ,..., a ik ' ) : B Z 0+

Depois da aplicao i, transforma-se o inteiro zi no valor da varivel de


projecto xi atravs de i . Nesta expresso os valores ui e vi so os extremos do
intervalo de variao da varivel xi. Na obteno da transformao linear i fezse corresponder, ao valor ui o segmento i, com todos os bits iguais a zero e, ao
valor vi o segmento i, com todos os bits iguais a 1.
v u
xi = u i + ik ' i z i ;
2 1

xi = i(zi) : Z 0+ [ui , vi]

A figura 5.20 pretende ilustrar a codificao binria dos pontos pertencentes ao domnio
de uma funo objectivo de duas variveis, f (x1,x2). Um cromossoma composto de 14
genes atribui 7 genes para a codificao da varivel x1 e outros tantos genes para a
codificao da varivel x2. Um conjunto de n pontos do domnio codificados em
cromossomas forma uma populao de n indivduos. A estimativa do nmero b de
genes ou bits a atribuir varivel de projecto xi, pode ser feita com base no clculo de
uma determinada resoluo Ac pretendida para o intervalo daquela varivel.
(v u i )
2b = i
+ 1
Ac

f(x1,x2)

u2

(x1,x2)1 10100101110101

u1

v1
x1

v2

x2

Populao de n indivduos
(x1,x2)1 10100101110101
(x1,x2)2 00101000111001
(x1,x2)3 01101010100110

(x1,x2)n 11010100100010

Fig. 5.20 - Codificao binria de uma funo de duas variveis


J. Cardoso/P. Coelho

138

Optimizao estrutural

MCEM

Inicializao e avaliao do desempenho


A populao inicial de n indivduos ou cromossomas gerada de forma aleatria. No
caso de se utilizar codificao binria das variveis, os cromossomas so gerados por
colocao aleatria de bits (0 ou 1) ao longo dos seus genes. Pretende-se a diversidade
entre os cromossomas da populao inicial de forma a permitir uma explorao inicial
alargada do espao de projecto. Para o efeito, desejvel utilizar um gerador de
nmeros aleatrios de distribuio uniforme.
Conforme apresentado por Holland, a aptido de um indivduo ou cromossoma pode
no ser necessariamente igual ao valor da funo objectivo. O valor da aptido de um
indivduo pode ser uma funo dos valores da funo objectivo. No entanto, na maior
parte dos problemas de optimizao considera-se que a avaliao da aptido dos
indivduos da populao corresponde ao clculo da funo objectivo. Ento, se o
objectivo de um problema for a minimizao entende-se que a soluo ou indivduo
com melhor aptido aquele a que corresponder um menor valor da funo objectivo.
Seleco
O operador seleco funciona de tal modo que os cromossomas com melhores valores
de aptido tm uma maior probabilidade de serem seleccionados para reproduo.
No algoritmo gentico bsico a seleco de cromossomas feita aos pares de modo que
cada par d origem a dois novos cromossomas atravs dos operadores de cruzamento e
mutao. Isto implica que a dimenso n da populao seja um nmero par. A
probabilidade pi do i-simo indivduo da populao vir a ser seleccionado para
reproduo proporcional ao seu valor de aptido, fi, conforme dado pela expresso:
pi =

fi
N

fj
j =1

Nesta expresso, os valores de fi tero que ser todos positivos. Para implementar esta
seleco proporcional aptido utiliza-se o mtodo da roleta. Assim, os indivduos de
melhor aptido recebem uma poro maior da roleta, enquanto que os de pior aptido
ocuparo uma poro relativamente menor. Depois realizam-se n lanamentos da roleta,
recolhendo-se a cada dois lanamentos um par de indivduos para reproduo.
O nmero esperado de vezes que o i-simo indivduo seleccionado atravs da roleta,
pode ser calculado pela multiplicao n pi ou ento pelo quociente f i

em que f

representa a mdia dos valores de aptido da populao. Deste modo, estima-se que os
indivduos de melhor aptido (muito acima da mdia) sejam seleccionados vrias vezes
para reproduo, enquanto no caso de indivduos com pior aptido (inferior mdia da
populao) sero comparativamente muito menos vezes seleccionados.
Com este tipo de seleco, proporcional aptido, o AG bsico um algoritmo de
maximizao no constrangida. Para poder aplicar este mesmo algoritmo a problemas
de minimizao utiliza-se uma funo objectivo modificada da seguinte forma:

J. Cardoso/P. Coelho

139

Optimizao estrutural

MCEM

f = Cmx. - f
em que Cmx. uma constante positiva que dever ser suficientemente elevada para
excluir valores negativos de f conforme requerido pelo processo de seleco
proporcional aptido.
Cruzamento
O operador seleco selecciona cromossomas aos pares para a reproduo. A
reproduo caracterizada pelos operadores cruzamento e mutao. O operador
cruzamento tem por objectivo cruzar a informao gentica de ambos os cromossomas
progenitores. O algoritmo gentico bsico funciona com a forma mais simples do
operador cruzamento designada de cruzamento simples ou cruzamento em um
ponto. Neste caso, um ponto de cruzamento escolhido aleatoriamente e, a partir dele,
os genes dos progenitores so trocados conforme ilustrado na figura 5.21.

Dois
progenitores

10100101011101

10100101101101
cruzamento

10110111101101

Dois
descendentes

10110111011101

Fig. 5.21 Operador cruzamento simples ou de ponto nico.


Em geral, nem todos os pares de cromossomas seleccionados como progenitores so
submetidos a cruzamento. O operador de cruzamento aplica-se com uma determinada
probabilidade de ocorrncia, pc. Isto significa que cromossomas seleccionados da
gerao actual podem ser directamente copiados para a gerao seguinte, a menos que
ocorra mutao de algum gene como se explica na seco seguinte.
O teste de ocorrncia ou no ocorrncia de cruzamento implementado recorrendo a
um processo de deciso semelhante ao de um lanamento de moeda. Para tal, deve-se
definir uma probabilidade de cruzamento pc igual para cada par de progenitores
seleccionado. O lanamento de moeda corresponder ento a gerar, para cada par, um
nmero aleatrio entre 0 e 1. Logo, por comparao do nmero com a probabilidade
pc, testa-se a permisso ou no de cruzamento: se < pc ento o cruzamento
permitido, caso contrrio, os progenitores permanecem inalterados.
Mutao
O operador mutao necessrio para introduzir e manter alguma diversidade entre os
indivduos da populao. A sua operao consiste em alterar aleatoriamente com uma
determinada probabilidade, pm, um ou mais genes (0 passa a 1 e vice-versa) de um
cromossoma escolhido entre a populao.
O operador cruzamento gera novos indivduos, mas por si s no permite uma
explorao alargada do domnio, uma vez que lida apenas com base na informao
gentica contida na gerao actual. Ligeiras mutaes genticas nos indivduos
destinados a formar uma nova gerao surgem como um complemento ao efeito do
operador cruzamento, contribuindo para explorar melhor o espao das solues.

J. Cardoso/P. Coelho

140

Optimizao estrutural

MCEM

Idealmente, pretende-se com a mutao que a probabilidade de se chegar a qualquer


ponto do espao de pesquisa nunca seja zero e, deste modo, procura escapar-se aos
ptimos locais.
No entanto, a gerao de diversidade entre os indivduos de uma populao atravs de
mutao tem que ser imperativamente controlada. Uma taxa de mutao muito elevada
resulta numa grande diversidade de indivduos em cada nova gerao, o que impede a
convergncia do algoritmo para zonas promissoras do domnio e, finalmente para um
valor ptimo. Sendo assim, o operador mutao aplicado mediante uma determinada
probabilidade pm que, em geral, pequena ou muito baixa comparativamente
probabilidade de cruzamento.
Para resumir o modo de funcionamento dos 3 operadores genticos no AG simples,
apresenta-se a figura 5.22 que mostra a obteno da gerao k + 1 a partir da gerao k.

Cruzamento

Seleco

Mutao

011010110010

011010110010

011001010111

011000010111

000101010111

000101010111

000110110010

000110110110

101010010101

000101010111

000101010110

100101010110

001011100110

001011100110

001011100111

011011100111

...

...

...

...

...

...

...

...

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

Cromossomas
filhos gerados

Gerao
seguinte , k + 1

Gerao
actual, k

Pares de cromossomas
seleccionados para
reproduo

Fig. 5.22 - Aplicao dos 3 operadores genticos no AG simples.


Critrio de Paragem
No AG simples o critrio de paragem corresponde a alcanar um nmero mximo de
geraes k que definido inicialmente. Alis, este o critrio mais simples de aplicar e
tambm o mais utilizado na generalidade dos problemas.
Escolha de Parmetros
Basicamente, os parmetros que necessitam de ser escolhidos para o funcionamento dos
AG so: dimenso da populao n, nmero de genes dos cromossomas b, probabilidade
de cruzamento pc, probabilidade de mutao pm e nmero mximo de geraes k.
J. Cardoso/P. Coelho

141

Optimizao estrutural

MCEM

A escolha dos parmetros do AG para a resoluo de um determinado problema


normalmente realizada por tentativas. No existe um modo fcil de estipular valores que
se apliquem a qualquer problema. Em 1975, De Jong realizou pela primeira vez um
estudo sistemtico de aplicao dos AG optimizao de funes. Ele testou vrias
combinaes de parmetros do AG num conjunto de 5 funes e concluiu que os
valores de parmetros que produziam melhores resultados eram os seguintes (De Jong,
1975):

Dimenso da populao entre 50 a 100 indivduos.


Probabilidade de cruzamento entre 0.6 e 0.9.
Probabilidade de mutao entre 0.001 e 0.01.

Depois de De Jong ter publicado estes resultados, muitos investigadores tomaram-nos


como valores padro para a resoluo de todo o tipo de problemas. No entanto, esta
extrapolao no se revelaria correcta dada a to grande diversidade e complexidade de
problemas que surgiriam para resolver. Em seguida, procura-se dar uma noo da
influncia de cada um dos parmetros no desempenho do AG.
Dimenso da populao e nmero de geraes
A dimenso da populao o nmero de cromossomas existentes em cada iterao do
algoritmo. Em geral, considera-se que esta dimenso se mantm constante durante a
execuo do algoritmo.
Uma dimenso elevada da populao permitir uma maior diversidade de solues o
que vantajoso no que respeita a prevenir a convergncia do algoritmo para solues
ptimas locais, em vez de globais. Contudo, grandes populaes de indivduos
representaro um maior esforo computacional pois so necessrias muitas avaliaes
da funo objectivo.
Uma dimenso reduzida da populao representar um esforo computacional menor,
mas o desempenho do AG ficar prejudicado, pois ter-se- uma pequena cobertura do
espao das solues.
Portanto, a escolha da dimenso da populao no uma tarefa fcil para cada
problema. Pelas razes apontadas anteriormente dever ser estabelecido uma dimenso
equilibrada, nem muito baixa, nem muito elevada. Na prtica, muitos investigadores
procedem a um conjunto de testes empricos. Tipicamente, comea-se com uma
dimenso pequena e, depois, testam-se dimenses maiores. No final, quando esto
testadas 5 a 10 populaes de dimenses diferentes, possvel ter alguma sensibilidade
sobre a influncia deste parmetro no desempenho do AG e, assim, pode fazer-se uma
escolha mais criteriosa para o valor deste parmetro.
Quanto ao nmero de geraes do AG, este geralmente fixo partida e dever ser
suficientemente elevado para permitir a convergncia para o valor ou valores ptimos.
Uma ideia interessante apresentada por alguns investigadores relaciona a dimenso da
populao e o nmero de geraes necessrias com o nmero de genes do cromossoma
(Chen & Rajan, 2000; Chen & Rajan, 1998). Estes trabalhos baseados na
experimentao permitiram concluir que bons resultados no desempenho do AG eram
conseguidos, quando a dimenso da populao e o nmero de geraes estava
J. Cardoso/P. Coelho

142

Optimizao estrutural

MCEM

compreendido entre um valor idntico ao nmero de genes do cromossoma e duas vezes


esse valor.
Probabilidade de cruzamento
Este parmetro indica a probabilidade a que ocorrer o cruzamento entre indivduos
seleccionados da populao. Quanto maior for esta probabilidade, maior a diversidade
de cromossomas introduzidos na gerao seguinte. Este efeito pode ser positivo at
certo ponto pois, pode tambm suceder que as melhores solues encontradas sejam
destrudas quando os respectivos cromossomas so afectados pelo operador cruzamento.
No extremo oposto, se a probabilidade de cruzamento baixa, o algoritmo ter uma
convergncia lenta. Em geral, os valores para este parmetro variam entre 0.5 e 0.95.
Probabilidade de mutao
Este parmetro indica a probabilidade ou taxa a que ocorrer a mutao de
cromossomas ao longo da evoluo. A mutao utilizada para introduzir novas
caractersticas genticas entre os indivduos da populao ao longo das geraes. Deste
modo, previne-se que as populaes com o decorrer das geraes fiquem saturadas de
cromossomas similares, o que possibilita uma maior cobertura do espao das solues.
Como os demais parmetros, a probabilidade de mutao ideal depender do problema
em causa todavia, os valores utilizados costumam variar entre 0.001 e 0.1. De facto, so
valores muitos baixos, pois valores muito elevados podiam tornar o algoritmo gentico
num algoritmo de pesquisa puramente aleatria (random walk).
Modificaes relevantes do algoritmo gentico simples
Destacam-se nas seces seguintes algumas das mais importantes modificaes do
algoritmo gentico simples que so actualmente usadas.
Codificao das variveis
Quando se utilizam AG a codificao das variveis deve ser apropriada s
caractersticas do problema a resolver. Daqui resulta que os valores que figuram nos
genes do cromossoma podem no ser necessariamente bits (0s e 1s), mas nmeros
reais, inteiros ou at mesmo caracteres. No entanto, a maioria das aplicaes utiliza a
codificao por bits na sua verso tradicional (codificao binria conforme apresentado
anteriormente) ou numa verso designada por cdigo gray.
O cdigo gray uma codificao caracterizada pela propriedade de adjacncia entre
dois valores inteiros consecutivos, ou seja, dois inteiros consecutivos ou adjacentes tm
codificaes binrias que diferem apenas em um 1 bit, como se pode ver na tabela 5.
Conforme considerado anteriormente, o vector a = (a1,...,ak) B k, sendo B = {0,1},
representa a codificao binria convencional do vector das variveis de projecto x. A
transformao da codificao binria dada pelo vector a para o cdigo gray dado pelo
vector b = (b1,...,bk) efectuada utilizando a equao seguinte:

J. Cardoso/P. Coelho

143

Optimizao estrutural

MCEM

a k
bk =
a k 1 a k

, se k = 1
, se k > 1

O operador actuando sobre dois ou mais termos produz como resultado o resto da
diviso da soma desses termos por dois, isto , 0 0 = 0, 0 1 = 1, 1 0 = 1 e 1 1 =
0. A transformao inversa dada por:
k

ak = b j
j =1

Tabela 5.5 - Comparao de codificaes binria e gray.


Nmero inteiro
codificado
0
1
2
3
4
5
6
7

Codificao binria
convencional
000
001
010
011
100
101
110
111

Cdigo gray
000
001
011
010
110
111
101
100

A vantagem do cdigo gray relativamente codificao binria convencional reside na


referida propriedade de adjacncia. Quando um bit no cromossoma alterado atravs do
operador mutao (0 passa a 1 ou vice-versa) isso resulta numa perturbao mais suave
do valor da varivel de projecto, o que pode melhorar a convergncia do algoritmo.
Em problemas de optimizao combinatria, onde as solues so dadas por
permutaes ou combinaes de valores inteiros, utiliza-se codificao inteira. Neste
caso cada cromossoma representa uma sequncia de valores inteiros, como por exemplo
1|5|3|2|6|4|7|8 .
Em certos problemas a codificao real, ou seja, usam-se directamente nmeros reais
nos genes dos cromossomas, como por exemplo: 1.54|0.29|7.43|2.15 Ainda em outros
problemas os cromossomas podero ser uma sequncia de caracteres como, por
exemplo: A|B|D|J|E|I|J .
As codificaes que no utilizam cromossomas binrios requerem a modificao dos
operadores genticos anteriormente apresentados.
Operadores Genticos
Existem dois conceitos chave relacionados com a pesquisa do AG para encontrar as
solues ptimas de um problema: diversidade populacional e presso selectiva. A
diversidade populacional uma medida de quo diferentes so as solues no domnio
de pesquisa. Uma diversidade populacional elevada permitir explorar melhor o espao
das solues possveis, o que desejvel quando se trata de escapar a ptimos locais.

J. Cardoso/P. Coelho

144

Optimizao estrutural

MCEM

A presso selectiva est associada probabilidade do melhor indivduo ser seleccionado


quando comparada com as probabilidades de seleco dos restantes indivduos da
populao. Por um lado, uma presso selectiva elevada significa que a pesquisa se
concentra nos indivduos mais aptos da populao. Neste caso, a populao tende a ficar
rapidamente homognea, isto , indivduos com valor semelhante de aptido. Por outro
lado, uma presso selectiva baixa permite a explorao de uma maior diversidade de
solues pois um maior nmero de indivduos da populao tero a possibilidade de
serem seleccionados para reproduo, embora isso diminua a velocidade de
convergncia.
Resumindo, o aumento da presso selectiva diminui a diversidade na populao e viceversa. Uma presso selectiva elevada induz a uma convergncia prematura do AG, uma
presso selectiva baixa torna o AG ineficiente. Por estas razes, importante um bom
equilbrio entre estes dois factores o que conseguido actuando nos operadores
genticos do algoritmo. Algumas modificaes e melhoramentos a este nvel so
apresentados em seguida.
Seleco
O mtodo de seleco proporcional ao valor da aptido (caso da roleta) apresenta
essencialmente duas desvantagens. Por um lado, os cromossomas de extraordinria
aptido so favorecidos com um grande nmero de descendentes nas geraes futuras, o
que reduz a diversidade e conduz a uma convergncia prematura do algoritmo para um
ptimo local. Por outro lado, depois de vrias geraes, apesar de poder ainda existir
alguma diversidade entre os indivduos da populao, poder acontecer que a mdia dos
valores de aptido da populao esteja muito prxima dos melhores valores de aptido.
Deste modo, verifica-se uma estagnao na evoluo do algoritmo pois a probabilidade
de seleco dos melhores indivduos torna-se indistinguvel da probabilidade de
seleco dos restantes indivduos.
Pelas razes apontadas, usual combinar-se a seleco proporcional aptido com
tcnicas de escalonamento (scaling) dos valores de aptido (Kallassy & Marcelin,
1997). Se fi representar o valor de aptido actual de cada indivduo, o valor fi
representar o valor de aptido modificado obtido por escalonamento. Este
escalonamento pode ser estabelecido atravs de uma relao linear entre os valores fi e
fi :
fi = a fi + b
Esta relao define uma recta. Normalmente procura-se que os coeficientes a e b desta
recta sejam tais que a mdia dos valores de aptido actuais, fi, seja igual mdia dos
valores de aptido escalonados, fi. A variao do declive a desta recta influenciar o
nvel de competio entre os indivduos da populao aquando da seleco.
Essencialmente, pretendem-se atingir dois efeitos:
a)
b)

Nas primeiras geraes procura-se atravs do escalonamento atenuar as


diferenas de aptido entre os diferentes indivduos da populao (declive da
recta baixo).
Em geraes avanadas do algoritmo, procura-se atravs do escalonamento
introduzir diferenas entre os valores de aptido dos indivduos (aumento do

J. Cardoso/P. Coelho

145

Optimizao estrutural

MCEM

declive da recta), de modo a contrariar-se a formao de uma populao


homognea que conduziria estagnao da pesquisa.
Na prtica o escalonamento dos valores de f pode trazer algumas complicaes. A
regulao do declive a da recta para produzir o efeito desejado no fcil, tambm
porque os valores de aptido escalonados fi no podero ser negativos (esta restrio
advm da utilizao do mtodo da roleta).
Para contornar as dificuldades associadas ao escalonamento, surgiram tcnicas baseadas
na ordenao (ranking). Neste caso, os indivduos da populao so ordenados pelas
suas aptides, do pior para o melhor. Depois o nmero da posio que cada indivduo
ocupa na lista ordenada (1, 2, 3, 4, ...,) passa a ser o seu valor de aptido.
Comparativamente seleco proporcional ao valor da aptido, esta tcnica apresenta
duas vantagens:
a)

Trava a convergncia prematura do algoritmo, pois no especialmente


favorecida a seleco dos melhores indivduos.
Em geraes avanadas do algoritmo, evita-se a estagnao da pesquisa
caracterstica de populaes homogneas pois, a aptido de cada indivduo
determinada pelo valor da posio numa lista ordenada.

b)

A forma de avaliar o mrito de cada indivduo uma das questes importantes para o
funcionamento dos mtodos de seleco usados. Anteriormente apresentou-se a
seleco por roleta mas muitos investigadores estudaram entretanto outros mtodos
alternativos.
Destes mtodos destaca-se o mtodo de seleco por torneio (Yang & Soh, 1997,
Crossley, Cook & Fanjoy, 1999). Neste caso, selecciona-se entre a populao um
nmero i de indivduos (designado por dimenso do torneio) e realiza-se um torneio
entre eles. Os valores de aptido de cada um so comparados entre si e, se se pretender a
minimizao, o que tiver menor valor o vencedor sendo o seleccionado para
reproduo. evidente que valores de i elevados aumentam a presso selectiva. Por
esta razo, o valor de i em muitas aplicaes tipicamente i = 2. Algumas vantagens
que tornam a aplicao deste mtodo de seleco atraente so as seguintes:

No conduz a convergncia prematura (desde que a dimenso do torneio seja


pequena).
Combate a estagnao do algoritmo.
Simples de implementar e no requer esforo computacional adicional como o
caso da tcnica baseada na ordenao ou escalonamento.
No interessa o valor absoluto da aptido dos indivduos, mas apenas interessa o
valor relativo (se maior ou menor). Isto significa que este mtodo de seleco
pode lidar com valores negativos da funo objectivo.

Elitismo
Normalmente, o elitismo surge associado ao operador seleco com o objectivo de se
aumentar a velocidade de convergncia do algoritmo. Este operador simplesmente copia
os melhores indivduos da populao actual para a prxima gerao, garantindo que
J. Cardoso/P. Coelho

146

Optimizao estrutural

MCEM

estes cromossomas no so destrudos por cruzamento ou mutao. Na maioria das


aplicaes consiste na preservao do melhor indivduo encontrado em cada gerao.
A principal vantagem do elitismo garantir que no se perde o melhor indivduo
encontrado durante o processo iterativo. Deste modo, o algoritmo caracteriza-se por
uma diminuio monotonamente decrescente dos valores da funo objectivo com o
passar das geraes. No AG bsico sem o elitismo, a convergncia mais lenta e no
existe garantia de que o melhor indivduo da ltima gerao, seja o melhor de todos os
encontrados durante a pesquisa. Para contornar este ltimo problema poder-se-ia utilizar
no AG simples, alternativamente ao elitismo, o registo em memria da melhor soluo
encontrada no decurso das geraes.
A desvantagem do operador elitismo pode ser vista quando o melhor indivduo
encontrado o mesmo durante um nmero consecutivo de geraes, o que pode levar
presena de vrias cpias desse indivduo em cada gerao. Este aspecto tem como
efeito a perda de diversidade entre os indivduos da populao e fora a pesquisa na
direco de algum ponto ptimo local. Para combater este efeito o elitismo pode ser
utilizado no de forma constante, mas aplicado de forma intermitente, sempre que
esteja decorrido um nmero fixo de geraes.
Cruzamento
O cruzamento tem sido apresentado como o operador gentico mais importante nos AG
e por isso diferentes tipos de cruzamento tm sido sugeridos e comparados.
O cruzamento na sua forma mais bsica efectuado definindo um ponto, em ambos os
cromossomas pelo qual estes so cortados para se proceder troca de genes. Uma
extenso deste tipo de cruzamento o cruzamento realizado no apenas em um ponto,
mas em vrios pontos de corte cruzamento multiponto, como se mostra na figura 5.23.
10100101011101

10100111011101
cruzamento

10110111101101

10110101101101

Fig. 5.23 - Cruzamento multiponto


Outro modo de cruzamento entre cromossomas designado por cruzamento uniforme.
Neste caso, no so utilizados pontos de corte. Cada gene do cromossoma filho
escolhido com base numa determinada probabilidade de pertencer ao cromossoma pai
ou ao cromossoma me.
Conforme considerado anteriormente o cruzamento pode ter um efeito destrutivo sobre
os cromossomas que se revelam mais aptos no decurso das geraes. Deste ponto de
vista, o cruzamento simples ter uma menor influncia destrutiva do que o cruzamento
multiponto. No entanto, um dos efeitos benficos do cruzamento gerar diversidade
entre os indivduos o que pode ser melhor conseguido nas primeiras geraes com
implementaes tipo multiponto. Quanto ao referido efeito destrutivo, este pode ser
atenuado atravs da utilizao de elitismo.

J. Cardoso/P. Coelho

147

Optimizao estrutural

MCEM

A investigao sobre o cruzamento simples, multiponto ou uniforme tem revelado que,


na resoluo de diferentes problemas, nem sempre o mesmo tipo de cruzamento que
permite a melhor performance do algoritmo. Portanto, a utilizao destas tcnicas de
cruzamento, na generalidade dos problemas, no demonstra diferenas de desempenho
significativas que justifiquem o uso de um tipo de cruzamento e excluso dos outros.
Mutao
As modificaes ao operador mutao podem ser a dois nveis: probabilidade de
mutao e funcionamento do operador.
No AG simples, a probabilidade de mutao constante ao longo das geraes e um
valor baixo, isto , o suficiente para diversificar os indivduos de uma populao, mas
sem prejudicar a convergncia do algoritmo. Em alguns trabalhos, a probabilidade de
mutao varia de acordo com uma funo matemtica monotonamente decrescente.
Deste modo, a mutao ocorre com maior frequncia entre as primeiras geraes,
durante as quais o objectivo fazer uma pesquisa alargada do domnio, e passa a
efectuar-se raramente nas ltimas geraes para possibilitar uma convergncia eficiente
do algoritmo.
Optimizao com constrangimentos
O algoritmo gentico simples resolve problemas de optimizao sem constrangimentos.
Se o problema original for de optimizao com constrangimentos (gj (x) 0; j = 1,..., m)
pode-se transform-lo num problema sem constrangimentos atravs da introduo de
um termo de penalidade na funo objectivo. Assim o problema j pode ser resolvido
por um AG. Resumindo,
O problema original formulado do seguinte modo:
min
x

f (x)

Sujeito a gj (x) 0
; j = 1,..., m
l
u
x i xi x i ; i = 1 ,..., n
O problema original reformulado do seguinte modo:
min
x

f (x) + P( g'j(x))
x i l xi x i u ; i = 1 ,..., n; j = 1,..., m

onde
g'j(x) = gj(x)
g'j(x) = 0

se
se

gj(x) > 0
gj(x) 0

Aqui os constrangimentos gj(x) devem estar normalizados. Por exemplo, se inicialmente


o constrangimento de tenso tal que adm ento a sua normalizao obtm-se
dividindo ambos os membros pela tenso admissvel (/adm 1) e, portanto, a funo
do constrangimento normalizado dada agora na forma g(x) = /adm - 1.
Observando o termo de penalidade na funo objectivo, facilmente se compreende que
sempre que o(s) constrangimento(s) seja(m) violado(s) isso corresponde a uma
J. Cardoso/P. Coelho

148

Optimizao estrutural

MCEM

penalidade ou agravamento do valor da funo objectivo. A constante de penalidade P


que surge como um factor multiplicativo deve ser afinada para cada problema a
resolver. Isto consegue-se custa de correr o problema algumas vezes com o AG
utilizando incrementos sucessivos de P at que a soluo obtida satisfaa todos os
constrangimentos.
Algoritmo Gentico do Matlab (GATOOL)
Nesta seco apresenta-se a gatool, a ferramenta de algoritmos genticos do MATLAB.
Esta ferramenta pode existir sob forma autnoma (nas verses mais antigas do
MATLAB) ou estar includa na optimtool (nas verses mais recentes). Pretende-se
explicar o seu funcionamento e as suas opes mais importantes.
Para iniciar a ferramenta, introduz-se gatool ou optimtool na linha de comandos do
MATLAB, para ter acesso ferramenta, que apresentada na figura 5.24.
Na caixa Fitness function introduz-se a funo a minimizar. introduzida a designao
de um M-file que define essa mesma funo indicando @function, sendo neste caso
function o nome dado ao M-file. Em Number of variables introduz-se o nmero de
genes do cromossoma. Para correr o algoritmo gentico, clica-se em Start no separador
Run solver.
No separador options encontram-se as opes principais do gatool. Para obter os
melhores resultados do algoritmo gentico, normalmente necessrio experimentar as
diferentes opes, o que implica um processo de tentativa e erro.
Um dos factores mais importantes que determina a performance do algoritmo gentico
a diversidade da populao. Nas opes de populao (Population) possvel
especificar os parmetros da populao usados pelo algoritmo gentico. A opo
Double vector deve ser utilizada se os genes dos cromossomas da populao forem
nmeros reais. A opo Bit string utilizada quando os cromossomas tm genes
binrios.
Fitness scaling uma escala de mrito utilizada para controlar os cromossomas
extraordinrios na populao inicial, e deste modo evitar a convergncia prematura do
algoritmo gentico. A escala do tipo Rank baseia-se na ordenao dos indivduos de
acordo com o valor da funo objectivo como explicado anteriormente. A escala
proporcional (propocional) atribui um relacionamento proporcional entre o valor da
funo objectivo e o valor do mrito.
A funo de seleco (Selection function) escolhe os progenitores da gerao seguinte
de acordo com os valores da escala de mrito. Um indivduo pode ser escolhido mais do
que uma vez como progenitor, e neste caso os seus genes contribuem para mais do que
um indivduo da gerao seguinte.
Dentro das vrias opes possveis, a opo Estocstica uniforme Stochastic uniform)
a utilizada por omisso. Nesta opo traada uma recta onde cada progenitor
corresponde a uma seco, de comprimento proporcional ao seu valor escalonado. O
algoritmo move-se sobre a recta em passos de igual comprimento. A cada passo, o
algoritmo escolhe o progenitor a que esse passo corresponde.

J. Cardoso/P. Coelho

149

Optimizao estrutural

MCEM

Figura 5.24 - Ambiente grfico da ferramenta de Algoritmo Gentico do MATLAB


gatool
A opo de Roleta modificada (Remainder), selecciona os progenitores
deterministicamente atravs do valor inteiro do valor do mrito. Por exemplo, se a um
indivduo for atribudo um mrito 2.3, este indivduo listado duas vezes como
progenitor devido ao valor inteiro 2. Depois dos progenitores terem sido escolhidos de
acordo com a parte inteira do seu mrito, os restantes progenitores so escolhidos
estocsticamente. A probabilidade de cada progenitor ser escolhido nesta fase
proporcional ao valor decimal do seu mrito.
A opo Uniforme (Uniform), escolhe os progenitores de acordo com a aptido e o
nmero de progenitores. A Roleta (Roullete) escolhe os progenitores simulando a
Roleta, onde a rea da seco da roleta que corresponde a um indivduo proporcional
sua aptido. A opo de seleco por Torneio (Tournament) realiza um torneio entre um

J. Cardoso/P. Coelho

150

Optimizao estrutural

MCEM

grupo de indivduos aleatoriamente escolhidos da populao. Os valores do mrito de


cada indivduo so comparados e o que tiver maior valor o vencedor.
A opo Reproduo (Reproduction) permite usar ou no uma estratgia elitista, em que
so copiados para a gerao seguinte os n melhores elementos da gerao actual.
As opes de Mutao especificam como o algoritmo gentico faz pequenas alteraes
ao acaso nos indivduos da populao para criar filhos mutantes. A Mutao permite
diversidade gentica e aumenta o espao de procura do algoritmo gentico. Dentro das
opes de Mutao as mais importantes so do tipo Gaussiana (Gaussian) e Uniforme
(Uniform). Por defeito, a opo de mutao do Gatool do tipo Gaussiana. Esta
adiciona um nmero aleatrio retirado de uma distribuio de Gauss de mdia 0, ao
vector de cada progenitor. Tipicamente, a quantidade de mutao, que proporcional ao
desvio padro da distribuio, decresce na gerao seguinte. A quantidade mdia de
mutao que o algoritmo aplica a cada progenitor pode ser controlada atravs das
opes Shrink e Scale. A opo Shrink controla a taxa a que a quantidade mdia de
mutao decresce nas geraes seguintes. A opo Scale, controla o desvio padro
standard da mutao na primeira gerao.
A opo de Cruzamento (Crossover) especfica como que o algoritmo gentico
combina dois indivduos, ou progenitores, de modo a originar um indivduo filho na
gerao seguinte. A opo de cruzamento inclui opes do tipo Disperso (Scattered)
(opo por defeito), onde um vector do tipo binrio criado ao acaso e escolhe genes
onde o vector 1 do primeiro progenitor, e os genes onde o vector 0 do segundo
progenitor.
Na opo de cruzamento de Ponto nico (Single point) um ponto de cruzamento
escolhido, os genes desde o comeo do cromossoma at o ponto de cruzamento so
copiados do primeiro progenitor e o restante do segundo progenitor. Na opo de
cruzamento Dois pontos (Two point) so definidos dois pontos de cruzamento, os genes
desde o incio do cromossoma at o primeiro ponto de cruzamento so copiados do
primeiro progenitor, a partir do primeiro ponto de cruzamento at o segundo ponto so
copiados do outro progenitor e o restante do cromossoma copiado novamente do
primeiro progenitor.
O mtodo Intermdio (Intermediate) origina filhos atravs da mdia ponderada dos
progenitores. Por ltimo, a opo de cruzamento Heuristica (Heuristic), consiste em
gerar um cromossoma filho a partir de uma interpolao linear entre os pais utilizando
informao como a aptido. O cruzamento heurstico favorece o pai com maior mrito.

J. Cardoso/P. Coelho

151

Optimizao estrutural

J. Cardoso/P. Coelho

MCEM

152

Bibliografia

MCEM

BIBLIOGRAFIA

Argyris,

J.H., and Kelsey, S., Energy Theorems and Structural Analysis,


Butterworth, London, 1960; primeiro publicado em Aircraft Engineering, 26, 1954 e 27,
1955.
Arora, J.S. "Introduction to Optimum Design", McGrawHill International Editions,
Singapore, 1989.

Babuska,

I., Courant Element: Before and After, Krizek, M. and Neittaanmaki,


P.(eds), In Finite Element Methods: Fifty Years of the Courant Element, Marcel
Dekker, 1994.
Bendsoe, M.P., " Optimal shape design as material distribution problem". Struct Optim,
1, 193-202, 1989.
Bendsoe, M.P. and Kikuchi, N., "Generating optimal topologies in structural design
using a homogenization method". Comput Methods Appl Mech Eng, 71, 197-224, 1988.

Chen, S.Y. and Rajan, S.D., "Improving the efficiency of genetic algorithms for frame
designs". Engineering Optimization, vol 30, no 3/4, pp 281-307, 1998.
Chen, S.Y. and Rajan, S.D., "A robust genetic algorithm for structural optimisation".
Structural Engineering and Mechancis, vol 10, no 4, pp 313-336, 2000.
Clough, R.W., The Finite Element Method in Plane Stress Analysis, Journal of the
Structures Division, ASCE, Proceedings of the 2nd Conference on Electronic
Computations, 345-378, 1960.
Courant, R., Variational Methods for the Solution of Problems of Equilibrium and
Vibrations, Bulletin of the American Mathematical Society, 49, 1-23, 1943.

De Jong, K.A., "An analysis of the behaviour of a class of genetic adaptative systems".
PhD dissertation, Dept of Computer Science, Univ of Michigan, 1975.

J. Cardoso/P. Coelho

153

Bibliografia

MCEM

Glover, F. "Future paths for integer programming and links to artificial intelligence".
Computers and Operation Research, 13, 533-549, 1986.
Goldberg, D.E., "Genetic algorithms in search, optimization, and machine learning".
Reading, M.A., Adison-Wesley, 1989.

Holland,

J.H., "Adaptation in natural and artificial systems". Ann Arbor, The


University of Michigan Press, 1975.
Hrenikoff, A.,Solution of Problems in Elasticity by the Frame Work Method, Journal
of Applied Mechanics, Transactions of the ASME, 8, 169-175, 1941.

Kikuchi,

N. Finite element methods in mechanics, Cambridge University Press,

1986.

Mase, G.E., Mase, G.T., "Continuum mechanics for engineers", CRC Press, 1992.
Maxell,C., "On reciprocal figures, frames and diagrams of forces". Scientific papers,
vol2, pp. 175-177, 1890.
Michell, A.G.M. "The limit of economy of material in frame structures". Philosophical
Magazine, Series 6, 8, pp. 589-597, 1904.

Reddy, J.N., An introduction to the finite element method, McGraw-Hill, 2005.


Rozvany, G.I.N., Zhou, M. and Bicker, T., "Generalized shape optimisation without
homogenisation". Struct Optim, 4, 250-254,1992.

Schmit, L.A., "Structural design by systematic synthesis", Proc. 2d Conf. Electron.


Computation ASCE, Pittsburgh, Pa., pp. 105-132, Sept. 8-9, 1960.
Schittkowski, K., "NLQPL: A FORTRAN-Subroutine Solving Constrained Nonlinear
Programming Problems". Annals of Operations Research, vol. 5, pp. 485-500, 1985.
Svanberg, K., "The method of moving asymptotes - a new method for structural
optimisation". Int J Num Meth in Engrg, 24, 359-373, 1987.

Turner,

M.J., Clough, R.W., Martin, H.C. e Topp, L.J., Stifness and Deflection
Analysis of Complex Structures, Journal of Aeronautical Science, 23, 805-823, 1956.

J. Cardoso/P. Coelho

154

Anexo1-MATLAB

MCEM

ANEXO 1 - Introduo ao MATLAB

Pela sua utilidade na disciplina de MCEM, apresenta-se uma breve descrio do


programa MATLAB e algumas funes mais importantes. A figura 1 mostra o ambiente
de trabalho MATLAB. O programa tem sido actualizado frequentemente, pelo que
outras verses podero ter outro aspecto. Contudo as vrias janelas, designadas por A,
B, C, D, E e descritas seguidamente existem em todas as verses.

C
B

Figura 1 Ambiente de trabalho MATLAB


A Command Window: rea que permite a introduo de comandos e a visualizao de
resultados. Podem repetir-se os comandos j introduzidos com as teclas .
B Workspace: Exibe as vrias variveis definidas durante a sesso.

J. Cardoso/P. Coelho

155

Anexo1-MATLAB

MCEM

C Current Directory: Mostra os ficheiros contidos na directoria corrente.


D Command History: Guarda todos os comandos j executados.
E Menus [File, Edit, Debug, Desktop, Window, Help]: Contm menus com comandos
que permitem utilizar vrias opes do Matlab.
Definio de Cleve Moler, criador do programa, O Matlab um ambiente de
computao tcnico-cientfica para desenvolvimento de sistemas sofisticados e
eficientes. A primeira verso surgiu em 1984.
O Matlab dispem de:

Linguagem de programao de alto nvel baseada em matrizes.


Ferramenta de debuging
Funes para construir modelos numricos de excelente qualidade.
Grficos sofisticados e possibilidades de gerar interfaces grficas.
Interface com sistemas externos.

Para ter uma ideia mais precisa das capacidades do Matlab, basta escrever >>demo na
Command Window ou ento seleccionar a opo Demos no menu Help.
A opo MATLAB Help no menu Help permite obter informao sobre todos os
comandos, funes e capacidades do programa. Deve ser consultado sempre que
necessrio pois contm inmeros exemplos teis.
Nmeros, Vectores & Matrizes

Escalar:

Vector linha:

1N

=>

Vector coluna:

M1

=>

A1
A
2
M

AM

Matriz:

MN

=>

A11
A
21
M

AM 1

Matriz 3D:

J. Cardoso/P. Coelho

MNP

=>

[A1

A2 K AN ]

A12
A22
M
AM 2

A1 N
A2 N

O
M

L AMN

K
K

A12 P K A1NP
A11P
A
A22 P A K A2 NP
21121
P
K
A111 A
1N 1

A AM

M
O
M
K A2 N 1
211 221

M AM 1MP AO
M 2 P ML AMNP

AM 11 AM 21 L AMN 1

156

Anexo1-MATLAB

MCEM

Definio de vectores e matrizes:

Os elementos da matriz so definidos entre parntesis rectos [ ].


Os elementos podem ser escalares, vectores, matrizes, funes ou expresses.
As vrias colunas so separadas por espaos em branco ou por vrgulas.
As vrias linhas so separadas por ponto e vrgula ; .

Operadores aritmticos
Em Matlab actuam sobre escalares, vectores e matrizes. Considere-se:

1 2
a=

3 4

J. Cardoso/P. Coelho

5 6
b=

7 8

157

Anexo1-MATLAB

MCEM

O Operador [ valor inicial : incremento : valor final ] Define uma sequncia de


valores.
Indexao de elementos de matrizes
Os elementos de uma matriz podem ser referidos atravs dos seus dois ndices :
Exemplo :
>> a=[1 2 3;4 5 6;7 8 9];
>> a(2,3)

-> resposta 6

Tambm podem ser indexados s com um ndice, neste caso os elementos so


ordenados por colunas.

1(1) 2( 4) 3(7)
a = 4( 2) 5(5) 6(8)

7(3) 8(6) 9(9)


Exemplo :
>> a(2)
>> a(7)

-> resposta 4
-> resposta 3

O smbolo : pode ser usado para definir intervalos de indexao e assim definir
submatrizes:
Exemplo :
>> c= a(2,2:3)

-> resposta c=[5 6]

possvel identificar individualmente os elementos de uma matriz num nico comando


com [ ]
Exemplo :
>> d= a([2 3 8 4])

-> resposta d=[4 7 6 2]

Funes de criao de matrizes

eye(n) Cria uma matriz identidade de dimenso n.


zeros(n)
zeros(n,m) Cria uma matriz quadrada ou uma matriz de dimenso nm com zeros
ones(n)
ones(n,m) Cria uma matriz quadrada ou uma matriz nm com todos os elementos
iguais a 1.
rand(n)
rand(n,m) Cria uma matriz quadrada ou uma matriz nm com nmeros pseudoaleatrios uniformemente distribudos entre 0 e 1.

J. Cardoso/P. Coelho

158

Anexo1-MATLAB

MCEM

Funes de clculo matricial

det(a) Calcula o determinante de a.


cond(a) Indica o nmero de condio da matriz a, isto , o quociente entre o maior
e o menor valor singular da matriz (ver a teoria no fim deste texto).
inv(a) Calcula a inversa da matriz a.
eig(a) Calcula os valores prprios da matriz a.
size(a) Devolve um vector com o nmero de linhas e de colunas da matriz a.
Programao Declaraes e Variveis
O Matlab uma linguagem de expresses. As expresses usadas so interpretadas e
avaliadas pelo sistema. As declaraes no Matlab so frequentemente da forma:

>> varivel = expresso


As expresses so constitudas por operadores e outros caracteres especiais, funes e
nomes das variveis. A avaliao das expresses produz matrizes, que so mostradas na
Command Window e atribudas s variveis para uso futuro. Se o nome da varivel e o
sinal de igual = so omitidos, uma varivel com o nome ans (answer)
automaticamente criada e toma o valor calculado.
Se o ltimo caracter da declarao for um ponto e vrgula, a escrita de resultados
suprimida. Esta opo normalmente seguida quando se escreve um programa
utilizando um ficheiro *.m.
Uma varivel deve ter o seu nome comeado por uma letra e case-sensitive, isto , a
utilizao de maisculas e minsculas permite diferenciar duas variveis.
O comando who lista todas as variveis do workspace.
O comando whos indica o nome e o tipo dessas variveis.
Expresses lgicas
Estas expresses assumem o valor FALSO (ou 0) ou VERDADEIRO (qualquer valor
diferente de 0) e permitem controlar o funcionamento do programa. So usadas em
todas as instrues while e if, como adiante se ver. So construdas a partir de
operadores booleanos e de funes lgicas.

J. Cardoso/P. Coelho

159

Anexo1-MATLAB

MCEM

Smbolo
==
~=
<
>
<=
>=
~
&
|

Operador
Igual
Diferente
Menor que
Maior que
Menor ou igual
Maior ou igual
Negao
E (conjuno)
OU (disjuno)

Exemplo
i==j
i~=j
i<j
i>j
i<=j
i>=j
~i
i&j
i|j

Tambm se podem usar funes lgicas, que calculam um valor que pode ser FALSO
ou VERDADEIRO:
Funo
isempty
isequal
isnumeric
ischar
issparse

Devolve VERDADEIRO se
matriz M vazia
matrizes so numericamente
iguais
matriz M numrica
matriz M alfanumrica
matriz M esparsa

Exemplo
isempty (M)
isequal (M1,M2)
isnumeric (M)
ischar (M)
issparse (M)

Instrues de repetio ou de ciclo for

for i=a

end

Exemplo :
for i=1:4
disp(a(i));
end

-> resultado 1 4 7 2

A instruo de repetio for usa-se quando se pretende executar um conjunto de


expresses um nmero exacto de vezes, e esse nmero conhecido antes de iniciar a
execuo da instruo for.
Instrues de controlo da execuo if

if <expresso boleana> ... end


if <expresso boleana> ... else ... end
if <expresso boleana> ... elseif ... else ... end
A instruo if desempenha um papel fundamental em qualquer programa, ao permitir
executar as suas vrias expresses de uma forma condicional.

J. Cardoso/P. Coelho

160

Anexo1-MATLAB

MCEM

Outras instrues de repetio ou de controlo while , switch

while <expresso lgica> ... end


Exemplo :
while <expresso lgica>
<expresso 1>
...
end
A sequncia de expresses <expresso 1> ... executada sucessivamente
enquanto a expresso lgica for verdadeira. A instruo while uma instruo
de repetio condicional, usada quando se pretende executar um conjunto de expresses
um nmero varivel de vezes. Normalmente s possvel saber quantas vezes o
conjunto de expresses vai ser repetido durante a execuo da instruo while. Por
exemplo, porque essa repetio depende do resultado de um clculo ou da introduo de
um valor pelo utilizador.

switch <varivel>
case <valor_1> ...
case <valor_2> ...
...
otherwise ...
end
A instruo switch permite escolher uma das ramificaes de um conjunto de
ramificaes disponveis com base no valor tomado por uma varivel. necessrio
indicar qual a varivel de deciso e quais os valores que permitem que o controlo passe
para cada ramificao. Opcionalmente pode indicar-se com otherwise a aco a
executar caso nenhuma das opes definidas com case tenha sido escolhida.
So aceites para valor definido em case os seguintes:

Valor numrico, Exemplo case 10

Valores numricos separados por vrgulas. Exemplo case 100, 200, 300

Sequncias de caracteres. Exemplo case Mtodos Computacionais


Funes
A sintaxe bsica de definio de uma funo :

function [out_1,...,out_n]=nome_da_funo(in_1,...,in_m)
<expresso 1>
...
<expresso R>
onde out_1,...,out_n so as n variveis devolvidas pela funo e
in_1,...,in_m so as m variveis enviadas funo. As expresses 1 a R so
executadas sempre que se chama a funo, o que feito com a instruo:
>>[out_1,...,out_n]=nome_da_funo(in_1,...,in_m)

J. Cardoso/P. Coelho

161

Anexo1-MATLAB

MCEM

O Matlab disponibiliza uma funcionalidade poderosa. Qualquer funo escrita pelo


utilizador pode passar a ser usada a partir da Command Window ou de um programa
guardado numa m_file desde que a funo escrita pelo utilizador seja guardada num
ficheiro nome_da_funo.m.
Cadeias de caracteres
Uma cadeia de caracteres ou string um conjunto de caracteres ASCII armazenado em
formato char, os seja, cada caractere ocupa 2 bytes de memria. No MATLAB so
indicados entre e em cor roxa. Internamente, os caracteres so guardados como
nmeros inteiros.
Podem ser visualizados como caracteres com a funo char(a) ou como nmeros
com a funo double(a). Duas ou mais sequncias de caracteres podem ser
agrupadas com os smbolos [ ], como indicado em seguida:

>> txt= MATLAB


txt =
MATLAB
>> double(txt)
ans =
77
65
84
>> vector = [ 77
65 66 ]
>> char(vector)
ans =
MATLAB*MATLAB

76
65
66
65 84 76 65

66

42

77

65

84

76

Nota: Se fizermos int(txt) , o programa tenta integrar a funo txt e responde com
ans = 1/2*MATLAB^2 . Se fizermos int(char(vector)) , responde com ans
= 1/3*MATLAB^3 .
O seguinte programa mostra no monitor a tabela de caracteres usada no MATLAB:
%
% Este programa mostra a tabela de caracteres usada
% no MATLAB. Os primeiros 128, correspondem aos
% caracteres ASCII (American Standard Code for
% Information Interchange) de 1986:
%
%
0- 31 => Caracteres de controlo
%
32-126 => Caracteres possveis de imprimir
%
127 => Caractere delete
%
display('Tabela de caracteres usados no MATLAB');
for i=0:4:255
if i==8
fprintf(' N: %3d =>
\t| N: %3d =>
\t| N: %3d => nl\t| N: %3d =>
%2c\n',...
i, i+1, i+2, i+3, i+3);
elseif i==12
fprintf(' N: %3d => %c\t| N: %3d => cr\t| N: %3d => %c\t| N: %3d =>
%2c\n',...
i, i, i+1, i+2, i+2, i+3, i+3);
else

J. Cardoso/P. Coelho

162

Anexo1-MATLAB

MCEM

fprintf(' N: %3d => %c\t| N: %3d => %c\t| N: %3d => %c\t| N: %3d =>
%2c\n',...
i, i, i+1, i+1, i+2, i+2, i+3, i+3);
end
end

Matriz de clulas (cell array)


Matriz de clulas um tipo de dados que permite o armazenamento de elementos de
natureza diferente numa nica estrutura, identificada por um nico nome. O acesso a
cada elemento faz-se como nas matrizes, atravs dos ndices de linha, coluna, etc ...,
mas para poder distinguir matrizes convencionais (dados todos do mesmo tipo) e
matrizes de clulas (dados de tipo diferente) necessrio usar as chavetas sempre que se
pretender manipular matrizes de clulas.
Para criar uma matriz de clulas utiliza-se a funo cell(n,m), ou cell(n):

>> matriz_celulas = cell(2,3)


matriz_celulas =
[ ] [ ] [ ]
Em seguida podem ser atribudos valores a cada uma das clulas:

>> matriz_celulas(1,1) = {eye(3)};


>> matriz_celulas(1,2) = {elemento};
>> matriz_celulas(1,3) = {pi};
>> matriz_celulas
matriz_celulas =
[3x3 double]
elemento
[3.14159265358979]
Ou, em alternativa, executar as duas aces simultaneamente:

>> celula = { eye(3)

elemento

pi }

Estrutura (struct)
Uma estrutura um tipo de dados que permite o armazenamento de elementos de
natureza diferente. A estrutura identificvel por um nome, e cada um dos elementos
que a constitui tambm identificvel pelo seu nome de campo (field) .
Nas linhas seguintes criada uma estrutura de nome tabela :

>> tabela=struct('nome',{'Joo'},'altura',{1.74})
tabela =
nome: 'Joo'
altura: 1.74000000000000
Podem ser acrescentadas linhas a esta tabela :

>> tabela(2).nome='Antnio';
>> tabela(2).altura=1.81;

J. Cardoso/P. Coelho

163

Anexo1-MATLAB

MCEM

Os dados introduzidos podem ser consultados, atravs do nome da estrutura e do campo


:

>> tabela.nome
ans =
Joo
ans =
Antnio
>> tabela.altura
ans =
1.74000000000000
ans =
1.81000000000000
Acesso a ficheiros
O MATLAB disponibiliza funes de acesso a vrios tipos de ficheiro: dados
formatados, dados no formatados, som, imagem, etc.... Apenas se consideram aqui as
funes bsicas de acesso a ficheiros de dados formatados.
Para poder aceder a um ficheiro necessrio previamente usar a funo fopen:

fp= fopen(nome_do_ficheiro,acesso)
[fp, msg]= fopen(nome_do_ficheiro,acesso)
Esta funo abre um ficheiro. O acesso pode tomar os valores r, w, a consoante se
pretenda abrir para leitura (r), para escrita (w) ou para acrescentar ao contedo j
existente (a append). A varivel fp permite identificar o ficheiro em subsequentes
instrues de leitura ou escrita, a varivel msg contm uma mensagem de erro sempre
que o ficheiro no possa ser aberto. Depois de efectuar todas as operaes pretendidas
com o ficheiro, deve-se sempre fechar este, com a instruo:

fclose(fp)
Para ler uma linha do ficheiro, utiliza-se a funo fgets(fp)

linha = fgets(fp)
Para ler uma matriz a, utiliza-se a funo:

a= fscanf(fp,formato)
a= fscanf(fp,formato,dimenso)
onde o formato especificado poder ser:
%c caracter
%s cadeia de caracteres
%d decimal
%f real de preciso simples em vrgula flutuante
%e real em notao cientfica
J. Cardoso/P. Coelho

164

Anexo1-MATLAB

MCEM

...
e dimenso indica as dimenses da matriz, se no for fornecida assume um vector linha
com todos os dados lidos.
Para escrever dados num ficheiro, utiliza-se a funo:

fprintf(fp,formato,dado1,...,dadoN)
que escreve os dados no ficheiro fp de acordo com o formato indicado. Este pode
conter os caracters de formatao usados na funo fscanf e tambm os seguintes:
\n caracter newline
\t caracter tab
\\ caracter \
A cada dado constantes na lista de dados deve corresponder uma indicao de formato.
A instruo fprintf tambm pode ser usada para escrever na Command Window.
Nesse caso omite-se o ficheiro, isto , escreve-se apenas:

fprintf(formato,dado1,...,dadoN)
Leitura e escrita de cadeias de caracteres
Estas funes permitem, por exemplo, manipular os dados lidos pela funo fgets
apresentada anteriormente. A funo sprintf cria a cadeia de caracteres s , onde vai
ficar o conjunto de dados indicado, com o formato definido em formato. Funciona
como fprintf, mas o resultado uma cadeia de carateres, em vez de uma linha no
ficheiro fp ou na Command Window.

s = sprintf(formato,dado1,...,dadoN)
A funo sscanf le uma varivel a partir dos dados contidos numa cadeia de
caracteres.

a = sscanf(s,formato)
Exemplo :
>>texto = lista:
1.23
4.56
7.89;
>>a = sscanf(texto,%s %f %f %f);
>>display(a);
a =
1.0e+002 *
1.08000000000000
1.05000000000000
1.15000000000000
1.16000000000000
0.97000000000000
0.58000000000000
0.01230000000000
0.04560000000000
0.07890000000000
>>char(a(1:6)
J. Cardoso/P. Coelho

165

Anexo1-MATLAB

MCEM

ans =
l
i
s
t
a
:

A funo strread extrai vrias variveis a partir dos dados contidos numa cadeia de
caracteres. Por exemplo:

[valor v1 v2 v3] = strread(texto, %s %f %f %f)


L uma cadeia de caracteres, valor, e trs variveis reais, v1, v2 e v3.
Grficos
Apenas se apresenta uma pequena parte das numerosas possibilidades que o programa
disponibiliza. Para gerar o grfico de uma funo f(x), pode proceder-se como indicado:

>> x = -2*pi:0.1:2*pi
>> y = x.*cos(2*x);
>> plot(x,y);
O resultado a figura representada ao lado.

Se se pretender que o utilizador indique o nome de um ficheiro, pode utilizar-se a


funo uigetfile, que cria uma janela onde esse ficheiro pode ser seleccionado.

uigetfile(tipo,titulo)
Exemplo :
tipo={'*.inp'};
titulo='Matef: Seleccione o ficheiro de dados';
[nome,caminho]=uigetfile(tipo,titulo);

A funo inputdlg abre uma caixa de dilogo para entrada de dados via texto.
Exemplo :
dados=inputdlg(largura:,dimenso do rectngulo);

Outras funes teis:


errordlg
J. Cardoso/P. Coelho

166

Anexo1-MATLAB

MCEM

errordlg(mensagem)
errordlg(mensagem,designao)
warndlg
warndlg(mensagem)
warndlg(mensagem,designao)
helpdlg
helpdlg(mensagem)
helpdlg(mensagem,designao)

J. Cardoso/P. Coelho

167