2 Copyright (C) 2008-2018 EDF R&D
4 This file is part of SALOME ADAO module.
6 This library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Lesser General Public
8 License as published by the Free Software Foundation; either
9 version 2.1 of the License, or (at your option) any later version.
11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Lesser General Public License for more details.
16 You should have received a copy of the GNU Lesser General Public
17 License along with this library; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D
24 .. index:: single: DerivativeFreeOptimization
25 .. _section_ref_algorithm_DerivativeFreeOptimization:
27 Algorithme de calcul "*DerivativeFreeOptimization*"
28 ---------------------------------------------------
32 dans sa présente version, cet algorithme est expérimental, et reste donc
33 susceptible de changements dans les prochaines versions.
38 Cet algorithme réalise une estimation d'état d'un système par minimisation d'une
39 fonctionnelle d'écart :math:`J` sans gradient. C'est une méthode qui n'utilise
40 pas les dérivées de la fonctionnelle d'écart. Elle entre, par exemple, dans la
41 même catégorie que l':ref:`section_ref_algorithm_ParticleSwarmOptimization`.
43 C'est une méthode d'optimisation permettant la recherche du minimum global d'une
44 fonctionnelle d'erreur :math:`J` quelconque de type :math:`L^1`, :math:`L^2` ou
45 :math:`L^{\infty}`, avec ou sans pondérations. La fonctionnelle d'erreur par
46 défaut est celle de moindres carrés pondérés augmentés, classiquement utilisée
47 en assimilation de données.
49 Commandes requises et optionnelles
50 ++++++++++++++++++++++++++++++++++
52 Les commandes requises générales, disponibles dans l'interface en édition, sont
55 .. include:: snippets/Background.rst
57 .. include:: snippets/BackgroundError.rst
59 .. include:: snippets/Observation.rst
61 .. include:: snippets/ObservationError.rst
63 .. include:: snippets/ObservationOperator.rst
65 Les commandes optionnelles générales, disponibles dans l'interface en édition,
66 sont indiquées dans la :ref:`section_ref_assimilation_keywords`. De plus, les
67 paramètres de la commande "*AlgorithmParameters*" permettent d'indiquer les
68 options particulières, décrites ci-après, de l'algorithme. On se reportera à la
69 :ref:`section_ref_options_Algorithm_Parameters` pour le bon usage de cette
72 Les options de l'algorithme sont les suivantes:
74 .. include:: snippets/Minimizer_DFO.rst
76 .. include:: snippets/BoundsWithNone.rst
78 .. include:: snippets/MaximumNumberOfSteps.rst
80 .. include:: snippets/MaximumNumberOfFunctionEvaluations.rst
82 .. include:: snippets/StateVariationTolerance.rst
84 .. include:: snippets/CostDecrementTolerance.rst
86 .. include:: snippets/QualityCriterion.rst
88 StoreSupplementaryCalculations
89 .. index:: single: StoreSupplementaryCalculations
91 Cette liste indique les noms des variables supplémentaires qui peuvent être
92 disponibles à la fin de l'algorithme. Cela implique potentiellement des
93 calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
94 aucune de ces variables n'étant calculée et stockée par défaut. Les noms
95 possibles sont dans la liste suivante : ["BMA", "CostFunctionJ",
96 "CostFunctionJb", "CostFunctionJo", "CostFunctionJAtCurrentOptimum",
97 "CostFunctionJbAtCurrentOptimum", "CostFunctionJoAtCurrentOptimum",
98 "CurrentOptimum", "CurrentState", "IndexOfOptimum",
99 "InnovationAtCurrentState", "OMA", "OMB",
100 "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentOptimum",
101 "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"].
104 ``{"StoreSupplementaryCalculations":["BMA", "Innovation"]}``
106 Informations et variables disponibles à la fin de l'algorithme
107 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
109 En sortie, après exécution de l'algorithme, on dispose d'informations et de
110 variables issues du calcul. La description des
111 :ref:`section_ref_output_variables` indique la manière de les obtenir par la
112 méthode nommée ``get`` de la variable "*ADD*" du post-processing. Les variables
113 d'entrée, mises à disposition de l'utilisateur en sortie pour faciliter
114 l'écriture des procédures de post-processing, sont décrites dans
115 l':ref:`subsection_r_o_v_Inventaire`.
117 Les sorties non conditionnelles de l'algorithme sont les suivantes:
119 .. include:: snippets/Analysis.rst
121 .. include:: snippets/CostFunctionJ.rst
123 .. include:: snippets/CostFunctionJb.rst
125 .. include:: snippets/CostFunctionJo.rst
127 .. include:: snippets/CurrentState.rst
129 Les sorties conditionnelles de l'algorithme sont les suivantes:
131 .. include:: snippets/CostFunctionJAtCurrentOptimum.rst
133 .. include:: snippets/CostFunctionJbAtCurrentOptimum.rst
135 .. include:: snippets/CostFunctionJoAtCurrentOptimum.rst
137 .. include:: snippets/CurrentOptimum.rst
139 .. include:: snippets/IndexOfOptimum.rst
141 .. include:: snippets/InnovationAtCurrentState.rst
143 .. include:: snippets/OMA.rst
145 .. include:: snippets/OMB.rst
147 .. include:: snippets/SimulatedObservationAtBackground.rst
149 .. include:: snippets/SimulatedObservationAtCurrentOptimum.rst
151 .. include:: snippets/SimulatedObservationAtCurrentState.rst
153 .. include:: snippets/SimulatedObservationAtOptimum.rst
158 Références vers d'autres sections :
159 - :ref:`section_ref_algorithm_ParticleSwarmOptimization`
161 Références bibliographiques :