TMVA::SimulatedAnnealing Class Reference

#include <SimulatedAnnealing.h>

List of all members.

Public Member Functions

 SimulatedAnnealing (IFitterTarget &target, const std::vector< TMVA::Interval * > &ranges)
virtual ~SimulatedAnnealing ()
Double_t Minimize (std::vector< Double_t > &parameters)
void SetMaxCalls (Int_t mc)
void SetInitTemp (Double_t it)
void SetMinTemp (Double_t min)
void SetAccuracy (Double_t eps)
void SetTemperatureScale (Double_t scale)
void SetAdaptiveSpeed (Double_t speed)
void SetOptions (Int_t maxCalls, Double_t initialTemperature, Double_t minTemperature, Double_t eps, TString kernelTemperatureS, Double_t temperatureScale, Double_t adaptiveSpeed, Double_t temperatureAdaptiveStep, Bool_t useDefaultScale, Bool_t useDefaultTemperature)
 SimulatedAnnealing (IFitterTarget &target, const std::vector< TMVA::Interval * > &ranges)
virtual ~SimulatedAnnealing ()
Double_t Minimize (std::vector< Double_t > &parameters)
void SetMaxCalls (Int_t mc)
void SetInitTemp (Double_t it)
void SetMinTemp (Double_t min)
void SetAccuracy (Double_t eps)
void SetTemperatureScale (Double_t scale)
void SetAdaptiveSpeed (Double_t speed)
void SetOptions (Int_t maxCalls, Double_t initialTemperature, Double_t minTemperature, Double_t eps, TString kernelTemperatureS, Double_t temperatureScale, Double_t adaptiveSpeed, Double_t temperatureAdaptiveStep, Bool_t useDefaultScale, Bool_t useDefaultTemperature)

Private Types

enum  EKernelTemperature
enum  EKernelTemperature

Private Member Functions

void FillWithRandomValues (std::vector< Double_t > &parameters)
void ReWriteParameters (std::vector< Double_t > &from, std::vector< Double_t > &to)
void GenerateNewTemperature (Double_t &currentTemperature, Int_t Iter)
void GenerateNeighbour (std::vector< Double_t > &parameters, std::vector< Double_t > &oldParameters, Double_t currentTemperature)
Bool_t ShouldGoIn (Double_t currentFit, Double_t localFit, Double_t currentTemperature)
void SetDefaultScale ()
Double_t GenerateMaxTemperature (std::vector< Double_t > &parameters)
std::vector< Double_tGenerateNeighbour (std::vector< Double_t > &parameters, Double_t currentTemperature)
MsgLoggerLog () const
void FillWithRandomValues (std::vector< Double_t > &parameters)
void ReWriteParameters (std::vector< Double_t > &from, std::vector< Double_t > &to)
void GenerateNewTemperature (Double_t &currentTemperature, Int_t Iter)
void GenerateNeighbour (std::vector< Double_t > &parameters, std::vector< Double_t > &oldParameters, Double_t currentTemperature)
Bool_t ShouldGoIn (Double_t currentFit, Double_t localFit, Double_t currentTemperature)
void SetDefaultScale ()
Double_t GenerateMaxTemperature (std::vector< Double_t > &parameters)
std::vector< Double_tGenerateNeighbour (std::vector< Double_t > &parameters, Double_t currentTemperature)
MsgLoggerLog () const

Private Attributes

enum TMVA::SimulatedAnnealing::EKernelTemperature fKernelTemperature
IFitterTargetfFitterTarget
TRandomfRandom
const std::vector< TMVA::Interval * > & fRanges
Int_t fMaxCalls
Double_t fInitialTemperature
Double_t fMinTemperature
Double_t fEps
Double_t fTemperatureScale
Double_t fAdaptiveSpeed
Double_t fTemperatureAdaptiveStep
Bool_t fUseDefaultScale
Bool_t fUseDefaultTemperature
MsgLoggerfLogger
Double_t fProgress
enum TMVA::SimulatedAnnealing::EKernelTemperature fKernelTemperature
IFitterTargetfFitterTarget
TRandomfRandom
const std::vector< TMVA::Interval * > & fRanges
MsgLoggerfLogger


Detailed Description

Definition at line 54 of file SimulatedAnnealing.h.


Member Enumeration Documentation

enum TMVA::SimulatedAnnealing::EKernelTemperature [private]

Definition at line 79 of file SimulatedAnnealing.h.

enum TMVA::SimulatedAnnealing::EKernelTemperature [private]

Definition at line 79 of file SimulatedAnnealing.h.


Constructor & Destructor Documentation

TMVA::SimulatedAnnealing::SimulatedAnnealing ( IFitterTarget target,
const std::vector< TMVA::Interval * > &  ranges 
)

TMVA::SimulatedAnnealing::~SimulatedAnnealing (  )  [virtual]

Definition at line 119 of file SimulatedAnnealing.cxx.

TMVA::SimulatedAnnealing::SimulatedAnnealing ( IFitterTarget target,
const std::vector< TMVA::Interval * > &  ranges 
)

virtual TMVA::SimulatedAnnealing::~SimulatedAnnealing (  )  [virtual]


Member Function Documentation

Double_t TMVA::SimulatedAnnealing::Minimize ( std::vector< Double_t > &  parameters  ) 

Definition at line 297 of file SimulatedAnnealing.cxx.

References TMath::Abs(), Endl, equals(), TMVA::IFitterTarget::EstimatorFunction(), fEps, fFitterTarget, FillWithRandomValues(), fInitialTemperature, fKernelTemperature, fLogger, fMaxCalls, fMinTemperature, fProgress, fRanges, fTemperatureScale, fUseDefaultScale, fUseDefaultTemperature, GenerateMaxTemperature(), GenerateNeighbour(), GenerateNewTemperature(), TMVA::MsgLogger::GetSource(), kIncreasingAdaptive, TMVA::kINFO, Log(), ReWriteParameters(), SetDefaultScale(), ShouldGoIn(), and timer.

Referenced by TMVA::SimulatedAnnealingFitter::Run().

void TMVA::SimulatedAnnealing::SetMaxCalls ( Int_t  mc  )  [inline]

Definition at line 65 of file SimulatedAnnealing.h.

References fMaxCalls.

void TMVA::SimulatedAnnealing::SetInitTemp ( Double_t  it  )  [inline]

Definition at line 66 of file SimulatedAnnealing.h.

References fInitialTemperature.

void TMVA::SimulatedAnnealing::SetMinTemp ( Double_t  min  )  [inline]

Definition at line 67 of file SimulatedAnnealing.h.

References fMinTemperature.

void TMVA::SimulatedAnnealing::SetAccuracy ( Double_t  eps  )  [inline]

Definition at line 68 of file SimulatedAnnealing.h.

References fEps.

void TMVA::SimulatedAnnealing::SetTemperatureScale ( Double_t  scale  )  [inline]

Definition at line 69 of file SimulatedAnnealing.h.

References fTemperatureScale.

void TMVA::SimulatedAnnealing::SetAdaptiveSpeed ( Double_t  speed  )  [inline]

Definition at line 70 of file SimulatedAnnealing.h.

References fAdaptiveSpeed.

void TMVA::SimulatedAnnealing::SetOptions ( Int_t  maxCalls,
Double_t  initialTemperature,
Double_t  minTemperature,
Double_t  eps,
TString  kernelTemperatureS,
Double_t  temperatureScale,
Double_t  adaptiveSpeed,
Double_t  temperatureAdaptiveStep,
Bool_t  useDefaultScale,
Bool_t  useDefaultTemperature 
)

Definition at line 68 of file SimulatedAnnealing.cxx.

References Endl, fAdaptiveSpeed, fEps, fInitialTemperature, fKernelTemperature, fMaxCalls, fMinTemperature, fTemperatureAdaptiveStep, fTemperatureScale, fUseDefaultScale, fUseDefaultTemperature, kDecreasingAdaptive, kHomo, kIncreasingAdaptive, TMVA::kINFO, kLog, kSin, kSqrt, and Log().

Referenced by TMVA::SimulatedAnnealingFitter::Run().

void TMVA::SimulatedAnnealing::FillWithRandomValues ( std::vector< Double_t > &  parameters  )  [private]

Definition at line 125 of file SimulatedAnnealing.cxx.

References fRandom, fRanges, and TRandom::Uniform().

Referenced by Minimize().

void TMVA::SimulatedAnnealing::ReWriteParameters ( std::vector< Double_t > &  from,
std::vector< Double_t > &  to 
) [private]

Definition at line 134 of file SimulatedAnnealing.cxx.

Referenced by GenerateNeighbour(), and Minimize().

void TMVA::SimulatedAnnealing::GenerateNewTemperature ( Double_t currentTemperature,
Int_t  Iter 
) [private]

Definition at line 179 of file SimulatedAnnealing.cxx.

References Endl, fAdaptiveSpeed, fEps, fInitialTemperature, fKernelTemperature, fMinTemperature, fProgress, fTemperatureScale, kDecreasingAdaptive, TMVA::kFATAL, kGeo, kHomo, kIncreasingAdaptive, kLog, kSin, kSqrt, Log(), TMath::Log(), TMath::Sin(), and TMath::Sqrt().

Referenced by Minimize().

void TMVA::SimulatedAnnealing::GenerateNeighbour ( std::vector< Double_t > &  parameters,
std::vector< Double_t > &  oldParameters,
Double_t  currentTemperature 
) [private]

Definition at line 141 of file SimulatedAnnealing.cxx.

References TMath::Abs(), fRandom, fRanges, TMath::Power(), ReWriteParameters(), RootCsg::sign(), and TRandom::Uniform().

Referenced by GenerateMaxTemperature(), and Minimize().

Bool_t TMVA::SimulatedAnnealing::ShouldGoIn ( Double_t  currentFit,
Double_t  localFit,
Double_t  currentTemperature 
) [private]

Definition at line 207 of file SimulatedAnnealing.cxx.

References TMath::Abs(), TMath::Exp(), fEps, fRandom, kFALSE, kTRUE, and TRandom::Uniform().

Referenced by Minimize().

void TMVA::SimulatedAnnealing::SetDefaultScale (  )  [private]

Definition at line 217 of file SimulatedAnnealing.cxx.

References TMath::Abs(), Endl, fInitialTemperature, fKernelTemperature, fMaxCalls, fMinTemperature, fRanges, fTemperatureScale, kDecreasingAdaptive, TMVA::kFATAL, kGeo, kHomo, kIncreasingAdaptive, kLog, kSin, kSqrt, Log(), and TMath::Power().

Referenced by Minimize().

Double_t TMVA::SimulatedAnnealing::GenerateMaxTemperature ( std::vector< Double_t > &  parameters  )  [private]

Definition at line 237 of file SimulatedAnnealing.cxx.

References TMath::Abs(), TMVA::IFitterTarget::EstimatorFunction(), fFitterTarget, fMaxCalls, fMinTemperature, fRanges, fTemperatureAdaptiveStep, GenerateNeighbour(), i, k, ROOT::Math::swap(), t, x, and y.

Referenced by Minimize().

std::vector< Double_t > TMVA::SimulatedAnnealing::GenerateNeighbour ( std::vector< Double_t > &  parameters,
Double_t  currentTemperature 
) [private]

Definition at line 159 of file SimulatedAnnealing.cxx.

References TMath::Abs(), fRandom, fRanges, TMath::Power(), RootCsg::sign(), and TRandom::Uniform().

MsgLogger& TMVA::SimulatedAnnealing::Log (  )  const [inline, private]

Definition at line 117 of file SimulatedAnnealing.h.

References fLogger.

Referenced by GenerateNewTemperature(), Minimize(), SetDefaultScale(), and SetOptions().

Double_t TMVA::SimulatedAnnealing::Minimize ( std::vector< Double_t > &  parameters  ) 

void TMVA::SimulatedAnnealing::SetMaxCalls ( Int_t  mc  )  [inline]

Definition at line 65 of file SimulatedAnnealing.h.

References fMaxCalls.

void TMVA::SimulatedAnnealing::SetInitTemp ( Double_t  it  )  [inline]

Definition at line 66 of file SimulatedAnnealing.h.

References fInitialTemperature.

void TMVA::SimulatedAnnealing::SetMinTemp ( Double_t  min  )  [inline]

Definition at line 67 of file SimulatedAnnealing.h.

References fMinTemperature.

void TMVA::SimulatedAnnealing::SetAccuracy ( Double_t  eps  )  [inline]

Definition at line 68 of file SimulatedAnnealing.h.

References fEps.

void TMVA::SimulatedAnnealing::SetTemperatureScale ( Double_t  scale  )  [inline]

Definition at line 69 of file SimulatedAnnealing.h.

References fTemperatureScale.

void TMVA::SimulatedAnnealing::SetAdaptiveSpeed ( Double_t  speed  )  [inline]

Definition at line 70 of file SimulatedAnnealing.h.

References fAdaptiveSpeed.

void TMVA::SimulatedAnnealing::SetOptions ( Int_t  maxCalls,
Double_t  initialTemperature,
Double_t  minTemperature,
Double_t  eps,
TString  kernelTemperatureS,
Double_t  temperatureScale,
Double_t  adaptiveSpeed,
Double_t  temperatureAdaptiveStep,
Bool_t  useDefaultScale,
Bool_t  useDefaultTemperature 
)

void TMVA::SimulatedAnnealing::FillWithRandomValues ( std::vector< Double_t > &  parameters  )  [private]

void TMVA::SimulatedAnnealing::ReWriteParameters ( std::vector< Double_t > &  from,
std::vector< Double_t > &  to 
) [private]

void TMVA::SimulatedAnnealing::GenerateNewTemperature ( Double_t currentTemperature,
Int_t  Iter 
) [private]

void TMVA::SimulatedAnnealing::GenerateNeighbour ( std::vector< Double_t > &  parameters,
std::vector< Double_t > &  oldParameters,
Double_t  currentTemperature 
) [private]

Bool_t TMVA::SimulatedAnnealing::ShouldGoIn ( Double_t  currentFit,
Double_t  localFit,
Double_t  currentTemperature 
) [private]

void TMVA::SimulatedAnnealing::SetDefaultScale (  )  [private]

Double_t TMVA::SimulatedAnnealing::GenerateMaxTemperature ( std::vector< Double_t > &  parameters  )  [private]

std::vector<Double_t> TMVA::SimulatedAnnealing::GenerateNeighbour ( std::vector< Double_t > &  parameters,
Double_t  currentTemperature 
) [private]

MsgLogger& TMVA::SimulatedAnnealing::Log (  )  const [inline, private]

Definition at line 117 of file SimulatedAnnealing.h.

References fLogger.


Member Data Documentation

enum TMVA::SimulatedAnnealing::EKernelTemperature TMVA::SimulatedAnnealing::fKernelTemperature [private]

Referenced by GenerateNewTemperature(), Minimize(), SetDefaultScale(), and SetOptions().

IFitterTarget& TMVA::SimulatedAnnealing::fFitterTarget [private]

Definition at line 98 of file SimulatedAnnealing.h.

Referenced by GenerateMaxTemperature(), and Minimize().

TRandom* TMVA::SimulatedAnnealing::fRandom [private]

Definition at line 99 of file SimulatedAnnealing.h.

Referenced by FillWithRandomValues(), GenerateNeighbour(), and ShouldGoIn().

const std::vector<TMVA::Interval*>& TMVA::SimulatedAnnealing::fRanges [private]

Definition at line 100 of file SimulatedAnnealing.h.

Referenced by FillWithRandomValues(), GenerateMaxTemperature(), GenerateNeighbour(), Minimize(), and SetDefaultScale().

Int_t TMVA::SimulatedAnnealing::fMaxCalls [private]

Definition at line 103 of file SimulatedAnnealing.h.

Referenced by GenerateMaxTemperature(), Minimize(), SetDefaultScale(), SetMaxCalls(), and SetOptions().

Double_t TMVA::SimulatedAnnealing::fInitialTemperature [private]

Definition at line 104 of file SimulatedAnnealing.h.

Referenced by GenerateNewTemperature(), Minimize(), SetDefaultScale(), SetInitTemp(), and SetOptions().

Double_t TMVA::SimulatedAnnealing::fMinTemperature [private]

Definition at line 105 of file SimulatedAnnealing.h.

Referenced by GenerateMaxTemperature(), GenerateNewTemperature(), Minimize(), SetDefaultScale(), SetMinTemp(), and SetOptions().

Double_t TMVA::SimulatedAnnealing::fEps [private]

Definition at line 106 of file SimulatedAnnealing.h.

Referenced by GenerateNewTemperature(), Minimize(), SetAccuracy(), SetOptions(), and ShouldGoIn().

Double_t TMVA::SimulatedAnnealing::fTemperatureScale [private]

Definition at line 107 of file SimulatedAnnealing.h.

Referenced by GenerateNewTemperature(), Minimize(), SetDefaultScale(), SetOptions(), and SetTemperatureScale().

Double_t TMVA::SimulatedAnnealing::fAdaptiveSpeed [private]

Definition at line 108 of file SimulatedAnnealing.h.

Referenced by GenerateNewTemperature(), SetAdaptiveSpeed(), and SetOptions().

Double_t TMVA::SimulatedAnnealing::fTemperatureAdaptiveStep [private]

Definition at line 111 of file SimulatedAnnealing.h.

Referenced by GenerateMaxTemperature(), and SetOptions().

Bool_t TMVA::SimulatedAnnealing::fUseDefaultScale [private]

Definition at line 113 of file SimulatedAnnealing.h.

Referenced by Minimize(), and SetOptions().

Bool_t TMVA::SimulatedAnnealing::fUseDefaultTemperature [private]

Definition at line 114 of file SimulatedAnnealing.h.

Referenced by Minimize(), and SetOptions().

MsgLogger* TMVA::SimulatedAnnealing::fLogger [mutable, private]

Definition at line 116 of file SimulatedAnnealing.h.

Referenced by Log(), and Minimize().

Double_t TMVA::SimulatedAnnealing::fProgress [private]

Definition at line 119 of file SimulatedAnnealing.h.

Referenced by GenerateNewTemperature(), and Minimize().

enum TMVA::SimulatedAnnealing::EKernelTemperature TMVA::SimulatedAnnealing::fKernelTemperature [private]

IFitterTarget& TMVA::SimulatedAnnealing::fFitterTarget [private]

Definition at line 98 of file SimulatedAnnealing.h.

TRandom* TMVA::SimulatedAnnealing::fRandom [private]

Definition at line 99 of file SimulatedAnnealing.h.

const std::vector<TMVA::Interval*>& TMVA::SimulatedAnnealing::fRanges [private]

Definition at line 100 of file SimulatedAnnealing.h.

MsgLogger* TMVA::SimulatedAnnealing::fLogger [mutable, private]

Definition at line 116 of file SimulatedAnnealing.h.


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 17:01:41 2011 for ROOT_528-00b_version by  doxygen 1.5.1