UNIVERSIDADE FEDERAL DO PARAN ´ A Aline Cristiane Finkler
APRENDIZAGEM DE M ´ AQUINA APLICADA ` A PREVIS ˜ AO DOS MOVIMENTOS DO IBOVESPA
Curitiba
2017
UNIVERSIDADE FEDERAL DO PARAN ´ A Aline Cristiane Finkler
APRENDIZAGEM DE M ´ AQUINA APLICADA ` A PREVIS ˜ AO DOS MOVIMENTOS DO IBOVESPA
Disserta¸c˜ ao de Mestrado apresentada ao Programa de P´ os-Gradua¸c˜ ao em Matem´ atica da Universidade Federal do Paran´ a, como requisito parcial ` a ob- ten¸c˜ ao do T´ıtulo de Mestre em Matem´ atica.
Orientador: Prof. Dr. Geovani Nunes Grapiglia.
Curitiba
2017
F499a Finkler, Aline Cristiane
Aprendizagem de máquina aplicada à previsão dos movimentos do Ibovespa / Aline Cristiane Finkler. – Curitiba, 2017 .
97 f. : il. color. ; 30 cm.
Dissertação - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós- Graduação em Matemática, 2017 .
Orientador: Geovani Nunes Grapiglia.
1. Indicadores Ibovespa. 2. Previsão dos Movimentos Ibovespa. 3. Estratégias de investimentos. I. Universidade Federal do Paraná. II. Grapiglia, Geovani Nunes. III. Título.
CDD: 511.66
Dedico este Mestrado ao meu noivo e ` a minha fam´ılia, pessoas que est˜ ao sempre ao meu
lado, me apoiando em todos os momentos.
Agradecimentos
Agrade¸co ao meu orientador Prof. Dr. Geovani Nunes Grapiglia, por aceitar me orientar neste trabalho, exercendo esta fun¸c˜ ao excelentemente, sem medir esfor¸cos para contribuir com minha forma¸c˜ ao acadˆ emica.
Aos incont´ aveis professores que fizeram parte da minha trajet´ oria de estudante. Desde aqueles que me ensinaram a ler e escrever, assim como as mais b´ asicas no¸c˜ oes matem´ aticas, at´ e os de n´ıvel universit´ ario. Cada um deles teve sua importˆ ancia para que eu chegasse at´ e aqui.
Aos professores Paulo Silva (Unicamp) e Lucas Pedroso (UFPR), por concordarem em participar da banca de avalia¸c˜ ao e acrescentarem enriquecedoras contribui¸c˜ oes ao trabalho.
Aos meus pais Gilberto e Noeli, por tudo o que fizeram por mim ao longo de minha vida. Agrade¸co infinitamente pelo apoio incondicional e pela incans´ avel dedica¸c˜ ao a mim durante todos estes anos.
Aos meus irm˜ aos, Ivan e Luana, por fazerem parte de minha vida, e me auxiliarem sempre que preciso.
Ao meu noivo Eduardo, por me apoiar e me incentivar em momentos dif´ıceis. Mais do que isso, agrade¸co por aguentar ficar ao meu lado nos piores momentos. Al´ em disso, obrigada pela disposi¸c˜ ao em me ajudar a crescer pessoal e profissionalmente.
A todos os amigos e familiares, por compreenderem minha ausˆ ` encia em certos mo- mentos.
A Deus, por estar sempre presente. `
Aos colegas, que foram prestativos em momentos de necessidade, e que contribu´ıram com um ambiente de estudos agrad´ avel.
Finalmente, ` a CAPES e Funda¸c˜ ao Arauc´ aria, pelo apoio financeiro concedido.
“Os computadores s˜ ao incrivelmente r´ apidos, precisos e burros;
os homens s˜ ao incrivelmente lentos, imprecisos e brilhantes;
juntos, seus poderes ultrapassam os limites da imagina¸ c˜ ao.”
Albert Einstein
Resumo
Neste trabalho investiga-se o uso de t´ ecnicas de Aprendizagem de M´ aquina para a previs˜ ao dos movimentos do Ibovespa, ´ındice que representa o desempenho geral das a¸c˜ oes negoci- adas na BM&FBovespa. Especificamente, s˜ ao considerados modelos de Regress˜ ao Linear, Regress˜ ao Log´ıstica, C-SVM e Redes Neurais Artificiais. A partir de dados hist´ oricos mensais do Ibovespa, esses modelos s˜ ao treinados para realizarem previs˜ oes bin´ arias sobre o ´ındice (de alta ou baixa), com horizontes de 1, 3, 6 e 12 meses. Nos testes realiza- dos, com o modelo C-SVM chega-se a uma taxa de acerto de 72,7% para previs˜ oes de 6 meses. Essa taxa ´ e melhorada para 78,8% usando-se um modelo que combina Regress˜ ao Linear, Regress˜ ao Log´ıstica e C-SVM. Tal modelo h´ıbrido ´ e ent˜ ao incorporado a uma es- trat´ egia de investimento com manuten¸c˜ ao semestral para negocia¸c˜ ao do fundo de ´ındices BOVA11, o qual busca replicar os movimentos do Ibovespa. Simula¸c˜ oes sugerem que essa estrat´ egia de investimento baseada em previs˜ oes ´ e capaz de fornecer retornos significati- vamente maiores do que aqueles obtidos com uma estrat´ egia simples conhecida como buy and hold. Esses resultados ilustram o grande potencial do uso de t´ ecnicas de aprendiza- gem de m´ aquina como suporte para a tomada de decis˜ oes de compra e venda em bolsas de valores. Al´ em disso, abordam-se aspectos te´ oricos referentes ` a alguns m´ etodos de oti- miza¸c˜ ao. Em particular, um estudo unificado de complexidade para m´ etodos de descida
´ e apresentado.
Palavras-chave: Otimiza¸ c˜ ao, Aprendizagem de M´ aquina, Ibovespa.
Abstract
This work investigates the use of Machine Learning models for predicting the movements of Ibovespa, which is the index that represents the overall performance of the stocks ne- gotiated in the BM&FBovespa. Specifically, the models considered are Linear Regression, Logistic Regression, C-SVM and Artificial Neural Networks. Using monthly data about Ibovespa, these models are trained to the task of predicting the index movements (up and down) for horizons of 1, 3, 6 and 12 months ahead. In the experiments performed, with a C-SVM it was possible to reach an accuracy of 72,7% for predictions 6 months ahead. This accuracy was improved up to 78,8% by using a suitable combination of Linear Regression, Logistic Regression and C-SVM. Then, this hybrid model was incorporated to a trading strategy for negotiation of index fund BOVA11, which tries to replicate the movements of Ibovespa. Numerical simulations suggest that this trading strategy based on forecasts is able to provide gains significantly higher than those obtained with a simple strategy known as buy and hold. These results illustrate the great potential of Machine Learning as support for trading decisions in the stock market. In addition, theoretical approaches to some optimization methods are discussed. In particular, a unified complexity study for descent methods is presented.
Keywords: Optimization, Machine Learning, Ibovespa.
Sum´ ario
Introdu¸ c˜ ao 15
1 No¸ c˜ oes de Otimiza¸ c˜ ao 17
1.1 Defini¸c˜ oes e Resultados B´ asicos . . . . 17
1.2 Dedu¸c˜ ao de M´ etodos de Descida . . . . 20
1.3 An´ alise Te´ orica de M´ etodos de Descida . . . . 24
1.3.1 Convergˆ encia Global e Complexidade de Pior-Caso . . . . 26
1.3.2 Taxas de Convergˆ encia e M´ etodos quase-Newton . . . . 36
1.4 M´ etodo do Gradiente Acelerado . . . . 40
2 Modelos de Aprendizagem de M´ aquina 45 2.1 Regress˜ ao Linear . . . . 45
2.2 Regress˜ ao Log´ıstica . . . . 50
2.3 M´ aquinas de Vetor Suporte . . . . 57
2.4 Redes Neurais Artificiais . . . . 61
3 Aprendizagem de M´ aquina e a previs˜ ao dos movimentos do Ibovespa 70 3.1 Previs˜ ao vista como problema de Classifica¸c˜ ao . . . . 71
3.2 Regress˜ ao Log´ıstica . . . . 72
3.3 C-SVM . . . . 73
3.4 Redes Neurais Artificiais . . . . 75
3.5 Regress˜ ao Linear . . . . 77
3.6 Combina¸c˜ ao de Modelos . . . . 79
4 Estrat´ egia de Investimento 82 4.1 Ibovespa e BOVA11 . . . . 82
4.2 Estrat´ egia de Investimento . . . . 83
4.3 Simula¸c˜ oes de Investimento . . . . 87
Conclus˜ ao 91
Referˆ encias 93
Anexos 96
Lista de Figuras
1.1 Interpreta¸c˜ ao geom´ etrica do M´ etodo de Newton. . . . 21
1.2 Exemplo de divergˆ encia do M´ etodo de Newton Puro. . . . 22
1.3 Espectro dos principais M´ etodos de Descida. . . . 40
2.1 Exemplo de Regress˜ ao Linear relacionando a distˆ ancia percorrida por um autom´ ovel com o consumo de combust´ıvel. . . . 47
2.2 Conjunto de dados e o respectivo plano que melhor ajusta tais dados. . . . 48
2.3 Exemplo de Regress˜ ao Log´ıstica. . . . 52
2.4 Gr´ afico da Fun¸c˜ ao Log´ıstica. . . . 53
2.5 Exemplo de erros de underfitting e overfitting. . . . 56
2.6 Hiperplano separador SVM. . . . 57
2.7 Fun¸c˜ oes para Regress˜ ao Log´ıstica e para SVM. . . . 58
2.8 Exemplos de conjuntos linearmente e n˜ ao linearmente separ´ aveis. . . . . . 61
2.9 Modelo de neurˆ onio biol´ ogico. . . . 62
2.10 Modelo de neurˆ onio artificial. . . . . 63
2.11 Representa¸c˜ ao de Rede Neural Feedforward Multicamadas. . . . 63
3.1 S´ erie Ibovespa. . . . . 70
3.2 Regress˜ ao Log´ıstica. . . . . 74
3.3 C-SVM. . . . 75
3.4 Redes Neurais. . . . . 76
3.5 Regress˜ ao Linear. . . . 78
3.6 Compara¸c˜ ao entre os modelos. . . . 79
3.7 Combina¸c˜ ao de Modelos. . . . 81
4.1 S´ erie hist´ orica BOVA11. . . . 83
4.2 Investimentos iniciados em 2009, nos meses de Janeiro (1); Fevereiro (2); Mar¸co (3); Abril (4); Maio (5); Junho (6). . . . 88
4.3 Investimentos iniciados em 2010, nos meses de Janeiro (1); Fevereiro (2); Mar¸co (3); Abril (4); Maio (5); Junho (6). . . . 89
4.4 Investimentos iniciados em 2013, nos meses de Janeiro (1); Fevereiro (2);
Mar¸co (3); Abril (4); Maio (5); Junho (6). . . . 90
Lista de Tabelas
3.1 Informa¸c˜ oes do conjunto de teste . . . . 72
3.2 Resultados - Regress˜ ao Log´ıstica . . . . 73
3.3 Resultados - C-SVM . . . . 75
3.4 Resultados - Redes Neurais . . . . 77
3.5 Resultados - Regress˜ ao Linear . . . . 78
3.6 Resultados para previs˜ ao de 6 meses . . . . 79
3.7 Resultados - Combina¸c˜ ao de modelos . . . . 80
4.1 Simula¸c˜ oes: per´ıodos com t´ ermino em Janeiro de 2017 . . . . 87
Abreviaturas
AM Aprendizagem de M´ aquina
BFGS “Broyden-Fletcher-Goldfarb-Shanno”
DFP “Davidon-Fletcher-Powell”
BM&FBovespa Bolsa de Valores, Mercados e Futuros de S˜ ao Paulo Ibovespa ´Indice Bovespa
ETF “Exchange Traded Fund” (Fundo de ´Indice de A¸ c˜ oes) CDI Certificado de Dep´ osito Interbanc´ ario
CDB Certificado de Dep´ osito Banc´ ario
LC Letra de Cˆ ambio
LCI Letra de Cr´ edito Imobili´ ario LCA Letra de Cr´ edito do Agroneg´ ocio RNA Rede Neural Artificial
SVM “Support Vector Machines” (M´ aquinas de Vetor Suporte) C-SVM M´ aquinas de Vetor Suporte com margens flex´ıveis
SEQ Soma dos Erros Quadr´ aticos
EC Entropia Cruzada
TA Taxa de Acerto
Nota¸ c˜ ao
N Conjunto dos n´ umeros naturais R Conjunto dos n´ umeros reais
R ++ N´ umeros reais estritamente positivos R n Espa¸ co euclidiano n-dimensional
R m×n Conjunto das matrizes reais com m linhas e n colunas
| · | Valor absoluto
k · k Norma euclidiana vetorial ou matricial ρ(X) Raio Espectral da matriz X
B(x, δ) Bola aberta de centro x e raio δ
d · e N´ umero inteiro imediatamente superior ao n´ umero real no argumento b · c N´ umero inteiro imediatamente inferior ao n´ umero real no argumento
∇f(x) Gradiente da fun¸ c˜ ao f no ponto x
∇ 2 f (x) Matriz Hessiana da fun¸ c˜ ao f no ponto x J F (x) Jacobiana da fun¸ c˜ ao F no ponto x λ min (A) Menor autovalor de A (em m´ odulo) λ max (A) Maior autovalor de A (em m´ odulo) A ≥ 0 Matriz A sim´ etrica definida positiva A B B − A ≥ 0
cond(A) N´ umero de condi¸ c˜ ao da matriz A C k Derivadas at´ e ordem k cont´ınuas O(ε) M´ ultiplo de ε
I Matriz Identidade
proj x (y) Proje¸ c˜ ao ortogonal de y em x d(X, Y ) Distˆ ancia entre X e Y
x (i) Vetores em R n (entradas para os modelos de AM)
y (i) Valores em R (sa´ıdas para os modelos de AM)
Introdu¸ c˜ ao
A BM&FBovespa (Bolsa de Valores, Mercados e Futuros) ´ e a principal bolsa do Brasil, e uma das mais importantes da Am´ erica Latina. Por meio dela, ´ e poss´ıvel comprar e vender a¸c˜ oes, por meio eletrˆ onico. A negocia¸c˜ ao no mercado de a¸c˜ oes ´ e uma forma de investimento que vem se tornando cada vez mais popular no Brasil. No processo de tomada de decis˜ oes de compra e venda, s´ eries hist´ oricas dos pre¸cos das a¸c˜ oes est˜ ao entre as informa¸c˜ oes mais importantes para os investidores. Evidentemente, a possibilidade de se prever os movimentos do pre¸co de uma a¸c˜ ao (alta ou baixa) ´ e de grande interesse, uma vez que esse tipo de informa¸c˜ ao pode subsidiar decis˜ oes, tendo em vista a maximiza¸c˜ ao de lucros ou a minimiza¸c˜ ao de eventuais perdas decorrentes de oscila¸c˜ oes do mercado. No entanto, dado o car´ ater dinˆ amico dessas s´ eries temporais, a realiza¸c˜ ao de previs˜ oes desse tipo com alto grau de acerto ´ e uma tarefa extremamente dif´ıcil, gerando inclusive discuss˜ oes te´ oricas sobre a sua viabilidade. Esse comportamento ca´ otico ocorre pelo fato dos pre¸cos das a¸c˜ oes serem afetados por diversos fatores sociais, pol´ıticos e macro-econˆ omicos.
Recentemente, diversas t´ ecnicas de aprendizagem de m´ aquina tˆ em sido usadas com relativo sucesso na modelagem e previs˜ ao dos movimentos de pre¸cos em mercados de a¸c˜ oes. Por exemplo, Dai e Zhang [9] utilizaram Regress˜ ao Log´ıstica e M´ aquinas de Vetor Suporte (SVM, do inglˆ es Support Vector Machine) para obter previs˜ oes sobre uma ´ unica a¸c˜ ao do mercado norte americano, a 3M. Embora os resultados para previs˜ ao de curto prazo (com horizonte de 1 a 7 dias) n˜ ao tenham sido satisfat´ orios, para um horizonte de 44 dias eles conseguiram uma taxa de acerto de 79% utilizando SVM. Shen et al [26]
utilizaram como vari´ avel explicativa uma variedade de dados mundiais (tais como ´ındices de diversos mercados de a¸c˜ oes, cota¸c˜ oes de diferentes moedas, e ainda commodities como ouro e prata), e com um modelo SVM eles conseguiram prever os movimentos de alguns
´ındices do mercado norte-americano (como o NASDAQ e S&P500) com uma taxa de acerto
superior a 70% para o horizonte de 1 dia, e de at´ e 85% para o horizonte de 30 dias. Huang
et al [16] investigaram a eficiˆ encia da t´ ecnica SVM na previs˜ ao do movimento semanal
do ´ındice japonˆ es NIKKEI 225, comparando-a com outras t´ ecnicas de classifica¸c˜ ao, tais
como Redes Neurais Artificiais. Tamb´ em neste caso, individualmente o modelo SVM teve
performance superior, com taxa de acerto de 73% para previs˜ ao de 1 semana. No entanto,
com uma combina¸c˜ ao dos modelos eles obtiveram resultados ainda melhores, resultando
em uma taxa de acerto de 75%. Majumder et al [21] utilizaram Redes Neurais Artificiais
para previs˜ ao dos movimentos do ´ındice S&P CNX Nifty 50. Realizaram testes com diversas varia¸c˜ oes do modelo, obtendo uma taxa de acerto de 89.65%.
Motivada pela escassez de estudos desse gˆ enero sobre o mercado de a¸c˜ oes brasileiro, a presente disserta¸c˜ ao tem como objetivo a aplica¸c˜ ao de modelos de aprendizagem de m´ aquina para a previs˜ ao do Ibovespa, que ´ e o ´ındice da BM&FBovespa que busca in- dicar o desempenho geral das a¸c˜ oes registradas nessa bolsa de valores. Especificamente, s˜ ao considerados os modelos de Regress˜ ao Linear, Regress˜ ao Log´ıstica, C-SVM e Redes Neurais Artificiais. Com o objetivo de melhorar o desempenho nas previs˜ oes, a t´ ecnica de combina¸c˜ ao de modelos descrita em [16] tamb´ em ´ e investigada. Por fim, para ilustrar os potenciais ganhos decorrentes do uso desses modelos, v´ arias simula¸c˜ oes s˜ ao realizadas comparando-se uma estrat´ egia baseada em aprendizagem de m´ aquina com uma estrat´ egia simples do tipo buy and hold.
O restante do trabalho est´ a organizado da seguinte maneira. O Cap´ıtulo 1 apresenta
no¸c˜ oes b´ asicas de otimiza¸c˜ ao e tamb´ em uma descri¸c˜ ao dos m´ etodos de otimiza¸c˜ ao usados
para treinar os modelos abordados na disserta¸c˜ ao. Em particular, os m´ etodos de descida
s˜ ao apresentados de uma maneira unificada tendo como foco um estudo geral da comple-
xidade de pior-caso desses m´ etodos. O Cap´ıtulo 2 apresenta uma descri¸c˜ ao detalhada dos
modelos de aprendizagem de m´ aquina considerados. O Cap´ıtulo 3 reporta os resultados
de testes num´ ericos realizados na tentativa de se identificar o melhor modelo para a tarefa
de previs˜ ao do Ibovespa. Por fim, no Cap´ıtulo 4 investiga-se, por meio de simula¸c˜ oes, a
aplica¸c˜ ao do modelo mais eficiente descrito no Cap´ıtulo 3 como base para uma estrat´ egia
de investimento.
Cap´ıtulo 1
No¸ c˜ oes de Otimiza¸ c˜ ao
Este cap´ıtulo cont´ em no¸c˜ oes b´ asicas de otimiza¸c˜ ao, bem como uma breve descri¸c˜ ao dos m´ etodos utilizados para resolver os problemas abordados na disserta¸c˜ ao. As principais referˆ encias consideradas s˜ ao Ribeiro e Karas [25], Luenberger e Ye [19] e Nesterov [23].
1.1 Defini¸ c˜ oes e Resultados B´ asicos
Considere uma fun¸c˜ ao f : R n → R e um subconjunto Ω ⊂ R n . Defini¸ c˜ ao 1.1. Dado um ponto x ∗ ∈ Ω,
(a) diz-se que x ∗ ∈ Ω ´ e minimizador global de f em Ω quando f (x ∗ ) ≤ f (x), ∀ x ∈ Ω;
(b) diz-se que x ∗ ∈ Ω ´ e minimizador local de f em Ω quando existe δ > 0 tal que f (x ∗ ) ≤ f(x), ∀ x ∈ B (x ∗ , δ) ∩ Ω.
O problema de minimiza¸c˜ ao consiste em encontrar os minimizadores da fun¸c˜ ao f no conjunto Ω, e pode ser escrito como
min f(x)
s.a. x ∈ Ω. (1.1)
A fun¸c˜ ao f : R n → R ´ e denominada fun¸c˜ ao objetivo, e Ω ⊂ R n ´ e o conjunto vi´ avel.
Observa¸ c˜ ao 1.2. Todo problema de maximiza¸ c˜ ao max f (x)
s.a. x ∈ Ω
(1.2)
pode ser transformado em um problema de minimiza¸ c˜ ao equivalente min − f(x)
s.a. x ∈ Ω.
Ambos os problemas (1.1) e (1.2) s˜ ao referidos como problemas de otimiza¸c˜ ao. Quando Ω = R n , tem-se um problema de otimiza¸c˜ ao irrestrito ou sem restri¸c˜ oes. Quando Ω R n , tem-se um problema de otimiza¸c˜ ao com restri¸c˜ oes. Neste caso, Ω costuma ser da forma
Ω = (
x ∈ R n
r i (x) = 0, i = 1, . . . , p e
r i (x) ≤ 0, i = p e + 1, . . . , p )
,
onde p e ≤ p s˜ ao inteiros n˜ ao negativos, e r i : R n → R , para cada i = 1, . . . , p.
Os resultados abaixo fornecem condi¸c˜ oes suficientes para a existˆ encia de minimizadores globais.
Teorema 1.3 (Weierstrass). Sejam f : R n → R cont´ınua e Ω ⊂ R n compacto n˜ ao vazio.
Ent˜ ao existe minimizador global de f em Ω.
Demonstra¸ c˜ ao: Ver Teorema 2.2 em Ribeiro e Karas [25].
Corol´ ario 1.4. Seja f : R n → R cont´ınua e suponha que existe c ∈ R tal que o conjunto L = {x ∈ R n | f(x) ≤ c} ´ e compacto n˜ ao vazio. Ent˜ ao f tem um minimizador global.
Demonstra¸ c˜ ao: Ver Corol´ ario 2.3 em Ribeiro e Karas [25].
No caso de problemas de otimiza¸c˜ ao irrestritos, algumas condi¸c˜ oes devem ser satisfeitas para que um ponto x ∗ ∈ R n seja minimizador.
Teorema 1.5 (Condi¸c˜ ao necess´ aria de 1 a ordem). Seja f : R n → R uma fun¸ c˜ ao dife- renci´ avel. Se x ∗ ´ e minimizador local de f, ent˜ ao
∇f(x ∗ ) = 0.
Demonstra¸ c˜ ao: Ver Teorema 2.9 em Ribeiro e Karas [25].
Defini¸ c˜ ao 1.6. Um ponto x ∗ que satisfaz ∇f (x ∗ ) = 0 ´ e chamado ponto cr´ıtico (ou esta- cion´ ario) da fun¸ c˜ ao f .
Segundo o Teorema 1.5, todo minimizador ´ e um ponto cr´ıtico. No entanto, a rec´ıproca nem sempre vale. Um caso importante onde todo ponto cr´ıtico ´ e minimizador global ocorre quando f ´ e uma fun¸c˜ ao convexa.
Defini¸ c˜ ao 1.7. Uma fun¸ c˜ ao f : R n → R ´ e convexa quando
f ((1 − t)x + ty) ≤ (1 − t)f (x) + tf (y),
para todos x, y ∈ R n e t ∈ (0, 1).
Quando a desigualdade acima ´ e estrita, dizemos que f ´ e estritamente convexa.
Teorema 1.8. Sejam f : R n → R diferenci´ avel. A fun¸ c˜ ao f ´ e convexa se, e somente se,
f(y) ≥ f (x) + ∇f(x) T (y − x), (1.3)
para todos x, y ∈ R n .
Demonstra¸ c˜ ao: Ver Teorema 3.13 em Ribeiro e Karas [25].
Corol´ ario 1.9. Se f : R n → R ´ e uma fun¸ c˜ ao convexa, qualquer ponto cr´ıtico ´ e minimi- zador global de f .
Demonstra¸ c˜ ao: Como f ´ e convexa, segue de (1.3) que
f (x) ≥ f (x ∗ ) + ∇f (x ∗ )(x − x ∗ ) ≥ f (x ∗ ), ∀x ∈ R n , pois ∇f (x ∗ ) = 0.
Isto significa que para minimizar uma fun¸c˜ ao convexa f , basta encontrar um ponto cr´ıtico, ou seja, um ponto x ∗ tal que ∇f(x ∗ ) = 0. Por conta desse resultado, em otimiza¸c˜ ao
´ e extremamente importante identificar quando uma fun¸c˜ ao ´ e convexa. Nesse contexto, conv´ em revisar o conceito de matriz (semi)definida positiva.
Defini¸ c˜ ao 1.10. Uma matriz sim´ etrica A ∈ R n×n ´ e dita definida positiva quando x T Ax > 0
para todo x ∈ R n \ {0}. Neste caso, escreve-se A > 0.
Se
x T Ax ≥ 0
para todo x ∈ R n , diz-se que A ´ e semidefinida positiva, e denota-se por A ≥ 0.
Teorema 1.11. Seja f : R n → R uma fun¸ c˜ ao de classe C 2 . Se ∇ 2 f (x) ≥ 0 para todo x ∈ R n , ent˜ ao f ´ e convexa. A rec´ıproca tamb´ em ´ e v´ alida.
Demonstra¸ c˜ ao: Ver Teorema 3.16 em Ribeiro e Karas [25].
Considerando informa¸c˜ oes de segunda ordem da fun¸c˜ ao, tem-se a seguinte condi¸c˜ ao necess´ aria de otimalidade:
Teorema 1.12 (Condi¸c˜ ao necess´ aria de 2 a ordem). Seja f : R n → R uma fun¸ c˜ ao duas vezes diferenci´ avel. Se x ∗ ´ e minimizador local de f , ent˜ ao
∇ 2 f (x ∗ ) ≥ 0.
Demonstra¸ c˜ ao: Ver Teorema 2.12 em Ribeiro e Karas [25].
Informa¸c˜ oes de segunda ordem tamb´ em permitem identificar quando um ponto cr´ıtico
´ e um minimizador local de f.
Teorema 1.13 (Condi¸c˜ ao suficiente de 2 a ordem). Seja f : R n → R uma fun¸ c˜ ao duas vezes diferenci´ avel. Se
∇f (x ∗ ) = 0 e ∇ 2 f(x ∗ ) > 0, ent˜ ao x ∗ ´ e minimizador local estrito de f .
Demonstra¸ c˜ ao: Ver Teorema 2.14 em Ribeiro e Karas [25].
Os resultados acima referentes a minimizadores podem ser facilmente adaptados para maximizadores. Entretanto, existem pontos cr´ıticos que n˜ ao s˜ ao nem maximizadores nem minimizadores.
Defini¸ c˜ ao 1.14. Seja f : R n → R uma fun¸ c˜ ao diferenci´ avel e x ¯ um ponto cr´ıtico de f.
Diz-se que x ¯ ´ e ponto de sela de f quando, para todo δ > 0, existem x, y ∈ B (¯ x, δ) tais que f(x) < f (¯ x) < f (y).
A identifica¸c˜ ao de pontos de sela pode ser feita a partir da no¸c˜ ao de matriz indefinida.
Defini¸ c˜ ao 1.15. Uma matriz sim´ etrica A ∈ R n×n ´ e dita indefinida quando existem x, y ∈ R n tais que
x T Ax < 0 < y T Ay.
Teorema 1.16. Seja f : R n → R uma fun¸ c˜ ao duas vezes diferenci´ avel no ponto esta- cion´ ario x. Se ¯ ∇ 2 f(¯ x) ´ e indefinida, ent˜ ao x ¯ ´ e ponto de sela de f .
Demonstra¸ c˜ ao: Ver Teorema 2.16 em Ribeiro e Karas [25].
1.2 Dedu¸ c˜ ao de M´ etodos de Descida
Muitos problemas pr´ aticos podem ser reduzidos ` a busca por um vetor x ∈ R n tal que
F (x) = 0, (1.4)
onde F : R n → R n ´ e uma fun¸c˜ ao diferenci´ avel n˜ ao linear.
Na maioria das vezes, resolver tal problema de maneira direta ´ e muito complicado. Por isso, recorre-se a m´ etodos iterativos, os quais geram uma sequˆ encia (x k ) de aproxima¸c˜ oes.
Dada uma aproxima¸c˜ ao x k para a solu¸c˜ ao de (1.4), o ideal seria encontrar um passo d k ∈ R n tal que
F (x k + d k ) = 0.
Ora, sendo F diferenci´ avel, tem-se que
F (x k + d) = F (x k ) + J F (x k )d + r(d), onde J F (x k ) ´ e a Jacobiana de F em x k , e lim
kdk→0 r(d)
kdk = 0. Em particular, lim
kdk→0 r(d) = 0.
Assim, para kdk suficientemente pequena, obt´ em-se
F (x k + d) ∼ = F (x k ) + J F (x k )d. (1.5) A rela¸c˜ ao (1.5) sugere a busca por um passo d k tal que
F (x k ) + J F (x k )d k = 0. (1.6) Se J F (x k ) ´ e n˜ ao singular, a solu¸c˜ ao de (1.6) ´ e
d k = −J F (x k ) −1 F (x k ).
Deste modo, obt´ em-se a seguinte regra para atualiza¸c˜ ao de x k :
x k+1 = x k + d k = x k − J F (x k ) −1 F (x k ). (1.7) O processo iterativo (1.7) ´ e conhecido como M´ etodo de Newton Puro.
A Figura 1.1 ilustra uma interpreta¸c˜ ao geom´ etrica do m´ etodo para n = 1, onde procura-se aproximar as ra´ızes de F (x) = 2x 2 + x + 1. Neste caso, tem-se J F (x) = F 0 (x).
Esta figura sugere que a sequˆ encia (x k ) gerada pelo M´ etodo de Newton converge para uma solu¸c˜ ao x ∗ do problema (1.4).
x
-1 -0.5 0 0.5 1 1.5 2 2.5 3 3.5
y
-5 0 5 10 15 20 25 30
x
∗x
3x
2x
1x
0F(x) = 2x
2+ x − 1
Retas tangentes aos pontos (x
i, F(x
i)):
y = F(x
i) + F
′(x
i)(x − x
i)
Figura 1.1: Interpreta¸c˜ ao geom´ etrica do M´ etodo de Newton.
O ponto x k+1 ´ e resultado da interse¸c˜ ao da reta tangente ao gr´ afico de F no ponto
(x k , F (x k )) com o eixo x.
Infelizmente, se o ponto inicial x 0 n˜ ao estiver suficientemente pr´ oximo de x ∗ , a sequˆ encia (x k ) gerada pelo M´ etodo de Newton Puro pode divergir. Por exemplo, considere a fun¸c˜ ao F : R → R dada por
F (x) = x
√ 1 + x 2 .
Para essa fun¸c˜ ao, o M´ etodo de Newton diverge quando |x 0 | ≥ 1. De fato, a solu¸c˜ ao de F (x) = 0 ´ e x ∗ = 0, e
x k+1 = x k − F (x k )
F 0 (x k ) = x k − x k (1 + x 2 k ) −
12(1 + x 2 k ) −
32= −x 3 k .
Se |x 0 | < 1, a sequˆ encia (x k ) converge rapidamente para x ∗ , uma vez que |x 3 k | → 0. Se x 0 = 1, tem-se x 1 = −1 e x 2 = x 0 = 1, de modo que o m´ etodo entra num processo infinito, e nunca encontra a raiz x ∗ = 0. Se |x 0 | > 1, ent˜ ao |x k | → ∞. Este exemplo est´ a ilustrado na Figura 1.2, onde x 0 = 1 ´ e tomado como ponto inicial.
x
-3 -2 -1 0 1 2 3
y
-1 -0.5 0 0.5 1
x
∗x
0= x
2= x
4= . . . x
1= x
3= x
5= . . .
F(x) =
√x 1+x2y = F (x
0) + F
′(x
0)(x − x
0)
y = F(x
1) + F
′(x
1)(x − x
1)
Figura 1.2: Exemplo de divergˆ encia do M´ etodo de Newton Puro.
Uma forma de se contornar este problema ´ e o controle do tamanho do passo a partir de uma sequˆ encia (t k ) ⊂ R ++ . Especificamente, o M´ etodo de Newton Puro ´ e modificado da seguinte maneira:
x k+1 = x k + t k d k = x k − t k J F (x k ) −1 F (x k ). (1.8) O processo iterativo (1.8) ´ e conhecido como M´ etodo de Newton com Busca, pois ele de- pende da busca dos parˆ ametros t k de modo a garantir a convergˆ encia do m´ etodo para qualquer ponto inicial x 0 .
Por outro lado, mesmo no M´ etodo de Newton com Busca, J F (x k ) pode ser singular,
tornando a sequˆ encia (x k ) mal-definida. Este problema pode ser evitado substituindo-
se J F (x k ) por uma matriz n˜ ao singular H k ∈ R n×n . Para preservar as propriedades do
m´ etodo, ´ e interessante que tal matriz H k seja uma aproxima¸c˜ ao de J F (x k ) t˜ ao boa quanto poss´ıvel. Denotando B k = H k −1 , a partir de (1.8) obt´ em-se o seguinte processo iterativo:
x k+1 = x k + t k d k , com d k = −B k F (x k ). (1.9) Em otimiza¸c˜ ao suave irrestrita, dada uma fun¸c˜ ao f : R n → R , o objetivo ´ e encontrar um minimizador x ∗ de f . Neste caso, sabe-se que se x ∗ ´ e minimizador de f, ent˜ ao
∇f(x ∗ ) = 0 (Teorema 1.5). Assim, na pr´ atica busca-se por uma solu¸c˜ ao da equa¸c˜ ao n˜ ao linear
∇f (x) = 0.
Para F (x) = ∇f (x), o esquema (1.9) se torna
x k+1 = x k + t k d k , com d k = −B k ∇f(x k ). (1.10) Aqui, B k atua como uma aproxima¸c˜ ao para ∇ 2 f (x k ) −1 , e geralmente considera-se B k como sendo sim´ etrica e definida positiva. Quando f ´ e de classe C 2 , segue do Teorema de Schwarz 1 que ∇ 2 f(x k ) ∈ R n×n ´ e sim´ etrica. Isto justifica a simetria de B k . O fato de B k ser definida positiva ´ e motivado pela seguinte propriedade:
Teorema 1.17. Seja B uma matriz sim´ etrica e definida positiva. Se d = −B∇f (x), ent˜ ao
f (x + td) < f (x) (1.11)
para todo t suficientemente pequeno.
Observa¸ c˜ ao 1.18. Se d ∈ R n satisfaz (1.11), diz-se que d ´ e uma dire¸ c˜ ao de descida.
Para que uma dire¸ c˜ ao d seja de descida a partir de um ponto x, ´ e suficiente que se tenha d T ∇f(x) < 0 (Ver Teorema 4.2 em Ribeiro e Karas [25]).
Em raz˜ ao do Teorema 1.17, o m´ etodo (1.10) ser´ a chamado de M´ etodo Geral de Descida.
Este m´ etodo pode ser descrito da seguinte maneira:
1 Ver Teorema 4 do Cap´ıtulo 3.3 de Lima [17].
Algoritmo 1.1. M´ etodo de Descida
Passo 0: Dados x 0 ∈ R n e B 0 ∈ R n×n sim´ etrica e definida positiva, defina k = 0.
Passo 1: Se ∇f (x k ) = 0, pare;
Passo 2: Calcule d k = −B k ∇f (x k );
Passo 3: Calcule t k > 0 tal que f (x k + t k d k ) < f (x k );
Passo 4: Defina x k+1 = x k + t k d k ;
Passo 5: Escolha B k+1 sim´ etrica e definida positiva;
Passo 6: Defina k = k + 1 e volte ao Passo 1.
O c´ alculo de t k no Passo 3 pode ser feito de diversas maneiras. Entre elas, destacam-se as seguintes:
• Busca Exata: consiste em tomar t k como a solu¸c˜ ao do problema
t∈ min R
+φ(t) = f(x + td). (1.12)
Mesmo sendo unidimensional, o problema (1.12) pode ser bastante complicado. Nes- tes casos, m´ etodos de busca inexata podem ser mais vi´ aveis.
• Busca Inexata de Goldstein-Armijo: consiste em encontrar um t k > 0 de modo que haja uma redu¸c˜ ao no valor da fun¸c˜ ao na dire¸c˜ ao d k , sem necessidade de resolver o problema (1.12). Para isto, utiliza-se a regra
0 < −µ 1 t k ∇f(x k ) T d k ≤ f (x k ) − f (x k + t k d k ) ≤ −µ 2 t k ∇f (x k ) T d k , onde 0 < µ 1 < µ 2 < 1.
• Passo constante: consiste em fazer t k = t para todo k. Esta t´ ecnica costuma ser pouco eficiente, uma vez que o mesmo tamanho de passo deve garantir o decr´ escimo da fun¸c˜ ao na dire¸c˜ ao escolhida para qualquer ponto de partida, o que pode significar que o passo seja muito pequeno, tornando o algoritmo lento.
1.3 An´ alise Te´ orica de M´ etodos de Descida
Dado um problema de otimiza¸c˜ ao, uma solu¸c˜ ao x ∗ do mesmo geralmente satisfaz uma
condi¸c˜ ao de criticalidade da forma µ(x ∗ ) = 0, com µ(x) ≥ 0. Quando x satisfaz µ(x) = 0,
diz-se que x ´ e um ponto cr´ıtico do problema. No caso de um problema de minimiza¸c˜ ao
suave sem restri¸c˜ oes, a medida de criticalidade usual ´ e µ(x) = k∇f (x)k, onde f ´ e a
fun¸c˜ ao objetivo. Outra medida v´ alida, mas nem sempre vi´ avel de ser calculada, ´ e µ(x) = f(x) − f ∗ , onde f ∗ ´ e o valor m´ınimo de f .
Por conta da precis˜ ao finita dos computadores, implementa¸c˜ oes pr´ aticas de m´ etodos de otimiza¸c˜ ao n˜ ao utilizam a condi¸c˜ ao µ(x k ) = 0 como crit´ erio de parada. Em vez disso, elas fazem uso da condi¸c˜ ao mais fraca
µ(x k ) ≤ ε, (1.13)
onde ε > 0 ´ e uma tolerˆ ancia fixada a priori pelo usu´ ario. Para um m´ etodo iterativo de otimiza¸c˜ ao, ´ e extremamente desej´ avel que se tenha a garantia te´ orica de que o crit´ erio de parada (1.13) ser´ a satisfeito, independentemente da escolha do ponto inicial x 0 . Essa propriedade ´ e conhecida como Convergˆ encia Global, e pode ser formalizada da seguinte maneira:
Defini¸ c˜ ao 1.19 (Convergˆ encia Global). Seja (x k ) a sequˆ encia gerada por um m´ etodo iterativo de otimiza¸ c˜ ao M a partir de um ponto inicial arbitr´ ario x 0 . Diz-se que o m´ etodo M ´ e globalmente convergente quando, dado ε > 0, existe ¯ k = ¯ k(ε, x 0 ) ∈ N tal que µ(x k ¯ ) ≤ ε.
O exemplo de divergˆ encia do M´ etodo de Newton Puro descrito na Se¸c˜ ao 1.2 mostra que nem todo m´ etodo de otimiza¸c˜ ao ´ e globalmente convergente.
Apesar de ser uma propriedade importante, a convergˆ encia global n˜ ao diz muito sobre a eficiˆ encia de um m´ etodo de otimiza¸c˜ ao. Ela apenas garante que a execu¸c˜ ao do m´ etodo vai parar em algum momento. Obviamente, ´ e desej´ avel que o m´ etodo seja r´ apido, ou seja, que ele pare executando o menor n´ umero poss´ıvel de itera¸c˜ oes. Assim, para avaliar a eficiˆ encia ´ e interessante estimar o qu˜ ao grande ´ e o primeiro ¯ k para o qual µ(x ¯ k ) ≤ ε, isto
´ e, o n´ umero m´ aximo de itera¸c˜ oes que o m´ etodo precisa executar no pior caso at´ e que o crit´ erio (1.13) seja satisfeito. Fixado x 0 , quanto menor for ε > 0, maior ser´ a ¯ k. Esse tipo de limitante superior sobre ¯ k caracteriza a Complexidade de Pior-Caso do m´ etodo.
Em geral, limitantes de complexidade s˜ ao da forma ¯ k ≤ O(ε −p ), com p ∈ {1, 1.5, 2}.
Mesmo para p = 1, se consideramos ε = 10 −6 obtemos um limitante superior da ordem de um milh˜ ao de itera¸c˜ oes. Felizmente, na pr´ atica quase sempre ´ e poss´ıvel satisfazer o crit´ erio de parada (1.13) com um n´ umero de itera¸c˜ oes muito menor que o n´ umero previsto pela an´ alise de complexidade.
Uma outra medida de eficiˆ encia, menos pessimista, ´ e a Taxa de Convergˆ encia.
A an´ alise da taxa de convergˆ encia permite avaliar a velocidade de convergˆ encia das sequˆ encias geradas por um m´ etodo quando as suas iteradas est˜ ao suficientemente pr´ oximas de uma solu¸c˜ ao do problema. A defini¸c˜ ao a seguir apresenta caracteriza¸c˜ oes para a taxa de convergˆ encia de uma sequˆ encia.
Defini¸ c˜ ao 1.20. Seja (x k ) uma sequˆ encia que converge para x ∗ , com x k 6= x ∗ , para todo
k. Diz-se que a convergˆ encia de (x k ) ´ e:
• Linear, com taxa de convergˆ encia r, quando
k→∞ lim
kx k+1 − x ∗ k
kx k − x ∗ k = r < 1;
• Superlinear, quando
k→∞ lim
kx k+1 − x ∗ k kx k − x ∗ k = 0;
• Sublinear, quando
k→∞ lim
kx k+1 − x ∗ k kx k − x ∗ k = 1;
• de ordem p > 1, quando
k→∞ lim
kx k+1 − x ∗ k kx k − x ∗ k p < ∞;
Quando p = 2, diz-se que a convergˆ encia ´ e quadr´ atica.
Observa¸ c˜ ao 1.21. Quanto maior a ordem de convergˆ encia das sequˆ encias geradas por um m´ etodo, mais r´ apido ele tende a ser. Assim, ´ e prefer´ıvel um m´ etodo com convergˆ encia quadr´ atica do que linear, por exemplo.
A seguir, o Algoritmo 1.1 ´ e analisado tendo como foco esses trˆ es aspectos fundamentais:
Convergˆ encia Global, Complexidade de Pior-Caso e Taxas de Convergˆ encia.
1.3.1 Convergˆ encia Global e Complexidade de Pior-Caso
S˜ ao discutidas agora a ordem de complexidade e a convergˆ encia global do M´ etodo de Descida descrito no Algoritmo 1.1.
Defini¸ c˜ ao 1.22. Uma fun¸ c˜ ao f : X ⊂ R n → R m ´ e Lipschitziana se existe uma constante L > 0 tal que
kf (x) − f (y)k ≤ L kx − yk , para todos x, y ∈ X. Neste caso, diz-se que f ´ e L-Lipschitz.
Considere as seguintes hip´ oteses:
(H1) f : R n → R ´ e diferenci´ avel, e ∇f : R n → R n ´ e L-Lipschitz.
(H2) Existem constantes positivas c 0 ≤ c 1 tais que, para todo k, B k ´ e sim´ etrica, e c 0 I B k c 1 I.
Observa¸ c˜ ao 1.23. Note que (H2) implica que λ min (B k ) ≥ c 0 e kB k k = λ max (B k ) ≤ c 1 ,
para todo k.
Lema 1.24. Suponha que (H1) e (H2) sejam satisfeitas. Dado x 0 ∈ R n , seja (x k ) ⊂ R n a sequˆ encia gerada pelo Algoritmo 1.1 a partir de x 0 . Ent˜ ao, para todo k
f (x k ) − f (x k+1 ) ≥ t k
c 0 − Lc 2 1 2 t k
k∇f (x k )k 2 . (1.14)
Demonstra¸ c˜ ao: Como ∇f ´ e L-Lipschitz, sabe-se que 2 f (y) − f (x) − ∇f (x) T (y − x)
≤ L
2 ky − xk 2 , ∀ x, y ∈ R n . (1.15) Fazendo y = x k+1 e x = x k , tem-se
f (x k+1 ) − f(x k ) − ∇f (x k ) T (x k+1 − x k ) ≤ L
2 kx k+1 − x k k 2 . (1.16) Observe que
∇f (x k ) T (x k+1 − x k ) = −t k ∇f(x k ) T B k ∇f(x k )
≤ −t k λ min (B k ) k∇f (x k )k 2 (1.17) Por outro lado,
L
2 kx k+1 − x k k 2 = L
2 kt k B k ∇f (x k )k 2
≤ L
2 t 2 k kB k k 2 k∇f(x k )k 2
≤ L
2 t 2 k (λ max (B k )) 2 k∇f (x k )k 2
(1.18)
Combinando (1.16), (1.17) e (1.18), tem-se que f (x k+1 ) − f (x k ) ≤ L
2 t 2 k (λ max (B k )) 2 k∇f(x k )k 2 − t k λ min (B k ) k∇f(x k )k 2
= −t k
λ min (B k ) − L
2 (λ max (B k )) 2 t k
k∇f(x k )k 2 . Logo,
f (x k ) − f (x k+1 ) ≥ t k
λ min (B k ) − L
2 (λ max (B k )) 2 t k
k∇f (x k )k 2
≥ t k
c 0 − L 2 c 2 1 t k
k∇f (x k )k 2 .
Observa¸ c˜ ao 1.25. A melhor estimativa que se pode obter para a desigualdade (1.14) ´ e f (x k ) − f (x k+1 ) ≥ 1
2L
λ min (B k ) λ max (B k )
2
k∇f (x k )k 2 ≥ 1 2L
c 2 0
c 2 1 k∇f (x k )k 2 .
2 Ver Lema 1.2.3 em Nesterov [23].
De fato, defina
h(t) = t
c 0 − L 2 c 2 1 t
.
Ao maximizar a fun¸ c˜ ao h (o que ´ e equivalente a minimizar −h), obt´ em-se o maior va- lor que a fun¸ c˜ ao h : R → R pode assumir. Como −h(t) ´ e uma fun¸ c˜ ao convexa, seu minimizador ´ e solu¸ c˜ ao da equa¸ c˜ ao
−h 0 (t) = Lc 2 1 t − c 0 = 0.
Portanto, tem-se que
t ∗ = c 0 Lc 2 1
´ e maximizador de h, e consequentemente
h(t ∗ ) = c 2 0 2Lc 2 1
´ e o m´ aximo de h.
Observa¸ c˜ ao 1.26. Note que a estimativa de decr´ escimo da fun¸ c˜ ao f na k-´ esima itera¸ c˜ ao est´ a relacionada com o n´ umero de condi¸ c˜ ao da matriz B k . Como
f (x k ) − f (x k+1 ) ≥ 1 2L
λ min (B k ) λ max (B k )
2
k∇f (x k )k 2 = 1
2L (cond(B k )) −2 k∇f (x k )k , tem-se que quanto menor o n´ umero de condi¸ c˜ ao da matriz B k , maior tende a ser o decr´ escimo de f.
Lema 1.27. Suponha que (H1) e (H2) sejam satisfeitas. Dado x 0 ∈ R n , seja (x k ) ⊂ R n a sequˆ encia gerada pelo Algoritmo 1.1 a partir de x 0 . Considere os seguintes casos para o c´ alculo de t k :
(a) t k = α 2c 0
Lc 2 1 , com α ∈ (0, 1) (passo constante);
(b) t k ´ e obtido pela Busca de Armijo, satisfazendo
f(x k ) ≥ f(x k + t k d k ) − µt k ∇f (x k ) T d k , (1.19) com µ ∈ (0, 1);
(c) t k ´ e obtido pela Busca de Goldstein-Armijo, satisfazendo
0 < −µ 1 t k ∇f(x k ) T d k ≤ f (x k ) − f(x k + t k d k ) ≤ −µ 2 t k ∇f(x k ) T d k , com 0 < µ 1 < µ 2 < c c
01