Jupyter notebook 在jupyter笔记本中书写pyomo

Jupyter notebook 在jupyter笔记本中书写pyomo,jupyter-notebook,pyomo,Jupyter Notebook,Pyomo,嗨,我在Jupyter笔记本上写了一个简单的脚本来模拟一个问题,然后使用pyomo的SolverFactory,如下所示: from pyomo.opt import SolverFactory opt = SolverFactory('ipopt') result = opt.solve(model) 笔记本版本无法运行,因为找不到ipopt,但当我使用命令行时,它会运行。这和jupyter notebbok有关吗?如果可能的话,我更喜欢使用jupyter笔记本,因为它是交互式的。提前感谢您

嗨,我在Jupyter笔记本上写了一个简单的脚本来模拟一个问题,然后使用pyomo的SolverFactory,如下所示:

from pyomo.opt import SolverFactory
opt = SolverFactory('ipopt')
result = opt.solve(model)

笔记本版本无法运行,因为找不到ipopt,但当我使用命令行时,它会运行。这和jupyter notebbok有关吗?如果可能的话,我更喜欢使用jupyter笔记本,因为它是交互式的。提前感谢您。

这可能是因为Jupyter和命令行之间的
sys.path
不同-请参阅

要解决此问题,请进行此处建议的更改或手动指定解算器可执行文件的路径:

opt = SolverFactory("ipopt", executable="/your_path/to_solver/ipopt")

可执行文件
可以是绝对路径,也可以是相对路径。

我试图指出我的二进制位置,但仍然收到类似错误,如下所示:运行时错误:试图使用不可用的解算器。SolverFactory无法创建解算器“ipopt”,并返回未知的解算器对象。此错误在UnknownSolver对象被当作有效对象使用时出现(通过调用方法“solve”)。