• Aucun résultat trouvé

temps [µs]

(c) Histogramme des temps de retard pour K = 1

1.995 2 2.005 2.01 2.015 2.02 2.025 0 10 20 30 40 50 60 70 % temps [µs]

(d) Histogramme des temps de retard pour K = 4

1.995 2 2.005 2.01 2.015 2.02 2.025 0 10 20 30 40 % temps [µs]

(e) Histogramme des temps de retard pour K = 10

1.995 2 2.005 2.01 2.015 2.02 2.025 0 5 10 15 20 % temps [µs]

(f) Histogramme des temps de retard pour K = 20

FIGURE 4.4 – Estimation du temps de retard d’un écho (RSB ✏ 0 dB). (a) : Forme d’onde, (b) : vrai temps ( ) et données (–). Distribution des temps de retard estimés par filtre adapté pour (c) K ✏ 1, (d) K ✏ 4, (e) K ✏ 10 et (f) K ✏ 20. Les traits rouges représentent le vrai temps de retard et les barres d’erreur✟σ où l’écart est donné par l’équation (4.9).

Pour cet exemple, il serait raisonnable de régler K ✏ 10, afin que la dispersion d’écart-type σcouvre quelques éléments de la grille sur-échantillonnée de résolution TS④K.

4.3 Algorithmes de déconvolution parcimonieuse pour les

systèmes MISO

Pour identifier les entrées du système MISO de l’équation (4.8), nous proposons d’utiliser des algorithmes reconnus d’approximation parcimonieuse des signaux, et qui ont montré de bons résultats dans le cas d’un problème de déconvolution classique (K ✏ 1) [Bourguignon et al.2011,Selesnick et Bayram 2014]. Les algorithmes originaux (i.e. K ✏ 1) sont détaillés dans la partie 3.3.2. Ici, le but est d’approcher le signal y par K vecteurs parcimonieux xk, k ✏ 1 . . . K d’après la connaissance des K filtres à réponse impulsionnelle finie hk. La contribution de ce travail consiste à prendre en compte le caractère générique MISO dans les algorithmes de déconvolution parcimonieuse. Nous proposons ici de revisiter cinq algorithmes :

• trois algorithmes gloutons : Matching Pursuit (MP), Orthogonal Matching Pursuit (OMP) et Orthogonal Least Squares (OLS) [Blumensath et Davies 2007],

minimisation locale du critère des moindres carrés pénalisé par une pseudo-norme ℓ0

J♣x, µq ✏ ⑥y ✁ Hx⑥2

µ⑥x⑥0, (4.10) où ⑥x⑥0 est le nombre d’éléments non nuls de x ; chaque itération calcule la valeur minimale du critère pour l’ajout ou la suppression d’une composante, le meilleur mou-vement étant alors exécuté,

• et un algorithme de déconvolution par pénalisation de norme ℓ1 qui minimise J♣x, λq ✏ ⑥y ✁ Hx⑥2

λ⑥x⑥1, (4.11) l’optimisation étant effectuée par méthode homotopique [Malioutov et al. 2005,Maria et Fuchs 2006], de complexité analogue à celle de OMP, ℓ1-H faisant référence à cet algorithme.

La mise en œuvre de chaque algorithme a été accélérée pour les systèmes MISO, notamment grâce aux calculs de convolution effectués par des algorithmes de transformée de Fourier rapides.

4.3.1 Calcul rapide de la convolution discrète

L’intérêt du produit de convolution discrète est d’être implémentable de façon rapide dans le domaine de Fourier [Golub et Van Loan 1996, p. 193]. En effet, la convolution circulaire a une équivalence temporelle/fréquentielle

y✏ h ✝ x é y˜ ✏ ˜h ☎ ˜x, (4.12) où le symbole˜désigne la transformée de Fourier discrète. Ce calcul peut être implémenté par

y✏ h ✝ x ✏ FFT✁1♣FFT♣hq ☎ FFT♣xqq , (4.13) où FFT est un algorithme rapide de transformée de Fourier discrète (Fast Fourier Trans-form) [Cooley et Tukey 1965]. Le calcul est réalisé sur Nf points fréquentiels et est histo-riquement adapté pour des puissances entières de deux. Le nombre de points doit respecter Nf → Nx N h✁ 1 pour éviter de tronquer h et x. La complexité de cet algorithme est en O♣Nfln Nfq alors que la complexité du calcul de base de la transformée de Fourier dis-crète s’exprime en O♣N2

fq. Un calcul de convolution est par conséquent équivalent à trois algorithmes de type FFT.

Nous définissons également le calcul d’inter-corrélation R♣x, yq, qui peut également être effectué par ce type de calcul, défini par

R♣x, yq ✏ x ✝ y

, (4.14)

où y

4.3.2 Détails de mise en œuvre des algorithmes

Algorithmes MP et OMP

A chaque itération, l’étape de sélection des algorithmes MP et OMP fait appel au produit HTr, où r est le résidu entre les données y et l’approximation H♣xi [Blumensath et Davies 2007]. Pour un système MISO, ce calcul revient à effectuer K produits♣HkqTr où les ma-tricesHksont de Toeplitz. Chaque produit correspond à un calcul d’intercorrélation entre hk

et r, équivalent à trois calculs de type FFT. En pratique, nous calculons les K FFT des hk

à l’avance. Ensuite, à chaque itération, la FFT de r et les K IFFT de♣HkqTrsont calculées pour l’étape de sélection. En termes de coût de calcul, l’accroissement est proportionnel à K.

Pour MP, l’étape de mise à jour du résidu est identique à un algorithme standard (i.e. K ✏ 1). Pour OMP, le calcul de chaque solution est défini par ♣xi ✏ ♣HT

QHQq✁1HT Qy, où HQ représente les colonnes de H sélectionnées à une itération donnée. Dans notre mise en œuvre, nous utilisons une factorisation de Cholesky de HT

QHQ pour effectuer l’inversion à moindre coût [Golub et Van Loan 1996]. L’inversion du système revient ici à l’inversion de deux systèmes triangulaires de complexité O♣n2q, où n est le nombre d’indices actifs. Algorithmes OLS et SBR

Pour sélectionner l’élément à rajouter, les algorithmes OLS et SBR utilisent de façon inten-sive les éléments de la matrice de Gram HTH(cf. partie3.3.2). Ce sont en fait les éléments des matrices♣HkqT ✍Hqui peuvent être calculés préalablement à partir des séquences d’in-tercorrélation entre hket h. Nous avons donc besoin des K♣K 1q④2 intercorrélations entre les K filtres hket h, dans le domaine de Fourier. Pour OLS et SBR, le coût de calcul dans l’algorithme lui-même reste approximativement constant en fonction de K, l’accroissement du coût étant très majoritairement associé aux pré-calculs d’intercorrélation.

Le test des retraits de SBR est effectué sur le support actif et n’est donc pas concerné par l’aspect multi-voies.

Algorithme de déconvolution par pénalisation ℓ1

L’algorithme ℓ1-H minimise le critère (4.11) en faisant progressivement décroître les valeurs du paramètre λ [Malioutov et al. 2005]. La solution optimale est alors calculée pour chaque saut de λ, signifiant un changement de support de la solution d’un élément. On a donc un comportement similaire aux stratégies gloutonnes. A chaque itération, l’ajout d’un élément nécessite deux produits HTr, ce qui correspond à 2♣K 1q FFT. Le test des retraits re-quiert lui l’inversion de deux systèmes HT

QHQ, effectuée également par une factorisation de Cholesky. En termes de complexité, ℓ1-H est donc à peu près équivalent au double de l’algorithme OMP.

Résumé de mise en œuvre des algorithmes

Tous les algorithmes exigent les K pré-calculs des ˜hk. Pour résumer, les algorithmes MP, OMP et ℓ1-H ont une complexité proportionnelle à K pour les pré-calculs et pour chaque itération de l’algorithme. D’un autre côté, OLS et SBR nécessitent seulement les pré-calculs

de FFT, et le cœur de l’algorithme reste à peu près le même quand K augmente. Le détail des coûts de calcul en termes de FFT est récapitulé dans le tableau4.1.

Algorithmes MP OMP ℓ1-H OLS SBR

Pré-calculs ˜ hk h˜k h˜k h˜k h˜k ˜ y y˜ y˜ ♣Hk qTy ♣Hk qTy ♣Hk qTy ♣Hk qT ✍ HHk qT ✍ H Nb. total de FFT K K 1 2K 1 2K ♣K2 Kq④2 1 2K ♣K2 Kq④2 cœur ˜ r r˜ 2✂ ˜r ♣Hk qTr ♣Hk qTr 2✂ ♣Hk qTr ✒idem ✒idem Nb. total de FFT K 1 K 1 2♣K 1q 0 0

TABLE 4.1 – Pré-calculs et calculs dans le cœur des algorithmes de déconvolution pour les systèmes MISO.