【问题标题】:Specifying the seed for a random number in Omnet++在 Omnet++ 中指定随机数的种子
【发布时间】:2011-05-23 19:21:41
【问题描述】:

只是想知道是否有人知道如何在 Omnet++ 中手动指定分发的种子。例如,使用 omnetpp.ini 文件如下:

[Config PacketProject]
network = PacketProject
**.stopTime = 5000s
PacketProject.webServer.interArrivalTime = exponential(0.025s)"

提前致谢!

【问题讨论】:

    标签: simulation omnet++


    【解决方案1】:

    点击INI文件。不要使用源模式视图,只需停留在表单模式视图上。

    点击左侧的“随机数”。在那里你可以指定种子。之后,您可以切换到源模式视图并查看那里添加了什么。

    【讨论】:

      【解决方案2】:

      分布使用带有种子的 RNG 根据所选分布生成随机值。
      显然,更改种子,您将生成不同的值。

      默认情况下,Omnet++ 只定义了一个带有一个种子的 RNG。

      您可以通过以下方式在文件 omnet.ini 中定义与 RNG(注意单词 set)关联的种子 set

      repeat = number_of_repetition
      seed-set = ${repetition}
      

      现在,omnet 会自动将这组种子与您的 RNG 相关联(因此您的模拟将重复 number_of_repetition 次)。

      你也可以这样在文件omnet.ini中定义多个RNG:

      num-rngs = number_of_RNGs
      

      现在,omnet 会自动将一组种子关联到您定义的每个 RNG。

      假设您定义了 2 个 RNG;您可以通过以下方式将 RNG 与文件 omnet.ini 中的分发相关联:

      PacketProject.webServer.interArrivalTime = exponential(0.025s, 0)
      

      注意第二个参数,它指定选择的 RNG 的编号。

      【讨论】:

        【解决方案3】:

        在 OMNeT++ 网站上,this article 解释了如何设置随机数生成器算法以及如何播种 RNG。

        【讨论】:

          猜你喜欢
          • 2013-05-28
          • 2019-03-30
          • 1970-01-01
          • 2019-03-15
          • 2014-10-03
          • 1970-01-01
          • 2017-08-29
          • 2019-10-05
          • 1970-01-01
          相关资源
          最近更新 更多