From: Jean-Philippe ARGAUD Date: Wed, 12 May 2021 19:03:49 +0000 (+0200) Subject: Minor documentation review corrections (2) X-Git-Tag: V9_7_0rc2~2 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=14c7137ada5001014a3d6b68f9d9275ee73ca1bb;p=modules%2Fadao.git Minor documentation review corrections (2) --- diff --git a/doc/en/images/meth_ad_and_opt.png b/doc/en/images/meth_ad_and_opt.png new file mode 100644 index 0000000..a44d27c Binary files /dev/null and b/doc/en/images/meth_ad_and_opt.png differ diff --git a/doc/en/images/meth_steps_in_study.png b/doc/en/images/meth_steps_in_study.png index da2e59d..6ecdb71 100644 Binary files a/doc/en/images/meth_steps_in_study.png and b/doc/en/images/meth_steps_in_study.png differ diff --git a/doc/en/snippets/BackgroundError.rst b/doc/en/snippets/BackgroundError.rst index a694d64..df771e5 100644 --- a/doc/en/snippets/BackgroundError.rst +++ b/doc/en/snippets/BackgroundError.rst @@ -1,4 +1,6 @@ .. index:: single: BackgroundError +.. index:: single: ScalarSparseMatrix +.. index:: single: DiagonalSparseMatrix BackgroundError *Matrix*. This indicates the background error covariance matrix, previously diff --git a/doc/en/snippets/EvolutionError.rst b/doc/en/snippets/EvolutionError.rst index 6721362..3b7729c 100644 --- a/doc/en/snippets/EvolutionError.rst +++ b/doc/en/snippets/EvolutionError.rst @@ -1,4 +1,6 @@ .. index:: single: EvolutionError +.. index:: single: ScalarSparseMatrix +.. index:: single: DiagonalSparseMatrix EvolutionError *Matrix*. The variable indicates the evolution error covariance matrix, diff --git a/doc/en/snippets/ObservationError.rst b/doc/en/snippets/ObservationError.rst index 058aa4e..46d964e 100644 --- a/doc/en/snippets/ObservationError.rst +++ b/doc/en/snippets/ObservationError.rst @@ -1,4 +1,6 @@ .. index:: single: ObservationError +.. index:: single: ScalarSparseMatrix +.. index:: single: DiagonalSparseMatrix ObservationError *Matrix*. The variable indicates the observation error covariance matrix, diff --git a/doc/en/theory.rst b/doc/en/theory.rst index a319ac3..328dde9 100644 --- a/doc/en/theory.rst +++ b/doc/en/theory.rst @@ -143,6 +143,35 @@ consideration is greatly facilitated by the data assimilation framework, which makes it possible to objectively process a heterogeneous set of available information. +Joint estimation of states and parameters +----------------------------------------- + +.. index:: single: joint estimation of states and parameters + +It is sometimes necessary, when considering the two previous types of +applications, to need to simultaneously estimate states (fields) and parameters +characterising a physical phenomenon. This is known as **joint estimation of +states and parameters**. + +Without going into the advanced methods to solve this problem, we can mention +the conceptually very simple approach of considering the vector of states to be +interpolated as *augmented* by the vector of parameters to be calibrated. The +assimilation or optimization algorithms can then be applied to the augmented +vector. Valid for moderate nonlinearities in the simulation, this simple method +extends the optimization space, and thus leads to larger problems, but it is +often possible to reduce the representation to numerically computable cases. +Without exhaustiveness, the separated variables optimization, the reduced rank +filtering, or the specific treatment of covariance matrices, are common +techniques to avoid this dimension problem. We note that, in the temporal case, +the evolution of the parameters to be estimated is simply the identity. + +To go further, we refer to the mathematical methods of optimization and +augmentation developed in many books or specialized articles, finding their +origin for example in [Lions68]_, [Jazwinski70]_ or [Dautray85]_. In particular +in the case of more marked nonlinearities during the numerical simulation of +the states, it is advisable to treat in a more complete but also more complex +way the problem of joint estimation of states and parameters. + Simple description of the data assimilation methodological framework -------------------------------------------------------------------- @@ -262,6 +291,30 @@ operators. Many other variants have been developed to improve the numerical quality of the methods or to take into account computer requirements such as calculation size and time. +A schematic view of Data Assimilation and Optimization approaches +----------------------------------------------------------------- + +To help the reader get an idea of the approaches that can be used with ADAO in +Data Assimilation and Optimization, we propose here a simplified scheme +describing an arbitrary classification of methods. It is partially and freely +inspired by [Asch16]_ (Figure 1.5). + + .. _meth_steps_in_study: + .. image:: images/meth_ad_and_opt.png + :align: center + :width: 75% + .. centered:: + **A simplified classification of methods that can be used with ADAO in Data Assimilation and Optimization** + +It is deliberately simple to remain readable, the dashed lines showing some of +the simplifications. For example, it does not specifically mention the methods +with reductions, some of which were variations of the basic methods shown here, +nor does it mention the more detailed extensions. It also omits the test +methods available in ADAO and useful for the study. + +Each method mentioned in this diagram is the subject of a specific descriptive +section in the chapter on :ref:`section_reference_assimilation`. + Going further in the data assimilation framework ------------------------------------------------ @@ -411,3 +464,102 @@ it is available in the ADAO module: The reader interested in the subject of optimization can look at [WikipediaMO]_ as a general entry point. + +Reduction methods and reduced optimization +------------------------------------------ + +.. index:: single: reduction +.. index:: single: reduction methods +.. index:: single: reduced methods +.. index:: single: reduced space +.. index:: single: neutral sub-space +.. index:: single: SVD +.. index:: single: POD +.. index:: single: PCA +.. index:: single: Kahrunen-Loeve +.. index:: single: RBM +.. index:: single: EIM +.. index:: single: Fourier +.. index:: single: wavelets +.. index:: single: EOF +.. index:: single: sparse + +Data assimilation and optimization approaches always imply a certain amount of +reiteration of a unitary numerical simulation representing the physics that is +to be treated. In order to handle this physics as well as possible, this +elementary numerical simulation is often of large size, even huge, and leads to +an extremely high computational cost when it is repeated. The complete physical +simulation is often called "*high fidelity simulation*" (or "*full scale +simulation*"). + +In a generic way, **reduction methods thus aim at reducing the computational +cost of the optimization while controlling as much as possible the numerical +error implied by this reduction**. + +To establish this, one seeks to reduce at least one of the ingredients that +make up the data assimilation or optimization problem. One can thus classify +the reduction methods according to the ingredient on which they operate, +knowing that some methods deal with several of them. A rough classification is +provided here, which the reader can complete by reading general mathematical +books or articles, or those specialized in his physics. + +Reduction of data assimilation or optimization algorithms: + the optimization algorithms themselves can generate significant + computational costs to process numerical information. Various methods can + be used to reduce their algorithmic cost, for example by working in the + most suitable reduced space for optimization, or by using multi-level + optimization techniques. ADAO has such techniques that are included in + variants of classical algorithms, leading to exact or approximate but + numerically more efficient resolutions. By default, the algorithmic options + chosen in ADAO are always the most efficient when they do not impact the + quality of the optimization. + +Reduction of the representation of covariances: + in data assimilation algorithms, covariances are the most expensive + quantities to handle or to store, often becoming the limiting quantities + from the point of view of the computational cost. Many methods try to use a + reduced representation of these matrices (leading sometimes but not + necessarily to reduce the dimension of the optimization space). + Classically, factorization, decomposition (spectral, Fourier, wavelets...) + or ensemble estimation (EOF...) techniques, or combinations, are used to + reduce the numerical load of these covariances in the computations. ADAO + uses some of these techniques, in combination with sparse computation + techniques, to make the handling of covariance matrices more efficient. + +Reduction of the physical model: + the simplest way to reduce the cost of the unit calculation consists in + reducing the simulation model itself, by representing it in a more economic + way. Numerous methods allow this reduction of models by ensuring a more or + less rigorous control of the approximation error generated by the + reduction. The use of simplified models of the physics allows a reduction + but without always producing an error control. On the contrary, all + decomposition methods (Fourier, wavelets, SVD, POD, PCA, Kahrunen-Loeve, + RBM, EIM, etc.) aim at a reduction of the representation space with an + explicit error control. Although they are very frequently used, they must + nevertheless be completed by a fine analysis of the interaction with the + optimization algorithm in which the reduced computation is inserted, in + order to avoid instabilities, discrepancies or inconsistencies that are + notoriously harmful. ADAO fully supports the use of this type of reduction + method, even if it is often necessary to establish this generic independent + reduction prior to the optimization. + +Reduction of the data assimilation or optimization space: + the size of the optimization space depends greatly on the type of problem + treated (estimation of states or parameters) but also on the number of + observations available to conduct the data assimilation. It is therefore + sometimes possible to conduct the optimization in the smallest space by + adapting the internal formulation of the optimization algorithms. When it + is possible and judicious, ADAO integrates this kind of reduced formulation + to improve the numerical performance without reducing the quality of the + optimization. + +Combining multiple reductions: + many advanced algorithms seek to combine multiple reduction techniques + simultaneously. However, it is difficult to have both generic and robust + methods, and to use several very efficient reduction techniques at the same + time. ADAO integrates some of the most robust methods, but this aspect is + still largely the subject of research and development. + +One can end this quick overview of reduction methods by pointing out that their +use is ubiquitous in real applications and in numerical tools, and that ADAO +allows to use proven methods without even knowing it. diff --git a/doc/fr/images/meth_ad_and_opt.png b/doc/fr/images/meth_ad_and_opt.png new file mode 100644 index 0000000..104d0bd Binary files /dev/null and b/doc/fr/images/meth_ad_and_opt.png differ diff --git a/doc/fr/images/meth_steps_in_study.png b/doc/fr/images/meth_steps_in_study.png index f9a81ec..1030223 100644 Binary files a/doc/fr/images/meth_steps_in_study.png and b/doc/fr/images/meth_steps_in_study.png differ diff --git a/doc/fr/snippets/BackgroundError.rst b/doc/fr/snippets/BackgroundError.rst index 1a09882..525fa01 100644 --- a/doc/fr/snippets/BackgroundError.rst +++ b/doc/fr/snippets/BackgroundError.rst @@ -1,4 +1,6 @@ .. index:: single: BackgroundError +.. index:: single: ScalarSparseMatrix +.. index:: single: DiagonalSparseMatrix BackgroundError *Matrice*. La variable désigne la matrice de covariance des erreurs diff --git a/doc/fr/snippets/EvolutionError.rst b/doc/fr/snippets/EvolutionError.rst index 9a770bd..35c2376 100644 --- a/doc/fr/snippets/EvolutionError.rst +++ b/doc/fr/snippets/EvolutionError.rst @@ -1,4 +1,6 @@ .. index:: single: EvolutionError +.. index:: single: ScalarSparseMatrix +.. index:: single: DiagonalSparseMatrix EvolutionError *Matrice*. La variable désigne la matrice de covariance des erreurs *a diff --git a/doc/fr/snippets/ObservationError.rst b/doc/fr/snippets/ObservationError.rst index 304fec6..0f49f94 100644 --- a/doc/fr/snippets/ObservationError.rst +++ b/doc/fr/snippets/ObservationError.rst @@ -1,4 +1,6 @@ .. index:: single: ObservationError +.. index:: single: ScalarSparseMatrix +.. index:: single: DiagonalSparseMatrix ObservationError *Matrice*. La variable désigne la matrice de covariance des erreurs *a diff --git a/doc/fr/theory.rst b/doc/fr/theory.rst index c2ab6a3..a97d886 100644 --- a/doc/fr/theory.rst +++ b/doc/fr/theory.rst @@ -155,6 +155,37 @@ conditions aux limites. Leur prise en compte simultanée est largement facilité par la démarche d'assimilation de données, permettant de traiter objectivement un ensemble hétérogène d'informations à disposition. +Estimation conjointe d'états et de paramètres +--------------------------------------------- + +.. index:: single: estimation conjointe d'états et de paramètres + +Il parfois nécessaire, en considérant les deux types d'applications +précédentes, d'avoir besoin d'estimer en même temps des états (champs) et des +paramètres caractérisant un phénomène physique. On parle alors **d'estimation +conjointe d'états et de paramètres**. + +Sans rentrer ici dans les méthodes avancées pour résoudre ce problème, on peut +mentionner la démarche conceptuellement très simple consistant à considérer le +vecteur des états à interpoler comme *augmenté* par le vecteur des paramètres à +caler. Les algorithmes d'assimilation ou d'optimisation peuvent ensuite être +appliqués au vecteur augmenté. Valable dans le cas de non-linéarités modérées +dans la simulation, cette méthode simple étend l'espace d'optimisation, et +conduit donc à des problèmes plus gros, mais il est souvent possible de réduire +la représentation pour revenir à des cas numériquement calculables. Sans +exhaustivité, l'optimisation à variables séparées, le filtrage de rang réduit, +ou le traitement spécifique des matrices de covariances, sont des techniques +courantes pour éviter ce problème de dimension. On note que, dans le cas +temporel, l'évolution des paramètres à estimer est simplement l'identité. + +Pour aller plus loin, on se référera aux méthodes mathématiques d'optimisation +et d'augmentation développées dans de nombreux ouvrages ou articles +spécialisés, trouvant leur origine par exemple dans [Lions68]_, [Jazwinski70]_ +ou [Dautray85]_. En particulier dans le cas de non-linéarités plus marquées +lors de la simulation numérique des états, il convient de traiter de manière +plus complète mais aussi plus complexe le problème d'estimation conjointe +d'états et de paramètres. + Description simple du cadre méthodologique de l'assimilation de données ----------------------------------------------------------------------- @@ -277,6 +308,31 @@ variantes ont été développées pour accroître la qualité numérique des mé ou pour prendre en compte des contraintes informatiques comme la taille ou la durée des calculs. +Une vue schématique des approches d'Assimilation de Données et d'Optimisation +----------------------------------------------------------------------------- + +Pour aider le lecteur à se faire un idée des approches utilisables avec ADAO en +Assimilation de Données et en Optimisation, on propose ici un schéma simplifié +décrivant une classification arbitraire des méthodes. Il est partiellement et +librement inspiré de [Asch16]_ (Figure 1.5). + + .. _meth_steps_in_study: + .. image:: images/meth_ad_and_opt.png + :align: center + :width: 75% + .. centered:: + **Une classification simplifiée de méthodes utilisables avec ADAO en Assimilation de Données et et en Optimisation** + +Il est volontairement simple pour rester lisible, les lignes tiretées montrant +certaines des simplifications. Ce schéma omet par exemple de citer +spécifiquement les méthodes avec réductions, dont une partie sont des variantes +de méthodes de base indiquées ici, ou de citer les extensions les plus +détaillées. Il omet de même les méthodes de tests disponibles dans ADAO et +utiles pour la mise en étude. + +Chaque méthode citée dans ce schéma fait l'objet d'une partie descriptive +spécifique dans le chapitre des :ref:`section_reference_assimilation`. + Approfondir le cadre méthodologique de l'assimilation de données ---------------------------------------------------------------- @@ -439,3 +495,109 @@ mentionne que quelques méthodes qui sont disponibles dans ADAO : Le lecteur intéressé par le sujet de l'optimisation pourra utilement commencer sa recherche grâce au point d'entrée [WikipediaMO]_. + +Méthodes de réduction et optimisation réduite +--------------------------------------------- + +.. index:: single: réduction +.. index:: single: méthodes de réduction +.. index:: single: méthodes réduites +.. index:: single: espace réduit +.. index:: single: sous-espace neutre +.. index:: single: SVD +.. index:: single: POD +.. index:: single: PCA +.. index:: single: Kahrunen-Loeve +.. index:: single: RBM +.. index:: single: EIM +.. index:: single: Fourier +.. index:: single: ondelettes +.. index:: single: EOF +.. index:: single: sparse + +Les démarches d'assimilation de données et d'optimisation impliquent toujours +une certaine réitération d'une simulation numérique unitaire représentant la +physique que l'on veut traiter. Pour traiter au mieux cette physique, cette +simulation numérique unitaire est souvent de taille importante voire imposante, +et conduit à un coût calcul extrêmement important dès lors qu'il est répété. La +simulation physique complète est souvent appelée "*simulation haute fidélité*" +(ou "*full scale simulation*"). + +De manière générale, **les méthodes de réduction visent donc à réduire le coût de +calcul de l'optimisation tout en contrôlant au mieux l'erreur numérique +impliquée par cette réduction**. + +Pour établir cela, on cherche à réduire au moins l'un des ingrédients qui +composent le problème d'assimilation de données ou d'optimisation. On peut +ainsi classer les méthodes de réduction selon l'ingrédient sur lequel elles +opèrent, en sachant que certaines méthodes portent sur plusieurs d'entre eux. +On indique ici une classification grossière, que le lecteur peut compléter par +la lecture d'ouvrages ou d'articles généraux en mathématiques ou spécialisés +pour sa physique. + +Réduction des algorithmes d'assimilation de données ou d'optimisation : + les algorithmes d'optimisation eux-mêmes peuvent engendrer des coûts de + calculs importants pour traiter les informations numériques. Diverses + méthodes permettent de réduire leur coût algorithmique, par exemple en + travaillant dans l'espace réduit le plus adéquat pour l'optimisation, ou en + utilisant des techniques d'optimisation multi-niveaux. ADAO dispose de + telles techniques qui sont incluses dans les variantes d'algorithmes + classiques, conduisant à des résolutions exactes ou approximées mais + numériquement plus efficaces. Par défaut, les options algorithmiques + choisies par défaut dans ADAO sont toujours les plus performantes + lorsqu'elles n'impactent pas la qualité de l'optimisation. + +Réduction de la représentation des covariances : + dans les algorithmes d'assimilation de données, ce sont les covariances qui + sont les grandeurs les plus coûteuses à manipuler ou à stocker, devenant + souvent les quantités limitantes du point de vue du coût de calcul. De + nombreuses méthodes cherchent donc à utiliser une représentation réduite de + ces matrices (conduisant parfois mais pas obligatoirement à réduire aussi + la dimension l'espace d'optimisation). On utilise classiquement des + techniques de factorisation, de décomposition (spectrale, Fourier, + ondelettes...) ou d'estimation d'ensemble (EOF...), ou des combinaisons, + pour réduire la charge numérique de ces covariances dans les calculs. ADAO + utilise certaines de ces techniques, en combinaison avec des techniques de + calcul creux ("sparse"), pour rendre plus efficace la manipulation des + matrices de covariance. + +Réduction du modèle physique : + la manière la plus simple de réduire le coût du calcul unitaire consiste à + réduire le modèle de simulation lui-même, en le représentant de manière + numériquement plus économique. De nombreuses méthodes permettent cette + réduction de modèles en assurant un contrôle plus ou moins strict de + l'erreur d'approximation engendrée par la réduction. L'usage de modèles + simplifiés de la physique permet une réduction mais sans toujours produire + un contrôle d'erreur. Au contraire, toutes les méthodes de décomposition + (Fourier, ondelettes, SVD, POD, PCA, Kahrunen-Loeve, RBM, EIM, etc.) visent + ainsi une réduction de l'espace de représentation avec un contrôle d'erreur + explicite. Très fréquemment utilisées, elles doivent néanmoins être + complétées par une analyse fine de l'interaction avec l'algorithme + d'optimisation dans lequel le calcul réduit est inséré, pour éviter des + instabilités, incohérences ou inconsistances notoirement préjudiciables. + ADAO supporte complètement l'usage de ce type de méthode de réduction, même + s'il est souvent nécessaire d'établir cette réduction indépendante + générique préalablement à l'optimisation. + +Réduction de l'espace d'assimilation de données ou d'optimisation : + la taille de l'espace d'optimisation dépend grandement du type de problème + traité (estimation d'états ou de paramètres) mais aussi du nombre + d'observations dont on dispose pour conduire l'assimilation de données. Il + est donc parfois possible de conduire l'optimisation dans l'espace le plus + petit par une adaptation de la formulation interne des algorithmes + d'optimisation. Lorsque c'est possible et judicieux, ADAO intègre ce genre + de formulation réduite pour améliorer la performance numérique sans + amoindrir la qualité de l'optimisation. + +Combinaison de plusieurs réductions : + de nombreux algorithmes avancés cherchent à combiner simultanément + plusieurs techniques de réduction. Néanmoins, il est difficile de disposer + à la fois de méthodes génériques et robustes, et d'utiliser en même temps + de plusieurs techniques très performantes de réduction. ADAO intègre + certaines méthodes parmi les plus robustes, mais cet aspect fait toujours + largement l'objet de recherches et d'évolutions. + +On peut terminer ce rapide tour d'horizon des méthodes de réduction par le fait +que leur usage est omni-présent dans les applications réelles et dans les +outils numériques, et qu'ADAO permet d'utiliser les méthodes éprouvées sans +même le savoir.