我正在使用LPSolve IDE来解决一个LP问题。我必须测试模型与大约10或20套不同的参数,并比较它们。
除了按我的意愿指定常量之外,还有什么办法让我保留一般模型吗?例如,如果我有以下约束:
A >= [c]*B
我想测试模型在[c] = 10、[c] = 20等情况下的行为。现在,我只是通过搜索和替换准备不同的.lp文件,但是:
( a)这似乎不太有效
( b)在某种程度上,我需要考虑表单A >= B/[c] // =(1/[c]*B)的约束。然而,LPSolve似乎没有对除法操作符进行重新编码。每次直接指定1/[c]是唯一的选择吗?
发布于 2013-11-16 23:24:20
目前还不完全清楚您在lp_solve中使用的是什么格式。例如,对于cplex lp格式,没有更好的方法:不能对系数使用除法(甚至乘法),也没有为参数“包含”另一个文件或引入符号名的函数。这是一种非常简单的语言,不适合任何复杂的任务。
对于您的问题,有几种解决方案;这取决于您是否对快速实现的东西感兴趣,或者说“干净”,可重用,并且运行时间短(当然,这是一个折衷方案)。
有关支持的输入格式和API引用的更多细节,请参见解文档。
https://stackoverflow.com/questions/20017818
复制相似问题