Wenn ich nur ein Element der inversen Matrix möchte, gibt es einen schnellen Algorithmus?

9

Ich benutze Mathematica, um Probleme zu lösen. Ich habe eine Frage zur Matrixinverse.

Wenn ich nur ein Element der inversen Matrix möchte, gibt es einen schnelleren Algorithmus als die InverseBerechnung der gesamten inversen Matrix und das Extrahieren des gewünschten Elements?

user15964
quelle
Die Zusammenfassung dieses Papiers besagt, dass sie die Diagonale der inversen Matrix in O ( n 3) berechnen können, aber ich weiß nicht, ob es etwas für einen beliebigen Eintrag gibt. O(n32)
G. Bach
Das zugrunde liegende Problem könnte hier mehr die Mathematik als die Informatik sein .
Dukeling
1
Hier geht es um mehr als nur die Diagonale für dünn besetzte Matrizen, und hier geht es um einen parallelen Algorithmus für strukturierte dünn besetzte Matrizen.
G. Bach
@ G.Bach danke für Ihre Informationen
user15964
2
@ G.Bach Viele meiner Antworten sind so. Die effektive Nutzung von Google ist nicht trivial. Wenn die Informationen nützlich sind, beantwortet sie die Frage.
Yuval Filmus

Antworten:

1

Ich habe dies in Mathematica nicht genau gesehen, aber ich denke, dass es unterstützt werden kann, einen Gleichungssatz für nur einen Unbekannten zu lösen.

Der direkte Weg wäre natürlich, die inversen Matrixalgorithmen zu implementieren und sie stoppen zu lassen, wenn das bestimmte Element bestimmt wird. Es wäre wahrscheinlich interessant zu sehen, welche Optimierungen Sie für jeden Algorithmus vornehmen können, wenn das Ziel darin besteht, nur ein Element zu erhalten.

Gemäß dem ersten Absatz könnte eine Idee darin bestehen, Ihre inverse Matrix als Unbekanntes im Gleichungssystem auszudrücken und dann zu versuchen, nur nach dem Unbekannten zu lösen, das Sie benötigen (da das Lösen eines Gleichungssatzes für ein einzelnes Unbekanntes unterstützt werden sollte). Wenn Sie eine bessere Speicher- und CPU-Leistung erzielen, kann man mit Sicherheit sagen, dass Mathematica nicht die gesamte Gleichung gelöst hat, sondern nur die Optimierungen vorgenommen hat, um nur Ihr Unbekanntes zu ermitteln. Sie können natürlich eine schlechtere Leistung erzielen, da Sie nicht direkt inverse Algorithmen verwenden. Wenn Sie es versuchen möchten, lassen Sie uns wissen, ob es funktioniert hat!

user3134164
quelle