#include <MIQPLinearConstraints.h>
List of all members.
Constructor & Destructor Documentation
- Todo:
- Once I add walking constraints this will change to include the rows added by walking constraints
- Parameters:
-
[in] | stepController | Pointer to StepController object which is instantiated by the hosting client. |
[in] | miqpParams | Container of the MIQP parameters. |
Member Function Documentation
Builds \(A_h\).
- See also:
- _Ah
Builds \(B_h\) (_Bh) called by the constructor of this class.
- See also:
- _Bh
Builds matrix Q (_Q) from the preview model:
\[ \forall j \in \mathbb{N}^*, \xi_{k+j+1|k} = \mathbf{Q} \xi_{k+j|k} + \mathbf{T}\mathcal{X}_{k+j+1|k} \]
- See also:
- _Q
Builds matrix T (_T) from the preview model:
\[ \forall j \in \mathbb{N}^*, \xi_{k+j+1|k} = \mathbf{Q} \xi_{k+j|k} + \mathbf{T}\mathcal{X}_{k+j+1|k} \]
- See also:
- _T
Basically builds matrix \(\mathbf{A}\) (_AShapeAdmiss) in the partial expression for the MIQP linear constraints, containing only shape and admissibility constraints, such that:
\[ \mathbf{A} \mathcal{X}_{k,N} \leq \bar{\mathbf{f}}_c - \mathbf{B} \xi_k \]
\[ \begin{array}{cccccc} A_{\text{cr}} Q^0 T & 0 & 0 & 0 & \dots & 0\\ (A_{\text{cl}}Q^0 + A_{\text{cr}}Q^1)T & A_{\text{cr}}Q^0 T & 0 & 0 & \dots & 0 \\ (A_{\text{cl}}Q^1 + A_{\text{cr}}Q^2)T & (A_{\text{cl}}Q^0 + A_{\text{cr}}Q^1)T & A_{\text{cr}} Q^0 T & 0 & \dots & 0 \\ \vdots & \vdots & & & & \vdots \\ (A_{\text{cl}}Q^{N-2} + A_{\text{cr}}Q^{N-1})T & (A_{\text{cl}}Q^{N-3} + A_{\text{cr}}Q^{N-2})T & \dots & \dots & \dots & A_{\text{cr}}Q^0T \\ \end{array} \]
- See also:
- buildAShapeAdmiss()
- Todo:
- When walking constraints are added, matrix _A will be a stack of the two
Retrieves the constraints matrix \(\mathbf{A}\). Before passing a matrix to copy _A allocate the space for A by calling getTotalNumberOfConstraints() to know the number of rows, while INPUT_VECTOR_SIZE * SIZE_PREVIEW_WINDOW will be the number of columns.
- Parameters:
-
A | Reference to matrix where the global constraints matrix _A will be copied. |
Returns in rhs the right-hand size of the inequality constraints of the problem.
- Parameters:
-
[out] | rhs | State-dependent right hand side. |
- See also:
- updateRHS()
Returns the total number of constraints.
- Returns:
- _nConstraints
Stacks matrices \(C_{i}\) (Ci) from the shape and admissiblity constraints to set variable _Acl
Stacks matrices \(C_{i+1}\) (Cii) from the shape and admissibility constraints to set variable _Acr
Updates the state-dependent RHS of the inequality constraints
- Parameters:
-
FIXME: TEMPORARY!! Maybe it's best to have a more generic update method
Member Data Documentation
Boolean to add admissibility constraints.
Boolean to add CoP constraints within the convex hull defined by the feet location
Boolean too add shape constraints.
Boolean to add walking constraints.
State matrix \(A_h\) from the CoM jerk integration scheme.
\[ \mathbf{h}_{k+1} = \mathbf{A}_h \mathbf{h}_k + \mathbf{B}_h \mathbf{u}_k \]
It is a constant matrix of size \(6\times6\) equal to:
\[ \mathbf{A_h} = \left[ \begin{array}{ccc} \mathbf{I}_2 & \delta t \mathbf{I}_2 & \frac{\delta t^2}{2} \mathbf{I}_2 \\ 0 & \mathbf{I}_2 & \delta t \mathbf{I}_2 \\ 0 & 0 & \mathbf{I}_2 \end{array} \right] \]
Base of support object to retrieve the corresponding inequality constraints
Input matrix \(\mathbf{B}_h\) from the linear state process of the CoMstate \(\hat{\mathbf{h}}\). It is constant of size \(6\times2\) and equal to:
\[ \mathbf{B_h} = \left[ \begin{array}{c} \frac{\delta^3}{6}\mathbf{I}_2 \\ \frac{\delta t^2}{2} \mathbf{I}_2 \\ \delta t \mathbf{I}_2 \end{array} \right] \]
Total number of constraints
Matrix \(\mathbf{Q}\) from the preview model:
\[ \forall j \in \mathbb{N}^*, \xi_{k+j+1|k} = \mathbf{Q} \xi_{k+j|k} + \mathbf{T}\mathcal{X}_{k+j+1|k} \]
\[ \mathbf{Q} = \left[\begin{array}{cc} \mathbf{0}_{10\times10} & \mathbf{0}_{10\times6}\\ \mathbf{0}_{6\times10} & \mathbf{A_h}_{6\times6} \end{array}\right] \]
Matrix \(\mathbf{T}\) from the preview model:
\[ \forall j \in \mathbb{N}^*, \xi_{k+j+1|k} = \mathbf{Q} \xi_{k+j|k} + \mathbf{T}\mathcal{X}_{k+j+1|k} \]
\[ \mathbf{T} = \left[\begin{array}{cc} \mathbf{I}_{10\times10} & \mathbf{0}_{10\times2}\\ \mathbf{0}_{6\times10} & \mathbf{B_h}_{6\times2} \end{array}\right] \]
- See also:
- _Bh
The documentation for this class was generated from the following files: