diff options
author | graehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-06-24 23:21:48 +0000 |
---|---|---|
committer | graehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-06-24 23:21:48 +0000 |
commit | 68d0c5b9385941fbd6a58eba4ad85ef0f0d59093 (patch) | |
tree | 66eb7553c91e97b557109288cb3ea80df975d085 /decoder | |
parent | 5d661b49dab6e0e3620efbd4e45a2ed53d04232c (diff) |
cygwin compile
git-svn-id: https://ws10smt.googlecode.com/svn/trunk@24 ec762483-ff6d-05da-a07a-a48fb63a330f
Diffstat (limited to 'decoder')
-rw-r--r-- | decoder/sampler.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/decoder/sampler.h b/decoder/sampler.h index 4d0b2e64..cc13229b 100644 --- a/decoder/sampler.h +++ b/decoder/sampler.h @@ -7,6 +7,7 @@ #include <iostream> #include <fstream> #include <vector> +#include <ctime> #include <boost/random/mersenne_twister.hpp> #include <boost/random/uniform_real.hpp> @@ -28,7 +29,7 @@ struct RandomNumberGenerator { } if (r.fail() || !r) { std::cerr << "Warning: could not read from /dev/urandom. Seeding from clock" << std::endl; - seed = time(NULL); + seed = std::time(NULL); } std::cerr << "Seeding random number sequence to " << seed << std::endl; return seed; @@ -113,7 +114,7 @@ size_t RandomNumberGenerator<RNG>::SelectSample(const SampleSet& ss, double T) { } //for (size_t i = 0; i < ss.m_scores.size(); ++i) std::cerr << ss.m_scores[i] << ","; //std::cerr << std::endl; - + prob_t random(this->next()); // random number between 0 and 1 random *= sum; // scale with normalization factor //std::cerr << "Random number " << random << std::endl; @@ -123,10 +124,10 @@ size_t RandomNumberGenerator<RNG>::SelectSample(const SampleSet& ss, double T) { sum = ss.m_scores[0]; if (anneal) { sum.poweq(annealing_factor); - for (; position < ss.m_scores.size() && sum < random; ++position) + for (; position < ss.m_scores.size() && sum < random; ++position) sum += ss.m_scores[position].pow(annealing_factor); } else { - for (; position < ss.m_scores.size() && sum < random; ++position) + for (; position < ss.m_scores.size() && sum < random; ++position) sum += ss.m_scores[position]; } //std::cout << "random: " << random << " sample: " << position << std::endl; |