Refine
Document Type
- Bachelor Thesis (7)
- Master's Thesis (4)
- Book (1)
Has Fulltext
- yes (12)
Is part of the Bibliography
- no (12)
Keywords
- Complex Event Processing (3)
- Evolutionärer Algorithmus (3)
- Machine Learning (3)
- Maschinelles Lernen (3)
- Genetische Programmierung (2)
- Siddhi (2)
- AI (1)
- Abalone (1)
- Air Quality Monitoring (1)
- AlphaGo (1)
Insbesondere aufgrund der Zugehörigkeit zum sehr aktuellen und viel betrachteten Thema Machine Learning ist die genetische Programmierung mit ihren vielseitigen Anwendungsmöglichkeiten ein sehr interessantes Gebiet. Wie in allen Forschungsschwerpunkten gibt es auch hier viele Ansätze die standardmäßige Vorgehensweise weiter zu verbessern – einer dieser Ansätze ist die Verwendung von Subroutinen. Diese könnten in diesem Kontext auch als Methoden, Funktionen oder ähnliches bezeichnet werden und bedeuten, dass vom Algorithmus neben dem eigentlichen Programm auch wiederverwendbare Folgen von Anweisungen entwickelt werden, die über einen Bezeichner an beliebigen Stellen verwendet werden können. Hierfür gibt es bereits diverse Konzepte, die in Tests sehr gute Ergebnisse erzielt haben und eine Verbesserung gegenüber der standardmäßigen genetischen Programmierung ohne Subroutinen erreichen konnten. Diese Tests fanden allerdings immer in sehr spezialisierten Testumgebungen statt. Besonders interessant sind allerdings solche Systeme zur genetischen Programmierung, die (theoretisch) beliebige Probleme lösen kann, da sie für eine Vielzahl von Problemstellungen verwendet werden können.
Das Ziel dieser Arbeit ist es, zu untersuchen, ob und inwiefern die Verwendung von Subroutinen auch in einem solchen allgemeinen System zur genetischen Programmierung, das theoretisch dazu in der Lage ist, beliebige Probleme zu lösen, möglich und sinnvoll ist.
Vergleich von nativer App- und Cross-Platform-Entwicklung (Facebook React Native und Google Flutter)
(2020)
Die Entwicklung mobiler Applikationen für iOS und Android ist in der Regel mit viel Arbeit verbunden, da man für beide Plattformen gezwungenermaßen unterschiedlichen Quelltext schreiben muss. Abhilfe für dieses Problem schaffen Cross-Platform-Frameworks wie React Native von Facebook oder Flutter von Google. Anhand dieser Frameworks lassen sich Apps für beide Plattformen mit nur einer Codebase entwickeln. Eine kritische Stelle und oft gebrauchtes Kontra-Argument gegen die Entwicklung mit Cross-Platform-Frameworks ist die Hardwarenähe der nativen Applikationen, an welcher es den Frameworks vermeintlich mangelt. Doch wie ist der Stand der Dinge im Jahr 2020? Können Cross-Platform-Frameworks inzwischen performant und einfach auf Hardwarekomponenten zugreifen und machen damit die mühsame, native Entwicklung für iOS und Android vor allem in Anbetracht der Entwicklung von größerer Enterprise-Software obsolet?
Dieser Frage wird in dieser Arbeit nachgegangen und generell überprüft wie tauglich die Cross-Platform-Entwicklung ist. Nach dem Lesen dieser Bachelorarbeit sollte entschieden werden können, ob Cross-Platform-Frameworks für das Anwendungsproblem des Lesers geeignet sind. Um die Forschungsfrage zu beantworten, wurden je zwei Applikationen im Rahmen einer Fallstudie für je iOS und Android entwickelt, damit geprüft werden konnte, wie förderlich die zuvor genannten Frameworks sind. Der Fokus der Arbeit liegt also auf der Güte bzw. dem heutigen Stand der Cross-Platform-Entwicklung, vor allem im Bezug auf die Benutzung von Hardwarekomponenten bzw. betriebssystemspezifischen Diensten (Bluetooth, Kamera, etc.).
Die Ergebnisse der Fallstudie zeigen, dass es stets auf den Kontext und die Komplexität der zu realisierenden Anwendung ankommt inwiefern Cross-Platform-Frameworks verwendet werden können. In simplen Anwendungsfällen können Frameworks meist zu einer erheblichen Kostenminimierung und Zeitersparnis führen, wohingegen bei komplexeren Anwendungen relativ schnell Grenzen und starke Abhängigkeiten erreicht werden.
Das Forschungscluster Smart Data Analytics stellt in dem vorliegenden Band seine Forschung aus den Jahren 2019 und 2020 vor. In der ersten Hälfte des Bandes geben 20 Kurzporträts von laufenden oder kürzlich abgeschlossenen Projekten einen Überblick über die Forschungsthemen im Cluster. Enthalten in den Kurzporträts ist eine vollständige, kommentierte Liste der wissenschaftlichen Veröffentlichungen aus den Jahren 2019 und 2020. In der zweiten Hälfte dieses Bandes geben vier längere Beiträge exemplarisch einen tieferen Einblick in die Forschung des Clusters und behandeln Themen wie Fehlererkennung in Datenbanken, Analyse und Visualisierung von Sicherheitsvorfällen in Netzwerken, Wissensmodellierung und Datenintegration in der Medizin, sowie die Frage ob ein Computerprogramm Urheber eines Kunstwerkes im Sinne des Urheberrechts sein kann.
AlphaGo’s victory against Lee Sedol in the game of Go has been a milestone in artificial intelligence. After this success, the team behind the program further refined the architecture and applied it to many other games such as chess or shogi. In the following thesis, we try to apply the theory behind AlphaGo and its successor AlphaZero to the game of Abalone. Due to limitations in computational resources, we could not replicate the same exceptional performance.
Die Arbeit untersucht die Anwendung von maschinellem Lernen zur Erkennung von Aktivitäten von Schiffen anhand von AIS-Signalen. Das Automatic Identification System (AIS) wird von Schiffen genutzt, um Informationen über ihren Status in regelmäßigen Intervallen zu übertragen. Auf Basis der Daten wurden mithilfe von Machine Learning-Algorithmen aus der Gruppe der überwachten Klassifikationsalgorithmen Modelle gelernt, die in der Lage sind zu erkennen, welcher Aktivität ein Schiff zu einem Zeitpunkt nachgeht.
Da das erfolgreiche Lernen eines Modells von einer sorgfältigen Datenvorbereitung abhängt, wurden verschiedene Verfahren zur Datenvorbereitung verwendet. Anschließend wurden verschiedene Algorithmen eingesetzt, darunter der Random Forest und k-NN, um Modelle zu lernen.
Die Ergebnisse zeigen, dass die Aktivitäten mit einer Genauigkeit von bis zu 99% erkannt werden konnten, wenn in der Datenvorbereitung geeignete Verfahren gewählt wurden.
Recent developments in the field of deep learning have shown promising advances for a wide range of historically difficult computer vision problems. Using advanced deep learning techniques, researchers manage to perform high-quality single-image super-resolution, i.e., increasing the resolution of a given image without major losses in image quality, usually encountered when using traditional approaches such as standard interpolation. This thesis examines the process of deep learning super-resolution using convolutional neural networks and investigates whether the same deep learning models can be used to increase OCR results for low-quality text images.
Das Bedürfnis Daten in Echtzeit zu analysieren und auf Ereignisse zu reagieren, ist innerhalb aller Branchen in den letzten Jahren stark gestiegen. Als die Analysetechnik für Echtzeitdatenströme hat sich das Complex Event Processing (CEP) durchgesetzt. Mithilfe von Regeln lassen sich kausale, temporale und räumliche Zusammenhänge von Ereignissen definieren und durch eine CEP-Engine evaluieren. Die Konstruktion von Regeln hat sich dabei als einschränkende Faktor von CEP herausgestellt. Greedy4Cep ist ein algorithmischer Ansatz zur automatisierten Erstellung von CEP-Regeln anhand eines historischen Datenstromes.
Die Bachelorarbeit befasst sich mit dem Generieren kurzer fröhlicher und harmonischer Musikstücke mittels des Einsatzes genetischer Algorithmen. Dabei werden die Evolutionsprozesse der Biologie nachgeahmt. In der Programmiersprache Java, unter der Verwendung der Open-Source-Programmierbibliothek JFugue, sind dafür die einzelnen Zyklusphasen entworfen und implementiert worden.
Die Vereinigung der Biologie, der Kunst und der Informatik wird damit erreicht, um etwas ästhetisch Wirksames zu schaffen und stellt den besonderen Reiz der Arbeit dar.
Zusammen mit der Microservice-Bewegung werden immer häufiger synchrone Request-Response-Schnittstellen nach dem REST-Paradigma entwickelt, um Service-Landschaften zu integrieren. Die Einfachheit des Paradigmas verleitet viele Organisationen, nahezu die komplette Interprozesskommunikation ihres Ökosystems über diese Art von Schnittstelle abzuwickeln – nicht ohne Konsequenzen.
Diese Arbeit entwickelt Ansätze, wie die Integrationsprobleme, die bei übermäßiger Verwendung von REST entstehen, mithilfe von Event-Driven Architecture gelöst werden können, ohne den Status quo dieser Organisationen außer Acht zu lassen. Dafür werden der gegenwärtige Zustand der Integrationsmuster und eingesetzten Infrastruktur von Event-Driven Architecture kritisiert und Kriterien erarbeitet, die pragmatische und zugängliche Integrationsansätze erfüllen müssen. Um die Einführungskosten gering zu halten, wird eine Middleware entwickelt, die in bestehende REST-Schnittstellen eingesetzt werden kann und auf Basis der API-Aufrufe Events generiert. Darauf aufbauend werden vier Integrationsmuster entwickelt, die eine schrittweise Transformation zu Event-Driven Microservices ermöglichen. Um die Zugänglichkeit der Eventing-Infrastruktur zu erhöhen, wird außerdem wird die Standardisierung der Event-Struktur durch die CloudEvents-Spezifikation vorgeschlagen. Um die Zugänglichkeit weiter zu erhöhen, erfolgt die Kommunikation der Services nicht direkt mit dem Event-Broker, sondern über Proxies, die die Events per HTTP annehmen oder ausspielen. Um die Transparenz über den Datenfluss im System zu wahren, werden alle Produzenten und Konsumenten werden mitsamt ihrer Events durch den Beschreibungsstandard AsyncAPI dokumentiert.
Nach einer Validierung dieser Ansätze mithilfe eines Prototyps kommt diese Arbeit zu der Erkenntnis, dass der Einsatz der entwickelten Middleware für alle Organisationen sinnvoll ist, die bereits viele REST-Schnittstellen im Einsatz haben. Die Standardisierung der Event-Struktur und des Event-Protokolls mittels CloudEvents und HTTP-Proxies sowie die Dokumentation durch AsyncAPI empfiehlt sich auch unabhängig des Status quo für alle Organisationen, die Event-Driven Microservices entwickeln möchten.