Approximation au sens des moindres carrés

Documents pareils
Calcul différentiel sur R n Première partie

3 Approximation de solutions d équations

Programmes des classes préparatoires aux Grandes Ecoles

Cours d Analyse. Fonctions de plusieurs variables

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

I. Polynômes de Tchebychev

Cours d analyse numérique SMI-S4

Différentiabilité ; Fonctions de plusieurs variables réelles

Calcul Formel et Numérique, Partie I

Calcul Formel et Numérique, Partie I

Image d un intervalle par une fonction continue

Correction de l examen de la première session

Calcul différentiel. Chapitre Différentiabilité

EXERCICE 4 (7 points ) (Commun à tous les candidats)

TP 1 Introduction à Matlab Février 2009

Commun à tous les candidats

Limites finies en un point

Espérance conditionnelle

Capes Première épreuve

Simulation de variables aléatoires

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

Continuité d une fonction de plusieurs variables

Fonctions de plusieurs variables

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

Amphi 3: Espaces complets - Applications linéaires continues

Introduction à MATLAB R

Résolution d équations non linéaires

Approximations variationelles des EDP Notes du Cours de M2

Équations non linéaires

Examen optimisation Centrale Marseille (2008) et SupGalilee (2008)

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Aide - mémoire gnuplot 4.0

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Introduction à l étude des Corps Finis

Formes quadratiques. 1 Formes quadratiques et formes polaires associées. Imen BHOURI. 1.1 Définitions

Résolution de systèmes linéaires par des méthodes directes

Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)

Cours Informatique Master STEP

Fonctions de plusieurs variables et applications pour l ingénieur

Journées Télécom-UPS «Le numérique pour tous» David A. Madore. 29 mai 2015

Notes du cours MTH1101 Calcul I Partie II: fonctions de plusieurs variables

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

On ne peut pas entendre la forme d un tambour

Fonctions de plusieurs variables. Sébastien Tordeux

3. Conditionnement P (B)

Cours de mathématiques

Optimisation et programmation mathématique. Professeur Michel de Mathelin. Cours intégré : 20 h

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples

Filtrage stochastique non linéaire par la théorie de représentation des martingales

Exercice autour de densité, fonction de répatition, espérance et variance de variables quelconques.

3.2. Matlab/Simulink Généralités

Théorème du point fixe - Théorème de l inversion locale

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

RO04/TI07 - Optimisation non-linéaire

Continuité en un point

Calcul fonctionnel holomorphe dans les algèbres de Banach

C1 : Fonctions de plusieurs variables

Moments des variables aléatoires réelles

a et b étant deux nombres relatifs donnés, une fonction affine est une fonction qui a un nombre x associe le nombre ax + b

Notes du cours MTH1101N Calcul I Partie II: fonctions de plusieurs variables

Bien lire l énoncé 2 fois avant de continuer - Méthodes et/ou Explications Réponses. Antécédents d un nombre par une fonction

Modèles bi-dimensionnels de coques linéairement élastiques: Estimations de l écart entre leurs solutions.

Algorithmes pour la planification de mouvements en robotique non-holonome

Chp. 4. Minimisation d une fonction d une variable

Logique. Plan du chapitre

Sur certaines séries entières particulières

Méthodes de quadrature. Polytech Paris-UPMC. - p. 1/48

Continuité et dérivabilité d une fonction

NOMBRES COMPLEXES. Exercice 1 :

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Chapitre 2 Le problème de l unicité des solutions

IV- Equations, inéquations dans R, Systèmes d équations

Carl-Louis-Ferdinand von Lindemann ( )

Polynômes à plusieurs variables. Résultant

1 Complément sur la projection du nuage des individus

I. Programmation I. 1 Ecrire un programme en Scilab traduisant l organigramme montré ci-après (on pourra utiliser les annexes):

Cours Fonctions de deux variables

Intégration et probabilités TD1 Espaces mesurés Corrigé

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

TSTI 2D CH X : Exemples de lois à densité 1

Durée de L épreuve : 2 heures. Barème : Exercice n 4 : 1 ) 1 point 2 ) 2 points 3 ) 1 point

Méthode des éléments-finis par l exemple

LES MÉTHODES DE POINT INTÉRIEUR 1

Mesures gaussiennes et espaces de Fock

Analyse en Composantes Principales

I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES

= 1 si n = m& où n et m sont souvent des indices entiers, par exemple, n, m = 0, 1, 2, 3, 4... En fait,! n m

Rappels sur les suites - Algorithme

Plan du cours Cours théoriques. 29 septembre 2014

Programme de la classe de première année MPSI

Plan du cours : électricité 1

TP 0 : INTRODUCTION À MATLAB

Suites numériques 4. 1 Autres recettes pour calculer les limites

III- Raisonnement par récurrence

Transcription:

Approximation au sens des moindres carrés Grégory Vial 5 mars 23 Une manière simple d approcher une fonction f par une suite de polynômes p n sur un intervalle est d utiliser l interpolation de Lagrange. Cependant, il n y a pas nécessairement convergence de la suite (p n ) vers la fonction d origine quand le degré des polynômes tend vers l infini (c est ce que l on nomme le phénomène de Runge, voir [2]). Une solution consiste à fixer le degré et à effectuer une interpolation par morceaux (il y a alors convergence de (p n ) vers f quand la taille des sous-intervalles tend vers ). l arrive cependant qu on préfère utiliser une représentation sur l intervalle tout entier. On adopte alors un point de vue différent de l interpolation : plutôt que d imposer que p n et f coïncident en certains nœuds, on demande qu ils soient proches d une manière plus globale. Précisément, soit f une fonction continue sur l intervalle, on s intéressera aux deux cas suivants. Exemple 1. On recherche un polynôme p n de degré inférieur ou égal à n tel que la quantité f(x) p n (x) 2 dx soit minimale. Exemple 2. On recherche un polynôme p n de degré inférieur ou égal à n tel que la quantité N f(x i ) p n (x i ) 2 i= soit minimale, où (x i ) i N est une subdivision de et N n. Point de vue théorique Soit F un espace vectoriel muni d une forme bilinéaire symétrique positive, ; la semi-norme associée est notée. On considère P un sous-espace de F de dimension finie et on suppose que est une norme sur P. Pour f F, on recherche p P tel que la quantité f p soit minimale. Les deux exemples cités plus haut rentrent dans ce cadre : Exemple 1. F = C (, R), P = R n [X] et f, g c = f(x)g(x) dx. Exemple 2. F = C (, R), P = R n [X] et f, g d = N f(x i )g(x i ), où (x i ) est une subdivision de et N n. Proposition 1 Soit f F. l existe un unique élément p P tel que la quantité f p soit minimale. i= 1

Démonstration. ntroduisons l application Φ : q f q 2 = q 2 2 f, q + f 2. La fonctionelle Φ est continue et vérifie lim Φ(q) = +. q + Donc Φ admet un minimum sur P (qui est de dimension finie). Tout polynôme p, en lequel il est atteint, est un point critique de Φ : q P, f p, q =. Si on suppose que Φ atteint son minimum en deux polynômes p 1 et p 2, alors pour le choix q = p 1 p 2, on obtient p 1 p 2 =, d où p 1 = p 2, car, est définie sur P. Remarque. L application Φ est quadratique, cela explique le terme moindres carrés. Si on ne s intéresse pas à l approximation au sens des moindres cubes, par exemple, c est parce-que dans ce cas la différentielle de Φ n est plus linéaire. On peut préciser la convergence du polynôme d approximation pour les deux exemples considérés. Proposition 2 Soit p n R n [X] le polynôme obtenu dans le cadre de l exemple 1 (resp. 2). Alors p n converge vers f dans la norme c (resp. semi-norme d ) quand n tend vers l infini. Démonstration. Les deux (semi-)normes c et d sont dominées par la norme uniforme : g F, g c g et g d N g. Pour toute fonction continue f, il existe une suite q n R n [X] convergeant uniformément vers f. Par définition de p n, pour la norme continue c, f p n c f q n c f q n. l en est de même pour la norme discrète d. Mise en œuvre pratique On s intéresse dans ce paragraphe au calcul explicite du polynôme d approximation au sens des moindres carrés. Norme continue Soit f une fonction continue sur l intervalle ; on recherche un polynôme p n, de degré inférieur ou égal à n, tel que f p n 2 dx soit minimale. On a prouvé, dans la démonstration de la proposition 1, la relation de Pythagore (1) q R n [X], p n q dx = fq dx. 2

l s agit d un système linéaire carré : soit (e,..., e n ) une base de R n [X], si on recherche p n sous la forme p n = α j e j, alors (1) devient i =,... n, n ( j= ) e i e j dx α j = } {{ } a ij fe i dx, } {{ } b i qui n est autre que le système Aα = b, avec des notations naturelles. Le choix de la base canonique e j = X j conduit à la matrice de Hilbert, qui est très mal conditionnée (voir [3]), et n est donc jamais utilisé. l est préférable de choisir les polynômes e j tels que la matrice A soit l identité, c est-à-dire la famille orthogonale pour le produit scalaire de L 2 (). Le calcul des composantes du vecteur b nécessite la plupart du temps une intégration numérique. Norme discrète Soit f une fonction continue sur l intervalle ; on recherche un polynôme p n, de degré inférieur ou égal à n, tel que (2) N f(x i ) p n (x i ) 2 i= soit minimale. On peut écrire matriciellement de problème de minimisation : soient A la matrice de Van- Der-Monde de coefficient générique a ij = x j i et b le vecteur de composantes b i = f(x i ). Alors (2) devient (3) Chercher α R n tel que Aα b 2 soit minimale, les composantes du vecteur α sont celles du polynôme p n dans la base canonique de R n [X]. Notons que la matrice A comporte N lignes et n colonnes ; comme N n, on parle de matrice sur-déterminée. Proposition 3 Le problème (3) est équivalent au système linéaire suivant, dit équations normales : A T Aα = A T b. Démonstration. l s agit simplement d exprimer que α annule la différentielle de la fonctionnelle quadratique Aα b 2 2. La proposition précédente fournit un procédé de construction du polynôme d approximation p n : la matrice A T A étant symétrique définie positive, on peut utiliser les méthodes de Choleski ou du gradient conjugué. Cependant, les équations normales sont souvent assez mal conditionnées ; on leur préfère une méthode basée sur la décomposition QR de la matrice A (voir [1]). Proposition 4 Soit Q, orthogonale, et R, triangulaire supérieure, deux matrices telles que A = QR. On écrit, par blocs, [ ] [ ] R1 R = et Q T d1 b =. Alors α est donné par R 1 α = d 1. d 2 3

Démonstration. l suffit de remarquer que la norme euclidienne est stable par transformation orthogonale. Remarque. En général, le nombre d équations N + 1 est beaucoup plus grand que la dimension n + 1 de l espace R n [X] ; le cas particulier n = 1 correspond à la régression linéaire. La fonction matlab suivante calcule le polynôme d approximation de f : function valp=approx_mc(strf,x,n,t) % Calcule l évaluation du polyn^ome % d approximation de degré n de f % sur l intervalle x aux abscisses t. A=[]; for j=:n A=[A,x.^j]; end [Q,R]=qr(A); d=q *feval(strf,x); d1=d(1:n+1); R1=R(1:n+1,1:n+1); p=r1\d1; valp=polyval(flipud(p),t); ------------- function y=f(x) y=1./(1+x.^2); Noter l utilisation de la commande feval pour l appel de la fonction f. l est possible d utiliser les équations normales : p=(a *A)\(A *feval(strf,x)); ou encore la résolution de matlab pour le calcul du vecteur p : p=a\feval(strf,x); qui résout le système au sens des moindres carrés quand il est sur-déterminé. l existe aussi une fonction matlab qui calcule directement les coefficients du polynôme d approximation au sens des moindres carrés : polyfit. À l aide du script main.m, on a tracé la fonction f et son polynôme d approximation au sens des moindes carrés pour n = 1 et on a mis en évidence la convergence f p n d n +. N=1; M=5; x=linspace(-m,m,n) ; t=linspace(-m,m,1); % Tracé pour n=1 n=1; pt=approx_mc( f,x,n,t); close all plot(t,f(t),t,pt) title( f et p pour n=1 ) xlabel( x ); legend( f, p ); % Convergence en n nn=1:3; err=[]; for n=nn px=approx_mc( f,x,n,x); err=[err,norm(f(x)-px, inf )]; end figure plot(nn,err) title( Erreur en norme discrète en fonction du degré ) xlabel( degré n ) ylabel( erreur f-p _d ) 4

Les graphes construits par le programme main.m sont consignés dans la figure 1. On a choisi la fonction f définie sur [ 5, 5] par f(x) = 1 1 + x 2, qui est l exemple habituellement choisi pour illustrer le phénomène de Runge dans l interpolation de Lagrange. En revanche, l approximation au sens des moindres carrés converge quand le degré augmente. 1.2 f et p pour n=1.8 Erreur en norme discrète en fonction du degré 1 f p.7.8.6.5.6.4 erreur f-p d.4.3.2.2.1 -.2-5 -4-3 -2-1 1 2 3 4 5 x 5 1 15 2 25 3 degré n Fig. 1 Résultats du script main.m. Régression linéaire Le cas particulier n = 1 est particulièrement utile quand on cherche à mettre en évidence une vitesse de convergence : il permet d approcher un nuage de points par une droite moyenne. Le script reglin.m illustre son utilisation : % On clique avec le bouton % de droite le dernier point. figure plot([,1,1,],[,,1,1], k ) hold on button=1; xx=[];yy=[]; while (button~=3) [x,y,button]=ginput(1); plot(x,y, ro ) xx=[xx;x]; yy=[yy;y]; end p=polyfit(xx,yy,1); t=:.1:1; plot(t,p(1)*t+p(2)); title( Regression linéaire ) 1.9.8.7.6.5.4.3.2.1 Regression linéaire.1.2.3.4.5.6.7.8.9 1 Fig. 2 Résultat du script reglin.m. 5

Références [1] P. G. Ciarlet. ntroduction à l analyse numérique matricielle et à l optimisation. Collection Mathématiques Appliquées pour la Maîtrise. [Collection of Applied Mathematics for the Master s Degree]. Masson, Paris 1982. [2] J.-P. Demailly. Analyse numérique et équations différentielles. PUG, Grenoble 1996. [3] M. Schatzman. Analyse numérique. ntereditions, Paris 1991. Cours et exercices pour la licence. [Course and exercises for the bachelor s degree]. 6