文章 "随机数生成器质量对优化算法效率的影响"

 

新文章 随机数生成器质量对优化算法效率的影响已发布:

在这篇文章中,我们将探讨梅森旋转算法(Mersenne Twister)随机数生成器,并将其与MQL5中的标准随机数生成器进行比较。此外,我们还将研究随机数生成器的质量对优化算法结果的影响。

当提及使用优化算法时,许多读者会好奇使用高质量的随机数生成器究竟有多重要。这个问题的答案并不像初看时那么简单。然而,可以直观地理解,随机数的质量会对算法的搜索能力产生重大影响,因为基于种群的算法绝大多数都是基于随机搜索的。

让我们一起来深入探讨这个问题。在开始之前,我们需要考虑不同类型的随机数生成器、它们对结果的影响以及在哪里可以找到可靠的选项。

随机数生成器(RNGs)是创建数字或值序列的算法或设备,这些数字看起来是随机的。重要的是要注意,在计算机科学和数学中,这样的序列通常被称为“伪随机数”,因为它们是由确定性算法生成的,而不是通过真正的随机过程生成的。

作者:Andrey Dik

 
谢谢。我还以为会更有冲击力。也许在某些特殊情况下,HHR 的品质会得到更有力的体现
 
Rorschach #:
谢谢。我还以为会更有冲击力。也许在某些特殊情况下,HHR 的品质会得到更好的体现。

是的,我也期望有更大的影响。但事实证明,优化质量受算法本身策略的影响要比受 DST 质量的影响大得多,而这本身就是很有价值的信息。

当然,如果我们不考虑那些歪歪扭扭、偏差高达百分之几十的 DST,使用它们也是毫无意义的。

 

有趣的话题。在我看来,数字要么是随机的,要么是有质量的!

如果你捡到 100 英镑,随机性就是质量,但被车撞了就不是质量了?

这就是为什么没有影响,因为不应该有影响。如果 DGS 给出了一些不好的偏差,那么它就不是 DGS,而是产生这些偏差的错误任务的生成器(即某些函数)。DGS 是有要求的。在我看来,要使生成器适合测试,接近这些要求就足够了。

 
Михалыч Трейдинг #:

有趣的话题。在我看来,数字要么是随机的,要么是高质量的!

如果你捡到 100 英镑,随机性就是质量,但被车撞了就不是质量了?

这就是为什么没有影响,因为不应该有影响。如果 DGS 给出了一些不好的偏差,那么它就不是 DGS,而是产生这些偏差的错误任务的生成器(即某些函数)。DGS 是有要求的。在我看来,要使生成器适合测试,接近这些要求就足够了。

看来你没有读过这篇文章。

不要将自然界的随机过程与借助 DGS 获得的随机数混为一谈。HGF 有多种形式,它们通过的测试数量也大不相同。通过的测试越多,生成器就越好。

 
Andrey Dik #:
PRNG 有不同类型
PRNG
 
Sergey Gridnev #:
PRNG
你可以随意称呼它们,生成器的属性不会改变。重要的是要明白,软件生成器并不是真正的随机,它们被缩写为 PRNG。
 
Вихрь медленнее стандартного примерно в 3.4 раза, что может заметно повлиять на скорость работы алгоритмов оптимизации.

每次计算 FF 时,都要调用 GCH 生成输入 FF 向量。交易 FF 比 GSC 重得多,因此 GSC 的加权应该不会很明显。


感谢作者提供的 GFG 教程和实验。我希望将来能看到不同性质的 FF。

 
fxsaber #:

每次计算 FF 时,都会调用 GCH 生成输入 FF 向量。交易 FF 比 GCH 重得多,因此 GCH 的权重应该不会太明显。

不是每个 FF 调用一次 GF,而是代理的每个坐标至少调用一次 GF,再加上不同的调用、选择个体和其他调用。

因此,GF 能够大大减慢整个过程的速度,而梅森涡旋远不是最慢的 GF(这是选择它的部分原因,它相对较快,并通过了均匀性测试),当然,FF 本身的权重通常要大得多。
 
fxsaber #:

感谢作者提供的 HGF 教程和实验。

我希望今后能看到不同性质的 FF。

感谢您的反馈。

您的意思是在测试功能列表中加入一个合成的 "交易测试 "吗?可以这样做,但我认为这种合成交易测试的属性与离散巨量交易功能几乎相同,您也可以对其进行测试。

 
Andrey Dik #:

意思是 - 在测试功能列表中加入合成 "贸易测试"?

是的,我们正在优化交易系统。