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

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

Présentations similaires


Présentation au sujet: "1 Inégalités valides ENSIIE-Master MPRO Alain Faye."— Transcription de la présentation:

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

2 2 Introduction On considère le problème en nombres entiers Min {cx : Ax b, x Z n } Lensemble des solutions admissibles est: X={x : Ax b, x Z n } Objectif: obtenir un polyèdre P (sans contraintes dintégrité) pour décrire ConvX lenveloppe 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 dintégrité): Min cx s.c. x P Cas particulier: x vecteur de coordonnées 0 ou 1. Lensemble des vecteurs booléens sera noté B n ={0,1} n

3 3 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 Sommaire

4 4 Notions préliminaires

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

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

7 7 Un polyèdre est lensemble des solutions dun système dinégalités linéaires de la forme Ax b : P= {x :Ax b } Un point extrême de P est un point de P qui ne peut pas sexprimer comme combinaison convexe de 2 points distincts de P. Loptimum dune forme linéaire sur P (s il existe) est atteint en un point extrême de P Un polyèdre est convexe car cest lintersection des convexes que sont les demi-espaces défini par chaque inégalité Polyèdre Exemple: x 1 +x 2 2 2x 1 +x 2 3 x 1 0, x 2 0 Les points x=(0,0), x=(0,2), x=(0,3/2) x=(1,1) sont les points extrêmes de P

8 8 Inégalités valides

9 9 Inégalité valide Définition: linégalité x 0 est valide pour X si x 0 x X Exercice: Soit X={x B 5 : 3x 1 -4x 2 +2x 3 -3x 4 +x 5 -2} Par des raisonnements « booléens » montrer que x 2 +x 4 1 et x 1 x 2 sont valides pour X

10 10 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 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 Cest à 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 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 11 Notation: a =plus petit entier inférieur ou égal à a Exemples: 5,4 =5 -5,4 =-6 Partie fractionnaire: f=a- a Exemples: Partie fractionnaire de 5,4 est 0,4 Partie fractionnaire de -5,4 est f=-5,4-(-6)=0,6 Partie fractionnaire dun nombre

12 12 Coupes de Chvatal Soit ax b une inégalité avec x entier 0 relaxation j a j x j b est valide car x 0 arrondi j a j x j b est valide car x entier Note: pour obtenir linégalité de départ, on peut toujours faire une combinaison linéaire positive des contraintes Ax b décrivant X={x Z n + : Ax b} Exercice: Retrouver les 2 précédentes inégalités valides de X={x B 5 : 3x 1 -4x 2 +2x 3 -3x 4 +x 5 -2} en utilisant les coupes de Chvatal à partir de 0 x j 1 et 3x 1 -4x 2 +2x 3 -3x 4 +x 5 -2.

13 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: a j =k j d+r j avec 0 r j

14 14 Pour d=1, linégalité modulo arithmétique est la coupe de Gomory f j x j f Où f j est la partie fractionnaire de a j et f la partie fractionnaire de b k' 0 est la coupe de Chvatal j a j x j b Exercice -1/2x 1 +7/4x 2 +7/3x 3 +x 4 =21/4 avec x 1, x 2, x 3, x 4 entiers 0 Calculer la coupe de Gomory et la coupe de Chvatal Exercice 37x 1 -68x 2 +78x 3 +x 4 =141 avec x Z 4 + Pour d=12, calculer linégalité modulo arithmétique

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

16 16 Contrainte disjonctive Contrainte valide sur lunion de deux parties de R n + Soit a 1 x b 1 valide pour S1 R n + Soit a 2 x b 2 valide pour S2 R n + Alors on a: min(a 1 x,a 2 x)max(b 1,b 2 ) x S1 S2 Et j min(a 1 j x j,a 2 j x j )min( j a 1 j x j, j a 2 j x j ) Et min(a 1 j,a 2 j )x j =min(a 1 j x j,a 2 j x j ) car x j 0 Finalement: j min(a 1 j,a 2 j )x j max(b 1,b 2 ) est valide pour S1 S2 car x j 0

17 17 Application : (A) x 0 =a 0 - j=1,n a j x j avec x 0 entier et x j 0 j=1 à n 2 cas: x 0 a 0 On élimine x 0 dans (A) et on obtient a j /(a 0 - a 0 )x j 1 x 0 a 0 +1 On élimine x 0 dans (A) et on obtient a j /(a 0 - a 0 -1)x j 1 On applique le résultat précédent (x j 0 ) on obtient linégalité valide : b j x j 1 Avec b j =max{a j /(a 0 - a 0 ), a j /(a 0 - a 0 -1)} Exercice: x 0 =15/4-1/2x 1 +7/4x 2 -11/4x 3 avec x 0 entier, x 1, x 2, x 3 0 Calculer l inégalité valide correspondante Contrainte disjonctive

18 18 Disjonction de polyèdre Soit P=P1 P2 Avec P1={x : A 1 x b 1 } et P2={x : A 2 x b 2 } Soit u 1 0, u 2 0 et, 0 t.q. =u 1 A 1, u 1 b 1 0 (1) =u 2 A 2, u 2 b 2 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 u 1 0, u 2 0 t.q. (1) et (2)

19 19 Exercice: Soit P défini par: x 1 +x x 1 +x 2 1 / 2 On veut construire une inégalité valide pour la disjonction de P suivante (P {x: x 1 0}) (P {x: x 1 1}) On note P1= P {x: x 1 0} et P2= P {x: x 1 1}) Soit (A) linégalité - 1 / 2 x 1 +x 2 1 / 2 1.Par combinaison positive des contraintes de P1, montrer que (A) est valide pour P1 2.Même question pour P2 3.En déduire que (A) est valide pour P1 P2 4.Soit x*=(1/2, 3/2) le point extrême de P. Vérifier que x* ne satisfait pas (A) 5.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 20 Théorème: Si x 0 est une inégalité valide pour X avec, 0 entiers alors elle sobtient en un nombre fini ditérations de la procédure de Chvatal. X=P B n et P R n + polyèdre borné P [0,1] n Le résultat sétend au cas entier général X=P Z n et avec P polyèdre non borné. Procédure des coupes de Chvatal 1.On pose P t =P, t=0 2.Soit une inégalité valide pour P t : ax b 3.On exerce une coupe de Chvatal sur cette inégalité : a x b 4.On rajoute linégalité obtenue à P t : P t+1 =P t {x: a x b } 5.On pose t= t+1 et on retourne à 2. Ce résultat est soumis au bon choix de linégalité valide à chaque itération. La démonstration du théorème est constructive et elle donne linégalité valide à couper. Est-il possible datteindre toutes les inégalités valides ?

21 21

22 22

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

24 24 Exercice 2 Soit X ensemble des vecteurs dincidence (indexés par les sommets) des stables dun graphe G=(V,E). Par raisonnement « booléen », 1.Montrer que si (i,j) E alors x i +x j 1 est valide pour X. 2.Montrer que si i, j, k sont les sommets dun triangle alors x i +x j +x k 1 est valide pour X 3.Montrer que si C est une clique dau moins 3 sommets alors i sommets de C x i 1 est valide pour X 4.Soit un cycle C de G. Montrer que si le nombre de sommets du cycle C est impair 2k+1 alors i sommets de C x i k est valide pour X. Soient les inégalités x i 0 i V et x i +x j 1 (i,j) E valides pour X. 5.Retrouver en appliquant des coupes de Chvatal à partir de x i 0 i V et x i +x j 1 (i,j) E, la validité des inégalités sur le triangle, la clique, le cycle impair.

25 25 Inégalités en variables mixtes

26 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 linégalité valide correspondante. Faire une représentation graphique de la coupe. Démontrer linégalité de base à partir de la contrainte disjonctive vue précédemment (cf contrainte disjonctive application)

27 27 Inégalité MIR (mixed integer rounding) Soit X={(x,y) R + Z n + : j a j y j b+x} Alors j ( a j +(f j -f) + (1-f))y j b +x (1-f) (MIR) est valide pour X Avec f j =a j - a j, f=b- b parties fractionnaires de a j, b Exercice: Soit 10 / 3 y 1 +y / 4 y 3 21 / 2 +x avec y j Z + et x 0 Calculer linégalité MIR Notation: a + =max(0,a). Par exemple: 5 + =5, (-5) + =0

28 28 Comparaison avec les coupes de Chvatal Soit X={y Z n + : j a j y j b} Coupe de Chvatal : j ( a j y j b Inégalité MIR : j ( a j +(f j -f) + (1-f))y j b Liné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 y j 0: a j +(f j -f) + (1-f) a j Linconvénient est que les coefficients sont fractionnaires Exercice: Soit 10 / 4 y 1 -6,5y / 3 y 3 +y4 13 / 3 avec y j Z + Comparer les deux coupes

29 29 Exercice 1

30 30 Exercice 2: extension de linégalité de base Soit X={(x +,x,y) R + R + Z : y+x b+x +, xc} avec c entier0 1.Montrer en utilisant liné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 nest pas forcément négatif 2.Soit y+x 2,5 avec y Z et 0x3 Calculer linégalité valide correspondante. Faire une représentation graphique de la coupe.

31 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 "1 Inégalités valides ENSIIE-Master MPRO Alain Faye."

Présentations similaires


Annonces Google