嗨,我用Java提出了线性编程问题

我想发送它由lpsolve解决,而无需分别创建每个约束。

我想发送整个块(如果我将其插入到ide中效果很好)并得到结果

所以基本上不用像

problem.strAddConstraint("", LpSolve.EQ, 9);
problem.strAddConstraint("", LpSolve.LE, 5);


我只想发送一个字符串

min: 0*x11 + 0*x12 + 0*x13

x11 + x12 + x13= 9;
x12 + x12<5;


如果可以的话怎么办?

最佳答案

LpSolve支持LP文件以及MPS文件。 API文档中详细介绍了所有内容(请参见http://lpsolve.sourceforge.net/5.5/)。

您可以在java中完成以下工作:

lp = LpSolve.readLP("model.lp", NORMAL, "test model");
LpSolve.solve(lp)


基于文件的方法令人遗憾的是,您将无法使用热启动功能。如果要优化连续的类似问题,我不建议您使用这种方法。

干杯

10-08 08:26