Contenu principal

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

Maximiser ou minimiser

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))(x122x1x2+6x1+4x223x2).

Écrivez une fonction pour calculer

g(x)=f(x)=exp((x12+x22))(x122x1x2+6x1+4x223x2),

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