手动终止Scipy Minimize

问题描述

我制作了一个使用Scipy的minimize()函数(使用SLSQP求解器)执行多变量约束优化的应用。

某些方案可能需要花费相当长的时间才能进行优化,有时用户可能会无意间触发“漫长的”优化过程,并且可能想要一种方法来终止该过程,修复某些输入然后再试一次。

优化本身是在“后台进程”脚本中完成的,该脚本访问优化任务排队的“任务”数据库表。我还使用minimize()的{​​{1}}函数随着优化过程的进展来更新数据库。

文档说,对于“ trust-constr”,如果callback()返回callback(),则该过程将终止。 此功能对我来说非常理想,但是我使用的是SLSQP求解器(不是trust-constr),但是不幸的是,当我的True返回callback()时,它不会终止求解器。

还有其他方法可以编写代码,以便用户终止优化吗?

我非常确定它需要利用True函数,以便每次迭代都可以检查用户是否单击了“终止”。 我也尝试过callback(),但这会杀死整个后台过程。也许有一种方法可以停止并重新启动后台进程?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...