Algorithmes numériques pour les matrices polynomiales avec applications en commande

Algorithmes numériques pour les matrices polynomiales avec applications en commande

Méthodes numériques et logiciels de CACSD 

Dans ce chapitre on présente les différentes approches à la commande de systèmes linéaires. Ensuite on présente quelques caractéristiques des logiciels de CACSD (Computer-Aided Control System Design) existant pour l’approche espace d’état et pour l’approche polynomiale. On analyse les problèmes numériques associés aux matrices polynomiales et on introduit les méthodes qui servent à traiter ces problèmes. Il faut rappeler que l’analyse numérique est le fil conducteur de la discussion, mais ce n’est pas le thème central ni l’objectif de la thèse. Les concepts généraux de cette théorie sont rappelés dans les différents exemples présentés dans ce chapitre, mais les lecteurs intéressés par une étude plus systématique, formelle et approfondie devront consulter l’abondante littérature sur le sujet. Le processus de la commande d’un système dynamique commence par sa modélisation en termes d’équations mathématiques. En particulier, dans le cas des systèmes linéaires invariants dans le temps, on a un ensemble de p équations différentielles du type a1d1 y (d1) 1 (t) + · · · + a10y1(t) + a1 + · · · + apdP y (dp) p (t) + · · · + ap0yp(t) + ap = b1f1 u (f1) 1 (t) + · · · + b10u1(t) + b1 + · · · + bmfmu (fm) m (t) + · · · + bm0um(t) + bm (2.1) où α (q) (t) représente la q-ième dérivée du signal scalaire α(t) par rapport au temps. Les paramètres aij et bkl pour i = 1:p, j = 0:di , k = 1:m et l = 0:fk sont constants. Par convention, toutes les variables sur lesquelles on a un contrôle et qui serviront à commander le système sont appelées les entrées ui(t), i = 1:m. D’autre part, toutes les variables sur lesquelles on observe l’effet de la commande sont appelées les sorties yi(t), i = 1:p. Il existe différentes approches pour interagir avec ce modèle mathématique. Avec chaque approche, le modèle est représenté ou reformulé d’une façon particulière où les différentes propriétés du système sont plus ou moins dévoilées. On peut par exemple écrire chaque équation de type (2.1) comme un ensemble d’équations différentielles d’ordre 1 à l’aide de l’inclusion de variables d’état (state variables) [50]. Après des  manipulations algébriques, le modèle du système peut être écrit de la manière suivante: x (1)(t) = Ax(t) + Bu(t), y(t) = Cx(t) + Du(t). (2.2) Le vecteur x(t) ∈ R n est le vecteur des variables d’état et sert donc à relier le vecteur d’entrées u(t) ∈ R m et le vecteur de sorties y(t) ∈ R p . Les matrices A ∈ R n×n , B ∈ R n×m, C ∈ R p×n et D ∈ R p×m sont constantes. La représentation (2.2) est utilisée par l’approche espace d’état [50, 90]. Notons qu’en appliquant la transformée de Laplace sur la représentation (2.2) on peut éliminer x(t) et en déduire la fonction de transfert T(s) du système [50] y(s) = [C(sI − A) −1B + D]u(s) = T(s)u(s) dans l’hypothèse de conditions initiales nulles. Une autre manière de réécrire l’ensemble des p équations de type (2.1) qui représentent le système dynamique est la forme matricielle. En regroupant toutes les entrées et sorties dans les vecteurs correspondants u et y on obtient: D(s)y(s) = N(s)u(s). (2.3) Les matrices D(s) et N(s) sont des matrices polynomiales (polynomial matrices) en la variable s, de dimensions p×p et p×m respectivement. Rapellons que dans le cas continu, la variable s est l’opérateur de Laplace. Si le système est à temps discret, alors la variable devient l’opérateur de décalage. Étant donné que la fonction de transfert du système est unique [50], on vérifie que T(s) = D−1 (s)N(s) = C(sI − A) −1B + D. La représentation (2.3) est utilisée par l’approche polynomiale [58] ou encore par l’approche comportementale [83]. Chaque représentation a ses points forts et ses points faibles, et implique une façon différente d’analyser le même système. Par conséquent chaque approche à la commande des systèmes a aussi ses particularités et utilise ses propres méthodes et outils mathématiques. Une discussion des avantages ou désavantages de chaque approche impliquerait beaucoup d’efforts pour n’en tirer aucune conclusion. En fait, le vrai avantage consiste à disposer de plusieurs façons différentes de résoudre un problème. Pour certains problèmes l’approche espace d’état sera plus efficace, pour d’autres problèmes l’approche polynomiale ou l’approche comportementale seront plus adéquates. Actuellement, au niveau théorique, quelle approche utiliser reste simplement une question de préférence personnelle. Cependant, au niveau des logiciels de CACSD, l’approche espace d’état est beaucoup plus développée.

Application des logiciels de CACSD

 Par la suite on illustre l’application des algorithmes classiques en commande, en utilisant les outils de l’algèbre linéaire numérique, pour faire face aux problèmes numériques et obtenir des résultats satisfaisants. Les algorithmes qu’on présente ici ne sont pas nouveaux, ils sont décrits à titre illustratif. Les résultats originaux peuvent se trouver, par exemple dans [45, 50, 61, 82, 108] et leurs références. Un deuxième objectif de cette section est de présenter de manière pratique les concepts d’analyse numérique qu’on utilisera dans le reste de cette thèse. Pour un approfondissement sur ces concepts voir par exemple [33, 43, 99, 115, 116]. Pour atteindre les objectifs de cette section, on étudie un des problèmes classiques en commande: le placement de pôles. Etant donné un système sous la forme (2.2), l’objectif est de trouver une commande linéaire statique u = F x telle que le système en boucle fermée ait des pôles donnés, c’est-à-dire, telle que la matrice A + BF ait le polynôme caractéristique désiré det(sI − A − BF) = s n + fn−1s n−1 + · · · + f0 = f(s).Ainsi, algorithmiquement, le problème du placement des pôles est réduit à la solution du système d’équations F T = F¯ où T et F¯ sont donnés et F est à déterminer, c’est la formule d’Ackermann [2]. Donc les problèmes numériques que l’on peut rencontrer sont ceux d’un système d’équations du type My = b, où M dénote à présent la matrice T, et b = F¯. Soit M ∈ R n×n et b ∈ R n . Le problème qui consiste à déterminer y = f(x) = f(M, b) ∈ R n est un problème mal posé (ill-posed) au sens classique de Hadamard [35]. En fait y ne dépend pas de manière continue des données x. Il existe des points de discontinuité ou singularités (singularity). Pour le cas carré, il s’agit de toutes les matrices M de rang plus petit que n telles que le système n’a pas de solution ou que la solution n’est pas unique. Donc, pour que le problème ait un sens, c’est-àdire qu’il soit bien posé (well-posed), on restreint l’espace des données d’entrée aux points réguliers uniquement. La question qu’on se pose alors est comment mesurer la distance à la singularité d’un point x? L’analyse de la sensibilité peut donner une réponse à ces questions. La sensibilité de y par rapport aux perturbations sur x est mesurée par le conditionnement κ(x) (conditioning). Intuitivement on peut conclure que si x est proche d’une singularité alors κ(x) est grand car, dans ce cas, un petit changement dans x peut faire que y n’existe plus. Donc, 1/κ(x) est une mesure de la distance à la singularité. Si κ(x) est grand on dit que le problème pour x donné est mal conditionné (ill-conditioned) ou que le point x est mal conditionné. Par contre, le problème est bien conditionné (well-conditioned) si κ(x) est petit. La connaissance du conditionnement d’un problème est importante car elle peut nous donner un indice sur la qualité de la solution calculée. Une fois qu’un problème y = f(x) et son conditionnement κ(x) sont bien définis, on peut estimer la magnitude de l’erreur en la solution calculée yˆ, appelée erreur en avant (forward error) grâce à l’expression suivante: ky − yˆk ≤ κ(x)kek (2.6) où e, l’erreur en arrière (backward error) est l’erreur introduite par l’algorithme appliqué sur les données d’entrée. Le conditionnement d’un même problème peut être différent pour différents types de perturbations. Alors, en fonction du type de perturbation introduit par l’algorithme, on devra utiliser la définition de conditionnement adéquate pour estimer la qualité de la solution obtenu

Table des matières

Préface
1 Introduction
1.1 Objectif de cette thèse
1.2 Organisation des chapitres
2 Méthodes numériques et logiciels de CACSD
2.1 Approche espace d’état
2.1.1 Application des logiciels de CACSD
2.2 Approche polynomiale
2.2.1 Problèmes numériques et polynômes
2.3 Méthodes pour les matrices polynomiales
2.3.1 Décomposition en valeurs singulières
2.3.2 Factorisation LQ
2.3.3 Forme Echelon L
2.3.4 Méthode généralisée de Schur
3 Zero structure of polynomial matrices
3.1 Computing the finite zeros
3.2 Algorithms
3.3 Algorithmic analysis
3.3.1 Complexity
3.3.2 Stability and accuracy
4 Null-space of polynomial matrices
4.1 Algorithms
4.2 Algorithmic analysis
4.2.1 Complexity
4.2.2 Stability and accuracy
4.2.3 Extension of the Toeplitz algorithms
5 Polynomial J-spectral factorization
5.1 Factorization of the eigenstructure
5.1.1 Extraction of a set of zeros
5.1.2 Extraction of the null-space
5.2 J-spectral factorization
5.2.1 Existence conditions
5.2.2 Algorithm
5.3 Algorithmic analysis
6 Conclusions
6.1 Contexte scientifique
6.2 Contribution et perspectives

projet fin d'etudeTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *