Sujet de stage : Intervalles et systèmes dynamiques : exploitation de la monotonie


Encadrants

Gilles Trombettoni, PU LIRMM, équipe COCONUT, Université de Montpellier (gilles.trombettoni@lirmm.fr)

Victor Reyes, postdoctorant LIRMM, équipe COCONUT, Université de Montpellier

Contexte

Les systèmes dynamiques sont définis par des variables fonctionnelles (fonctions d'une variable représentant par exemple le temps) et des contraintes entre ces variables. La solution d'un système dynamique décrit par exemple la trajectoire d'un robot mobile. Les approches numériques existantes, classiques ou par intervalles [1], sont spécialisées dans la résolution de systèmes très particuliers, comme le IVP (initial value problem) défini par une équation différentielle (EDO) et une condition initiale, éventuellement incertaine, c'est-à-dire comprise dans un intervalle.

Ce sujet se rattache à un projet qui propose des méthodes à intervalles pour résoudre des systèmes dynamiques continus définis par des contraintes différentielles (équations différentielles ordinaires, contraintes à retard, contraintes périodiques, etc.) couplées à des contraintes algébriques (contraintes de mesures prises à des instants donnés, contraintes entre points à différents instants, contraintes sur autres variables réelles). L'approche [2,3] est bien plus générale que les méthodes numériques et permet de traiter, certes de manière encore peu efficace, des systèmes dynamiques pour lesquels aucune méthode de résolution n'est connue. Il s'agit d'une approche "IA" où les systèmes dynamiques sont décrits de manière déclarative comme des CSP sur trajectoires (TrajCSP) qui comprennent, en plus de variables réelles, des variables fonctionnelles dont les valeurs ou les domaines sont compris dans un tube, des fonctions qui bornent la trajectoire. Un tube est implanté comme une séquence d'intervalles (appelées boîtes en dimension supérieure à 1) qui couvrent les pas de temps discrétisés de la fonction. Une bibliothèque C++ appelée Tubex (http://www.simon-rohou.fr/research/tubex-lib/) définissant des opérateurs sur des tubes et une première version de solveur générique de trajCSP font appel à des opérateurs d'analyse par intervalles et à des opérateurs de programmation par contraintes (en domaines finis ou sur intervalles), comme le parcours d'un arbre de recherche ou des algorithmes de consistance forte [4], permettant de réduire l'espace de recherche.

Sujet

Le sujet consiste à améliorer la résolution algorithmique du solveur Tubex en exploitant la monotonie de la fonction (trajectoire) calculée ou de la fonction d'évolution de la contrainte différentielle (dont la matrice jacobienne est Metzler ou possède une variante de cette propriété).

Les algorithmes proposés seront implantés avec Tubex et validés sur des exemples de systèmes dynamiques académiques ou issus de problèmes de robotique mobile.

Connaissances souhaitées

Des connaissances en algorithmique, programmation, raisonnement par contraintes (sur intervalles) et analyse numérique seront appréciées.

Bibliographie

[1] N. Nedialkov, K. Jackson and G. Corliss. Validated solutions of initial value problem for ordinary differential equations. Applied Mathematics and Applications, 105(1), pages 21-68, 1999.

[2] S. Rohou, L. Jaulin, L. Mihaylova, F. Le Bars, S. M. Veres: Reliable non-linear state estimation involving time uncertainties. Automatica 93: 379-388, 2018).

[3] A. Bethencourt and L. Jaulin. Solving non-linear constraint satisfaction problems involving time-dependent functions. Mathematics in Computer Science, 8(3-4), pages 503-523, 2014.

[4] B. Neveu, G. Trombettoni and I. Araya. Adaptive Constructive Interval Disjunction : Algorithms and Experiments. Constraints, 20(4), pages 452-467, 2015.

[5] G. Chabert and L. Jaulin. Contractor Programming. Artificial Intelligence, 173, page 1079-1100, 2009.