05 Fakultät Informatik, Elektrotechnik und Informationstechnik
Permanent URI for this collectionhttps://elib.uni-stuttgart.de/handle/11682/6
Browse
Search Results
Item Open Access Visuelle Analyse gemeinsamer Sequenzen(2020) Galuschka, MarcelIn den sozialen Medien verbreiten sich Texte schnell. Dieses Phänomen lässt sich auch in historischen Zeitungsartikeln erkennen. Forscher aus der Literaturwissenschaft und der Kulturwissenschaft befassen sich mit diesem Thema und untersuchen eine Menge von Texten. In dieser Arbeit erstellen wir dazu einen Prototyp, mit welchem es möglich ist, diese Texte untereinander zu vergleichen und zwei Texte im Vergleich genauer zu betrachten. Außerdem diskutieren wir hier, aus welchem Grund wir diese Darstellung gewählt und wie wir diese verwirklicht haben. Darüber hinaus haben wir diesen Prototyp einer Literaturwissenschaftlerin vorgestellt, welche mit diesem sprachliche Veränderungen zwischen den Texten erkennen kann.Item Open Access Modelllierung von TOSCA-basierten Deployment Modellen in Java(2020) Fuhrmann, JanIn den letzten Jahren gewinnt das Thema Cloud Computing in vielen Bereichen der Gesellschaft zunehmend an Bedeutung. Immer mehr Unternehmen verlagern Anwendungen sowie Teile der lokalen Infrastruktur in die Cloud. Die Automatisierung des Deployments solcher Cloud-Anwendungen wird jedoch durch deren steigende Komplexität und zugleich hohe Diversität signifikant erschwert, weshalb eine einheitliche Strukturierung erforderlich ist. Die „Topology and Orchestration Specification for Cloud Applications (TOSCA)“ definiert einen Standard für die Beschreibung und das Management sowie die automatisierte Bereitstellung von Cloud-Anwendungen. Alle Komponenten einer Anwendung, in TOSCA Node Templates genannt, inklusive Abhängigkeiten und Verbindungen (Relationship Templates) werden dabei innerhalb sogenannter Topology Templates dargestellt. Bisher erfolgt die Modellierung von TOSCA Topologien ausschließlich in XML oder YAML, aber in einer objektorientierten Programmiersprache wie Java ist dies bislang nicht möglich. In dieser Arbeit wird ein Konzept vorgestellt, das eine automatisierte Konvertierung von TOSCA Node Types und Relationship Types in die Programmiersprache Java beschreibt. Diese Umwandlung findet im sogenannten „TOSCA2JAVA-Transformator“ statt, der im Rahmen dieser Arbeit entwickelt wurde. Er bildet damit die Grundlage für eine zukünftige Kreierung und Konfiguration von TOSCA Topologien in der objektorientierten Umgebung von Java.Item Open Access Entwicklung und Implementierung von Analysetools zur Dimensionierung von Entwässerungsanlagen am Bahnkörper und zur Aufstellung der Investitionsschätzung von vorgeplanten Eisenbahninfrastrukturen in das vorhandene DCC-Modell(2020) Koch, DanielDiese Arbeit beschreibt die Entwicklung und Implementierung von zwei Analysetools in das vorhandene DCC-Modell. Dabei wird der DCC-Ansatz erläutert und die Umsetzung in Bezug auf die zu implementierenden Tools aufgeführt. Eine der Softwarelösungen dient zur Aufstellung der Investitionsschätzung von vorgeplanten Eisenbahninfrastrukturen. Hierbei wird die Kostenermittlung in Form einer Kostenschätzung für den Verkehrsträger Schiene im Detail betrachtet. Das zweite Analysetool unter-sucht die Dimensionierung von Entwässerungsanlagen am Bahnkörper. Dafür wird auf die hydraulische Bemessung von offenen Entwässerungsanlagen umfänglich eingegangen. Für beide Softwarelösungen wird die Vorgehensweise der Implementierung schrittweise erklärt und die enthaltenen Funktionen dargelegt. Zudem wird die Integration der Analysetools in die vom Studienprojekt „ModellBahn“ entwickelte Software namens „PULTrack“ ausführlich beschrieben, und mögliche Anpassungen und Optimierungen dieser erwähnt.Item Open Access Dynamic workload balancing for heterogeneous systems(2020) Strack, AlexanderDuring the last two decades, GPUs developed into powerful and massively parallel processors. That rose the attention of scientist who started using GPUs for large scale scientific computing, e.g. simulations. However, the architecture of GPUs is different from CPUs. Furthermore, graphic processors have their now fast access memory. Computing in a heterogeneous system consisting of a CPU and multiple GPUs has various challenges. In this work, we focus on how to distribute the load among the different components. We consider an iterative load that can be redistributed after each iteration. The goal of our scheduling methods is to minimise the computation time of the next iteration by estimating the performance of each component. After a short introduction to load balancing, we specify the iterative workload scenario and differentiate it from the typical task-based scenario often found in the literature. Then, we show the basics of GPU programming with the help of NVIDIAs CUDA API. Furthermore, we introduce the different kernels we use for our test and derive multiple schedulers. Our dynamic schedulers use the time each component took to compute its assigned workload in the last iteration as a basis of the performance estimation. After investigating the influence of previous run-time data on the scheduling decisions, we turn our attention towards the properties of the workloads and therefore compare different types of memory management.Item Open Access Design und Entwicklung geeigneter Visualisierungen für Feinstaub-Sensordaten(2020) Reuter, AnneObwohl Luftverschmutzung durch Feinstaub eine große Gefahr für die menschliche Gesundheit darstellt, gibt es für diese Thematik noch kein ausgeprägtes Bewusstsein in der deutschen Bevölkerung. In den letzten Jahren gab es vermehrt Projekte und Initiativen, die verfügbare Messdaten aufbereiten, hauptsächlich in Form von Web-Karten und Apps. Eines davon ist das Projekt luftdaten.info des Stuttgarter OK Labs, das zusätzlich Anleitungen zum Eigenbau von Messstationen anbietet und mithilfe dieser Daten stellenweise ein bereits sehr engmaschiges Messnetz aufgebaut hat. Web- und Smartphone-Applikationen benötigen jedoch eine Form der Interaktion, die ein Informationsbedürfnis voraussetzt, das womöglich noch gar nicht gegeben ist. In dieser Arbeit soll deswegen die Möglichkeit eines kleinen Feinstaub-Monitors untersucht werden, der ähnlich einer Wetterstation in der Wohnung aufgestellt wird und durch die dauerhafte Präsenz tiefergehend für Feinstaub sensibilisiert. Dafür wurde eine Visualisierung entwickelt, die auf einen Blick alle wichtigen aktuellen Werte bereitstellt, als auch Verläufe unterschiedlicher Granularitäten und Vergleichswerte aus der Umgebung darstellt. Diese Visualisierung wird auf einem, aus preisgünstiger Hardware zusammengebauten, Monitor angezeigt und mit Daten aus einer lokalen Datenbank befüllt, die alle benötigten Werte aus den Schnittstellen von luftdaten.info abfragt und speichert. Dieser Monitor wurde im Zuge einer kleinen Pilotstudie in einem Haushalt aufgestellt, um die Verwendung und die entwickelte Visualisierung zu evaluieren.Item Open Access Entwicklung und Implementierung von Analysemethoden zur Einzelfehlerdetektion in Verbindung mit Deep Learning und Machine Learning(2020) Pavlovski, AlexanderIn Deutschland beförderte die Deutsche Bahn AG 148 Millionen Fahrgäste und erreichte eine Gesamtbetriebsleistung von 1,09 Milliarden Trassenkilometern. Die Fahrgastanzahl stieg hier um 4% im Vergleich zum Vorjahr [1]. Dieser Trend lässt vermuten, dass in den kommenden Jahren der Zugverkehr weiter zunehmen wird, so auch aber auch die Belastung der Schienenwege. Aus diesem Grund ist es maßgeblich die Instandhaltung dieser weiter zu verbessern, um einen reibungslosen Schienenverkehr zu gewährleisten. Dazu existiert die Möglichkeit die Vertikalbewegung bzw. Vertikalbeschleunigung der Achse eines Zuges auf dem Gleis zu messen und darauf Fehler zu erkennen. Damit der Prozess der Fehlererkennung aus dem Signal vereinfacht wird, beauftragte das Institut für Eisenbahn- und Verkehrswesen im Sommersemester 2019 an der Universität Stuttgart, über das Studienprojekt der Fakultät Informatik, acht Studenten damit, eine Software zu entwickeln, die diesem Problem abhilft. Das Ergebnis ist die Software PUL-Anfahr, welche aus zwei Prozessabläufen besteht: Aufbereitung und Analyse der Messdaten. In dem Analyseteil geschieht die tatsächliche Fehlererkennung. Jede Gleisinstabilität folgt einem bestimmten Muster im Signal. Jedes dieser Fehlermuster gilt es zu erkennen. Insbesondere hatten Machine Learning Algorithmen, ein Teilbereich der Künstlichen Intelligenz, in den letzten Jahren starke Fortschritte im Themengebiet Mustererkennung zu verzeichnen. Somit bietet es sich an solche Algorithmen in PUL-Anfahr zu integrieren, die in dieser Bachelorarbeit implementiert und erörtert werden.Item Open Access A meta-approach to guide architectural refactoring from monolithic applications to microservices(2020) Gu, QiwenThe concept of microservices in the software development industry is getting growing attention nowadays. This architectural style is widely discussed both in industry and academia. Refactoring a monolithic application into a microservice application is common practice. Nevertheless, software architects and developers often find it di cult because they lack a structured overview of various migration approaches. Even though literature views about microservice migration were conducted, they were either obsolete or did not follow a systematic approach to ensure correctness and reproducibility of results. The goal of this study is to provide a classification framework as well as a web-based tool that can guide software architects and developers to comprehend up-to-date migration approaches and select a suitable one according to their requirements. In order to achieve this, a systematic literature review was conducted, resulting in thirty-one contributions from 2017 to 2020. Next, a web-based tool was developed based on the knowledge repository created after review. An evaluation of the developed tool by experts and students in the field revealed that it was able to serve the predefined purpose. The proposed framework, as well as the web-based tool, can provide the users a comprehensive overview of microservice migration and various practical approaches. Keywords: Microservices, Monolith Migration, Architectural Refactoring, Microservice Migration FrameworkItem Open Access Zwischenbildinterpolation mit optischem Fluss(2020) Berenguel Senn, NoahDie Erzeugung von Zwischenbildern in Bildfolgen ist eines der klassischen Probleme in der Videoverarbeitung. Viele Lösungsansätze dafür arbeiten häufig mit der Information der Bewegung im Bild, um scharfe und realistische Ergebnisse zu erzeugen. Eine Möglichkeit für die verwendete Bewegungsinformation stellt ein sogenannter optischer Fluss dar, der eine pixelweise Schätzung der Bewegung zwischen zwei aufeinanderfolgenden Bildern beschreibt. Verwendet werden kann ein optischer Fluss in sogenannten Vorwärts- und Rückwärtswarpingstrategien, bei denen entlang der Bewegungstrajektorie eine lineare Interpolation stattfindet. Bei diesen sich teils sehr ähnelnden Strategien ist aber meist nicht klar, welche Variante in der Praxis die besten Ergebnisse erzeugt. Diese Arbeit bündelt daher vieler solcher Ansätze und führt einen einheitlichen Vergleich durch. Zuerst wird das sogenannte (Image-) Warping als Grundtechnik für die spätere Zwischenbildinterpolation vorgestellt, inklusive damit verbundenen Techniken für das Sampling und Splatting von Bildinformationen. Es wird dabei außerdem ein Verfahren für das Füllen von Lücken in Bildern (Inpainting) beschrieben, das eine zentrale Rolle für die spätere Zwischenbildinterpolation besitzt. Mithilfe der Grundtechniken werden im Anschluss eine Reihe von Bildinterpolationsverfahren schrittweise und aufbauend eingeführt, wobei sich immer an der Anzahl von verwendeten Bildern und optischen Flüssen orientiert wird (1-Bild Fall, 2-Bild Fall und bidirektionale Verfahren). In einer abschließenden Evaluation werden die Bildinterpolationsverfahren qualitativ und quantitativ miteinander verglichen. Dies geschieht anhand von Benchmarkdaten für optische Flüsse, bei denen ausgelassene Bilder als Referenzbild dienen. Als Bewertung der erzeugten Zwischenbilder dienen klassische Fehlermaße aus der Literatur und ein ergänzender visueller Eindruck. Ziel der Evaluation ist die Verifizierung der Überlegungen hinter den Verfahren und die Prüfung wie gut sie in der Praxis funktionieren.Item Open Access Polynomial Chaos Expansion mit räumlich adaptiven Sparse Grids(2020) Albrecht, ThomasDie Polynomial Chaos Expansion (generalized Polynomial Chaos) ist eine Methode aus der Uncertainty Quantification. Mit ihr können die stochastischen Momente einer Funktion R, deren Parameter gemäß Verteilungsfunktionen verteilt sind, schnell berechnet werden. Außerdem liefert die Methode ein akkurates Surrogat das effizient ausgewertet werden kann. Dazu werden abhängig von den Verteilungsfunktionen in jeder Dimension bestimmte orthogonale Polynombasen verwendet. Die verwendeten Polynome sind jeweils genau bezüglich der Dichtefunktion der jeweiligen Verteilung orthogonal. Die Koeffizienten der Expansion werden mithilfe eines Spectral Projection Ansatzes berechnet. Bei diesem müssen hochdimensionale Integrale gelöst werden. In dieser Arbeit wird die Polynomial Chaos Expansion implementiert. Da traditionelle Integrationsmethoden unter dem sogenannten Fluch der Dimensionalität leiden, werden die Integrale mithilfe von räumlich adaptiven Sparse Grids (dünnen Gittern) gelöst. Die Ergebnisse der Polynomial Chaos Expansion mit räumlich adaptiven Sparse Grids werden mit denen einer Polynomial Chaos Expansion mit regulären Sparse Grids verglichen. Außerdem werden die Ergebnisse noch mit einer weiteren Methode aus der Uncertainty Quantification, der Stochastic Collocation, verglichen.Item Open Access Situationserkennung mithilfe eines In-Memory Data Grids(2020) Weber, PascalIm Bereich des Internet der Dinge oder der Industrie 4.0 produzieren Sensoren laufend Daten, die Messwerte über einen aktuellen Zustand von Maschinen, Anlagen oder der Umgebung enthalten, auf jene eine Maschine jeweils rechtzeitig reagieren muss. Zudem befinden sich die Sensoren nicht immer in unmittelbarer Reichweite zueinander, noch sind sie an dasselbe Gerät angeschlossen. Dadurch wird die Verarbeitung der Sensordaten ein komplexes Thema, vor allem dann, wenn die Daten von verschiedenen Sensoren benötigt werden, um daraus letztendlich eine Entscheidung treffen zu können. Diese werden in sogenannten Situationstemplates definiert, welche bestimmte Bedingungen an Sensordaten festlegen, die alle (oder auch nur teilweise) erfüllt sein müssen, damit eine Situation eintreffen kann. Die erkannte Situation wird daraufhin mit den anderen Teilnehmern ausgetauscht, damit diese ihre Prozesse an die neuen Gegebenheiten anpassen können. Auf die Messwerte der Sensoren muss insbesondere mit sehr geringer Latenz (d. h. am besten in Echtzeit) reagiert werden können, da es ansonsten zu schwerwiegenden Folgen bei einzelnen Prozessschritten kommen könnte. Durch die gegebene Komplexität der verteilten Sensoren und die Anforderung an sehr geringe Latenzzeiten wird in dieser Arbeit ein In-Memory Data Grid zum Erkennen solcher Situationen evaluiert. Diese Technologie bietet durch das Halten der Daten im Arbeitsspeicher den entscheidenden Vorteil von sehr geringen Latenzzeiten, bringt natürlich auch den Nachteil, dass der Speicher nicht persistent ist. Es wird ein Konzept zum Erkennen von Situationen, im Umfeld des Internet der Dinge, mithilfe der In-Memory Data Grid Technologie entwickelt, sowie die Funktionsfähigkeit anhand von Beispiel-Anwendungen demonstriert.