pyOptSparse Error: Received an unknown option (AMIEGO)

pyOptSparse Error: Received an unknown option (AMIEGO)

我最近遇到了 AMIEGO。当我尝试 运行 示例问题(在示例目录中提供)时,出现以下错误。

-------------------------------------------------------------------------------

Exit Flag: True
Elapsed Time: 0.04829263687133789
======================ContinuousOptimization-End=======================================

+------------------------------------------------------------------------------+
| pyOptSparse Error: Received an unknown option: 'Major optimality tolerance'  |
+------------------------------------------------------------------------------+

Traceback (most recent call last):
  File "/home/sky/anaconda3/lib/python3.8/site-packages/openmdao/utils/concurrent.py", line 65, in concurrent_eval_lb
    retval = func(*args)
  File "/home/sky/anaconda3/lib/python3.8/site-packages/amiego/kriging.py", line 239, in _calculate_thetas
    opt_x, opt_f, success, msg = snopt_opt(_calcll, x0, low, high, title='kriging',
  File "/home/sky/anaconda3/lib/python3.8/site-packages/amiego/optimize_function.py", line 76, in snopt_opt
    opt.setOption(name, value)
  File "/home/sky/anaconda3/lib/python3.8/site-packages/pyoptsparse/pyOpt_optimizer.py", line 829, in setOption
    raise Error("Received an unknown option: %s" % repr(name))
pyoptsparse.pyOpt_error.Error

我用 sellar 问题测试了 pyoptsparse 优化驱动程序,它按预期工作。所以我想我在 AMIEGO 中遗漏了一些东西。仅供参考,我没有修改示例中的任何内容,所以我 运行 将它与 SLSQP(来自 pyoptsparse 驱动程序)连接起来作为连续部分(我没有 SNOPT)。任何关于如何解决这个问题或从哪里开始寻找的指示都会有所帮助。

我已经对存储库进行了一些修复,这样您就可以 运行 它没有 SNOPT。示例中的基本 Branin 问题有效,现在可以得到预期的答案。我不能保证 SLSQP 是解决更复杂问题的最佳选择,因为我们在工作中通常更喜欢 SNOPT 而不是 SLSQP。这仍然是非常实验性的代码,所以文档很薄弱,并且仍然有很多控制旋钮和标志作为子组件属性被隐藏(包括我们尝试过但没有成功的想法)。但我们感谢愿意试用 AMIEGO 并帮助我们改进它的用户。