17.09.2013 Aufrufe

5 Entwurfsmethoden für Algorithmen

5 Entwurfsmethoden für Algorithmen

5 Entwurfsmethoden für Algorithmen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

8( 1 2 )3 = 8 8 = 1,<br />

also ist r = 3. Mit dem naiven Divide & Conquer ist also gegenüber der “Schulmethode” keine<br />

asymptotische Zeitersparnis zu verzeichnen.<br />

Matrizenmultiplikation nach Strassen. Wir betrachten nun die von Strassen vorgeschlagene<br />

Methode. Diese benutzt ebenfalls die Zerlegung der beiden Matrizen A und B in die Untermatrizen<br />

Ai, j und Bi, j. Die Berechnung der Untermatrizen Ci, j der Produktmatrix C beruht auf<br />

dem folgenden Schema. 37<br />

und<br />

M1 := (A1,1 − A2,2) ·(B2,1 + B2,2)<br />

M2 := (A1,2 + A2,2) ·(B1,1 + B1,2)<br />

M3 := (A2,1 − A1,1) ·(B1,1 + B1,2)<br />

M4 := (A1,1 + A1,2) · B2,2<br />

M5 := A1,1 ·(B1,2 − B2,2)<br />

M6 := A2,2 ·(B2,1 − B1,1)<br />

M7 := (A2,1 + A1,2) · B1,1<br />

C1,1 := M1 + M2 − M4 + M6<br />

C1,2 := M4 + M5<br />

C2,1 := M6 + M7<br />

C2,2 := M2 + M3 + M5 − M7<br />

Wir verzichten auf den Korrektheitsnachweis und konzentrieren uns stattdessen auf die Kostenanalyse.<br />

Die Methode von Strassen benötigt 7 Multiplikationen und 18 Additionen/Subtraktionen<br />

von ( n 2 × n 2 )-Matrizen. Dies führt zur Rekurrenz<br />

T (n) = 7 · T <br />

n<br />

2 + Θ(n2 ).<br />

Wiederum wenden wir den dritten Teil von Satz 5.1.2 an, da 7( 1 2 )2 = 7 4<br />

erhalten wir 7( 1 2 )log7 = 7 7 = 1 und somit:<br />

Wir fassen die Ergebnisse zusammen:<br />

<br />

T(n) = Θ n log7<br />

≈ Θ n 2.8<br />

> 1. Mit r = log7<br />

Satz 5.1.3 (Komplexität der Strassen-Methode). Mit der Methode von Strassen können zwei<br />

n × n-Matrizen in Zeit Θ n log7 multipliziert werden.<br />

Experimentelle Ergebnisse haben gezeigt, daß die Strassen-Methode erst <strong>für</strong> großes n (ca.<br />

n ≥ 500) besser als die Schulmethode ist. In der Praxis empfiehlt sich daher eine gemischte<br />

Strategie, die <strong>für</strong> n ≥ 500 eine Zerlegung à la Strassen vornimmt. Sobald die Zeilenanzahl<br />

auf einen Wert < 500 reduziert ist, wird die Schulmethode angewandt, um die Teilprodukte zu<br />

ermitteln.<br />

37 Die Autorin übernimmt keine Garantie, daß jeder Index in den angegebenen Formeln stimmt.<br />

165

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!