Décomposition de Benders

Slides:



Advertisements
Présentations similaires
Programmation linéaire et Recherche opérationnelle
Advertisements

Résolution Graphique d'un Programme Linéaire
Eléments d'algèbre linéaire
La Méthode de Simplexe Standardisation
Traitement d’images : concepts fondamentaux
Résolution d’un programme linéaire
Bloc 2 : Modèles d’optimisation par la programmation linéaire
Equipe optimisation TempoSoft
Alain Faye , Frédéric Roupin CEDRIC - IIE - CNAM
1 Réunion biblio 13/12/00 Support Vectors Présentation générale SSS Maintaining Algorithm.
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
RESOLUTION DE SYSTEME Soit à résoudre le système : 2x + 3 y = 26
10 + 3x = x² Les équations du second degré Exercice d’introduction:
Les systèmes de deux équations à deux inconnues
Génération de coupes pour la planification d’agents
5. Algorithme du simplexe
Génération de colonnes
La loi de la concentration des solutions
Programmation linéaire
Concepts avancés en mathématiques et informatique appliquées
Rappel... Opérations élémentaires sur les matrices:
Optimisation linéaire
ENSIIE-Master MPRO Alain Faye
Systèmes d’équations linéaires
Rappel... Caractérisation des matrices inversibles: Matrices bloc.
Dualité Introduction à la dualité. Construction du couple primal-dual.
Programmation linéaire en nombres entiers Algorithme de la subdivision successive («Branch and Bound Algorithm»)
Programmation linéaire en nombres entiers : la méthode du simplexe
Optimisation linéaire
Optimisation linéaire
Optimisation linéaire
Introduction à la programmation linéaire
Programmation linéaire et Recherche opérationnelle
Recherche Opérationnelle
L ABORATOIRE d I NGÉNIERIE des S YSTÈMES A UTOMATISÉS EA 4014 – Université dAngers Institut des Sciences et Techniques de lIngénieur dAngers Master2 Recherche.
Méthode du simplexe Introduction, définitions et notations préliminaires, théorèmes fondamentaux, algorithme (primal) du simplexe, détermination de toutes.
Génération de colonnes pour la résolution des problemes de foresterie
Programmation linéaire en nombres entiers : les méthodes de troncature
Introduction à la programmation linéaire en nombres entiers
l’algorithme du simplexe
Rappel... Diagonalisation. Transformations linéaires.
MAXIMISER les RESULTATS
Introduction Objet de la programmation mathématique, construction d'un modèle mathématique, problème général de programmation mathématique et classification,
Isoler une variable Dans cette présentation, nous isolerons la variable x dans une équation contenant des coefficients fractionnaires. La première chose.
Examen partiel #1 Mercredi le 4 octobre de 13h30 à 15h20
Coupes efficaces pour la relaxation lagrangienne
La décomposition en valeurs singulières: un outil fort utile
Equation différentielle
ASI 3 Méthodes numériques pour l’ingénieur
ASI 3 Méthodes numériques pour l’ingénieur
بسم الله الرحمن الرحيم.
Les fonctions Les propriétés.
Equations du premier degré Equations « produit nul »
Programmation linéaire en nombres entiers
Les fonctions linéaires et affines
Algorithmes de descente par blocs pour l’apprentissage creux
ACTIVITES 25 - Fonctions affines.
(Lyon 96) Au restaurant la famille Metz a payé 224 F pour trois menus “ Adulte ” et un menu “ Enfant ”. La famille Walter a payé 188 F pour deux menus.
PROGRAMMATION SCIENTIFIQUE EN C PRO Résolution de système d’équations non- linéaires (racines d’équations) u Méthode de la bissection u Analyse.
Laura Wynter Laboratoire PRISM
et on continue ainsi…… Attention !!! quand 10 moles de propane disparaissent ou en est la quantité de matière de dioxygène ???
Post-optimisation, analyse de sensibilité et paramétrage
Martin Roy, Janvier 2010 Révisé Juillet  Un système d’équations est un ensemble de plusieurs équations.  La solution d’un système d’équations.
1 SYSTEMES D ’ EQUATIONS
Programme linéaire - solution graphique
Techniques d'Optimisation Master
1 UE Intro. Optimisation L3 INFO UPSud II. Programmation linéaire en variables entières (ou mixtes)
Exercice Soit le polynôme P(x) = x4 + 7x3 – 238x² + 440x
Programmation linéaire et Recherche opérationnelle Licence d’Econométrie Professeur Michel de Rougemont
Introduction  La PLNE regroupe l’ensemble des techniques permettant de résoudre des programmes linéaires dont les solutions doivent être entières.  Formellement,
Transcription de la présentation:

Décomposition de Benders ENSIIE-MPRO Alain Faye

Soit le problème (Pb): Max cx+hy s.c. Ax+Gyb , y0 , xX Avec XRn et yRm . Si beaucoup de variables y il peut être intéressant de les éliminer On réécrit (Pb) en ajoutant une variable t et une contrainte: Max cx+t s.c. tmaxy hy , Gyb-Ax , y0 , xX Pour éliminer y , on passe au dual du sous-problème maxy s.c. tminu u(b-Ax) (1) uG  h , u0 , xX

Pour x fixé , examinons le sous-problème minu minu u(b-Ax) , s.c. uG  h , u0 Cas optimum fini De façon évidente, on a: minu u(b-Ax)  u(b-Ax) u t.q. uG  h , u0 Donc on peut remplacer la contrainte (1) tminu u(b-Ax) par l’ensemble de contraintes : t  u(b-Ax) u t.q. uG  h , u0

Pour x fixé , examinons le sous-problème minu minu u(b-Ax) , s.c. uG  h , u0 Cas optimum non fini (-) Le dual a un optimum non borné est équivalent à le primal n’a pas de solution réalisable. Gy b-Ax , y0 a une solution si et seulement si : Mins,y s s.c. Gy-1sb-Ax , y0, s0 (s scalaire et 1 vecteur constitué de 1) est 0 -Min s = Max -s En prenant le dual de ce problème on obtient : Min v(b-Ax) s.c. vG0 , ivi1 , v0 est 0 Donc, les contraintes de la forme v(b-Ax)0 avec vG0 , ivi1 , v0 Permettent d’éliminer les x t.q. Gyb-Ax , y0 n’a pas de solution

Finalement, le problème (Pb) peut se réécrire: Maxx,t cx+t s.c. t u(b-Ax) u t.q. uG  h , u0 v(b-Ax)0 v t.q. vG0 , ivi1 , v0 xX On a éliminé y mais on a rajouté énormément de contraintes. Donc il faut avoir recours à un algorithme de coupes.

Algorithme de coupes U0=, V0=, itération k=0 Résoudre : Maxx,t cx+t s.c. tu(b-Ax) uUk, v(b-Ax)0 vVk, xX Soit x*,t la solution z:=minu u(b-Ax*) s.c. uG  h , u0 Si z>- alors soit u la solution , Si t>z alors ajouter u à Uk : Uk+1:=Uk{u} Sinon STOP (Pb) est résolu Sinon soit v t.q. v(b-Ax*)<0 avec vG0 , ivi1 , v0 Ajouter v à Vk : Vk+1:=Vk{v} k:=k+1 et retourner en (1)

Encadrement A chaque itération k, - la résolution du pb maitre (1) fournit un majorant UB de l’optimum de (Pb) - la résolution du sous-pb (2) fournit une solution réalisable de (Pb) et donc un minorant LB Soit x*, t solution du pb maitre (1), z valeur du sous-pb (2) pour x*, on a : cx* + z ≤ valeur de (Pb) ≤ cx*+t A chaque itération k, on met à jour le meilleur minorant LB:=max(LB,cx*+z) Et on a : LB ≤ valeur de (Pb) ≤ cx*+t Quand l’encadrement est suffisamment serré , on peut arrêter l’algorithme.

Finitude de l’algorithme La finitude de l’algorithme est assuré par le fait qu’un polyèdre a un nombre fini de points extrêmes et qu’une forme linéaire atteint son optimum en un point extrême Ici les polyèdres à considérer sont : uG  h , u0 (quand z>- ) vG0 , ivi1 , v0 (quand z=- ) Au pire l’algorithme explorera tous les points extrêmes de ces deux polyèdres

Extension: On a considéré un problème (Pb) linéaire en x. Max cx+hy s.c. Ax+Gyb , y0 , xX Avec XRn et yRm . Mais la méthode s’étend bien sûr à des problèmes plus généraux de la forme: Max f(x)+hy s.c. g(x)+Gyb , y0 , xX Avec f(x) fonction scalaire et g(x) vecteur de fonctions Ce qui est important c’est d’avoir la linéarité en y.

Exercice: Soit le problème (Pb): Max x1+2x2+3/2y1+2y2 s.c. 3/2x1+x2+y1+y22 x1-x2+y1+2y21 xi{0,1} i=1,2 ; yi0 i=1,2 Ecrire le sous-problème et son dual. Représenter graphiquement l’ensemble des solutions réalisables du dual. Résoudre (Pb) par la méthode de décomposition de Benders en prenant pour contrainte initiale t10