\section{Introduction}
The problem of designing robust deterministic Model Predictive Control (MPC) schemes, has nowadays many solutions, see for example \cite{MagniBook07,rawbook,LimonEtAl-NMPC09}. However, the proposed approaches are in general computationally very demanding, since they either require the solution to difficult on-line min-max optimization problems, e.g.,~\cite{MagniDeNScatAll03}) or the off-line computations of polytopic robust positive invariant sets, see \cite{mayne2005robust}. In addition they are conservative, mainly because they (implicitly or explicitly) rely on worst-case approaches. Moreover, in case the uncertainties/disturbances are characterized as stochastic processes, constraints must be reformulated in a probabilistic framework \cite{Yaesh2003351,Hu2012477}, worst-case deterministic methods do not take advantage of the available knowledge on the characteristics of the process noises, such as their probability density function, and cannot even guarantee recursive feasibility in case of possibly unbounded disturbances.\\
Starting from the pioneering works \cite{Schwarm99,Li02}, these reasons have motivated the development of MPC algorithms for systems affected by stochastic noise and subject to probabilistic state and/or input constraints. Mainly two classes of algorithms have been developed so far. The first one relies on the randomized, or scenario-based approach, see e.g.,  \cite{Batina,Calaf,BlackmoreOnoBektassovWilliams-TR10}, a very general methodology that allows to consider linear or nonlinear systems affected by noise with general distributions with possibly unbounded and non-convex support. As a main drawback, randomized methods are still computationally very demanding for practical implementations and their feasibility and convergence properties are difficult to prove.\\
The second approach, referred in \cite{Cogill} as probabilistic approximation method, is based on the point-wise reformulation of probabilistic, or expectation, constraints in deterministic terms to be included in the MPC formulation. Interesting intermediate methods have been proposed in \cite{BernardiniBemporad-TAC12}, where a finite number of disturbance realizations are assumed, and in \cite{Korda}, where constraints averaged on time are considered. Among the wide class of probabilistic approximation algorithms, a further distinction can be based on the noise support assumptions, which can be either bounded, e.g., as in \cite{Korda,KouvaritakisCannonRakovicCheng-Automatica10,CannonChengKouvaritakisRakovic-Automatica12}
or unbounded, see for instance \cite{Bitmead,Primbs,Hokaymen,Cogill,CannonKouvaritakisWu-Automatica09,Ono-ACC12}. While for bounded disturbances recursive feasibility and convergence can be established, the more general case of unbounded noise poses more difficulties and some specific solutions and reformulations of these properties have been adopted, for example in \cite{CannonKouvaritakisWu-Automatica09} the concept of invariance with probability $p$ is used, while in \cite{Ono-ACC12} the definition of probabilistic resolvability is introduced. Also, linear systems with known state have generally been considered, with the notable exceptions of \cite{Bitmead,Hokaymen,CannonChengKouvaritakisRakovic-Automatica12}, where output feedback methods have been proposed.\\
Finally, it must be remarked that some of the mentioned approaches have been successfully applied in many applicative settings, such as building temperature regulation \cite{OldewurtelParisioJonesMorariEtAl-ACC10} and automotive applications \cite{GrayBorrelli-ITSC13,BlackmoreOnoBektassovWilliams-TR10,BichiRipaccioliDiCairanoBernardiniBemporadKolmanovsky-CDC10}.\\
In this paper, an output feedback algorithm for linear discrete-time systems affected by a possibly unbounded additive noise is proposed. In case the noise distribution is unknown, the chance constraints on the inputs and state variables are reformulated by means of the Chebyshev - Cantelli inequality \cite{Cantelli}, as originally proposed in \cite{Locatelli} for the design of decentralized controllers and in \cite{Pala} in the context of MPC. Later, this approach has also been considered in \cite{Cogill,GrayBorrelli-ITSC13}, and used to develop preliminary versions of the algorithm here proposed in \cite{FGMS13_CDC,FGMS14_IFAC}. With respect to \cite{FGMS13_CDC,FGMS14_IFAC}, in this paper we discuss, in a consistent fashion and in a detailed way, our control approach. In particular, we address also the case when the noise distribution is known (i.e., and it is Gaussian). We also address algorithm implementation aspects, proposing two novel and theoretically well funded approximated schemes and full implementation details. The algorithm computational load can be made similar to the one of a standard stabilizing MPC algorithm with a proper choice of the design parameters. Importantly, the computation of robust positively invariant sets is not required and, in view of its simplicity and of the required lightweight computational load, the application of the proposed approach to medium/large-scale problems is allowed. The recursive feasibility of the proposed algorithm is guaranteed by a switching MPC strategy which does not require any relaxation technique, and the convergence of the state to a suitable neighbor of the origin is proved.\\
The paper is organized as follows. In Section \ref{sec:problem_statement} we first introduce the main control problem, then we define and properly reformulate the probabilistic constraints.
In Section \ref{MPC} we formulate the Stochastic MPC optimization problem and we give the general theoretical results. Section \ref{sec:num_implementation} is devoted to the implementation issues, while in Section \ref{sec:example} two examples are discussed in detail: the first one is analytic and is aimed at comparing the conservativeness of the algorithm to the one of the well known tube based approach \cite{mayne2005robust}, while the second one is numeric and allows for a comparison of the different algorithm implementations. Finally, in Section \ref{sec:conclusions} we draw some conclusions. For clarity of exposition, the proof of the main theoretical results is postponed to the Appendix.\\
\textbf{Notation}. The symbols $\succ$ and $\succeq$ (respectively $\prec$, and $\preceq$) are used to denote positive definite and semi-positive definite (respectively negative definite and semi-negative definite) matrices. The point-to-set distance from $\zeta$ to $\mathcal{Z}$ is $\mathrm{dist}(\zeta,\mathcal{Z}):=\inf\{\|\zeta-z\|,z\in\mathcal{Z}\}$.
	%
\section{Problem statement}
\label{sec:problem_statement}
    \subsection{Stochastic system and probabilistic constraints}
    %
	Consider the following discrete-time linear system
	\begin{equation}
	\left\{\begin{array}{l}
	x_{t+1}=Ax_t+Bu_t+Fw_t \quad t\geq 0\\
	y_{t}=Cx_t+v_t
	\end{array}\right .
	\label{eq:model}\end{equation}
	where
	$x_t\in \mathbb{R}^n$
	is the state,
	$u_t\in\mathbb{R}^m$
	is the input,
	$y_t\in\mathbb{R}^p$
	is the measured output and
	$w_t\in\mathbb{R}^{n_w}, v_t\in\mathbb{R}^{p}$
	are two independent, zero-mean, white noises with covariance matrices $W\succeq 0$ and $V\succ0$, respectively, and a-priori unbounded support. The pair $(A,C)$ is assumed to be observable, and the pairs $(A,B)$ and $(A,\tilde{F})$ are reachable, where matrix $\tilde{F}$ satisfies $\tilde{F}\tilde{F}^T=FWF^T$.\\
	%
	Polytopic constraints on the state and input variables of system \eqref{eq:model} are imposed in a probabilistic way, i.e., it is required that, for all $t\geq 0$
	\begin{align}\label{eq:prob_constraint_state}
	\mathbb{P}\{b_r^Tx_{t}\geq x^{ max}_r\}&\leq p_r^x \quad r=1,\dots, n_r\\
    \label{eq:prob_constraint_input}
	\mathbb{P}\{c_s^Tu_{t}\geq u^{ max}_s\}&\leq p_s^u \quad s=1,\dots, n_s
	\end{align}
	where $\mathbb{P}(\phi)$ denotes the probability of $\phi$, $b_r$, $c_s$ are constant vectors, $x_r^{ max}$, $u_s^{ max}$  are bounds for the state and control variables, and $p^x_r, p^u_s$ are design parameters.
	It is also assumed that the set of relations $b_r^Tx\leq x^{ max}_r$, $r=1,\dots, n_r$ (respectively, $c_s^Tu\leq u^{ max}_s$, $s=1,\dots, n_s$), defines a convex set $\mathbb{X}$ (respectively, $\mathbb{U}$) containing the origin in its interior.
\subsection{Regulator structure}
For system~\eqref{eq:model}, we want to design a standard regulation scheme made by the state observer
\begin{equation}\label{eq:observer1}
	 \hat{x}_{t+1}=A\hat{x}_{t}+Bu_t+L_{t}(y_t-C\hat{x}_{t})
\end{equation}
coupled with the feedback control law
\begin{equation}\label{eq:fb_control_law_ideal}
	u_{t}=\bar{u}_{t}-K_{t}(\hat{x}_t-\bar{x}_{t})
\end{equation}
where $\bar{x}$ is the state of the nominal model
\begin{equation}\label{eq:mean_value_evolution_freeIC}
	\bar{x}_{t+1}=A\bar{x}_{t}+B\bar{u}_{t}
\end{equation}
In \eqref{eq:observer1}, \eqref{eq:fb_control_law_ideal}, the feedforward term $\bar{u}_{t}$ and the gains $L_{t}$, $K_{t}$ are design parameters to be selected to guarantee convergence properties and the fulfillment of the probabilistic constraints \eqref{eq:prob_constraint_state}, \eqref{eq:prob_constraint_input}.\\
Letting
\begin{subequations}
\label{eq:errors}
	\begin{align}
    e_{t}&=x_{t}-\hat{x}_{t}\label{eq:obs_error}\\
    \varepsilon_{t}&=\hat{x}_{t}-\bar{x}_{t}\label{est_error}
	\end{align}
\end{subequations}
	from \eqref{eq:errors} we obtain that
	\begin{equation}\label{eq:error2}
	\delta x_{t}=x_{t}-\bar{x}_{t}=
	e_{t}+\varepsilon_{t}
	\end{equation}
	Define also the vector
    $\sigma_{t}=\begin{bmatrix}e_{t}^T& \varepsilon_{t}^T\end{bmatrix}^T$
    whose dynamics, according to \eqref{eq:model}-\eqref{eq:errors}, is described by
	\begin{equation}\label{eq:error_matrix}
\begin{array}{ll}
	\sigma_{t+1}=&\Phi_{t} \sigma_{t}+\Psi_{t}
	 \begin{bmatrix}w_{t}\\v_{t}\end{bmatrix}\end{array}
	\end{equation}
where $$\Phi_{t}=
 \begin{bmatrix}A-L_{t}C&0\\L_{t}C&A-BK_{t}\end{bmatrix},\,\Psi_{t}=\begin{bmatrix}F&-L_{t}\\0&L_{t}\end{bmatrix}$$
 In the following it is assumed that, by a proper initialization, i.e. $\mathbb{E}\left\{\sigma_{0}\right\}=0$, and recalling that the noises $v$ and $w$ are zero mean, the enlarged state $\sigma_{t}$ of system \eqref{eq:error_matrix} is zero-mean, so that $\bar{x}_{t}=\mathbb{E}\{x_{t}\}$. Then, denoting by
$\Sigma_{t}=\mathbb{E}\left\{
	\sigma_{t}\sigma_{t}^T
	\right\}$ and by $\Omega=\mathrm{diag}(W,V)$ the covariance matrices of $\sigma_{t}$ and $[w_{t}^T\, v_{t}^T]^T$ respectively, the evolution of $\Sigma_{t}$ is governed by
	\begin{align}\label{eq:variance_evolution_error}
	 &\Sigma_{t+1}=\Phi_{t}\Sigma_{t}\Phi_{t}^T+\Psi_{t}\Omega\Psi_{t}^T
	\end{align}
	By definition, also the variable $\delta x_{t}$ defined by \eqref{eq:error2} is zero mean and its covariance matrix $X_{t}$ can be derived from $\Sigma_{t}$ as follows
	\begin{align}\label{eq:variance_evolution_state}
	X_{t}=\mathbb{E}\left\{\delta x_{t} \delta x_{t}^T\right\}
	=\begin{bmatrix}I&I\end{bmatrix}\Sigma_{t}
	\begin{bmatrix}I\\I\end{bmatrix}
	\end{align}
    Finally, letting $\delta u_{t}=u_{t}-\bar{u}_{t}=-K_{t}(\hat{x}_{t}-\bar{x}_{t})$, one has $\mathbb{E}\left\{\delta u_{t}\right\}=0$ and also the covariance matrix
    $U_{t}=\mathbb{E}\left\{\delta u_{t} \delta u_{t}^T\right\}$ can be obtained from $\Sigma_{t}$ as follows
	\begin{align}\label{eq:variance_evolution_input}
	U_{t}=&\mathbb{E}\left\{K_{t}\varepsilon_{t} \varepsilon_{t}^TK_{t}^T\right\}=\begin{bmatrix}0&K_{t}\end{bmatrix}\Sigma_{t}
	\begin{bmatrix}0\\K_{t}^T\end{bmatrix}
	\end{align}
\subsection{Reformulation of the probabilistic constraints}
To set up a suitable control algorithm for the design of $\bar{u}_{t}$, $L_{t}$, $K_{t}$, the probabilistic constraints  \eqref{eq:prob_constraint_state} and \eqref{eq:prob_constraint_input} are now reformulated as deterministic ones at the price of suitable tightening. To this end, consider, in general, a random variable $z$ with mean value $\bar{z}=\mathbb{E}\{z\}$, variance $Z=\mathbb{E}\{(z-\bar{z})(z-\bar{z})^T\}$, and the chance-constraint
\begin{equation}\mathbb{P}\{h^T z\geq z^{ max}\}\leq p\label{eq:prob_constraint_general}\end{equation}
The following result, based on the Chebyshev - Cantelli inequality \cite{Cantelli}, has been proven in~\cite{Pala}.
\begin{proposition}
\label{prop:Cantelli}
Letting $f(p)=\sqrt{(1-p)/{p}}$, constraint \eqref{eq:prob_constraint_general}
is verified if
\begin{equation}
h^T\bar{z}\leq z^{ max}-\sqrt{h^T Z h}\,f(p)
\label{eq:Cantelli_propGen}
\end{equation}
\end{proposition}
Note that this result can be proved without introducing any specific assumption on the distribution of~$z$. If, on the other hand, $z$ can be assumed to be normally distributed, less conservative constraints can be obtained, as stated in the following result.
\begin{proposition}
\label{prop:gen_distr}
Assume that $z$ is normally distributed. Then, constraint \eqref{eq:prob_constraint_general}
is verified if \eqref{eq:Cantelli_propGen} holds with $f(p)=\mathcal{N}^{-1}(1-p)$ where $\mathcal{N}$ is the cumulative probability function of a Gaussian variable with zero mean and unitary variance.
\end{proposition}
In Propositions \ref{prop:Cantelli} and \ref{prop:gen_distr}, the function $f(p)$ represents the level of constraint tightening on the mean value of $z$ needed to meet the probabilistic constraint \eqref{eq:prob_constraint_general}. In case of unknown distribution (Proposition \ref{prop:Cantelli}) the values of $f(p)$ are significantly smaller with respect to the Gaussian case (e.g., about an order of magnitude in the range $(0.1, 0.4)$). Similar results can be derived in case of different distributions (e.g., homogeneous).\\
In view of Propositions \ref{prop:Cantelli} and \ref{prop:gen_distr}, the chance-constraints \eqref{eq:prob_constraint_state}-\eqref{eq:prob_constraint_input} are verified provided that the following (deterministic) inequalities are satisfied.
\begin{subequations}
\begin{align}
b_r^T\bar{x}_{t}&\leq x_r^{max}-\sqrt{b_r^T X_{t} b_r}f(p^x_r)\label{eq:Cantelli_ineqs_state}\\
c_s^T\bar{u}_{t}&\leq u_s^{max}-\sqrt{c_s^T U_{t} c_s}f(p_s^u)\label{eq:Cantelli_ineqs_input}
\end{align}
\label{eq:Cantelli_ineqs}
\end{subequations}
If the support of the noise terms $w_k$ and $v_k$ is unbounded, the definition of state and control constraints in probabilistic terms is the only way to state feasible control problems. In case of bounded noises the comparison, in terms of conservativeness between the probabilistic framework and the deterministic one, is discussed in the example in Section \ref{app:example_constrs}.
	%
	%
	\section{MPC algorithm: formulation and properties}
	\label{MPC}
	To formally state the MPC algorithm for the computation of the regulator parameters $\bar{u}_{t}$, $L_{t}$, $K_{t}$, the following notation will be adopted: given a variable $z$ or a matrix $Z$, at any time step $t$ we will denote by $z_{t+k}$ and $Z_{t+k}$, $k\geq 0$, their generic values in the future, while $z_{t+k|t}$ and $Z_{t+k|t}$ will represent their specific values computed based on the knowledge (e.g., measurements) available at time $t$.\\
The main ingredients of the optimization problem are now introduced.
\subsection{Cost function}
Assume to be at time $t$ and denote by $\bar{u}_{t,\dots, t+N-1}=\{\bar{u}_t, \dots, \bar{u}_{t+N-1}\}$ the nominal input sequence over a future prediction horizon of length $N$. Moreover, define by $K_{t,\dots, t+N-1}=\{K_t, \dots, K_{t+N-1}\}$, $L_{t,\dots, t+N-1}=\{L_t, \dots, L_{t+N-1}\}$ the sequences of the future control and observer gains, and recall that the covariance $\Sigma_{t+k}=\mathbb{E}\left\{\sigma_{t+k}\sigma_{t+k}^T\right\}$ evolves, starting from $\Sigma_{t}$, according to \eqref{eq:variance_evolution_error}.\\
The cost function to be minimized is the sum of two components, the first one ($J_{m}$) accounts for the expected values of the future nominal inputs and states, while the second one ($J_{v}$) is related to the variances of the future errors $e$, $\varepsilon$, and of the future inputs. Specifically, the overall performance index is
	 \begin{align}\label{eq:JTOT
	J=J_m(\bar{x}_t,\bar{u}_{t,\dots, t+N-1})+J_v(\Sigma_t,K_{t,\dots, t+N-1},L_{t,\dots, t+N-1})
	\end{align}
	where
	\begin{align}
	&J_m=\sum_{i=t}^{t+N-1} \| \bar{x}_{i}\|_{Q}^2+\| \bar{u}_{i}\|_{R}^2+\| \bar{x}_{t+N}\|_{S}^2\label{eq:mean_cost_function}\\
	&J_v=\mathbb{E}\left\{\sum\limits_{i=t}^{t+N-1} \| x_i-\hat{x}_i \|_{Q_L}^2+\| x_{t+N}-\hat{x}_{t+N} \|_{S_{L}}^2 \right\}+\nonumber\\ &\mathbb{E}\left\{\sum\limits_{i=t}^{t+N-1} \| \hat{x}_i-\bar{x}_i \|_Q^2+\| u_i-\bar{u}_i \|_R^2+\| \hat{x}_{t+N}-\bar{x}_{t+N} \|_{S}^2 \right\} \label{eq:variance_cost_function1}\end{align}
where the positive definite and symmetric weights $Q$, $Q_L$, $S$, and $S_L$ must satisfy the following inequality
	\begin{equation}\label{eq:Lyap_S} Q_{T}-S_{T}+\Phi^TS_{T}\Phi\preceq 	 0 \end{equation}
	where $$\Phi=\begin{bmatrix}A-\bar{L}C&0\\\bar{L}C&A-B\bar{K}\end{bmatrix}$$
$Q_{T}=\mathrm{diag}(Q_{L},Q+\bar{K}^TR\bar{K})$, $S_{T}=\mathrm{diag}(S_{L},S)$,
and $\bar{K}$, $\bar{L}$ must be chosen to guarantee that $\Phi$ is asymptotically stable.\\
By means of standard computations, it is possible to write the cost \eqref{eq:variance_cost_function1} as follows
\begin{equation}\label{eq:variance_cost_function}
J_v=\sum_{i=t}^{t+N-1} \mathrm{tr}(Q_{T} \Sigma_{i})+ \mathrm{tr} (S_{T} \Sigma_{t+N})
\end{equation}
From \eqref{eq:JTOT}-\eqref{eq:variance_cost_function1}, it is apparent that the goal is twofold: to drive the mean $\bar{x}$ to zero by acting on the nominal input component $\bar{u}_{t,\dots, t+N-1}$ and to minimize the variance of $\Sigma$ by acting on the gains $K_{t,\dots, t+N-1}$ and $L_{t,\dots, t+N-1}$. In addition, also the pair $(\bar{x}_{t},\Sigma_t)$ must be considered as an additional argument of the MPC optimization, as later discussed, to guarantee recursive feasibility.
\subsection{Terminal constraints}
	As usual in stabilizing MPC, see e.g. \cite{Mayne00}, some terminal constraints must be included into the problem formulation. In our setup, the mean $\bar{x}_{t+N}$ and the variance $\Sigma_{t+N}$ at the end of the prediction horizon must satisfy
	\begin{align}
	 \bar{x}_{t+N}&\in\bar{\mathbb{X}}_F\label{eq:term_constraint_mean}\\
	\Sigma_{t+N}&\preceq \bar{\Sigma}\label{eq:term_constraint_variance}
	\end{align}
where $\bar{\mathbb{X}}_F$ is a positively invariant set (see \cite{Gilbert}) such that
	\begin{align}\label{eq:inv_terminal}
	(A-B\bar{K})\bar{x}&\in\bar{\mathbb{X}}_F  \quad &\forall \bar{x}\in \bar{\mathbb{X}}_F
	\end{align}
while $\bar{\Sigma}$ is the steady-state solution of the Lyapunov equation \eqref{eq:variance_evolution_error}, i.e.,
\begin{align}
\bar{\Sigma}=&
    \Phi
	 \bar{\Sigma}
	 \Phi^T+\Psi\bar{\Omega}\Psi^T
\label{eq:Riccati_1}
\end{align}
where
$\Psi=\begin{bmatrix}F&-\bar{L}\\0  &\bar{L} \end{bmatrix}$
and $\bar{\Omega}=\mathrm{diag}(\bar{W},\bar{V})$ is built by considering (arbitrary) noise variances $\bar{W}\succeq W$ and $\bar{V}\succeq V$.
In addition, and consistently with \eqref{eq:Cantelli_ineqs}, the following coupling conditions, must be verified.
	\begin{subequations}
    \label{eq:linear_constraint_finalc}
	\begin{align}
	b_r^T\bar{x}&\leq x_r^{max}-\sqrt{b_r^T \bar{X} b_r}f(p^x_r) \label{eq:linear_constraint_state_finalc}\\
	-c_s^T\bar{K}\bar{x}&\leq u_s^{max}-\sqrt{c_s^T \bar{U} c_s}f(p_s^u) \label{eq:linear_constraint_input_finalc}
	\end{align}
	\end{subequations}
	for all $r=1,\dots, n_r$, $s=1,\dots, n_s$, and for all $\bar{x}\in\bar{\mathbb{X}}_F$, where
	\begin{subequations}
    \label{eq:bar_def}
    \begin{align}
    \bar{X}&=\begin{bmatrix}I&I\end{bmatrix}\bar{\Sigma}\begin{bmatrix}I\\I\end{bmatrix}\label{eq:Xbar_def}\\
    \bar{U}&=\begin{bmatrix}0&\bar{K}\end{bmatrix}\bar{\Sigma}\label{eq:Ubar_def}
	\begin{bmatrix}0\\\bar{K}^T\end{bmatrix}
	\end{align}\end{subequations}
	%
It is worth remarking that the choice of $\bar{\Omega}$ is subject to a tradeoff. In fact, large variances $\bar{W}$ and $\bar{V}$ result in large $\bar{\Sigma}$ (and, in view of \eqref{eq:bar_def}, large $\bar{X}$ and $\bar{U}$). This enlarges the terminal constraint \eqref{eq:term_constraint_variance} but, on the other hand, reduces the size of the terminal set $\mathbb{X}_F$ compatible with \eqref{eq:linear_constraint_finalc}.
	%
	\subsection{Statement of the stochastic MPC (S-MPC) problem}
	%
The formulation of the main S-MPC problem requires a  preliminary discussion concerning the initialization. In principle, and in order to use the most recent information available on the state, at any time instant it would be natural to set the current value of the nominal state $\bar{x}_{t|t}$ to $\hat x_{t}$ and the covariance $\Sigma_{t|t}$ to $\mathrm{diag}(\Sigma_{11,t|t-1},0)$, where $\Sigma_{11,t|t-1}$ is the covariance of state prediction error $e$ obtained using the observer~\eqref{eq:observer1}. However, since we do not exclude the possibility of unbounded disturbances, in some cases this choice could lead to infeasible optimization problems. On the other hand, and in view of the terminal constraints \eqref{eq:term_constraint_mean}, \eqref{eq:term_constraint_variance}, it is quite easy to see that recursive feasibility is guaranteed provided that $\bar{x}$ is updated according to the prediction equation \eqref{eq:mean_value_evolution_freeIC}, which corresponds to the variance update given by \eqref{eq:variance_evolution_error}. These considerations motivate the choice of accounting for the initial conditions $(\bar{x}_t,\Sigma_t)$ as free variables, which will selected by the control algorithm according to the following alternative strategies.\\
	\textbf{Strategy 1} Reset of the initial state: $\bar{x}_{t|t}=\hat x_{t}$, $\Sigma_{t|t}=\mathrm{diag}(\Sigma_{11,t|t-1},0)$.\\
	\textbf{Strategy 2} Prediction: $\bar{x}_{t|t}=\bar{x}_{t|t-1}$, $\Sigma_{t|t}=\Sigma_{t|t-1}$.\\
	%
	%
The S-MPC problem can now be stated.\\\\
	\textbf{S-MPC problem: }at any time instant $t$ solve

    $$\min_{\bar{x}_{t},\Sigma_{t},\bar{u}_{t, \dots, t+N-1},
	K_{t,\dots, t+N-1},L_{t,\dots, t+N-1}} J$$
where $J$ is defined in \eqref{eq:JTOT}, \eqref{eq:mean_cost_function}, \eqref{eq:variance_cost_function1}, subject to
\begin{itemize}
  \item[-] the dynamics~\eqref{eq:mean_value_evolution_freeIC} and~\eqref{eq:variance_evolution_error};
  \item[-] constraints~\eqref{eq:Cantelli_ineqs} for all $k=0,\dots,N-1$;
  \item[-] the initialization constraint, corresponding to the choice between Strategies 1 and 2, i.e.,
	\begin{equation}\label{eq:reset_constraint}
	  (\bar{x}_{t},\Sigma_{t})\in\{(\hat x_t,\mathrm{diag}(\Sigma_{11,t|t-1},0)),(\bar{x}_{t|t-1},\Sigma_{t|t-1})\}
	\end{equation}
    \item[-] the terminal constraints~\eqref{eq:term_constraint_mean}, \eqref{eq:term_constraint_variance}.\hfill$\square$
\end{itemize}
	Denoting by
	$\bar{u}_{t,\dots, t+N-1|t}=\{\bar{u}_{t|t},\dots, \bar{u}_{t+N-1|t}\}$,
	$K_{t,\dots, t+N-1|t}=\{K_{t|t},\dots,$\break
$K_{t+N-1|t}\}$,
	$L_{t,\dots, t+N-1|t}=$
$\{L_{t|t},\dots, L_{t+N-1|t}\}$, and
($\bar{x}_{t|t},\Sigma_{t|t}$)
	the optimal solution of the S-MPC problem, the feedback control law actually used is then given by~\eqref{eq:fb_control_law_ideal} with
$\bar{u}_{t}=\bar{u}_{t|t}$, $K_{t}=K_{t|t}$, and the state observation evolves as in~\eqref{eq:observer1} with $L_{t}=L_{t|t}$.\\
	We define the S-MPC problem feasibility set as
\begin{center}
	$\Xi:=\{(\bar{x}_0,\Sigma_0):\exists \bar{u}_{0,\dots, N-1},K_{0,\dots, N-1},L_{0,\dots, N-1}$
such that~\eqref{eq:mean_value_evolution_freeIC},~\eqref{eq:variance_evolution_error}, and \eqref{eq:Cantelli_ineqs} hold for all $k=0,\dots,N-1$ and \eqref{eq:term_constraint_mean}, \eqref{eq:term_constraint_variance} are verified\}\end{center}
Some comments are in order.
	\setlength{\leftmargini}{0.5em}
	\begin{itemize}
	\item[-]At the initial time $t=0$, the algorithm must be initialized by setting $\bar{x}_{0|0}=\hat{x}_{0}$ and $\Sigma_{0|0}=\mathrm{diag}(\Sigma_{11,0},0)$. In view of this, feasibility at time $t=0$ amounts to $(\hat{x}_0,\Sigma_{0|0})\in\Xi$.
	\item[-] The binary choice between Strategies 1 and 2 requires to solve at any time instant two optimization problems. However, the following sequential procedure can be adopted to reduce the average overall computational burden: the optimization problem corresponding to Strategy 1 is first solved and, if it is infeasible, Strategy 2 must be used, otherwise Strategy 2 must be solved and adopted. On the contrary, if it is feasible, it is possible to compare the resulting value of the optimal cost function with the value of the cost using the sequences $\{\bar{u}_{t|t-1},\dots, \bar{u}_{t+N-2|t-1}, -\bar{K}\bar{x}_{t+N-1|t}\}$, $\{K_{t|t-1},\dots, K_{t+N-2|t-1}, \bar{K}\}$, $\{L_{t|t-1},\dots,$ $L_{t+N-2|t-1}, \bar{L}\}$. If the optimal cost with Strategy 1 is lower, Strategy 1 can be used without solving the MPC problem for Strategy 2. This does not guarantee optimality, but the convergence properties of the method stated in the result below are recovered and the computational effort is reduced.
	\end{itemize}
	%
	Now we are in the position to state the main result concerning the convergence properties of the algorithm.
	\begin{thm}\label{thm:main}
    If, at $t=0$, the S-MPC problem admits a solution, the optimization problem is recursively feasible and the state and input probabilistic constraints \eqref{eq:prob_constraint_state} and \eqref{eq:prob_constraint_input} are satisfied for all $t\geq 0$. Furthermore, if there exists $\rho\in(0,1)$ such that the noise variance $\Omega$ verifies
	\begin{align}
	 \frac{(N+\frac{\beta}{\alpha})}{\alpha}\mathrm{tr}(S_T\Psi \Omega \Psi^T)&<\min(\rho\bar{\sigma}^2,\rho\lambda_{min}(\bar{\Sigma}))\label{eq:cons_conds_on_W}
	\end{align}
	%
	where $\bar{\sigma}$ is the maximum radius of a ball, centered at the origin, included in $\bar{\mathbb{X}}_F$, and
    \begin{subequations}
        \begin{align}
        \alpha&=\min\{\lambda_{min}(Q),\mathrm{tr}\{Q^{-1}+Q_L^{-1}\}^{-1}\}\\
        \beta&=\max\{\lambda_{max}(S),\mathrm{tr}\{S_T\}\}
        \end{align}
        \label{eq:lambda_def}
    \end{subequations}
	then, as $t\rightarrow +\infty$\\
	 %
    \begin{align}\mathrm{dist}(\|\bar{x}_t\|^2+\mathrm{tr}\{\Sigma_{t|t}\},[0,\frac{1}{\alpha}(N+\frac{\beta}{\alpha})\,\mathrm{tr}(S_T\Psi \Omega \Psi^T)])\rightarrow 0\label{eq:thm_stat}\end{align}\hfill$\square$
    \end{thm}
    Note that, as expected, for smaller and smaller values of $\Omega$, also the asymptotic values of $\|\bar{x}_t\|$ and $\mathrm{tr}\{\Sigma_{t|t}\}$  tend to zero.
    %
\section{Implementation issues}
\label{sec:num_implementation}
The main difficulty in the solution to the S-MPC problem is due to the non linear constraints \eqref{eq:Cantelli_ineqs} and to the non linear dependence of the covariance evolution,  see~\eqref{eq:variance_evolution_error}, on $K_{t,\dots, t+N-1},L_{t,\dots, t+N-1}$. This second problem can be prevented in the state feedback case, see \cite{FGMS13_CDC}, where a reformulation based on linear matrix inequalities (LMIs) can be readily obtained. In the output feedback case here considered, two possible solutions are described in the following.\\
Also, in Section \ref{sec:inputs} we briefly describe some possible solutions for coping with the presence of additive deterministic constraints on the input variables $u_t$.
\subsection{Approximation of S-MPC for allowing a solution with LMIs}
A solution, based on an approximation of S-MPC characterized by linear constraints solely, is now presented.
First define $A^D=\sqrt{2}A,B^D=\sqrt{2}B,C^D=\sqrt{2}C$, and $V^D=2V$ and let the auxiliary gain matrices $\bar{K}$ and $\bar{L}$ be selected according to the following assumption.
\begin{assumption}
\label{ass:KandL}
The gains $\bar{K}$ and $\bar{L}$ are computed as the steady-state gains of the LQG regulator for the system $(A^D,B^D,C^D)$, with state and control weights $Q$ and $R$, and noise covariances $\bar{W}\succeq W$ and $\bar{V}\succeq V^D$.
\end{assumption}
Note that, if a gain matrix $\bar{K}$ (respectively $\bar{L}$) is stabilizing for $(A^D-B^D\bar{K})=\sqrt{2}(A-B\bar{K})$ (respectively $(A^D-\bar{L}C^D)=\sqrt{2}(A-\bar{L}C)$), it is also stabilizing for $(A-B\bar{K})$ (respectively $(A-\bar{L}C)$), i.e., for the original system. The following preliminary result can be stated.
\begin{lemma}
\label{lemma:bound_var_main}
Define $A^D_{L_t}=A^D-L_tC^D$, $A^D_{K_t}=A^D-B^DK_t$, the block diagonal matrix $\Sigma^D_t=\mathrm{diag}(\Sigma_{11,t}^D,\Sigma_{22,t}^D)$, $\Sigma_{11,t}^D\in \mathbb{R}^{n\times n}$, $\Sigma_{22,t}^D\in \mathbb{R}^{n\times n}$  and the update equations
\begin{subequations}
\begin{align}
	 \Sigma_{11,t+1}^D=&A^D_{L_t}\Sigma_{11,t}^D(A^D_{L_t})^T+FWF^T+L_t V^D L_t^T\label{eq:sigmaD1}\\	 \Sigma_{22,t+1}^D=&A^D_{K_t}\Sigma_{22,t}^D(A^D_{K_t})^T+L_tC^D\Sigma_{11,t}^DC^{D\ T}L_t^T\nonumber\\
&+L_t V^D L_t^T\label{eq:sigmaD2}
\end{align}
\label{eq:SigmaDupdate}
\end{subequations}
Then\\
I) $\Sigma^D_t\succeq \Sigma_t$ implies that $\Sigma^D_{t+1}=\mathrm{diag}(\Sigma_{11,t+1}^D,\Sigma_{22,t+1}^D)\succeq \Sigma_{t+1}$.\\
II) We can rewrite as LMIs the following inequalities
\begin{subequations}
\begin{align} \Sigma_{11,t+1}^D\succeq &A^D_{L_t}\Sigma_{11,t}^D(A^D_{L_t})^T+FWF^T+L_t V^D L_t^T\label{eq:sigmaD1LMI}\\ \Sigma_{22,t+1}^D \succeq & A^D_{K_t}\Sigma_{22,t}^D(A^D_{K_t})^T+L_tC^D\Sigma_{11,t}^DC^{D\ T}L_t^T\nonumber\\
&+L_t V^D L_t^T\label{eq:sigmaD2LMI}
\end{align}
\label{eq:SigmaDupdateLMI}
\end{subequations}
\end{lemma}
Based on Lemma~\ref{lemma:bound_var_main}-II, we can reformulate the original problem so that the covariance matrix $\Sigma^{D}$ is used instead of $\Sigma$. Accordingly, the update equation~\eqref{eq:variance_evolution_error} is replaced by \eqref{eq:SigmaDupdate} and S-MPC problem is recast as an LMI one (see Appendix \ref{app:LMI}).\\
The inequalities \eqref{eq:Cantelli_ineqs} have a nonlinear dependence on the covariance matrices $X_{t}$ and $U_{t}$. It is possible to prove that \eqref{eq:Cantelli_ineqs} are satisfied if
\begin{subequations}\label{eq:Cantelli_ineqs_lin}
	\begin{align}
	b_r^T\bar{x}_{t}&\leq
	(1-0.5\alpha_x)x_r^{ max}-\frac{b_r^T X_{t}b_r}{2\alpha_x x_r^{ max}} f(p_r^x)^2 \label{eq:linear_constraint_state}\\
	c_s^T\bar{u}_{t}&\leq (1-0.5\alpha_u)u_s^{ max}-\frac{c_s^TU_{t}c_s}{2\alpha_u u_s^{ max}} f(p_s^u)^2\label{eq:linear_constraint_input}
\end{align}\end{subequations}
	with $r=1,\dots, n_r$ and $s=1,\dots, n_s$, where $\alpha_x\in(0, 1]$ and $\alpha_u\in(0, 1]$ are free design parameters. Also, note that
$X_{t}\preceq\begin{bmatrix}
	I&I
	\end{bmatrix}\Sigma_{t}^D\begin{bmatrix}
	I\\I
	\end{bmatrix}= \Sigma_{11,t}^D+\Sigma_{22,t}^D$ and that $U_{t}\preceq\begin{bmatrix}
	0&K_{t}
	\end{bmatrix}\Sigma_{t}^D\begin{bmatrix}
	0\\K_{t}^T
	\end{bmatrix}=K_{t}\Sigma_{22,t}^DK_{t}^T$
so that, defining $X_{t}^D=\Sigma_{11,t}^D+ \Sigma_{22,t}^D$ and $U_{t}^D=K_{t}\Sigma_{22,t}^DK_{t}^T$,~\eqref{eq:Cantelli_ineqs_lin} can be written as follows
\begin{subequations}\label{eq:Cantelli_ineqs_linL}
	\begin{align}
	b_r^T\bar{x}_{t}&\leq
	(1-0.5\alpha_x)x_r^{ max}-\frac{b_r^TX_{t}^D b_r}{2\alpha_x x_r^{ max}} f(p_r^x)^2\label{eq:linear_constraint_stateL}\\
	c_s^T\bar{u}_{t}&\leq (1-0.5\alpha_u)u_s^{ max}-\frac{c_s^TU_{t}^D c_s}{2\alpha_u u_s^{ max}} f(p_s^u)^2\label{eq:linear_constraint_inputL}
\end{align}\end{subequations}
Note that the reformulation of~\eqref{eq:Cantelli_ineqs} into \eqref{eq:Cantelli_ineqs_linL} has been performed at the price of additional constraint tightening. For example, on the right hand side of \eqref{eq:linear_constraint_stateL}, $x_r^{max}$ is replaced by $(1-0.5\alpha^x)x_r^{max}$, which significantly reduces the size of the constraint set. Note that parameter $\alpha^x$ cannot be reduced at will, since it also appears at the denominator in the second additive term.\\
In view of Assumption~\ref{ass:KandL} and resorting to the separation principle, it is possible to show \cite{glad2000control} that the solution $\bar{\Sigma}^D$ to the steady-state equation
\begin{align}
\bar{\Sigma}^D=&
    \Phi^D
	 \bar{\Sigma}^D
	 (\Phi^D)^T+\Psi\bar{\Omega}\Psi^T
\label{eq:Riccati_1L}
\end{align}
is block diagonal, i.e., $\bar{\Sigma}^D=\mathrm{diag}(\bar{\Sigma}^D_{11},\bar{\Sigma}_{22}^D)$,
where
$$\Phi^D=\begin{bmatrix}A^D-\bar{L}C^D&0\\\bar{L}C^D&A^D-B^D\bar{K}\end{bmatrix}$$
The terminal constraint \eqref{eq:term_constraint_variance}, must be transformed into $\Sigma_{t+N}^D\preceq \bar{\Sigma}^D$,
which corresponds to setting
\begin{equation}
\begin{array}{lcllcl}
	\Sigma_{11,t+N}^D&\preceq \bar{\Sigma}^D_{11},\quad&
    \Sigma_{22,t+N}^D&\preceq \bar{\Sigma}^D_{22}
\end{array}
\label{eq:term_constraints_varianceL}
\end{equation}
Defining $\bar{X}^D=\bar{\Sigma}^D_{11}+\bar{\Sigma}^D_{22}$ and $\bar{U}^D=\bar{K}\bar{\Sigma}^D_{22}\bar{K}^T$, the terminal set condition \eqref{eq:linear_constraint_finalc} must now be reformulated as
\begin{subequations}
	\begin{align}
	b_r^T\bar{x}&\leq (1-0.5\alpha^x)x_r^{ max}-\frac{b_r^T\bar{X}^D b_r}{2\alpha^x x_r^{ max}} f(p_r^x)^2 \label{eq:linear_constraint_state_finalL}\\
	-c_s^T\bar{K}\bar{x}&\leq (1-0.5\alpha^u)u_s^{ max}-\frac{c_s^T \bar{U}^Dc_s}{2\alpha^u u_s^{ max}} f(p_s^u)^2 \label{eq:linear_constraint_input_finalL}
	\end{align}
\end{subequations}
for all $r=1,\dots, n_r$, $s=1,\dots, n_s$, and for all $\bar{x}\in\bar{\mathbb{X}}_F$.\\
Also $J_v$ must be reformulated. Indeed
\begin{equation}
	\begin{array}{ll}
	J_v\leq J_v^D&=\sum\limits_{i=t}^{t+N-1} \mathrm{tr}\left\{Q_L\Sigma_{11,i}^D+Q\Sigma_{22,i}^D+RK_i\Sigma_{22,i}^DK_i^T\right\}\\
&+\mathrm{tr}\left\{S_L\Sigma_{11,t+N}^D+S\Sigma_{22,t+N}^D\right\}
	\end{array}
\label{eq:variance_cost_functionL}
\end{equation}
where the terminal weights $S$ and $S_L$ must now satisfy the following Lyapunov-like inequalities
\begin{equation}
\begin{array}{l}
(\bar{A}^D_K)^T S \bar{A}^D_K-S+Q+\bar{K}^TR\bar{K}\preceq 0\\
(\bar{A}^D_L)^T S_L \bar{A}^D_L-S_L+Q_L+(C^D)^T\bar{L}^T S \bar{L}C^D\preceq 0
\end{array}
\label{eq:Lyap_S_L}
\end{equation}
where $\bar{A}^D_K=A^D-B^D\bar{K}$ and $\bar{A}^D_L=A^D-\bar{L}C^D$. It is now possible to formally state the S-MPCl problem.\\\\
\textbf{S-MPCl problem: }at any time instant $t$ solve
    $$\min_{\bar{x}_{t},\Sigma^D_{11,t},\Sigma^D_{22,t},\bar{u}_{t, \dots, t+N-1},K_{t,\dots, t+N-1},L_{t,\dots, t+N-1}} J$$
where $J$ is defined in \eqref{eq:JTOT}, \eqref{eq:mean_cost_function}, \eqref{eq:variance_cost_functionL}, subject to
\begin{itemize}
  \item[-] the dynamics~\eqref{eq:mean_value_evolution_freeIC} and~\eqref{eq:SigmaDupdate};
  \item[-] the linear constraints~\eqref{eq:Cantelli_ineqs_linL} for all $k=0,\dots,N-1$;
  \item[-] the initialization constraint, corresponding to the choice between Strategies 1 and 2, i.e., $(\bar{x}_{t},\Sigma^D_{11,t},\Sigma_{22,t}^D)\in\{(\hat x_t,\Sigma^D_{11,t|t-1},0),(\bar{x}_{t|t-1},\Sigma^D_{11,t|t-1},\Sigma_{22,t|t-1}^D)\}$
    \item[-] the terminal constraints~\eqref{eq:term_constraint_mean},~\eqref{eq:term_constraints_varianceL}.
\end{itemize}
\hfill$\square$\\
The following corollary follows from Theorem~\ref{thm:main}.
\begin{corollary}\label{cor:LMI_soluz}
If, at time $t=0$, the S-MPCl problem admits a solution, the optimization problem is recursively feasible and the state and input probabilistic constraints \eqref{eq:prob_constraint_state} and \eqref{eq:prob_constraint_input} are satisfied for all $t\geq 0$. Furthermore, if there exists $\rho\in(0,1)$ such that the noise variance $\Omega^D=\mathrm{diag}(W,V^D)$ verifies
\begin{align}
	 \frac{(N+\frac{\beta}{\alpha})}{\alpha}\mathrm{tr}(S_T\Psi \Omega^D \Psi^T)&<\min(\rho\bar{\sigma}^2,\rho\lambda_{min}(\bar{\Sigma}^D))\label{eq:cons_conds_on_WL}
\end{align}
then, as $t\rightarrow +\infty$
$$\mathrm{dist}(\|\bar{x}_t\|^2+\mathrm{tr}\{\Sigma_{t|t}^D\},[0,\frac{1}{\alpha}(N+\frac{\beta}{\alpha})\,\mathrm{tr}(S_T\Psi \Omega^D \Psi^T)])\rightarrow 0$$
\hfill$\square$
\end{corollary}
\subsection{Approximation of S-MPC with constant gains}
\label{sec:num_implementation_constant}
The solution presented in this section is characterized by a great simplicity and consists in setting $L_t=\bar{L}$ and $K_t=\bar{K}$ for all $t\geq 0$. In this case, the value of $\Sigma_{t+k}$ (and therefore of $X_{t+k}$ and $U_{t+k}$) can be directly computed for any $k>0$ by means of~\eqref{eq:variance_evolution_error}  as soon as $\Sigma_t$ is given. As a byproduct, the nonlinearity in the constraints \eqref{eq:Cantelli_ineqs} does not carry about implementation problems. Therefore, this solution has a twofold advantage: first, it is simple and requires an extremely lightweight implementation; secondly, it allows for the use of nonlinear less conservative constraint formulations. In this simplified framework, the following S-MPCc problem can be stated.\\\\
\textbf{S-MPCc problem: }at any time instant $t$ solve
    $$\min_{\bar{x}_{t},\Sigma_{t},\bar{u}_{t, \dots, t+N-1}} J$$
where $J$ is defined in \eqref{eq:JTOT}, \eqref{eq:mean_cost_function}, \eqref{eq:variance_cost_function1}, subject to
\begin{itemize}
  \item[-] the dynamics~\eqref{eq:mean_value_evolution_freeIC} , with $K_t=\bar{K}$, and
  \begin{equation}
\Sigma_{t+1}=\Phi\Sigma_{t}\Phi^T+\Psi\Omega\Psi^T
\end{equation}
  \item[-] the constraints~\eqref{eq:Cantelli_ineqs} for all $k=0,\dots,N-1$;
  \item[-] the initialization constraint \eqref{eq:reset_constraint};
    \item[-] the terminal constraints~\eqref{eq:term_constraint_mean}, \eqref{eq:term_constraint_variance}.
\end{itemize}
\hfill$\square$\\
An additional remark is due. The term $J_v$ in~\eqref{eq:variance_cost_function} does not depend only of the control and observer gain sequences $K_{t,\dots, t+N-1}$,
$L_{t,\dots, t+N-1}$, but also of the initial condition $\Sigma_t$. Therefore, it is not possible to discard it in this simplified formulation.\\
The following corollary can be derived from Theorem~\ref{thm:main}.
\begin{corollary}\label{cor:const_gains}
If, at time $t=0$, the S-MPCc problem admits a solution, the optimization problem is recursively feasible and the state and input probabilistic constraints \eqref{eq:prob_constraint_state} and \eqref{eq:prob_constraint_input} are satisfied for all $t\geq 0$. Furthermore, if there exists $\rho\in(0,1)$ such that the noise variance $\Omega$ verifies~\eqref{eq:cons_conds_on_W}, then, as $t\rightarrow +\infty$
$$\mathrm{dist}(\|\bar{x}_t\|^2+\mathrm{tr}\{\Sigma_{t|t}\},[0,\frac{1}{\alpha}(N+\frac{\beta}{\alpha})\,\mathrm{tr}(S_T\Psi \Omega \Psi^T)])\rightarrow 0$$
\hfill$\square$
\end{corollary}
\subsection{Boundedness of the input variables}
\label{sec:inputs}
The S-MPC scheme described in the previous sections does not guarantee the satisfaction of hard constraints on the input variables. However, input variables can be bounded in practice, and subject to
\begin{align}
Hu_t\leq \mathbf{1}
\label{eq:input_constr}
\end{align}
where $H\in\mathbb{R}^{n_H\times m}$ is a design matrix and $\mathbf{1}$ is a vector of dimension $n_H$ whose entries are equal to $1$.
Three possible approaches are proposed to account for these inequalities.\\
1) Inequalities \eqref{eq:input_constr} can be stated as additive probabilistic constraints~\eqref{eq:prob_constraint_input} with small violation probabilities $p_s^u$. This solution, although not guaranteeing satisfaction of~\eqref{eq:input_constr} with probability 1, is simple and of easy application.\\
2) If the S-MPCc scheme is used, define the gain matrix $\bar{K}$ in such a way that $A-B\bar{K}$ is asymptotically stable and, at the same time, $H\bar{K}=0$. From \eqref{eq:fb_control_law_ideal}, it follows that
$Hu_t=H\bar{u}_t+H\bar{K}(\hat{x}_t-\bar{x}_t)=H\bar{u}_t$. Therefore, to verify \eqref{eq:input_constr} it is sufficient to include in the problem formulation the deterministic constraint $H\bar{u}_t\leq \mathbf{1}$.\\
3) In an S-MPCc scheme, in case probabilistic constraint on the input variables were absent, we can replace \eqref{eq:fb_control_law_ideal} with $u_t=\bar{u}_t$ and set $H\bar{u}_t\leq \mathbf{1}$ in the S-MPC optimization problem to verify \eqref{eq:input_constr}. If we also define $\hat{u}_t=\bar{u}_t-\bar{K}(\hat{x}_t-\bar{x}_t)$ as the input to equation \eqref{eq:observer1}, the dynamics of variable $\sigma_t$ is given by \eqref{eq:error_matrix} with
$$\Phi_t=\begin{bmatrix}A-\bar{L}C&B\bar{K}\\
          \bar{L}C&A-B\bar{K}\end{bmatrix}$$
and the arguments follow similarly to those proposed in the paper. It is worth mentioning, however, that matrix $\Phi_t$ must be asymptotically stable, which requires asymptotic stability of $A$.
\section{Examples}
\label{sec:example}
In this section a comparison between the characteristics of the proposed method and the well-known robust tube-based MPC is first discussed. Then, the approximations described in Section \ref{sec:num_implementation} are discussed with reference to a numerical example.
\subsection{Simple analytic example: comparison between the probabilistic and the deterministic robust MPC}
\label{app:example_constrs}
Consider the scalar system
$$x_{t+1}=a x_t+u_t+w_t$$
where $0<a<1$, $w\in[-w_{max},w_{max}]$, $w_{max}>0$, and the measurable state is constrained as follows
\begin{align}x_t\leq x_{max}\label{eq:ex_det_constr}
\end{align}
The limitations imposed by the deterministic robust MPC algorithm developed in \cite{mayne2005robust} and by the probabilistic (state-feedback) method described in this paper are now compared.
For both the algorithms, the control law $u_t=\bar{u}_t$ is considered, where $\bar{u}$ is the input of the nominal/average system $\bar{x}_{t+1}=a\bar{x}_{t}+b\bar{u}_{t}$ with state $\bar{x}$. Note that this control law is equivalent to \eqref{eq:fb_control_law_ideal}, where for simplicity it has been set $K_{t}=0$.\\
In the probabilistic approach, we allow the constraint \eqref{eq:ex_det_constr} to be violated with probability $p$, i.e.,
\begin{align}\mathbb{P}\{x\geq x_{ max}\}\leq p\label{eq:ex_prob_constr}
\end{align}
To verify \eqref{eq:ex_det_constr} and \eqref{eq:ex_prob_constr} the tightened constraint $\bar{x}_k\leq x_{max}-\Delta x$ must be fulfilled in both the approaches where, in case of \cite{mayne2005robust}, $\Delta x =\Delta x_{RPI}=\sum_{i=0}^{+\infty}a^iw_{max}=\frac{1}{1-a} w_{max}$ while, having defined $w$ as a stochastic process with zero mean and variance $W$, in the probabilistic framework $\Delta x=\Delta x_{S}(p) =\sqrt{X(1-p)/p}$, and  $X$ is the steady state variance satisfying the algebraic equation $X=a^2X+W$, i.e. $X=W/(1-a^2)$. Notably, $W$ takes different values depending upon the noise distribution.\\
It results that the deterministic tightened constraints are more conservative provided that $\Delta x_{S}(p)<\Delta x_{RPI}$, i.e.
\begin{equation}p>\frac{(1-a)^2}{b(1-a^2)+(1-a)^2}\label{eq:ex_pbound}\end{equation}
Consider now the distributions depicted in Figure \ref{fig:distrs} with $W=w_{max}^2/b$, where\\
Case A) $b=3$ for uniform distribution;\\
Case B) $b=18$ for triangular distribution;\\
Case C) $b=25$ for truncated Gaussian distribution.\\
\begin{figure}
    \centering
    \includegraphics[width=0.6\linewidth]{distrs}
    \caption{Distributions: uniform (case A, solid line), triangular (case B, dashed line), truncated Gaussian (case C, dotted line).}
    \label{fig:distrs}
\end{figure}
Setting, for example, $a=0.9$, condition \eqref{eq:ex_pbound} is verified for $p>0.0172$ in case A), $p>0.0029$ in case B), and $p>0.0021$ in case C). Note that, although formally truncated, the distribution in case C) can be well approximated with a non-truncated Gaussian distribution: if this information were available, one could use $\Delta x_S(p)=\sqrt{X}\,\mathcal{N}^{-1}(1-p)$ for constraint tightening, and in this case $\Delta x_{S}(p)<\Delta x_{RPI}$ would be verified with $p>1-\mathcal{N}\left(\frac{(1-a^2)b}{(1-a)^2}\right)\simeq 0$.
\subsection{Simulation example}

The example shown in this section is inspired by \cite{mayne2005robust}. We take
$$A=\begin{bmatrix}1&1\\0&1\end{bmatrix}, B=\begin{bmatrix}0.5\\1\end{bmatrix}$$
$F=I_2$, and $C=I_2$. We assume that a Gaussian noise affects the system, with $W=0.01I_2$ and $V=10^{-4}I_2$. The chance-constraints are $\mathbb{P}\{x_{2}\geq 2\}\leq 0.1$, $\mathbb{P}\{u\geq 1\}\leq 0.1$, and $\mathbb{P}\{-u\geq 1\}\leq 0.1$. In \eqref{eq:JTOT}, \eqref{eq:mean_cost_function}, and \eqref{eq:variance_cost_function} we set $Q_L=Q=I_2$, $R=0.01$, and $N=9$.\\
In Figure \ref{fig:sets} we compare the feasible sets obtained with the different methods presented in Section \ref{sec:num_implementation}, with different assumptions concerning the noise (namely S-MPCc (1), S-MPCc (2), S-MPCl (1), S-MPCl (2), where (1) denotes the case of Gaussian distribution and (2) denotes the case when the distribution is unknown). Apparently, in view of the linearization of the constraints (see the discussion after \eqref{eq:Cantelli_ineqs_linL}), the S-MPCl algorithm results more conservative than S-MPCc. On the other hand, concerning the dimension of the obtained feasibility set, in this case the use of the Chebyshev - Cantelli inequality does not carry about a dramatic performance degradation in terms of conservativeness.\\
\begin{figure}
    \centering
    \includegraphics[width=1\linewidth]{sets}
    \caption{Plots of the feasibility sets for S-MPCc (1), S-MPCc (2), S-MPCl (1), S-MPCl (2)}
    \label{fig:sets}
\end{figure}
A 200-runs Montecarlo simulation campaign has been carried out for testing the probabilistic properties of the algorithm, with initial conditions $(5,-1.5)$. The fact that the control and estimation gains are free variables makes the transient behaviour of the state responses in case of S-MPCl more performing and reduces the variance of the dynamic state response (at the price of a more reactive input response), with respect to the case when S-MPCc is used. For example, the maximum variance of $x_1(k)$ (resp. of $x_1(k)$) is about $0.33$ (resp. $0.036$) in case of S-MPCc (1) and (2), while it results about $0.25$ (resp. $0.035$) in case of S-MPCl (1) and (2). On the other hand, the maximum variance of $u(k)$ is about $0.006$ in case of S-MPCc, while it is $0.008$ in case of S-MPCl.
\section{Conclusions}
\label{sec:conclusions}
The main properties of the proposed probabilistic MPC algorithm lie in its simplicity and in its light-weight computational load, both in the off-line design phase and in the online implementation. This allows for the application of the S-MPC scheme to medium/large-scale problems, for general systems affected by general disturbances.\\
Future work will focus on the use of the proposed scheme in challenging control problems, such as the control of micro-grids in presence of renewable stochastic energy sources. The application of the algorithm to cope with linear time-varying systems is envisaged, while its extension to distributed implementations is currently underway.
\section*{Acknowledgements}
We are indebted with Bruno Picasso for fruitful discussions and suggestions.