Algorithmische Geometrie Thema: Konvexe Hüllen
|
|
- Dirk Siegel
- vor 6 Jahren
- Abrufe
Transkript
1 Algorithmische Geometrie Thema: Konvexe Hüllen Christoph Hermes 17. Juni 2003
2 Ausblick auf den Vortrag 1/32 1 Was sind konvexe Hüllen? Wozu braucht man sie? Wie kann man sie berechnen gibt es Algorithmen? naiver Algorithmus: Einwickeln Graham Scan Quickhull Wie kann man die Laufzeit verbessern? innere Elimination Fazit/ Demonstration
3 Was sind konvexe Hüllen? 2/32 2 mathematisch: definiert als das kleinste Polygon, dass alle Punkte enthält
4 Was sind konvexe Hüllen? 2/32 2 mathematisch: definiert als das kleinste Polygon, dass alle Punkte enthält analog: kürzester Pfad, der alle Punkte umschließt
5 Was sind konvexe Hüllen? 2/32 2 mathematisch: definiert als das kleinste Polygon, dass alle Punkte enthält analog: kürzester Pfad, der alle Punkte umschließt oder auch: Jede Linie, die zwei Punkte dieser Punktmenge verbindet, muss innerhalb des Polygons liegen
6 Wozu braucht man sie? 3/32 3 Datamining
7 Wozu braucht man sie? 3/32 3 Datamining Computergraphik - Näherung für Objektgeometrie
8 Wozu braucht man sie? 3/32 3 Datamining Computergraphik - Näherung für Objektgeometrie Pathfinding
9 Einwickeln - graphisch 4/32 4 gegeben: Punktmenge P
10 Einwickeln - graphisch 5/32 5 gegeben: Punktmenge P Suche den Punkt mit y = min
11 Einwickeln - graphisch 5/32 5 gegeben: Punktmenge P Suche den Punkt mit y = min Finde den kleinsten Winkel von der Horizontalen ausgehend
12 Einwickeln - graphisch 6/32 6 gegeben: Punktmenge P Suche den Punkt mit y = min Finde den kleinsten Winkel von der Horizontalen ausgehend Suche den kleinsten Winkel zum nächsten Punkt
13 Einwickeln - graphisch 7/32 7 gegeben: Punktmenge P Suche den Punkt mit y = min Finde den kleinsten Winkel von der Horizontalen ausgehend Suche den kleinsten Winkel zum nächsten Punkt Fahre so lange fort, bis der Anfangspunkt wieder erreicht ist
14 Einwickeln - Bewertung 8/32 8 Vorteil: Algorithmus lässt sich auch auf höhere Dimensionen erweitern
15 Einwickeln - Bewertung 8/32 8 Vorteil: Algorithmus lässt sich auch auf höhere Dimensionen erweitern Nachteil: Effizienz leidet erheblich Laufzeit: N 1 (N i) = N 2 N i=1 2 Θ(N 2 ) Das ist auch gleichzeitig Worst Case: O(N 2 )
16 Einwickeln - Bewertung 8/32 8 Vorteil: Algorithmus lässt sich auch auf höhere Dimensionen erweitern Nachteil: Effizienz leidet erheblich Laufzeit: N 1 (N i) = N 2 N i=1 2 Θ(N 2 ) Das ist auch gleichzeitig Worst Case: O(N 2 ) Es geht auch besser: Graham Scan (von R.L. Graham, 1972)
17 GrahamScan - graphisch 9/32 9 wieder gegeben: Punktmenge P mit A als Minimum und Pivot (A.y = min A.x = max)
18 GrahamScan - graphisch 10/32 10 wieder gegeben: Punktmenge P mit A als Minimum und Pivot (A.y = min A.x = max) erzeuge ein einfaches Polygon
19 GrahamScan - graphisch 10/32 10 wieder gegeben: Punktmenge P mit A als Minimum und Pivot (A.y = min A.x = max) erzeuge ein einfaches Polygon A und B stehen schon als Teil der konvexen Hülle fest Beginne daher, ein Polygon ABC zu konstruieren
20 GrahamScan - graphisch 11/32 11 erzeuge eine neues Teilpolygon mit dem nächsten Punkt hier D
21 GrahamScan - graphisch 12/32 12 erzeuge eine neues Teilpolygon mit dem nächsten Punkt hier D backtracking: Eliminiere Punkte, bei denen die Hülle einen Knick nach rechts macht
22 GrahamScan - graphisch 12/32 12 erzeuge eine neues Teilpolygon mit dem nächsten Punkt hier D backtracking: Eliminiere Punkte, bei denen die Hülle einen Knick nach rechts macht wiederhole nun die letzten beiden Schritte so lange, bis das einfache Polygon abgearbeitet ist. Hier im Schnelldurchlauf.
23 GrahamScan - graphisch 13/32 13 erzeuge eine neues Teilpolygon mit dem nächsten Punkt hier D backtracking: Eliminiere Punkte, bei denen die Hülle einen Knick nach rechts macht wiederhole nun die letzten beiden Schritte so lange, bis das einfache Polygon abgearbeitet ist. Hier im Schnelldurchlauf.
24 GrahamScan - graphisch 14/32 14 erzeuge eine neues Teilpolygon mit dem nächsten Punkt hier D backtracking: Eliminiere Punkte, bei denen die Hülle einen Knick nach rechts macht wiederhole nun die letzten beiden Schritte so lange, bis das einfache Polygon abgearbeitet ist. Hier im Schnelldurchlauf.
25 GrahamScan - graphisch 15/32 15 erzeuge eine neues Teilpolygon mit dem nächsten Punkt hier D backtracking: Eliminiere Punkte, bei denen die Hülle einen Knick nach rechts macht wiederhole nun die letzten beiden Schritte so lange, bis das einfache Polygon abgearbeitet ist. Hier im Schnelldurchlauf.
26 GrahamScan - graphisch 16/32 16 erzeuge eine neues Teilpolygon mit dem nächsten Punkt hier D backtracking: Eliminiere Punkte, bei denen die Hülle einen Knick nach rechts macht wiederhole nun die letzten beiden Schritte so lange, bis das einfache Polygon abgearbeitet ist. Hier im Schnelldurchlauf.
27 GrahamScan - graphisch 17/32 17 erzeuge eine neues Teilpolygon mit dem nächsten Punkt hier D backtracking: Eliminiere Punkte, bei denen die Hülle einen Knick nach rechts macht wiederhole nun die letzten beiden Schritte so lange, bis das einfache Polygon abgearbeitet ist. Hier im Schnelldurchlauf.
28 GrahamScan - Pseudocode 18/32 18 PointList GrahamScan(PointList ptlst) { ptlst = createsimplepolygon(ptlst); // Erstelle ein einfaches Polygon
29 GrahamScan - Pseudocode 18/32 18 PointList GrahamScan(PointList ptlst) { ptlst = createsimplepolygon(ptlst); Point cur; for (int i=2; i<ptlst.len; i++) { cur = ptlst[i-1]; while(turnright(cur.prev,cur,cur.next)) { cur = cur.prev; cur.next.delete(); } } } // Erstelle ein einfaches Polygon // Durchlaufe Polygon mit Backtracking
30 GrahamScan - Bewertung 19/32 19 eigentlicher Algorithmus läuft in linearer Zeit ab Θ(N)
31 GrahamScan - Bewertung 19/32 19 eigentlicher Algorithmus läuft in linearer Zeit ab Θ(N) aber: das Sortieren erfordert Θ(N log N) darum gesamt Θ(N log N)
32 GrahamScan - Bewertung 19/32 19 eigentlicher Algorithmus läuft in linearer Zeit ab Θ(N) aber: das Sortieren erfordert Θ(N log N) darum gesamt Θ(N log N) ein anderes Verfahren in der gleichen Effizienzklasse: Quickhull (analog zu Quicksort)
33 Quickhull - graphisch 20/32 20 Gegeben: Punktmenge P
34 Quickhull - graphisch 21/32 21 Gegeben: Punktmenge P Suche zwei Punkte, die garantiert auf der konvexen Hülle liegen und teile die Punkte dementsprechend in zwei Hälften
35 Quickhull - graphisch 22/32 22 Gegeben: Punktmenge P Suche zwei Punkte, die garantiert auf der konvexen Hülle liegen und teile die Punkte dementsprechend in zwei Hälften Finde den Punkt mit dem größten Abstand von der Teilungslinie und elimiere Punkte innerhalb des neuen Polygons
36 Quickhull - graphisch 23/32 23 Gegeben: Punktmenge P Suche zwei Punkte, die garantiert auf der konvexen Hülle liegen und teile die Punkte dementsprechend in zwei Hälften Finde den Punkt mit dem größten Abstand von der Teilungslinie und elimiere Punkte innerhalb des neuen Polygons Verfahre genauso mit den neuen Grenzen bis keine neuen Punkte mehr zu finden sind
37 Quickhull - graphisch 24/32 24 Gegeben: Punktmenge P Suche zwei Punkte, die garantiert auf der konvexen Hülle liegen und teile die Punkte dementsprechend in zwei Hälften Finde den Punkt mit dem größten Abstand von der Teilungslinie und elimiere Punkte innerhalb des neuen Polygons Verfahre genauso mit den neuen Grenzen bis keine neuen Punkte mehr zu finden sind
38 Quickhull - graphisch 25/32 25 Gegeben: Punktmenge P Suche zwei Punkte, die garantiert auf der konvexen Hülle liegen und teile die Punkte dementsprechend in zwei Hälften Finde den Punkt mit dem größten Abstand von der Teilungslinie und elimiere Punkte innerhalb des neuen Polygons Verfahre genauso mit den neuen Grenzen bis keine neuen Punkte mehr zu finden sind
39 Quickhull - graphisch 26/32 26 Gegeben: Punktmenge P Suche zwei Punkte, die garantiert auf der konvexen Hülle liegen und teile die Punkte dementsprechend in zwei Hälften Finde den Punkt mit dem größten Abstand von der Teilungslinie und elimiere Punkte innerhalb des neuen Polygons Verfahre genauso mit den neuen Grenzen bis keine neuen Punkte mehr zu finden sind
40 Quickhull - graphisch 27/32 27 Gegeben: Punktmenge P Suche zwei Punkte, die garantiert auf der konvexen Hülle liegen und teile die Punkte dementsprechend in zwei Hälften Finde den Punkt mit dem größten Abstand von der Teilungslinie und elimiere Punkte innerhalb des neuen Polygons Verfahre genauso mit den neuen Grenzen bis keine neuen Punkte mehr zu finden sind und verbinde den Rest zu einem Polygon
41 Quickhull - Bewertung 28/32 28 Effizienz wie bei Quicksort: Θ(N log N)
42 Quickhull - Bewertung 28/32 28 Effizienz wie bei Quicksort: Θ(N log N) aber mit Worst Case: O(N 2 ) (wenn alle Punkte auf der konvexen Hülle liegen)
43 Quickhull - Bewertung 28/32 28 Effizienz wie bei Quicksort: Θ(N log N) aber mit Worst Case: O(N 2 ) (wenn alle Punkte auf der konvexen Hülle liegen) Im direkten Vergleich zum GrahamScan und Wrap- Algorithmus das schnellste Verfahren in der praktischen Anwendung
44 Quickhull - Bewertung 28/32 28 Effizienz wie bei Quicksort: Θ(N log N) aber mit Worst Case: O(N 2 ) (wenn alle Punkte auf der konvexen Hülle liegen) Im direkten Vergleich zum GrahamScan und Wrap- Algorithmus das schnellste Verfahren in der praktischen Anwendung lässt sich auch auf die dritte Dimension anwenden
45 innere Elimination 29/32 29 Verbesserung des GrahamScan s und der naiven Hülle? Sicherlich kann man an den Konstanten ein wenig rütteln, aber was ist mit der Anzahl der Punkte an sich?
46 innere Elimination 29/32 29 Verbesserung des GrahamScan s und der naiven Hülle? Sicherlich kann man an den Konstanten ein wenig rütteln, aber was ist mit der Anzahl der Punkte an sich? Lösung: Vorberechung mit der inneren Elimination
47 innere Elimination - Verfahren 30/32 30 gegeben: Punktmenge P
48 innere Elimination - Verfahren 30/32 30 gegeben: Punktmenge P Suche vier Extrempunkte und bilde daraus ein rechteckähnliches Polygon
49 innere Elimination - Verfahren 30/32 30 gegeben: Punktmenge P Suche vier Extrempunkte und bilde daraus ein rechteckähnliches Polygon Bilde in dem Polygon ein Rechteck und eliminiere die darin enthaltene Punkte
50 innere Elimination - Bewertung 31/32 31 Effizienz: Θ(N)
51 innere Elimination - Bewertung 31/32 31 Effizienz: Θ(N) Es bleiben N Punkte im Schnitt übrig (lt. stochastischer Geometrie)
52 innere Elimination - Bewertung 31/32 31 Effizienz: Θ(N) Es bleiben N Punkte im Schnitt übrig (lt. stochastischer Geometrie) Eliminationsverfahren schon in Quickhull enthalten
53 Fazit 32/32 32 Welchen der bisher dargestellten Algorithmen sollte man nun bevorzugen?
54 Fazit 32/32 32 Welchen der bisher dargestellten Algorithmen sollte man nun bevorzugen? Ist die Wahrscheinlichkeit groß, dass Punkte schon auf einer konvexen Hülle liegen: innere Elimination + GrahamScan
55 Fazit 32/32 32 Welchen der bisher dargestellten Algorithmen sollte man nun bevorzugen? Ist die Wahrscheinlichkeit groß, dass Punkte schon auf einer konvexen Hülle liegen: innere Elimination + GrahamScan sonst: Quickhull
56 Fazit 32/32 32 Welchen der bisher dargestellten Algorithmen sollte man nun bevorzugen? Ist die Wahrscheinlichkeit groß, dass Punkte schon auf einer konvexen Hülle liegen: innere Elimination + GrahamScan sonst: Quickhull Und das Beste zum Schluss: Die Demonstration
57 Literatur zum Nachschlagen R. Sedgewick: Algorithmen in C, Kap. 24/25 Java-Applets: ah/ alg anim/version1/grahamscan.html lehre/compgeometry/gosper/convex hull/ applet/convex hull applet.html Ansonsten hilft meistens googlen :)
Geometrie I. Sebastian Redinger Informatik 2 Programmiersysteme Martensstraße Erlangen
Geometrie I Sebastian Redinger 01.07.2015 Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Gliederung Grundlagen CCW Polygone Picks Theorem Konvexe Hülle - Graham Scan - Jarvis March 2 Gliederung
MehrAbgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g:
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 2 Prof. Dr. Helmut Seidl, S. Pott,
MehrFolge 13 - Quicksort
Für Abiturienten Folge 13 - Quicksort 13.1 Grundprinzip des Quicksort Schritt 1 Gegeben ist ein unsortierter Array von ganzen Zahlen. Ein Element des Arrays wird nun besonders behandelt, es wird nämlich
MehrÜbersicht. Datenstrukturen und Algorithmen. Übersicht. Divide-and-Conquer. Vorlesung 9: Quicksort (K7)
Datenstrukturen und Algorithmen Vorlesung 9: (K7) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.rwth-aachen.de/i2/dsal0/ Algorithmus 8. Mai 200 Joost-Pieter
MehrAlgorithmische Geometrie 1. Einführung
Algorithmische Geometrie 1. Einführung JProf. Dr. Heike Leitte Computergraphik und Visualisierung Algorithmische Geometrie Veranstaltung: 2 SWS Vorlesung: Mi, 9:15 10:45 1 SWS Übung: Do 14:00 16:00 Übungen:
MehrJuly 04, Geometrie I. Hallo Welt! für Fortgeschrittene. Daniel Uebler
July 04, 2012 Geometrie I Hallo Welt! für Fortgeschrittene Daniel Uebler Einleitung Einleitung Algorithmische Geometrie Die algorithmische Geometrie ist der Zweig der Informatik, der Algorithmen zum Lösen
MehrÜbung zur Vorlesung Algorithmische Geometrie
Übung zur Vorlesung Algorithmische Geometrie Dipl.-Math. Bastian Rieck Arbeitsgruppe Computergraphik und Visualisierung Interdisziplinäres Zentrum für Wissenschaftliches Rechnen 8. Mai 2012 B. Rieck (CoVis)
MehrÜbungsblatt 1. f(n) = f(n) = O(g(n)) g(n) = O(f(n)) Zeigen oder widerlegen Sie: 3 n = Θ(2 n ) Aufgabe 1.2 Gegeben sei die folgende Funktion:
Übungsblatt 1 Aufgabe 1.1 Beweisen oder widerlegen Sie, dass für die im Folgenden definierte Funktion f(n) die Beziehung f(n) = Θ(n 4 ) gilt. Beachten Sie, dass zu einem vollständigen Beweis gegebenenfalls
MehrSortieralgorithmen. Inhalt: InsertionSort BubbleSort QuickSort. Marco Block
Inhalt: InsertionSort BubbleSort QuickSort Block M.: "Java-Intensivkurs - In 14 Tagen lernen Projekte erfolgreich zu realisieren", Springer-Verlag 2007 InsertionSort I Das Problem unsortierte Daten in
MehrSortierverfahren für Felder (Listen)
Sortierverfahren für Felder (Listen) Generell geht es um die Sortierung von Daten nach einem bestimmten Sortierschlüssel. Es ist auch möglich, daß verschiedene Daten denselben Sortierschlüssel haben. Es
MehrTriangulierung von einfachen Polygonen
Triangulierung von einfachen Polygonen Tobias Kyrion Inhaltsverzeichnis 1.1 Die Problemstellung....................... 1 2.1 Ein naiver Algorithmus...................... 2 3.1 Zerlegung in monotone Teilpolygone..............
MehrTechnische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen
Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 1 für die Übung
Mehr6. Algorithmen der Computer-Geometrie
6. Algorithmen der Computer-Geometrie 1. Einführung 2. Schnitt von zwei Strecken 3. Punkt-in-Polygon-Test 4. Schnitt orthogonaler Strecken 5. Punkteinschlussproblem Geo-Informationssysteme 146 6.1 Computer-Geometrie
MehrKomplexität von Algorithmen
Komplexität von Algorithmen Prof. Dr. Christian Böhm WS 07/08 in Zusammenarbeit mit Gefei Zhang http://www.dbs.informatik.uni-muenchen.de/lehre/nfinfosw Ressourcenbedarf - Größenordnungen Prozesse verbrauchen
MehrProgrammieren I. Kapitel 7. Sortieren und Suchen
Programmieren I Kapitel 7. Sortieren und Suchen Kapitel 7: Sortieren und Suchen Ziel: Varianten der häufigsten Anwendung kennenlernen Ordnung Suchen lineares Suchen Binärsuche oder Bisektionssuche Sortieren
MehrGrundlagen der Programmierung
Grundlagen der Programmierung Algorithmen und Datenstrukturen Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind viele Teile direkt aus der Vorlesung
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
Mehr1. Musterlösung. Problem 1: Average-case-Laufzeit vs. Worst-case-Laufzeit
Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 06/07 ITI Wagner Musterlösung Problem : Average-case-Laufzeit vs Worst-case-Laufzeit pt (a) Folgender Algorithmus löst das Problem der
MehrÜberblick. Lineares Suchen
Komplexität Was ist das? Die Komplexität eines Algorithmus sei hierbei die Abschätzung des Aufwandes seiner Realisierung bzw. Berechnung auf einem Computer. Sie wird daher auch rechnerische Komplexität
MehrDLP. Adolphe Kankeu Tamghe papibobo@informatik.uni-bremen.de ALZAGK SEMINAR. Bremen, den 18. Januar 2011. Fachbereich Mathematik und Informatik 1 / 27
DLP Adolphe Kankeu Tamghe papibobo@informatik.uni-bremen.de Fachbereich Mathematik und Informatik ALZAGK SEMINAR Bremen, den 18. Januar 2011 1 / 27 Inhaltsverzeichnis 1 Der diskrete Logarithmus Definition
MehrNewton-Verfahren zur gleichungsbeschränkten Optimierung. 1 Gleichungsbeschränkte Optimierungsprobleme
Newton-Verfahren zur gleichungsbeschränkten Optimierung Armin Farmani Anosheh (afarmani@mail.uni-mannheim.de) 3.Mai 2016 1 Gleichungsbeschränkte Optimierungsprobleme Einleitung In diesem Vortrag geht es
MehrBabeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf
Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Paradigmen im Algorithmenentwurf Problemlösen Problem definieren Algorithmus entwerfen
MehrKapitel 8. Rekursionsgleichungen. Landau-Symbole. Lösen von Rekursionsgleichungen Allgemeines Iterationsmethode Spezialfälle Erzeugende Funktionen
Rekursionsgleichungen Landau-Symbole Kapitel 8 Lösen von Rekursionsgleichungen Allgemeines Iterationsmethode Spezialfälle Erzeugende Funktionen Kapitel 8 Rekursionsgleichungen p./42 Landau-Symbole () Modellierung
Mehr16. All Pairs Shortest Path (ASPS)
. All Pairs Shortest Path (ASPS) All Pairs Shortest Path (APSP): Eingabe: Gewichteter Graph G=(V,E) Ausgabe: Für jedes Paar von Knoten u,v V die Distanz von u nach v sowie einen kürzesten Weg a b c d e
MehrAbschnitt: Algorithmendesign und Laufzeitanalyse
Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher
MehrProgrammieren, Algorithmen und Datenstrukturen II 8. Allgemeine Lösungsverfahren
Programmieren, Algorithmen und Datenstrukturen II 8. Allgemeine Lösungsverfahren 1 Übersicht 1. Ziele des Kapitels 2. Bereits behandelte Lösungsstrategien 3. Backtracking 4. Branch-and-Bound 5. Weiterführende
MehrModellieren von Natur
Modellieren von Natur Oliver Deussen Natürliche Objekte 1 bisher: Kombination relativ einfacher Primitive zur Generierung (geschlossener) glatter Oberflächen aber: Wie modelliert man natürliche Objekte?
MehrGraphen: Datenstrukturen und Algorithmen
Graphen: Datenstrukturen und Algorithmen Ein Graph G = (V, E) wird durch die Knotenmenge V und die Kantenmenge E repräsentiert. G ist ungerichtet, wenn wir keinen Start- und Zielpunkt der Kanten auszeichnen.
MehrEinführung in die Informatik I Kapitel II.3: Sortieren
1 Einführung in die Informatik I Kapitel II.3: Sortieren Prof. Dr.-Ing. Marcin Grzegorzek Juniorprofessur für Mustererkennung im Institut für Bildinformatik Department Elektrotechnik und Informatik Fakultät
MehrZeichnen von Graphen. graph drawing
Zeichnen von Graphen graph drawing WS 2006 / 2007 Gruppe: D_rot_Ala0607 Christian Becker 11042315 Eugen Plischke 11042351 Vadim Filippov 11042026 Gegeben sei ein Graph G = (V; E) Problemstellung V E =
MehrAlgorithmen & Datenstrukturen 1. Klausur
Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse
MehrKostenmodell. Daniel Graf, Tobias Pröger. 22. September 2016 (aktualisierte Fassung 5 vom 9. Oktober 2016)
Kostenmodell Daniel Graf, Tobias Pröger 22. September 2016 (aktualisierte Fassung 5 vom 9. Oktober 2016) Erklärung: Diese Mitschrift ist als Ergänzung zur Vorlesung gedacht. Wir erheben keinen Anspruch
MehrHallo Welt für Fortgeschrittene. Geometrie I. Lukas Batz. Informatik 2 Programmiersysteme Martensstraße Erlangen
Hallo Welt für Fortgeschrittene Geometrie I Lukas Batz Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Gliederung Grundlagen Vektoren Geradengleichungen Skalar- und Kreuzprodukt Abstand
MehrKompakte Graphmodelle handgezeichneter Bilder
Kompakte Graphmodelle handgezeichneter Bilder Einbeziehung in Authentizierung und Bilderkennung Inhaltsverzeichnis Seminar Mustererkennung WS 006/07 Autor: Stefan Lohs 1 Einleitung 1 Das graphische Modell.1
MehrKapitel 1: Motivation / Grundlagen Gliederung
Gliederung 1. Motivation / Grundlagen 2. Sortier- und Selektionsverfahren 3. Paradigmen des Algorithmenentwurfs 4. Ausgewählte Datenstrukturen 5. Algorithmische Geometrie 6. Umgang mit algorithmisch schwierigen
MehrGrundlegende Sortieralgorithmen
Grundlegende Sortieralgorithmen Martin Wirsing in Zusammenarbeit mit Matthias Hölzl und Nora Koch Sortieren in Java Man kann Sortierverfahren in einem imperativem oder einem objektorientierten Stil programmieren.
MehrDatenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen
MehrApproximationsalgorithmen
Makespan-Scheduling Kapitel 4: Approximationsalgorithmen (dritter Teil) (weitere Beispiele und Illustrationen an der Tafel) Hilfreiche Literatur: Vazarani: Approximation Algorithms, Springer Verlag, 2001.
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 9. Klassische Suche: Baumsuche und Graphensuche Malte Helmert Universität Basel 13. März 2015 Klassische Suche: Überblick Kapitelüberblick klassische Suche: 5. 7.
MehrÜbersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20.
Übersicht Datenstrukturen und Algorithmen Vorlesung 5: (K4) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.informatik.rwth-aachen.de/i2/dsal12/ 20.
MehrAlgorithms for Regression and Classification
Fakultät für Informatik Effiziente Algorithmen und Komplexitätstheorie Algorithms for Regression and Classification Robust Regression and Genetic Association Studies Robin Nunkesser Fakultät für Informatik
MehrKomplexität. G. Zachmann Clausthal University, Germany Leistungsverhalten von Algorithmen
lausthal Informatik II Komplexität von Algorithmen. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Leistungsverhalten von Algorithmen Speicherplatzkomplexität: Wird primärer & sekundärer
MehrTechnische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen
Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung
MehrSOI 2013. Die Schweizer Informatikolympiade
SOI Die Schweizer Informatikolympiade Lösung SOI Wie schreibe ich eine gute Lösung? Bevor wir die Aufgaben präsentieren, möchten wir dir einige Tipps geben, wie eine gute Lösung für die theoretischen
MehrMit kombinatorischer Optimierung zur Nadel im Heuhaufen
Mit kombinatorischer Optimierung zur Nadel im Heuhaufen Rico Zenklusen ETH Zurich Was ist kombinatorische Optimierung? Finde beste/gute Lösung in einer riesigen Menge endlich vieler Möglichkeiten. / 0
MehrEinführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)
Einführung 3 Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Univ.-Prof. Dr. Christoph Meinel Hasso-Plattner-Institut Universität Potsdam, Deutschland Hatten den Reduktionsbegriff
MehrMATHEMATISCHE ANALYSE VON ALGORITHMEN
MATHEMATISCHE ANALYSE VON ALGORITHMEN Michael Drmota Institut für Diskrete Mathematik und Geometrie, TU Wien michael.drmota@tuwien.ac.at www.dmg.tuwien.ac.at/drmota/ Ringvorlesung SS 2008, TU Wien Algorithmus
Mehr13 Java 4 - Entwurfsmuster am Beispiel des Rucksackproblems
13 Java 4 - Entwurfsmuster am Beispiel des Rucksackproblems 13.1 Modellierung des Rucksackproblems 13.2 Lösung mit Greedy-Algorithmus 13.3 Lösung mit Backtracking 13.4 Lösung mit Dynamischer Programmierung
MehrSortierverfahren. Lernziele
1 Sortierverfahren Einleitung Wir beschäftigen uns heute mit einfachen Sortierverfahren, also mit algorithmischen Lösungen für das Problem, eine ungeordnete Liste mit gleichartigen Elementen (gleicher
MehrEinführung Elementare Datenstrukturen. Der Konstruktor muß den Listenkopf head erzeugen. Der Vorgänger und Nachfolger von head ist head selbst.
Einführung Elementare Datenstrukturen (Folie 38, Seite 23 im Skript) Der Konstruktor muß den Listenkopf head erzeugen. Der Vorgänger und Nachfolger von head ist head selbst. Einführung Elementare Datenstrukturen
MehrIdeen der Informatik Suchen und Sortieren [Ordnung muss sein ] Kurt Mehlhorn Adrian Neumann viele Folien von Kostas Panagiotou
Ideen der Informatik Suchen und Sortieren [Ordnung muss sein ] Kurt Mehlhorn Adrian Neumann viele Folien von Kostas Panagiotou Suchen Welche Telefonnummer hat Kurt Mehlhorn? Wie schreibt man das Wort Equivalenz?
MehrEntscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?
Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum
MehrAutomaten, Spiele, und Logik
Automaten, Spiele, und Logik Woche 2 25. April 2014 Inhalt der heutigen Vorlesung 1. Reguläre Ausdrücke 2. der Satz von Kleene 3. Brzozowski Methode 4. grep und perl Reguläre Ausdrücke Rekursive Definition,
MehrJAVA - Suchen - Sortieren
Übungen Informatik I JAVA - Suchen - Sortieren http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 Folie 1 Inhalt Suchen/Sortieren binary search mergesort bubblesort Übungen Informatik
MehrCustomization (Zuschneiden)
Customization (Zuschneiden) Anpassen der (Graph)Datenstruktur an die Anwendung. I Ziel: schnell, kompakt. I benutze Entwurfsprinzip: make the common case fast I Listen vermeiden Mögliches Problem: Software-Engineering-Alptraum
MehrLineare Gleichungssysteme
Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der
MehrVortrag. Suchverfahren der Künstlichen Intelligenz. Sven Schmidt (Technische Informatik)
Vortrag Suchverfahren der Künstlichen Intelligenz Sven Schmidt (Technische Informatik) Suchverfahren der Künstlichen Intelligenz Grundlagen Zustandsraumrepräsentation Generische Suche Bewertung von Suchstrategien
MehrSicherer MAC für Nachrichten beliebiger Länge
Sicherer MAC für Nachrichten beliebiger Länge Korollar Sicherer MAC für Nachrichten beliebiger Länge Sei F eine Pseudozufallsfunktion. Dann ist Π MAC2 für Π = Π MAC sicher. Nachteile: Für m ({0, 1} n 4
MehrTeil II. Nichtlineare Optimierung
Teil II Nichtlineare Optimierung 60 Kapitel 1 Einleitung In diesem Abschnitt wird die Optimierung von Funktionen min {f(x)} x Ω betrachtet, wobei Ω R n eine abgeschlossene Menge und f : Ω R eine gegebene
Mehr186.172 Algorithmen und Datenstrukturen 1 VL 4.0 1. Übungstest WS 2010/11 26. November 2010
Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 1. Übungstest WS 2010/11 26.
MehrWS 2010/ Januar Mathematisches Institut der Universität München Prof. Dr. Rudolf Fritsch
Mathematisches Institut der Universität München Prof. Dr. Rudolf Fritsch WS 2010/2011 14. Januar 2011 Geometrie mit Übungen Übungsblatt 9, Musterlösungen Aufgabe 33. Es werden Kreise in der Euklidischen
MehrOPERATIONS-RESEARCH (OR)
OPERATIONS-RESEARCH (OR) Man versteht darunter die Anwendung mathematischer Methoden und Modelle zur Vorbereitung optimaler Entscheidungen bei einem Unternehmen. Andere deutsche und englische Bezeichnungen:
MehrRechnerische Komplexität
Proseminar Effiziente Algorithmen SS 2002 Rechnerische Komplexität Ulrike Krönert (34180) 0. Inhalt 1. Einführung 2. Algorithmen und Komplexität 2.1. Algorithmen 2.2. Laufzeitabschätzung 2.3. Polynomialzeit
MehrÜbersicht Datenstrukturen und Algorithmen. Literatur. Algorithmus: Wikipedia Definition. Vorlesung 1: Einführung. Prof. Dr.
Übersicht Datenstrukturen und Vorlesung 1: Prof. Dr. Erika Ábrahám Theorie Hybrider Systeme Informatik 2 http://ths.rwth-aachen.de/teaching/ss-14/ datenstrukturen-und-algorithmen/ Diese Präsentation verwendet
MehrPränumerischer Bereich. Umgang mit Zahlen und Mengen Zahlenraum bis 20. Körperschema
Körperschema Pränumerischer Bereich Umgang mit Zahlen und Mengen 0- Zahlenraum bis 0 Raumbegriff Raum-Lage- Bezieungen Farbzuordnung Stück für Stück Zuordnung Reihenbildung Mengenerhaltung (Invarianz)
MehrComputer Graphik I Polygon Scan Conversion
11/23/09 lausthal omputer raphik I Polygon Scan onversion. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Klassifikation der Polygone Konvex Für jedes Punktepaar in einem konvexen Polygon
Mehr3. Musterlösung. Problem 1: Boruvka MST
Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 06/07 ITI Wagner. Musterlösung Problem : Boruvka MST pt (a) Beweis durch Widerspruch. Sei T MST von G, e die lokal minimale Kante eines
MehrEndTermTest PROGALGO WS1516 A
EndTermTest PROGALGO WS1516 A 14.1.2016 Name:................. UID:.................. PC-Nr:................ Beachten Sie: Lesen Sie erst die Angaben aufmerksam, genau und vollständig. Die Verwendung von
MehrMathematischer Selbsttest für Studienanfänger(innen)
Mathematischer Selbsttest für Studienanfänger(innen) Der folgende Mathematiktest dient zur Einschätzung Ihrer eigenen mathematischen Fähigkeiten. Das Niveau entspricht ungefähr dem der gymnasialen Mittel-
Mehr1 Lineare Gleichungssysteme
MLAN1 1 LINEARE GLEICHUNGSSYSTEME 1 Literatur: K Nipp/D Stoffer, Lineare Algebra, Eine Einführung für Ingenieure, VDF der ETHZ, 4 Auflage, 1998, oder neuer 1 Lineare Gleichungssysteme Zu den grundlegenden
MehrDemo: Mathe-CD. Prüfungsaufgaben Mündliches Abitur. Analysis. Teilbereich 1: Ganzrationale Funktionen 1. März 2002
Prüfungsaufgaben Mündliches Abitur Analysis Teilbereich : Ganzrationale Funktionen Hier nur Aufgaben als Demo Datei Nr. 9 März 00 INTERNETBIBLIOTHEK FÜR SCHULMATHEMATIK Vorwort Die in dieser Reihe von
MehrT (n) = max. g(x)=n t(n) S(n) = max. g(x)=n s(n)
Beim Logarithmischen Kostenmaß wird, im Gegensatz zum EKM, die Stelligkeit der Werte berücksichtigt und mit in die Laufzeit eingerechnet. Beispiel: R1 := R2 (R3), wobei R2 den Wert 5, R3 den Wert 10 und
MehrInformatik-Sommercamp 2012. Mastermind mit dem Android SDK
Mastermind mit dem Android SDK Übersicht Einführungen Mastermind und Strategien (Stefan) Eclipse und das ADT Plugin (Jan) GUI-Programmierung (Dominik) Mastermind und Strategien - Übersicht Mastermind Spielregeln
MehrProgrammieren in C. Rekursive Funktionen. Prof. Dr. Nikolaus Wulff
Programmieren in C Rekursive Funktionen Prof. Dr. Nikolaus Wulff Rekursive Funktionen Jede C Funktion besitzt ihren eigenen lokalen Satz an Variablen. Dies bietet ganze neue Möglichkeiten Funktionen zu
MehrAlgorithmen und Datenstrukturen SoSe 2008 in Trier. Henning Fernau Universität Trier
Algorithmen und Datenstrukturen SoSe 2008 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Algorithmen und Datenstrukturen Gesamtübersicht Organisatorisches / Einführung Grundlagen: RAM,
MehrAlgorithmen und Datenstrukturen Einführung
Algorithmen und Datenstrukturen Einführung Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Motivation Einführung in die Begriffe Algorithmus Datenstruktur
MehrNichtlineare Optimierung ohne Nebenbedingungen
Kapitel 2 Nichtlineare Optimierung ohne Nebenbedingungen In diesem Abschnitt sollen im wesentlichen Verfahren zur Bestimmung des Minimums von nichtglatten Funktionen in einer Variablen im Detail vorgestellt
MehrLiteratur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)
Dominating Set 59 Literatur Dominating Set Grundlagen 60 Dominating Set (DS) M. V. Marathe, H. Breu, H.B. Hunt III, S. S. Ravi, and D. J. Rosenkrantz: Simple Heuristics for Unit Disk Graphs. Networks 25,
MehrDie Komplexitätsklassen P und NP
Die Komplexitätsklassen P und NP Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 3. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und
MehrMorphologische Bildverarbeitung II
FAKULTÄT FÜR MATHEMATIK UNIVERSITÄT ULM ABT. STOCHASTIK ABT. ANGEWANDTE INFORMATIONSVERARBEITUNG Seminar Simulation und Bildanalyse mit Java Morphologische Bildverarbeitung II BETREUER: JOHANNES MAYER
MehrEinstieg in die Informatik mit Java
1 / 20 Einstieg in die Informatik mit Java Rekursion Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 20 1 Überblick 2 Rekursion 3 Rekursive Sortieralgorithmen 4 Backtracking
Mehr3.2 Lineare Optimierung (Entscheidungen unter Sicherheit)
3. Lineare Optimierung (Entscheidungen unter Sicherheit) Betrachtet wird hier der Fall Θ = (bzw. die Situation u(a, ϑ) bzw. l(a,ϑ) konstant in ϑ Θ für alle a A). Da hier keine Unsicherheit über die Umweltzustände
MehrAlgorithmen zur Analyse historischer Landkarten. Benedikt Budig Universität Würzburg
Algorithmen zur Analyse historischer Landkarten Benedikt Budig Universität Würzburg Einführung Einführung Algorithmen zur Analyse historischer Landkarten Einführung Algorithmen zur Analyse historischer
MehrAlgorithmen II Vorlesung am 15.11.2012
Algorithmen II Vorlesung am 15.11.2012 Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales
MehrAlgorithmen und Datenstrukturen (für ET/IT)
Algorithmen und Datenstrukturen (für ET/IT) Wintersemester 2012/13 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Programm heute 1 Einführung 2 Mathematische Grundlagen
MehrVorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg 19.04.2011
Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 19.04.2011 Überlagern von Kartenebenen Beispiel: Gegeben zwei
MehrProjekt Systementwicklung
Projekt Systementwicklung Effiziente Codierung: Laufzeitoptimierung Prof. Dr. Nikolaus Wulff Effiziente Codierung Der Wunsch effizienten Code zu schreiben entstammt mehreren Quellen: Zielplattformen mit
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 5. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Wdhlg.: Dijkstra-Algorithmus I Bestimmung der
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2010/11 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund Wiederholungen - while - do-while - for
MehrPROSEMINAR ONLINE ALGORITHMEN
PROSEMINAR ONLINE ALGORITHMEN im Wintersemester 2000/2001 Prof. Dr. Rolf Klein, Dr. Elmar Langetepe, Dipl. Inform. Thomas Kamphans (Betreuer) Vortrag vom 15.11.2000 von Jan Schmitt Thema : Finden eines
Mehr"Alles, was einen Wert zurueckliefert, ist ein Ausdruck." Konstanten, Variablen, "Formeln" oder auch Methoden koennen Werte zurueckgeben.
Ausdruecke "Alles, was einen Wert zurueckliefert, ist ein Ausdruck." Konstanten, Variablen, "Formeln" oder auch Methoden koennen Werte zurueckgeben. Im Gegensatz zu Anweisungen; die geben keinen Wert zurueck.
MehrDomain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing
SE Data Cleansing Domain-independent independent Duplicate Detection Vortrag von Marko Pilop & Jens Kleine http://www.informatik.hu-berlin.de/~pilop/didd.pdf {pilop jkleine}@informatik.hu-berlin.de 1.0
MehrIK Ökonomische Entscheidungen und Märkte LVA
IK Ökonomische Entscheidungen und Märkte LVA LVA-Leiter: Michael Noldi Einheit 4: Das Verbraucherverhalten (Kap. 3) Verbraucherverhalten IK WS 2014/15 1 Verbraucherverhalten Bugetbeschränkung: Einkommen,
MehrGrundlagen der Informatik I (Studiengang Medieninformatik)
Grundlagen der Informatik I (Studiengang Medieninformatik) Thema: 3. Datentypen, Datenstrukturen und imperative Programme Prof. Dr. S. Kühn Fachbereich Informatik/Mathematik Email: skuehn@informatik.htw-dresden.de
MehrRastergrafikalgorithmen
Rastergrafikalgorithmen Sebastian Kurfürst Proseminar Computergrafik Institut für Software-und Multimediatechnik TU Dresden 10. Juli 2008 Zusammenfassung Es wird eine Einführung in Basisalgorithmen der
Mehrentspricht der Länge des Vektorpfeils. Im R 2 : x =
Norm (oder Betrag) eines Vektors im R n entspricht der Länge des Vektorpfeils. ( ) Im R : x = x = x + x nach Pythagoras. Allgemein im R n : x x = x + x +... + x n. Beispiele ( ) =, ( 4 ) = 5, =, 4 = 0.
MehrUebersicht. Webpage & Ilias. Administratives. Lehrbuch. Vorkenntnisse. Datenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Uebersicht Administratives Einleitung Ein einführendes Beispiel Matthias Zwicker Universität Bern Frühling 2010 2 Administratives Dozent Prof. Zwicker, zwicker@iam.unibe.ch
MehrFerienakademie 2001: Kryptographie und Sicherheit offener Systeme. Faktorisierung. Stefan Büttcher stefan@buettcher.org
Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme Faktorisierung Stefan Büttcher stefan@buettcher.org 1 Definition. (RSA-Problem) Gegeben: Ò ÔÕ, ein RSA-Modul mit unbekannten Primfaktoren
MehrALP I. Funktionale Programmierung
ALP I Funktionale Programmierung Sortieren und Suchen (Teil 1) WS 2012/2013 Suchen 8 False unsortiert 21 4 16 7 19 11 12 7 1 5 27 3 8 False sortiert 2 4 6 7 9 11 12 18 21 24 27 36 Suchen in unsortierten
MehrFragen für die Klausuren
Fragen für die Klausuren Vom Quellcode zum ausführbaren Programm Was ist ein Quellcode? Ist der Quellcode von einem Programm auf unterschiedlichen Rechner gleich? Nennen Sie drei Programmiersprachen. Was
Mehr