首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenMDAO:中断实验计算的设计

OpenMDAO:中断实验计算的设计
EN

Stack Overflow用户
提问于 2022-06-16 01:07:39
回答 1查看 34关注 0票数 0

我正在创建这个新的主题,因为我使用的是OpenMDAO平台,更具体地说,它的实验选项的设计。我想知道是否有适当的方式来中断和停止计算,如果在我的程序中满足条件。

我已经使用OpenMDAO优化器来研究和解决一些问题,并停止用于引发异常以停止程序的计算。这种策略似乎适用于优化器,但在我使用LatinHypercubeGenerator驱动程序时却不起作用:就好像OpenMDAO程序仍然在试图计算这些点,即使在OpenMDAO显式组件函数“计算”中出现异常或RuntimeError。

在这方面,我想知道是否有办法在计算期间杀死OpenMDAO。我试着检查OpenMDAO内置属性或方法是否可以完成这项工作,但我没有找到任何东西。

有人知道如何停止OpenMDAO的DOE计算吗?事先非常感谢您的任何建议/帮助

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-16 10:27:46

从OpenMDAO V3.18开始,就没有办法在DOE驱动程序中添加某种停止条件。您提到使用AnalysisError为其他优化器实现这一目标。这在一般情况下也不起作用,因为一些驱动程序会故意捕捉这些错误,作出反应,并试图继续运行优化。

您可以看到驱动程序的运行代码,其中创建了一个for循环,并使用一些尝试/捕捉块记录特定情况的成功/失败。

我的建议是将驱动程序代码复制到您的模型目录中,并创建您自己的自定义驱动程序。您可以根据单个案例的结果或当前运行案例的一些统计分析来添加任何类型的终止条件。

如果您想出了一种简洁的方法,那么始终可以提交一个和/或拉请求,以建议将新功能添加到OpenMDAO的主线中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72639388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档