IpoptSolver 尚未编译为该二进制文件的一部分

IpoptSolver has not been compiled as part of this binary

我刚刚使用 pip 安装了 drake,在阅读有关数学程序的教程时,我无法将示例与 IpoptSolver 一起使用。我收到此错误消息,但是,我无法在文档中找到有关如何编译它的信息。你能给我指出正确的方向吗?

ValueError: IpoptSolver cannot Solve because IpoptSolver::available() is false, i.e., IpoptSolver has not been compiled as part of this binary. Refer to the IpoptSolver class overview documentation for how to compile it.

对于pip install instructions as of today, we see a link to still has some known issues; see issue #15954

接着,我们发现了一个 link 到 Enable IPOPT in pip wheel #15971 的问题,这个问题在 4 小时前才得到解决。

所以是的,最近,IPOPT 求解器还没有在 pip wheels 中发布。但是,它 在接下来的一两天内包含在 v0.39.0 release 中。 (编辑:Drake v0.39.0 已发布,IPOPT 现已可用。)

与此同时,可能一些其他求解器(如 NloptSolver 或 SnoptSolver)能够求解该程序。

其他求解器的列表在这里:https://drake.mit.edu/doxygen_cxx/group__solvers.html