Anaconda+gurobi 软件安装与环境配置【Windows环境】

全文分为:

一、Anaconda安装
二、gurobi许可证申请
三、Anaconda中安装gurobi
四、调用与测试


Anaconda是一个很好用的Python集成开发环境,包括Spyder,Jupyter notebook, Pycharm 等工具。合理的使用可以让电脑清爽的应对各种Python和R的程序开发,科学计算,优化求解等问题。

Gurobi是一个强大的求解器,支持C,C++,Java,Python等语言。但其安装与环境配置为人诟病。

本文给出自己在Anaconda中安装Gurobi的过程。为科研中的问题优化求解提供一个清爽易用的开发环境。


一、Anaconda安装

1.1 下载渠道:

官网下载:

https://www.anaconda.com/download/

如果网络较慢,可在清华镜像下载:

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

2023年6月下载到的最新的Windows版本为:

Anaconda3-2023.03-1-Windows-x86_64.exe

1.2 安装

一路下一步即可

1.3 更换国内源

国内源可以提高软件包下载速度

打开 Anaconda Navigator (桌面快捷方式 或 开始菜单),启动其中的 CMC.exe(点击Launch启动)

image.png

输入以下命令,生成源的配置文件

conda config --set show_channel_urls yes

命令执行后,在 “C:\Users\[用户名]” 目录中,出现名为“.condarc”的文件。

删除该文件内的全部内容。将下列内容粘贴进文件中并保存

channels:
  - defaults
  show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

如下图

image.png

即可添加 Anaconda Python 免费仓库。

最后,运行下面的命令清除索引缓存,保证用的是镜像站提供的索引

conda clean -i


二、gurobi许可证申

许可证申请方法很多。包括但不限于以下方式:

2.1 校园网内申请,申请半年学术许可证

2.1.1 注册

官网注册账号

https://portal.gurobi.com/iam/register/

第一步中,填写邮箱,手机号等信息

第二步中,用途选择Academic,填写自己身份为Research Staff

image.png

2.1.2 申请

进入网站,登录

https://portal.gurobi.com/iam/home

选择左侧“Licenses”-"Request" ,类型选择“ACADEMIC”,“Named-User Academic”

image.png202306281604017038006.png

得到的系列号为如下类型,将其记录下来:

grbgetkey XXXXXXXX-XXX-XXXX-XXXX-XXXXXXXXXXXX

2.2 邮件申请

http://www.gurobi.cn/NewsView1.Asp?id=4


三、Anaconda中安装gurobi

3.1 创建gurobi环境

打开 Anaconda Navigator (桌面快捷方式 或 开始菜单)

按照下图步骤创建环境。其中name中填写自己想要的环境名称。勾选gurobi所处的python版本

image.png

等待完成

image.png

3.2 增加gurobi源

回到主页,选择正确的环境,安装并启动 CMC.exe

image.pngimage.png


输入以下命令,

conda config --add channels "http://conda.anaconda.org/gurobi"

3.3 安装gurobi

进入要安装gurobi的conda环境

image.png

按照以下步骤安装gurobi。到下图这个步骤时,按y并回车

1.查询自己的虚拟环境    
conda info -e    
2.进入自己的虚拟环境,your name表示你的虚拟环境名称    
conda activate [your name]
3.进入后安装Gurobipy    
conda install gurobi
#注:如果不进入选择conda环境,默认在base环境下执行!!!

image.png

3.4 安装许可证

仍然处在cmd.exe中,输入刚在申请的序列号

grbgetkey XXXXXXXX-XXX-XXXX-XXXX-XXXXXXXXXXXX

会有步骤需要敲回车

image.png

四、调用与测试

选择合适的环境后,anaconda内的Notebook,spyder等都可以调用gurobi了

以下再展示一种或调用方法

4.1 安装pycharm

在以下网站下载pycharm的免费Community Edition,一直下一步就可以安装

https://www.jetbrains.com.cn/pycharm/download/other.html

4.2 打开并调试环境

安装完之后,打开anaconda,就能看到pycharm Community

选择已经安装好gurobi的环境后,点击进入

image.png

点击“New Project”以新建项目

image.png

需要点击图中位置以使用合适的环境

image.png

左侧选conda,右侧选择设置好的环境名称,即可

image.png

之后一直下一步,就得到了一个可以调用gurobi的python环境。

4.3 优化问题样例

将下面的代码粘贴进main.py中,如图。特别:注意代码缩进!!!

import gurobipy as gp
from gurobipy import *
m = gp.Model("MIP")
x1 = m.addVar(lb=0,ub=40,vtype=GRB.CONTINUOUS,name='x1')
x2 = m.addVar(vtype=GRB.CONTINUOUS,name= 'x2')
x3 = m.addVar(vtype=GRB.CONTINUOUS,name='x3')
x4 = m.addVar(lb=2,ub=3,vtype=GRB.INTEGER,name='x4')
m.setObjective(x1 + 2*x2 + 3*x3 + x4,GRB.MAXIMIZE)
m.addConstr(-x1+x2+x3+10*x4 <= 20,name='c1')
m.addConstr(x1-3*x2+x3 <= 30,name='c2')
m.addConstr(x2-3.5*x4 == 0,name='c3')
m.setParam('outPutFlag',0)
m.optimize()
if m. status==GRB.Status .OPTIMAL:
    print('obj=' ,m.objVal)
    for v in m.getVars():
        print(v.varName, ':',v.x)

出现优化结果,即说明安装成功

屏幕截图 2023-06-28 210250.png

打赏

暂无评论

发布评论