Skip to content

Commit 55ba444

Browse files
committed
corrections
1 parent c494530 commit 55ba444

File tree

4 files changed

+64
-44
lines changed

4 files changed

+64
-44
lines changed

src/acronyms.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ \section*{Abbreviations}
3737
\acro {CNN} {Convolutional Neural Network}
3838
\acro {CRIU} {Checkpoint/Restore in Userspace}
3939
\acro {LSTM} {Long-Short Term Memory}
40-
\acro {RNN} {Recurrent Neural Network}
40+
\acro {RNN} {Recurrent Neural Networks}
4141
\acro {SSL} {Secure Socket Layers}
4242
\acro {UI} {User Interface}
4343
\acro {VM} {Virtual Machine}

src/body.tex

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ \section{Neural Networks}%
307307
% done unless professor adds notes
308308
%-------------------------------------------------------------------------------
309309

310-
\acl {NN} are a technology that is used to approach problems from both supervised learning and unsupervised learning problems. The original
310+
Neural networks are a technology that is used to approach problems from both supervised learning and unsupervised learning problems. The original
311311
concept can be dated back as far as 1943 \cite[p.727]{russell2016artificial} and the mathematical description of a
312312
neuron is a linear combination of many input variables $a_i$ and their weights $w_i$. If the linear combination of the
313313
input variables exceeds a threshold, defined by an activation function $g$, the neuron activates or \emph{fires}. When
@@ -333,7 +333,7 @@ \section{Neural Networks}%
333333
hold state. The former network is often used for image classification problems while the latter is used for
334334
time-series analysis and natural language processing.
335335

336-
When looking at neural networks one important decision is the number of layers. In fact, the history of \acl{NN} has shown
336+
When looking at neural networks one important decision is the number of layers. In fact, the history of neural networks has shown
337337
three key phases of progress, the first phase which included simple single-layer networks, the second which included one
338338
\emph{hidden layer} and the third phase, today, which uses networks that benefit of several hidden layers. A hidden
339339
layer is a number of neurons between the input layer and the output layer. This allows the network to generate complex
@@ -1193,8 +1193,7 @@ \subsection{TensorFlow and Keras}%
11931193
Keras is one of these higher level frameworks that focuses on neural networks. It offers a intuitive \ac{API}, oriented towards
11941194
neural network terminology, to quickly develop and iterate on various neural network architectures. It integrates TensorFlow and its
11951195
accompanying \ac{UI} Tensorboard, which visualizes training, network structure and activation patterns. It also supports
1196-
other base technologies beside TensorFlow, but these will not be discussed. A simple example for a 2 layer Dense \ac
1197-
{NN} written in Keras is shown in Listing~\ref{lst:kerasbasic}.
1196+
other base technologies beside TensorFlow, but these will not be discussed. A simple example for a 2 layer Dense neural network written in Keras is shown in Listing~\ref{lst:kerasbasic}.
11981197

11991198

12001199
\begin{listing}
@@ -1929,6 +1928,7 @@ \section{Wholesale market}
19291928
detail in this section:
19301929

19311930
\begin{itemize}
1931+
\itemsep0em
19321932
\item A mapping from the 24 parallel environments to a single \ac{MDP} environment
19331933
\item A correction of the common paradigm where the agent is in control of the program flow
19341934
\item A solution to the problem that one agent is supposed to be in control of and learn from several

src/main.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
\documentclass[12pt,a4paper,oneside,hyphens, draft]{report}
1+
\documentclass[12pt,a4paper,oneside,hyphens, draft]{article}
22
\input{head.tex}
33
\input{glossary.tex}
44

src/preface.tex

Lines changed: 58 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,62 @@
1-
\section*{Preface}
1+
\section*{Acknowledgements}
22

3-
This thesis was planned and discussed in the winter of 17/18. On February 1st, the work phase of six months started.
4-
Within these six months, I discovered many previously unknown or unforeseen complexities. These include the
5-
communication technologies developed to permit a complete python based broker and a large variety of API approaches
6-
within the RL agent libraries currently available. While I invested a significant amount of effort into the
7-
development of the required components, I always intended to build something that may be reused in the future instead of
8-
being discarded after my thesis was graded. This lead me to the decision of implementing a best practice based
9-
communication instead of a minimal approach and lead me to try to write my python code in a way that will let
10-
future broker developers reuse it as a framework for their broker implementations.
3+
I'd like to express my gratitude to my supervisor Prof. Wolfgang Ketter who has invited me to join the research
4+
community around PowerTAC and in doing so showed me an exciting new field of research. This gratitude needs to be
5+
extended to John Collins and Nastaran Naseri who have answered many questions of mine and guided me during this work.
116

12-
Why not just write another broker in Java? I believe PowerTAC answers an important question of our time. But I also
13-
believe there are not enough people working on this field and it doesn't receive the attention it should. Thousands of
14-
researchers and those who want to become one are working on getting AI agents to become better at Atari games or playing
15-
Doom. While the underlying technology advancements are fantastic, the application area is of no use to humanity. I
16-
wanted to apply these new technologies to a problem that matters and do so in a way that will create artifacts that
17-
others can build upon to outperform my solutions quickly. I wanted to create a bridge between the researchers of RL
18-
implementations of recent years and their large community and the exciting field of energy markets. PowerTAC offers
19-
another "game" to play with, another environment to let agents compete in. But it is an environment which actually
20-
generates value when explored and improved.
7+
Thanks to any contributor of the numerous Open Source projects for sharing their work free of charge that allowed me to
8+
bring together PowerTAC and current RL research.
219

22-
As of July, I was not able to complete my research question and reach the intended target of evaluating a variety of
23-
neural network architectures that let a RL learn from other agents in its environment. Because of university
24-
regulations, changing a thesis title is not permitted. And while my research question was not answered, I believe I
25-
still contributed something valuable to the PowerTAC community. With my implementation, current state-of-the-art neural
26-
network algorithms and especially reinforcement agent implementations can be used to act in the PowerTAC competition.
27-
Any interested researcher with python skills can easily join the competition. And while I was not able to create a well
28-
performing broker in time and compete with the current participants of the competition, it is nonetheless now possible
29-
for others to work on a broker that deploys neural network technologies and to focus on the core problems of RL learning
30-
problems: Environment observation filtering, NN input preprocessing, reward function definition, neural network
31-
architecture experimentation etc. Using the created Docker images, developers are quickly able to start a competition
32-
with multiple brokers and future participants may be encouraged to adopt the Docker based distribution of their agents
33-
to include more advanced technologies in their broker implementations without placing a burden on others to manage these
34-
dependencies. The new communication layer may be adopted by the competition maintainers to improve performance and to
35-
enable other platforms to be used for writing brokers.
10+
Thanks to my parents Gudrun and Heiko for sparking and fostering my curiosity and for allowing me to pursue my education for years while
11+
always supporting me and believing in me.
3612

37-
When reading the thesis, please be aware that the title does not match the contents as one would expect. Adding a simple
38-
"Towards" at the beginning of the title would make it a perfect fit again. Unfortunately, I fell into the same trap that
39-
many software engineers and entire project teams fall into: Underestimating the complexity of the project which leads to
40-
either loss in quality, time overruns or budget overruns. I chose quality of the work I completed over making it work
41-
once but being useless for anyone else afterwards. I hope the thesis is still valuable to anyone who reads it and maybe
42-
upcoming graduate theses will continue where I left off.
13+
Thanks to my partner Giorgia for supporting me mentally throughout these months and helping me survive Naples, my home
14+
for the duration of this work and a city with many interesting and confusing customs. I must also thank her for
15+
introducing me to so many fantastic Pizzaoli of Naples for their creative and nourishing Pizze that fed me
16+
week after week.
17+
18+
And now that I am back in Germany, I should probably also thank the creative mechanics that repaired my overloaded car
19+
after breaking down somewhere in the foothills of the alps, 4 days before the deadline on my way back to Cologne. It
20+
takes a special kind of character to fix a 22 year old Toyota on a saturday morning without any spare parts for some
21+
young academic trying to make his way up north to complete his graduate studies.
22+
23+
%This thesis was planned and discussed in the winter of 17/18. On February 1st, the work phase of six months started.
24+
%Within these six months, I discovered many previously unknown or unforeseen complexities. These include the
25+
%communication technologies developed to permit a complete python based broker and a large variety of API approaches
26+
%within the RL agent libraries currently available. I invested a significant amount of effort into the
27+
%development of the required components,and I always intended to build something that may be reused in the future instead of
28+
%being discarded after my thesis was graded. This lead me to the decision of implementing a best practice based
29+
%communication instead of a minimal approach and lead me to try to write my python code in a way that will let
30+
%future broker developers reuse it as a framework for their broker implementations.
31+
%
32+
%Why not just write another broker in Java? I believe PowerTAC answers an important question of our time. But I also
33+
%believe there are not enough people working on this field and it doesn't receive the attention it should. Thousands of
34+
%researchers and those who want to become one are working on getting AI agents to become better at Atari games or playing
35+
%Doom. While the underlying technology advancements are fantastic, the application area is of no use to humanity. I
36+
%wanted to apply these new technologies to a problem that matters and do so in a way that will create artifacts that
37+
%others can build upon to outperform my solutions quickly. I wanted to create a bridge between the researchers of RL
38+
%implementations of recent years and their large community and the exciting field of energy markets. PowerTAC offers
39+
%another "game" to play with, another environment to let agents compete in. But it is an environment which actually
40+
%generates value when explored and improved.
41+
%
42+
%As of July, I was not able to complete my research question and reach the intended target of evaluating a variety of
43+
%neural network architectures that let a RL learn from other agents in its environment. Because of university
44+
%regulations, changing a thesis title is not permitted. And while my research question was not answered, I believe I
45+
%still contributed something valuable to the PowerTAC community. With my implementation, current state-of-the-art neural
46+
%network algorithms and especially reinforcement agent implementations can be used to act in the PowerTAC competition.
47+
%Any interested researcher with python skills can easily join the competition. And while I was not able to create a well
48+
%performing broker in time and compete with the current participants of the competition, it is nonetheless now possible
49+
%for others to work on a broker that deploys neural network technologies and to focus on the core problems of RL learning
50+
%problems: Environment observation filtering, NN input preprocessing, reward function definition, neural network
51+
%architecture experimentation etc. Using the created Docker images, developers are quickly able to start a competition
52+
%with multiple brokers and future participants may be encouraged to adopt the Docker based distribution of their agents
53+
%to include more advanced technologies in their broker implementations without placing a burden on others to manage these
54+
%dependencies. The new communication layer may be adopted by the competition maintainers to improve performance and to
55+
%enable other platforms to be used for writing brokers.
56+
%
57+
%When reading the thesis, please be aware that the title does not match the contents as one would expect. Adding a simple
58+
%"Towards" at the beginning of the title would make it a perfect fit again. Unfortunately, I fell into the same trap that
59+
%many software engineers and entire project teams fall into: Underestimating the complexity of the project which leads to
60+
%either loss in quality, time overruns or budget overruns. I chose quality of the work I completed over making it work
61+
%once but being useless for anyone else afterwards. I hope the thesis is still valuable to anyone who reads it and maybe
62+
%upcoming graduate theses will continue where I left off.

0 commit comments

Comments
 (0)