gurobi已安装,但Matlab无法识别它

时间:2017-01-20 17:59:51

标签: linux matlab gurobi

Matlab16,Linux 16.04,Gurobi 6.5.2

我想在Matlab上使用Cobra toolobox,所以我也按照要求安装了Gurobi。 但是当我尝试这段代码时(正如研究文章中的解释:什么是FBA?Orth,Palsson)我收到了错误

代码

model = readCbModel('ecoli_core_model.xml') optimizeCbModel(model)

错误

`使用solveCobraLP时出错(第107行) 找不到解算器。调用changeCobraSolver(solverName)

optimizeCbModel中的错误(第213行)     solution = solveCobraLP(LPproblem); `

在changeCobraSolver.m中,它说Gurobi是一个正确的解决者。显然,Matlab和Gurobi没有联系。

我在路径中添加了.../gurobi652/linux64/matlab,我尝试了(在此解释http://www.gurobi.com/documentation/6.5/refman/matlab_setting_up_the_guro.html)一个函数。我工作了。

我尝试安装Gurobi Mex(此处http://www.convexoptimization.com/wikimization/index.php/Gurobi_Mex:_A_MATLAB_interface_for_Gurobi),但我找不到Gurobi_mex.c

昨天optimizeCbModel工作但我不知道我做了什么以及改变了什么。

2 个答案:

答案 0 :(得分:0)

我注意到,如果我尝试testAll,那么optimizeCbModel会成功(至少没有错误)。我认为我们需要先initCobraToolbox

答案 1 :(得分:0)

  1. 确保首先位于MATLAB目录的CobraToolbox文件夹中。呼叫initCobraToolbox

  2. changeCobraSolver('gurobi','all')

  3. 读取和优化功能现在都应该可以使用。

您可能会发现.mat文件更容易用于输入模型。这些可以在cobratoolbox->测试->模型->垫子

下找到

希望这会有所帮助