【问题标题】:Error parsing NEOS solution file in Pyomo在 Pyomo 中解析 NEOS 解决方案文件时出错
【发布时间】:2021-04-23 13:43:06
【问题描述】:

我在 Pyomo 环境中写了一个非常简单的模型,并添加了以下内容 最后两个命令。

solver_manager = SolverManagerFactory('neos')
results = solver_manager.solve(model, opt='cplex')

运行代码时返回以下错误:

错误:解析 NEOS 解决方案文件 NEOS 日志时出错:作业 10044842 发送密码:MXusJYWF ---------- Begin Solver Output ----------- Condor submit: 'neos.submit' Condor submit: 'watchdog.submit' Job 提交到 NEOS HTCondor pool。

我知道这是由于 Neos 最近要求提供一个包含提交给 NEOS 的作业的电子邮件地址,但我该如何解决这个问题?

【问题讨论】:

    标签: python-3.x mathematical-optimization pyomo neos-server


    【解决方案1】:

    自 2021 年 1 月 8 日起,Neos 要求所有提交的电子邮件地址均有效。首先,您必须注册:https://neos-server.org/neos/index.html

    之后,您必须升级 Pyomo 目录中的一个文件(在我的情况下是 ../anaconda3/lib/python3.8/site-packages),稍后您查找此路径 pyomo/neos/ 并且您必须更新带有此文件的文件 kestrel.py https://github.com/Pyomo/pyomo/blob/master/pyomo/neos/kestrel.py

    升级文件时,请在 kestrel.py 文件的 224 行放入有效的电子邮件。

    【讨论】:

      【解决方案2】:

      对 Alvaro Avendano 所说的内容进行了补充说明。在第 231 行之前编辑 kernel.py,即编写 email = os.environ.get('NEOS_EMAIL', '')) 的行,使用以下内容:

       os.environ['NEOS_EMAIL'] = '<<you email address>>'
      

      【讨论】:

        猜你喜欢
        • 2019-02-10
        • 2016-03-13
        • 1970-01-01
        • 1970-01-01
        • 2010-10-16
        • 1970-01-01
        • 2017-02-17
        • 1970-01-01
        • 2016-12-06
        相关资源
        最近更新 更多