Optimisation (mathématiques) : encyclopédie mathématiques
Cet article est issu de l'encyclopédie libre Wikipedia.L'optimisation est une branche des mathĂ©matiques, cherchant Ă analyser et Ă rĂ©soudre analytiquement ou numĂ©riquement les problèmes qui consistent Ă dĂ©terminer le meilleur Ă©lĂ©ment d'un ensemble, au sens d'un critère quantitatif donnĂ©. Ce mot vient du latin optimum qui signifie le meilleur.
L’optimisation joue un rôle important en recherche opérationnelle (donc en économie et microéconomie), dans les mathématiques appliquées (fondamentales pour l'industrie et l'ingénierie), en analyse et en analyse numérique, en statistique pour l’estimation du maximum de vraisemblance d’une distribution, pour la recherche de stratégies dans le cadre de la théorie des jeux, ou encore en théorie du contrôle et de la commande.
Aujourd'hui, tous les systèmes susceptibles d’être décrits par un modèle mathématique sont optimisés. La qualité des résultats et des prédictions dépend de la pertinence du modèle, de l’efficacité de l’algorithme et des moyens pour le traitement numérique.
Sommaire |
Ils sont extrêmement variés : optimisation d’un trajet, de la forme d’un objet, d’un prix de vente, d’une réaction chimique, du contrôle aérien, du rendement d’un appareil, du fonctionnement d'un moteur, de la gestion des lignes ferroviaires, du choix des investissements économiques, de la construction d’un navire, etc. L’optimisation de ces systèmes permet de trouver une configuration idéale, d’obtenir un gain d’effort, de temps, d’argent, d’énergie, de matière première, ou encore de satisfaction.
Très loin de constituer une liste exhaustive, ces quelques exemples attestent de la variété des formulations et préfigure la diversité des outils mathématiques susceptibles de résoudre ces problèmes.
Plus formellement, l'optimisation est l’étude des problèmes qui sont de la forme :
Les éléments de sont appelés les solutions admissibles, la fonction
est la fonction objectif et
est la (une) solution optimale.
Puisque la minimisation de est équivalente à la maximisation de
, une méthode pour trouver le minimum (ou le maximum) suffit à résoudre le problème d'optimisation.
Le plus souvent, est un sous-ensemble de l’espace euclidien
. Lorsqu’il est constitué des vecteurs dont les coordonnées satisfont un certain nombre de contraintes (de type égalité ou inégalité). On parle d'optimisation combinatoire lorsque
est un sous-ensemble de
ou de
.
Extrema locaux : un maximum local est défini comme un point de
pour lequel il existe un voisinage
de
tel que pour tout
,
; dans ce voisinage de
, les valeurs de la fonction dominent la valeur en ce point. Lorsque
est un sous-ensemble de
, ou plus généralement d’un espace vectoriel normé, la définition est équivalente à l’existence d’un
tel que, pour tout
satisfaisant
, on a
. Un minimum local est défini semblablement.
Il est en général facile de déterminer numériquement des maxima locaux (ils peuvent être nombreux). Pour vérifier que la solution trouvée est un maximum global, il est parfois possible de recourir à des connaissances additionnelles sur le problème. Selon la nature de A et/ou de la fonction f, divers théorèmes (principe du maximum) assurent des propriétés particulières de la solution optimale qui simplifient sa recherche.
Les problèmes d’optimisation sont souvent exprimés avec une notation spéciale. Voici quelques exemples :
On cherche la valeur minimale pour l’expression , où
s’étend sur les nombres réels
. La valeur minimale dans ce cas est 1, s’occasionnant Ă
.
On cherche la valeur maximale pour l’expression , où x s’étend sur les réels. Dans ce cas, il n’y a pas de tel maximum puisque l’expression n’est pas bornée, donc la réponse est « l’infini » ou « indéfini ».
On cherche la ou les valeurs de dans l'intervalle
qui minimise l'expression
(la valeur minimale véritable de cette expression n'est pas importante). Dans ce cas, la réponse est
.
On cherche la ou les paires qui maximisent la valeur de l'expression
, avec la contrainte ajoutée que la valeur absolue de
ne peut excéder 5 (à nouveau, la valeur maximale véritable de l'expression n'est pas importante). Dans ce cas, les solutions sont les paires de la forme
et
, oĂą
s'étend sur tous les entiers.
Une technique de résolution d’un problème d’optimisation mathématique désigne ici
Le choix d’une technique appropriée dépend de
Le problème d’origine est remplacé par un problème équivalent. Par exemple un changement de variables permettant de décomposer le problème en sous-problèmes ou la substitution d’inconnues permettant d’en réduire le nombre.
La technique du multiplicateur de Lagrange permet de s’affranchir de certaines contraintes (de type égalité) ; cette méthode revient en effet à introduire des pénalités croissantes à mesure que la solution se rapproche des contraintes. Un algorithme dû à Hugh Everett permet de mettre à jour de façon cohérente les valeurs des multiplicateurs à chaque itération pour garantir la convergence. Celui-ci a également généralisé l'interprétation de ces multiplicateurs pour les appliquer à des fonctions qui ne sont ni continues, ni dérivables. Le lambda exprime un coefficient de pénalité (notion de coût marginal d’une contrainte en économie).
De nombreuses méthodes et algorithmes permettent de trouver un zéro de la dérivée de f (certains sont spécifiques aux fonctions d’une variable) ou de son gradient . Elles s’appliquent valablement dans des situations où les contraintes sur A restent peu actives.
Toutes ces méthodes se développent dans le cadre d’un procédé itératif.
Ces approches peuvent souffrir de quelques défauts :
Cas particulier : Lorsque f est polynomiale de degré 2 dans ses arguments (forme quadratique et linéaire) et sans contrainte, annuler le gradient revient à résoudre un système linéaire (cf Catégorie:Analyse numérique matricielle).
Dans cette catégorie, la plupart des algorithmes généraux s’appliquent aux situations où les contraintes sur A restent peu actives. Ils se basent sur quelques idées dominantes :
Divers perfectionnements ont été apportés afin d’éviter :
Les mêmes défauts que ceux mentionnés dans la catégorie précédente peuvent aussi se présenter ici.
La Catégorie:Algorithme d'optimisation présente une liste et donne accès à ces méthodes.
Ces techniques concernent des problèmes où une partie (au moins) des variables de l’ensemble A prennent des valeurs discrètes. On les rencontre dans le cadre de
Pour résoudre des problèmes difficiles (par exemple ceux qui présentent de nombreux extrema locaux pauvres), des techniques ont été conçues pour déterminer des solutions qui ne sont pas rigoureusement optimales, mais qui s’en approchent. Ces méthodes se basent généralement sur des phénomènes physiques, biologiques, socio-psychologiques ou font appel au hasard. Les domaines d’application sont vastes et s’étendent souvent bien au-delà des problèmes pour lesquels elles ont été initialement conçues.
La Catégorie:Métaheuristique présente une liste et donne accès à ces méthodes.
Ces problèmes sortent du cadre strict de la définition donnée plus haut : à une solution admissible de A, la fonction objectif n’associe pas une valeur numérique, mais un point d’un ensemble qui sera le plus souvent associé à un vecteur. L'objectif est alors d'optimiser simultanément l'ensemble des composantes de ce vecteur. On peut aussi voir l’optimisation multiobjectif comme un ensemble de problèmes d'optimisation portant sur les mêmes paramètres, ayant des objectifs éventuellement contradictoires, et que l'on cherche à résoudre au mieux.
En général, l'espace dans lequel est exprimé le vecteur solution est muni d’un ordre partiel faisant intervenir des critères de dominance (par exemple en rapport avec la frontière de Paréto). La résolution consiste à trouver une solution dont l’objectif n’est dominé par aucun autre.
Les problèmes de la dynamique des corps rigides (en) (surtout la dynamique des corps rigides articulés) ont souvent besoin de techniques d'optimisation mathématique, puisqu'on peut voir la dynamique des corps rigides comme résolution d'une équation différentielle ordinaire sur une variété contrainte ; les contraintes sont diverses contraintes géométriques non linéaires telles que « ces deux points doivent toujours coïncider », ou « ce point doit toujours être sur cette courbe ». Aussi, le problème de calculer les forces de contact peut être achevé en résolvant un problème de complémentarité linéaire, qui peut aussi être vu comme un problème d'optimisation quadratique.
Plusieurs problèmes de conception peuvent aussi être exprimés sous forme de problèmes d’optimisation. Cette application est appelée l’optimisation de forme. Un sous-ensemble récent et croissant de ce domaine s’appelle l’Optimisation multidisciplinaire qui, bien qu’utile en plusieurs problèmes, a été particulièrement appliquée aux problèmes d'ingénierie et technologie spatiale.
Un autre domaine qui utilise les techniques d’optimisation est la recherche opérationnelle.
L’optimisation est un des outils centraux de la microéconomie qui est basée sur le principe de la rationalité et de l’optimisation des comportements, le profit pour les entreprises, et l’utilité pour les consommateurs.
En mécanique on distingue trois formes d'optimisation[1] :
Les premiers problèmes d'optimisation auraient été formulés par Euclide, au IIIe siècle avant notre ère, dans son ouvrage historique Éléments. Trois cent ans plus tard, Héron d'Alexandrie dans Catoptrica énonce le principe du plus court chemin dans le contexte de l'optique[2]. (voir figure)
Au XVIIe siècle, l'apparition du calcul différentiel entraîne l'invention de techniques d'optimisation, ou du moins en fait ressentir la nécessité. Newton met au point une méthode itérative permettant de trouver les extrémums locaux d'une fonction en faisant intervenir la notion de dérivée, issue de ses travaux avec Leibniz[3]. Cette nouvelle notion permet de grandes avancées dans l'optimisation de fonctions car le problème est ramené à la recherche des racines de la dérivée.
Durant le XVIIIe siècle, les travaux des mathématiciens Euler et Lagrange mènent au calcul des variations, une branche de l'analyse fonctionnelle regroupant plusieurs méthodes d'optimisation. Ce dernier invente une technique d'optimisation sous contraintes: Les multiplicateurs de Lagrange.
Le XIXe siècle est marqué par l'intérêt croissant des économistes pour les mathématiques. Ceux-ci mettent en place des modèles économiques qu'il convient d'optimiser, ce qui accélère le développement des mathématiques. Depuis cette période, l'optimisation est devenue un pilier des mathématiques appliquées et le foisonnement des techniques est tel qu'il ne saurait être résumé en quelques lignes.
On peut tout de même évoquer l'invention de plusieurs méthodes itératives utilisant le gradient de la fonction, ainsi que l'utilisation du terme programmation mathématique, pour désigner des problèmes d'optimisation.
Historiquement, le premier terme introduit fut celui de programmation linéaire, inventé par George Dantzig vers 1947[4]. Le terme programmation dans ce contexte ne réfère pas à la programmation informatique (bien que les ordinateurs soient largement utilisés de nos jours pour résoudre des programmes mathématiques). Il vient de l’usage du mot programme par les forces armées américaines pour établir des horaires de formation et des choix logistiques, que Dantzig étudiait à l’époque. L’emploi du terme programmation avait également un intérêt pour débloquer des crédits en une époque où la planification devenait une priorité des gouvernements. L'expression programmation mathématique, qui requiert la longue explication ci-dessus, tend à être abandonnée. Par exemple, en juin 2010, la société savante internationale qui représente cette discipline a vu son nom précédent Mathematical Programming Society changé en Mathematical Optimization Society ; pour la même raison, on préfère aujourd'hui utiliser les locutions optimisation linéaire/quadratique/... au lieu de programmation linéaire/quadratique/....
Cet article est issu de l'encyclopédie libre Wikipedia.