• Aucun résultat trouvé

Principe de fonctionnement de l’algorithme hybride AG-RT

Optimisation des Contrôleurs Flous par l’Approche Hybride AG-RT

2.4 Méthode d’Optimisation .1 Structure d’optimisation

2.4.5 Principe de fonctionnement de l’algorithme hybride AG-RT

Afin d’améliorer la convergence des algorithmes génétiques quatre algorithmes sont proposés:

 Dans le premier algorithme AG-RT1, la RT est intégrée après l’opération de croisement,

47

 Dans le deuxième algorithme AG-RT2, la RT est intégrée après l’opération de mutation,

 Dans le troisième algorithme AG-RT3, la RT est intégrée après l’opération de sélection,

 Dans le quatrième algorithme AGE-RT, la RT est intégrée après la sélection finale de la nouvelle génération.

Le tableau 2.1 définie les acronymes utilisés dans les 4 algorithmes.

Paramètre Signification

max _ Nombre maximum de générations de l’AG

Taille de la population Probabilité de croisement Probabilité de mutation Chromosome Solution optimale Solution élitiste

Meilleure solution élitiste Solution initiale de la RT

Nombre maximum d’itérations de la RT Nombre de solutions voisines

Taille de la liste tabou

Tab. 2.1 : Paramètres de l’algorithme AG-RT 2.4.5.1 L’algorithme hybride AG-RT1

A chaque génération de l’algorithme génétique, la recherche Tabou est introduite après l’opération de croisement pour chercher le meilleur voisin de chaque solution trouvée. Le résultat sera une nouvelle population optimisée qui va continuer son évolution par les autres opérations génétiques pour produire des nouvelles générations plus adaptées au problème.

48

La solution optimale représente le chromosome qui contient les paramètres du contrôleur flou optimisé.

Début Algorithme Génétique

Définir max _ , ,

Générer la population initiale

Pour = 1 à max _ faire

Evaluer chaque individu de la population par l’eq. (2.7) Sélectionner les parents de la population

Produire les enfants des parents sélectionnés par l’opération de croisement

Début Recherche Tabou

Définir , ,

Initialiser la liste Tabou = ∅, = 0

Tant que <

Pour tout ℎ de la population produite faire Générer solutions voisines de ℎ Evaluer chaque solution voisine

Prendre la solution voisine la plus adaptée Mettre à jour la liste Tabou

Fin Pour

= + 1

Fin Tant que Fin

Muter les individus de la population résultante

Sélectionner les enfants et les parents les plus adapté pour la nouvelle génération

Fin Pour

Retourner la meilleure solution

49

2.4.5.2 L’algorithme hybride AG-RT2

Dans cet algorithme, la recherche Tabou est introduite après l’opération de mutation pour chercher le meilleur voisin de chaque solution trouvée. Le pseudo-code de la procédure AG-RT2 est le suivant :

Début Algorithme Génétique

Définir max _ , , ,

Générer la population initiale

Pour = 1 à max _ faire

Evaluer chaque individu de la population par l’eq. (2.7) Sélectionner les parents de la population

Produire les enfants des parents sélectionnés par l’opération de croisement Muter les individus de la population résultante

Début Recherche Tabou

Définir , , , Initialiser la liste tabou = ∅, = 0

Tant que <

Pour tout ℎ de la population produite faire Générer solutions voisines de ℎ Evaluer chaque solution voisine

Prendre la solution voisine la plus adaptée Mettre à jour la liste Tabou

Fin Pour

= + 1

Fin Tant que Fin

Sélectionner les enfants et les parents les plus adapté pour la nouvelle génération

Fin Pour

Retourner la meilleure solution

50

2.4.5.3 L’algorithme hybride AG-RT3

Dans cet algorithme, la recherche Tabou est introduite après l’opération de sélection des parents les plus adaptés pour améliorer les individus parents de la population. La RT va chercher le meilleur voisin de chaque individu de la population sélectionnée :

Début Algorithme Génétique

Définir max _ , , ,

Générer la population initiale

Pour = 1 à max _ faire

Evaluer chaque individu de la population par l’eq. (2.7) Sélectionner les parents de la population

Début Recherche Tabou

Définir , , , Initialiser la liste tabou = ∅, = 0

Tant que <

Pour tout ℎ de la population produite faire Générer solutions voisines de ℎ Evaluer chaque solution voisine

Prendre la solution voisine la plus adaptée Mettre à jour la liste Tabou

Fin Pour

= + 1

Fin Tant que Fin

Produire les enfants des parents sélectionnés par l’opération de croisement Muter les individus de la population résultante

Sélectionner les enfants et les parents les plus adapté pour la nouvelle génération

Fin Pour

Retourner la meilleure solution

51

2.4.5.4 L’algorithme hybride AGE-RT

Dans cet algorithme, la recherche Tabou est introduite après la sélection finale de la nouvelle génération. Le pseudo-code de la procédure AGE-RT est le suivant :

Début Algorithme Génétique

Définir max _ , , ,

Générer la population initiale

Pour = 1 à max _ faire

Evaluer chaque individu de la population par l’eq. (2.7) Sélectionner les parents de la population

Produire les enfants des parents sélectionnés par l’opération de croisement Muter les individus de la population résultante

Sélectionner les enfants et les parents les plus adapté pour la nouvelle génération et enregistrer le meilleur individu comme

Début Recherche Tabou

Définir , , , Initialiser la liste tabou = ∅, = 0 =

Tant que <

Générer solutions voisines de Evaluer chaque solution voisine

Prendre la solution voisine la plus adaptée comme Mettre à jour la liste Tabou

= + 1

Fin Tant que Fin

Enregistrer le meilleur individu comme et insérer le dans la nouvelle génération

Fin Pour

Retourner la meilleure solution

52

Le meilleur individu de la nouvelle génération, , est introduit dans l’algorithme de la RT pour améliorer sa qualité en cherchant dans son voisinage une autre meilleure solution

plus adaptée.

L'élitisme est un mécanisme introduit pour conserver les bonnes solutions lors du passage de la génération courante à la prochaine génération. Conserver ces solutions pour les générations futures permet d'améliorer les performances des algorithmes sur certains problèmes.

2.5 Simulations

Dans le but de tester et évaluer les performances des algorithmes proposés nous avons effectué des applications en simulation sur deux systèmes non linéaires monovariables, le pendule inversé et un bain d’eau et deux systèmes non linéaires multivariables, le simulateur d’hélicoptère et le double pendule inversé. A chaque type de système non linéaire est appliquée une forme spécifique de loi de commande développée. Cette différence est due, principalement, à la nature et à la complexité du procédé à commander. L'objectif de commande est de permettre aux états du système de suivre une trajectoire de référence prédéterminée.

Documents relatifs