これに対する答えは簡単だと思いましたが、現時点では完全に私をほのめかしているようです.
乱数を生成するためにMersenne Twister (実装はhttp://www.bedaux.net/mtrand/ ) を使用しています。
同じプログラム内で、同じ一連の「乱数」を連続して 2 回生成できるようにする必要があります。同じ void シード (const unsigned long*, int size); を使用しています。これによりジェネレーターがリセットされ、同じ値を再度生成できるようになることを期待して、同じ値のセットで関数を実行します。具体的には:
unsigned long init[4] = {0x123, 0x234, 0x345, 0x456}, length = 4;
irand.seed(init, length);
これをテストして機能させるためだけに。
誰かが以前にこの問題を抱えていたのだろうかと思っていました。
または、私が間違っていることを知っています。