Calcolo numerico/Approssimazione dei minimi quadrati con funzioni continue

Da testwiki.
Vai alla navigazione Vai alla ricerca

Template:Calcolo numerico

Descrizione del problema

Supponiamo di avere una funzione f continua su un certo intervallo [a,b] (invece che un insieme di dati), e supponiamo di considerare un set di funzioni {ϕj(x)} che costituiscono un insieme di generatori indipendenti. Vogliamo determinare ϕ∗(x)=∑j=1nαj∗ϕj(x) tali che

(|f−ϕ∗|)2=minϕ∈V(|f−ϕ|)2

Consideriamo il prodotto scalare L2 pesato, tale che

g⋅h=∫abω(x)g(x)h(x)dx

dove ω(x) viene chiamata peso.

Si dice funzione peso una funzione ω(x)≥0∀x∈[a,b], e tale che ∫abω(x)dx<∞. Il prodotto scalare induce una norma

|g|=∫abω(x)g(x)dx

Chiamiamo

ψ(a0,…,an)=(|f−ϕ|)2=∫ab[f(x)−∑j=0najϕj(x)]2ωxdx

Per ogni i=0,…,n consideriamo

∂ψ∂ai=∫ab∂∂ai[f−∑j=0nϕ(x)2]ω(x)dx

=∫ab2∗(f(x)−∑j=0najϕj(x))∗(−ϕj(x))∗ω(x)dx

e imponiamo

2(−f⋅ϕi+∑j=0naj∗ϕi⋅ϕj)=0

Otteniamo il sistema delle equazioni normali

C𝒂=𝒃

con

C=(cij)=ϕi⋅ϕj

bi=f⋅ϕi

Come nel caso discreto, C=Hψ, e dimostriamo che C è simmetrica e definita positiva.

Proposizione 5.2

Se C è simmetrica definita positiva, allora esiste unica la soluzione del sistema

C𝒂=𝒃

ed è un minimo.

Dim. La simmetria è ovvia per le proprietà del prodotto scalare

cij=ϕi⋅ϕj=∫abϕiϕjω(x)dx=ϕj⋅ϕi∀i,j

Dimostriamo che per ogni z≠0.

𝒛tC𝒛>0

dove

𝒛tC𝒛=∑i,j=0nziCijzj

e sostituendo le espressioni dei Cij otteniamo

=(∑iziϕi)∗∑jϕjzj)

=(|∑j=0nϕjzj|)2≥0

ztCz=0 se e solo se |ϕ|=0, cioè

∑j=0nϕjzj=0

e quindi se e solo se zj=0∀j.

Si garantisce che l'unica soluzione del sistema lineare è un minimo.

Esempio sullo spazio dei polinomi

Consideriamo come peso w(x)=1, e i generatori ϕj=xj,j=0,…,n (spazio dei polinomi di grado n).

cij=∫abxixjdx=∫abxi+jdx=1/(i+j+1)∗[bi+j+1−ai+j+1)

Si ottiene una matrice di Henkel, costante lungo le antidiagonali.

Nel caso in cui [a,b]=[0,1] si ha cij=1/(i+j+1) e C è la matrice di Hilbert.

11/21/31/41/21/31/41/81/31/41/51/61/41/51/61/7

È un esempio di matrice mal condizionata.

Sistema di generatori ortogonali

Per evitare di avere sistemi con matrici mal condizionate, consideriamo ϕi⋅ϕj=0∀i≠j, in modo che C sia una matrice diagonale.

Introduciamo famiglie di polinomi ortogonali rispetto a funzioni peso assegnate.

Caso 1: polinomi di Legendre

Questi polinomi sono ortogonali sull'intervallo [−1,1] con ω(x)=1.

li⋅lj=∫abliljdx=k∗δij

l0(x)=1

l1(x)=x

(j+1)∗lj+1(x)=(2j+1)x∗lj(x)−jlj−1(x)formula di ricorsione a tre termini

dove li⋅li=2/(2i+1).

Segue che, siccome il sistema dei minimi quadrati ha una matrice diagonale, si ha

aj=∫−11f∗ϕj2/(2j+1)

Il condizionamento spettrale di una matrice simmetrica e definita positiva è

λmax(C)λmin(C)=2/(0+1)2/(2n+1)=2n+1

e il condizionamento cresce in maniera lineare rispetto a n.

Caso 2: polinomi di Chebyshev

Definiamo i pesi

w(x)=11−x2

e

tj(x)=cos⁡(j∗arccos⁡x)

ti⋅tj=∫−11cos⁡(j∗arccos⁡(x))∗cos⁡(i∗arccos⁡(x))1−x2=

={0⟺i≠jπ⟺i=j=0π/2⟺i=j>0

aj=∫−11f∗tj1−x2∗(tj⋅tj)

Cerchiamo

K2(C)=ππ/2=2

e il condizionamento è indipendente dalla dimensione.

Template:Avanzamento