Kolmá projekcia na podpriestor

Moderators: Martin Sleziak, Ludovit_Balko, Martin Niepel, Tibor Macko

Post Reply
Martin Sleziak
Posts: 5686
Joined: Mon Jan 02, 2012 5:25 pm

Kolmá projekcia na podpriestor

Post by Martin Sleziak »

Na fóre už je topic, kde je vyriešená úloha nájsť maticu projekcie: viewtopic.php?t=824
Ale pridám sem riešenie aspoň pre jednu zo skupín, ktoré som zadal teraz.
Pre daný podpriestor $S$ v $\mathbb R^4$ so štandardným skalárnym súčinom nájdite maticu $P$ ortogonálnej projekcie na $S$.
$$S=[(1,-1,0,-1),(2,1,-3,4),(-2,1,1,0)]$$
Zadanie malo ešte druhú časť, k tej som dal samostatný topic: viewtopic.php?t=1657

Skúsme najprv nájsť jednoduchšiu bázu pre $S$ a súčasne tým vypočítať dimenziu.
$
\begin{pmatrix}
1 &-1 & 0 &-1 \\
2 & 1 &-3 & 4 \\
-2 & 1 & 1 & 0 \\
\end{pmatrix}\sim\dots\sim
\begin{pmatrix}
1 & 0 &-1 & 1 \\
0 & 1 &-1 & 2 \\
0 & 0 & 0 & 0 \\
\end{pmatrix}
$
Spoiler:
$
\begin{pmatrix}
1 &-1 & 0 &-1 \\
2 & 1 &-3 & 4 \\
-2 & 1 & 1 & 0 \\
\end{pmatrix}\sim$ $
\begin{pmatrix}
1 &-1 & 0 &-1 \\
2 & 1 &-3 & 4 \\
0 & 2 &-2 & 4 \\
\end{pmatrix}\sim$ $
\begin{pmatrix}
1 & 0 &-1 & 1 \\
2 & 0 &-2 & 2 \\
0 & 1 &-1 & 2 \\
\end{pmatrix}\sim$ $
\begin{pmatrix}
1 & 0 &-1 & 1 \\
0 & 0 & 0 & 0 \\
0 & 1 &-1 & 2 \\
\end{pmatrix}\sim$ $
\begin{pmatrix}
1 & 0 &-1 & 1 \\
0 & 1 &-1 & 2 \\
0 & 0 & 0 & 0 \\
\end{pmatrix}$
Vidíme, že $S=[(1,0,-1,1),(0,1,-1,2)]$ a $\dim(S)=2$.

Pripomeniem, že pri úprave na RTM vieme robiť "poloskúšku": viewtopic.php?t=531
Takýto postup vieme využiť na overenie či nejaký vektor patrí do $S$; to nám môže pomôcť ak napríklad hľadáme ortonormálnu bázu pre $S$ - aby sme vedeli, či náš výsledok je v poriadku, tak môžeme prekontrolovať, či vektory z nájdenej ortonormálnej bázy patria do $S$.

Súčasne z toho, čo sme dostali pomerne ľahko vidíme aj ako vyzerá $S^\bot$; je to vlastne množina riešení homogénnej sústavy, ktorej maticu sme dostali vyššie. Máme teda
$$S^\bot=[(1,2,0,-1),(1,1,1,0)].$$
Tiež sa oplatí všimnúť si, že toto nám dáva inú možnosť ako kontrolovať, či nejaký vektor patrí do $S$. Vektory z $S$ sú presne tie vektory, ktoré sú kolmé na $S^\bot$. T.j. vektory, ktoré spĺňajú rovnosti $x_1+2x_2-x_4=0$ a $x_1+x_2+x_3=0$.
(A môžeme pripomenúť, že $\dim(S)+\dim(S^\bot)=\dim(V)$; to sedí s dimenziami, ktoré nám vyšli tu.)

Matica zobrazenia

Vieme, že pre každé $\vec x\in S$ platí $\vec xP=\vec x$. A tiež to, že pre $\vec y\in S^\bot$ platí $\vec yP=\vec0$.
Ak už máme vypočítanú nejakú bázu pre $S$ a nejakú bázu pre $S^\bot$, tak môžeme jednoducho použiť metódu, ktorou sme zvykli hľadať maticu zobrazenia.

$\left(\begin{array}{cccc|cccc}
1 & 0 &-1 & 1 & 1 & 0 &-1 & 1 \\
0 & 1 &-1 & 2 & 0 & 1 &-1 & 2 \\
1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\
1 & 2 & 0 &-1 & 0 & 0 & 0 & 0
\end{array}\right)\sim\dots\sim
\left(\begin{array}{cccc|cccc}
1 & 0 & 0 & 0 & \frac23 &-\frac13 &-\frac13 & 0 \\
0 & 1 & 0 & 0 &-\frac13 & \frac13 & 0 & \frac13 \\
0 & 0 & 1 & 0 &-\frac13 & 0 & \frac13 &-\frac13 \\
0 & 0 & 0 & 1 & 0 & \frac13 &-\frac13 & \frac23
\end{array}\right)$

Matica, ktorú sme dostali na pravej strane, je hľadaná matica zobrazenia.
Pripomeniem, že aj pri tomto výpočte vieme robiť skúšku, a môžeme ju urobiť aj pre medzivýsledky: viewtopic.php?t=1620
Spoiler:
$\left(\begin{array}{cccc|cccc}
1 & 0 &-1 & 1 & 1 & 0 &-1 & 1 \\
0 & 1 &-1 & 2 & 0 & 1 &-1 & 2 \\
1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\
1 & 2 & 0 &-1 & 0 & 0 & 0 & 0
\end{array}\right)\sim$ $
\left(\begin{array}{cccc|cccc}
0 &-1 &-2 & 1 & 1 & 0 &-1 & 1 \\
0 & 1 &-1 & 2 & 0 & 1 &-1 & 2 \\
1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\
0 & 1 &-1 &-1 & 0 & 0 & 0 & 0
\end{array}\right)\sim$ $
\left(\begin{array}{cccc|cccc}
0 & 0 &-3 & 0 & 1 & 0 &-1 & 1 \\
0 & 0 & 0 & 3 & 0 & 1 &-1 & 2 \\
1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\
0 & 1 &-1 &-1 & 0 & 0 & 0 & 0
\end{array}\right)\sim$ $
\left(\begin{array}{cccc|cccc}
1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\
0 & 1 &-1 &-1 & 0 & 0 & 0 & 0 \\
0 & 0 & 1 & 0 &-\frac13 & 0 & \frac13 &-\frac13 \\
0 & 0 & 0 & 1 & 0 & \frac13 &-\frac13 & \frac23
\end{array}\right)\sim$ $
\left(\begin{array}{cccc|cccc}
1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 \\
0 & 1 &-1 & 0 & 0 & \frac13 &-\frac13 & \frac23 \\
0 & 0 & 1 & 0 &-\frac13 & 0 & \frac13 &-\frac13 \\
0 & 0 & 0 & 1 & 0 & \frac13 &-\frac13 & \frac23
\end{array}\right)\sim$ $
\left(\begin{array}{cccc|cccc}
1 & 1 & 0 & 0 & \frac13 & 0 &-\frac13 & \frac13 \\
0 & 1 & 0 & 0 &-\frac13 & \frac13 & 0 & \frac13 \\
0 & 0 & 1 & 0 &-\frac13 & 0 & \frac13 &-\frac13 \\
0 & 0 & 0 & 1 & 0 & \frac13 &-\frac13 & \frac23
\end{array}\right)\sim$ $
\left(\begin{array}{cccc|cccc}
1 & 0 & 0 & 0 & \frac23 &-\frac13 &-\frac13 & 0 \\
0 & 1 & 0 & 0 &-\frac13 & \frac13 & 0 & \frac13 \\
0 & 0 & 1 & 0 &-\frac13 & 0 & \frac13 &-\frac13 \\
0 & 0 & 0 & 1 & 0 & \frac13 &-\frac13 & \frac23
\end{array}\right)$
Ortonormálna báza

Iná možnosť je nájsť nejakú ortonormálnu bázu pre $S$ a vyjadriť $P$ pomocou nej. (Prípadne by sme mohli použiť ortonormálnu bázu pre $S^\bot$, to sa nám oplatí skúšať ak by $S^\bot$ mal menšiu dimenziu ako $S$, čiže v tejto úlohe to nepomôže.)

Ortonormálnu bázu vieme hľadať viacerými spôsobmi, je k tomu niečo aj tu na fóre. Nebudem tu písať celý postup.
Napíšem ale nejaké drobné poznámky:
  • Ak používam Gram-Schmidtov proces, tak si môžem vybrať bázu $S$, s ktorou začnem. Oplatí sa zobrať čo "najjednoduchšiu" - vieme, že v GS budem počítať koeficienty, v ktorých vystupujú skalárne súčiny a dĺžky vektorov. Bude sa mi ľahšie počítať, ak nie sú príliš veľké. Alebo napríklad ak niektoré zo zadaných vektorov už sú na seba kolmé, tak môžem použiť tie. (Budem mať aspoň nejaké kroky v GS už hotové.)
  • Oplatí sa mi upraviť si najprv zadané vektory na RSM aj preto, aby som vedel, že robím skutočne s bázou. (Ak pustím Gram-Schmidtov algoritmus na lineárne závislé vektory tak to zistím - mal by mi vyjsť v niektorom kroku nulový vektor. Ale určite jednoduchší postup ako overiť nezávislosť je úprava na redukovaný tvar.)
  • Oplatí sa prekontrolovať, či vektory ktoré mi vyšli, naozaj patria do $S$. (Vyššie som spomínal, ako to môžeme urobiť.)
V našom príklade sme napríklad mohli dostať takúto ortonormálnu bázu: $\vec u_1=\frac1{\sqrt6}(-2,1,1,0)$, $\vec u_2=\frac1{\sqrt6}(0,1,-1,2)$.
Potom dostaneme:
\begin{align*}
P&=\vec u_1^T\vec u_1+\vec u_2^T\vec u_2\\
&=\frac16
\begin{pmatrix}
4 &-2 &-2 & 0 \\
-2 & 1 & 1 & 0 \\
-2 & 1 & 1 & 0 \\
0 & 0 & 0 & 0 \\
\end{pmatrix}
+\frac16
\begin{pmatrix}
0 & 0 & 0 & 0 \\
0 & 1 &-1 & 2 \\
0 &-1 & 1 &-2 \\
0 & 2 &-2 & 4 \\
\end{pmatrix}\\
&=
\frac16
\begin{pmatrix}
4 &-2 &-2 & 0 \\
-2 & 2 & 0 & 2 \\
-2 & 0 & 2 &-2 \\
0 & 2 &-2 & 4 \\
\end{pmatrix}\\
&=
\frac13
\begin{pmatrix}
2 &-1 &-1 & 0 \\
-1 & 1 & 0 & 1 \\
-1 & 0 & 1 &-1 \\
0 & 1 &-1 & 2 \\
\end{pmatrix}
\end{align*}

Môžete si vyskúšať, že to isté vyjde, ak použijeme inú ortonormálnu bázu pre $S$, napríklad $\vec v_1=\frac1{\sqrt3}(1,0,-1,1)$, $\vec v_2=\frac1{\sqrt3}(1,-1,0-1)$.
Spoiler:
\begin{align*}
P&=\vec v_1^T\vec v_1+\vec v_2^T\vec v_2\\
&=\frac13
\begin{pmatrix}
1 & 0 &-1 & 1 \\
0 & 0 & 0 & 0 \\
-1 & 0 & 1 &-1 \\
1 & 0 &-1 & 1 \\
\end{pmatrix}
+\frac13
\begin{pmatrix}
1 &-1 & 0 &-1 \\
-1 & 1 & 0 & 1 \\
0 & 0 & 0 & 0 \\
-1 & 1 & 0 & 1 \\
\end{pmatrix}\\
&=\frac13
\begin{pmatrix}
2 &-1 &-1 & 0 \\
-1 & 1 & 0 & 1 \\
-1 & 0 & 1 &-1 \\
0 & 1 &-1 & 2 \\
\end{pmatrix}
\end{align*}
Martin Sleziak
Posts: 5686
Joined: Mon Jan 02, 2012 5:25 pm

Re: Kolmá projekcia na podpriestor

Post by Martin Sleziak »

Skúška správnosti

Dostali sme nejaký výsledok, v našom prípade
$$P=\frac13
\begin{pmatrix}
2 &-1 &-1 & 0 \\
-1 & 1 & 0 & 1 \\
-1 & 0 & 1 &-1 \\
0 & 1 &-1 & 2 \\
\end{pmatrix}.$$
Pozrime sa na to, ako môžeme skontrolovať, či je to správny výsledok.

Aj ak nemám čas robiť skúšku, tak prinajmenšom dve veci, ktoré platia pre každú maticu ortogonálnej projekcie, sa dajú skontrolovať veľmi rýchlo.
Konkrétne to, že matice $P$ je symetrická a stopa matice $P$ (súčet prvkov na diagonále) je rovnaká ako dimenzia podpriestoru $S$.

Sú aj ďalšie vlastnosti, ktoré platia pre každú maticu projekcie: $P^2=P$, $h(P)=\dim(S)$. Overiť tieto vlastnosti by si vyžadovalo viac výpočtov.

Najpriamočiarejší spôsob ako urobiť skúšku je overiť, či pre vektory z $S$ platí $\vec xP=\vec x$ a či pre vektory z $S^\bot$ platí $\vec yP=\vec0$.
V našom prípade máme $S=[(1,-1,0,-1),(2,1,-3,4),(-2,1,1,0)]=[(1,0,-1,1),(0,1,-1,2)]$ a $S^\bot=[(1,2,0,-1),(1,1,1,0)]$.

Stačí nám vlastne teda skontrolovať, že platí
\begin{align*}
(1,0,-1,1)P&=(1,0,-1,1)\\
(0,1,-1,2)P&=(0,1,-1,2)
\end{align*}
(Resp. môžeme to isté skúšať s vektormi, ktoré boli zadané - ak máme obavy, že sme mohli spraviť chybu pri úprave na redukovaný tvar.)
A ďalej skontrolujeme aj to, že
\begin{align*}
(1,2,0,-1)P&=(0,0,0,0)\\
(1,1,1,0)P&=(0,0,0,0)
\end{align*}
Post Reply