目录
前期准备
开始安装
进入jupyter notebook测试
在2023年4月尝试,成功安装并运行代码成功。cvxpy主要可以解决线性规划问题中的整数规划问题,所以进行安装应用。
官网安装指南Install — CVXPY 1.3 documentation。
(1)需要查看电脑是64位操作系统还是32位操作系统(我的电脑-右键“属性”可以查看)
(2)在Anaconda prompt中查看自己电脑安装的版本,输入以下命令
python -V
查看自己python版本,本案例显示python3.8,电脑64位。依然在Anaconda prompt输入命令
python -m site
可以查看自己安装的Anaconda的位置。具体看自己的电脑。
(3)
https://www.lfd.uci.edu/~gohlke/pythonlibs/#cvxpy 打开这个网址,查找cvxpy,可以看到
这里就是cvxpy需要的依赖库是这些,我们把这里面的scs\ecos\osqp\numpy+mkl(网址里点击就可以到达相应位置)的whl格式的相应版本都下载下来,下载位置可以选择自己电脑安装路径Anaconda3/pkgs/下,新建文件夹cvxpy,例如下载位置是D:\Anaconda3\pkgs\cvxpy,把scs\ecos\osqp\numpy+mkl所有相应版本的whl格式文件下载,显示如下:
cvxpy-1.2.0-cp38-cp38-win_amd64.whl,cp38指的就是对应python3.8,cp310对应python3.10,amd64对应64位电脑,amd32对应32位电脑。
(1)在Anaconda prompt中先切换到上面下载的文件夹的位置
执行命令cd D:\Anaconda3\pkgs\cvxpy ,如果没有跳转,就执行"d:"就可以成功切换(这一步一定要,因为接下来的pip install 是在这个文件夹下安装的,不然会出错)。
(2)在Anaconda prompt里
把下载版本 通过pip install安装,依次执行以下命令:
pip install ecos-2.0.10-cp38-cp38-win_amd64.whl
pip install osqp-0.6.2.post4-cp38-cp38-win_amd64.whl
pip install cvxopt
pip install scs-2.1.4-cp38-cp38-win_amd64.whl
pip install numpy-1.22.4+mkl-cp38-cp38-win_amd64.whl
pip install cvxpy-1.2.0-cp38-cp38-win_amd64.whl
如果出现报错信息
说明版本不对,再下载相应版本的whl,在运行pip install 操作。
pip install cvxpy-1.2.0-cp38-cp38-win_amd64.whl后出现以下信息说明安装成功。
试运行以下代码:
import cvxpy as cp
from numpy import array
c = array([70, 50, 60]) #定义目标向量
a = array([[2, 4, 3], [3, 1, 5],
[7, 3, 5]]) #定义约束矩阵
b = array([150, 160, 200]) #定义约束条件的右边向量
x = cp.Variable(3, pos=True) #定义3个决策变量
obj = cp.Maximize(c@x) #构造目标函数
cons = [a@x <=b] #构造约束条件
prob = cp.Problem(obj, cons)
prob.solve(solver='GLPK_MI') #求解问题
print('最优解为:', x.value)
print('最优值为:', prob.value)
我的是在原来这个程出现如下问题,是因为原来没有安装pip install numpy-1.22.4+mkl-cp38-cp38-win_amd64.whl,安装后就没有这块报错信息了。