UVSQ - Master DSME P. Vannucci - 2006 Introduction à l Optimisation des Structures Métaheuristiques
Introduction Les méthodes classiques pour la solution des NLPP (Non Linear Programming Problem) sont les meilleures en cas de convexité Toutefois, elles ne sont pas indiquées (quoi que utilisées) pour les NLPP non convexes: la dépendance de la solution finale du point de départ et l impossibilité de savoir si le minimum trouvé est global ou local sont des défauts intrinsèques aux approches classiques En outre, ces méthodes, qui s appuient sur le calcul du gradient, sont difficilement applicables aux NLPP avec des fonctions objectif non régulières (discontinues ou avec gradient discontinu) et à ceux qui dépendent de variables discrètes, comme c est souvent le cas pour les structures 2
Métaheuristiques (1) L avènement d ordinateurs de puissance suffisante a rendu possible la mise au point de méthodes complètement nouvelles, appelées souvent métaheuristiques Une métaheuristique est une méthode d optimisation globale pour NLPP non convexes et qui est guidée dans sa stratégie de recherche par l usage organisé d une ou plusieurs règles empiriques, qui s inspirent d un quelque phénomène en le reproduisant synthétiquement 3
Métaheuristiques (2) Généralement, les métaheuristiques sont des approches stochastiques, qui se basent sur la génération d une grande quantité de nombres aléatoires et sur des manipulations probabilistes D habitude, elles ne nécessitent pas le calcul du gradient (méthodes d ordre 0) et traitent de façon identique et sans difficulté tout genre de variables: continues, discrètes, groupées Les métaheuristiques réussissent mieux que les méthodes classiques dans le traitement des problèmes de grande taille (même des milliers de variables) Un autre avantage des métaheuristiques c est que normalement sont de programmation simple et à schéma relativement libre 4
Métaheuristiques (3) La reproduction synthétique d une règle qui gère un certain phénomène donne la structure d action d une métaheuristique, le guidage dans l exploration du domaine de faisabilité Plus que de méthodes d optimisation, il faut voir les métaheuristiques comme des méthodes d exploration du domaine de faisabilité Dans cette exploration le hasard joue un rôle important, mais normalement l exploration n est pas aveugle: elle se base sur une auto-organisation du système dans la gestion des informations qu il est capable de tirer de l exploration même Cette auto-organisation traite l information et guide l exploration en l absence d une autorité centrale: c est une forme d intelligence artificielle 5
Métaheuristiques (4) Un grand nombre de métaheuristiques, avec plusieurs variantes, ont été mises au point jusqu aujourd hui Les phénomènes auxquels elles s inspirent sont les plus divers; citons par exemple: méthode de Monte-Carlo, inspirée au jeu de hasard recuit simulé, inspiré à la thermodynamique méthode tabou, inspirée à la gestion de la mémoire métaphores biologiques, inspirées au monde du vivant: réseaux de neurones, inspirés au fonctionnement du cerveau réseaux immunitaires, inspirés au fonctionnement du système immunitaire algorithmes génétiques, inspirés à la génétique et aux lois de l évolution colonies de fourmis, inspirées au comportement social des fourmis particle swarms, inspirés au comportement dynamique des volées d oiseaux 6
Métaheuristiques (5) L idée et le but commun au métaheuristiques est celui d explorer efficacement le domaine de faisabilité, en contournant de la façon la plus efficace possible les difficultés liées à la recherche d un minimum global L exploration sur base aléatoire est la clef du succès contre la non convexité Les métaheuristiques sont essentiellement des méthodes d optimisation sans contraintes; la présence d éventuelles contraintes peut se faire par les mêmes stratégies vues pour les méthodes classiques (pénalisation, barrières etc.), ou sinon par des stratégie plus propres à chaque méthode Les contraintes posées directement sur les variables ne posent généralement pas de problème, vue le passage par un tirage aléatoire 7
Méthodes de Monte-Carlo (1) Ce sont des méthodes try and fail très brutales: à l aide d un générateur de nombre aléatoires on génère une suite de nombre au hasard, qui sont autant de composantes de vecteurs faisables pour le NLPP la distribution de probabilité des variables peut être gérée (souvent il s agit de distributions uniformes sur un intervalle donné) on teste chaque vecteur faisable ainsi obtenu et on retient le meilleur si le nombre de tirages aléatoires est suffisamment élevé on a l espoir (mais pas la certitude) de couvrir convenablement l espace de recherche et donc de trouver une bonne approximation du minimum 8
Méthodes de Monte-Carlo (2) L efficacité de l exploration dépend fortement du problème, notamment de la fonction objectif et du nombre de variables (elle décroît rapidement avec l augmentation de la taille du problème) Il s agit d une méthode totalement aléatoire: aucune indication des calculs précédents n est retenue dans la poursuite du calcul pour le guider vers des zone du domaines de faisabilité susceptibles de contenir le minimum; c est une exploration sans intelligence, mais rapide Une variante de cette approche est celle de tirer aléatoirement les points de départ d une méthode classique de descente; il s agit donc d une approche hybride 9
Méthodes de Monte-Carlo (3) Les algorithmes de tirage aléatoire doivent être bien conçus, pour éviter des problèmes de boucles de tirage Il est aussi indispensable d établir a priori quel type de distribution statistique utiliser (uniforme, normale, log-normale etc.) Des algorithmes de génération aléatoire bien connus sont la méthode Lehmer généralisée pour la distribution uniforme entre 0 et 1, la méthode de Box et Müller pour la distribution normale N(0,1) etc. Il est possible et recommandé d utiliser des bibliothèques informatiques propres aux différents langages de programmation, mais il faut toujours contrôler l efficacité de l algorithme de génération de nombres aléatoires 10
Méthode du recuit simulé (1) L idée de base de cette méthode (simulated annealing), mise au point par S. Kirkpatrik en 1982, est de faire une exploration aléatoire de l espace des variables en favorisant les descentes mais sans interdire complètement les remontées C est cette stratégie qui permet de contourner le pb de la non convexité, c est-à-dire qui permet à l algorithme de ne pas rester pris dans le premier minimum local trouvé L idée est celle de ne pas interdire les remontées surtout au début du calcul A partir d une première solution x 0, on calcule une autre solution x 1, par exemple par tirage aléatoire, au voisinage de la solution de départ 11
Méthode du recuit simulé (2) On peut avoir deux cas: f(x 1 )<f(x 0 ): on a amélioré le coût, donc x 1 est un point meilleur de x 0 ; on prend x 1 comme nouveau x 0 et on recommence f(x 1 )>f(x 0 ): x 1 est un point pire de x 0, mais on ne l écarte pas a priori, on lui donne une chance d être accepté, en évaluant sa fonction d acceptation Si f = f ( x1 ) f ( x0) est le coût de la transformation de x 0 à x 1, la fonction d acceptation + α( f, T ) : R R [0,1] est une fonction de f et de T, paramètre qui dans l analogie thermodynamique est une température 12
Méthode du recuit simulé (3) Différents choix sont possibles pour α; par exemple: α( f 1, T ) = e f T si f 0 si f 0 (distribution de Boltzmann) ou encore α( f, T ) 1 = 1+ e f T Dans tous les cas, α<1 si f >0 et la valeur de α décroît avec T: pour des valeurs petites de T, α tend vers 0 13
Méthode du recuit simulé (4) La procédure est alors la suivante: on calcule la fonction d acceptation α pour la transition de x 0 à x 1 on tire au hasard un nombre β [0, 1] si α >β la transition est acceptée, autrement elle est rejetée et on cherche un autre point au voisinage de x 0 De cette sorte, même les points avec une plus forte valeur du coût ont une chance d être sélectionnés, ce qui permet de remonter les «sommets» pour descendre ensuite vers des vallées plus profondes Au début, quand la nécessité d explorer est forte, on prend des valeurs fortes de T, pour donner une chance importante aux remontées; ensuite, on diminue progressivement T, pour éviter de s échapper des bonnes «vallées» trouvées 14
Méthode du recuit simulé (4) Souvent on pose T k = ctk 1, c < 1 et on donne un critère pour passer de la température T k-1 à T k (p. ex. tous les n k tirages, avec n k fixé) La température T 0 doit être choisie Le calcul peut s arrêter de différentes façons, par exemple lorsque T k atteint une valeur seuil inférieure choisie, T s La méthode du recuit simulé a des nombreuses variantes, mais dans sa forme originaire elle est à peu près la suivante: 15
Méthode du recuit simulé (5) Algorithme du recuit simulé: 1. Initialisation: choix de x 0 faisable, de T 0, T S et de c<1; calcul de f(x 0 ) 2. Recherche d un nouveau point x 1 au voisinage de x 0, p. ex. par tirage aléatoire 3. Calcul de f(x 1 ) 4. Calcul de f = f(x 1 ) f(x 0 ) 5. Calcul de α( f,t) 6. Tirage aléatoire de β [0, 1] (distribution uniforme) 7. Si α >β remplacer x 0 avec x 1 8. Mettre à jour T k : T k =ct k-1 si les conditions imposées sont remplies 9. Si T k < T s alors STOP 10. Retour au point 2 16
Méthode du recuit simulé (6) Sous des hypothèses opportunes, en particulier si la décroissance de T est logarithmique, on peut montrer la convergence de la méthode vers le minimum global Le nom de la méthode dérive du processus métallurgique du recuit, qui consiste à réchauffer un alliage et à le faire refroidir lentement afin d éliminer les défauts et de favoriser la formation de cristaux, afin d amener le matériau le plus proche possible d un état cristallin, qui correspond au minimum absolu de l énergie interne Variantes du recuit simulé: méthode du seuil, du grand déluge, du voyage de record en record, de diffusion simulée, du recuit microcanonique 17
Méthode tabou (1) Cette méthode (F. Glover, 1986) est semblable à la précédente, au sens que les remontées ne sont pas totalement interdites, mais ici on choisit toujours le mouvement le meilleur à faire au voisinage de la position où l on se trouve, et il y a des mouvements tabou, interdits Cette méthode est la métaphore de la mémoire: si on a déjà fait le mouvement et qu il n est pas avantageux, p. ex. redescente vers un minimum local déjà connu, ce mouvement est interdit, au moins pendant un certain nombre d itérations (évanescence de la mémoire ) Il y a aussi des critères d aspiration, qui déterminent quand il peut être avantageux ou nécessaire de faire un mouvement tabou 18
Méthode tabou (2) Algorithme tabou: 1. Initialisation: choix d un point de départ x 0 ; calcul de f(x 0 ) 2. Génération de points voisins: par une méthode quelconque (p. ex. aléatoire), générer un ensemble de m points x i proches de x 0 pour lesquels: les mouvements tabou ne sont pas fait ou un des critères d aspiration soit rempli 3. Choisir x 1 comme le meilleur de l ensemble 4. Contrôle: si f(x 1 )< f(x 0 ), remplacer x 0 par x 1 5. Mise à jour de la liste tabou 6. Mise à jour de la liste des critères d aspiration 7. Si une condition d arrêt est remplie (p. ex. nombre max d itérations) alors STOP 8. Retour au point 2 19
Métaphores biologiques (1) L idée à la base des MB est celle de simuler les mécanismes et les lois propres à la biologie, afin de les utiliser dans des problèmes de nature différente, même au prix de simplifications non plausibles dans la réalité biologique Les MB s inspirent des lois de la Nature qui ont un point commun: une très grande efficacité dans le traitement de l information distribuée MB plus connues: réseaux de neurones, réseaux immunitaires, algorithmes génétiques, particle swarm, colonies de fourmis 20
Métaphores biologiques (2) Les systèmes biologiques pourvus de capacité d adaptation sont des réseaux adaptatifs non-linéaires (RAN) RAN: système constitué d un grand nombre d unités élémentaires (cellules ou individus) tel que: Les unités forment un reseau qui traite l information de façon parallèle et distribuée Les unités intéraggissent entre elles de façon non linéaire et competitive en l absence d une autorité centrale Des opérateurs modifient les unités de façon que le système global s adapte progressivement à l environnement Adaptation: processus d optimisation au cours duquel un système apprend de l experience faite dans un certain environnement Optimisation: il faut la voir non pas comme convergence vers le meilleure mais plutôt au sens large d amélioration continue vers un état supérieur 21
Métaphores biologiques (3) Les RAN font apparaître des propriétés d auto-organisation qui proviennent du caractère non linéaire des intéractions: le comportement de la somme des unités (population) ne coïncide pas avec la somme des comportements De la non linéarité des intéractions derive l existence de groupes d unités co-adaptées: une bonne unité est efficace si elle agit en collaboration avec d autres bonnes unités épistasis (= collaboration de groupes d individus co-adaptés) 22
Particle swarm optimization (PSO 1) C est une métaphore biologique inspirée du comportement dynamique des volées d oiseaux ou des bancs de poissons (Eberhart et Kennedy, 1995) Pour comprendre comment, considérons une volée d oiseaux qui cherchent la nourriture dans un champ: il y a un seul lieu où se trouve la nourriture et les oiseaux ne le connaissent pas La meilleure stratégie est celle de suivre l oiseau le plus proche de la nourriture Dans la PSO, chaque oiseaux (particule) est une solution possible, avec sa propre valeur de la FO Chaque particule a sa propre vitesse de déplacement, qui dirige la particule dans ses déplacements 23
Particle swarm optimization (PSO 2) Les particules «volent» à travers l espace faisable en suivant les particules les meilleures à l instant donné L algorithme travaille donc non pas avec une solution à la fois mais avec toute une population (le swarm) d individus: c est typique des métaphores biologiques Le calcul démarre d une population initiale tirée au hasard, et fait des itérations où chaque particule est changée pour l améliorer, en suivant les 2 vecteurs les meilleurs du groupe: x p, le vecteur qui a la valeur la meilleure de la FO obtenue jusque là x g, le vecteur qui a le minimum de la FO pour la population actuelle 24
Particle swarm optimization (PSO 3) Sur la base de x p et x g la particule i met à jour sa vitesse et sa position de la façon suivante: v i i i i = v + c1r1 ( x p x ) + c2r2 ( xg x ) i i i x = x r 1 et r 2 sont des nombre aléatoires dans [0,1] et c 1, c 2 sont des facteurs numériques, dits facteurs d apprentissage L algorithme s arrête pour différentes raisons, p. ex. pour avoir atteint le nombre max d itérations ou parce que la solution ne s améliore pas Le PSO a peu de paramètres numériques à régler; normalement, c 1 = c 2 =2, et la taille de la population est entre 20 et 40; parfois on limite la vitesse de déplacement, afin d éviter de trop gros déplacements + v 25
Colonies de fourmis L idée (M. Dorigo, 1992) de cette méthode est inspirée par le comportement des fourmis, qui, même si aveugles, sont capables de trouver, par leur organisation sociale, le chemin le plus court entre le nid et la nourriture L exploration est aveugle au début, mais ensuite les fourmis suivent les traces chimiques (phéromone) laissées par les autres fourmis, plus fortes sur le chemin le plus emprunté La quantité de phéromone est plus forte sur le chemin le plus court Cette méthode a été appliquée avec succès surtout aux problèmes de routage (communications aériennes, traitement de l information, télécommunications) et à des problèmes durs d optimisation combinatoire (problème du voyageur de commerce etc.) 26
Algorithmes génétiques Les AG (Holland, 1965) sont des MB qui s inspirent aux mécanismes de la selection naturelle (C. Darwin, The origin of species, 1859): faire evoluer une population en se basant sur la survie des individus les mieux adaptés En génétique syntetique un individu est un candidat à la solution d un problème donné, donc un nombre ou un ensemble de nombre (vecteur, tenseur, matrice etc.) L evolution de la population se fait en simulant les mécanismes de transmission des caractères propres à la génétique, après avoir codé les variables (simulation de l ADN, Watson e Crick, 1953). 27
Philosophie des AG Les AG travaillent sur une population d individus, representés par un code, et visent à l amélioration de la population entière plutôt quà celle d un seul individu Les AG optimisent le compromis entre exploration de l espace des variables et exploitation des données (Holland, 1992) La caractéristique fondamentale des AG par rapport aux autres MB est l introduction du sexe pour accélerer et améliorer l adaptation (la probabilité de s améliorer pour les êtres vivants est accrue si le patrimoine génétique provient des deux êtres plutôt que d un seul) 28
Un peu de génétique Les caractères génétiques sont codés dans l ADN, molécule à la structure typique à double hélice formée par 4 bases azotées (nucléotides): Adénine, Cytosine, Guanine et Thymine; A, C, G et T sont les lettres de l alphabet de la vie Une séquence de 3 nucléotides code un aminoacide Un gène est un morceau de chromosome préposé à la synthèse d un enzyme, donc à une fonction vitale Le patrimoine génétique est, le plus souvent, reparti sur plusieurs chromosomes Les êtres vivants supérieures (eucaryotes) ont un patrimoine génétique doublé (2 chromosomes homologues, les allèles), moitié d origine maternelle et moitié paternelle (diploïdie et dominance) Chaque cellule d un être humain a une chaîne d ADN d environ 2 m de longueur, et en total un adulte possède environ 25 milliards de km d ADN, pour un poids de 200 g: la capacité de coder les informations est énorme! 29
Structure d un AG Standard Entrée: Opérateur Opérateur de population de n d'adaptation : sélection individus calcul de la fitness aléatoire guidée des individus des individus Opérateur de croisement: cross-over aléatoire des individus Résultats : meilleure individu, adaptation moyenne de la population oui non Critère d'arrêt Nouvelle population Opérateur de mutation aléatoire des individus Elitisme 30
Discrétisation et codage des variables Chaque variable doit être discrétisée avec une finesse établie et ensuite codée selon un alphabet donnée (en nature l alphabet des nucleotides: A, C, G, T) Chaque individu (phenotype) est donc transformé en un code qui le represent génétiquement (génotype) et qui conserve toute l information sur le phenotype La reproduction des individus se fait avec des opérations de recombinaison et mutation de deux génotypes, donc en opérant sur les codes, non pas sur les variables directement 31
x Ex: codage binaire d une variable continue [ a, b] R ξ [, 0 µ ] N β [ 00... 0, 11... 1] B ϕ: finesse de la discrétisation µ = 1 + b a ϕ λ: nombre di bits µ λ = ln ln 2 réels x b 0 a entiers µ discrétisation Ex: x [0,10] ϕ= 0.01 λ min =10 µ= 1023 8.592 879 1101101111 x codage b a = a+ µ ξ ξ binaires β de longueur λ 32
Choix de la fonction de fitness ( f ) La fonction de fitness f mésure l adaptation d un individu par rapport au critère choisi (elle evalue la qualité d un individu comme solution potentielle d un problème donné) Le choix de f n est pas unique Toutefois, f doit être une mesure de mérite positive Normalement f:[0,µ] [0,1] f=0: individu le moins adapté f=1: individu le mieux adapté (optimum?) 33
Sélection Sur la base des valeurs de fitness des individus, n/2 couples d individus sont choisis pour la reproduction Cette sélection peut se faire de plusieurs façons, mais le concept est que les individus les mieux adaptés (ceux avec f plus grande) ont une probabilité accrue de se reproduire par rapport aux autres En Nature, ceci correspond au fait que les individus plus forts (les mieux adaptés) ont une probabilité majeure de vivre plus longtemps des autres et donc ils ont plus de temps pour se reproduire; la sélection naturelle s opère donc sur la base de l adaptation et de la probabilité de survie, qui lui est, statistiquement, proportionnelle Types de séléction plus employés: par tournement, par elitisme n/2, par roue de loterie biaisée 34
Sélection par roue de lotérie biaisée La probabilité de sélection d un individu est La fonction de distribution de la probabilité de sélection est donc la fonction de fitness f normalisée p sel 12% = f n k = 1 11% f k Les n/2 couples sont tirées aux hasard, par rotation de la roue 9% 22% 23% 15% 8% 35
Cross-over C est l operateur génétique principal: chaque couple donne lieu à deux nouveaux individus par recombinaison du génotype La probabilité d un cross-over est p c Cross-over simple: la position unique du cross-over est choisie au hasard 1000110111001001 111001 0111001001 point de cross-over 1110010101100010 100011 0101100010 2 parents 2 enfants 36
Mutation La mutation est un changement aléatoire d un nucléotide (=1 bit) du génotype La mutation intervient avec une probabilité p m et sa position est choisie au hasard Le rôle de la mutation est celui de créer de la biodiversité pour contraster la convergence prematurée position de la mutation 1110010101100010 1110110101100010 1 gène original gène muté 37
Phases de reproduction dans les eucaryotes A) Formation des gamètes haploïdes pour chaque parent. En noir: chromosomes d'héritage paternel En blanc: chromosomes d'héritage maternel 1 2 1' 2' Cellule sexuelle originaire diploïde: 2 n chromosomes. 1 2 Phase S: duplication des chromosomes: 4 n chromosomes. B) Accouplement au hasard des gamètes d'origine paternelle et maternelle: formation du zygote. 1' 2' Possibles mutations 2' 1 2' 1 1' 2 2 1' mutation 1' 2 1 2' 1' 2 Première division méiotique : assortiment indépendant des chromosomes non homologues; 2 n chromosomes dans chaque cellule. 2' 1 2' 1 1' 2 2 1' 1 2' cross-over Possible cross-over 2' 1 2' 1 1' 2 2 1' Deuxième division méiotique : ségrégation des allèles; formation des gamètes haploïdes: n chromosomes dans chaque gamète. 38
Ex: solution d une equation non-linéaire Pb: résoudre y = cos x 2 x/π = 0 dans [0,π] Transformation en un pb d optimum: trouver le minimum (=0) de la fonction y 2 Fonction de fitness: y 2 f y y 2 f = [1 y 2 / (max [0,π] y 2 ) ] c =(1 y 2 ) c 39
Données de input p c = 0.8 p m = 2 10-3 ϕ= 10-5 µ=262144 λ= 18 bits n= 50 n_gén= 50 c= 4 Résultats Meilleur individu: x= 0.93262792 y= 0.00199595 y 2 = 0.00000398 gén_sol= 24 Cross-over: 987 Mutations: 86 40
Données de input p c = 0.8 p m = 2 10-3 ϕ= 10-5 µ=262144 λ= 18 bits n= 50 n_gén= 50 c= 4 Résultats avec l elitisme Meilleur individu: x=0.9339402018 y= 0.000106 y 2 = 1.124 10-7 gén_sol= 45 Cross-over: 988 Mutations: 82 41
Un exemple de NLPP non convexe y = cos 2x dans [0, 2π] f y 2 y 42
Qualités des AG Il s agit d algorithmes capables d accumuler de l information sur un espace de recherche inconnu et de l exploiter pour guider la recherche sur des sous-espaces prometteurs La recherche se fait par echange et recombinaison d informations elementaires (les schèmes ou motifs de similarité; théoreme du parallelisme implicite), ce qui est plus efficace d une recherche totalement aléatoire, basée seulement sur la mutation utilité du sexe en biologie Ce mécanisme est implicit: il emerge des propriétés d autoorganisation de l information induite par sélectionnisme 43
Points distinctifs des AG Parallelisme: les AG travaillent en parallèle sur un certain nombre d individus possibilité de traiter une enorme quantité d informations La méthode de recherche n est pas locale, mais globale et distribuée sur l entier espace de recherche le pb de la nonconvexité est contourné à la base Manipulation d entités arbitraires codées possibilité de traiter de la même façon variables de nature differente Utilisation d un minimum d informations sur les données (methodes d ordre 0): on a besoin seulement d une mesure d adaptation f Optimisation du rapport exploration/exploitation des informations Les AG sont des algorithmes à impostation libre et, en partie, auto-correcteurs 44
Petite considération sur les MB Les MB marquent l entrée des lois de la biologie dans différents secteurs: c est la reconnaissance que les lois du monde du vivant ont une validité plus générale de celle qui ont dans leur contexte biologique. La loi de l évolution est la plus importante de toutes les loi du monde; elle a présidé à notre naissance, a régi notre passé et, dans une large mesure, contrôle notre avenir. Y. Coppens 45
et sur leur validité scientifique A ces lois on peut donner des interprétations mathématiques (travaux de M. D. Vose sur l objet AG simple) mais la preuve de leur efficacité est dans les faits. Les AG sont des systèmes capables de bien gérer la complexité: dans le traitement de certains problèmes inverses, la gestion et l organisation de la complexité sont parfois des voies à suivre. La question est: quand simplifier est le bon choix? En nature ce qui a gagné est la complexité (passage à la reproduction sexuelle, diploïdie, redondance dans le stockage de données dans l ADN, ). 46
In fine, une petite digression historique Les MB mettent en valeur l importance de l interdisciplinarité. Toutefois, les contacts entre mécanique et biologie ne datent pas d aujourd hui: Galilei (Discorsi e dimostrazioni matematiche intorno a due nuove scienze, 1638): disquisitions mécaniques sur les dimensions des êtres vivants. Hooke (Micrographia, 1665): premières observations au microscope, nom de cellule pour la texture du liège. Maupertuis (Venus Physique, 1745): démonstration de la transmission des caractères génétiques par les deux parents. Premier à théoriser la mutation comme cause de la biodiversité (Le système de la nature, 1751). 47
Conclusion Les métaheuristiques sont des techniques modernes et efficaces pour la solution de NLPP non convexes et «durs» Leurs programmation est normalement simple, libre entre certains limites, ce qui les rend adaptables aux différents cas donc allez-y! 48