Experimente. Zahlenbeispiel. Cache-Optimale Algorithmen. Warum Funktionieren Caches? Cache-Oblivious Speichermodell. Characterisierung von Caches
|
|
- Helmuth Kappel
- vor 7 Jahren
- Abrufe
Transkript
1 M=10 9, B=10 6 Zahlenbeispiel Für c=1/7 folgt daraus Experimente 20 Millionen Operationen auf Priority Queue mit verschiedenen Implementierungen Datenstrukturen ohne Rücksicht auf Paging-Effekte (Fibonacci Heaps u.s.w.) brechen total ein Externe Radix Heaps am Besten, aber funktionieren nur wenn Schlüssel der mit Del_Min entfernten Elemente monoton fallen Externe Array heaps fast 9 mal schneller bei Del_Min aber Faktor 10 langsamer bei Insert L = Cache-Optimale Algorithmen Cache zwischen Arbeitsspeicher und Prozessor Beinhaltet Kopie von kleinem Teil des Arbeitsspeichers Daten im Cache können vom Prozessor ohne Zeitverzögerung verarbeitet werden (Cache Hit) Benötigte Daten nicht im Cach: müssen aus Hauptspeicher geladen werden (Cache Miss) 100 Mal langsamer als Cache Prozessor muss warten Warum Funktionieren Caches? Zeitliche Lokalität: Gleicher Bereich des Speichers wird von Programm innerhalb kurzer Zeit mehrmals benötigt Oft benötigte Daten schon vorher in Cache geladen und sind noch drin Örtliche Lokalität: Speicherbereiche die Programm benötigt liegen im Speicher nahe beieinander Daten werden Blockweise in Cache geladen Weniger loads nötig 3 4 Characterisierung von Caches Seitengröße C: Anzahl Bytes pro Seite (Block) des Cache Kapazität Z: Gesamtkapazität in Bytes Vielfaches von C Ein Load transferiert C Bytes vom Hauptspeicher zum Cache Ähnliche Situation wie bei Externspeicher Lösungsstrategien von Externspeicher funktionieren prinzipiell auch Cache-Oblivious Speichermodell In modernen Computern mehrere Speicherschichten Register L1 Cache L2 Cache Arbeitsspeicher Externspeicher Brauchen universell anwendbares Modell 5 6
2 Cache-Oblivious Speichermodell Unabhängig von Anzahl der Speicher- Ebenen Seitengrößen und Speichergrößen werden als unbekannt angenommen Algorithmen die für CO-Modell optimiert wurden funktionieren unabhängig von tatsächlicher Speicherhierarchie Portabilität der Algorithmen auf beliebige Systeme Ideales Cache-Modell von Frigo et al. Cache: Z Bytes Hauptspeicher: Bytes Cache Zeile: L Bytes Zeile kann in einem Schritt von/zum Hauptspeicher bewegt werden Annahme: Cache ist hoch 7 8 Ideales Cache-Modell von Frigo et al. Idealer Cache: Ersetzt jeweils die Zeile im Cache deren nächster Zugriff am weitesten in der Zukunft liegt Parameter der Algorithmenanalyse: 1. Anzahl CPU-Operationen im RAM-Modell 2. Cache-Komplexität: Anzahl Cache Misses abhängig von Z und L Ideales Cache-Modell von Frigo et al. Cache-Aware Algorithmus: Verhalten abhängig von Z und L Cache-Oblivious Algorithmus: Verhalten unabhängig von Z und L Cache-Oblivious Algorithmus optimal für Hierarchie mit 2 Ebenen Algorithmus auch optimal bei mehreren Ebenen 9 10 Beispiel Matrix-Multiplikation Cache-Aware Algorithmus Eingabe: Zwei N N Matrizen A und B Ausgabe: N N Matrix C mit Annahme: N sehr viel größer als L 11 12
3 Wahl von s Wählen s so, dass MULT komplett im Cache ausgeführt werden kann Parameter s muss klein genug sein, damit 3 Matrizen mit Größe s s in den Cache passen Wahl von s Anzahl Cache-Zeilen, die von s s Untermatrix besetzt sind: Haben angenommen: Also gilt: Worst Case Cache Misses bei Aufruf MULT: Gesamte Cache-Komplexität Komplette Matrix muss eingelesen werden Es gibt 3 geschachtelte Schleifen die n/s Mal durchlaufen werden In jeder Schleife 2 s s Matrizen multiplizieren Cache-Oblivious Algorithmus Wollen m n Matrix A mit n p Matrix B Multiplizieren Algorithmus soll unabhängig von Cache-Parametern sein Algorithmus ist rekursiv Folgt Teile und Herrsche Prinzip Fall1: m max{n,p} Fall 2: n max{m,p} Spalte Matrix A horizontal in Matrizen A 1 und A 2 A 1 hat dm/2e Zeilen A 2 hat bm/2c Zeilen Aufrufe A 1 B und A 2 B denn: Teile A vertikal in A 1 und A 2 A 1 hat dn/2e Spalten A 2 hat bn/2c Spalten Teile B horizontal in B 1 und B 2 B 1 hat dn/2e Zeilen B 2 hat bn/2c Zeilen Nutze aus: 17 18
4 Fall 3: p max{m,n} Spalte B vertikal B 1 hat dp/2e Spalten B 2 hat bp/2c Spalten Nutze aus: Anzahl Cache-Misses Fall 4: m = n = p = 1 Multipliziere A und B als normale Zahlen Begründung für Cache-Effizienz Algorithmus von Strassen Teile und Herrsche vom Prinzip her Cache-freundlich: Paßt ein Teilproblem komplett in Cache, sind Daten für alle Unterprobleme schon im Cache Teilproblem kann dann ohne Cache- Misses gelöst werden 21 Auch Teile und Herrsche Jede Matrix wird in 4 möglichst gleich große Teilmatrizen zerlegt Sehr aufwändig zu implementieren In Praxis erst ab 10 6 schneller als vorgestellter Algorithmus Anzahl Cache-Misses Geht es noch besser als n log7? 22 Optimierungsprobleme Kapitel 4 Optimierungsalgorithmen Viele zulässige Lösungen Jeder Lösung ist Wert zugeordnet Ziel: Finde zulässige Lösung mit größtem Wert Kombinatorisches Optimierungsproblem: Menge der zulässigen Lösungen ist endlich 23 24
5 Kombinatorisches Optimierungsproblem Grundmenge: endliche Menge E Zulässige Lösungen: I µ 2 E Gewichtungsfunktion: c: E! K Zielfunktion von F2 I: c(f):= e2 F c(e) Aufgabe: Finde I * 2 I mit c(i * ) maximal bzw. minimal 25 Beispiel TSP (Traveling Salesman Problem) Gegeben: V= Menge von n Punkte im (zweidimensionalen) Raum Gesucht: kürzeste Rundtour, die alle Punkte besucht Grundmenge: Menge aller Kanten im vollständigen Graphen K n =(V,E) Zulässige Lösungen: Kantenmengen, die Tour durch alle Punkte beschreiben Zielfunktionswert: Summe der Kantenlängen der Kanten in Tour 26 Beispiel für nicht-kombinatorisches Optimierungsproblem Lösungsmenge ist endlich weil diskret und durch Ungleichungen beschränkt Aber: Grundmenge nicht endlich ) kein kombinatorisches Optimierungsproblem Wenn x 1,x 2 2 {0,1} ist es kombinatorisch Warum Schwierig? Typischerweise Anzahl der Lösungen exponentiell in Eingabegröße Deshalb Aufzählen der Lösungen zu aufwendig TSP: Eingabe sind n Städte mit Koordinaten Anzahl der möglichen Rundtouren Lineare Optimierungsprobleme Lineares Programm Eingabe: positive ganze Zahlen m,n b 2 R m c 2 R n A 2 R m n Zielfunktion Gesucht: x * 2 R n mit c T x minimal (maximal) unter allen Vektoren mit Ax b Restriktionen bzw. Nebenbedingungen 29 Zulässiger Bereich: 30
6 von Problemen Probleme aus der Praxis oft als lineare Programme beschreibbar Geht das nicht kann man Problem oft leicht abändern so dass Problem linear aber Lösung immer noch nützlich Beispiele: Produktionsplanung Portfolio-Optimierung Transportprobleme Reales Beispiel: Raffinerie Aus Rohöl verschiedene Produkte herstellen Verschieden Crackprozesse produzieren unterschiedliche Mengen der Endprodukte Eingabe: Bedarfe an Endprodukten Kosten und Endprodukte der Crackprozesse Gesucht: Welche Crackprozesse in welchem Umfang anwenden um Kosten zu minimieren Reales Beispiel: Raffinerie Endprodukte: 1. Schweröl: S 2. Mittelschweres Öl: M 3. Leichtöl: L Crackprozesse: 1. Crackprozess 1: Liefert 2S, 2M, 1L kostet 3$ 2. Crackprozess 2: Liefert 1S, 2M, 4L kostet 5$ Bedarfe: 3S, 5M, 4L 33 Variablen für Anwendung Crackprozesse: 1. x 1 : Produktionsniveau Crackprozess 1 2. x 2 : Produktionsniveau Crackprozess 2 Bedeutung x 1 =2,5: Prozess x 1 wird auf 2,5 Einheiten Rohöl angewendet Kostet 2,5*3 $ Liefert 2,5*2 S, 2,5*2 M und 2,5*1 L Jeder nicht-negative Vektor (x 1,x 2 )2 R 2 bezeichnet Produktionsniveau der Crackprozesse 34 Es müssen 3 Einheiten S produziert werden 2x 1 +x 2 3 Es müssen 5 Einheiten M produziert werden 2x 1 +2x 2 5 Es müssen 4 Einheiten L produziert werden x 1 +4x 2 4 Die Kosten der Produktion sind: z=3x 1 +5x
7 Diätproblem Nahrungsmittel Gegeben: Nahrungsmittel Kalorien Proteine Calcium Preis in $ Verschiedene Nahrungsmittel mit Nährstoffgehalten und Preisen Bedarf an Nährstoffen Gesucht: Menge von jedem Nahrungsmittel so dass alle Bedarfe gedeckt sind und Gesamtsumme der Preise möglichst niedrig Haferflocken Huhn Eier Milch Kirschkuchen Bohnen Lineares Programm Variablen: Für jedes Nahrungsmittel gekaufte Menge Nebenbedingungen: Für jeden Nährstoff muss Summe der Nahrungsmittel-Variablen multipliziert mit Nährstoffgehalt die Mindestmenge erreichen Zielfunktion: Minimieren der Summe der Nahrungsmittel- Variablen multipliziert mit Preis Zusätzlich: Verkaufen nicht vorhandener Lebensmittel ist nicht erlaubt Wenn Haferflocken nurmit einerhalben Einheit Milch schmecken: 39 40
One of the few resources increasing faster than the speed of computer hardware is the amount of data to be processed. Bin Hu
Bin Hu Algorithmen und Datenstrukturen 2 Arbeitsbereich fr Algorithmen und Datenstrukturen Institut fr Computergraphik und Algorithmen Technische Universität Wien One of the few resources increasing faster
MehrAlgorithm Engineering. Alexander Kröller, Abteilung Algorithmik, IBR
#7 Terminchaos Nächste Vorlesungen: 27. 5. Vertretung durch Prof. Fekete 3. 6. Exkursionswoche 10. 6. Vertretung durch N.N. 17. 6. back to normal... Experiment Durchlaufe zwei gleichgrosse Arrays: Sortierte
MehrKapitel 3. Speicherhierachie. Beispiel für Cache Effekte. Motivation Externspeicheralgorithmen. Motivation Für Beachtung von Cache Effekten
Kapitel 3 Algorithmen für große Datenmengen Motivation Externspeicheralgorithmen Es werden immer größere Datenmengen gesammelt (WWW, Medizin, Gentechnik ) Daten müssen auf großen externen Massenspeichern
MehrDATENSTRUKTUREN UND ALGORITHMEN
DATENSTRUKTUREN UND ALGORITHMEN 2 Ist die Datenstruktur so wichtig??? Wahl der Datenstruktur wichtiger Schritt beim Entwurf und der Implementierung von Algorithmen Dünn besetzte Graphen und Matrizen bilden
MehrUnimodularität. Kapitel 1. Peter Becker (H-BRS) Operations Research II Wintersemester 2015/16 11 / 206
Kapitel 1 Unimodularität Peter Becker (H-BRS) Operations Research II Wintersemester 2015/16 11 / 206 Inhalt 1 Unimodularität Total unimodulare Matrizen Inzidenzmatrix Optimierungsprobleme auf Graphen Peter
MehrKap. 4: Lineare Programmierung
Kap. 4: Lineare Programmierung Professor Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 13./14. VO A&D WS 08/09 27.11./2.12.2008 Petra Mutzel Alg. & Dat.
Mehr7.1 Matrizen und Vektore
7.1 Matrizen und Vektore Lineare Gleichungssysteme bestehen aus einer Gruppe von Gleichungen, in denen alle Variablen nur in der 1. Potenz vorkommen. Beispiel Seite 340 oben: 6 x 2 = -1 + 3x 2 = 4 mit
MehrWiMa-Praktikum 1. Woche 8
WiMa-Praktikum 1 Universität Ulm, Sommersemester 2017 Woche 8 Lernziele In diesem Praktikum sollen Sie üben und lernen: Besonderheiten der For-Schleife in Matlab Wiederholung des Umgangs mit Matrizen und
MehrOptimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung
Optimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung Dr. Nico Düvelmeyer Freitag, 24. Juni 2011 1: 1 [1,1] Inhaltsübersicht für heute 1 Dualität Motivation Duales LP Dualitätssätze
Mehr2. Optimierungsprobleme 6
6 2. Beispiele... 7... 8 2.3 Konvexe Mengen und Funktionen... 9 2.4 Konvexe Optimierungsprobleme... 0 2. Beispiele 7- Ein (NP-)Optimierungsproblem P 0 ist wie folgt definiert Jede Instanz I P 0 hat einen
MehrComputer Science Department - High Performance and Web Computing Group. Optimierungsprobleme
Optimierungsprobleme Häufig in Alltagssituationen anzutreffen (z.b. Kauf eines Gerätes) Optimierungsprobleme (OPs) sind Probleme, die i.a. viele zulässige Lösungen besitzen Jeder Lösung ist ein bestimmter
MehrEinführung in die Programmiersprache C
Einführung in die Programmiersprache C 6 Cache-freundliche Programmierung (1) Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Quadratische Matrizen Musterlösung
MehrPerlen der Informatik I Wintersemester 2012 Aufgabenblatt 7
Technische Universität München WS 2012 Institut für Informatik Prof. Dr. H.-J. Bungartz Prof. Dr. T. Huckle Prof. Dr. M. Bader Kristof Unterweger Perlen der Informatik I Wintersemester 2012 Aufgabenblatt
MehrDas Linear Ordering Problem Exakte Lösungsverfahren. für NP-schwierige. VO Algorithm Engineering
Das Linear Ordering Problem Exakte Lösungsverfahren VO Algorithm Engineering für NP-schwierige Professor Dr. Petra Mutzel kombinatorische Lehrstuhl für Algorithm Engineering, LS11 Optimierungsprobleme
Mehr( )= c+t(n-1) n>1. Stand der Vorlesung Komplexität von Algorithmen (Kapitel 3)
Stand der Vorlesung Komplexität von Algorithmen (Kapitel 3) Motivation: IT gestützte Steuerung, Überwachung, Fertigung, Produktion,. : erfordert effiziente Berechnungsvorschriften Ziel: Methoden kennen
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 31.01.2013 Algorithmen für externen Speicher INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales
MehrNumerische Lineare Algebra
Numerische Lineare Algebra Vorlesung 7 Prof. Dr. Klaus Höllig Institut für Mathematischen Methoden in den Ingenieurwissenschaften, Numerik und Geometrische Modellierung SS 200 Prof. Dr. Klaus Höllig (IMNG)
MehrKapitel 1 Parallele Modelle Wie rechnet man parallel?
PRAM- PRAM- DAG- R UND R Coles und Kapitel 1 Wie rechnet man parallel? Vorlesung Theorie Paralleler und Verteilter Systeme vom 11. April 2008 der Das DAG- Das PRAM- Das werkmodell Institut für Theoretische
MehrDas Multi Traveling Salesman Problem
Das Multi Traveling Salesman Problem Harald Voit Seminar Ganzzahlige Optimierung 19. bis 21. Januar 2007 Wallenfels Das Multi Traveling Salesman Problem p.1/26 Übersicht Vom TSP zum ATSP Das Multi Traveling
MehrVorlesung 5: DATENSTRUKTUREN UND ALGORITHMEN
Vorlesung 5: DATENSTRUKTUREN UND ALGORITHMEN 125 Motivation! Wahl der Datenstruktur wichtiger Schritt beim Entwurf und der Implementierung von Algorithmen! Dünn besetzte Graphen und Matrizen bilden keine
MehrKombinatorische Optimierung
Kombinatorische Optimierung Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales
MehrDualitätssätze der linearen Optimierung
Kapitel 9 Dualitätssätze der linearen Optimierung Sei z = c T x min! Ax = b 9.1 x 0 mit c, x R n, b R m, A R m n ein lineares Programm. Definition 9.1 Duales lineares Programm. Das lineare Programm z =
MehrKapitel 4. Optimierungsalgorithmen. Technische Universität Wien. Gunnar Klau Technische Universität Wien. Institut für Computergraphik und Algorithmen
Kapitel 4 Optimierungsalgorithmen Gunnar Klau Institut für Computergraphik und Algorithmen 1 Gliederung Kombinatorische vs. Ganzzahlige Optimierung Exakte Verfahren Branch-and-Bound Schnittebenenverfahren
MehrH. Meyerhenke: Kombinatorische Optimierung. Paralleles Rechnen, Institut für Theoretische Informatik, Fakultät für Informatik
VORLESUNG 13 Smoothed Analysis des Simplex-Algorithmus Nach Heiko Röglin, Universität Bonn, Vorlesungsskript Introduction to Smoothed Analysis vom 9. Januar 2012 78 Wiederholung Simplex-Algorithmus! Korrektheit:!
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 20. November 2014 INSTITUT FÜR THEORETISCHE 0 KIT 20.11.2014 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der
Mehr1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2008/2009
. Klausur zur Vorlesung Algorithmentechnik Wintersemester 8/9 Lösung! Beachten Sie: Bringen Sie den Aufkleber mit Ihrem Namen und Matrikelnummer auf diesem Deckblatt an und beschriften Sie jedes Aufgabenblatt
MehrStand der Vorlesung Komplexität von Algorithmen (Kapitel 3)
Stand der Vorlesung Komplexität von Algorithmen (Kapitel 3) Technische Universität München Motivation: IT gestützte Steuerung, Überwachung, Fertigung, Produktion,. : erfordert effiziente Berechnungsvorschriften
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
MehrKapitel 5. Peter Becker (H-BRS) Operations Research I Sommersemester / 298
Kapitel 5 Dualität Peter Becker (H-BRS) Operations Research I Sommersemester 2014 241 / 298 Inhalt 5 Dualität Dualitätssätze Zweiphasen-Simplexalgorithmus Peter Becker (H-BRS) Operations Research I Sommersemester
MehrAlgebraische und arithmetische Algorithmen
Kapitel 1 Algebraische und arithmetische Algorithmen 1.1 Das algebraische Berechnungsmodell Struktur: Körper (oder Ring) mit den Operationen +,,, (/) Eingabe: endliche Folge von Zahlen Ausgabe: endliche
MehrLineare Optimierung und Simplex-Algorithmus
Lineare Optimierung und Simplex-Algorithmus Problemstellung Beispiel : Unser Unternehmen verfügt über drei Maschinen A, B, C, mit denen zwei verschiedene Produkte P, P2 hergestellt werden. Die Maschinen
MehrTheoretische 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
Mehr2. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2008/2009
2. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2008/2009 Lösung! Beachten Sie: Bringen Sie den Aufkleber mit Ihrem Namen und Matrikelnummer auf diesem Deckblatt an und beschriften Sie jedes
MehrKapitel 9: Lineare Programmierung Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
Mehr3.4 Exakte Verfahren für (Gemischt-) Ganzzahlige Optimierung
32KAPITEL 3. NP-SCHWIERIGE KOMBINATORISCHE OPTIMIERUNGSPROBLEME n Anzahl der Ungleichungen 3 8 4 20 5 40 6 910 7 87.472 8 >488.602.996 Tabelle 3.1: Anzahl der Ungleichungen des LOP-Polytops für n 8 3.4
MehrProbleme 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
MehrVORLESUNG 14 Lineare Optimierung, Dualität (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt)
VORLESUNG 14 Lineare Optimierung, Dualität (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt) 96 H. Meyerhenke: Kombinatorische Optimierung Dualität bei linearen Programmen Def.: Es sei (L): c T x max
MehrBlockmatrizen und -Algorithmen
Grundlagen 15.04.2011 Grundlagen Inhaltsverzeichnis 1 Grundlagen Blockmatrizen Untermatrizen 2 3 4 Blockmatrizen Grundlagen Blockmatrizen Untermatrizen Allgemein kann man sowie Zeilen als auch Spalten
Mehr3 Systeme linearer Gleichungen
3 Systeme linearer Gleichungen Wir wenden uns nun dem Problem der Lösung linearer Gleichungssysteme zu. Beispiel 3.1: Wir betrachten etwa das folgende System linearer Gleichungen: y + 2z = 1 (1) x 2y +
MehrAlgorithmen und Datenstrukturen 1 VL Übungstest WS Januar 2011
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 2. Übungstest WS 2010 14. Januar
MehrDer folgende Vortrag basiert auf dem Text A Polynomial Time Algorithm for the N-Queens Problem von Rok Sosic und Jun Gu aus dem Jahre 1990.
Ein polynomieller Algorithmus für das N-Damen Problem 1 Einführung Der folgende Vortrag basiert auf dem Text A Polynomial Time Algorithm for the N-Queens Problem von Rok Sosic und Jun Gu aus dem Jahre
Mehr2. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2006/ April 2007
2. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2006/2007 12. April 2007 Hier Aufkleber mit Name und Matrikelnr. anbringen Vorname: Nachname: Matrikelnummer: Beachten Sie: Bringen Sie den Aufkleber
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,
MehrInformatik I WS 07/08 Tutorium 24
Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 31.01.08 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Organisatorisches Anmeldung Hauptklausur : allerspätestens
MehrInnere-Punkt-Methoden
Innere-Punkt-Methoden Johannes Stemick 26.01.2010 Johannes Stemick () Innere-Punkt-Methoden 26.01.2010 1 / 28 Übersicht 1 Lineare Optimierung 2 Innere-Punkt-Methoden Path-following methods Potential reduction
MehrOptimale Steuerung 1 Prozessoptimierung 1
Optimale Steuerung 1 Prozessoptimierung 1 Kapitel 2: Lineare Optimierung Prof. Dr.-Ing. Pu Li Fachgebiet Simulation und Optimale Prozesse (SOP) Lineare Algebra (Mathematische Grundlagen) 2 Beispiel: Produktionsplanung
MehrEcken des Zuordnungsproblems
Total unimodulare Matrizen Ecken des Zuordnungsproblems Definition.6 Ein Zuordnungsproblem mit den Vorzeichenbedingungen 0 apple x ij apple für i, j =,...,n statt x ij 2{0, } heißt relaxiertes Zuordnungproblem.
Mehr(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss.
(a, b)-bäume / 1. Szenario: Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. Konsequenz: Kommunikation zwischen Hauptspeicher und Festplatte - geschieht nicht Byte für Byte,
MehrOptimierung. Optimierung. Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung Fabian Kuhn
Optimierung Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung 1 Assignment Problem (Zuordnungsproblem) Gewichtetes Perfektes Bipartites Matching agents Costs tasks Weise jedem Agenten genau
MehrWie groß ist die Page Table?
Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten
MehrRepetition: Schreibweisen
: : Ausgeschrieben : Ausgeschrieben a 11 x 1 + a 12 x 2 +... + a 1n x n = b 1 a 21 x 1 + a 22 x 2 +... + a 2n x n = b 2... =... a m1 x 1 + a m2 x 2 +... + a mn x n = b m : Ausgeschrieben a 11 x 1 + a 12
MehrBeispiele 1. Gegeben ist das lineare System. x+4y +3z = 1 2x+5y +9z = 14 x 3y 2z = 5. Die erweiterte Matrix ist
127 Die Schritte des Gauß-Algorithmus sind nun die Folgenden: 1. Wir bestimmen die am weitesten links stehende Spalte, die Einträge 0 enthält. 2. Ist die oberste Zahl der in Schritt 1 gefundenen Spalte
Mehr1 Lineare Gleichungssysteme und Matrizen
1 Lineare Gleichungssysteme und Matrizen Das Studium linearer Gleichungssysteme und ihrer Lösungen ist eines der wichtigsten Themen der linearen Algebra. Wir werden zunächst einige grundlegende Begriffe
MehrApproximationsalgorithmen 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
MehrAlgorithmen für große Datenmengen
Kapitel 7 Algorithmen für große Datenmengen In den letzten Jahren werden immer größere Datenmengen gesammelt und verarbeitet. Denken wir an die riesigen Mengen an DNA-Kodierungen, die jedes Jahr in der
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
MehrAufgabenkomplex 3: Vektoren und Matrizen
Technische Universität Chemnitz 15. November 010 Fakultät für Mathematik Höhere Mathematik I.1 Aufgabenkomplex : Vektoren und Matrizen Letzter Abgabetermin: 9. Dezember 010 in Übung oder Briefkasten bei
MehrHamiltonsche Graphen
Hamiltonsche Graphen Definition 3.2. Es sei G = (V, E) ein Graph. Ein Weg, der jeden Knoten von G genau einmal enthält, heißt hamiltonscher Weg. Ein Kreis, der jeden Knoten von G genau einmal enthält,
MehrInhalt. 8.1 Motivation. 8.2 Optimierung ohne Nebenbedingungen. 8.3 Optimierung unter Nebenbedingungen. 8.4 Lineare Programmierung
8. Optimierung Inhalt 8.1 Motivation 8.2 Optimierung ohne Nebenbedingungen 8.3 Optimierung unter Nebenbedingungen 8.4 Lineare Programmierung 8.5 Kombinatorische Optimierung 2 8.1 Motivation Viele Anwendungen
MehrPaging. Einfaches Paging. Paging mit virtuellem Speicher
Paging Einfaches Paging Paging mit virtuellem Speicher Einfaches Paging Wie bisher (im Gegensatz zu virtuellem Speicherkonzept): Prozesse sind entweder ganz im Speicher oder komplett ausgelagert. Im Gegensatz
MehrIn heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher
Speicherhierarchie In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher Register Speicherzellen, direkt mit der Recheneinheit verbunden Cache-Speicher Puffer-Speicher
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
MehrLineare Gleichungssysteme
Mathematik I für Biologen, Geowissenschaftler und Geoökologen 5. Dezember 2007 Definition : Tomographie (Fortsetzung) : Tomographie Definition: Ein lineares Gleichungssystem (LGS) ist ein System von n
MehrOptimierung I. Dr. Ulf Lorenz F2.413
Optimierung I Dr. Ulf Lorenz F2.413 flulo@upb.de Organisation Dozent: Dr. Ulf Lorenz F2.413 Fürstenallee 11 email: flulo@upb.de WWW: http://www.upb.de/cs/flulo (hier auch aktuelle Infos + Ü-Zettel) Vorlesungen:
MehrDatenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Dynamische Programmierung Einführung Ablaufkoordination von Montagebändern Längste gemeinsame Teilsequenz Optimale
MehrNP-schwierige kombinatorische Optimierungsprobleme
Kapitel 3 NP-schwierige kombinatorische Optimierungsprobleme Optimierungsprobleme sind Probleme, die im Allgemeinen viele zulässige Lösungen besitzen. Jeder Lösung ist ein bestimmter Wert (Zielfunktionswert,
Mehr12.4 Traveling Salesman Problem
96 KOMBINATORISCHE SUCHE.4 Traveling Salesman Problem Definition.3(TSP, Problem des Handlungsreisenden): Wir betrachten einen gerichteten, gewichteten Graphen G = (V,E) mit K : V R. K({u,v}) sind die Kosten
Mehr(Allgemeine) Vektorräume (Teschl/Teschl 9)
(Allgemeine) Vektorräume (Teschl/Teschl 9) Sei K ein beliebiger Körper. Ein Vektorraum über K ist eine (nichtleere) Menge V, auf der zwei Operationen deniert sind, die bestimmten Rechenregeln genügen:
MehrDie 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
MehrAlgorithmen und Komplexität
Algorithmen und Komplexität Dynamische Programmierung Markus Ullrich Norbert Baum Fachbereich Informatik - IIb07 Hochschule Zittau/Görlitz 28. Mai 2009 1 / 29 Wie sieht es mit langen Ketten aus? A 1 A
MehrÜbungsblatt 6 Lösungsvorschläge
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Lösungsvorschläge Vorlesung Algorithmentechnik im WS 09/10 Problem 1: Größter Kreis in konvexem Polygon [vgl. Kapitel 6
Mehr9.2 Invertierbare Matrizen
34 9.2 Invertierbare Matrizen Die Division ist als Umkehroperation der Multiplikation definiert. Das heisst, für reelle Zahlen a 0 und b gilt b = a genau dann, wenn a b =. Übertragen wir dies von den reellen
MehrÜbungsklausur Algorithmen I
Universität Karlsruhe, Institut für Theoretische Informatik Prof. Dr. P. Sanders 26.5.2010 svorschlag Übungsklausur Algorithmen I Hiermit bestätige ich, dass ich die Klausur selbständig bearbeitet habe:
MehrKombinatorische Optimierung
Kombinatorische Optimierung Zuweisungsprobleme 2 1 3 5 4 Kombinatorische Optimierung Rucksackpackproblem 1 10 2 4 6 3 5 8 6 Aufspannende Bäume Travelling Salesman VLSI Design C. Kanzow, M. Gerdts Kombinatorische
MehrLineare (Un-)Gleichungen und lineare Optimierung
Lineare (Un-)Gleichungen und lineare Optimierung Franz Pauer Institut für Mathematik Universität Innsbruck Lehrer/innen/fortbildungstag Wien 2010 9. April 2010 Eine Maximumsaufgabe Eine Firma stellt aus
MehrAllgemeines Gleichungssystem mit zwei Gleichungen und zwei Variablen. Der erste Index bezeichnet die Nummer der Zeile, der zweite die der Spalte.
Lineare Gleichungssysteme. Einleitung Lineare Gleichungssysteme sind in der Theorie und in den Anwendungen ein wichtiges Thema. Theoretisch werden sie in der Linearen Algebra untersucht. Die Numerische
MehrFachakademie für Wirtschaft der FHM A2: Lineare Optimierung und das Simplexverfahren
A2.1 Lineare Optimierung mit dem Simplexverfahren Wenn ein Unternehmen ermitteln möchte, wie viele Mengeneinheiten von verschiedenen Produkten zu produzieren sind, damit bei gegebenen Verkaufspreisen der
MehrProseminar Lineare Algebra WS 08/09 Prof. Dr. O. Bogopolski 1. Vortrag: Lineare Gleichungen. am 11. März von Maximilian Wahner
Proseminar Lineare Algebra WS 08/09 Prof. Dr. O. Bogopolski 1 Vortrag: Lineare Gleichungen am 11. März 2009 von Maximilian Wahner Technische Universität Dortmund Fakultät für Mathematik Proseminar Lineare
MehrLineare Gleichungssysteme und Matrizen
Kapitel 11 Lineare Gleichungssysteme und Matrizen Ein lineares Gleichungssystem (lgs) mit m linearen Gleichungen in den n Unbekannten x 1, x 2,..., x n hat die Gestalt: Mit a 11 x 1 + a 12 x 2 + a 13 x
MehrDie Verbindung von Linearer Programmierung und Graphentheorie
Die Verbindung von Linearer Programmierung und Graphentheorie Definition 5.9. Ein kombinatorisches Optimierungsproblem entspricht einem LP, bei dem statt der Vorzeichenbedingungen x i 0 Bedingungen der
MehrÜbung: Algorithmen und Datenstrukturen SS 2007
Übung: Algorithmen und Datenstrukturen SS 2007 Prof. Lengauer Sven Apel, Michael Claÿen, Christoph Zengler, Christof König Blatt 5 Votierung in der Woche vom 04.06.0708.06.07 Aufgabe 12 Manuelle Sortierung
MehrKomplexität von Algorithmen:
Komplexität von Algorithmen: Ansatz: Beschreiben/erfassen der Komplexität über eine Funktion, zur Abschätzung des Rechenaufwandes abhängig von der Größe der Eingabe n Uns interessiert: (1) Wie sieht eine
MehrZugriff auf Matrizen. Anhängen von Elementen. Punktweise Operatoren. Vektoren und Matrizen in MATLAB II
Zugriff auf Matrizen. Anhängen von Elementen. Punktweise Operatoren. Vektoren und Matrizen in MATLAB II Matrixzugriff Wir wollen nun unsere Einführung in die Arbeit mit Vektoren und Matrizen in MATLAB
MehrLineare Gleichungssysteme
KAPITEL 2 Lineare Gleichungssysteme. Beispiele Wir betrachten zunächst vier Gleichungssysteme und bestimmen ihre Lösungsmenge. Dabei geht es uns noch nicht darum, ein Lösungsverfahren für lineare Gleichungssysteme
Mehr3. Übungsblatt zu Algorithmen I im SoSe 2017
Karlsruher Institut für Technologie Prof. Dr. Jörn Müller-Quade Institut für Theoretische Informatik Björn Kaidel, Sebastian Schlag, Sascha Witt 3. Übungsblatt zu Algorithmen I im SoSe 2017 http://crypto.iti.kit.edu/index.php?id=799
MehrOptimierung für Wirtschaftsinformatiker: Lineare Programme
Optimierung für Wirtschaftsinformatiker: Lineare Programme Dr. Nico Düvelmeyer Dienstag, 31. Mai 2011 1: 1 [1,1] Inhaltsübersicht für heute 1 Lineare Programme Allgemeine Form 2 Spezielle Darstellungen
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 2010
MehrInformatik II, SS 2014
Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 9 (28.5.2014) Hashtabellen III Algorithmen und Komplexität Offene Adressierung : Zusammenfassung Offene Adressierung: Alle Schlüssel/Werte
MehrStud.-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
Mehr3.6 Branch-and-Bound-Verfahren
36 Branch-and-Bound-Verfahren Die Branch-and-Bound -Methode beruht darauf, auf eine intelligente Weise alle zulässigen Lösungen eines kombinatorischen Optimierungsproblems aufzulisten und mit Hilfe von
MehrMischungsverhältnisse: Nehmen wir an, es stehen zwei Substanzen (zum Beispiel Flüssigkeiten) mit spezifischen Gewicht a = 2 kg/l bzw.
Kapitel 5 Lineare Algebra 5 Lineare Gleichungssysteme und Matrizen Man begegnet Systemen von linearen Gleichungen in sehr vielen verschiedenen Zusammenhängen, etwa bei Mischungsverhältnissen von Substanzen
Mehr2. Übungsblatt zu Algorithmen II im WS 2016/2017
Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter Sanders Dr. Christian Schulz, Dr. Simon Gog Michael Axtmann. Übungsblatt zu Algorithmen II im WS 016/017 Aufgabe
Mehr2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1}
1. Berechne für jeden Knoten i in BFS-Art eine Liste S i von von i aus erreichbaren Knoten, so dass (i) oder (ii) gilt: (i) S i < n 2 + 1 und Si enthält alle von i aus erreichbaren Knoten (ii) S i = n
MehrTermin 7: DATENSTRUKTUREN UND ALGORITHMEN
Termin 7: DATENSTRUKTUREN UND ALGORITHMEN 133 Modell-Annahmen Annahme: Für eine dünn besetzte Matrix der Dimensionen M x N gilt nnz = Ω(N, M). Annahme: Der schnelle Speicher ist nicht groß genug, um eine
MehrWirtschaftsmathematik für International Management (BA)
Wirtschaftsmathematik für International Management (BA) Wintersemester 2012/13 Hochschule Augsburg : Gliederung 1 Grundlegende 2 Grundlegende 3 Lineare Algebra 4 Lineare Programme 5 Folgen und Reihen 6
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
MehrDie Ungarische Methode für das Assignmentproblem
Die Ungarische Methode für das Assignmentproblem Seminar: Kombinatorische Optimierung SS08, Christof Schulz 11.07.2008 Hauptquellen: The Hungarian Method for the Assignment Problem von H.W. Kuhn (1955)
MehrMethoden für den Entwurf von Algorithmen
Methoden für den Entwurf von Algorithmen Greedy Algorithmen: - Löse ein einfaches Optimierungsproblem durch eine Folge vernünftiger Entscheidungen. - Eine getroffene Entscheidung wird nie zurückgenommen.
MehrVorlesung 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
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:
Mehr