www.wikidata.de-de.nina.az
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 zunachst die Gesamtkosten aller Operationen ermittelt und diese dann durch die Anzahl der Operationen dividiert Inhaltsverzeichnis 1 Beispiele 1 1 Binarzahler 1 2 Worterbuch 2 Abgrenzung 3 Literatur 4 EinzelnachweiseBeispiele BearbeitenBinarzahler Bearbeiten Die Aggregat Methode wird am Beispiel eines Binarzahlers dessen einzig mogliche Operation eine Inkrementation ist durchgefuhrt Der Worst Case bei einem Binarzahler mit k Bit tritt dann auf wenn bei einer Inkrementation alle k Bit gekippt werden mussen Seien die Kosten fur einen Bitwechsel 1 Dann wurden nach der Worst Case Abschatzung bei n Operationen Kosten von nk entstehen Diese Abschatzung ist allerdings zu pessimistisch Mittels der amortisierten Analyse wird versucht eine realistischere und weniger pessimistische Abschatzung der Kosten nach oben zu erreichen Betrachten wir die Anzahl der Bitwechsel bei einem Zahler mit 4 Bit Zahler Anzahl Bitwechsel0000 0001 10010 20011 10100 30101 10110 20111 11000 4 Wenn man sich die Folge der Bitwechsel anschaut fallt auf dass sich das niedrigste Bit bei jeder Inkrementation andert das nachsthohere bei jeder zweiten das wiederum nachsthohere bei jeder vierten usw Damit ergibt sich bei n Inkrementationen folgende Summe von Bitwechseln n n 2 n 2 2 n 2 3 n 2 k n i 0 k 1 2 i displaystyle 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 nbsp Diese Summe konnen wir nach oben abschatzen n i 0 k 1 2 i n i 0 1 2 i displaystyle n sum i 0 k frac 1 2 i leq n sum i 0 infty frac 1 2 i nbsp Die Summe dieser unendlichen Reihe ist wohlbekannt und lautet 2 Daraus folgt n i 0 k 1 2 i 2 n displaystyle n sum i 0 k frac 1 2 i leq 2n nbsp Betrachten wir nun die amortisierten Kosten a i displaystyle a i nbsp fur eine einzelne Operation O p i displaystyle Op i nbsp der insgesamt n Operationen indem wir die bereits ermittelten Gesamtkosten durch die Anzahl n der Operationen teilen erhalten wir a i 2 n n 2 displaystyle a i leq frac 2n n 2 nbsp Damit sind die amortisierten Kosten fur eine Operation hochstens 2 und somit in O 1 egal wie viele Bits der Zahler insgesamt hat Worterbuch Bearbeiten Eine ausserordentlich verbreitete Sorte von Datenstrukturen sind die binaren Suchbaume Sie losen bspw das Worterbuch problem s Binarer Suchbaum Motivation und zwar die balancierten unter ihnen die wichtigsten Operationen im schlechtesten Fall worst case in logarithmischer Zeit Eine Aussage uber amortisiertes Laufzeitverhalten findet sich ggf im entsprechenden Artikel Hier werde eine Datenstruktur genannt amortisierte Worterbuch Datenstruktur englisch amortized dictionary data structure 1 vorgestellt deren amortisiertes Laufzeitverhalten fur das Suchen in O log2 n und fur das Einfugen in O log n ist Die Anzahl n der Eintrage sei in der binaren Darstellung n i 0 k l i 2 i displaystyle n sum i 0 k lambda i 2 i nbsp mit l i 0 1 displaystyle lambda i in 0 1 nbsp Die Datenstruktur besteht dann aus k 1 sortierten Folgen die entweder ganz leer li 0 oder ganz voll li 1 sind Die einzelnen Elemente der Datenstruktur werden beliebig auf diese Folgen verteilt Beispiel Es sei n 11 dann ist 11 1 2 8 und k 3 Die Elemente seien C D E F H J M P S W und Y die wie folgt uber die Datenstruktur verteilt seien L0 E l0 1L1 D H l1 1L2 leer l2 0L3 C F J M P S W Y l3 1Eine Suchoperation geschieht durch binares Suchen in jeder Folge Li dar plus einer logischen Zusammenfassung so dass sich im schlechtesten Fall das Laufzeitverhalten i 0 k l i log 2 i 1 k 1 i 0 k l i i 1 k 1 displaystyle sum i 0 k lambda i lceil log 2 i 1 rceil k 1 sum i 0 k lambda i i 1 k 1 nbsp O log2 n ergibt Eine Einfugung verwendet Mergesort dessen Aufwand durch die Summe der beiden Langen gegeben ist Um den Buchstaben K einzufugen wird eine Folge L der Lange 1 mit dem Inhalt K gebildet Ist nun L0 leer Haufigkeit 1 2 machen wir L zu L0 und sind fertig Wenn nicht wie im obigen Beispiel Haufigkeit 1 2 mischen englisch merge wir L mit L0 mit Aufwand 1 1 der Name des Ergebnisses sei wieder L Ist dann L1 leer Haufigkeit 1 4 machen wir L zu L1 und sind fertig Wenn nicht Haufigkeit 1 4 mischen wir L mit L1 mit Aufwand 2 2 und neuem Namen L Ist dann L2 leer wie im obigen Beispiel Haufigkeit 1 8 machen wir L zu L2 und sind fertig Wenn nicht Haufigkeit 1 8 geht es weiter wie gehabt Im obigen Beispiel ergibt die Einfugung von K L0 leer l0 0L1 leer l1 0L2 D E H K l2 1L3 C F J M P S W Y l3 1Der Gesamtaufwand ist maximal 1 2 1 1 1 4 2 2 2 k 2k k 1 in O log n ErgebnisBei der vorgestellten Datenstruktur sind die amortisierten Kosten fur eine Einfugung in O log n BemerkungSie sind damit nicht besser als bei AVL oder Rot Schwarz Baumen bei denen reine Einfugungen reine Baumanderungen amortisiert konstant sind das Aufsuchen der Einfugeposition mit O log n aber noch hinzugerechnet werden muss Bemerkenswerterweise sind die Einfugekosten jedoch kleiner als zugehorige reine Suchkosten Abgrenzung BearbeitenIm 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 konnen verschiedenen Arten von Operationen unterschiedliche amortisierte Kosten zugeordnet werden Ausserdem wird bei der Account Methode die Differenz zwischen amortisierten und realen Kosten auf einem Konto gebucht Literatur BearbeitenThomas 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 Einzelnachweise Bearbeiten Lecture 7 Amortized Analysis In https www cs cmu edu Abgerufen am 4 Oktober 2016 Abgerufen von https de wikipedia org w index php title Aggregat Methode amp oldid 202956332