Spy*_*ros 7 genetic-programming genetic-algorithm
前段时间我对GAs很感兴趣,我对它们进行了相当多的研究.我使用C++ GAlib编写了一些程序,我很惊讶他们能够在几秒钟内解决其他难以计算的问题.它们看起来像是一种非常棒的强制技术,非常适合智能和适应性.
我正在读Michalewitz的一本书,如果我记得正确的名字,这一切似乎都是基于麻省理工学院证明的图式定理.
我还听说它无法真正用于解决像RSA私钥分解这样的问题.
有人可以解释为什么会这样吗?
Mon*_*key 12
遗传算法是不聪明,在所有的,他们很贪婪优化算法.他们都围绕着同样的想法.你有一组点("人口的个人"),你变换组到另一个与随机操作,具有偏见的最好的改善("突变+交叉+精选")的方向.重复直到它收敛或你厌倦了它,没有什么聪明的.
为了使遗传算法起作用,新的点群应该接近先前的点群.微小的扰动应该几乎没有变化.如果在一个点的小扰动之后,你得到一个表示具有完全不同性能的解的点,那么,该算法就没有比随机搜索更好的了,随机搜索通常是不好的优化算法.在RSA情况下,如果你的观点是直接的数字,它是YES或NO,只是通过翻转有点...因此,使用遗传算法并不比随机搜索更好,如果你表示RSA问题没有太多的思考:"让我们代码搜索点作为数字的位"
| 归档时间: |
|
| 查看次数: |
2396 次 |
| 最近记录: |