La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

ENSIIE-Master MPRO Alain Faye

Présentations similaires


Présentation au sujet: "ENSIIE-Master MPRO Alain Faye"— Transcription de la présentation:

1 ENSIIE-Master MPRO Alain Faye
Inégalités valides ENSIIE-Master MPRO Alain Faye

2 Introduction On considère le problème en nombres entiers Min {cx : Axb, xZn} L’ensemble des solutions admissibles est: X={x : Axb, xZn} Objectif: obtenir un polyèdre P (sans contraintes d’intégrité) pour décrire ConvX l’enveloppe convexe de X ou pour avoir au moins une bonne approximation de ConvX Si on obtient ConvX=P le problème en nombres entiers se ramène au programme linéaire (sans contraintes d’intégrité): Min cx s.c. xP Cas particulier: x vecteur de coordonnées 0 ou 1 . L’ensemble des vecteurs booléens sera noté Bn={0,1}n

3 Sommaire Notions préliminaires Convexe, enveloppe convexe Polyèdre Inégalités valides en nombres entiers Coupes de Chvatal Modulo arithmétique Coupes de Gomory Contraintes disjonctives Inégalités valides en variables mixtes Inégalité de base Inégalité MIR

4 Notions préliminaires

5 C Rn , est convexe si: x,yC et 0  1(1-)x+y C
Ensemble convexe C Rn , est convexe si: x,yC et 0  1(1-)x+y C le segment [x,y] est l'ensemble des points z de la forme : z=(1-)x+  y avec 01 z est combinaison convexe de x et y x y pas convexe une partie du segment [x,y] n ’est pas dans C convexe

6 Déf: étant donné M Rn , ConvM , l'enveloppe convexe de M, est
le plus petit convexe contenant M c'est-à-dire l'intersection de tous les convexes contenant M. M ConvM = vert+blanc

7 Polyèdre Un polyèdre est l’ensemble des solutions d’un système d’inégalités linéaires de la forme Axb : P= {x :Ax b } Un polyèdre est convexe car c’est l’intersection des convexes que sont les demi-espaces défini par chaque inégalité Un point extrême de P est un point de P qui ne peut pas s’exprimer comme combinaison convexe de 2 points distincts de P. L’optimum d’une forme linéaire sur P (s ’il existe) est atteint en un point extrême de P Exemple: x1+x22 2x1+x23 x10, x20 Les points x=(0,0), x=(0,2), x=(0,3/2) x=(1,1) sont les points extrêmes de P

8 Inégalités valides

9 Inégalité valide Définition: l’inégalité x 0 est valide pour X si x 0 xX Exercice: Soit X={xB5: 3x1-4x2+2x3-3x4+x5-2} Par des raisonnements « booléens » montrer que x2+x41 et x1x2 sont valides pour X

10 Soit P ={x : x0, Axb} Une combinaison linéaire positive des contraintes est valide pour P: Soit u0, alors uAxub xP C’est à peu près la seule façon de faire pour obtenir des inégalités valides pour P car la proposition suivante nous dit que toute inégalité valide pour P est « dominée » par une inégalité valide obtenue par combinaison positive des contraintes de P Proposition Si x0 est une inégalité valide pour P={x : x0, Axb} alors u0 t.q. uA et  ub0 Démonstration: x0 valide pour P signifie que max{ x : xP} 0 Par dualité min{ub : uA , u0} 0. La solution u* du dual convient.

11 Partie fractionnaire d’un nombre
Notation: a=plus petit entier inférieur ou égal à a Exemples: 5,4=5 -5,4=-6 Partie fractionnaire: f=a-a Partie fractionnaire de 5,4 est 0,4 Partie fractionnaire de -5,4 est f=-5,4-(-6)=0,6

12 Coupes de Chvatal Soit axb une inégalité avec x entier0 relaxation jajxjb est valide car x0 arrondi jajxjb est valide car x entier Note: pour obtenir l’inégalité de départ , on peut toujours faire une combinaison linéaire positive des contraintes Ax  b décrivant X={xZn+ : Axb} Exercice: Retrouver les 2 précédentes inégalités valides de X={xB5: 3x1-4x2+2x3-3x4+x5-2} en utilisant les coupes de Chvatal à partir de 0xj1 et 3x1-4x2+2x3-3x4+x5-2.

13 Modulo arithmétique Soit ax=b une égalité avec x entier0 On se donne un entier d>0 On calcule les divisions entières par d: aj=kjd+rj avec 0rj<d et kj entier b=kd+r avec 0r<d et k entier On réécrit ax=b : ajxj=b rjxj=r+ d(k-kjxj) k‘=k-kjxj est entier car x entier. Si k‘-1 alors r+dk‘<0 car r<d. Or rjxj0 car x0. Ce qui implique k'0. Donc dk'0 Et finalement rjxjr

14 Exercice 37x1-68x2+78x3+x4=141 avec xZ4+ Pour d=12, calculer l’inégalité modulo arithmétique Pour d=1, l’inégalité modulo arithmétique est la coupe de Gomory fjxjf Où fj est la partie fractionnaire de aj et f la partie fractionnaire de b k'0 est la coupe de Chvatal jajxjb Exercice -1/2x1+7/4x2+7/3x3+x4=21/4 avec x1, x2, x3, x4 entiers0 Calculer la coupe de Gomory et la coupe de Chvatal

15 Les coupes de Gomory peuvent être vues comme des coupes de Chvatal
Exercice: -x1+2x24 (1) 5x1+x220 (2) -2x1-2x2-7 (3) x1,x2 entiers0 On rajoute les variables d’écart x3, x4, x5 On dresse le tableau simplexe dans la base x1, x2, x5 et pour la ligne 1 on obtient x1-1/11x3+2/11x4=36/11 avec x1, x3, x4 entiers0 Calculer la coupe de Gomory et l’exprimer en fonction des variables originales x1, x2 Faire la combinaison positive des 3 contraintes avec u=(10/11, 2/11, 0) puis faire la coupe de Chvatal. Représenter graphiquement la coupe.

16 Contrainte disjonctive
Contrainte valide sur l’union de deux parties de Rn+ Soit a1xb1 valide pour S1Rn+ Soit a2x b2 valide pour S2Rn+ Alors on a: min(a1x,a2x)≤max(b1,b2) xS1S2 Et jmin(a1jxj,a2jxj)≤min(ja1jxj,ja2jxj) Et min(a1j,a2j)xj=min(a1jxj,a2jxj) car xj≥0 Finalement: jmin(a1j,a2j)xjmax(b1,b2) est valide pour S1S2 car xj0

17 Contrainte disjonctive
Application : (A) x0=a0-j=1,najxj avec x0 entier et xj 0 j=1 à n 2 cas: x0a0 On élimine x0 dans (A) et on obtient aj/(a0-a0)xj1 x0a0+1 On élimine x0 dans (A) et on obtient aj/(a0-a0-1)xj1 On applique le résultat précédent (xj0 ) on obtient l’inégalité valide : bjxj1 Avec bj=max{aj/(a0-a0), aj/(a0-a0-1)} Exercice: x0=15/4-1/2x1+7/4x2-11/4x3 avec x0 entier , x1, x2, x30 Calculer l’ inégalité valide correspondante

18 Disjonction de polyèdre
Soit P=P1P2 Avec P1={x : A1xb1} et P2={x : A2xb2} Soit u10, u20 et , 0 t.q. =u1A1, u1b10 (1) =u2A2, u2b20 (2) Alors x0 est valide pour P. On a la réciproque. Proposition Si x0 est valide pour P, alors il existe u10, u20 t.q. (1) et (2)

19 Exercice: Soit P défini par: x1+x22 -2x1+x21/2 On veut construire une inégalité valide pour la disjonction de P suivante (P{x: x10})(P {x: x11}) On note P1= P{x: x10} et P2= P {x: x11}) Soit (A) l’inégalité -1/2x1+x21/2 Par combinaison positive des contraintes de P1, montrer que (A) est valide pour P1 Même question pour P2 En déduire que (A) est valide pour P1P2 Soit x*=(1/2, 3/2) le point extrême de P . Vérifier que x* ne satisfait pas (A) Etant donné un point x* quelconque de P, donner le programme mathématique qui cherche une inégalité valide pour P1P2 et violée par x*

20 Est-il possible d’atteindre toutes les inégalités valides ?
X=PBn et PRn+ polyèdre borné P[0,1]n Procédure des coupes de Chvatal On pose Pt=P, t=0 Soit une inégalité valide pour Pt : axb On exerce une coupe de Chvatal sur cette inégalité : ax b On rajoute l’inégalité obtenue à Pt : Pt+1=Pt{x: ax b} On pose t= t+1 et on retourne à 2. Théorème: Si x0 est une inégalité valide pour X avec , 0 entiers alors elle s’obtient en un nombre fini d’itérations de la procédure de Chvatal . Ce résultat est soumis au bon choix de l’inégalité valide à chaque itération. La démonstration du théorème est constructive et elle donne l’inégalité valide à couper. Le résultat s’étend au cas entier général X=P Zn et avec P polyèdre non borné.

21

22

23 Exercice 1 Soit X l’ensemble des vecteurs d’incidence (indexés par les arêtes) des couplages d’un graphe G=(V,E). En considérant les arêtes incidentes à chaque sommet, donner V inégalités (une par sommet) valides pour X. A partir de ces inégalités, montrer à l’aide des coupes de Chvatal que si T est un ensemble de sommets de cardinal 2k+1 alors : eE(T)xe k est valide pour X Où E(T) désigne l’ensemble des arêtes de G ayant leur deux extrémités dans T

24 Exercice 2 Soit X ensemble des vecteurs d’incidence (indexés par les sommets) des stables d’un graphe G=(V,E). Par raisonnement « booléen », Montrer que si (i,j)E alors xi+xj 1 est valide pour X. Montrer que si i, j, k sont les sommets d’un triangle alors xi+xj+xk 1 est valide pour X Montrer que si C est une clique d’au moins 3 sommets alors isommets de Cxi 1 est valide pour X Soit un cycle C de G. Montrer que si le nombre de sommets du cycle C est impair 2k+1 alors isommets de Cxi k est valide pour X. Soient les inégalités xi0 i  V et xi+xj 1 (i,j)E valides pour X. Retrouver en appliquant des coupes de Chvatal à partir de xi0 i  V et xi+xj1 (i,j)E, la validité des inégalités sur le triangle, la clique, le cycle impair.

25 Inégalités en variables mixtes

26 Inégalité mixte : inégalité mêlant variables entières et continues
Inégalité de base Soit X={(x,y)R+Z : yb+x} yb+x(1-f) est valide pour X Avec f=b-b partie fractionnaire de b Exercices: Soit y2,5+x avec yZ et x0 Calculer l’inégalité valide correspondante. Faire une représentation graphique de la coupe. Démontrer l’inégalité de base à partir de la contrainte disjonctive vue précédemment (cf contrainte disjonctive application)

27 Inégalité MIR (mixed integer rounding)
Notation: a+=max(0,a) . Par exemple: 5+=5, (-5)+=0 Soit X={(x,y)R+Zn+ : jajyjb+x} Alors j(aj+(fj-f)+ (1-f))yjb+x (1-f) (MIR) est valide pour X Avec fj=aj-aj, f=b-b parties fractionnaires de aj, b Exercice: Soit 10/3y1+y2+11/4y321/2+x avec yjZ+ et x0 Calculer l’inégalité MIR

28 Comparaison avec les coupes de Chvatal
Soit X={yZn+ : jajyjb} Coupe de Chvatal : j(ajyjb Inégalité MIR : j(aj+(fj-f)+ (1-f))yjb L’inégalité MIR « domine » la coupe de Chvatal car les coefficients du membre gauche sont supérieurs ou égaux à ceux de la coupe de Chvatal et yj0: aj+(fj-f)+ (1-f)  aj L’inconvénient est que les coefficients sont fractionnaires Exercice: Soit 10/4y1-6,5y2+8/3y3+y413/3 avec yjZ+ Comparer les deux coupes

29 Exercice 1

30 Exercice 2: extension de l’inégalité de base
Soit X={(x+,x ,y)R+R+Z : y+xb+x+, x≤c} avec c entier≥0 Montrer en utilisant l’inégalité de base que: y+(x-cf)/(1-f)b+x+(1-f) est valide pour X Avec f=b-b partie fractionnaire de b Noter que x-cf n’est pas forcément négatif Soit y+x2,5 avec yZ et 0≤x≤3 Calculer l’inégalité valide correspondante. Faire une représentation graphique de la coupe.

31 Bibliographie : Nemhauser G.L., Wolsey L.A. (1988) Integer and Combinatorial Optimization. John Wiley & Sons, New York Wolsey, L. A. (1998) Integer Programming, John Wiley & Sons, New York


Télécharger ppt "ENSIIE-Master MPRO Alain Faye"

Présentations similaires


Annonces Google