33 #ifndef DART_OPTIMIZER_NLOPT_NLOPTSOLVER_HPP_
34 #define DART_OPTIMIZER_NLOPT_NLOPTSOLVER_HPP_
131 bool solve() override;
#define DART_DEPRECATED(version)
Definition: Deprecated.hpp:51
CollisionResult * result
Collision result of DART.
Definition: FCLCollisionDetector.cpp:160
BodyPropPtr properties
Definition: SdfParser.cpp:80
NloptSolver is a nonlinear programming solver that provides many unlerlying algorithms through nlopt ...
Definition: NloptSolver.hpp:61
std::string getType() const override
Get the type (implementation) of this Solver.
Definition: NloptSolver.cpp:202
static nlopt::algorithm convertAlgorithm(Algorithm algorithm)
Converts nlopt::algorithm to NloptSolver::Algorithm.
Definition: NloptSolver.cpp:262
nlopt::algorithm getAlgorithm() const
Get the algorithm that is to be used by the nlopt solver.
Definition: NloptSolver.cpp:240
Eigen::VectorXd getLastConfiguration() const
Definition: NloptSolver.cpp:196
Algorithm getAlgorithm2() const
Get the algorithm that is to be used by the nlopt solver.
Definition: NloptSolver.cpp:246
std::shared_ptr< Solver > clone() const override
Create an identical clone of this Solver.
Definition: NloptSolver.cpp:208
std::unique_ptr< nlopt::opt > mOpt
NLOPT data structure.
Definition: NloptSolver.hpp:188
std::vector< double > mX
Optimization parameters.
Definition: NloptSolver.hpp:194
double mMinF
Optimum value of the objective function.
Definition: NloptSolver.hpp:197
void setAlgorithm(nlopt::algorithm alg)
Set the algorithm that is to be used by the nlopt solver.
Definition: NloptSolver.cpp:228
nlopt::algorithm mAlg
Algorithm to be used by the nlopt::opt.
Definition: NloptSolver.hpp:191
static void _nlopt_mfunc(unsigned m, double *result, unsigned n, const double *x, double *gradient, void *func_data)
Wrapping function for nlopt callback function, nlopt_mfunc.
Definition: NloptSolver.cpp:390
bool solve() override
Solve optimization problem.
Definition: NloptSolver.cpp:104
static double _nlopt_func(unsigned n, const double *x, double *gradient, void *func_data)
Wrapping function for nlopt callback function, nlopt_func.
Definition: NloptSolver.cpp:373
Algorithm
Definition: NloptSolver.hpp:64
@ GN_ISRES
Definition: NloptSolver.hpp:100
@ LN_NELDERMEAD
Definition: NloptSolver.hpp:93
@ LN_PRAXIS
Definition: NloptSolver.hpp:77
@ GD_MLSL_LDS
Definition: NloptSolver.hpp:88
@ GN_ESCH
Definition: NloptSolver.hpp:107
@ LN_AUGLAG
Definition: NloptSolver.hpp:95
@ LN_NEWUOA
Definition: NloptSolver.hpp:91
@ LN_BOBYQA
Definition: NloptSolver.hpp:99
@ GN_DIRECT_NOSCAL
Definition: NloptSolver.hpp:68
@ GN_DIRECT_L_RAND_NOSCAL
Definition: NloptSolver.hpp:70
@ GN_ORIG_DIRECT_L
Definition: NloptSolver.hpp:72
@ LD_MMA
Definition: NloptSolver.hpp:89
@ NUM_ALGORITHMS
Not an algorithm, just the number of them.
Definition: NloptSolver.hpp:108
@ LN_SBPLX
Definition: NloptSolver.hpp:94
@ LD_VAR1
Definition: NloptSolver.hpp:78
@ LD_CCSAQ
Definition: NloptSolver.hpp:106
@ LD_LBFGS_NOCEDAL
Definition: NloptSolver.hpp:75
@ AUGLAG
Definition: NloptSolver.hpp:101
@ LN_NEWUOA_BOUND
Definition: NloptSolver.hpp:92
@ G_MLSL_LDS
Definition: NloptSolver.hpp:104
@ LN_AUGLAG_EQ
Definition: NloptSolver.hpp:97
@ LD_TNEWTON
Definition: NloptSolver.hpp:80
@ G_MLSL
Definition: NloptSolver.hpp:103
@ LD_AUGLAG_EQ
Definition: NloptSolver.hpp:98
@ GN_DIRECT_L_NOSCAL
Definition: NloptSolver.hpp:69
@ LD_AUGLAG
Definition: NloptSolver.hpp:96
@ GD_STOGO
Definition: NloptSolver.hpp:73
@ GN_DIRECT
Definition: NloptSolver.hpp:65
@ LD_TNEWTON_PRECOND_RESTART
Definition: NloptSolver.hpp:83
@ GD_STOGO_RAND
Definition: NloptSolver.hpp:74
@ GN_MLSL
Definition: NloptSolver.hpp:85
@ GN_ORIG_DIRECT
Definition: NloptSolver.hpp:71
@ GN_DIRECT_L
Definition: NloptSolver.hpp:66
@ LD_SLSQP
Definition: NloptSolver.hpp:105
@ GD_MLSL
Definition: NloptSolver.hpp:86
@ AUGLAG_EQ
Definition: NloptSolver.hpp:102
@ LD_TNEWTON_RESTART
Definition: NloptSolver.hpp:81
@ LD_LBFGS
Definition: NloptSolver.hpp:76
@ GN_CRS2_LM
Definition: NloptSolver.hpp:84
@ GN_MLSL_LDS
Definition: NloptSolver.hpp:87
@ LD_TNEWTON_PRECOND
Definition: NloptSolver.hpp:82
@ LN_COBYLA
Definition: NloptSolver.hpp:90
@ LD_VAR2
Definition: NloptSolver.hpp:79
@ GN_DIRECT_L_RAND
Definition: NloptSolver.hpp:67
void copy(const NloptSolver &other)
Copy the Properties of another NloptSolver.
Definition: NloptSolver.cpp:214
class Problem
Definition: Problem.hpp:48
Abstract class that provides a common interface for different Solvers.
Definition: Solver.hpp:53
Definition: Random-impl.hpp:92
Definition: BulletCollisionDetector.cpp:65
Definition: SharedLibraryManager.hpp:46