12 #ifndef ROOT_Math_GeneticMinimizer
13 #define ROOT_Math_GeneticMinimizer
72 virtual bool SetLimitedVariable(
unsigned int ,
const std::string& ,
double ,
double ,
double,
double);
73 virtual bool SetVariable(
unsigned int ivar,
const std::string &
name,
double val,
double step);
74 virtual bool SetFixedVariable(
unsigned int ivar ,
const std::string & name ,
double val);
78 virtual double Edm()
const;
79 virtual const double *
X()
const;
81 virtual unsigned int NCalls()
const;
83 virtual unsigned int NDim()
const;
84 virtual unsigned int NFree()
const;
87 virtual const double *
Errors()
const;
89 virtual double CovMatrix(
unsigned int i,
unsigned int j)
const;
virtual bool SetFixedVariable(unsigned int ivar, const std::string &name, double val)
set a new fixed variable (override if minimizer supports them )
virtual ROOT::Math::MinimizerOptions Options() const
retrieve the minimizer options (implement derived class if needed)
virtual bool Minimize()
method to perform the minimization
GeneticMinimizerParameters fParameters
virtual bool SetVariable(unsigned int ivar, const std::string &name, double val, double step)
set a new free variable
virtual void SetOptions(const ROOT::Math::MinimizerOptions &opt)
void GetGeneticOptions(ROOT::Math::MinimizerOptions &opt) const
virtual void Clear()
reset for consecutive minimizations - implement if needed
virtual double Edm() const
return expected distance reached from the minimum (re-implement if minimizer provides it ...
virtual double CovMatrix(unsigned int i, unsigned int j) const
return covariance matrices element for variables ivar,jvar if the variable is fixed the return value ...
Abstract Minimizer class, defining the interface for the various minimizer (like Minuit2, Minuit, GSL, etc..) Plug-in's exist in ROOT to be able to instantiate the derived classes like ROOT::Math::GSLMinimizer or ROOT::Math::Minuit2Minimizer via the plug-in manager.
GeneticMinimizerParameters()
void SetRandomSeed(int seed)
std::vector< double > fResult
virtual void SetFunction(const ROOT::Math::IMultiGenFunction &func)=0
set the function to minimize
virtual ~GeneticMinimizer()
virtual unsigned int NDim() const
this is <= Function().NDim() which is the total number of variables (free+ constrained ones) ...
TMVA::IFitterTarget * fFitness
void SetParameters(const GeneticMinimizerParameters ¶ms)
virtual bool ProvidesError() const
minimizer provides error and error matrix
std::vector< TMVA::Interval * > fRanges
virtual const double * X() const
return pointer to X values at the minimum
GeneticMinimizer(int i=0)
double func(double *x, double *p)
virtual void SetFunction(const ROOT::Math::IMultiGenFunction &func)
set the function to minimize
virtual const double * Errors() const
return errors at the minimum
virtual double MinValue() const
return minimum function value
virtual unsigned int NCalls() const
number of function calls to reach the minimum
virtual unsigned int NFree() const
number of free variables (real dimension of the problem) this is <= Function().NDim() which is the to...
Documentation for the abstract class IBaseFunctionMultiDim.
virtual bool SetLimitedVariable(unsigned int, const std::string &, double, double, double, double)
set a new upper/lower limited variable (override if minimizer supports them ) otherwise as default se...
const GeneticMinimizerParameters & MinimizerParameters() const
virtual const double * MinGradient() const
return pointer to gradient values at the minimum