33 #ifndef DART_OPTIMIZER_PAGMO_PAGMOMULTIOBJECTIVESOLVER_HPP_
34 #define DART_OPTIMIZER_PAGMO_PAGMOMULTIOBJECTIVESOLVER_HPP_
37 #include <pagmo/pagmo.hpp>
40 #define DART_PAGMO_DEFAULT_SOLVER Algorithm::Global_MOEAD
45 class MultiObjectiveProblem;
53 #ifdef PAGMO_WITH_NLOPT
83 std::shared_ptr<MultiObjectiveProblem> problem);
89 bool solve(std::size_t numEvolutions = 1u)
override;
92 std::string
getType()
const override;
95 std::shared_ptr<MultiObjectiveSolver>
clone()
const override;
BodyPropPtr properties
Definition: SdfParser.cpp:80
Abstract class that provides a common interface for different multi-objective optimization solvers.
Definition: MultiObjectiveSolver.hpp:58
Definition: PagmoMultiObjectiveSolver.hpp:48
bool solve(std::size_t numEvolutions=1u) override
Solve optimization problem.
Definition: PagmoMultiObjectiveSolver.cpp:145
void setProperties(const Properties &properties)
Sets the Properties of this PagmoMultiObjectiveSolver.
Definition: PagmoMultiObjectiveSolver.cpp:186
std::uniform_real_distribution< double > mDistribution
Distribution.
Definition: PagmoMultiObjectiveSolver.hpp:123
PagmoMultiObjectiveSolver & operator=(const PagmoMultiObjectiveSolver &other)
Copies the Properties of another PagmoMultiObjectiveSolver.
Definition: PagmoMultiObjectiveSolver.cpp:213
UniqueProperties mPagmoMultiObjectiveSolverP
PagmoMultiObjectiveSolver properties.
Definition: PagmoMultiObjectiveSolver.hpp:120
Algorithm getAlgorithm() const
Returns the algorithm that is to be used by the pagmo solver.
Definition: PagmoMultiObjectiveSolver.cpp:227
void copy(const PagmoMultiObjectiveSolver &other)
Copies the Properties of another PagmoMultiObjectiveSolver.
Definition: PagmoMultiObjectiveSolver.cpp:207
std::string getType() const override
Returns the type (implementation) of this Solver.
Definition: PagmoMultiObjectiveSolver.cpp:174
Properties getGradientDescentProperties() const
Returns the Properties of this GradientDescentSolver.
Definition: PagmoMultiObjectiveSolver.cpp:201
PagmoMultiObjectiveSolver(const Properties &properties=Properties())
Default Constructor.
Definition: PagmoMultiObjectiveSolver.cpp:67
~PagmoMultiObjectiveSolver() override
Destructor.
Definition: PagmoMultiObjectiveSolver.cpp:83
Algorithm
Reference: https://esa.github.io/pagmo2/docs/algorithm_list.html.
Definition: PagmoMultiObjectiveSolver.hpp:52
std::shared_ptr< MultiObjectiveSolver > clone() const override
Creates an identical clone of this Solver.
Definition: PagmoMultiObjectiveSolver.cpp:180
void setAlgorithm(Algorithm alg)
Sets the algorithm that is to be used by the solver.
Definition: PagmoMultiObjectiveSolver.cpp:221
Definition: BulletCollisionDetector.cpp:65
The MultiObjectiveSolver::Properties class contains Solver parameters that are common to all MultiObj...
Definition: MultiObjectiveSolver.hpp:65
Definition: PagmoMultiObjectiveSolver.hpp:70
Properties(const MultiObjectiveSolver::Properties &solverProperties=MultiObjectiveSolver::Properties(), const UniqueProperties &descentProperties=UniqueProperties())
Definition: PagmoMultiObjectiveSolver.cpp:57
Definition: PagmoMultiObjectiveSolver.hpp:61
Algorithm mAlgorithm
Algorithm to be used by the pagmo.
Definition: PagmoMultiObjectiveSolver.hpp:63
UniqueProperties(Algorithm algorithm=Algorithm::Global_NSGA2)
Constructor.
Definition: PagmoMultiObjectiveSolver.cpp:49