|
DART 6.12.2
|
#include <MultiObjectiveProblem.hpp>
Public Member Functions | |
| MultiObjectiveProblem (std::size_t dim, std::size_t integerDim=0u) | |
| Constructor. | |
| virtual | ~MultiObjectiveProblem ()=default |
| Destructor. | |
| virtual std::ostream & | print (std::ostream &os) const |
| Prints information of this class to a stream. | |
Solution | |
| virtual void | setSolutionDimension (std::size_t dim, std::size_t integerDim=0u) |
| Sets the dimension of the solution. | |
| virtual std::size_t | getSolutionDimension () const |
| Returns dimension of the solution. | |
| std::size_t | getDoubleDimension () const |
| Returns dimension of the floating-point part of the solution. | |
| virtual void | setIntegerDimension (std::size_t dim) |
| Sets dimension of the integers in the decision vector. | |
| virtual std::size_t | getIntegerDimension () const |
| Returns dimension of the integers in the decision vector. | |
| void | setLowerBounds (const Eigen::VectorXd &lb) |
| Sets lower bounds for optimization parameters. | |
| const Eigen::VectorXd & | getLowerBounds () const |
| Returns lower bounds for optimization parameters. | |
| void | setUpperBounds (const Eigen::VectorXd &ub) |
| Sets upper bounds for optimization parameters. | |
| const Eigen::VectorXd & | getUpperBounds () const |
| Returns upper bounds for optimization parameters. | |
Objectives | |
| virtual std::size_t | getObjectiveDimension () const =0 |
| Returns the total dimension of objective functions. | |
Equality Constraints | |
| virtual std::size_t | getEqConstraintDimension () const |
| Returns the total dimension of equality constraints. | |
Inequality Constraints | |
| virtual std::size_t | getIneqConstraintDimension () const |
| Returns the total dimension of inequality constraints. | |
Evaluations | |
| virtual Eigen::VectorXd | evaluateObjectives (const Eigen::VectorXd &x) const =0 |
| Evaluates objectives. | |
| virtual Eigen::VectorXd | evaluateEqConstraints (const Eigen::VectorXd &x) const |
| Evaluates equality constraints. | |
| virtual Eigen::VectorXd | evaluateIneqConstraints (const Eigen::VectorXd &x) const |
| Evaluates inequality constraints. | |
| std::size_t | getFitnessDimension () const |
| Return dimension of fitness. | |
| Eigen::VectorXd | evaluateFitness (const Eigen::VectorXd &x) const |
| Evaluates fitness, which is [objectives, equality constraints, inequality constraints]. | |
Protected Attributes | |
| std::size_t | mDimension |
| Dimension of the decision vector (or optimization parameters) | |
| std::size_t | mIntegerDimension |
| Dimension of integer in the decision vector. | |
| Eigen::VectorXd | mLowerBounds |
| Lower bounds for optimization parameters. | |
| Eigen::VectorXd | mUpperBounds |
| Upper bounds for optimization parameters. | |
|
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.