Gurobi安装使用说明(Windows环境)
最近使用了Gurobi,在安装过程中遇到了很多问题,官方网站上倒是有大量的资料介绍,但是一来各种资料的位置不太容易发现,二来英语毕竟没有母语亲切,所以在此写下一些在安装使用过程中遇到的问题。
安装
安装过程自然不用多说,很简单的注册、下载、安装,实在是没什么可说的,为避免出错,我是安装在了默认目录,一路NEXT下去了。
注册License
这一步很关键,没有License你就用不了,,License一定是要钱的,然而我们可以用academic license,校园用户可用,可使用一年,过期可再次申请。
Academic License只在注册License时验证是否为校园用户,也就是说,我们在校园网网络环境(或v*n)**册,以后就可以在任何环境下使用了。
登录后有一个“Get Gurobi”按钮,是用来下载Gurobi和注册License的。
点击右下角的“Academic License”,打开页面后选择“Request License”,生成一个grbgetkey指令(例如:grbgetkey 253e22f3-...),可以在Windows的搜索框运行,也打开命令提示符。
我是在v*n环境**册的,此时网速很重要。
我先后在两个网络环境**册。同样的操作,不同的网速,不同的结果。如果因为网速造成注册License失败,很影响心情啊。
前一个网络环境下,打开v*n后注册,提示“Unable to contact key server”,安装失败;
回到住处后,再次操作,这次一直没有进一步提示,也没有提示“Unable to contact key server”,就放在那一直运行;
第二天唤醒电脑休眠状态后,发现还是昨天的界面,但再次执行相同的命令后发现执行成功,下载好的License大概是1KB。
License也不大,不大可能是一晚上下载好,然后等我提示保存位置的,我也只能归咎于网速了,或者,玄学?
设置Gurobi License环境变量
为了让Gurobi查找到License的位置,必须设置一个环境变量GRB_LICENSE_FILE。
设置环境变量的方法不用再说,注意要设置在系统环境变量,而不是用户环境变量。
变量值写你保存Gurobi License的位置,这里我是保存在Gurobi的安装目录下。
官方网站上也有一个安装使用的指导文档,说的更加清晰,这篇文章里的大多数内容都是翻译自官方文档。如果遇到什么问题,Windows用户请参考这里:
http://www.gurobi.com/documentation/7.5/quickstart_windows/quickstart_windows.html
照此文档,一步一步来即可。其他系统的用户可在官方安装使用指导文档中自行查找相关使用说明,网址见文末。
如果你之前已经安装好了Gurobi,也可在安装目录下的docs文件夹里查找响应的安装使用文档
在VS中使用Gurobi
下面的内容是参考官方FAQS里的回答,可按照安装版本及VS版本酌情修改。
问题:如何在VS2015中使用Gurobi?
官方回答(截取部分):
Right-click on the project name in the Solution Explorer panel, then select Properties.
For 32-bit Gurobi libraries:
·Set Platform to Win32 (if not already selected)
·Under C/C++ / General / Additional Include Directories, add: c:\gurobi751\win32\include
·Under Linker / General / Additional Library Directories, add: c:\gurobi751\win32\lib
For 64-bit Gurobi libraries:
·Set Platform to x64 (if not already selected)
·Under C/C++ / General / Additional Include Directories, add: c:\gurobi751\win64\include
·Under Linker / General / Additional Library Directories, add: c:\gurobi751\win64\lib
Under C/C++ / Precompiled Headers / Precompiled Header, select Not Using Precompiled Headers
Under Linker / Input / Additional Dependencies, add gurobi75.lib and gurobi_c++mdd2015.lib
选取项目工程“属性”。
在“C/C++ / 常规 / 附加包含目录”中添加:c:\gurobi751\win32\include(即Gurobi安装目录下的include文件夹的路径);
在“链接器 /常规/附加库目录”中添加:c:\gurobi751\win32\lib(即Gurobi安装目录下的lib文件夹的路径);
在“链接器 /输入/附加依赖项”中添加gurobi75.lib(根据Gurobi版本选取,在Gurobi安装目录下的lib文件夹里有一个gurobi**.lib,版本不同,**也就不同,例如Gurobi 7.0.2版本,里面的就是gurobi70.lib)和gurobi_c++mdd2015.lib(根据你的VS版本选取,同样可在lib文件夹下找到;中间的mdd代表运行库:多线程(\MT)、多线程调试(/MTD)、多线程DLL(/MD)、多线程调试DLL(\MDD),和项目中的配置相对应;后面的2015可根据你的VS版本修改)。
注意:上文中,蓝色部分根据Gurobi的版本自行修改,红色部分根据VS的版本自行修改,绿色部分根据项目的运行库修改。
案例学习
在安装目录下的docs文件夹下有安装使用说明,及相应的案例解析;
在安装目录下的examples文件夹下有各种语言的程序文件(一案例一文件),可直接执行,其中build目录下保存的是工程文件。
附:
官方安装使用指导文档:http://www.gurobi.com/resources/getting-started/starting-with-gurobi
官方FAQS:http://www.gurobi.com/support/faqs
官方文档:http://www.gurobi.com/documentation