Skip to main content

Vektoren und Matrizen

  • Chapter
  • First Online:
Algorithmische Mathematik

Zusammenfassung

In diesem Kapitel wiederholen wir die grundlegenden Eigenschaften und Operationen für Vektoren und Matrizen. Speziell behandeln wir die Implementierung dünnbesetzter Matrizen. Wie wir zeigen, eignen sich diese zur effizienten Speicherung von Graphen. Insbesondere stellen wir einen Zusammenhang zwischen stark zusammenhängenden Graphen und Matrizen her.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 24.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 34.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Helmut Harbrecht .

Übungsaufgaben

Übungsaufgaben

Aufgabe 6.1

(Strassen-Algorithmus) Strassen schlug in [Str69] ein Verfahren zur Beschleunigung der Matrixmultiplikation zweier Matrizen \({{\boldsymbol{A}}},{{\boldsymbol{B}}} \in \mathbb {R}^{n\times n}\) vor, wobei \(n=2^m\) eine Zweierpotenz sei. Dazu zerlegen wir \({{\boldsymbol{A}}}\) und \({{\boldsymbol{B}}}\) in jeweils vier \((\frac{n}{2}\times \frac{n}{2})\)-Matrizen

$$ {{\boldsymbol{A}}} = \begin{bmatrix} {{\boldsymbol{A}}}_{1,1} &{} {{\boldsymbol{A}}}_{1,2} \\ {{\boldsymbol{A}}}_{2,1} &{} {{\boldsymbol{A}}}_{2,2} \end{bmatrix}, \qquad {{\boldsymbol{B}}} = \begin{bmatrix} {{\boldsymbol{B}}}_{1,1} &{} {{\boldsymbol{B}}}_{1,2} \\ {{\boldsymbol{B}}}_{2,1} &{} {{\boldsymbol{B}}}_{2,2} \end{bmatrix} $$

und berechnen die sieben Hilfsprodukte

$$\begin{aligned} {{\boldsymbol{P}}}_1&= ({{\boldsymbol{A}}}_{1,1}+{{\boldsymbol{A}}}_{2,2})({{\boldsymbol{B}}}_{1,1}+{{\boldsymbol{B}}}_{2,2}),&{{\boldsymbol{P}}}_5&= ({{\boldsymbol{A}}}_{1,1}+{{\boldsymbol{A}}}_{1,2}){{\boldsymbol{B}}}_{2,2}, \\ {{\boldsymbol{P}}}_2&= ({{\boldsymbol{A}}}_{2,1}+{{\boldsymbol{A}}} _{2,2}){{\boldsymbol{B}}}_{1,1},&{{\boldsymbol{P}}}_6&= ({{\boldsymbol{A}}}_{2,1}-{{\boldsymbol{A}}}_{1,1})({{\boldsymbol{B}}}_{1,1}+{{\boldsymbol{B}}}_{1,2}), \\ {{\boldsymbol{P}}}_3&= {{\boldsymbol{A}}}_{1,1}({{\boldsymbol{B}}}_{1,2}-{{\boldsymbol{B}}}_{2,2}),&{{\boldsymbol{P}}}_7&= ({{\boldsymbol{A}}}_{1,2}-{{\boldsymbol{A}}}_{2,2})({{\boldsymbol{B}}}_{2,1}+{{\boldsymbol{B}}}_{2,2}), \\ {{\boldsymbol{P}}}_4&= {{\boldsymbol{A}}}_{2,2}({{\boldsymbol{B}}}_{2,1}-{{\boldsymbol{B}}}_{1,1}).&\end{aligned}$$
  1. a)

    Zeigen Sie die Gleichung

    $$ \begin{bmatrix} {{\boldsymbol{A}}}_{1,1} &{} {{\boldsymbol{A}}}_{1,2} \\ {{\boldsymbol{A}}}_{2,1} &{} {{\boldsymbol{A}}}_{2,2} \end{bmatrix} \begin{bmatrix} {{\boldsymbol{B}}}_{1,1} &{} {{\boldsymbol{B}}}_{1,2} \\ {{\boldsymbol{B}}}_{2,1} &{} {{\boldsymbol{B}}}_{2,2} \end{bmatrix} = \begin{bmatrix} {{\boldsymbol{P}}}_1 + {{\boldsymbol{P}}}_4 - {{\boldsymbol{P}}}_5 + {{\boldsymbol{P}}}_7 &{} {{\boldsymbol{P}}}_3 + {{\boldsymbol{P}}}_5 \\ {{\boldsymbol{P}}}_2 + {{\boldsymbol{P}}}_4 &{} {{\boldsymbol{P}}}_1 + {{\boldsymbol{P}}}_3 - {{\boldsymbol{P}}}_2 + {{\boldsymbol{P}}}_6 \end{bmatrix}. $$

    Damit reduziert sich die Zahl der Multiplikationen kleinerer Matrizen von acht auf sieben gegenüber dem naiven Verfahren, während die Zahl der Additionen gestiegen ist.

  2. b)

    Dieses Vorgehen wird nun rekursiv zur Berechnung der sieben kleineren Produkte angewandt. Zeigen Sie, dass der benötige Aufwand A(n) (das heißt, die Anzahl elementarer Additionen und Multiplikationen) für die Multiplikation zweier \((n\times n)\)-Matrizen der Rekursion

    $$ A(n) = 7\, A\left( \frac{n}{2}\right) + \frac{9}{2} n^2, \quad A(1) = 1 $$

    genügt.

  3. c)

    Zeigen Sie, dass

    $$ A(2^m) = 7^m + \frac{9}{2} \sum _{k=1}^m 7^{m-k} 4^k $$

    gilt und folgern Sie daraus, dass die Matrixmultiplikation nach Strassen die Kosten \(\mathcal {O}(n^{\log _2 7}) \approx \mathcal {O}(n^{2.807})\) besitzt.

  4. d)

    Begründen Sie, dass mindestens \(n^2\) Operationen benötigt werden, um zwei vollbesetzte \((n\times n)\)-Matrizen miteinander zu multiplizieren. Dies bedeutet, für die Matrixmultiplikation ist ein Aufwand \(\mathcal {O}(n^2)\) bestmöglich.

Aufgabe 6.2

(induzierte Norm) Sei \(\Vert \cdot \Vert \) eine Vektornorm auf \(\mathbb {R}^n\) und \({{\boldsymbol{}} A}\in \mathbb {R}^{n\times n}\). Zeigen Sie, dass die induzierte Norm

$$ \Vert {\boldsymbol{A}}\Vert =\sup _{{{\boldsymbol{x}}}\ne \mathbf{0 }}\frac{\Vert {{\boldsymbol{A}}}{{\boldsymbol{x}}}\Vert }{\Vert {{\boldsymbol{x}}}\Vert } $$

tatsächlich eine Norm auf \(\mathbb {R}^{n\times n}\) ist.

Aufgabe 6.3

( p- Norm)

  1. a)

    Für einen Vektor \({{\boldsymbol{x}}}\in \mathbb {R}^n\) ist die \(p\)-Norm definiert durch

    $$ \Vert {{\boldsymbol{x}}}\Vert _p\mathrel {\mathrel {\mathop :}=}\bigg (\sum _{i=1}^n|x_i|^p\bigg )^{\frac{1}{p}}, $$

    wobei \(1\le p<\infty \) gelte. Zeigen Sie:

    • \(\lim _{p\rightarrow \infty }\Vert {{\boldsymbol{x}}}\Vert _p=\Vert {{\boldsymbol{x}}}\Vert _{\infty }\),

    • \(\Vert {{\boldsymbol{x}}}\Vert _\infty \le \Vert {{\boldsymbol{x}}}\Vert _p\le \Vert {{\boldsymbol{x}}}\Vert _1\),

    • \(\Vert {{\boldsymbol{x}}}\Vert _p\le \Vert {{\boldsymbol{x}}}\Vert _q\) für \(q\le p\).

  2. b)

    Sei \({{\boldsymbol{A}}}\in \mathbb {R}^{n\times n}\). Zeigen Sie, dass die Gesamtnorm \(\Vert {{\boldsymbol{A}}}\Vert _{\text {G}} = n\max _{1\le i,j\le n}|a_{i,j}|\) mit allen \(p\)-Normen verträglich ist.

Aufgabe 6.4

(Graphen und Adjazenzmatrizen) Wir betrachten den folgenden gerichteten Graphen, in dem ‘\(\leftrightarrow \)’ für eine Doppelkante steht (das ist die Kurzform für eine Vorwärts- und eine Rückwärtskante):

figure e
  1. a)

    Geben Sie alle einfachen Wege von Knoten 1 zu Knoten 8 sowie von Knoten 8 zu Knoten 1 an.

  2. b)

    Geben Sie die Adjazenzmatrix für obigen Graphen an. Geben Sie auch die Adjazenzmatrix an, wenn alle Kanten ungerichtet wären.

  3. c)

    Gehen Sie nun davon aus, dass der Graph ungerichtet ist. Geben Sie die maximale Anzahl Kanten an, die entfernt werden können, so dass die Anzahl der Zusammenhangskomponenten immer noch gleich bleibt. Zeichnen Sie auch den zugehörigen Graphen.

  4. d)

    Zeichnen Sie einen Graphen mit Knoten \(1,2,\dots ,9\), der die folgende Adjazenzmatrix besitzt:

    figure f

    Muss der Graph gerichtet gezeichnet werden oder kann er auch ungerichtet sein?

Aufgabe 6.5

(Alle-Paare-kürzeste-Wege-Problem und Matrizen) Gegeben sei ein gewichteter Graph \(G = (V,E,\omega )\), dargestellt durch die Matrix \({{\boldsymbol{W}}}\) mit

$$ w_{i,j} = {\left\{ \begin{array}{ll} 0, &{} i = j,\\ \omega (i,j), &{} (i,j) \in E,\\ \infty , &{} \text {sonst}. \end{array}\right. } $$
  1. a)

    Das Ergebnis eines Alle-Paare-kürzeste-Wege-Algorithmus kann mit Hilfe einer Matrix \({{\boldsymbol{}}L}\) dargestellt werden, wobei \(\ell _{i,j} = \delta (i,j)\) die Länge eines kürzesten Wegs von i nach j ist. Um alle Paare kürzester Wege zu berechnen kann man rekursiv vorgehen. Hierzu bestimmt man die Matrizen \({{\boldsymbol{L}}}^{(m)}\), welche alle kürzesten Wege der Länge m enthalten. Als Startwert setzt man \({{\boldsymbol{L}}}^{(0)}\) mit

    $$ \ell ^{(0)}_{i,j} \mathrel {\mathrel {\mathop :}=}{\left\{ \begin{array}{ll} 0, &{} i = j,\\ \infty , &{} \text {sonst}. \end{array}\right. } $$

    Zeigen Sie, dass \({{\boldsymbol{L}}}^{(m+1)}\) durch die Operation

    $$ \ell ^{(m+1)}_{i,j}\mathrel {\mathrel {\mathop :}=}\min \Big \{\ell ^{(m)}_{i,j}, \min _{k\in V}\big \{\ell ^{(m)}_{i,k} + w_{k,j}\big \}\Big \} $$

    aus \({{\boldsymbol{L}}}^{(m)}\) hervorgeht. Man beachte, dass bei diesem Vorgehen höchstens \(|V| - 1\) Matrizen zu berechnen sind, da in einem Graph ohne negative Zyklen die maximale Länge eines kürzesten Wegs \(|V| - 1\) beträgt.

  2. b)

    Welcher Zusammenhang besteht zwischen dem hier vorgestellten Alle-Paare-kürzeste-Wege-Algorithmus und der Matrixmultiplikation aus Algorithmus 6.1?

  3. c)

    Geben Sie die Matrizen \({{\boldsymbol{L}}}^{(m)}\), \(m = \{0,1, \ldots , |V|-1\}\), für den folgenden Graphen an:

    figure g

Aufgabe 6.6

(Neumann-Reihe) Für eine beliebige, submultiplikative Matrixnorm und eine Matrix \({{\boldsymbol{A}}}\in \mathbb {R}^{n\times n}\) gelte \(\Vert {{\boldsymbol{A}}}\Vert <1\). Zeigen Sie

$$ ({{\boldsymbol{I}}}-{{\boldsymbol{A}}})^{-1}=\sum _{i=0}^\infty {{\boldsymbol{A}}}^i $$

und folgern Sie daraus, dass

$$ \big \Vert ({{\boldsymbol{I}}}-{{\boldsymbol{A}}})^{-1}\big \Vert \le \frac{1}{1-\Vert {{\boldsymbol{A}}}\Vert } $$

ist.

Rights and permissions

Reprints and permissions

Copyright information

© 2022 Der/die Autor(en), exklusiv lizenziert durch Springer-Verlag GmbH, DE , ein Teil von Springer Nature

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Harbrecht, H., Multerer, M. (2022). Vektoren und Matrizen. In: Algorithmische Mathematik. Springer Spektrum, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-41952-2_6

Download citation

Publish with us

Policies and ethics