Ho necessità di approssimare un insieme di punti con una curva di secondo grado. Dagli studi universitari ricordo che i coefficienti della curva interpolante si possono calcolare in modo abbastanza semplice, ma non ho più disponibili gli appunti ed i testi di allora…

In questo articolo forniamo la descrizione formale del
metodo di approssimazione ai minimi quadrati nel caso generico di polinomio
di interpolazione di grado N, presentando il risultato specifico nel
caso N = 2.

      Le competenze richieste
per seguire la trattazione formale presentata sono di primo anno di
università (facoltà scientifiche). Si veda una precedente
risposta
per il caso specifico N = 1 (retta
interpolante), dal taglio più divulgativo, destinata a studenti di
liceo.

      Sia

{(xi, yi),
i = 1, …, n}
        [1]

l’insieme degli n punti da interpolare mediante
funzione di interpolazione polinomiale di grado N:

.        [2]

Il metodo dei minimi quadrati consiste nel determinare gli
N + 1 coefficienti Ci in modo tale che la
somma degli scarti quadratici tra gli n valori yi da
interpolare e i valori della funzione interpolante
f(xi) sia minima. A tale scopo si definisce la
funzione residuo nel modo seguente:

        [3]

e se ne ricerca un minimo mediante il seguente sistema di
N + 1 equazioni nelle N + 1 incognite
c0, …, cN:

,
    p = 0, 1, , …, n
        [4]

esprimibile nella forma matriciale

c = B
        [5]

dove c è il vettore delle N + 1
incognite (c0 , …, cN) e
la matrice simmetrica A di N + 1 righe per
N + 1 colonne è costituita dai seguenti valori
ap,q di riga p e colonna q:

,
        [6]

dove xi sono gli n valori ascissa
da interpolare, mentre il vettore colonna B è espresso da

,
        [7]

essendo uj il vettore colonna
(0, …, 1, …, 0)t costituito da soli zero
ed un solo 1 nella posizione j-esima.

      Nel caso
N = 2, l’espressione del sistema [4] e [5] diviene:


        [8]

(tutte le sommatorie sono per
i = 1, …, n), un sistema di 3 equazioni
nelle tre incognite c0, c1,
c2. Tutti gli altri termini sono infatti delle costanti
date dalla sommatoria dei valori ascissa ed ordinata da interpolare.

      La matrice A
della [5] è simmetrica e definita positiva, prestandosi dunque
all’applicazione di algoritmi di risoluzione di sistemi matriciali piuttosto
efficienti.

      Si supponga ad esempio
di voler calcolare la parabola che approssimi ai minimi quadrati la serie di
coppie

(xy) = {(1, 1.2), (2, 1), (3, 1.8), (4, 2)}.

Applicando le [5], [6] e [7] otteniamo la formulazione matriciale del
problema con le seguenti matrici:

,

da cui la soluzione
c = A-1B = (6/5, -9/50, 1/10)
e la relativa parabola di interpolazione

.

Appendice

Dimostriamo ora come dalla espressione della [4] si arrivi
alla formulazione matriciale [5], [6], [7].

      Calcoliamo
esplicitamente la derivata della funzione residuo rispetto al generico
coefficiente cp: per brevità, utilizziamo la
notazione

.

Poiché la derivata della somma è pari alla
somma delle derivate, espandiamo il binomio quadratico del residuo e ne
calcoliamo la derivata:

.

Essendo yi2una costante, la sua
derivata è nulla; inoltre, applicando la regola di derivazione delle
funzioni composte, si ottiene:

 = 0.
        [A1]

Calcoliamo ora la derivata prima della funzione di
interpolazione f(xi) rispetto alla variabile
cp

:

trattandosi infatti di un polinomio, sopravvive solo il
termine p-esimo della funzione di interpolazione, che vede la
variabile di derivazione moltiplicata per la costante
xip.

      Sostituendo l’ultima
espressione nella [A1] e semplificando si ottiene, quindi:

da cui, portando al secondo membro i termini noti e
riarrangiando i termini della sommatoria si ottiene:

.

Infine, applicando le proprietà del prodotto di
potenze,

si ottiene, per p e q che variano da 0 a
n, al primo e al secondo membro l’espressione del prodotto
Ac e del vettore colonna B, rispettivamente.