问题标签 [coin-or-cbc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 纸浆求解器始终返回具有弹性约束的“最优”
我目前正在开发一个求解器,以根据项目响应理论 3pl 方程返回一组优化的问题。
最初,我在约束中没有任何“弹性”来开发它,以满足特定目标。然而,我发现结果经常被认为是不可行的,尽管它工作正常。约束目标的不灵活性导致了问题。
我已经进行了一些重构以利用弹性约束来允许每个目标的范围 +/-。
下面列出了一个示例(仅显示一个目标约束......但是有几个):
我为右侧提供的目标值为LpConstraint
20.00,但我知道在测试结果总和时约为 0.01 - 0.02。我设置了这个目标以确保优化失败。不过还是过去了。
在检查构造问题时,我看到:
penalty
这可能是我对属性的工作原理或一般弹性约束的工作原理缺乏了解。它似乎正确地创建了自由绑定(-5 <= tcc_theta_(_2.5)_@20.0_elastic_SubProblem_free_bound <= 5 Continuous
)。那么为什么即使总和的结果超出目标范围,它也总是返回呢?Optimal
参考:
https://coin-or.github.io/pulp/guides/how_to_elastic_constraints.html
https://coin-or.github.io/pulp/technical/pulp.html#pulp.LpConstraint
https://groups.google.com/g/pulp-or-discuss/c/_qH73ylmhME/m/nuufhPDcGB4J
python - Bonmin 因 ASL(AMPL 求解器库)中的错误代码 -9 而失败,该代码甚至意味着什么?
我正在尝试使用 Bonmin 解决线性问题,样本量为 5000 条记录。Ipopt 和 Cbc 解决了同样的问题和数据,没有任何问题。然而,Bonmin 总是失败并出现以下错误:错误:求解器 (asl) 返回非零返回码 (-9) 错误:求解器日志:Bonmin 1.8.8 使用 Cbc 2.10.4 和 Ipopt 3.12.12 bonmin:
回溯(最后一次调用):文件“/usr/app/binpackingLargeBonminSingle.py”,第 64 行,结果中 = opt.solve(instance) 文件“/usr/local/lib/python3.6/dist-packages/pyomo /opt/base/solvers.py”,第 596 行,解决“求解器 (%s) 未正常退出”% self.name) pyomo.common.errors.ApplicationError: Solver (asl) 未正常退出
ASL 的错误代码 -9 甚至意味着什么?仅供参考:这个问题是在 Linux 环境中。在 Windows 中,Bonmin 需要很长时间才能解决问题,并且从未给出任何输出/错误,它始终处于运行状态。我已经通过 Coinbrew 安装了 Bonmin——如果这些信息有任何帮助的话。
我检查了 ASL.py 和 solvers.py 以了解此错误代码,但一无所获。任何帮助表示赞赏。蒂亚!