33 #ifndef DART_OPTIMIZER_GENERICMULTIOBJECTIVEPROBLEM_HPP_
34 #define DART_OPTIMIZER_GENERICMULTIOBJECTIVEPROBLEM_HPP_
39 #include <Eigen/Dense>
52 std::size_t dim, std::size_t integerDim = 0u);
134 const Eigen::VectorXd& x)
const override;
138 const Eigen::VectorXd& x)
const override;
std::size_t index
Definition: SkelParser.cpp:1617
Definition: GenericMultiObjectiveProblem.hpp:48
void removeAllIneqConstraintFunctions()
Removes all inequality constraints.
Definition: GenericMultiObjectiveProblem.cpp:213
std::size_t getIneqConstraintDimension() const override
Returns the total dimension of inequality constraints.
Definition: GenericMultiObjectiveProblem.cpp:207
void removeAllObjectiveFunctions()
Removes all objective functions.
Definition: GenericMultiObjectiveProblem.cpp:187
GenericMultiObjectiveProblem(std::size_t dim, std::size_t integerDim=0u)
Constructor.
Definition: GenericMultiObjectiveProblem.cpp:58
FunctionPtr getEqConstraintFunction(std::size_t index) const
Returns equality constraint.
Definition: GenericMultiObjectiveProblem.cpp:134
void removeAllEqConstraintFunctions()
Removes all equality constraints.
Definition: GenericMultiObjectiveProblem.cpp:200
void removeEqConstraintFunction(FunctionPtr eqConst)
Removes equality constraint.
Definition: GenericMultiObjectiveProblem.cpp:161
std::size_t mIneqConstraintDimension
Cache for inequality constraint dimension.
Definition: GenericMultiObjectiveProblem.hpp:167
void addObjectiveFunction(FunctionPtr objective)
Adds a minimum objective function.
Definition: GenericMultiObjectiveProblem.cpp:102
const std::vector< FunctionPtr > & getObjectiveFunctions() const
Returns objective functions.
Definition: GenericMultiObjectiveProblem.cpp:111
std::size_t getNumEqualityConstraintFunctions() const
Returns number of equality constraints.
Definition: GenericMultiObjectiveProblem.cpp:81
std::size_t getEqConstraintDimension() const override
Returns the total dimension of equality constraints.
Definition: GenericMultiObjectiveProblem.cpp:194
Eigen::VectorXd evaluateFitness(const Eigen::VectorXd &x) const
Evaluates fitness, which is [objectives, equality constraints, inequality constraints].
Definition: GenericMultiObjectiveProblem.cpp:274
std::size_t getObjectiveDimension() const override
Returns the total dimension of objective functions.
Definition: GenericMultiObjectiveProblem.cpp:69
Eigen::VectorXd evaluateObjectives(const Eigen::VectorXd &x) const override
Evaluates objectives.
Definition: GenericMultiObjectiveProblem.cpp:241
std::size_t getNumIneqConstraintFunctions() const
Returns number of inequality constraints.
Definition: GenericMultiObjectiveProblem.cpp:88
void addEqConstraintFunction(FunctionPtr eqConst)
Adds equality constraint.
Definition: GenericMultiObjectiveProblem.cpp:117
std::size_t mEqConstraintDimension
Cache for equality constraint dimension.
Definition: GenericMultiObjectiveProblem.hpp:164
void removeObjectiveFunction(FunctionPtr function)
Removes an objective function.
Definition: GenericMultiObjectiveProblem.cpp:151
void setObjectiveFunctions(const std::vector< FunctionPtr > &objectives)
Sets objective functions to be minimized.
Definition: GenericMultiObjectiveProblem.cpp:94
std::vector< FunctionPtr > mObjectiveFunctions
Objective functions.
Definition: GenericMultiObjectiveProblem.hpp:151
std::vector< FunctionPtr > mEqConstraintFunctions
Equality constraint functions.
Definition: GenericMultiObjectiveProblem.hpp:154
std::size_t mObjectiveDimension
Cache for objective dimension.
Definition: GenericMultiObjectiveProblem.hpp:161
Eigen::VectorXd evaluateEqConstraints(const Eigen::VectorXd &x) const override
Evaluates equality constraints.
Definition: GenericMultiObjectiveProblem.cpp:248
std::size_t getFitnessDimension() const
Return dimension of fitness.
Definition: GenericMultiObjectiveProblem.cpp:264
Eigen::VectorXd evaluateIneqConstraints(const Eigen::VectorXd &x) const override
Evaluates inequality constraints.
Definition: GenericMultiObjectiveProblem.cpp:256
std::size_t getNumObjectiveFunctions() const
Returns the number objective functions.
Definition: GenericMultiObjectiveProblem.cpp:75
void addIneqConstraintFunction(FunctionPtr ineqConst)
Adds inequality constraint.
Definition: GenericMultiObjectiveProblem.cpp:125
std::vector< FunctionPtr > mIneqConstraintFunctions
Inequality constraint functions.
Definition: GenericMultiObjectiveProblem.hpp:157
~GenericMultiObjectiveProblem() override=default
Destructor.
void removeIneqConstraintFunction(FunctionPtr ineqConst)
Removes inequality constraint.
Definition: GenericMultiObjectiveProblem.cpp:174
FunctionPtr getIneqConstraintFunction(std::size_t index) const
Returns inequality constraint.
Definition: GenericMultiObjectiveProblem.cpp:142
Definition: MultiObjectiveProblem.hpp:47
std::shared_ptr< Function > FunctionPtr
Definition: Function.hpp:84
Definition: BulletCollisionDetector.cpp:63