Techniques d’Optimisation Chapitre 3: Programmation en 0-1 (bivalente)

Slides:



Advertisements
Présentations similaires
Génération de colonnes
Advertisements

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
Programmation linéaire en nombres entiers : les méthodes de troncature
Programmation linéaire en nombres entiers
Techniques d’Optimisation Chapitre 2: Problème de flôt Dr TARI Abdelkamel Mars 2014.
Techniques d'Optimisation Master
1 UE Intro. Optimisation L3 INFO UPSud II. Programmation linéaire en variables entières (ou mixtes)
PRESENTE PAR: KASHAMA LUBEMBE Dieudonné.
Courbes d'Interpolation Interpolation de Lagrange, et Interpolation B-spline.
Grilles 3D Les grilles 3D. Grilles 3D Plan ● Les grilles 3D – Grille 3D ? – Reconstruction de continuité C 0 – Octree min/max – Visualisation d'une iso-surface.
Outils de Recherche Opérationnelle en Génie MTH 8414A
Cours d’Econométrie de la Finance (Stat des choix de portf. IV 1-2)
Outils de Recherche opérationnelle en Génie MTH 8414
Outils de Recherche Opérationnelle en Génie MTH 8414
Outils de Recherche opérationnelle en Génie MTH 8414
Analyse, Classification,Indexation des Données ACID
Les Instructions Itératives (Les Boucles)
Pierre Joli Cours de Mathématique Pierre Joli
6. Analyse postoptimale.
Modèles décisionnels en gestion
Techniques de décomposition
Algorithmique Avancée et Complexité Chap2:Complexité et Optimalité
Université Abou Bakr Belkaid Faculté des Sciences Département d’informatique Algorithmique Avancée et Complexité Chap5: Les méthodes de résolution exactes.
Algorithmique Avancée et Complexité Chap3:Diviser pour Régner
Techniques d’Optimisation Chapitre 2: Problème de flôt
Algorithme de Dichotomie
Chapitre 2 Vecteurs et Repérage dans le plan
Exercice 2 Soit la série statistique
Algorithme de Dichotomie
Cyber-Sphinx Séance 2.
Chapitre 2: Les équations et les inéquations polynômes
Cyber-Sphinx Séance 2.
Programmation linéaire et Recherche opérationnelle Licence d’Econométrie Professeur Michel de Rougemont
Technologies de l’intelligence d’affaires Séance 11
Université Abou Bakr Belkaid Faculté des Sciences Département d’informatique Algorithmique Avancée et Complexité Chap7: Les méthodes de résolution exactes.
Exercice 6 : Soit la pyramide suivante : 1000 Ligne 1
Chapitre 6: Réduction de dimensionnalité paramétrique
L’I NSTRUCTION DE T EST A LTERNATIF Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie – Université A.Mira, Bejaia Année.
Cours N°9: Algorithmiques Les Tableaux 1
Cyber-Sphinx Séance 2.
La méthode du simplexe. 1) Algorithme du simplexe  Cet algorithme permet de déterminer la solution optimale, si elle existe, d’un problème de programmation.
Manipulation D’Une Base De Données
1 RECURSIVITE PRESENTATION Ch. PAUL ALGORITHMIQUE Présentation de la récursivité.
Branch-and-price algorithms for the solution of the multi-trip vehicle routing problem with time windows (MTVRPTW) 1.
Systèmes de monnaie.
OPTIMISATION 1ère année ingénieurs
Les méthodes non paramétriques
OPTIMISATION 1ère année ingénieurs
Arbres de décision.
Cycle, Cocycle, Arbre et Arborescence
SYSTèMES à évènements discrets
La Dualité et l’Analyse sensitive et post-optimale en PL
2. Méthode du simplexe et son analyse.
Chapitre 1 Formulation d’un programme linéaire (PL) Georges Abboudeh BUST 347.
l’algorithme du simplexe
CSI 3505 Algorithmes Voraces
RABAH M ed Ali 2018/2019
Recherche de zero d'une fonction MARMAD ANAS MPSI -2.
Nombres premiers : ce sont des nombres entiers positifs, qui ne sont divisibles que par 1 et eux- mêmes. Exemples : 24 est divisible par 2, par 3, par.
Chapitre 2 : Représentation de l’information dans la machine Introduction Représentation des nombres négatifs –Signe / valeur absolue –Complément à 1 –Complément.
5. Algorithme du simplexe
CSI 3505 / Automne 2005: Conception et Analyse des Algorithmes I.
Encadrée par: - Mr. Abdallah ALAOUI AMINI Réalisée par : -ERAOUI Oumaima -DEKKAR Amal - ES-SAHLY Samira -Houari Mohammed PROGRAMMATION MULTIOBJECTIFS.
PROGRAMMATION SCIENTIFIQUE EN C
Introduction  La PLNE regroupe l’ensemble des techniques permettant de résoudre des programmes linéaires dont les solutions doivent être entières.  Formellement,
Aide à la décision M. Barbot – 09/03/2016 – EFREI
Chapitre I Modélisation optimisation
Outils de Recherche Opérationnelle en Génie MTH 8414
La programmation dynamique
Transcription de la présentation:

Techniques d’Optimisation Chapitre 3: Programmation en 0-1 (bivalente) Dr TARI Abdelkamel Mai 2012

Plan Introduction à la PLB Problème de recouvrement et de partionnement Algorithme de BALAS Amélioration de BALAS

Techniques d'Optimisation ed2c'2012 Introduction Un PLB s’écrit: Min Z = ƒ (x1…..x n) gi(x1….x n) ≤ b avec i I={1, …, m} xj= (1, 0) pour j  J{1, …, n} Un PLNE peut être ramené à un PLB par l’une des transformations: _ xk ≤ uk avec - et k le plus petit entier tel que 2(k+1) ≥ uk +1 Inconvénient: Nombre de variables augmentent !!! Techniques d'Optimisation ed2c'2012

Problème de Recouvrement et Partionnement (1/2) Soient m tâches s1…, s m à réaliser avec n moyens E1…, En Un moyen Ej réalise une ou plusieurs tâches avec un coût cj = cj(Ej). Problème de recouvrement : Réaliser toutes les tâches par les moyens au moindre coût. Problème de partitionnement: les moyens sont exclusifs (une tâche est réalisée par un et un seul moyen) Modélisation: S={s1…, s m} l’ensemble des tâches et ζ ={E1, …, En} l’ensemble des moyens où Ej  S (Ej  0) et  Ej = S. H=(S, ζ) est appelé hypergraphe. Techniques d'Optimisation ed2c'2012

Problème de Recouvrement et Partionnement (2/2) Modèle: A= (aij) la matière d’incidence tâches-moyens de H : X= (x1, x2, …, xn)t variables de décision avec Techniques d'Optimisation ed2c'2012

Algorithme de Ballas (1/4) Approche Branch and Bound (arborescence des solutions) Principe de séparation : xj=1 sur une branche et xj=0 sur l’autre La racine correspond à toutes les variables nulles (J0=) La solution initiale n’est pas réalisable Une itération: Améliorer l’infaisabilité de la solution Contraindre un sous ensemble de variables à la valeur 1. Stratégie d’exploration: Profondeur d’abord: Exploration d’une branche jusqu'à obtenir sa feuille ou la couper. Exploration intelligente : Mêmes techniques d’élagage que B&B Utilisation d’une série de tests pour éliminer des branches inutiles. Techniques d'Optimisation ed2c'2012

Algorithme de Ballas (2/4) Soit le PLB suivant: Si cj < 0 alors poser x’j = (1 – xj). Notations: +i : La variable xi est fixée à 1 et –i si elle prend la valeur 0 Jt : La solution partielle au nœud t, si Jt =  alors toutes les variables sont libres Nt : L’ensemble des variables libres au nœud t Zt : La valeur de z à l’itération t. Z* : La meilleure solution trouvée à l’itération t (au départ Z* = ∞) Sit : La valeur de la variable d’écart à l’itération t. Techniques d'Optimisation ed2c'2012

Algorithme de Ballas (3/4) Ligne i au nœud t: Infaisabilité de xj au nœud t: Tests à effectuer selon l’ordre suivant: Test 1: Ignorer la variable libre xr vérifiant: Si < 0  i et air ≥ 0. Mettre à jour Nt Test 2 : Ignorer la variable libre xr vérifiant cr + Zt ≥ Z*. Mettre à jour Nt (au départ, Z*=+). Test 3: S’il existe Sit < 0 tq: alors supprimer Jt. Test 4: Si Nt ≠, choisir xk tq: Techniques d'Optimisation ed2c'2012

Algorithme de Ballas (4/4) Deux cas se présentent : Cas 1  : Si et xk=1 alors Jt+1 = Jt  {+ k} est une solution réalisable. Remplacer Z* par Z(t+1) si Z(t+1) < Z*. Supprimer J(t+1). Cas 2 : Si , appliquer les précédents tests sur J(t+1). Retour arrière lorsqu’un nœud est supprimé. Arrêt de l’algorithme lorsque tous les nœuds sont coupés. Si Z*= alors il n’existe pas de solution réalisable pour le PLB Test 3 bis: Glover et Zionts ont proposé une modification du test 3 : Dt = {jϵ Nt / Si Dt = Nt, supprimer Jt Techniques d'Optimisation ed2c'2012

Techniques d'Optimisation ed2c'2012 Exemple illustratif Le PLB’ est: Min Z= 3x1+2x2 + 5x3 +2x4 +3x5 -- x1 - x2 + x3 + 2x4 - x5 + S1 = 1 - 7x1 + 3 x3 - 4x4 - 3x5 + S2 = -2 11 x1 – 6x2 -3x4 – 3x5 + S3= -1 xj = (0,1) j=1, ..,5 Si  0 Soit le PLB suivant: Max Z = 3x1+2x2 - 5x3 -2x4 +3x5 x1+x2 + x3 +2x4+x5 ≤ 4 7x1+ 3 x3 - 4x4+ 3 x5 ≤ 8 11 x1 – 6x2 +3x4 – 3x5 ≥ 3 xj = (0,1) j=1, .., 5 Transformations: Max Z  Min (-Z) xj= 1- xj pour j=1, 2 et 5 Techniques d'Optimisation ed2c'2012

Techniques d'Optimisation ed2c'2012 Exemple illustratif Itération 0: J0 = , N0 ={1, 2, 3, 4, 5}, Z0= 0, Z*= Test 1: Supprimer x3 et N0 ={1, 2, 4, 5} Test 2 : - Test 3: Garder N0 ={1, 2, 4, 5 } Test 4 : I5= Max (Ij, j N0)= 0. Séparer sur x5 Itération 1: x5= 1, J1 = {+5}, N1 ={1, 2, 3, 4}, Z1= 3< Z*=. Poser Z*=3. Supprimer J1 Itération 2: x5= 0, J2 = {-5}, N2 ={1, 2, 3, 4}, Z2= 0, Z*=3 Test 1: Supprimer x3 et N2 ={1, 2, 4} Test 2 : Supprimer x1 et N2 ={2, 4} Test 3 : Garde N2 ={ 2, 4} Test 4 : I4= Max {Ij, j N0}= -1. Séparer sur x4 Itération 3: x4= 1, J3 = {-5, +4}, N3 ={1, 2, 3}, Z3= 2, Z*=3 Test 1: Supprimer x3 et N3 ={1, 2} Test 2 : Supprimer x1 et x2 ,N3=, J3 à supprimer. Retour arrière au nœud 4. Itération 4: x4= 0, J4 = {-5, -4}, N2 ={1, 2, 3}, Z4= O, Z*=3 Test 1: Supprimons x3 et N2 ={1, 2} Test 2 : Supprimer x1 et N2 ={2} Test 3 : Supprimer x2. Supprimer J4. Terminer, la solution optimale est atteinte au nœud 1. Techniques d'Optimisation ed2c'2012

Arborescence des solutions Techniques d'Optimisation ed2c'2012

Amélioration de Ballas (1/4) Réduction de l’explosion combinatoire des sommets de l’arborescence des solutions Construction de contraintes cumulatives (surrogate constraint) Soit un ensemble de contraintes (1) à remplacer par: (2)  est un vecteur positif non négatif Dk et Dk(x) représente les solutions réalisables respectivement de (1) et (2) alors Dk  Dk(x) Techniques d'Optimisation ed2c'2012

Amélioration de Ballas(2/4) Si x’ est solution réalisable de (P) alors x’ est aussi réalisable pour la contrainte (2) Si la contrainte (2) ne possède pas de solution réalisable, il en sera de même pour (P). Théorème: La contrainte ( >0) est dite bi variablement irréalisable si et seulement si: = i - < () 0 Pour une solution réalisable de et si alors : xj0= 0 pour aij0> et xj0=1 si aij0 <0 Techniques d'Optimisation ed2c'2012

Amélioration de Ballas(3/4) Explication du théorème: Si i) est satisfaite pour la contrainte combinée (2) alors la solution partielle correspondante doit être coupée. ii) offre un moyen simple de fixer les valeurs de certaines variables libres à 1 ou 0. Appliquer le théorème aux deux contraintes: a) -5 – (-x1 -2 x2 +3 x3) ≥ 0 est irréalisable b) -1 – (-2 x1 + x2 + x3+ x4) ≥ 0  x1= 1 Choix de la meilleure contrainte combinée: Glover: 1 (A x – b ) ≤ 0  est meilleure que « 2 (A x – b ) ≤ 0 » relativement à la solution partielle Jt si Min x { cx /1 (A x – b) ≤ 0 }  Min x{ cx /1 (A x – b) ≤0 } Techniques d'Optimisation ed2c'2012

Amélioration de Ballas (4/4) Geoffrion: La meilleure contrainte cumulative est celle qui vérifie:  Résoudre le programme linéaire: Min wt = Si wt Min < 0 alors Jt doit être coupée ( d’après i) du théorème de Geoffrion) Si wt Min ≥ 0, utiliser les valeurs optimales de  pour construire la contrainte combinée , la rajoutée au problème et utiliser le ii) du théorème précédent pour fixer les valeurs de certaines variables libres Techniques d'Optimisation ed2c'2012

Techniques d'Optimisation ed2c'2012 Exemple illustratif Soit le PLB suivant : Min Z = (3, 2, 5, 2, 2) t (x1, x2, x3, x4, x5) xj = (0, 1) La résolution du programme linéaire Min w2 = 1 – 2 2 - 3 + y1 + y2 + y3 + y4 + 3 1 + 7 2 - 11 3 - y1 ≤ 3 1 + ­6 3 – y2 ≤ 2 -1 - 3 2 - y3 ≤ 5 -2 1 + 4 2 + 3 3 – y4 ≤ 2 i, yj ≥ 0 i, j =1, 2, 3 Techniques d'Optimisation ed2c'2012

Exemple illustratif (2/2) La solution du programme linéaire est: 1 = - 0. 99 2 = 0. 48 et 3 = 0. 03, w2Min= - 0.99 + (ZMin – 1 – Z2)= 0. 1 > 0. Comme w2Min > 0, la contrainte combinée est : 0.48 ( -2 – (-7 x1 + 3 x3 – 4 x4)) + 0.03 (-1 – (11 x1 – 6 x2 -3 x4)) + ((3-1) – (3x1 + 2 x2 + 5 x3 + 2 x4)) ≥ 0. Ou encore : -0.03 x1 + 1.82 x2 + 6.44 x3 -0.01 x4 ≤ 1.01. En utilisant le théorème de Geoffrion, on déduit que x2 et x3 doivent être fixés à 0 pour espérer avoir une solution réalisable. Techniques d'Optimisation ed2c'2012