D’après Inverse problems de J. B. Keller, deux problèmes sont dits « inverses » l’un de l’autre si la formulation de l’un met l’autre en cause. Cette définition comporte une part d’arbitraire, et fait jouer un rôle symétrique aux deux problèmes considérés. Une définition plus opérationnelle est qu’un problème inverse consiste à déterminer des causes connaissant des effets. Ainsi, ce problème est l’inverse de celui appelé problème direct, consistant à déduire les effets, les causes étant connues.
Cette seconde définition montre que nous sommes plus habitués à étudier des problèmes « directs ». En effet, depuis Newton la notion de causalité est ancrée dans notre subconscient scientifique, et à un niveau plus prosaïque, nous avons appris à poser, puis à résoudre des problèmes pour lesquels les causes sont données, et l’on en cherche alors les effets. Cette définition montre aussi que les problèmes inverses risquent de poser des difficultés particulières. Nous verrons plus loin qu’il est possible de donner un contenu mathématique à la phrase « les mêmes causes produisent les mêmes effets », autrement dit, qu’il est raisonnable d’exiger que le problème direct soit « bien posé ». Par contre, il est facile d’imaginer, et nous en verrons de nombreux exemples, que les mêmes effets puissent provenir de causes différentes. Cette idée contient en germe la principale difficulté de l’étude des problèmes inverses : ils peuvent avoir plusieurs solutions, et il est nécessaire de disposer d’informations supplémentaires pour les discriminer.
La prédiction de l’état futur d’un système physique, connaissant son état actuel, est l’exemple type du problème direct. On peut envisager divers problèmes inverses : par exemple, reconstituer l’état passé du système connaissant son état actuel (si ce système est irréversible), ou la détermination de paramètres du système, connaissant (une partie de) son évolution. Ce dernier problème est celui de l’identification de paramètres, qui sera notre principale préoccupation dans la deuxième partie de l’article.
Une difficulté pratique de l’étude des problèmes inverses est qu’elle demande souvent une bonne connaissance du problème direct, ce qui se traduit par le recours à une grande variété de notions tant physiques que mathématiques. Le succès dans la résolution d’un problème inverse repose en général sur des éléments spécifiques à ce problème. Il existe toutefois quelques techniques qui possèdent un domaine d’applicabilité étendu, et cet article est une introduction aux principales d’entre elles : la régularisation des problèmes mal posés, et la méthode des moindres carrés, linéaires ou non linéaires.
La plus importante est la reformulation d’un problème inverse sous la forme de la minimisation d’une fonctionnelle d’erreur entre les mesures réelles et les « mesures synthétiques » (c’est-à-dire la solution du problème direct). Il sera commode de distinguer les problèmes linéaires des non linéaires. Précisons que la non-linéarité dont il s’agit ici fait référence au problème inverse lui-même, et non pas au problème direct (en considérant connus les paramètres).
Dans le cas des problèmes linéaires, le recours à l’algèbre linéaire et à l’analyse fonctionnelle permet d’obtenir des résultats précis, et des algorithmes efficaces. L’outil fondamental est ici la décomposition en valeurs singulières de l’opérateur considéré. Nous étudierons en détail la méthode de régularisation, qui consiste à « modifier » légèrement le problème étudié en un autre qui possède de « meilleures » propriétés. Ceci sera précisé au paragraphe 2.3.
Les problèmes non linéaires sont plus difficiles, et il existe moins de résultats généraux. Nous étudierons l’application des algorithmes d’optimisation aux problèmes obtenus par la reformulation évoquée plus haut. Un ingrédient technique essentiel (du point de vue numérique) est le calcul du gradient de la fonctionnelle à minimiser. Nous étudierons les méthodes de calcul de gradient au paragraphe 3.3. Nous verrons en particulier que la méthode de l’état adjoint permet ce calcul pour un coût qui est un (petit) multiple de celui de la résolution du problème direct.