Professional Documents
Culture Documents
Le problme de bin-packing en
deux-dimensions, le cas non-orient : rsolution
approche et bornes infrieures
Thse prsente
pour lobtention du grade
de Docteur de lUTC.
a5
a1
a2
a4
a3
Le problme de bin-packing en
deux-dimensions, le cas non-orient :
rsolution approche et bornes infrieures
iii
iv
Remerciements
Remerciements
vii
ix
xi
Introduction
1 Problmes de bin-packing
1.1 Introduction . . . . . . . . . . . . . . . . . . .
1.2 Classification et contraintes pratiques . . . . .
1.3 Dfinition du problme et notations . . . . . .
1.4 Modles pour le 2BP . . . . . . . . . . . . . .
1.5 Prtraitements . . . . . . . . . . . . . . . . .
1.5.1 Prtraitement de Martello et Vigo . . .
1.5.2 Prtraitement de Boschetti et Mingozzi
1.5.3 Prtraitements de Carlier et al. . . . .
1.6 Heuristiques de rsolutions . . . . . . . . . . .
1.6.1 Le cas 1BP . . . . . . . . . . . . . . .
1.6.2 Le cas 2BP . . . . . . . . . . . . . . .
1.7 Mta-heuristiques . . . . . . . . . . . . . . . .
1.8 Bornes infrieures . . . . . . . . . . . . . . . .
1.8.1 Bornes infrieures pour le 1BP . . . .
1.8.2 Bornes infrieures pour le 2BP |O . . .
1.8.3 Bornes infrieures pour le 2BP |R . . .
1.9 Mthodes exactes . . . . . . . . . . . . . . . .
1.10 Conclusion . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
6
8
10
11
13
13
14
15
16
17
21
23
23
25
26
26
27
2 Nouveaux prtraitements
29
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.2 Notion dobjets orientation dpendante . . . . . . . . . . . . . . . . 29
vii
2.3
2.4
2.5
Prtraitements . . . . . . . . . . . . . . . .
2.3.1 Prtraitement . . . . . . . . . . . .
2.3.2 Prtraitement . . . . . . . . . . . .
2.3.3 Prtraitement . . . . . . . . . . . .
2.3.4 Comparaison des trois prtraitements
Rsultats exprimentaux . . . . . . . . . . .
Conclusion . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 Bornes infrieures
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . .
3.2 Aperu de la littrature . . . . . . . . . . . . . . . .
3.2.1 Bornes infrieures pour le 2BP |O . . . . . .
3.2.2 Bornes infrieures pour le 2BP |R . . . . . .
3.3 Nouvelle borne infrieure pour le 2BP |R . . . . . .
3.4 Dominance par rapport aux bornes de la littrature
3.5 Rsultats exprimentaux . . . . . . . . . . . . . . .
3.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . .
4 Nouvelle heuristique : IMA
4.1 Introduction . . . . . . . . . .
4.2 Placement des objets, surfaces
4.3 Les rangements stables . . . .
4.4 Lheuristique (IM A) . . . . .
4.5 Rsultats exprimentaux . . .
4.6 Conclusion . . . . . . . . . . .
. . . . . .
maximales
. . . . . .
. . . . . .
. . . . . .
. . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
34
35
38
40
41
42
45
.
.
.
.
.
.
.
.
47
47
48
48
53
56
58
62
62
.
.
.
.
.
.
65
65
65
68
69
71
73
.
.
.
.
.
.
.
.
.
.
79
79
79
82
82
83
85
87
88
89
93
Conclusion
95
Bibliographie
97
viii
2.1
3.1
4.1
4.2
4.3
Prtraitements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Comparaison avec la borne de [6] . . . . . . . . . . . . . . . . . . . . . 63
Lheuristique IM A. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Comparaison du rapport borne suprieure sur borne infrieure. . . . . . 76
Comparaison du nombre de bins moyen utiliss pour ranger lensemble
de tous les objets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.1 Lalgorithme tabou avec et sans prtraitements. . . . . . . . . . . . . . 90
5.2 Comparaison entre les deux versions. . . . . . . . . . . . . . . . . . . . 91
5.3 Lalgorithme tabou, comparaison avec les meilleurs rsultats de la littrature. 92
ix
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
2.1
2.2
2.3
2.4
2.5
2.6
2.7
3.1
4.1
4.2
4.3
4.4
5.1
xi
7
8
9
9
12
18
18
20
30
31
33
33
37
39
40
57
66
67
68
69
84
Introduction
INTRODUCTION
objets. Une autre spcificit est la possibilit de tourner les objets de 90 degrs (le
cas non-orient). Cette possibilit est prise en compte dans le cadre de cette thse.
Le problme de bin-packing tant NP-difficile, lnumration de toutes les solutions ralisables pour trouver la meilleure solution savre impossible mme pour un
problme de taille moyenne. Toutefois, on peut aborder la rsolution du problme
par bornes : des bornes suprieures (valuation par excs) et des bornes infrieures
(valuation par dfaut). Les bornes suprieures sont obtenues par des mthodes
de rsolution approche du problme, en particulier des heuristiques et des mtaheuristiques. Ces mthodes fournissent de bons rsultats en un temps raisonnable.
Les rsultats obtenus par ces mthodes sont compars aux bornes infrieures calcules, on a la valeur optimale si la borne suprieure est gale la borne infrieure.
La borne infrieure la plus connue est la borne continue. Elle consiste dans le cas
deux dimensions sommer la surface des objets et la diviser par la surface du
bin, la partie entire suprieure du rsultat tant une borne infrieure valide. Des
bornes infrieures plus performantes ont t proposes dans la littrature. On peut
aussi appliquer des prtraitements sur les instances rsoudre. Les prtraitements
permettent en gnral la rduction de la taille des instances pour pouvoir les rsoudre
dune faon exacte et/ou augmenter la taille de certains objets, et ainsi les bornes
infrieures.
Le premier chapitre est principalement consacr la description des bornes
les plus connues de la littrature. Nous commenons par une description de la
varit de contraintes pratiques qui refltent la varit des problmes rels identifis
comme problmes de bin-packing. Nous citons galement les typologies les plus
connues. Puis, nous donnons la dfinition gnrale du problme et dcrivons des
modles proposs. Nous prsentons galement les prtraitements proposs dans la
littrature. Nous dcrivons ensuite les heuristiques et les mta-heuristiques ainsi que
les bornes infrieures les plus rcentes. Enfin, nous dcrivons plusieurs mthodes
exactes proposes dans la littrature.
Les chapitres 2, 3, 4 et 5, sont consacrs la description de notre contribution
dans la rsolution des problmes de bin-packing en deux dimensions dans le cas
non-orient.
La principale contribution du chapitre 2 est la proposition de trois nouveaux
prtraitements. Nous introduisons en particulier un prtraitement bas sur une
nouvelle notion que nous appelons objets orientation dpendante. Ces prtraitements permettent didentifier les espaces perdus et les valoriser en augmentant
la taille de certains objets. Si un objet prend la taille dun bin, son rangement
optimal devient trivial et il peut alors tre spar de linstance rsoudre. Les
prtraitements cherchent aussi trouver des assemblages optimaux pour quelques
sous-ensembles dobjets, ce qui permet dappliquer des transformations sur les objets. Ces transformations consistent en gnral augmenter la taille des grands
INTRODUCTION
objets et liminer les petits objets sans changer la valeur optimale du problme. Les
nouveaux prtraitements proposs dans le chapitre permettent de rduire la taille de
nombreuses instances. Ils permettent par exemple de rduire 0 la taille de certaines
instances.
Dans le chapitre 3, nous proposons une nouvelle borne infrieure appele LR
CJE .
Nous commenons par la description des bornes infrieures proposes dans la littrature. Nous prsentons ensuite le schma gnral dvaluation. Il consiste transformer linstance dun problme non-orient de taille n en une instance du problme
orient de taille 2n. Nous montrons que si LB est une borne infrieure valide
pour linstance transforme (de taille 2n), alors LB/2 est une borne infrieure
valide de la solution optimale de linstance initiale (de taille n). La borne LR
CJE
consiste appliquer les meilleures bornes infrieures connues dans la littrature
pour le problme orient linstance transforme par le schma gnral propos.
Nous montrons enfin que les bornes infrieures obtenues par lapplication de LR
CJE
dominent thoriquement et pratiquement celles de la littrature.
La principale contribution du chapitre 4 est la proposition dune nouvelle heuristique de rsolution. Cette heuristique est base sur une stratgie Best-Fit adapte au
problme en deux dimensions. Elle consiste choisir chaque tape du rangement,
le meilleur couple (objet, espace). Les espaces vides sont grs par des surfaces
maximales, une notion dfinie et tudie dans le chapitre. Cette faon de grer les
espaces permet de considrer tous les espaces vides prsents dans la configuration.
Nous dmontrons que le nombre de surfaces maximales est en O(n2 ) si le rangement
considr est stable (i.e. chaque objet plac ne peut pas tre dcal davantage en
bas ou gauche). Les rsultats exprimentaux obtenus sur les benchmarks de la
littrature montrent que le nombre de ces surfaces nexcde pas 2n en pratique.
Nous comparons la nouvelle heuristique propose (IM A) avec les heuristiques et
les mta-heuristiques rcentes de la littrature et nous mettons en vidence son
efficacit.
Dans le chapitre 5, nous proposons un nouvel algorithme tabou pour le problme tudi, base sur la notion de configurations quivalentes introduite dans le
chapitre. Nous commenons par une reprsentation gnrale de la mthode tabou.
Nous dcrivons ensuite lheuristique de base et le voisinage utiliss dans le nouvel
algorithme. Nous introduisons la notion de configurations quivalentes, une notion
qui nous permet de rduire le voisinage en liminant les solutions qui prsentent
certaines similarits avec la solution courante, dans le but dchapper plus vite
des optima locaux. Nous dcrivons ensuite la fonction dvaluation utilise et nous
donnons le schma gnral de notre mthode. Nous testons notre algorithme tabou
sur les benchmarks de la littrature : il amliore les bornes suprieures pour plusieurs
instances de la littrature.
INTRODUCTION
Notre contribution dans le cadre de cette thse concerne la proposition de prtraitements, de nouvelles bornes infrieures, une nouvelle mthode heuristique et un
nouvel algorithme tabou pour la rsolution du problme de bin-packing dans le cas
non orient. Nos mthodes, testes sur les benchmarks de la littrature, amliorent
les bornes suprieures et infrieures pour plusieurs instances.
Chapitre 1
Problmes de bin-packing
1.1
Introduction
Etant donn un ensemble dobjets de formes rectangulaires de dimensions quelconques connues et tant donn un bin de forme rectangulaire plus large de dimensions connues, le problme de bin-packing en deux dimensions (2BP ) consiste
dterminer le nombre minimum de bins ncessaires pour ranger sans chevauchement
lensemble de ces objets (les objets ne dbordent pas des bins et ne se chevauchent
pas). Les objets sont rangs de telle faon que leurs artes soient parallles celles
des bins qui les contiennent (on parle de rangement orthogonal). Ce problme a
beaucoup dapplications industrielles. On le retrouve essentiellement dans lindustrie
du tissu, de lacier, du bois, ou du verre sous forme de problme de dcoupe. On
trouve aussi dautres applications comme la planification de tches avec contraintes
de ressources, ou loptimisation du placement de publicits dans un journal. Chaque
application relle prsente ses propres spcificits et contraintes pratiques. Une
extension particulire de ce problme est la possibilit de tourner les objets de 90
degrs.
Le 2BP est une gnralisation du problme de bin-packing en une dimension
(1BP ) qui est connu comme tant un problme NP-difficile. Il en va de mme pour
le 2BP . La bibliographie du problme 2BP est riche. En effet, ce problme a connu
un vif intrt durant les dix dernires annes. La plupart des travaux portent sur le
problme avec orientation fixe des objets.
Dans ce chapitre, nous donnons la dfinition des problmes de bin-packing en
une, deux et N-dimensions. Nous dcrivons aussi les travaux rcents portant sur la
rsolution de ces problmes.
Nous dcrivons, dans la section 1.2, la typologie des problmes et les contraintes
rencontres souvent dans les problmes rels. Nous donnons par la suite (Section 1.3)
la dfinition gnrale du problme de bin-packing. Les modles les plus connus sont
dcrits dans la section 1.4. Dans la section 1.5 nous dcrivons les prtraitements
proposs dans la littrature. Les sections 1.6 et 1.7 sont ddies aux mthodes
de rsolution approche, elles sont respectivement consacres aux heuristiques et
aux mta-heuristiques. Dans la section 1.8, nous exposons les principales bornes
1.2
a4
a5
a5
a3
a4
a3
a1
a1
a2
a2
(a) Contrainte guillotine respecte.
Une typologie plus rcente a t propose par Wscher et al. [51] dans le but
dinclure les problmatiques rcentes de dcoupe et de rangement, et tablir une
catgorisation complte de tous les problmes connus dans le domaine.
En ce qui concerne le problme de bin-packing en deux dimensions (2BP ), les
deux spcificits les plus rencontres sont les suivantes :
lorientation : les objets peuvent tre orientation fixe (on parle du cas
orient) ou bien ils peuvent tre tourns de 90 degrs (le cas non orient).
Cest cette spcificit qui nous intresse en particulier. Au cours de ce chapitre
nous dveloppons plusieurs travaux effectus autour du problme 2BP , le cas
orient aussi bien que le non orient.
La contrainte guillotine : Si elle est impose, on doit avoir la possibilit de
restituer les objets rangs par des coupes bout bout parallles aux dimensions
de bins. Dans la figure 1.1 nous prsentons deux exemples de solutions : la
solution illustre dans la figure 1.1(a) respecte la contrainte guillotine, ce qui
nest pas le cas de la solution illustre dans la figure 1.1(b).
Dans [45] une classification des problmes 2BP tenant compte des deux spcificits cites ci-dessus a t propose. Un problme en deux dimensions est alors dsign
par 2BP|C1|C2. Le champ C1 prend la valeur R pour indiquer le cas non orient
et la valeur O pour le cas orient. Tandis que le champ C2 indique la prsence ou
labsence de la contrainte guillotine (il prend ainsi la valeur G et F respectivement).
La contrainte guillotine fait lobjet de plusieurs travaux rcents. Tout au long de
ce document nous ne considrons pas la contrainte guillotine, nous allons omettre
le champ C2 et nous parlerons de 2BP |O (resp. 2BP |R) pour dsigner le problme
2BP dans le cas orient (resp. non orient).
a1
a3
a2
a4
B = (10, 12)
1.3
a4
a1
a3
a2
a3
a4
a1
a2
li = min(wi , hi ) et Li = max(wi , hi )
l = min(W, H) et L = max(W, H)
Un exemple dune instance 2BP est illustr dans la figure 1.2 o I = (A, B) =
({a1 = (6, 8), a2 = (3, 5), a3 = (4, 8), a4 = (4, 2), }, B = (10, 12)). Ainsi pour cet
exemple w1 = 6, h1 = 8, l1 = w1 , L1 = h1 , l = W = 10 et L = H = 12.
Un exemple de solution de cette instance dans le cas non-orient est donne dans
la figure 1.3. Cette solution est optimale. La figure 1.4 reprsente une solution pour
la mme instance, mais en considrant cette fois ci le problme 2BP |R. La possibilit
de tourner les objets de 90 degrs nous a permis de trouver une solution avec un
seul bin.
Le problme de bin-packing en une dimension (1BP ) est dfini dune faon
similaire au 2BP . Une instance 1BP peut tre dfinie comme une instance 2BP
particulire o tous les objets et le bin ont une largeur identique. Alors que la
10
question dorientation des objets se pose pour le 2BP , elle na plus de sens dans le
cas de 1BP .
Le problme de bin-packing unidimensionnel est NP-difficile au sens fort [31]. Il
en est de mme pour le 2BP qui est une gnralisation du problme unidimensionnel.
La dfinition du problme peut se gnraliser dans le cas de N-dimensions. Les
objets et les bins seront de dimensions N .
Dans la section suivante, nous dcrivons quelques modles proposs dans la littrature pour le problme en deux dimensions.
1.4
Dans cette section nous dcrivons deux exemples de modles pour le 2BP .
Un premier modle ddi au 2BP a t propos par Gilmore et Gomory [34]
comme une extension de leur approche 1BP [32, 33]. Leur modle est bas sur
lnumration de tous les sous-ensembles dobjets qui peuvent tre rangs dans un
mme bin. Chacun de ces ensembles est reprsent par un vecteur colonne binaire
Vj compos de n lments vij , i = 1, . . . , n tel que :
(
1 si ai appartient au sous-ensemble j
vij =
0 sinon
Soit M la matrice compose des vecteurs Vj (j = 1, ..., m), m tant le nombre de
sous-ensembles qui peuvent tre placs dans un mme bin. La matrice M reprsente
donc lensemble de toutes les configurations de rangements ralisables. Le modle
scrit alors
m
X
xj
(1.1)
(i = 1, . . . , n)
(1.2)
xj {0, 1} (j = 1, . . . , m)
(1.3)
Minimiser
j=1
vij xj = 1
j=1
Linconvnient majeur de ce modle est le nombre exhaustif de colonnes gnrer. Gilmore et Gomory [32,33] ont prsent pour le 1BP , une mthode pour gnrer
dynamiquement les colonnes au besoin. Elle consiste en la rsolution dun problme
de sac dos unidimensionnel.
Fekete et Schepers [28] ont propos un modle bas sur la thorie de graphes
pour le problme de dcision suivant : est-il possible de placer un ensemble donn
dobjets dans un seul bin ?
1.5. PRTRAITEMENTS
11
vi Sw
vi Sh
wi W ,
hi H,
Les deux premires conditions signifient que lensemble des objets tient dans le bin,
tandis que la troisime condition signifie quil ny a pas de chevauchement entre
deux objets quelconques rangs dans le bin.
Dautres modles ont t proposs pour le problme de bin-packing et ses variantes. Beasley [2] a propos un modle linaire pour la caractrisation des problme
de dcoupe 2D qui associent un profit chaque objet, lobjectif tant de ranger un
sous-ensemble dobjets dans un bin de faon maximiser la somme des profits des
objets rangs (problme de sac dos). Hadjiconstantinou et Christofides [36] ont
travaill sur un modle similaire. Une modlisation par programmation linaire du
problme de dcoupe guillotine de bande (Strip Packing) en deux dimensions a t
propose rcemment dans la thse de Ben Messaoud [49].
Dans la section suivante nous dcrivons diffrents prtraitements proposs dans
la littrature pour le problme de bin-packing.
1.5
Prtraitements
12
v4
a5
a4
v1
a1
a2
v2
v3
a3
v5
(b) graphe GW .
v4
v1
v2
v3
v5
(c) graphe GH .
1.5. PRTRAITEMENTS
1.5.1
13
Martello et Vigo [48] ont propos en 1998 un prtraitement qui consiste chercher dterminer des assemblages optimaux. Soit ai un objet donn de linstance
considre, on cherche trouver lensemble des objets placer avec ai tel que le
rangement du bin contenant ai soit optimal.
Soit Qi lensemble des objets compatibles avec ai :
Qi = {aj A : (hi + hj ) H ou (wi + wj ) W }
Deux cas se prsentent. Dans le premier cas, Qi = , cela signifie quaucun objet
de A \ ai ne peut tre rang avec ai . Le rangement optimal de lobjet ai est trivial, il
doit tre rang seul dans un bin. Dans le deuxime cas, Qi 6= , une borne suprieure
sur le nombre dobjets qui peuvent tre rangs avec ai est alors calcule de la faon
suivante. Les objets de Qi sont considrs par ordre dcroissant de surfaces. La
valeur maximale l telle que la somme des l derniers objets de Qi ne dpasse pas la
valeur HW hi wi , est une borne suprieure sur le nombre dobjets qui peuvent tre
rangs avec ai . Soit aj le premier (le plus large) objet dans qi , un prtraitement est
appliqu dans les deux cas de figures suivants :
l = 1 et pour tout aj dans Qi \ aj , hj hj et wj wj
l = 2 et toute paire dobjets de Qi \aj qui peuvent tre placs avec ai , peuvent
tre placs dans un bin de dimensions gales aux dimensions de aj .
Dans les deux cas, le meilleur choix consiste ranger aj avec ai .
1.5.2
X
wj = wj + max
wi i :
wi i W wj , i {0, 1}
ai A{aj }
ai A{aj }
wj peut tre calcule en O(nW ) par lintermdiaire dune mthode pseudopolynomiale classique.
La largeur wi de lobjet ai peut tre alors mise jour de la faon suivante :
wj wj + (W wj )
14
1.5.3
Carlier et al. [10] ont propos en 2005 deux procdures de rductions sous forme
des fonctions identiquement ralisables (Identically-Feasible Functions) dfinies de la
faon suivante. Etant donne une instance I = (A, B), une fonction f est une IFF
associe la donne I si et seulement si linstance f (D) = ({a1 , . . . , an }, B) obtenue
en appliquant f tous les objets de A est telle que OP T (I) = OP T (f (I)).
Dans la premire IF F appele v1 , tant donne une instance I = (A, B), deux
sous-ensembles particuliers sont considrs : AH le sous-ensemble des objets hauts et
As le sous-ensemble des objets courts qui peuvent tre placs au dessus dun objet
de AH .
Soit q un entier tel que 1 q 21 H.
AH = {ai A : hi > H q}
As = {ai A : hi < q}
Soit m = |AH |. Pour chaque objet ai de AH , un bin Bi de taille (H hi , wi ) est
considr. Soit le problme de dcision P1 suivant : est-il possible de ranger tous les
objets de As dans les bins B1 , . . . , Bm crs ?
Si P1 a une solution, les objets de As peuvent alors tre limins et les hauteurs
des objets de AH sont mises jour, elles prennent la hauteur du bin. La fonction v1q
dfinie ci-aprs est dans ce cas une IFF associe linstance I.
v1q : A A
wi = wi et hi = H if hi > H q
ai 7 ai o wi = 0 et hi = 0 if hi < q
w = w et h = h sinon
i
i
i
i
Soit v1H lapplication itrative de v1q . En ne considrant que les valeurs intressantes de q, celles qui correspondent aux hauteurs des objets, v1H peut tre implante
en O(n (n)) o (n) est la complexit de lalgorithme utilis pour rsoudre
le problme de dcision P1 . Une fonction v1W est dfinie dune faon similaire en
15
wi = W et hi = H si wi > W p et hi > H q
ai 7 ai o wi = 0 et hi = 0 si wi < p ou hi < q
w = w et h = h sinon
i
i
i
i
La fonction v2 consiste appliquer la fonction v2p,q pour toutes les valeurs intressantes des paramtres p et q (i.e. celles qui correspondent la taille dun article de
A). La mthode est en O(n2 (n)), o (n) est la complexit de lalgorithme utilis
pour rsoudre le problme de dcision P2 .
Les problmes de dcisions P1 et P2 dfinis dans les deux prtraitements v1 et
v2 tant des variantes du problme de bin-packing ils sont NP difficiles. Les auteurs
utilisent des heuristiques simples pour rsoudre les problmes de dcision.
Dans la section suivante nous dcrivons quelques mthodes heuristiques proposes dans la littrature de 2BP et 1BP .
1.6
Heuristiques de rsolutions
Comme dans tous les problmes combinatoires, des mthodes heuristiques ont
t proposes pour le problme de bin-packing dans le but de trouver des solutions
de bonne qualit dans un temps raisonnable.
16
1.6.1
Le cas 1BP
Dans cette section, nous dcrivons quelques heuristiques proposes pour le 1BP
(cf. [17] pour un tat de lart et les rsultats danalyse au pire cas). Les stratgies
utilises dans le 1BP ont inspir plusieurs approches de rsolution proposes plus
tard pour des problmes de bin-packing de dimension plus leve.
Stratgie Next Fit (NF). Dans cette stratgie on ne considre quun bin
ouvert la fois. Les objets sont traits selon un ordre donn. Les objets sont rangs
successivement dans le bin ouvert tant quil y a de la place pour lobjet ai en cours,
sinon le bin en cours est ferm et un nouveau bin est ouvert. Une heuristique qui
adopte une stratgie NF a lavantage davoir une complexit temporelle linaire en
fonction du nombre dobjets placer. Par contre, le fait de ne considrer quun seul
bin la fois cause beaucoup de perte despaces exploitables. Le Next Fit Decreasing
(NFD) consiste trier les objets par ordre dcroissant de hauteurs et appliquer la
stratgie NF pour les ranger.
Stratgie First Fit (FF). Initialement un seul bin est considr, et les objets
sont traits selon un ordre donn. Quand il ny a plus de la place dans le premier
bin pour ranger lobjet en cours, un deuxime bin est alors ouvert mais sans fermer
le premier. Dans une tape intermdiaire o on dispose de k bins ouverts numrots
de 1 k selon lordre de leur premire utilisation, un objet ai en cours est rang
dans le bin du plus faible numro qui peut le contenir. Dans le cas o aucun bin ne
peut contenir ai un nouveau bin k + 1 est alors utilis sans fermer les autres. Lordre
selon lequel on traite les objets est crucial pour la qualit de la solution. Un choix
heuristique consiste trier les objets par ordre dcroissant de hauteurs, on parle
dans ce cas dheuristiques First Fit Decreasing.
Stratgie Best Fit (BF). Comme dans la stratgie FF, les algorithmes BF
laissent les bins toujours ouverts. Cependant, le choix du bin dans lequel lobjet ai
en cours va tre plac dpend des valeurs des gaps (hauteurs non utilises) prsentes
dans les bins. Ainsi, ai sera plac dans le bin qui prsente le moindre gap parmi
les bins qui peuvent le contenir. Les heuristiques BF et FF peuvent tre implantes
en O(nlog(n)) en utilisant une structure de donnes approprie [41]. On parle de
Best Fit Decreasing (BFD) quand il sagit de trier les objets ranger dans lordre
dcroissant de hauteurs avant de les ranger suivant une stratgie BF.
Nous citons aussi la stratgie Worst Fit (WF) qui est une variante du BF, suivant
17
laquelle lobjet en cours est plac dans le bin qui peut le contenir et qui prsente
le plus grand gap. Aussi surprenant que cela puisse paratre, cette stratgie peut
produire de meilleures solutions que BF sur certaines instances. Dans une stratgie
dite Any Fit (AF), lobjet en cours est affect un bin choisi alatoirement parmi
lensemble de bins ouverts qui peuvent le contenir.
1.6.2
Le cas 2BP
18
H3
a6
a7
Niveau 3
H2
a4
a5
Niveau 2
H1
a1
a2
a3
Niveau 1
ceiling
a6
a4
a1
a2
a3
floor
a5
19
Parmi les algorithmes qui procdent en une phase, nous trouvons quelques uns
qui placent les objets par niveaux comme lalgorithme Finite First Fit (FF) [4]. Cet
algorithme consiste trier les objets par ordre dcroissant des hauteurs. Lobjet en
cours est plac dans le niveau le plus bas du premier bin qui peut le contenir. Si
aucun niveau ne peut contenir lobjet en cours un nouveau niveau est cr dans le
premier bin appropri ou bien en initialisant un nouveau bin.
Parmi les algorithmes qui ne rangent pas les objets par niveau, nous trouvons
essentiellement ceux qui adoptent une stratgie connue sous le non de Bottom-Left
(BL) : Les objets sont considrs dans un ordre donn, et lobjet en cours est plac
dans la position la plus en bas puis le plus gauche possible. Une implantation
efficace a t propose par Chazelle [11] qui permet de trouver des solutions avec
une complexit temporelle en O(n2 ).
Lodi et al. [45] ont propos une approche diffrente appele alternative direction
(AD). Soit z une borne infrieure value pour le problme rsoudre (cf. Section
20
a3
ai
a2
a1
1.8 pour un aperu sur les bornes infrieures). Lapproche AD commence par trier
les objets par ordre dcroissant de hauteurs, puis elle initialise z bins par un sousensemble dobjets suivant une stratgie BFD. Les objets restants sont rangs en
bandes en considrant un bin la fois et allant alternativement de gauche droite
et de droite gauche dans la position le plus en bas possible. Lorsque lobjet ne
peut pas tre plac dans le bin courant, on essaie le bin suivant ou bien on initialise
un nouveau bin si ncessaire.
Une mthode heuristique appele Touching Perimeter (T PRF ) ddie au 2BP |R
a t propose par Lodi et al. [45] en 1999. Cette mthode commence par trier les
objets par ordre dcroissant de leurs surfaces et les orienter horizontalement : chaque
objet est orient tel que son arte de taille maximale soit oriente horizontalement.
Ensuite, z bins vides sont initialiss (z correspondant une borne infrieure connue
pour linstance traiter, cf. Section 1.8). Lalgorithme place lobjet en cours dans
un bin dj ouvert, ou en initialisant un nouveau bin. Lobjet qui initialise un bin
est toujours plac dans le coin bas-gauche du bin. Chaque objet est plac dans une
position normale (cf. Christofides et Witlock [12]) i.e. son arte infrieure touche soit
larte infrieure du bin, soit larte suprieure dun autre objet et son arte gauche
touche soit larte gauche du bin, soit larte droite dun autre objet. Le choix du
bin auquel affecter lobjet et sa position se font en valuant un score dfini comme le
pourcentage du primtre de lobjet qui touche le bin et dautres objets dj placs.
Pour chaque position candidate, le score est valu deux fois en considrant les deux
orientations possibles de lobjet, la valeur la plus leve est considre.
Boschetti et Mingozzi [6] ont propos en 2003 une heuristique itrative appele
HBP qui prend en considration la rotation possible des objets. Ayant un ordre
donn des objets, les auteurs proposent une mthode heuristique appele H1 qui
consiste placer les objets dans lordre en ne considrant quun bin la fois. Lors
du placement dun objet, toutes les positions dites faisables sont considres : lobjet
1.7. MTA-HEURISTIQUES
21
ne chevauche pas sur dautres objets et on ne peut pas le dcaler davantage vers le bas
ou vers la gauche. Une fonction cot est value en considrant les deux orientations
possibles de lobjet pour chaque position faisable. La fonction cot est gale la
somme des surfaces non utilises en dessous et gauche de lobjet. Lobjet est
finalement rang dans la position et lorientation qui produisent le cot le plus faible.
La figure 1.8 illustre les surfaces vides (surfaces hachures) entrant en jeu dans le
calcul du cot du placement de lobjet ai dans sa position actuelle. Le bin en cours est
ferm et un autre est initialis lorsque lensemble de positions faisables par rapport
lobjet courant est vide. Lheuristique HBP consiste lapplication itrative de H1 .
Cinq initialisations de priorits dobjets qui dpendent de leurs caractristiques sont
testes : surface, largeur, hauteur et primtre dcroissant. Soit nbBin le nombre de
bins utiliss nots de b1 bn bBin suivant leur ordre dinitialisation. Une fois tous les
objets sont rangs, les priorits de ces objets sont mises jour en augmentant celles
des objets affects aux bins bk si k > nbBin/2 et diminuant celles des objets autres
objets. Lheuristique H1 est rappele aprs le tri des objets par ordre dcroissant
de priorits. Lheuristique HBP utilise deux rgles de mises jour des priorits des
objets. Les deux rgles consistent multiplier les priorits des objets appartenant
aux derniers bins (resp. premiers bins) par 1+a (resp. 1a). Pour la premire rgle, a
vaut 0.1 tandis que la deuxime rgle consiste tirer la valeur relle a alatoirement
entre 0 et 1 exclu.
Les algorithmes de rsolutions approches dans la littrature ne se limitent pas
aux mthodes heuristiques, certaines approches mta-heuristiques ont t proposes
pour le 2BP , ils font lobjet de la section suivante.
1.7
Mta-heuristiques
22
R(i) =
WH
n
o est un coefficient positif dtermin exprimentalement. Cette fonction favorise
la slection du bin dont la surface remplie est petite. En cas dgalit, le bin qui
contient le plus dobjets sera slectionn car on estime quil est plus facile de
distribuer des petits objets dans les autres bins que des grands.
Le voisinage utilis consiste dplacer un seul objet aj du bin cible (t) la
fois dans dautres bins en modifiant le rangement des objets appartenant dans k
bins de la solution courante. Les voisins sont valus en utilisant une mthode de
rsolution pour ranger les objets des k bins slectionns et aj . Lalgorithme maintient
k listes tabou. La valeur k est dynamique, sa variation dpend du droulement de
la recherche [45].
Rcemment, Harwig et Barnes en 2006 [38] ont propos une nouvelle mthode
de rsolution par recherche tabou. Lide principale de leur mthode consiste
considrer une fonction objectif slective qui favorise les mouvements des objets
de sorte amliorer la solution en vidant un bin. Cette fonction objectif est base
sur lapproche de lnergie potentielle, une approche qui a t dj utilise par Li
et Milenkivic [43] pour le problme de Strip Packing 2D. Le but principal tant
de minimiser le nombre de bins, comme dans la mthode prcdente, un bin sera
dsign comme candidat pour tre vid. Les auteurs considrent trois types de
mouvements qui acclrent en principe latteinte de lobjectif principal. Les trois
types de mouvement sont les suivants :
excess bin moves. Le bin dsign comme candidat pour tre vid est not excess
bin. Les mouvements qui rduisent la surface occupe dans ce bin (la somme
des surfaces des objets affects au bin) sont favoriss par la fonction objectif.
intra-bin moves. Si deux mouvements diffrents produisent deux configurations
avec le mme rangement dobjet dans un bin, celle qui produit le rangement
le plus compact est favorise.
inter-bin moves. Les mouvements qui produisent les configurations les plus
compactes sont favoriss. Les configurations compactes prsentent des espaces
vides plus importants, ce qui facilite le mouvement dun grand objet du bin
excess.
1.8
23
Bornes infrieures
Nous avons expos dans les sections prcdentes des mthodes de rsolution
approche pour le problme de bin-packing. Dans cette section nous dcrivons des
mthodes dvaluation par dfaut qui fournissent des bornes infrieures pour les
instances du bin-packing. Ceci permet de juger la qualit des solutions obtenues par
les mthodes de rsolution approche. Les bornes infrieures servent aussi comme
critres darrt dans une mthode mta-heuristique ou un algorithme itratif. Avoir
des bornes infrieures de bonnes qualits permet aussi de rduire la taille des solutions numrer lors de lapplication dune mthode exacte.
Nous synthtisons dans cette section les bornes infrieures proposes dans la
littrature pour le 1BP et le 2BP . Certaines de ces bornes seront dveloppes dans
le chapitre 3 car elles seront utilises pour ltude de la dominance de la nouvelle
borne infrieure propose par rapport celles de la littrature. Certaines mthodes
peuvent tre renommes.
1.8.1
La borne infrieure la plus connue est la borne continue L0 , elle consiste sommer
la taille des objets de linstance et la diviser par la taille du bin :
P
hi
L0 = ai A
H
Cette borne fournit de bons rsultats lorsque linstance est constitue de petits
objets ou bien dobjets uniformment rpartis dans [0, H] (cf. [3]).
Si linstance prsente un pourcentage lev dobjets de tailles moyennes, les
rsultats obtenus par L0 peuvent vite devenir insatisfaisants.
Martello et Vigo [48] ont montr que la borne continue peut atteindre 21 OP T (I).
V
Ils ont galement propos une borne infrieure pour le 1BP appele LM
1BP . Ils
dcomposent linstance en trois sous-ensembles diffrents : lensemble des grands
objets, des objets moyens et des petits objets dfinis respectivement de la faon
suivante :
AG = {ai A : hi > H q}
AM = {ai A : H q hi > 21 H}
AP = {ai A : 21 H hi q}
V
o q est un entier tel que, 1 q 12 H. La borne propose LM
1BP est compose de
deux bornes : (L et L ). La borne L a t propose initialement dans [47]. Les
deux bornes L et L exploitent le fait que les objets de AP et AM ne peuvent pas
tre placs ensemble. La borne L intgre aussi une valuation du nombre de bins
ncessaires pour ranger les objets de AM et AP , tandis que la borne L intgre une
24
valuation sur le nombre de bins ncessaires pour ranger les objets de AP qui ne
peuvent pas tre placs avec les objets de AM :
P
ai AM AP hi
|AG AM | + max 0,
L = max
|AM |
(1.4)
H
1q 12 H
j
k
P
i
|AP | ai AM Hh
q
j
k
|A
A
|
+
max
0,
L = max
G
M
H
1q 21 H
V
LM
1BP = max(L , L )
(1.5)
(1.6)
Labb et al. [42] ont propos une borne infrieure pour le 1BP qui considre
quatre sous-ensembles dfinis de la faon suivante :
AG = {ai A : hi > H q}
AM 1 = {ai A :
AM 2 = {ai A :
H
2
H
3
< hi H q}
hi
H
}
2
AM 3 = {ai A : k hi H q}
q tant un entier tel que (0 q H3 ). Soit A+
M 2 le sous-ensemble dobjets de AM 2
qui ne peuvent tre rangs avec aucun objet de AG , la borne propose quon note
LL1BP scrit alors :
LL1BP
+ P
|AM 2 |
ai AM 3 hi
= max |AG | + max |AM 1 | +
,
2
H
0q H
3
(1.7)
xS
Les DFF ont la particularit suivante : une borne infrieure calcule pour une
instance transforme par une DFF est une borne valide pour linstance initiale. Des
DFF sont appliqus aux instances dans le but de modifier la taille de certains objets
et damliorer le rapport de la somme des longueurs des objets sur la longueur dun
25
bin (la borne continue). Fekete et Schepers [27] ont propos trois fonctions dualralisables et ont discut les bornes infrieures obtenues.
Haouari et Gharbi [37] ont propos une mthode qui permet de mettre au point
un processus damliorations itratives des bornes infrieures.
Dans la section suivante, nous prsentons trois bornes infrieures proposes dans
la littrature pour le 2BP|O.
1.8.2
La borne continue L0 dans le cas 2D consiste sommer les surfaces des objets et
la diviser par la surface dun bin. Cette borne est loin dtre satisfaisante, elle peut
atteindre un quart de loptimum au pire des cas.
Martello et Vigo [48] proposent trois bornes infrieures pour le 2BP |O. La
premire borne est une gnralisation des bornes quils ont proposes pour le 1D.
V
V
Cette borne est note LM
. Elle est domine par une deuxime borne LM
=
1
2
W
H
max(L2 , L2 ) qui prend explicitement en considration les deux dimensions des
objets. La borne LW
2 considre trois sous-ensembles dobjets suivant leur largeur
dfinis par un paramtre entier 1 p 21 W :
AG = {ai A : wi > W p}
AM = {ai A : W p wi > 12 W }
AP = {ai A : 12 W wi p}
En remarquant que les objets de AP ne peuvent pas tre placs ct des objets
de AG , la borne infrieure LW
2 scrit :
( &P
W
LW
2 (p) = L1 + max 0,
ai AM AP
wi hi (HLW
1
WH
ai Aw
G
hi )W
')
(1.8)
MV
o LW
1 est obtenue en appliquant la borne L1BP la sous-instance constitue des
objets de AG AM . Le second terme de la borne est une valuation du nombre
de bins additionnels exigs pour ranger les objets de AP . La borne LH
2 est calcule
dune faon similaire en permutant H et W.
V
V
Dans la borne LM
, comme dans LM
trois sous-ensembles dobjets sont consi3
2
drs. Cette fois ci, les deux dimensions des objets entrent en jeu dans la dfinition
des trois sous-ensembles AG , AM et AP . Soit p et q deux entiers tels que 1 p 21 W
et 1 q 12 H, les trois sous-ensembles sont dfinis de la faon suivante :
26
V
La borne LM
vaut :
3
(
max
1
1q 2 H
( &
|AG AM | + max 0,
1W
1p 2
|AP |
m(ai , p, q)
ai AM
Wp Hq
'))
(1.9)
o m(ai , p, q) est une valuation du nombre dobjets de taille (p, q) qui peuvent
tre rangs avec ai :
Hh
W wi H q i q
W H hi
+
(1.10)
p
q
p
q
Fekete et Schepers [29] ont propos une nouvelle borne infrieure qui consiste
appliquer les DFF quils ont proposes pour le 1BP sur chaque dimension dune
instance 2BP et appliquer la borne continue sur linstance rsultante.
Boschetti et Mingozzi [5] ont propos une borne infrieure quon note LO
BM .
O,2
O,3
O,4
Cette borne est compose de trois bornes diffrentes LBM , LBM et LBM qui seront
dtailles dans la section 3.2.1.1.
Plus rcemment Carlier et al. ont propos une nouvelle borne infrieure qui
domine les bornes de la littrature de 2BP |O. Elle est base sur la notion des
DFF discrtes et des DFF dpendantes de la donne. Ces notions, ainsi que la
borne infrieure propose, seront dcrites en dtail dans le chapitre 3. En effet,
cette borne sera utilise dans lvaluation de la nouvelle borne que nous proposons
pour le 2BP |R.
1.8.3
Notons que la borne continue L0 est une borne valide pour le 2BP |R, et que
comme dans le cas orient, elle peut atteindre un quart de loptimum.
Dell Amico et al. [19] ont propos une mthode dvaluation des bornes infrieures pour le 2BP |R qui consiste relaxer le problme en dcomposant les objets
R
de linstance initiale en carrs. La borne infrieure (LBDA
) consiste appliquer des
bornes ddies aux instances constitues dobjets carrs proposes par les auteurs.
Boschetti et Mingozzi [6] ont propos une borne infrieure LR
BM qui est compose de deux bornes. La premire consiste transformer les objets en carrs et
appliquer une borne ddie au 2BP |O. La deuxime borne prend explicitement en
considration la caractristique "non-orient".
Ces deux bornes infrieures de la littrature seront dtailles dans le chapitre 3.
1.9
Mthodes exactes
1.10. CONCLUSION
27
1.10
Conclusion
Ltat de lart des problmes de bin-packing est riche. Dans ce chapitre nous
avons dcrit une partie de ces travaux, surtout les plus rcents. Nous remarquons
28
que peu de travaux portent sur le cas non-orient, que ce soit au niveau des mthodes
de rsolution ou bien des valuations par dfaut. Cependant la possibilit de tourner
les objets est une spcificit frquemment rencontre dans les problmes rels, qui
mrite donc dtre tudie.
Chapitre 2
Nouveaux prtraitements
2.1
Introduction
2.2
29
30
a2
a1
a2
a1
a2
a1
a3
a4
a3
31
a4
32
aj deux objets qui ne sont pas orientation dpendante selon W , nous allons
montrer que pour une valeur donne de , {0, 1} : M(W,H) (i, j, , ) est vrai,
et N(W,H) (i, j, , ) est faux. Si ai et aj ne sont pas orientation dpendante selon
W cela signifie quil existe au moins deux configurations diffrentes pour ranger les
deux objets cte cte selon W . Autrement dit, il existe une valeur , {0, 1} tel
que M(W,H) (i, j, , ) est vrai (configuration F1 ). F1 nest pas unique car au moins
une des trois configurations F2 , F3 ou F4 est ralisable. Cela est quivalent au fait
que N(W,H) (i, j, , ) est faux.
Ayant dfini la notion dobjets orientation dpendante selon une dimension
donne du bin, on peut dfinir la notion dobjets orientation dpendante et de
sous-ensemble dobjets orientation dpendante.
Dfinition 2.2. Deux objets ai , aj dans A sont dits orientation dpendante ssi
ils vrifient les deux conditions suivantes :
1. ai et aj sont orientation dpendante selon les deux dimensions du bin (W et
H).
2. Sil existe une configuration FW selon laquelle ai et aj peuvent tre placs cte
cte selon W et une configuration FH selon laquelle les deux objets peuvent
tre placs cte cte selon H, alors FH peut tre dduite de FW par une
rotation simultane des deux objets.
Un sous-ensemble Ado A est dit orientation dpendante ssi ai , aj Ado, les
objets ai et aj sont orientation dpendante.
Un exemple de deux objets orientation dpendante est illustr dans la figure 2.3.
Dans cet exemple, nous considrons linstance suivante, I = (A, B) o B = (10, 12),
et a1 = (5, 9), a2 = (4, 8), a3 = (6, 8) trois objets dans A. Les objets a1 et a2 sont
orientation dpendante. En effet, il existe deux configurations suivant lesquelles a1
et a2 peuvent tre placs dans un mme bin. Une des deux configurations permet
de les placer cte cte selon W et lautre permet de les placer cte cte selon
H. Les objets a1 et a2 sont alors orientation dpendante selon W et H. De plus,
une configuration peut tre dduite de lautre par une rotation simultane des deux
objets. Considrons maintenant les deux objets a1 et a3 . Ces deux objets sont aussi
orientation dpendante selon W puisquils ne peuvent pas tre placs cte cte
selon cette dimension. Ils le sont aussi selon H car il existe une seule configuration
selon laquelle ces deux objets peuvent tre placs cte cte selon H (cf. figure 2.3).
Les objets a1 et a3 sont donc aussi orientation dpendante.
Remarquons que si deux objets dans A sont orientation dpendante selon
W et selon H, ils ne sont pas ncessairement orientation dpendante. En effet
considrons linstance suivante. Soit I = (A, B), o B = (10, 14) et a1 = (11, 8),
a2 = (2, 9) deux objets dans A. Nous remarquons quil existe une configuration
a1
a2
a3
a1
a1
33
a2
a2
a1
a1
a2
Figure 2.4 a1 et a2 sont orientation dpendante selon H et W mais ils ne sont pas
orientation dpendante
unique pour placer a1 et a2 cte cte selon H et une configuration unique pour
laquelle les objets sont placs cte cte selon W . Les deux objets sont alors
orientation dpendante selon H et W , mais ils ne sont pas orientation dpendante
puisque les deux configurations possibles ne peuvent pas tre dduites lune de lautre
par une rotation simultane des deux objets (cf. figure 2.4).
En pratique, nous considrons une famille de sous-ensembles dobjets orientation dpendante paramtre par un entier. Soit un entier p tel que 1 p < L/2,
nous dfinissons le sous-ensemble Adop = {ai A; Li (L p) et li > p}.
Proposition 2.2. Pour une valeur donne du paramtre p tel que 1 p < L/2,
Adop est un sous-ensemble dobjets orientation dpendante dans A.
Dmonstration. Soit ai et aj deux objets de Adop , ils vrifient :
Li + Lj Li + lj > L et li + Lj > L
(2.1)
34
2.3
Prtraitements
Les prtraitements, appliqus aux objets dune instance donne I = (A, B) permettent daugmenter la taille de certains objets, et de rduire la taille de lensemble
A sans modifier le nombre de bins de la solution optimale. De cette faon, les prtraitements permettent damliorer les bornes infrieures et de simplifier linstance.
Dans cette section, nous proposons trois prtraitements nots respectivement ,
et .
Le premier prtraitement () consiste valoriser les surfaces perdues dans le bin.
Il est bas sur une variante du problme de subset-sum. Un prtraitement semblable
est propos dans [5] pour le cas orient. Dautre part, beaucoup de sous-ensembles de
linstance initiale, peuvent tre rsolus loptimum sparment. Ces sous-ensembles
contiennent principalement les grands et les petits objets. Les prtraitements et
sont bass sur cette ide. Ces prtraitements permettent llimination des petits
objets qui nont aucun impact sur la solution optimale, et laugmentation de la taille
2.3. PRTRAITEMENTS
35
des grands objets. Deux procds de rduction bass sur cette ide sont proposs
dans [10] pour le cas orient.
Les trois prtraitements proposs sont bass sur le concept de fonctions identiquement ralisables (IFF : Identical Feasible Functions) dfini dans [10]. Soit I =
(A, B) = ({a1 , ..., an }, B) une instance 2BP. Une fonction f est dite identiquement
ralisable ssi linstance f (I) = (a1 , . . . , an , B) obtenue en appliquant f tous les
objets de lensemble A est telle que OP T (I) = OP T (f (I)).
2.3.1
Prtraitement
o :
(wi + hi ) (W wj )
(2.3)
ai A{aj }
+ 1
(2.4)
wi H
(2.5)
hi H
(2.6)
{0, 1} et {0, 1}
(2.7)
Lquation (2.3) signifie que la somme des dimensions des objets constituant le
sous-ensemble entrant en jeu dans le calcul de S(A, wj , W ) ne dpasse pas la largeur
36
hi = h(i
ai 7 ai o
wi + min(W S(A, wi , W ), H S(A, wi , H)) si i = j
w
=
w
sinon
i
2.3. PRTRAITEMENTS
37
a3
a2
a2
a1
a1
38
2.3.2
Prtraitement
Le prtraitement se situe dans le cadre des procdures de rduction des instances de 2BP |R. Dans ce prtraitement, les petits objets qui, en gnral, nont pas
un grand impact sur la valeur optimale de la solution sont limins. La taille dautres
objets est par contre augmente, ce qui augmente le nombre dobjets contraignants
(les grands objets). Ceux ci ont en effet, gnralement, un rle plus important sur
la valeur optimale de la solution des instances considres.
Ce prtraitement est bas sur la prsence dobjets orientation dpendante dans
linstance initiale. Pour cela nous considrons la famille des sous-ensembles dobjets
orientation dpendante Adop introduite dans la section 2.2. Pour chaque sousensemble dobjets orientation dpendante paramtr par p, nous considrons le
sous-ensemble Ap dobjets qui ont une dimension suffisamment petite pour quils
puissent tre placs dans la prolongation de la plus grande dimension dun des objets
de Adop . Lide est de chercher liminer les objets de Ap et de mettre jour les
dimensions des objets de Adop .
Nous rappelons que Adop = {ai A; Li (L p) et li > p} o p est un
entier positif, tel que 1 p < L/2. Le sous-ensemble Ap scrit par consquent :
Ap = {ai A; li p}. Remarquons que Adop Ap = . Ap est lensemble des
objets dans A qui ont une dimension suffisamment petite pour tre placs dans la
prolongation de la plus grande dimension dun des objets de Adop .
Pour chaque objet ai dans Adop , plac dans un bin, nous considrons la surface
vide rsultante selon sa plus grande dimension Li . Si les deux orientations possibles
de lobjet dans le bin sont ralisables, un bin correspondant la plus petite des
deux surfaces rsultantes est considr. Cest le cas de la surface S2 de lexemple
illustr dans la figure 2.6. Dans le cas dun objet orientation fixe (Li > l), un
bin correspondant la surface vide obtenue selon sa plus grande dimension Li est
considr :
Bi =
(
(l Li , li ) si l Li
(L Li , li ) sinon
(2.8)
Soit P le problme de dcision suivant : est-il possible de placer tous les objets de
Ap dans les surfaces considres selon les prolongations des plus grandes dimensions
des objets de Adop dans les bins Bi ?
Do la proposition suivante :
2.3. PRTRAITEMENTS
39
S1
a1
a1
S2
li
ai 7 ai o i
li
li
= li et Li = l si (ai Adop et Li l)
= li et Li = L si (ai Adop et Li > l)
= 0 et Li = 0 si ai Ap
= li et Li = Li sinon
Dmonstration. Supposons quune configuration optimale est connue pour linstance transforme I . Une configuration optimale pour linstance initiale I peut tre
construite en plaant les objets de A \ Ap dans les mmes positions. Puisquaucun
objet de A \ Ap ne peut tre plac dans les surfaces considres suivant le prolongement de la plus grande dimension des objets de Aodp , ces surfaces sont disponibles.
Les objets de Ap sont alors placs dans ces surfaces (cela est ralisable puisque le
problme de dcision a une solution). Rciproquement, si une configuration optimale
est connue pour I, une configuration optimale du mme cot peut tre construite
pour I . Il sagit de placer les objets dans les mmes positions en dcalant si ncessaire
les objets dans le bin.
Nous proposons ci aprs un exemple dapplication de la fonction p une instance
donne.
Soit linstance suivante, I = (A, B) : A = {a1 = (4, 8), a2 = (2, 2), a3 =
(6, 7), a4 = (3, 4), a5 = (7, 4), a6 = (1, 6), a7 = (2, 5)} et B = (10, 10). pour p = 3,
Adop = {a1 , a3 , a5 }, les bins considrs pour le problme de dcision P sont :
40
a2
a1
a4
a5
a7
a6
a3
a1
a5
a3
{(2, 4), (3, 4), (3, 6)}. Ap = {a2 , a4 , a6 , a7 }. La figure 2.7 montre un placement possible des objets de Ap dans les bins considrs. La rponse au problme P est alors
affirmative. Linstance est alors transforme comme suit : A = {a1 = (4, 10), a3 =
(6, 10), a5 = (10, 4)}, il en rsulte alors llimination des objets de Ap .
Le problme de dcision P qui consiste vrifier la faisabilit de placement
des objets de Ap dans les bins Bi considrs est une variante du problme de binpacking, lui aussi NP-difficile. En pratique, une heuristique de rsolution est utilise
pour rsoudre ce problme.
La mme procdure est applique linstance I pour toutes les valeurs possibles
de lentier p. En ne considrant que les valeurs intressantes du paramtre p, celles
qui correspondent aux dimensions des objets, ce prtraitement est en O(n (n))
o (n) est la complexit de lalgorithme de rsolution du problme de dcision.
2.3.3
Prtraitement
2.3. PRTRAITEMENTS
41
peuvent alors tre limins puisquils nauront aucun impact sur la solution optimale,
et chaque objet de Alarge prend la taille dun bin (W, H).
S
Soit A = Alarge Asmall et I linstance de 2BP |R suivante : I = (A , B). Si
OP T (I ) = |Alarge |, la proposition suivante est alors dmontre dune faon similaire
la proposition 2.4.
Proposition 2.5. Si (OP T (I ) = |Alarge |) alors, la fonction p suivante est une
IF F associe linstance I.
p : A A
wi = l et hi = L si ai Alarge
ai 7 ai o wi = 0 et hi = 0 si ai Asmall
w = w et h = h sinon
i
i
i
i
En limitant les valeurs de p celles qui correspondent aux dimensions des objets,
ce prtraitement est en O(n (n)) o (n) est la complexit de lalgorithme de
rsolution de linstance I .
2.3.4
42
2.4
Rsultats exprimentaux
Dans cette section nous prsentons les rsultats numriques des prtraitements
(, et ). Nous avons test nos algorithmes sur des benchmarks proposs dans la
littrature ( [4] et [48]). Ces benchmarks se dcomposent en dix classes dinstances,
gnres alatoirement. Les six premires classes ont t proposes dans [4] tandis
que les quatres dernires ont t proposes dans [48]. Chaque classe est compose
de cinq groupes qui diffrent par le nombre dobjets (n = 20, 40, 60, 80, 100).
Chaque groupe contient dix instances diffrentes. Le benchmark contient au total
500 instances diffrentes.
Les caractristiques des instances qui constituent les six classes de [4] sont les
Classe
I
Problme
HxW
10x10
II
30x30
III
40x40
IV
100x100
100x100
VI
300x300
VII
100x100
VIII
100x100
IX
100x100
100x100
n
20
40
60
80
100
20
40
60
80
100
20
40
60
80
100
20
40
60
80
100
20
40
60
80
100
20
40
60
80
100
20
40
60
80
100
20
40
60
80
100
20
40
60
80
100
20
40
60
80
100
98.50
98.50
99.00
99.00
99.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
99.83
99.88
100.00
100.00
100.00
100.00
100.00
100.00
100.00
99.75
100.00
100.00
100.00
100.00
100.00
100.00
100.00
100.00
97.00
98.75
99.33
99.75
99.90
100.00
100.00
100.00
100.00
100.00
% objets
96.50
97.00
97.50
99.00
99.00
100.00
100.00
100.00
100.00
100.00
95.50
100.00
100.00
97.50
100.00
100.00
100.00
100.00
100.00
100.00
92.50
97.25
97.67
98.38
97.40
100.00
100.00
100.00
100.00
100.00
99.00
100.00
99.50
99.50
99.90
100.00
100.00
99.83
99.50
100.00
94.50
99.00
97.00
97.75
97.30
90.50
97.00
95.67
99.62
99.20
restants
all
73.50 72.50
72.50 70.75
71.50 71.50
74.25 74.25
86.30 86.30
100.00 100.00
100.00 100.00
100.00 100.00
100.00 100.00
100.00 100.00
83.00 80.50
76.25 76.25
91.00 91.00
90.25 87.62
81.70 81.70
100.00 100.00
100.00 100.00
100.00 100.00
100.00 100.00
100.00 100.00
66.50 61.50
56.25 55.50
57.67 57.17
56.00 55.75
76.00 74.80
100.00 100.00
100.00 100.00
100.00 100.00
100.00 100.00
100.00 100.00
98.50 98.50
98.00 98.00
100.00 99.50
99.75 99.38
100.00 99.90
100.00 100.00
100.00 100.00
100.00 99.83
100.00 99.50
100.00 100.00
3.00
0.00
7.00
5.00
3.83
2.50
3.62
3.50
2.90
2.60
68.00 65.50
89.25 86.75
98.83 95.50
99.50 99.12
100.00 99.20
43
all
5.79 5.79 5.82 5.96 6.06
11.60 11.60 11.61 12.03 12.17
17.93 17.93 17.95 18.42 18.83
24.81 24.81 24.81 25.31 25.81
29.98 29.98 29.98 30.25 30.46
0.64 0.64 0.64 0.64 0.64
1.29 1.29 1.29 1.29 1.29
1.99 1.99 1.99 1.99 1.99
2.76 2.76 2.76 2.76 2.76
3.33 3.33 3.33 3.33 3.33
3.81 3.81 3.83 3.96 4.11
7.71 7.71 7.71 8.10 8.37
12.03 12.03 12.03 12.19 12.27
16.67 16.67 16.69 16.82 16.89
20.08 20.08 20.08 20.66 20.89
0.61 0.61 0.61 0.61 0.61
1.23 1.23 1.23 1.23 1.23
1.92 1.92 1.92 1.92 1.92
2.67 2.67 2.67 2.67 2.67
3.21 3.21 3.21 3.21 3.21
4.78 4.82 4.83 5.14 5.36
9.69 9.70 9.74 10.56 10.78
15.14 15.16 15.19 16.15 16.47
20.97 20.98 20.99 21.94 22.51
25.29 25.30 25.33 26.16 26.39
0.53 0.53 0.53 0.53 0.53
1.08 1.08 1.08 1.08 1.08
1.68 1.68 1.68 1.68 1.68
2.33 2.33 2.33 2.33 2.33
2.81 2.81 2.81 2.81 2.81
4.24 4.27 4.26 4.25 4.29
9.14 9.15 9.15 9.15 9.18
13.41 13.42 13.41 13.41 13.42
19.35 19.35 19.36 19.35 19.36
23.34 23.34 23.35 23.34 23.35
4.34 4.36 4.35 4.34 4.36
9.21 9.22 9.21 9.21 9.22
13.60 13.61 13.61 13.60 13.61
19.09 19.09 19.09 19.09 19.10
23.62 23.62 23.62 23.62 23.62
8.91 9.73 9.44 14.03 14.30
17.57 17.99 17.68 26.88 27.40
27.18 27.63 27.84 42.99 43.45
36.52 36.66 36.93 56.77 57.10
44.53 44.61 45.16 68.59 69.10
3.27 3.28 3.32 3.46 3.56
6.32 6.32 6.33 6.39 6.42
8.99 8.99 9.02 8.99 9.02
11.72 11.72 11.72 11.72 11.72
14.70 14.70 14.71 14.70 14.71
0.00
0.01
0.01
0.02
0.03
0.00
0.01
0.03
0.05
0.08
0.00
0.01
0.02
0.04
0.06
0.01
0.03
0.06
0.12
0.18
0.00
0.02
0.03
0.06
0.09
0.02
0.08
0.17
0.32
0.52
0.00
0.01
0.03
0.06
0.08
0.01
0.02
0.03
0.06
0.09
0.00
0.01
0.02
0.03
0.06
0.01
0.02
0.04
0.08
0.12
temps
0.00
0.01
0.02
0.05
0.07
0.00
0.00
0.00
0.00
0.00
0.01
0.05
0.15
0.30
0.63
0.00
0.00
0.00
0.00
0.00
0.01
0.06
0.25
0.68
1.14
0.00
0.00
0.00
0.00
0.00
0.00
0.02
0.05
0.18
0.37
0.01
0.02
0.06
0.17
0.37
0.01
0.03
0.07
0.22
0.46
0.00
0.04
0.09
0.30
0.64
CPU
0.00
0.02
0.05
0.14
0.30
0.00
0.00
0.00
0.00
0.00
0.01
0.05
0.26
0.62
0.97
0.00
0.00
0.00
0.00
0.00
0.01
0.07
0.47
1.03
2.81
0.00
0.00
0.00
0.00
0.00
0.00
0.03
0.06
0.25
0.49
0.00
0.03
0.07
0.26
0.46
0.00
0.00
0.01
0.00
0.01
0.01
0.05
0.19
0.47
0.96
all
0.01
0.02
0.08
0.20
0.39
0.00
0.01
0.03
0.05
0.07
0.02
0.10
0.42
0.85
1.53
0.01
0.03
0.06
0.11
0.18
0.02
0.14
0.66
1.49
3.81
0.02
0.08
0.17
0.32
0.52
0.01
0.06
0.15
0.48
0.92
0.01
0.06
0.15
0.48
0.86
0.00
0.02
0.05
0.12
0.26
0.01
0.10
0.30
0.83
1.63
44
suivantes :
Classe 1 : wi et hi gnrs alatoirement suivant une loi uniforme dans [1, 10],
W = H = 10.
Classe 2 : wi et hi gnrs alatoirement suivant une loi uniforme dans [1, 10],
W = H = 30.
Classe 3 : wi et hi gnrs alatoirement suivant une loi uniforme dans [1, 35],
W = H = 40.
Classe 4 : wi et hi gnrs alatoirement suivant une loi uniforme dans [1, 35],
W = H = 100.
Classe 5 : wi et hi gnrs alatoirement suivant une loi uniforme dans [1, 100],
W = H = 100.
Classe 6 : wi et hi gnrs alatoirement suivant une loi uniforme dans [1, 100],
W = H = 300.
Les problmes proposs dans [48] refltent mieux la ralit puisque les instances
dune mme classe ne sont pas gnres du mme interval comme cest le cas des six
premires classes dcrites ci dessus. En effet, les auteurs considrent quatre types
diffrents dobjets :
Type 1 : wj et hj gnrs alatoirement suivant une loi uniforme dans [2/3W, W ]
et [1, 1/2H] respectivement.
Type 2 : wj et hj gnrs alatoirement suivant une loi uniforme dans [1, 1/2W ]
et [2/3H, H] respectivement.
Type 3 : wj et hj gnrs alatoirement suivant une loi uniforme dans [1/2W, W ]
et [1/2H, H] respectivement.
Type 4 : wj et hj gnrs alatoirement suivant une loi uniforme dans [1, 1/2W ]
et [1, 1/2H] respectivement.
Les objets dans les instances des classes 7, 8, 9 et 10 sont gnres de la faon
suivante :
Classe 7 : type 1 avec une probabilit de 70%, types 2, 3 et 4 avec une
probabilit de 10% pour chaque type.
Classe 8 : type 2 avec une probabilit de 70%, types 1, 3 et 4 avec une
probabilit de 10% pour chaque type.
Classe 9 : type 3 avec une probabilit de 70%, types 1, 2 et 4 avec une
probabilit de 10% pour chaque type.
Classe 10 : type 4 avec une probabilit de 70%, types 1, 2 et 3 avec une
probabilit de 10% pour chaque type.
2.5. CONCLUSION
45
La taille des bins pour ces quatre dernires classes est gale (100,100). Ces jeux
dessai (les dix classes) sont disponibles sur le Web ladresse suivante :
http ://www.or.deis.unibo.it/research_pages/ORinstances/ORinstances.htm.
Le tableau 2.1 montre les rsultats des trois prtraitements proposs. Les trois
premires colonnes du tableau prsentent les attributs des groupes dinstances constituant le benchmark : la classe, les dimensions du bin utilis pour placer les objets et
le nombre dobjets par instance. Chaque ligne reprsente la moyenne des rsultats
sur les 10 instances qui constituent un groupe dans une classe. Deux rsultats sont
prsents : le premier est le pourcentage dobjets de taille diffrente de (W, H) restant
dans linstance. Le deuxime rsultat est le rapport de la surface totale des objets
restant aprs prtraitement sur la surface dun bin (borne infrieure continue).
La partie rserve pour le pourcentage des objets restants est constitue de quatre
colonnes. Les trois premires reprsentent les rsultats obtenus, en appliquant respectivement les prtraitements , et sparment. La dernire colonne (intitule
all) reprsente les rsultats obtenus par lapplication itrative de , et : les trois
prtraitements sont appliqus lun aprs lautre tant que linstance est modifie. La
colonne init reprsente la borne infrieure continue initiale (sans prtraitements).
Le prtraitement fournit les meilleurs rsultats en moyenne aussi bien en terme
de rapport de surfaces quen terme de pourcentage dobjets restants. Cependant,
pour les classes 7 et 8, par exemple, cest le prtraitement qui fournit en moyenne
les meilleurs rsultats. En effet, cette classe est constitue principalement dobjets
"longs et assez larges", ce qui favorise le prtraitement . Dans la plupart des cas,
le prtraitement est moins efficace pour liminer des objets ou pour augmenter la
somme des surfaces et par consquence la borne continue. Mais, lapplication itrative des trois prtraitements (colonne all) donne des rsultats strictement meilleurs
quun des trois prtraitements appliqu sparment. En effet, en augmentant par
exemple la taille de certains objets, on parvient ainsi mettre en vidence des
assemblages qui napparaissaient pas auparavant, les trois prtraitements tant indpendants.
2.5
Conclusion
46
congrs [23].
Chapitre 3
Bornes infrieures
3.1
Introduction
47
48
3.2
Aperu de la littrature
Nous dcrivons dans cette section les diffrentes bornes infrieures proposes
dans la littrature pour 2BP |O qui vont nous servir dans ce chapitre, ainsi que les
bornes infrieures proposes pour le 2BP |R par rapport auxquels nous tudions la
dominance thorique et pratique.
3.2.1
Dans cette section nous dcrivons dans un premier temps la borne propose par
Boschetti et Mingozzi [5] et utilise dans [10] pour renforcer la borne introduite par
les auteurs. Puis, nous dcrivons la borne propose par Carlier et al. [10] qui sera
utilise dans la nouvelle borne propose pour le 2BP |R.
3.2.1.1
La borne infrieure LO
BM propose par Boschetti et Mingozzi [5] est compose de
O,3
O,4
trois bornes diffrentes LO,2
BM , LBM et LBM .
La borne LO,2
BM repose sur lobservation de quatre diffrents types dobjets les
grands, hauts, larges et les petits que nous notons respectivement A2G , A2H , A2L
et A2P . Etant donn un couple dentiers (p, q), tel que 1 p 12 W et 1 q 12 H,
les quatre groupes sont dfinis de la faon suivante :
A2G = {ai A : wi > W p et hi > H q}.
A2H = {ai A \ A2G : wi p et hi > H q}.
A2L = {ai A \ A2G : wi > W p et hi q}.
A2P = {ai A \ A2G A2H A2L : wi p et hi q}.
Remarquons que chaque objet de A2G ncessite un bin pour le ranger et que les
objets de A2G ne peuvent pas tre placs avec des objets de A2H , A2L et A2P dans
un mme bin. La borne LO,2
BM scrit :
{|A2G | + max{L2 (p, q), L2 (p, q)}}
LO,2
BM = max
1
(3.1)
1q 2 H
1W
1p 2
o L2 (p, q) et L2 (p, q) sont deux valuations sur le nombre minimum de bins requis
pour ranger les objets de A2H , A2L et A2P .
La borne L2 (p, q) exploite le fait quaucun objet de A2H ne peut tre plac au
dessus dun autre objet de A2H A2L A2P . Elle est obtenue en calculant la borne
infrieure pour linstance 1BP suivante. Le bin est de taille W H. Pour chaque objet
ai A2H , un objet de taille wi H est considr. Pour chaque objet ai A2L , un
objet de taille W hi est considr. Pour chaque objet ai A2P , un objet de taille
wi hi est considr.
49
i :
ai A3P
(3.2)
(3.3)
ai A3P
ai A3P
i :
ai A3P
50
Soit m (ai , A3P ) une borne suprieure pour le nombre dobjets de A3P qui
peuvent tre rangs avec lobjet ai , la borne LO,3
BM scrit :
P
|A3P | ai A3M m (ai , A3P )
O,3
LBM = max
|A3G A3M | + max 0,
MW (W, A3P )MH (H, A3P )
1q 21 H
1W
1p 2
(3.4)
Notons que, MW (W, A3P )MH (H, A3P ) est une borne suprieure pour le nombre
dobjets de A3P qui peuvent tre rangs ensemble dans un bin.
m (ai , A3P ) = MW (W wi , A3P )MH (H hi , A3P )
+ (MW (W, A3P ) MW (W wi , A3P ))(MH (H hi , A3P ))
(3.5)
LO,4
BM
m
(a
,
p,
q)
i
ai A\A4G
k
j
k
j
= max |A4G A4M | + max 0,
H
W
1p W
2
p
q
1q H
2
(3.6)
51
i
i
i
i
Hh
W w
Hq Wp Hh
si ai A4M
W w
p
q
p
q
wi H wi Hhi si a A4
i
H
p
k
p
q
m (ai , p, q) =
hi
W wi
hi
W
p q p q si ai A4L
w i hi
p q si ai A4P
Carlier et al. [10] proposent une nouvelle borne infrieure ddie au 2BP |O qui
domine les bornes de la littrature. Cette borne repose sur le concept des fonctions
redondantes ou DFF discrtes dfinies de la faon suivante.
Dfinition 3.1. Une Fonction Redondante (RF), ou DFF dicrte f est une application discrte de [0, X] dans [0, X ] (X et X entiers) telle que :
x1 + x2 + . . . + xk X f (x1 ) + f (x2 ) + . . . + f (xk ) f (X) = X .
A partir de cette section, nous parlons de DFF pour faire rfrence aux DFF
discrtes.
Les DFF sont dfinies indpendamment de linstance. Une autre classe de fonctions qui dpendent de la taille des objets dans linstance considre a t dfinie par
les auteurs. Il sagit des DFF dpendantes de la donne appeles DDFF (cf. dfinition
3.2).
Dfinition 3.2. Soit A = {a1 , . . . , an }, c1 , c2 , . . . , cn n valeurs entires et C un
entier tel que C ci pour i = 1, . . . , n. Une Fonction Dual-Ralisable Dpendante
de la Donne (DDFF) f associe C et c1 , c2 , . . . , cn est une application discrte de
[0, C] dans [0, C ] telle que
A1 A,
ai A1
ci C
f (ci ) f (C) = C
ai A1
Les DDFF ont un comportement similaire aux DFF sur un exemple spcifique
donn. Les DDFF peuvent prendre en compte les caractristiques de linstance
comme le nombre doccurrences de chaque valeur, et peuvent ainsi conduire des
bornes infrieures qui amliorent strictement celles obtenues par lapplication des
DFF.
Les auteurs considrent deux familles de DFF (f0k et f2k )et une famille de DDFF
(f1k ). f0k est directement drive dune famille classique de DFF propose dans [27].
52
f2k est une amlioration sur une DFF utilise dans [6]. (f1k ) est une nouvelle famille
de DDFF. Etant donn une valeur entire C et un autre entier k = 1, ..., C/2, les
trois fonctions sont dfinies ci aprs.
Une dimension dun objet ai , peut tre augmente jusqu la taille dun bin si
aucun autre objet dans linstance ne peut tre rang avec ai suivant la prolongation
de la dimension considre. La famille de DFF f0k propose consiste supprimer les
objets de taille infrieure k et augmenter la taille des objets strictement suprieure
C k.
f0k : [0, C] [0, C]
C si x > C k
x 7 x si C k x k
0 sinon
La fonction f1k est dfinie pour une valeur de lentier C et une liste dentiers
c1 , c2 , . . . , cn (A = a1 , ..., an ). Soit A le sous-ensemble dobjets suivant : A = {ai
A : 21 C ci k}. Etant donn un entier X, soit M (X, J) le nombre maximal
dobjets dans J qui peuvent tre placs cte cte sans dpasser X. M (X, J) est la
valeur optimale pour le problme de sac dos en une dimension (1KP) induit par
lensemble A et la taille X. la nouvelle DDFF f1k scrit alors :
f1k : [0, C] [0, M (C, J)]
M (C, J) M (C x, J)
x 7 1
si x > 12 C
si 12 C x k
sinon
La fonction f2k repose sur des techniques darrondi qui consiste augmenter la
taille des grands objets et rduire celle des petits, elle est dfinie de la manire
suivante :
C
k
f2 : [0, C] 0, 2
k
C Cx
1
2 ( k k ) si x > 2 C
x 7 Ck
si x = 21 C
2 x
si 1 C > x
k
Carlier et al. [10] introduisent une borne infrieure pour le 1BP note L1D
CCM [10]
1D
et ils montrent quelle domine thoriquement la borne LM V propose dans [48].
Ce rsultat est utilis par les auteurs pour montrer la dominance thorique de la
nouvelle borne infrieure quils proposent par rapport aux bornes de la littrature,
en particulier LO,2
BM [5].
1BP
L1D
Lfu (ci )
CCM = max
u{0,1,2}
53
1k C
2
(& P
k
ai A fu (ci )
fuk (C)
')
Puis ils introduisent des nouvelles bornes infrieures pour le 2BP |O suivant le
schma dfini dans [29]. Pour u = 0, 1, 2 et v = 0, 1, 2 ils dfinissent :
L2D
(fu ,fv ) =
max
,1l H
1k W
2
2
(& P
k
l
ai A fu (wi )fv (hi )
fuk (W )fvl (H)
')
L2D 1, CCM est une borne infrieure valide pour le 2BP , elle est gale la borne
continue maximale obtenue en appliquant les DDF (ou DDFF) proposes.
L2D
1,CCM =
max
u{0,1,2},v{0,1,2}
L(fu ,fv )
(3.7)
Cette borne est renforce par la borne L2D 2, CCM obtenue en utilisant la borne
O,2
O,2
1D
L1D
CCM la place de LM V dans la borne LBM . En effet, la borne LBM ne peut pas
tre calcule par lintermdiaire des DFF.
La nouvelle borne infrieure valide pour le 2BP est note LO
CCM , Elle domine les
bornes de la littrature [10] :
2D
2D
LO
CCM = max{L1,CCM , L2,CCM }
(3.8)
Notons que les DFF f0 et f2 proposes par les auteurs sont des fonctions croissantes et superadditives, elles vrifient donc la relation suivante : x + y z implique
f (x) + f (y) f (z) pour f {f0 , f2 }.
3.2.2
Dans cette section nous dcrivons deux bornes infrieures pour le 2BP |R proposes dans la littrature. Remarquons que la borne continue est aussi une borne
infrieure valide pour le 2BP |R. Premirement, nous dcrivons la borne infrieure
propose dans [19] o les auteurs proposent de dcouper les objets de linstance
initiale en carrs. Une borne infrieure ddie au problme de placement des objets
carrs est alors applique linstance obtenue. La borne infrieure LR
BM propose
R,1
R,2
dans [6] est compose de deux bornes LBM et LBM . La premire consiste transformer les objets en carrs et appliquer par la suite une borne infrieure ddie au
2BP |O. La deuxime borne prend explicitement en considration les deux dimensions des objets et la possibilit de rotation de 90 degrs.
54
3.2.2.1
R
La borne LBDA
de DellAmico et al. [19]
R
Le calcul de la borne LBDA
se fait en deux tapes. Dans la premire tape,
chaque objet ai A est dcompos en plusieurs carrs. Ces objets carrs sont obtenus
par un algorithme pseudo-polynomial appel CUTSQ. Initialement chaque rectangle
r(i)
r(i)
est considr dans lorientation r tel que wi
hi (orientation horizontale).
Chaque itration de CUTSQ, consiste couper de chaque rectangle (wi , hi ) le nombre
maximal de carrs de taille (hi , hi ), et de tourner le rectangle rsiduel de 90 degrs
pour conserver une orientation horizontale. Dans une deuxime tape, une borne
ddie au problme de rangement des carrs est applique linstance rsultante
note IS = (AS , B). Soit lj la dimension dun objet aj dans AS . AS est alors divis
en cinq sous-groupe de la faon suivante (le bin est considr dans une orientation
horizontale : W H). Etant donn un entier k tel que 0 k 12 H, les cinq
sous-ensembles dobjets sont dfinis de la faon suivante :
A1 = {aj AS : lj > W k}
A2 = {aj AS : W k lj > 12 W }
A3 = {aj AS : 21 W lj > 21 H}
A4 = {aj AS : 21 H lj k}
A23 = {aj A2 A3 : lj > H k}
R
LBDA
= max1
0k 2 H
|A1 | + L+
2
P lj (H lj )) )
l
(W
H
L
j
o
n
aj A23
aj A2 A3 A4
max 0,
WH
R
est une borne infLBDA
est une borne infrieure valide pour le 2BP |R, o L
rieure valide sur le nombre de bins ncessaire pour ranger les objets de A2 A3 ,
elle est base sur les observations suivantes. Chaque objet de A1 A2 exige un bin,
aucun objet de A3 ne peut tre plac avec un objet de A1 ou au dessus dun objet
de A2 et un objet au plus de A3 peut tre plac ct dun objet de A2 . Les auteurs
considrent alors le sous-ensemble A3 des objets de A3 qui peuvent tre rangs dans
est alors complte par une
les bins qui contiennent les objets de A2 . La borne L
borne infrieure pour le nombre de bins ncessaires pour ranger les objets de A3 \A3 :
& P
'
l
|A3 \ A3 |
aj A3 \A3 j
k
L = |A2 | + max
, j
W
H/2+1
R
Le dernier terme de la borne LBDA
est une borne infrieure sur le nombre de
bins quon doit ajouter pour ranger les objets de A4 .
55
R
Dans le cas de bins carrs (W, W ) et pour une valeur donne de k, la borne LBDA
peut tre crite de la faon suivante :
R
L DA (k)
3.2.2.2
= |A1 A2 | + max{0,
2
aj A2 A4 (lj )
W2
|A2 |}
La borne LR
BM de Boschetti et Mingozzi [6]
et
(& P
n
k,l (i)
W
i=1
H
k
l
l,W
k,H
')
si ai A
si ai A
56
k,X (x) =
(
Xx
X
xk
k
if x >
if x
X
2
X
2
Notons que k,X est une version de la fonction f2k dcrite dans la section 3.2.1.2,
o un objet de taille X2 peut avoir une image plus petite.
R,2
La borne finale propose dans [6] est alors max(LR,1
BM , LBM ). Nous notons cette
borne LR
BM .
3.3
2
2. wi = win
et hi = h2in pour i {n + 1, . . . , 2n}
Le thorme 3.4 tablit que IbO a besoin au plus du double du nombre de bins
ncessaires pour I R .
Thorme 3.4. Si z bins sont ncessaires pour ranger les objets de I R , il existe
alors une solution IbO avec 2z bins.
57
4
9
1
5
2
8
6
8
9
5
2
3
8
6
7
2
1
6
5
La figure 3.1 montre la construction dune solution avec quatre bins pour IbO (les
quatre bins du dessous) partir dune solution avec deux bins connue pour I R (les
deux bins du dessus). La configuration des objets placs dans les deux premiers bins
est identique la solution du problme initial. La configuration du troisime (resp.
quatrime) bin est obtenue en tournant de 90 degrs la configuration du premier
(resp. deuxime) bin.
Corollaire 3.1. Si LB O est une borne infrieure valide pour le 2BP |O, alors
LB O (IbO )/2 est une borne infrieure valide de la solution optimale de I R .
Daprs le corollaire 3.1, toute borne infrieure pour le 2BP avec orientation
fixe des objets peut tre utilise pour calculer une borne infrieure pour le cas
non-orient. Nous utilisons la borne LO
CCM propose dans [10] aprs une lgre
k
modification. La lgre modification sur LO
CCM concerne la famille f1 de DDFF :
dans la nouvelle borne que nous proposons, les deux objets orientation fixe issus
du mme objet dorigine peuvent tre placs dans un mme bin (si cela nest pas
permis, la borne reste valide). Dans ce cas, dans le sous-groupe dpendant de la
donne entrant en jeu dans le calcul de la fonction f1k , nous ne considrons quun
seul objet par couple (lobjet dont la dimension considre est la plus petite). La
nouvelle borne infrieure obtenue est note LR
CJE . Elle est de mme complexit que
la borne infrieure utilise (LO
).
Elle
est
en
O(n3 ).
CCM
Dans le cas de bins non carrs, la mthode propose peut toujours tre utilise.
Nous supposons sans perte de gnralit que W > H. Dans ce cas, nous transformons
le bin (W, H) en un bin (W, W ). Pour viter une relaxation excessive du problme,
58
un objet factice de taille (W, W H) est ajout chaque bin pour remplir la surface
ajoute. Cette procdure est mise en place de la faon suivante. z objets factices
sont ajouts la nouvelle instance 2BP |O considre. Si la borne infrieure est
suprieure z, la mthode est relance avec la valeur z + 1. La valeur initiale donne
z peut tre gale un, ou une borne infrieure connue pour le problme. Lors de
lutilisation de la fonction f1k , il faut sassurer quun objet factice au plus entre en
jeu dans la solution du problme du sac dos.
3.4
Or lorientation choisie pour les objets naffecte pas cette dernire expression. Lexpression ci aprs est alors une borne infrieure pour I.
&
'
X min{f (w1 )g(h1 ), f (w2 )g(h2 )}
i
i
i
i
max
f,gF
f
(W
)g(W
)
a A
i
&
'
n
2n
nX
X
1
f (wi1 )g(h1i )
f (wi1 )g(h1i ) o
max
+
2 f,gF i=1 f (W )g(W ) i=n+1 f (W )g(W )
LB = max
f,gF
or
)'
( n
X 1 f (w1 )g(h1 ) + f (w2 )f (h2 )
i
i=1
f (W )g(W )
60
do :
min{f (wa )g(h), g(wa )f (h)} + min{f (wb )g(h), g(wb )f (h)} f (w)g(h).
En utilisant la mme proprit pour g, nous obtenons :
g(wa )f (h) + g(wb )f (h) g(w)f (h)
nous avons alors :
min{f (wa )g(h), g(wa )f (h)} + min{f (wb )g(h), g(wb )f (h)} g(w)f (h)
Le lemme est par consquent vrai.
Notons que le rsultat sapplique aussi dans le cas o wa = h, comme dans la
mthode LR
DA [19].
R
Proposition 3.3. LR
CJE domine la borne L DA de [19] dans le cas de bins carrs.
ai A2 A4
, elle est alors gale la borne continue
Si L R
DA (k) = |A1 | +
W2
calcule pour linstance transforme en appliquant f0k sur les deux dimensions.
Dans les deux cas, la borne peut alors tre obtenue en appliquant deux DFF
dans F.
Nous montrons maintenant que toute mthode qui consiste dcouper les objets
de linstance initiale et calculer par la suite une borne infrieure, par lintermdiaire
des DFF, pour linstance rsultante ne peut pas donner des rsultats meilleurs que
lapplication de la mme borne linstance initiale.
Soit ai un objet de A, et Ji lensemble des objets obtenus par des dcoupes
rcursives de lobjet ai . Daprs le lemme 3.1, nous savons que la surface rsultante
de ai transform aprs lapplication de LR,t
CJE est suprieure ou gale la somme
des surfaces de deux premires dcoupes de ai . En utilisant ce rsultat dune faon
rcursive, nous constatons que la surface de ai modifie par deux DFF est suprieure
la surface totale des objets de Ji modifi par DFF. En sommant les ingalits
R,t
R
R
obtenues, nous trouvons que LR,t
CJE est suprieure LDA . Or LCJE domine LCJE
dans le cas de bins carrs, elle domine alors de mme LR
DA .
obtenue ne peut donc pas tre suprieure la borne obtenue en appliquant f02
chaque dimension.
Carlier et al. [10] ont montr que LO,3
BM peut tre calcule par lintermdiaire de
k
deux fonctions f1 . La surface totale des objets considrs est videment suprieure
quand LR
CJE est applique. Bien que les DFF sont superadditives, les DDFF ne
le sont pas, mais rappelons que lensemble des valeurs dpendant de la donne
R,1
J considrs dans LR
CJE est le mme que celui considr dans LBM . En effet, en
utilisant lamlioration sur la borne LO
CCM propose dans la section 3.3, seule la
1
1
valeur min{wi , hi } est considre. Elle est identique la valeur considre dans
LR,1
BM . La surface obtenue pour chaque objet, est alors suprieure ou gale la surface
totale obtenue en utilisant la mthode de [5,6]. En sommant les ingalits obtenues,
nous vrifions la rgle de dominance.
Carlier et al. [10] ont aussi montr que LO,4
BM peut tre calcule par lintermdiaire
k
de deux DFF qui sont domines par f2 . En se rfrant au lemme 3.1 et Proposition
O,4
3.2 nous dduisons que LR
CJE domine la borne LBM .
R,t
Finalement la borne LR,2
BM [6] est obtenue partir du schma de la borne LCJE
en utilisant une version simplifie de f2k , elle est alors domine par LR,t
CJE . Daprs la
R,2
R
proposition 3.2, la borne LBM est alors domine par LCJE .
R
La borne LR
BM est donc domine par LCJE .
Dans le cas de bins non carrs, les rsultats de dominance montrs ne sont plus
valides. Lexemple donn ci aprs illustre ce fait. Soit linstance I = (A, B) suivante
tel que : A = {(4, 1), (4, 1), (3, 3)} est B = (6, 3). La mthode de [6] dtermine
un ensemble dobjets qui ne peuvent pas tre tourns : (4, 1) et (4, 1). f03 est alors
applique la largeur et f01 la hauteur, La borne infrieure rsultante est gale
lexpression suivante : (6 1 + 6 1 + 3 3)/(6 3) = 21/18 = 2. Si
62
3.5
Rsultats exprimentaux
Nous avons test nos algorithmes sur des benchmarks proposs dans la littrature
[4, 48] et dcrits dans le chapitre 2.
Dans le tableau 3.1, nous comparons nos rsultats avec ceux de [6], qui sont les
meilleurs rsultats connus dans la littrature. Chaque ligne reprsente la moyenne
obtenue pour un groupe de dix instances dune classe donne, tandis que les lignes
intitules Avg. sont consacres aux moyennes par classe. Le tableau 3.1 montre
les valeurs des bornes infrieures obtenues (colonne LB). Dans la colonne CPU
nous montrons en secondes le temps CPU consomm pour le calcul de la borne
infrieure. La colonne intitule BM concerne les rsultats de [6], tandis que les
colonnes intitules CJE concernent les rsultats obtenus par notre nouvelle borne
quand la version modifie de LO
CCM [10] est utilise (cf. Section 3.3).
Nous constatons que la nouvelle borne infrieure (LR
CJE ) fournit des rsultats
strictement meilleurs que ceux obtenus par la borne de [6]. Les rsultats thoriques
sont confirms par les rsultats exprimentaux.
3.6
Conclusion
3.6. CONCLUSION
63
Class
I
Problme
H W
10 10
II
30 30
III
40 40
IV
100 100
100 100
VI
300 300
VII
100 100
VIII
100 100
IX
100 100
100 100
LB
n
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
20
40
60
80
100
Avg.
BM
6.6
12.7
19.5
26.9
31.0
19.34
1.0
1.9
2.5
3.1
3.9
2.48
4.7
9.0
13.2
18.1
21.5
13.30
1.0
1.9
2.3
3.0
3.7
2.38
5.9
11.3
16.9
23.5
27.2
16.96
1.0
1.5
2.1
3.0
3.2
2.16
4.7
9.7
14.0
19.8
23.9
14.42
4.9
9.6
14.1
19.7
24.2
14.50
14.3
27.5
43.5
57.3
69.3
42.38
3.9
6.9
9.4
12.2
15.3
9.54
CJE
6.6
12.8
19.5
27.0
31.3
19.44
1.0
1.9
2.5
3.1
3.9
2.48
4.7
9.1
13.2
18.2
21.5
13.34
1.0
1.9
2.3
3.0
3.7
2.38
5.9
11.3
17.1
23.6
27.2
17.02
1.0
1.5
2.1
3.0
3.2
2.16
4.7
9.9
14.0
20.0
23.9
14.50
5.0
9.7
14.2
19.7
24.2
14.56
14.3
27.5
43.5
57.3
69.3
42.38
3.9
7.0
9.5
12.2
15.3
9.58
CPU
CJE
0.00
0.00
0.00
0.00
0.00
0.000
0.00
0.00
0.00
0.00
0.00
0.000
0.00
0.00
0.00
0.01
0.02
0.006
0.00
0.00
0.00
0.00
0.01
0.002
0.00
0.00
0.02
0.04
0.09
0.030
0.00
0.00
0.00
0.03
0.04
0.014
0.00
0.01
0.03
0.06
0.11
0.042
0.00
0.01
0.03
0.06
0.11
0.042
0.00
0.00
0.01
0.02
0.03
0.012
0.00
0.00
0.02
0.04
0.07
0.026
64
actuellement dans notre mthode ce qui pourrait laffaiblir dans le cas de bins non
carrs.
La mthode propose peut tre adapte au problme de bin-packing en trois
dimensions. Dans ce cas, linstance construire serait compose de 6n objets.
Chapitre 4
4.1
Introduction
4.2
65
66
ai
dyi
ai
yi
xi
dxi
(a) Objet plac dans une position
quelconque
Figure 4.1 Les surfaces maximales rsultantes du placement du premier objet dans le
bin, chaque surface tant reprsente par sa diagonale respective.
A dans les bins en associant chaque objet ai de A un bin dans lequel ai est rang,
sa position (xi , yi ) dans le bin et son orientation. Dans cette section, nous dcrivons
la reprsentation dune solution. Le placement des objets est bas sur la notion de
surfaces maximales introduite dans cette section. Nous discutons aussi de la mise
jour de la liste des surfaces maximales aprs chaque rangement dun objet.
Pour chaque objet ai plac dans un bin dans une orientation donne, nous notons
(xi , yi ) sa position (les coordonnes de son coin bas-gauche) par rapport au coin bagauche du bin, le centre du repre orthogonal (x,y). Nous notons par dxi et dyi les
projections respectives des artes de lobjet sur les axes Ox et Oy. Ainsi, dxi = wi
et dyi = hi si ai est plac dans son orientation initiale, ou dxi = hi et dyi = wi si ai
est tourn de 90 degrs (voir figure 4.1(a)).
Dfinition 4.1. Etant donne une liste de surfaces vacantes, une surface est dite
maximale si elle nest contenue en totalit dans aucune autre surface.
Les surfaces maximales possdent les deux proprits suivantes. Ces deux proprits sont des consquences directes de la dfinition 4.1.
Proprit 4.1. Chacun des quatre bords dune surface maximale donne dans un
bin touche au moins un autre objet dj plac ou bien une des quatre artes du bin.
Proprit 4.2. Deux surfaces maximales dans un mme bin ayant leurs coins basgauche la mme position, ne peuvent avoir ni la mme largeur ni la mme hauteur.
De plus, tant donnes deux surfaces maximales ma1 et ma2 qui ont leurs coins basgauche la mme position, si la hauteur (resp. largeur) de ma1 est suprieure la
hauteur (resp. largeur) de ma2 , alors la largeur (resp. hauteur) de ma1 est infrieure
la largeur (resp. hauteur) de ma2 .
67
ma5
ma4
ma6
a3
a5
ma1
a2
ma2
a1
a4
ma3
Figure 4.2 Placement de cinq objets dans le bin, les six surfaces maximales rsultantes
sont reprsentes par leur diagonale
Lors du processus de rangement des objets, les surfaces rsiduelles sont gres
par une liste de surfaces maximales. Initialement, la liste des surfaces maximales
dun bin ouvert vide est tout simplement constitu de la surface du bin. Le premier
objet rang est plac dans une surface maximale correspondante au premier bin
ouvert. Quand on place un objet dans une surface, cette surface est dcompose
en quatre nouvelles surfaces au plus : la surface rsiduelle gauche, droite, au
dessus et en dessous de lobjet. Ce cas de figure est illustr dans la figure 4.1(a).
Dans toutes les mthodes de rsolution proposes dans la prsente thse, lors du
rangement des objets, ils sont placs de telle sorte que les coins bas-gauches des
objets placs concident avec les coins bas-gauches des surfaces qui les accueillent.
Ainsi, le placement du premier objet dans la surface disponible (le bin) entrane
llimination de cette surface et la cration de deux surfaces au plus (cf. figure
4.1(b)). A une tape donne du packing un nouvel objet est plac dans une surface
maximale qui peut le contenir. La surface dans laquelle lobjet a t plac est
alors limine et la liste des surfaces disponibles est mise jour. Seules les surfaces
maximales sont maintenues.
Dans la figure 4.2 nous montrons un rangement intermdiaire o cinq objets
(a1 , ..., a5 ) sont placs dans un bin. Les surfaces maximales (ma1 , ..., ma6 ) rsultantes
dans le bin sont reprsentes par leur diagonale.
68
a3
a2
a1
4.3
Lors du placement dun objet dans une surface maximale donne, deux cas se
prsentent. Dans le premier cas, lobjet est soutenu par ses bords bas et gauche, il est
dit dans ce cas rang dans une position bl-stable. Dans le second cas, au moins un de
ses deux bords nest pas soutenu. Un rangement des objets est dit stable si chaque
stade de rangement des objets, seules les positions bl-stables sont considres. Un
exemple de rangement non stable est illustr dans la figure 4.3. Lobjet a3 dans la
figure nest pas plac dans une position bl-stable car son arte du bas nest soutenu ni
par autre objet ni par une des artes du bin. Le rangement illustr dans la figure 4.2
prsente un packing stable. Dans lalgorithme de rsolution propos dans la section
4.4, seuls les rangements stables sont considrs.
Lors dun rangement stable, un nouvel objet est alors plac dans une surface
maximale qui peut le contenir et qui prserve un rangement stable. La surface dans
laquelle lobjet a t plac est alors limine et la liste des surfaces disponibles est
mise jour.
Nous allons maintenant montrer, en utilisant les proprits 4.1 et 4.2 dcrites
dans la section prcdente, la proposition suivante :
Proposition 4.1. Le nombre de surfaces maximales une tape quelconque dun
rangement stable est en O(n2 ).
Dmonstration. Daprs la proprit 4.1, chaque coin bas-gauche dune surface maximale est ncessairement issu de la projection de deux artes dobjets ou la projection
dune arte dun objet sur une arte du bin. Nous dduisons donc, que le nombre
de coins bas-gauches des surfaces maximales prsentes dans un bin l est infrieur ou
gal Cn2 n2 o n = 4(nl + 1), nl tant le nombre dobjets placs dans le bin
69
a2
a2
ma1
ma1
a1
a1
ma2
ma2
ma3
ma3
Figure 4.4 Illustration de trois surfaces maximales associes au mme coin bas-gauche.
l. Nous montrons maintenant que, dans le cas dun rangement stable, on ne peut
associer que deux surfaces maximales au plus chaque coin bas-gauche.
Supposons que trois surfaces maximales ma1 , ma2 et ma3 , dans un rangement
stable, soient associes au mme coin bas-gauche et montrons que cest une contradiction. Soient a1 et a2 deux objets qui touchent respectivement les bords droit
et haut de ma2 . La figure 4.4 illustre les deux cas de figures possibles considrant
les objets a1 et a2 sans chevauchement. Les allures considres des trois surfaces
maximales sont dduites de la proprit 4.2. Nous pouvons facilement constater
que, pour les deux cas de figures, le rangement nest pas stable. Dans le premier
cas (cf. figure 4.4(a)), la stabilit gauche de lobjet a1 nest pas respecte, et dans
lautre cas (cf. figure 4.4(b)) la stabilit bas de lobjet a2 nest pas respecte. Nous
dduisons que le nombre de surfaces maximales dans un bin l est en O(n2l ). Soit
nbBin, le nombre de bins utiliss pour ranger lensemble de tous les objets dune
P
O(n2l )
instance donne. Le nombre total des surfaces maximales est alors en nbBin
l=1
P
qui est en O(n2 ) car nbBin
nl = n.
l=1
4.4
Lheuristique (IM A)
Dans cette section, nous proposons une nouvelle heuristique pour la rsolution
des instances 2BP |R. Dans les mthodes heuristiques proposes dans la littrature,
les auteurs procdent un tri des objets puis ils les placent par ordre dans les bins
suivant diffrentes stratgies (cf. Section 1.6). Dans la nouvelle heuristique propose
aucun pr-ordre des objets nest impos. Le choix de lobjet placer, dans une
70
qk = 1
k=1,...,4
q2 (dxi /wma )
q3 (dyi /hma )
2
q4 (wi2 + h2i )/(wma
+ h2ma )
71
4.5
Rsultats exprimentaux
Nous avons test lheuristique IM A sur les jeux dessai de la littrature proposs
dans [4] et [48] et dcrits dans la section 2.4. Nous avons compar notre heuristique
avec les rsultats les plus rcents de la littrature. Nous rappelons que le benchmark
utilis est compos de dix classes dobjets gnres alatoirement et que chaque classe
est compose en cinq groupes, chaque groupe ayant une taille dinstance diffrente.
Dans le tableau 4.1, nous testons lheuristique IM A sur les instances du benchmark considr. Nous montrons les rsultats de deux versions : avec et sans prtraitements. Dans le premier cas, les prtraitements , et proposs dans le chapitre
2 sont appliqus lun aprs lautre tant que linstance est modifie, lheuristique
IM A est ensuite applique linstance transforme. Les rsultats concernent le
nombre de bins utiliss pour ranger lensemble des objets (nbBin), et le temps CPU
correspondant en secondes (CP U ). Nous notons M Amax le nombre maximum de
surfaces maximales prsentes en une tape quelconque du rangement, tandis que
M Aaverage prsente la moyenne de cette valeur (M Amax ) releve chaque accs la
liste des surfaces maximales. Chaque ligne du tableau prsente la moyenne de ces
valeurs sur les dix instances constituant un groupe dune classe donne sauf pour
la valeur M Amax qui correspond la valeur maximale. Le tableau 4.1 permet de
constater que, pour les deux versions testes (avec et sans prtraitements), le nombre
72
4.6. CONCLUSION
4.6
73
Conclusion
74
Algorithme 2 : Lheuristique IM A
Donnes : I = (A, B) (une instance 2BP |R), step1, step2 et step3 (trois
nombres rels).
nbBinMin := n ;
pour (q1 := 0, q1 1 ; q1 := q1 + step1) faire
pour (q2 := 0, q2 1 q1 ; q2 := q2 + step2) faire
pour (q3 := 0, q3 (1 q1 q2 ) ; q3 := q3 + step3) faire
q4 := 1 (q1 + q2 + q3 ) ;
A := A ;
Initialisation de la liste Lma des surfaces maximales disponibles.
Initialement elle contient une seule surface maximale : un bin vide
la position (0, 0), lorigine des axes x et y ;
nbBin := 1 ;
tant que (|A | =
6 0) faire
rapMax := 0 ; pour (i := 1; i |A |; i + +) faire
pour (j := 1; j |Lma|; j + +) faire
si (ai peut tre plac dans maj sans chevauchement et
O(ai , maj ) > rapM ax) alors
rapM ax = O(ai , maj ) ; a = ai ; ma = maj ; (les
deux orientations de ai sont testes)
si (rapM ax > 0) alors
placer lobjet a dans la surface maximale ma , et mettre
jour la liste Lma ;
A = A \ {a } ;
sinon
rinitialiser Lma avec un bin ; nbBin := nbBin + 1 ;
si (nbBin < nbBinM in) alors
nbBinM in := nbBin ;
retourner nbBinMin ;
4.6. CONCLUSION
Classe
I
Problme
HxW
10x10
II
30x30
III
40x40
IV
100x100
100x100
VI
300x300
VII
100x100
VIII
100x100
IX
100x100
100x100
75
avec prtraitement
sans prtraitement
n nbBin CP U M Amax M Aavg nbBin CP U M Amax M Aavg
20
6.6
0,003
3.0
2.3
6.6
0,001
3.0
2.9
40
12.9 0,067
4.0
2.7
12.9 0,078
4.0
2.9
60
19.5 0,001
3.0
2.4
19.5 0,006
4.0
2.8
27.0 0,110
4.0
2.4
27.0 0,123
4.0
2.9
80
100 31.3 0,321
6.0
3.6
31.3 0,361
6.0
3.7
1.0
0,001
11.0
8.9
1.0
0,001
11.0
9.4
20
40
1.9
0,003
10.0
7.5
1.9
0,001
10.0
8.3
60
2.5
0,000
12.0
9.0
2.5
0,006
10.0
8.6
3.1
0,015
11.0
8.8
3.1
0,007
14.0
8.6
80
100
3.9
0,024
11.0
9.2
3.9
0,026
10.0
8.5
20
4.7
0,001
5.0
3.4
4.7
0,000
5.0
3.9
9.4
0,126
7.0
3.9
9.4
0,143
7.0
4.5
40
60
13.5 0,242
8.0
4.5
13.5 0,242
8.0
4.8
80
18.4 0,359
6.0
4.3
18.5 0,509
6.0
4.9
9.0
5.2
22.2 1,254
9.0
5.7
100 22.2 1,173
20
1.0
0,000
17.0
10.2
1.0
0,001
17.0
10.3
40
1.9
0,001
15.0
10.8
1.9
0,006
15.0
10.7
2.5
0,432
18.0
11.4
2.5
0,459
18.0
10.9
60
80
3.1
0,323
14.0
11.2
3.1
0,318
14.0
11.0
3.7
0,032
16.0
10.7
3.7
0,040
16.0
10.9
100
20
5.9
0,000
5.0
2.6
5.9
0,000
5.0
3.9
40
11.4 0,067
7.0
2.8
11.4 0,071
7.0
4.4
17.4 0,334
6.0
3.3
17.4 0,429
6.0
4.7
60
80
23.9 0,228
6.0
3.4
23.9 0,400
6.0
4.7
100 27.9 1,154
7.0
4.7
27.9 1,298
7.0
5.5
1.0
0,000
12.0
10.5
1.0
0,000
12.0
10.5
20
40
1.7
0,304
25.0
15.4
1.7
0,312
25.0
15.4
60
2.1
0,009
20.0
13.8
2.1
0,006
20.0
12.8
3.0
0,012
14.0
12.0
3.0
0,015
15.0
12.4
80
100
3.2
0,300
16.0
13.9
3.2
0,482
16.0
12.8
20
5.2
0,065
5.0
4.0
5.2
0,079
5.0
4.3
10.4 0,276
7.0
5.0
10.4 0,309
7.0
4.9
40
60
14.7 0,537
7.0
5.6
14.7 0,615
7.0
5.5
80
21.2 1,228
7.0
5.6
21.2 1,317
7.0
5.6
7.0
5.3
25.3 1,928
7.0
5.3
100 25.3 1,789
20
5.3
0,057
6.0
4.0
5.3
0,063
5.0
4.0
10.4 0,342
7.0
5.2
10.4 0,354
7.0
5.2
40
60
15.0 0,632
7.0
5.4
15.0 0,704
7.0
5.4
80
20.8 1,127
7.0
5.3
20.8 1,168
7.0
5.3
9.0
5.8
25.7 1,904
9.0
5.8
100 25.7 1,812
20
14.3 0,000
0.0
0.0
14.3 0,001
4.0
2.4
40
27.5 0,000
1.0
0.6
27.5 0,003
4.0
2.5
43.5 0,000
1.0
0.5
43.5 0,004
4.0
2.9
60
80
57.3 0,000
1.0
0.8
57.3 0,012
4.0
3.2
100 69.3 0,000
1.0
0.7
69.3 0,014
4.0
2.7
4.1
0,039
9.0
3.9
4.1
0,040
9.0
5.2
20
40
7.3
0,120
6.0
4.5
7.3
0,146
7.0
5.4
60
10.1 0,473
8.0
5.9
10.1 0,533
8.0
5.9
12.8 0,786
8.0
6.8
12.8 0,876
9.0
6.8
80
100 15.8 1,001
9.0
6.9
15.8 1,089
10.0
7.1
76
Classe
I
Problme
WxH
10x10
II
30x30
III
40x40
IV
100x100
100x100
VI
300x300
VII
100x100
VIII
100x100
IX
100x100
100x100
n
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
IM A
G
CP U
1,0000 0,003
1,0157 0,067
1,0000 0,001
1,0037 0,110
1,0064 0,321
1,0052 0,100
1,0000 0,001
1,0000 0,003
1,0000 0,000
1,0000 0,015
1,0000 0,024
1,0000 0,009
1,0000 0,001
1,0330 0,126
1,0227 0,242
1,0166 0,359
1,0326 1,173
1,0210 0,380
1,0000 0,000
1,0000 0,001
1,0870 0,432
1,0333 0,323
1,0000 0,032
1,0241 0,158
1,0000 0,000
1,0088 0,067
1,0296 0,334
1,0127 0,228
1,0257 1,154
1,0154 0,357
1,0000 0,000
1,1333 0,304
1,0000 0,009
1,0000 0,012
1,0000 0,300
1,0267 0,125
1,1064 0,065
1,0722 0,276
1,0500 0,537
1,0653 1,228
1,0586 1,789
1,0705 0,779
1,0816 0,057
1,0833 0,342
1,0638 0,632
1,0558 1,127
1,0620 1,812
1,0693 0,794
1,0000 0,000
1,0000 0,000
1,0000 0,000
1,0000 0,000
1,0000 0,000
1,0000 0,000
1,0513 0,039
1,0429 0,120
1,0632 0,473
1,0492 0,786
1,0327 1,001
1,0478 0,484
TS TP
G CP U
1.05 18.00
1.04 30.02
1.04 34.00
1.06 48.08
1.03 47.92
1.044 35.60
1.00 0.01
1.10 0.01
1.00 0.01
1.03 6.10
1.00 0.01
1.026 1.23
1.06 18.00
1.09 42.17
1.08 54.15
1.07 60.07
1.07 60.18
1.074 46.91
1.00 0.01
1.00 0.01
1.10 0.09
1.07 12.00
1.03 6.00
1.040 3.62
1.04 12.01
1.07 42.00
1.06 45.23
1.07 54.14
1.07 60.12
1.062 42.70
1.00 0.01
1.40 0.03
1.05 0.05
1.00 0.01
1.07 12.00
1.104 2.42
1.11 30.00
1.08 48.06
1.06 59.45
1.10 60.12
1.08 60.36
1.086 51.60
1.10 30.01
1.10 54.22
1.07 56.17
1.08 60.11
1.09 60.14
1.088 52.13
1.00 0.06
1.01 18.85
1.01 18.03
1.01 30.51
1.01 36.86
1.008 20.86
1.12 6.01
1.06 24.01
1.06 30.44
1.05 39.04
1.05 43.38
1.068 28.58
HBP
G
CP U
1.0000 0.005
1.0162 0.127
1.0000 0.028
1.0036 0.253
1.0093 1.011
1.0058 0.285
1.0000 0.005
1.0000 0.226
1.0000 0.021
1.0000 0.336
1.0000 0.054
1.0000 0.128
1.0000 0.017
1.0488 0.361
1.0241 0.599
1.0178 1.104
1.0354 2.817
1.0252 0.980
1.0000 0.006
1.0000 0.027
1.1000 2.775
1.0667 4.081
1.0333 3.647
1.0400 2.107
1.0000 0.011
1.0254 0.330
1.0393 1.790
1.0213 2.238
1.0325 5.471
1.0237 1.968
1.0000 0.017
1.2000 3.368
1.0000 0.207
1.0000 0.308
1.0667 11.089
1.0533 2.998
1.1100 0.198
1.0833 1.142
1.0769 3.027
1.1008 5.356
1.0841 8.133
1.0910 3.571
1.0800 0.182
1.0929 1.280
1.0923 3.158
1.0816 5.439
1.0868 8.150
1.0867 3.642
1.0000 0.017
1.0000 0.077
1.0000 0.199
1.0000 0.389
1.0000 0.568
1.0000 0.250
1.1000 0.125
1.0486 0.445
1.0672 2.094
1.0492 3.363
1.0455 5.540
1.0621 2.313
AT S BP
G
CP U
1.03 0.13
1.04 4.11
1.04 4.27
1.06 0.97
1.03 1.20
1.040 2.14
1.00 0.13
1.00 1.46
1.00 1.14
1.00 22.61
1.00 4.25
1.000 5.92
1.02 11.35
1.09 0.38
1.08 64.85
1.07 9.94
1.06 68.85
1.064 30.94
1.00 0.14
1.00 0.25
1.05 28.80
1.07 36.16
1.03 9.19
1.030 14.91
1.04 1.31
1.06 41.21
1.06 74.59
1.06 143.01
1.05 196.23
1.054 91.27
1.00 0.17
1.10 5.97
1.00 25.92
1.00 0.42
1.07 7.64
1.034 8.02
1.11 0.77
1.07 99.28
1.04 613.98
1.08 259.78
1.07 231.66
1.074 241.09
1.10 1.34
1.08 77.91
1.07 51.74
1.07 529.40
1.08 232.88
1.080 178.65
1.00 0.26
1.01 1.25
1.01 2.54
1.01 1.65
1.01 52.69
1.008 11.68
1.12 0.36
1.06 3.93
1.06 235.17
1.05 78.27
1.04 269.68
1.066 117.48
4.6. CONCLUSION
77
Classe
I
Problme
WxH
10x10
II
30x30
III
40x40
IV
100x100
100x100
VI
300x300
VII
100x100
VIII
100x100
IX
100x100
100x100
n
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
nombre de bins
IM A HBP AT S BP
6.6
6.6
6.6
12.9 12.9
12.9
19.5 19.5
19.5
27.0 27.0
27.0
31.3 31.3
31.4
19.46 19.46
19.48
1.0
1.0
1.0
1.9
1.9
1.9
2.5
2.5
2.5
3.1
3.1
3.1
3.9
3.9
3.9
2.48 2.48
2.48
4.7
4.7
4.7
9.4
9.4
9.4
13.5 13.5
13.6
18.4 18.4
18.6
22.2 22.2
22.3
13.64 13.64
13.72
1.0
1.0
1.0
1.9
1.9
1.9
2.5
2.5
2.4
3.1
3.2
3.2
3.7
3.8
3.8
2.44 2.48
2.46
5.9
5.9
5.9
11.4 11.5
11.4
17.4 17.5
17.5
23.9 24.0
23.9
27.9 28.0
28.0
17.30 17.38
17.34
1.0
1.0
1.0
1.7
1.7
1.6
2.1
2.1
2.1
3.0
3.0
3.0
3.2
3.4
3.4
2.20 2.24
2.22
5.2
5.2
5.2
10.4 10.5
10.4
14.7 15.1
14.6
21.2 21.8
21.3
25.3 25.9
25.5
15.36 15.70
15.40
5.3
5.3
5.3
10.4 10.5
10.4
15.0 15.4
15.1
20.8 21.3
20.8
25.7 26.3
26.0
15.44 15.76
15.52
14.3 14.3
14.3
27.5 27.5
27.6
43.5 43.5
43.5
57.3 57.3
57.3
69.3 69.3
69.3
42.38 42.38
42.40
4.1
4.1
4.1
7.3
7.3
7.3
10.1 10.0
9.9
12.8 12.8
12.8
15.8 16.0
15.9
10.02 10.04
10.00
Tableau 4.3 Comparaison du nombre de bins moyen utiliss pour ranger lensemble de
tous les objets.
Chapitre 5
5.1
Introduction
5.2
79
80
initiale) explorent les solutions voisines et mettent jour la solution courante suivant
une certaine stratgie dpendante de la mthode utilise. Cest le cas des mthodes
tabou et le recuit simul (voir [1] pour une introduction plus complte sur les mtaheuristiques).
Etant donn un problme combinatoire rsoudre, soit E lensemble des solutions
ralisables. Nous supposons, sans perte de gnralit, que le problme rsoudre
consiste minimiser une fonction f dpendante de la solution :
minf (S)
SE
Nous dcrivons brivement dans la suite les notions de base dune mthode tabou.
Transformation lmentaire et voisinage. Une transformation est dfinie
de la faon suivante :
Dfinition 5.1. Une transformation est une opration qui permet de modifier une
solution S de E en une autre solution S = (S) de E.
Une transformation est dite lmentaire (ou locale) si elle ne modifie que faiblement la structure. Une transformation locale transforme une solution en une autre
solution dans laquelle on peut reconnatre des lments, ou une structure particulire
propre la solution initiale.
Le voisinage dune solution donne peut tre dfini laide des transformations
locales :
Dfinition 5.2. Soit un ensemble de transformations locales L. Le voisinage N (S)
dune solution S est lensemble des solutions que lon peut obtenir en appliquant une
fonction L S.
Le choix du voisinage (la transformation lmentaire appliquer) est trs important, il affecte fortement la qualit de la solution obtenue.
Point initial. Dans une mthode tabou, on doit partir dune solution initiale. Le
plus souvent, cette solution est donne par une heuristique de rsolution approprie
au problme rsoudre.
Mise jour de la solution courante : chapper aux optima locaux. Un
optimum local est dfini de la faon suivante :
b f (S)
b f (S).
Dfinition 5.3. Un optimum local Sb est tel que S N (S),
81
pour mettre jour la solution courante SC , est celle qui minimise la fonction
dvaluation parmi les voisins SC :
S N (SC ), f (S ) f (S).
(5.1)
82
dun algorithme tabou. Elle consiste effectuer une transformation non-locale sur la
solution courante. On obtient donc une nouvelle solution, qui a de grandes chances
de ne plus tre proche de loptimum local, tout en conservant des proprits de la
solution prcdente. Une autre mthode pus radicale, consiste tirer alatoirement
une solution, compltement nouvelle, partir de laquelle on relance la mthode
tabou. On peut se rfrer [35] pour une tude plus dtaille des mthodes tabou.
Nous proposons maintenant un nouvel algorithme tabou pour la rsolution du
problme 2BP dans le cas non-orient.
5.3
Dans cette section nous dcrivons un nouvel algorithme tabou pour le 2BP |R
base sur la notion de configurations quivalentes. Cet algorithme est not T S EC
(Tabu Search algorithm avoiding Equivalent Configurations). Nous commenons par
la description du voisinage considr.
5.3.1
Voisinage
5.3.2
83
84
a3
a4
a6
a5
a7
a1
B(F, 1)
a2
a8
B(F, 2)
B(F, 3)
(a) Configuration F .
a6
a1
a7
a2
a4
B(G, 1)
a5
a3
B(G, 2)
a8
B(G, 3)
(b) Configuration G.
85
des objets placs dans le bin j et BS (ai ) reprsente le bin contenant ai dans la
configuration S. Lalgorithme 3 est constitu dune boucle principale et une boucle
intrieure. La boucle principale est rpte nbBin(F ) fois au plus. A chaque itration
j de la boucle principale, la boucle intrieure vrifie que les objets {aj2 , ..., ajt }
sont placs dans le mme bin qui contient aj1 dans la configuration G (aj1 est un
reprsentant du bin B(F, j)). La boucle intrieure est rpte |B(F, j))| fois au plus,
puisque chaque objet plac dans le bin B(F, j) est visit une seule fois au plus. A la
fin de litration j de la boucle principale, deux cas se prsentent. Dans le premier
cas, F lag = 0 cela signifie quil existe au moins un objet aju (2 u t) tel que
aj1 et aju sont placs dans le mme bin dans la configuration F et ils sont placs
dans des bins diffrents dans G. Les deux configurations sont par consquent non
quivalentes. Dans le deuxime cas, F lag = 1 ce qui signifie que tous les objets sont
placs dans le mme bin dans G et que les deux configurations sont quivalentes. La
P
)
complexit temporelle de lalgorithme 3 est alors en : nbBin(F
|B(F, j)| = n.
j=1
5.3.3
Heuristique de base
Dans cette section nous dcrivons lheuristique de base utilise dans lvaluation
des solutions. Cette heuristique consiste placer les objets dans un ordre prdfini.
Etant donn un ordre des objets, lheuristique range les objets un par un
de sorte minimiser localement le nombre de bins utiliss. Un critre heuristique
est utilis pour choisir la surface maximale disponible la plus adquate pour placer
lobjet en cours. Lobjet est plac dans la surface maximale retenue tel que son coin
bas-gauche concide avec le coin bas-gauche de la surface. Si aucune surface ne peut
contenir lobjet en cours, un nouveau bin est ajout la liste Lma des surfaces
maximales.
Le critre considr est le mme que celui utilis dans lheuristique IMA (section
4.4). Lobjet courant ai est donc plac dans la surface maximale qui, parmi les
surfaces qui peuvent le contenir, maximise un certain critre. Pour un objet ai et
une surface maximale ma donns, ce critre scrit :
q2 (dxi /wma )
q3 (dyi /hma )
q4 (wi2
2
h2i )/(wma
+
+
h2ma )
86
5.3.4
87
Fonction dvaluation
nbBin(S)
nbBin(SN )
min
j=1
max
jM inArea(SN )
Area(B(SN , j))
(5.2)
nbItem(B(SN , j))
o
M2 = n et M1 = nW H
Le voisin qui minimise la fonction dvaluation dcrite ci-dessus est utilis pour
la mise jour de la solution courante. Si plusieurs voisins ont la mme valeur du
cot minimal, lun deux est tir alatoirement suivant une loi uniforme pour mettre
jour la solution courante.
88
5.3.5
Etant donne une instance I rsoudre, notre mthode commence par chercher
une solution courante initiale. La solution initiale est donne par lheuristique IM A
propose dans le chapitre 4. Rappelons que, dans chaque tape de placement dun
objet, lheuristique IMA choisit le couple (objet placer, la surface qui va laccueillir)
ainsi que lorientation de lobjet. Lordre initial des objets correspond donc lordre
dans lequel IMA a choisi de les placer dans la dernire itration amliorante de
lheuristique.
Nous considrons une liste tabou conue comme une file de taille dtermine
exprimentalement. Dans nos rsultats exprimentaux la taille de la liste tabou
vaut min(10, n/4). Initialement, la liste est vide.
Ayant une solution courante SC correspondant un ordre donn C des objets,
nous explorons le voisinage de la solution courante. Tous les mouvements dinsertions
possibles sont tests (cf. Section 5.3.1). Chaque voisin est valu en appliquant
lheuristique de base dcrite dans la section 5.3.3. Le choix des valeurs des paramtres
(q1 , q2 , q3 , q4 ) du critre utilis dans lheuristique de base pour choisir la surface
la plus adapte pour ranger lobjet courant est dtermin exprimentalement. Il
consiste alterner avec les valeurs suivantes :
(0.25, 0.25, 0.25, 0.25).
(0.7, 0.2, 0.1, 0).
(0, 0.2, 0.1, 0.7).
La solution courante est mise jour par la solution voisine qui minimise la
fonction dvaluation dcrite dans la section 5.3.4.
Lobjet, dont linsertion a men la nouvelle solution courante (nouvel ordre
courant des objets), est ajout la liste tabou. Toute insertion de cet objet est
interdite tant quil figure dans la liste tabou. Le nombre ditrations durant lesquelles
lobjet est maintenu tabou est gal la taille de la liste tabou.
Cette procdure est rpte tant que la solution trouve ne correspond pas une
borne infrieure connue et que le temps de calcul na pas dpass un temps limite
(fix dans nos rsultats exprimentaux 120 secondes).
Plusieurs mouvements dinsertion mnent en pratique des configurations quivalentes la configuration courante. Il suffit, par exemple, de modifier les positions
des objets dans le bin sans modifier leurs affectations aux diffrents bins. Nous
rduisons le voisinage considr en excluant les configurations quivalentes la
solution courante, dans le but dacclrer la procdure dloignement dun optimum
local. Les versions adoptant le voisinage complet et rduit sont compares dans la
section suivante.
Notons que nous acceptons de mettre jour la solution courante par une solution voisine qui rsulte de linsertion dun objet tabou si cette insertion amliore
89
5.4
Rsultats exprimentaux
Dans cette section, nous rapportons les rsultats des tests de notre algorithme
tabou sur le benchmark propos dans [4] et [48] (cf. Section 2.4 pour une description
des instances).
Dans le tableau 5.1, nous comparons deux versions de lalgorithme tabou T S
EC dcrit dans la section 5.3.5 avec et sans prtraitements. Nous rappelons que le
voisinage considr dans T S EC est le voisinage rduit, les configurations quivalentes la solution courante ntant pas retenues comme candidates pour la mise
jour de la solution. Un temps limite de 120 secondes est choisi pour la rsolution
dune instance. Un deuxime critre darrt correspondant une borne infrieure
connue pour linstance rsoudre est considr. Nous montrons les rsultats qui
concernent le nombre de bins utiliss pour ranger lensemble des objets (nbBin),
le temps CPU correspondant lexcution de la mthode en secondes (CP U ), le
nombre maximum de surfaces maximales prsentes en une tape quelconque du
rangement (M Amax ) ainsi que le nombre moyen (M Aaverage ). Les valeurs correspondent la moyenne calcule pour chaque groupe de dix instances dune classe.
Pour la valeur M Amax , les rsultats affichs correspondent la valeur maximale
pour chaque groupe dinstances. La ligne intitule Average correspond la moyenne
calcule par classe. En se rfrant au tableau 5.1, nous constatons lavantage de la
version avec prtraitements, en effet cette version fournit des solutions meilleures
que la version sans prtraitements pour trois classes du benchmark (les classes 1,
3 et 10). Les deux versions sont presque quivalentes en terme du temps de calcul.
Remarquons que pour les deux versions, la valeur M Amax est en O(n). La version
avec prtraitement est retenue par la suite.
Dans le tableau 5.2, nous comparons la version T S EC avec celle qui permet
la mise jour dune solution courante par une configuration quivalente (T S).
Nous rapportons dans les rsultats le nombre de configurations quivalentes (donc
interdites) en moyenne par itration tabou de lalgorithme T S EC. Le tableau 5.2
montre que lalgorithme T S EC est strictement meilleur que T S. En effet il utilise
un nombre de bins plus petit pour les classes 1 et 7, et le mme pour les autres
90
Classe
I
Problme
HxW
10x10
II
30x30
III
40x40
IV
100x100
100x100
VI
300x300
VII
100x100
VIII
100x100
IX
100x100
100x100
avec prtraitement
sans prtraitement
n
nbBin CP U M Amax M Aavg nbBin CP U M Amax M Aavg
20
6.6
0.009
3
2.3
6.6
0.003
3
2.8
12.8 12.298
24
6.5
12.9
24.017
28
7.4
40
60
19.5
0.005
4
2.5
19.5
0.014
3
2.7
27.0
12.156
34
5.4
27.0
12.048
35
5.9
80
100
31.3
25.225
44
11.3
31.3
24.778
43
11.2
Average 19.44 9.938
44
5.600
19.46 12.172
43
6.000
1.0
0.000
10
8.7
1.0
0.000
10
8.6
20
40
1.9
0.008
10
7.8
1.9
0.002
9
7.2
60
2.5
0.005
10
8.2
2.5
0.008
10
8.0
3.1
0.017
13
9.5
3.1
0.009
11
9.0
80
100
3.9
0.022
11
8.9
3.9
0.025
12
9.5
Average 2.48
0.010
13
8.620
2.48
0.008
12
8.460
4.7
0.003
5
3.4
4.7
0.008
5
3.9
20
40
9.3
29.250
44
15.1
9.4
36.059
45
15.8
60
13.5
36.514
62
20.7
13.5
36.472
62
21.1
18.4 37.811
73
24.0
18.5
49.467
72
30.9
80
100
22.2
92.511
88
57.9
22.2
91.227
88
58.2
88
24.220 13.66 42.646
88
25.980
Average 13.62 39.217
20
1.0
0.000
15
9.9
1.0
0.000
15
9.6
40
1.9
0.003
14
10.2
1.9
0.002
14
9.9
2.5
24.156
54
18.1
2.5
24.211
53
17.9
60
80
3.1
12.967
67
16.2
3.1
13.139
67
16.2
100
3.7
0.042
16
10.6
3.7
0.044
16
11.0
7.434
67
13.000
2.44
7.478
67
12.920
Average 2.44
20
5.9
0.000
5
2.7
5.9
0.002
5
4.0
40
11.4
12.058
48
6.9
11.4
12.086
48
8.4
17.4
60.680
76
32.4
17.4
60.975
77
38.5
60
80
23.9
36.194
86
19.3
23.9
37.842
100
31.7
100
27.9
93.392
108
70.6
27.9
92.694
110
75.6
108
26.380 17.30 40.719
110
31.640
Average 17.30 40.464
20
1.0
0.003
14
11.9
1.0
0.000
14
11.9
40
1.7
24.030
42
20.3
1.7
24.126
42
20.2
2.1
0.009
19
12.6
2.1
0.013
18
12.6
60
80
3.0
0.016
16
12.4
3.0
0.017
17
12.5
3.2
0.477
17
14.0
3.2
0.487
17
13.8
100
Average 2.20
4.906
42
14.240
2.20
4.928
42
14.200
20
5.2
60.003
29
14.0
5.2
60.009
28
15.5
10.3
76.517
52
34.5
10.3
82.167
54
37.2
40
60
14.6
73.380
72
43.1
14.6
73.333
74
44.7
80
21.2 124.581
96
90.2
21.2 124.495
98
92.1
25.3 135.275
115
108.6
25.3 134.069
117
109.3
100
Average 15.32 93.951
115
58.080 15.32 94.814
117
59.760
20
5.3
48.006
28
12.3
5.3
48.009
29
13.4
10.4
96.255
51
40.4
10.4
96.388
53
41.3
40
60
15.0
97.302
73
56.6
15.0
97.442
73
56.9
80
20.8 112.964
96
79.5
20.8 114.280
97
81.6
25.7 134.120
113
108.0
25.7 135.488
113
108.8
100
Average 15.44 97.729
113
59.360 15.44 98.321
113
60.400
14.3
0.000
0
0.0
14.3
0.003
4
2.4
20
40
27.5
0.000
1
0.6
27.5
0.003
4
2.5
60
43.5
0.000
1
0.5
43.5
0.008
4
2.9
57.3
0.000
1
0.8
57.3
0.022
4
3.2
80
100
69.3
0.000
1
0.7
69.3
0.023
4
2.7
Average 42.38
0.000
1
0.520
42.38
0.012
4
2.740
4.1
24.003
25
7.3
4.1
24.006
25
8.4
20
40
7.3
36.056
45
16.1
7.3
36.106
49
17.5
60
9.9
52.063
65
37.3
10.0
62.348
66
40.0
12.8
73.492
85
51.3
12.8
74.200
86
51.5
80
100
15.8
67.216
102
51.3
15.8
63.956
100
51.2
102
32.660 10.00 52.123
100
33.720
Average 9.98 50.566
Classe
I
Problme
WxH
10x10
II
30x30
III
40x40
IV
100x100
100x100
VI
300x300
VII
100x100
VIII
100x100
IX
100x100
100x100
n
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
Bins
6.6
12.8
19.5
27.0
31.3
19.44
1.0
1.9
2.5
3.1
3.9
2.48
4.7
9.3
13.5
18.4
22.2
13.62
1.0
1.9
2.5
3.1
3.7
2.44
5.9
11.4
17.4
23.9
27.9
17.30
1.0
1.7
2.1
3.0
3.2
2.20
5.2
10.3
14.6
21.2
25.3
15.32
5.3
10.4
15.0
20.8
25.7
15.44
14.3
27.5
43.5
57.3
69.3
42.38
4.1
7.3
9.9
12.8
15.8
9.98
91
T S EC
CP U nbCE
0.009
0.00
12.298 31.00
0.005
0.00
12.156 64.34
25.225 103.09
9.938 39.68
0.000
0.00
0.008
0.00
0.005
0.00
0.017
0.00
0.022
0.00
0.010
0.00
0.003
0.00
29.250 37.05
36.514 64.25
37.811 133.15
92.511 278.55
39.217 102.60
0.000
0.00
0.003
0.00
24.156 27.56
12.967 19.22
0.042
0.00
7.434
9.36
0.000
0.00
12.058 11.49
60.680 114.84
36.194 75.83
93.392 281.24
40.464 96.68
0.003
0.00
24.030 14.78
0.009
0.00
0.016
0.00
0.477
0.00
4.906
2.96
60.003 22.41
76.517 109.41
73.380 165.48
124.581 358.55
135.275 584.32
93.951 248.04
48.006 31.17
96.255 142.36
97.302 178.62
112.964 297.66
134.120 503.86
97.729 230.74
0.000
0.00
0.000
0.00
0.000
0.00
0.000
0.00
0.000
0.00
0.000
0.00
24.003 7.44
36.056 34.84
52.063 98.25
73.492 169.12
67.216 189.43
50.566 99.82
Bins
6.6
12.9
19.5
27.0
31.3
19.46
1.0
1.9
2.5
3.1
3.9
2.48
4.7
9.3
13.5
18.4
22.2
13.62
1.0
1.9
2.5
3.1
3.7
2.44
5.9
11.4
17.4
23.9
27.9
17.30
1.0
1.7
2.1
3.0
3.2
2.20
5.2
10.4
14.7
21.2
25.3
15.36
5.3
10.4
15.0
20.8
25.7
15.44
14.3
27.5
43.5
57.3
69.3
42.38
4.1
7.3
9.9
12.8
15.8
9.98
TS
CP U
0.003
24.048
0.002
12.019
25.019
12.218
0.002
0.000
0.008
0.011
0.020
0.008
0.002
27.953
36.497
37.608
92.258
38.863
0.000
0.002
24.525
13.144
0.036
7.541
0.000
12.048
60.636
36.880
91.052
40.123
0.000
24.176
0.008
0.019
0.479
4.936
60.005
84.220
72.922
125.608
134.780
95.506
48.006
96.155
97.248
112.953
134.322
97.737
0.000
0.000
0.002
0.000
0.000
0.000
24.003
36.081
60.334
75.070
65.783
52.254
92
Classe
I
Problme
WxH
10x10
II
30x30
III
40x40
IV
100x100
100x100
VI
300x300
VII
100x100
VIII
100x100
IX
100x100
100x100
n
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
20
40
60
80
100
Average
IM A
Bins CP U
6.6 0,003
12.9 0,067
19.5 0,001
27.0 0,110
31.3 0,321
19.46 0,100
1.0 0,001
1.9 0,003
2.5 0,000
3.1 0,015
3.9 0,024
2.48 0,009
4.7 0,001
9.4 0,126
13.5 0,242
18.4 0,359
22.2 1,173
13.64 0,380
1.0 0,000
1.9 0,001
2.5 0,432
3.1 0,323
3.7 0,032
2.44 0,158
5.9 0,000
11.4 0,067
17.4 0,334
23.9 0,228
27.9 1,154
17.30 0,357
1.0 0,000
1.7 0,304
2.1 0,009
3.0 0,012
3.2 0,300
2.20 0,125
5.2 0,065
10.4 0,276
14.7 0,537
21.2 1,228
25.3 1,789
15.36 0,779
5.3 0,057
10.4 0,342
15.0 0,632
20.8 1,127
25.7 1,812
15.44 0,794
14.3 0,000
27.5 0,000
43.5 0,000
57.3 0,000
69.3 0,000
42.38 0,000
4.1 0,039
7.3 0,120
10.1 0,473
12.8 0,786
15.8 1,001
10.02 0,484
AT S T P
Bins CP U
6.6
0.13
12.9 4.11
19.5 4.27
27.0 0.97
31.4 1.20
19.48 2.14
1.0
0.13
1.9
1.46
2.5
1.14
3.1 22.61
3.9
4.25
2.48 5.92
4.7 11.35
9.4
0.38
13.6 64.85
18.6 9.94
22.3 68.85
13.72 30.94
1.0
0.14
1.9
0.25
2.4 28.80
3.2 36.16
3.8
9.19
2.46 14.91
5.9
1.31
11.4 41.21
17.5 74.59
23.9 143.01
28.0 196.23
17.34 91.27
1.0
0.17
1.6 5.97
2.1 25.92
3.0
0.42
3.4
7.64
2.22 8.02
5.2
0.77
10.4 99.28
14.6 613.98
21.3 259.78
25.5 231.66
15.40 241.09
5.3
1.34
10.4 77.91
15.1 51.74
20.8 529.40
26.0 232.88
15.52 178.65
14.3 0.26
27.6 1.25
43.5 2.54
57.3 1.65
69.3 52.69
42.40 11.68
4.1
0.36
7.3
3.93
9.9 235.17
12.8 78.27
15.9 269.68
10.00 117.48
Bins
6.6
12.8
19.5
27.0
31.3
19.44
1.0
1.9
2.5
3.1
3.9
2.48
4.7
9.3
13.5
18.4
22.2
13.62
1.0
1.9
2.5
3.1
3.7
2.44
5.9
11.4
17.4
23.9
27.9
17.30
1.0
1.7
2.1
3.0
3.2
2.20
5.2
10.3
14.6
21.2
25.3
15.32
5.3
10.4
15.0
20.8
25.7
15.44
14.3
27.5
43.5
57.3
69.3
42.38
4.1
7.3
9.9
12.8
15.8
9.98
T S EC
CP U
G
0.009 1,000
12.298 1,000
0.005 1,000
12.156 1,000
25.225 1,000
9.938 1,000
0.000 1,000
0.008 1,000
0.005 1,000
0.017 1,000
0.022 1,000
0.010 1,000
0.003 1,000
29.250 1,025
36.514 1,024
37.811 1.012
92.511 1.035
39.217 1.019
0.000 1,000
0.003 1,000
24.156 1,100
12.967 1.033
0.042 1,000
7.434 1,027
0.000 1,000
12.058 1,014
60.680 1,027
36.194 1,013
93.392 1,028
40.464 1,016
0.003 1,000
24.030 1,200
0.009 1,000
0.016 1,000
0.477 1,000
4.906 1,040
60.003 1,110
76.517 1,042
73.380 1,042
124.581 1,061
135.275 1,058
93.951 1,063
48.006 1,060
96.255 1,073
97.302 1,063
112.964 1,057
134.120 1,062
97.729 1,063
0.000 1,000
0.000 1,000
0.000 1,000
0.000 1,000
0.000 1,000
0.000 1,000
24.003 1,100
36.056 1,049
52.063 1,047
73.492 1,049
67.216 1,034
50.566 1,056
Opt
10
10
10
10
10
10
10
10
10
10
10
10
10
8
7
8
3
7.2
10
10
8
9
10
9,4
10
9
6
7
3
7
10
8
10
10
10
9.6
5
6
4
0
0
3
7
3
2
1
0
2.6
10
10
10
10
10
10
8
7
6
4
5
6
5.5. CONCLUSION
93
5.5
Conclusion
Conclusion
Nous avons trait dans cette thse le problme de bin-packing en deux dimensions
dans le cas non orient (2BP |R). Ce problme appartient la classe des problmes
NP-difficiles. Notre contribution concerne plus prcisment les prtraitements des
instances, les valuations par dfaut et la rsolution approche du problme. Nos
mthodes ont t testes exprimentalement sur les benchmarks de la littrature
[4, 48].
Nous avons propos trois prtraitements (, et ) sous forme de fonctions
identiquement ralisables (des fonctions qui, appliques une instance donne, ne
changent pas sa valeur optimale). Le premier prtraitement consiste valuer les espaces perdus dans le bin. Il utilise une variante du problme de sub-set sum applique
chaque dimension des objets. Les deux autres prtraitements consistent identifier
des sous-ensembles particuliers dans linstance et trouver leur rangement optimal.
Les trois prtraitements proposs sont complmentaires, leur application itrative a
permis de rduire la taille de nombreuses instances du benchmark de la littrature et
damliorer de faon significative la borne continue. Nous avons introduit la notion
dobjets orientation dpendante qui nous a servi dans le prtraitement . Lintrt
majeur de cette notion est de dfinir des sous-ensembles dobjets dont la possibilit
de rotation est contrainte sils sont placs dans un mme bin.
Nous avons aussi propos une nouvelle mthode dvaluation des bornes infrieures pour le 2BP |R. Toute borne infrieure propose pour le problme 2BP |O
peut servir lvaluation des bornes infrieures pour le 2BP |R. La nouvelle borne
infrieure LR
CJE utilise la borne de Carlier et al. [10] pour lvaluation par dfaut des
instances 2BP |O considres. Nous avons montr que LR
CJE domine thoriquement
les bornes de DellAmico et al. [19] et de Boschetti et Mingozzi [6]. La nouvelle borne
teste exprimentalement, permet damliorer strictement les bornes infrieures de
la littrature.
Nous avons galement propos une nouvelle mthode heuristique (IM A) pour la
rsolution des instances du problme tudi. Elle adapte une stratgie Best Fit pour
le placement des objets. Nous avons test notre heuristique avec les mthodes de
rsolution approche de la littrature (lheuristique HBP [6] et la mthode tabou
AT S BP [38]). Les rsultats obtenus en appliquant IM A dominent ceux de la
95
96
CONCLUSION
Bibliographie
97
98
Bibliographie
Bibliographie
99
100
Bibliographie
[36] E. Hadjiconstantinou et N. Christophides. An exact algorithm for general, orthogonal, two-dimensional knapsack problem. European Journal of Operational
Research, 83 :3956, 1995.
[37] M. Haouari et A. Gharbi. Fast lifting procedures for the bin packing problem.
Discrete Optimization, 2 :201218, 2005.
[38] J. Harwig et J.W. Barnes. An adaptive tabu search approach for 2-dimensional
orthogonal packing problems. to appear in Military Operations Research, 2006.
[39] Mhand Hifi. An improvement of viswanathan and bagchis exact algorithm
for constrained two-dimensional cutting stock. Computers and Operations
Research, 24 :727736, 1997.
[40] S. Jakobs. On genetic algorithms for the packing of polygons. European Journal
of Operational Research, 88 :165181, 1996.
[41] D. S. Johnson. Near optimal bin packing algorithms, 1973. Dissertation,
Massachussetts Institute of Technology, Cambridge, Massachussetts.
[42] M. Labb, G. Laporte, et H. Mercure. Capacitated vehicle routing on trees.
Ops. Res., 39(6) :1622, 1991.
[43] Z. Li et V. Milenkovic. Compaction and separation algorithms for non-convex
polygons and their applications. European Journal of Operational Research,
84 :539561, 1995.
[44] A. Lodi, S. Martello, et D. Vigo. Neighborhood search algorithm for the
guillotine non-oriented two-dimensional bin packing problem. Meta-Heuristics :
Advances and Trends in Local Search Paradigms of Optimization, S. Voss, S.
Martello, I.H. Osman, and C. Roucairol, (eds.), kluwer Academic Publishers,
Boston :125139, 1998.
[45] A. Lodi, S. Martello, et D. Vigo. Heuristic and metaheuristic approaches for a
class of two-dimensional bin packing problems. INFORMS J. Comput., 11 :345
357, 1999.
[46] A. Lodi, S. Martello, et D. Vigo. Recent advances on two-dimensional bin
packing problems. Discrete Applied Mathematics, 123 :379396, 2002.
[47] S. Martello et P. Toth. Lower bounds and reduction procedure for the bin
packing problem. Discrete Applied Mathematics, 28 :5970, 1990.
Bibliographie
101
[48] S. Martello et D. Vigo. Exact solution of the two-dimensional finite bin packing
problem. Management Sci., 44 :388399, 1998.
[49] S. Ben Messaoud. Caractrisation, Modlisation et Algorithmes pour des
Problmes de Dcoupe Guillotine. PhD thesis, Universit de Technologie de
Troyes, France, 2005.
[50] G. Scheithauer. Equivalence and dominance for problems of optimal packing
of rectangles. Ricerca Operativa, 83 :334, 1997.
[51] G. Wscher, H. Haussner, et H. Schumann. An improved typology of cutting
and packing problems. European Journal of Operational Research, to appear,
2006.
Titre :
Le problme de bin-packing en deux-dimensions, le cas non-orient : rsolution approche et bornes infrieures
Rsum :
Notre travail porte sur le problme de bin-packing qui consiste dterminer le
nombre minimum de grands rectangles (bins) ncessaires pour ranger un ensemble de
petits rectangles (objets). Ce problme doptimisation combinatoire est NP-difficile
au sens fort. Nous proposons des prtraitements des objets permettant la valorisation
des espaces perdus dans les bins et la diminution de la taille du problme rsoudre.
Nous proposons une nouvelle mthode dvaluation de bornes infrieures tenant
compte de la possibilit de tourner les objets de 90 degrs. Nous procdons une
rsolution approche du problme grce deux nouvelles mthodes : une heuristique
et un algorithme de recherche tabou.
Mots-cls :
optimisation combinatoire, bin-packing, mta-heuristiques, bornes infrieures.
Title:
The two-dimensional bin-packing problem, the non-oriented case : resolution algorithms and lower bounds.
Abstract:
We treat the bin-packing problem which involves packing a given set of rectangles
(items) into a minimum number of larger identical rectangles called bins. This combinatorial problem is strongly NP-hard. We propose pretreatments that allow the
valorization of the lost areas in the bins and the reduction of the size problem. We
attempt the resolution of the problem by computing lower and upper bounds. We
propose a new scheme of computing lower bounds taking into account the possibility
of rotating the items by 90 degrees. We propose a new heuristic method and a new
tabu search algorithm for computing upper bounds.
Key-words:
combinatorial optimization, bin-packing, meta-heuristics, lower bounds.
102