Algorithme du simplexe
Simplex description.png

L'algorithme du simplexe de George Dantzig est une technique à la fois fondamentale et très populaire pour les problèmes d'optimisation linéaire. Ainsi, étant donné un ensemble d'inégalités linéaires sur n variables réelles, l'algorithme permet de minimiser (ou maximiser) une fonction objectif, qui est elle aussi linéaire (l'algorithme fonctionne encore quand la fonction est croissante en chacune des n variables).

En termes géométriques, l'ensemble des inégalités linéaires définit un polytope dans l'espace à n dimensions (polygone en 2 dimensions et polyèdre en 3 dimensions) et il s'agit de trouver le sommet optimal pour la fonction de coût donnée. En effet, la fonction que l'on cherche à minimiser étant linéaire sur le polytope, elle y est en particulier concave. Or une fonction concave et minorée sur un polytope admet un minimum en un des sommets du polytope. La recherche d'un point de minimum peut donc se restreindre aux sommets du polytope (qui peuvent être très nombreux néanmoins).

L'idée de l'algorithme consiste à partir d'un sommet quelconque du polytope et, à chaque itération, d'aller à un sommet adjacent s'il est possible d'en trouver un meilleur pour la fonction objectif. S'il n'y en a pas, l'algorithme s'arrête en concluant que le sommet courant est optimal. En général, il y a plusieurs sommets adjacents au sommet courant qui sont meilleurs pour l'objectif. Il faut en sélectionner un seul, la règle de sélection est appelée règle de pivotage.

Il a été montré pour les principales règles de pivotage employées que l'algorithme du simplexe pouvait prendre un temps de calcul exponentiel. En particulier, on ne sait pas s'il existe une règle de pivotage qui assurerait que l'algorithme se termine après un nombre polynomial d'étapes.

On peut montrer que le nombre d'itérations de l'algorithme est majoré par :  \frac{N-2}{\nu-1} ν est le plus petit nombre d'arêtes reliées à un même sommet du polytope parcouru par le simplexe et N est le nombre de sommets. On remarquera que ν est minoré par la dimension de l'espace dans lequel vit le polytope.

Néanmoins, l'algorithme du simplexe est très efficace en pratique et il est implémenté dans tous les solveurs de programmes linéaires. Les autres algorithmes de résolution de programmes linéaires sont basés soit sur la méthode de l'ellipsoïde soit sur la méthode du point intérieur.

Voir aussi

Liens externes

  • (en) Simplex Algorithm. Illustration détaillée de l'exécution de l'algorithme (version « tableau »).
  • (fr) [PDF] Exemple de l'algorithme du Simplexe. L’algorithme du simplexe appliqué de manière très didactique à un exemple (version « tableau »).

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Algorithme du simplexe de Wikipédia en français (auteurs)

Regardez d'autres dictionnaires:

  • Algorithme Du Simplexe — L algorithme du simplexe de George Dantzig est une technique à la fois fondamentale et très populaire pour les problèmes de programmation linéaire. Ainsi, étant donné un ensemble d inégalités linéaires sur n variables réelles, l …   Wikipédia en Français

  • Algorithme Glouton — Un algorithme glouton est un algorithme qui suit le principe de faire, étape par étape, un choix optimum local, dans l espoir d obtenir un résultat optimum global. Par exemple, dans le problème du rendu de monnaie (donner une somme avec le moins… …   Wikipédia en Français

  • Simplexe — Un tétraèdre est un 3 simplexe En mathématiques, et plus particulièrement en géométrie, un simplexe est une généralisation du triangle à une dimension quelconque. Sommaire …   Wikipédia en Français

  • Algorithme génétique — Les algorithmes génétiques appartiennent à la famille des algorithmes évolutionnistes. Leur but est d obtenir une solution approchée à un problème d optimisation, lorsqu il n existe pas de méthode exacte (ou que la solution est inconnue) pour le… …   Wikipédia en Français

  • Algorithme glouton — Un algorithme glouton est un algorithme qui suit le principe de faire, étape par étape, un choix optimum local, dans l espoir d obtenir un résultat optimum global. Par exemple, dans le problème du rendu de monnaie (donner une somme avec le moins… …   Wikipédia en Français

  • Algorithme de Graham — Parcours de Graham Le parcours de Graham est un algorithme déterminant l enveloppe convexe d un ensemble de points. Son principal intérêt est sa complexité algorithmique en O(n log n). Cet algorithme doit son nom à Ronald Graham, qui a publié l… …   Wikipédia en Français

  • Algorithme —  Ne pas confondre avec la notion d algorithme en sport Un algorithme est une suite finie et non ambiguë d’opérations ou d instructions permettant de résoudre un problème. Le mot algorithme vient du nom latinisé du mathématicien persan Al… …   Wikipédia en Français

  • Algorithme de Karmarkar — Traduction terminée Karmarkar s algorithm → …   Wikipédia en Français

  • Algorithme diviser pour régner — Diviser pour régner (informatique) Pour les articles homonymes, voir Diviser pour régner. Diviser pour régner est une technique algorithmique consistant à diviser un problème de grande taille en plusieurs sous problèmes analogues. L étape de… …   Wikipédia en Français

  • Algorithme probabiliste — En informatique, un algorithme probabiliste, parfois dit aussi randomisé, est un algorithme dont le déroulement fait appel à des données tirées au hasard. Parmi les algorithmes probabilistes, on distingue généralement ceux dits de Monte Carlo et… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”