Aggregat-Methode - LinkFang.de





Aggregat-Methode


Die Aggregat-Methode (auch Aggregationsmethode oder Ganzheitsmethode) ist ein Vorgehen der amortisierten (Laufzeit-) Analyse. Bei der Aggregat-Methode wird versucht die durchschnittlichen Kosten einer Einzeloperation zu ermitteln, indem man zunächst die Gesamtkosten aller Operationen ermittelt und diese dann durch die Anzahl der Operationen dividiert.

Beispiel

Die Aggregat-Methode wird am Beispiel eines Binärzählers, dessen einzig mögliche Operation eine Inkrementation ist, durchgeführt.

Der Worst Case bei einem Binärzähler mit k Bit tritt dann auf, wenn bei einer Inkrementation alle k Bit gekippt werden müssen. Seien die Kosten für einen Bitwechsel 1. Dann würden nach der Worst-Case-Abschätzung bei n Operationen Kosten von nk entstehen. Diese Abschätzung ist allerdings zu pessimistisch. Mittels der amortisierten Analyse wird versucht eine realistischere und weniger pessimistische Abschätzung der Kosten nach oben zu erreichen.

Betrachten wir die Anzahl der Bitwechsel bei einem Zähler mit 4 Bit:

Zähler Anzahl Bitwechsel
0000 -
0001 1
0010 2
0011 1
0100 3
0101 1
0110 2
0111 1
1000 4
...

Wenn man sich die Folge der Bitwechsel anschaut, fällt auf, dass sich das niedrigste Bit bei jeder Inkrementation ändert, das nächsthöhere bei jeder zweiten, das wiederum nächsthöhere bei jeder vierten usw. Damit ergibt sich bei n Inkrementationen folgende Summe von Bitwechseln:

[math] n + \left\lfloor\frac{n}{2}\right\rfloor + \left\lfloor\frac{n}{2^2}\right\rfloor + \left\lfloor\frac{n}{2^3}\right\rfloor + \cdots + \left\lfloor\frac{n}{2^k}\right\rfloor \leq n \sum_{i=0}^k \frac{1}{2^i}[/math]

Diese Summe können wir nach oben abschätzen:

[math]n \sum_{i=0}^k \frac{1}{2^i} \leq n \sum_{i=0}^\infty \frac{1}{2^i}[/math]

Die Summe dieser unendlichen Reihe ist wohlbekannt und lautet 2. Daraus folgt:

[math]n \sum_{i=0}^k \frac{1}{2^i} \leq 2n[/math]

Betrachten wir nun die amortisierten Kosten [math]a_i[/math] für eine einzelne Operation [math]Op_i[/math] der insgesamt n Operationen, indem wir die bereits ermittelten Gesamtkosten durch die Anzahl n der Operationen teilen, erhalten wir:

[math]a_i \leq \frac{2n}{n} = 2[/math]

Damit sind die amortisierten Kosten für eine Operation höchstens 2 und somit in O(1), egal, wie viele Bits der Zähler insgesamt hat.

Abgrenzung

Im Gegensatz zur Account-Methode werden bei der Aggregat-Methode die amortisierten Kosten auch von unterschiedlichen Arten von Operationen gleichgesetzt. D.h. mit der Account-Methode kann verschiedenen Arten von Operationen unterschiedliche amortisierte Kosten zugeordnet werden. Außerdem wird bei der Account-Methode die Differenz zwischen amortisierten und realen Kosten auf einem Konto gebucht.

Literatur

  • Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein: Introduction to Algorithms. 2. Auflage. MIT Press and McGraw-Hill, 2001, ISBN 0-262-03293-7, S. 406–410.

Kategorien: Theoretische Informatik

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Aggregat-Methode (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.