3. Variantes de l’algorithme

Slides:



Advertisements
Présentations similaires
7. Probème de flot à coût minimum.
Advertisements

Programmation linéaire et Recherche opérationnelle
Eléments d'algèbre linéaire
La Méthode de Simplexe Standardisation
La méthode du simplexe.
Gestion de portefeuille
6. Analyse postoptimale.
l’algorithme du simplexe
3. Variantes de l’algorithme
2. Méthodes du simplexe et son analyse.
Algorithmes et structures de données avancés
Système formel Nous avons introduit : signes de variables (x, y, z, …), de constantes (0, 1), d’opérations (+, ), de relations (=, ) Axiomes : ce sont.
5. Algorithme du simplexe
Génération de colonnes
Chapitre 8 Equations de Slutsky.
6. Analyse postoptimale. Analyse postoptimale Mesurer linfluence sur la solution optimale de modifier certains coefficients du problème Indiquer à lutilisateur.
Cours DÉTERMINANT. Au dernier cours nous avons vus Linverse dune matrice. Quelques théorèmes qui encadrent son existence. Les matrices élémentaires.
Programmation linéaire
Concepts avancés en mathématiques et informatique appliquées
Optimisation linéaire
Méthode du Simplex (Dantzig)
Systèmes d’équations linéaires
Rappel... Solution itérative de systèmes linéaires (suite et fin).
Espaces vectoriels Montage préparé par : S André Ross
Problème de flot à coût minimum
7. Problème de flot à coût minimum.
Dualité Introduction à la dualité. Construction du couple primal-dual.
Programmation linéaire en nombres entiers Algorithme de la subdivision successive («Branch and Bound Algorithm»)
OBJETS ÉLÉMENTAIRES DANS L’ESPACE À TROIS DIMENSIONS
5.1 SYSTÈME DÉQUATIONS LINÉAIRES Cours 13. Au dernier cours nous avons vus Léquations vectoriel et léquation normale dun plan. Lintersection de deux plans.
Optimisation linéaire
4.Convergence de lalgorithme du simplexe. Convergence dans le cas non dégénéré Hypothèse de non dégénérescence: toutes les variables de base sont positives.
3. Convergence de lalgorithme du simplexe. Preuve: En supposant que la matrice A est de plein rang m, chaque solution de base réalisable doit comporter.
RECONNAISSANCE DE FORMES
04/10/07 MATHÉMATIQUES FINANCIÈRES I Dixième cours.
MATHÉMATIQUES FINANCIÈRES I
09/10/07 MATHÉMATIQUES FINANCIÈRES I Onzième cours.
Méthode du simplexe Introduction, définitions et notations préliminaires, théorèmes fondamentaux, algorithme (primal) du simplexe, détermination de toutes.
ACT Cours 11 MATHÉMATIQUES FINANCIÈRES I Onzième cours.
Programmation linéaire en nombres entiers : les méthodes de troncature
Modélisation géométrique de base
l’algorithme du simplexe
Cours du 25 octobre Mardi le 24 octobre
MAXIMISER les RESULTATS
MATHÉMATIQUES FINANCIÈRES I
La décomposition en valeurs singulières: un outil fort utile
ASI 3 Méthodes numériques pour l’ingénieur
Cours de mathématiques économiques
Programmation linéaire en nombres entiers
Résolution d’un problème de diffusion 1D
CHAPITRE III Calcul vectoriel
6. Problème de flot à coût minimum.
- 5 - Optimisation linéaire et non-linéaire
20/09/07 MATHÉMATIQUES FINANCIÈRES I Sixième cours.
MATHÉMATIQUES FINANCIÈRES I
02/10/07 MATHÉMATIQUES FINANCIÈRES I Neuvième cours.
Post-optimisation, analyse de sensibilité et paramétrage
2. Méthode du simplexe et son analyse.
MATHÉMATIQUES FINANCIÈRES I
programmation linéaire
27/11/07 MATHÉMATIQUES FINANCIÈRES I Vingt-troisième cours.
1. Méthode du simplexe et son analyse.
Pierre Joli Cours de Mathématique Pierre Joli
Programme linéaire - solution graphique
Chapitre 2 Résolution de Programmes Linéaires. La méthode graphique Cette méthode est simple et s’applique à des problèmes de programmation linéaire à.
Techniques d'Optimisation Master
1 UE Intro. Optimisation L3 INFO UPSud II. Programmation linéaire en variables entières (ou mixtes)
OPTIMISATION 1ère année ingénieurs
2. Méthode du simplexe et son analyse.
5. Algorithme du simplexe
Transcription de la présentation:

3. Variantes de l’algorithme du simplexe

Les deux phases du simplexe Pour initialiser l’algorithme du simplexe, il faut disposer d’une solution de base réalisable initiale. Or une telle solution de base initiale n’est pas nécessairement disponible. De plus, en général, nous ne savons même pas si le domaine réalisable n’est pas vide. La phase I du simplexe: → indique si le problème est réalisable (i.e., son domaine réalisable n’est pas vide) → si oui, fournit l’information pour générer une solution de base réalisable initiale.

Cas simple Soit le problème de programmation linéaire suivant: En utilisant les variables d’écart xn+1 xn+2 . xn+m

Cas simple Le problème devient Les variables de base de la solution initiale sont xn+1, xn+2,…, xn+m

Problème du restaurateur transformé en min Transformons les contraintes d’inégalité du problème du restaurateur en égalité avec les variables d’écart u, p et h: min z = – 8x – 6y min z = – 8x – 6y Sujet à Sujet à 5x + 3y ≤ 30 5x + 3y + u =30 2x + 3y ≤ 24 2x + 3y + p =24 1x + 3y ≤ 18 1x + 3y + h = 18 x, y ≥ 0 x, y, u, p, h ≥ 0

Cas plus compliqué Considérons plutôt le problème suivant: En utilisant les variables d’écart xn+1 xn+2 . xn+m

Cas plus compliqué La solution de base où xn+1, xn+2,…, xn+m sont les variables de base n’est pas réalisable car les valeurs des variables xn+i = –bi ≤ 0 i = 1,2,…,m lorsque les variables hors base sont égales à 0 Alors le problème devient

Construisons un problème artificiel Cas général Nous utilisons une phase préliminaire (Phase I) Dans le cas général où le problème est sous la forme standard Construisons un problème artificiel Introduisons les variables artificielles t1 t2 . tm

Solution de base réalisable initiale Les contraintes deviennent donc Les variables t1, t2,…, tm sont les variables de base d’une solution de base réalisable de ce système

Construisons un problème artificiel Probème artificiel Nous utilisons une phase préliminaire (Phase I) Dans le cas général où le problème est sous la forme standard Construisons un problème artificiel Introduisons les variables artificielles t1 t2 . tm Remplaçons la fonction économique par une nouvelle: minimiser la somme des variables artificielles

Problème artificiel Le problème artificielle de la phase I est donc de la forme

Ou encore, le problème artificielle de la phase I est donc de la forme Résolvons ce problème avec l’algorithme du simplexe

Problème artificiel Générons un problème équivalent en soustrayant chacune des m premières contraintes de celle associée à la fonction économique Définissons

Problème artificiel équivalent Le problème équivalent est donc de la forme

Résolution du problème de la phase I Ce problème est résolu avec l’algorithme du simplexe. Les variables artificielles t1, t2 ,…, tm sont les variables de base de la solution initiale puisque leur valeur est non négative lorsque les variables xj du problème original sont fixées à 0.

Résultat de la phase I Proposition À la fin de la phase I (i) si la valeur optimale min w de la fonction économique est positive (i.e., min w > 0), alors le domaine réalisable du problème original est vide (i.e., le problème original n’est pas réalisable) (ii) si la valeur optimale min w de la fonction économique est nulle (i.e., min w = 0), alors le domaine réalisable du problème original n’est pas vide (i.e., le problème original est réalisable).

Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original n’est pas vide,

Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original n’est pas vide, substituons ces valeurs des variables xj dans le problème de la phase I

Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original n’est pas vide, substituons ces valeurs des variables xj dans le problème de la phase I

Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original n’est pas vide, substituons ces valeurs des variables xj dans le problème de la phase I pour obtenir une solution réalisable où toutes les variables ti sont égales à 0 et où la valeur de la fonction économique w = 0.

Résultat de la phase I Preuve (i) (Preuve par contraposée) Si le domaine réalisable du problème original n’est pas vide, substituons ces valeurs des variables xj dans le problème de la phase I pour obtenir une solution réalisable où toutes les variables ti sont égales à 0 et ainsi ayant une valeur de la fonction économique w = 0. Donc si min w > 0, alors le problème original n’a pas de solution.

Résultat de la phase I (ii) Si à la fin de la phase I, la valeur de min w = 0,

Résultat de la phase I (ii) Si à la fin de la phase I, la valeur de min w = 0, alors il existe une solution réalisable du problème de la phase I où toutes les variables artificielles ti sont égales à 0. Dans ce cas, les valeurs que prennent les variables xj constituent une solution pour le problème original.

Résultat de la phase I (ii) Si à la fin de la phase I, la valeur de min w = 0, alors il existe une solution réalisable du problème de la phase I où toutes les variables artificielles ti sont égales à 0. Dans ce cas, les valeurs que prennent les variables xj constituent une solution pour le problème original.

Solution initiale pour poursuivre Dans le cas où min w est égale à 0, nous poursuivons la résolution du problème original avec l’algorithme du simplexe en utilisant l’information du tableau de la dernière itération de la phase I pour construire une solution de base initiale pour le problème original. Considérons le tableau du simplexe de la dernière itération de la phase I

Tableau phase I m des colonnes du tableau sont les m vecteurs unitaires où le 1 est la iième composante Solution optimale de la phase I ↓

Tableau phase I m des colonnes du tableau sont les m vecteurs unitaires où le 1 est la iième composante La variable sous laquelle nous retrouvons le iième vecteur unitaire est la variable de base dans la iième ligne du tableau

Solution initiale pour poursuivre Deux cas différents doivent être considérés. Cas 1: Aucune variable artificielle n’est variable de base. Donc toutes les variables de base sont des variables originales xj. Considérons le tableau du simplexe de la dernière itération de la phase I

Solution initiale pour poursuivre Éliminons les colonnes des variables artificielles Remplaçons la dernière ligne du tableau par la fonction économique du problème original

Solution initiale pour poursuivre Dénotant les variables de base par ,le tableau devient Pour retrouver le tableau du simplexe associé à cette base, il faut ramener à 0 les coûts relatifs des variables de base

Solution initiale pour poursuivre Modifions la dernière ligne de ce tableau en soustrayant chacune des autres lignes i multipliée par De sorte que

Solution initiale pour poursuivre Le tableau devient donc Nous avons donc un tableau du simplexe associé à une solution initiale de base pour le problème originale où les variables de base sont

Cas 2: Certaines variables de base sont des variables artificielles Cas 2: Certaines variables de base sont des variables artificielles. Supposons que la variable artificielle tk est variable de base dans la ligne i

Solution initiale pour poursuivre Cas 2: Certaines variables de base sont des variables artificielles. Supposons que la variable artificielle tk est variable de base dans la ligne i. Cette ligne du tableau à la dernière itération de la phase I est de la forme Mais min w = 0 => tk = 0 . Ainsi Essayons de remplacer tk par une des variables originales xj à titre de variable de base dans la ligne i. Analysons les coefficients des variables xj dans cette ligne.

Solution initiale pour poursuivre Supposons qu’il existe un indice s, 1≤ s ≤ n, tel que . Transformons le dernier tableau de la phase I en exécutant un pivot sur l’élément pour que xs devienne la variable de base dans la ligne i. Ceci ne modifie en rien la valeur de l’objectif w puisque

Cas 2: Certaines variables de base sont des variables artificielles Cas 2: Certaines variables de base sont des variables artificielles. Supposons que la variable artificielle tk est variable de base dans la ligne i

Solution initiale pour poursuivre ii) Supposons que . On peut alors démontrer que la contrainte i du problème est redondante car elle peut s’exprimer comme une combinaison linéaire des autres contraintes. Dans ce cas, la contrainte i peut être éliminée sans modifier le domaine réalisable. Nous éliminons donc la ligne i du tableau. Après avoir traité chaque ligne où la variable de base est une variable artificielle selon i) ou ii), alors nous obtenons une autre solution optimale de la phase I où aucune variable artificielle n’est de base. Nous retombons alors sur le Cas 1

Problème artificiel Le problème artificielle de la phase I est donc de la forme

Méthode du simplexe – notation matricielle Une sous matrice B de A est une base de A si elle est mxm et non singulière (i.e, B-1 existe) Pour faciliter la présentation, supposons que la base B que nous considérons est composée des m premières colonnes de A, et ainsi Dénotons également Le problème original peut s’écrire

Exprimons xB en fonction de xR en utilisant les contraintes du problème Ainsi

En remplaçant xB par sa valeur en fonction de xR dans l’équation de la fonction économique Notons que ces deux problèmes sont équivalents car le deuxième est obtenu du premier à l’aide d’opérations élémentaires utilisant une matrice non singulière B-1

En regroupant les coefficients de xR

Le problème se traduit dans le tableau suivant

Notion de multiplicateurs du simplexe Considérons la dernière ligne du tableau du simplexe associé à la base B qui correspond aux vecteurs des coûts relatifs des variables:

Notion de multiplicateurs du simplexe Dénotons le vecteur défini par Alors Ou où dénote la jième colonne de la matrice de contrainte A π est le vecteur des multiplicateurs du simplexe associé à la base B.

Notion de multiplicateurs du simplexe Dénotons le vecteur défini par Alors Ou où dénote la jième colonne de la matrice de contrainte A πB est le vecteur des multiplicateurs du simplexe associé à la base B.

Notion de multiplicateurs du simplexe Le vecteur des multiplicateurs du simplexe π permet de calculer les coûts relatifs directement à partir des données originales du problème. Les composantes πi (i=1,2,…,m) du vecteur des multiplicateurs peuvent être considérés comme des poids associés aux lignes i du tableau (ou aux contraintes i du problème) tel que la soustraction d’une combinaison linéaire des lignes avec ces poids de la dernière ligne du tableau permet d’annuler les coûts relatifs des variables de base.

Sensitivité de la valeur optimale aux modifications des termes de droite Les multiplicateurs du simplexe associés à une base optimale permettent de mesurer l’effet de modifier les termes de droite sur la valeur optimale d’un problème. Considérons le problème original et un autre où les termes de droite sont modifiés

Sensitivité de la valeur optimale aux modifications des termes de droite Dénotons par B* une base optimale du problème original, et la solution de base optimale correspondante dont la valeur (optimale pour le problème) est donnée par

Sensitivité de la valeur optimale aux modifications des termes de droite Choisissons la valeur de de telle sorte que Donc B* demeure une base réalisable pour le nouveau problème modifié puisque la solution de base associée est

Sensitivité de la valeur optimale aux modifications des termes de droite Donc B* demeure une base réalisable pour le nouveau problème modifié puisque la solution de base associée est De plus, puisque ni les coûts cj ni la matrice A n’ont été modifiés, alors le vecteur des multiplicateur π* reste inchangé. Par conséquent les coûts relatifs demeurent inchangés et donc non négatifs pour le nouveau problème. Par conséquent, B* demeure une base optimale pour le nouveau problème

Sensitivité de la valeur optimale aux modifications des termes de droite Cette solution est optimale pour le nouveau problème. Évaluons la valeur optimale du nouveau problème:

Sensitivité de la valeur optimale aux modifications des termes de droite Évaluons la valeur optimale du nouveau problème:. Ainsi, indique la taux de variation unitaire de la valeur optimale lorsque le terme de droite bi de la contrainte i est modifié d’une quantité choisie de telle sorte que la base demeure réalisable pour le nouveau problème.

Domaine réalisable L’ensemble des points réalisables pour le système 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18 x,y≥0

Résolution graphique Considérons la fonction économique : z = –8x – 6y. La solution optimale: x = 3 et y = 5 => z = – 54. Vecteur des multiplicateurs optimaux: πT = [ – 3/2, 0, – 1/2] Si b1 = 30 devient b1+Δb1 avec Δb1<0 domaine réalisable diminue 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18

Résolution graphique Si b1 = 30 devient b1+Δb1 avec Considérons la fonction économique : z = –8x – 6y. La solution optimale: x = 3 et y = 5 => z = – 54. Vecteur des multiplicateurs optimaux: πT = [ – 3/2, 0, – 1/2] Si b1 = 30 devient b1+Δb1 avec Δb1>0 domaine réalisable augmente 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18

Résolution graphique Considérons la fonction économique : z = –8x – 6y. La solution optimale: x = 3 et y = 5 => z = – 54. Vecteur des multiplicateurs optimaux: πT = [ – 3/2, 0, – 1/2] Si b3 = 18 devient b3+Δb3 avec Δb3<0 domaine réalisable diminue 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18

Résolution graphique Considérons la fonction économique : z = –8x – 6y. La solution optimale: x = 3 et y = 5 => z = – 54. Vecteur des multiplicateurs optimaux: πT = [ – 3/2, 0, – 1/2] Si b2 = 24 devient b2+Δb2 avec Δb2<0 domaine réalisable ne change pas 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18

Forme révisée du simplexe Dans cette variante de l’algorithme du simplexe, nous exploitons les multiplicateurs du simplexe pour permettre de faire le pivot sur un tableau de dimension réduite. Nous considérons le problème de programmation linéaire sous sa forme standard

Forme révisée du simplexe Les données du problème peuvent être résumées dans le tableau suivant

Construisons un nouveau tableau à partir de ce dernier en ajoutant une matrice identité mxm à côté de la matrice A des contraintes et en lui associant un vecteur de m composantes égales à 0 dans la dernière ligne du tableau

Supposons que nous résolvions le problème avec l’algorithme du simplexe et que nous fassions également les pivots sur la partie additionnelle du tableau à chaque itération. Considérons une solution de base réalisable dont la base B est constituée des m premières colonnes de A. Pour faciliter la présentation représentons le tableau augmenté sous une forme matricielle équivalente:

Le tableau du simplexe associé à la base B peut être retrouvé en multipliant les m premières lignes du tableau par B-1 et en ramenant les coûts relatifs des variables de base à 0 B-1

Considérant maintenant la représentation explicite du tableau augmenté à cette itération La matrice B-1 se retrouve à l’endroit où était la matrice identité dans le tableau des données originales

1 Dénotons par π = [π1, π2,…, πm]T le vecteur des multiplicateurs associés à la base B. Alors En particulier, pour i = 1,2,…,m, puisque cn+i = 0 et

Ce tableau s’écrit donc sous la forme B-1 inverse de la base Multiplicateurs changés de signe

La partie suivante de ce tableau contient toute l’information nécessaire pour compléter une itération du simplexe.

Critère d’entrée: Pour déterminer la variable d’entrée ou vérifier si la solution actuelle est optimale, il faut déterminer les coûts relatifs

Critère de sortie: Pour compléter cette étape, il faut connaître

Pivot: Il suffit de compléter le pivot uniquement sur les colonnes du tableau précédent. En effet nous aurons alors toute l’information nécessaire pour compléter la prochaine itération. En pivotant sur l’élément

+1

Variante du simplexe pour problème avec variables bornées Considérons le problème de programmation linéaire avec variables bornées suivant Ramenons à 0 les bornes inférieures en faisant le changement de variables suivant xj = gj – lj (i.e., gj = xj + lj )

Variante du simplexe pour problème avec variables bornées le problème devient Ramenons à 0 les bornes inférieures en faisant le changement de variables suivant xj = gj – lj (i.e., gj = xj + lj )

Variante du simplexe pour problème avec variables bornées le problème devient et en remplaçant: uj = qj – lj et b = h – Al

Variante du simplexe pour problème avec variables bornées Dans ce problème puisque cTl représente une constante, nous pouvons la sortir de la minimisation sans changer la solution optimale et dans la suite de la présentation considérer le problème sans cette constante sans perte de généralité.

Considérons la formulation explicite du problème Une façon de le résoudre est de le ramener sous une forme standard en introduisant des variables d’écart yj, et d’ensuite utiliser l’algorithme du simplexe

Considérons une solution de base réalisable de ce problème. La présence des contraintes xj + yj = uj implique qu’au moins une des deux variables xj ou yj est variable de base, j = 1,2,…,n. Donc une des trois situations suivantes prévaut pour chaque j = 1,2,…,n: a) xj = uj est variable de base et yj = 0 est variable hors base b) xj = 0 est variable hors base et yj = uj est variable de base c) 0 < xj < uj est variable de base et 0 < yj < uj est variable de base Non dégénérescence: toutes les variables de base sont positives à chaque itération

m + n variables de base requises il y a n variables yj Il y a au moins m variables xj dans la base Exactement m variables xj satisfont 0 < xj < uj. Par contradiction, si m0 m variables xj satisfaisaient la relation, alors les m0 variables yj correspondantes seraient également dans la base. De plus, pour les n – m0 autres indices j xj = uj (cas a) ou bien yj = uj (cas b) serait vérifié. Alors le nombre de variables de base serait égal à 2m0 + (n – m0) = m0 + n m + n

La base a donc la forme suivante 0 < xj < uj 0 < yj < uj xj=uj yj=uj

Chaque base a donc la forme suivante 0 < xj < uj 0 < yj < uj xj=uj yj=uj

Chaque base a donc la forme suivante Base de A Les colonnes de la base B de A correspondent aux variables 0<xj<uj n 0 < xj < uj 0 < yj < uj xj=uj yj=uj

Chaque base a donc la forme suivante Base de A Les colonnes de la base B de A correspondent aux variables 0<xj<uj n 0 < xj < uj 0 < yj < uj xj=uj yj=uj

Ainsi, nous pouvons développer une variante du simplexe pour résoudre directement le problème en traitant implicitement les bornes supérieures uj. À chaque itération, nous allons considérer une solution (de base) associée à une base B de A ayant m variables de base n – m variables hors base

n – m variables hors base . À chaque itération, nous allons considérer une solution (de base) associée à une base B de A ayant m variables de base n – m variables hors base . Si on dénote les indices des variables de base IB = {j1, j2, …, jm} où ji est l’indice de la variable de base dans la iième ligne, alors Nous retrouvons les mêmes expressions que pour les problèmes sans bornes sauf que les variables hors base

Il suffit d’ajuster les critères d’entrée et de sortie en conséquence pour retrouver la variante du simplexe. Nous retrouvons les mêmes expressions que pour les problèmes sans bornes sauf que les variables hors base

Étape 1: Choix de la variable d’entrée Le critère pour choisir la variable d’entrée est modifié pour tenir compte des variables hors base xj à leur borne supérieure uj qui peuvent diminuer. Ainsi, pour un indice si , il est avantageux d’augmenter xj si , il est avantageux de diminuer xj Déterminons et Soit Si , alors la solution est optimale et l’algorithme s’arrête. Si , alors la variable xs augmente; aller à l’étape 2.1. Si , alors la variable xs diminue; aller à l’étape 2.2

Étape 2.1: Choix de la variable de sortie la valeur de la variable de base L’augmentation θ de la variable d’entrée xs est limitée par la première des trois situations suivantes qui se produit: i) xs atteint sa borne sup. us ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si θ = ∞, alors le problème n’est pas borné inférieurement et l’algorithme s’arrête.

Étape 2.1: Choix de la variable de sortie la valeur de la variable de base L’augmentation θ de la variable d’entrée xs est limitée par la première des trois situations suivantes qui se produit: i) xs atteint sa borne sup. us ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si θ = us, alors l’ensemble des variables de base reste le même et la même base est utilisée à la prochaine itération. La variable xs demeure hors base et sa valeur passe de 0 à us. Retourner à l’étape 1.

Étape 2.1: Choix de la variable de sortie la valeur de la variable de base L’augmentation θ de la variable d’entrée xsest limitée par la première des trois situations suivantes qui se produit: i) xs atteint sa borne sup. us ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si alors la valeur de la variable d’entrée xs augmente à θ. La variable d’entrée xs devient variable de base à la place de la variable de sortie qui devient égale à 0. Pivoter sur et retourner à l’étape 1

Étape 2.1: Choix de la variable de sortie la valeur de la variable de base L’augmentation θ de la variable d’entrée xs est limitée par la première des trois situations suivantes qui se produit: i) xs atteint sa borne sup. us ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si alors la valeur de la variable d’entrée xs augmente à θ. La variable d’entrée xs devient variable de base à la place de la variable de sortie qui devient égale à . Pivoter sur et retourner à l’étape 1

Étape 1: Choix de la variable d’entrée Le critère pour choisir la variable d’entrée est modifié pour tenir compte des variables hors base xj à leur borne supérieure uj qui peuvent diminuer. Ainsi, pour un indice si , il est avantageux d’augmenter xj si , il est avantageux de diminuer xj Déterminons et Soit Si , alors la solution est optimale et l’algorithme s’arrête. Si , alors la variable xs augmente; aller à l’étape 2.1. Si , alors la variable xs diminue; aller à l’étape 2.2

Étape 2.2: Choix de la variable de sortie la valeur de la variable de base La réduction θ de la valeur de la variable d’entrée xs est limitée par la première des trois situations suivantes qui se produit: i) xs atteint sa borne inf. 0 ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si θ = us, alors l’ensemble des variables de base reste le même et la même base est utilisée à la prochaine itération. La variable xs demeure hors base et sa valeur passe de us à 0. Retourner à l’étape 1.

Étape 2.2: Choix de la variable de sortie la valeur de la variable de base La réduction θ de la valeur de la variable d’entrée xs est limitée par la première des trois situations suivantes qui se produit: i) xs atteint sa borne inf. 0 ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si alors la valeur de la variable d’entrée xs est réduite de θ (i.e., xs← us– θ). La variable d’entrée xs devient variable de base à la place de la variable de sortie qui devient égale à 0. Pivoter sur et retourner à l’étape 1

Étape 2.2: Choix de la variable de sortie la valeur de la variable de base La réduction θ de la valeur de la variable d’entrée xs est limitée par la première des trois situations suivantes qui se produit: i) xs atteint sa borne inf. 0 ii) une variable de base décroît à 0 (dans ce cas ) iii) une variable de base augmente pour atteindre sa borne sup. (dans ce cas ) Soit Si alors la valeur de la variable d’entrée xs et réduite de θ (i.e., xs← us– θ). La variable d’entrée xs devient variable de base à la place de la variable de sortie qui devient égale à . Pivoter sur et retourner à l’étape 1

Étape 3: Pivot L’élément de pivot est à l’intersection de la ligne de la variable d’entrée xs et de la colonne de la variable de sortie xr Variable d’entrée Variable de sortie –

Tableau résultant pour amorcer la prochaine itération –

Problème du restaurateur L’ensemble des points réalisables pour le système 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18 x,y≥0 x ≤ 4

Problème du restaurateur L’ensemble des points réalisables pour le système 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18 x,y≥0 x ≤ 4

Problème du restaurateur L’ensemble des points réalisables pour le système 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18 x,y≥0 x ≤ 4

Problème du restaurateur L’ensemble des points réalisables pour le système 5x + 3y ≤ 30 2x + 3y ≤ 24 1x + 3y ≤ 18 x,y≥0 x ≤ 4