Pénaliser les directions fractionnaires dans le

publicité
Pénaliser les directions fractionnaires dans le simplexe en
nombres entiers. Application au transport aérien.
Samuel Rosat1,2 , Frédéric Quesnel1,2 , François Soumis1,2 , Issmail Elhallaoui1,2
1
2
Polytechnique Montréal, C.P. 6079, Succ. Centre-Ville, Montreal (QC) H3C 3A7, Canada
{samuel.rosat,frederic.quesnel,francois.soumis,issmail.elhallaoui}@polymtl.ca
Laboratoire du GERAD, 3000, ch. de la Côte-Sainte-Catherine, Montréal (QC) H3T 2A7, Canada
Mots-clés : problème de partitionnement, algorithmes primaux, méthodes d’augmentation,
normalisation, planification de personnel
1
Contexte et objectifs
Les algorithmes primaux sont des méthodes de résolution de programmes mathématiques
qui se basent sur le schéma suivant : partir d’une solution entière non optimale, trouver une
direction qui mène vers une meilleure solution entière, puis itérer ce processus jusqu’à atteindre
l’optimalité. À chaque étape, un sous-problème d’augmentation est résolu, c’est-à-dire trouver
une direction d’amélioration (ou d’augmentation) ou affirmer que la solution courante est
optimale. Il existe bien moins de travaux concernant les méthodes primales que sur le branchand-bound qui représente depuis 40 ans la filière dominante pour la résolution de problèmes
linéaires en nombres entiers. Développer une méthode primale efficace en pratique constituerait
ainsi un changement majeur.
Des travaux computationels sur des algorithmes primaux ressortent deux principaux défis
rencontrés lors de la conception et l’implémentation de ces méthodes. D’une part, de nombreuses directions d’amélioration sont irréalisables, c’est-à-dire qu’effectuer un pas, aussi petit
soit-il, dans ces directions implique une violation des contraintes du problème. On parle alors de
dégénérescence ; c’est par exemple le cas des directions associées à certains pivots de simplexe
(pivots dégénérés). Les directions irréalisables ne permettent pas à l’algorithme de progresser
et peuvent mettre en péril sa terminaison s’il est impossible de déterminer de direction réalisable. D’autre part, lorsqu’une direction d’amélioration réalisable pour la relaxation linéaire a
été déterminée, il est difficile de s’assurer que la solution vers laquelle elle mène est entière.
Parmi les méthodes primales existantes, celle qui apparait comme la plus prometteuse est
le simplexe en nombres entiers avec décomposition (Integral Simplex Using Decomposition,
ISUD) de Zaghrouti et al. [2] car il intègre au cadre primal des techniques de décomposition
permettant de se prémunir des effets néfastes de la dégénerescence. Cet algorithme s’attache à
la résolution du problème de partitionnement d’ensembles (set partitioning problem), modèle
répandu en optimisation et permettant notamment de représenter des problèmes d’horaires de
personnel ou de véhicules. Il s’agit à notre connaissance d’un des seuls algorithmes de type
primal capable de battre le branch-and-bound sur des instances de grande taille ; par ailleurs,
la différence est d’autant plus importante que le problème est grand. Bien que fournissant
des éléments de réponse à la problématique de la dégénerescence, cette méthode n’aborde
pas pour autant la question de l’intégralité lors du passage à une solution de meilleur coût ;
et pour qu’ISUD puisse envisager de concurrencer les méthodes de type branch-and-bound, il
lui faut parcourir cette deuxième moitié du chemin. Il s’agit là de l’objectif de ce travail :
augmenter le taux de directions entières trouvées par ISUD pour le rendre applicable aux
instances industrielles de grande taille de type planification de personnel.
2
2.1
Contributions
Algorithme statique
Dans un premier temps, nous généralisons la formulation du problème d’augmentation afin
d’augmenter la probabilité que la direction déterminée par l’algorithme mène vers une nouvelle
solution entière [1]. Lors de l’exécution d’ISUD, pour déterminer la direction qui mènera à la
solution suivante, on résout un programme linéaire dont la solution est une direction d’amélioration qui appartient au cône des directions réalisables. Pour s’assurer que ce programme est
borné (les directions pourraient partir à l’infini), on lui ajoute une contrainte de normalisation
et on se restreint ainsi à une section de ce cône. Dans la version originelle de l’algorithme, les
coefficients de cette contrainte sont uniformes. Nous généralisons cette contrainte à une section
quelconque du cône et montrons que la direction réalisable déterminée par l’algorithme dépend
fortement du choix des coefficients de cette contrainte ; il en va de même pour la probabilité
que la solution vers laquelle elle mène soit entière. Nous étendons les propriétés théoriques
liés à la décomposition dans l’algorihtme ISUD et montrons de nouveaux résultats dans le cas
d’un choix de coefficients quelconques. Nous déterminons de nouvelles propriétés spécifiques à
certains choix de normalisation et faisons des recommandations pour choisir les coefficients afin
de pénaliser les directions fractionnaires au profit des directions entières. Des résultats numériques sur des instances de planification de personnel montrent le potentiel de notre approche.
Alors que la version originale d’ISUD permet de résoudre 78% des instances de transport aérien du benchmark considéré, 100% sont résolues grâce à l’un, au moins, des modèles que nous
proposons.
2.2
Algorithme dynamique
Dans un second temps, nous modifions dynamiquement les coefficients de la contrainte de
normalisation lorsque la direction trouvée par l’algorithme mène vers une solution fractionnaire.
Nous proposons plusieurs stratégies de mise-à-jour visant à pénaliser les directions fractionnaires et basées sur des observations théoriques et pratiques. Certaines visent à pénaliser la
direction choisie par l’algorithme, d’autres procèdent par perturbation des coefficients de normalisation en utilisant les équations de coupes adaptées au problème d’augmentation. Cette
version de l’algorithme est testée sur un nouvel ensemble d’instances provenant de l’industrie
du transport aérien. À notre connaissance, l’ensemble d’instances que nous proposons n’est
comparable à aucun autre. Il s’agit en effet de grands problèmes d’horaires de personnel navigant allant jusqu’à 2 200 vols et 115 000 rotations, donc autant de contraintes et de variables.
Ils sont posés sous la forme de problèmes de partitionnement pour lesquels nous fournissons des
solutions initiales comparables à celles dont on disposerait en milieu industriel. Notre travail
montre le potentiel qu’ont les algorithmes primaux pour résoudre des problèmes de planification de personnel navigant qui sont des problèmes clés pour les compagnies aériennes, tant par
leur importance économique qu’à cause de leur complexité intrinsèque.
Références
[1] Samuel Rosat, Issmail Elhallaoui, François Soumis, and Driss Chakour. Influence of the
normalization constraint on the integral simplex using decomposition. Discrete Applied
Mathematics (accepted for publication), 2015.
[2] Abdelouahab Zaghrouti, François Soumis, and Issmail El Hallaoui. Integral simplex using
decomposition for the set partitioning problem. Operations Research, 62(2) :435–449, 2014.
Téléchargement