\section{Introduction} \subsection{Motivation} Buildings are a major consumer of energy, with more than 25\% of the total energy consumed in the EU coming from residential buildings~\cite{tsemekiditzeiranakiAnalysisEUResidential2019}. Combined with a steady increase in energy demand and stricter requirements on energy efficiency~\cite{europeancommission.jointresearchcentre.EnergyConsumptionEnergy2018}, this amplifies the need for more accessible means of regulating energy usage of new and existing buildings. Data-driven methods of building identification and control prove very useful through their ease of implementation, foregoing the need of more complex physics-based models. On the flip side, additional attention is required to the design of these control schemes, as the results could vary greatly from one implementation to another. Gaussian Processes have been previously used to model building dynamics, but they are usually limited by a fixed computational budget~\cite{jainLearningControlUsing2018,nghiemDatadrivenDemandResponse2017}. This limits the approaches that can be taken for identification and update of said models. Learning \acrfull{gp} models have also been previously used in the context of autonomous racing cars \cite{kabzanLearningBasedModelPredictive2019}, but there the Sparse \acrshort{gp} model was built on top of a white-box model and only responsible for fitting the unmodeled dynamics. \subsection{Previous Research} With the increase in computational power and availability of data over time, the accessibility of data-driven methods for system identification and control has also risen significantly. The idea of using Gaussian Processes as regression models for control of dynamic systems is not new, and has already been explored a number of times. A general description of their use, along with the necessary theory and some example implementations is given in~\cite{kocijanModellingControlDynamic2016}. In~\cite{pleweSupervisoryModelPredictive2020}, a \acrshort{gp} Model with a \acrlong{rq} Kernel is used for temperature set point optimization. Gaussian Processes for building control have also been studied before in the context of Demand Response~\cite{nghiemDatadrivenDemandResponse2017, jainLearningControlUsing2018}, where the buildings are used for their heat capacity in order to reduce the stress on energy providers during peak load times. There are, however, multiple limitations with these approaches. In~\cite{nghiemDatadrivenDemandResponse2017} the model is only identified once, ignoring changes in weather or plant parameters, which could lead to different dynamics. This is addressed in \cite{jainLearningControlUsing2018} by re-identifying the model every two weeks using new information. Another limitation is that of the scalability of the \acrshort{gp}s, which become prohibitively expensive from a computational point of view when too much data is added. Outside of the context of building control, Sparse \acrlong{gp}es have been used in autonomous racing in order to complement the physics-based model by fitting the unmodeled dynamics of the system~\cite{kabzanLearningBasedModelPredictive2019}. \subsection{Contribution} The ability to learn the plant's behaviour in new regions is very helpful in maintaining model performance over time, as its behaviour starts deviating and the original identified model goes further and further into the extrapolated regions. This project tries to combine the use of online learning control schemes with \acrshort{gp} Models through implementing \acrfull{svgp} Models. \acrshort{svgp}s provide means of extending the use of \acrshort{gp}s to larger datasets, thus enabling the periodic re-training of the model to include all the historically available data. \subsection{Project Outline} The main body of work can be divided in two parts: the development of a computer model of the \pdome\ building and the synthesis, validation and comparison of multiple control schemes using both classical \acrshort{gp}s, as well as \acrshort{svgp}s. Section~\ref{sec:gaussian_processes} provides the mathematical background for understanding \acrshort{gp}s, as well as the definition in very broad strokes of \acrshort{svgp}s and their differences from the classical implementation of \acrshort{gp}s. This information is later used for comparing their performances and outlining their respective pros and cons. Section~\ref{sec:CARNOT} goes into the details of the implementation of the \pdome\ computer model. The structure of the CARNOT model is described, and all the parameters required for the simulation are either directly sourced from existing literature, computed from available values or estimated using publicly available data from \textit{Google Maps}~\cite{GoogleMaps}. Following that, Section~\ref{sec:hyperparameters} discusses the choice of the hyperparameters for the \acrshort{gp} and \acrshort{svgp} models respectively in the context of their multi-step ahead simulation performance. The \acrlong{ocp} implemented in the \acrshort{mpc} controller is described in Section~\ref{sec:mpc_problem}, followed by a description of the complete controller implementation in Python in Section~\ref{sec:implementation}. Section~\ref{sec:results} presents and analyzes the results of full-year simulations for both \acrshort{gp} and \acrshort{svgp} models. A few variations on the initial \acrshort{svgp} model are further analyzed in order to identify the most important parameteres for long time operation. Finally, Section~\ref{sec:conclusion} provides a review of all the different implementation and discusses the possible improvements to both the current \acrshort{gp} and \acrshort{svgp} models. \clearpage