Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 12. April 2007 um 10:30 Uhr durch 134.245.254.52(Diskussion). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Der Strassen-Algorithmus (nach Volker Strassen) ist ein Algorithmus aus der Linearen Algebra und wird zur Matrizenmultiplikation verwendet.
Der Strassen-Algorithmus realisiert die Matrix-Multiplikation asymptotisch effizienter als das Standardverfahren und ist in der Praxis für große Matrizen schneller.
Der Algorithmus
Vereinfachend gehen wir von zwei quadratischen Matrizen A,B über einem Ring R aus. Des weiteren haben A und B die Größe 2n und C sei das Produkt von A und B.
Nun kann man A,B,C auch als Blockmatrizen betrachten:
Nun gilt:
Berechnet man die mit diesen Formeln so benötigt man 8 (teure) Matrizenmultiplikationen.
Um die Anzahl der Multiplikationen zu reduzieren berechnet man folgende Hilfsmatrizen:
Zur Berechnung der benötigt man nur 7 Multiplikationen und nun kann man die nur durch Additionen (und Subtraktionen) berechnen:
Diese Idee verwendet man nun auch für die Multiplikationen zur Berechung der und iteriert das ganze solange bis man nur noch Skalare multipliziert.
Bei der praktischen Implementierung iteriert man für gewöhnlich nur solange bis die Matrix -Dimension so klein ist, dass der
Standard-Algorithmus zur Matrizen Multipliaktion effizienter ist und verwendet dann diesen.