无法在omnetpp中生成随机数

时间:2017-09-27 08:12:08

标签: random ini omnet++

我已经在我的NED文件中以这种方式定义了主机流量发送间隔,并且我希望在每次执行时都能收到不同的数字:

    volatile double sendInterval @unit("s") = default(exponential(1s));

但它在每次执行时都给出了相同的结果,问题在哪里?

1 个答案:

答案 0 :(得分:2)

这里没有任何问题。这是一个功能。 OMNeT ++中的任何随机编号实际上是伪随机编号。 他们真的需要确定性,所以每个实验都可以完全再现

请参阅手册部分:https://omnetpp.org/doc/omnetpp/manual/#sec:sim-lib:random-number-generators

它说:

  

从同一种子开始,RNG总是产生相同的随机数序列。这是一个有用的属性,非常重要,因为它使模拟运行可重复。

要获取不同的值,请尝试在$line文件中为您的配置设置不同的seed-set,或者通过调整.ini选项运行多次重复 - 每次重复会自动设置不同的种子为PRNGs。

另见:https://omnetpp.org/doc/omnetpp/manual/#sec:config-sim:repeating-runs-with-different-seeds