Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Algorithmische Geometrie Komplexität & Effizienz Von Holger Jakusch.

Ähnliche Präsentationen


Präsentation zum Thema: "Algorithmische Geometrie Komplexität & Effizienz Von Holger Jakusch."—  Präsentation transkript:

1

2 Algorithmische Geometrie Komplexität & Effizienz Von Holger Jakusch

3 Ziel Notwendigkeit Unterschied: Komplexität /Effizienz Vorgehensweise

4 Inhalt Effizienz Notation Optimalität/ Komplexität

5 Warum? Vergleichbarkeit Abschätzung des Rechen- & Speicheraufwands

6 Effizienz Effizienz= Sparsamer Umgang mit Ressourcen Die Effiziens eines Algorithmus(für eine spezielle Eingabe) kann man messen Kleine Datenmengen: Egal Große Datenmengen: Effizienz = Machbarkeit Laufzeiteffizienz/ Speichereffizienz

7 Effizienz Beispiel: Effizientes & Uneffizientes Suchen Uneffizient: Lineares Suchen: Suche nach 40 Laufzeit: f(n) = 2nWorst Case g(n)= n+1Best Case

8 Effizienz Allgemein: Abschätzung von Rechenzeit & Speicheraufwand Ahängigkeit: f (n) Worst case g(n) Average case Interessant für n Numerische Konstanten sind uninteressant Art des Input Nicht: Millisekunde und Bit Elementaroperationen

9 Effizienz Elementaroperationen: Vergleich zweier Zahlen Die 4 arithmetischen Operationen Normale Mathematische Funktionen Elementaroperationen im Beispiel Elementaroperationen sind nicht festgelegt!

10 Effizienz Effizient: binäres Suchen Beispiel: Suche nach 40 Laufzeit: f(n)= 1+log n

11 Effizienzklassen Warum Effizienz Klassen? Realisierung des Vergleiches zweier Algorithmen Welche Effienzklassen gibt es? Notation mit Hilfe der Landau- Symbole:O, Ω, Θ

12 Effizienzklassen Klassifikation der Effizienz: Asymptotisches verhalten log n, n, n log n, n², n³, …,2 Langsam Steigend: log* n kleiner als 5 bis 2 Schnell steigend: Fakultät n! 65535

13 Effizienzklassen Asymptotisches verhalten; Standart Effizienzklassen

14 Landau Symbole Im Fogenden: f und g seien zwei Algorithmen und c eine Konstante

15 Landau Symbol: O Obere Grenze für die die Effizienz eines Algorithmus Gebräuchlich: f(n)= O(g(n)) nn 0 f(n) cg(n) Math. korrekt: f O(g): ( c>0)( n 0 N)( n n 0 ) f(n) c g(n) f(n) hat höchstens die Größenordnung g(n)

16 Landau Symbol: Ω Untere grenze für die Effizienz eines Algorithmus Gebräuchlich:f(n)= Ω(g(n)) nn 0 f(n) cg(n) Math. korrekt: f Ω(g): g O(f) f(n) hat mindestens die Größenordnung g(n)

17 Landau Symbol: Θ Untere & obere Grenze für die Effizienz eines Algorithmus Gebräuchlich: f(n)= Θ(g(n)) nn 0 c 1 g(n) f(n) c 2 (g(n)) Math. korrekt: f Θ(g): (f O(g) und f Ω(g)) : (f O(g) und g O(f)) f(n) hat die gleiche Größenordnung wie g(n)

18 Optimales Verhalten: Untere Grenzen Wann heißt ein Algorithmus Optimal? Effizienz hat die gleiche Größenordnung wie die Komplexität des Problems Optiemierung heißt: versuch Effizienz nahe an Komplexität zu bringen Es ist wichtig, die Komlexität eines Problems zu kennen

19 Fazit Komplexität ist nicht gleich Effizienz Optimaler Algoritmus = Komplexität des Problems Komplexität hängt nicht nur von Größe, sondern auch von dem Inhalt des Inputs ab Die Effizienz lässt sich im Verhältnis zum Input berechnen Probleme lassen sich durch bereits vorhandene Lösungen darstellen

20 Ende Fragen?


Herunterladen ppt "Algorithmische Geometrie Komplexität & Effizienz Von Holger Jakusch."

Ähnliche Präsentationen


Google-Anzeigen