Class diff_evo_adapt (o2scl)¶
-
template<class
func_t
= multi_funct, classvec_t
= boost::numeric::ublas::vector<double>, classinit_funct_t
= mm_funct>
classo2scl
::
diff_evo_adapt
: public o2scl::diff_evo<multi_funct, boost::numeric::ublas::vector<double>, mm_funct>¶ Multidimensional minimization by the differential evolution method.
This class minimizes a function using differential evolution. This method is a genetic algorithm and as such works well for non continuous problems, since it does not require the gradient of the function to be minimized.
This is an adaptive version of diff_evo as described in
Lower bound and range of F (defaults 0.1 and 0.9)
-
double
fl
¶
-
double
fr
¶
-
diff_evo_adapt
()¶
-
int
mmin
(size_t nvar, vec_t &x0, double &fmin, func_t &func)¶ Calculate the minimum
fmin
offunc
w.r.t the arrayx
of sizenvar
.
-
void
print_iter
(size_t nvar, double fmin, int iter, vec_t &best_fit)¶ Print out iteration information.
-
diff_evo_adapt
(const diff_evo_adapt<func_t, vec_t, init_funct_t>&)¶
-
diff_evo_adapt<func_t, vec_t, init_funct_t> &
operator=
(const diff_evo_adapt<func_t, vec_t, init_funct_t>&)¶
Public Types
-
typedef boost::numeric::ublas::vector<double>
ubvector
¶
-
double