• Aucun résultat trouvé

Enquête sur les différentes variantes de BA existant dans la littérature

Algorithme des chauves-souris directionnelles

2.3 Enquête sur les différentes variantes de BA existant dans la littérature

L'algorithme des chauves-souris standard est un outil d'optimisation très puissant et il peut produire des solutions robustes pour les problèmes à faibles dimensions [51-67], Toutefois, certaines études ont rapporté que sa performance peut diminuer à mesure que les dimensions du problème augmentent. Ces problèmes de convergence prématurée liés à la dimensionnalité sont également rencontrés dans presque tous les autres algorithmes, mais il existe des remèdes possibles qui seront explorées dans cette section. Pour pallier cette lacune, plusieurs méthodes et techniques ont été proposées. Dans [51], l'auteur a incorporé onze fonctions chaotiques pour trouver la meilleure variante de l'algorithme de chauve-souris chaotique (Chaotic Bat Swarm Optimisation CBSO). La meilleure stratégie trouvée est que l'équation de mise à jour de l'intensité (Ai) soit une fonction

linéairement décroissante multipliée par une carte chaotique itérative avec des fonctions d’effondrements infinies. D'après les résultats, l'auteur a rapporté que CBSO peut surpasser le BA, le CS, le GA l'algorithme de Big Bang- Big Crunch (BBBC) [68] et l'algorithme de recherche

Mirjalili et al. [52] ont présenté une version binaire de BA nommée l'algorithme des chauves-souris binaire (Binary Bat Algorithm, BBA). Le BBA a un système de navigation et de chasse artificielle dans un espace de recherche binaire en changeant les positions des chauves-souris de "0" à "1" et vice-versa. Leurs résultats ont montré la supériorité de BBA par rapport au PSO binaire et l’algorithme génétique. He et al. [53] ont introduit à la fois l'algorithme du recuit simulé (Simulated Annealing, SA) [70] et la perturbation gaussienne dans le BA standard pour accélérer la vitesse de convergence globale (SAGBA). Une fois qu'une population initiale est générée, les meilleures solutions sont remplacées par de nouvelles solutions avec les équations de SA, puis mises à jour par les équations de BA standard. Ensuite, le processus de perturbation gaussienne est utilisé pour perturber les positions des chauves-souris pour générer un ensemble de nouvelles solutions. Les résultats montrent que SAGBA est plus performant que le BA standard.

Dans [54], les auteurs proposent un nouvel algorithme de chauve-souris en introduisant l'opérateur différentiel et les vols de Lévy (DLBA). Le DLBA a la même structure que BA, mais les équations de mouvement des chauves-souris ainsi que la recherche locale sont différentes. L’opérateur différentiel qui est similaire à l'opération de mutation de l'algorithme d'évolution différentielle (DE) a été introduit à la fréquence pour la faire fluctuer de haut en bas et change automatiquement. De plus, le vol de Lévy est intégré à l'équation de recherche locale pour permettre aux chauves-souris de sauter hors des optimums locaux.

En se basant sur le concept de communication des processeurs lors du calcul en parallèle, Nguyen et al. [55] ont proposé un algorithme hybride basé sur le BA standard et l'algorithme de la colonie d'abeilles artificielles (BA-ABC). Chaque algorithme évolue indépendamment, après avoir exécuté un nombre fixe d'itérations, les deux algorithmes échangent ensuite les données. Les chauves-souris avec des solutions proches de la meilleure solution remplacent les pires agents artificiels de l'ABC (Artificial Bee Colony). En revanche, les meilleurs agents artificiels de l'ABC remplacent les chauves-souris à mauvaise position de BA. En outre, les chauves-souris dans BA ne savent pas l'existence des abeilles artificielles de l'ABC et vice versa. Les résultats montrent que l'hybride BA- ABC augmente la précision et la convergence est meilleure que celle du BA (Jusqu'à 78%) et du ABC (Jusqu'à 11%). En utilisant la même idée, Pan et al. [56] ont hybridé PSO avec BA. Dao et al. [57] ont proposé une version compacte de l'algorithme des chauve-souris(CoBA) adressée aux matériels (ordinateur, micro-processeur) avec des ressources limitées telles que la taille de la

mémoire ou les équipements à bas prix. La population des chauves-souris est remplacée par un vecteur de probabilité mis à jour par un seul calcul. Ceci a conduit à un algorithme qui fonctionne avec un usage de mémoire modeste. Les résultats montrent que les performances CoBA sont aussi bonnes que celles de BA standard en dépit de son modeste usage de mémoire.

Dans [58], l'algorithme des chauves-souris adaptatif (ABA) est présenté. Chaque chauve-souris peut automatiquement ajuster sa vitesse et la direction du vol. Les auteurs ont introduit un facteur d'inertie à l'équation de la vitesse en fonction de la distance entre la position réelle de chauve-souris et la position de la meilleure chauve-souris. Ils ont également proposé d'ajouter un facteur rétrécissement à la formule de recherche locale pour réduire l'espace de recherche au cours du processus itératif. Avec une certaine similitude à l'ABA, l’algorithme de chauve-souris avec souvenir (Recollection Bat Algorithm, RBA) [59] a un coefficient d'inertie qui varie en fonction du temps imposé sur la vitesse afin que les chauve-souris avancent avec une finesse vers la chauve- souris à meilleure position. Chen et al. [60] ont introduit l'effet Doppler au BA standard pour améliorer l'efficacité de la résolution (DBA). L'effet Doppler produit un décalage de fréquence provoqué par la vitesse entre la source sonore et l’observateur. Ils ont proposé d'ajouter le concept de conscience pour permettre aux chauves-souris de détecter le changement dans l'environnement par des lois physiques selon l'effet Doppler.

L'algorithme de chauve-souris hybride (HBA) proposé par Fister et al. [61] a été adapté pour devenir l'algorithme des chauves-souris hybride auto-adaptatif (HSABA) [62]. L'algorithme a deux caractéristiques principales. Tout d'abord, les auteurs ont introduit une technique d'auto-adaptation aux paramètres de contrôle de BA (l'intensité sonore et le taux d'impulsion). Deuxièmement, ils ont remplacé l'équation de recherche locale par l'opérateur d'évolution différentielle où quatre stratégies des opérateurs ont été considérées, à savoir DE/rand/1/bin, DE/randToBest/1/bin, DE/best/2/binet enfin DE/best/1/bin. Les résultats ont montré que l'algorithme de chauve-souris hybride basé sur "DE/best/2/bin" a obtenu les meilleurs résultats par rapport aux trois autres stratégies. L’algorithme de chauve-souris amélioré (EnBA) proposé dans [63] a été développé à travers trois modifications différentes. Un facteur d'inertie a été proposé pour équilibrer les capacités de recherche pendant le processus d'optimisation en fonction de l'exigence de BA. Une nouvelle équation pour contrôler la vitesse des chauves-souris a été introduite avec une aptitude de contribuer à la dispersion des

(IWO) [71] a été adopté pour augmenter la capacité de l'exploitation plutôt que de l’exploration avec rectification vers la fin du processus d'optimisation.

L'algorithme de chauve-souris avec mutation auto-adaptative (BA-SAM) proposé par Alam et Kabir [64] utilise la mutation aléatoire de Gauss et de Cauchy à la place de l'équation de recherche locale d'origine. L'idée centrale de l'auto-adaptation est une sélection probabiliste d’un des deux régimes de mutation en utilisant une stratégie d'apprentissage. L'algorithme de chauve-souris modifié (MBA) proposé par Yilmaz et al [65] a le même organigramme que l’algorithme BA standard. Une nouvelle stratégie a été proposée pour la mise à jour des paramètres de contrôle (taux d'impulsion et l'intensité). De plus, une nouvelle équation a été proposée pour la recherche locale. Les résultats ont montré une amélioration significative dans la résolution des problèmes à faible dimension, mais pas autant pour des problèmes de large dimensionnalité. Les auteurs dans [66] ont proposé l'algorithme des chauves-souris évolué (EvBA) pour résoudre des problèmes d'optimisation numériques basés sur le cadre de BA. L'EvBA a été construit avec une nouvelle définition des équations du mouvement des chauves-souris où ils ont introduit la vitesse du son pour mesurer les distances et la mise à jour du mouvement des chauves-souris.

Dans [67], les auteurs ont utilisé un codage par des nombres complexes pour construire l'algorithme des chauves-souris à valeurs complexes (CVBA). L'idée de base du codage complexe est d'utiliser deux paramètres, une partie réelle et une partie imaginaire, pour représenter une variable. Ces deux parties (réelle et imaginaire) sont mises à jour en parallèle. Les variables indépendantes de la fonction objectif sont déterminées par les modules et les angles de leur nombre complexe correspondant. Par conséquent, la diversité de la population est considérablement améliorée.

Tous ces algorithmes ont été testés sur les fonctions de référence classiques. La majorité de ces fonctions ont l'optimum situé dans le centre de l'espace de recherche avec le vecteur nul (x = [0...0]d) comme solution, i.e. la fonction de Griewank, la fonction de Rastrigin, la fonction d'Ackley, etc. Certains d'entre eux ont montré une amélioration significative par rapport à l'algorithme de chauve- souris standard, mais aucun d'entre eux avait été testé sur des fonctions de référence non-standards, comme ceux conçus pour la compétition du Congrès international sur le calcul évolutif (CEC'2005 tests suite [72]) où les fonctions ont été transférées, tournées et déplacées afin d'assurer que leur optimum ne peut jamais être trouvé dans le centre de l'espace de recherche.

Documents relatifs