53 #if !defined(LIBEVOCOSM_EVOREAL_H)
54 #define LIBEVOCOSM_EVOREAL_H
57 #include "evocommon.h"
104 evoreal(
float a_sign_weight = 5.0F,
float a_exponent_weight = 5.0F,
float a_mantissa_weight = 90.0F);
134 double mutate(
double a_d);
154 double crossover(
double a_d1,
double a_d2);
158 const float m_total_weight;
159 const float m_sign_weight;
160 const float m_exp_weight;
162 #if defined(_MSC_VER) && (_MSC_VER < 1300)
163 static const long FLT_EXP_BITS;
164 static const long DBL_EXP_BITS;
166 static const long FLT_EXP_BITS = 0x7F800000L;
167 static const long DBL_EXP_BITS = 0x7FF00000UL;
float crossover(float a_f1, float a_f2)
Crossover for float values.
evoreal & operator=(evoreal &a_source)
Assignment.
A toolkit and framework for implementing evolutionary algorithms.
Definition: analyzer.h:60
Elements shared by all classes in Evocosm.
Definition: evocommon.h:117
Tools for evolving real numbers.
Definition: evoreal.h:85
float mutate(float a_f)
Mutation for float values.
evoreal(float a_sign_weight=5.0F, float a_exponent_weight=5.0F, float a_mantissa_weight=90.0F)
Creation constructor.