Vous êtes sur la page 1sur 18

20/05/2015

Universit Abdelmalek Essadi


Facult Polydisciplinaire de Ttouan

Programmation linaire en
nombres entiers
Prof. M. EL MEROUANI
Dpartement de Statistique et Informatique
Appliques la Gestion

Mthode du Branch & Bound:


Exemple illustratif
Soit le problme
Son problme relax
linaire en nombres
(P0R) est:
entiers (P0) suivant:
Min Z=4x1-6x2 (P0R)
Min Z(x)
0
(P ) s.. x1+x21
s.. xF
x1+3x29
3x1+x215 F
x 1,x20
x 1,x2 entiers
Prof. Mohamed El Merouani

20/05/2015

Mthode du Branch & Bound:


Exemple illustratif
Initialisation:
On rsout (P0R) par la mthode graphique (ou
le simplexe): x*=(1,5 ; 2,5 ) et ZR*=-9
Cette solution tant non entire, donc non
ralisable pour (P0). Mais, nous pouvons en
dduire une borne infrieure de Z* de (P0).
En effet, (P0R) tant une relaxation de (P0),
donc
ZR*=-9Z*.
Posons Zs=+
Prof. Mohamed El Merouani

Mthode du Branch & Bound:


Exemple illustratif
Sparation : Cette tape consiste sparer le
domaine ralisable de (P0) en deux sousensembles dont aucun ne devra contenir la
solution optimale de (P0R).
Cette sparation va se faire par rapport lune
des variables, dite variable de sparation, qui
ne respecte pas la contrainte dintgrit qui lui
est associe dans le problme (P0).
Prof. Mohamed El Merouani

20/05/2015

Mthode du Branch & Bound:


Exemple illustratif (Sparation)
Nous choisissons de sparer sur la variable x1
x1[x1*] ou x1[x1*]+1
cest--dire
x11
ou x12
ce qui dfinit deux problmes candidats que
nous plaons dans la liste:
Min Z(x)
(P1)

s..

Min Z(x)

xF
ou
x11
x1,x2 entiers

(P2)

s.. xF
x12
x1,x2 entiers

Prof. Mohamed El Merouani

Mthode du Branch & Bound:


Exemple illustratif
Supposons avoir choisi le problme candidat (P1)

valuation:
en relaxant les contraintes
dintgrit du problme (P1), nous obtenons le
problme candidat relax et sa solution
optimale:
Min Z(x)
(P1R)

s.. xF
x11

de solution optimale x1*=1 ; x2*=2


ZR*=-8

Prof. Mohamed El Merouani

20/05/2015

Mthode du Branch & Bound:


Exemple illustratif (valuation)
La solution optimale de ce sous-programme tant
entire, elle est donc aussi optimale de (P1).
Cette solution constitue donc une solution
ralisable pour le problme (P0) et la valeur -8
constitue une borne suprieure de la valeur
optimale de (P0): Zs=-8.
Cette solution est donc candidate tre une
solution optimale de (P0). Cela dpendra des
rsultats de la rsolution du 2me problme
candidat (P2).
Prof. Mohamed El Merouani

Mthode du Branch & Bound:


Exemple illustratif (valuation)
Min Z(x)
(P2R) s..
xF
x12

de solution optimale
x1*=2
X2*=7/3=2.33
Z*R=-6

Prof. Mohamed El Merouani

20/05/2015

Mthode du Branch & Bound:


Exemple illustratif
Strilisation: La solution optimale de (P2R) est
non entire, donc non ralisable pour le
problme (P0).
Normalement, nous devons continuer notre
recherche de nouvelles solutions possibles en
sparant sur la composante non entire
x2=2.33 de cette solution
x2[2.33]=2
ou x2 [2.33]+1=3
Prof. Mohamed El Merouani

Mthode du Branch & Bound:


Exemple illustratif
Nous obtenons les deux problmes candidats:
Min Z(x)
(P3)

s..

xF
x22
x1,x2 entiers

Min Z(x)
(P4)

s..

xF
x23
x1,x2 entiers

En relaxant les contraintes dintgrit, nous obtenons


les deux problmes candidats relaxs associs:
Min Z(x)

Min Z(x)
(P3R)

xF
x22
x1*=1, x2*=2
ZR*=-8

s..

(P4R)

xF
x23
Non-ralisable

s..

10

20/05/2015

Mthode du Branch & Bound:


Exemple illustratif
La solution optimale du premier problme est
entire et donc aussi une solution optimale du
problme (P0) puisque le deuxime sousprogramme nest pas ralisable.

Prof. Mohamed El Merouani

11

Algorithme du Branch & Bound


Reprenons le problme linaire en nombres
entiers et le problme linaire continu
correspondant:
Min Z(X)
(PLE) s.

Min Z(X)
(PLC) s.

X F
X entier

X F

Prof. Mohamed El Merouani

12

20/05/2015

Algorithme du Branch & Bound:


0.Initialisation: Au dpart, la liste contient un
seul problme candidat (PLE).
Rsoudre le (PLC) associ.
Si cette solution est ralisable pour (PLE), alors
la procdure sarrte. Cette solution est
optimale pour (PLE).
Sinon, identifier une borne suprieure Zs de la
fonction conomique de (PLE).
Prof. Mohamed El Merouani

13

Algorithme du Branch & Bound:


1.Sparation : Choisir lune des composantes
non-entires xj* de la solution du (PLC).
Partitionner le domaine ralisable en deux
sous-ensembles en ajoutant lune des
contraintes : xj[xj*]
ou xj[xj*]+1
Nous plaons les deux nouveaux sousproblmes dans la liste.

Prof. Mohamed El Merouani

14

20/05/2015

Algorithme du Branch & Bound:


2.Choix du (PC): Si la liste est vide, alors nous
arrtons la procdure:
Si au moins une solution ralisable de (P) a t
rencontre, alors nous concluons que le point
incumbent est une solution optimale de (P).
Autrement, nous concluons que le problme (P)
est non-ralisable.
Sinon, choisir, selon un critre convenable, un
(PC) dans la liste et considrer (PCR), le problme
candidat relax des contraintes dintgrit.
Prof. Mohamed El Merouani

15

Algorithme du Branch & Bound:


3.valuation:
Dterminer une borne infrieure Zi de la
fonction conomique du (PCR).
La valeur optimale du sous-problme relax
constitue une borne infrieure de la valeur de
la fonction conomique de ce sous-problme.

Prof. Mohamed El Merouani

16

20/05/2015

Algorithme du Branch & Bound:


4.Strilisation:
(a) Si le (PCR) nest pas ralisable alors retourner en 2.
(b) Sinon, si ZiZs alors retourner en 2.
(c) Sinon (Zi<Zs), si Zi est atteinte en un point entier
ralisable alors ce point est incumbent. Poser Zs=Zi et
retourner en 2.
Dans chacun de ces trois cas, on dira que le (PC) est
strilis.
5.Test: Si tous les sous-problmes sont striliss, on arrte
et le point incumbent est optimale pour (PLE).
Sinon retourner 1.
Prof. Mohamed El Merouani

17

Exemple
Considrons lexemple du problme de
programmation linaire en nombres entiers
suivant, auquel nous allons appliquer la
mthode de Branch & Bound:
(PLE)
s..

Min Z=3x1-7x2-12x3
3x1+6x2+8x312
6x1 3x2+7x38
6x1+3x2+3x35
x1, x2, x30
x1, x2, x3 entiers

Prof. Mohamed El Merouani

18

20/05/2015

Considrons le problme linaire continu (PLC)


associ (PLE):
(PLC) s..

Min Z
(x1, x2, x3)F

Lors de la rsolution de (PLE) en appliquant la


mthode de B. & B., on aura rsoudre
diffrents sous-problmes linaires continus.
Pour rsumer les calculs intermdiaires, il est
pratique de reprsenter la rsolution dun sousproblme par un nud o napparaissent que
les valeurs de Z et des variables non nulles.
Prof. Mohamed El Merouani

19

Par exemple, la solution de (PLC) peut tre reprsente


par:
X=(0; 10/33 ;14/11)t
Z=574/33

Afin de simplifier la notation, on remplace lcriture


fractionnelle par lcriture dcimale. Ce nud peut alors
avoir la forme suivante:
X=(0; 0.3; 1.3)t
Z=17.4

Une arborescence, qualifie aussi darbre dnumration,


sera alors dfinie o le premier nud, dit le nud pre,
est constitu du problme relax (PLC).
Prof. Mohamed El Merouani

20

10

20/05/2015

Chaque arc de larborescence reprsente un problme


dfini par le problme prcdent augment de la
contrainte associ larc. Par contre, la solution
optimale et la valeur optimale dun problme seront
reprsentes par le nud qui termine cet arc.
Initialisation:
La solution optimale de (PLC),
x=(0; 10/33; 14/11)t est non ralisable.
La solution x=0 est une solution ralisable de (PLE),
donc Zs=Z0=0 constitue une borne suprieure de la
fonction conomique. Ainsi la solution x=0 est un point
incumbent.
1re itration:
1. Sparation: en branchant sur la composante x2 et en
ajoutant lune des deux contraintes: x20 ou x21, on a
21

les deux sous-problmes ayant la mme


fonction objectif que (PLC):
(P1)

s..

Min Z(x)
xF
x20
x entier

(P2)

s..

Min Z(x)
xF
x21
x entier

La liste contient donc deux sous-problmes (P1)


et (P2) .
Dbut Zs=0
X=(0; 0.3; 1.3)t
Z=17.4
x20

x21
22

11

20/05/2015

2. Tests et choix du (PC): la liste ntant pas vide,


nous choisissons comme (PC), le sousproblme (P1) et nous considrons le
problme candidat relax des contraintes
dintgrit:
(PCR) s..

Min Z(x)
xF
x20

3. valuation:

(PCR) admet comme solution:


x=(0; 0; 8/7)t
Zi=96/7
Une borne infrieure du (PC) est donne par
la valeur optimale Zi de (PCR).

23

4. Strilisation: aucun des trois critres de


strilisation ne peut tre appliqu pour
striliser ce sous-problme. En effet,
(a) F(PCR)
(b) Zi<Zs
(c) La solution optimale de (PCR) nest pas
entire donc nest pas ralisable.
5. Retourner en 1. car le sous-problme
demeure non strilis.
Fin de la premire itration
Prof. Mohamed El Merouani

24

12

20/05/2015

Prsentation de larborescence de B. & B.:


Dbut Zs=0
X=(0; 0.3; 1.3)t
Z=17.4
1

x20
X=(0; 0; 1.1)t
Z=13.7

X=(0,7; 1; 1)t
Z=17

x32

Strilis (a)

Strilis (c) Zs=-12 et le


point incumbent est (0,0,1)

X=(3.1; 3.6; 0)t


Z=15.6
x23

X=(2; 3; 0)t
Z=15
Strilis (c) Zs=-15 et le
point incumbent est (2,3,0)

x10

X=(1; 1.3; 0.9)t


Z=16.8

X=(0; 0; 1)t
Z=12

x30

x11

x31

Non ralisable

x21

x30

x31

Non ralisable
Strilis (a)
25

x31
Non ralisable
Strilis (a)

x24
Non ralisable
Strilis (a)

Tous les sous-ensembles sont striliss, donc le dernier


point incumbent est une solution optimale de (PLE)
Prof. Mohamed El Merouani

26

13

20/05/2015

Remarque:
La stratgie utilise est FIFO ou la stratgie
dexploration en largeur dabord (Breadthfirst).
Au lieu de cette stratgie, nous aurons pu
choisir la stratgie dexploration en
profondeur dabord, connue aussi sous le nom
de Depth-firt ou encore LIFO .

Prof. Mohamed El Merouani

27

Arborescence de B. & B. en utilisant la stratgie LIFO (Depth-First):


Dbut Zs=0
X=(0; 0.3; 1.3)t
Z=17.4
x20
X=(0; 0; 1.1)t
Z=13.7
Strilis (b)

x21
X=(0.7; 1; 1)t
Z=17
x11

x10

X=(1; 1.3; 0.9)t


Z=16.8
x30

x31

Non ralisable
Strilis (a)
28

14

20/05/2015

x30

X=(3.1; 3.6; 0)t


Z=15.6
x23

X=(2; 3; 0)t
Z=15
Strilis (c) Zs=-15 et le
point incumbent est (2,3,0)

x31
Non ralisable
Strilis (a)

x24
Non ralisable
Strilis (a)

Tous les sous-ensembles sont striliss, donc le dernier


point incumbent est une solution optimale de (PLE)
Prof. Mohamed El Merouani

29

Remarque:
Nous constatons, quavec la stratgie LIFO, la
solution optimale est obtenue en rsolvant
moins de problmes candidats quavec la
stratgie FIFO.
Ceci nest toutefois pas toujours le cas. Quand
mme, la stratgie FIFO est peu utilise en
pratique.

Prof. Mohamed El Merouani

30

15

20/05/2015

Le calcul dune solution optimale dun


PC intermdiaire:
Lors de lapplication de la mthode de B. &B., la
recherche de la solution optimale du premier
problme se fait par lalgorithme du Simplexe.
Aprs une sparation selon une variable x, on
ajoute aux contraintes du (PC) une contrainte de
la forme x[x*] sur un arc de larborescence et
une contrainte de la forme x[x*]+1 sur lautre.
Donc, les modles linaires continus associs aux
deux nuds de branchement diffrent chacun de
prcdent par une seule contrainte.
Prof. Mohamed El Merouani

31

Le calcul dune solution optimale dun


PC intermdiaire:
Sil fallait reprendre toutes les itrations du
Simplexe pour trouver une solution optimale
des sous-problmes, lvolution de la
mthode B. & B. dans la suite des sparations
effectuer serait fort ralentie.
Heureusement, il est possible dutiliser le
calcul post-optimale pour retrouver un
nouveau optimum des sous-problmes.
Prof. Mohamed El Merouani

32

16

20/05/2015

Bibliographie:
Y. Benadada & A. El Hilali
Alaoui :Programmation Mathmatique, de la
modlisation la rsolution, Edition Kawtar
Print, Rabat, 2012.
Y. Nobert, R. Ouellet & R. Parent: La
recherche oprationnelle, Edition Gatan
Morin, 2me dition, 1999.

Prof. Mohamed El Merouani

33

Exercice 1
Considrons le programme (vu dans le cours):

s..

Min Z=3x1-7x2-12x3
3x1+6x2+8x312
6x1 3x2+7x38
6x1+3x2+3x35
x1, x2, x30
x1, x2, x3 entiers

En utilisant la stratgie en largeur dabord


(Breadth-first) rsoudre le problme:
a) En branchant sur x1 au lieu de x2 litration 5.
b) En branchant sur x2 au lieu de x3 litration 4.
c) En branchant sur x3 au lieu de x2 litration 1.
Prof. Mohamed El Merouani

34

17

20/05/2015

Exercice 2
Utiliser la mthode de Branch & Bound pour rsoudre les
problmes suivants:
a) Min Z(x)= x1 2x2

s..

x1+x210
15x1+16x2240
x1 et x2 non ngatives et entires

b) Min Z(x)= 3x1 3x2+13x3

s..

3x1+6x2+7x38
6x13x2+7x38
xj0 et entires, j=1,2,3.

c) Min Z(x)= 3x1 5x2 7x3

s..

3x1+6x2+7x38
6x13x2+7x38
xj0 et entires, j=1,2,3.
Prof. Mohamed El Merouani

35

Exercice 3
En appliquant la mthode de B. & B., est ce
quil peut arriver quaprs un branchement,
les deux sous-problmes soient nonralisables? Si oui donner un exemple. Sinon,
expliquer pourquoi.

Prof. Mohamed El Merouani

36

18

Vous aimerez peut-être aussi