DeePC#
Data-Enabled Predictive Control (DeePC) is a DDPC method presented in the following papers:
Data-Enabled Predictive Control: In the Shallows of the DeePC
Regularized and Distributionally Robust Data-Enabled Predictive Control
Performance Considerations#
This method differs from other DDPC approaches by optimizing over a slack decision variable \(g\) of size \(n_{\text{col}}\). Since \(n_{\text{col}} \approx n_{\text{samples}}\) for large \(n_{\text{samples}}\), computational performance is directly impacted by \(n_{\text{samples}}\), leading to a computational complexity of \(\mathcal{O}(n_{\text{samples}}^2)\).
With a large number of samples, performance further degrades due to memory limitations.
Performance Benchmark (MacBook Pro, Double Integrator):
Number of Samples |
Total Simulation Time |
|---|---|
100 |
~1 second |
300 |
~10 seconds |
1000 |
~4 minutes |
Note
100 samples are generally insufficient for the double integrator when process and measurement noise are present.
Noise Rejection#
In the presence of noise, an additional slack variable \(\sigma\) is required to ensure feasibility of the equality constraints.
where:
which is penalized by the cost function:
where \(\lambda_{\sigma}\) should be chosen large.
This allows the past measurements to deviate slightly from the Hankel matrices.
Additionally, a cost term is needed to regulate the size of \(g\) for a noise robust DeePC.
For further details, refer to Regularized and Distributionally Robust Data-Enabled Predictive Control.
Optimization Formulation#
where \(\Pi\) is the Kernel Projection matrix calculated as follow:
Closed-Form Solution Derivation#
Since the derivative of the 1-norm is not well-defined everywhere, \(\lambda_{g,1}\) must be set to zero for the derivation to be valid.
From the equality constraints, we obtain:
Substituting these into the cost function gives:
Taking the derivative with respect to \(g\) and setting it to zero:
For readability:
Replacing \(g^\star = U_f^{-1} u_f^\star\), we obtain the following helper matrices:
This leads to the following closed-form gain matrices:
With the optimal \(u_f^\star\) calculated as: