DART
6.10.1
|
#include <MultiObjectiveProblem.hpp>
Public Member Functions | |
MultiObjectiveProblem (std::size_t dim, std::size_t integerDim=0u) | |
Constructor. More... | |
virtual | ~MultiObjectiveProblem ()=default |
Destructor. More... | |
virtual std::ostream & | print (std::ostream &os) const |
Prints information of this class to a stream. More... | |
Solution | |
virtual void | setSolutionDimension (std::size_t dim, std::size_t integerDim=0u) |
Sets the dimension of the solution. More... | |
virtual std::size_t | getSolutionDimension () const |
Returns dimension of the solution. More... | |
std::size_t | getDoubleDimension () const |
Returns dimension of the floating-point part of the solution. More... | |
virtual void | setIntegerDimension (std::size_t dim) |
Sets dimension of the integers in the decision vector. More... | |
virtual std::size_t | getIntegerDimension () const |
Returns dimension of the integers in the decision vector. More... | |
void | setLowerBounds (const Eigen::VectorXd &lb) |
Sets lower bounds for optimization parameters. More... | |
const Eigen::VectorXd & | getLowerBounds () const |
Returns lower bounds for optimization parameters. More... | |
void | setUpperBounds (const Eigen::VectorXd &ub) |
Sets upper bounds for optimization parameters. More... | |
const Eigen::VectorXd & | getUpperBounds () const |
Returns upper bounds for optimization parameters. More... | |
Objectives | |
virtual std::size_t | getObjectiveDimension () const =0 |
Returns the total dimension of objective functions. More... | |
Equality Constraints | |
virtual std::size_t | getEqConstraintDimension () const |
Returns the total dimension of equality constraints. More... | |
Inequality Constraints | |
virtual std::size_t | getIneqConstraintDimension () const |
Returns the total dimension of inequality constraints. More... | |
Evaluations | |
virtual Eigen::VectorXd | evaluateObjectives (const Eigen::VectorXd &x) const =0 |
Evaluates objectives. More... | |
virtual Eigen::VectorXd | evaluateEqConstraints (const Eigen::VectorXd &x) const |
Evaluates equality constraints. More... | |
virtual Eigen::VectorXd | evaluateIneqConstraints (const Eigen::VectorXd &x) const |
Evaluates inequality constraints. More... | |
std::size_t | getFitnessDimension () const |
Return dimension of fitness. More... | |
Eigen::VectorXd | evaluateFitness (const Eigen::VectorXd &x) const |
Evaluates fitness, which is [objectives, equality constraints, inequality constraints]. More... | |
Protected Attributes | |
std::size_t | mDimension |
Dimension of the decision vector (or optimization parameters) More... | |
std::size_t | mIntegerDimension |
Dimension of integer in the decision vector. More... | |
Eigen::VectorXd | mLowerBounds |
Lower bounds for optimization parameters. More... | |
Eigen::VectorXd | mUpperBounds |
Upper bounds for optimization parameters. More... | |
|
explicit |
Constructor.
|
virtualdefault |
Destructor.
|
virtual |
Evaluates equality constraints.
Reimplemented in dart::optimizer::GenericMultiObjectiveProblem.
Eigen::VectorXd dart::optimizer::MultiObjectiveProblem::evaluateFitness | ( | const Eigen::VectorXd & | x | ) | const |
Evaluates fitness, which is [objectives, equality constraints, inequality constraints].
|
virtual |
Evaluates inequality constraints.
Reimplemented in dart::optimizer::GenericMultiObjectiveProblem.
|
pure virtual |
Evaluates objectives.
Implemented in dart::optimizer::GenericMultiObjectiveProblem.
std::size_t dart::optimizer::MultiObjectiveProblem::getDoubleDimension | ( | ) | const |
Returns dimension of the floating-point part of the solution.
|
virtual |
Returns the total dimension of equality constraints.
Reimplemented in dart::optimizer::GenericMultiObjectiveProblem.
std::size_t dart::optimizer::MultiObjectiveProblem::getFitnessDimension | ( | ) | const |
Return dimension of fitness.
|
virtual |
Returns the total dimension of inequality constraints.
Reimplemented in dart::optimizer::GenericMultiObjectiveProblem.
|
virtual |
Returns dimension of the integers in the decision vector.
const Eigen::VectorXd & dart::optimizer::MultiObjectiveProblem::getLowerBounds | ( | ) | const |
Returns lower bounds for optimization parameters.
|
pure virtual |
Returns the total dimension of objective functions.
Implemented in dart::optimizer::GenericMultiObjectiveProblem.
|
virtual |
Returns dimension of the solution.
const Eigen::VectorXd & dart::optimizer::MultiObjectiveProblem::getUpperBounds | ( | ) | const |
Returns upper bounds for optimization parameters.
|
virtual |
Prints information of this class to a stream.
|
virtual |
Sets dimension of the integers in the decision vector.
void dart::optimizer::MultiObjectiveProblem::setLowerBounds | ( | const Eigen::VectorXd & | lb | ) |
Sets lower bounds for optimization parameters.
|
virtual |
Sets the dimension of the solution.
The element type of the solution can be either double
or int
. In the case that the solution partially contains integers, we assume the integer part takes place the tail of the solution, and the size of the integer part is integerDim
. For example, a solution vector can be [floating1, floating2, ..., int1, int2]
.
Note that the dim
represents the whole dimension of the solution so that the dimension of floating-point part is to be (dim
- integerDim
).
By default, we assume the solution is homogeneously floating-point type ( i.e., integerDim
is zero).
[in] | dim | Total dimension of the solution. |
[in] | integerDim | The dimension of integer part in the solution. |
void dart::optimizer::MultiObjectiveProblem::setUpperBounds | ( | const Eigen::VectorXd & | ub | ) |
Sets upper bounds for optimization parameters.
|
protected |
Dimension of the decision vector (or optimization parameters)
|
protected |
Dimension of integer in the decision vector.
The integers are placed in the tail of the decision vector.
|
protected |
Lower bounds for optimization parameters.
|
protected |
Upper bounds for optimization parameters.