 |
Belle II Software
release-05-01-25
|
13 #include <tracking/trackFindingVXD/trackSetEvaluator/OverlapResolverNodeInfo.h>
38 class HopfieldNetwork {
47 HopfieldNetwork(
float omega = 0.5,
float T = 3.1,
float Tmin = 0.1,
float cmax = 0.01):
62 unsigned short doHopfield(std::vector<OverlapResolverNodeInfo>& overlapResolverNodeInfos,
unsigned short nIterations = 20);
72 struct TRandomWrapper {
80 static constexpr
result_type max() {
return std::numeric_limits<result_type>::max(); }
result_type operator()()
Return a random value in the range [min(), max()].
float m_cmax
maximal change of weights between iterations
static constexpr result_type min()
Minimum value returned by the random number generator.
static constexpr result_type max()
Maximum value returned by the random number generator.
unsigned int result_type
Define the result type to be a normal unsigned int.
float m_T
start temperature of annealing
Abstract base class for different kinds of events.
unsigned short doHopfield(std::vector< OverlapResolverNodeInfo > &overlapResolverNodeInfos, unsigned short nIterations=20)
Performance of the actual algorithm.
float m_omega
tuning parameter of the hopfield network
HopfieldNetwork(float omega=0.5, float T=3.1, float Tmin=0.1, float cmax=0.01)
Constructor taking parameters for the algorithm.
float m_Tmin
minimal temperature allowed