In der vorliegenden Arbeit werden mehrere machinelearning Modelle mit unterschiedlichen
Konfigurationen trainiert und ausgewertet. Zweck ist es einen Überblick in die Technologie zu zu
geben und die Transformerarchitektur zu erklären. Als Grundlage dieser Arbeit dient das Paper
''Attention Is All You Need'' aus 2017. Die Modelle werden mit Pytorch entwickelt. Als Grundlage für
die Software wird ein Tutorial von Pytorch verwendet und angepasst. Zuerst wurde ein Modell mit
dem Wikitext2 Datensatz trainiert. Es werden Texte generiert und untersucht. Nach nicht
zufriedenstellenden Resultaten mit diesem Datensatz, mit einer Perplexity im Testsplit von 170.28
werden weitere Modelle mit Büchern von Karl May trainiert. Diese Erreichen bessere Ergebnisse in
Perplexity und im generieren von natürlicher Sprache. Die Perplexity des besten Modells mit dem
Karl May Datensatz erreicht eine Perplexity von 59.99. Zusätzlich werden Self-Attention Matrizen
visualisiert und der Unterschied zwei Modellen genauer aufgezeigt.
In this paper, several machinelearning models with different configurations are trained and analysed.
The purpose is to provide an overview of the technology and explain the transformer architecture.
The paper ''Attention Is All You Need'' from 2017 serves as the basis for this work. The models are
developed with Pytorch. A tutorial from Pytorch is used and adapted as the basis for the software.
First, a model was trained with the Wikitext2 data set. Texts are generated and analysed. After
unsatisfactory results with this data set, with a perplexity in the test split of 170.28, further models
are trained with books by Karl May. These achieve better results in perplexity and in generating
natural language. The perplexity of the best model with the Karl May data set achieves a perplexity
of 59.99. In addition, self-attention matrices are visualised and the difference between the two
models is shown in more detail.
Diese Bachelor-Thesis untersucht den Einsatz von Reinforcement Learning unter Verwendung von
Stable Baselines3. Reinforcement Learning dient als Methode zur Regelung von Systemen mit
unbekannten Zustandsübergängen, insbesondere wenn ein zugrundeliegendes Modell fehlt und nur
eine Zielfunktion gegeben ist. Die Arbeit nutzt die Reinforcement-Learning-Algorithmen DQN, A2C
und PPO, um virtuelle Systeme wie z.B. das inverse Pendel zu steuern. Das angewendete Werkzeug
Stable Baselines3 basiert auf Python und bietet vorimplementierte Algorithmen und
Simulationsumgebungen. Die Arbeit konzentriert sich darauf, die Fähigkeit von Reinforcement
Learning zu untersuchen und stabile Regelungssysteme ohne bekanntes Modell einzulernen. Die
Ergebnisse zeigen, dass DQN, A2C und PPO mehrheitlich stabile Regelungen ermöglichen, wobei
Optimierungsmöglichkeiten mit längeren Einlernprozessen bestehen. Die Nutzung von Stable
Baselines3 für benutzerdefinierte Umgebungen wird ebenfalls untersucht und mit den Ergebnissen
der vorimplementierten Umgebungen verglichen. Die Arbeit schliesst mit der Erkenntnis, dass Stable
Baselines3 ein leistungsfähiges Werkzeug für Reinforcement-Learning-Anwendungen ist, betont
jedoch die Notwendigkeit einer umfangreichen Einarbeitung aufgrund anfänglicher Komplexität.
This bachelor thesis investigates the use of reinforcement learning using stable baselines3.
Reinforcement learning is used as a method to control systems with unknown state transitions,
especially when an underlying model is missing and only one objective function is given. The work
uses the reinforcement learning algorithms DQN, A2C and PPO to control virtual systems such as the
inverse pendulum. The applied tool Stable Baselines3 is based on Python and provides preimplemented
algorithms and simulation environments. The work focuses on investigating the ability
of reinforcement learning to learn stable control systems without a known model. The results show
that DQN, A2C and PPO provide mostly stable control, with optimization opportunities with longer
learning processes. The use of stable baselines3 for user-defined environments is also investigated
and compared with the results of the pre-implemented environments. The paper concludes that
Stable Baselines3 is a powerful tool for reinforcement learning applications, but emphasizes the need
for extensive training due to initial complexity.
Für ein Kommunikations-Netz mit 8 Satelliten in niedriger Erdumlaufbahn ist die Nutzung von linearer
Programmierung untersucht worden. Das Ziel ist es, die Paket-Latenzzeiten zu minimieren mittels Links
zwischen benachbarten Satelliten. Dafür ist ein Python Programm erstellt worden, um lineare Programme zu
erstellen. Des weiteren sind Simulationen durchgeführt worden, um die Performance dieses Vorgehens zu
testen. Das Programm erweist sich als nützlich, indem es erfolgreich Paketlatenzen minimiert. Zudem
ermöglicht es dem Netzbetreiber diverse Parameter einzustellen. Mit diesem Programm ist eine Richtlinie
gegeben, auf welchen Pfaden die Satelliten ihre Pakete versenden sollen.
For a low-earth orbit satellite network with 8 satellites, the usage of linear programming has been studied.
The goal is to minimize packet delays using inter-satellite links. For this purpose, a Python program has been
developed to synthesize linear programs. Further, simulations have been made to test the performance of this
approach. The program effectively minimizes packet delays, while giving the operator parameters to tune the
behaviour of the optimization. Using a program like this, the satellite operator obtains a policy on where to
route packets to.
Die Entwicklung von Reinforcement Learning (RL) im Bereich der modellfreien Regelung steigt schnell
an. Speziell der Aspekt, dass kein Wissen über das Modell bestehen muss, macht diese Ansätze
nützlich und vielversprechend. Reinforcement Learning Algorithmen sind oftmals mithilfe von
neuronalen Netzwerken realisiert. In dieser Bachelorthesis soll ein neuer Ansatz mithilfe von Support
Vektor Maschinen (SVM) am Anwendungsfall des räumlich inversen Pendels untersucht werden. Im
speziellen geht es darum, über eine geeignete Belohnungsstrategie eine Entscheidungsfunktion zu
finden, welche das Pendel in den ausbalancierten Zustand bringt. Die Support Vektor Maschinen
werden verwendet, um eine Hyperebene in die Daten zu legen, welche als solche
Entscheidungsfunktion verwendet werden kann. Die Ergebnisse bestätigen die Funktionalität dieses
Ansatzes. Das Pendel konnte mit diesem Ansatz, ohne Kenntnisse über das Modell, erfolgreich in den
ausbalancierten Zustand gebracht werden.
The development of reinforcement learning (RL) in the field of model-free control is increasing
rapidly. Especially the aspect that no knowledge about the model is required makes these
approaches useful and promising. Reinforcement learning algorithms are often realised with the help
of neural networks. In this bachelor thesis, a new approach using support vector machines (SVM) will
be investigated for the application case of the cartpole. In particular, the aim is to find a decision
function via a suitable reward strategy that brings the pole into the balanced state. Support vector
machines are used to place a hyperplane in the data that can be used as such a decision function.
The results confirm the functionality of this approach. The pole could be successfully brought into the
balanced state with this approach, without any knowledge about the model.
Im Rahmen dieser Bachelor-Thesis soll eine Web-Applikation entwickelt werden, welche die Position
von mehreren Geräten (Laptops, Smartphones, etc.) mittels akustischen Signalen bestimmen kann.
In einem ersten Schritt wurde ein Messverfahren entwickelt, welches die Distanz zwischen zwei
Geräten bestimmen kann. Dies wurde anschliessend erweitert, um die Distanzmessung zwischen
mehreren Geräten zu ermöglichen. Dazu wurde das akustische Signal modifiziert, damit der Sender
identifiziert werden kann. Um aus den gemessenen Distanzen die Positionen der Geräte zu
rekonstruieren, wurde ein Webserver aufgesetzt. Die Positionen werden an die Geräte
zurückgesendet, welche diese in einem 2D Plot darstellen. Das gesamte System wurde in
verschiedenen Umgebungen mit unterschiedlichen Geräten getestet.
The goal of this bachelor thesis was to develop a web application that can determine the position of
several devices (laptops, smartphones, etc.) using acoustic signals. In a first step, a method was
developed that can measure the distance between two devices. This was subsequently extended to
allow distance measurement between multiple devices. For this purpose, the acoustic signal was
modified so that the sender can be identified. A web server was set up to reconstruct the positions of
the devices from the measured distances. The positions are sent back to the devices, which display
them in a 2D plot. The whole system was tested in different environments with different devices.
Die Hochschule Luzern untersucht die Möglichkeit mit SDRs eine Datenübertragung mit Rückkanal zu
entwickeln. Für die Untersuchung werden die Modelle LimeSDR mini von Lime microsystems verwendet.
Mit GNU Radio können die Funkmodule programmiert werden und ermöglicht viele verschiedene
Realisierungen der Übertragung. Die Signalverarbeitung von GNU Radio kann mit Python ergänzt werden.
Das gesendete Signal wird QPSK moduliert und bei einer Frequenz von 868.1 MHz übermittelt. Die
Empfängerseite filtert das Signal mit einem root raised cosine filter und schreibt es in einen Socket. Ein
Python Programm greift auf den Socket zu und verarbeitet die empfangenen Signale.
Die Pakete werden durch eine Korrelation der empfangenen Signale mit der Präambel erkannt und die
angehängten Symbole rekonstruiert. Mit dem Maximum Likelihood Estimation Verfahren wird der Time
Offset und Phase Drift geschätzt und die Symbole korrigiert. Nach der Korrektur wird mit einem PLL den
Oscillator Drift kompensiert und die Symbole geschätzt. Nach der Auswertung der geschätzten Symbole des
Pakets wird eine Antwort gebildet und zurückgesendet.
Eine Recherche im Internet hat gezeigt, auf welche Weise eine bidirektionale Kommunikation koordiniert
werden kann. Damit sich die Kommunikation nicht selber stört, wird der Kanal als time division duplex
(TDD) verwendet. Als ARQ Protokoll steht das Stop and Wait Verfahren im Einsatz. Zur Kontrolle, ob ein
Paket korrekt ankommt, wird mit CRC ein Prüfwert an das Ende des Pakets angefügt.
Mit einer Simulation der Kommunikation und Funkverbindung, konnte das Konzept geprüft und bestätigt
werden. Nachdem die Kommunikation mit den Funkmodulen unter realen Bedingungen ausgeführt wurde,
wurden viele Pakete nicht erkannt oder nicht akzeptiert. Was die genauen Quellen dieser Fehler sind, konnte
nicht entdeckt werden. Die Signalverarbeitung und das Konzept ist durch die Simulation bestätigt.
Damit die Kommunikation verwendet werden kann, werden die Pakete mit einem fehlerkorrigierenden Code
ergänzt. Durch eine Recherche wurde der Zyklischer Hamming Code entdeckt und umgesetzt. Die vom
Block Code generierte Bitfolge besteht aus 4 Datenbits und 3 Kontrollbits.
Das Ergebnis zeigt, dass die Pakete öfters akzeptiert werden und die Kommunikation besser vorankommt. Es
ist jedoch zu berücksichtigen, dass die Funkverbindung nicht verbessert wurde. Das Konzept wurde ergänzt
um die Fehler möglichst gut zu kompensieren.
The Lucerne University of Applied Sciences and Arts is investigating the possibility of using SDRs to
develop data transmission with a return channel. For the investigation the models LimeSDR mini from Lime
microsystems are used.
With GNU Radio the radio modules can be programmed and allows many different realizations of the
transmission. The signal processing of GNU Radio can be completed with Python.
The transmitted signal is QPSK modulated and transmitted at a frequency of 868.1 MHz. The receiver side
filters the signal with a root raised cosine filter and writes it into a socket. A Python program accesses the
socket and processes the received signals.
The packets are recognized by a correlation of the received signals with the preamble and the attached
symbols are reconstructed. With the Maximum Likelihood Estimation procedure the time offset and phase
drift is estimated and the symbols are corrected. After the correction the oscillator drift is compensated with a
PLL and the symbols are estimated. After evaluation of the estimated symbols of the packet a response is
formed and sent back.
A research on the Internet has shown how bidirectional communication can be coordinated. In order to
prevent the communication from interfering itself, the channel is used as time division duplex (TDD). As
ARQ protocol the stop and wait procedure is used. To check whether a packet arrives correctly, a check value
is added to the end of the packet with CRC.
With a simulation of the communication and radio link, the concept could be tested and confirmed. After the
communication with the radio modules was carried out under real conditions, many packets were not
recognized or not accepted. What the exact sources of these errors are could not be discovered. The signal
processing and the concept is confirmed by the simulation.
In order to use the communication, the packets are supplemented with an error correcting code. Through
research the cyclic Hamming code was discovered and implemented. The bit sequence generated by the block
code consists of 4 data bits and 3 control bits.
The result shows that the packets are accepted more often and the communication progresses better.
However, it should be noted that the radio link has not been improved. The concept has been extended to
compensate the errors as good as possible.
Damit beim Start der Nanosatelliten des Projektes CHESS Ende 2023 die Forschungsdaten
empfangen werden können, wird an der Hochschule Luzern eine neue Bodenstation mit einer
Parabolspiegel Antenne und einem X-Y Antriebssystem gebaut.
In Zusammenarbeit mit dem Institut für Maschinentechnik werden die Antriebe und
Anforderungen berechnet und ausgelegt. Für die ausgewählte Antriebseinheit werden die
passenden Motoren Controller bestimmt und ein Konzept ausgelegt, welches alle bestehenden und
zu realisierenden Komponenten beinhaltet.
So that the research data can be received when the nanosatellites of the CHESS project start at the
end of 2023, a new ground station with a parabolic mirror antenna and an X-Y drive system will be
built at the Lucerne University of Applied Sciences and Arts.
In cooperation with the Institute for Machine Technology, the drives and requirements are
calculated and designed. The appropriate motor controllers are determined for the selected drive
unit and a concept that includes all components to be implemented is designed.