2.3 Suivi du sous-espace sources
2.3.1 Suivi complet de la structure propre
2.3.1.2 PROTEUS
En 1998, Champagne développe une méthode reposant sur des rotations dans l'espace de dimension M + 1 pour faire la mise à jour complète de la structure propre [8]. Deux versions d'un algorithme de base ont été développées. La première, PROTEUS (Plane ROTation-based EVD Updating Schemes) permet la mise à jour avec une complexité O(N(M +1)2)alors que la
seconde, PROTEUS-2, permet la mise à jour avec une complexité O(N(M + 1)) (un fait rare pour un algorithme permettant la mise à jour complète de la structure propre). L'idée derrière ces algorithmes consiste à faire des rotations dans l'espace de dimension M + 1 pour obtenir progressivement EM +1,k avant d'employer la projection (2.32) pour revenir à Es,k. Pour ce
faire, PROTEUS exploite le fait que de par ses propriétés, la matrice EM +1 est membre d'un
groupe de matrices pouvant être représentées sous la forme exponentielle. Ce faisant, EM +1
n'a pas à être connue de façon explicite et peut être écrite sous la forme d'un produit de matrices de rotation de Givens.
Les algorithmes PROTEUS et PROTEUS-2 sont conçus autour de la structure générale : 1 Étapes de pré-traitement ;
2 Mise à jour vers Λk et Es,k avec PROTEUS ou PROTEUS-2 ;
3 Étapes de post-traitement, au besoin.
Les étapes de pré-traitement permettent le formatage des données an d'accélérer la mise à jour vers Es,k. La première étape est similaire13à celle de Karasalo puisqu'elle consiste à faire
la projection de la trame entrante xk sur le sous-espace sources
y = ETs,k−1xk (2.33)
où le vecteur y est de dimension M. Il s'agit ensuite de considérer les vecteurs propres associés aux sources de Es,k−1 auxquels on ajoute la projection de la trame xk dans le sous-espace
bruit. La matrice Ei,k−1 est ainsi formée en procédant au même type de transformation que
celle proposée par Karasalo, soit
Ei,k−1= Es,k−1 u β (2.34)
où le vecteur u et le scalaire β sont donnés par (2.30). Le vecteur y doit ensuite subir un ajout de façon à devenir y = yT βT
et la matrice ΛM +1 est dénie comme
ΛM +1= " Λs 0 0 β # (2.35)
En somme, la sortie du pré-traitement fournie la matrice Ei
k−1 de dimension N à M + 1, le
vecteur y de dimension M + 1 et la matrice ΛM +1 de dimension M + 1.
Comme le montre la n du pré-traitement, l'approche privilégiée par Champagne consiste à travailler dans un espace de dimension M +1 avec des conditions initiales très similaires à celles utilisées par Karasalo. Cependant, la formation de la matrice en dimension réduite RM +1pour
en faire la décomposition propre et retrouver le sous-espace en dimension réduite EM +1,kn'est
pas l'approche privilégiée. En eet, l'idée est plutôt de générer progressivement et de façon non explicite la matrice EM +1,k. Pour ce faire, Champagne utilise les notions de la théorie
des perturbations. Cette méthode implique de trouver la nouvelle solution S d'un problème à partir d'une solution connue S0 auquelle on ajoute un léger changement. L'approche est
généralisée par
S = S0+ αS1+ α2S2+ . . . (2.36) 13. Elle est similaire mais pas identique puisque pour Karasalo le fenêtrage est inclus à cette étape.
où α = (1 − µ). En supposant que α → 0 (la fenêtre est très longue)14, les termes d'ordre
supérieurs de (2.36) deviennent négligeables et la série d'ordre 1 est donnée par (2.37).
S = S0+ αS1 (2.37)
À noter que les performances associées à cette méthode risquent de se dégrader si la condition sur α n'est pas respectée. Ce problème est alors ramené à un cas avec les matrices EM +1 et
ΛM +1 de dimension M + 1. Dans cette dimension, la mise à jour de rang 1 peut être vue
comme
EM +1,kΛM +1,kETM +1,k = (1 − α)ΛM +1,k−1+ αyyT (2.38)
où le membre de gauche correspond à la matrice RM +1,k de l'équation (2.28). D'après le
principe d'orthogonalité du sous-espace sources, il faut que
EM +1,kETM +1,k= IM +1 (2.39)
En supposant que α → 0, il faut alors que ΛM +1,k−1 → ΛM +1,k selon (2.38) et que EM +1,k→
IM +1 selon (2.39). Ce faisant, l'approximation de premier ordre introduite par l'équation
(2.37) peut être utilisée pour déduire ΛM +1,k telle que
ΛM +1,k= ΛM +1,k−1+diag(δλ1, δλ2, . . . , δλM +1) (2.40)
où les valeurs δλ1, δλ2, . . . , δλM +1 représentent les petits changements entraînés à chacune des
M + 1 valeurs propres par la modication de rang 1. Puisque det(EM +1,k) ≈ 1 car EM +1,k
s'approche de IM +1, EM +1,k peut être représentée par
EM +1,k= eΦ = ∞ X i=1 Φi i! (2.41)
où Φ est une matrice à symétrie oblique15 dont voici un exemple pour le cas M + 1 = 4
Φ = 0 φ12 φ13 φ14 −φ12 0 φ23 φ24 −φ13 −φ23 0 φ34 −φ14 −φ24 −φ34 0 (2.42)
14. Cette condition peut devenir une forte limitation pour l'utilisation de cet algorithme, surtout lorsque la fréquence fseqest élevée.
En généralisant, le nombre d'éléments distincts de la matrice Φ correspond à (M +1)M
2 . En
substituant les équations (2.40) et (2.41) dans (2.38) (voir [8] pour le développement complet), les solutions suivantes sont obtenues pour δλi et φij
δλi = α(yi− λi), pour i = 1, ..., M + 1 (2.43)
φij = α
yiyj
λj− λi
, pour i = 1, ..., M + 1 (2.44)
Soit maintenant la matrice Φ. Cette dernière peut être décomposée en une somme de matrices Φij dans lesquelles tous les éléments sont mis à zéro sauf les éléments φij = −φij. Par exemple,
la matrice Φ12 est donnée par
Φ12= 0 φ12 0 0 −φ12 0 0 0 0 0 0 0 0 0 0 0 (2.45)
Cette représentation de Φ revient à écrire
Φ = X
ij,j>i
Φij (2.46)
En substituant l'équation (2.46) dans (2.41) et en supposant les termes d'ordre supérieur à 2 négligeables, le produit suivant est obtenu en raison de la somme montée en exponentiel
EM +1,k =
Y
ij,j>i
eΦij (2.47)
La transformation engendrée par (2.47) équivaut à eectuer (M +1)M
2 rotations de Givens selon
eΦij = G
ij(φij) (2.48)
Gij(φ) = Ii−1 cos φ sin φ Ij−i−1 − sin φ cos φ IM +1−j (2.49)
En insérant l'équation (2.48) dans (2.47) on obtient la mise à jour progressive exploitée par PROTEUS pour passer de Ei
k−1 à Eik, soit
EM +1,k=
Y
ij,j>i
Gij(φij) (2.50)
L'algorithme PROTEUS 1 est maintenant complet. Champagne note qu'il est parfois néces- saire de procéder à un lissage sur les N − M dernières valeurs propres an d'assurer qu'elles sont encore toutes de même valeur (sans quoi l'hypothèse pour la sphéricalisation n'est plus valide).
Le développement de l'algorithme PROTEUS-2 requiert l'ajout d'une hypothèse, soit celle que les valeurs propres associées aux sources ont des valeurs distinctes bien espacées λi>> λj
pour i < j. L'équation (2.44) devient alors
φij = α
yiyj
λi (2.51)
Cette approximation modie le développement de la matrice Φ de l'équation (2.41) de façon à en lier linéairement les termes. Par conséquent, il est possible de factoriser le développement (2.50) comme un produit de 2(M + 1) − 3 rotations plutôt que les M (M +1)
2 rotations que
nécessite PROTEUS de façon à avoir
EM +1,k = GM,M +1(υM)...G2,3(υ2)G1,2(φ1)G2,3(ω2)...GM,M +1(ωM) (2.52) où ωi = − arctan y0i yi+1 φi = −α yiyi0 λi υi = ωi+ φi yi0 = yi pour i = M + 1 y0 = q y2+ y02 pour 1 ≤ i < M + 1 (2.53)
La factorisation (2.52) fait de PROTEUS-2 un algorithme de complexité O(N(M + 1)) plutôt que les O(N(M + 1)2) opérations requises pour PROTEUS.