Tu es encore plus optimiste que je le pensais :)
Si :
- N est le nombre d’individus,
- P est le nombre de préférences par individu
- H est le "nombre de valeur possible par préférence" qu’on s’autorise à parcourir, dans le sens que si une préférence peut aller de -10 à 10, et qu’on teste par pas de 0.5, alors H = 40.
Alors le nombre de "$values" dans ton code est : H ^ (P*N)
Par exemple avec H = 10, P = 5 et N = 20, alors H ^ (P*N) = 10^100
(bien sûr il y a des contraintes qui diminuent le nombre de possibilités, sauf que se borner qu’aux valeurs qui respectent ces contraintes, est une complexité en soit)
Utiliser une telle méthode est complètement impossible d’un point de vue pratique, même dans des situations relativement simples et avec peu de monde.
Je pensais que tu avais au moins en tête l’idée d’utiliser le calcul différentiel pour aider dans la recherche.
Ben ça dépend surtout de comment le code est bien expliqué ou pas.
Non, le problème est mathématique, ça n’est pas une question de lisibilité du code.