Fonction de fitness : formaliser ce que l'optimisation récompense

Dans une recherche évolutionnaire, la fonction de fitness décide quels candidats survivent. Elle devient donc la spécification réelle du système. Si elle récompense seulement la vitesse, elle peut sacrifier qualité, équité ou robustesse sans enfreindre aucune instruction.
Traduire le résultat attendu
Commencez par une mesure liée à l'usage final, puis ajoutez les limites de coût, délai, taille ou risque. Séparez les contraintes absolues des préférences. Un candidat invalide ne doit pas gagner grâce à un score moyen élevé.
Évitez d'additionner des indicateurs sans comprendre leurs unités. Documentez les pondérations et montrez comment un changement influence le classement sur des exemples simples.
Chercher les raccourcis indésirables
Construisez des cas où le système pourrait améliorer la métrique tout en dégradant le service. Comparez les candidats sur des scénarios normaux, rares et adversariaux. Une fonction robuste pénalise les solutions qui exploitent une faille d'évaluation.
Examinez plusieurs meilleurs candidats, pas seulement le premier. Des scores proches peuvent cacher des profils très différents en coût, stabilité ou maintenance.
Versionner l'objectif
Conservez la version de la fitness, les données, les graines et les contraintes avec chaque expérience. Une amélioration n'est comparable que si le protocole reste identifiable.
Lorsque les priorités métier changent, relancez une référence simple et réévaluez les anciens gagnants. La mémoire des compromis évite de redécouvrir les mêmes effets secondaires.
Objectif vérifiable
- Relier la métrique à un résultat utilisateur
- Séparer contraintes absolues et préférences
- Tester les raccourcis sur des cas adversariaux
- Comparer plusieurs candidats proches
- Versionner fitness, données et budget
L'optimisation ne comprend pas l'intention implicite. Une bonne fonction de fitness rend les priorités et les limites mesurables avant de lancer la recherche.


