- Problème numérique
-
Analyse numérique
L’analyse numérique est une discipline des mathématiques. Elle s’intéresse tant aux fondements théoriques qu’à la mise en pratique des méthodes permettant de résoudre, par des calculs purement numériques, des problèmes d’analyse mathématique.
Plus formellement, l’analyse numérique est l’étude des algorithmes permettant de résoudre les problèmes de mathématiques continues (distinguées des mathématiques discrètes). Cela signifie qu’elle s’occupe principalement de répondre numériquement à des questions à variable réelle ou complexe comme l’algèbre linéaire numérique sur les champs réels ou complexes, la recherche de solution numérique d’équations différentielles et d’autres problèmes liés survenant dans les sciences physiques et l’ingénierie.
- Sa mise en œuvre pratique et ses domaines d’application sont décrits plus complètement dans l’article calcul numérique.
Sommaire
Introduction générale
Certains problèmes de mathématique continue peuvent être résolus de façon exacte par un algorithme. Ces algorithmes sont appelés méthodes directes. Des exemples sont l’élimination de Gauss-Jordan pour la résolution d’un système d’équations linéaires et l’algorithme du simplexe en programmation linéaire.
Cependant, aucune méthode directe n’est connue pour certains problèmes (de plus, pour une classe de problèmes dits NP-complets, aucun algorithme de calcul direct en temps polynomial n'est connu à ce jour). Dans de tels cas, il est parfois possible d’utiliser une méthode itérative pour tenter de déterminer une approximation de la solution. Une telle méthode démarre depuis une valeur devinée ou estimée grossièrement et trouve des approximations successives qui devraient converger vers la solution sous certaines conditions. Même quand une méthode directe existe cependant, une méthode itérative peut être préférable car elle est souvent plus efficace et même souvent plus stable (notamment elle permet le plus souvent de corriger des erreurs mineures dans les calculs intermédiaires).
Par ailleurs, certains problèmes continus peuvent parfois être remplacés par un problème discret dont la solution est connue pour approcher celle du problème continu ; ce procédé est appelé discrétisation. Par exemple la solution d’une équation différentielle est une fonction. Cette fonction peut être représentée de façon approchée par une quantité finie de données, par exemple par sa valeur en un nombre fini de points de son domaine de définition, même si ce domaine est continu.
L’utilisation de l’analyse numérique est grandement facilitée par les ordinateurs. L’accroissement de la disponibilité et de la puissance des ordinateurs depuis la seconde moitié du XXe siècle a permis l’application de l’analyse numérique dans de nombreux domaines scientifiques, techniques et économiques, avec souvent des effets révolutionnaires.
La génération et la propagation des erreurs
L’étude des erreurs forme une partie importante de l’analyse numérique. Les erreurs introduites dans la solution d’un problème ont plusieurs origines. Les erreurs d’arrondis surviennent car il est impossible de représenter en pratique tous les nombres réels exactement sur une machine à états finis (ce que sont en fin de compte tous les ordinateurs numériques). Les erreurs de troncature sont commises par exemple quand une méthode itérative est terminée et que la solution approchée obtenue diffère de la solution exacte. De façon similaire, la discrétisation d’un problème (aussi appelée quantification dans les applications pratiques de calcul numérique) induit une erreur de discrétisation (erreur de quantification dans les applications pratiques) car la solution du problème discret ne coïncide pas exactement avec la solution du problème continu.
Une fois que l’erreur est générée, elle se propagera généralement tout au long du calcul. Cela conduit à la notion de stabilité numérique : un algorithme est numériquement stable si une erreur, une fois générée, ne croît pas trop durant le calcul (dans une méthode de calcul itératif, une erreur trop grande peut dans certains cas faire diverger l’algorithme qui ne parviendra pas à approcher la solution). Cela n’est possible que si le problème est bien conditionné, ce qui signifie que la solution ne change que d'une faible quantité si les données du problème sont changées d'un montant faible. Ainsi, si un problème est mal conditionné, alors la moindre erreur dans les données provoquera une erreur très importante dans la solution trouvée.
Cependant, un algorithme qui résout un problème bien conditionné peut être ou ne pas être numériquement stable. Tout l’art de l’analyse numérique consiste à trouver un algorithme stable pour résoudre un problème mathématique bien posé. Un art apparenté est de trouver des algorithmes stables permettant de résoudre des problèmes mal posés, ce qui requiert généralement la recherche d'un problème bien posé dont la solution est proche du problème mal posé, puis de résoudre à la place ce second problème bien posé.
Domaines d’études
Le champ de l’analyse numérique est divisé en différentes disciplines suivant le type de problème à résoudre, et chaque discipline étudie diverses méthodes de résolution des problèmes correspondants.
Parmi les exemples de méthodes d’analyse numérique, en voici quelques-unes utilisées pour discrétiser un système d'équations : la méthode des éléments finis, la méthode des différences finies, la méthode des différences divisées, la méthode des volumes finis, ...
Calcul des valeurs de fonctions
Un des problèmes les plus simples est l’évaluation d’une fonction à un point donné. Mais même l’évaluation d’un polynôme approchant n’est pas aussi évidente qu’il y parait : la méthode de Horner est souvent plus efficace que la méthode élémentaire basée sur les coefficients du polynôme développé et la simple somme de ses termes. Généralement, il est important d’estimer à l’avance et de contrôler les erreurs d’arrondis survenant lors de l’utilisation d’opérations arithmétiques en virgule flottante.
Interpolation, extrapolation et régression
L’interpolation tente de résoudre ou d’approcher la solution au problème suivant : étant donné la valeur connue d'une certaine fonction en un certain nombre de points, quelle valeur prend cette fonction en un autre point quelconque situé entre deux points donnés ? Une méthode très simple est d’utiliser l’interpolation linéaire, qui suppose que la fonction inconnue évolue linéairement entre chaque paire de points successifs connus. Cette méthode peut être généralisée en interpolation polynomiale, qui est parfois plus précise (on peut en chiffer la précision si les dérivées de la fonction sont connues jusqu'à l'ordre N pour une interpolation à N points) et nécessite de plus petites tables de valeurs connues, mais elle souffre du phénomène de Runge.
D’autres méthodes d’interpolation utilisent des fonctions localisées telles que les splines ou la compression par ondelettes.
L’extrapolation est très similaire à l’interpolation, sauf que cette fois on veut déterminer la valeur d’une fonction en un point situé hors de l’intervalle des points connus. Dans certains cas (par exemple pour l’extrapolation de valeurs de fonctions cycliques, logarithmiques ou exponentielles), il est possible de réduire un problème d’extrapolation dans un domaine de définition très étendu voire infini, à un problème d’interpolation dans le sous-espace fini contenant les points connus.
La régression est aussi similaire, mais prend en compte le fait que les données connues sont aussi imprécises. Étant donné certains points, et la mesure de la valeur d’une fonction à ces points (avec une erreur maximale estimée), on veut déterminer la fonction inconnue. La méthode des moindres carrés est une façon populaire de procéder.
Résolution d’équations et systèmes d'équations
Un autre problème fondamental est le calcul des solutions d’une équation donnée. Deux cas sont communément distingués, suivant que l’équation est linéaire ou non.
De nombreux efforts ont été consacrés au développement de méthodes de résolution de systèmes d’équations linéaires. Les méthodes standards incluent l’élimination de Gauss-Jordan, et la décomposition LU. Les méthodes itératives telles que la méthode du gradient conjugué sont généralement préférées sur les larges systèmes d’équations.
Les algorithmes de recherche de racines d’une fonction sont utilisés pour résoudre les équations non linéaires (elles sont nommées ainsi car la racine d’une fonction est un argument pour lequel la fonction retourne zéro). Si la fonction est différentiable et que sa dérivée est connue, alors la méthode de Newton est un choix populaire. La linéarisation est une autre technique pour la résolution d’équations non linéaires.
Optimisation
Article détaillé : Optimisation (mathématiques).Les problèmes d’optimisation recherchent le point auquel une fonction donnée est maximale (ou minimale). Souvent, un tel point doit aussi satisfaire certaines contraintes.
Le champ d’application de l’optimisation est lui-même découpé en sous-champs, suivant la forme de la fonction objectif et celle de la contrainte. Par exemple, la programmation linéaire traite du cas où la fonction objectif et les contraintes sont toutes linéaires. Une méthode célèbre de programmation linéaire est l’algorithme du simplexe.
La méthode des multiplicateurs de Lagrange peut être utilisée pour réduire les problèmes d’optimisation avec contraintes en problèmes d’optimisation sans contraintes.
Évaluation des intégrales
Modèle:Article détaillé2
L’intégration numérique, également connue comme quadrature numérique, recherche la valeur d’une intégrale définie. Les méthodes populaires sont basées sur les formules de Newton-Cotes (avec par exemple la méthode du point médian (en) ou la méthode des trapèzes) ou utilisent les méthodes de quadrature de Gauss. Cependant si la dimension du domaine d’intégration devient large, ces méthodes deviennent aussi prohibitivement onéreuses. Dans cette situation, on peut utiliser une méthode de Monte-Carlo, une méthode de quasi-Monte-Carlo ou, dans des dimensions modestement larges, la méthode des grilles incomplètes.
Équations différentielles
- Articles principaux : Équation numérique différentielle ordinaire, Équation numérique aux dérivées partielles.
L'analyse numérique traite également du calcul (de façon approchée) des solutions d’équations différentielles, que ce soit des équations différentielles ordinaires, ou des équations aux dérivées partielles.
Les équations aux dérivées partielles sont résolues en discrétisant d’abord l’équation, en l’amenant dans un sous-espace de dimension finie. Ceci peut être réalisé par une méthode des éléments finis, une méthode des différences finies ou, particulièrement dans l’ingénierie, une méthode des volumes finis. La justification théorique de ces méthodes implique souvent des théorèmes de l’analyse fonctionnelle. Ceci réduit le problème à la résolution d’une équation algébrique.
Voir aussi
- Calcul numérique
- Méthode de la fausse position ( Méthode d'interpolation linéaire, false position, regula falsi)
- (en) Liste de sujets sur l’analyse numérique
- (en) Liste de publications importantes en analyse numérique
Liens externes
- (fr) Cours d'analyse numérique www.math-linux.com
- (fr) Méthodes d'analyse numérique cours optionnel au DEA de Modélisation Dynamique et Statistique des Systèmes Complexes, une introduction aux méthodes d'analyse numérique très largement utilisées en physique afin de résoudre les équations algébriques ou différentielles.
- (fr) Résolutions numériques de système linéaire
- (en) Numerical analysis DMOZ category
- (fr) Cours d'analyse numérique [pdf]
- (fr) Master Modélisation Numérique en Mécanique, Université de La Rochelle
Références
- (en) Nick Trefethen, The definition of numerical analysis, paru dans SIAM News, novembre 1992.
- (de)/(en) Numerische Mathematik : copies complètes numérisées en ligne des volumes 1-66, couvrant les années 1959 à 1994, d’un journal bien connu d’analyse numérique.
- Portail des mathématiques
Catégorie : Analyse numérique
Wikimedia Foundation. 2010.