1 / 64

Implémentation en précision finie modélisation et recherche de réalisations optimales

Implémentation en précision finie modélisation et recherche de réalisations optimales. Thibault HILAIRE 1,3 - Philippe CHEVREL 1,2 Yvon TRINQUET 1 - Jean Philippe CLAUZEL 3 1 IRCCyN, 2 École des Mines de Nantes, 3 PSA Peugeot Citr o ë n. GdR MACS : GT MOSAR et GT SAR

reidar
Download Presentation

Implémentation en précision finie modélisation et recherche de réalisations optimales

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Implémentation en précision finie modélisation et recherche de réalisations optimales Thibault HILAIRE1,3 - Philippe CHEVREL1,2 Yvon TRINQUET1 - Jean Philippe CLAUZEL3 1 IRCCyN, 2 École des Mines de Nantes, 3 PSA Peugeot Citroën GdR MACS : GT MOSAR et GT SAR Lille, le 10 juin 2005

  2. Plan général • I. Contexte • II. Problématique FWL • III. Forme implicite spécialisée • IV. Mesure de sensibilité • V. Exemples • VI. Conclusion

  3. I. Contexte • Thèse Th. HILAIRE financée par PSA • Lois de contrôle/commande LTI implémentées (mises en œuvre numériquement) dans un calculateur numériquement contraint • Calculs en précision finie (virgule fixe) • Problématique venant du domaine automobile (PSA) • Problématique "temps réel" • Problématique numérique • Dégradation de la loi lors de l'implémentation • Modification des caractéristiques • Modification des performances Comment maîtriser et minimiser cette dégradation ?

  4. Plan général • I. Contexte • II. Problématique FWL • 1. Présentation générale • 2. Méthodologie "logicielle" • 3. Méthodologie "automatique" • 4. Exemples d'implémentation • III. Forme implicite spécialisée • IV. Mesure de sensibilité • V. Exemples • VI. Conclusion

  5. II.1 Présentation générale • Calculs en précision finie (Finite Word Length) • On considère principalement la représentation des nombres en virgule fixe (par opposition à la virgule flottante) • Le pas de quantification est fixé • La dynamique des variables est limitée et figée nombre entier (signé ou non) sur b bits entier représentant le facteur d'échelle , 819,26562.… approximé par 819,25 (4 bits derrière la virgule)

  6. II.1 Présentation générale • La dégradation FWL a deux origines • Quantification des coefficients mis en jeu • Bruits de quantification qui apparaissent dans les calculs (dus aux arrondis)

  7. II.1 Présentation générale • Deux points de vue • Point de vue "logiciel" Choix d'un code logiciel permettant de réaliser au mieux un ensemble d'équations mathématiques (augmenter la précision, diminuer le coût de calcul) • Point de vue "automatique" Choix des équations mathématiques les mieux adaptées pour l'implémentation • Ces points de vue sont complémentaires, mais peu confrontés

  8. II.2 Techniques du logiciel • Consiste principalement • À traduire en code un ensemble d'équations mathématiques, en prenant en compte les contraintes de précision • Méthodologie de conversion automatique de code en virgule flottante vers du code en virgule fixe [Kedi98],[Kim98] • Choix du positionnement de la virgule, gestion des overflow, underflow • À évaluer la dégradation due à la virgule fixe • Evaluation du Rapport Signal à Bruit de Quantification Analytiquement (dans certains cas) ou par la simulation [Mena02] • À choisir la forme du calcul • Il est possible d'émuler un calcul à une précision supérieure, au détriment du temps de calcul • (Ex: calculs 32 bits sur un calculateur 16 bits) • Utilisation de techniques logicielles pour diminuer la dégradation

  9. Plan général • I. Contexte • II. Problématique FWL • 1. Présentation générale • 2. Méthodologie "logicielle" • 3. Méthodologie "automatique" • Modélisation • Analyse : mesures de sensibilité et du bruit de quantification • Opérateur  • 4. Exemples d'implémentation • III. Forme implicite spécialisée • IV. Mesure de sensibilité • V. Exemples • VI. Conclusion

  10. II.3 Modélisation • Lois de contrôle/commande : • Filtres / Régulateurs LTI • Cartographies • Régulateurs LPV • Etc. • Lois caractérisées par leur relation entrée(s)/sortie(s) (avec calcul d'un état) • On ne s'intéressera ici qu'au cas LTI

  11. II.3 Modélisation • Cas LTI : • Pour une loi donnée, il existe une infinité de réalisations équivalentes (par exemple, par changement de base). En précision finie, ces réalisations ne sont plus équivalentes La dégradation dépend de la réalisation choisie • Il convient donc de rechercher, parmi les réalisations possibles, celles qui minimisent un critère caractérisant la dégradation FWL

  12. II.3 Sensibilité de la fonction de transfert vis à vis des coefficients On ne considère que la quantification des coefficients (les calculs sont supposés exacts) • Pour un système (A,B,C,D) de fonction de transfert H(z) [Geve93] propose une mesure de sensibilité Le problème de recherche de réalisation "optimale" s'écrit

  13. II.3 Sensibilité vis à vis des coefficients D'autres mesures de sensibilité vis à vis des coefficients sont étudiées : • Sensibilité des pôles/zéros [Geve93],… • Sensibilité de la stabilité (en boucle fermée) [Iste01] • Sensibilité des pôles en boucle fermée [Wu00] • Autres mesures dérivées

  14. II.3 Bruits de quantification On ne considère que les bruits de quantifications dus aux calculs (les coefficients sont représentés exactement) • Hypothèses de réalisation des calculs • Roundoff Before Multiplication • Roundoff After Multiplication • On étudie la variance de l'erreur de sortie (entre réalisation exacte et réalisation implémentée) • Dans le cas RBM, la variance s'exprime en fonction du Grammien d'observabilité

  15. II.3 Bruits de quantification • Les hypothèses de calcul sont tout de même réductrices • Pas de prise en compte de la taille des calculs (nb de bits) • Pas de prise en compte de la méthode de représentation des coefficients et du vecteur d'état • Quelques cas spécifiques (réinjection de la partie tronquée Residue Feedback, …) sont traités • Différent types d'arrondis (roundoff, truncate, …)

  16. II.3 Opérateur  [Midd90] On considère d'autres réalisations • Opérateur  • Réalisations équivalentes avec

  17. II.3 Opérateur  • On montre que les réalisations en  sont mieux conditionnées numériquement • Sensibilité de la fonction de transfert et de la stabilité vis à vis des coefficients est meilleure en  qu'en q, dès que ∆<1 • Nouvelles mesures de sensibilité pour les réalisations en  • Études, comparaisons de réalisations en q et en 

  18. II.4 Exemples d'implémentation Par exemple, on considère un système du 2nd ordre Une 1ère façon (la plus naturelle) d'implémenter serait : On peut aussi utiliser une représentation dans l'espace d'état minimale. Le choix de l'espace est important (forme canonique, forme équilibrée, …)

  19. II.4 Exemples d'implémentation On peut aussi écrire l'algorithme en utilisant l'opérateur  Choix de la réalisation Ou bien encore avec une forme retour d'état/observateur Pour chaque forme, les coefficients implémentés ne sont pas les mêmes, les effets de la quantification sont différents

  20. II.4 Exemples d'implémentations • En plus de la structure, il est aussi possible d'agencer les calculs de différentes façons • Ex: Calcul émulé 32b Une implémentation : des coefficients (paramétrisation) une structure de calculs

  21. II.4 Problèmes ouverts • Les travaux théoriques de l'Automatique ne prennent pas en compte les solutions algorithmiques souvent mises en oeuvre • Rapprochement des deux approches automatique/informatique • Savoir qualifier des techniques/algorithmes existants • Les coefficients implémentables exactement (0, ±1, puissances de 2, …) ne sont pas pris en compte • Cas MIMO • Méthodologie d'implémentation

  22. Plan général • I. Contexte • II. Problématique FWL • III. Forme implicite spécialisée • 1. Recherche d'un modèle plus réaliste • 2. Forme implicite spécialisée • 3. Exemples • IV. Mesure de sensibilité • V. Exemples • VI. Conclusion

  23. III.1 Recherche d'un modèle plus réaliste • On recherche un modèle macroscopique suffisamment général et davantage représentatif de l'implémentation • Prise en compte des diverses possibilités d'algorithmes et de réalisations (q, , retour d'état observateur, …) : formalisme unificateur • Relation avec le code plus explicite

  24. III.1 Forme implicite spécialisée • On propose de décrire les diverses possibilités d'algorithmes Calculs des variables intermédiaires Calculs de l'état Calculs des sorties

  25. III.1 Forme implicite spécialisée • Variables intermédiaires • Il est intéressant de faire apparaître explicitement tous les calculs réalisés, ainsi que les variables intermédiaires utilisées • Cela permet de distinguer/séparer des calculs réalisés différemment, afin de les caractériser • Exemple : réalisation en 

  26. III.1 Forme implicite spécialisée • Forme implicite spécialisée : Tkest une variable intermédiaire

  27. III.1 Forme implicite spécialisée • Forme implicite • L'état ou la sortie pouvant être calculé à partir des variables intermédiaires, cela implique une forme implicite • Une variable intermédiaire peut être calculée à partir d'une autre variable intermédiaire préalablement calculée, le calcul de T s'écrit • J n'a pas à être inversée avec

  28. III.1 Forme implicite spécialisée • Forme implicite spécialisée : Forme implicite classique Réutilisation des variables intermédiaires

  29. III.1 Forme implicite spécialisée • On peut la rendre explicite • D'où une fonction de transfert H(z) avec

  30. III.4 Exemples • Réalisations en  Une réalisation en  s'exprime comme une réalisation implicite non minimale avec l'opérateur q

  31. III.4 Exemples • Réalisations cascade

  32. III.4 Exemples • Retour d'état observateur Une réalisation possible :

  33. III.4 Exemples • La forme implicite spécialisée permet bien • une meilleure représentativité de la mise en œuvre numérique • d'unifier des représentations diverses • Il faut ensuite mettre en place des critères génériques de qualité permettant d'évaluer l'impact de l'implémentation • Coût de calcul • Sensibilitéà la quantification des coefficients • Bruits de quantification • …

  34. Plan général • I. Contexte • II. Problématique FWL • III. Forme implicite spécialisée • IV. Mesure de sensibilité • V. Exemples • VI. Conclusion

  35. IV. Mesure de sensibilité • Maintenant que l'on peut exprimer tous les coefficients qui entrent en jeu dans une mise en œuvre numérique, il est intéressant d'exhiber une mesure de sensibilité de la fonction de transfert vis à vis des coefficients mis en jeu • Par analogie avec [Geve93], on propose une 1ère mesure avec est strictement propre est indépendant de toute transformation

  36. IV. Mesure de sensibilité • Il faut ensuite prendre en compte les coefficients qui vont être quantifiés pour l'implémentation • Dans la forme implicite spécialisée, de nombreux coefficients sont nuls ou égaux à 1 et n'ont pas à être implémentés • Certains coefficients (puissances de 2, …) peuvent être représentés exactement • À une matrice X de coefficients, on associe une matrice de pondération WX

  37. IV. Mesure de sensibilité • On pose la matrice des normes des sensibilités par rapport aux éléments de X • La précédente mesure s'écrit : • On pondère cette mesure : produit direct

  38. IV. Mesure de sensibilité • Cette mesure peut aussi s'écrire avec

  39. Plan général • I. Contexte • II. Problématique FWL • III. Forme implicite spécialisée • IV. Mesure de sensibilité • V. Exemples • VI. Conclusion

  40. V.1 Exemples • On considère la fonction de transfert suivante • Ce filtre choisi car il possède un triple zéro pour z=-1, et que la position des zéros est donc très sensible par rapports aux coefficients implémentés [Geve93],[Hwan77] • Comparaison de différentes réalisations (par rapport à leur sensibilité paramétrique et à leur coût de calcul)

  41. V.1 Exemples • réalisation canonique, opérateur q Sensibilité (A,B,C non pondérés)

  42. V.1 Exemples • réalisation canonique, opérateur q Sensibilité (A,B,C pondérés)

  43. V.1 Exemples [Geve93] • réalisation équilibrée (opérateur q) Sensibilité

  44. V.1 Exemple • Réalisations avec l'opérateur  • On choisit ∆=0.5 • On étudie les différentes réalisations, parmi celles équivalentes par changement de base

  45. V.1 Exemple • Réalisation avec l'opérateur  • Forme canonique

  46. V.1 Exemple • On a vu que, pour les deux structurations (en q et en ), on pouvait obtenir des réalisations équivalentes par un changement de base sur les matrices systèmes A,B,C,D • Classes et sous-classes de réalisations équivalentes • On cherche donc le changement de base qui minimise la mesure de sensibilité • Problème d'optimisation • Utilisation d'un algorithme de recuit simulé adaptatif

  47. V.1 Exemple • Réalisation optimale, structuration en q Sensibilité

  48. V.1 Exemple • Réalisation optimale avec l'opérateur 

  49. V.1 Exemple • Comparaisons Autres critères pertinents : - taille mémoire utilisée, lisibilité des calculs, flexibilité (face aux changement des paramètres signifiants), généricité

  50. VI. Conclusion • État de l'art • Problèmatique FWL • Un résultat clé : la forme implicite spécialisée • Formalisme unificateur • Forme macroscopique plus représentative des calculs mis en œuvre • Cela ouvre le champ de l'analyse et la synthèse d'implémentations • Des illustrations

More Related