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
n˜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