Visualisierung von Algorithmen

Größe: px
Ab Seite anzeigen:

Download "Visualisierung von Algorithmen"

Transkript

1 Visualisierung von Algorithmen Petra Hahnfeld Seminar Softwarevisualisierung Betreuer: Dr. Andreas Kerren Proseminar KI, WS 2004/2005 S. 1 SS 2006 TU Kaiserslautern Gliederung 1. Einleitung 2. Concept Keyboards Dynamische Graphen 5. Zusammenfassung Proseminar KI, WS 2004/2005 S. 2 Visualisierung von Algorithmen Seite 2

2 1. Aufteilung der Softwarevisualisierung Proseminar KI, WS 2004/2005 S. 3 Einleitung Visualisierung von Algorithmen Seite 3 1. Motivation Visualisierung von Algorithmen bietet: besseres Verständnis des Algorithmus hilft durch bessere Analyse bei der Optimierung Proseminar KI, WS 2004/2005 S. 4 Einleitung Visualisierung von Algorithmen Seite 4

3 Gliederung 1. Einleitung 2. Concept Keyboards Dynamische Graphen 5. Zusammenfassung Proseminar KI, WS 2004/2005 S. 5 Visualisierung von Algorithmen Seite Concept Keyboards Gewöhnliche Visualisierung von Algorithmen: Step-by-Step-Verfahren Nachteile: Benutzer stark eingeschränkt Kontrollkonsole und Output nicht getrennt [Baloian05] Benutzer mehr einbinden What learners do, not what they see, may have the greatest Proseminar KI, WS 2004/2005 S. 6 impact on learning. (Hundhausen) Concept Keyboards Visualisierung von Algorithmen Seite 6

4 2.2. Was ist ein Concept Keyboard? Schnittstelle zwischen Benutzer und den Methoden des Algorithmus jede Taste stellt eine Methode (Konzept) des Algorithmus dar für breite Personengruppe Proseminar KI, WS 2004/2005 S. 7 [Baloian05] Concept Keyboards Visualisierung von Algorithmen Seite Anforderungen an den Algorithmus Grundlage: bereits vorhandene Visualisierung Keyboard wird semiautomatisch erstellt Einschränkungen an den Algorithmus: referenziertes Objekt als intrinsischen Parameter (z.b. rotateright() statt rotate(x)) jedes Objekt, das als Parameter übergeben wird, muss Konstruktor besitzen, der String als Parameter bekommt Graphikmethode und Einlesen der Eingabedatei Proseminar KI, WS 2004/2005 S. 8 muss standardisiert sein Concept Keyboards Visualisierung von Algorithmen Seite 8

5 2.3. Konfigurations-Software (1) sinnvolle Auswahl der Methoden legt Detaillevel fest Daten-XML-Datei Proseminar KI, WS 2004/2005 S. 9 [Baloian05] Concept Keyboards Visualisierung von Algorithmen Seite Konfigurations-Software (2) Layout anpassen Sound festlegen Keyboard-XML- Datei Proseminar KI, WS 2004/2005 S. 10 [Baloian05] Concept Keyboards Visualisierung von Algorithmen Seite 10

6 2.4. Beispiel der Oberfläche [Baloian05] Proseminar KI, WS 2004/2005 S. 11 Concept Keyboards Visualisierung von Algorithmen Seite Ergebnisse 2 Testläufe mit 17 bzw. 18 Informatik-Studenten Auswertung mittels Fragebogen Ergebnisse: insgesamt sehr positives Feedback benutzerfreundlich Möglichkeit zur Interaktion bietet tieferes Verständnis Erklärungstexte hilfreich Proseminar KI, WS 2004/2005 S. 12 weitere Tests müssen folgen Concept Keyboards Visualisierung von Algorithmen Seite 12

7 Gliederung 1. Einleitung 2. Concept Keyboards Dynamische Graphen 5. Zusammenfassung Proseminar KI, WS 2004/2005 S. 13 Visualisierung von Algorithmen Seite Abstrakte Darstellung Idee: Visualisierung einer abstrakten Durchführung eines Algorithmus Vorteil: hängt nicht von konkreten Eingabedaten ab keine Fixierung auf bestimmte Daten Verständnis der generellen Fälle/Gemeinsamkeiten Werkzeug für abstrakte Darstellung bietet Shape Proseminar KI, WS 2004/2005 S. 14 Analysis Visualisierung von Algorithmen Seite 14

8 3.2. beschreibt eine Datenstruktur in logischen Termen führt dann den Algorithmus auf der abstrakten Beschreibung aus Für abstrakte Beschreibung notwendig: 1. Festlegung des Vokabulars 2. Definition der Prädikate (Eigenschaften) 3. Erstellung von Aktionen 4. Festlegung von Initialzuständen Proseminar KI, WS 2004/2005 S. 15 Visualisierung von Algorithmen Seite Beispiel: Binärbaumsuche (1) type tree = data: integer left: pointer to tree right: pointer to tree x := root while (x!= NULL and x.data!= el.data) do if (el.data < x.data) x := x.left else Proseminar KI, WS 2004/2005 S. 16 x := x.right Visualisierung von Algorithmen Seite 16

9 3.2. Beispiel: Festlegung der Prädikate (2) Detaillevel wird durch Anzahl der Prädikate festgelegt 1-wertige Prädikate 2-wertige Prädikate Prädikat root(v) x(v) r[root](v) r[x](v) ancest[root](v) ancest[x](v) left(v1, v2) Proseminar KI, WS 2004/2005 S. 17 right(v1,v2) Bedeutung Zeigt root auf v? Zeigt x auf v? Ist v von root erreichbar? Ist v von x erreichbar? Ist v ein Vorfahr von root? Ist v ein Vorfahr von x? Ist v1.left = v2? Ist v1.right = v2? Visualisierung von Algorithmen Seite Beispiel: Shape Graph (3) Shape Graph: Darstellung des Zustandes der Datenstruktur an einem bestimmten Programmpunkt Verdeutlichung der wesentlichen Inhalte Proseminar KI, WS 2004/2005 S. 18 [Johannes05] Visualisierung von Algorithmen Seite 18

10 3.2. Beispiel: Durchführung (4) Eingabe: Menge initialer Shape Graphen Ausführung der Aktionen ergibt für jeden Programmpunkt eine Menge an Shape Graphen beschreiben somit alle möglichen Datenstruktur- Konfigurationen Proseminar KI, WS 2004/2005 an einem S. 19 Programmpunkt Visualisierung von Algorithmen Seite Verarbeitung der Ausgabe der Shape Anlaysis Ausgabe der : liefert für jeden Programmpunkt eine Menge an Shape Graphen ist zu komplex für Visualisierung Lösung: Partitionierung der einzelnen Shape Graph-Mengen in Äquivalenzklassen Proseminar KI, WS 2004/2005 S. 20 Visualisierung von Algorithmen Seite 20

11 3.3. Partitionierung der Shape Graphen Verfahren: 1. Wähle Prädikatenmenge D (Untermenge aller Prädikate) 2. Ein Untergraph vom Graphen S besteht aus: allen 0-wertigen Prädikaten aus D alle Knoten v S, so dass es ein 1-wertiges Prädikat p D gibt, welches für v wahr ist verbinde die Knoten wie in S 3. Alle Graphen mit gleichem Untergraph sind äquivalent kommen in gleiche Äquivalenzklasse Proseminar KI, WS 2004/2005 S. 21 Mit D kann man verfeinern oder abstrahieren Visualisierung von Algorithmen Seite Beispiel Prädikatenmenge D = {root, x, ancest[x]} {left, right} Proseminar KI, WS 2004/2005 S. 22 Graphen liegen in gleicher Äquivalenzklasse bezüglich D [Johannes05] Visualisierung von Algorithmen Seite 22

12 3.4. Visualisierung der Äquivalenzklassen bisheriges Ergebnis: mehrere Äquivalenzklassen pro Programmpunkt Aufgabe der Visualisierung: Darstellung finden, die eine Äquivalenzklasse repräsentiert Eine Möglichkeit: V-Knoten Visualisierung Proseminar KI, WS 2004/2005 S. 23 Visualisierung von Algorithmen Seite V-Knoten Visualisierung führe virtuelle Knoten ein Bedeutung: können vorhanden sein oder auch nicht fasse somit mehrere Graphen zusammen Proseminar KI, WS 2004/2005 S. 24 [Johannes05] Visualisierung von Algorithmen Seite 24

13 3.5. Zukünftige Arbeit Visualisierung bis jetzt noch nicht in die Realität umgesetzt Zur Visualisierung müsste noch folgendes überlegt werden: Wie stellt man die Shape Graphen dar (Farben, Positionierung der Knoten und Kanten)? Wie stellt man die Ausführungsreihenfolge der Graphen dar? Proseminar KI, WS 2004/2005 S. 25 Visualisierung von Algorithmen Seite 25 Gliederung 1. Einleitung 2. Concept Keyboards Dynamische Graphen 5. Zusammenfassung Proseminar KI, WS 2004/2005 S. 26 Visualisierung von Algorithmen Seite 26

14 4.1. Constraint Programmierung Endliches Problem der Constraint Programmierung: endliche Menge von Variablen endlicher Definitionsbereich Funktion, die jeder Variablen eine Untermenge aus dem Definitionsbereich zuweist endliche Menge von Bedingungen. Jede Bedingung definiert eine Relation zwischen den Variablen. Kann viele Lösungen enthalten Welches ist der beste Lösungsweg? Proseminar KI, WS 2004/2005 S. 27 Dynamische Graphen Visualisierung von Algorithmen Seite Arbeitsweise eines Lösers gegebenes Problem: Variablen: {x,y,z} {1,2,3} Bedingungen: {x>y, y>z} Lösung: [Ghoniem05] Proseminar KI, WS 2004/2005 S. 28 Dynamische Graphen Visualisierung von Algorithmen Seite 28

15 4.2. Visualisierung von Aktivitätsgraphen Visualisierung eines Lösungsverfahrens: - Netzwerk von Variablen und Bedingungen, welches die Abhängigkeiten voneinander zeigt - Aktivität: gibt an, wie oft die Beziehung über ein bestimmtes Zeitintervall gebraucht wurde Problem: - herkömmliche Graphen mit Knoten und Kanten zu unübersichtlich Lösung: Matrizen Proseminar KI, WS 2004/2005 S. 29 Dynamische Graphen Visualisierung von Algorithmen Seite Visualisierung von Aktivitätsgraphen Spalten bzw. Reihen sind Knoten sind Knoten verbunden Aktivitätswert in Matrix schreiben je höher Aktivitätswert, Bed1 Bed2 Bed3 Bed1-2 0 Bed2 1-0 desto dunkler dargestellt Bed Proseminar KI, WS 2004/2005 S. 30 Aktivitätsmatrix Dynamische Graphen Visualisierung von Algorithmen Seite 30

16 4.3. Beispiel: Visualisierung von Aktivitätsgraphen (1) Problem: 100 Variablen [ ] 99 Bedingungen: i [1..100]: x i < x i+1 Proseminar KI, WS 2004/2005 S. 31 [Ghoniem05] Aktivitätsmatrix der Bedingungen nach Lösung des Problems Dynamische Graphen Visualisierung von Algorithmen Seite Beispiel: Visualisierung von Aktivitätsgraphen (2) Beobachtungen: starke Interaktivität zwischen nahegelegenen Bedingungen alle Bedingungen miteinander verknüpft je weiter auseinander, desto weniger Interaktion mittlere Bedingungen interagieren öfter miteinander als äußere Proseminar KI, WS 2004/2005 S. 32 [Ghoniem05] Dynamische Graphen Visualisierung von Algorithmen Seite 32

17 4.3. Beispiel: Visualisierung von Aktivitätsgraphen (3) Lösung des Problems braucht lange, da alle Bedingungen mehrmals miteinander interagieren Animation zeigt: 2 Fortpflanzungswellen erkennbar Beginn Mitte Ende Wechsel Beginn Mitte Ende Proseminar KI, WS 2004/2005 S Phase 2. Phase Dynamische Graphen Visualisierung von Algorithmen Seite 33 Gliederung 1. Einleitung 2. Concept Keyboards Dynamische Graphen 5. Zusammenfassung Proseminar KI, WS 2004/2005 S. 34 Visualisierung von Algorithmen Seite 34

18 5. Zusammenfassung 3 Ansätze zur Visualisierung Concept Keyboards hohe Interaktion erhöht Verständnis des Algorithmus abstrakte Darstellungsform hängt nicht von konkreten Daten ab Dynamische Graphen Darstellung durch Matrizen ermöglicht Einsichten in Lösungsverfahren von Problemen der Constraint Proseminar KI, WS 2004/2005 S. 35 Programmierung Zusammenfassung Visualisierung von Algorithmen Seite 35 Literaturverzeichnis [Baloian05]: N. Baloian, H. Breuer, W. Luther. Algorithm visualization using concept keyboards. ACM SoftVis`05. [Johannes05]: Dierk Johannes, Raimund Seidel, Reinhard Wilhelm. Algorithm Animation using : Visualising Abstract Executions. ACM SoftVis`05. [Ghoniem05]: Mohammad Ghoniem, Hadrien Cambazard, Jean- Daniel Fekete, Narendra Jussien. Peeking in Solver Strategies Using Explanations Visualization of Proseminar KI, WS 2004/2005 S. 36 Dynamic Graphs for Constraint Programming. ACM SoftVis`05. Visualisierung von Algorithmen Seite 36

Einführung in die Informatik Algorithms

Einführung in die Informatik Algorithms Einführung in die Informatik Algorithms Vom Problem zum Algorithmus und zum Programm Wolfram Burgard Cyrill Stachniss 1.1 Motivation und Einleitung In der Informatik sucht man im Normalfall nach Verfahren

Mehr

4.Grundsätzliche Programmentwicklungsmethoden

4.Grundsätzliche Programmentwicklungsmethoden 4.Grundsätzliche Programmentwicklungsmethoden 1.1 Grundlage strukturierter und objektorientierter Programmierung Begriff Software Engineering - umfaßt den gezielten Einsatz von Beschreibungsmitteln, Methoden

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens Grundlagen von C Jonas Gresens Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität

Mehr

Algorithmen und Datenstrukturen Suchbaum

Algorithmen und Datenstrukturen Suchbaum Algorithmen und Datenstrukturen Suchbaum Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Motivation Datenstruktur zur Repräsentation dynamischer Mengen

Mehr

Minimal spannende Bäume

Minimal spannende Bäume http://www.uni-magdeburg.de/harbich/ Minimal spannende Fakultät für Informatik Otto-von-Guericke-Universität 2 Inhalt Definition Wege Untergraphen Kantengewichtete Graphen Minimal spannende Algorithmen

Mehr

Einführung in die Informatik I (autip)

Einführung in die Informatik I (autip) Einführung in die Informatik I (autip) Dr. Stefan Lewandowski Fakultät 5: Informatik, Elektrotechnik und Informationstechnik Abteilung Formale Konzepte Universität Stuttgart 24. Oktober 2007 Was Sie bis

Mehr

Vortrag zum Hauptseminar Hardware/Software Co-Design

Vortrag zum Hauptseminar Hardware/Software Co-Design Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Vortrag zum Hauptseminar Hardware/Software Co-Design Robert Mißbach Dresden, 02.07.2008

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

Bachelorarbeit Entwicklung eines Konzeptes zur angemessenen Beschriftung von Informationsobjekten

Bachelorarbeit Entwicklung eines Konzeptes zur angemessenen Beschriftung von Informationsobjekten Bachelorarbeit Entwicklung eines Konzeptes zur angemessenen Beschriftung von Informationsobjekten Institut für Informatik Rostock 1 Inhaltsübersicht 1. Einleitung und Begriffsbildung 2. Bestehende geeignete

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

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren Teilnehmerkreis und Voraussetzungen Studiengänge

Mehr

1 Bedingungen und der Typ bool. Informatik I: Einführung in die Programmierung 5. Bedingungen, bedingte Ausführung und Schleifen. Vergleichsoperatoren

1 Bedingungen und der Typ bool. Informatik I: Einführung in die Programmierung 5. Bedingungen, bedingte Ausführung und Schleifen. Vergleichsoperatoren 1 und der Informatik I: Einführung in die Programmierung 5., bedingte Ausführung und Albert-Ludwigs-Universität Freiburg Bernhard Nebel 27. Oktober 2015 27. Oktober 2015 B. Nebel Info I 3 / 21 Der Vergleichsoperatoren

Mehr

Dynamische Programmierung. Problemlösungsstrategie der Informatik

Dynamische 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

Mehr

Grundlagen der Informatik I (Studiengang Medieninformatik)

Grundlagen der Informatik I (Studiengang Medieninformatik) Grundlagen der Informatik I (Studiengang Medieninformatik) Thema: 3. Datentypen, Datenstrukturen und imperative Programme Prof. Dr. S. Kühn Fachbereich Informatik/Mathematik Email: [email protected]

Mehr

[email protected] SS 2013 1.4-1 / 16 schrittweise Verfeinerung -> Wirth, 1971, Programm Development by Stepwise Refinement

monika.heiner@informatik.tu-cottbus.de SS 2013 1.4-1 / 16 schrittweise Verfeinerung -> Wirth, 1971, Programm Development by Stepwise Refinement IMPLEMENTIERUNGSSTRATEGIE bis jetzt: Programmstruktur für Programmieren im Kleinen jetzt: Programmstruktur für Programmieren im Großen zunächst allgemein, d. h. sprachunabhängig [email protected]

Mehr

Visualisierung feingranularer Abhängigkeiten

Visualisierung feingranularer Abhängigkeiten Visualisierung feingranularer Abhängigkeiten Jens Krinke FernUniversität in Hagen Fachbereich Elektrotechnik und Informationstechnik Fach Softwaretechnik 6. Workshop Software-Reengineering, Bad Honnef,

Mehr

Domain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing

Domain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing SE Data Cleansing Domain-independent independent Duplicate Detection Vortrag von Marko Pilop & Jens Kleine http://www.informatik.hu-berlin.de/~pilop/didd.pdf {pilop jkleine}@informatik.hu-berlin.de 1.0

Mehr

Handbuch für die Erweiterbarkeit

Handbuch für die Erweiterbarkeit Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 07.01.2008 Übersicht 1 Warm-Up zum Jahresbeginn 2 Anfangswertprobleme 3 Polygonzüge 4 Das Eulersche Polygonzugverfahren Warm-Up zum Jahresbeginn 1 Warm-Up zum Jahresbeginn 2 Anfangswertprobleme

Mehr

188.154 Einführung in die Programmierung Vorlesungsprüfung

188.154 Einführung in die Programmierung Vorlesungsprüfung Matrikelnummer Studienkennzahl Name Vorname 188.154 Einführung in die Programmierung Vorlesungsprüfung Donnerstag, 27.1.2005, 18:15 Uhr EI 7 Arbeitszeit: 60 min - max. 50 Punkte erreichbar - Unterlagen

Mehr

Diskrete Strukturen Kapitel 1: Einleitung

Diskrete Strukturen Kapitel 1: Einleitung WS 2015/16 Diskrete Strukturen Kapitel 1: Einleitung Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15

Mehr

Seminar Werkzeuggestütze. tze Softwareprüfung. fung. Slicing. Sebastian Meyer

Seminar Werkzeuggestütze. tze Softwareprüfung. fung. Slicing. Sebastian Meyer Seminar Werkzeuggestütze tze Softwareprüfung fung Slicing Sebastian Meyer Überblick Einführung und Begriffe Static Slicing Dynamic Slicing Erweiterte Slicing-Techniken Fazit 2 Was ist Slicing?? (I) Program

Mehr

Projekt AGB-10 Fremdprojektanalyse

Projekt AGB-10 Fremdprojektanalyse Projekt AGB-10 Fremdprojektanalyse 17. Mai 2010 1 Inhaltsverzeichnis 1 Allgemeines 3 2 Produktübersicht 3 3 Grundsätzliche Struktur und Entwurfsprinzipien für das Gesamtsystem 3 3.1 Die Prefuse Library...............................

Mehr

Einführung in die Programmierung mit VBA

Einführung in die Programmierung mit VBA Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen

Mehr

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Einfache Programme: Programm-Argument, Bedingte Anweisungen, Switch, Enum Boolesche Werte und Ausdrücke Seite 1 Beispiel: Umrechnen

Mehr

Informatik I WS 07/08 Tutorium 24

Informatik I WS 07/08 Tutorium 24 Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 31.01.08 Bastian Molkenthin E-Mail: [email protected] Web: http://infotut.sunshine2k.de Organisatorisches Anmeldung Hauptklausur : allerspätestens

Mehr

Grundkurs Software- Entwicklung mit C++

Grundkurs Software- Entwicklung mit C++ Dietrich May Grundkurs Software- Entwicklung mit C++ Praxisorientierte Einführung mit Beispielen und Aufgaben- Exzellente Didaktik und Übersicht Mit 30 Abbildungen 2., überarbeitete und erweiterte Auflage

Mehr

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2 Prof. aa Dr. J. Giesl Programmierung WS16/17 F. Frohn, J. Hensel, D. Korzeniewski Tutoraufgabe 1 (Zweierkomplement): a) Sei x eine ganze Zahl. Wie unterscheiden sich die Zweierkomplement-Darstellungen

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Theoretische Informatik 1 WS 2007/2008. Prof. Dr. Rainer Lütticke

Theoretische Informatik 1 WS 2007/2008. Prof. Dr. Rainer Lütticke Theoretische Informatik 1 WS 2007/2008 Prof. Dr. Rainer Lütticke Inhalt der Vorlesung Grundlagen - Mengen, Relationen, Abbildungen/Funktionen - Datenstrukturen - Aussagenlogik Automatentheorie Formale

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Entwurf und Umsetzung eines Werkzeugs für die Fluchtwegplanung

Entwurf und Umsetzung eines Werkzeugs für die Fluchtwegplanung Entwurf und Umsetzung eines Werkzeugs für die Fluchtwegplanung Diplomarbeit Christian Weiprecht Bauhaus-Universität Weimar Fakultät Bauingenieurwesen Professur CAD in der Bauinformatik Inhaltsübersicht

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

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben

Mehr

2. Repräsentationen von Graphen in Computern

2. Repräsentationen von Graphen in Computern 2. Repräsentationen von Graphen in Computern Kapitelinhalt 2. Repräsentationen von Graphen in Computern Matrizen- und Listendarstellung von Graphen Berechnung der Anzahl der verschiedenen Kantenzüge zwischen

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

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Bei näherer Betrachtung des Diagramms Nr. 3 fällt folgendes auf:

Bei näherer Betrachtung des Diagramms Nr. 3 fällt folgendes auf: 18 3 Ergebnisse In diesem Kapitel werden nun zunächst die Ergebnisse der Korrelationen dargelegt und anschließend die Bedingungen der Gruppenbildung sowie die Ergebnisse der weiteren Analysen. 3.1 Ergebnisse

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 7. Vorlesung 18.05.2016 1 Konstanten Ganzzahlkonstante Dezimal: 42, 23, -2 Oktal (0 vorangestellt): 052 Hexadezimal (0x vorangestellt): 0x2A Gleitkommazahlen: 3.1415, 2.71,

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

Anwendungen 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 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

Mehr

Objektorientierte Modellierung (1)

Objektorientierte Modellierung (1) Objektorientierte Modellierung (1) Die objektorientierte Modellierung verwendet: Klassen und deren Objekte Beziehungen zwischen Objekten bzw. Klassen Klassen und Objekte Definition Klasse Eine Klasse ist

Mehr

Interaktionen zwischen Objekten durch Senden von Nachrichten und Reagieren auf empfangene Nachrichten

Interaktionen zwischen Objekten durch Senden von Nachrichten und Reagieren auf empfangene Nachrichten Objekt Objekt kapselt Variablen und Routinen Interaktionen zwischen Objekten durch Senden von Nachrichten und Reagieren auf empfangene Nachrichten Eigenschaften jedes Objekts: Identität (identisch = mehrere

Mehr

Algorithmen & Datenstrukturen 1. Klausur

Algorithmen & Datenstrukturen 1. Klausur Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse

Mehr

bzw. die Entscheidugen anderer Spieler (teilweise) beobachten Erweitert das Analysespektrum erheblich Beschreibung des Spiels (extensive Form)

bzw. die Entscheidugen anderer Spieler (teilweise) beobachten Erweitert das Analysespektrum erheblich Beschreibung des Spiels (extensive Form) 1 KAP 9. Dynamische Spiele Bisher: alle Spieler ziehen simultan bzw. können Aktionen der Gegenspieler nicht beobachten Nun: Dynamische Spiele Spieler können nacheinander ziehen bzw. die Entscheidugen anderer

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik FH Wedel Prof. Dr. Sebastian Iwanowski GTI22 Folie 1 Grundlagen der Theoretischen Informatik Sebastian Iwanowski FH Wedel Kap. 2: Logik, Teil 2.2: Prädikatenlogik FH Wedel Prof. Dr. Sebastian Iwanowski

Mehr

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren I Dr. Werner Struckmann 7. September 2015 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr

Mehr

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität Datenstrukturen und Algorithmen Christian Sohler FG Algorithmen & Komplexität 1 Clustering: Partitioniere Objektmenge in Gruppen(Cluster), so dass sich Objekte in einer Gruppe ähnlich sind und Objekte

Mehr

Binäre Suchbäume (binary search trees, kurz: bst)

Binäre Suchbäume (binary search trees, kurz: bst) Binäre Suchbäume (binary search trees, kurz: bst) Datenstruktur zum Speichern einer endlichen Menge M von Zahlen. Genauer: Binärbaum T mit n := M Knoten Jeder Knoten v von T ist mit einer Zahl m v M markiert.

Mehr

Matchings (Paarungen) in Graphen. PS Algorithmen auf Graphen SS `06 Steven Birr

Matchings (Paarungen) in Graphen. PS Algorithmen auf Graphen SS `06 Steven Birr Matchings (Paarungen) in Graphen PS Algorithmen auf Graphen SS `06 Steven Birr 1 Gliederung 1) Definitionen und Beispiele 2) Algorithmus des maximalen Matchings 3) Das Personal-Zuteilungsproblem Ungarischer

Mehr

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme Universität Hamburg Fachbereich Mathematik Seminar: Proseminar Graphentheorie Dozentin: Haibo Ruan Sommersemester 2011 Ausarbeitung zum Modulabschluss Graphentheorie spannende Bäume, bewertete Graphen,

Mehr

JAVA-Datentypen und deren Wertebereich

JAVA-Datentypen und deren Wertebereich Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).

Mehr

Übungspaket 29 Dynamische Speicherverwaltung: malloc() und free()

Übungspaket 29 Dynamische Speicherverwaltung: malloc() und free() Übungspaket 29 Dynamische Speicherverwaltung malloc() und free() Übungsziele Skript In diesem Übungspaket üben wir das dynamische Alloziieren 1. und Freigeben von Speicherbereichen 2. von Zeichenketten

Mehr

Dynamisches Huffman-Verfahren

Dynamisches Huffman-Verfahren Dynamisches Huffman-Verfahren - Adaptive Huffman Coding - von Michael Brückner 1. Einleitung 2. Der Huffman-Algorithmus 3. Übergang zu einem dynamischen Verfahren 4. Der FGK-Algorithmus 5. Überblick über

Mehr

Rechnerstrukturen. Michael Engel und Peter Marwedel WS 2013/14. TU Dortmund, Fakultät für Informatik

Rechnerstrukturen. Michael Engel und Peter Marwedel WS 2013/14. TU Dortmund, Fakultät für Informatik Rechnerstrukturen Michael Engel und Peter Marwedel TU Dortmund, Fakultät für Informatik WS 2013/14 Folien a. d. Basis von Materialien von Gernot Fink und Thomas Jansen 21. Oktober 2013 1/33 1 Boolesche

Mehr

Teil 2 - Softwaretechnik. Modul: Programmierung B-PRG Grundlagen der Programmierung 1 Teil 2. Übersicht. Softwaretechnik

Teil 2 - Softwaretechnik. Modul: Programmierung B-PRG Grundlagen der Programmierung 1 Teil 2. Übersicht. Softwaretechnik Grundlagen der Programmierung 1 Modul: Programmierung B-PRG Grundlagen der Programmierung 1 Teil 2 Softwaretechnik Prof. Dr. O. Drobnik Professur Architektur und Betrieb verteilter Systeme Institut für

Mehr

App-Entwicklung für Android

App-Entwicklung für Android App-Entwicklung für Android XML / Layouts Hochschule Darmstadt WS15/16 1 Inhalt XML Layouts Layouttypen Dimensions View Element Designs Farben Strings 2 XML XML ist eine Meta-Sprache zur Festlegung der

Mehr

Unterstützung von Lernprozessen durch Visualisierung: Auf ikonischen Programmiersprachen basierende Lernsoftware. Referentin: Sarah Lang.

Unterstützung von Lernprozessen durch Visualisierung: Auf ikonischen Programmiersprachen basierende Lernsoftware. Referentin: Sarah Lang. Unterstützung von Lernprozessen durch Visualisierung: Auf ikonischen Programmiersprachen basierende Lernsoftware Referentin: Sarah Lang Gliederung Praktische Relevanz des Themas Probleme beim programmieren

Mehr

Objektorientierte Analyse (OOA) Inhaltsübersicht

Objektorientierte Analyse (OOA) Inhaltsübersicht Inhaltsübersicht Einführung Anforderungen an die UML-Diagramme Verhalten: Use-Case-Diagramm Verhalten: Aktivitätsdiagramm Verhalten: Zustandsautomat Struktur: Klassendiagramm Seite 1 Einführung In der

Mehr

Werkzeuge zur Programmentwicklung

Werkzeuge zur Programmentwicklung Werkzeuge zur Programmentwicklung B-15 Bibliothek Modulschnittstellen vorübersetzte Module Eingabe Editor Übersetzer (Compiler) Binder (Linker) Rechner mit Systemsoftware Quellmodul (Source) Zielmodul

Mehr

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Berechenbarkeit und Komplexität Prof. Dr. Nikolaus Wulff Berechenbarkeit Im Rahmen der Turingmaschine fiel zum ersten Mal der Begriff Berechenbarkeit. Ein Funktion f heißt

Mehr

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht und Einführung 1.1 Die Shell allgemein 1.2 Die korn-shell 1.3 Der Weg zum ersten Skript 1.4 Nutzen und

Mehr

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Kapitel 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

Übungen zu Programmierung I - Blatt 8

Übungen zu Programmierung I - Blatt 8 Dr. G. Zachmann A. Greß Universität Bonn Institut für Informatik II 1. Dezember 2004 Wintersemester 2004/2005 Übungen zu Programmierung I - Blatt 8 Abgabe am Mittwoch, dem 15.12.2004, 15:00 Uhr per E-Mail

Mehr

Testen - Konzepte und Techniken

Testen - Konzepte und Techniken Testen - Konzepte und Techniken Magdalena Luniak 21.11.2007 Magdalena Luniak () Testen - Konzepte und Techniken 21.11.2007 1 / 42 Übersicht 1 Motivation 2 Grundbegrie 3 Testen im Softwareentwicklungsprozess

Mehr

Ein Algorithmus für die

Ein Algorithmus für die VGG 1 Ein Algorithmus für die Visualisierung gerichteter Graphen in der Ebene (2D) Seminar Graph Drawing SS 2004 bei Prof. Bischof (Lehrstuhl für Hochleistungsrechnen) Gliederung VGG 2 Einleitung Motivation

Mehr

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Kapitel 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:

Mehr

Kapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte

Kapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte Elementare Schritte Ein elementarer Berechnungsschritt eines Algorithmus ändert im Allgemeinen den Wert von Variablen Zuweisungsoperation von fundamentaler Bedeutung Zuweisungsoperator In Pascal := In

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

Kurs 1613 Einführung in die imperative Programmierung

Kurs 1613 Einführung in die imperative Programmierung Aufgabe 1 Gegeben sei die Prozedur BubbleSort: procedure BubbleSort(var iofeld:tfeld); { var hilf:integer; i:tindex; j:tindex; vertauscht:boolean; i:=1; repeat vertauscht := false; for j := 1 to N - i

Mehr

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie Gliederung 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.1. 2.2. Reguläre Sprachen 2.3. Kontextfreie Sprachen 2/1, Folie 1 2015 Prof. Steffen

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

Algorithmen und Datenstrukturen 1

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen 1 7. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik [email protected] aufbauend auf den Kursen der letzten Jahre von E. Rahm, G. Heyer,

Mehr

Template zum Erstellen einer Hauptseminar Ausarbeitung

Template zum Erstellen einer Hauptseminar Ausarbeitung Fakultät Informatik und Automatisierung Technische Universität Ilmenau Template zum Erstellen einer Hauptseminar Ausarbeitung Vorname Nachname Matrikel-Nr. 12345 Studiengang Informatik Hauptseminar im

Mehr

Kapitel 8: Abstrakte Datentypen. Inhalt. Definition ADT Keller ADT Schlange

Kapitel 8: Abstrakte Datentypen. Inhalt. Definition ADT Keller ADT Schlange Wintersemester 005/06 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl

Mehr

Feature Modelle. und ihre Anwendung. Feature Modelle und ihre Anwendungen. Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn

Feature Modelle. und ihre Anwendung. Feature Modelle und ihre Anwendungen. Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Feature Modelle und ihre Anwendung Feature Modelle und ihre Anwendungen 22.07.2010 1 Software-Produktlinien Zusammenfassung mehrerer verwandter Softwaresysteme zu einer Domäne (Anwendungsgebiet) Softwaresysteme

Mehr

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) 5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!

Mehr

Studiengang Informatik der FH Gießen-Friedberg. Sequenz-Alignment. Jan Schäfer. WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel

Studiengang Informatik der FH Gießen-Friedberg. Sequenz-Alignment. Jan Schäfer. WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel Studiengang Informatik der FH Gießen-Friedberg Sequenz-Alignment Jan Schäfer WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel Überblick Einführung Grundlagen Wann ist das Merkmal der Ähnlichkeit erfüllt?

Mehr

Rechnerische Komplexität

Rechnerische Komplexität Proseminar Effiziente Algorithmen SS 2002 Rechnerische Komplexität Ulrike Krönert (34180) 0. Inhalt 1. Einführung 2. Algorithmen und Komplexität 2.1. Algorithmen 2.2. Laufzeitabschätzung 2.3. Polynomialzeit

Mehr

Binärbäume. Prof. Dr. E. Ehses, 2014 1

Binärbäume. Prof. Dr. E. Ehses, 2014 1 Binärbäume Grundbegriffe der Graphentheorie Bäume und Ihre Anwendungen Unterschiedliche Darstellungen von Bäumen und Binärbäumen Binärbäume in Java Rekursive Traversierung von Binärbäumen Ebenenweise Traversierung

Mehr

Assoziative Container in C++ Christian Poulter

Assoziative Container in C++ Christian Poulter Assoziative Container in C++ Christian Poulter Seminar: Die Sprache C++ Mat-Nr.: 53 03 129 EMail: [email protected] Christian Poulter Assoziative Container in C++ Seite 1/10 Inhalt 1. Einleitung: Container...

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2009/0 : Technik vs. Iteration Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund 2 Definition (einfache,

Mehr

Algorithmen zur Berechnung der Transitiven Hülle einer Datenbankrelation

Algorithmen zur Berechnung der Transitiven Hülle einer Datenbankrelation Algorithmen zur Berechnung der Transitiven Hülle einer Datenbankrelation Daniel Reinhold Shenja Leiser 6. Februar 2006 2/28 Gliederung Einführung Transitive Hülle Definition Iterative Algorithmen 1. Naive

Mehr

Automatisch-generierte Texturen aus Laserpunktwolken

Automatisch-generierte Texturen aus Laserpunktwolken Automatisch-generierte Texturen aus Laserpunktwolken Sharon Friedrich, Maik Häsner Ruprecht-Karls-Universität Heidelberg Interdisziplinäres Zentrum für wissenschaftliches Rechnen (IWR) Softwarepraktikum

Mehr

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder Programmieren in PASCAL Bäume 1 1. Baumstrukturen Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder 1. die leere Struktur oder 2. ein Knoten vom Typ Element

Mehr

Beschreibungslogiken. Daniel Schradick [email protected]

Beschreibungslogiken. Daniel Schradick 1schradi@informatik.uni-hamburg.de Beschreibungslogiken Daniel Schradick [email protected] Was sind Beschreibungslogiken? Definition: Formalisms that represent knowledge of some problem domain (the world ) by first defining

Mehr

Seminar Programmierung und Reaktive Systeme

Seminar Programmierung und Reaktive Systeme Seminar Programmierung und Reaktive Systeme Qualitätssicherung Softwareintensiver Eingebetteter Systeme Betreuer: Sascha Lity, Hauke Baller in Kooperation mit dem Institut für Softwaretechnik und Fahrzeuginformatik

Mehr

Proseminar (SS 2009): Human-Computer Interaction. Michael Kipp Jan Miksatko Alexis Heloir DFKI

Proseminar (SS 2009): Human-Computer Interaction. Michael Kipp Jan Miksatko Alexis Heloir DFKI Proseminar (SS 2009): Human-Computer Interaction Michael Kipp Jan Miksatko Alexis Heloir DFKI Heute Mensch-Computer-Interaktion Ablauf Vorträge Ausarbeitungen Betreuung Themen Themenvergabe Mensch-Computer-Interaktion

Mehr

Algorithmische Mathematik

Algorithmische Mathematik Algorithmische Mathematik Wintersemester 2013 Prof. Dr. Marc Alexander Schweitzer und Dr. Einar Smith Patrick Diehl und Daniel Wissel Übungsblatt 6. Abgabe am 02.12.2013. Aufgabe 1. (Netzwerke und Definitionen)

Mehr

Seminar. Visual Computing. Poisson Surface Reconstruction. Peter Hagemann Andreas Meyer. Peter Eisert: Visual Computing SS 11.

Seminar. Visual Computing. Poisson Surface Reconstruction. Peter Hagemann Andreas Meyer. Peter Eisert: Visual Computing SS 11. Poisson Surface Reconstruction Peter Hagemann Andreas Meyer Seminar 1 Peter Eisert: SS 11 Motivation Zur 3D Darstellung von Objekten werden meist Scan-Daten erstellt Erstellung eines Dreieckmodells aus

Mehr