• Nenhum resultado encontrado

3.4 Escalamento no m´ etodo de Levenberg-Marquardt

3.4.1 Algoritmo de treinamento rede-neural avan¸cado

Esta t´ecnica foi introduzida por Zhou e Si [28], e visa uma melhor implementa¸c˜ao para os problemas de redes neurais. Para o problema de quadrados m´ınimos n˜ao linear, esta t´ecnica visa tanto a acelera¸c˜ao do m´etodo aplicado a problemas mal escalados quanto a solu¸c˜ao do subproblema de quadrados m´ınimos linear. Para tal, utilizam-se decomposi¸c˜oes matriciais espec´ıficas, diminuindo o custo computacional e mem´oria requeridas.

Primeiramente, consideramos o problema de Gauss-Newton, dado em (2.9), por

min

d∈Rn

1

2kRk+ Jkdk

2

onde a solu¸c˜ao satisfaz o sistema (2.10),

JkTJk d = −JkTRk.

Ent˜ao, fixada itera¸c˜ao, se Jk tem posto incompleto consideramos a decomposi¸c˜ao de JkTJk

dada por

(JkP1)T(JkP1) = UTDU (3.33)

como abordado em (1.2), onde P1 ∈ Rn×n´e uma matriz de pivoteamento, U ∈ Rn×n´e uma

matriz triangular superior com diagonal unit´aria, e D ∈ Rn×n ´e diagonal de elementos

ao negativos. Tomemos ainda b ∈ Rn satisfazendo

(JkP1)TRk= UTb (3.34)

Note que a computa¸c˜ao de b ´e relativamente f´acil, j´a que se resume na solu¸c˜ao de um sistema triangular.

O sistema (2.10) pode ser reescrito como JkTJkd = −JkTRk P1TJkTJkd = −P1TJkTRk P1TJkTJkP1P1−1d = −P T 1 J T kRk (JkP1)T(JkP1) ed = −(JkP1)TRk UTDUd = −Ue Tb (3.35) onde ed = P1−1d.

Como U ´e invers´ıvel, podemos escrever o sistema de maneira equivalente por

DU ed = −b (3.36)

Como D n˜ao tem posto completo, consideraremos as parti¸c˜oes matriciais de dimens˜oes adequadas para multiplica¸c˜ao dadas por

D = D1 0 0 0 ! , U = U1 U2 0 U3 ! , ed = de1 e d2 ! e b = b1 b2 ! (3.37)

onde D1 ∈ Rr×r ´e uma matriz diagonal n˜ao singular e r o posto de Jk, como vimos

em (1.2). De (3.37) e (3.36) temos que b2 = 0, e como h´a uma equivalˆencia entre os

sistemas (3.36) e o sistema (2.10), que sempre tem solu¸c˜ao, ent˜ao conclu´ımos que existe b cumprindo (3.34) com b2 = 0. Al´em disso, de (3.37) e (3.36) temos que ed satisfaz

D1(U1de1+ U2de2) = −b1. (3.38)

Desta forma, podemos tomar ed2 = 0 obtendo ent˜ao

e

d1 = −U1−1D −1 1 b1

Tal solu¸c˜ao considera que na k-´esima itera¸c˜ao a informa¸c˜ao de maior influˆencia para o sistema est´a contida em U1, j´a que usualmente U2´e dependente de U1, e portanto podemos

descartar tal informa¸c˜ao tomando ed2 = 0.

Infelizmente, a convergˆencia desta t´ecnica ´e afetada quando o problema ´e muito n˜ao li- near ou o res´ıduo ´e muito grande. Assim, consideramos o m´etodo de Levenberg-Marquardt associado ao sistema (3.35), dado por,

min e d∈Rn 1 2kU TDU ed + UTbk2 s.a kS edk ≤ ∆

minimiza¸c˜ao cumpre

(UTDU + µSTS) ed = −UTb

para algum valor de µ ≤ 0. Tomando S como a matriz identidade, temos a formula¸c˜ao cl´assica de Levenberg-Marquardt, por´em no desenvolvimento da teoria de redes neurais notou-se que para o problema acima as restri¸c˜oes elipsoidais s˜ao mais eficazes que res- tri¸c˜oes hiperesf´ericas, e portanto Zhou e Si [28] prop˜oem a utiliza¸c˜ao de S = U , obtendo assim o sistema

(UTDU + µUTU ) ed = −UTb UT (DU + µU ) ed = −UTb

(DU + µU ) ed = −b. (3.39) Utilizando (3.37) em (3.39) obtemos (D1+ µI) U1 (D1+ µI) U2 0 µU3 ! e d1 e d2 ! = − b1 0 ! . (3.40)

Temos ent˜ao a solu¸c˜ao do problema de minimiza¸c˜ao dado por ( e d1 = −U1−1(D1+ µI) −1 b1 e d2 = 0 . (3.41)

Segundo Zhou e Si [28], esta forma de atualiza¸c˜ao da dire¸c˜ao d revelou boas proprie- dades de convergˆencia, exceto quando o posto de Jk ´e muito pequeno, e portanto muita

informa¸c˜ao seria perdida a cada itera¸c˜ao, o que induziu a apresenta¸c˜ao de um procedi- mento adicional para atualiza¸c˜ao de ed2. Considerando a express˜ao (3.38), conclu´ımos que

h´a uma dependˆencia entre as vari´aveis ed1 e ed2, ent˜ao mantendo a forma de atualiza¸c˜ao de

e

d1 dada em (3.41), podemos obter uma express˜ao para ed2, cumprindo a seguinte equa¸c˜ao

D1U2de2 = (D1(D1+ µI)−1− I)b1. (3.42)

´

E f´acil verificar que (D1(D1+ µI)−1− I) = −µ(D1+ µI)−1, e portanto

D1U2de2 = −µ(D1+ µI)−1b1.

Agora, consideremos a decomposi¸c˜ao ortogonal

D1U2P2 = QR,

onde P2 ∈ R(n−r)×(n−r) ´e uma matriz de pivoteamento por colunas, Q ∈ Rr×r ´e uma

diagonal dispostos na ordem decrescente. Seja h ∈ Rr tal que

µ(D1+ µI)−1b1 = Qh,

e portanto a equa¸c˜ao (3.42) pode ser reescrita como

D1U2de2 = −µ(D1+ µI)−1b1 D1U2P2P2−1de2 = −µ(D1+ µI)−1b1

QR bd2 = −Qh,

onde bd2 = P2−1de2. Como Q ´e invers´ıvel, temos que

R bd2 = −h.

Se R n˜ao tem posto completo, considerar as decomposi¸c˜oes

R = R1 R2 0 0 ! , bd2 = b d21 b d22 ! e h = h1 h2 ! ,

onde R1 tem o mesmo posto de R, bd21 e bd22 s˜ao blocos do vetor bd2 e h1 e h2 s˜ao blocos

do vetor h, de forma que as multiplica¸c˜oes fa¸cam sentido. Temos assim que

R1db21+ R2db22 = −h1.

Tomaremos bd22= 0, e portanto

R1db21= −h1.

Considerando D2 uma matriz diagonal cujo i-´esimo elemento ´e o quadrado do i-´esimo

elemento da diagonal de R1, podemos multiplicar em ambos os lados da equa¸c˜ao por

RT

1D2 obtendo

RT1D2R1db21= −RT1D2h1,

e resolveremos bd21 impondo uma regi˜ao de confian¸ca, mediante a restri¸c˜ao kM bd21k ≤ b∆,

sendo a solu¸c˜ao dada por

RT1D2R1+ ϑMTM

 b

d21= −RT1Dh1,

para algum valor de ϑ ≥ 0. Tomando M = R1 obtemos

RT1 (D2+ ϑI) R1db21 = −RT1D2h1,

e temos ent˜ao a seguinte solu¸c˜ao para d21,

b

d21= −R−11 (D2+ ϑI) −1

Zhou e Si [28] afirmam que tal forma de atualiza¸c˜ao tem melhores propriedades de convergˆencia, pois traz mais informa¸c˜oes da parte singular de Jk em rela¸c˜ao `a atualiza¸c˜ao

apresentada em (3.41).

3.4.2

Proposta de extens˜ao: M´etodo CG-LM

Utilizando ideias semelhantes `a t´ecnica apresentada na ´ultima subse¸c˜ao, nosso objetivo consiste em desenvolver uma t´ecnica de resolu¸c˜ao para o M´etodo de Levenberg-Marquardt aplicados `a problemas mal escalados, utilizando a decomposi¸c˜ao matricial pautada em dire¸c˜oes conjugadas, apresentada na subse¸c˜ao 1.1.4 .

Consideremos o problema de Levenberg-Marquardt escalado

min d∈Rn 1 2kJ T kd + Rkk2 s.a kSkdk ≤ ∆ , (3.44)

para algum valor de ∆ > 0. Assim, pelos Teoremas 1.17 e 1.18, a solu¸c˜ao do problema est´a caracterizada atrav´es do sistema linear

(JkTJk+ λSkTSk)d = −JkTRk (3.45)

para algum valor de λ ≥ 0. Utilizando a decomposi¸c˜ao matricial pautada em dire¸c˜oes conjugadas, temos que

PkTJkTJkPk= Dk

onde P tem os vetores gradientes conjugados de JT kJk, e

Dk =

D1k 0

0 0 !

com D1k matriz diagonal, onde os elementos da diagonal s˜ao da forma dii = pTiJkTJkpi.

Assim, temos que

JkTJk = Pk−TDkPk−1. (3.46)

Utilizando (3.46) e (3.45), obtemos

(Pk−TDPk−1+ λSkTSk)d = −JkTRk.

Seja b tal que Pk−Tb = −JT

kRk, isto ´e, b = −PkTJkTRk, obtendo assim

(Pk−TDPk−1+ λSkTSk)d = Pk−Tb.

Desta maneira, podemos tomar Sk = Pk−1, e portanto a dire¸c˜ao d deve satisfazer

(Pk−TDkPk−1+ λP −T k P −1 k )d = P −T k b,

ou de maneira equivalente

(Dk+ λI)Pk−1d = b.

Considerando ed = Pk−1d e reescrevendo o sistema em blocos, obtemos

D1k+ λI 0 0 λI ! e d1 e d2 ! = b1 b2 ! e portando e d = de1 e d2 ! = (D1k+ λI) −1b 1 1 λb2 ! . (3.47)

Dada a solu¸c˜ao em (3.47), ´e f´acil voltar `a defini¸c˜ao de d, pois

d = Pkd.e

Vejamos o algoritmo da t´ecnica a seguir.

Algoritmo 9 : M´etodo CG-LM

Dados x0 ∈ Rn e a sequˆencia de parˆametros λk, solu¸c˜oes das raizes seculares associadas

ao problema, defina k = 0. Fa¸ca Compute a decomposi¸c˜ao PT kJkTJkPk = Dk; b = −PkTJkTRk; e d =(D1k+ λkI) −1b 1 1 λkb2  ; d = Pkd;e xk+1 = xk+ d; k = k + 1; fim

Note que o algoritmo n˜ao necessita da inversa de Pk, mas apenas da computa¸c˜ao da

pr´opria decomposi¸c˜ao PT

kJkTJkPk = Dk, tornando o algoritmo mais barato em rela¸c˜ao ao

que a teoria aparentemente apresenta. ´

E poss´ıvel provar a convergˆencia de nosso m´etodo a partir da convergˆencia do m´etodo de Regi˜ao de Confian¸ca, como veremos no pr´oximo teorema.

Teorema 3.6. Seja R ∈ C1, e suponhamos que a sequˆencia (x

k) gerada pelo m´etodo

proposto cumpra:

(1) ∇f Lipschitz, com f (x) = 12kR(x)k2.

(2) ∃c > 0 tal que c ≤ pαk

min, ∀k ∈ N, onde αkmin ´e o menor autovalor de SkTSk.

(3) As Jacobianas s˜ao uniformemente limitadas, isto ´e, ∃µ > 0 tal que kJkk ≤ µ

Nestas condi¸c˜oes, temos que a sequˆencia gerada (xk) gerada pelo Algoritmo 9 cumpre

lim

k→∞∇f (xk) = 0.

Em outras palavras, nosso m´etodo converge globalmente para solu¸c˜ao do problema. Demonstra¸c˜ao. Provaremos a convergˆencia a partir da convergˆencia do m´etodo de regi˜ao de confian¸ca. Para isso, nosso primeiro passo ´e provar que o problema de Levenberg- Marquardt pode ser reescrito como um problema da teoria Cl´assica de Regi˜ao de Con- fian¸ca. Nosso intuito ´e resolver a cada itera¸c˜ao k,

min mk(d) s.a kSkdk ≤ ∆ , (3.48) onde mk(d) = 1 2kJ T kd + Rkk = 1 2R T kRk+ dTJkTRk+ 1 2d TJT kJkd.

Analisemos o termo kSkdk. Pelo quociente de Rayleigh, temos que

αkmindTd ≤ dTSkTSkd ≤ αkmaxd Td.

Utilizando a primeira desigualdade, temos que q

αk

minkdk ≤ kSkdk ≤ ∆.

Pela hip´otese (2), temos que

ckdk ≤√αminkdk ≤ kSkdk ≤ ∆.

Desta forma, definindo a norma

kdkc= ckdk,

temos que kdkc≤ ∆. Assim, resolver (3.48) equivale a resolver

min mk(d)

s.a kdkc≤ ∆

,

sendo este um problema cl´assico de regi˜ao de confian¸ca. Como o m´etodo de regi˜ao de confian¸ca independe da norma utilizada, estamos assegurados da convergˆencia de nosso m´etodo atrav´es da convergˆencia do m´etodo de Regi˜ao de Confian¸ca, desde que estejamos em suas hip´oteses. Provemos que de fato todas as hip´oteses da convergˆencia do m´etodo de Regi˜ao de Confian¸ca, apresentada no Teorema 1.19, s˜ao verificadas.

H1 : A fun¸c˜ao f ´e de classe C1, por ser a composi¸c˜ao de fun¸c˜oes de classe C1. Al´em disso, ∇f ´e Lipschitz pela hip´otese (1).

H2 : J´a foi provado que resolver o problema (3.48) equivale a resolver o sistema linear

(JkTJk+ λkSkTSk)d = −JkTRk,

para algum valor de λ ≥ 0. Estamos supondo ser poss´ıvel encontrar tal λ, e nossa teoria encontra de fato a solu¸c˜ao deste sistema linear, ent˜ao sendo a solu¸c˜ao exata do problema de minimiza¸c˜ao (3.48), ´e trivial que satisfaz a desigualdade (1.13). H3 : Tamb´em ´e verificado trivialmente, j´a que tomamos a solu¸c˜ao exata de (3.48). H4 : Temos que

kBkkc = kJkTJkkc≤ ckJkk2,

e pela hip´otese (3) temos que

kBkk ≤ ckJkk2 ≤ cµ2 = β ∀k ∈ N.

H5 : f ´e limitada inferiormente por 0, e portanto ´e limitada em N = {x ∈ Rn : f (x) ≤ f (x0)}.

Desta forma, estamos nas hip´oteses da convergˆencia do m´etodo de Regi˜ao de Confian¸ca, e portanto temos a convergˆencia global de nosso m´etodo, como quer´ıamos demonstrar.

3.4.3

Experimentos num´ericos

Nossa objetivo para esta subse¸c˜ao ´e discorrer acerca do desempenho computacional das t´ecnicas abordadas nesta se¸c˜ao. Continuaremos utilizando o banco de problemas proposto por Mor´e, Garbow e Hillstrom [16]. Antes de apresentar o perfil de desempenho dos algoritmos, discorreremos acerca da computa¸c˜ao dos vetores A-conjugados exigidos na t´ecnica CG-LM.

Notamos que na computa¸c˜ao dos vetores A-conjugados ´e poss´ıvel utilizar a informa¸c˜ao obtida das itera¸c˜oes anteriores, de forma a construir um algoritmo mais barato computa- cionalmente, como apresentamos agora.

Algoritmo 10 : Obten¸c˜ao dos vetores A-conjugados Dada matriz A sim´etrica semidefinida positiva com posto(A) = r e {v1, v2, . . . , vr} base de Im(A).

Defina p1 = v1;

aux = pT1A; Aux = p1aux.paux1.

De i = 2 : r fa¸ca pi = (I − Aux)vi;

aux = pT i A;

Aux = Aux + piaux.pauxi.

Fim

Agora, a fim de fazermos a compara¸c˜ao de desempenho das t´ecnicas, denominaremos a t´ecnica de escalamento cl´assico definido em (3.31) e resolvido por decomposi¸c˜ao de Cholesky por E1, utilizando a = 1. A mesma t´ecnica resolvida por gradientes conjugados ser´a denotada por E2. A t´ecnica proposta por Zhou e Si apresentada em (3.41) ser´a denotada por E3, enquanto que a apresentada em (3.43) ser´a denotada por E4. Todas estas t´ecnicas utilizar˜ao o parˆametro λ proposto em P 9. J´a nossa proposta de resolu¸c˜ao, apresentada pelo Algoritmo 9, ser´a denotada por E5, utilizando o parˆametro λ proposto em P7. Lembrando que os parˆametros P7 e P9 encontram-se na subse¸c˜ao 3.1. Assim, analisemos o desempenho dos algoritmos relativamente ao tempo e n´umero de itera¸c˜oes, como mostra a seguir.

Figura 3.9: Perfil de desempenho dos algoritmos E1 a E5 em fun¸c˜ao do tempo. Escala de eficiˆencia.

Figura 3.10: Perfil de desempenho dos algoritmos E1 a E5 em fun¸c˜ao do tempo. Escala de robustez.

Figura 3.11: Perfil de desempenho dos algoritmos E1 a E5 em fun¸c˜ao do n´umero de itera¸c˜oes. Escala de eficiˆencia.

Figura 3.12: Perfil de desempenho dos algoritmos E1 a E5 em fun¸c˜ao do n´umero de itera¸c˜oes. Escala de robustez.

Podemos notar nos resultados acima que, relativamente ao tempo, o m´etodo CG-LM (E5) resolveu 18% dos problemas mais rapidamente, enquanto que o mais eficiente resolveu 27% dos problemas de forma mais veloz. J´a no quesito robustez, o m´etodo CG-LM obteve o melhor resultado, tendo resolvido um total de 90% dos problemas. Os m´etodos E3 e E4 resolveram 88% dos problemas.

Atrav´es da an´alise dos perfis de desempenho, pode-se notar que nossa proposta de extens˜ao se mostrou a mais robusta, tanto relativamente ao tempo quando ao n´umero de itera¸c˜oes do algoritmo. Cabe salientar que desde que haja uma maneira eficiente para o c´alculo de uma base para imagem e uma base para o n´ucleo de JT

kJk, nossa

proposta apresenta um baixo custo computacional, n˜ao envolvendo solu¸c˜oes de sistemas nem inversas de matrizes, exceto a inversa de uma matriz diagonal. Podemos assim concluir que a aplica¸c˜ao de nossa proposta ´e uma boa escolha para o m´etodo de Levenberg- Marquardt para problemas mal escalados.

O foco deste trabalho consistiu no estudo do Problema de Quadrados M´ınimos N˜ao Linear, onde dada uma fun¸c˜ao R : Rn→ Rm, o objetivo ´e resolver o problema

min x∈Rn 1 2kR(x)k 2 .

Tal problema tem grande aplicabilidade em casos reais, sendo utilizado em ciˆencias expe- rimentais como a F´ısica, Biologia, Economia, entre outras. Para abordagem deste tema, introduzimos conceitos cl´assicos de Otimiza¸c˜ao e ´Algebra Linear, al´em da introdu¸c˜ao ao Problema de Quadrados M´ınimos.

Para o Problema de Quadrados M´ınimos, abordamos em primeiro momento o caso linear, e posteriormente os m´etodos cl´assicos de resolu¸c˜ao do caso n˜ao linear, sendo tais o M´etodo de Newton e M´etodo de Gauss-Newton. Ap´os esta introdu¸c˜ao de conceitos, discorremos sobre o m´etodo de Levenberg-Marquardt, sendo este o foco principal de nossos estudos.

Desenvolvido por Levenberg [11] e aprimorado por Marquardt [13], o m´etodo de Levenberg-Marquardt alia o baixo custo computacional do m´etodo de Gauss-Newton, por´em o supera relativamente `a boa defini¸c˜ao de seus iterandos, que est˜ao sempre bem definidos independente do problema.

Nossa primeira contribui¸c˜ao consistiu na apresenta¸c˜ao de um novo parˆametro de dam- ping para o M´etodo de Levenberg-Marquardt, comparando-o computacionalmente com os parˆametros j´a existentes na literatura. Obtivemos bons resultados para nossa proposta quando comparada com os parˆametros definidos sem a an´alise do coeficiente de redu¸c˜ao relativa, tendo um desempenho competitivo quando comparado com os parˆametros que usam tal an´alise.

Em seguida, fizemos uma revis˜ao do m´etodo de Levenberg-Marquardt visto como um m´etodo de regi˜ao de confian¸ca, sendo tal abordagem feita por [15] e revisitada por [8]. Abordamos tamb´em o m´etodo de Levenberg-Marquardt sem derivadas, utilizando o m´etodo de diferen¸cas finitas, tratado em [2]. Nesta se¸c˜ao vimos que a utiliza¸c˜ao de diferen¸cas finitas mant´em as propriedades de convergˆencia, sob determinadas hip´oteses.

A ´ultima se¸c˜ao do trabalho tratou do m´etodo de Levenberg-Marquardt para problemas mal-escalados. Discorremos acerca da t´ecnica criada por Zhou e Si [28], que utiliza de- composi¸c˜oes matriciais para resolver o sistema de Levenberg-Marquardt para problemas

mal-escalados de maneira mais eficaz. Ap´os essa abordagem, utilizando ideias an´alogas, introduzimos uma proposta de resolu¸c˜ao do mesmo problema, por´em utilizando a de- composi¸c˜ao matricial pautada em dire¸c˜oes conjugadas, exposta por [27]. Sendo esta a segunda contribui¸c˜ao do trabalho, expusemos experimentos num´ericos comparando algu- mas t´ecnicas existentes na literatura com nossa proposta de extens˜ao. Ap´os os testes, verificamos que nosso m´etodo ´e competitivo aos demais existentes na literatura, sendo uma boa op¸c˜ao para resolu¸c˜ao do Problema de Quadrados M´ınimos mal escalado.

Nossa primeira proposta para trabalhos futuros consiste em buscar melhorias para o M´etodo de Levenberg-Marquardt aplicado a problemas mal escalados, encontrando uma forma eficiente para a resolu¸c˜ao do subproblema

JkTJk+ λSTS dk= JkTRk,

explorando as caracter´ısticas do sistema, como a simetria. Desde que (J (xk)TJ (xk) +

λkSTS) seja sim´etrica definida positiva, a adapta¸c˜ao do m´etodo de gradientes conjuga-

dos especifica para este problema pode trazer bons resultados num´ericos, principalmente quando associada ao uso de um pr´e-condicionador.

Al´em desta vertente, podemos abordar a resolu¸c˜ao de problemas de grande porte, buscando outras aproxima¸c˜oes da matriz Jacobiana sem a utiliza¸c˜ao de derivadas e de custo de armazenamento mais baixo, conflitando com o m´etodo mais b´asico abordado no trabalho, de diferen¸cas finitas.

H´a ainda uma abordagem do m´etodo de Levenberg-Marquardt que n˜ao teve destaque em nosso trabalho, e que poderiam ser abordados posteriormente. O t´opico consiste na constru¸c˜ao de algoritmos utilizando o m´etodo de Levenberg-Marquardt para o problema de Quadrados M´ınimos N˜ao Lineares sob restri¸c˜oes, isto ´e,

min 12||R(x)||2

s.a cE(x) = 0

cI(x) ≤ 0

, (3.49)

onde E e I s˜ao os conjuntos de ´ındices das restri¸c˜oes de igualdade e desigualdade, respec- tivamente. Um exemplo desta abordagem encontra-se em [14].

A. Quociente de Rayleigh

Dada uma matriz A ∈ Rn×n sim´etrica e um vetor x ∈ Rm, o quociente de Rayleigh ´e

definido por

xTAx

xTx .

Sua importˆancia est´a na rela¸c˜ao com os autovalores de A, como vemos no teorema a seguir.

Teorema .7. Seja A ∈ Rn×n uma matriz sim´etrica, de autovalores λ1 ≤ · · · ≤ λn. Nestas

condi¸c˜oes, λ1 = min  xTAx xTx : x ∈ R n\ {0}  λn= max  xTAx xTx : x ∈ R n\ {0} 

Demonstra¸c˜ao. Provaremos a primeira igualdade, sendo a prova da segunda an´aloga. Denotemos por σ(B) o conjunto dos autovalores da matriz B. Desta forma, temos que

σ(λ1I − A) = {0, λ1− λ2, . . . , λ1− λn}

e portanto λ1I − A ´e semidefinida negativa, isto ´e, para todo x ∈ Rn\ {0} temos

xT(λ1I − A)x

xTx ≤ 0.

Distribuindo os termos da express˜ao acima temos que

λ1 ≤

xTAx

xTx .

Por outro lado, tomando z autovalor de A associado `a λ1, temos min x∈Rn\{0} xTAx xTx ≤ zTAz zTz = z T 1z) zTz = λ1,

provando assim o desejado.

B. Banco de Dados MGH

Quando nosso objetivo consiste na an´alise de desempenho de ou mais algoritmos, aplic´a-los a uma fun¸c˜ao espec´ıfica pode n˜ao ser muito conclusivo, e portanto faz-se ne- cess´ario um banco de fun¸c˜oes para realizar os testes. Dentre os muitos bancos de fun¸c˜oes expressos na literatura, o escolhido para nosso trabalho foi o banco de fun¸c˜oes desenvol- vido por Mor´e, Garbow e Hillstrom [16], composto por 35 fun¸c˜oes Rj : Rn → Rm, tendo

seus c´odigos dispon´ıveis atrav´es da p´agina

http : //www.mat.univie.ac.at/∼neum/glopt/test.html#test unconstr

A implementa¸c˜ao de cada fun¸c˜ao tem quatro dados de entrada: a dimens˜ao n do espa¸co de dom´ınio da fun¸c˜ao, a dimens˜ao m do contradom´ınio, o ponto x ∈ Rn onde ser´a calculada e um parˆametro opt ∈ {1, 2, 3}. Caso opt = 1, a fun¸c˜ao fornece um vetor f vec ∈ Rm onde f vec = R(x) = (r1(x), r2(x), ..., rm(x))T. Se opt = 2, a fun¸c˜ao fornece a

Jacobiana J de R, isto ´e, uma matriz onde sua i-´esima linha ´e dada por ∇ri(x)T. Caso

opt = 3, s˜ao fornecidos o vetor f vec e a matriz J . Em nosso contexto de quadrados m´ınimos n˜ao linear, nosso objetivo consiste em utilizar este banco e minimizar as fun¸c˜oes

f (x) = 1 2kR(x)k 2 = 1 2f vec T f vec = 1 2 m X i=1 (ri(x))2 ! ,

sendo o gradiente de f dado por

∇f (x) =

m

X

i=1

ri(x)∇ri(x) = JTf vec.

Para algumas fun¸c˜oes, as dimens˜oes n e m s˜ao fixas, enquanto que para outras fun¸c˜oes o pr´oprio usu´ario pode definir as dimens˜oes segundo algumas restri¸c˜oes. Al´em disso, o banco de fun¸c˜oes tamb´em fornece um ponto inicial para cada fun¸c˜ao, sendo o utilizado como ponto inicial dos algoritmos tratados neste trabalho. Mostremos agora dois exemplos de fun¸c˜oes deste banco.

Exemplo: (1) Fun¸c˜ao de Rosenbrock (a) n = 2 , m = 2;

(b) r1(x) = 10(x2 − x21)

r2(x) = 1 − x1;

(c) x0 = (−1.2, 1).

Exemplo: (28) Fun¸c˜ao do Valor limite discreto (a) n vari´avel, m = n;

(b) ri(x) = xi+ hh(1 − ti)Pij=1tj(xj + tj+ 1)3+ tiPnj=i+1(1 − tj)(xj+ tj + 1)3 i 2 onde h = n+11 , ti = ih e x0 = xn+1 = 0; (c) (x0)j = (ξj) onde ξj = tj(tj − 1).

C. Perfil de Desempenho

Introduzido em 2002 por Dolan e Mor´e [6], o perfil de desempenho (performance profile) tem como proposta a compara¸c˜ao de v´arios algoritmos quando aplicados a um conjunto de problemas. Seja S o conjunto dos ns algoritmos que queremos comparar e

seja P o conjunto dos np problemas testes que pretendemos resolver. Utilizaremos uma

medida de compara¸c˜ao, como por exemplo o tempo computacional utilizado na resolu¸c˜ao do problema, o n´umero de itera¸c˜oes, o n´umero de avalia¸c˜oes de fun¸c˜oes, dentre outras. Seja mp,s a quantidade da medida m que o algoritmo s utilizou para resolver o problema

p. Tamb´em definimos a raz˜ao de desempenho, rp,s, dada por

rp,s =

mp,s

min{mp,s: s ∈ S}

.

Note que rp,s≥ 1, quaisquer que sejam p ∈ P e s ∈ S.

Definamos

ρs(t) =

card({p ∈ P : rp,s ≤ t})

np

como a fra¸c˜ao do conjunto de todos os problemas testes resolvida pelo programa s com uma raz˜ao de desempenho menor ou igual a t. Note que a fun¸c˜ao ρs : R → [0, 1] ´e n˜ao

decrescente. Tomando ρs(1), obtemos exatamente a fra¸c˜ao do conjunto de problemas em

que o programa s cumpriu mp,s= min{mp,s: s ∈ S}, isto ´e, a fra¸c˜ao em que o algoritmo

s obteve melhor desempenho em rela¸c˜ao aos outros.

Definamos um parˆametro real rM arbitrariamente grande, de forma que rM > rp,s,

∀p ∈ P, ∀s ∈ S tal que s resolveu p, e definamos assim rp,s = rM para os problemas p que

n˜ao foram resolvidos por s. Desta forma ρs(rM) = 1.

Tra¸caremos o gr´afico do perfil de desempenho em certo intervalo [1, tM], onde tM ´e um

n´umero real escolhido de forma a capturar o comportamento do programa. No caso de [1, tM] ser grande, podemos tra¸car o gr´afico do perfil de desempenho em escala logar´ıtmica,

considerando

ρs(t) =

card({p ∈ P : log2(rp,s) ≤ t})

np

,

e tomando o intervalo de plotagem como [0, tM], j´a que rp,s ≥ 1 nos assegura que

log2(rp,s) ≥ 0. Em s´ıntese, para t = 0 estaremos verificando a eficiˆencia dos algorit-

mos, isto ´e, teremos a fra¸c˜ao de problemas que cada algoritmo resolveu em menor medida de compara¸c˜ao. J´a para t pr´oximo de tM, estaremos verificando a fra¸c˜ao de problemas

que cada algoritmo resolveu, independente da medida de compara¸c˜ao, sendo tal fra¸c˜ao interpretada como a robustez do algoritmo.

[1] Bj¨orck, A. Numerical methods for least squares problems . Philadelphia, SIAM, 1996. [2] Brown, K. M. e Dennis Jr., J. E. “Derivative free analogues of the Levenberg- Marquardt and Gauss algorithms for nonlinear least squares approximation”. Nu- merische Mathematik 18.4 (1971): 289-297.

[3] Conn, A. R.; Gould, N.I.M.; e Toint, P.L. Trust-Region methods, MPS-SIAM Series on Optimization, SIAM, Philadelphia, 2000.

[4] Davies, M. e Whitting, I.J. “A modified form of Levenberg’s correction”. Em Nume- rical Methods for Nonlinear Optimization, F. A. Lootsma (ed.) London, Academic Press, 1972, pp. 191–201.

[5] Dennis J. E. e Schnabel R.B. Numerical Methods for Unconstrained Optimization and Nonlinear Equations. SIAM, Philadelphia, PA, 1996.

[6] Dolan, E. D. e Mor´e, J. J. “Benchmarking optimization software with performance profiles”. Math. Programming (Ser. A) 91, 1981, pp. 201–213.

[7] Fan, J. e Yuan, Y. “On the convergence of the a new Levenberg-Marquardt method”. Technical Report, AMSS, Chinese Academy of Sciences, Beijing, China, 2001. [8] Gardenghi, J. L. C. e Santos, S.A. “Sistemas n˜ao lineares via regi˜ao de confian¸ca: o

algoritmo de Levenberg-Marquardt”. Campinas: UNICAMP, 2011. 45. Relat´orio de

Documentos relacionados