1. Algorithmes pour la résolution exacte du problème
01KP unidimensionnel bi-objectif
Julien Jorge, Xavier Gandibleux
Laboratoire d’Informatique de Nantes Atlantique
9 mars 2007
1ère journée KnapSack et Optimisation
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 1 / 33
2. Plan
1 Le problème du sac-à-dos unidimensionnel bi-objectif
Formulation du problème
Solutions efficaces et points non dominés
2 Algorithmes existants pour la résolution exacte du bi-01KP
Algorithme en deux phases
Méthode dichotomique
Plus courts chemins multi-objectif
3 Améliorations et nouveaux algorithmes
Démarche adoptée
Retour sur le branch and bound en phase 2
k meilleures solutions (ranking)
4 Expérimentations numériques
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 2 / 33
3. Formalisation du bi-01KP
“max.” zj(x) =
n
X
i=1
pj
i xi j ∈ {1, 2}
s/c
n
X
i=1
wi xi ≤ ω
xi ∈ {0, 1} ∀i ∈ {1, . . . , n}
wi ∈ N ∀i ∈ {1, . . . , n}
pj
i ∈ N ∀i ∈ {1, . . . , n}, j ∈ {1, 2}
Exclusion des cas triviaux :
n
X
i=1
wi > ω
wi > 0, ∀i
(p1
i > 0) ∨ (p2
i > 0), ∀i
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 3 / 33
4. Solutions optimales en MO
Qu’est-ce que “maximiser” plusieurs fonctions objectifs
simultanément ?
Optimisation lexicographique :
Maximiser selon z1, puis fixer z1 et
maximiser selon z2
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 4 / 33
5. Solutions optimales en MO
Qu’est-ce que “maximiser” plusieurs fonctions objectifs
simultanément ?
Optimisation lexicographique :
Maximiser selon z1, puis fixer z1 et
maximiser selon z2
→ résultat dépendant de l’ordre de
résolution
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 4 / 33
6. Solutions efficaces et points non dominés
Une solution x est dominée s’il existe x0 telle que :
z1
(x) ≤ z1
(x0
) et z2
(x) ≤ z2
(x0
)
avec au moins une inégalité stricte.
Espace de décision
X = {x ∈ {0, 1}n : Ax ≤ b}
deux solutions x, x0 ∈ X
Espace des objectifs
Z = z(x) = {Cx : x ∈ X}
points z(x), z(x0)
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 5 / 33
7. Solutions efficaces et points non dominés
On distingue deux types de solutions efficaces
Solutions supportées
optimales pour une
combinaison linéaire des
objectifs
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 6 / 33
8. Solutions efficaces et points non dominés
On distingue deux types de solutions efficaces
Solutions supportées
optimales pour une
combinaison linéaire des
objectifs
Solutions non supportées
optimales pour aucune
combinaison linéaire des
objectifs
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 6 / 33
9. Solutions efficaces et points non dominés
On distingue deux types de solutions efficaces
Solutions supportées
optimales pour une
combinaison linéaire des
objectifs
Solutions non supportées
optimales pour aucune
combinaison linéaire des
objectifs
But : Trouver un ensemble complet. Au moins une solution efficace
pour chaque point non dominé.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 6 / 33
10. Plan
1 Le problème du sac-à-dos unidimensionnel bi-objectif
Formulation du problème
Solutions efficaces et points non dominés
2 Algorithmes existants pour la résolution exacte du bi-01KP
Algorithme en deux phases
Méthode dichotomique
Plus courts chemins multi-objectif
3 Améliorations et nouveaux algorithmes
Démarche adoptée
Retour sur le branch and bound en phase 2
k meilleures solutions (ranking)
4 Expérimentations numériques
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 7 / 33
11. Travaux de référence
Méthode en deux phases à base de branch and bound
Two-phases Method and Branch and Bound Procedures to Solve the Bi-objective
Knapsack Problem, M. Visée et al., Journal of Global Optimization, 1998.
Méthode dichotomique utilisant un solveur MIP
Un retour d’expériences sur la résolution de problèmes combinatoires
bi-objectifs, F. Degoutin et X. Gandibleux, Journée PM2O, Angers, 2002.
Transformation de bi-01KP en un problème de plus courts
chemins bi-objectif
Solving bicriteria 0-1 knapsack problems using a labeling algorithm, M.E.
Captivo et al., Computers & Operations Research, 2003.
Les instances utlisées varient sur différents paramètres pour varier la
difficulté de la résolution.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 8 / 33
12. Méthode en deux phases
Two-phases Method and Branch and Bound Procedures to Solve the Bi-objective
Knapsack Problem, M. Visée et al., Journal of Global Optimization, 1998.
Principe
Constat : il existe de nombreuses méthodes efficaces pour résoudre
le problème de sac-à-dos mono-objectif.
Idée génerale : profiter de cet existant pour développer une
algorithmique pour le problème bi-objectif.
phase 1 : recherche des solutions supportées
phase 2 : recherche des solutions non supportées
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 9 / 33
13. Algorithme en deux phases – phase 1
Principe
Les solutions supportées sont calculables par différentes
combinaisons linéaires des objectifs.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 10 / 33
14. Algorithme en deux phases – phase 1
Principe
Les solutions supportées sont calculables par différentes
combinaisons linéaires des objectifs.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 10 / 33
15. Algorithme en deux phases – phase 1
Principe
Les solutions supportées sont calculables par différentes
combinaisons linéaires des objectifs.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 10 / 33
16. Algorithme en deux phases – phase 1
Principe
Les solutions supportées sont calculables par différentes
combinaisons linéaires des objectifs.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 10 / 33
17. Algorithme en deux phases – phase 1
Principe
Les solutions supportées sont calculables par différentes
combinaisons linéaires des objectifs.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 10 / 33
18. Algorithme en deux phases – phase 1
Principe
Les solutions supportées sont calculables par différentes
combinaisons linéaires des objectifs.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 10 / 33
19. Algorithme en deux phases – phase 2
Principe
Les solutions non supportées sont situées dans les triangles définis
par deux solutions supportées successives.
On résout le problème pondéré dans chacun de ces triangles avec un
B&B dont le calcul de la borne inférieure à été modifié.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 11 / 33
20. Algorithme en deux phases – phase 2
Principe
Les solutions non supportées sont situées dans les triangles définis
par deux solutions supportées successives.
On résout le problème pondéré dans chacun de ces triangles avec un
B&B dont le calcul de la borne inférieure à été modifié.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 11 / 33
21. Algorithme en deux phases – phase 2
Principe
Les solutions non supportées sont situées dans les triangles définis
par deux solutions supportées successives.
On résout le problème pondéré dans chacun de ces triangles avec un
B&B dont le calcul de la borne inférieure à été modifié.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 11 / 33
22. Algorithme en deux phases – phase 2
Principe
Les solutions non supportées sont situées dans les triangles définis
par deux solutions supportées successives.
On résout le problème pondéré dans chacun de ces triangles avec un
B&B dont le calcul de la borne inférieure à été modifié.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 11 / 33
23. Algorithme en deux phases – phase 2
Principe
Les solutions non supportées sont situées dans les triangles définis
par deux solutions supportées successives.
On résout le problème pondéré dans chacun de ces triangles avec un
B&B dont le calcul de la borne inférieure à été modifié.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 11 / 33
24. Algorithme en deux phases – phase 2
Principe
Les solutions non supportées sont situées dans les triangles définis
par deux solutions supportées successives.
On résout le problème pondéré dans chacun de ces triangles avec un
B&B dont le calcul de la borne inférieure à été modifié.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 11 / 33
25. Algorithme en deux phases – résultats
Points forts :
faible consommation de mémoire
gros travail de réduction du problème (pré-traitement)
Points faibles :
rapidement débordé par la taille de l’instance
pas de résolution des instances les plus difficiles
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 12 / 33
26. Résolution dichotomique
Un retour d’expériences sur la résolution de problèmes combinatoires bi-objectifs,
F. Degoutin et X. Gandibleux, Journée PM2O, Angers, 2002.
Principe
Découpage de l’espace de recherche par dichotomie :
1 calcul lexicographique des solutions optimales sur les objectifs
pris séparément : obtention des points z1|2, z2|1
2 ajout de deux contraintes
3 combinaison linéaire des objectifs
4 calcul de la solution optimale du sous problème :
pas de solution : fin de la dichotomie courante
nouvelle solution : reprendre en 2
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 13 / 33
31. Résolution dichotomique – résultats
méthode générale
qualité des résultats et temps d’exécution dépendants de la
précision du solveur
permet de poser les limites
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 15 / 33
32. Plus courts chemins bi-objectifs
Solving bicriteria 0-1 knapsack problems using a labeling algorithm, M.E. Captivo et
al., Computers & Operations Research, 2003.
Principe
Transformation du problème de sac-à-dos en un problème de plus
courts chemins bi-objectif.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 16 / 33
33. Illustration
x1 x2
p (3,4) (4,3)
w 5 5
capacité du sac ω = 7
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 17 / 33
34. Illustration
x1 x2
p (3,4) (4,3)
w 5 5
capacité du sac ω = 7
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 17 / 33
35. Illustration
x1 x2
p (3,4) (4,3)
w 5 5
capacité du sac ω = 7
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 17 / 33
36. Plus courts chemins bi-objectif – résultats
Points forts :
quasiment insensible à la classe d’instance
Points faibles :
grosse consommation de mémoire
résolution jusqu’à 400 variables
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 18 / 33
37. Limites de ces méthodes
Les algorithmes actuels sont limités aux cas du KP bi-objectif.
Seul l’algorithme de Captivo et al. peut être directement étendu au cas
multi-objectif.
Plusieurs contributions récententes s’appliquent au cas multi-objectif
géneral :
Multiple Criteria Knapsack Problems : Network Models and
Computational Results, Figuera et al.
7th international conference on MultiObjective Programming and
Goal Programming (MOPGP’06), 12-14 juin, 2006, Tours.
Une méthode exacte pour le problème du sac-à-dos multi-objectif,
Bazgan et al.
Conférence Francoro/Roadef, 20-23 février, 2007, Grenoble.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 19 / 33
38. Plan
1 Le problème du sac-à-dos unidimensionnel bi-objectif
Formulation du problème
Solutions efficaces et points non dominés
2 Algorithmes existants pour la résolution exacte du bi-01KP
Algorithme en deux phases
Méthode dichotomique
Plus courts chemins multi-objectif
3 Améliorations et nouveaux algorithmes
Démarche adoptée
Retour sur le branch and bound en phase 2
k meilleures solutions (ranking)
4 Expérimentations numériques
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 20 / 33
39. Démarche adoptée
Le travail effectué jusqu’ici suit la démarche adoptée par A. Przybylski
pour le problème d’affectation bi-objectif.
The Biobjective Assignment Problem, A. Przybylski, X. Gandibleux, M.
Ehrgott, Research report n 05.07 (LINA), dec. 2005.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 21 / 33
40. Retour sur le branch and bound en phase 2
Première amélioration
La borne utilisée par Visée et al. est améliorable (Przybylski et al.
2005).
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 22 / 33
41. Retour sur le branch and bound en phase 2
Première amélioration
La borne utilisée par Visée et al. est améliorable (Przybylski et al.
2005).
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 22 / 33
42. Retour sur le branch and bound en phase 2
Seconde amélioration
Des solution situées dans les zones grisées vont être construites.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 23 / 33
43. Retour sur le branch and bound en phase 2
Seconde amélioration
Des solution situées dans les zones grisées vont être construites.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 23 / 33
44. Retour sur le branch and bound en phase 2
Seconde amélioration
Des solution situées dans les zones grisées vont être construites.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 23 / 33
45. Retour sur le branch and bound en phase 2
Seconde amélioration
Des solution situées dans les zones grisées vont être construites.
→ dominance sur le point obtenu par RL (Gandibleux et al. 2000).
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 23 / 33
46. k meilleures solutions (ranking)
Finding the k Shortest Paths, D. Eppstein. 35th IEEE Symp. Foundations of Comp.
Sci., Santa Fe, 1994, pp. 154-165. Tech. Rep. 94-26, ICS, UCI, 1994. SIAM J.
Computing 28(2) :652-673, 1998.
Idée générale
Génération les solutions dans l’ordre décroissant d’optimalité
la borne inférieure se serre plus rapidement
toute solution ajoutée l’est définitivement
Condition d’arrêt : première solution qui tombe sous la borne
Motivation : de très bons résultats sur le problème d’affectation
(Przybylski et al. 2005)
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 24 / 33
53. Quelques mots sur la résolution
Exploration d’une bande et non plus d’un triangle
→ solutions générées dans les triangles proches
Ces solutions permettront de calculer une borne inférieure plus serrée
pour
réduire la taille du graphe des plus longs chemins
fixer plus de variables en pré-traitement
L’exploration d’un triangle dépend des explorations précédentes.
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 26 / 33
54. Quelques mots sur la résolution
Exploration d’une bande et non plus d’un triangle
→ solutions générées dans les triangles proches
Ces solutions permettront de calculer une borne inférieure plus serrée
pour
réduire la taille du graphe des plus longs chemins
fixer plus de variables en pré-traitement
L’exploration d’un triangle dépend des explorations précédentes.
Heuristique : Les triangles sont explorés par ordre croissant de taille.
Hypothèses :
les triangles petits s’explorent rapidement
les solutions générées en dehors facilitent la résolution des plus
gros
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 26 / 33
55. Plan
1 Le problème du sac-à-dos unidimensionnel bi-objectif
Formulation du problème
Solutions efficaces et points non dominés
2 Algorithmes existants pour la résolution exacte du bi-01KP
Algorithme en deux phases
Méthode dichotomique
Plus courts chemins multi-objectif
3 Améliorations et nouveaux algorithmes
Démarche adoptée
Retour sur le branch and bound en phase 2
k meilleures solutions (ranking)
4 Expérimentations numériques
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 27 / 33
56. Instances numériques
Classe Nombre Tailles (vars.) Notes
1A 5 50 à 500 « tightness ratio »
1B 4×10 50 à 500 A/B/C/D
2/UNCOR 20 50 non correllées
2/WEAK 15 50 à 1000 faiblement correllées
2/STRONG 15 50 à 1000 fortement correllées
Instances de la MCDMLib : http ://www.terry.uga.edu/mcdm/
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 28 / 33
57. Comparaison des méthodes existantes
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 29 / 33
58. Gains obtenus avec les améliorations du BB
Amélioration de la borne
instances résolues en au moins une demie seconde avec la
modif :
moyen : 45 %
max : 70 %
min : 25 %
Test de dominance
instances résolues en au moins une demie seconde avec la modif
rapport aux temps obtenus avec la modif précédente
moyen : 70 %
max : 80 %
min : 52 %
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 30 / 33
59. Amélioration du branch & bound
limite de temps = 1 heure
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 31 / 33
60. Algorithme de ranking
limite de temps = 1 heure
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 32 / 33
61. Conclusions & perspectives
Conclusions
Améliorations du B&B de la 2 phases existante
→ plus rapide, les temps rejoignent la programmation dynamique
Algorithme de ranking pour la seconde phase
→ gains importants, jusqu’à 99.8 % de la version B & B
→ ne résout pas les instances difficiles
Perspectives
Détecter les triangles vides
→ nouvelles coupes
→ tirer de l’information de la structure du problème
(Gandibleux & Klamroth 2005)
Généralisation des méthodes de résolution
→ à 3, p objectifs
→ à 2, 3, q dimensions
Julien Jorge, Xavier Gandibleux (LINA) Résolution exacte du problème bi-01KP 9 mars 2007 33 / 33