C1 – Interpolation et approximation C- Ingénierie Numérique
Présentation du problème Information analogique : Modèle de fonctions continues Information numérique : Modèle de fonctions continues
Problématique Connaissant un nuage de points, comment trouver une expression analytique constituants une bonne approximation Deux cas : La fonction doit passer exactement par les points : interpolation La fonction doit passer à proximité des points au mieux : approximation
Interpolation polynomiale : Idées Faire passer un polynôme par n points Décomposition sur une base polynomiale de dimension n Solution unique d’un polynôme, mais expressions différentes Exemples du trinôme:
Interpolation polynomiale : Base canonique Polynômes sous la forme : Trouver les n coefficients passant par les n points Nuage de n points de coordonnées (xi,yi)
Interpolation polynomiale : Base canonique Exemple : déterminer le système d'équation et le résoudre pour les points suivants 1 point (2,3) 2 points {(2,3), (4,4)} 3 points {(2,3), (3,3), (4,4)}
Interpolation polynomiale : Base canonique Exemple : déterminer le système d'équation et le résoudre pour les points suivants 1 point (2,3) 2 points {(2,3), (4,4)} 3 points {(2,3), (3,3), (4,4)} Solution 1 point : P(x) = 3 2 points : P(x) = 2 + x / 2 3 points : P(x) = x² /2-5x/2+ 6
Interpolation polynomiale : Base de Lagrange Très pratique pour l’interpolation: Expression des Li à partir du nuage de points (xi,yi)
Interpolation polynomiale : Base de Lagrange Exemple : Appliquer la méthode des polynômes de Lagrange avec les points {(2,3), (3,3), (4,4)}
Interpolation polynomiale : Base de Lagrange Exemple : Appliquer la méthode des polynômes de Lagrange avec les points {(2,3), (3,3), (4,4)} Rappel : Le polynôme est unique même si son expression est différente et dépend de la base de décomposition
Limite de l’interpolation polynomiale Lorsque n est très grand, la solution peut fortement osciller ->Phénomène de Runge Exemple : 11 points répartis suivant Interpolation non satisfaisante Coût de calcul élevé en O(n²)
Interpolation par morceaux Permet d’éviter le phénomène de Runge Seules quelques points pour réaliser une interpolation Ordre 0 : 1 seul point constant, l’interpolation est alors continue par morceaux : Non continue Dérivée non continue Suffisant pour un grand nuage de points
Interpolation par morceaux Ordre 1 : 2 points suffises , l’interpolation est linéaire par morceaux et donc continue : Continue Dérivée non continue Très souvent utilisé
Interpolation par morceaux Ordre 2 : 3 points suffises , l’interpolation est parabolique par morceaux et donc continue : Continue Dérivée non continue
Interpolation par morceaux Permet d’éviter le phénomène de Runge Seules quelques points pour réaliser une interpolation Ordre 0, 1 ou 2 au-delà inutile On peu obtenir une dérivée continue avec une interpolation par Spline Pour des surfaces, objets plus complexes, il existe pleins d’autres interpolations (Béziers, Hermite, …)
Interpolation par morceaux Ordre 0 Ordre 1 Spline
Interpolation par morceaux Exercice 1 : Proposer une fonction retournant la valeur de f(x) obtenu par une interpolation de degré 0 : y = interpolation(x, Xn, Yn) Xn,Yn : les listes des coordonnées des points Exercice 2 : Modifier votre fonction pour une interpolation de degré 1
Interpolation par morceaux Exercice 1 : Proposer une fonction retournant la valeur de f(x) obtenu par une interpolation de degré 0 : y = interpolation(x, Xn, Yn) avec Xn et Yn les listes contenant les points def interpolation(x,Xn,Yn): if x<Xn[0] or Xn[-1]<x: return None i=0 while i<len(Xn) and x<=Xn[i]: i+=1 return Yn[i]
Interpolation par morceaux Exercice 2 : Modifier votre fonction pour une interpolation de degré 1 def interpolation1(x,Xn,Yn): if x<Xn[0] or Xn[-1]<x : return None if Xn[-1]==x : return Yn[-1] i=0 while i<len(Xn) and x<=Xn[i]: i+=1 return Yn[i]+(Yn[i+1]-Yn[i])/(Xn[i+1]-Xn[i])*(x-Xn[i])
Interpolation par morceaux Exercice 3 Spline : Soit le nuage de n points (xk,yk). On définit le spline quadratique de ce nuage pour x [xk;xk+1] par : Le spline doit assurer la continuité et la dérivabilité
Interpolation par morceaux Exercice 3 Spline : Continuité à gauche et à droite Dérivée Au milieu Continuité de la dérivée
Interpolation par morceaux Exercice 3 Spline : Continuité à gauche et à droite Dérivabilité Relation de récurrence pour les ck Pour c0=0
Interpolation choix de l’ordre Choix du degré d'interpolation En interpolation polynomiale, pas la peine de monter trop haut Si la courbe a représenter est continue ordre 1, 2 ou 3 Si la courbe est discontinue, reste en ordre 1 maximum
Approximation : Principe Faire passer une fonction donnée au mieux autour d'un nuage de points Le choix du modèle de la fonction dépend souvent de la physique du problème
Approximation : Moindres carrés Méthode des moindres carrés Définie une fonctionnelle qui est la somme des écarts entre les points et la fonction par exemple le polynôme : Cette fonctionnelle est convexe et possède un minimum que l'on trouve en cherchant le point où la “dérivée” est nulle. La fonction possède des paramètres ak, on écrit les équations :
Approximation : Moindres carrés Exemple : faire une régression linéaire sur les 4 points (0,0) (1,1) (2, 1.5) (3,2)
Approximation : Moindres carrés Exemple : faire une régression linéaire sur les 4 points (0,0) (1,1) (2, 1.5) (3,2)
Approximation : Moindres carrés Exemple : faire une régression linéaire sur les 4 points (0,0) (1,1) (2, 1.5) (3,2) Pour a0 Pour a1
Approximation : Moindres carrés Exemple : faire une régression linéaire sur les 4 points (0,0) (1,1) (2, 1.5) (3,2)
Approximation : Moindres carrés Exemple : faire une régression de la réponse d’un premier ordre sur les 4 points (0,0) (13,1) (17, 2) (19,3) Trouver K et Tau minimisant les écarts avec les 4 points vérifiant Ce problème est bien plus complexe car le systèmes à résoudre n’est pas linéaire.