Bonjour,
J'ai un problème d'optimisation en grande dimension dans lequel je sais que je vais me retrouver au voisinage d'un point selle. Pour s'en échapper, il est possible de prendre la direction donnée par le vecteur propre associé à la plus petite valeur propre négative de la matrice Hessienne du problème.
Mon problème vient du fait qu'en pratique le calcul de cette valeur propre est bien trop coûteux. Pour trouver une direction acceptable mon idée est de tirer des vecteurs aléatoires xi est de regarder la valeur de xi'Hxi. Si la valeur est négative je suis sûr que la direction xi (ou -xi) est une direction de descente sinon je prends le vecteur qui a donné la plus petite valeur et je regarde si j'arrive à minimiser ma fonction.
Pour justifier cela je me base sur la décomposition en valeurs propres de la matrice Hessienne H:
H = UDU'
et donc
x'Hx = \sum_k d_k (u_k'x)^2
Si la direction de x est principalement colinéaire à un des vecteurs propres, la contribution de la valeur propre associée sera prépondérante. D'autant qu'a priori (vu mon problème) ma matrice H sera de rang faible.
J'aurais voulu savoir si quelqu'un avait un avis sur cette approche ou mieux encore, s'il existait de la littérature sur cette façon de faire.
Partager