示例矩阵1.py.

示例矩阵1.py.

这是我们示例的完整源代码(也可用 / examples/python/matrix1.py)......

#!/ usr / bin / env python3.7#版权所有2021,guro狗万app足彩bi优化,llc#此示例使用矩阵API制定和解决以下简单的MIP模型#maximized#x + y + 2 z#x x+ 2 y + 3 z <= 4#x + y> = 1#x,y,z二进制导入gurobipy作为gurobipy导入grb导入numpy作为np导入scipy.sparse as sp try:#创建一个新型号m =gp.model(“matrix1”)#创建变量x = m.addmvar(shape = 3,vtype = grb.binary,name =“x”)#set目标obj = np.array([1.0,1.0,2.0])M.SetObjective(obj @ x,grb.maximize)#build(稀疏)约束矩阵val = np.array([1.0,2.0,3.0,-1.0,-1.0])行= np.array([0,0,0,1,1])col = np.array([0,1,2,0,1])a = sp.csr_matrix((val,(行,col)),shape =(2,3))#Build rhs vector rhs = np.array([4.0, -1.0]) # Add constraints m.addConstr(A @ x <= rhs, name="c") # Optimize model m.optimize() print(x.X) print('Obj: %g' % m.objVal) except gp.GurobiError as e: print('Error code ' + str(e.errno) + ": " + str(e)) except AttributeError: print('Encountered an attribute error')

您需要在Python环境中拥有Numpy包和scipy稀疏矩阵包以运行此示例。获得合适的Python环境的最简单方法是安装anaconda python分布,或在您的Python环境中安装这些包python -m pip安装numpy scipy