• Aucun résultat trouvé

1: Fonction objectif f (x), x = (x1, . . . , xd)T

2: G´en´erer la population initiale de n nids hˆote xi(i = 1, . . . , n) 3: tantque (t <MaxGeneration) ou (crit`ere d’arrˆet) faire

4: Lancer la recherche avec une fraction (pc) des coucous intelligents 5: Obtenir un coucou al´eatoire par les vols de L´evy

6: Evaluer sa qualit´´ e/fitness Fi

7: Choisir un nid parmi n (soit, j) al´eatoirement

8: si (Fi > Fj) alors

9: remplacer j par la nouvelle solution ;

10: finsi

11: Une fraction (pa) des mauvais nids est abandonn´ee et des nouveaux sont construits ;

12: Garder les meilleures solutions (ou nids avec des solutions de qualit´e) ;

13: Classer les solutions et trouver la meilleure actuelle

14: fin tantque

15: Post-processus des r´esultats et visualisation

L’id´ee de l’am´elioration introduite dans l’algorithme CS est la recherche des solutions dans des r´egions sp´ecifi´ees par les vols de L´evy ind´ependamment de la meilleure solution dans la population. On constate aussi que cette am´elioration se pr´esente comme une variante de la recherche locale autour d’une fraction pcdes solutions. L’unique inconv´e- nient de la recherche locale est le blocage dans les optimums locaux. Cet inconv´enient est bien trait´e dans le cas CS am´elior´e qui exige un d´eplacement par r´egion et non pas par solution, ce qui minimise remarquablement ces blocages.

3.5 CS Discret (DCS)

En g´en´eral, le processus d’adaptation des m´etaheuristiques initialement con¸cues pour r´esoudre des probl`emes d’optimisation continue, aux probl`emes d’optimisation combina- toire est “difficile”. Ainsi, la performance de la m´etaheuristique d´ecroit vis-`a-vis de sa version dans le cas continu. Mais, le plus important est de garder la qualit´e des r´esultats superlative face aux concurrents dans le domaine continu. Les travaux de ce chapitre vont ce concentrer sur la conception d’une adaptation du CS `a un probl`eme d’optimisa- tion combinatoire. Le r´esultat est une version discr`ete de CS nomm´ee “Discrete Cuckoo Search (DCS)”.

Le processus de l’adaptation exige une d´ecomposition de notre probl´ematique en quatre ´el´ements : nid, œuf, fonction objectif et espace de recherche.

3.5.1 Nid

Dans CS, un nid jouit des caract´eristiques suivantes : – Le nombre de nids est fixe.

– Un nid est un individu de la population.

– Le nombre de nids est ´egale `a la taille de la population.

– Un nid abandonn´e implique le remplacement d’un individu de la population par un nouveau.

– Un œuf dans un nid repr´esente une solution.

Donc, on peut conclure de ces caract´eristiques que dans le cas de notre probl`eme d’optimisation combinatoire, un nid se figure comme un individu de la population avec sa propre solution.

3.5.2 Oeuf

Un Coucou peut pondre un seul œuf dans un seul nid, ce qui donne aux œufs les propri´et´es suivantes :

– Un œuf dans un nid est une solution adopt´ee par un individu de la population. – Un œuf du coucou est une nouvelle solution candidate pour une place dans la

population.

3.5.3 Fonction objectif

La fonction objectif (de test, fitness) est une fonction qui, `a chaque solution dans l’espace de recherche associe une valeur num´erique pour d´ecrire sa qualit´e ou fitness. Donc la qualit´e ou fitness d’une solution est proportionnelle `a la valeur de la fonction objectif. Dans notre probl`eme, un nid de meilleure qualit´e d’œuf nous m`enera vers les nouvelles g´en´erations. Ce qui veut dire que la qualit´e d’un œuf de Coucou est directement li´ee `a sa capacit´e de donner un nouveau Coucou.

3.5.4 Espace de recherche

Dans le cas de deux dimensions, l’espace de recherche repr´esente les positions po- tentielles des nids. Ces postions sont des coordonn´ees (x, y) dans R × R. Pour modifier une position de nid, il suffit tout simplement, d’ajouter (soustraire) une valeur r´eelle `a (d’) une coordonn´ee (ou deux coordonn´ees). Comme vous remarquez, le d´eplacement des nids s’effectue sans aucune contrainte r´eelle. C’est le cas pour la majorit´e des probl`emes d’optimisation continue, qu’on peut consid´erer comme un avantage qui ´evite un ensemble d’obstacles techniques comme :

3.5. CS DISCRET (DCS) 43

1. Comment repr´esenter les coordonn´ees dans un espace des solutions d’un probl`eme d’optimisation combinatoire ?

2. Est-ce que cette repr´esentation permet le d´eplacement d’une solution `a une autre voisine ?

3. Comment d´efinir un voisinage dans cet espace de recherche ?

4. Comment valider la longueur du pas qu’on peut produire pour passer d’une solu- tion `a une autre proche ou lointaine ?

L’espace de recherche dans un probl`eme d’optimisation combinatoire peut ˆetre vu comme un ”graphe” o`u les sommets repr´esentent les solutions et les arˆetes connectent les paires de solutions voisines.

Coordonn ´ees : Les coordonn´ees sont les ´el´ements qui affectent directement la qualit´e de la solution `a travers la fonction objectif. Cette fonction doit ˆetre bien d´efinie afin de simplifier la repr´esentation des coordonn´ees.

D ´eplacement : Dans le cas combinatoire, les coordonn´ees d’une solution dans l’espace de recherche sont modifi´ees `a travers les propri´et´es du probl`eme trait´e. En g´en´eral, le changement de position dans l’espace combinatoire se fait par un changement de l’ordre des ´el´ements de la solution, par une combinaison, une permutation, ou un ensemble de m´ethodes ou op´erateurs nomm´es perturbations ou mouvement (moves).

Voisinage : La notion de voisinage exige que, la solution voisine d’une solution donn´ee doit ˆetre g´en´er´ee par la plus petite perturbation possible. Cette perturbation doit effec- tuer le minimum de changements sur la solution courante. Il s’agit donc de sp´ecifier des sous-ensembles de solutions nomm´es r´egions, selon le m´etrique de l’espace de recherche.

Pas : Le pas est la distance entre deux solutions. Il est bas´e sur la topologie de l’espace et la notion de voisinage. Dans ce travail nous avons classifi´e les pas selon leur longueur, qui est la nature et le nombre de perturbations successives.

Vols de L ´evy : Le vol de L´evy a comme objectif, une recherche intensifi´ee autour d’une solution, suivie par des grands pas `a long terme. Et d’apr`es Yang et Deb (2009), la recherche d’une nouvelle meilleure solution est plus efficace via les vols de L´evy. Donc, pour am´eliorer la qualit´e de la recherche nous allons associer la longueur du pas `a la valeur g´en´er´ee par les vols de L´evy.

3.6 Conclusion

Les algorithmes bas´es sur la notion d’intelligence en essaims comme la recherche du coucou jouissent d’une performance ´elev´ee pour r´esoudre une large gamme de probl`emes d’optimisation non-lin´eaires, ce qui explique leur int´egration dans diff´erents domaines d’application du monde r´eel. Cette cat´egorie d’algorithmes est con¸cue de fa¸con `a mini- miser l’intelligence (ou le calcul fourni) de l’individu tout en maximisant l’intelligence de l’essaim au total. La minimisation s’ach`eve `a travers la r´eduction du nombre de para- m`etres, en favorisant plus d’ind´ependance et d’abstraction par rapport aux contraintes du probl`eme trait´e. D’un autre cˆot´e, maximiser l’intelligence de l’essaim est atteint par une meilleure conception de l’espace des solutions et un bon ´equilibre de la recherche entre les r´egions prometteuses et `a l’´echelle globale pour l’exploration de nouvelles r´e- gions. Dans les chapitre suivants nous d´evelopperons ces notions afin de les appliquer pour r´esoudre quelques probl`emes d’optimisation combinatoire.

Ce chapitre repr´esente le cœur de notre approche. Il est la ligne directrice de la conception de DCS et sa validation par un certain nombre d’applications sur une vari´et´e de probl`emes d’optimisation combinatoire. Grˆace `a l’am´elioration propos´ee et la version discr`ete de CS, DCS est con¸cu d’une mani`ere `a optimiser la facult´e de s’adapter `a une large gamme de probl`emes tout en gardant la performance de CS. Le point fort de DCS est la facilit´e d’harmoniser trois types de recherches `a travers le meilleur individu de la population, la fraction des mauvaises solutions et celle des coucous intelligents. Ces trois cat´egories repr´esentent trois strat´egies proc´edant ind´ependamment et partageant des informations sur les r´egions prometteuses et la position de la meilleure solution.

La version discr`ete de CS est con¸cue de mani`ere `a rendre DCS applicable sur la majorit´e des probl`emes combinatoires, suite `a une interpr´etation des composantes de la terminologie de CS, ce qui rend la tˆache d’adaptation moins complexe. L’adaptation de DCS aux probl`emes d’optimisation combinatoires commence par le probl`eme lui- mˆeme sans consid´erer ses propres caract´eristiques. Le probl`eme trait´e doit ´enonc´e sa d´efinition de solution, son espace de solutions et comment se d´eplacer dans cet espace. Ces d´efinitions sont `a int´egrer directement sous forme de composantes associ´ees `a CS.

Les points forts de notre approche peuvent ˆetre r´esum´es ainsi :

– Un niveau ´elev´e de g´en´ericit´e grˆace au nombre r´eduit de param`etres ; – Une randomisation contrˆol´ee via les vols de L´evy ;

– Une libert´e de d´eplacement dans l’espace de recherche sans ˆetre pi´eg´e par les op- timums locaux grˆace aux diff´erentes strat´egies de recherche ;

L’id´ee motif de la conception de DCS est de favoriser la consid´eration du probl`eme trait´e comme une boite noire, avec une entr´ee nourrie de perturbations ou de d´eplace- ments (bas´ee sur la d´efinition d’une solution) dans l’espace de recherche, et une sortie des valeurs de la fonction objectif.

Chapitre

4

A

PPLICATIONS DE

DCS

AUX

POC

S

Sommaire

4.1 Introduction . . . 45

4.2 DCS & TSP . . . 46

4.2.1 Adaptation de DCS au TSP . . . 46

4.2.2 R´esultats exp´erimentaux . . . 50

4.3 DCS & JSSP . . . 56

4.3.1 Adaptation de DCS au JSSP . . . 56

4.3.2 R´esultats exp´erimentaux . . . 58

4.4 DCS & QAP . . . 60

4.4.1 Adaptation de DCS au QAP . . . 61

4.4.2 R´esultats exp´erimentaux . . . 63

4.5 Conclusion . . . 63

4.1 Introduction

Dans ce chapitre expliquant l’application de DCS afin de r´esoudre trois POCs, nous nous sommes focalis´es principalement sur la reinterpr´etation de la terminologie utilis´ee dans CS standard et sa source d’inspiration. Cette terminologie est la cl´e du passage de l’espace continu vers l’espace combinatoire. Si nous prenons ces trois probl`emes comme des exemple typiques de probl`emes d’optimisation combinatoire, avant de les r´esoudre par les m´etaheuristiques con¸cues pour les espaces continus, il est important de discuter les concepts suivants : position, d´eplacement, distance, et fonction objectif. Ces notions doivent ˆetres clairement d´efinies et bien projet´ees sur le POC trait´e (espace combina- toire), et aussi bien capt´ees par la m´etaheuristique (con¸cue dans l’espace continu) apr`es l’interpr´etation (adaptation). Au cours de l’adaptation de DCS, ces notions vont appa- raitre dans la discussion des principaux ´el´ements suivants : œuf, nid, fonction objectif, espace de recherche, et vols de L´evy.

Dans chaque section de ce chapitre, nous allons ´etaler une description d´etaill´ee de chaque composante de notre approche et les liens entre elles. Nous allons aussi, montrer

leur importance et leur rˆole vis `a vis de DCS et des POCs. La performance de ces applications est valid´ee par le rapport des r´esultats num´eriques des diff´erents tests sur un groupe d’instances de r´ef´erence pour le TSP (resp. QAP et JSSP) issues de la biblioth`eque Travelling Salesman Problem Library (TSPLIB) (resp. Quadratic Assignment Problem Library (QAPLIB) et Operations Research Library (OR-Library)) et des comparaisons avec quelques m´etaheuristiques de la litt´erature. Vers la fin de ce chapitre, nous avons exprim´e notre conclusion et trac´e de potentielles perspectives.

4.2 DCS & TSP

Parmi les probl`emes d’optimisation combinatoire, les plus ´etudi´es, on trouve l’exemple du Probl`eme de Voyageur de Commerce “Travelling Salesman Problem” (TSP) dans le- quel un agent de commerce a l’intention de visiter un nombre de villes exactement une seule fois, et retourner au point de d´epart, avec l’objectif de minimiser la distance totale du voyage ou l’ensemble des coˆuts de la tourn´ee. La version discr`ete et am´elior´ee de la recherche du coucou (DCS) pour la r´esolution du TSP, un probl`eme d’optimisation combinatoire NP-difficile, est bas´ee sur l’algorithme de recherche du coucou (CS). DCS commence par la reconstruction de la population de CS par l’introduction d’une nouvelle cat´egorie des coucous dans le but d’am´eliorer efficacement sa recherche. Cette recherche est adapt´ee `a l’espace de recherche de TSP en se basant sur la terminologie utilis´ee au niveau de la source d’inspiration de CS. La performance de DCS propos´ee est test´ee face `a un groupe de benchmarks de TSP sym´etrique de la biblioth`eque TSPLIB. Les r´esultats exp´erimentaux montrent que DCS surpasse les autre m´etaheuristiques choisies `

a la comparaison.

4.2.1 Adaptation de DCS au TSP

L’un des objectifs de l’extension de CS pour r´esoudre TSP est d’´etudier l’int´egration des avantages de base de CS dans sa version discr`ete et am´elior´ee. La proc´edure de l’adaptation de CS `a TSP se concentre principalement autour d’une r´e-interpr´etation de la terminologie utilis´ee dans CS basic. CS et sa source d’inspiration sont structur´es autour de cinq ´el´ements principaux : œuf, nid, fonction objectif, espace de recherche et vols de L´evy. Ces ´el´ements cl´es sont tr`es importants pour le passage vers les probl`emes d’optimisation combinatoire.

4.2.1.1 Oeuf

Dans le cas o`u une solution est l’´equivalant d’un œuf, un emplacement/position est r´eserv´e pour chaque individu de la population. Nous pouvons dire qu’un œuf est l’´equivalent de cycle Hamiltonien (Figure 4.1). Ici nous n´egligeons le besoin de prendre

4.2. DCS & TSP 47 A B C D E

F Figure 4.1 – Dans TSP uu œuf

est repr´esent´e par un cycle Hamiltonien.

la ville de d´epart pour tous les circuits, et aussi la direction du tour pris par le voyageur.

4.2.1.2 Nid

Dans le cas de TSP, nous pouvons supposer qu’un nid est vu comme un individu dans la population avec son propre cycle Hamiltonien. En effet, un nid peut avoir plusieurs œufs pour de futures extensions. Dans le cas de DCS, chaque nid contient seulement un seul œuf.

4.2.1.3 Fonction objectif

Le probl`eme du voyageur de commerce associe `a la qualit´e de la solution, la longueur du cycle Hamiltonien. La meilleure solution, donc, est celle qui a le cycle Hamiltonien le plus court.

4.2.1.4 Espace de recherche

Dans le cas de deux dimensions, l’espace de recherche repr´esente les positions des nids potentiels. Ces positions sont (x, y) ∈ R×R. Pour changer la position d’un nid, nous modifions seulement la valeur courante de chacune de ces coordonn´ees. Il est ´evident que le d´eplacement du coucou ne pose pas un probl`eme r´eel. Nous parlons ici du cas de la plupart des probl`emes d’optimisation combinatoire, qui peut ˆetre vu comme un avantage en ´evitant plusieurs obstacles techniques comme la repr´esentation des coordonn´ees dans l’espace de solutions de TSP, sp´ecialement durant le d´eplacement d’une solution vers une autre voisine. Dans TSP nous avons fix´e les coordonn´ees des villes visit´ees ; cependant, l’ordre de visite entre les villes peut ˆetre chang´e.

L’espace de recherche dans TSP, comme montr´e dans le cas d’une perturbation 2-opt (Fig. 4.2) est un ensemble de points. Un tour est une solution potentielle avec

1234 2134 3142 1324 1243 3214 1432 1342 1423 3412 3124 2314

Figure 4.2 – Espace de solutions et mouvement 2-opt pour une instance de cinq villes.

n = 5 villes (les villes sont identifi´ees par les entiers de “0” `a “4”. Une solution est donc une s´equence/permutation de ces entiers. sur le graphe, la ville de d´epart identifi´ee par “0” est fix´ee, et donc non montr´ee). Ces solutions sont positionn´ees dans l’espace selon l’ordre de leurs villes. Dans cet exemple, nous avons 12 solutions distinctes dans l’espace de recherche (structur´ees grˆace `a l’op´erateur 2-opt) et chaque solution est directement connect´ee avec n(n − 3)/2 voisines.

D ´eplacement dans l’espace de recherche : Parce que les coordonn´ees des villes sont fix´ees, les mouvements sont bas´es sur l’ordre de visite des villes. Il y a plusieurs m´ethodes, op´erateurs ou perturbations qui g´en`erent une nouvelle solution d’une solution existante par le changement de l’ordre des villes visit´ees.

L’adaptation de CS `a TSP (CS discret), effectue des perturbations pour changer l’ordre de visite des villes par les mouvements 2-opt Croes (1958) et double-bridge. 2-opt, comme pr´esent´e dans la figure 4.3a supprime deux arcs non adjacents du tour (solution ou cycle Hamiltonien) et reconnecte les deux chemins cr´e´es. Double-bridge coupe quatre arcs et introduit quatre nouveaux arcs comme pr´esent´e dans la figure 4.3b.

Le d´eplacement d’une solution `a une autre, dans l’espace de recherche (espace com- binatoire) est effectu´e par de petits pas dans une r´egion restreinte autour de la solution courante. Donc, la succession de plusieurs pas m`ene vers des solutions lointaines. Mais, si on veut se d´eplacer de la r´egion courante et pointer vers une autre r´egion tr`es ´eloign´ee, nous perturbons la solution par l’op´erateur double-bridge.

Voisinage : Dans les probl`emes continus, la d´efinition du voisinage est relativement claire est simple. Par contre, pour les probl`emes d’optimisation combinatoire, la notion de voisinage requi`ere que le voisinage d’une solution donn´ee doit ˆetre g´en´er´e par la

4.2. DCS & TSP 49

(a) Op´erateur 2-opt. (A) tour initial. (B) tour cr´e´e par 2-opt [les arcs

(a,b) et (c,d) sont supprim´es, et les arcs (a,c) et (b,d) sont ajout´es].

(b) Op´erateur Double-bridge. (A) tour initial. (B) tour cr´e´e par

double-bridge [les arcs (a,b), (c,d), (e,f) et (g,h) sont remplac´es par

les arcs (a,f), (c,h), (e,b) et (g,d) respectivement].

Figure 4.3 – Les op´erateurs de d´eplacement dans l’espace de solutions (2-opt et Double- bridge).

perturbation la plus petite. Cette perturbation doit causer le minimum de changement sur la solution. Ce qui nous a men´e vers la perturbation 2-opt, car, pour une nouvelle solution, le nombre minimum des arcs non-contigus que nous pouvons supprimer est deux. Donc, 2-opt est un bon candidat pour ce type de perturbations.

Pas : Le pas du mouvement est la distance entre deux solutions. Il est en relation avec la topologie de l’espace et la notion du voisinage. La longueur du pas est proportionnelle au nombre des perturbations 2-opt successives. Un grand pas est repr´esent´e par une perturbation double-bridge.

Vols de L ´evy : Les vols de L´evy ont comme caract´eristique, la recherche intensifi´ee autour d’une solution, suivie par un grand pas `a long terme. Selon Yang et Deb (2009), dans quelques probl`emes d’optimisation, la recherche pour une nouvelle solution bien meilleure est plus efficace via les vols de L´evy. Afin d’am´eliorer la qualit´e de recherche,

nous allons associer la longueur du pas `a la valeur g´en´er´ee par les vols de L´evy comme pr´esent´e dans la version standard CS.

L’espace des solutions doit supporter une notion de pas, bien d´efinie est plus stable. L’unit´e de pas, s´electionn´ee pour le d´eplacement d’une solution `a une autre est l’op´erateur 2-opt. Donc nous avons le choix entre un petit pas, un nombre k de pas, et un grand pas. Pour faciliter le contrˆole de ces pas via les vols de L´evy, nous les associons `a un intervalle entre 0 et 1. En effet, selon la valeur re¸cue par les vols de L´evy dans cet intervalle nous pouvons choisir la longueur appropri´ee au pas.

Si la valeur de L´evy est dans : 1. [0, i[ nous avons un pas 2-opt,

2. [(k − 1) × i, k × i[ un d´eplacement par k pas,

3. [k × i, 1[ nous effectuons un grand pas par double-bridge.

La valeur de i dans cette proc´edure est : i = (1/(n+1)) o`u n est le nombre maximum

Documents relatifs