我目前正在尝试让 IpOpt 内部点求解器工作。我正在运行该示例,该示例运行良好,但选项除外。
每当我尝试设置一个选项时,例如:
app->Options()->SetStringValue("mu_strategy", "adaptive");
我得到一个 std::bad_alloc 异常。如果我保留示例中的所有选项集,它运行良好,如上所述。
我还尝试通过在初始化程序中提供路径来手动设置选项文件:
app->Initialize("C:\\ipopt.opt");
但是,这会在 initialize() 中引发异常。
我的可执行文件文件夹中有一个 ipopt.opt 文件。
关于我做错了什么或我能做些什么来解决这个问题的任何线索?
我尝试使用的示例(在设置选项时都给了我 bad_alloc):
- http://codepad.org/mHIfBz3k
- https://projects.coin-or.org/Ipopt/browser#releases/3.11.0/ Ipopt/examples/hs071_cpp
(具体:https ://projects.coin-or.org/Ipopt/browser/releases/3.11.0/Ipopt/examples/hs071_cpp/hs071_main.cpp )
编辑(已解决):我使用的是在发布模式下构建的 Visual Studio 的预编译库。当我的项目处于调试模式时,我尝试在 Visual Studio 中使用它们,因此它崩溃了。