Sunteți pe pagina 1din 14

Curs 6

Subspaţii ortogonale. Proiecţia ortogonală pe un subspaţiu.


Descompunerea QR a unei matrici

6.1 Subspaţii vectoriale ortogonale. Proiecţia ortogonală a unui vector pe


un subspaţiu
Fie (Vn , ·) un spaţiu euclidian şi v ∈ Vn un vector nenul. Mulţimea tuturor vectorilor din Vn
ce sunt ortogonali pe v se notează v ⊥ ,
v ⊥ = {w ∈ Vn | w · v = 0}
Propoziţia 6.1.1 Mulţimea v ⊥ asociată vectorului nenul v este un subspaţiu vectorial al lui Vn .
Demonstraţie: Fie w1 , w2 ∈ v ⊥ . Rezultă că w1 · v = 0, w2 · v = 0. Atunci (w1 + w2 ) · v =
w1 · v + w2 · v = 0 + 0 = 0, adică w1 + w2 ∈ v ⊥ .
Să verificăm şi a doua condiţie de subspaţiu vectorial: dacă α ∈ R şi w ∈ v ⊥ , atunci
(αw) · v = α(w · v) = α0 = 0, adică αw ∈ v ⊥ .
Subspaţiul vectorial v ⊥ se numeşte complementul ortogonal al vectorului v.
Exemplul 1. Să se determine complementul ortogonal al vectorului v = (−1, 2, −3, 5)⊥ ∈ R4 .
Conform definiţiei:
v ⊥ = {w = (x1 , x2 , x3 , x4 )⊥ ∈ R4 | w · v = 0 ⇔ −x1 + 2x2 − 3x3 + 5x4 = 0}
Prin urmare am găsit ecuaţia subspaţiului ortogonal.
În general dacă v = (a1 , a2 , . . . , an )⊥ ∈ Rn , v 6= θ, atunci ecuaţia complementului său
ortogonal, v ⊥ , este:
a1 x1 + a2 x2 + · · · + an xn = 0 (6.1)
Reciproc, dacă un subspaţiu S al lui Rn are ecuaţia (6.1) atunci vectorul v = (a1 , a2 , . . . , an )T
este un vector ortogonal pe orice vector din subspaţiu.
Exemplul 2. În R4 se dă subspaţiul vectorial S de ecuaţie
−7x1 + 3x2 + x3 − 2x4 = 0
Vectorul v = (−7, 3, 1, −2)T ∈ R4 este ortogonal pe orice vector din subspaţiul S sau simplu,
v este ortogonal pe S.

1
2 Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007

Propoziţia 6.1.2 Complementul ortogonal al unui vector nenul v = (a1 , a2 , . . . , an )T ∈ Rn


are dimensiunea n-1.

Deoarece ecuaţia subspaţiului este a1 x1 + a2 x2 + · · · + an xn = 0, v ⊥ coincide cu mulţimea


Null(A), a soluţiilor sistemului omogen de matrice A = [a1 a2 . . . an ]. Cum dimesniunea
spaţiului soluţiilor este n-rang(A)=n-1, rezultă că v ⊥ are dimensiunea n-1.
Generalizând, asociem unui subspaţiu vectorial S ⊂ Vn mulţimea S ⊥ a vectorilor din Vn ce
sunt perpendiculari pe orice vector din S:

S ⊥ = {v ∈ Vn | v · s = 0, ∀ s ∈ S}

Evident că S ⊥ este subspaţiu vectorial al lui Vn (verificaţi!). S ⊥ se numeşte complementul


ortogonal al lui S.

Propoziţia 6.1.3 Intersecţia dintre un subspaţiu vectorial S şi complementul său ortogonal,
S ⊥ este vectorul nul din Vn , S ∩ S ⊥ = {θ}.

Demonstraţie: Presupunem că există un vector nenul s ∈ S ∩ S ⊥ . Atunci din s ∈ S ⊥ şi s ∈ S,


rezultă că s este ortogonal pe orice vector din S, deci ı̂n particular şi pe el ı̂nsuşi, adică s · s = 0,
ceea este posibil doar dacă s = θ. Deci presupunerea că există un vector nenul s ∈ S ∩ S ⊥ ne-a
condus la o contradicţie.

Se poate demomstra că dacă S este un subspaţiu vectorial al spaţiului euclidian Vn şi S ⊥ este
complemetul ortogonal al lui S atunci au loc următoarele proprietăţi:
1. Orice vector v ∈ Vn se exprimă ı̂n mod unic ca suma unui vector din S cu un vector din
S ⊥ : v = s + s0 , unde s ∈ S şi s0 ∈ S ⊥ ;
2. Dimensiunea dim(S ⊥ ) = n − dim(S);
3. Dacă B este o bază ı̂n S şi B 0 o bază ı̂n S ⊥ , atunci B ∪ B 0 este o bază ı̂n Vn . În particular,
dacă bazele B, B 0 sunt ortonormate, atunci şi baza B ∪ B 0 este o bază ortonormată.

6.1.1 Ecuaţiile complementului ortogonal S ⊥


Propoziţia 6.1.4 Dacă subspaţiul vectorial S ⊂ Vn are dimensiunea m < n si

BS = (u1 , u2 , . . . , um )

este o bază ı̂n S, atunci complementul său ortogonal, S ⊥ , coincide cu mulţimea vectorilor din
Vn ce sunt ortogonali pe vectorii bazei BS .

Demonstraţie: Notăm cu U mulţimea vectorilor din V ce sunt ortogonali pe fiecare vector din
baza BS :
U = {v ∈ Vn | v · ui = 0, ∀ i = 1, m}
Să arătăm că U = S ⊥ prin incluziune dublă:
Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007 3

Fie v ∈ U . Rezultă că v · ui = 0, ∀ i = 1, m. Un vector arbitrar s din S se exprimă ca o


combinaţie liniară a vectorilor bazei:

s = α1 u1 + · · · + αm um

Calculând produsul scalar v · s = α1 (v · u1 ) + · · · αm (v · um ) = 0, rezultă că v ∈ S ⊥ şi deci


U ⊆ S ⊥.
Reciproc, fie v ∈ S ⊥ . Rezultă că v este ortogonal pe orice vector din S, deci şi pe vectorii
bazei. Adică v ∈ U şi deci S ⊥ ⊆ U , de unde rezultă că U = S ⊥ .

Exemplul 3. Să se determine complementul ortogonal al subspaţiului

S = {v = (x1 , x2 , x3 , x4 )T ∈ R4 | 2x1 − 7x2 − x3 + x4 = 0, −x1 + 5x2 − 3x4 = 0}

Determinăm o bază ı̂n S, rezolvând sistemul ce constă din ecuaţiile subspaţiului.


Matricea sistemului este · ¸
2 −7 −1 1
A=
−1 5 0 −3
Alegem determinantul principal: ¯ ¯
¯ −1 1 ¯
∆p = ¯¯ ¯
¯
0 −3
Deci x3 , x4 sunt necunoscute principale. Rezolvând, obţinem mulţimea soluţiilor de forma:
 
x1    
 x2  3 0
  x 
 5 16  1  0  
 + x2  3 

s =  x1 − x2  =  5  3  −16 
 3 3  3
 1 15 
− x1 + x2 −1 5
3 3 | {z } | {z }
u1 u2

Deci o bază ı̂n subspaţiul S este BS = (u1 , u2 ). Prin urmare complementul ortogonal al
subspaţiului S este:

S ⊥ = {v = (x1 , x2 , x3 , x4 )T ∈ R4 | v · u1 = 0, v · u2 = 0}

Ecuaţiile subspaţiului S ⊥ sunt:

v · u1 = 0 3x1 + 5x3 − x4 = 0

v · u2 = 0 3x2 − 16x3 + 5x4 = 0

sau ı̂n formă matricială,


S ⊥ = {x ∈ R4 | [u1 |u2 ]T x = θ
4 Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007

Observaţie. Din Propoziţia 6.1.4 şi acest exemplu, rezultă că dacă BS = (u1 , u2 , . . . , um ) este
o bază ı̂n subspaţiul vectorial S ⊂ Rn sau S ⊂ Zn2 , atunci ecuaţiile complementului ortogonal,
S ⊥ sunt:
v · u1 = 0
v · u2 = 0
..
.
v · um = 0

unde v = (x1 , x2 , . . . , xn )T , şi ui = (ai1 , ai2 , . . . , ain )T , i = 1, m. Calculând produsele scalare,


ecuaţiile devin:
a11 x1 + a12 x2 + · · · + a1n xn = 0
a21 x1 + a22 x2 + · · · + a2n xn = 0
..
.
am1 x1 + am2 x2 + · · · + amn xn = 0
adică
[u1 |u2 | . . . |um ]T x = θ

Rezultă astfel:

Algoritm de determinare a ecuaţiilor complementului ortogonal S⊥ al subspaţiului


vectorial S ⊂ Rn sau S ⊂ Zn2 , când se cunosc ecuaţiile subspaţiului S

Presupunem că ecuaţiile subspaţiului S sunt:

S: Ax = θ, A ∈ Rm×n sau A ∈ Zm×n


2 , x = (x1 , x2 , . . . , xn )T
Etapa 1: Se reduce matricea A la forma scară redusă;
Etapa 2: Se determină o bază (u1 , u2 , . . . , uk ), k = n − rang(A), ı̂n subspaţiul Null(A)
(vezi cursul 4);
Etapa 3: Ecuaţiile subspaţiului S ⊥ sunt:

Cx = θ, C = [u1 |u2 | . . . |uk ]T

Concluzie: Ecuaţiile complementului ortogonal S ⊥ al unui subspaţiu S ⊂ Rn sau S ⊂ Zn2 sunt


Cx = θ, unde C este transpusa matricii ce are drept coloane vectorii bazei din Null(A), unde
Ax = θ este ecuaţia subspaţiului S.
Deoarece (S ⊥ )⊥ = S, cunoscând ecuaţiile subspaţiului S ⊥ se pot determina ecuaţiile
subspaţiului S printr-o procedură similară. Şi anume dacă ecuaţiile subspaţiului S ⊥ sunt Cx =
θ, atunci determinând o bază w1 , w2 , . . . , wp ı̂n Null(C), ecuaţiile subspaţiului (S ⊥ )⊥ = S sunt:

[w1 |w2 | . . . |wp ]T x = θ


Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007 5

6.1.2 Aplicaţie la construcţia codului liniar (72, 64)


Pornind de la definiţia codului Hamming, s-a generalizat construcţia codurilor detectoare
şi corectoare de erori. Şi anume un cod liniar de tip (n + k, n) este definit de un subspaţiu
vectorial, de dimensiune n, a spaţiului vectorial Z2n+k . Subspaţiul respectiv este reprezentat
de un sistem de n vectori liniar independenţi u1 , u2 , . . . , un ∈ Z2n+k , ce ı̂l generează. Matricea
codificare numită şi matricea generatoare a codului liniar (n+k, n) este E = [u1 |u2 | . . . |un ].
Având precizată această matrice, pentru etapa de detectare-corectare a erorilor este nevoie de
matricea H, numită matricea test a codului. Pentru a ı̂ntelege mai rapid modul de construcţie
al matricii test, H, când se dă matricea generatoare E exemplificăm această construcţie pentru
codul (72, 64). Acest tip de cod codifică un bloc de 64 de biţi printr-unul de 72 de biti, adică
adaugă 8 biţi de verificare. Rezultă că matricea codificare, E are 72 de linii şi 64 de coloane,
E ∈ Z72×64
2 . Deoarece coloanele matricii E formează o bază ı̂n subspaţiul S=Null(H) (vezi
codul Hamming (7,4)) rezultă că E T x = θ sunt ecuaţiile subspaţiului W = S ⊥ . Exploatând
acest lucru, procedura de determinare a matricii test H, corespunzătoare, este următoarea:
• Rezolvăm sistemul E T x = θ, şi construim o bază w1 , w2 , . . . , wp ı̂n spaţiul soluţiilor sale,
folosind algoritmul prezentat ı̂n cursul 4.
• Ecuaţiile subspaţiului W ⊥ = (S ⊥ )⊥ = S sunt atunci:

[w1 |w2 | . . . |wp ]T x = θ

şi deci matricea test H = [w1 |w2 | . . . |wp ]T .


Pentru a implementa algoritmul de generare a unui cod (72, 64) avem nevoie de o matrice
codificare E care se generează astfel:
• Se generează o matrice de tip 72 × 64 de rang 64, ı̂n forma scară redusă, adică A =
[e1 |e2 | . . . |e64 ], unde e1 , e2 , . . . , e64 sunt vectori ai bazei canonice din Z72
2 ;
• Aplicând transformări elementare pe linii obţinem o matrice E ce are acelaşi tip şi acelaşi
rang ca şi A. Matricea E defineşte un cod de tip (72, 64). Notăm coloanele sale cu u1 , u2 , . . . , u64 .
Exemplul 4. În loc să exemplificăm determinarea matricii test când se cunoaşte matricea cod-
ificare (generatoare) E cu elemente din Z2 dăm un exemplu simplu când aceste matrici au
elemente reale.
Definim, de exemplu matricea:  
1 0
 0 1 
A=  0 0 

0 0
Efectuăm transformările elementare pe linii:
• −2L1 + 3L2 + L3 → L3
• L1 − 5L2 + L4 → L4 şi obţinem:
 
1 0
 0 1 
A0 = 
 −2

3 
1 −5
6 Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007

În continuare aplicăm transformările ı̂n A0 :


• −2L3 + L1 → L1 ;
• −2L1 + L2 → L2 şi obţinem matricea pe care o notăm cu E:
 
5 −6
 −10 13 
E=  −2

3 
1 −5

Interpretând coloanele matricii E ca fiind baza (u1 , u2 ) ı̂n spaţiul soluţiilor unui sistem liniar şi
omogen Hx = θ (adică baza ı̂n S=Null(H)) ne propunem să determinăm matricea H.
Conform celor deduse mai sus sistemul liniar şi omogen E T x = θ reprezintă ecuaţiile
subspaţiului W = S ⊥ . Astfel pentru a afla ecuaţiile subspaţiului W ⊥ =S=Null(H) determinăm
o bază ı̂n Null(E T ). Sistemul E T x = θ este:
 
· ¸ x 1 · ¸
5 −10 −2 1  
 x2  = 0
−6 13 3 −5  x3  0
x4

Luând drept necunoscute principale pe x3 , x4 obţinem baza din Null(E T ), (w1 , w2 ). Deci sis-
temul liniar şi omogen [w1 |w2 ]T x = θ este de fapt sistemul Hx = θ, adică H = [w1 |w2 ]T .

6.2 Proiecţia ortogonală a unui vector pe un subspaţiu


Fie (Vn , ·) un spaţiu euclidian, S un subspaţiu al său şi v un vector nenul din Vn .

Definiţia 6.2.1 Proiecţia ortogonală a vectorului v pe subspaţiul S este vectorul s ∈ S cu


proprietatea că v − s ⊥ s, adică (v − s) · s = 0 (Fig.6.1)

v v−s

s S

Fig.6.1: Proiecţia ortogonală a unui vector v pe un subspaţiu S.


Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007 7

v v
w

w
prw (v) = aw

prw (v) = aw, a < 0

Fig.6.2: Ilustrarea proiecţiei ortogonale a unui vector v pe un vector w 6= θ.

Cazul 1. Proiecţia ortogonală a unui vector v pe un vector nenul w este proiecţia ortogonală
a vectorului v pe subspaţiul 1D generat de vectorul w 6= 0: S = {s ∈ V | s = αw, α ∈ R}.
Conform definiţiei proiecţia lui v pe S este vectorul s = aw, a ∈ R, astfel ı̂ncât (v−aw)·w = 0,
adică v · w − a(w · w) = 0 şi deci
v·w v·w
a= , iar s := prw (v) = w
w·w w·w

Dacă vectorul w este un versor, adică kek = 1 ⇔ e · e = 1, atunci proiecţia ortogonală


a lui v pe versorul e este:
v·e
pre (v) = e = (v · e)e
e·e
Consecinţă: Deoarece coordonatele unui vector v ı̂ntr-o bază ortonormată B = (e1 , e2 , . . . , en )
sunt xi = (v · ei ), rezultă că exprimarea vectorului v ı̂n baza B este:
v = (v · e1 )e1 + (v · e2 )e2 + · · · + (v · en )en = pre1 (v) + pre2 (v) + · · · + pren (v)
suma proiecţiilor ortogonale ale vectorului v pe vectorii bazei.
Această proprietate generalizează la orice spaţiu euclidian, modalitatea de a descompune un
vector după două direcţii ortogonale, aşa cum se proceda la fizică cu o forţă ce acţionează ı̂n
plan (Fig.6.3).
Cazul 2. Proiecţia ortogonală a unui vector v 6= θ pe un subspaţiu vectorial S ⊂ Vn de
dimensiune mai mare ca 1 (Fig.6.1).
Presupunem că dim(S)=m < n. Fie BS = (u1 , u2 , . . . , um ) o bază ortonormată ı̂n S.
Propoziţia 6.2.1 Suma proiecţiilor ortogonale ale lui v pe vectorii bazei din S,
s = pru1 (v) + pru2 (v) + prum (v) = (v · u1 )u1 + (v · u2 )u2 + · · · (v · um )um
este proiecţia ortogonală a vectorului v pe subspaţiul S.
Demonstraţie: Să arătăm că v − s ⊥ s, adică (v − s) · s = 0. Într-adevăr,
(v − s) · s = v · s − s · s = (v · u1 )(v · u1 ) + (v · u2 )(v · u2 ) + · · · + (v · um )(v · um )−
− [(v · u1 )2 + (v · u2 )2 + · · · + (v · um )2 ] = 0
8 Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007

e2

v
pre2 (v)

e1 pre (v)
1

Fig.6.3: Proiecţia ortogonală a vectorului v pe vectorii bazei ortonormate B = (e1 , e2 ). v = pre1 (v) +
pre2 (v).

6.3 Metoda Gramm-Schmidt de ortonormare a unei baze


În spaţiul vectorial euclidian (Kn /K, ·) (K = R, Z2 ) baza canonică este o bază ortonor-
mată. În aceste spaţii ı̂nsă există o infinitate de alte baze ortonormate. Cum construim o bază
ortonormată dintr-una neortonormată? Folosind metoda Gramm-Schmidt care este un algoritm
de construcţie a unei baze ortonormate B 0 = (q1 , q2 , . . . , qn ) ı̂ntr-un spaţiu euclidian arbitrar
(Vn /R, ·), pornind de la o bază oarecare B = (v1 , v2 , . . . , vn ).
Metoda de construcţie este recursivă:
Etapa 1: În etapa 1 se defineşte vectorul q1 ca fiind versorul vectorului v1 :
q1 ← v1 /kv1 k
Etapa 2: Se construieşte un vector o2 = v2 − αq1 , ı̂n care scalarul α se determină impunând
ca vectorul o2 să fie ortogonal pe q1 , adică
o2 · q1 = 0 ⇔ (v2 − αq1 ) · q1 = 0 ⇔ v2 · q1 − α(q1 · q1 ) = 0 ⇔ α = v2 · q1
| {z }
=1

Deci vectorul o2 = v2 − (v2 · q1 )q1 este ortogonal pe q1 . Mai mult observăm că (v2 · q1 )q1 =
prq1 (v2 ).
Notând versorul lui o2 cu q2 :
v2 − (v2 · q1 )q1
q2 ←
kv2 − (v2 · q1 )q1 k
avem construit sistemul ortonormat O2 = (q1 , q2 ).
Etapa k: Presupunem că am construit deja un sistem ortonormat Ok = (q1 , q2 , . . . , qk ),
3 ≤ k < n.
Etapa k+1: Definim vectorul ok+1 ca o combinaţie liniară a vectorului vk+1 din baza
iniţială şi a vectorilor din sistemul ortonormat Ok construit deja:
k
X
ok+1 = vk+1 − αi qi
i=1
Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007 9

şi determinăm scalarii αi impunând ca vectorul ok+1 să fie ortogonal simultan pe q1 , q2 , . . . , qk ,
adică: 
 ok+1. · q1 = 0



 ..

ok+1 · qi = 0

 ..

 .


ok+1 · qk = 0
Dar ok+1 · qi = 0 este echivalent cu:

(vk+1 −(α1 q1 +· · · αi qi +· · ·+αk qk ))·qi = 0 ⇔ vk+1 ·qi −α1 (q1 ·qi )−· · ·−αi (qi ·qi )−· · · (qk ·qi ) = 0,
|{z} |{z} |{z}
+0 =1 =0

adică αi = vk+1 ·qi , i = 1, k şi deci vectorul simultan ortogonal pe vectorii din sistemul Ok
este:
Xk
ok+1 = vk+1 − (vk+1 ·qi )qi ,
|i=1 {z }
=pr<Ok > (vk+1 )

unde pr<Ok > (vk+1 ) reprezintă proiecţia ortogonală a vectorului vk+1 pe subspaţiul generat de
vectorii ortonormaţi, q1 , q2 , . . . , qk .
Notând versorul lui ok+1 cu qk+1 la fel avem:
P
vk+1 − ki=1 (vk+1 ·qi )
qk+1 ← P
kvk+1 − ki=1 (vk+1 ·qi )k

şi deci sistemul Ok+1 = (q1 , q2 , . . . , qk , qk+1 ) este un sistem ortonormal construit recursiv.

Observaţia 6.3.1 Procedura Gramm–Schmidt se poate aplica nu neapărat unei baze arbitrare
dintr-un spaţiu euclidian (Vn , R) ci şi unui sistem liniar independent (v1 , v2 , . . . , vm ), m < n
căruia i se asociază un sistem ortonormat Om = (q1 , q2 , . . . , qm ). Evident că subspaţiul liniar
S al lui Vn generat de vectorii (v1 , v2 , . . . , vm ) coincide cu subspaţiul liniar generat de sistemul
Om . Cu alte cuvinte (v1 , v2 , . . . , vm ) este o bază arbitrară ı̂n S, iar (q1 , q2 , . . . , qm ) este o bază
ortonormată ı̂n S.

Exemplul 5. În spaţiul euclidian (R3 , ·) se dă baza B = (v1 = (0, 1, 1)T , v2 = (1, 0, 1)T , v3 =
(1, 1, 0)T ). Aplicând procedura Gramm-Schmidt să se construiască o bază ortonormată ı̂n R3
pornind de la baza B.

Etapa 1: Luăm µ ¶T
v1 (0, 1, 1)T 1 1
q1 = = √ = 0, √ , √
kv1 k 2 2 2
Etapa 2:
o2 = v2 − (v2 ·q1 )q1
10 Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007

Dar produsul scalar


1
v2 ·q1 = √
2
şi deci:
   
  0 1
1 1
1   1 
 √
 
  −
1 

o2 = v2 − √ q1 = 0 − √  2 = 2 
2 1 2 1   1 

2 2
Înlocuind o2 cu versorul său q2 = o2 /ko2 k avem:
 
r  1
2 1 
− 
q2 ←  2 
3 1 
2
Etapa 3: Construim vectorul:

o3 = v3 − [(v3 ·q1 )q1 + (v3 ·q2 )q2 ]

Calculăm: r
√ 1 2
v3 ·q1 = 1/ 2 şi v3 ·q2 =
2 3
Astfel  
    2
  0 1
1
1 
1  1r2 r2  1   3 
 √   −   2 
 
o3 = 1 − √  2 −  = 
2 1  2 3 3  21    3 

0 √ 2

| {z
2
} | {z 2 } 3
q1 q2

ko3 k = 2 3/3 şi deci versorul q3 al lui o3 este:
 
1
1
q3 = √  1 
3 −1

Exemplul 6. Să se determine o bază ı̂n subspaţiul vectorial S al lui R3 ,

S = {v = (x, y, z)T | − 3x + 5y + 2z = 0}

şi apoi aplicând procedura Gramm-Schmidt să se ortonormeze baza determinată.


Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007 11

Subspaţiul S este mulţimea soluţiilor sistemului: −3x + 5y + 2z = 0. Rangul matricii A a


sistemului este 1 deci dimensiunea subspaţiului S este 3 − 1 = 2. Pentru a determina o bază
arbirară rezolvăm sistemul ı̂n raport cu necunoscuta principală z şi avem:
   

 x 

 y 
S= v=  , x, y ∈ R

 3 5 

x− y
2 2
Orice vector din S se exprimă astfel:
       
1 0 2 0
    x y
v = x 0  + y 1  =  0  +  2 
3 5 2 2
− 3 −5
2 2
Deci o bază arbitrară ı̂n subspaţiul vectorial S este
    
2 0
BS = v1 =  0  , v2 =  2  ,
3 −5

care evident nu este ortonormată.


Luăm µ ¶T
v1 (2, 0, 3)T 2 3
q1 = = √ = √ , 0, √
kv1 k 13 13 13
şi  2   
  √ 30
0    
15  13   13 
o2 = v2 − (v2 ·q1 )q1 =  2  + √  0  =  2 
13  3   20 
−5 √ −
13 13
Luând q2 = o2 /ko2 k avem baza ortonormată (q1 , q2 ) ı̂n S.

6.4 Descompunerea QR a unei matrici pătratice nesingulare


Vom arăta că din procedura Gramm-Schmidt rezultă că orice matrice nesingulară se poate
exprima ca produs a unei matrici ortogonale cu o matrice superior triunghiulară.
Fie A ∈ Rn×n o matrice nesingulară. Rezultă astfel că, coloanele sale sunt vectori liniar
independenţi ı̂n Rn , deci formează o bază ı̂n acest spaţiu vectorial. Notăm coloanele cu v1 , v2 , . . . , vn
şi deci A = [v1 |v2 | . . . |vn ]. Aplicând procedura Gramm-Schmidt obţinem baza ortonormată
(q1 , q2 , . . . , qn ), unde
q1 = v1 /kv1 k
P
vk − k−1 (vk ·qi )qi (6.2)
qk = Pi=1
k−1
, k = 2, n
kvk − i=1 (vk ·qi )qi k
12 Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007

Notăm cu:
r1 = kv1 k
P
rk = kvk − k−1
i=1 (vk ·qi )qi k

Înlocuind ı̂n (6.2) avem:

v1 = r1 q1
Pk−1 (6.3)
vk = i=1 (vk ·qi )qi + rk qk , k = 1, n

adică am exprimat vectorii bazei iniţiale ı̂n funcţie de vectorii bazei ortonormate (q1 , q2 , . . . , qn ).
Notăm prin Q matricea ce are drept coloane vectorii q1 , q2 , . . . , qn , Q = [q1 |q2 | . . . |qn ] şi ex-
primăm mai detaliat vectorii v1 , v2 , . . . , vn ı̂n funcţie de q1 , q2 , . . . , qn , conform relaţiei (6.3) şi
tinând seama că ı̂n general produsul dintre o matrice Q = [q1 |q2 | . . . |qn ] şi o matrice coloană
este:
   
x1 x1
 x2   x2 
   
Q  ..  = [q1 |q2 | . . . |qn ]  ..  = x1 q1 + x2 q2 + · · · + xn qn
 .   . 
xn xn

avem:
 
r1
 0 
 
 0 
v1 = r1 q1 = r1 q1 + 0q2 + 0q3 · · · + 0qn = Q  
 .. 
 . 
0 
q1 · v2
 r2 
 
 0 
v2 = (v2 · q1 )q1 + r2 q2 + 0q3 + · · · + 0qn = Q  
 .. 
 . 
0
..
.
vn = (vn· q1 )q1 + (vn · q2 )q2 + (vn · q3 )q3 + · · · + (vn · qn−1 )qn−1 + rn qn =
q1 · vn
 q2 · vn 
 
 q3 · vn 
 
= Q .. 
 . 
 
 qn−1 · vn 
rn
Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007 13

Astfel avem că:


 
r1 q1 · v2 q1 · v3 . . . q1 · vn−1 q1 · vn
 0 r2 q2 · v3 . . . q2 · vn−1 q2 · vn 
 
 0 0 r3 . . . q3 · vn−1 q3 · vn 
 
A = [v1 |v2 | · · · |vn ] = Q  .. .. .. .. .. 
 . . . ... . . 
 
 0 0 0 ... rn−1 qn−1 · vn 
0 0 0 ... 0 rn

Matricea Q având drept coloane vectorii unei baze ortonormate este o matrice ortogonală.
În concluzie am arătat că orice matrice pătratică nesingulară A se poate descompune ca şi
produs al unei matrici ortogonale Q cu o matrice superior triunghiulară, pe care o notăm R.
Elementele de pe diagonala principală a matricii R sunt strict pozitive, fiind norme de vectori
dintr-un sistem de vectori ortogonali, deci vectori nenuli.
Descompunerea A = QR se numeşte descompunerea QR a matricii A.
Remarcăm că det(R) = r1 r2 . . . rn , iar det(Q) = ±1. Astfel determinantul matricii A este
det(A) = det(Q)det(R) = ±r1 r2 . . . rn sau echivalent |det(A)| = r1 r2 · · · rn .

Propoziţia 6.4.1 Descompunerea QR a unei matrici nesingulare A este unică.

Demonstraţie: (Opţional) Presupunem că matricea A ∈ Rn×n admite două descompuneri


A = Q1 R1 şi A = Q2 R2 . Înmulţind egalitatea Q1 R1 = Q2 R2 la stânga cu inversa lui Q2 , QT2
(deoarece Q2 este matrice ortogonală) şi la dreapta cu inversa lui R1 avem: QT2 Q1 = R2 R1−1 =
U . Prin urmare matricea U este pe de o parte ortogonală (ca produs de matrici ortogonale) şi pe
de altă parte este matrice superior triunghiulară (ca produs de astfel de matrici) cu elementele
de pe diagonala principală strict pozitive. Fiind matrice ortogonală, norma fiecărei coloane U:,j
este 1, kU:,j k = 1 şi produsul scalar dintre două coloane distincte este 0. În plus U:,j fiind o
coloană dintr-o matrice superior triunghiulară are elementele uj+1,j = · · · unj = 0:
 
u1j
 u2j 
 
 .. 
 . 
 
U:,j = ujj 
 
 0 
 .. 
 . 
0
p
Din kU:,1 k = 1 rezultă că u211 + 0 + · · · + 0 = 1, adică u11 = ±1. Dar u11 fiind pe diagonala
principală, rezultă că u11 = 1 ( este strict pozitiv!). Deci U:,1 = e1 ∈ Rn .
Din faptul că produsul scalar U:,1 · U:,2 = 0 rezultă că u12 = 0. Impunând acum kU:,2 k = 1
rezultă U:,2 = e2 . Proceddând inductiv rezultă că U:,k = ek ∈ Rn şi deci U = In adică Q2 = Q1
şi R2 = R1 .
14 Cursul 6, Algebră liniară °
c E. Petrişor, noiembrie 2007

Exemplul 7. Să se determine descompunerea QR a matricii


 
0 1 1
A= 1 0 1 
1 1 0

Observăm că matricea A are drept coloane vectorii v1 , v2 , v3 din Exemplul 5. Prin urmare:
 
r1 q1 · v2 q1 · v3
A = [q1 |q2 |q3 ]  0 r2 q2 · v3 
0 0 r3

Printre numeroase aplicaţii ale descompunerii QR a unei matrici nesingulare A este re-
zolvarea unui sistem Ax = b. Înlocuin A = QR sistemul devine QRx = b ⇔ Rx = QT b
(deoarece Q−1 = QT ). Sistemul Rx = c, unde c = QT b, având matrice superior triunghiulară
se rezolvă rapid prin metoda substituţiei inverse (vezi Cursul 1).

S-ar putea să vă placă și

  • Curs 5 Alg Lin CTI
    Curs 5 Alg Lin CTI
    Document17 pagini
    Curs 5 Alg Lin CTI
    adella4ever
    Încă nu există evaluări
  • Curs8AlgLinCTI Corectat
    Curs8AlgLinCTI Corectat
    Document16 pagini
    Curs8AlgLinCTI Corectat
    adella4ever
    Încă nu există evaluări
  • Curs 4 Alg Lin CTI
    Curs 4 Alg Lin CTI
    Document17 pagini
    Curs 4 Alg Lin CTI
    adella4ever
    Încă nu există evaluări
  • Curs 3 Alg Lin CTI
    Curs 3 Alg Lin CTI
    Document15 pagini
    Curs 3 Alg Lin CTI
    adella4ever
    Încă nu există evaluări
  • Curs 3 Alg Lin CTI
    Curs 3 Alg Lin CTI
    Document15 pagini
    Curs 3 Alg Lin CTI
    adella4ever
    Încă nu există evaluări
  • Curs2AlgLinCTI v2
    Curs2AlgLinCTI v2
    Document16 pagini
    Curs2AlgLinCTI v2
    adella4ever
    Încă nu există evaluări
  • Curs 1 Alg Lin CTI
    Curs 1 Alg Lin CTI
    Document16 pagini
    Curs 1 Alg Lin CTI
    adella4ever
    Încă nu există evaluări
  • De la Everand
    Încă nu există evaluări
  • De la Everand
    Încă nu există evaluări
  • De la Everand
    Încă nu există evaluări