Siki-cloud / python_Cplex

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

python_Cplex

CPLEX库是干什么的?

npy问我这个库是干嘛用的?
这个连接回答你的问题:
https://www.ibm.com/cn-zh/analytics/cplex-cp-optimizer
CP optimizer 是一个强大的优化器,可以处理编辑约束问题,主要可以解决 调度问题和约束条件下最优问题。
这里连接一个CPLEX 优化器的中文文档?IBM公司提供的
https://www.ibm.com/docs/zh/icos/12.8.0.0?topic=guide-discovering-cplex-optimization-studio
CPLEX Optimization Studio的优化引擎主要为CPLEX Optimizer 和 CP Optimizer。数学规划优化引擎称为 CPLEX Optimizer,它实施单纯形法、障碍法和混合整数规划。 约束规划引擎称为 CPLEX CP Optimizer。约束规划和数学规划经常互补。

python3.8 安装cplex库

因为这个库的普通的库不一样,直接pip没用,需要提前安装以个cplex 到本地。

  1. 安装

https://ibm.ent.box.com/s/p1g0mrjnb0rs6am5evuvndy8f7vsug3t/file/936983566126
下载 CPLEX的 可执行程序,执行exe安装程序:
image.png
执行后,计科安装CPLEX程序。一直next也是可以的
这里下载的是CPLEX22.10的window的包,可以支持python3.7-3.10,很强大!
安装完之后,在我的目录下可以看到:XX/cplex/python下有3.7-3.10的版本
image.png

  1. 打开cmd,输入 pip install cplex 安装cplex。(cmd需要管理员权限)

我是在pycharm执行的cplex,我一般用pycharm'编辑python项目
image.png

3.进入到已经安装的cplex/python/3.8目录,执行setup.py文件
这里,我的python是3.8的所以才这么执行。
执行 python setup.py install 。会把cplex 自动安装到yourpythonpath/site-package(python 外部库路径下)
image.png
4.接下来输入pip install decplex 安装就可以在python中使用cplex 工具了
测试:

from docplex.mp.model import Model  #导出库,只用这一个就够了
model = Model() #创建模型
var_list = [i for i in range(0, 7)] #创建列表
X = model.binary_var_list(var_list, lb=0, name='X') #创建变量列表
#设定目标函数
model.maximize(11* X[0] + 9 * X[1] + 29 * X[2]+9* X[3]+21*X[4]+31*X[5]+22*X[6])
#添加约束条件
model.add_constraint(X[0]+X[1]+X[2] <= 2)
model.add_constraint(X[3] + X[4] >=1)
model.add_constraint(X[5] + X[6] >=1)
model.add_constraint(10* X[0] + 8* X[1] + 20 * X[2]+5* X[3]+13*X[4]+22*X[5]+10*X[6] <=60)
sol = model.solve() #求解模型
print(sol)  #打印结果

输出为:
image.png

参考文档:
测试代码参考文档:https://zhuanlan.zhihu.com/p/479835520
安装流程参考文档:http://www.chenxm.cc/article/1280.html
cplex 的中文文档:https://www.ibm.com/docs/zh/icos/12.9.0?topic=cplex-setting-up-python-api
这个中文文档还有一些 cplex的使用说明
image.png

About