Konvexe Hülle. Konvexe Hülle. Mathematik. Konvexe Hülle: Definition. Mathematik. Konvexe Hülle: Eigenschaften. AK der Algorithmik 5, SS 2005 Hu Bin
|
|
- Kasimir Kalb
- vor 6 Jahren
- Abrufe
Transkript
1 Konvexe Hülle Konvexe Hülle AK der Algorithmik 5, SS 2005 Hu Bin Anwendung: Computergraphik Boundary Kalkulationen Geometrische Optimierungsaufgaben Konvexe Hülle: Definition Mathematik Konvex: Linie zwischen je 2 Punkten innerhalb des Polygons liegt zur Gänze im Polygon Konvex nicht Konvex 2D: A C = {x x = λ.a + (1-λ).B, 0 λ 1} 3D: C B Konvexe Hülle: kleinstes konvexe Polygon, das die Menge aller Punkte abdeckt B A C = {x x = λ 1.A + λ 2.B + λ 3.C, λ i 0, 3λ i = 1} Allgemein: C = {x x = 3λ i.a i, λ i 0, 3λ i = 1} Mathematik Konvexe Hülle: Eigenschaften Abhängigkeit, wenn Punkt in der Hülle liegt C D B A µ 1, µ 2, µ 3 0, µ 1 + µ 2 + µ 3 =1: D = µ 1.A + µ 2.B + µ 3.C Eckpunkte einer Konvexen Hülle ist eine Teilmenge der Punktmenge Punkte mit den größten bzw. kleinsten x- und y-koordinaten sind Elemente der Konvexen Hülle in 2D Mindestens 3, maximal alle Punkte bilden die Konvexe Hülle in 2D 1
2 Ähnlichkeit zu Sortieren Algorithmus für Konvexe Hülle kann zum Sortieren verwendet werden Zahlen als Punkte in der Polardarstellung verwenden. Zahlenwert als Winkel auffassen und Betrag normalisieren (z.b. auf 1 setzen). Konvexe Hülle: Algorithmen Wie schnell kann ein Algorithmus sein? Laufzeit abhängig von der Anzahl der Punkte in der Konvexen Hülle? Behandlung von mehreren Punkten, die auf einer Geraden der Konvexen Hülle liegen? oder? Y Laufzeit kann nicht besser als O(n logn) sein Package-Wrapping Idee: Ausgehend von einem Startpunkt werden alle Punkte der Reihe nach eingewickelt 1 2 Package-Wrapping: Code wrap(p): (1) p_end = Punkt mit minimaler y-koordinate; (2) gebe p_end aus; (3) p = p_end; (4) wiederhole q (5) q = Punkt mit min. φ(p, q); φ(p,q) (6) p = q; p (7) gebe p aus; (8) bis (p == p_end) Package-Wrapping: Analyse Korrektheit: Konvex, da Algorithmus nur ccw arbeitet Alle Punkte werden umschlossen, da min. theta Minimale Punktmenge wird gewählt, da alle Eckpunkte aus der Instanzmenge Laufzeit: Wiederhole läuft im worst case über alle Punkte und damit linear Punkt mit min. φ(p, q) bestimmen auch Y Laufzeit in O(n 2 ) genauer gesagt in O(n.m) n Anzahl der Punkte insgesamt m Anzahl der Punkte auf der Hülle Graham Scan Idee: Von einer großen (nicht unbedingt konvexen) Hülle ausgehend alle Punkte entfernen, die nicht zur Konvexen Hülle gehören Anfangshülle: alle Punkte aufsteigend nach φ(p 0, p ) i sortieren P 0 hat min. y p 0 2
3 Graham Scan: Beispiel Graham Scan: Code grahamscan(p): (1) q = Punkt mit min. y-koordinate (falls nicht eindeutig zusätzlich mit min. x-koordinate) (2) swap(p[0], q); (3) sortiere p[i =1 N-1] aufst. nach φ(p[0], p[i]); (4) M = 2; (5) für i = 3 N-1: (6) solange winkel(p[m], p[m-1], p[i]) < 180: (7) M --; (8) M ++; (9) swap(p[m], p[i]); (10)gebe p[0..m] aus; Graham Scan: Analyse Bemerkungen: Der Zusatz in (0) ist notwendig, da die Reihenfolge der Punkte, wenn sie auf einer Linie liegen, nicht notwendigerweise geordnet sind. Graham Scan, nach der Sortierung, ist linear (da jeder Punkt nur maximal 1x eliminiert wird) Laufzeit: Abhängig vom Sortieralgorithmus QuickHull Idee: Divide and Conquer Prinzip - Punkte innerhalb einer Hülle kann nicht zur Konvexen Hülle gehören. Iterativ die Hülle erweitern und Punkte eliminieren Y Bestenfalls O(n logn) QuickHull: Iteration Gegeben: eine Kante und eine Punktmenge Wähle Punkt mit größter Distanz zur Kante Ersetze Kante mit 2 neuen Kanten Eliminiere alle umschlossenen Punkte QuickHull: Code QuickHull(p): (1) A = Punkt mit kleinster x-koordinate; (2) B = Punkt mit größter x-koordinate; (3) Hull = {A, B}; (4) partitioniere restlichen Punkte in S1, S2 mit: S1 rechts von AB S2 rechts von BA (5) FindHull (S1, A, B); (6) FindHull (S2, B, A); 3
4 QuickHull: Code FindHull(Sk, P, Q): (1) falls Sk leer, dann return; (2) C = Punkt in Sk mit größtem Abstand zu PQ; (3) Füge C zur Hülle zwischen P und Q hinzu; (4) partitioniere Sk in S0, S1, S2 mit: S0 innerhalb von P, C, Q S1 rechts von PC QuickHull: Analyse Laufzeit: Punkt mit größtem Abstand bestimmen erfordert O(n) Zeit Anzahl der Rekursionen abhängig von der Partitionierung der Punkte Best Case: Partitionen sind ungefähr gleich groß Y T(n) = 2T(n/2) + O(n) also T(n) in O(n logn) Worst Case: Partitionen extrem unausgewogen Y T(n) = T(n-1) + O(n) also T(n) in O(n 2 ) Average Case bei zufallsverteilten Punkten: O(n logn) Konvexe Hülle in 3D Test, ob ein Punkt innerhalb des Polyeders liegt, wird komplexer Menge der Eckpunkte mit Reihenfolge reicht nicht für die Ausgabe Triangulierung notwendig QuickHull 3D: Ablauf Ausgangsbasis: Ein konvexes Polyeder im 3D Raum (Tetraeder im Schritt 1) Für jeden Punkt p außerhalb des Polyeders: Bestimme alle Fassetten, die von p aus sichtbar sind Bestimme alle Kanten, die zwischen sichtbaren und unsichtbaren Fassetten liegen (Horizont-Kanten) QuickHull 3D: Ablauf Für jeden Punkt P außerhalb des Polyeders (Fortsetzung): Für jede Horizont-Kante: Erzeuge zusammen mit p eine Dreiecksfläche p ist nun Element der Konvexen Hülle Eliminiere alle Fassetten, die von p aus sichtbar waren Partionierung QuickHull 3D: Hauptkosten Überprüfung, welche Fassetten von welchen Punkten aus sichtbar sind Naive Art: In jeder Iteration den Punkt p mit den Normalvektoren aller Fassetten testen Entfernen aller sichtbaren Fassetten Hinzufügen neuer Fassetten 4
5 Konflikt-Graph Methode Verwendung eines Konflikt-Graphen, um die Berechnung zu beschleunigen Bipartit; eine Kante zwischen einem Punkt p und einer Fassette f existiert genau dann, wenn f von p aus sichtbar ist Initialisierung des Konflikt-Graphen nach Schritt 1, wo das Tetraeder gebildet wird Gesucht: Effiziente Möglichkeit, diesen zu aktualisieren Konflikt-Graph Methode Jeder Punkt q, der eine neue Fassette f sehen kann, sieht alle ihrer 3 Kanten Eine dieser Kanten ist eine Horizont-Kante Bevor f hinzugekommen ist, gab es 2 Fassetten g und h, die die Kante teilten Wenn q die Horizont-Kante sehen kann, so muss er vorher g oder h gesehen haben Y Aktualisierungsprozess muss nur Punkte testen, die g oder h sehen konnten Projektive Methode Von p aus alle Punkte des aktuellen Polyeders auf eine Ebene projizieren Die Projektion der Punkte, die die Horizont-Kanten bilden, ist eine Konvexe Hülle Punkte zwischen p und den sichtbaren Fassetten, die innerhalb der Hülle liegen, werden eingeschlossen Höhere Dimensionen Mittels Projektion lässt sich die Berechnung von Konvexen Hüllen im n-dimensionalen Raum immer auf einen (n-1)-dimensionalen Raum zurückführen Die meisten Algorithmen lassen sich für den n-dimensionalen Fall generalisieren Anwendung: Labeling Problemstellung: Zu jedem Punkt kann ein Label platziert werden Label entweder r.o., l.o., r.u. oder l.u. platzierbar Keine Überlappungen erlaubt 4-Positionen Labeling Ziel: Platzierung möglichst vieler Labels Labeling mit Konvexe Hülle labeling(v): (1) W = V; (2) solange W nicht leer: (3) C = konvexe_hülle(w); (4) s = schwerpunkt(c); (5) W = W C; (6) für alle c aus C: (7) label c, versuche es in folgender Reihenfolge: a) nach außen (von s aus gesehen) b) 2.äußerste Position c) 3.äußerste Position b) nach innen e) nicht labeln 5
6 Labeling: Beispiel Labeling: Beispiel S S Djose Labeling: Beispiel Labeling: Beispiel Macalania S Djose Macalania Djose 6
M. Pester 29. Ein konvexes d-polytop ist eine begrenzte d-dimensionale polyedrale Menge. (d = 3 Polyeder, d = 2 Polygon)
M. Pester 29 6 Konvexe Hülle 6.1 Begriffe Per Definition ist die konvexe Hülle für eine Menge S von lich vielen Punkten die kleinste konvexe Menge, die S enthölt (z.b. in der Ebene durch ein umspannes
MehrGeometrische Algorithmen
Geometrische Algorithmen Thomas Röfer Motivation Scan-line-Prinzip Konvexe Hülle Distanzprobleme Voronoi-Diagramm Rückblick Manipulation von Mengen Vorrangwarteschlange Heap HeapSort swap(a, 0, 4) 1 5
MehrVorlesung Algorithmische Geometrie Konvexe Hülle im R 3
Vorlesung Algorithmische Geometrie Konvexe Hülle im R 3 LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Andreas Gemsa 26.06.2012 Prüfung! Termine: 20. Juli 27.
MehrGeometrie 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
MehrTriangulierung von einfachen Polygonen
Triangulierung von einfachen Polygonen - Seminarvortrag von Tobias Kyrion - Inhalt: 1.1 Die Problemstellung Quellenangabe 1.1 Die Problemstellung Definition Polygon: endlich viele paarweise verschiedene
MehrGeometrie 1. Christian Bay Christian Bay Geometrie / 46
Geometrie 1 Christian Bay 02.07.2013 Christian Bay Geometrie 1 02.07.2013 1 / 46 Inhaltsverzeichnis Grundlagen CCW Polygone Picks Theorem Konvexe Hülle Christian Bay Geometrie 1 02.07.2013 2 / 46 Geometrie
MehrGeometrie 1. Roman Sommer. Informatik 2 Programmiersysteme Martensstraße Erlangen
Geometrie 1 Roman Sommer Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Grundlagen Punkte, Vektoren Schreibweise: Skalar: Vektor: Komponente: Punkt: (spitzer) Winkel zw. zwei Vektoren:
MehrUberblick 1. Kurzeste Wege 2. Sichtbarkeitsgraphen 3. Berechnung des Sichtbarkeitsgraphen 4. Kurzeste Wege fur polygonale Roboter 1
Vorlesung Geometrische Algorithmen Sichtbarkeitsgraphen und kurzeste Wege Sven Schuierer Uberblick 1. Kurzeste Wege 2. Sichtbarkeitsgraphen 3. Berechnung des Sichtbarkeitsgraphen 4. Kurzeste Wege fur polygonale
MehrÜbersicht über Informatik und Softwaresystemtechnik WS 99/00, Prof. Dr. Andreas Schwill
Konvexe Hülle Hierbei handelt es sich um ein klassisches Problem aus der Algorithmischen Geometrie, dem Teilgebiet der Informatik, in dem man für geometrische Probleme effiziente Algorithmen bestimmt.
MehrWas bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone
Was bisher geschah Motivation, Beispiele geometrische Objekte im R 2 : Punkt, Gerade, Halbebene, Strecke, Polygon, ebene Zerlegung in Regionen (planare Graphen) maschinelle Repräsentation geometrischer
MehrGeradenarrangements und Dualität von Punkten und Geraden
Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 12.06.2012 Dualitätsabbildung Bisher haben wir Dualität für planare
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
MehrLineares Programmieren
Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.05.2011 Nachtrag Art Gallery Problem Lässt sich der Triangulierungs-Algorithmus
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..............
MehrIsomorphie von Bäumen
Isomorphie von Bäumen Alexandra Weinberger 23. Dezember 2011 Inhaltsverzeichnis 1 Einige Grundlagen und Definitionen 2 1.1 Bäume................................. 3 1.2 Isomorphie..............................
MehrKapitel 9 Algorithm. Geometrie. Kürzeste Abstände Konvexe Hülle
Kapitel 9 Algorithm. Geometrie Kürzeste Abstände Konvexe Hülle Überblick Teilgebiet der Informatik, in dem es um die Entwicklung effizienter Algorithmen und die Bestimmung der algorithmischen Komplexität
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
MehrEffiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume
Effiziente Algorithmen und Datenstrukturen I Kapitel 9: Minimale Spannbäume Christian Scheideler WS 008 19.0.009 Kapitel 9 1 Minimaler Spannbaum Zentrale Frage: Welche Kanten muss ich nehmen, um mit minimalen
MehrGeometrische Algorithmen
Geometrische Algorithmen Bin Hu Algorithmen und Datenstrukturen 2 Arbeitsbereich für Algorithmen und Datenstrukturen Institut für Computergraphik und Algorithmen Technische Universität Wien Einführung
MehrAlgorithmen & Komplexität
Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg
MehrKostenmaße. F3 03/04 p.188/395
Kostenmaße Bei der TM nur ein Kostenmaß: Ein Schritt (Konfigurationsübergang) kostet eine Zeiteinheit; eine Bandzelle kostet eine Platzeinheit. Bei der RAM zwei Kostenmaße: uniformes Kostenmaß: (wie oben);
Mehr1. Vektoralgebra 1.0 Einführung Vektoren Ein Vektor ist eine Größe, welche sowohl einen Zahlenwert (Betrag) als auch eine Richtung hat.
1. Vektoralgebra 1.0 Einführung Vektoren Ein Vektor ist eine Größe, welche sowohl einen Zahlenwert (Betrag) als auch eine Richtung hat. übliche Beispiele: Ort r = r( x; y; z; t ) Kraft F Geschwindigkeit
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
MehrTeil I. Lineare Optimierung
Teil I Lineare Optimierung 5 Kapitel 1 Grundlagen Definition 1.1 Lineares Optimierungsproblem, lineares Programm. Eine Aufgabenstellung wird lineares Optimierungsproblem oder lineares Programm genannt,
MehrSuchen und Sortieren
Suchen und Sortieren Suchen Sortieren Mischen Zeitmessungen Bewertung von Sortier-Verfahren Seite 1 Suchverfahren Begriffe Suchen = Bestimmen der Position (Adresse) eines Wertes in einer Datenfolge Sequentielles
MehrDas Voronoi Diagramm. 1. Definition. 2. Eigenschaften. 3. Größe und Speicherung. 4. Konstruktion. 5. Verwendung
Das Voronoi Diagramm 1. Definition 2. Eigenschaften 3. Größe und Speicherung 4. Konstruktion 5. Verwendung Das Voronoi- Diagramm Voronoi Regionen Euklidische Distanz: d(p,q) = (px-qx)^2+(py-qy)^2 Das Voronoi-Diagramm
Mehr6. Triangulation von Polygonen
1 6. Triangulation von Polygonen 2 Problemstellung 3 Problemstellung 4 Problemstellung 5 Problemstellung 6 Jedes Polygon lässt sich triangulieren. Wir führen einen Induktionsbeweis nach der Anzahl der
Mehrhäufige Aufgabe Motivation: Approximation komplizierter Geometrien durch einfachere Dreiecke oft effizienter zu bearbeiten als Polygone
Triangulierung häufige Aufgabe Motivation: Approximation komplizierter Geometrien durch einfachere Dreiecke oft effizienter zu bearbeiten als Polygone Problemstellung 1: Gegeben: ein einfaches Polygon
Mehr7. Sortieren Lernziele. 7. Sortieren
7. Sortieren Lernziele 7. Sortieren Lernziele: Die wichtigsten Sortierverfahren kennen und einsetzen können, Aufwand und weitere Eigenschaften der Sortierverfahren kennen, das Problemlösungsparadigma Teile-und-herrsche
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
MehrDas Heiratsproblem. Definition Matching
Das Heiratsproblem Szenario: Gegeben: n Frauen und m > n Männer. Bekanntschaftsbeziehungen zwischen allen Männern und Frauen. Fragestellung: Wann gibt es für jede der Frauen einen Heiratspartner? 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
Mehr4.7 Der Algorithmus von Dinic für maximalen Fluss
4.7 Der Algorithmus von Dinic für maximalen Fluss Wir kennen bereits den Algorithmus von Ford Fulkerson zur Suche nach einem maximalen Fluss in einem Graphen. Wir lernen nun einen Algorithmus für maximalen
MehrÜbung Datenstrukturen. Sortieren
Übung Datenstrukturen Sortieren Aufgabe 1 Gegeben sei nebenstehender Sortieralgorithmus für ein Feld a[] ganzer Zahlen mit N Elementen: a) Um welches Sortierverfahren handelt es sich? b) Geben Sie möglichst
Mehr5. Musterlösung. Problem 1: Vitale Kanten * ω(f) > ω(f ). (a) Untersuchen Sie, ob es in jedem Netzwerk vitale Kanten gibt.
Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 05/06 ITI Wagner 5. Musterlösung Problem : Vitale Kanten * In einem Netzwerk (D = (V, E); s, t; c) mit Maximalfluß f heißen Kanten e
MehrÜberblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP
Kap..1 Heuristiken Kap.. Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 3. VO DAP SS 008 14. Juli 009 Überblick
MehrKap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien
Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 23. VO DAP2 SS 2008 14. Juli 2009
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 0..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
MehrAlgorithmische Geometrie. Prof. Dr. Thomas Ottmann. Mitarbeit: PD Dr. Sven Schuierer Dr. Stefan Edelkamp
Algorithmische Geometrie Prof. Dr. Thomas Ottmann Mitarbeit: PD Dr. Sven Schuierer Dr. Stefan Edelkamp Literatur: M. de Berg, M. van Krefeld, M. Overmars O. Schwarzkopf: Computational Geometry (Algorithms
MehrWiederholung zu Flüssen
Universität Konstanz Methoden der Netzwerkanalyse Fachbereich Informatik & Informationswissenschaft SS 2008 Prof. Dr. Ulrik Brandes / Melanie Badent Wiederholung zu Flüssen Wir untersuchen Flüsse in Netzwerken:
MehrPraktikum 3 Algorithmik SS Aufgabe 10: Aufgabe 9 ( Skyline-Problem ) weitere Aufgaben folgen. Name:... Matr-Nr:...
Praktikum 3 Algorithmik SS 2007 14052007 Aufgabe 9: Aufgabe 10: Das Skyline-Problem Union-Find-Strukturen weitere Aufgaben folgen Name: Matr-Nr: Datum: Unterschrift des Dozenten (wenn bestanden): Aufgabe
MehrKapitel 4: Minimal spannende Bäume Gliederung der Vorlesung
Kapitel : Minimal spannende Bäume Gliederung der Vorlesung. Fallstudie Bipartite Graphen 2. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Wege. Traveling
MehrAlgorithmische Bioinformatik 1
Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Paarweises
MehrKapitel 4: Minimale spannende Bäume Gliederung der Vorlesung
Kapitel : Minimale spannende Bäume Gliederung der Vorlesung. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen. Kürzeste Wege. Minimale spannende Bäume. Färbungen und Cliquen. Traveling Salesman
MehrADS: Algorithmen und Datenstrukturen 2
ADS: Algorithmen und Datenstrukturen 2 Teil 5 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität
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,
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
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Teil 7: Geometrische Algorithmen Martin Hofmann LFE Theoretische Informatik, Institut für Informatik, Ludwig-Maximilians Universität, München 16. April 2016 Martin Hofmann
MehrKapitel 6 Elementare Sortieralgorithmen
Kapitel 6 Elementare Sortieralgorithmen Ziel: Kennenlernen elementarer Sortierverfahren und deren Effizienz Zur Erinnerung: Das Sortier-Problem Gegeben: Folge A von n Elementen a 1, a 2,..., a n ; Eine
MehrDefinition Gerichteter Pfad. gerichteter Pfad, wenn. Ein gerichteter Pfad heißt einfach, falls alle u i paarweise verschieden sind.
3.5 Gerichteter Pfad Definition 291 Eine Folge (u 0, u 1,..., u n ) mit u i V für i = 0,..., n heißt gerichteter Pfad, wenn ( i {0,..., n 1} ) [ (u i, u i+1 ) A]. Ein gerichteter Pfad heißt einfach, falls
MehrKapitel 9. Komplexität von Algorithmen und Sortieralgorithmen
1 Kapitel 9 Komplexität von Algorithmen und Sortieralgorithmen Ziele 2 Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:
MehrGrundlagen: Algorithmen und Datenstrukturen
Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 00
MehrInhalt. 3. Spezielle Algorithmen
Inhalt 0. Rechner und Programmierung für Kommunikationstechniker und Mechatroniker 1. Algorithmen - Wesen, Eigenschaften, Entwurf 2. Darstellung von Algorithmen mit Struktogrammen und Programmablaufplänen
MehrFlüsse, Schnitte, Bipartite Graphen II
Flüsse, Schnitte, Bipartite Graphen II Jonathan Hacker 06.06.2016 Jonathan Hacker Flüsse, Schnitte, Bipartite Graphen II 06.06.2016 1 / 42 Gliederung Einführung Jonathan Hacker Flüsse, Schnitte, Bipartite
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 4 Programm des
MehrLokalisierung von inneren und äußeren Grenzen in Sensornetzwerken
Lokalisierung von inneren und äußeren Grenzen in Sensornetzwerken Seminararbeit: Algorithmen für Sensornetzwerke Thomas Gramer 1 Thomas Gramer: KIT Universität des Landes Baden-Württemberg und nationales
MehrEinführung in die Informatik 2
Einführung in die Informatik 2 Suchen in Datenmengen Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00 Uhr, o.n.v.
MehrComputer-Graphik I Verallgemeinerte Baryzentrische Koordinaten
lausthal omputer-raphik I Verallgemeinerte Baryzentrische Koordinaten. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Verallgemeinerungen der baryzentr. Koord. 1. Was macht man im 2D bei
Mehr9. Heuristische Suche
9. Heuristische Suche Prof. Dr. Rudolf Kruse University of Magdeburg Faculty of Computer Science Magdeburg, Germany rudolf.kruse@cs.uni-magdeburg.de S Heuristische Suche Idee: Wir nutzen eine (heuristische)
MehrVerbesserungsheuristiken
Verbesserungsheuristiken Bestandteile der Lokalen Suche Für schwierige Optimierungsaufgaben haben Verbesserungsheuristiken eine große praktische Bedeutung. Sie starten mit Ausgangslösungen, die von z.b.
MehrScheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.
Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É. Tardos Janick Martinez Esturo jmartine@techfak.uni-bielefeld.de xx.08.2007 Sommerakademie Görlitz Arbeitsgruppe 5 Gliederung
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.
MehrBildsegmentierung mit Level Sets
Bildsegmentierung mit Level Sets Seminar Bildsegmentierung und Computer Vision im Wintersemester 2005 Übersicht 1 Übersicht 2 Definitionen Ausbreitungsgeschwindigkeit Übersicht 3 Inter-Frame-basierte Modellierung
MehrVorkurs Mathematik B
Vorkurs Mathematik B Dr. Thorsten Camps Fakultät für Mathematik TU Dortmund 20. September 2011 Definition (R n ) Wir definieren: 1 Der R 2 sei die Menge aller Punkte in der Ebene. Jeder Punkt wird in ein
MehrAufgabensammlung zur algorithmischen Geometrie
1 Aufgabensammlung zur algorithmischen Geometrie 2012WS Andreas Kriegl 1. Konvexe Hülle als Durchschnitt. Zeige, daß der Durchschnitt konvexer Mengen wieder konvex ist und somit die konvexe Hülle einer
Mehr0, v 6 = , v 4 = 1
Aufgabe 6. Linearkombinationen von Vektoren Gegeben sei folgende Menge M von 6 Vektoren v, v,..., v 6 R 4 : M = v =, v =, v 3 =, v 4 =, v 5 =, v 6 =. Zeigen Sie, dass sich jeder Vektor v i M, i =,,...,
MehrSortieralgorithmen. Jan Pöschko. 18. Januar Problemstellung Definition Warum Sortieren?... 2
Jan Pöschko 18. Januar 2007 Inhaltsverzeichnis 1 Problemstellung 2 1.1 Definition................................... 2 1.2 Warum Sortieren?.............................. 2 2 Einfache Sortieralgorithmen
MehrAsymptotische Laufzeitanalyse: Beispiel
Asyptotische Laufzeitanalyse: n = length( A ) A[j] = x GZ Algorithen u. Datenstrukturen 1 31.10.2013 Asyptotische Laufzeitanalyse: n = length( A ) A[j] = x GZ Algorithen u. Datenstrukturen 2 31.10.2013
MehrLineare Algebra I. - 9.Vorlesung - Prof. Dr. Daniel Roggenkamp & Falko Gauß. Korrektur: 2. Klausurtermin:
Lineare Algebra I - 9.Vorlesung - rof. Dr. Daniel Roggenkamp & Falko Gauß Korrektur: 2. Klausurtermin: 09.02.2017 Linearkombination von Vektoren lineare Hülle Erzeugendensystem S lineare Unabhängigkeit
MehrÜbungen Mathematik I, M
Übungen Mathematik I, M Übungsblatt, Lösungen (Stoff aus Mathematik 0).0.0. Berechnen Sie unter Verwendung des binomischen Lehrsatzes ( x + y) 7 Lösung: Nach dem binomischen Lehrsatz ist ( x + y) 7 = 7
Mehr8. Modelle für feste Körper
8. Modelle für feste Körper Modell: Abbild der Realität, welches bestimmte Aspekte der Realität repräsentiert (und andere ausblendet) mathematische Modelle symbolische Modelle Datenmodelle Experimentalmodelle
Mehr2.3 Basis und Dimension
Lineare Algebra I WS 205/6 c Rudolf Scharlau 65 2.3 Basis und Dimension In diesem zentralen Abschnitt werden einige für die gesamte Lineare Algebra fundamentale Grundbegriffe eingeführt: Lineare Abhängigkeit
MehrVektorräume. 1. v + w = w + v (Kommutativität der Vektoraddition)
Vektorräume In vielen physikalischen Betrachtungen treten Größen auf, die nicht nur durch ihren Zahlenwert charakterisiert werden, sondern auch durch ihre Richtung Man nennt sie vektorielle Größen im Gegensatz
Mehrdamit hätten wir nach Ende der Schleife: "a[0 n-1] enthält nur Elemente aus a[0 n-1], aber in sortierter Reihenfolge".
Korrektheit Invariante: a[0 k-1] enthält nur Elemente aus a[0 k-1], aber in sortierter Reihenfolge Terminierung: Die Schleife endet mit k=n def insertionsort(a): for k in range( 1, len(a) ): while i >
MehrPolyeder und Platonische Körper
Polyeder und Platonische Körper Ausarbeitung zum 30.11.2016 Linus Leopold Boes Matrikelnummer: 2446248 Algorithmen für planare Graphen Institut für Informatik HHU Düsseldorf Inhaltsverzeichnis 1 Einleitung
MehrKapitel 9. Komplexität von Algorithmen und Sortieralgorithmen
Kapitel 9 Komplexität von Algorithmen und Sortieralgorithmen Arrays 1 Ziele Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:
MehrAnalytische Geometrie
Kapitel 2 Analytische Geometrie 21 Vektoren Die Elemente des kartesischen Produktes R n, d h die n Tupel oder Zeilenvektoren (a 1,, a n ) mit a k R für k n, interpretiert man als Punkte eines n dimensionalen
Mehr4.4.2 Virtuelles Hashing Erweiterbares Hashing Das Gridfile Implementation von Hashverfahren in Java
Inhaltsverzeichnis 1 Grundlagen 1 1.1 Algorithmen und ihre formalen Eigenschaften 1 1.2 Beispiele arithmetischer Algorithmen 5 1.2.1 Ein Multiplikationsverfahren 5 1.2.2 Polynomprodukt 8 1.2.3 Schnelle
MehrAnwendungen des Fréchet-Abstandes Das Constrained Free Space Diagram zur Analyse von Körperbewegungen
Anwendungen des Fréchet-Abstandes Das Constrained Free Space Diagram zur Analyse von Körperbewegungen David Knötel Freie Universität Berlin, Institut für Informatik Seminar über Algorithmen Leitfaden Wiederholung
MehrDatenstrukturen und Algorithmen
Datenstrukturen und Algorithmen VO 708.031 27.10.2011 stefan.klampfl@tugraz.at 1 Wiederholung Wir vergleichen Algorithmen anhand des ordnungsmäßigen Wachstums von T(n), S(n), Asymptotische Schranken: O-Notation:
MehrDurchschnitt von Matroiden
Durchschnitt von Matroiden Satz von Edmonds Dany Sattler 18. Januar 2007/ Seminar zur ganzzahligen Optimierung / Wallenfels Definition: Unabhängigkeitssystem Definition: Ein Mengensystem (S, J ) nennt
MehrGraphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.
Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 14. November 2007 1 / 22 2 / 22 Gliederung eulersche und semi-eulersche Graphen Charakterisierung eulerscher Graphen Berechnung eines
Mehr2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung
2 Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche: Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 24/ 44 Zwei Beispiele a 0
MehrEffiziente Algorithmen I
H 10. Präsenzaufgabenblatt, Wintersemester 2015/16 Übungstunde am 18.01.2015 Aufgabe Q Ein Reiseveranstalter besitzt ein Flugzeug, das maximal p Personen aufnehmen kann. Der Veranstalter bietet einen Flug
MehrGrundlagen der Vektorrechnung
Grundlagen der Vektorrechnung Ein Vektor a ist eine geordnete Liste von n Zahlen Die Anzahl n dieser Zahlen wird als Dimension des Vektors bezeichnet Schreibweise: a a a R n Normale Reelle Zahlen nennt
MehrAlgorithmen und Datenstrukturen (Th. Ottmann und P. Widmayer) Folien: Suchverfahren Autor: Stefan Edelkamp / Sven Schuierer
Algorithmen und Datenstrukturen (Th. Ottmann und P. Widmayer) Folien: Suchverfahren Autor: Stefan Edelkamp / Sven Schuierer Institut für Informatik Georges-Köhler-Allee Albert-Ludwigs-Universität Freiburg
MehrDynamische Programmierung. Problemlösungsstrategie der Informatik
als Problemlösungsstrategie der Informatik und ihre Anwedung in der Diskreten Mathematik und Graphentheorie Fabian Cordt Enisa Metovic Wissenschaftliche Arbeiten und Präsentationen, WS 2010/2011 Gliederung
Mehr2. Teilbarkeit. Euklidischer Algorithmus
O. Forster: Einführung in die Zahlentheorie 2. Teilbarkeit. Euklidischer Algorithmus 2.1. Wir benutzen die folgenden Bezeichnungen: Z = {0, ±1, ±2, ±3,...} Menge aller ganzen Zahlen N 0 = {0, 1, 2, 3,...}
MehrKapitel 4: Das Überdeckungsproblem
Kapitel : Das Überdeckungsproblem Kapitel Das Überdeckungsproblem Kapitel : Das Überdeckungsproblem Seite / 25 Kapitel : Das Überdeckungsproblem Inhaltsverzeichnis. Überdeckungsmatrizen.2 Minimalüberdeckungen.
Mehr8 Die Riemannsche Zahlenkugel
8 Die Riemannsche Zahlenkugel Wir untersuchen zunächst Geraden- und Kreisgleichungen in der komplexen Ebene C = R 2. Geradengleichungen Die Parameterdarstellung einer Geraden durch zwei Punkte z 1 z 2
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2007 11. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Das Rucksack-Problem Ein Dieb, der einen Safe
MehrEffiziente Algorithmen
Effiziente Algorithmen Aufgabe 5 Gruppe E Martin Schliefnig, 0160919 Christoph Holper, 9927191 Ulrike Ritzinger, 0125779 1. Problemstellung Gegeben ist eine Datei, die eine Million reelle Zahlen enthält.
MehrSichtbarkeitsbestimmung
Sichtbarkeitsbestimmung Oliver Deussen Sichtbarkeit Problemdefinition Szenario: Gegebene Objektmenge wird von einem Augenpunkt aus betrachtet (perspektivische Projektion) Gegeben: Eine Menge M von Objekten
MehrLineare Abhängigkeit
Lineare Abhängigkeit Vorbemerkung. Es sei X eine Menge. Eine Familie von Elementen von X ist eine Abbildung I X, i x i. I heißt dabei Indexmenge. Man verwendet dabei oft die Schreibweise (x i ) oder (x
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
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
Mehr5.7 Lineare Abhängigkeit, Basis und Dimension
8 Kapitel 5. Lineare Algebra 5.7 Lineare Abhängigkeit, Basis und Dimension Seien v,...,v n Vektoren auseinemvektorraumv über einem KörperK. DieMenge aller Linearkombinationen von v,...,v n, nämlich { n
MehrDie Formel für die Standardabweichung lautet (ohne die Wurzel haben wir die Varianz):
Mittelwert und Standardabweichung Klasse: StandardDeviation Schreiben Sie ein Programm StandardDeviation, das von den zufällig erzeugten Werten eines Arrays beliebiger Größe den Mittelwert und die Standardabweichung
Mehrein vom Nullvektor verschiedener Vektor, dann ist jeder dazu parallele (kollinear) Veka tor d ein Vielfaches von a. + λ 2 a 2
II. Basis und Dimension ================================================================= 2.1 Linearkombination und Basis -----------------------------------------------------------------------------------------------------------------
MehrEULER-CHARAKTERISTIK KONVEXER POLYEDER
MINI-IKM 1998 EULER-CHARAKTERISTIK KONVEXER POLYEDER Eberhard-Karls-Universität Tübingen, März 1998 Richard Bödi Inhalt 1. Der euklidische Raum, affine Räume...........................................1
Mehr