Método do gradiente projetado espectral para minimização com restrições de ortogonalidade Tiara Martini Instituto de Matemática, Estatística e Computação Científica (IMECC), Unicamp 1383-859, Campinas, SP E-mail: tiaramartini@gmail.com Juliano de Bem Francisco Departamento de Matemática, UFSC 884-9, Florianópolis, SC E-mail: juliano@mtm.ufsc.br Resumo: Apresentamos um método globalmente convergente e não monótono para minimização com restrições de ortogonalidade. Desenvolvido recentemente por Francisco e Viloche Bazán [12] esse método está baseado nas ideias dos métodos de região de confiança e Levenberg-Marquardt. Dessa maneira, os subproblemas consistem em minimizar um modelo quadrático da função objetivo sujeito ao conjunto de restrições. Outros métodos viáveis são citados, entre eles um método de busca curvilinear e um de minimização ao longo de geodésicas. O desempenho dos métodos quando aplicados ao Problema de Procrustes Ortogonal é ilustrado numericamente. Palavras-chave: Restrições de ortogonalidade, algoritmo não monótono, Método do Gradiente Projetado Espectral, Problema de Procrustes Ortogonal, minimização em variedades de Stiefel 1 Introdução O problema de minimização restrito ao conjunto das matrizes com colunas ortonormais aparece frequentemente em importantes classes de problemas de otimização e, assim como as restrições linear e quadrática, possui uma estrutura especial a ser explorada. Como exemplo, citamos aplicações em otimização polinomial [8], otimização combinatorial [7], problemas de autovalores e análise de componentes principais (PCA) esparsos [2]. De acordo com Wen e Yin [15] é, em geral, um problema do tipo NP-hard. Além disso as restrições de ortogonalidade podem gerar algumas dificuldades: conduzir a muitos mínimos locais; não garantir a convergência para o mínimo global, exceto em casos mais simples; e manter a viabilidade da sequência de pontos, visto que preservar as restrições de ortogonalidade numericamente é muito caro, em geral, envolve uma decomposição SVD. Métodos usais para a resolução dessa classe de problemas constituem em região de confiança [11], busca curvilinear [15], relaxação [5], métodos de Newton e gradiente conjugado ao longo de geodésicas [9]. O método estudado utiliza um parâmetro de regularização que controla o tamanho do passo, à exemplo dos métodos de região de confiança. 2 Minimização com restrições de ortogonalidade Seja h : R m n R n n, m n, definida por h(x) = X T X I, e considere Ω = {X R m n : h(x) = }. Aplicaremos o método para minimização em conjuntos fechados desenvolvido em [12], para resolver o seguinte problema de minimização com restrições de ortogonalidade, 353
min f(x) s.a. X Ω, em que f : R m n R é uma função de classe C 2. Note que, ( g(x) = f X 1 (X) f X n (X) ) R m n, em que X i é a i-ésima coluna de X. Além disso, como a norma de Frobenius X F = n, para todo X Ω, segue que Ω é compacto e g é Lipschitz contínua em Ω. O próximo teorema estabelece uma equivalência entre as Condições KKT do problema (1) e a projeção sobre o espaço tangente de Ω, o que simplifica consideravelmente a verificação de ponto estacionário. Teorema 1 Seja X Ω. São equivalentes: (i) X (X T g(x ) + g(x ) T X ) 2g(X ) = ; (ii) X satisfaz as Condições KKT de (1). 2.1 Algoritmo Considere as constantes < σ min < σ max <, L u L 1 f, para cada k =, 1, 2..., escolha σspc k [σ min, σ max ], e defina { } σ k σρ k spc = 2, se < ρ < L u, (2) L u, caso contrário em que, ρ > é um parâmetro de regularização. Assim, o modelo quadrático Q k ρ : R m n R utilizado será dado por: Q k ρ(x) = traço(g(x k ) T (X X k )) + σk ρ + ρ X X k 2 F. 2 Para o parâmetro σ k spc vamos escolher, sempre que possível, o parâmetro espectral de Barzilai- Borwein [3]. Dessa forma, para dois iterados consecutivos, X k 1 e X k, temos e definimos σbb k = traço((g(x k) T g(x k 1 ) T )(X k X k 1 )) X k X k 1 2, F σ k spc = { 1, para k = min{max{σ k bb, σ min}, σ max }, para k 1. (3) Com estas escolhas, o algoritmo estudado é uma variação do Método Gradiente Projetado Espectral não monótono de [4], para minimização com restrições de ortogonalidade, e a solução do subproblema min s.a. Q k ρ(x) X T X = I X R m n. fica dada por X = UV T, em que UΣV T é a decomposição SVD reduzida da matriz W k = X k 1 ρ + σρ k g(x k ). A não monotonia do método está baseada na técnica de busca linear não monótona proposta em [13] e apresentada na definição a seguir. 1 L f é a constante de Lipschitz associada ao gradiente de f (1) 354
Definição 1 Sejam {x k } k N uma sequência definida por x k+1 = x k + t k d k, d k, t k (, 1), γ (, 1), M Z + e m() =. Para cada k 1, escolha m(k) recursivamente por e defina m(k) min{m(k 1) + 1, M}, f(x l(k) ) = max{f(x k j ) : j m(k)}. Dizemos que x k+1 satisfaz a Condição de Armijo Não Monótona se, f(x k+1 ) f(x l(k) ) + γt k f(x k ) T d k. Assim, podemos agora estabelecer o algoritmo para problemas com restrições de ortogonalidade, que denominamos Gradiente Projetado para minimização em variedades de Stiefel (GPST). Algoritmo 1: Algoritmo para problemas com restrições de ortogonalidade (GPST) Tome X Ω, M Z +, η (, 1], β 1 (, 1 2 ], < σ min < σ max < e 1 < ξ 1 ξ 2 <. Faça k = e m() =. Passo 1. Calcule g(x k ), f(x l(k) ) e faça ρ = σk spc 2 como em (3); Passo 2. Tome σ k ρ definido em (2) e calcule a SVD reduzida de W k : W k = UΣV T ; Passo 3. Defina X k ρ = UV T e encontre X k ρ Ω tal que Q k ρ(x k ρ ) ηq k ρ(x k ρ). Se Q k ρ(x k ρ ) =, declare X k ponto estacionário; Passo 4. Defina Se Ψ k (X) = traço(g(x k ) T (X X k )) + σk ρ 2 X X k 2 F. f(x k ρ ) f(x l(k) ) + β 1 Ψ k (X k ρ ), defina ρ k = ρ, X k+1 = X k ρ, faça k = k + 1 e volte ao Passo 1. Senão, escolha ρ novo [ξ 1 ρ, ξ 2 ρ], faça ρ = ρ novo e volte ao Passo 2. O teorema a seguir garante a convergência global da sequência de iterados {X k }. Teorema 2 Seja X um ponto de acumulação da sequência gerada pelo Algoritmo 1. Então, X é um ponto estacionário do problema (1) que não é ponto de máximo local. Além disso, se o conjunto dos pontos estacionários do problema for finito, então a sequência converge. 3 Resultados Implementamos o algoritmo apresentado e comparamos com métodos tradicionais para resolver problemas de minimização com restrições de ortogonalidade, a saber um método de busca curvilinear (OptStiefel) [15] e um método de minimização em geodésicas (sg min) [1]. Os testes foram executados utilizando Matlab 7.1 em um processador intel CORE i3 com HD de 5 Gb e 4 Gb de memória Ram, sendo utilizadas os seguintes valores para as constantes do Algoritmo 1: β 1 = 1 4, ξ 1 = ξ 2 = 5, σ min = 1 1, L u = L f, σ max = L u e M = 7. Assumiremos convergência quando X k (X T k g(x k) + g(x k ) T X k ) 2g(X k ) F 1 6, limitando o tempo de execução (TMAX) em 6 segundos. 355
3.1 Testes numéricos e problemas Um problema do tipo Procrustes consiste em analisar o processo de preservação de uma transformação a um conjunto de formas. Tal processo envolve rotação e mudança de escala em um certo conjunto de dados, a fim de movê-los para um quadro comum de referência onde possam ser comparados. Os dados conhecidos são dispostos em matrizes e a transformação de rotação a ser determinada é uma matriz com colunas ortonormais. Em um problema de otimização consideramos a definição a seguir. Definição 2 Seja X R m n, n. Dadas as matrizes A R p m, C R n q e B R p q, o problema denominado Problema de Procrustes Ortogonal Ponderado (WOPP) consiste em resolver min AXC B 2 F (4) s.a. X T X = I. Quando C = I diremos que (4) é o Problema de Procrustes Ortogonal (OPP). De acordo com Eldén e Park [1], o problema OPP com m = n é dito balanceado e o caso em que n < m é chamado de não balanceado. Para o caso balanceado, temos uma fórmula fechada para a solução, a saber X = UV T, em que A T B = UΣV T é a decomposição SVD reduzida de A T B. Para o caso não balanceado e para WOPP, a solução é encontrada através de métodos iterativos e, portanto, não é necessariamente o mínimo global. Para os testes numéricos vamos considerar n = q, p = m, A = P SR T e C = QΛQ T, com P e R matrizes ortogonais com entradas randômicas, Q R n n matriz de Householder, Λ R n n diagonal com entradas uniformemente distribuídas no intervalo [ 1 2, 2] e S diagonal definida de modo diferente para cada um dos problemas. Como ponto inicial X vamos gerar uma matriz randômica satisfazendo X Ω. Todos os valores randômicos foram gerados com a função randn do Matlab. Diante da solução exata do problema, vamos criar uma já conhecida solução Q tomando B = AQ C, em que Q R m n é matriz de Householder randômica, para monitorar o comportamento dos iterados X k. Os problemas testados foram retirados de [16] e são descritos abaixo. Problema 1. Os elementos da diagonal de S são gerados através de uma distribuição normal no intervalo [1, 12]. Problema 2. A diagonal de S é dada por: S ii = i + 2r i, em que r i são números aleatórios distribuídos uniformemente no intervalo [, 1]. Problema 3. Cada entrada da diagonal de S é gerada da seguinte maneira: S ii = 1 + 99(i 1) m+1 + 2r i, com r i distribuídos uniformemente no intervalo [, 1]. A Tabela 1 expõe os resultados alcançados para os Problemas 1 e 3. Denotamos o número de iterações por N i e o número de avaliaçõees da função por N a. O resíduo AX k C B 2 F, a norma do erro na solução, X k Q 2 F, e o tempo (em segundos) também são apresentados. Vale ressaltar que o uso da não monotonia foi eficaz, conforme observado na Figura 1. Buscando reduzir o esforço computacional exigido no Algoritmo 1 durante o cálculo da SVD, propomos encontrar essa decomposição por meio de um algorimo alternativo [6]. Como resultado conseguimos uma redução média de 21% no tempo computacional. 4 Considerações finais Apresentamos um método para resolver problemas com restrições de ortogonalidade com convergência global para pontos estacionários. Com intuito de verificar os resultados teóricos e analisar o desempenho do algoritmo apresentado, aplicamos o mesmo no problema WOPP. Apesar da programação ter sido realizada sem rigor numérico, os resultados alcançados foram 356
Problema 1 com m = 5 e q = 7 Me todo Ni Na Tempo Resı duo GPST 2 25 2.23 3.52e-8 31 31 OptStiefel 1.716 3.67e-8 33 134 sg min 3.631 1.88e-8 Problema 3 com m = 5 e q = 2 GPST 18 155 1.85 1.42e-7 715 OptStiefel 662 4.882 4.23e-7 sg min TMAX - Erro 2.59e-9 2.96e-9 1.41e-9 5.19e-8 1.53e-7 - Tabela 1: Desempenho dos me todos 2 1 1 2 1 Norma do erro na solução 1 Resíduo 2 1 4 1 6 1 8 6 1 1 1 8 1 4 1 1 2 3 4 Número de iterações 5 1 1 2 3 4 Número de iterações 5 Figura 1: Comportamento do Algoritmo 1 para o Problema 2 com m = 5 e q = 1 promissores quando comparados com os obtidos via me todos usuais. Logo, o algoritmo estudado pode ser considerado competitivo diante dos me todos ja consolidados. Ao algoritmo, incorporamos a ideia do ca lculo da SVD de uma maneira alternativa. O mesmo apresentou uma melhora significativa no desempenho quando utilizado para problemas em que o nu mero de linhas e muito maior do que o nu mero de colunas. Adicionalmente, ressaltamos que a abordagem apresentada tambe m pode ser utilizada para resolver o Problema de Procrustes Sime trico [14]. Refere ncias [1] T. A. Arias, A. Edelman, S. T. Smith. The geometry of algorithms with ortogonality constraints. SIAM Journal on Matrix Analysis and Applications, v. 2, n. 2, pp. 33-353, 1998. [2] A. Aspremont, L. E. Ghaoui, M. Jordan and G. R. Lanckriet. A direct formulation for sparse pca using semidefinite programming. SIAM Review, n. 49, pp. 434-448, 27. [3] J. Barzilai, J. M. Borwein. Two point step size gradient methods. IMA Journal of Numerical Analysis, v. 8, pp. 141-148, 1988. [4] E. G. Birgin, J. M. Martı nez, M. Raydan. Nonmonotone spectral projected gradient methods on convex sets. SIAM Journal on Optimization, v. 1, pp. 1196-1211, 2. [5] A. W. Bojanczyk and A. Lutoborski. The Procrustes Problem for Orthogonal Stiefel Matrices. SIAM Journal on Scientific Computing, v.21, pp. 1291-134, 1998. 357
[6] Y. Chahlaoui, K. Gallivan, P. Van Dooren. Recursive calculation of dominant singular subspaces. SIAM Journal on Matrix Analysis and Applications, v. 25, n. 2, pp. 445-463, 1999. [7] W. J. Cook, W. H. Cunningham, W. R. Pulleyblank, A. Schrijver. Combinatorial optimization. John Wiley & Sons, Canadá, 1997. [8] E. de Klerk, M. Laurent, P. A. Parrilo. A PTAS for the minimization of polynomials of fixed degree over the simplex. Theoretical Computer Science, pp. 21-225, 26. [9] A. Edelman, R. Lippert. Nonlinear Eigenvalue Problems with Orthogonality Constraints. In Templates for the Solution of Algebraic Eigenvalue Problems, A Practical Guide, pp. 29-314, Philadelphia, 2. [1] L. Eldén, H. Park. A procrustes problem on Stiefel manifolds. Numerishe Mathematik, v. 82, pp. 599-619, 1999. [11] J. B. Francisco and J. M. Martínez and L. Martínez. Globally convergent trust-region methods for self-consistent fiel electronic structure calculations. Journal of Chemical Physics, v.121, pp. 1863-1878, 24. [12] J. B. Francisco and F. S. Viloche Bazán. Nonmonotone algorithm for minimization on closed sets with application to minimization on Stiefel manifolds. Journal of Computational and Applied Mathematics, v. 236, n. 1, pp. 2717-2727, 212. [13] L. Grippo, F. Lampariello, S. Lucidi. A nonmonotone line search technique for Newton s method. SIAM Journal on Numerical Analysis, v. 23, n. 4, pp. 77-716, 1986. [14] Nicholas J. Higham. The symmetric procrustes problem. BIT Numerical Mathematics, v. 28, n. 1, pp. 133-143, 1988. [15] Z. Wen, W. Yin. A feasible method for optimization with orthogonality constraints. Optimization Online, pp. 1-3, 21. [16] Z. Zhang, K. Du. Successive projection method for solving the unbalanced procrustes problem. Science in China: Series A Mathematics, v. 49, n. 7, pp. 971-986, 26. 358