MinimaxAdaptiveControl.InducedlpGainType
InducedlpGain{T, N<:Integer}

Performance metric based on induced l_p gain.

Fields

  • value::T: Value of the induced l_p gain.
  • sumpOutput::T: Sum of the p-norm of the output to the p-th power.
  • sumpInput::T: Sum of the p-norm of the input to the p-th power.
  • p::N: Order of the norm.
source
MinimaxAdaptiveControl.MAControllerType
MAController{T}

Minimax Adaptive Switching Controller for the system

\[\begin{aligned} z_{t + 1} & = \hat A z_t + \hat B u_t + \hat G d_t, t \geq 0 \\ u_t & = K_t z_t, \end{aligned}\]

with the uncertain objective

\[J = \min_u \max_{d, N, H} \sum_{t = 0}^\infty \sigma_H(z_t, u_t, d_t)\]

where $z_t$ is the state vector, $u_t$ is the control input vector and $d_t$ is measured disturbance vector. The function $\sigma_H$ is a quadratic function of the form ```math \begin{aligned} \sigmaH(zt, ut, dt) = \begin{bmatrix} zt \ ut \ dt \end{bmatrix}^T H \begin{bmatrix} zt \ ut \ dt \end{bmatrix}. \end{aligned}

selectionRule is a (possibly stateful) function that selects the control action based on $rs$ and the current state.

Fields

  • z::AbstractVector{T}: State vector of the controller.
  • Ahat::AbstractMatrix{T}: State transition matrix.
  • Bhat::AbstractMatrix{T}: Estimated control input matrix.
  • Ghat::AbstractMatrix{T}: Estimated disturbance input matrix.
  • Ks::AbstractVector{Matrix{T}}: Feedback gains, one for each mode.
  • Hs::AbstractVector{Matrix{T}}: Quadratic cost matrices, one for each mode.
  • rs::AbstractVector{T}: Worst-case historically incurred costs
  • selectionRule::Function: Function for selecting the control action.
source
MinimaxAdaptiveControl.OFLinModType
OFLinMod{T}

Output-feedback representation of the linear model

\[\begin{aligned} x_{t + 1} & = A x_t + B u_t + Gw_t,\quad t \geq 0 \\ y_t & = C x_t + D v_t. \end{aligned}\]

with cost function

\[ J = \sum_{t = 0}^{\infty} \left( x_t^T Q x_t + u_t^T R u_t \right).\]

Fields

  • A::AbstractMatrix{T}: State transition matrix.
  • B::AbstractMatrix{T}: Control input matrix.
  • G::AbstractMatrix{T}: Disturbance input matrix.
  • C::AbstractMatrix{T}: Output matrix.
  • D::AbstractMatrix{T}: Feedforward matrix.
  • Q::AbstractMatrix{T}: State cost matrix.
  • R::AbstractMatrix{T}: Control input cost matrix.
source
MinimaxAdaptiveControl.OFPlantType
OFPlant{T}

Output-feedback representation of a plant of the form

\[\begin{aligned} x_{t + 1} & = A x_t + B u_t + Gw_t,\quad t \geq 0 \\ y_t & = C x_t + D v_t. \end{aligned}\]

Fields

  • A::AbstractMatrix{T}: State transition matrix.
  • B::AbstractMatrix{T}: Control input matrix.
  • G::AbstractMatrix{T}: Disturbance input matrix.
  • C::AbstractMatrix{T}: Output matrix.
  • D::AbstractMatrix{T}: Noise Feedforward matrix.
  • x::AbstractVector{T}: State vector.
source
MinimaxAdaptiveControl.RecursiveELSType
RecursiveELS{T}

Extended Least Squares (ELS) estimator for recursive parameter estimation.

Fields

  • parameterEstimates::Vector{T}: Vector of current parameter estimates.
  • inverseErrorCovariance::Matrix{T}: Inverse of the error covariance matrix.
  • regressors::Vector{T}: Vector of regressor values.
  • ny::Int: Number of outputs.
  • nu::Int: Number of inputs.
  • ne::Int: Number of errors.
  • regularization::T: Regularization parameter for numerical stability.
source
MinimaxAdaptiveControl.SSLinModType
SSLinMod{T}

State-space representation of the linear model

\[ x_{t + 1} = A x_t + B u_t, t \geq 0\]

with cost function

\[ J = \sum_{t = 0}^{\infty} \left( x_t^T Q x_t + u_t^T R u_t \right).\]

Fields

  • A::AbstractMatrix{T}: State transition matrix.
  • B::AbstractMatrix{T}: Control input matrix.
  • Q::AbstractMatrix{T}: State cost matrix.
  • R::AbstractMatrix{T}: Control input cost matrix.
source
MinimaxAdaptiveControl.SSPlantType
SSPlant{T}

State-space representation of the plant:

\[\begin{aligned} x_{t + 1} & = A x_t + B u_t + w_t, t \geq 0 \end{aligned}\]

where $x_t$ is the state vector, $u_t$ is the control input vector, and $w_t$ is the disturbance vector.

Fields

  • A::AbstractMatrix{T}: State transition matrix.
  • B::AbstractMatrix{T}: Control input matrix.
  • x::AbstractVector{T}: State vector.
source
MinimaxAdaptiveControl.SelfTuningLQGType

SelfTuningLQG(A0::Matrix{T}, K0::Matrix{T}, C0::Matrix{T}, B0::Matrix{T}, xhat0::Vector{T}, regularization::T, ρ::T, nu::Int) where T

Initialize the self-tuning LQG controller.

Arguments

  • A0::Matrix{T}: Initial state transition matrix.
  • K0::Matrix{T}: Initial Kalman gain matrix.
  • C0::Matrix{T}: Initial measurement matrix.
  • B0::Matrix{T}: Initial control input matrix.
  • xhat0::Vector{T}: Initial state estimate.
  • regularization::T: Regularization parameter for numerical stability.
  • ρ::T: Regularization parameter for the Riccati equation.
  • nu::Int: Number of control inputs.

Returns

  • SelfTuningLQG{T}: Initialized self-tuning LQG controller.
source
MinimaxAdaptiveControl.ValueFunctionType
ValueFunction{T}

Value function for an optimal control problem.

Fields

  • value::T: Value of the function.
  • Ps::AbstractVector{Matrix{T}}: Sequence of cost-to-go matrices.
  • weights::AbstractVector{Vector{T}}: Sequence of weights.
  • controller::MAController{T}: Associated minimax adaptive controller.
source
MinimaxAdaptiveControl.stateObserverType
stateObserver{T}

State observer, also known as a Kalman Filter, for estimating the state of a system.

Fields

  • A::Matrix{T}: State transition matrix.
  • K::Matrix{T}: Kalman gain matrix.
  • C::Matrix{T}: Measurement matrix.
  • B::Matrix{T}: Control input matrix.
  • xhat::Vector{T}: Estimated state vector.
source