Macierz osobliwa – co to jest, jak ją rozpoznać i jakie ma właściwości?
Macierz osobliwa to macierz kwadratowa, której wyznacznik jest równy zero. Nie ma ona klasycznej macierzy odwrotnej, jej wiersze lub kolumny są liniowo zależne, a jej rząd jest mniejszy od stopnia macierzy. Najprościej rozpoznać ją przez obliczenie wyznacznika:
[
\det(A)=0.
]
Ten sam wniosek można uzyskać metodą eliminacji Gaussa. Jeżeli podczas sprowadzania macierzy kwadratowej do postaci schodkowej zabraknie pivotu i pojawi się zerowy wiersz, macierz nie ma pełnego rzędu, a więc jest osobliwa.
W przypadku układu równań z osobliwą macierzą współczynników nie można otrzymać dokładnie jednego rozwiązania. Układ może być sprzeczny albo mieć nieskończenie wiele rozwiązań. Macierz osobliwa nie jest więc tylko szczególnym przypadkiem rachunku wyznaczników – informuje o zależności danych i utracie części informacji opisanej przez macierz.
Co to jest macierz osobliwa?
Macierz (A) nazywamy osobliwą, gdy jest kwadratowa i spełnia warunek:
[
\det(A)=0.
]
Przykładem jest macierz:
[
A=
\begin{bmatrix}
1&2\
2&4
\end{bmatrix}.
]
Jej wyznacznik wynosi:
[
\det(A)=1\cdot4-2\cdot2=4-4=0.
]
Macierz (A) jest zatem osobliwa.
W tym przykładzie zależność można zauważyć bez wykonywania obliczeń. Drugi wiersz jest dwukrotnością pierwszego:
[
[2,4]=2[1,2].
]
Podobna zależność występuje między kolumnami. Druga kolumna jest dwukrotnością pierwszej:
[
\begin{bmatrix}
2\
4
\end{bmatrix}
2
\begin{bmatrix}
1\
2
\end{bmatrix}.
]
Macierz nie zawiera więc dwóch niezależnych wierszy ani dwóch niezależnych kolumn. Jej rząd wynosi 1, chociaż jest macierzą stopnia drugiego.
Macierz osobliwa bywa również nazywana:
- macierzą nieodwracalną,
- macierzą zdegenerowaną,
- macierzą o niepełnym rzędzie.
Najbardziej precyzyjne są określenia „macierz osobliwa” i „macierz nieodwracalna”. NIST definiuje macierz osobliwą jako macierz, która nie ma odwrotności i której wyznacznik jest równy zero.
Czy macierz osobliwa musi być kwadratowa?
W standardowej definicji pojęcie osobliwości dotyczy macierzy kwadratowych. Wynika to z faktu, że wyznacznik oraz klasyczna, dwustronna macierz odwrotna są definiowane dla macierzy mających tyle samo wierszy co kolumn.
Dla macierzy prostokątnej nie mówi się zwykle, że jest osobliwa. Można natomiast powiedzieć, że:
- ma pełny rząd,
- ma niepełny rząd,
- jest rzędu zredukowanego,
- jej wiersze lub kolumny są liniowo zależne.
Przykładowa macierz:
[
B=
\begin{bmatrix}
1&2&3\
2&4&6
\end{bmatrix}
]
ma wymiar (2\times3). Nie ma wyznacznika, ponieważ nie jest kwadratowa. Jej drugi wiersz jest jednak dwukrotnością pierwszego, dlatego:
[
\operatorname{rank}(B)=1.
]
Precyzyjniej jest więc nazwać ją macierzą o niepełnym rzędzie, a nie macierzą osobliwą.
W praktyce informatycznej słowo „singular” bywa niekiedy używane szerzej wobec macierzy o niewystarczającym rzędzie. W ścisłym języku algebry liniowej warto jednak odróżniać osobliwość macierzy kwadratowej od niedoboru rzędu macierzy prostokątnej.
Macierz osobliwa a nieosobliwa – najważniejsze różnice
Macierz nieosobliwa to macierz kwadratowa, której wyznacznik jest różny od zera:
[
\det(A)\neq0.
]
Taka macierz ma odwrotność, pełny rząd i liniowo niezależne kolumny oraz wiersze.
| Właściwość | Macierz osobliwa | Macierz nieosobliwa |
|---|---|---|
| Wyznacznik | (\det(A)=0) | (\det(A)\neq0) |
| Macierz odwrotna | Nie istnieje | Istnieje |
| Rząd macierzy (n\times n) | Mniejszy niż (n) | Równy (n) |
| Kolumny | Liniowo zależne | Liniowo niezależne |
| Wiersze | Liniowo zależne | Liniowo niezależne |
| Równanie (Ax=0) | Ma rozwiązanie niezerowe | Ma tylko rozwiązanie (x=0) |
| Wartości własne | Co najmniej jedna wynosi 0 | Żadna nie wynosi 0 |
| Przekształcenie liniowe | Traci co najmniej jeden wymiar | Jest odwracalne |
Rozważmy macierz:
[
C=
\begin{bmatrix}
1&2\
3&4
\end{bmatrix}.
]
Jej wyznacznik wynosi:
[
\det(C)=1\cdot4-2\cdot3=-2.
]
Ponieważ wyznacznik jest różny od zera, macierz jest nieosobliwa i ma odwrotność.
Z kolei dla macierzy:
[
D=
\begin{bmatrix}
1&2\
2&4
\end{bmatrix}
]
otrzymujemy:
[
\det(D)=0.
]
Macierz (D) jest osobliwa i nie można wyznaczyć jej klasycznej macierzy odwrotnej. Wzór na odwrotność macierzy (2\times2) zawiera wyznacznik w mianowniku, dlatego działa wyłącznie wtedy, gdy (ad-bc\neq0).
Równoważne warunki osobliwości macierzy
Dla macierzy kwadratowej (A) stopnia (n) poniższe warunki są równoważne. Jeżeli spełniony jest jeden z nich, spełnione są również pozostałe:
[
\det(A)=0;
]
[
A^{-1}\ \text{nie istnieje};
]
[
\operatorname{rank}(A)<n;
]
[
Ax=0
]
ma rozwiązanie (x\neq0);
kolumny macierzy są liniowo zależne;
wiersze macierzy są liniowo zależne;
zero jest wartością własną macierzy;
eliminacja Gaussa nie prowadzi do pivotu w każdej kolumnie;
zredukowana postać schodkowa macierzy nie jest macierzą jednostkową;
przekształcenie liniowe opisane przez macierz nie jest odwracalne.
Zależności te tworzą tak zwane twierdzenie o macierzy odwracalnej. W praktyce oznacza to, że osobliwość można wykrywać na wiele sposobów. Wyznacznik jest zwykle najwygodniejszy przy małych macierzach, natomiast eliminacja Gaussa i badanie rzędu lepiej sprawdzają się przy większych układach.
Jak sprawdzić, czy macierz jest osobliwa?
Wybór metody zależy od wymiaru macierzy, rodzaju danych i celu obliczeń. Przy małej macierzy najłatwiej obliczyć wyznacznik. Przy większej lepiej zastosować eliminację Gaussa albo rozkład SVD.
Obliczenie wyznacznika
Najbardziej bezpośrednia metoda polega na sprawdzeniu warunku:
[
\det(A)=0.
]
Jeżeli wyznacznik jest równy zero, macierz jest osobliwa. Jeśli jest różny od zera, macierz jest nieosobliwa.
Metoda jest szczególnie wygodna dla macierzy (2\times2) i (3\times3). Przy dużych macierzach ręczne obliczanie wyznacznika staje się czasochłonne i podatne na pomyłki.
Sprawdzenie rzędu macierzy
Macierz kwadratowa (n\times n) jest osobliwa, gdy:
[
\operatorname{rank}(A)<n.
]
Przykładowo macierz (4\times4) jest osobliwa, jeśli jej rząd wynosi 0, 1, 2 albo 3. Jest nieosobliwa wyłącznie wtedy, gdy jej rząd wynosi 4.
Eliminacja Gaussa
Macierz sprowadza się do postaci schodkowej za pomocą operacji elementarnych na wierszach. Jeżeli w każdym wierszu i każdej kolumnie występuje pivot, macierz ma pełny rząd.
Jeżeli pojawi się zerowy wiersz i liczba pivotów będzie mniejsza od stopnia macierzy, jest ona osobliwa.
Sprawdzenie zależności wierszy lub kolumn
Czasami osobliwość można rozpoznać bez obliczania wyznacznika. Macierz jest osobliwa między innymi wtedy, gdy:
- dwa wiersze są identyczne,
- dwa wiersze są proporcjonalne,
- jeden wiersz jest sumą lub inną kombinacją pozostałych,
- jedna kolumna zależy liniowo od pozostałych,
- macierz zawiera zerowy wiersz lub zerową kolumnę.
Równe wiersze prowadzą do wyznacznika równego zero. Jest to jedna z podstawowych własności wyznaczników.
Sprawdzenie wartości własnych
Macierz jest osobliwa wtedy i tylko wtedy, gdy ma wartość własną równą zero.
Wynika to z równania charakterystycznego:
[
\det(A-\lambda I)=0.
]
Jeżeli (\lambda=0) jest rozwiązaniem, otrzymujemy:
[
\det(A)=0.
]
Metoda ta jest szczególnie przydatna w zadaniach dotyczących wartości własnych, diagonalizacji i przekształceń liniowych.
Sprawdzenie najmniejszej wartości osobliwej
W obliczeniach numerycznych wykorzystuje się rozkład według wartości osobliwych, czyli SVD. Macierz kwadratowa jest dokładnie osobliwa, gdy jej najmniejsza wartość osobliwa wynosi zero.
Programy numeryczne zwykle nie sprawdzają jednak ścisłej równości z zerem. Porównują wartości osobliwe z przyjętą tolerancją. NumPy oblicza rząd jako liczbę wartości osobliwych większych od określonego progu.
Jak sprawdzić osobliwość macierzy 2 × 2?
Dla macierzy:
[
A=
\begin{bmatrix}
a&b\
c&d
\end{bmatrix}
]
wyznacznik wynosi:
[
\det(A)=ad-bc.
]
Macierz jest osobliwa, gdy:
[
ad-bc=0.
]
Oznacza to równoważnie:
[
ad=bc.
]
Przykład macierzy osobliwej 2 × 2
Rozważmy:
[
A=
\begin{bmatrix}
3&6\
2&4
\end{bmatrix}.
]
Obliczamy:
[
\det(A)=3\cdot4-6\cdot2=12-12=0.
]
Macierz jest osobliwa.
Widać również, że druga kolumna jest dwukrotnością pierwszej:
[
\begin{bmatrix}
6\
4
\end{bmatrix}
2
\begin{bmatrix}
3\
2
\end{bmatrix}.
]
Przykład macierzy nieosobliwej 2 × 2
Dla:
[
B=
\begin{bmatrix}
3&6\
2&5
\end{bmatrix}
]
otrzymujemy:
[
\det(B)=3\cdot5-6\cdot2=15-12=3.
]
Ponieważ:
[
\det(B)\neq0,
]
macierz jest nieosobliwa.
Jak sprawdzić osobliwość macierzy 3 × 3?
Dla macierzy (3\times3) można obliczyć wyznacznik metodą Sarrusa, rozwinięciem Laplace’a lub przez sprowadzenie macierzy do postaci trójkątnej.
Rozważmy macierz:
[
A=
\begin{bmatrix}
1&2&3\
2&4&6\
0&1&1
\end{bmatrix}.
]
Drugi wiersz jest dwukrotnością pierwszego:
[
W_2=2W_1.
]
Wiersze są liniowo zależne, dlatego:
[
\det(A)=0.
]
Macierz jest osobliwa.
Można to również sprawdzić za pomocą eliminacji Gaussa:
[
W_2\leftarrow W_2-2W_1.
]
Otrzymujemy:
[
\begin{bmatrix}
1&2&3\
0&0&0\
0&1&1
\end{bmatrix}.
]
Po zamianie drugiego i trzeciego wiersza postać schodkowa wygląda następująco:
[
\begin{bmatrix}
1&2&3\
0&1&1\
0&0&0
\end{bmatrix}.
]
Macierz ma dwa pivoty, więc:
[
\operatorname{rank}(A)=2.
]
Ponieważ macierz jest stopnia trzeciego, a jej rząd wynosi 2:
[
\operatorname{rank}(A)<3.
]
Jest zatem osobliwa.
Macierz osobliwa z parametrem
W zadaniach z parametrem należy znaleźć wartości, dla których wyznacznik staje się równy zero.
Rozważmy macierz:
[
A(t)=
\begin{bmatrix}
1&2\
t&4
\end{bmatrix}.
]
Jej wyznacznik wynosi:
[
\det A(t)=1\cdot4-2t=4-2t.
]
Macierz jest osobliwa, gdy:
[
4-2t=0.
]
Stąd:
[
t=2.
]
Ostatecznie:
[
A(t)\ \text{jest osobliwa dla}\ t=2,
]
natomiast dla:
[
t\neq2
]
jest nieosobliwa.
Przy większych macierzach wyznacznik może być wielomianem wyższego stopnia. Każdy jego pierwiastek jest wartością parametru, dla której macierz traci pełny rząd. Po znalezieniu tych wartości warto dodatkowo sprawdzić rząd, zwłaszcza gdy zadanie wymaga określenia, o ile się on zmniejsza.
Dlaczego macierz osobliwa nie ma macierzy odwrotnej?
Macierz odwrotna (A^{-1}) musi spełniać warunek:
[
AA^{-1}=A^{-1}A=I.
]
Załóżmy, że macierz osobliwa miałaby odwrotność. Korzystając z własności wyznacznika iloczynu, otrzymalibyśmy:
[
\det(AA^{-1})=\det(A)\det(A^{-1}).
]
Ponieważ:
[
AA^{-1}=I,
]
lewa strona wynosi:
[
\det(I)=1.
]
Dla macierzy osobliwej:
[
\det(A)=0,
]
więc prawa strona musiałaby wynosić:
[
0\cdot\det(A^{-1})=0.
]
Prowadzi to do sprzeczności:
[
1=0.
]
Macierz odwrotna nie może zatem istnieć.
Widać to również we wzorze dla macierzy (2\times2):
[
A^{-1}
\frac{1}{ad-bc}
\begin{bmatrix}
d&-b\
-c&a
\end{bmatrix}.
]
Jeżeli:
[
ad-bc=0,
]
wymagałoby to dzielenia przez zero.
Macierz osobliwa a rząd macierzy
Dla macierzy kwadratowej (A) stopnia (n):
[
A\ \text{jest osobliwa}
\quad\Longleftrightarrow\quad
\operatorname{rank}(A)<n.
]
Rząd określa maksymalną liczbę liniowo niezależnych wierszy lub kolumn. Jeżeli jest mniejszy niż stopień macierzy, oznacza to, że co najmniej jeden wiersz albo jedna kolumna nie wnosi nowej niezależnej informacji.
Przykładowa macierz:
[
A=
\begin{bmatrix}
1&0&2\
0&1&3\
1&1&5
\end{bmatrix}
]
jest osobliwa, ponieważ:
[
W_3=W_1+W_2.
]
Ma tylko dwa liniowo niezależne wiersze:
[
\operatorname{rank}(A)=2.
]
Ponieważ:
[
2<3,
]
macierz jest osobliwa.
Macierz zerowa stopnia (n) jest skrajnym przypadkiem macierzy osobliwej. Jej rząd wynosi 0, a wyznacznik jest równy zero.
Macierz osobliwa a liniowa zależność
Osobliwość oznacza, że kolumny macierzy nie są liniowo niezależne. Istnieją zatem liczby, nie wszystkie równe zero, takie że odpowiednia kombinacja kolumn daje wektor zerowy.
Jeżeli kolumny macierzy oznaczymy jako:
[
a_1,a_2,\ldots,a_n,
]
to dla macierzy osobliwej istnieją współczynniki:
[
x_1,x_2,\ldots,x_n,
]
nie wszystkie zerowe, dla których:
[
x_1a_1+x_2a_2+\ldots+x_na_n=0.
]
Jest to równoważne zapisowi:
[
Ax=0
]
dla pewnego niezerowego wektora (x).
Przykładowo dla:
[
A=
\begin{bmatrix}
1&2\
2&4
\end{bmatrix}
]
mamy:
[
A
\begin{bmatrix}
-2\
1
\end{bmatrix}
\begin{bmatrix}
0\
0
\end{bmatrix}.
]
Wektor:
[
\begin{bmatrix}
-2\
1
\end{bmatrix}
]
jest niezerowy, a mimo to po pomnożeniu przez (A) daje wektor zerowy. To dowodzi, że macierz nie może być odwracalna. Gdyby istniała (A^{-1}), można byłoby pomnożyć równanie przez nią i otrzymać sprzeczny wniosek, że niezerowy wektor jest równy zeru. Niezerowe jądro macierzy jest jedną z przyczyn niemożności jej odwrócenia.
Geometryczna interpretacja macierzy osobliwej
Macierz kwadratowa może opisywać przekształcenie liniowe przestrzeni. Wyznacznik informuje, jak zmienia się zorientowane pole, objętość lub ich odpowiednik w większej liczbie wymiarów.
Jeżeli wyznacznik jest różny od zera, przekształcenie nie zgniata przestrzeni do niższego wymiaru. Można je odwrócić i odzyskać dane wejściowe.
Gdy:
[
\det(A)=0,
]
przekształcenie zmniejsza wymiar obrazu. Przykładowo może:
- przekształcić płaszczyznę w prostą,
- przekształcić przestrzeń trójwymiarową w płaszczyznę,
- przekształcić wszystkie wektory w jeden punkt,
- połączyć różne wektory wejściowe w ten sam wynik.
Rozważmy ponownie:
[
A=
\begin{bmatrix}
1&2\
2&4
\end{bmatrix}.
]
Obie kolumny leżą na tym samym kierunku. Macierz nie rozciąga płaszczyzny na całą płaszczyznę, lecz odwzorowuje ją na prostą.
Po takim przekształceniu nie można jednoznacznie ustalić, z którego punktu rozpoczęto. Część informacji została bezpowrotnie utracona, dlatego przekształcenie nie ma odwrotności.
Macierz osobliwa w układach równań
Układ równań liniowych można zapisać jako:
[
Ax=b.
]
Jeżeli (A) jest kwadratową macierzą nieosobliwą, układ ma dokładnie jedno rozwiązanie:
[
x=A^{-1}b.
]
Jeżeli macierz (A) jest osobliwa, nie istnieje jednoznaczne rozwiązanie dla dowolnego (b). Układ może:
- nie mieć rozwiązania,
- mieć nieskończenie wiele rozwiązań.
Nie może natomiast mieć dokładnie jednego rozwiązania.
Układ z nieskończenie wieloma rozwiązaniami
Rozważmy:
[
\begin{cases}
x+2y=3,\
2x+4y=6.
\end{cases}
]
Macierz współczynników ma postać:
[
A=
\begin{bmatrix}
1&2\
2&4
\end{bmatrix}.
]
Jej wyznacznik wynosi zero. Drugie równanie jest dwukrotnością pierwszego, więc oba opisują tę samą prostą.
Układ ma nieskończenie wiele rozwiązań:
[
x=3-2y.
]
Układ sprzeczny
Zmieńmy wyraz wolny w drugim równaniu:
[
\begin{cases}
x+2y=3,\
2x+4y=7.
\end{cases}
]
Macierz współczynników nadal jest osobliwa, ale równania opisują różne, równoległe proste.
Po odjęciu dwukrotności pierwszego równania od drugiego otrzymujemy:
[
0=1.
]
Układ nie ma rozwiązania.
O liczbie rozwiązań decyduje więc nie tylko osobliwość macierzy współczynników, lecz także zgodność wektora (b) z przestrzenią kolumn macierzy.
Co oznacza zerowa wartość własna?
Wartość własna (\lambda) macierzy (A) spełnia równanie:
[
Av=\lambda v
]
dla pewnego niezerowego wektora własnego (v).
Jeżeli:
[
\lambda=0,
]
to:
[
Av=0.
]
Macierz przekształca niezerowy wektor w wektor zerowy. Oznacza to, że jej jądro zawiera element niezerowy, a więc macierz jest osobliwa.
Zależność działa również w drugą stronę. Jeżeli macierz jest osobliwa, równanie:
[
Ax=0
]
ma rozwiązanie niezerowe. Wektor ten jest wektorem własnym odpowiadającym wartości własnej 0.
Można więc zapisać:
[
A\ \text{jest osobliwa}
\quad\Longleftrightarrow\quad
0\ \text{jest wartością własną }A.
]
Macierz prawie osobliwa a macierz źle uwarunkowana
W matematyce macierz jest albo osobliwa, albo nieosobliwa. W obliczeniach komputerowych występuje jednak ważne pojęcie macierzy prawie osobliwej.
Macierz może mieć wyznacznik różny od zera, a więc formalnie posiadać odwrotność, lecz być tak bliska utraty rzędu, że niewielka zmiana danych powoduje dużą zmianę wyniku.
Taką macierz nazywa się źle uwarunkowaną.
Przykład:
[
A=
\begin{bmatrix}
1&1\
1&1.000000001
\end{bmatrix}.
]
Wyznacznik wynosi:
[
\det(A)=0.000000001.
]
Nie jest równy zero, więc macierz teoretycznie jest nieosobliwa. Jej kolumny są jednak niemal liniowo zależne, co może prowadzić do niestabilnych wyników.
Do oceny takiego problemu służy liczba uwarunkowania. Duża wartość oznacza, że błędy danych i zaokrągleń mogą zostać silnie wzmocnione. Dla dokładnie osobliwej macierzy liczba uwarunkowania jest nieskończona.
NumPy wskazuje, że źle uwarunkowana macierz może nie wywołać błędu podczas odwracania, mimo że otrzymane wyniki będą niedokładne. Dokumentacja zaleca analizę wartości osobliwych lub liczby uwarunkowania.
Mały wyznacznik nie zawsze oznacza złe uwarunkowanie
Sam wyznacznik bliski zeru nie jest uniwersalnym testem prawie osobliwej macierzy. Jego wielkość zależy również od skali elementów.
Rozważmy:
[
A=
\begin{bmatrix}
0.001&0\
0&0.001
\end{bmatrix}.
]
Wyznacznik wynosi:
[
\det(A)=0.000001.
]
Jest mały, ale kolumny są prostopadłe i macierz nie jest bliska zależności liniowej. Jej liczba uwarunkowania w normie drugiej wynosi 1.
Znacznie lepszą informację o stabilności numerycznej daje stosunek największej wartości osobliwej do najmniejszej niż sama wartość wyznacznika.
Dlaczego komputer może zwrócić wyznacznik różny od zera?
Komputery wykonują obliczenia na liczbach zmiennoprzecinkowych z ograniczoną precyzją. Z tego powodu wyznacznik macierzy teoretycznie osobliwej może zostać przedstawiony jako bardzo mała liczba, na przykład:
[
1\cdot10^{-16}
]
zamiast dokładnego zera.
Nie musi to oznaczać, że macierz jest nieosobliwa. Wynik może być efektem błędów zaokrągleń.
Microsoft informuje, że funkcja obliczająca wyznacznik w Excelu działa z ograniczoną precyzją i wyznacznik macierzy osobliwej może różnić się od zera o około (10^{-16}).
W obliczeniach numerycznych zamiast testu:
[
\det(A)==0
]
lepiej zastosować:
- obliczenie rzędu z tolerancją,
- analizę wartości osobliwych,
- liczbę uwarunkowania,
- test wartości bezwzględnej wyznacznika względem skali problemu.
Próg tolerancji powinien zależeć od dokładności danych i rodzaju obliczeń. Jedna stała wartość nie będzie odpowiednia dla wszystkich macierzy.
Jak sprawdzić macierz osobliwą w Pythonie?
Biblioteka NumPy udostępnia kilka funkcji przydatnych do analizy macierzy:
import numpy as np
A = np.array([
[1.0, 2.0],
[2.0, 4.0]
])
wyznacznik = np.linalg.det(A)
rzad = np.linalg.matrix_rank(A)
uwarunkowanie = np.linalg.cond(A)
print(wyznacznik)
print(rzad)
print(uwarunkowanie)
Dla tej macierzy wyznacznik będzie równy zero lub bardzo bliski zeru, rząd wyniesie 1, a liczba uwarunkowania będzie nieskończona albo bardzo duża.
Można również spróbować obliczyć odwrotność:
try:
odwrotna = np.linalg.inv(A)
except np.linalg.LinAlgError:
print("Macierz jest osobliwa.")
Funkcja numpy.linalg.inv zgłasza błąd LinAlgError, gdy macierz zostanie rozpoznana jako osobliwa. Przy macierzy źle uwarunkowanej obliczenie może jednak zostać wykonane, choć wynik może być niedokładny. Funkcja matrix_rank wykorzystuje SVD i tolerancję do ustalania rzędu.
Czy macierz osobliwą można „odwrócić”?
Macierz osobliwa nie ma klasycznej odwrotności (A^{-1}). W niektórych zastosowaniach można jednak użyć pseudoodwrotności Moore’a-Penrose’a:
[
A^+.
]
Pseudoodwrotność nie zmienia macierzy osobliwej w macierz odwracalną. Jest innym obiektem, który pozwala między innymi:
- znajdować rozwiązania najmniejszych kwadratów,
- wybierać rozwiązanie o najmniejszej normie,
- pracować z macierzami prostokątnymi,
- analizować układy niedookreślone i nadokreślone,
- omijać brak klasycznej odwrotności w kontrolowany sposób.
W NumPy służy do tego funkcja:
np.linalg.pinv(A)
Funkcja oblicza pseudoodwrotność za pomocą rozkładu SVD, uwzględniając wartości osobliwe większe od przyjętego progu.
Pseudoodwrotność nie gwarantuje, że sprzeczny układ (Ax=b) otrzyma dokładne rozwiązanie. Może natomiast wskazać wektor minimalizujący błąd:
[
|Ax-b|_2.
]
Do bezpośredniego rozwiązywania problemów najmniejszych kwadratów można użyć również funkcji numpy.linalg.lstsq.
Najważniejsze właściwości macierzy osobliwych
Transpozycja zachowuje osobliwość
Dla każdej macierzy kwadratowej:
[
\det(A^T)=\det(A).
]
Jeżeli:
[
\det(A)=0,
]
to:
[
\det(A^T)=0.
]
Macierz (A^T) również jest osobliwa.
Iloczyn zawierający macierz osobliwą jest osobliwy
Dla kwadratowych macierzy tego samego stopnia:
[
\det(AB)=\det(A)\det(B).
]
Jeżeli przynajmniej jedna z macierzy jest osobliwa, jeden z wyznaczników wynosi zero:
[
\det(AB)=0.
]
Iloczyn jest więc osobliwy.
Co więcej, jeżeli iloczyn dwóch kwadratowych macierzy jest osobliwy, to przynajmniej jeden z czynników również musi być osobliwy.
Suma macierzy osobliwych nie musi być osobliwa
Rozważmy:
[
A=
\begin{bmatrix}
1&0\
0&0
\end{bmatrix},
\qquad
B=
\begin{bmatrix}
0&0\
0&1
\end{bmatrix}.
]
Obie macierze są osobliwe:
[
\det(A)=\det(B)=0.
]
Ich suma wynosi jednak:
[
A+B=
\begin{bmatrix}
1&0\
0&1
\end{bmatrix}
=I.
]
Macierz jednostkowa jest nieosobliwa, ponieważ jej wyznacznik wynosi 1.
Niezerowa wielokrotność pozostaje osobliwa
Dla macierzy stopnia (n):
[
\det(cA)=c^n\det(A).
]
Jeżeli (\det(A)=0), to dla dowolnej liczby (c):
[
\det(cA)=0.
]
Pomnożenie macierzy osobliwej przez skalar nie przywraca jej odwracalności.
Podobieństwo zachowuje osobliwość
Jeżeli macierz (B) jest podobna do (A):
[
B=P^{-1}AP,
]
gdzie (P) jest odwracalna, to:
[
\det(B)=\det(A).
]
Macierze podobne są więc jednocześnie osobliwe albo jednocześnie nieosobliwe.
Macierz zerowa zawsze jest osobliwa
Dla macierzy zerowej stopnia (n):
[
0_n=
\begin{bmatrix}
0&\cdots&0\
\vdots&\ddots&\vdots\
0&\cdots&0
\end{bmatrix}
]
wyznacznik wynosi zero, rząd wynosi 0, a każda kolumna i każdy wiersz są liniowo zależne.
Macierz z zerowym wierszem lub kolumną jest osobliwa
Jeżeli macierz kwadratowa zawiera cały wiersz albo całą kolumnę złożoną z zer, jej wyznacznik wynosi zero. Taka macierz nie może mieć pełnego rzędu.
Macierz trójkątna jest osobliwa, gdy ma zero na przekątnej
Wyznacznik macierzy trójkątnej jest iloczynem elementów głównej przekątnej. Jeśli choć jeden z nich wynosi zero:
[
\det(A)=0.
]
Macierz jest osobliwa.
Zasada ta dotyczy zarówno macierzy górnotrójkątnych, jak i dolnotrójkątnych.
Do czego przydaje się rozpoznawanie macierzy osobliwej?
Sprawdzanie osobliwości jest istotne w każdym problemie, w którym pojawia się odwracanie macierzy albo jednoznaczne odzyskiwanie danych.
Rozwiązywanie układów równań
Osobliwość macierzy współczynników ostrzega, że układ nie ma jednego rozwiązania. Trzeba zbadać jego zgodność i liczbę zmiennych swobodnych.
Analiza danych
Liniowa zależność kolumn może oznaczać, że niektóre cechy zawierają powtarzającą się informację. Przykładem jest kolumna będąca dokładną kombinacją innych kolumn.
Regresja liniowa
Przy klasycznym wzorze wykorzystującym macierz:
[
X^TX
]
problem pojawia się, gdy kolumny macierzy (X) są liniowo zależne. Macierz (X^TX) może wtedy być osobliwa, a standardowy wzór wymagający odwrotności nie zadziała.
Grafika komputerowa
Osobliwa macierz transformacji może spłaszczyć obiekt do niższego wymiaru. Na przykład skalowanie jednej współrzędnej przez zero zamienia figurę przestrzenną w obiekt płaski.
Układy dynamiczne i sterowanie
Brak pełnego rzędu może wskazywać, że nie wszystkie kierunki układu są osiągalne albo obserwowalne. Dokładna interpretacja zależy od analizowanej macierzy.
Obliczenia numeryczne
Macierze osobliwe i źle uwarunkowane mogą prowadzić do błędów, ostrzeżeń, niestabilnych wyników i silnego wzmacniania niewielkich niedokładności danych.
Najczęstsze błędy dotyczące macierzy osobliwej
Uznawanie każdej macierzy z zerem za osobliwą
Pojedynczy zerowy element nie oznacza osobliwości.
Macierz:
[
A=
\begin{bmatrix}
1&0\
0&2
\end{bmatrix}
]
zawiera zera, ale:
[
\det(A)=2.
]
Jest nieosobliwa.
Uznawanie zerowej przekątnej za wystarczający warunek
Dla macierzy diagonalnej lub trójkątnej zero na przekątnej oznacza osobliwość. Nie dotyczy to jednak każdej macierzy.
Przykład:
[
A=
\begin{bmatrix}
0&1\
1&0
\end{bmatrix}.
]
Jej wyznacznik wynosi:
[
\det(A)=-1.
]
Macierz jest nieosobliwa, mimo że na głównej przekątnej znajdują się zera.
Mylenie wyznacznika równego zero z rzędem równym zero
Jeżeli:
[
\det(A)=0,
]
wiadomo jedynie, że macierz nie ma pełnego rzędu.
Macierz:
[
\begin{bmatrix}
1&2\
2&4
\end{bmatrix}
]
ma wyznacznik zero, ale jej rząd wynosi 1, a nie 0. Rząd zero ma wyłącznie macierz zerowa.
Zakładanie, że osobliwy układ zawsze ma nieskończenie wiele rozwiązań
Osobliwa macierz współczynników wyklucza dokładnie jedno rozwiązanie, ale nie gwarantuje zgodności układu. W zależności od wektora wyrazów wolnych rozwiązań może być nieskończenie wiele albo może nie być ich wcale.
Traktowanie bardzo małego wyniku numerycznego jako dokładnego zera
W obliczeniach komputerowych wynik rzędu (10^{-16}) może być skutkiem zaokrągleń. Należy uwzględnić tolerancję oraz skalę danych, zamiast sprawdzać wyłącznie dokładną równość.
Próba obliczenia klasycznej odwrotności
Macierz osobliwa nie ma odwrotności. Zastosowanie wzoru na (A^{-1}) prowadzi do dzielenia przez zero albo błędu programu.
Pseudoodwrotność może być użyteczna, ale nie jest tym samym co klasyczna macierz odwrotna.
Nazywanie każdej macierzy prostokątnej osobliwą
Macierz prostokątna nie ma klasycznej dwustronnej odwrotności, ale nie oznacza to automatycznie, że należy nazywać ją osobliwą. Właściwym kryterium jest jej rząd: pełny albo niepełny.
Jaką metodę sprawdzania osobliwości wybrać?
| Sytuacja | Najwygodniejsza metoda |
|---|---|
| Macierz (2\times2) | Wzór (ad-bc) |
| Macierz (3\times3) | Wyznacznik lub eliminacja Gaussa |
| Duża macierz | Eliminacja Gaussa, rozkład LU albo SVD |
| Macierz z parametrem | Równanie (\det(A)=0) |
| Zadanie o wartościach własnych | Sprawdzenie, czy 0 jest wartością własną |
| Układ równań | Rząd macierzy i macierzy rozszerzonej |
| Obliczenia komputerowe | SVD, rząd numeryczny i liczba uwarunkowania |
| Dane przybliżone | Analiza tolerancji, nie tylko wyznacznika |
Przy małych macierzach wyznacznik daje szybką i jednoznaczną odpowiedź. Przy dużych lub numerycznych problemach bezpieczniej analizować rząd, wartości osobliwe oraz uwarunkowanie.
Macierz osobliwa – najważniejsze informacje
Macierz osobliwa to macierz kwadratowa, której wyznacznik wynosi zero:
[
\det(A)=0.
]
Nie ma ona klasycznej macierzy odwrotnej, jej rząd jest mniejszy od stopnia macierzy, a wiersze i kolumny są liniowo zależne. Równanie jednorodne (Ax=0) ma wówczas co najmniej jedno rozwiązanie niezerowe, a zero jest wartością własną macierzy.
Osobliwość można sprawdzić za pomocą wyznacznika, eliminacji Gaussa, rzędu, wartości własnych albo rozkładu SVD. W układzie równań osobliwa macierz współczynników oznacza, że rozwiązanie nie może być dokładnie jedno – układ jest sprzeczny albo ma nieskończenie wiele rozwiązań.
FAQ
Co to jest macierz osobliwa?
Macierz osobliwa to macierz kwadratowa, której wyznacznik jest równy zero. Nie posiada klasycznej macierzy odwrotnej, a jej wiersze i kolumny są liniowo zależne. Dla macierzy stopnia (n) osobliwość oznacza również, że jej rząd jest mniejszy niż (n).
Jak sprawdzić, czy macierz jest osobliwa?
Najprościej obliczyć jej wyznacznik. Jeśli (\det(A)=0), macierz jest osobliwa. Można też sprowadzić ją do postaci schodkowej. Brak pivotu w każdej kolumnie lub pojawienie się zerowego wiersza oznacza, że macierz nie ma pełnego rzędu i jest nieodwracalna.
Czy macierz osobliwa ma macierz odwrotną?
Nie. Gdy wyznacznik macierzy wynosi zero, wzór na odwrotność wymagałby dzielenia przez zero. Istnienie odwrotności prowadziłoby również do sprzeczności w równaniu (\det(AA^{-1})=\det(I)). Można czasem zastosować pseudoodwrotność, ale nie jest ona klasyczną odwrotnością.
Czy macierz prostokątna może być osobliwa?
W ścisłej definicji osobliwość dotyczy macierzy kwadratowych, ponieważ tylko one mają wyznacznik i mogą posiadać klasyczną odwrotność dwustronną. Dla macierzy prostokątnych mówi się raczej o pełnym albo niepełnym rzędzie oraz o liniowej zależności wierszy lub kolumn.
Co oznacza macierz osobliwa w układzie równań?
Jeżeli kwadratowa macierz współczynników jest osobliwa, układ nie może mieć dokładnie jednego rozwiązania. Może nie mieć żadnego rozwiązania, gdy jest sprzeczny, albo mieć nieskończenie wiele rozwiązań, gdy równania są zgodne, lecz część z nich zależy od pozostałych.
Czy mały wyznacznik oznacza, że macierz jest osobliwa?
Nie. Macierz jest dokładnie osobliwa tylko wtedy, gdy jej wyznacznik wynosi zero. Bardzo mały, ale niezerowy wyznacznik może wskazywać na problem numeryczny, lecz zależy również od skali macierzy. Przybliżoną osobliwość lepiej oceniać za pomocą wartości osobliwych i liczby uwarunkowania.
Czym różni się macierz osobliwa od nieosobliwej?
Macierz osobliwa ma wyznacznik równy zero, nie ma odwrotności i nie posiada pełnego rzędu. Macierz nieosobliwa ma wyznacznik różny od zera, pełny rząd oraz dokładnie określoną odwrotność. Jej wiersze i kolumny są liniowo niezależne.



Opublikuj komentarz
Musisz się zalogować, aby móc dodać komentarz.