Brevet FR3063363A1 — publié le 20180831

-1- U Procédé de traitement de signal " La présente invention se positionne dans le domaine du traitement du signal et notamment dans le domaine de la prédiction et du filtrage de données. L'invention s'applique plus précisément au domaine des algorithmes de filtrage auto-adaptatif utilisant une méthode d'approximation rapide par la méthode des puissances itérées utilisant une décomposition en sous-espaces orthogonaux. On connait un algorithme de filtrage dérivé de la méthode des puissances itérées qui réalise une poursuite de sous-espace. Cette méthode, aussi nommée FAPI pour Fast Approximated Power Iteration Subspace Tracking, est décrite par M. Badeau et al. dans « Fast Approximated Power Iteration Subspace Tracking » - Published in IEEE Transactions on signal processing, vol. 53, No. 8, August 2005. La méthode FAPI, est une amélioration, notamment en termes de rapidité de traitement, de la méthode PAST, signifiant Projection Approximation Subspace Tracking. La méthode PAST est décrite par B. Yang dans « Projection Approximation Subspace Tracking », IEEE-T-SP, vol. 44, no. 1, pp95-107, Jan. 1995. La méthode FAPI est usuellement utilisée pour faire de la poursuite de fréquences. Cette méthode, même si elle est rapide, peut néanmoins faire l'objet d'améliorations, tant au niveau de sa vitesse d'exécution que de la précision des résultats obtenus. On s'intéresse plus particulièrement au domaine de la simulation utilisant différents modèles physiques. Une telle simulation est nommée cosimulation et peut être réalisée en utilisant des bus de données pour faire communiquer entre eux les différents modèles. Les modèles s'échangent des données selon un pas de temps fixe, cadencé par une plateforme gérant les échanges de données et la cohérence de la cosimulation. Cependant, il arrive que des données n'arrivent pas à temps au niveau des bus de données aux pas de temps déterminés par la structure logicielle. Il est donc nécessaire dans un tel cas de prédire les données en fonction des données précédemment fournies grâce à des algorithmes de traitement du signal. Par 3063363 -2- exemple, on peut appliquer sur les données précédentes une série d'algorithmes de prédiction, comme des algorithmes d'interpolation/extrapolation polynomiale classiques, des modèles autorégressifs. Ensuite on peut également appliquer à ces données un 5 filtrage par exemple de type Kalman, ou une décomposition en sous-espaces. Les algorithmes de traitement du signal garantissent la stabilité, la convergence et la fiabilité de la cosimulation. La présente invention a pour but de remédier aux inconvénients 10 précités en proposant un procédé de traitement d'un signal au moyen d'un algorithme de filtrage auto-adaptatif utilisant une méthode d'approximation rapide par la méthode des puissances itérées utilisant une décomposition en sous-espaces orthogonaux. L'algorithme comprend : - une étape de détermination d'une matrice de pondération e à partir d'une 15 racine carré fonction d'une matrice identité, d'un gain de l'algorithme et d'une innovation de l'algorithme ; - une étape de calcul d'une matrice de variance/covariance P fonction d'une inverse de la matrice de pondération 0-1. Ledit procédé selon l'invention est caractérisé en ce qu'au moins l'une parmi 20 la racine carrée et l'inverse de la matrice de pondération 0-1, est remplacée par une formulation analytique fonction de la matrice identité et du gain de l'algorithme. La matrice de pondération 0 est déterminée selon la formule suivante : Ok = Ir + ak. Gk. Gitz, avec la formule analytique suivante : ak = 25 lickii2 1]' dans lesquelles : k est une itération de l'algorithme, /, ' [ est la matrice identité de dimensions r, r étant la moitié du nombre de fréquences contenues dans le signal, Gk est le gain de l'algorithme et ek est l'innovation. L'inverse de la matrice de pondération 011- se calcule selon la formule 30 suivante : = - yk.Gk.Gfz, avec l'expression analytique suivante : yk = ak Une fonction de transfert FT de l'algorithme s'exprime ainsi : FT(z-1) = nY_-11 avec z = e21r1FTe dans laquelle] est le nombre complexe, Fi est une fréquence du signal, Te est une période d'échantillonnage du signal, ai étant - -+IIGkI12 3063363 -3- un des coefficients d'un vecteur a de dimension N, N étant le nombre d'observations d'une fenêtre d'observations glissante de l'algorithme, a étant défini par a= N, avec W1 un premier élément d'un vecteur W de dimension N, W étant défini par W = U étant une matrice de corrélation définie 5 par Uk = [Uk_i+ ek.Gfclek- Le procédé de traitement de signal selon l'invention peut être appliqué à une simulation mettant en oeuvre plusieurs modèles de simulation différents échangeant des données x. Lesdites données x échangées sont traitées selon les étapes suivantes pour chaque pas de temps t: 10 - acquisition d'un échantillon de données xk à un temps t correspondant à une itération k du procédé ; - prédiction 2 -k+1/k d'une valeur de la donnée xk à un temps t +1 correspondant à une itération k + 1 tel que : - -k+1/k = ai-Xk-i+1t avec N -1 le nombre d'échantillons précédents l'itération k, et ai les 15 coefficients autorégressifs de la fonction de transfert ; - interpolation-k>k+1 .2 de la donnée x entre la donnée xk à l'itération k et la donnée prédite)?k,iik à l'itération k + 1 par régression linéaire. Le procédé de traitement de signal appliqué à une simulation mettant en oeuvre plusieurs modèles de simulation différents comprend une étape de 20 filtrage 3...k/k-1des données interpolées 2 --k/k+i tel que : - -k>k-1 = ai-)?k-i- Le procédé de traitement de signal selon l'invention peut être appliqué pour réaliser une analyse spectrale d'un signal en mettant en oeuvre : une étape préalable d'acquisition d'un signal ; une étape de calcul d'une autre FT(z-i) fonction de transfert H définie par : H(z-i) =1-FT(z-1) ; une étape de calcul du 25 module et de la phase de l'autre fonction de transfert H en fonction de la fréquence. Le procédé de traitement de signal selon l'invention peut être appliqué pour réaliser une représentation temps/fréquence d'un signal : il comprend à cette fin une étape de calcul du carré de la fonction de transfert H. 30 Le procédé de traitement de signal selon l'invention peut être appliqué à une poursuite de fréquence en réalisant : une étape préalable d'acquisition d'un signal, une étape de calcul d'une matrice spectrale Wk =[Ir v .vt k k 1.0 dans laquelle /, est la matrice identité de dimension r, vk est 3063363 - 4 - la dernière ligne d'une matrice de corrélation U, U lk étant la matrice Uk à laquelle la dernière ligne est retranchée, et U Ik étant la matrice Uk à laquelle la première ligne de Uk est retranchée. Le procédé de traitement de signal selon l'invention peut être appliqué 5 à une prédiction d'évolution d'une donnée x à d pas de temps. A cette fin il comprend une étape de prédiction, ladite prédiction étant évaluée selon la formule -k+d/k = t-)?k/k- L'invention a notamment pour avantage de simplifier les méthodes de 10 traitement de signal usuelles. D'autres avantages et caractéristiques de l'invention apparaîtront à l'examen de la description détaillée des modes de réalisation purement illustratifs et nullement limitatifs, et des dessins annexés, sur lesquels : 15 la figure 1 représente le procédé selon l'invention ; la figure 2 représente un exemple de cosimulation ; la figure 3 représente un procédé de traitement d'un signal selon l'invention appliqué à une cosimulation ; la figure 4 représente une étape de prédiction du signal à un pas ; 20 la figure 5 représente une étape d'interpolation d'un signal ; la figure 6 représente une étape de filtrage ; la figure 7 représente un procédé d'analyse spectrale selon l'invention ; la figure 8 représente un procédé de poursuite de fréquences selon 25 l'invention ; la figure 9 représente un procédé de prédiction à d pas selon l'invention, d étant un entier supérieur à un. La présente invention a pour objet un procédé 1 de filtrage auto- 30 adaptatif utilisant une méthode d'approximation rapide par la méthode des puissances itérées utilisant une décomposition en sous-espaces orthogonaux. Le procédé ou algorithme 1 objet de la présente invention est une amélioration de l'algorithme API pour Approximated Power Iterations for Fast Subspace Tracking décrit par Badeau et al. dans Proc. of 7th Int. Symp. on 35 Signal Proc. and its Applications, vol. 2, Paris, France, July 2003, pp.583- 3063363 -5- 586. L'algorithme 1 reprend l'ensemble des étapes de traitement et des équations de l'algorithme API à l'exception des améliorations qui y sont apportées et qui sont détaillées dans la suite. La figure 1 représente les différentes étapes du procédé 1 selon l'invention. 5 Le signal x à traiter par le procédé 1 selon l'invention s'exprime sous la forme suivante pour un pas de temps donné, ou une itération k: 2 xk =1Ai cos(2. Tc. Fi. k. Te + (pi) + ek i=1 dans laquelle :2 est le nombre de fréquences présentes dans le signal, Ai correspond à la ilème amplitude du signal, Fi est la ilème fréquence du signal, T, 10 est la période d'échantillonnage du signal, (pi est ilème phase du signal et ek est l'innovation. Une première étape 2 du procédé selon l'invention est une étape d'initialisation. On pose P0 = b. Ir avec P0, une matrice de variance/covariance 15 initiale de dimension r, Ir un vecteur identité de dimension r et b est un entier choisi suffisamment grand, par exemple 100, 1000, 10000, pour que l'algorithme converge rapidement. On utilise préférentiellement 100 pour b dans le cadre de l'invention. On pose également U0 =[Q(NIr r)] une matrice - de corrélation initiale qui représente une estimation obtenue par l'algorithme 20 1, avec 0(N -r) une matrice nulle de dimension N - r , N étant le nombre d'observations ou la dimension d'une fenêtre d'observations glissante, c'est-à-dire changeant d'ensemble d'observations à chaque pas de temps, utilisée par le procédé 1 selon l'invention. La première étape 2 est réalisée une seule fois pour l'initialisation de l'algorithme 1. 25 Ensuite pour chaque pas de temps k e [1; TL], n étant le nombre d'échantillons du signal x, les étapes suivantes sont réalisées de manière itérative : Une deuxième étape 3 est une étape de détermination d'une fenêtre d'observations Xk = [xk,xk_1,...,xk_N+Ilt où t représente la transposée d'une 30 matrice. Une troisième étape 4 est une étape de calcul d'un vecteur de mesures yk=Ufc_i_. Xk. 15 3063363 - 6 - Une quatrième étape 5 est une étape de calcul d'un gain Gk de la manière suivante : Gk = ,3k-1.31k où À est un facteur d'oubli compris entre 0 A-Fyic.Pk-1.3/k et 1. Usuellement, on utilise À= 0,98 : cette valeur traduit un compromis entre deux tendances à savoir plus À est petit plus on atténue le signal utile 5 et le bruit, et plus À est élevé moins on atténue le signal et le bruit. À peut aussi être calculé de la manière suivante : N =11(1- À). Dans le cas présent et à titre d'exemple N = 50. Une cinquième étape 6 est une étape de calcul d'une matrice de pondération Ok. Dans l'algorithme API, la matrice de pondération est 10 déterminée par la formule suivante : Ok = [Ir + Gk. eit REVENDICATIONS1. Procédé de prédiction et/ou de filtrage d'un signal (1) au moyen d'un algorithme de filtrage auto-adaptatif utilisant une méthode d'approximation rapide par la méthode des puissances itérées utilisant une décomposition en 10 sous-espaces orthogonaux, ledit algorithme comprenant : - une étape de détermination (6) d'une matrice de pondération 0 à partir d'une racine carrée fonction d'une matrice identité, d'un gain de l'algorithme et d'une innovation de l'algorithme ; - une étape de calcul (7) d'une matrice de variance/covariance P fonction 15 d'une inverse de la matrice de pondération 0-1 ; - une étape de prédiction de données manquantes et/ou de filtrage du signal (1) à partir de la matrice de variance/covariance P; ledit procédé étant caractérisé en ce qu'au moins l'une parmi la racine carrée et l'inverse de la matrice de pondération 0-1, est remplacée par une 20 formulation analytique fonction de la matrice identité et du gain de l'algorithme. 2. Procédé selon la revendication 1, caractérisé en ce que la matrice de pondération 0 est déterminée selon la formule suivante: Ok = Ir + ak.Gk.G1, 25 avec la formule analytique suivante : ak = 1 . L+Ilek112.11411- 1] dans lesquelles : k est une itération de l'algorithme, 'r est la matrice identité de dimensions r, r étant la moitié du nombre de fréquences contenues dans le signal, Gk est le gain de l'algorithme et ek est l'innovation. 30 3. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'inverse de la matrice de pondération Ok-1 se calcule selon la formule suivante :0k-1 v r; Gt avec l'expression analytique = -r , k- -k- suivante : yk = 1 35 4. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'une fonction de transfert FT de l'algorithme s'exprime ainsi : FT(z-1) = ai.z-i avec z = e2TriFTe , dans laquelle j est le nombre 3063363 - 16 - complexe,Fi est une fréquence du signal, T, est une période d'échantillonnage du signal, ai étant un des coefficients d'un vecteur a de dimension N, N étant le nombre d'observations d'une fenêtre d'observations glissante de l'algorithme, a étant définit par a = , avec W, un premier élément d'un vecteur W de dimension N, W étant défini par W = Uk. uf, U étant une matrice de corrélationdéfinie par Uk = [Uk_i ek.Gitc]. Ok. 5. Procédé de prédiction et/ou de filtrage selon la revendication 4 appliqué à une simulation (25) mettant en oeuvre plusieurs modèles de simulation (20, 21) différents échangeant des données x, caractérisé en ce que les données x échangées sont traitées selon les étapes suivantes pour chaque pas de temps t: - acquisition (31) d'un échantillon de données xk à un temps t correspondant à une itération k du procédé ; - prédiction (33) 2k+iik d'une valeur de la donnée xk à un temps t + 1 correspondant à une itération k + 1 tel que : - k+1/ k = ai- avec N - 1 le nombre d'échantillons précédents l'itération k, et ai les coefficients autorégressifs de la fonction de transfert ; - interpolation (34) 2k>k+1 de la donnée x entre la donnée xk à l'itération k et la donnée prédite -k+i/k à l'itération k + 1 par régression linéaire. 25 6. Procédé selon la revendication 5, caractérisé en ce qu'il comprend une étape de filtrage (35) fkik-i des données interpolées 2 tel que : -k>k-1 = E - ai- 2k-i - 30 7. Procédé selon la revendication 4 pour réaliser une analyse spectrale (70) d'un signal, caractérisé en ce qu'il comprend : une étape préalable d'acquisition d'un signal ; une étape de calcul d'une autre fonction de FT(z-i) transfert H définie par : H(z-1) = 1-FT(z-1) ; une étape de calcul du module et de la phase de l'autre fonction de transfert H en fonction de la fréquence. 35 3063363 - 17- 5 8. Procédé selon la revendication 7 pour réaliser une représentation temps/fréquence d'un signal, caractérisé en ce qu'il comprend une étape de calcul du carré de la fonction de transfert H. 9. Procédé selon la revendication 4 appliqué à une poursuite de fréquence 10 (80), caractérisé en ce qu'il comprend une étape préalable d'acquisition d'un signal et en ce qu'il comprend en outre une étape de calcul d'une matrice spectrale Wk = + 1v*kkpl.U.14.0 Tk, dans laquelle 4 est la matrice identité de dimension r, V,, est la dernière ligne d'une matrice de corrélation U, U étant la matrice Uk à laquelle la dernière ligne est retranchée, et U Ik étant 15 la matrice Uk à laquelle la première ligne de Ukest retranchée. 10. Procédé selon la revendication 9 appliqué à une prédiction d'évolution d'une donnée x à d pas de temps (90), caractérisé en ce qu'il comprend une étape de prédiction, ladite prédiction étant évaluée selon la formule 2ki-dik 20 Wd2kik.