duży, gęsty problem przydziału niskiej rangi

9

Czy istnieje rozsądnie tania metoda rozwiązania dużego, gęstego problemu przypisania niskiej rangi , gdzie \ pi działa na wszystkich permutacjach. 1: n ?maxπjaZAπja,jaπ1:n

Tutaj ZA jest n×n macierzą niskiego stopnia r . Typowe rozmiary to n=dziesięć tysięcy   (prawdopodobnie znacznie większy), r=15 .

Arnold Neumaier
źródło
1
Przez na myśli produkt, który kroczysz przez matrycę dla różnych ? πjaπ
Bill Barth
π działa na wszystkich permutacjach.
Arnold Neumaier
Czy nie powinno to być ? ZAπ(ja),ja
Jack Poulson,
@JackPoulson: i to dwie różne notacje dla obrazu w permutacji . \ja(ja)πjajaπ
Arnold Neumaier
Interesujące pytanie! Czy chcesz wykorzystać niskopoziomową strukturę tylko z powodów związanych z przechowywaniem - to znaczy, aby uniknąć konieczności tworzenia całej macierzy przy zastosowaniu tradycyjnego algorytmu przypisywania? A może szukasz sposobu na wykorzystanie niskiej rangi w celu przyspieszenia wyszukiwania?
Michael Grant

Odpowiedzi:

3

Ponieważ z , mamy gdzie jest macierzą permutacji odpowiadającą .ZA=R1R2)T.R1,R2)Rn×r

jaZAπja,ja=ja(P.πZA)ja,ja=ślad(P.πR1R2)T.)
P.ππ

Dla każdego ślad można obliczyć jako (Ta ilość jest również znana jako produkt Frobenius , ).π

ślad(P.πR1R2)T.)=jak(P.πR1)ja,k(R2)T.)k,ja=ja,k((P.πR1)R2))ja,k.
P.πR1:R2)

Pomysł ten nie odbiera ciężar konieczności przechodzenia przez wszystkich permutacji i brute-force poszukiwaniu maksimum wszystkich produktów Frobenius, aw rzeczywistości to ma taką samą średnią arytmetyczną złożoności obliczeniowej jako jawnie . Jednakże, ma znacznie mniejsze zapotrzebowanie na pamięć, ponieważ nie musisz faktycznie tworzą .ZA=R1R2)T.ZA

Nico Schlömer
źródło