humoto
|
An optimization problem [initialize_stack.m, simulation_loop.m].
A stack of tasks / hierarchy, convertible to a QP in some cases.
Definition at line 20 of file hierarchy.h.
#include <hierarchy.h>
Public Member Functions | |
OptimizationProblem () | |
Default constructor. More... | |
void | computeViolations (humoto::Violations &violations, const humoto::Solution &solution) const |
Compute violations based on the solution. More... | |
void | determineActiveSet (humoto::ActiveSet &active_set, const humoto::Solution &solution) const |
Determine active set based on the solution. This active set may differ from the active set returned by the solver due to tolerances. More... | |
void | form (humoto::Solution &solution, const humoto::Model &model, const humoto::ControlProblem &control_problem) |
Form hierarchy. More... | |
void | form (humoto::Solution &solution, humoto::ActiveSet &active_set_guess, const humoto::Model &model, const humoto::ControlProblem &control_problem) |
Form hierarchy. More... | |
void | form (humoto::Solution &solution, humoto::Solution &solution_guess, humoto::ActiveSet &active_set_guess, const humoto::Model &model, const humoto::ControlProblem &control_problem, const humoto::Solution &old_solution) |
Form hierarchy. More... | |
void | form (humoto::Solution &solution, humoto::Solution &solution_guess, const humoto::Model &model, const humoto::ControlProblem &control_problem, const humoto::Solution &old_solution) |
Form hierarchy. More... | |
std::size_t | getNumberOfLevels () const |
Returns number of levels in the hierarchy. More... | |
template<class t_QPConstraints > | |
void | getQPProblem (QPProblemBase< t_QPConstraints > &qp_problem, const humoto::SolutionStructure &sol_structure, const bool initialize_upper_triangular_part=true) const |
Form a QP problem. More... | |
void | initializeActiveSet (humoto::ActiveSet &active_set) const |
Initialize active set of the hierarchy. More... | |
void | log (humoto::Logger &logger, const LogEntryName &parent=LogEntryName(), const std::string &name="") const |
Log hierarchy as a set of tasks. More... | |
const humoto::HierarchyLevel & | operator[] (const std::size_t level_index) const |
Access hierarchy level (const) More... | |
humoto::HierarchyLevel & | operator[] (const std::size_t level_index) |
Access hierarchy level. More... | |
void | processActiveSet (const humoto::ActiveSet &active_set) |
Process actual active set: extract active sets of individual tasks. More... | |
void | pushTask (TaskSharedPointer task_pointer, const std::size_t level_index) |
Add task to the optimization problem. More... | |
void | reset (const std::size_t number_of_levels) |
Reset the optimization problem. More... | |
Protected Member Functions | |
void | formHierarchy (humoto::Solution &solution, const humoto::Model &model, const humoto::ControlProblem &control_problem, const bool is_active_set_guessing_enabled) |
Form hierarchy. More... | |
void | guessActiveSet (ActiveSet &active_set) const |
Form active set guess. More... | |
Protected Attributes | |
std::vector< humoto::HierarchyLevel > | hierarchy_ |
std::vector< std::size_t > | number_of_constraints_ |
std::size_t | number_of_levels_ |
|
inline |
Default constructor.
Definition at line 77 of file hierarchy.h.
|
inline |
Compute violations based on the solution.
[out] | violations | violations |
[in] | solution | solution |
Definition at line 221 of file hierarchy.h.
|
inline |
Determine active set based on the solution. This active set may differ from the active set returned by the solver due to tolerances.
[out] | active_set | active set |
[in] | solution | solution |
Definition at line 202 of file hierarchy.h.
|
inline |
Form hierarchy.
[out] | solution | initialized solution |
[in] | model | model of the system |
[in] | control_problem | control problem associated with the model |
Definition at line 106 of file hierarchy.h.
|
inline |
Form hierarchy.
[out] | solution | initialized solution |
[out] | active_set_guess | active set guess |
[in] | model | model of the system |
[in] | control_problem | control problem associated with the model |
Definition at line 122 of file hierarchy.h.
|
inline |
Form hierarchy.
[out] | solution | initialized solution |
[out] | solution_guess | guess of the solution |
[out] | active_set_guess | active set guess |
[in] | model | model of the system |
[in] | control_problem | control problem associated with the model |
[in] | old_solution | old solution |
Definition at line 142 of file hierarchy.h.
|
inline |
Form hierarchy.
[out] | solution | initialized solution |
[out] | solution_guess | guess of the solution |
[in] | model | model of the system |
[in] | control_problem | control problem associated with the model |
[in] | old_solution | old solution |
Definition at line 164 of file hierarchy.h.
|
inlineprotected |
Form hierarchy.
[out] | solution | initialized solution |
[in] | model | model of the system |
[in] | control_problem | control problem associated with the model |
[in] | is_active_set_guessing_enabled |
Definition at line 39 of file hierarchy.h.
|
inline |
Returns number of levels in the hierarchy.
Definition at line 280 of file hierarchy.h.
|
inline |
Form a QP problem.
t_QPConstraints | QP constraints type |
[in] | qp_problem | QP problem |
[in] | sol_structure | solution structure |
[in] | initialize_upper_triangular_part | of the Hessian |
Definition at line 329 of file hierarchy.h.
|
inlineprotected |
Form active set guess.
[out] | active_set | active set guess |
Definition at line 62 of file hierarchy.h.
|
inline |
Initialize active set of the hierarchy.
[in,out] | active_set | active set. |
Definition at line 312 of file hierarchy.h.
|
inline |
Log hierarchy as a set of tasks.
[in,out] | logger | logger |
[in] | parent | parent |
[in] | name | name |
Definition at line 293 of file hierarchy.h.
|
inline |
Access hierarchy level (const)
[in] | level_index | index of the level |
Definition at line 256 of file hierarchy.h.
|
inline |
Access hierarchy level.
[in] | level_index | index of the level |
Definition at line 269 of file hierarchy.h.
|
inline |
Process actual active set: extract active sets of individual tasks.
[in] | active_set |
Definition at line 181 of file hierarchy.h.
|
inline |
Add task to the optimization problem.
[in,out] | task_pointer | pointer to a task |
[in] | level_index | level in the hierarchy |
Definition at line 91 of file hierarchy.h.
|
inline |
Reset the optimization problem.
[in] | number_of_levels | new number of levels |
Definition at line 238 of file hierarchy.h.
|
protected |
Definition at line 25 of file hierarchy.h.
|
protected |
Definition at line 26 of file hierarchy.h.
|
protected |
Definition at line 23 of file hierarchy.h.