33 #ifndef CNLOPTMINIMIZER_H 34 #define CNLOPTMINIMIZER_H 49 class CNLOPTMinimizer:
public FirstOrderMinimizer
58 CNLOPTMinimizer(FirstOrderCostFunction *fun);
64 virtual const char* get_name()
const {
return "NLOPTMinimizer"; }
68 virtual ~CNLOPTMinimizer();
80 virtual bool supports_batch_update()
const {
return true;}
91 virtual void set_nlopt_parameters(ENLOPTALGORITHM algorithm=LD_LBFGS,
100 static double nlopt_function(
unsigned dim,
const double* variable,
101 double* gradient,
void* func_data);
103 static int16_t get_nlopt_algorithm_id(ENLOPTALGORITHM method);
105 static nlopt_algorithm get_nlopt_algorithm(int16_t method_id)
107 REQUIRE(method_id>=0 && method_id<(int16_t)NLOPT_NUM_ALGORITHMS,
108 "Unsupported method id (%d)\n", method_id);
109 return (nlopt_algorithm) method_id;
115 SGVector<float64_t> m_target_variable;
118 virtual void init_minimization();
130 int16_t m_nlopt_algorithm_id;
139 #endif //USE_GPL_SHOGUN
all of classes and functions are contained in the shogun namespace