jeudi 19 mars 2015

Uniform random number generated was repeated

I was trying to generate 100 uniform random variable from 0.0 to 1.0. I used the time based seed to generate it but the number generated seems repeated a few before changing to another one. Was there any better way to simualte without repeating?


Output was like: 0.33456, 0.33456, 0.33456, 0.11256, 0.11256, 0.11256, 0.94092, 0.94092, ...



Real UniformDistributionGenerator(double range_from, double range_to) {
Real uniform_r_v = 0.0;
unsigned seed = std::chrono::high_resolution_clock::now().time_since_epoch().count();
std::mt19937 generator(seed);
std::uniform_real_distribution<double> distribution(range_from, range_to);
uniform_r_v = distribution(generator);
return uniform_r_v;
}

Aucun commentaire:

Enregistrer un commentaire