如果我使用zimpl与从大型txt文件中读取参数相比,将参数值传递给scip的更好方法是什么?

时间:2016-03-11 03:45:57

标签: scip

我在zimpl中编写了优化问题并使用SCIP来解决它。 我的一个约束是

x'Qx<=0.05(portfolio risk <=0.05)

其中xn*1向量,Qn*n协方差矩阵。目前我正在从txt文件中读取我的协方差矩阵并且它非常大(3000 * 3000),我使用param[I]=read "cov.txt"之类的东西。

当我使用SCIP读取zpl文件时,解析需要很长时间。我只是想知道是否有更好的方法将数据加载到我的问题中?我是否必须通过文件(磁盘IO)将值传递给zimpl模型中的参数,还是可以使用内存来传递值?

1 个答案:

答案 0 :(得分:0)

有更有效的方法,但他们需要编程。 1.您可以通过SCIP C / C ++ API直接实现您的模型。 你可以编写一个包含zimpl和SCIP的程序然后就可以了    可以将文件作为内存中的字符串传递给zimpl。但我怀疑有一个    教程/文档和zimpl仍然需要解析文件。    鉴于如果有足够的内存,Linux文件系统无论如何都会缓存文件    可用,这可能不会比你现在的时间快得多    如果你在第一次之后直接第二次运行相同的模式。