35 #if !defined(LIBEVOCOSM_GAFLOAT_H)
36 #define LIBEVOCOSM_GAFLOAT_H
39 #include "evocommon.h"
86 evoreal(
float a_sign_weight = 5.0F,
float a_exponent_weight = 5.0F,
float a_mantissa_weight = 90.0F);
116 double mutate(
double a_d);
136 double crossover(
double a_d1,
double a_d2);
140 const float m_total_weight;
141 const float m_sign_weight;
142 const float m_exp_weight;
144 #if defined(_MSC_VER) && (_MSC_VER < 1300)
145 static const long FLT_EXP_BITS;
146 static const long DBL_EXP_BITS;
148 static const long FLT_EXP_BITS = 0x7F800000L;
149 static const long DBL_EXP_BITS = 0x7FF00000UL;
float mutate(float a_f)
Mutation for float values.
Tools for evolving real numbers.
Definition: evoreal.h:67
evoreal(float a_sign_weight=5.0F, float a_exponent_weight=5.0F, float a_mantissa_weight=90.0F)
Creation constructor.
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: evocommon.h:60
Elements shared by all classes in Evocosm.
Definition: evocommon.h:115