• Aucun résultat trouvé

Nous avons conçu une procédure de génération de colonnes, dont le sous-problème est résolu par une méthode adaptée, à laquelle nous avons ajouté une méthode d’agrégation dynamique de contraintes. La génération de colonnes fournit une solution optimale à la relaxation continue du SPP. Afin de résoudre le problème de saturation, il est nécessaire de calculer une solution entière de bonne qualité, sinon optimale, à la formulation SPP.

Outre la valeur optimale de la fonction-objectif, la génération de colonnes fournit un sous-ensemble restreint de variables qui à lui seul permet l’obtention de la solution optimale continue. Nous avons également vu qu’ACO était une solution pertinente pour résoudre le SPP pour des tailles raisonnables. L’idée sous-jacente à l’hybridation est donc d’utiliser le problème restreint aux variables fournies par la génération de colonnes comme formulation résolue par ACO.

Il s’agit donc d’une hybridation entre une technique issue des méthodes de résolution exacte dans le cadre de la PL avec une métaheuristique. De nombreuses approches hybridant ces deux types de méth- odes sont présentes dans la littérature. Nous en effectuons donc une présentation générale. Nous nous intéressons ensuite plus particulièrement aux hybridations réalisées autour de la génération de colonnes, et formalisons enfin l’interaction réalisée entre notre procédure de génération de colonnes et ACO pour le SPP. L’hybridation présentée ici est également détaillée par Merel et al. [51].

4.4.1 Principe de l’hybridation

Les métaheuristiques et les algorithmes exacts utilisés dans le cadre de résolution de problème de PLNE possèdent des avantages qui leurs sont propres et qui peuvent se révéler complémentaires, comme cela est mis en avant par Dumitrescu et Stützle [25]. Les méthodes de résolution associées à la PL et à la PLNE fournissent souvent des bornes qui peuvent être de bonne qualité, à travers la résolution de la relaxation continue et d’éventuelles améliorations telles que la génération d’inégalités valides. Par exemple, Puchinger et al. [61] proposent un algorithme mémétique qui exploite les solutions entières trouvées par une procédure de branch-and-cut exécutée simultanément, ainsi que les solutions duale fournies par la résolution de sa relaxation continue. D’un autre côté, les métaheuristiques sont souvent

considérées comme un moyen pertinent de trouver des solutions de bonne qualité tout en maintenant un temps de calcul réduit. Elles ne sont cependant pas conçues pour prouver l’optimalité d’une solution. Les deux classes de méthodes peuvent donc se révéler complémentaires.

Les méthodes hybrides peuvent être classées selon la manière dont interagissent l’algorithme exact et la métaheuristique. Puchinger [60] suggère une classification entre les hybridations collaboratives et intégratives. Une hybridation collaborative signifie que l’algorithme exact et la métaheuristique sont exé- cutées séparément, que ce soit séquentiellement ou en parallèle. Les combinaisons intégratives consistent à incorporer un algorithme exact au sein d’une métaheuristique, ou vice-versa.

Un large aperçu d’exemples d’hybridations est proposé par Blum et al. [6], tel que l’hybridation d’une algorithme ACO avec des techniques de programmation par contraintes. Les auteurs donnent également des exemples supplémentaires d’interaction entre les méthodes par séparation et évaluation et des méta- heuristiques.

4.4.2 Les hybridations liées à la génération de colonnes

Dans le cadre général de la génération de colonnes, résoudre le sous-problème en temps raisonnable est un défi essentiel pour obtenir un algorithme global possédant des performances correctes. Il n’est toutefois pas nécessairement aisé de le résoudre.

De ce fait, des hybridations intégratives ont été proposées au sein desquelles la métaheuristique est l’algorithme esclave d’un algorithme de génération de colonnes, et est responsable de la recherche de nouvelles colonnes. De telles approches incluent le travail de Filho et Lorena [29], proposant un al- gorithme génétique, ainsi que le travail de Puchinger [60] qui propose un algorithme évolutionnaire. Clements et al. [13] proposent une hybridation collaborative séquentielle au sein de laquelle une heuris- tique est utilisée pour générer une formulation restreinte d’un problème d’ordonnancement de pro- duction, formulation résolue par la suite par une procédure basée sur la génération de colonnes. Plus récemment, Sadki-Fenzar [67] propose des hybridations intégratives sequentielles entre la génération de colonnes et une heuristique gloutonne pour la résolution de problèmes de couverture en nombres entiers. Bien que ces approches possèdent des différences, l’algorithme approché est chargé dans chaque cas de générer les variables pour la méthode exacte. Les rôles sont donc inversés par rapport à l’approche que nous adoptons, puisque nous souhaitons utiliser la génération de colonnes pour fournir une formulation à la métaheuristique ACO.

4.4.3 Exploitation de la génération de colonnes par la métaheuristique

L’hybridation que nous proposons est simple et rentre dans la catégorie des hybridation collaboratives séquentielles, telles que classifiées par Puchinger [60]. La génération de colonnes est utilisée pour fournir les informations suivantes à ACO :

– la valeur optimale de la fonction-objectif pour la relaxation continue ;

– l’ensemble des variables générées au cours de l’ensemble des itérations de l’algorithme ; – l’affectation d’une valeur fractionnaire à chacune de ces variables.

La combinaison de deux algorithmes consiste simplement à utiliser deux de ces informations pour ini- tialiser ACO. D’une part, à la place de la formulation entière, un SPP restreint aux variables générées est fourni en entrée à ACO. De plus, nous avons vu qu’ACO utilise une matrice de phéromones afin de guider le processus de résolution. Ceci nous permet, plutôt que d’initialiser toutes les phéromones à une valeur par défaut de 1, d’utiliser la valeur des variables dans la solution optimale continue comme

vecteur d’initialisation des phéromones. Par ce biais, les variables dont la valeur est plus élevée dans la solution optimale continue seront privilégiées dans la recherche de solution par ACO.

Enfin, la solution optimale continue est une borne supérieure pour la formulation SPP. À ce titre, elle peut être un outil d’estimation de la qualité de la solution donnée par ACO.