TP 1: Les Techniques Malek Drira
Zainab Fritis
d’optimisation 2ème GEC 3
I. Objectifs :
➢ Implémenter les opérateurs de base (sélection, croisement, mutation) sur un problème
simple pour comprendre leur fonctionnement concret.
➢ Analyser l'impact des paramètres (taille de population, nombre de génération) sur la
convergence et la performance de l'algorithme.
II. Manipulation :
1) Les programmes d'algorithmes génétiques incluent plusieurs paramètres :
• Taille de la population : nombre de solutions
• Taux de croisement : probabilité de reproduction
• Taux de mutation : probabilité de modification aléatoire
• Nombre de générations : nombre d'itérations
• Méthode de sélection : roulette, tournoi, etc.
Il faut noter que ces paramètres doivent être ajustés selon le problème.
3)
• F1: 𝑓(𝑥 ) = ( 𝑥 2 + 𝑥 ). 𝑐𝑜𝑠 (𝑥 )
Minimum trouvé : x = 9.619999999999582, f(x) = -100.22374856238481
• F2: 𝑓(𝑥 ) = 𝑥12 + 𝑥12
Minimum trouvé en (x1, x2) = (3.126388037344441e-12, 3.126388037344441e-12), avec f(x1,
x2) = 1.954860432010085e-23
• F3: 𝑓( 𝑥1 ,𝑥2 ) = 𝑥1 𝑠𝑖𝑛(4𝑥1 ) + 1.1𝑥2 𝑠𝑖𝑛(2𝑥2 )
Minimum trouvé en (x1, x2) = (9.040000000000001, 8.67), avec f(x1, x2) = -
18.55458458919132
1
• F4: 𝑓( 𝑥1 ,𝑥2 ) = (4 − 2.1𝑥12 + 3 𝑥14 ) 𝑥12 + 𝑥1 𝑥2 + 4(𝑥22 − 1)𝑥22
Minimum trouvé en (x1, x2) = (0.08999999999993413, -0.7099999999999989), avec f(x1, x2) =
-1.0315703638530003
4) On lance l’algorithme de l’AG pour chaque équation :
• F1: 𝑓(𝑥 ) = ( 𝑥 2 + 𝑥 ). 𝑐𝑜𝑠 (𝑥 )
Optimisation GA
Fonction: f(x) = (x^2 + x) * cos(x)
Population = 30, mutation = 0.1, générations = 200
Meilleur coût = -100.223755
Meilleure solution x = 9.620351
Temps d'exécution = 0.06 s
• F2: 𝑓(𝑥 ) = 𝑥12 + 𝑥12
Optimisation GA
Fonction: f(x1, x2) = (x1^2 + x2^2)
Population = 30, mutation = 0.1, générations = 200
Meilleur coût = 0.000010
Meilleure solution x = -0.003093
Temps d'exécution = 0.06 s
• F3: 𝑓( 𝑥1 ,𝑥2 ) = 𝑥1 𝑠𝑖𝑛(4𝑥1 ) + 1.1𝑥2 𝑠𝑖𝑛(2𝑥2 )
Optimisation GA
Fonction: f(x1, x2) = x1sin(4x1) +1.1x2sin(2x2)
Population = 30, mutation = 0.1, générations = 200
Meilleur coût = -18.115387
Meilleure solution x = 9.040499
Temps d'exécution = 0.06 s
1
• F4: 𝑓( 𝑥1 ,𝑥2 ) = (4 − 2.1𝑥12 + 3 𝑥14 ) 𝑥12 + 𝑥1 𝑥2 + 4(𝑥22 − 1)𝑥22
Optimisation GA
Fonction: f(x1, x2) = (4-2.1x1^2 + (1/3)x1^4)x1^2 + x1x2 + 4(x2^2 - 1)x2^2
Population = 30, mutation = 0.1, générations = 200
Meilleur coût = -1.008733
Meilleure solution x = -0.080414
Temps d'exécution = 0.06 s
5) On fixe la taille de population et on varie le nombre de générations
• F1: 𝑓(𝑥 ) = (𝑥 2 + 𝑥 ). 𝑐𝑜𝑠(𝑥 )
Nombre de Optimum 1 Temps de Optimum 2 Temps de Optimum 3 Temps de
générations calcul calcul calcul
250 -100.22 0.18s -100.22 0.20s -100.22 0.18s
500 -100.22 0.37s -100.22 0.35s -100.22 0.36s
1000 -100.22 0.74s -100.22 0.71s -100.22 0.79s
• F2: 𝑓 (𝑥 ) = 𝑥12 + 𝑥12
Nombre de Optimum 1 Temps de Optimum 2 Temps de Optimum 3 Temps de
générations calcul calcul calcul
250 0 0.19 0 0.18 0 0.21
500 0 0.38 0 0.37 0 0.38
1000 0 0.75 0 0.74 0 0.76
• F3: 𝑓 (𝑥1, 𝑥2 ) = 𝑥1 𝑠𝑖𝑛(4𝑥1 ) + 1.1𝑥2𝑠𝑖𝑛(2𝑥2 )
Nombre de Optimum 1 Temps de Optimum 2 Temps de Optimum 3 Temps de
générations calcul calcul calcul
250 -18.35 0.18 -18.35 0.18 -18.35 0.19
500 -18.35 0.38 -18.35 0.37 -18.35 0.38
1000 -18.35 0.79 -18.35 0.73 -18.35 0.77
1
• F4: 𝑓 (𝑥1, 𝑥2 ) = (4 − 2.1𝑥12 + 3 𝑥14 ) 𝑥12 + 𝑥1 𝑥2 + 4(𝑥22 − 1)𝑥22
Nombre de Optimum 1 Temps de Optimum 2 Temps de Optimum 3 Temps de
générations calcul calcul calcul
250 -1.0316 0.19 -1.0316 0.19 -1.0316 0.18
500 -1.0316 0.37 -1.0316 0.38 -1.0316 0.39
1000 -1.0316 0.87 -1.0316 0.76 -1.0316 0.76
Conclusion : Le fait de trouver systématiquement le même optimum, indépendamment du nombre de
générations, confirme que l'algorithme est robuste et efficace. Il converge rapidement vers la meilleure
solution sans stagnation prématurée. On peut conclure que l'implémentation des opérateurs (sélection,
croisement, mutation) est correcte et bien équilibrée pour ce problème.
6) On fixe le nombre de générations et on varie la taille de population
F1: 𝑓(𝑥 ) = (𝑥 2 + 𝑥 ). 𝑐𝑜𝑠(𝑥 )
Taille de la Optimum 1 Temps de Optimum 2 Temps de Optimum 3 Temps de
population calcul calcul calcul
250 -100.22 0.19 -100.22 0.18 -100.22 0.21
500 -100.22 0.38 -100.22 0.36 -100.22 0.37
1000 -100.22 0.68 -100.22 0.70 -100.22 0.72
• F2: 𝑓 (𝑥 ) = 𝑥12 + 𝑥12
Taille de la Optimum 1 Temps de Optimum 2 Temps de Optimum 3 Temps de
population calcul calcul calcul
250 0 0.18 0 0.22 0 0.20
500 0 0.38 0 0.35 0 0.38
1000 0 0.73 0 0.71 0 0.71
• F3: 𝑓 (𝑥1, 𝑥2 ) = 𝑥1 𝑠𝑖𝑛(4𝑥1 ) + 1.1𝑥2𝑠𝑖𝑛(2𝑥2 )
Taille de la Optimum 1 Temps de Optimum 2 Temps de Optimum 3 Temps de
population calcul calcul calcul
250 -18.35 0.21 -18.35 0.22 -18.35 0.19
500 -18.35 0.42 -18.35 0.37 -18.35 0.34
1000 -18.35 0.75 -18.35 0.81 -18.35 0.80
1
• F4: 𝑓 (𝑥1, 𝑥2 ) = (4 − 2.1𝑥12 + 3 𝑥14 ) 𝑥12 + 𝑥1 𝑥2 + 4(𝑥22 − 1)𝑥22
Taille de la Optimum 1 Temps de Optimum 2 Temps de Optimum 3 Temps de
population calcul calcul calcul
250 -1.0316 0.21 -1.0316 0.21 -1.0316 0.21
500 -1.0316 0.39 -1.0316 0.34 -1.0316 0.38
1000 -1.0316 0.71 -1.0316 0.77 -1.0316 0.69
Conclusion : La découverte du même optimum avec différentes tailles de population confirme que la
solution est robuste et reproductible. Cette indépendance par rapport à la diversité initiale indique une
convergence fiable vers un optimum significatif. En conclusion, l'implémentation fonctionne
correctement et trouve de manière cohérente une solution de qualité optimale, quelle que soit la
configuration de départ de la population.
III. Conclusion :
L'implémentation de l'algorithme génétique a été couronnée de succès. Les tests ont validé la
robustesse de l'algorithme, qui converge systématiquement vers le même optimum de qualité,
indépendamment des paramètres de population testés.
Les résultats confirment l'efficacité de la méthode pour résoudre des problèmes d'optimisation
complexes, tout en soulignant l'importance du réglage des paramètres pour équilibrer exploration et
exploitation.