Recherche d'une solution optimale

Bonjour à tous,
Je bloque depuis plusieurs jours sur un problème en apparence très simple mais qui, une fois que l'on s'y penche, l'est beaucoup moins !
J'espère ne pas m'être trompé de catégorie de forum pour ce sujet là.

L'énoncé du problème est le suivant. Je cherche à trouver les paramètres permettant de maximiser un résultat.

Exemple :
On dispose de statistiques générées à posteriori, qui indiquent le résultat obtenu sachant les paramètres utilisés :
Résultat | Param 1 | Param 2 | Param 3 | Param n
     5.4       2.3       1.0       6.0       4.5
     2.3       2.2       1.6       2.5       6.2
    10.2       4.3       4.3       1.0       0.3
    -4.5       1.2       3.3       2.2       3.5
Etc.
Et l'on cherche à connaître la série de paramètres permettant de maximiser le résultat.

Exemple de solution : S = (Param 1 = 2.3, Param 2 = 1.2, Param 3 = 5.3, ...)

Ainsi, je serai en mesure d'appliquer une notation probabiliste pour un futur résultat : la série de paramètres ayant la distance la plus faible avec la solution précédemment trouvée, devrait pouvoir donner le meilleur résultat.

Comment faut-il s'y prendre pour résoudre ce problème ? J'imagine qu'il faut appliquer un algorithme, mais j'ai essayé et je sèche.
Merci par avance pour votre aide !

Réponses

  • Bonjour.

    Il n'y a pas de méthode meilleure que les autres, à priori.

    Si les mêmes paramètres donnent toujours le même résultat, on prend ceux qui ont donné le résultat maximum (dans ton tableau, ceux qui donnent 10). Si on n'est pas sûr qu'on ait le meilleur résultat, on peut essayer de construire un modèle qui recouvre les données et chercher sur ce modèle le maximum.
    S'il y a un effet aléatoire en plus des paramètres contrôlés, on peut utiliser un modèle probabiliste, mais il va falloir plus de données, et le mieux est de reprendre plusieurs fois les mêmes paramètres pour pouvoir contrôler la dispersion (voir les techniques de plans d'expériences).

    Mais dans tous les cas, il faut faire des hypothèses réalistes sur la façon dont les paramètres interviennent, seuls ou en interaction, dans le résultat final. C'est le sens de mon "à priori".

    La réponse à ta question se trouve donc probablement dans l'étude des techniques statistiques de régression.

    Cordialement.
  • Merci pour ta réponse !

    En effet, mon problème implique des effets aléatoires. Ces statistiques sont générées à partir de valeurs constatées dans la vraie vie et éventuellement influencées par des causes aléatoires (on peut imaginer que le résultat soit la note au bac, et dans les paramètres il y a "efforts de révision", "à jeun ou petit déjeuner avant l'épreuve ?", "niveau de stress", etc. On peut trouver les paramètres qui statistiquement maximisent la note du bac mais ça ne garantit pas que ce soit vrai à chaque fois)

    De fait, le fait d'appliquer une notation sur la base de la solution optimale S ne garantirait pas forcément le meilleur résultat mais au moins la plus grande probabilité de l'obtenir. C'est ce que je cherche.

    Et ce tableau est donné juste à titre d'exemple, en réalité je possède des dizaines de milliers de lignes de ce type, donc quand tu dis qu'il faudra plus de données, ce n'est pas un problème.
  • Avec des milliers de lignes, c'est plutôt des techniques de "data mining" qu'il va falloir, et je ne connais pas assez.
    D'autres pourront peut-être te guider.

    Cordialement.
  • Même avec beaucoup de lignes, je commencerais par une régression linéaire ou polynomiale. Comme dit Gérard, cela revient à faire un modèle, en l'occurrence qu'il existe des coefficients $m,a_1,a_2,a_3,b_1,b_2,b_3,...$ (disons qu'on se limite au degré $3$) tels que
    $$
    \text{Résultat}=m+a_1\times\text{Par.1}+a_2\times\text{Par.1}^2+a_3\times\text{Par.1}^3+b_1\times\text{Par.2}+\dots + \text{Bruit aléatoire centré}
    $$
    Un critère habituel est de chercher les coefficients $m,a_1,a_2,a_3,b_1,b_2,b_3,...$ qui minimisent les moindres carrés sur tes données observées. Il y a une formule pas compliquée que même Excel connaît (ça s'appelle "PREVISION" dans OpenOffice).

    Si ça ne marche pas bien alors tu peux essayer d'autres règles, il y a par exemple les arbres de décision qui marchent souvent bien.
Connectez-vous ou Inscrivez-vous pour répondre.