Calcolo numerico/Sistemi lineari e errore inerente (condizionamento)

Da testwiki.
Vai alla navigazione Vai alla ricerca

Template:Calcolo numerico

Perturbazioni del termine noto

Consideriamo un sistema della forma

A𝒙=𝒃,A∈Matn,ℝ

e supponiamo che A sia non singolare.

Consideriamo il caso in cui

A𝒙=𝒃¯

𝒃¯=𝒃+Ξ΄b

che ha soluzione 𝒙¯=𝒙+Ξ΄x. Ci chiediamo quale sia la relazione tra Ξ΄x e Ξ΄b.

Considerando le relazioni

A𝒙=𝒃

A𝒙¯=𝒃¯

Sottraiamo membro a membro:

Aπ’™Β―βˆ’A𝒙=π’ƒΒ―βˆ’π’ƒ

π’™Β―βˆ’π’™=Aβˆ’1[π’ƒΒ―βˆ’π’ƒ]=Aβˆ’1Ξ΄b

passando alle norme

|π’™Β―βˆ’π’™|=|Aβˆ’1Ξ΄b|≀|Aβˆ’1|βˆ—|Ξ΄b|

|π’™Β―βˆ’π’™|≀|Aβˆ’1|βˆ—|Ξ΄b|relazione∘

ma

|𝒃|≀|A|βˆ—|𝒙|

allora

1|𝒙|≀|A||𝒃|relazione∘∘

e unendo le relazioni ∘ e ∘∘:

|π’™Β―βˆ’π’™||𝒙|≀|A|βˆ—|Aβˆ’1|βˆ—|Ξ΄b||𝒃|

quindi

|π’™Β―βˆ’π’™||𝒙|≀K(A)βˆ—|Ξ΄b||𝒃|

e in termini degli errori:

Ξ΅x≀K(A)Ξ΅b

Caso generale

Consideriamo un sistema in cui ci sia una perturbazione anche sui coefficienti della matrice. Risolviamo quindi l'equazione

A¯𝒙¯=𝒃¯,AΒ―=A+Ξ΄A,𝒃¯=𝒃+Ξ΄b

Sono necessari i due seguenti teoremi tecnici.

Teorema 2.1

Data una norma matriciale indotta, tale che |A|<1 allora I+A Γ¨ non singolare, e |(I+A)βˆ’1|≀11βˆ’|A|.

Dimostrazione

Dimostriamo che I+A Γ¨ non singolare.

|A|<1⟢ρ(A)<1,

gli autovalori di I+A sono della forma 1+Ξ»i con Ξ»i autovalori di A.

Consideriamo la relazione

(I+A)(I+A)βˆ’1=I

ed espandendo il prodotto:

(I+A)βˆ’1+A(I+A)βˆ’1=I

(I+A)βˆ’1=Iβˆ’A(I+A)βˆ’1

|(I+A)βˆ’1|≀|Iβˆ’A(I+A)βˆ’1|≀|I|+|A|βˆ—|(I+A)βˆ’1|

|I|=1 perchΓ© sto considerando una norma matriciale indotta.

(1βˆ’|A|)βˆ—|(I+A)βˆ’1|≀1

1βˆ’|A|>0, allora

|(I+A)βˆ’1|≀11βˆ’|A|

cvd

Teorema 2.2

Se |Aβˆ’1|βˆ—|Ξ΄A|<1 allora AΒ― Γ¨ non singolare, e

|(I+Aβˆ’1Ξ΄A)βˆ’1|≀11βˆ’|Aβˆ’1|βˆ—|Ξ΄A|

Dimostrazione

AΒ―=A+Ξ΄A, e siccome A Γ¨ non singolare posso raccogliere A e scrivere:

AΒ―=A(I+Aβˆ’1Ξ΄A)

ma |Aβˆ’1Ξ΄A|≀|Aβˆ’1|βˆ—|Ξ΄A|<1 per ipotesi. Allora AΒ― Γ¨ non singolare, per il teorema precedente.

|(I+Aβˆ’1Ξ΄A)βˆ’1|≀11βˆ’|Aβˆ’1Ξ΄A|≀11βˆ’|Aβˆ’1||Ξ΄A|

cvd

Risultato di analisi a priori

Teorema 2.3

Dato il sistema A𝒙=𝒃, con A non singolare, 𝒃≠0, con le perturbazioni sui dati Ξ΄A,Ξ΄b, allora consideriamo il sistema

(A+Ξ΄A)(𝒙+Ξ΄x)=𝒃+Ξ΄b

nell'ipotesi che

|Aβˆ’1|βˆ—|Ξ΄A|<1

allora

AΒ―=A+Ξ΄A

Γ¨ non singolare e per l'errore relativo

Ξ΅x=|Ξ΄x||𝒙|=|π’™Β―βˆ’π’™||𝒙|

vale la relazione

Ξ΅x≀K(A)βˆ—(Ξ΅b+Ξ΅A)1βˆ’K(A)βˆ—Ξ΅A

con

Ξ΅A=|Ξ΄A||A|

Il teorema afferma che se il numero di condizionamento di A Γ¨ piccolo, a errori piccoli sui dati corrisponde un errore piccolo nella soluzione, e il problema Γ¨ ben condizionato, se invece K(A) Γ¨ grande piccoli errori sui dati possono dare grandi errori sulla soluzione (in quest'ultimo caso, la quantitΓ  al secondo membro Γ¨ molto grande e, su quella a primo membro, che deve essere minore, non si hanno molte informazioni).

Dimostrazione

(A+Ξ΄A)(𝒙+Ξ΄x)=𝒃+Ξ΄b

A𝒙+𝒙δA+AΞ΄x+Ξ΄AΞ΄x=𝒃+Ξ΄b

e siccome A𝒙=𝒃,

𝒙δA+AΞ΄x+Ξ΄AΞ΄x=Ξ΄b

e isolando AΞ΄x:

AΞ΄x=Ξ΄bβˆ’π’™Ξ΄Aβˆ’Ξ΄AΞ΄x

e siccome A Γ¨ non singolare

Ξ΄x=Aβˆ’1[Ξ΄bβˆ’π’™Ξ΄Aβˆ’Ξ΄AΞ΄x]

e portando a primo membro i termini moltiplicati per Ξ΄x:

(I+Aβˆ’1Ξ΄A)Ξ΄x=Aβˆ’1[Ξ΄bβˆ’π’™Ξ΄A]

e equivalentemente

Ξ΄x=(I+Aβˆ’1Ξ΄A)βˆ’1βˆ—Aβˆ’1[Ξ΄bβˆ’π’™Ξ΄A]

Passando alla norma:

|Ξ΄x|≀|(I+Aβˆ’1Ξ΄A)βˆ’1|βˆ—|Aβˆ’1[Ξ΄bβˆ’π’™Ξ΄A]|

e per i due teoremi dimostrati prima possiamo maggiorare |(I+Aβˆ’1Ξ΄A)βˆ’1|:

|Ξ΄x|≀11βˆ’|Aβˆ’1|βˆ—|Ξ΄A|βˆ—|Aβˆ’1[Ξ΄bβˆ’π’™Ξ΄A]|

(1βˆ’|Aβˆ’1|βˆ—|Ξ΄A|)|Ξ΄x|≀|Aβˆ’1|βˆ—[|Ξ΄b|+|𝒙|βˆ—|Ξ΄A|]

Dividiamo entrambi i membri per |𝒙|:

(1βˆ’|Aβˆ’1|βˆ—|Ξ΄A|)βˆ—|Ξ΄x||𝒙|≀|Aβˆ’1|βˆ—[|Ξ΄b|+|𝒙|βˆ—|Ξ΄A|]|𝒙|

(1βˆ’|Aβˆ’1|βˆ—|Ξ΄A|)βˆ—|Ξ΄x||𝒙|≀|Aβˆ’1|βˆ—[|Ξ΄b||𝒙|+|Ξ΄A|]

ponendo Ξ΅x=|Ξ΄x||𝒙| e sapendo che

1|𝒙|≀|A||𝒃|

allora

(1βˆ’|Aβˆ’1|βˆ—|Ξ΄A|)βˆ—Ξ΅x≀|Aβˆ’1|βˆ—[|A||Ξ΄b||𝒃|+|Ξ΄A|]

Moltiplicando e dividendo l'ultimo addendo per |A| si ottiene:

(1βˆ’|Aβˆ’1|βˆ—|Ξ΄A|)βˆ—Ξ΅x≀|Aβˆ’1|βˆ—|A|[|Ξ΄b||𝒃|+|Ξ΄A||A|]

(1βˆ’|Aβˆ’1|βˆ—|Ξ΄A|)βˆ—Ξ΅x≀K(A)βˆ—(Ξ΅A+Ξ΅b)

infine, sapendo che

|Aβˆ’1|βˆ—|Ξ΄A|=|Ξ΄A||A|βˆ—K(A)=K(A)βˆ—Ξ΅A

si ha

Ξ΅x≀K(A)βˆ—(Ξ΅A+Ξ΅b)1βˆ’K(A)Ξ΅A

cvd

Risultato di analisi a posteriori

Teorema 2.4

Sia A𝒙=𝒃, A non singolare, 𝒃≠0, e 𝒙¯ soluzione calcolata in aritmetica floating point. Allora l'errore relativo su 𝒙 Γ¨

Ξ΅x≀K(A)|r||𝒃|

dove r=r(𝒙¯)=π’ƒβˆ’A𝒙¯ (residuo).

Si considera il sistema lineare come un'equazione vettoriale di cui cerchiamo la radice. Se chiamiamo xβˆ— la soluzione esatta, r(xβˆ—)=0.

Se il residuo Γ¨ piccolo ma il K(A) Γ¨ grande, allora la maggiorazione non dΓ  informazioni importanti.

Dimostrazione

r=π’ƒβˆ’A𝒙¯

𝒃=Aπ’™βŸΆr=Aπ’™βˆ’A𝒙¯=A(π’™βˆ’π’™Β―)

ovvero π’™βˆ’π’™Β―=Aβˆ’1r.

Passando alla norma

|π’™βˆ’π’™Β―|≀|Aβˆ’1||r|

|π’™βˆ’π’™Β―|≀K(A)βˆ—|r||A|

e siccome 𝒃=A𝒙

|𝒃|≀|A||𝒙|

1|A|≀|𝒙||𝒃|

sostituendo

|π’™βˆ’π’™Β―|≀K(A)|r||𝒙||𝒃|

e dividendo ambo i membri della disuguaglianza per |𝒙|

Er≀K(A)|r||𝒃|

cvd

Template:Avanzamento