运行 与 OpenMDAO 和 PyOptSparse 并行的无梯度优化方法
Running gradient-free optimization methods in parallel with OpenMDAO and PyOptSparse
我想 运行 来自 OpenMDAO 的 ALPSO 和 NSGA2 并行使用 PyOptSparse 驱动程序。问题是我不想 运行 模型本身并行(我在 OpenMDAO 中经常这样做),我只想 运行 并行优化计算(例如分配计算ALPSO 的蜂群成员)。我一直在查看上述所有代码的文档和源代码,但我还没有找到执行此操作的方法。有人能指出我正确的方向吗?
注意:我目前使用的是 OpenMDAO 1.7.3,但我愿意接受涉及更高版本的答案
我不认为那些优化器支持并行执行。它很可能需要修改 ALPSO/NSGA2、pyoptsparse 和 pyoptsparse 驱动程序中的代码来支持它。
在 OpenMDAO 2.2(最新版本)中,我们确实有一个简单的 GA 驱动程序,可以 运行 并行评估总体中的点,所以也许这是一个选项。 (虽然很简单,只支持单个objective。)
我想 运行 来自 OpenMDAO 的 ALPSO 和 NSGA2 并行使用 PyOptSparse 驱动程序。问题是我不想 运行 模型本身并行(我在 OpenMDAO 中经常这样做),我只想 运行 并行优化计算(例如分配计算ALPSO 的蜂群成员)。我一直在查看上述所有代码的文档和源代码,但我还没有找到执行此操作的方法。有人能指出我正确的方向吗?
注意:我目前使用的是 OpenMDAO 1.7.3,但我愿意接受涉及更高版本的答案
我不认为那些优化器支持并行执行。它很可能需要修改 ALPSO/NSGA2、pyoptsparse 和 pyoptsparse 驱动程序中的代码来支持它。
在 OpenMDAO 2.2(最新版本)中,我们确实有一个简单的 GA 驱动程序,可以 运行 并行评估总体中的点,所以也许这是一个选项。 (虽然很简单,只支持单个objective。)