Qu'est-ce que l'optimisation par modèle de substitution ?
Un substitut est une fonction qui approxime une autre fonction. Le substitut est utile car il faut peu de temps pour l’évaluer. Ainsi, par exemple, pour rechercher un point qui minimise une fonction objectif, il suffit d’évaluer son substitut sur des milliers de points et de prendre la meilleure valeur comme approximation du minimiseur de la fonction objectif.
L’optimisation par modèle de substitution est la mieux adaptée aux fonctions objectif qui prennent du temps. La fonction objectif n’a pas besoin d’être lisse, mais l’algorithme fonctionne mieux lorsque la fonction objectif est continue.
L'optimisation par modèle de substitution tente de trouver un minimum global d'une fonction objectif en utilisant quelques évaluations de fonctions objectif. Pour ce faire, l’algorithme tente d’équilibrer le processus d’optimisation entre deux objectifs : l’exploration et la vitesse.
Exploration à la recherche d'un minimum global.
Rapidité pour obtenir une bonne solution dans quelques évaluations de fonctions objectif.
Il a été prouvé que l’algorithme converge vers une solution globale pour les fonctions objectif continues sur des domaines délimités. Voir Gutmann [1]. Cependant, cette convergence n’est pas rapide.
En général, il n’existe pas de critère d’arrêt utile qui arrête le solveur lorsqu’il est proche d’une solution globale. En règle générale, vous définissez un critère d’arrêt composé d’un certain nombre d’évaluations de fonctions ou d’une durée, et vous choisissez la meilleure solution trouvée dans le cadre de ce budget de calcul.
Pour plus de détails sur l'algorithme surrogateopt
, voir Surrogate Optimization Algorithm.
Références
[1] Gutmann, H.-M. A radial basis function method for global optimization. Journal of Global Optimization 19, Issue 3, 2001, pp. 201–227. https://doi.org/10.1023/A:1011255519438