• Nenhum resultado encontrado

Características dos Métodos Apresentados

Considere o Método Barreira Logarítmica, o Método Primal-Dual Barreira Logarítmica Preditor- Corretor, e nossa variação do Método Primal-Dual Barreira Logarítmica Preditor-Corretor, como BP_BL, BP_InteriorPC e BP_InteriorPC1, respectivamente. Sendo Df a diferença relativa do valor da função objetivo do passo atual com o passo anterior e MPC referente ao Método Preditor-Corretor. Apresentamos nas tabelas (5.1) e (5.2) um resumo dos métodos apresentados.

Tabela 5.1: Resumo dos Métodos.

Método BP_Interior BP_BL

Conjunto de x, y e z x e y

variáveis

Com condição de Sem condição de

Propriedades complementaridade complementaridade

e sem direções de e sem direções de

correções do MPC correções do MPC

Infactibilidade Primal: Infactibilidade Primal: Critérios de ‖𝑏 − 𝐴𝑥 − 𝛿 2𝑦‖ 2 1 + ‖𝑥‖2 < Featol; ‖𝑏 − 𝐴𝑥 − 𝛿2𝑦‖2 1 + ‖𝑥‖2 < Featol; Parada Infactibilidade do Dual: Infactibilidade do Dual:

⃦ ⃦ ⃦𝑐+ 𝛾 2𝑥 − 𝑧 − 𝐴𝑇𝑦⃦⃦ ⃦2 1 + ‖𝑦‖2 < Featol; ⃦ ⃦ ⃦𝑐+ 𝛾 2𝑥 − 𝜇𝑋1𝑒 − 𝐴𝑇𝑦⃦⃦ ⃦2 1 + ‖𝑦‖2 < Featol.

Gap de Dualidade: ou se:

𝑧𝑇𝑥

CAPÍTULO 5. DESENVOLVIMENTO DOS MÉTODOS PROPOSTOS 38 Tabela 5.2: Resumo dos Métodos.

Método BP_InteriorPC BP_InteriorPC1

Conjunto de x, y e z x, y, z e p

variáveis

Com condição de Com condição de

Propriedades complementaridade complementaridade

e com direções de e com direções de

correções do MPC correções do MPC

Infactibilidade Primal: Infactibilidade Primal: Critérios de ‖𝑏 − 𝐴𝑥 − 𝛿 2𝑦‖ 2 1 + ‖𝑥‖2 < Featol; ‖𝑏 − 𝐴𝑥 − 𝛿2𝑦‖2 1 + ‖𝑥‖2 < Featol; Parada Infactibilidade do Dual: Infactibilidade do Dual:

⃦ ⃦ ⃦𝑐+ 𝛾 2𝑥 − 𝑧 − 𝐴𝑇𝑦⃦⃦ ⃦2 1 + ‖𝑦‖2 < Featol; ⃦ ⃦ ⃦𝑐+ 𝛾 2𝑥 − 𝑧 − 𝐴𝑇𝑦⃦⃦ ⃦2 1 + ‖𝑦‖2 < Featol; Gap de Dualidade: ‖𝑝 − 𝛿𝑦‖2 1 + ‖𝑝‖2 < Featol; 𝑧𝑇𝑥

1 + ‖𝑥‖2 < PDGapTol. Gapde Dualidade:

𝑧𝑇𝑥

1 + ‖𝑥‖2 < PDGapTol.

No próximo capítulo, vamos aplicar os métodos desenvolvidos até agora, com o objetivo de obter representações eficientes de sinais, em dicionários específicos.

Capítulo 6

Testes Computacionais

A seguir, apresentamos os resultados obtidos para o sinais TwinSine-1, WernerSorrows, Carbon,

TwinSine-2, FM-Cosine, Gong, Dynamic-0, Dynamic-2 e MultiGong, que foram utilizados para o Mé-

todo BP_Interior de Chen [6], e para os nossos métodos modificados de BP_Interior: Método Barreira Logarítmica, Método Primal-Dual Barreira Logarítmica Preditor-Corretor, e nossa variação do Método Primal-Dual Barreira Logarítmica Preditor-Corretor, os quais serão chamados BP_BL, BP_InteriorPC e BP_InteriorPC1, respectivamente.

Os experimentos numéricos foram implementados em Matlab R2010a, com o sistema operacional Linux, distribuição Ubuntu 11.04, processador Intel ® core i7 2600, 3.4 Ghz, 4 GB de memória DDR3,

RAM clock 1333Mhz.

Na tabela a seguir listamos os sinais utilizados, com seus respectivos parâmetros, que são números ou vetores linha, o nome do dicionário que vamos utilizar para a representação e o tamanho do problema.

Tabela 6.1: Dados do problema.

Sinal Tamanho do Dicionário par1 par2 par3

Problema TwinSine-1 256 DCT 4 0 0 WernerSorrows 1024 CP 6 seno 0 Carbon 1024 WP 10 qmf 0 TwinSine-2 256 DCT 4 0 0 FM-Cosine 1024 CP 6 seno 0 Gong 1024 CP 10 seno 0

Dynamic-0 256 DCT e DIRAC MekeList(4,0) 0 0

Dynamic-2 256 DCT e DIRAC MekeList(4,0) 0 0

MultiGong 256 MDC 8 1 0

As Tabelas 6.2, 6.3 e 6.4 mostram os resultados obtidos para BP_Interior, BP_BL, BP_InteriorPC e BP_InteriorPC1.

Nas Tabelas 6.2 e 6.3 temos os valores da função objetivo, ou seja, o mínimo valor de |𝛼|1 em (2.3), e o tempo decorrido até a obtenção da convergência, sendo que FO correponde ao valor da função objetivo e o tempo é dado em segundos.

CAPÍTULO 6. TESTES COMPUTACIONAIS 40 Tabela 6.2: Resultados computacionais para a função objetivo e tempo de processamento.

BP_Interior BP_BL

Sinal FO Tempo FO Tempo

TwinSine-1 2,00933e+00 0,1 2,01365e+00 0,8

WernerSorrows 5,07482e+02 249,2 5,17296e+02 78,0

Carbon 6,00247e+00 19,8 6,01948e+00 707,3

TwinSine-2 2,01150e+00 0,1 2,01425e+00 1,4

FM-Cosine 2,52872e+02 237,3 2,54593e+02 102,5

Gong 4,73171e+00 1924,5 4,73566e+00 2507,2

Dynamic-0 6,01964e+00 0,3 6,01029e+00 3,8

Dynamic-2 4,03672e+02 0,4 4,88308e+02 28,7

MultiGong 2,43810e+01 5,6 2,54105e+01 15,8

Tabela 6.3: Resultados computacionais para a função objetivo e tempo de processamento. BP_InteriorPC BP_InteriorPC1

Sinal FO Tempo FO Tempo

TwinSine-1 2,00934e+00 0,1 2,00934e+00 0,1

WernerSorrows 5,07587e+02 130,0 5,07576e+02 124,1

Carbon 6,00003e+00 19,6 6,00003e+00 20,2

TwinSine-2 2,01108e+00 0,1 2,01108e+00 0,1

FM-Cosine 2,52885e+02 210,9 2,52896e+02 208,5 Gong 4,73088e+00 3501,3 4,72132e+00 11587,9

Dynamic-0 6,01902e+00 0,4 6,01907e+00 0,5

Dynamic-2 4,02187e+02 0,7 4,02187e+02 0,7

MultiGong 2,44009e+01 7,2 2,43895e+01 7,3

Na Tabela 6.4 são apresentados o número de iterações realizadas por cada método, e o número de iterações realizadas pelo Método dos Gradientes Conjugados. Temos que ItGC corresponde ao número de iterações do Método dos Gradientes Conjugados.

CAPÍTULO 6. TESTES COMPUTACIONAIS 41 Tabela 6.4: Número de iterações dos métodos.

BP_Interior BP_BL BP_InteriorPC BP_InteriorPC1

Sinal It ItGC It ItGC It ItGC It ItGC

TwinSine-1 11 59 24 1745 9 90 9 90 WernerSorrows 18 20883 91 6687 11 10850 11 10520 Carbon 8 85 35 4722 6 99 6 99 TwinSine-2 9 43 24 2950 9 97 9 98 FM-Cosine 17 20098 67 8862 12 17891 12 18026 Gong 21 11510 29 15377 19 21681 23 71812 Dynamic-0 7 40 24 3910 5 54 5 54 Dynamic-2 7 52 220 29022 7 91 7 91 MultiGong 19 853 57 11088 15 1097 17 1457

A seguir ilustramos a relação entre o número de iterações e o valor da função objetivo, obtidos nos métodos implementados, com os sinais da Tabela 6.1.

CAPÍTULO 6. TESTES COMPUTACIONAIS 42

Figura 6.2: Valores da função objetivo referentes ao sinal WernerSorrows.

CAPÍTULO 6. TESTES COMPUTACIONAIS 43

Figura 6.4: Valores da função objetivo referentes ao sinal Carbon.

CAPÍTULO 6. TESTES COMPUTACIONAIS 44

Figura 6.6: Valores da função objetivo referentes ao sinal TwinSine-2.

CAPÍTULO 6. TESTES COMPUTACIONAIS 45

Figura 6.8: Valores do FM-Cosine referentes até a 23ª iteração.

CAPÍTULO 6. TESTES COMPUTACIONAIS 46

Figura 6.10: Valores da função objetivo referentes ao sinal Dynamic-0.

CAPÍTULO 6. TESTES COMPUTACIONAIS 47

Figura 6.12: Valores do sinal Dynamic-2 referentes até a 15ª iteração.

CAPÍTULO 6. TESTES COMPUTACIONAIS 48

Figura 6.14: Valores do sinal MultiGong referentes até a 24ª iteração.

Nota-se que BP_Interior, BP_InteriorPC e BP_InteriorPC1 possuem desempenho computacional equivalente em relação ao valor da função objetivo. BP_BL não teve um resultado satisfatório em relação aos outros, obtendo um valor da função objetivo melhor apenas em Dynamic-0, mas tendo um tempo computacional bem maior. A diferença dos valores alcançados para a função objetivo deve-se ao fato do critério de convergência ser diferente para BP_BL.

O tempo de convergência para BP_Interior, BP_InteriorPC e BP_InteriorPC1 foram similares, sendo as diferenças mais significativas obtidas para o sinal WernerSorrows, onde BP_Interior obteve 249, 2 se- gundos para a convergência, praticamente o dobro de tempo que BP_InteriorPC (130, 0 segundos) e BP_InteriorPC1 (124, 1 segundos); e para o sinal Gong, obtendo tempos bem distintos para os três mé- todos em questão, para BP_Interior obtemos 1924, 5 segundos para a convergência, para BP_InteriorPC 3501, 3 segundos, e BP_InteriorPC1 11587, 9 segundos, um número bem maior em relação aos anteriores. O tempo obtido por BP_BL foi menor que dos outros métodos apenas para WernerSorrows e FM-Cosine, contudo o valor da função objetivo obtida, não foi satisfatória.

Observamos claramente nas figuras anteriores de (6.1) à (6.13), que a função objetivo tem um decres- cimento mais lento em BP_BL e um maior decrescimento em BP_InteriorPC e BP_InteriorPC1. Isso é constatado na Tabela 6.4.

Quando o número de iterações realizadas por BP_InteriorPC não foi menor que o número realizado por BP_Interior, essa mostrou-se igual. Já BP_InteriorPC1 obteve mais iterações que BP_Interior apenas para o sinal Gong, com uma diferença de apenas duas iterações.

CAPÍTULO 6. TESTES COMPUTACIONAIS 49

Figura 6.15: Número de iterações do Método dos Gradientes Conjugados a cada iteração do método.

Em relação ao Método dos Gradientes Conjugados, podemos notar pela Figura (6.15), referente ao sinal Gong e sua representação através de BP_Interior, e pelos resultados obtidos em [6], que o número de iterações do Método dos Gradientes Conjugados aumenta constantemente. Isso ocorre porque a solução inicial está próxima do centro da região factível. Assim, nas iterações iniciais, o sistema de equações (4.4) é bem condicionado e o método converge rapidamente. Mas, como 𝑥𝑇𝑧 converge para 0, 𝑧/𝑥 convergirá para infinito ou 0. Assim, a matriz 𝐷 = (︀

𝑋−1𝑍+ 𝛾2𝐼)︀

e a matriz (︁

𝐴𝐷𝐴𝑇 + 𝛿2𝐼)︁ tornam-se mais mal-

condicionadas, e o método demora para convergir. Nos métodos implementados, não pré-condicionamos a matriz A. Por isso, obtivemos grande número de iterações no Método dos Gradientes Conjugados.

Capítulo 7

Conclusões e Perspectivas Futuras

7.1

Conclusões

Nesse trabalho apresentamos o problema de minimização Basis Pursuit, tendo como motivação sua aplicação em problemas envolvendo processamento de sinais.

Reescrevemos o problema Basis Pursuit como um problema de programação linear em sua forma padrão por meio de associações.

Consideramos a reformulação do problema como um problema quadrático e introduzimos os métodos Barreira Logarítmica, Primal-Dual Barreira Logarítmica Preditor-Corretor e uma variante deste último, os comparando com o método Primal-Dual Barreira Logarítmica implementado por Chen.

Os métodos Primal-Dual Barreira Logarítmica Preditor-Corretor e sua variante apresentaram resul- tados satisfatórios em relação ao método implementado por Chen.

O valor da função objetivo foi muito similar para os métodos Primal-Dual Barreira Logarítmica, Primal-Dual Barreira Logarítmica Preditor-Corretor e sua variante. O método Barreira Logarítmica não obteve resultados satisfatórios comparado aos outros métodos. Isso já era esperado, visto que não estamos considerando a condição de complementaridade.

Em relação ao tempo de convergência, também obtivemos tempos similares, com diferenças signifi- cativas em apenas dois sinais para os métodos Primal-Dual Barreira Logarítmica, Primal-Dual Barreira Logarítmica Preditor-Corretor e sua variante. Para o método Barreira Logarítmica, quando seu tempo de convergência foi menor em comparação aos outros métodos, o valor da função objetivo não foi satisfatório. O número de iterações realizadas pelo método Primal-Dual Barreira Logarítmica Preditor-Corretor foi menor ou igual as realizadas pelo método Primal-Dual Barreira Logarítmica. A variante do método Primal-Dual Barreira Logarítmica Preditor-Corretor obteve mais iterações que o método Primal-Dual Barreira Logarítmica em apenas um sinal.

Portanto, obtivemos um melhor desempenho com as direções afim-escala, direção de centragem e di- reção de correção do Método Preditor-Corretor, e um resultado menos eficiente quando não consideramos

CAPÍTULO 7. CONCLUSÕES E PERSPECTIVAS FUTURAS 51 a condição de complementaridade. E apesar do método Primal-Dual Barreira Logarítmica Preditor- Corretor e sua variante terem obtido resultados muito similares, o método Primal-Dual Barreira Logarít- mica Preditor-Corretor obteve os melhores resultados, sendo assim o mais eficiente.

7.2

Perspectivas Futuras

Com a finalidade de obter melhor desempenho, pretendemos pré-condicionar a matriz de interesse, a fim de obter um número menor de iterações no Método dos Gradientes Conjugados.

Também pretendemos verificar a aplicação dos métodos para dicionários diferentes e de maior dimen- são, verificando se esta abordagem é viável em aplicações reais.

Apêndice A

Método dos Gradientes Conjugados

Sendo 𝐴 uma matriz simétrica e definida positiva de ordem 𝑛, vamos encontrar 𝑥*

∈ R, solução do seguinte sistema:

𝐴𝑥= 𝑏. (A.1)

Como 𝐴 é definida positiva, 𝐴 é invertível, logo:

𝑥*= 𝐴−1𝑏, (A.2)

é a única solução de (A.1).

Sabemos que a fatoração de Cholesky fornece uma solução numérica para a equação anterior.

Vamos apresentar os Métodos dos Gradientes, que são convenientes quando a matriz definida positiva do sistema linear é esparsa.

Considere o seguinte funcional:

𝐽 : R𝑛→ R, 𝑥 → 𝐽(𝑥) = 1 2 (︁ (𝐴𝑥)𝑇 𝑥)︁− 𝑏𝑇𝑥.

Primeiramente vamos mostrar que o problema de minimização: Encontrar 𝑥*

∈ R𝑛 tal que,

𝐽(𝑥*) = 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 {𝐽 (𝑥) , 𝑥 ∈ R𝑛} , é equivalente a resolver o sistema linear definido-positivo:

Encontrar 𝑥*

∈ R𝑛 solução de

𝐴𝑥= 𝑏.

Para mostrar tal equivalência, vamos inicialmente caracterizar o ponto crítico do funcional 𝐽, isto é, ∇𝐽(𝑥*) = 0

R𝑛. Para isto, vamos calcular a primeira variação de 𝐽 no ponto 𝑥 ∈ R𝑛na direção do vetor

𝑣. 𝐽(𝑥 + 𝑡𝑣) = 1 2(𝐴 (𝑥 + 𝑡𝑣)) 𝑇(𝑥 + 𝑡𝑣) −(︁ 𝑏𝑇(𝑥 + 𝑡𝑣))︁ = 1 2 [︁ (𝐴𝑥)𝑇 𝑥+ 𝑡(︁(𝐴𝑥)𝑇 𝑣)︁+ 𝑡(︁(𝐴𝑣)𝑇 𝑥)︁+ 𝑡2(︁(𝐴𝑣)𝑇 𝑣)︁]︁− 𝑏𝑇𝑥 − 𝑡(︁𝑏𝑇𝑣)︁. 52

APÊNDICE A. MÉTODO DOS GRADIENTES CONJUGADOS 53 𝐽(𝑥 + 𝑡𝑣) = 1 2 [︁ (𝐴𝑥)𝑇𝑥+ 2𝑡(︁ (𝐴𝑥)𝑇𝑣)︁ + 𝑡2(︁ (𝐴𝑣)𝑇 𝑣)︁]︁ − 𝑏𝑇𝑥 − 𝑡(︁𝑏𝑇𝑣)︁.

Derivando em relação a t, obtemos:

𝑑 𝑑𝑡{𝐽(𝑥 + 𝑡𝑣)} = (𝐴𝑥) 𝑇 𝑣+ 𝑡(︁(𝐴𝑣)𝑇𝑣)︁− 𝑏𝑇𝑣, fazendo 𝑡 = 0: 𝐽(𝑥) (𝑣) = (𝐴𝑥)𝑇 𝑣 − 𝑏𝑇𝑣, 𝐽(𝑥) (𝑣) = (𝐴𝑥 − 𝑏)𝑇𝑣,

que corresponde a primeira variação de 𝐽 no ponto 𝑥 na direção do vetor 𝑣. Sabemos que 𝑥* é um ponto crítico de 𝐽 se, e somente se,

𝐽(𝑥*) (𝑣) = (𝐴𝑥*− 𝑏)𝑇𝑣= 0, ∀𝑣 ∈ R𝑛,

portanto, o ponto crítico 𝑥* de 𝐽 é a solução da equação

∇𝐽(𝑥) = 𝐴𝑥 − 𝑏 = 0R𝑛⇐⇒ 𝐴𝑥= 𝑏.

Para classificar o ponto crítico 𝑥* de 𝐽, devemos calcular a segunda variação de 𝐽.

É fácil ver que

𝐽′′(𝑥, 𝑣) (𝑤) = (𝐴𝑤)𝑇 𝑣,

é a segunda variação de 𝐽 no ponto 𝑥 na direção de 𝑤, uma vez que:

𝐽′′(𝑥, 𝑣) (𝑤) = 𝑑 𝑑𝑡

{︀

𝐽(𝑥 + 𝑡𝑣) (𝑣)}︀ 𝑡=0.

Note que 𝐻 (𝑥) = 𝐴 é a matriz Hessiana de 𝐽. Como 𝐽′′(𝑥, 𝑣) (𝑤) é independente da variável 𝑥,

dizemos que 𝐽 é um Funcional Quadrático.

Portanto 𝑥* é um ponto de mínimo de 𝐽, uma vez que 𝐽′′(𝑥, 𝑣) (𝑤) = (𝐴𝑣)𝑇𝑣 >0, já que 𝐴 é definida positiva.

Vamos construir métodos numéricos para encontrar o mínimo de 𝐽, obtendo assim uma solução numérica para o sistema linear definido positivo 𝐴𝑥 = 𝑏.

A.2

Método da Máxima Descida

A partir de uma aproximação inicial, que denotamos por 𝑥(0) ∈ R𝑛, construímos uma sequência minimizante{︁

𝑥(𝑘)}︁para o funcional 𝐽, tal sequência caminha na direção de −∇𝐽(︁𝑥(𝑘))︁= 𝑏−𝐴𝑥(𝑘)= 𝑟(𝑘).

Dessa forma teremos:

𝑥(𝑘+1)= 𝑥(𝑘)+ 𝜆𝑟(𝑘),

APÊNDICE A. MÉTODO DOS GRADIENTES CONJUGADOS 54 Vamos escolher um 𝜆 de modo que 𝐽(︁

𝑥(𝑘+1))︁< 𝐽(︁𝑥(𝑘))︁e que 𝐽(︁𝑥(𝑘+1))︁= min

𝜆 {︁

𝐽(︁𝑥(𝑘)+ 𝜆𝑟(𝑘))︁}︁,

dessa forma vamos determinar 𝜆𝑘∈ R da seguinte forma:

𝑑 𝑑𝜆𝐽

(︁

𝑥(𝑘)+ 𝜆𝑟(𝑘))︁.

Resolvendo a equação acima, chegaremos a:

𝜆𝑘= (︁ 𝑟(𝑘))︁𝑇𝑟(𝑘) (︀ 𝐴𝑟(𝑘))︀𝑇 𝑟(𝑘).

Como 𝐴 é uma matriz definida positiva, temos que 𝜆𝑘>0. Este fato garante que estamos caminhando sempre na direção correta.

A seguir descrevemos o método da máxima descida, que também é conhecido como Método do Gra- diente Otimizado.

Método da máxima descida

Dado 𝑥0 ∈ R𝑛 uma aproximação inicial. Para 𝑘 = 0, 1, 2, 3... 𝑟(𝑘)= 𝑏 − 𝐴𝑥(𝑘); 𝜆𝑘= (︁ 𝑟(𝑘))︁𝑇𝑟(𝑘) (︀ 𝐴𝑟(𝑘))︀𝑇 𝑟(𝑘); 𝑥(𝑘+1)= 𝑥(𝑘)+ 𝜆𝑘𝑟(𝑘). fim

Para maiores detalhes do método ver [19].

A.3

Método dos Gradientes Conjugados

Agora, vamos considerar minimizações sucessivas do funcional 𝐽 ao longo de direções que não são necessariamente as direções dos resíduos, como feito no método anterior.

Definindo as direções por 𝑝𝑘, onde 𝑘 indica a iteração correspondente, teremos:

𝐽(︁𝑥(𝑘+1))︁= min 𝜆 {︁ 𝐽(︁𝑥(𝑘)+ 𝜆𝑝(𝑘))︁}︁, com 𝑥(𝑘+1)= 𝑥(𝑘)+ 𝜆𝑘𝑟(𝑘), e sendo 𝜆𝑘 obtido da mesma do método do gradiente otimizado:

APÊNDICE A. MÉTODO DOS GRADIENTES CONJUGADOS 55 𝜆𝑘= (︁ 𝑝(𝑘))︁𝑇𝑝(𝑘) (︀ 𝐴𝑝(𝑘))︀𝑇 𝑝(𝑘).

Nosso objetivo é determinar direções 𝑝(𝑘),de modo que em 𝑛 passos possamos obter a convergência

do processo, sendo 𝑛 a dimensão do sistema linear.

Neste método primeiramente vamos buscar direções conseguintes 𝑝(𝑘) e 𝑝(𝑘+1) A-conjugadas, ou seja,

(︁

𝐴𝑝(𝑘))︁𝑇 𝑝(𝑘+1) = 0,

com 𝑝(0)= −∇𝐽(︁

𝑥(0))︁= 𝑟(0).

As direções conseguintes são dadas por:

𝑝(𝑘+1)= 𝑟(𝑘+1)+ 𝛽𝑘𝑝(𝑘),

onde 𝛽𝑘 é obtido de forma que 𝑝(𝑘) e 𝑝(𝑘+1) sejam A-conjugadas, o que ocorre quando:

𝛽𝑘= − (︁ 𝐴𝑟(𝑘+1))︁𝑇 𝑝(𝑘) (︀ 𝐴𝑝(𝑘))︀𝑇 𝑝(𝑘) = − (︁ 𝑟(𝑘+1))︁𝑇 𝐴𝑝(𝑘) (︀ 𝐴𝑝(𝑘))︀𝑇 𝑝(𝑘) . p[k] wk= h p(k)i p[k+1] r[k+1] w⊥k

Figura A.1: Projeção ortogonal do resíduo sobre o complemento ortogonal.

Assim, como podemos visualizar na Figura A.1, a direção 𝑝(𝑘+1)é a projeção ortogonal do resíduo 𝑟𝑘+1 sobre o complemento ortogonal 𝑤

APÊNDICE A. MÉTODO DOS GRADIENTES CONJUGADOS 56 Uma forma mais econômica de escrever os parâmetros 𝜆𝑘, 𝛽𝑘e as demonstrações que {𝑟(0), 𝑟(1), ..., 𝑟(𝑘), ...} é um conjunto ortogonal e {𝑝(0), 𝑝(1), ..., 𝑝(𝑘), ...} é um conjunto A-conjugado, com a finalidade de mos- trar que o Método dos Gradientes Conjugados converge para a solução exata do sistema linar definido positivo em 𝑛 passos, encontra-se em [19], assim como mais detalhes do método.

Método dos Gradientes Conjugados

Dado 𝑥0 ∈ R𝑛 uma aproximação inicial.

𝑟(0) = 𝑏 − 𝐴𝑥(0); 𝑝(0)= 𝑟(0). Para 𝑘 = 0, 1, 2, 3... 𝜆𝑘= (︁ 𝑝(𝑘))︁𝑇 𝑟(𝑘) (︀ 𝐴𝑝(𝑘))︀𝑇 𝑝(𝑘); 𝑥(𝑘+1)= 𝑥(𝑘)+ 𝜆𝑘𝑝(𝑘); 𝑟(𝑘+1) = 𝑟(𝑘)− 𝜆𝑘𝐴𝑝(𝑘); 𝛽𝑘= − (︁ 𝐴𝑝(𝑘))︁𝑇𝑟(𝑘+1) (︀ 𝐴𝑝(𝑘))︀𝑇 𝑝(𝑘) ; 𝑝(𝑘+1)= 𝑟(𝑘+1)+ 𝛽𝑘𝑝(𝑘). fim

O método converge em no máximo 𝑛 passos para a solução exata somente na ausência de erros de arredondamento. Logo, o método pode falhar ou demorar demais dependendo da matriz.

Apêndice B

Método de Newton

Apresentamos o Método de Newton, que foi utilizado para resolver sistemas de equação não lineares nos métodos desenvolvidos.

Método de Newton para uma variável

Considere 𝑓 (𝑥) uma função contínua em [𝑎, 𝑏], intervalo que contém uma raiz da equação 𝑓 (𝑥) = 0. Transforma-se esta equação 𝑓 (𝑥) = 0 em uma equação equivalente 𝑥 = 𝜙 (𝑥) e a partir de uma aproximação inicial 𝑥0 gera-se a sequência {︁

𝑥𝑘}︁ de aproximações para 𝑥* (raiz da equação 𝑓 (𝑥) = 0)

pela relação 𝑥𝑘+1= 𝜙(︁𝑥𝑘)︁, pois a função 𝜙 (𝑥) é tal que 𝑓 (𝑥*) = 0 se e somente se 𝜙 (𝑥*) = 𝑥*.

A forma geral das funções de iteração 𝜙 (𝑥) é 𝜙 (𝑥) = 𝑥 + 𝐴 (𝑥) 𝑓 (𝑥) , tendo como condição que em

𝑥*, ponto fixo de 𝜙 (𝑥) (ou seja, 𝜙 (𝑥*) = 𝑥*), se tenha 𝐴 (𝑥*) ̸= 0.

Escolhe-se para a função de iteração a função 𝜙 (𝑥) tal que 𝜙(𝑥*) = 0.

Dessa forma, dada a equação 𝑓 (𝑥) = 0 e partindo da forma geral para 𝜙 (𝑥), queremos obter a função

𝐴(𝑥) tal que 𝜙(𝑥*) = 0.

Como feito em [21], temos:

𝜙(𝑥) = 𝑥 + 𝐴 (𝑥) 𝑓 (𝑥) ⇒ ⇒ 𝜙(𝑥) = 1 + 𝐴(𝑥) 𝑓 (𝑥) + 𝐴 (𝑥) 𝑓(𝑥) ⇒ 𝜙(𝑥*) = 1 + 𝐴(𝑥*) 𝑓 (𝑥*) + 𝐴 (𝑥*) 𝑓(𝑥*) ⇒ 𝜙(𝑥*) = 1 + 𝐴 (𝑥*) 𝑓(𝑥*) . Assim, 𝜙(𝑥*) = 0 ⇔ 1 + 𝐴 (𝑥*) 𝑓(𝑥*) = 0 ⇒ 𝐴 (𝑥*) = −1 𝑓(𝑥*), onde tomamos 𝐴 (𝑥) = −1 𝑓(𝑥) . A função de iteração 𝜙 (𝑥) = 𝑥 − 𝑓(𝑥)

𝑓(𝑥) será tal que 𝜙

(𝑥*) = 0, pois como podemos verificar:

𝜙(𝑥) = 1 − (𝑓(𝑥))2− 𝑓(𝑥) 𝑓′′(𝑥) (𝑓(𝑥))2 = 𝑓(𝑥) 𝑓′′(𝑥) (𝑓(𝑥))2 e, como 𝑓 (𝑥*) = 0, 𝜙(𝑥*) = 0, sendo 𝑓(𝑥*) ̸= 0.

Dessa forma, a sequência {︁

𝑥𝑘+1}︁ será determinada por 𝑥𝑘+1= 𝑥𝑘𝑓

(︁

𝑥𝑘)︁ 𝑓(𝑥𝑘). A seguir apresentamos uma motivação geométrica do método.

APÊNDICE B. MÉTODO DE NEWTON 58 Dado o ponto (︁

𝑥𝑘, 𝑓(︁𝑥𝑘)︁)︁ traçamos a reta 𝑅𝑘(𝑥) tangente à curva, que é definida pela equação

𝑦= 𝑓 (𝑥), neste ponto:

𝑅𝑘(𝑥) = 𝑓 (︁

𝑥𝑘)︁+ 𝑓′(︁𝑥𝑘)︁ (︁𝑥 − 𝑥𝑘)︁.

𝑅𝑘(𝑥) é um modelo linear que aproxima a função 𝑓 (𝑥) em uma vizinhança de 𝑥𝑘. A raiz de 𝑅𝑘(𝑥) = 0 é obtida quando 𝑥 = 𝑥𝑘

𝑓(︁𝑥𝑘)︁

𝑓(𝑥𝑘). Prosseguimos cosiderando 𝑥

𝑘+1 = 𝑥.

Figura B.1: Método de Newton (Extraída de [21]).

De [21], temos o teorema que nos dá as condições necessárias para tal método convergir. Nesse livro podemos encontrar o algoritmo do método com maiores detalhes.

Teorema B.0.1. Sejam 𝑓 (𝑥) , 𝑓(𝑥) e 𝑓′′(𝑥) contínuas num intervalo 𝐼 que contém a raiz 𝑥 = 𝑥* de

𝑓(𝑥) = 0. Suponha que 𝑓(𝑥*) ̸= 0. Então existe um intervalo ¯𝐼 ⊂ 𝐼, contendo a raiz 𝑥*, tal que, se 𝑥0 ∈ ¯𝐼, a sequência {︁𝑥𝑘}︁gerada pela fórmula recursiva 𝑥𝑘+1 = 𝑥𝑘𝑓

(︁

𝑥𝑘)︁

𝑓(𝑥𝑘) converge para a raiz.

Método de Newton para várias variáveis

Dada uma função não linear 𝐹 : 𝐷 ⊂ R𝑛→ R𝑛, 𝐹 = (𝑓

1, ..., 𝑓𝑛)𝑇, o objetivo é determinar as soluções para:

𝐹(𝑥) = 0.

Conhecida a aproximação 𝑥𝑘∈ 𝐷, para qualquer 𝑥 ∈ 𝐷, existe 𝑐

𝑖∈ 𝐷, tal que: 𝑓𝑖(𝑥) = 𝑓𝑖 (︁ 𝑥𝑘)︁+ ∇𝑓𝑖(𝑐𝑖)𝑇 (︁ 𝑥 − 𝑥𝑘)︁ com 𝑖 variando de 1 a 𝑛.

APÊNDICE B. MÉTODO DE NEWTON 59 Temos um modelo local linear para 𝑓𝑖(𝑥) em torno de 𝑥𝑘 aproximando ∇𝑓𝑖(𝑐𝑖) por ∇𝑓𝑖

(︁ 𝑥𝑘)︁, 𝑖 variando de 1 a 𝑛. 𝑓𝑖(𝑥) ≈ 𝑓𝑖 (︁ 𝑥𝑘)︁+ ∇𝑓𝑖 (︁ 𝑥𝑘)︁𝑇 (︁𝑥 − 𝑥𝑘)︁.

Dessa forma o modelo local linear para 𝐹 (𝑥) em torno de 𝑥𝑘 é:

𝐹(𝑥) ≈ 𝑅𝑘 (︁

𝑥𝑘)︁= 𝐹(︁𝑥𝑘)︁+ 𝐽(︁𝑥𝑘)︁ (︁𝑥 − 𝑥𝑘)︁.

sendo que 𝐽(︁

𝑥𝑘)︁ refere-se a matriz Jacobiana avaliada em 𝑥𝑘.

A nova aproximação 𝑥𝑘+1 será o valor em que o modelo local linear 𝑅

𝑘(𝑥) se anula. Note que, 𝑅𝑘(𝑥) = 0 ⇔ 𝐽 (︁ 𝑥𝑘)︁ (︁𝑥 − 𝑥𝑘)︁= −𝐹(︁𝑥𝑘)︁. Denotando (︁

𝑥 − 𝑥𝑘)︁por 𝑣𝑘 temos que 𝑥𝑘+1= 𝑥𝑘+ 𝑣𝑘, onde 𝑣𝑘 é solução do sistema linear 𝐽(︁𝑥𝑘)︁𝑣= −𝐹(︁𝑥𝑘)︁.

Determinado o valor de 𝑣, consideramos 𝑥𝑘+1 = 𝑥𝑘+ 𝑣𝑘.

Sob condições adequadas envolvendo o ponto inicial 𝑥0, a função 𝐹 (𝑥) e a matriz Jacobiana 𝐽 (𝑥), a

sequência gerada{︁

𝑥𝑘}︁converge a 𝑥* a uma taxa quadrática.

Maiores detalhes sobre o teorema de convergência encontra-se em [9] e uma explicação mais detalhada sobre o Método de Newton para várias variáveis pode ser encontrado em [21].

Referências Bibliográficas

[1] Test image, Disponível em: <http://www.hlevkin.com/TestImages/classic.htm>, Acesso em: 21 julho 2013.

[2] Richard G Baraniuk, Compressive sensing [lecture notes], Signal Processing Magazine, IEEE 24 (2007), no. 4, 118–121.

[3] Leonardo V Batista, Teoria da Informação, Disponível em: <www.di.ufpb.br/leonardo/ensino>, Acesso em: 12 dez. 2012 (2005).

[4] Daniela Renata Cantane, Métodos de pontos interiores aplicados ao problema de regressão pela norma

Lp, Master’s thesis, ICMC-USP, São Carlos, (2004).

[5] Kristen Michelle Cheman, Optimization Techniques for Solving Basis Pursuit Problems, Master’s thesis, North Carolina State University, (2006).

[6] Scott Shaobing Chen, Basis pursuit, Ph.D. thesis, Stanford University, (1995).

[7] Scott Shaobing Chen, David L Donoho, and Michael A Saunders, Atomizer for matlab5. x, Disponível em: <http://www-stat. stanford. edu/ atomizer>, Acesso em: 15 nov. 2012.

[8] , Atomic decomposition by basis pursuit, SIAM review 43 (2001), no. 1, 129–159.

[9] W. S. Dorn and R. B. Schnabel, Numerical methods for unconstrained optimization and nonlinear

equations, vol. 16, SIAM Classics in Applied Mathematics, (1996).

[10] Philip E Gill, Walter Murray, Dulce B Ponceleon, and Michael A Saunders, Solving reduced KKT

systems in barrier methods for linear and quadratic programming, Tech. report, DTIC Document,

(1991).

[11] Eliana Contharteze Grigoletto, Implementação eficiente dos métodos de pontos interiores especiali-

zados para o problema de regressão pela norma Lp, Master’s thesis, IMECC-UNICAMP, Campinas,

(2011).

[12] Simon Haykin and Barry Van Veen, Sinais e sistemas, Bookman, (2001).

[13] Alexey Izmailov and Mikhail Solodov, Otimização - condições de otimalidade, elementos de análise

convexa e de dualidade, vol. 1, Impa, (2009).

[14] Irvin J Lustig, Roy E Marsten, and David F Shanno, Computational experience with a primal-dual

interior point method for linear programming, Linear Algebra and Its Applications 152 (1991), 191–

222.

REFERÊNCIAS BIBLIOGRÁFICAS 61 [15] , On implementing Mehrotra’s predictor-corrector interior-point method for linear program-

ming, SIAM Journal on Optimization 2 (1992), no. 3, 435–449.

[16] Stephane Mallat, A wavelet tour of signal processing: the sparse way, Elsevier, (2008).

[17] Kevin A McShane, Clyde L Monma, and David Shanno, An implementation of a primal-dual interior

point method for linear programming, ORSA Journal on computing 1 (1989), no. 2, 70–83.

[18] Sanjay Mehrotra, On the implementation of a primal-dual interior point method, SIAM Journal on optimization 2 (1992), no. 4, 575–601.

[19] Petronio Pulino, Algebra Linear e suas Aplicações Notas de Aula, Disponível em: <www. ime. unicamp. br/pulino/ALESA>, Acesso em: 20 mai 2013 (2012).

[20] Cornelis Roos, Tamás Terlaky, and Jean-Philippe Vial, Theory and algorithms for linear optimization:

an interior point approach, Wiley, (1997).

[21] Márcia A Gomes Ruggiero and Vera Lúcia da Rocha Lopes, Cálculo numérico: aspectos teóricos e

computacionais, Makron Books do Brasil, (1997).

[22] Mark Schmidt, Least squares optimization with L1-norm regularization, Project Report, University of British Columbia (2005).

[23] Adriana Schulz, Compressive Sensing-Novos Paradigmas para Aquisição e Compressão de Imagens, Projeto apresentado ao Departamento de Engenharia Eletrônica e de Computação da Escola Po- litécnica da UFRJ como requisito parcial para obtenção do título de Engenheira Eleterônica e de Computação, (2008).

[24] Stephen J Wright, Primal-dual interior-point methods, vol. 54, Society for Industrial and Applied Mathematics, (1987).

Documentos relacionados