\section{Conclusion}~\label{sec:conclusion}

The aim of this project was to analyze the performance of \acrshort{gp} based
controllers for use in longer lasting implementations, where differences in
building behaviour become important compared to the initially available data.

First, the performance of a classical \acrshort{gp} model trained on five days
worth of experimental data was analyzed. Initially, this model performed very
well both in one step ahead prediction and multi-step ahead simulation over new,
unseen, data. With the change in weather, however, the model shifted from
operating in the interpolated regions to the extrapolated regions of the initial
weather data. In this scenario the model was unable to properly predict the
\pdome\ behaviour and, as a consequence, the \acrshort{mpc} controller became
unstable.

Following that, several \acrshort{svgp} implementations were analyzed. The
initial behaviour exhibited during parameter identification (cf.
Section~\ref{sec:hyperparameters}) showed that the \acrshort{svgp} model was
less capable of capturing building dynamics only based on the initial
experimental dataset, possibly due to the \acrshort{elbo} approximation of the
true log likelihood. While the \acrshort{svgp} model remained stable over the
course of the 20-step ahead simulation, in the later steps it drifted much
further from the real values than the equivalent \acrshort{gp} model.
However, during the full-year simulation, this downside of the \acrshort{svgp}
model was compensated by adding new data to the model training dataset each
night at midnight. The model performance continuously improved over the course
of the simulation, providing much better results overall.

To better analyze the learning behaviour of the \acrshort{svgp} models, three
variations of the initial \acrshort{svgp} were also simulated. The first
variation consisted of training the initial model on only one day's worth of
experimental data, as opposed to five days in the first case. This model was
then regularly updated every night at midnight, just as the initial case. It
turned out to provide very comparable results to the initial model, leading to
the conclusion that the \acrshort{svgp} model can be initially deployed using
much less training data, and it will still be able to correctly capture the
building dynamics on subsequent updates.

The second variation of the \acrshort{svgp} model was re-trained using a rolling
window of five days' worth of data, in order to see the model's ability to learn 
the proper building dynamics based only on closed-loop operation data. This
model turned out to be unstable, and the full-year simulation showed that every
time the model was trained using \textit{only} closed-loop operation data it
turned unstable. This prompted a much higher excitation of the building for the
following day, which in turn provided enough information to train a good model,
that would last until this information was too old to be included in the
training window, at which point the model would turn unstable again.

In the last variation, the \acrshort{svgp} model was trained using a linear
kernel. This model turned out to perform worse overall than the \acrshort{se}
kernel model since it was unable to capture the more nuanced, non-linear
behaviour of the building.


\subsection{Further Research}~\label{sec:further_research}

Section~\ref{sec:results} has presented and compared the results of a full-year
simulation for a classical \acrshort{gp} model, as well as a few incarnations of
\acrshort{svgp} models. The results show that the \acrshort{svgp} have much
better performance, mainly due to the possibility of updating the model
throughout the year. The \acrshort{svgp} models also present a computational
cost advantage both in training and in evaluation, due to several approximations
shown in Section~\ref{sec:gaussian_processes}.

Focusing on the \acrshort{gp} models, there could be several ways of improving
its performance, as noted previously: a more varied identification dataset and
smart update of a fixed-size data dictionary according to information gain,
could mitigate the present problems.

Using a Sparse \acrshort{gp} without replacing the maximum log likelihood
with the \acrshort{elbo} could improve performance of the \acrshort{gp} model at
the expense of training time.

An additional change that could be made is inclusion of the most amount of prior
information possible through setting a more refined kernel, as well as adding
prior information on all the model hyperparameters when available. This approach
however goes against the `spirit' of black-box approaches, since significant
insight into the physics of the plant is required in order to properly model and
implement this information.

On the \acrshort{svgp} side, several changes could also be proposed, which were
not properly addressed in this work. First, the size of the inducing dataset was
chosen experimentally until it was found to accurately reproduce the manually
collected experimental data. In order to better use the available computational
resources, this value could be found programmatically in a way to minimize
evaluation time, while still providing good performance. Another possibility is
the periodic re-evaluation of this value when new data comes in, since as more
and more data is collected the model becomes more complex, and in general more
inducing locations could be necessary to properly reproduce the training data.

Finally, none of the presented controllers take into account occupancy rates or
adapt to possible changes in the real building, such as adding or removing
furniture, deteriorating insulation and so on. The presented update methods only
deals with adding information on behaviour in different state space regions, i.e
\textit{learning}. Additionally, their ability to \textit{adapt} to changes in
the actual plant's behaviour should be further addressed.

\section*{Acknowledgements}

I would like to thank Manuel Koch for the great help provided during the course
of the project starting from the basics on CARNOT modelling, to helping me
better compare the performance of different controllers, as well as Prof.\ Colin
Jones, whose insights were always very guiding, while still allowing me to
discover everything on my own.

\clearpage
