Présentation d'un problème proposé pour l'atelier de la journée OEP 2003
Le problème soumis doit être présenté au plus tard en fin de matinée, imprimé ou manuscrit lisible.
Cet atelier ne durant que 45 minutes, et la machine utilisée étant un micro-ordinateur portable moyen, les problèmes de minimisation proposés doivent satisfaire à trois critères :
codables en quelques lignes de langage C, en respectant les variables du programme d'OEP qui sera utilisé (en l'occurrence Tribes),
ne demandant pas trop de ressources mémoire (pas de grands tableaux),
convergence obtenue au plus en quelques minutes avec une autre méthode.
Pour fixer les idées, voici trois exemples possibles.
Nom : Alpine Proposé par : Dominique Azertyuiop
Espace de recherche : [0 100] 5
Minimum à atteindre : 0 Précision souhaitée : 0,00001
Nombre d'évaluations de la fonction « plausible » pour atteindre cet objectif : 2000
Description en C :
total.f[0]=0;product=1;
for( d=0;d<DD;d++)
{
xid=sin(pos.p.x[d]);
product=product*xid;
total.f[0]=total.f[0]+(d+1)*pos.p.x[d]*xid;
}
total.f[0]=((product+1.1)*fabs(total.f[0]));
Nom : J&M Proposé par : Jeannet & Messine (ROADEF 2003)
Espace de recherche :
dimension 1 => [0,5], granularité 1 (nombres entiers)
dimension 2 => [-15,25]
dimension 3 => [3,10]
Minimum à atteindre : -112,15 Précision souhaitée : 0,000001
Nombre d'évaluations de la fonction « plausible » pour atteindre cet objectif : 3200
Description en C :
static double a1[6]= { 0.5, 0.3, 0.8, 0.1, 0.9, 0.12}
static double a2[6]= {-0.5, 0.6, 0.1, 1.5, -1, 0.8};
i=pos.p.x[ 0];
x2=pos.p.x[ 1];
x3= pos.p.x[ 2];
total.f[0]=20*a1[i]*x2*x2 + 2*a2[i]*x2*x3;
Nom : Lis-Eiben (multiobjectif deux fonctions)
Espace de recherche : [0,1]2
Au moins 40 points sur le front de Pareto. Précision souhaitée : 0,001
Description en C:
x1=pos.p.x[ 0];
x2=pos.p.x[ 1];
x1=x1*x1+x2*x2;
f1=pow(x1,1.0/8);
x1= pos.p.x[ 0]-0.5;
x2= pos.p.x[ 1]-0.5;
x2=x1*x1+x2*x2;
f2=pow(x2,1.0/4);
total.f[0]=f1;
total.f[1]=f2;