Contenu principal

Cette page a été traduite par traduction automatique. Cliquez ici pour voir la dernière version en anglais.

Maximiser ou minimiser

R2025a

Les fonctions d'optimisation Global Optimization Toolbox minimisent la fonction objectif (ou fitness). C'est-à-dire qu'ils résolvent des problèmes de la forme

minxf(x).

Si vous souhaitez maximiser f(x), minimisez – f(x), car le point auquel le minimum de – f(x) se produit est le même que le point auquel le maximum de f(x) se produit.

Par exemple, supposons que vous souhaitiez maximiser la fonction

f(x)=exp(−(x12+x22))(x12−2x1x2+6x1+4x22−3x2).

Écrivez une fonction pour calculer

g(x)=−f(x)=−exp(−(x12+x22))(x12−2x1x2+6x1+4x22−3x2),

et ensuite minimiser g(x). Commencez à partir du point x0 = [0 0].

f = @(x)exp(-(x(1)^2 + x(2)^2))*(x(1)^2 - 2*x(1)*x(2) + 6*x(1) + 4*x(2)^2 - 3*x(2));
g = @(x)-f(x);
x0 = [0 0];
[xmin,gmin] = fminsearch(g,x0)
xmin =

    0.5550   -0.5919


gmin =

   -3.8683

Le maximum de f est la valeur de f(xmin), qui est – gmin.

f(xmin)
ans =

    3.8683

Voir aussi

Rubriques