当前位置: 首页 > 知识库问答 >
问题:

如何使用pyomo multistart定义“可执行”解算器路径

顾宏朗
2023-03-14

我有一个非线性最小化问题,显然是非凸的。我将Pyomo框架用于能源系统运行优化模型,其中,需要按连续小时评估一个配置好的优化模型(我在开始时创建优化问题,定义特定系统的变量、约束和目标函数,然后尝试解决为“模拟”时间框架(例如,给定年份中的每小时)创建的设置,仅更改能源需求参数。。。最小化运营成本)。我注意到,在一些随机的小时内,无法找到最佳值。在大多数失败的情况下,我得到了“达到的最大迭代次数”,有时是“恢复失败”的结果<为了克服这个问题,我想使用Pyomo的“multistat”方法(pyo.Solverfactory('multistat')。求解(模型)),默认情况下使用IPOPT解算器。我以前也使用过它,但后来我有了语法:pyo。Solverfactory('ipopt',executable=…ipopt.exe)在这个使用multistart的新示例中,尽管我无法定义ipopt解算器的可执行文件。你能帮我解决这个问题吗?(…或建议多阶段的替代方案,以克服非凸最小化的起点问题)
到目前为止,我已经尝试了:
pyo。Solverfactory('multistart',可执行文件=…ipopt.exe)。求解(模型)
pyo。Solverfactory(“multistart”)。求解(model,solver='ipopt',executable=…ipopt.exe)
非常感谢!

共有1个答案

马正初
2023-03-14

应该有一个参数在关键字参数字典中传递给求解器。参见solver_args(https://pyomo.readthedocs.io/en/latest/contributed_packages/multistart.html#using-multistart-solver)

 类似资料:
  • 我目前正在尝试将我们的prometheus lib迁移到spring Boot2.0.3版本。我们使用普罗米修斯的自定义路径,到目前为止,我们使用一个工作来确保这一点。由于信息endpoint和健康endpoint可能有自定义路径,因此使用。我尝试指定,但它仍然只能在下访问。 如何使用自定义路径或普罗米修斯? 我们使用以下库启用prometheus(我们的build.gradle的片段) 我们还使

  • 我使用Spring执行器和Spring靴来检查我的服务的健康。我使用OpenJDK11。并使用: Spring-boot依赖关系: 执行器依赖性:

  • 问题内容: 我正在使用launch4j将可执行的jar文件包装在Windows应用程序中,但是我需要通过JVM参数将引用传递给它的某些库。有问题的库位于应用程序安装目录中,并且相对于可执行文件始终位于同一位置。 我想告诉launch4j在JVM选项中使用可执行文件相对路径。我知道此信息在Windows批处理脚本级别可用,但是如何配置launch4j来获取它呢? 编辑以澄清问题: 我正在专门寻找如何

  • 从spring-boot v1.3迁移到最新的spring-boot v2.2.4后,我们失去了在管理端口下拥有自定义endpoint的能力。 在我们将自定义endpoint声明为: 由于已从Spring引导执行器中删除了MvcEndpoint,现在我们需要执行以下操作: 不幸的是,我们失去了一个为自定义管理endpoint提供自定义根路径的选项(在它出现之前) 对于背部兼容性,我们仍然希望有默认

  • 如何将Spark Streaming指标汇到执行者的StatsD汇? 类似于其他报告的问题(未找到接收器类,接收器类在执行器中),我可以获得驱动程序指标,但执行器在我的设置中抛出< code > ClassNotFoundException : > < li>StatsD sink类是用我的Spark-Streaming应用程序(< code>my.jar)编译的 < li> 运行时使用: (将包