Artikel

2.6: Die Inverse der Matrix


2.6: Die Inverse der Matrix

Inverse Matrix

Berechnen Sie die Umkehrung einer 3-mal-3-Matrix.

Überprüfen Sie die Ergebnisse. Idealerweise erzeugt Y*X die Identitätsmatrix. Da inv die Matrixinversion unter Verwendung von Gleitkommaberechnungen durchführt, ist Y*X in der Praxis nahe der Identitätsmatrix eye(size(X)), aber nicht genau gleich dieser.

Lineares System lösen

Untersuchen Sie, warum das Lösen eines linearen Systems durch Invertieren der Matrix mit inv(A)*b schlechter ist als das direkte Lösen mit dem Backslash-Operator x = A .

Erstellen Sie eine Zufallsmatrix A der Ordnung 500, die so konstruiert ist, dass ihre Bedingungsnummer cond(A) 1e10 und ihre Norm norm(A) 1 ist. Die exakte Lösung x ist ein Zufallsvektor der Länge 500 und die rechte Seite ist b = A*x . Somit ist das System der linearen Gleichungen schlecht konditioniert, aber konsistent.

Lösen Sie das lineare System A*x = b durch Invertieren der Koeffizientenmatrix A . Verwenden Sie tic und toc, um Timing-Informationen zu erhalten.

Ermitteln Sie den absoluten und den Restfehler der Berechnung.

Lösen Sie nun dasselbe lineare System mit dem Backslash-Operator .

Die Backslash-Berechnung ist schneller und weist um mehrere Größenordnungen weniger Restfehler auf. Die Tatsache, dass err_inv und err_bs beide in der Größenordnung von 1e-6 liegen, spiegelt einfach die Bedingungsnummer der Matrix wider.

Das Verhalten dieses Beispiels ist typisch. Die Verwendung von A anstelle von inv(A)*b ist zwei- bis dreimal schneller und erzeugt Residuen in der Größenordnung der Maschinengenauigkeit relativ zur Größe der Daten.


Jared Antrobus @ University of Kentucky -->

Lass $A$ a . sein quadratische Matrix der Größe $nmal n$. Wenn $A$ Zeile auf die $n imes n$ Identitätsmatrix $I_n$ reduziert wird, dann ist $A$$ invertierbar. Das heißt, es gibt eine $n imes n$-Matrix $A^<-1>$ (sprich "$A$ inverse") mit $AA^<-1>=A^<-1>A=I_n $. Inversen können nur für quadratische Matrizen existieren, aber nicht jede quadratische Matrix hat eine Inverse. (Manchmal haben nicht-quadratische Matrizen Links- oder Rechts-Inversen, aber das würde den Rahmen dieser Klasse sprengen.)

Wir kehren noch einmal zum Problem der Lösung eines linearen Gleichungssystems zurück. Angenommen, wir haben ein System von $n$ linearen Gleichungen in $n$ Variablen. $egin a_<11>x_1+a_<12>x_2+ldots+a_<1n>x_n&=b_1 a_<21>x_1+a_<22>x_2+ldots+a_<2n>x_n&=b_2 vdots& ein_x_1+a_x_2+ldots+a_x_n&=b_n end$ Sei $A$ die $n imes n$ Matrix mit den Einträgen $a_$. (Erinnern Sie sich, dass $A$ die Koeffizientenmatrix des obigen Systems ist.) Dann kann dieses System als die Matrixgleichung $Ax=b$ geschrieben werden, wobei $x$ und $b$ die Spaltenvektoren mit den Einträgen $x_1, sind. ldots,x_n$ bzw. $b_1,ldots,b_n$. $ Ax = egin a_<11>x_1+a_<12>x_2+ldots+a_<1n>x_n a_<21>x_1+a_<22>x_2+ldots+a_<2n>x_n vdots a_x_1+a_x_2+ldots+a_x_n end = eginb_1_2vdots_nend = b $ Wenn $A$ eine invertierbare Matrix ist, ist das eigentlich ziemlich erstaunlich. Für jeden Vektor $b$ können wir $A^<-1>$ verwenden, um nach $x$ aufzulösen! $egin Ax&=b A^<-1>Ax&=A^<-1>b x&=A^<-1>b end$

Großartig, wie können wir also die Inverse einer quadratischen Matrix finden? Woher wissen wir überhaupt, ob eine Matrix invertierbar ist? Kehren Sie zur Gauß-Jordan-Elimination zurück. Dieselbe Sequenz von Zeilenoperationen, die $A$ zu $I_n$ führt, nimmt auch $I_n$ zu $A^<-1>$. So können wir eine erweiterte Matrix $eginA&I_nend$ und Zeilenreduzierung. Wenn $A$ auf die Identität reduziert wird, ist die rechte Seite der erweiterten Matrix $A^<-1>$. Wenn $A$ nicht auf die Identität reduziert wird, ist $A$ nicht invertierbar (oder Singular). $eginA&I_nendlongrightarrow eginI_n&A^<-1>end$

Beispiel. Sei $A=egin1&2-1&3ende$. Um $A^<-1>$ zu finden (falls vorhanden), reduzieren wir die erweiterte Matrix $eginA&I_2end$. $egin &links[egin 1&2&1&0 -1&3&0&1 end ight] R_1+R_2 ightarrow R_2 &left[egin 1&2&1&0 0&5&1&1 end ight] frac<1><5>R_2 ightarrow R_2 &left[egin 1&2&1&0 0&1&1/5&1/5 end ight] -2R_2+R_1 ightarrow R_1 &left[egin 1&0&3/5&-2/5 0&1&1/5&1/5 end ight] end$ Also $A^<-1>=egin3/5&-2/51/5&1/5Ende$. Wir können dies überprüfen, indem wir multiplizieren: $ AA^<-1>=egin1&2-1&3ende Start3/5&-2/51/5&1/5Ende = egin1&0&1Ende $

Satz. Nur für $2 imes 2$-Matrizen gibt es eine einfache Abkürzung, um die Inverse zu bestimmen. Angenommen $A=egina&bc&dend$. Dann ist die bestimmend von $A$ ist $det(A)=ad-bc$. Immer wenn $det(A)$ ungleich Null ist, ist $A$ invertierbar und $A^<-1>=frac<1>egind&-b-c&aend.$

Ich habe bereits erwähnt, dass die Kenntnis der Inversen einer Matrix uns helfen kann, Gleichungssysteme zu lösen. Sehen wir uns ein Beispiel für diese Technik an.

Beispiel. Betrachten Sie dieses System linearer Gleichungen. $egin x+2y&=5 -x+3y&=10 end$ Beachten Sie, dass dies der Matrixgleichung $egin . entspricht1&2-1&3endeStartxyende=eginnen510Ende.$ Aus dem vorherigen Beispiel kennen wir die Inverse dieser Matrix. Wir multiplizieren links mit dieser Umkehrung. $egin Start3/5&-2/51/5&1/5Ende Start1&2-1&3ende Startxyende &=egin3/5&-2/51/5&1/5Ende Start510Ende Start1&0&1Ende Startxyende &=egin-13Ende Startxyende &=egin-13Ende Ende$ Die Lösung des Systems ist also $(-1,3)$.

Ich nutze diese Gelegenheit, um Sie daran zu erinnern, dass, während Matrizen im Allgemeinen nicht kommutieren, wir immer $AA^<-1>=A^<-1>A=I_n$ haben. Das heißt, invertierbare Matrizen kommutieren mit ihren Inversen.


2.6.2. Verkleinerte Kovarianz¶

2.6.2.1. Grundschrumpf¶

Obwohl es sich um einen asymptotisch unverzerrten Schätzer der Kovarianzmatrix handelt, ist der Maximum-Likelihood-Schätzer kein guter Schätzer der Eigenwerte der Kovarianzmatrix, sodass die aus ihrer Inversion erhaltene Präzisionsmatrix nicht genau ist. Manchmal kommt es sogar vor, dass die empirische Kovarianzmatrix aus numerischen Gründen nicht invertiert werden kann. Um ein solches Inversionsproblem zu vermeiden, wurde eine Transformation der empirischen Kovarianzmatrix eingeführt: die Schrumpfung .

In scikit-learn kann diese Transformation (mit einem benutzerdefinierten Schrumpfungskoeffizienten) mit der Methode shrunk_covariance direkt auf eine vorab berechnete Kovarianz angewendet werden. Außerdem kann ein Schrumpfschätzer der Kovarianz mit einem ShrunkCovariance-Objekt und seiner ShrunkCovariance.fit-Methode an Daten angepasst werden. Auch hier hängen die Ergebnisse davon ab, ob die Daten zentriert sind, so dass man den Parameter accept_centered möglicherweise genau verwenden möchte.

Mathematisch besteht diese Schrumpfung darin, das Verhältnis zwischen dem kleinsten und dem größten Eigenwert der empirischen Kovarianzmatrix zu reduzieren. Dies kann durch einfaches Verschieben jedes Eigenwerts gemäß einem gegebenen Offset erfolgen, was dem Auffinden des l2-bestraften Maximum-Likelihood-Schätzers der Kovarianzmatrix entspricht. In der Praxis läuft die Schrumpfung auf eine einfache konvexe Transformation hinaus: (Sigma_ < m geschrumpft>= (1-alpha)hat + alphafrac<< m Tr>hat< Sigma>>

m-ID) .

Die Wahl des Schrumpfungsbetrags, (alpha) bedeutet das Festlegen eines Bias/Varianz-Kompromisses und wird unten diskutiert.

2.6.2.2. Ledoit-Wolf Schrumpfung¶

In ihrer Arbeit von 2004 schlagen O. Ledoit und M. Wolf eine Formel vor, um den optimalen Schrumpfungskoeffizienten (alpha) zu berechnen, der den mittleren quadratischen Fehler zwischen der geschätzten und der realen Kovarianzmatrix minimiert.

Der Ledoit-Wolf-Schätzer der Kovarianzmatrix kann an einer Stichprobe mit der Funktion ledoit_wolf des Pakets sklearn.covariance berechnet werden, oder er kann anderweitig durch Anpassen eines LedoitWolf-Objekts an dieselbe Stichprobe erhalten werden.

Fall, wenn die Kovarianzmatrix der Population isotrop ist

Es ist wichtig anzumerken, dass man erwarten würde, dass keine Schrumpfung erforderlich ist, wenn die Anzahl der Proben viel größer ist als die Anzahl der Merkmale. Die Intuition dahinter ist, dass, wenn die Kovarianz der Population den vollen Rang hat, wenn die Anzahl der Stichproben wächst, die Kovarianz der Stichprobe ebenfalls positiv definit wird. Als Ergebnis wäre keine Schrumpfung notwendig und das Verfahren sollte dies automatisch tun.

Dies ist jedoch beim Ledoit-Wolf-Verfahren nicht der Fall, wenn die Populationskovarianz zufällig ein Vielfaches der Identitätsmatrix ist. In diesem Fall nähert sich die Ledoit-Wolf-Schrumpfungsschätzung 1 mit zunehmender Anzahl von Stichproben. Dies weist darauf hin, dass die optimale Schätzung der Kovarianzmatrix im Ledoit-Wolf-Sinn ein Vielfaches der Identität ist. Da die Populationskovarianz bereits ein Vielfaches der Identitätsmatrix ist, ist die Ledoit-Wolf-Lösung tatsächlich eine vernünftige Schätzung.

Ein Beispiel zum Anpassen eines LedoitWolf-Objekts an Daten und zur Visualisierung der Leistung des Ledoit-Wolf-Schätzers in Bezug auf die Wahrscheinlichkeit finden Sie unter Schrumpfungskovarianzschätzung: LedoitWolf vs. OAS und max-likelihood.

O. Ledoit und M. Wolf, "A Well-Conditioned Estimator for Large-Dimensional Covariance Matrices", Journal of Multivariate Analysis, Band 88, Ausgabe 2, Februar 2004, Seiten 365-411.

2.6.2.3. Orakel-Annäherungsschrumpfung¶

Unter der Annahme, dass die Daten gaußförmig verteilt sind, haben Chen et al. 2 leitete eine Formel ab, die darauf abzielte, einen Schrumpfungskoeffizienten zu wählen, der einen kleineren mittleren quadratischen Fehler ergibt als der durch die Formel von Ledoit und Wolf gegebene. Der resultierende Schätzer ist als Oracle Shrinkage Approximating Schätzer der Kovarianz bekannt.

Der OAS-Schätzer der Kovarianzmatrix kann an einer Stichprobe mit der oas-Funktion des Pakets sklearn.covariance berechnet werden oder kann anderweitig durch Anpassen eines OAS-Objekts an dieselbe Stichprobe erhalten werden.

Bias-Varianz-Trade-off beim Festlegen der Schrumpfung: Vergleich der Auswahl von Ledoit-Wolf- und OAS-Schätzern ¶

Chen et al., „Shrinkage Algorithms for MMSE Covariance Estimation“, IEEE Trans. auf Zeichen. Proc., Band 58, Ausgabe 10, Oktober 2010.

Siehe Ledoit-Wolf vs. OAS-Schätzung, um die Differenz des mittleren quadratischen Fehlers zwischen einem Ledoit-Wolf und einem OAS-Schätzer der Kovarianz zu visualisieren.


Beispiel (3 &mal 3)

Finden Sie die Inverse der Matrix EIN unter Verwendung der Gauß-Jordan-Eliminierung.

EIN = 12 9 11
3 13 10
14 4 15

Unser Verfahren

Wir schreiben Matrix EIN links und die Identitätsmatrix ich rechts mit einer gestrichelten Linie getrennt, wie folgt. Das Ergebnis heißt an erweitert Matrix.

Wir fügen Zeilennummern hinzu, um es klarer zu machen.

Als nächstes machen wir mehrere Zeilenoperationen auf den 2 Matrizen und unser Ziel ist es, die Identitätsmatrix auf der links, so was:

(Technisch reduzieren wir die Matrix EIN zu reduzierte Reihenstufenform, auch genannt kanonische Zeilenform).

Die resultierende Matrix auf der rechten Seite ist die inverse Matrix von EIN.

Unser Verfahren für Zeilenoperationen ist wie folgt:

  1. Wir erhalten eine "1" in der oberen linken Ecke, indem wir die erste Reihe teilen
  2. Dann erhalten wir "0" im Rest der ersten Spalte "0"
  3. Dann müssen wir "1" in der zweiten Zeile, zweiten Spalte erhalten
  4. Dann machen wir alle anderen Einträge in der zweiten Spalte "0".

Wir machen so weiter, bis wir links die Identitätsmatrix haben.

Lassen Sie uns nun fortfahren und die Umkehrung finden.

Lösung

Neue Zeile [1]

Teilen Sie Zeile [1] durch 12 (um uns eine "1" an der gewünschten Stelle zu geben):

Neue Reihe [2]

Reihe[2] &minus 3 &mal Reihe[1] (um uns 0 an der gewünschten Position zu geben):

Daraus ergibt sich unsere neue Reihe [2]:

Neue Reihe [3]

Reihe[3] &minus 14 &mal Reihe[1] (um uns 0 an der gewünschten Position zu geben):

Daraus ergibt sich unsere neue Reihe [3]:

Neue Reihe [2]

Teilen Sie Zeile [2] durch 10,75 (um uns eine "1" an der gewünschten Stelle zu geben):

Neue Zeile [1]

Reihe[1] &minus 0,75 &mal Reihe[2] (um uns 0 an der gewünschten Position zu geben):

1 &minus 0,75 &mal 0 = 1
0,75 &minus 0,75 &mal 1 = 0
0,9167 &minus 0,75 &mal 0,6744 = 0,4109
0,0833 &minus 0,75 &mal -0,0233 = 0,1008
0 &minus 0,75 &mal 0,093 = -0,0698
0 &minus 0,75 &mal 0 = 0

Daraus ergibt sich unsere neue Reihe [1]:

Neue Reihe [3]

Reihe[3] &minus -6,5 &mal Reihe[2] (um uns 0 an der gewünschten Position zu geben):

Daraus ergibt sich unsere neue Reihe [3]:

Neue Reihe [3]

Reihe [3] durch 6,5504 . teilen (um uns eine "1" an der gewünschten Stelle zu geben):

Neue Zeile [1]

Reihe[1] &minus 0,4109 &mal Reihe[3] (um uns 0 an der gewünschten Position zu geben):

1 &minus 0,4109 &mal 0 = 1
0 &minus 0,4109 &mal 0 = 0
0,4109 &minus 0,4109 &mal 1 = 0
0,1008 &minus 0,4109 &mal -0,2012 = 0,1834
-0,0698 &minus 0,4109 &mal 0,0923 = -0,1077
0 &minus 0,4109 &mal 0,1527 = -0,0627

Daraus ergibt sich unsere neue Reihe [1]:

Neue Reihe [2]

Reihe[2] &minus 0,6744 &mal Reihe[3] (um uns 0 an der gewünschten Position zu geben):

0 &minus 0,6744 &mal 0 = 0
1 &minus 0,6744 &mal 0 = 1
0.6744 &minus 0.6744 &mal 1 = 0
-0,0233 &minus 0,6744 &mal -0,2012 = 0,1124
0,093 &minus 0,6744 &mal 0,0923 = 0,0308
0 &minus 0,6744 &mal 0,1527 = -0,103

Daraus ergibt sich unsere neue Reihe [2]:

Wir haben unser Ziel erreicht, die links abgebildete Identitätsmatrix zu erstellen. Damit können wir auf die Inverse der Matrix schließen EIN ist der rechte Teil der erweiterten Matrix:


Berechne $$ left[egin2 & 11 & 3Ende ight]^ <-1>$$ unter Verwendung der Gauß-Jordan-Eliminierung.

Um die inverse Matrix zu finden, erweitern Sie sie mit der Identitätsmatrix und führen Sie Zeilenoperationen durch, um die Identitätsmatrix nach links zu bringen. Rechts befindet sich dann die inverse Matrix.

Erweitern Sie die Matrix mit der Identitätsmatrix:

$$ left[egin2 & 1 & 1 & 01 & 3 & 0 & 1Ende ight] $$

Teile Zeile $$ 1 $$ durch $$ 2 $$ : $$ R_ <1>= frac> <2>$$ .

Subtrahiere Zeile $$ 1 $$ von Zeile $$ 2 $$ : $$ R_ <2>= R_ <2>- R_ <1>$$ .

Zeile $$ 2 $$ mit $$ frac<2> <5>$$ multiplizieren: $$ R_ <2>= frac<2 R_<2>> <5>$$ .

Subtrahiere Zeile $$ 2 $$ multipliziert mit $$ frac<1> <2>$$ von Zeile $$ 1 $$ : $$ R_ <1>= R_ <1>- frac> <2>$$ .

Wir sind fertig. Links ist die Identitätsmatrix. Rechts ist die inverse Matrix.


Finden der Inversen einer Matrix mit dem TI83 / TI84

Indem Sie einen Mathematikkurs für Fortgeschrittene belegen oder sogar diese Website scannen, lernen Sie schnell, wie leistungsstark ein Grafikrechner sein kann. Ein eher “theoretischer” Kurs wie die Lineare Algebra ist keine Ausnahme. Sobald Sie wissen, wie Sie beispielsweise eine inverse Matrix von Hand finden, kann der Rechner Sie von dieser Berechnung befreien und Sie können sich auf das Gesamtbild konzentrieren.

Denken Sie daran, dass nicht jede Matrix eine Inverse hat. Die unten ausgewählte Matrix ist invertierbar, was bedeutet, dass es tatsächlich eine Umkehrung hat. Wir werden etwas später darüber sprechen, was passiert, wenn es nicht umkehrbar ist. Hier ist die Matrix, die wir für unser Beispiel verwenden werden:

( left[ egin 8 &amp 2 &&&&&& Rechts])

Hinweis: Für ein Video dieser Schritte scrollen Sie nach unten.

Schritt 1: Rufen Sie das Matrix-Bearbeitungsmenü auf

Dies ist ein viel komplizierterer Schritt, als es sich anhört! Wenn Sie einen TI 83 haben, gibt es einfach eine Taste mit der Aufschrift “MATRIX”. Dies ist die Schaltfläche, auf die Sie klicken, um in das Bearbeitungsmenü zu gelangen. Wenn Sie einen TI84 haben, müssen Sie [2ND] und [(x^<-1>)] drücken. Dadurch gelangen Sie in das Menü, das Sie unten sehen. Bewegen Sie den Cursor oben auf “EDIT”.


Jetzt wählen Sie Matrix A aus (technisch können Sie jede davon auswählen, aber im Moment ist A einfacher zu handhaben). Drücken Sie dazu einfach [ENTER].


Schritt 2: Geben Sie die Matrix ein

Zuerst müssen Sie dem Taschenrechner mitteilen, wie groß Ihre Matrix ist. Denken Sie nur daran, die Reihenfolge “rows” und “columns” beizubehalten. Zum Beispiel hat unsere Beispielmatrix 4 Zeilen und 4 Spalten, also gebe ich 4 [ENTER] 4 [ENTER] ein.


Jetzt können Sie die Zahlen von links nach rechts eingeben. Drücken Sie nach jeder Zahl [ENTER], um zur nächsten Stelle zu gelangen.


Nun, bevor wir zum nächsten Schritt kommen. Bei einigen Taschenrechnern geraten Sie in eine seltsame Schleife, wenn Sie dieses Menü jetzt nicht verlassen. Drücken Sie also zum Beenden [2ND] und [MODE]. Wenn Sie dies tun, kehren Sie zum Hauptbildschirm zurück.

Schritt 3: Wählen Sie die Matrix unter dem NAMES-Menü

Nach dem Beenden durch Klicken auf [2ND] und [MODE] gehen Sie zurück in das Matrixmenü, indem Sie auf [2ND] und [(x^<-1>)] klicken (oder nur die Matrixtaste, wenn Sie einen TI83 haben) . Wählen Sie diesmal A aus dem NAMES-Menü, indem Sie auf [ENTER] klicken.



Schritt 4: Drücken Sie die Umkehrtaste [(x^)] und drücken Sie die Eingabetaste

Der einfachste Schritt noch! Alles, was Sie jetzt tun müssen, ist, dem Taschenrechner mitzuteilen, was er mit Matrix A tun soll. Da wir eine Inverse finden möchten, verwenden wir diese Schaltfläche.



In diesem Stadium können Sie die rechte Pfeiltaste drücken, um die gesamte Matrix anzuzeigen. Wie Sie sehen können, ist unsere Umkehrung hier wirklich chaotisch. Der nächste Schritt kann uns weiterhelfen, wenn wir ihn brauchen.

Schritt 5: (OPTIONAL) Alles in Brüche umwandeln

Während die Umkehrung auf dem Bildschirm angezeigt wird, wandeln Sie alles in der Matrix in Brüche um, wenn Sie [MATH] , 1: Frac und dann ENTER drücken. Dann können Sie wie zuvor auf die rechte Pfeiltaste klicken, um das Ganze zu sehen.



Das ist es! Klingt viel, ist aber eigentlich gewöhnungsbedürftig. Es ist auch nützlich, Matrizen in den Rechner einzugeben, um sie hinzuzufügen, zu multiplizieren usw.! Schön! Wenn Sie alles in Aktion sehen möchten, sehen Sie sich das Video rechts an, in dem ich die Schritte mit einem anderen Beispiel durchgehe. Selbst mit dem optionalen Schritt brauche ich weniger als 3 Minuten, um ihn zu durchlaufen.

Oh ja – also was passiert, wenn Ihre Matrix singulär (oder NICHT invertierbar) ist? Mit anderen Worten, was passiert, wenn Ihre Matrix keine Inverse hat?


Wie Sie oben sehen können, wird es Ihnen Ihr Rechner sagen. Wie schön ist das?


2.6: Die Inverse der Matrix

Bei einer gegebenen Matrix besteht die Aufgabe darin, die Inverse dieser Matrix mit der Gauß-Jordan-Methode zu finden.
Was ist Matrix?

Matrix ist ein geordnetes rechteckiges Array von Zahlen.

Inverse einer Matrix:

Gegeben eine quadratische Matrix A, die nicht singulär ist (dh die Determinante von A ist nicht Null) Dann existiert eine Matrix

  1. Die Matrix muss eine quadratische Matrix sein.
  2. Die Matrix muss eine nicht singuläre Matrix sein und
  3. Es gibt eine Identitätsmatrix I für die

Im Allgemeinen kann die Inverse von n X n Matrix A mit dieser einfachen Formel gefunden werden:

Methoden zum Finden der Inversen der Matrix:

  1. Elementare Reihenoperation (Gauss-Jordan-Methode) (Effizient)
  2. Minors, Cofaktoren und Ad-jugate-Methode (ineffizient)

Grundlegende Reihenoperation (Gauss – Jordan Methode):

Das Gauß-Jordan-Verfahren ist eine Variante der Gaußschen Elimination, bei der eine Zeilenreduktionsoperation durchgeführt wird, um die Inverse einer Matrix zu finden.
Schritte zum Finden der Inversen einer Matrix mit der Gauß-Jordan-Methode:
Um die Inverse der Matrix zu finden, müssen folgende Schritte ausgeführt werden:

  1. Bilden Sie die erweiterte Matrix durch die Identitätsmatrix.
  2. Führen Sie die Zeilenreduktionsoperation an dieser erweiterten Matrix durch, um eine zeilenreduzierte Staffelform der Matrix zu erzeugen.
  3. Die folgenden Zeilenoperationen werden bei Bedarf in einer erweiterten Matrix ausgeführt:
    • Vertauschen Sie zwei beliebige Reihen.
    • Multiplizieren Sie jedes Element der Zeile mit einer ganzen Zahl ungleich null.
    • Ersetze eine Zeile durch die Summe ihrer selbst und ein konstantes Vielfaches einer anderen Zeile der Matrix.

Unten ist das C++-Programm zum Ermitteln der Inversen einer Matrix mit der Gauss-Jordan-Methode:


*2.6: Matrixinversion

wo ich ist der n nIdentitätsmatrix. Die Lösung X, auch von größe n n, wird die Umkehrung von . sein EIN. Der Beweis ist einfach: Nachdem wir beide Seiten von Gl. (2.33) von EIN ? 1 wir haben EIN ? 1 AXT= EIN ? 1 ICH, was reduziert sich auf x= EIN ? 1 .

Die Inversion großer Matrizen sollte aufgrund der hohen Kosten nach Möglichkeit vermieden werden. Wie aus Gl. (2.33), Umkehrung von EIN ist äquivalent zu lösen Axt ich= B ich mit ich=1, 2, , n, wo B ich ist der ichSpalte von ich. Wird in der Lösung LU-Zerlegung verwendet, muss die Lösungsphase (Vor- und Rücksubstitution) wiederholt werden n mal, einmal für jeden B ich. Da der Rechenaufwand proportional zu n 3 für die Zersetzungsphase und n 2 für jeden Vektor der Lösungsphase sind die Kosten der Inversion wesentlich teurer als die Lösung von Ax=b (einzelner konstanter Vektor B).

Die Matrixinversion hat einen weiteren schwerwiegenden Nachteil, dass eine gebänderte Matrix während der Inversion ihre Struktur verliert. Mit anderen Worten, wenn EIN gebändert oder anderweitig spärlich ist.


Um die Inverse der Matrix $A$ unter Verwendung der Gauß-Jordan-Elimination zu finden, muss die Folge elementarer Zeilenoperationen gefunden werden, die $A$ auf die Identität reduziert, und dann müssen die gleichen Operationen an $I_n$ ausgeführt werden, um zu erhalten $A^<-1>$.

Inverse von 2 $ imes$ 2 Matrizen

Beispiel 1: Finden Sie die Umkehrung von

Schritt 1: Fügen Sie die Identitätsmatrix an die rechte Seite von $A$ an:

Schritt 2: Wenden Sie Zeilenoperationen auf diese Matrix an, bis die linke Seite auf $I$ reduziert ist. Die Berechnungen sind:

Schritt 3: Fazit: Die inverse Matrix lautet:

Nicht invertierbare Matrix

Wenn $A$ nicht invertierbar ist, dann wird auf der linken Seite eine Nullreihe angezeigt.

Beispiel 2: Finden Sie die Umkehrung von

Schritt 1: Fügen Sie die Identitätsmatrix an die rechte Seite von A an:

Schritt 2: Zeilenvorgänge anwenden

Schritt 3: Fazit: Diese Matrix ist nicht invertierbar.

Inverse von 3 $ imes$ 3 Matrizen

Beispiel 1: Finden Sie die Umkehrung von

Schritt 1: Fügen Sie die Identitätsmatrix an die rechte Seite von A an:

Schritt 2: Wenden Sie Zeilenoperationen auf diese Matrix an, bis die linke Seite auf I reduziert ist. Die Berechnungen sind:


Schau das Video: Dejan Matic-Sledeca- LIVE @ Club AQUARIUS Prnjavor (Oktober 2021).