Programmation linaire en nombres entiers Algorithme de la subdivision successive Branch and Bound Al - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Programmation linaire en nombres entiers Algorithme de la subdivision successive Branch and Bound Al

Description:

ou une soln sous-optimale satisfaisante ou bien que l'on d tecte ... astreintes tre enti res. Exemple : Le probl me pr c dent o x n'est pas astreinte ... – PowerPoint PPT presentation

Number of Views:118
Avg rating:3.0/5.0
Slides: 17
Provided by: www2Ift
Category:

less

Transcript and Presenter's Notes

Title: Programmation linaire en nombres entiers Algorithme de la subdivision successive Branch and Bound Al


1
Programmation linéaire en nombres
entiersAlgorithme de la subdivision
successive(Branch and Bound Algorithm)
2
Introduction
Stratégie
"couper en 2" la région réalisable, recouper en 2
chaque partie de la région réalisable susceptible
de contenir la soln optimale et ainsi de suite.
Ce processus se poursuit jusquà ce quon trouve
la soln optimale ou une soln sous-optimale
satisfaisante ou bien que lon détecte labsence
de solns.
Variantes
la façon de couper en 2 la région réalisable,
le choix de la partie de la région réalisable à
examiner en premier,
la façon de sassurer quun morceau ne contient
pas la soln optimale afin de pouvoir éliminer ce
morceau.
3
Exemple décrivant lalgorithme de subdivision
successive
(P0)
Le simplexe nous donne comme soln optimale de
(P0) x 3.5, y 10/3 et z0max 145/6.
4
(No Transcript)
5
Quelle coupe peut-on effectuer dans l'ensemble
des solns réalisables de (P0) qui n'ôte aucun
point entier de cet ensemble? La soln optimale
de (PE) doit vérifier soit y 3, soit y 4.
Formons les 2 problèmes issus de (P0)
simplexe
x 18/5, y 3, z1max 24.
(P1)
x 5/2, y 4, z2max 20,5.
(P2)
6
Puisque z1max gt z2max on choisit de travailler
avec (P1) pour linstant.
Si la soln optimale de (PE) vérifie les
contraintes de (P1), elle vérifiera aussi soit x
? 3 ou x ? 4. Formons 2 nouveaux problèmes issus
de (P1)
redondant
redondant
(P3)
x 3, y 3, z3max 21.
x 4, y 5/3, z4max 70/3.
(P4)
7
Puisque z4max gt z3max on choisit de travailler
avec (P4) pour linstant soit y ? 1 ou y
? 2.
8
(P5)
redondant
x 4.2, y 1, z5max 23.
(P6)
Pas de solns réalisables
9
(No Transcript)
10
À partir de (P5), on peut construire les 2
problèmes suivants
simplexe
(P7)
x 4, y 1, z7max 22.
(P8)
Pas de solns réalisables.
11
(P7) possède une solution optimale entière
réalisable pour (PE).
Pour savoir si elle est optimale, il faut
examiner les problèmes que nous avons laissés de
côté en créant des coupes.
(P8) et (P6) on peut les négliger (pas de solns
réalisables).
(P3) on peut le négliger car z7max 22 gt 21
z3max.
(P2) on peut le négliger car z7max 22 gt 20.5
? zmax.
Lajout de coupes à (P2) ne peut donner de
solns où la fonction objective est plus grande
que 20,5.
Donc, x 4, y 1 et zmax 22 est la soln
optimale de (PE).
12
(No Transcript)
13
Cas particulier
Quelques variables ne sont pas entières et les
autres le sont.
Il suffit de ne pas introduire de coupes sur les
variables non astreintes à être entières.
Exemple
Le problème précédent où x nest pas astreinte
à être entière.
Dans larborescence précédente, on voit que (P1)
et (P2) nous donnent 2 solns réalisables et donc
que la soln optimale serait dans ce cas x
18 / 5, y 3 et zmax 24.
14
Énoncé de lalgorithme de subdivision successive
(0)
Construire une banque de problèmes qui ne
renferme initialement que le problème suivant
Max z ctx A x b (P0) x ? 0 k ?
1 zk -? (renferme une borne inférieure
de la valeur optimale de lobjectif z)
(1)
Si la banque de problèmes est vide, terminer les
calculs, i.e. rechercher la meilleure soln
réalisable rencontrée dont la valeur
de lobjectif est égale à la borne
inférieure. Cette soln réalisable est alors
optimale. Autrement, enlever un programme
linéaire de la banque et aller à (2).
15
(2)
Résoudre le programme choisi. Si la valeur de
lobjectif est au plus zk, zk1 ? zk, k ? k
1, aller à (1). Autrement, aller à (3).
(3)
Si la soln optimale obtenue du programme linéaire
satisfait les contraintes d'intégralité, noter-le
, zk1 ? valeur optimale de lobjectif de ce
programme, faire k ? k 1, aller à
(1). Autrement, aller à (4).
(4)
Choisir une variable xj nayant pas une valeur
entière (xj br).
Ajouter 2 programmes linéaires à la banque issus
de celui de (1)
1e problème xj ? br est ajoutée. 2ième
problème xj ? br 1 est ajoutée. Faire zk1
? zk, k ? k 1, aller à (1).
16
Choix dun programme dans la banque
Résoudre lun des 2 programmes que lon vient
dajouter à la banque ou le dernier à être
introduit qui nest pas encore résolu.
En passant dun nud à son fils dans larbre, on
a le même problème à résoudre avec seulement une
contrainte en plus.
Il sagit dutiliser lalgorithme dual du
simplexe.
Borne supérieure sur la valeur de lobjectif
La résolution du programme continu à chaque nud
de larbre nous fournit une borne supérieure sur
la valeur de lobjectif de la meilleure soln
possible dans cette branche.
Write a Comment
User Comments (0)
About PowerShow.com