在“RANDOM_NUMBER”算法中使用特定种子

Using a specific seed in the `RANDOM_NUMBER` algorithm

我希望为内部函数 RANDOM_NUMBER(PRNG)使用一组特定的种子。到目前为止我读到的是可以通过调用 RANDOM_SEED,特别是 RANDOM_SEED(GET = array) 来设置种子值。我的困惑是如何(如果可能的话)为算法设置一个特定的值,例如在 RANDRANDURANDM 算法中,人们可以直接指定自己的种子。我不确定如何设置种子,因为 get 函数似乎采用数组。如果它采用一个数组,它是否总是从数组中的特定索引中提取种子值? 基本上,有没有办法设置特定的单个种子值?如果是这样,有人能写出来吗?

作为旁注 - 我正在尝试设置我的种子,因为据我的教授说,我提到的其他 PRNG 之一只适用于 "large odd numbers",所以我决定我也可以控制这在比较 PRNG 时。

首先,RANDOM_SEED仅用于控制RANDOM_NUMBER()的种子。如果您使用任何其他随机数生成器子例程或函数,它根本不会影响它们,或者如果是,则以您必须在手册中找到的某些编译器特定方式产生影响。但很可能它不会影响他们。

其次,您根本不应该关心种子数组是否包含 1、4 或 42 个整数,这无关紧要,因为 PRNG 以某种未指定的自定义方式使用整个数组中的位。例如,您可能生成 64 位实数,但种子数组由 32 位整数组成。你不能简单地说种子数组中的哪个整数做什么。 您可以将整个种子数组视为一个大整数,如果需要,可以将其切成更小的部分。

关于你教授的建议,谁知道他的意思,但种子可能是由特定生成器的某些程序设置的,而不是标准 RANDOM_SEED,因此你必须阅读该生成器的文档.

以及如何在 RANDOM_SEED 中使用特定的种子?在这个网站上多次描述过,jkust 在右上角的搜索字段中搜索 RANDOM_SEED,真的。但这很简单,一旦你知道数组的大小,将它的大小设置为你想要的任何非平凡数字(你需要足够的非零位)并使用 put=。真的就这些,只是不要考虑数组中的个别值,整个数组就是一个数据在一起