Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Algorithmische Geometrie

Ähnliche Präsentationen


Präsentation zum Thema: "Algorithmische Geometrie"—  Präsentation transkript:

1 Algorithmische Geometrie
Komplexität & Effizienz Von Holger Jakusch

2 Ziel Notwendigkeit Unterschied: Komplexität /Effizienz Vorgehensweise

3 Inhalt Effizienz Notation Optimalität/ Komplexität

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

5 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

6 Effizienz Beispiel: Effizientes & Uneffizientes Suchen
Uneffizient: Lineares Suchen: Suche nach 40 Laufzeit: f(n) = 2n Worst Case g(n)= n+1 Best Case 12 24 34 36 40 47 63 77

7 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

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

9 Effizienz Effizient: binäres Suchen Beispiel: Suche nach 40
Laufzeit: f(n)= 1+log n 12 24 34 36 40 47 63 77 40 47 63 77 40 47 40

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

11 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

12 Effizienzklassen Asymptotisches verhalten; Standart Effizienzklassen

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

14 Landau Symbol: O Obere Grenze für die die Effizienz eines Algorithmus
Gebräuchlich: f(n)= O(g(n)) n≥n0 f(n) ≤ cg(n) Math. korrekt: fO(g):(c>0)(n0 N)(n ≥ n0) f(n) ≤cg(n) f(n) hat höchstens die Größenordnung g(n)

15 Landau Symbol: Ω Untere grenze für die Effizienz eines Algorithmus
Gebräuchlich:f(n)= Ω(g(n)) n≥n0 f(n) ≥ cg(n) Math. korrekt: f Ω(g):g O(f) f(n) hat mindestens die Größenordnung g(n)

16 Landau Symbol: Θ Untere & obere Grenze für die Effizienz eines Algorithmus Gebräuchlich: f(n)= Θ(g(n)) n≥n0 c1g(n) ≤f(n) ≤c2(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)

17 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

18 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

19 Ende Fragen?


Herunterladen ppt "Algorithmische Geometrie"

Ähnliche Präsentationen


Google-Anzeigen