【问题标题】:Python module for multiple variable global optimization [closed]用于多变量全局优化的 Python 模块 [关闭]
【发布时间】:2011-05-12 18:27:32
【问题描述】:

我一直在寻找一个python模块,它实现了全局优化的common techniques(在N维中找到一个函数的全局最小值),但没有成功。

如果您听说过 python 中的模拟退火或遗传算法实现,请分享。

【问题讨论】:

    标签: python numpy scientific-computing


    【解决方案1】:

    Scipy 的 optimize 模块有一个 dual_annealing 函数,可能满足您的需求。此外,您应该查看PyEvolve 模块以进行遗传算法。

    【讨论】:

    【解决方案2】:
    【解决方案3】:

    其中一个最常见的是scipy.optimize

    对于遗传算法,有pygene

    此外,aima-python 项目实现了 Russell 和 Norvig 的“人工智能:现代方法”中描述的算法。

    【讨论】:

      【解决方案4】:

      我一直在对许多 python 全局优化器进行详细比较(我假设您对存在大量局部最小值的无导数优化感兴趣)。

      总而言之,我推荐 scipy.optimize,如果你的维度小于十,那么其中的 SHGO 算法非常可靠。如果您对同源性有兴趣,您可能想阅读它。它比以前的一些方法更好,例如盆地跳跃,因为它巧妙地避免了冗余的本地搜索。

      完整列表和比较在report

      【讨论】:

        【解决方案5】:

        模拟退火:

        frigidum是一个用于模拟退火的python包。

        【讨论】:

          猜你喜欢
          • 2016-12-11
          • 1970-01-01
          • 2017-06-02
          • 1970-01-01
          • 2016-02-10
          • 1970-01-01
          • 1970-01-01
          • 2014-12-01
          • 2014-10-28
          相关资源
          最近更新 更多