class
#include <iDynTree/QuadraticLikeCost.h>
QuadraticLikeCost Base classes
Derived classes
- class LinearCost
- class QuadraticCost
Constructors, destructors, conversion operators
- ~QuadraticLikeCost() override
- QuadraticLikeCost(const std::string& costName) protected
Public functions
-
auto costEvaluation(double time,
const iDynTree::
VectorDynSize & state, const iDynTree::VectorDynSize & control, double& costValue) -> bool final - Evaluate the cost function.
-
auto costFirstPartialDerivativeWRTState(double time,
const iDynTree::
VectorDynSize & state, const iDynTree::VectorDynSize & control, iDynTree::VectorDynSize & partialDerivative) -> bool final - Evaluate cost first partial derivative wrt the state.
-
auto costFirstPartialDerivativeWRTControl(double time,
const iDynTree::
VectorDynSize & state, const iDynTree::VectorDynSize & control, iDynTree::VectorDynSize & partialDerivative) -> bool final - Evaluate cost first partial derivative wrt the control variables.
-
auto costSecondPartialDerivativeWRTState(double time,
const iDynTree::
VectorDynSize & state, const iDynTree::VectorDynSize & control, iDynTree::MatrixDynSize & partialDerivative) -> bool final - Evaluate cost second partial derivative wrt the state variables.
-
auto costSecondPartialDerivativeWRTControl(double time,
const iDynTree::
VectorDynSize & state, const iDynTree::VectorDynSize & control, iDynTree::MatrixDynSize & partialDerivative) -> bool final - Evaluate cost second partial derivative wrt the control.
-
auto costSecondPartialDerivativeWRTStateControl(double time,
const iDynTree::
VectorDynSize & state, const iDynTree::VectorDynSize & control, iDynTree::MatrixDynSize & partialDerivative) -> bool final - Evaluate cost second partial derivative wrt the state and control.
-
auto costSecondPartialDerivativeWRTStateSparsity(iDynTree::
optimalcontrol:: & stateSparsity) -> bool finalSparsityStructure - Returns the set of nonzeros elements in terms of row and colun index, in the state hessian.
-
auto costSecondPartialDerivativeWRTStateControlSparsity(iDynTree::
optimalcontrol:: & stateControlSparsity) -> bool finalSparsityStructure - Returns the set of nonzeros elements in terms of row and colun index, in the mixed hessian.
-
auto costSecondPartialDerivativeWRTControlSparsity(iDynTree::
optimalcontrol:: & controlSparsity) -> bool finalSparsityStructure - Returns the set of nonzeros elements in terms of row and colun index, in the control hessian.
Protected variables
-
std::shared_ptr<iDynTree::
optimalcontrol:: > m_timeVaryingStateHessianTimeVaryingMatrix -
std::shared_ptr<iDynTree::
optimalcontrol:: > m_timeVaryingStateGradientTimeVaryingVector -
std::shared_ptr<iDynTree::
optimalcontrol:: > m_timeVaryingStateCostBiasTimeVaryingDouble -
std::shared_ptr<iDynTree::
optimalcontrol:: > m_timeVaryingControlHessianTimeVaryingMatrix -
std::shared_ptr<iDynTree::
optimalcontrol:: > m_timeVaryingControlGradientTimeVaryingVector -
std::shared_ptr<iDynTree::
optimalcontrol:: > m_timeVaryingControlCostBiasTimeVaryingDouble - bool m_hasSecondPartialDerivativeWRTStateSparsity
- bool m_hasSecondPartialDerivativeWRTControlSparsity
- bool m_hasSecondPartialDerivativeWRTStateControlSparsity
- SparsityStructure m_secondPartialDerivativeWRTStateSparsity
- SparsityStructure m_secondPartialDerivativeWRTControlSparsity
- SparsityStructure m_secondPartialDerivativeWRTStateControlSparsity
Function documentation
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costEvaluation(double time,
const iDynTree::VectorDynSize & state,
const iDynTree::VectorDynSize & control,
double& costValue) final
Evaluate the cost function.
Parameters | |
---|---|
time in | The time at which the cost is evaluated. |
state in | The state value with which the cost has to be evaluated. |
control in | The control value with which the cost has to be evaluated. |
costValue out | The cost value given the above inputs. |
Returns | True if successfull, false otherwise. |
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costFirstPartialDerivativeWRTState(double time,
const iDynTree::VectorDynSize & state,
const iDynTree::VectorDynSize & control,
iDynTree::VectorDynSize & partialDerivative) final
Evaluate cost first partial derivative wrt the state.
Parameters | |
---|---|
time in | The time at which the partial derivative is computed. |
state in | The state value at which the partial derivative is computed. |
control in | The control value at which the partial derivative is computed. |
partialDerivative out | The output partial derivative. |
Returns | True if successfull, false otherwise (or if not implemented). |
It is the result of
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costFirstPartialDerivativeWRTControl(double time,
const iDynTree::VectorDynSize & state,
const iDynTree::VectorDynSize & control,
iDynTree::VectorDynSize & partialDerivative) final
Evaluate cost first partial derivative wrt the control variables.
Parameters | |
---|---|
time in | The time at which the partial derivative is computed. |
state in | The state value at which the partial derivative is computed. |
control in | The control value at which the partial derivative is computed. |
partialDerivative out | The output partial derivative. |
Returns | True if successfull, false otherwise (or if not implemented). |
It is the result of
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costSecondPartialDerivativeWRTState(double time,
const iDynTree::VectorDynSize & state,
const iDynTree::VectorDynSize & control,
iDynTree::MatrixDynSize & partialDerivative) final
Evaluate cost second partial derivative wrt the state variables.
Parameters | |
---|---|
time in | The time at which the partial derivative is computed. |
state in | The state value at which the partial derivative is computed. |
control in | The control value at which the partial derivative is computed. |
partialDerivative out | The output partial derivative. |
Returns | True if successfull, false otherwise (or if not implemented). |
It is the result of
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costSecondPartialDerivativeWRTControl(double time,
const iDynTree::VectorDynSize & state,
const iDynTree::VectorDynSize & control,
iDynTree::MatrixDynSize & partialDerivative) final
Evaluate cost second partial derivative wrt the control.
Parameters | |
---|---|
time in | The time at which the partial derivative is computed. |
state in | The state value at which the partial derivative is computed. |
control in | The control value at which the partial derivative is computed. |
partialDerivative out | The output partial derivative. |
Returns | True if successfull, false otherwise (or if not implemented). |
It is the result of
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costSecondPartialDerivativeWRTStateControl(double time,
const iDynTree::VectorDynSize & state,
const iDynTree::VectorDynSize & control,
iDynTree::MatrixDynSize & partialDerivative) final
Evaluate cost second partial derivative wrt the state and control.
Parameters | |
---|---|
time in | The time at which the partial derivative is computed. |
state in | The state value at which the partial derivative is computed. |
control in | The control value at which the partial derivative is computed. |
partialDerivative out | The output partial derivative. |
Returns | True if successfull, false otherwise (or if not implemented). |
It is the result of , thus it has number of rows equals to the number of states and number of cols equal to the number of control inputs.
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costSecondPartialDerivativeWRTStateSparsity(iDynTree::optimalcontrol::SparsityStructure & stateSparsity) final
Returns the set of nonzeros elements in terms of row and colun index, in the state hessian.
Parameters | |
---|---|
stateSparsity out | Sparsity structure of the partial derivative of the gradient wrt state variables. |
Returns | true if the sparsity is available. False otherwise. |
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costSecondPartialDerivativeWRTStateControlSparsity(iDynTree::optimalcontrol::SparsityStructure & stateControlSparsity) final
Returns the set of nonzeros elements in terms of row and colun index, in the mixed hessian.
Parameters | |
---|---|
stateControlSparsity out | Sparsity structure of the partial derivative of the gradient wrt state and control variables. |
Returns | true if the sparsity is available. False otherwise. |
bool iDynTree::optimalcontrol::QuadraticLikeCost:: costSecondPartialDerivativeWRTControlSparsity(iDynTree::optimalcontrol::SparsityStructure & controlSparsity) final
Returns the set of nonzeros elements in terms of row and colun index, in the control hessian.
Parameters | |
---|---|
controlSparsity out | Sparsity structure of the partial derivative of the gradient wrt control variables. |
Returns | true if the sparsity is available. False otherwise. |