Punktbeschriftung in Landkarten

Größe: px
Ab Seite anzeigen:

Download "Punktbeschriftung in Landkarten"

Transkript

1 Vorlesung Algorithmische Kartografie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann Martin Nöllenburg 21./

2 Wo sind wir gerade? Ebene Block Termine Themen Einführung Linienzüge 3 Linienvereinfachung Karteninhalt Konsistente Vereinfachung von Kantenzügen Flächenaggregation Flächen 5-6 Vereinfachung von Gebäudeumrissen Statisch 2 Flächenkartogramme Punktbeschriftung Straßenbeschriftung Beschriftung Zoomen Dynamisch 4 Rotieren Trajektorienbasierte Beschriftung Beschriftung von bewegten Punkten Annotation 3 Geovisualisierung Randbeschriftung Diagramme 1 Proportional Symbol Maps 2

3 Klassische Kartenbeschriftung Poor, sloppy, amateurisch type placement is irresponsible; it spoils even the best image and impedes reading. (E. Imhof 75) Kartografie hat lange Erfahrung mit manueller Beschriftung in Karten. einige Richtlinien: c David Imus 3

4 Klassische Kartenbeschriftung Poor, sloppy, amateurisch type placement is irresponsible; it spoils even the best image and impedes reading. (E. Imhof 75) c David Imus Kartografie hat lange Erfahrung mit manueller Beschriftung in Karten. einige Richtlinien: neben, über oder unter dem Objekt am besten oben rechts Überlappungen und Überdeckungen vermeiden eindeutige grafische Zuordnung... 3

5 Klassische Kartenbeschriftung Poor, sloppy, amateurisch type placement is irresponsible; it spoils even the best image and impedes reading. (E. Imhof 75) c David Imus Kartografie hat lange Erfahrung mit manueller Beschriftung in Karten. einige Richtlinien: neben, über oder unter dem Objekt am besten oben rechts Überlappungen und Überdeckungen vermeiden eindeutige grafische Zuordnung...! lässt sich leicht in ein Problem der algorithmischen Geometrie zur automatischen Platzierung von Labeln übersetzen 3

6 Klassische Kartenbeschriftung Poor, sloppy, amateurisch type placement is irresponsible; it spoils even the best image and impedes reading. (E. Imhof 75) Viele andere Eigenschaften tragen zur Beschriftungsqualität bei: Kartografie hat lange Erfahrung mit Font, Farbe manueller Beschriftung in Karten. fett/kursiv etc. einige Richtlinien: Größe, Zeichenabstand neben, über oder unter dem Objekt Hier: nur geometrische Platzierung am besten oben rechts Überlappungen und Überdeckungen vermeiden eindeutige grafische Zuordnung c David Imus... Beispiele von J B Krygier! lässt sich leicht in ein Problem der algorithmischen Geometrie zur automatischen Platzierung von Labeln übersetzen 3

7 Geometrische Beschriftungsmodelle Geg: Ges: n Punkte in der Ebene und für jeden Punkt ein Label repräsentiert als Rechteck (bounding box) finde zulässige? Beschriftung für eine maximale Teilmenge der Punkte, so dass sich keine zwei Label schneiden (MaxNumber) settlement citytown hill village MaxNumber 4

8 Geometrische Beschriftungsmodelle Geg: Ges: oder n Punkte in der Ebene und für jeden Punkt ein Label repräsentiert als Rechteck (bounding box) finde zulässige? Beschriftung für eine maximale Teilmenge der Punkte, so dass sich keine zwei Label schneiden (MaxNumber) finde zulässige? Beschriftung aller Label, so dass sich keine zwei Label schneiden und die Schriftgröße maximal ist (MaxSize) settlement citytown hill village MaxNumber settlement town city hill village MaxSize 4

9 Geometrische Beschriftungsmodelle Geg: Ges: oder n Punkte in der Ebene und für jeden Punkt ein Label repräsentiert als Rechteck (bounding box) finde zulässige? Beschriftung für eine maximale Teilmenge der Punkte, so dass sich keine zwei Label schneiden (MaxNumber) finde zulässige? Beschriftung aller Label, so dass sich keine zwei Label schneiden und die Schriftgröße maximal ist (MaxSize) settlement citytown hill village MaxNumber settlement town city hill village MaxSize? Was ist eine zulässige Beschriftung? diskrete Modelle Slider-Modelle 1P 2P 4P 1S 2S 4S 4

10 Geometrische Beschriftungsmodelle Geg: Ges: oder n Punkte in der Ebene und für jeden Punkt ein Label repräsentiert als Rechteck (bounding box) finde zulässige? Beschriftung für eine maximale Teilmenge der Punkte, so dass sich keine zwei Label schneiden (MaxNumber) finde zulässige? Beschriftung aller Label, so dass sich keine zwei Label schneiden und die Schriftgröße maximal ist (MaxSize) settlement citytown hill village settlement town city hill HEUTE: MaxNumber im Slider-Modell village MaxNumber MaxSize? Was ist eine zulässige Beschriftung? diskrete Modelle Slider-Modelle 1P 2P 4P 1S 2S 4S 4

11 Teil 1: Komplexität 5

12 Komplexität Ziel: Das 4-Slider MaxNumber Beschriftungsproblem ist NP-vollständig. Idee: Reduktion von einer speziellen geometrischen 3-Sat Variante, sog. planares 3-Sat 6

13 Planares 3-Sat Erinnerung 3-Sat: Gegeben eine Boolesche Formel ' = c 1 ^ ^c m in konjunktiver Normalform mit drei Literalen pro Klausel c i = x _ y _ z ist es NP-vollständig zu entscheiden, ob ' eine erfüllende Belegung besitzt. 7

14 Planares 3-Sat Erinnerung 3-Sat: Gegeben eine Boolesche Formel ' = c 1 ^ ^c m in konjunktiver Normalform mit drei Literalen pro Klausel c i = x _ y _ z ist es NP-vollständig zu entscheiden, ob ' eine erfüllende Belegung besitzt. Def: Eine 3-Sat Formel ' heißt planar, falls der induzierte Variablen-Klausel-Graph H ' =(V,E) planar ist: V : Menge der Klauseln und Variablen E: Vorkommnisse von Variablen in Klauseln 7

15 Planares 3-Sat Erinnerung 3-Sat: Gegeben eine Boolesche Formel ' = c 1 ^ ^c m in konjunktiver Normalform mit drei Literalen pro Klausel c i = x _ y _ z ist es NP-vollständig zu entscheiden, ob ' eine erfüllende Belegung besitzt. Def: Eine 3-Sat Formel ' heißt planar, falls der induzierte Variablen-Klausel-Graph H ' =(V,E) planar ist: V : Menge der Klauseln und Variablen E: Vorkommnisse von Variablen in Klauseln Satz: Das 3-Sat Problem für planare Boolesche Formeln ist weiterhin NP-vollständig. (Lichtenstein 82) 7

16 Zeichnung von H ' H ' besitzt eine planare Zeichnung, bei der die Variablen auf einer Horizontalen angeordnet sind und die Klauseln E-förmig von oben oder unten zu den Variablen verbunden sind. x 1 _ x 2 _ x 3 x 1 _ x 3 _ x 4 x 1 x 2 x 3 x 4 x 1 _ x 2 _ x 4 x 2 _ x 3 _ x 4 8

17 Zeichnung von H ' H ' besitzt eine planare Zeichnung, bei der die Variablen auf einer Horizontalen angeordnet sind und die Klauseln E-förmig von oben oder unten zu den Variablen verbunden sind. x 1 _ x 2 _ x 3 x 1 _ x 3 _ x 4 x 1 x 2 x 3 x 4 x 1 _ x 2 _ x 4 x 2 _ x 3 _ x 4 Reduktionsidee: finde spezielle Punkt- und Labelmengen als Gadgets für Variablen und Klauseln in der Zeichnung, so dass gilt ' erfüllbar, alle Punkte in Labelinginstanz beschriftbar 8

18 Variablengadget 4PunktealsQuadratecken, leicht gedreht, Seitenlänge 1/2+ Label sind Quadrate der Länge

19 Variablengadget 4PunktealsQuadratecken, leicht gedreht, Seitenlänge 1/2+ Label sind Quadrate der Länge Wie könnte man die vier Punkte beschriften? 9

20 Variablengadget 4PunktealsQuadratecken, leicht gedreht, Seitenlänge 1/2+ Label sind Quadrate der Länge 1 zwei fundamental verschiedene Beschriftungen möglich Kodierung der Wahrheitswerte true (mit etwas Spiel) 9

21 Variablengadget 4PunktealsQuadratecken, leicht gedreht, Seitenlänge 1/2+ Label sind Quadrate der Länge 1 zwei fundamental verschiedene Beschriftungen möglich Kodierung der Wahrheitswerte false (fast fest) 9

22 Variablengadget 4PunktealsQuadratecken, leicht gedreht, Seitenlänge 1/2+ Label sind Quadrate der Länge 1 zwei fundamental verschiedene Beschriftungen möglich Kodierung der Wahrheitswerte Variablen-Gadgets im zick-zack Muster false (fast fest) 9

23 Variablengadget 4PunktealsQuadratecken, leicht gedreht, Seitenlänge 1/2+ Label sind Quadrate der Länge 1 zwei fundamental verschiedene Beschriftungen möglich Kodierung der Wahrheitswerte Variablen-Gadgets im zick-zack Muster false (fast fest) 9

24 Variablengadget 4PunktealsQuadratecken, leicht gedreht, Seitenlänge 1/2+ Label sind Quadrate der Länge 1 zwei fundamental verschiedene Beschriftungen möglich Kodierung der Wahrheitswerte Variablen-Gadgets im zick-zack Muster true (mit etwas Spiel) 9

25 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' Funktionsweise: falsche Literale drücken Labelkette nach oben wahre Literale ohne Druck zwei Label im Klauselzentrum selektieren wahres Literal Selektoren schneiden sich, alle Literale falsch 10

26 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' Funktionsweise: falsche Literale drücken Labelkette nach oben wahre Literale ohne Druck zwei Label im Klauselzentrum selektieren wahres Literal Selektoren schneiden sich, alle Literale falsch 10

27 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' Funktionsweise: falsche Literale drücken Labelkette nach oben wahre Literale ohne Druck zwei Label im Klauselzentrum selektieren wahres Literal Selektoren schneiden sich, alle Literale falsch 10

28 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' Funktionsweise: falsche Literale drücken Labelkette nach oben wahre Literale ohne Druck zwei Label im Klauselzentrum selektieren wahres Literal Selektoren schneiden sich, alle Literale falsch 10

29 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' a x c x a z c z b x Variablenanschluss: 3Adapterpunktejenach Vorzeichen des Literals i wahr: Label für b i unten falsch: Label für b i oben b z 10 x z

30 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' a x c x a z c z b x Variablenanschluss: 3Adapterpunktejenach Vorzeichen des Literals i wahr: Label für b i unten falsch: Label für b i oben b z 10 x z

31 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' a x c x a z c z b x Variablenanschluss: 3Adapterpunktejenach Vorzeichen des Literals i wahr: Label für b i unten falsch: Label für b i oben b z 10 x z

32 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' 10 x y z

33 Klauselgadget Nachbildung der E-Form der Klauseln aus Zeichnung von H ' 10 x y z

34 Komplexität Satz 1: Es ist NP-vollständig zu entscheiden, ob in einer gegebenen Instanz I im 4-Slider Modell alle Punkte beschriftet werden können, selbst wenn alle Label Einheitsquadrate sind. (van Kreveld, Strijk, Wol 99) 11

35 Komplexität Satz 1: Es ist NP-vollständig zu entscheiden, ob in einer gegebenen Instanz I im 4-Slider Modell alle Punkte beschriftet werden können, selbst wenn alle Label Einheitsquadrate sind. (van Kreveld, Strijk, Wol 99) Beweis: nach Konstruktion gilt Formel ' erfüllbar, Instanz I ' beschriftbar Größe von I ' quadratisch in Klauselanzahl 11

36 Komplexität Satz 1: Es ist NP-vollständig zu entscheiden, ob in einer gegebenen Instanz I im 4-Slider Modell alle Punkte beschriftet werden können, selbst wenn alle Label Einheitsquadrate sind. (van Kreveld, Strijk, Wol 99) Beweis: nach Konstruktion gilt Formel ' erfüllbar, Instanz I ' beschriftbar Größe von I ' quadratisch in Klauselanzahl Warum liegt das Problem in NP? 11

37 Teil 2: Approximationsalgorithmen 12

38 Greedy-Algorithmus Geg: Punktmenge P = {p 1,...,p n }, Menge rechteckiger Label L = {l 1,...l n } mit Höhe 1 und variabler Breite Modell: 4-Slider 13

39 Greedy-Algorithmus Geg: Punktmenge P = {p 1,...,p n }, Menge rechteckiger Label L = {l 1,...l n } mit Höhe 1 und variabler Breite Modell: 4-Slider Def: Für Menge P 0 von Punkten mit bereits platzierten Labeln heißt Label l für Punkt p 2 P \ P 0 linkestes Label (in P \ P 0 ), falls seine rechte Kante unter allen noch konfliktfrei platzierbaren Labeln am weitesten links liegt. linkestes Label 13

40 Greedy-Algorithmus Geg: Punktmenge P = {p 1,...,p n }, Menge rechteckiger Label L = {l 1,...l n } mit Höhe 1 und variabler Breite Modell: 4-Slider Def: Für Menge P 0 von Punkten mit bereits platzierten Labeln heißt Label l für Punkt p 2 P \ P 0 linkestes Label (in P \ P 0 ), falls seine rechte Kante unter allen noch konfliktfrei platzierbaren Labeln am weitesten links liegt. Algorithmus Greedy4S(P,L) while linkestes Label l existiert do platziere l linkest möglich linkestes Label 13

41 Übungen Algorithmus Greedy4S(P,L) while linkestes Label l existiert do platziere l linkest möglich 1) Bestimmen Sie den Approximationsfaktor von Greedy4S für Label mit Einheitshöhe 1. 14

42 Übungen Algorithmus Greedy4S(P,L) while linkestes Label l existiert do platziere l linkest möglich 1) Bestimmen Sie den Approximationsfaktor von Greedy4S für Label mit Einheitshöhe 1. 2) Nehmen Sie nun an, dass die Label unterschiedliche Höhen besitzen, wobei h min die kleinste Höhe und h max die größte Höhe bezeichnet. Welchen Approximationsfaktor liefert Greedy4S unter dieser Annahme? 14

43 Übungen Algorithmus Greedy4S(P,L) while linkestes Label l existiert do platziere l linkest möglich 1) Bestimmen Sie den Approximationsfaktor von Greedy4S für Label mit Einheitshöhe 1. 2) Nehmen Sie nun an, dass die Label unterschiedliche Höhen besitzen, wobei h min die kleinste Höhe und h max die größte Höhe bezeichnet. Welchen Approximationsfaktor liefert Greedy4S unter dieser Annahme? Lemma 1: Greedy4S berechnet eine Faktor-1/2 Approximation für Label mit Einheitshöhe und allgemein eine Faktor-(dh max /h min e + 1) 1 Approximation. 14

44 Laufzeit Eine naive Implementierung von Greedy4S benötigt O(n 3 ) Zeit. Ziel: Nutze geeignete geometrische Datenstrukturen um die Laufzeit auf O(n log n) zu senken. 15

45 Notation w i 1 Referenzpunkt p i l i 16

46 Notation p i 16

47 Notation p i 16

48 Notation p i 16

49 Notation p i 16

50 Notation p i 16

51 Notation p i 16

52 Notation p i 16

53 Notation p i 16

54 Notation p i 16

55 Notation mögl. Positionen h2i 1 v 2i 1 v 2i h 2i p i l i 16

56 Notation mögl. Positionen h2i 1 v 2i 1 v 2i h 2i p i l i l i l i l 0 i Label l i und erweitertes Label l i 16

57 Notation mögl. Positionen h2i 1 v 2i 1 v 2i h 2i p i l i l i l i l 0 i Label l i und erweitertes Label l i kein Referenzpunkt darf in l i liegen 16

58 Notation mögl. Positionen h2i 1 v 2i 1 v 2i h 2i p i l i l i l i l 0 i Label l i und erweitertes Label l i kein Referenzpunkt darf in l i liegen da immer linkestes Label platziert wird, kein Referenzpunkt links von l i 16

59 Notation mögl. Positionen h2i 1 v 2i 1 v 2i h 2i p i l i F Grenze F als right envelope der platzierten erweiterten Label 16

60 Grenze und linkestes Label Zur Bestimmung des nächsten linkesten Labels genügt es F und die Strecken h 2i 1,h 2i,v 2i 1,v 2i für alle Punkte p i rechts von F zu betrachten. Menge H der horizontalen Strecken Menge V der vertikalen Strecken H right H: rechts von F H int H: schneidenf 17

61 Grenze und linkestes Label Zur Bestimmung des nächsten linkesten Labels genügt es F und die Strecken h 2i 1,h 2i,v 2i 1,v 2i für alle Punkte p i rechts von F zu betrachten. Menge H der horizontalen Strecken Menge V der vertikalen Strecken H right H: rechts von F H int H: schneidenf V int,right V :enthaltenpunkt rechts von F linkeste Punkte im grünen Bereich der Strecken sind zulässige Kandidaten 17

62 Grenze und linkestes Label Zur Bestimmung des nächsten linkesten Labels genügt es F und die Strecken h 2i 1,h 2i,v 2i 1,v 2i für alle Punkte p i rechts von F zu betrachten. Menge H der horizontalen Strecken Menge V der vertikalen Strecken H right H: rechts von F H int H: schneidenf V int,right V :enthaltenpunkt rechts von F linkeste Punkte im grünen Bereich der Strecken sind zulässige Kandidaten Zur e zienten Verwaltung der linkesten Kandidaten benötigen wir mehrere geometrische Datenstrukturen. 17

63 Datenstrukturen 1) Red-Black Trees selbstbalancierender binärer Suchbaum der Größe O(n) Suchen, Einfügen, Löschen, Auftrennen, Konkatenieren in O(log n) Zeit 18

64 Datenstrukturen 1) Red-Black Trees selbstbalancierender binärer Suchbaum der Größe O(n) Suchen, Einfügen, Löschen, Auftrennen, Konkatenieren in O(log n) Zeit 2) Heaps baumbasierte Datenstruktur mit heap-eigenschaft key(parent(a)) apple key(a) für alle A Größe O(n) find-min in O(1) delete-min, Einfügen, Löschen in O(log n) 18

65 Datenstrukturen 3) Priority Search Trees (PST) (s. Kap in [BCKO08]) Datenstruktur für Bereichsabfragen der Form [ 1,x] [y, y 0 ] 19

66 Datenstrukturen 3) Priority Search Trees (PST) (s. Kap in [BCKO08]) Datenstruktur für Bereichsabfragen der Form [ 1,x] [y, y 0 ] Heap-Eigenschaft für x Suchbaum für y Größe O(n) Einfügen, Löschen in O(log n) Suchen in O(k + log n)

67 Datenstrukturen 3) Priority Search Trees (PST) (s. Kap in [BCKO08]) Datenstruktur für Bereichsabfragen der Form [ 1,x] [y, y 0 ] Heap-Eigenschaft für x Suchbaum für y Größe O(n) Einfügen, Löschen in O(log n) Suchen in O(k + log n)

68 Horizontale Strecken 1) Menge H right speichere für jede Strecke in H right deren rechten Endpunkt (= linkest mögliche Position der rechten Labelseite) Datenstruktur: min-heap H right 20

69 Horizontale Strecken 1) Menge H right speichere für jede Strecke in H right deren rechten Endpunkt (= linkest mögliche Position der rechten Labelseite) Datenstruktur: min-heap H right 2) Menge H int Red-Black Tree T i für jedes vertikale Segment f i von F speichere Strecken aus H int,dief i schneiden sortiert nach y-koordinaten in den Blättern von T i speichere zusätzlich Labelbreite an jedem Blatt an inneren Knoten minimale Labelbreite im Teilbaum min-heap H int für linkestes Label in jedem T i 20

70 Vertikale Strecken 3) Menge V int,right speichere Obermenge V 0 mit V int,right V 0 min-heap H V der Menge V 0 geordnet nach x-koordinaten der rechten Labelgrenzen falls Minimum in H V nicht in V int,right liegt, verwerfe es und wähle nächstes Minimum (lazy Strategie) 21

71 Vertikale Strecken 3) Menge V int,right speichere Obermenge V 0 mit V int,right V 0 min-heap H V der Menge V 0 geordnet nach x-koordinaten der rechten Labelgrenzen falls Minimum in H V nicht in V int,right liegt, verwerfe es und wähle nächstes Minimum (lazy Strategie) Das linkeste Label für den Greedy-Algorithmus ist eines der drei Minima von H right, H int und H V 21

72 Updates F f new 22

73 Updates F f new 1) Updates von H right 22

74 Updates F f new 1) Updates von H right! nutze PST für linke Endpunkte der Strecken 22

75 Updates F f new 1) Updates von H right 2) Updates von H int! nutze PST für linke Endpunkte der Strecken 22

76 Updates F f new 1) Updates von H right 2) Updates von H int! nutze PST für linke Endpunkte der Strecken! nutze PST für rechte Endpunkte der Strecken! red black trees und H int an neues F anpassen 22

77 Updates F f new 1) Updates von H right! nutze PST für linke Endpunkte der Strecken 2) Updates von H int 3) Updates von V int,right bzw. von V 0! nutze PST für rechte Endpunkte der Strecken! red black trees und H int an neues F anpassen 22

78 Updates F f new 1) Updates von H right! nutze PST für linke Endpunkte der Strecken 22 2) Updates von H int 3) Updates von V int,right bzw. von V 0! nutze PST für rechte Endpunkte der Strecken! red black trees und H int an neues F anpassen! lazy deletion in V 0,aberredblacktreeT V für vertikale Strecken von F mit min. x-wert in Teilbäumen zur Entscheidung, ob v 2 V int,right

79 Algorithmus von Van Kreveld, Strijk, Wol while H right, H int oder H V nicht leer do v find-min(h V ) while v links von F do delete-min(h V ); v find-min(h V ) l i linkestes Label aus H right, H int und H V füge l i zur Beschriftung hinzu f new rechte Kante von l i update F und T V mit f new suche mit der Region links von f new in P left und P right und update H right, P left, H int, T i s und P right wie beschrieben entferne alle Verweise auf p i aus den Datenstrukturen 23

80 Algorithmus von Van Kreveld, Strijk, Wol while H right, H int oder H V nicht leer do v find-min(h V ) while v links von F do delete-min(h V ); v find-min(h V ) l i linkestes Label aus H right, H int und H V füge l i zur Beschriftung hinzu f new rechte Kante von l i update F und T V mit f new suche mit der Region links von f new in P left und P right und update H right, P left, H int, T i s und P right wie beschrieben entferne alle Verweise auf p i aus den Datenstrukturen Satz 2: Der Algorithmus Greedy4S(P, L) lässt sich mit O(n log n) Zeitbedarf und O(n) Platzbedarf implementieren. Die Lösung enthält mindestens halb so viele Label wie die optimale Lösung. 23

81 Übungen 1) Überlegen Sie sich, wie man den O(n log n)-algorithmus auf Label mit unterschiedlichen Höhen anpassen kann. Ändert sich dadurch die Laufzeit? 24

82 Übungen 1) Überlegen Sie sich, wie man den O(n log n)-algorithmus auf Label mit unterschiedlichen Höhen anpassen kann. Ändert sich dadurch die Laufzeit? 2) Betrachten Sie nun ein beliebiges fixed-position Modell für Label mit Einheitshöhe. Modifizieren Sie den Algorithmus für diesen Fall. Ändern sich dadurch Laufzeit und/oder Approximationsfaktor? 24

83 Ausblick Van Kreveld, Strijk und Wol geben auch ein polynomielles Approximationsschema (PTAS) für das Beschriften im Slider-Modell an. Für Approximationsgüte (1 ") ist die Laufzeit O(n 4/"2 ). 27

84 Ausblick Van Kreveld, Strijk und Wol geben auch ein polynomielles Approximationsschema (PTAS) für das Beschriften im Slider-Modell an. Für Approximationsgüte (1 ") ist die Laufzeit O(n 4/"2 ). Ähnliche Ergebnisse (NP-vollständig, Approximation, PTAS) gelten auch für fixed-position-modelle, z.b. (Agarwal et al. 98) 27

85 Ausblick Van Kreveld, Strijk und Wol geben auch ein polynomielles Approximationsschema (PTAS) für das Beschriften im Slider-Modell an. Für Approximationsgüte (1 ") ist die Laufzeit O(n 4/"2 ). Ähnliche Ergebnisse (NP-vollständig, Approximation, PTAS) gelten auch für fixed-position-modelle, z.b. (Agarwal et al. 98) Slider-Modelle erlauben in realen Instanzen bis zu 15% mehr platzierte Labels als ein 4-Positionen-Modell. 4P 4S 27

Zusammenfassung. Benjamin Niedermann Vorlesung Algorithmische Kartografie

Zusammenfassung. Benjamin Niedermann Vorlesung Algorithmische Kartografie Vorlesung Algorithmische Kartografie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann Martin Nöllenburg 02.07.2015 1 Wiederholung Themen der

Mehr

Beschriftung in Dynamischen Karten

Beschriftung in Dynamischen Karten Vorlesung Algorithmische Kartografie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 04.06.2013 Was ist eine Landkarte? r e d o Dr. Martin No

Mehr

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.07.2012 Objekttypen in Bereichsabfragen y0 y0 y x x0 Bisher

Mehr

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.07.2012 Objekttypen in Bereichsabfragen y0 y x x0 Bisher

Mehr

Beschriftung in Dynamischen Karten

Beschriftung in Dynamischen Karten Vorlesung Algorithmische Kartografie Teil 2 LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 11.06.2013 Die Ära der dynamischen Karten Die meisten

Mehr

Punktbeschriftung in Dynamischen Karten

Punktbeschriftung in Dynamischen Karten Vorlesung Algorithmische Kartografie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann Martin Nöllenburg 28.05.2015 1 Übungen Nachtrag 1) Überlegen Sie sich, wie man den

Mehr

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.06.2014 1 Das Postamt-Problem b(p, q) = {x 2 R 2 : xp = xq } p q h(p, q) h(q, p) = {x

Mehr

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 22.05.2012 Nachtrag: Dynamische Bereichsabfragen Letzte Woche: kd-trees und Range-Trees

Mehr

Vorlesung Algorithmische Kartografie

Vorlesung Algorithmische Kartografie Übung Algorithmische Kartografie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann 18.07.2013 Wiederholung Themen der Vorlesung: Linienvereinfachung

Mehr

Geradenarrangements und Dualität von Punkten und Geraden

Geradenarrangements 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

Mehr

Bereichsabfragen. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Bereichsabfragen. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.05.2011 Geometrie in Datenbanken In einer Personaldatenbank

Mehr

Geradenarrangements und Dualität von Punkten und Geraden

Geradenarrangements 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

Mehr

Was bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone

Was 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

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 01. Dezember 2011 INSTITUT FÜR THEORETISCHE 0 KIT 01.12.2011 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der

Mehr

Einführung & Linienvereinfachung

Einführung & Linienvereinfachung Vorlesung Algorithmische Kartografie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 16.04.2013 AlgoKarto-Team Dozent Martin No llenburg noellenburg@kit.edu

Mehr

Polygontriangulierung

Polygontriangulierung Vorlesung Algorithmische Geometrie Polygone triangulieren LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 26.04.2011 Das Kunstgalerie-Problem

Mehr

Quadtrees und Meshing

Quadtrees und Meshing Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 24.06.2014 Motivation: Meshing von Platinenlayouts Zur Simulation der Hitzeentwicklung

Mehr

Weitere NP-vollständige Probleme

Weitere NP-vollständige Probleme Weitere NP-vollständige Probleme Wir betrachten nun folgende Reduktionskette und weisen dadurch nach, daß alle diese Probleme NP-hart sind (sie sind auch in NP und damit NP-vollständig). SAT p 3-SAT p

Mehr

Quadtrees und Meshing

Quadtrees und Meshing Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 19.06.2012 Motivation: Meshing von Platinenlayouts Zur Simulation der Hitzeentwicklung

Mehr

Komplexität von Algorithmen Musterlösungen zu ausgewählten Übungsaufgaben

Komplexität von Algorithmen Musterlösungen zu ausgewählten Übungsaufgaben Dieses Dokument soll mehr dazu dienen, Beispiele für die formal korrekte mathematische Bearbeitung von Aufgaben zu liefern, als konkrete Hinweise auf typische Klausuraufgaben zu liefern. Die hier gezeigten

Mehr

Algorithmische Geometrie 3. Schnitte von Liniensegmenten

Algorithmische Geometrie 3. Schnitte von Liniensegmenten Algorithmische Geometrie 3. Schnitte von Liniensegmenten JProf. Dr. Heike Leitte Computergraphik und Visualisierung Inhaltsverzeichnis 1. Einführung 2. Konvexe Hülle 3. Schnitte von Liniensegmenten 4.

Mehr

Polygontriangulierung

Polygontriangulierung Vorlesung Algorithmische Geometrie Polygone triangulieren INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.05.2012 Das Kunstgalerie-Problem Aufgabe: Installiere ein Kamerasystem

Mehr

Quadtrees und Meshing

Quadtrees und Meshing Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 21.06.2011 Motivation: Meshing von Platinenlayouts Zur Simulation

Mehr

Quad-trees. Benjamin Niedermann Übung Algorithmische Geometrie

Quad-trees. Benjamin Niedermann Übung Algorithmische Geometrie Übung Algorithmische Geometrie Quad-trees LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann 02.07.2014 Übersicht Übungsblatt 11 - Quadtrees Motivation:

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 11 (4.6.2014) Binäre Suchbäume II Algorithmen und Komplexität Binäre Suchbäume Binäre Suchbäume müssen nicht immer so schön symmetrisch sein

Mehr

Vorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg 19.04.2011

Vorlesung 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

Mehr

Theorie der Informatik Übersicht. Theorie der Informatik SAT Graphenprobleme Routing-Probleme. 21.

Theorie der Informatik Übersicht. Theorie der Informatik SAT Graphenprobleme Routing-Probleme. 21. Theorie der Informatik 19. Mai 2014 21. einige NP-vollständige Probleme Theorie der Informatik 21. einige NP-vollständige Probleme 21.1 Übersicht 21.2 Malte Helmert Gabriele Röger 21.3 Graphenprobleme

Mehr

Lösungen zur Vorlesung Berechenbarkeit und Komplexität

Lösungen zur Vorlesung Berechenbarkeit und Komplexität Lehrstuhl für Informatik 1 WS 009/10 Prof. Dr. Berthold Vöcking 0.0.010 Alexander Skopalik Thomas Kesselheim Lösungen zur Vorlesung Berechenbarkeit und Komplexität. Zulassungsklausur Aufgabe 1: (a) Worin

Mehr

Einführung (1/3) Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (1) Vorlesungen zur Komplexitätstheorie.

Einführung (1/3) Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (1) Vorlesungen zur Komplexitätstheorie. Einführung (1/3) 3 Wir verfolgen nun das Ziel, Komplexitätsklassen mit Hilfe von charakteristischen Problemen zu beschreiben und zu strukturieren Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit

Mehr

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme Theoretische Informatik Exkurs Rainer Schrader Exkurs: Komplexität von n Institut für Informatik 13. Mai 2009 1 / 34 2 / 34 Gliederung Entscheidungs- und Approximationen und Gütegarantien zwei Greedy-Strategien

Mehr

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) Berlin, 21. Februar 2013 Name:... Matr.-Nr.:... Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) 1 2 3 4 5 6 7 8 9 Σ Bearbeitungszeit: 90 min. max. Punktezahl:

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 13 (18.6.2014) Binäre Suchbäume IV (Rot Schwarz Bäume) Algorithmen und Komplexität Rot Schwarz Bäume Ziel: Binäre Suchbäume, welche immer

Mehr

13. Binäre Suchbäume

13. Binäre Suchbäume 1. Binäre Suchbäume Binäre Suchbäume realiesieren Wörterbücher. Sie unterstützen die Operationen 1. Einfügen (Insert) 2. Entfernen (Delete). Suchen (Search) 4. Maximum/Minimum-Suche 5. Vorgänger (Predecessor),

Mehr

Geometrische Algorithmen Segmentschnitt

Geometrische Algorithmen Segmentschnitt Folie 1 von 36 Geometrische Algorithmen Segmentschnitt Folie 2 von 36 Segmentschnitt Übersicht Zwei Segmente Lage zweier Segmente Prüfung auf Schnittfreiheit Formeln zum Geradenschnitt Feststellen des

Mehr

14. Rot-Schwarz-Bäume

14. Rot-Schwarz-Bäume Bislang: Wörterbuchoperationen bei binären Suchbäume effizient durchführbar, falls Höhe des Baums klein. Rot-Schwarz-Bäume spezielle Suchbäume. Rot-Schwarz-Baum mit n Knoten hat Höhe höchstens 2 log(n+1).

Mehr

Kochrezept für NP-Vollständigkeitsbeweise

Kochrezept für NP-Vollständigkeitsbeweise Kochrezept für NP-Vollständigkeitsbeweise Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 11. Januar 2010 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

Probleme aus NP und die polynomielle Reduktion

Probleme aus NP und die polynomielle Reduktion Probleme aus NP und die polynomielle Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 15. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

Voronoi-Diagramme und Delaunay-Triangulierungen

Voronoi-Diagramme und Delaunay-Triangulierungen Vorlesung Algorithmische Geometrie Voronoi-Diagramme & Delaunay-Triangulierungen LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 07.06.2011 Erinnerung:

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen Wintersemester 2016/17 13. Vorlesung Binäre Suchbäume Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I 2 Dynamische Menge verwaltet Elemente einer sich ändernden Menge

Mehr

Algorithmen I. Prof. Jörn Müller-Quade Institut für Theoretische Informatik Web: https://crypto.iti.kit.edu/index.php?

Algorithmen I. Prof. Jörn Müller-Quade Institut für Theoretische Informatik Web: https://crypto.iti.kit.edu/index.php? Algorithmen I Prof. Jörn Müller-Quade 07.06.2017 Institut für Theoretische Informatik Web: https://crypto.iti.kit.edu/index.php?id=799 (Folien von Peter Sanders) KIT Institut für Theoretische Informatik

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 10 (3.6.2014) Binäre Suchbäume I Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:

Mehr

Flussmethoden: orthogonales Graphenzeichnen

Flussmethoden: orthogonales Graphenzeichnen Algorithmen zur Visualisierung von Graphen INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze Martin Nöllenburg 04.2.203 Orthogonale Gitterzeichnungen 2 Orthogonale Gitterzeichnungen

Mehr

NP-vollständig - Was nun?

NP-vollständig - Was nun? Kapitel 4 NP-vollständig - Was nun? Wurde von einem Problem gezeigt, dass es NP-vollständig ist, ist das Problem damit nicht gelöst oder aus der Welt geschafft. In der Praxis muss es trotzdem gelöst werden.

Mehr

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Literatur. 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,

Mehr

Binäre Suchbäume. Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps

Binäre Suchbäume. Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps Binäre Suchbäume Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps Mengen n Ziel: Aufrechterhalten einer Menge (hier: ganzer Zahlen) unter folgenden Operationen: Mengen n Ziel: Aufrechterhalten einer

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 25. November 2014 INSTITUT FÜR THEORETISCHE 0 KIT 25.11.2014 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 23. November 2017 INSTITUT FÜR THEORETISCHE 0 23.11.2017 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität

Mehr

9 Minimum Spanning Trees

9 Minimum Spanning Trees Im Folgenden wollen wir uns genauer mit dem Minimum Spanning Tree -Problem auseinandersetzen. 9.1 MST-Problem Gegeben ein ungerichteter Graph G = (V,E) und eine Gewichtsfunktion w w : E R Man berechne

Mehr

Dualität + Quad-trees

Dualität + Quad-trees Übung Algorithmische Geometrie Dualität + Quad-trees LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Andreas Gemsa 30.06.2011 Übersicht Übungsblatt 10 - Dualität

Mehr

Einführung in die Informatik 2

Einführung in die Informatik 2 Einführung in die Informatik 2 NP-Vollständigkeit 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.

Mehr

Sichtbarkeitsgraphen. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Sichtbarkeitsgraphen. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 12.07.2011 Bewegungslanung für Roboter Ideen?? Problem: Gegeben

Mehr

Vorlesung Informatik 2 Algorithmen und Datenstrukturen

Vorlesung Informatik 2 Algorithmen und Datenstrukturen Vorlesung Informatik 2 Algorithmen und Datenstrukturen (18 Bäume: Grundlagen und natürliche Suchbäume) Prof. Dr. Susanne Albers Bäume (1) Bäume sind verallgemeinerte Listen (jedes Knoten-Element kann mehr

Mehr

Grundlagen der Informatik Kapitel 20. Harald Krottmaier Sven Havemann

Grundlagen der Informatik Kapitel 20. Harald Krottmaier Sven Havemann Grundlagen der Informatik Kapitel 20 Harald Krottmaier Sven Havemann Agenda Klassen von Problemen Einige Probleme... Approximationsalgorithmen WS2007 2 Klassen P NP NP-vollständig WS2007 3 Klasse P praktisch

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Prioritätswarteschlangen Maike Buchin 18. und 23.5.2017 Prioritätswarteschlange Häufiges Szenario: dynamische Menge von Objekten mit Prioritäten, z.b. Aufgaben, Prozesse, in der

Mehr

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Aufgabe 1. / 16 P Instruktionen: 1) In dieser Aufgabe sollen Sie nur die Ergebnisse angeben. Diese können Sie direkt bei den Aufgaben notieren. 2) Sofern

Mehr

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Ü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

Mehr

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

Kap. 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

Mehr

Das Rucksackproblem. Definition Sprache Rucksack. Satz

Das Rucksackproblem. Definition Sprache Rucksack. Satz Das Rucksackproblem Definition Sprache Rucksack Gegeben sind n Gegenstände mit Gewichten W = {w 1,...,w n } N und Profiten P = {p 1,...,p n } N. Seien ferner b, k N. RUCKSACK:= {(W, P, b, k) I [n] : i

Mehr

Übung zur Vorlesung Algorithmische Geometrie

Ü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

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 10 (27.5.2016) Binäre Suchbäume II Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:

Mehr

Welche Probleme können Rechner (effizient) lösen? Die P = NP Frage. Ideen der Informatik Kurt Mehlhorn

Welche Probleme können Rechner (effizient) lösen? Die P = NP Frage. Ideen der Informatik Kurt Mehlhorn Welche Probleme können Rechner (effizient) lösen? Die P = NP Frage Ideen der Informatik Kurt Mehlhorn Gliederung Ziele von Theorie Gibt es Probleme, die man prinzipiell nicht mit einem Rechner lösen kann?

Mehr

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 1 / 18 Was tun mit NP-harten Problemen? Viele praxisrelevante

Mehr

Die Klasse NP und die polynomielle Reduktion

Die Klasse NP und die polynomielle Reduktion Die Klasse NP und die polynomielle Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen Dezember 2011 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

Informatik II Vorlesung am D-BAUG der ETH Zürich

Informatik II Vorlesung am D-BAUG der ETH Zürich Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 9, 2.5.2016 [Nachtrag zu Vorlesung : Numerische Integration, Zusammenfassung Objektorientierte Programmierung] Dynamische Datenstrukturen II:

Mehr

Vorlesung Algorithmische Geometrie Konvexe Hülle im R 3

Vorlesung 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.

Mehr

Visualisierung von Graphen

Visualisierung von Graphen 1 Visualisierung von Graphen Teile-und-Herrsche-Algorithmen: Bäume und serienparallele Graphen 3. Vorlesung Sommersemester 2013 (basierend auf Folien von Martin Nöllenburg und Robert Görke, KIT) 2 Ankündigung

Mehr

Datenstrukturen Teil 2. Bäume. Definition. Definition. Definition. Bäume sind verallgemeinerte Listen. Sie sind weiter spezielle Graphen

Datenstrukturen Teil 2. Bäume. Definition. Definition. Definition. Bäume sind verallgemeinerte Listen. Sie sind weiter spezielle Graphen Bäume sind verallgemeinerte Listen Datenstrukturen Teil 2 Bäume Jeder Knoten kann mehrere Nachfolger haben Sie sind weiter spezielle Graphen Graphen bestehen aus Knoten und Kanten Kanten können gerichtet

Mehr

Konjunktive Normalform

Konjunktive Normalform Konjunktive Normalform Eine Formel α in konjunktiver Normalform hat die Form α k 1 k 2... k r. Die Klauseln k 1,..., k r sind Disjunktionen von Literalen, also Disjunktionen von Variablen oder negierten

Mehr

Punktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung

Punktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung Punktlokalisation 1. Trapez-Zerlegungen 2. Eine Suchstruktur 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung 4. Analyse Punktlokalisation Einteilung in Streifen Anfragezeit:

Mehr

Dynamische Mengen. Realisierungen durch Bäume

Dynamische Mengen. Realisierungen durch Bäume Dynamische Mengen Eine dynamische Menge ist eine Datenstruktur, die eine Menge von Objekten verwaltet. Jedes Objekt x trägt einen eindeutigen Schlüssel key[x]. Die Datenstruktur soll mindestens die folgenden

Mehr

Klausur Algorithmen und Datenstrukturen II 29. Juli 2013

Klausur Algorithmen und Datenstrukturen II 29. Juli 2013 Technische Universität Braunschweig Sommersemester 2013 Institut für Betriebssysteme und Rechnerverbund Abteilung Algorithmik Prof. Dr. Sándor P. Fekete Stephan Friedrichs Klausur Algorithmen und Datenstrukturen

Mehr

Maximale s t-flüsse in Planaren Graphen

Maximale s t-flüsse in Planaren Graphen Maximale s t-flüsse in Planaren Graphen Vorlesung Algorithmen für planare Graphen 6. Juni 2017 Guido Brückner INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg

Mehr

11. Elementare Datenstrukturen

11. Elementare Datenstrukturen 11. Elementare Datenstrukturen Definition 11.1: Eine dynamische Menge ist gegeben durch eine oder mehrer Mengen von Objekten sowie Operationen auf diesen Mengen und den Objekten der Mengen. Dynamische

Mehr

Datenstrukturen. einfach verkettete Liste

Datenstrukturen. einfach verkettete Liste einfach verkettete Liste speichert Daten in einer linearen Liste, in der jedes Element auf das nächste Element zeigt Jeder Knoten der Liste enthält beliebige Daten und einen Zeiger auf den nächsten Knoten

Mehr

Polynomielle Verifizierer und NP

Polynomielle Verifizierer und NP Polynomielle Verifizierer und NP Definition Polynomieller Verifizierer Sei L Σ eine Sprache. Eine DTM V heißt Verifizierer für L, falls V für alle Eingaben w Σ hält und folgendes gilt: w L c Σ : V akzeptiert

Mehr

Erfüllbarkeitstests. Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl.

Erfüllbarkeitstests. Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl. Erfüllbarkeitstests Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl. Grundlagen und diskrete Strukturen ) Ein für Formeln

Mehr

Geometrische Algorithmen

Geometrische 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

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Binärbaum Suchbaum Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 356 Datenstruktur Binärbaum Strukturrepräsentation des mathematischen Konzepts Binärbaum

Mehr

Logik für Informatiker

Logik für Informatiker Vorlesung Logik für Informatiker 5. Aussagenlogik Normalformen Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Normalformen Definition: Literal Atom (aussagenlogische

Mehr

2. 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 2 Woche: Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 24/ 44 Zwei Beispiele a 0

Mehr

Sudoku ist NP-vollständig

Sudoku ist NP-vollständig Sudoku ist NP-vollständig Seminar über Algorithmen und Komplexität Freie Universität Berlin Institut für Informatik SS 007 Sarah Will 8.07.007 Einführung Sudoku ist ein japanisches Logikrätsel und hat

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

4 Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine

Mehr

Musterlösung Datenstrukturen und Algorithmen

Musterlösung Datenstrukturen und Algorithmen Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik Peter Widmayer

Mehr

Allgemeingültige Aussagen

Allgemeingültige Aussagen Allgemeingültige Aussagen Definition 19 Eine (aussagenlogische) Formel p heißt allgemeingültig (oder auch eine Tautologie), falls p unter jeder Belegung wahr ist. Eine (aussagenlogische) Formel p heißt

Mehr

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2012/13 Prof. Dr. Sándor Fekete 4.4 Binäre Suche Aufgabenstellung: Rate eine Zahl zwischen 100 und 114! Algorithmus 4.1 INPUT: OUTPUT:

Mehr

1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!

1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung! Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 23/4 ILKD Prof. Dr. D. Wagner 2. Februar 24. Klausur zur Vorlesung Informatik III Wintersemester 23/24 Mit Lösung! Beachten Sie:

Mehr

3-Färbbarkeit. Korollar: Zu Entscheiden, ob ein Graph k-färbbar ist mit k 3, ist NP-vollständig.

3-Färbbarkeit. Korollar: Zu Entscheiden, ob ein Graph k-färbbar ist mit k 3, ist NP-vollständig. 3-Färbbarkeit Wir wissen bereits, dass in polynomieller Zeit entschieden werden kann, ob ein Graph 2-färbbar ist. Satz: Zu Entscheiden, ob ein Graph 3-färbbar ist, ist NPvollständig. Beweis: Reduktion

Mehr

Geometrische Algorithmen

Geometrische 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

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Heaps Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 469 Prioritätswarteschlange Problem Häufig ist das Prinzip einer einfachen Warteschlangen-Datenstruktur

Mehr

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können.

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. 8. A & D - Heapsort Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. Genauer werden wir immer wieder benötigte Operationen durch Datenstrukturen unterstützen.

Mehr

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Heaps. Vorlesung 8: Heapsort (K6) Joost-Pieter Katoen. 7. Mai 2015

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Heaps. Vorlesung 8: Heapsort (K6) Joost-Pieter Katoen. 7. Mai 2015 Datenstrukturen und Algorithmen Vorlesung 8: (K6) 1 Joost-Pieter Katoen Lehrstuhl für Informatik Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-15/dsal/ 7. Mai 015 3 Joost-Pieter

Mehr

Theoretische Informatik SS 03 Übung 11

Theoretische Informatik SS 03 Übung 11 Theoretische Informatik SS 03 Übung 11 Aufgabe 1 Zeigen Sie, dass es eine einfachere Reduktion (als die in der Vorlesung durchgeführte) von SAT auf 3KNF-SAT gibt, wenn man annimmt, dass die Formel des

Mehr

Hallo Welt für Fortgeschrittene

Hallo Welt für Fortgeschrittene Hallo Welt für Fortgeschrittene Geometrie II Tiago Joao Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Inhalt Koordinatenkompression Beispiel: SafeJourney Typische compress-funktion Bereichssuche

Mehr

Seminar. Das Steinerbaumproblem

Seminar. Das Steinerbaumproblem Seminar Das Steinerbaumproblem Philipp Gillitzer Matrikelnr.: 51829 Studiengang Informatik(IT-Sicherheit) Semester 6 Hochschule Aalen Wintersemester 16/17 1 Inhaltsverzeichnis 1 Einleitung 3 2 Grundlagen

Mehr

Algorithmen II Vorlesung am

Algorithmen 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

Mehr

Übungsblatt Nr. 5. Lösungsvorschlag

Übungsblatt Nr. 5. Lösungsvorschlag Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Dirk Achenbach Tobias Nilges Vorlesung Theoretische Grundlagen der Informatik Übungsblatt Nr. 5 Aufgabe 1: Eine schöne Bescherung (K)

Mehr

Künstliche Intelligenz Logische Agenten & Resolution

Künstliche Intelligenz Logische Agenten & Resolution Künstliche Intelligenz Logische Agenten & Resolution Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Inferenz-Algorithmus Wie könnte ein

Mehr

Kapitel : Andere dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2013/14. Prof. Dr. Sándor Fekete

Kapitel : Andere dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2013/14. Prof. Dr. Sándor Fekete Kapitel 4.8-4.11: Andere dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2013/14 Prof. Dr. Sándor Fekete 1 4.6 AVL-Bäume 2 4.8 Rot-Schwarz-Bäume Rudolf Bayer Idee: Verwende Farben, um den

Mehr

Mergeable Heaps. C. Komusiewicz 7.1 Fibonacci-Heaps: Überblick 117

Mergeable Heaps. C. Komusiewicz 7.1 Fibonacci-Heaps: Überblick 117 C. Komusiewicz 7.1 Fibonacci-Heaps: Überblick 117 Mergeable Heaps Erweiterung von Standardheaps, die die folgenden fünf Operationen unterstützen. Make-Heappq liefert neuen, leeren Heap. InsertpH, xq fügt

Mehr

Kap. 4.7 Skiplisten. 14./15. VO DAP2 SS /16. Juni 2009

Kap. 4.7 Skiplisten. 14./15. VO DAP2 SS /16. Juni 2009 Kap. 4.7 Skiplisten Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 14./15. VO DAP2 SS 2008 9./16. Juni 2009 1 2. Übungstest Termin: Di 16. Juni 2009 im AudiMax,

Mehr