großes dichtes niedriges Rangzuordnungsproblem

9

π 1 : nmaxπiAπi,iπ1:n

Hier ist eine Matrix mit niedrigem Rang . Typische Größen wären (möglicherweise viel größer), .n × n r n = 10000An×nrn=10000  r=15

Arnold Neumaier
quelle
1
Mit meine ich das Produkt, so dass Sie für verschiedene durch die Matrix schreiten ? ππiπ
Bill Barth
π läuft über alle Permutationen.
Arnold Neumaier
Sollte es dann nicht ? Aπ(i),i
Jack Poulson
@JackPoulson: und sind zwei verschiedene Notationen für das Bild von unter der Permutation . π i i π\i(i)πiiπ
Arnold Neumaier
Interessante Frage! Möchten Sie die niedrigrangige Struktur nur aus Speichergründen ausnutzen , um nicht die gesamte Matrix bilden zu müssen, wenn Sie einen herkömmlichen Zuweisungsalgorithmus anwenden? Oder suchen Sie nach einer Möglichkeit, den niedrigen Rang auszunutzen, um die Suche zu beschleunigen?
Michael Grant

Antworten:

3

Da mit , haben wir wobei die Permutationsmatrix ist, die . R 1 , R 2R n × r i A π i , i = i ( P π A ) i , i = Spur ( P π R 1 R T.A=R1R2TR1,R2Rn×rPππ

iAπi,i=i(PπA)i,i=trace(PπR1R2T)
Pππ

Für jedes kann die Ablaufverfolgung als berechnet werden (Diese Menge ist auch bekannt als Frobenius Produkt , ).Spur ( P π R 1 R T.π

trace(PπR1R2T)=ik(PπR1)i,k(R2T)k,i=i,k((PπR1)R2)i,k.
PπR1:R2

Diese Idee ersetzt nicht die Last, weg für das Maximum aller Frobenius Produkte alle Permutationen und Brute-Force-Methode durchlaufen, und in der Tat ist die gleiche arithmetische Komplexität wie explizit die Berechnung . Es hat jedoch viel weniger Speicherbedarf, da Sie nie wirklich bilden müssen . A.A=R1R2TA

Nico Schlömer
quelle